From 9f7b91a6285d178d03afde2d45e4dba94d80b15e Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Fri, 5 Dec 2025 11:56:16 -0800 Subject: [PATCH 1/9] wip --- R/available.R | 395 ++++++++++++++++++++++++++++++++++++++++ R/realtime-webservice.R | 4 +- 2 files changed, 397 insertions(+), 2 deletions(-) create mode 100644 R/available.R diff --git a/R/available.R b/R/available.R new file mode 100644 index 0000000..34abb81 --- /dev/null +++ b/R/available.R @@ -0,0 +1,395 @@ +# Copyright 2025 Hakai Institute +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and limitations under the License. + +#' Get all available flow data (final + provisional) +#' +#' Convenience function that combines final historical data +#' (from HYDAT or web service) with provisional real-time data in a single call. +#' +#' @inheritParams hy_daily_flows +#' @param start_date Start date for data retrieval in YYYY-MM-DD format. +#' Defaults to NULL (retrieves all available historical data). +#' @param end_date End date for data retrieval in YYYY-MM-DD format. +#' Defaults to current date (Sys.Date()). +#' +#' @details +#' This function combines data from final and provisional data sources to provide a complete +#' discharge record. +#' +#' ## Data Sources and Priority +#' +#' **Historical (Final) Data:** +#' +#' The function automatically determines the best source for historical data: +#' - **`hydat_path` provided** (path to database): Uses local HYDAT database +#' - **`hydat_path = FALSE`**: Forces use of web service (useful when HYDAT unavailable) +#' - **`hydat_path = NULL`** (default): Tries HYDAT first, automatically falls back +#' to web service if HYDAT is unavailable +#' +#' **Real-time (Provisional) Data:** +#' +#' Provisional data is retrieved from ECCC's real-time web service using the +#' `realtime_ws()` function. This data covers approximately the last 18 months +#' and is updated regularly. +#' +#' ## Data Approval Status +#' +#' The `Approval` column uses ECCC's terminology +#' (see \url{https://wateroffice.ec.gc.ca/contactus/faq_e.html}): +#' +#' - **"final"**: Historical data from HYDAT or web service that has been approved by ECCC. +#' +#' - **"provisional"**: Real-time data from the web service representing the best +#' available measurements, but subject to revision and not yet approved by ECCC. +#' +#' +#' @return A tibble combining final and provisional data with an additional +#' `Approval` column indicating whether each record is "final" or "provisional". +#' +#' @format A tibble with 6 variables: +#' \describe{ +#' \item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} +#' \item{Date}{Observation date. Formatted as a Date class.} +#' \item{Parameter}{Parameter being measured. Value is "Flow"} +#' \item{Value}{Discharge value. The units are m^3/s.} +#' \item{Symbol}{Measurement/river conditions} +#' \item{Approval}{Approval status: "final" (approved) or "provisional" (subject to revision)} +#' } +#' +#' @examples +#' \dontrun{ +#' ## Basic usage - get all available data +#' flows <- available_flows("08MF005") +#' +#' ## Multiple stations +#' flows <- available_flows(c("08MF005", "08NM116")) +#' +#' ## Get only recent data (last 2 years) +#' recent_flows <- available_flows( +#' "08MF005", +#' start_date = Sys.Date() - 730, +#' end_date = Sys.Date() +#' ) +#' +#' ## Force use of web service (when HYDAT not available) +#' flows_ws <- available_flows("08MF005", hydat_path = FALSE) +#' } +#' +#' @family available functions +#' @export +available_flows <- function( + station_number, + start_date = NULL, + end_date = Sys.Date(), + hydat_path = NULL, + prov_terr_state_loc = NULL +) { + get_available_data( + station_number = station_number, + start_date = start_date, + end_date = end_date, + hydat_path = hydat_path, + prov_terr_state_loc = prov_terr_state_loc, + parameter_type = "Flow", + parameter_code = 47 + ) +} + + +#' Get all available level data (final + provisional) +#' +#' Convenience function that combines final historical data +#' (from HYDAT or web service) with provisional real-time data in a single call. +#' +#' @inheritParams available_flows +#' +#' @details +#' This function combines data from final and provisional data sources to provide a complete +#' water level record. +#' +#' ## Data Sources and Priority +#' +#' **Historical (Final) Data:** +#' +#' The function automatically determines the best source for historical data: +#' - **`hydat_path` provided** (path to database): Uses local HYDAT database +#' - **`hydat_path = FALSE`**: Forces use of web service (useful when HYDAT unavailable) +#' - **`hydat_path = NULL`** (default): Tries HYDAT first, automatically falls back +#' to web service if HYDAT is unavailable +#' +#' **Real-time (Provisional) Data:** +#' +#' Provisional data is retrieved from ECCC's real-time web service using the +#' `realtime_ws()` function. This data covers approximately the last 18 months +#' and is updated regularly. +#' +#' ## Data Approval Status +#' +#' The `Approval` column uses ECCC's terminology +#' (see \url{https://wateroffice.ec.gc.ca/contactus/faq_e.html}): +#' +#' - **"final"**: Historical data from HYDAT or web service that has been approved by ECCC. +#' +#' - **"provisional"**: Real-time data from the web service representing the best +#' available measurements, but subject to revision and not yet approved by ECCC. +#' +#' @return A tibble combining final and provisional data with an additional +#' `Approval` column indicating whether each record is "final" or "provisional". +#' +#' @format A tibble with 6 variables: +#' \describe{ +#' \item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} +#' \item{Date}{Observation date. Formatted as a Date class.} +#' \item{Parameter}{Parameter being measured. Value is "Level"} +#' \item{Value}{Level value. The units are metres.} +#' \item{Symbol}{Measurement/river conditions} +#' \item{Approval}{Approval status: "final" (approved) or "provisional" (subject to revision)} +#' } +#' +#' @examples +#' \dontrun{ +#' ## Basic usage - get all available data +#' levels <- available_levels("08MF005") +#' +#' ## Multiple stations +#' levels <- available_levels(c("08MF005", "08NM116")) +#' +#' ## Get only recent data (last 2 years) +#' recent_levels <- available_levels( +#' "08MF005", +#' start_date = Sys.Date() - 730, +#' end_date = Sys.Date() +#' ) +#' +#' ## Force use of web service (when HYDAT not available) +#' levels_ws <- available_levels("08MF005", hydat_path = FALSE) +#' } +#' +#' @family available functions +#' @export +available_levels <- function( + station_number, + start_date = NULL, + end_date = Sys.Date(), + hydat_path = NULL, + prov_terr_state_loc = NULL +) { + get_available_data( + station_number = station_number, + start_date = start_date, + end_date = end_date, + hydat_path = hydat_path, + prov_terr_state_loc = prov_terr_state_loc, + parameter_type = "Level", + parameter_code = 46 + ) +} + + +#' Internal helper to get available data +#' +#' Core logic for available_flows() and available_levels(). Handles data source +#' selection, retrieval, and combination. +#' +#' @param station_number Station number(s) +#' @param start_date Start date (YYYY-MM-DD) +#' @param end_date End date (YYYY-MM-DD) +#' @param hydat_path Path to HYDAT database (NULL/FALSE for auto/web service) +#' @param prov_terr_state_loc Province/territory/state location code +#' @param parameter_type "Flow" or "Level" +#' @param parameter_code Parameter code for realtime_ws (47=Flow, 46=Level) +#' +#' @return Combined tibble with Approval column +#' @noRd +#' @keywords internal +get_available_data <- function( + station_number, + start_date = NULL, + end_date = Sys.Date(), + hydat_path = NULL, + prov_terr_state_loc = NULL, + parameter_type, + parameter_code +) { + browser() + + ## Initialize variables to store data + final_data <- NULL + provisional_data <- NULL + historical_source <- NA_character_ + + ## Get final data + ## Determine which historical function to use + if (parameter_type == "Flow") { + hydat_fn <- hy_daily_flows + ws_fn <- ws_daily_flows + } else if (parameter_type == "Level") { + hydat_fn <- hy_daily_levels + ws_fn <- ws_daily_levels + } else { + stop("parameter_type must be 'Flow' or 'Level'", call. = FALSE) + } + + ## Case 1: hydat_path explicitly provided (not NULL, not FALSE) + if (!is.null(hydat_path) && !isFALSE(hydat_path)) { + final_data <- hydat_fn( + station_number = station_number, + hydat_path = hydat_path, + prov_terr_state_loc = prov_terr_state_loc, + start_date = start_date, + end_date = end_date + ) + historical_source <- "HYDAT" + } + + ## Case 2: hydat_path = FALSE (force web service) + else if (isFALSE(hydat_path)) { + ## Web service requires dates + ws_start <- if (is.null(start_date)) as.Date("1850-01-01") else start_date + ws_end <- if (is.null(end_date)) Sys.Date() else end_date + + final_data <- ws_fn( + station_number = station_number, + start_date = ws_start, + end_date = ws_end + ) + historical_source <- "Web Service" + } + + ## Case 3: hydat_path = NULL (try HYDAT first, fallback to web service) + else { + final_data <- tryCatch( + { + result <- hydat_fn( + station_number = station_number, + hydat_path = hydat_path, + prov_terr_state_loc = prov_terr_state_loc, + start_date = start_date, + end_date = end_date + ) + historical_source <- "HYDAT" + result + }, + error = function(e) { + ## HYDAT failed, try web service + message("HYDAT unavailable, falling back to web service...") + + ## Ensure dates for web service + ws_start <- if (is.null(start_date)) as.Date("1850-01-01") else start_date + ws_end <- if (is.null(end_date)) Sys.Date() else end_date + + tryCatch( + { + result <- ws_fn( + station_number = station_number, + start_date = ws_start, + end_date = ws_end + ) + historical_source <<- "Web Service" + result + }, + error = function(e2) { + warning( + "Failed to retrieve validated data from both HYDAT and web service", + call. = FALSE + ) + NULL + } + ) + } + ) + } + + ## Add Approval column to final data + if (!is.null(final_data) && nrow(final_data) > 0) { + final_data$Approval <- "final" + } + + + # Get provisional/realtime data + # Determine starting date for realtime query + # Use the latest date from final data as the starting point + realtime_start <- if (!is.null(final_data) && nrow(final_data) > 0) { + ## Start from the day after the last final record + max(final_data$Date, na.rm = TRUE) + 1 + } else if (!is.null(start_date)) { + ## No final data, use user-provided start_date + as.Date(start_date) + } else { + ## No final data and no start_date, query from 18 months ago + Sys.Date() - 547 + } + + ## End date defaults to today unless user specified + realtime_end <- if (!is.null(end_date)) { + as.Date(end_date) + } else { + Sys.Date() + } + + ## Only query realtime if there's a valid date range + if (realtime_start <= realtime_end) { + ## Query realtime web service + rt_data <- realtime_ws( + station_number = station_number, + parameters = parameter_code, + start_date = realtime_start, + end_date = realtime_end + ) + + ## Convert Date to Date class (it comes as POSIXct) + rt_data$Date <- as.Date(rt_data$Date) + + ## Aggregate to daily means + sym_STATION_NUMBER <- sym("STATION_NUMBER") + sym_Date <- sym("Date") + sym_Value <- sym("Value") + + provisional_data <- rt_data |> + dplyr::group_by(!!sym_STATION_NUMBER, !!sym_Date) |> + dplyr::summarise(Value = mean(!!sym_Value, na.rm = TRUE), .groups = "drop") |> + dplyr::mutate( + Parameter = parameter_type, + Symbol = NA_character_, + Approval = "provisional" + ) |> + dplyr::select(STATION_NUMBER, Date, Parameter, Value, Symbol, Approval) + } + + + ## Combine final and provisional data + combined_data <- dplyr::bind_rows(final_data, provisional_data) + + ## Apply date filtering if not already applied + if (!is.null(start_date) || !is.null(end_date)) { + sym_Date <- sym("Date") + + if (!is.null(start_date)) { + combined_data <- dplyr::filter(combined_data, !!sym_Date >= as.Date(start_date)) + } + if (!is.null(end_date)) { + combined_data <- dplyr::filter(combined_data, !!sym_Date <= as.Date(end_date)) + } + } + + ## Sort by station and date + sym_STATION_NUMBER <- sym("STATION_NUMBER") + sym_Date <- sym("Date") + combined_data <- dplyr::arrange(combined_data, !!sym_STATION_NUMBER, !!sym_Date) + + ## Store metadata as attributes + attr(combined_data, "historical_source") <- historical_source + attr(combined_data, "query_time") <- Sys.time() + + ## Return as tibble + dplyr::as_tibble(combined_data) +} diff --git a/R/realtime-webservice.R b/R/realtime-webservice.R index f298dbf..5f18a8e 100755 --- a/R/realtime-webservice.R +++ b/R/realtime-webservice.R @@ -23,10 +23,10 @@ #' for some options though undocumented parameters may be implemented. Defaults to Water level provisional, Secondary water level, #' Tertiary water level, Discharge Provisional, Discharge, sensor, Water temperature, Secondary water temperature, Accumulated precipitation #' @param start_date Accepts either YYYY-MM-DD or YYYY-MM-DD HH:MM:SS. -#' If only start date is supplied (i.e. YYYY-MM-DD) values are returned from the start of that day. +#' If only `start date`` is supplied (i.e. YYYY-MM-DD) values are returned from the start of that day. #' Defaults to 30 days before current date. Time is supplied in UTC. #' @param end_date Accepts either YYYY-MM-DD or YYYY-MM-DD HH:MM:SS. -#' If only a date is supplied (i.e. YYYY-MM-DD) values are returned from the end of that day. +#' If only `end_date`` is supplied (i.e. YYYY-MM-DD) values are returned from the end of that day. #' Defaults to current date. Time is supplied in UTC. #' #' From 297f7772fb52989655f0014925130765daacd6de Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Mon, 8 Dec 2025 14:10:01 -0800 Subject: [PATCH 2/9] just use an argument --- NAMESPACE | 4 +- R/available.R | 93 +++++++---------- R/historical-webservice.R | 77 ++------------ R/hy_daily_flows.R | 34 +++++- R/hy_daily_levels.R | 32 +++++- man/available_flows.Rd | 109 ++++++++++++++++++++ man/available_levels.Rd | 109 ++++++++++++++++++++ man/hy_daily_flows.Rd | 17 ++- man/hy_daily_levels.Rd | 15 ++- man/realtime_ws.Rd | 4 +- man/ws_daily_flows.Rd | 57 ---------- tests/testthat/test-historical-webservice.R | 44 ++++---- tests/testthat/test-webservice-classes.R | 10 +- 13 files changed, 386 insertions(+), 219 deletions(-) create mode 100644 man/available_flows.Rd create mode 100644 man/available_levels.Rd delete mode 100644 man/ws_daily_flows.Rd diff --git a/NAMESPACE b/NAMESPACE index 8e7c0bc..99a97be 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -5,6 +5,8 @@ S3method(plot,realtime) S3method(print,hy) S3method(print,realtime) S3method(print,ws) +export(available_flows) +export(available_levels) export(download_hydat) export(enexpr) export(enquo) @@ -59,8 +61,6 @@ export(search_stn_name) export(search_stn_number) export(sym) export(syms) -export(ws_daily_flows) -export(ws_daily_levels) importFrom(rlang,":=") importFrom(rlang,.data) importFrom(rlang,UQ) diff --git a/R/available.R b/R/available.R index 34abb81..90500d1 100644 --- a/R/available.R +++ b/R/available.R @@ -30,9 +30,9 @@ #' **Historical (Final) Data:** #' #' The function automatically determines the best source for historical data: -#' - **`hydat_path` provided** (path to database): Uses local HYDAT database +#' - **`hydat_path` provided** (path to database): Uses local HYDAT database at that path #' - **`hydat_path = FALSE`**: Forces use of web service (useful when HYDAT unavailable) -#' - **`hydat_path = NULL`** (default): Tries HYDAT first, automatically falls back +#' - **`hydat_path = NULL`** (default): Uses HYDAT default location, automatically falls back #' to web service if HYDAT is unavailable #' #' **Real-time (Provisional) Data:** @@ -121,9 +121,9 @@ available_flows <- function( #' **Historical (Final) Data:** #' #' The function automatically determines the best source for historical data: -#' - **`hydat_path` provided** (path to database): Uses local HYDAT database +#' - **`hydat_path` provided** (path to database): Uses local HYDAT database at that path #' - **`hydat_path = FALSE`**: Forces use of web service (useful when HYDAT unavailable) -#' - **`hydat_path = NULL`** (default): Tries HYDAT first, automatically falls back +#' - **`hydat_path = NULL`** (default): Uses HYDAT default location, automatically falls back #' to web service if HYDAT is unavailable #' #' **Real-time (Provisional) Data:** @@ -220,67 +220,46 @@ get_available_data <- function( parameter_type, parameter_code ) { - browser() - ## Initialize variables to store data final_data <- NULL provisional_data <- NULL historical_source <- NA_character_ - ## Get final data - ## Determine which historical function to use + ## Get final data using hy_daily_* functions + ## These now handle data source selection internally based on hydat_path if (parameter_type == "Flow") { hydat_fn <- hy_daily_flows - ws_fn <- ws_daily_flows } else if (parameter_type == "Level") { hydat_fn <- hy_daily_levels - ws_fn <- ws_daily_levels } else { stop("parameter_type must be 'Flow' or 'Level'", call. = FALSE) } - ## Case 1: hydat_path explicitly provided (not NULL, not FALSE) - if (!is.null(hydat_path) && !isFALSE(hydat_path)) { - final_data <- hydat_fn( - station_number = station_number, - hydat_path = hydat_path, - prov_terr_state_loc = prov_terr_state_loc, - start_date = start_date, - end_date = end_date - ) - historical_source <- "HYDAT" - } - - ## Case 2: hydat_path = FALSE (force web service) - else if (isFALSE(hydat_path)) { - ## Web service requires dates - ws_start <- if (is.null(start_date)) as.Date("1850-01-01") else start_date - ws_end <- if (is.null(end_date)) Sys.Date() else end_date - - final_data <- ws_fn( - station_number = station_number, - start_date = ws_start, - end_date = ws_end - ) - historical_source <- "Web Service" - } + ## Get final data - try HYDAT first, fallback to web service if NULL + final_data <- tryCatch( + { + result <- hydat_fn( + station_number = station_number, + hydat_path = hydat_path, + prov_terr_state_loc = prov_terr_state_loc, + start_date = start_date, + end_date = end_date + ) - ## Case 3: hydat_path = NULL (try HYDAT first, fallback to web service) - else { - final_data <- tryCatch( - { - result <- hydat_fn( - station_number = station_number, - hydat_path = hydat_path, - prov_terr_state_loc = prov_terr_state_loc, - start_date = start_date, - end_date = end_date - ) + ## Determine source based on class + if (inherits(result, "hy")) { historical_source <- "HYDAT" - result - }, - error = function(e) { - ## HYDAT failed, try web service + } else if (inherits(result, "ws")) { + historical_source <- "Web Service" + } else { + historical_source <- "Unknown" + } + + result + }, + error = function(e) { + ## Only fallback to web service if hydat_path was NULL + if (is.null(hydat_path)) { message("HYDAT unavailable, falling back to web service...") ## Ensure dates for web service @@ -289,8 +268,9 @@ get_available_data <- function( tryCatch( { - result <- ws_fn( + result <- hydat_fn( station_number = station_number, + hydat_path = FALSE, # Force web service start_date = ws_start, end_date = ws_end ) @@ -305,9 +285,16 @@ get_available_data <- function( NULL } ) + } else { + ## If hydat_path was explicitly set (not NULL), just error + warning( + "Failed to retrieve validated data: ", e$message, + call. = FALSE + ) + NULL } - ) - } + } + ) ## Add Approval column to final data if (!is.null(final_data) && nrow(final_data) > 0) { diff --git a/R/historical-webservice.R b/R/historical-webservice.R index f4397de..a183faa 100644 --- a/R/historical-webservice.R +++ b/R/historical-webservice.R @@ -1,74 +1,13 @@ -#' Download historical flow and level data from the ECCC web service +#' Internal helper to get historical data from web service #' -#' Functions to retrieve historical flow and levels data from ECCC web service. This data is -#' the same as HYDAT data but provides the convenience of not having to download -#' the HYDAT database. This function is useful when a smaller amount of data is needed. If -#' you need lots of data, consider using HYDAT and the `hy_` family of functions +#' @param station_number Water Survey of Canada station number +#' @param parameters Either "flow" or "level" +#' @param start_date Start date in YYYY-MM-DD format (required) +#' @param end_date End date in YYYY-MM-DD format (required) #' -#' @param station_number Water Survey of Canada station number. -#' @param start_date Accepts YYYY-MM-DD. You need to provide a start date. -#' The default value is NULL -#' @param end_date Accepts either YYYY-MM-DD. You need to provide an end date. -#' The default value is NULL -#' -#' -#' @format A tibble with 6 variables: -#' \describe{ -#' \item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} -#' \item{Date}{Observation date and time. Formatted as a POSIXct class as UTC for consistency.} -#' \item{Parameter}{Type of parameter} -#' \item{Value}{Value of the measurement.} -#' \item{Symbol}{future use} -#' } -#' -#' @seealso hy_daily_flows -#' @examples -#' \dontrun{ -#' try( -#' flow_data <- ws_daily_flows( -#' station_number = c("08NL071", "08NM174"), -#' start_date = Sys.Date() - 365, -#' end_date = Sys.Date() -#' ) -#' ) -#' try( -#' level_data <- ws_daily_level( -#' station_number = c("08NL071", "08NM174"), -#' start_date = Sys.Date() - 365, -#' end_date = Sys.Date() -#' ) -#' ) -#'} -#' @export -ws_daily_flows <- function( - station_number, - start_date = NULL, - end_date = NULL) { - - get_historical_data( - station_number = station_number, - parameters = "flow", - start_date = start_date, - end_date = end_date - ) -} - -#' @rdname ws_daily_flows -#' @export -ws_daily_levels <- function( - station_number, - start_date = NULL, - end_date = NULL) { - - get_historical_data( - station_number = station_number, - parameters = "level", - start_date = start_date, - end_date = end_date - ) -} - - +#' @return A tibble with historical data from the web service +#' @noRd +#' @keywords internal get_historical_data <- function( station_number, parameters = "flow", diff --git a/R/hy_daily_flows.R b/R/hy_daily_flows.R index bdd4473..c048fe6 100644 --- a/R/hy_daily_flows.R +++ b/R/hy_daily_flows.R @@ -10,11 +10,12 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and limitations under the License. -#' @title Extract daily flows information from the HYDAT database +#' @title Extract daily flows information from HYDAT database or web service #' -#' @description Provides wrapper to turn the DLY_FLOWS table in HYDAT into a tidy data frame of daily flows. -#' `station_number` and `prov_terr_state_loc` can both be supplied. If both are omitted all -#' values from the `hy_stations` table are returned. That is a large tibble for `hy_daily_flows`. +#' @description Provides wrapper to turn the DLY_FLOWS table in HYDAT (or historical web service) +#' into a tidy data frame of daily flows. `station_number` and `prov_terr_state_loc` can both be +#' supplied. If both are omitted all values from the `hy_stations` table are returned. +#' That is a large tibble for `hy_daily_flows`. #' #' @inheritParams hy_stations #' @param start_date Leave blank if all dates are required. Date format needs to be in YYYY-MM-DD. Date is inclusive. @@ -22,6 +23,12 @@ #' @param symbol_output Set whether the raw code, or the `english` or the `french` translations are outputted. Default #' value is `code`. #' +#' @details +#' The `hydat_path` argument controls the data source: +#' - **NULL** (default): Uses local HYDAT database (default location) +#' - **FALSE**: Forces use of historical web service (requires `start_date` and `end_date`) +#' - **Path string**: Uses HYDAT database at the specified path +#' #' @return A tibble of daily flows #' #' @format A tibble with 5 variables: @@ -56,6 +63,25 @@ hy_daily_flows <- function( end_date = NULL, symbol_output = "code" ) { + ## Case 1: hydat_path = FALSE (force web service) + if (isFALSE(hydat_path)) { + ## Web service requires dates + if (is.null(start_date)) { + stop("start_date is required when using web service (hydat_path = FALSE)", call. = FALSE) + } + if (is.null(end_date)) { + stop("end_date is required when using web service (hydat_path = FALSE)", call. = FALSE) + } + + return(get_historical_data( + station_number = station_number, + parameters = "flow", + start_date = start_date, + end_date = end_date + )) + } + + ## Case 2: Use HYDAT (either explicit path or NULL for default) ## Determine which dates should be queried dates_null <- date_check(start_date, end_date) diff --git a/R/hy_daily_levels.R b/R/hy_daily_levels.R index 7de82f7..64655b9 100644 --- a/R/hy_daily_levels.R +++ b/R/hy_daily_levels.R @@ -10,14 +10,21 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and limitations under the License. -#' @title Extract daily levels information from the HYDAT database +#' @title Extract daily levels information from HYDAT database or web service #' -#' @description Provides wrapper to turn the DLY_LEVELS table in HYDAT into a tidy data frame. The primary value returned by this -#' function is discharge. `station_number` and `prov_terr_state_loc` can both be supplied. If both are omitted all +#' @description Provides wrapper to turn the DLY_LEVELS table in HYDAT (or historical web service) +#' into a tidy data frame. The primary value returned by this function is water level. +#' `station_number` and `prov_terr_state_loc` can both be supplied. If both are omitted all #' values from the `hy_stations` table are returned. That is a large vector for `hy_daily_levels`. #' #' @inheritParams hy_daily_flows #' +#' @details +#' The `hydat_path` argument controls the data source: +#' - **NULL** (default): Uses local HYDAT database (default location) +#' - **FALSE**: Forces use of historical web service (requires `start_date` and `end_date`) +#' - **Path string**: Uses HYDAT database at the specified path +#' #' @return A tibble of daily levels #' #' @format A tibble with 5 variables: @@ -51,6 +58,25 @@ hy_daily_levels <- function( end_date = NULL, symbol_output = "code" ) { + ## Case 1: hydat_path = FALSE (force web service) + if (isFALSE(hydat_path)) { + ## Web service requires dates + if (is.null(start_date)) { + stop("start_date is required when using web service (hydat_path = FALSE)", call. = FALSE) + } + if (is.null(end_date)) { + stop("end_date is required when using web service (hydat_path = FALSE)", call. = FALSE) + } + + return(get_historical_data( + station_number = station_number, + parameters = "level", + start_date = start_date, + end_date = end_date + )) + } + + ## Case 2: Use HYDAT (either explicit path or NULL for default) ## Determine which dates should be queried dates_null <- date_check(start_date, end_date) diff --git a/man/available_flows.Rd b/man/available_flows.Rd new file mode 100644 index 0000000..b3f0216 --- /dev/null +++ b/man/available_flows.Rd @@ -0,0 +1,109 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/available.R +\name{available_flows} +\alias{available_flows} +\title{Get all available flow data (final + provisional)} +\format{ +A tibble with 6 variables: +\describe{ +\item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} +\item{Date}{Observation date. Formatted as a Date class.} +\item{Parameter}{Parameter being measured. Value is "Flow"} +\item{Value}{Discharge value. The units are m^3/s.} +\item{Symbol}{Measurement/river conditions} +\item{Approval}{Approval status: "final" (approved) or "provisional" (subject to revision)} +} +} +\usage{ +available_flows( + station_number, + start_date = NULL, + end_date = Sys.Date(), + hydat_path = NULL, + prov_terr_state_loc = NULL +) +} +\arguments{ +\item{station_number}{A seven digit Water Survey of Canada station number. If this argument is omitted, the value of \code{prov_terr_state_loc} +is returned.} + +\item{start_date}{Start date for data retrieval in YYYY-MM-DD format. +Defaults to NULL (retrieves all available historical data).} + +\item{end_date}{End date for data retrieval in YYYY-MM-DD format. +Defaults to current date (Sys.Date()).} + +\item{hydat_path}{The path to the hydat database or NULL to use the default location +used by \link{download_hydat}. It is also possible to pass in an existing +\link[dplyr]{src_sqlite} such that the database only needs to be opened once per +user-level call.} + +\item{prov_terr_state_loc}{Province, state or territory. If this argument is omitted, the value of \code{station_number} +is returned. See \code{unique(allstations$prov_terr_state_loc)}. Will also accept \code{CA} to return only Canadian stations.} +} +\value{ +A tibble combining final and provisional data with an additional +\code{Approval} column indicating whether each record is "final" or "provisional". +} +\description{ +Convenience function that combines final historical data +(from HYDAT or web service) with provisional real-time data in a single call. +} +\details{ +This function combines data from final and provisional data sources to provide a complete +discharge record. +\subsection{Data Sources and Priority}{ + +\strong{Historical (Final) Data:} + +The function automatically determines the best source for historical data: +\itemize{ +\item \strong{\code{hydat_path} provided} (path to database): Uses local HYDAT database at that path +\item \strong{\code{hydat_path = FALSE}}: Forces use of web service (useful when HYDAT unavailable) +\item \strong{\code{hydat_path = NULL}} (default): Uses HYDAT default location, automatically falls back +to web service if HYDAT is unavailable +} + +\strong{Real-time (Provisional) Data:} + +Provisional data is retrieved from ECCC's real-time web service using the +\code{realtime_ws()} function. This data covers approximately the last 18 months +and is updated regularly. +} + +\subsection{Data Approval Status}{ + +The \code{Approval} column uses ECCC's terminology +(see \url{https://wateroffice.ec.gc.ca/contactus/faq_e.html}): +\itemize{ +\item \strong{"final"}: Historical data from HYDAT or web service that has been approved by ECCC. +\item \strong{"provisional"}: Real-time data from the web service representing the best +available measurements, but subject to revision and not yet approved by ECCC. +} +} +} +\examples{ +\dontrun{ +## Basic usage - get all available data +flows <- available_flows("08MF005") + +## Multiple stations +flows <- available_flows(c("08MF005", "08NM116")) + +## Get only recent data (last 2 years) +recent_flows <- available_flows( + "08MF005", + start_date = Sys.Date() - 730, + end_date = Sys.Date() +) + +## Force use of web service (when HYDAT not available) +flows_ws <- available_flows("08MF005", hydat_path = FALSE) +} + +} +\seealso{ +Other available functions: +\code{\link{available_levels}()} +} +\concept{available functions} diff --git a/man/available_levels.Rd b/man/available_levels.Rd new file mode 100644 index 0000000..8fed977 --- /dev/null +++ b/man/available_levels.Rd @@ -0,0 +1,109 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/available.R +\name{available_levels} +\alias{available_levels} +\title{Get all available level data (final + provisional)} +\format{ +A tibble with 6 variables: +\describe{ +\item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} +\item{Date}{Observation date. Formatted as a Date class.} +\item{Parameter}{Parameter being measured. Value is "Level"} +\item{Value}{Level value. The units are metres.} +\item{Symbol}{Measurement/river conditions} +\item{Approval}{Approval status: "final" (approved) or "provisional" (subject to revision)} +} +} +\usage{ +available_levels( + station_number, + start_date = NULL, + end_date = Sys.Date(), + hydat_path = NULL, + prov_terr_state_loc = NULL +) +} +\arguments{ +\item{station_number}{A seven digit Water Survey of Canada station number. If this argument is omitted, the value of \code{prov_terr_state_loc} +is returned.} + +\item{start_date}{Start date for data retrieval in YYYY-MM-DD format. +Defaults to NULL (retrieves all available historical data).} + +\item{end_date}{End date for data retrieval in YYYY-MM-DD format. +Defaults to current date (Sys.Date()).} + +\item{hydat_path}{The path to the hydat database or NULL to use the default location +used by \link{download_hydat}. It is also possible to pass in an existing +\link[dplyr]{src_sqlite} such that the database only needs to be opened once per +user-level call.} + +\item{prov_terr_state_loc}{Province, state or territory. If this argument is omitted, the value of \code{station_number} +is returned. See \code{unique(allstations$prov_terr_state_loc)}. Will also accept \code{CA} to return only Canadian stations.} +} +\value{ +A tibble combining final and provisional data with an additional +\code{Approval} column indicating whether each record is "final" or "provisional". +} +\description{ +Convenience function that combines final historical data +(from HYDAT or web service) with provisional real-time data in a single call. +} +\details{ +This function combines data from final and provisional data sources to provide a complete +water level record. +\subsection{Data Sources and Priority}{ + +\strong{Historical (Final) Data:} + +The function automatically determines the best source for historical data: +\itemize{ +\item \strong{\code{hydat_path} provided} (path to database): Uses local HYDAT database at that path +\item \strong{\code{hydat_path = FALSE}}: Forces use of web service (useful when HYDAT unavailable) +\item \strong{\code{hydat_path = NULL}} (default): Uses HYDAT default location, automatically falls back +to web service if HYDAT is unavailable +} + +\strong{Real-time (Provisional) Data:} + +Provisional data is retrieved from ECCC's real-time web service using the +\code{realtime_ws()} function. This data covers approximately the last 18 months +and is updated regularly. +} + +\subsection{Data Approval Status}{ + +The \code{Approval} column uses ECCC's terminology +(see \url{https://wateroffice.ec.gc.ca/contactus/faq_e.html}): +\itemize{ +\item \strong{"final"}: Historical data from HYDAT or web service that has been approved by ECCC. +\item \strong{"provisional"}: Real-time data from the web service representing the best +available measurements, but subject to revision and not yet approved by ECCC. +} +} +} +\examples{ +\dontrun{ +## Basic usage - get all available data +levels <- available_levels("08MF005") + +## Multiple stations +levels <- available_levels(c("08MF005", "08NM116")) + +## Get only recent data (last 2 years) +recent_levels <- available_levels( + "08MF005", + start_date = Sys.Date() - 730, + end_date = Sys.Date() +) + +## Force use of web service (when HYDAT not available) +levels_ws <- available_levels("08MF005", hydat_path = FALSE) +} + +} +\seealso{ +Other available functions: +\code{\link{available_flows}()} +} +\concept{available functions} diff --git a/man/hy_daily_flows.Rd b/man/hy_daily_flows.Rd index a703234..73cf397 100644 --- a/man/hy_daily_flows.Rd +++ b/man/hy_daily_flows.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/hy_daily_flows.R \name{hy_daily_flows} \alias{hy_daily_flows} -\title{Extract daily flows information from the HYDAT database} +\title{Extract daily flows information from HYDAT database or web service} \format{ A tibble with 5 variables: \describe{ @@ -49,9 +49,18 @@ value is \code{code}.} A tibble of daily flows } \description{ -Provides wrapper to turn the DLY_FLOWS table in HYDAT into a tidy data frame of daily flows. -\code{station_number} and \code{prov_terr_state_loc} can both be supplied. If both are omitted all -values from the \code{hy_stations} table are returned. That is a large tibble for \code{hy_daily_flows}. +Provides wrapper to turn the DLY_FLOWS table in HYDAT (or historical web service) +into a tidy data frame of daily flows. \code{station_number} and \code{prov_terr_state_loc} can both be +supplied. If both are omitted all values from the \code{hy_stations} table are returned. +That is a large tibble for \code{hy_daily_flows}. +} +\details{ +The \code{hydat_path} argument controls the data source: +\itemize{ +\item \strong{NULL} (default): Uses local HYDAT database (default location) +\item \strong{FALSE}: Forces use of historical web service (requires \code{start_date} and \code{end_date}) +\item \strong{Path string}: Uses HYDAT database at the specified path +} } \examples{ \dontrun{ diff --git a/man/hy_daily_levels.Rd b/man/hy_daily_levels.Rd index 0184e27..1523ed1 100644 --- a/man/hy_daily_levels.Rd +++ b/man/hy_daily_levels.Rd @@ -2,7 +2,7 @@ % Please edit documentation in R/hy_daily_levels.R \name{hy_daily_levels} \alias{hy_daily_levels} -\title{Extract daily levels information from the HYDAT database} +\title{Extract daily levels information from HYDAT database or web service} \format{ A tibble with 5 variables: \describe{ @@ -49,10 +49,19 @@ value is \code{code}.} A tibble of daily levels } \description{ -Provides wrapper to turn the DLY_LEVELS table in HYDAT into a tidy data frame. The primary value returned by this -function is discharge. \code{station_number} and \code{prov_terr_state_loc} can both be supplied. If both are omitted all +Provides wrapper to turn the DLY_LEVELS table in HYDAT (or historical web service) +into a tidy data frame. The primary value returned by this function is water level. +\code{station_number} and \code{prov_terr_state_loc} can both be supplied. If both are omitted all values from the \code{hy_stations} table are returned. That is a large vector for \code{hy_daily_levels}. } +\details{ +The \code{hydat_path} argument controls the data source: +\itemize{ +\item \strong{NULL} (default): Uses local HYDAT database (default location) +\item \strong{FALSE}: Forces use of historical web service (requires \code{start_date} and \code{end_date}) +\item \strong{Path string}: Uses HYDAT database at the specified path +} +} \examples{ \dontrun{ hy_daily_levels( diff --git a/man/realtime_ws.Rd b/man/realtime_ws.Rd index 7448fe0..85eb648 100644 --- a/man/realtime_ws.Rd +++ b/man/realtime_ws.Rd @@ -34,11 +34,11 @@ for some options though undocumented parameters may be implemented. Defaults to Tertiary water level, Discharge Provisional, Discharge, sensor, Water temperature, Secondary water temperature, Accumulated precipitation} \item{start_date}{Accepts either YYYY-MM-DD or YYYY-MM-DD HH:MM:SS. -If only start date is supplied (i.e. YYYY-MM-DD) values are returned from the start of that day. +If only `start date`` is supplied (i.e. YYYY-MM-DD) values are returned from the start of that day. Defaults to 30 days before current date. Time is supplied in UTC.} \item{end_date}{Accepts either YYYY-MM-DD or YYYY-MM-DD HH:MM:SS. -If only a date is supplied (i.e. YYYY-MM-DD) values are returned from the end of that day. +If only `end_date`` is supplied (i.e. YYYY-MM-DD) values are returned from the end of that day. Defaults to current date. Time is supplied in UTC.} } \description{ diff --git a/man/ws_daily_flows.Rd b/man/ws_daily_flows.Rd deleted file mode 100644 index 85ba3ab..0000000 --- a/man/ws_daily_flows.Rd +++ /dev/null @@ -1,57 +0,0 @@ -% Generated by roxygen2: do not edit by hand -% Please edit documentation in R/historical-webservice.R -\name{ws_daily_flows} -\alias{ws_daily_flows} -\alias{ws_daily_levels} -\title{Download historical flow and level data from the ECCC web service} -\format{ -A tibble with 6 variables: -\describe{ -\item{STATION_NUMBER}{Unique 7 digit Water Survey of Canada station number} -\item{Date}{Observation date and time. Formatted as a POSIXct class as UTC for consistency.} -\item{Parameter}{Type of parameter} -\item{Value}{Value of the measurement.} -\item{Symbol}{future use} -} -} -\usage{ -ws_daily_flows(station_number, start_date = NULL, end_date = NULL) - -ws_daily_levels(station_number, start_date = NULL, end_date = NULL) -} -\arguments{ -\item{station_number}{Water Survey of Canada station number.} - -\item{start_date}{Accepts YYYY-MM-DD. You need to provide a start date. -The default value is NULL} - -\item{end_date}{Accepts either YYYY-MM-DD. You need to provide an end date. -The default value is NULL} -} -\description{ -Functions to retrieve historical flow and levels data from ECCC web service. This data is -the same as HYDAT data but provides the convenience of not having to download -the HYDAT database. This function is useful when a smaller amount of data is needed. If -you need lots of data, consider using HYDAT and the \code{hy_} family of functions -} -\examples{ -\dontrun{ -try( - flow_data <- ws_daily_flows( - station_number = c("08NL071", "08NM174"), - start_date = Sys.Date() - 365, - end_date = Sys.Date() - ) -) -try( - level_data <- ws_daily_level( - station_number = c("08NL071", "08NM174"), - start_date = Sys.Date() - 365, - end_date = Sys.Date() - ) -) -} -} -\seealso{ -hy_daily_flows -} diff --git a/tests/testthat/test-historical-webservice.R b/tests/testthat/test-historical-webservice.R index 947717d..6826b62 100644 --- a/tests/testthat/test-historical-webservice.R +++ b/tests/testthat/test-historical-webservice.R @@ -3,9 +3,10 @@ # To re-record fixtures, see tests/testthat/record_fixtures.R httptest2::with_mock_dir("fixtures", { - test_that("ws_daily_flows returns the correct data header", { - ws_test <- ws_daily_flows( + test_that("hy_daily_flows with hydat_path = FALSE returns the correct data header", { + ws_test <- hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2023-01-01"), end_date = as.Date("2023-12-31") ) @@ -20,18 +21,20 @@ httptest2::with_mock_dir("fixtures", { }) - test_that("ws_daily_flows is empty with a nearish date", { + test_that("hy_daily_flows with hydat_path = FALSE is empty with a nearish date", { # using a fixed date that was empty on the date of fixture creation - expect_error(ws_daily_flows( + expect_error(hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2025-10-27"), end_date = as.Date("2025-10-29") ), "No data exists for this station query during the period chosen") }) - test_that("ws_daily_levels returns the correct data header", { - ws_test <- ws_daily_levels( + test_that("hy_daily_levels with hydat_path = FALSE returns the correct data header", { + ws_test <- hy_daily_levels( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2023-01-01"), end_date = as.Date("2023-12-31") ) @@ -46,37 +49,41 @@ httptest2::with_mock_dir("fixtures", { }) - test_that("ws_daily_levels is empty with a nearish date", { + test_that("hy_daily_levels with hydat_path = FALSE is empty with a nearish date", { # using a fixed date that was empty on the date of fixture creation - expect_error(ws_daily_levels( + expect_error(hy_daily_levels( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2025-10-27"), end_date = as.Date("2025-10-29") ), "No data exists for this station query during the period chosen") }) }) -test_that("get_historical_data error informatively with no dates given", { +test_that("hy_daily_flows with hydat_path = FALSE errors informatively with no dates given", { expect_error( - get_historical_data( - station_number = "08MF005" + hy_daily_flows( + station_number = "08MF005", + hydat_path = FALSE ), - "please provide a valid date for the start_date argument" + "start_date is required when using web service" ) expect_error( - get_historical_data( + hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = Sys.Date() ), - "please provide a valid date for the end_date argument" + "end_date is required when using web service" ) }) -test_that("get_historical_data errors when end_date is before start_date", { +test_that("hy_daily_flows with hydat_path = FALSE errors when end_date is before start_date", { expect_error( - get_historical_data( + hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = Sys.Date(), end_date = Sys.Date() - 10 ), @@ -84,12 +91,13 @@ test_that("get_historical_data errors when end_date is before start_date", { ) }) -test_that("ws_daily_flows accepts Date objects", { +test_that("hy_daily_flows with hydat_path = FALSE accepts Date objects", { skip_if_not_installed("httptest2") httptest2::with_mock_dir("fixtures", { - result <- ws_daily_flows( + result <- hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2023-01-01"), end_date = as.Date("2023-12-31") ) diff --git a/tests/testthat/test-webservice-classes.R b/tests/testthat/test-webservice-classes.R index 7f098b2..ea61a17 100644 --- a/tests/testthat/test-webservice-classes.R +++ b/tests/testthat/test-webservice-classes.R @@ -138,9 +138,10 @@ test_that("print.ws handles data with no Date column", { }) httptest2::with_mock_dir("fixtures", { - test_that("ws_daily_flows returns ws class", { - result <- ws_daily_flows( + test_that("hy_daily_flows with hydat_path = FALSE returns ws class", { + result <- hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2023-01-01"), end_date = as.Date("2023-12-31") ) @@ -150,9 +151,10 @@ httptest2::with_mock_dir("fixtures", { expect_true(!is.null(attr(result, "missed_stns"))) }) - test_that("ws_daily_levels returns ws class", { - result <- ws_daily_levels( + test_that("hy_daily_levels with hydat_path = FALSE returns ws class", { + result <- hy_daily_levels( station_number = "08MF005", + hydat_path = FALSE, start_date = as.Date("2023-01-01"), end_date = as.Date("2023-12-31") ) From 57ba888ac2e36a7700467e9860c594bc7c541bfe Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Mon, 8 Dec 2025 14:59:08 -0800 Subject: [PATCH 3/9] revise docs --- NEWS.md | 3 +- README.Rmd | 25 +++-- README.md | 110 ++++++++++++++-------- man/figures/README-unnamed-chunk-11-1.png | Bin 98843 -> 55037 bytes man/figures/README-unnamed-chunk-12-1.png | Bin 0 -> 98843 bytes vignettes/tidyhydat_an_introduction.Rmd | 24 +++-- 6 files changed, 108 insertions(+), 54 deletions(-) create mode 100644 man/figures/README-unnamed-chunk-12-1.png diff --git a/NEWS.md b/NEWS.md index 5552843..4e288b1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,6 @@ # tidyhydat 0.7.2.9000 -- add historical webservice functions `ws_daily_flows` and `ws_daily_levels` (#212) +- add `hy_daily_flows()` and `hy_daily_levels()` now support `hydat_path = FALSE` to access historical web service data without downloading HYDAT +- add `available_flows()` and `available_levels()` functions that combine validated historical data with provisional real-time data - add httptest2 for mocking webservice tests (#212) - add classes to webservice outputs with print methods (#212) diff --git a/README.Rmd b/README.Rmd index 9222a1c..e436545 100644 --- a/README.Rmd +++ b/README.Rmd @@ -27,9 +27,9 @@ knitr::opts_chunk$set( ## What does `tidyhydat` do? -- Provides functions (`hy_*`) that access hydrometric data from the HYDAT database, a national archive of Canadian hydrometric data and return tidy data. +- Provides functions (`hy_*`) that access hydrometric data from the HYDAT database or web service, a national archive of Canadian hydrometric data and return tidy data. - Provides functions (`realtime_*`) that access Environment and Climate Change Canada's real-time hydrometric data source. -- Provides functions (`ws_*`) that access historical daily data via web service without requiring HYDAT download. +- Provides functions (`available_*`) that seamlessly combine validated historical data with provisional real-time data. - Provides functions (`search_*`) that can search through the approximately 7000 stations in the database and aid in generating station vectors - Keep functions as simple as possible. For example, for daily flows, the `hy_daily_flows()` function queries the database, *tidies* the data and returns a [tibble](https://tibble.tidyverse.org/) of daily flows. @@ -86,12 +86,13 @@ realtime_ws( ) ``` -### Historical web service -For smaller queries where downloading the entire HYDAT database is unnecessary, `tidyhydat` provides web service functions that access historical daily data directly: +### Using the web service without HYDAT +For smaller queries where downloading the entire HYDAT database is unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with `hydat_path = FALSE` to access historical daily data directly from the web service: ```{r} -ws_daily_flows( +hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31" ) @@ -99,13 +100,25 @@ ws_daily_flows( Similarly for water levels: ```{r} -ws_daily_levels( +hy_daily_levels( station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31" ) ``` +### Combining validated and provisional data +For a complete record combining validated historical data with recent provisional data: + +```{r} +available_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() +) +``` + ## Compare realtime_ws and realtime_dd diff --git a/README.md b/README.md index d44a0ad..ed17845 100644 --- a/README.md +++ b/README.md @@ -22,12 +22,12 @@ checks](https://badges.cranchecks.info/worst/tidyhydat.svg)](https://cran.r-proj ## What does `tidyhydat` do? - Provides functions (`hy_*`) that access hydrometric data from the - HYDAT database, a national archive of Canadian hydrometric data and - return tidy data. + HYDAT database or web service, a national archive of Canadian + hydrometric data and return tidy data. - Provides functions (`realtime_*`) that access Environment and Climate Change Canada’s real-time hydrometric data source. -- Provides functions (`ws_*`) that access historical daily data via web - service without requiring HYDAT download. +- Provides functions (`available_*`) that seamlessly combine validated + historical data with provisional real-time data. - Provides functions (`search_*`) that can search through the approximately 7000 stations in the database and aid in generating station vectors @@ -85,22 +85,22 @@ the same conventions discussed above. Using `realtime_dd()` we can easily select specific stations by supplying a station of interest: realtime_dd(station_number = "08MF005") - #> Queried on: 2025-10-29 17:49:41.08772 (UTC) - #> Date range: 2025-09-29 to 2025-10-29 - #> # A tibble: 17,502 × 8 + #> Queried on: 2025-12-08 22:15:27.583058 (UTC) + #> Date range: 2025-11-08 to 2025-12-08 + #> # A tibble: 17,596 × 8 #> STATION_NUMBER PROV_TERR_STATE_LOC Date Parameter Value Grade #> - #> 1 08MF005 BC 2025-09-29 08:00:00 Flow 1390 - #> 2 08MF005 BC 2025-09-29 08:05:00 Flow 1390 - #> 3 08MF005 BC 2025-09-29 08:10:00 Flow 1390 - #> 4 08MF005 BC 2025-09-29 08:15:00 Flow 1390 - #> 5 08MF005 BC 2025-09-29 08:20:00 Flow 1390 - #> 6 08MF005 BC 2025-09-29 08:25:00 Flow 1390 - #> 7 08MF005 BC 2025-09-29 08:30:00 Flow 1390 - #> 8 08MF005 BC 2025-09-29 08:35:00 Flow 1400 - #> 9 08MF005 BC 2025-09-29 08:40:00 Flow 1390 - #> 10 08MF005 BC 2025-09-29 08:45:00 Flow 1390 - #> # ℹ 17,492 more rows + #> 1 08MF005 BC 2025-11-08 08:00:00 Flow 1450 + #> 2 08MF005 BC 2025-11-08 08:05:00 Flow 1450 + #> 3 08MF005 BC 2025-11-08 08:10:00 Flow 1450 + #> 4 08MF005 BC 2025-11-08 08:15:00 Flow 1450 + #> 5 08MF005 BC 2025-11-08 08:20:00 Flow 1450 + #> 6 08MF005 BC 2025-11-08 08:25:00 Flow 1450 + #> 7 08MF005 BC 2025-11-08 08:30:00 Flow 1450 + #> 8 08MF005 BC 2025-11-08 08:35:00 Flow 1450 + #> 9 08MF005 BC 2025-11-08 08:40:00 Flow 1460 + #> 10 08MF005 BC 2025-11-08 08:45:00 Flow 1450 + #> # ℹ 17,586 more rows #> # ℹ 2 more variables: Symbol , Code Or we can use `realtime_ws`: @@ -111,40 +111,42 @@ Or we can use `realtime_ws`: start_date = Sys.Date() - 14, end_date = Sys.Date() ) - #> Queried on: 2025-10-29 17:49:42.453161 (UTC) - #> Date range: 2025-10-15 to 2025-10-29 + #> Queried on: 2025-12-08 22:15:29.054838 (UTC) + #> Date range: 2025-11-24 to 2025-12-08 #> Station(s) returned: 1 #> All stations successfully retrieved. #> All parameters successfully retrieved. - #> # A tibble: 4,593 × 12 + #> # A tibble: 4,645 × 12 #> STATION_NUMBER Date Name_En Value Unit Grade Symbol Approval #> - #> 1 08MF005 2025-10-15 00:00:00 Water t… 12.1 °C NA Provisi… - #> 2 08MF005 2025-10-15 01:00:00 Water t… 12.1 °C NA Provisi… - #> 3 08MF005 2025-10-15 02:00:00 Water t… 12.1 °C NA Provisi… - #> 4 08MF005 2025-10-15 03:00:00 Water t… 12.1 °C NA Provisi… - #> 5 08MF005 2025-10-15 04:00:00 Water t… 12.0 °C NA Provisi… - #> 6 08MF005 2025-10-15 05:00:00 Water t… 12.0 °C NA Provisi… - #> 7 08MF005 2025-10-15 06:00:00 Water t… 12.0 °C NA Provisi… - #> 8 08MF005 2025-10-15 07:00:00 Water t… 12.0 °C NA Provisi… - #> 9 08MF005 2025-10-15 08:00:00 Water t… 12.0 °C NA Provisi… - #> 10 08MF005 2025-10-15 09:00:00 Water t… 12.0 °C NA Provisi… - #> # ℹ 4,583 more rows + #> 1 08MF005 2025-11-24 00:00:00 Water t… 7.34 °C NA Provisi… + #> 2 08MF005 2025-11-24 01:00:00 Water t… 7.34 °C NA Provisi… + #> 3 08MF005 2025-11-24 02:00:00 Water t… 7.34 °C NA Provisi… + #> 4 08MF005 2025-11-24 03:00:00 Water t… 7.33 °C NA Provisi… + #> 5 08MF005 2025-11-24 04:00:00 Water t… 7.34 °C NA Provisi… + #> 6 08MF005 2025-11-24 05:00:00 Water t… 7.34 °C NA Provisi… + #> 7 08MF005 2025-11-24 06:00:00 Water t… 7.33 °C NA Provisi… + #> 8 08MF005 2025-11-24 07:00:00 Water t… 7.34 °C NA Provisi… + #> 9 08MF005 2025-11-24 08:00:00 Water t… 7.34 °C NA Provisi… + #> 10 08MF005 2025-11-24 09:00:00 Water t… 7.35 °C NA Provisi… + #> # ℹ 4,635 more rows #> # ℹ 4 more variables: Parameter , Code , Qualifier , #> # Qualifiers -### Historical web service +### Using the web service without HYDAT For smaller queries where downloading the entire HYDAT database is -unnecessary, `tidyhydat` provides web service functions that access -historical daily data directly: +unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with +`hydat_path = FALSE` to access historical daily data directly from the +web service: - ws_daily_flows( + hy_daily_flows( station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31" ) - #> Queried on: 2025-10-29 17:49:43.567461 (UTC) + #> Queried on: 2025-12-08 22:15:30.188702 (UTC) #> Date range: 2020-01-01 to 2020-12-31 #> Station(s) returned: 1 #> All stations successfully retrieved. @@ -165,12 +167,13 @@ historical daily data directly: Similarly for water levels: - ws_daily_levels( + hy_daily_levels( station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31" ) - #> Queried on: 2025-10-29 17:49:44.687726 (UTC) + #> Queried on: 2025-12-08 22:15:31.330077 (UTC) #> Date range: 2020-01-01 to 2020-12-31 #> Station(s) returned: 1 #> All stations successfully retrieved. @@ -189,6 +192,31 @@ Similarly for water levels: #> 10 08MF005 2020-01-10 water level/niveau 3.58 #> # ℹ 356 more rows +### Combining validated and provisional data + +For a complete record combining validated historical data with recent +provisional data: + + available_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() + ) + #> # A tibble: 2,169 × 6 + #> STATION_NUMBER Date Parameter Value Symbol Approval + #> + #> 1 08MF005 2020-01-01 Flow 1340 final + #> 2 08MF005 2020-01-02 Flow 1330 final + #> 3 08MF005 2020-01-03 Flow 1310 final + #> 4 08MF005 2020-01-04 Flow 1420 final + #> 5 08MF005 2020-01-05 Flow 1350 final + #> 6 08MF005 2020-01-06 Flow 1310 final + #> 7 08MF005 2020-01-07 Flow 1280 final + #> 8 08MF005 2020-01-08 Flow 1320 final + #> 9 08MF005 2020-01-09 Flow 1230 final + #> 10 08MF005 2020-01-10 Flow 1210 final + #> # ℹ 2,159 more rows + ## Compare realtime\_ws and realtime\_dd `tidyhydat` provides two methods to download realtime data. @@ -218,7 +246,7 @@ Plot methods are also provided to quickly visualize realtime data: plot(realtime_ex) -![](man/figures/README-unnamed-chunk-10-1.png) +![](man/figures/README-unnamed-chunk-11-1.png) and also historical data: @@ -226,7 +254,7 @@ and also historical data: plot(hy_ex) -![](man/figures/README-unnamed-chunk-11-1.png) +![](man/figures/README-unnamed-chunk-12-1.png) ## Getting Help or Reporting an Issue diff --git a/man/figures/README-unnamed-chunk-11-1.png b/man/figures/README-unnamed-chunk-11-1.png index ab80d5501a9d408c7be417220188934956027435..deada0ca1361c4d4ed26c808fb1a8f49ba5a78c6 100644 GIT binary patch literal 55037 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
Rn*B8p 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 literal 98843 zcmeFZ^}OdD4hi28A@ z{gvjCW#Lv3Q)ZP zs344l#Y`*1ixnL|TU+^@zIuH}_xjGn5E?@tLybtZ)Y3e)wL{)MH-1!od~F6RR**pa zIO{(F<>`LBXo7Hs*H*6Ui}duo6LsA11htjlI+=VC`&$))`omO=-SUBi2)2*-1asu!<*MxbwGa zj^gMYVi!JOrl~H^IDIT(wy0>syf&$|K;5H2(5-LqcRN zB*6@G{;iwySAp*K?dKO&toq4l&fZGN_kLoKBK%mSXDanLrXVeqwV?ml6QXX;)$!}& zNzKm(rVy`fCNm4Z@$bAjrh!ixw}X~`VX5T`wW{Z*#yz{#XR5|+rxJXxmweBu^NI7t z;hBqiN&?DaBrpD5!eA;EwW_^moj&SSG})N?pPhWd7H2wTr=z+N)0)!=R}`YiqPBE| zTJhpTx~vFmTR1LW(R!-eS0#;GzrTQ_Z<$a?UJlAw4WAniZf}?v?iDYXpQ{^TfVgzOUtj} zy?=-LlEuS?yAUS?U$_2tN2#50p%>H_Ki_fF7Fsd3Agm%Ddz;4d)6x$6EjinzcNCJs z1dsh~>OJ0V9e#50mKK~U@oRV7vlc)$^wjs{5W*F1dG(fHKB!4?b8p09y}alCVz5O@ zWmV!v;J2>jB}23lHu?wmR=%Xu!s^!Qi3dO3uZlBYK`4FA#?xXad3A|D?Ve-en0A}z zf`oYIL59qD$=jJ_JzGh2}I|xvrPi{v_ZZxfi^AMiVx8J_1%M%V1lEDtO-E67m z5GFhu^{&q^J-qgBjm#s|q+j2yq!2$sZyg~&3 z2*E$NAA$UR2gx`6*5B8Vbohsxt3J;W5JV6ppFdS`L)=V3PF7Jp?+ANHYmi0z`C}jo z7xg200}3vB!=6G~>X+m$L9>B|8JXmtA-5-#lpd2mqUQ=^>c76|KTq9nX6LWquc#lM zU)`T>FLtEWM4+D4A)i-1IqfQTZ30QtvDD(Q5&uFzn=r~l*KzhB^i(E8S3 z{okuFeMJIrL=aUL@#7c%^-5fknOlEv^3NYkZ$(WUovzn=Q$F20bDumAO_qj?Z}2uS~B z!Z1Y;TLu5mG{SEvm5hLvj@|s_9>zZ>`0s$z5f(}ReFfwYkQD;-4c_1Rw?|h%u*dl4 z1pXbcA2y9IB(Ig_$+x%v_UK^Q?)=*f|7Y3$PT+q{_J5Y`?-u>L&;Da=|JzXie{O9( z(I+Pl;m*!4l6vgT@kIOU89gj9AO@A$S znbxkvvJ=_XWK6m(h4lUEVIiYyvy??yrV8~3ed`OC6#aPB8b%XB$+{pCuaGYB_(f3(wDUCR%1|wpWt$g^PQTd(9&i; z2A6U?q9+C-z4RgljvnHx8pyG*<3y|Cgh6*sx@6|UIDK#4C$ok@O!OS?u%hbsOLewh z=SM{frsrGL7$$l?mxpK_!?O`RR*_Ko>x+H)O=v}bpeC~V!?0#`XZg8T-_Xm1uP@jq z^EaiVd{yUK@AIvt^E62_RjKsSKQ4eS6qYmvlDPfwD>I4H<=Xbt&GI^$q%nFj z@tw4@MY;)N1=PEn6$5;Qepi?0ccill2I%{+>o?1#OIspU+cL$17H?bP@!3z?HSCGc z9DxO}rIt%xJDTjunsi@HSqjaqkJz#LHLmZI5K6+Im}Fbmb#VqO!K-8H33lw~?a)A0 z^f%gkk@iItL(tf%s1e$DG-bNq$L$&`;;mo40(PIVR;BsN_ZVch#)#3hEKMhw7IO`? zk`4MeJu&A;=R3_iJaeyi8h=&{2sy?EC{i2pn|~+IT745r@!PBUJ)`oytC68caE1(? zEw^jJzww z_&8;mewKI$8-+xuQ$6>D!7axYRGN5~ttkR4=SAEH@&bGB_)VDxdRaS&ja;TIa$D&q z%1_D$1n%iV4H zVsnRcf#q<~HxAs>URmD1agoR;0Iy7>f`7s1EHKy?7e|jb0ty=w>;M4Nd4<)gs7ftH z4Y_OM#Z0bb6jYQgU^eT7e zf&Q@~ZGPnN4WFIHV~7#mTaE_-h6^9xp7EOYJ~U&>x}@L9kxk zVNs%-dnR5_SbxPeWu7HP;D3K2hS%|D%?Wi()%nH#zz1dK`c1ans~8+xg88j^yTNK5~`cYZi~{zLhB3aSLy3NuwCkG z>{E(WZkv#;G8PX@a~}Ll=jIpxPXC4U)6$6V{C^!>c^>HmZmT z?ychBl<1nRHDUfP;CEzt<(w9$>P{Aej9i8YnFxuvtTn8An5yrsY*rUrnN`oa1Zg5a z)0uQKLRhD?dWyAi;5BvyER|z(XR^XfqgsuKZ*v)#%l-2rWWV_>!#ZN0i#=8%9$sQ~ z9~;c|3FmQL{O+9BvK%f%>0Bc@R;GCDth$AH$-od6JUoAO(XbL3Or&JF=)14Pm=D$* z0@LOnDSAy;rgu0@A7D84n4Wno*zm>a>meR5_mWO}s>YVFsqa7sGJd}i?NrDOIEwOye#MpJ7e`N}-DF|YALX|`V+ zSNs~&wyX6xoc!*UE==S!vsHh-U5`_UKCOmGP$3ofgj#pl*rAVeyyir9Kwuxt(xxa@ z+XJapp%GLy_Xq9XtymH@u$j*`)0mDgW}w(P;%U-V6sCh3;&rBHp6H|kJf)Jsh|yhU z`Zkn-&GLfh-9mTO_1sOYe|+&{g>4g5e9c%Ykg6tY5@eM=c3dD*Vx%m5g)y!(AW#?_ z>I@rW(n&MElv+JaH!G+T2ohWB4G1`M@21Obg(~&CzNPvdym$~3ihp}Pg&#-JdX0nkP|`!Bsdml)<%^T1lN@JGw5^HiL)Ii#rplF` zlbkBIz`NN=0TAyu%6a9#L-qW#H>x%LL z#&qJ^**>lcx8g-r^_anef~r^a;?OwVim8gn@is~5smR)x7`-VwkN@SBPIJSLH+P@m z4G13V(B|%mi3OtigiS)tgoozJ2B;q+h*E{Yzof2oYBIS&|B5%<|l5WO#(&9`Hwy5PBakN2t)Z0i!v zLiig|+y1mx&CFtr#m)1f;4AJz$*yzm8TUs`im;bH=ll@8$;#4sP(T_S3VY7-2*Hny z22&N`lx#nSsZa@_Yq34eZWe!rNXNvo?(%4Q);mdV(&QZ5MN?AXS0@E4o%99o@r+~G zbnZQcLy7-}Me5W!G$Vk(Ft+9a@?(Wf+bXAeD(`SaCfca$2{Z zeH-4(=4#vgjl>tV6w+8#8P!MS4+aGvF;LEbW+QYDpjUUgDE)RnNY`mltUt3SPO>W6 zB(#LxzP5`xsg+}J#0xuSL&m9aBWqi7-dhFBz=*Al!+o4p_G6KD3QVeUzPvMX=*96H z^uW#T4L1V1i{O0>A8Vs~b|p)^$+vcqNjt??N!!<$!mvshdr1azZ*o zervkA1S*XeYT`h)u?(i^G72)-{ywm)o5iEgIAW1%cp%5w?Cz4H;8|}_->AAiNv=Ss z-m%Q|u2&GV3F~@^&4@#9TtuYKKzVC3nfJ+8`~Z`ounkXUCl(K?_|$-MTwEenDV6Tm z$O_a0cf7nWj>DoS^d3RYqJ$VMmB)3)iGD-N7I^x;TY@F{4j@fTZ{PE-7pgr4xFY4Y zyUv@<*H`_09j5jU*((oL@HiC@%18EAPb4ctdq{eA;(F9akfmV`t9uN;_z#!^L#w+lEvgbZZ+LO{lKP*AVyQ;fL^W{ z^XytB&iIQj;>)!5>*Xl<_clby{FOy`n)f8_A5`^69KKbj7t_sD5gO$Tkc)>~5FYws zjM^e>);n{ll%VU`q?0edQK%T6NW$lZ^9Q=( zcq?4CN(bTE$AS3s+|6)X5uKDdQ%o7~7kb?^+iI4X`Zl$>+wEpqG~Lez0^6li(FxwzyV9G@elq29g%0`>}fsv8g8kH{r ztKqwIsud=y3mt&{qYi`xH3}Fo;;UAlr;K+!F$g8VERej3>XVYuKjW~NWRDy-nIW!6HT>5Ri<8KP>s&=z^sTXB*e=U`i2$hOPEzM`tP-T z0mwhJU*+HF;D6?$(wbD@5(Z?Bd_O{WSlrH@R!Y@~BX9)HVx}Nc49bAIW1$$ zZCdm-jot6Exr%z;OcyhXDjIqPOe-O{M?hZC{h;ce$q9(cRxMOxu83xPE2(L))K+tO z)YlM@T9Tr4rXh_JmpYACer=shNI@04Ay-{87TA+UntOrDe_j3fc2n9_JX>fEgP~;+ z!i<-h?tZW{s=ZGgevxWOgp!g`I6uqKK}ft=*Ywab?W>x^IJoNbiR~aJf+H| zlL!sA^IABk7Hiyjb1A+8Up5Vv1RjO~VR#eX_fdQNlH0ySR?`+3HL) zU*TmS$ru|WaoL#5OF{dUtS})5g5qeZCj|}AZLfI7kOtfyY+ZGh1W)Fej9#B&?3kDW zmV)fPL#qTyqQU)4n4US<#1%rytv(BT2v{K+7U~yj*(# zw@z!EQf5v$-b~3L>ece8U7TBuWy0GvOUcM$<*3gq?FPAjN%=rMvK|K!u_$3v2BH%u z*D$QOsAw85>9ocSKbMh;U3;gnUSc9k5pnpTPstb>6jka>b!W(nMmdIF4L|!EB9K6veh+XM9#JacKpF5F+mWJxSuX z&ZB{_H|?4+*&yVJm1JYd6W#5gC8=Eoe);~W`02z6ReRm@_eO(w_F;iSI7$eTPfcdA zbS<4p;*=C|mJ6~!rNtC%9Cs8YrPZrv^F+L{>WycW!-9pK=Q!K5ae2qqH`~@M+@?U* z0tt;~J!K$nNY^*Ua79M9BtsvJpLX~*UmrW`?c_wfBzT>EG0<`WN#Yv~i zkuYl9$>1|mOl{|(%;X=7K1bLeqDB2Kg#hZtkV=cQbG1^qH?2f`BB`8NH3G5;SP&7B z**7|9_C?uVZ1OLOJ2>Zw8;KLW!Wqm}ba6u0H2%@i?B%^upTeb&Jzngs48$GAM+*il zGBsD~cVm=XMCACY7n>`Qk;LIzs7ji6MPrL*o{uxQIQ4OQvv3_cmwp;TnyeQr2-c}> zm65{LY=16>_PoTi+}^jhGlF9FrPuq`O8WeDvz&snOM9Z$+2=7hiqgXR?d@4?4t-G{ zW6+;$j}klce0yDMLS!%F%t@#^ z;|aqJM-t8r9ObX~sqY_wvc__lFI0M&Fb6e+`U4kUEi9OkpaJ>)T%A?srdUTq=ZyXX zCJ*T%)Q@TDUAo_H8**_)#hpi~zN1FNrX%KaTKiFm(qsGpvS82>XedW}^zQk#ibLE` zt0*&r(%B1+mt~q=GudNXrPtY=L)i+M`yB4aiyhn5?7AMv3I_ruyL;!@)m6fZh`1qw z6oquPz8`f*1nJ63@{0qYDFWk9-`?gmNn_0BsExauflFF0vpdGxl%{pIpLwoSG@ahP z5Z*_=8jTXj#QExn2tG_QN{q#FIA|(-CFJ>Wl8yz3x90eB*ue@;T+E@O6yXlq5|j9H z_d{obXa>bNW?h{sCB3eKZ?``?m%TNnqm(Ao#O~swrZ4!`K^FPAMcab*N|8@#ctDEJ z=7i0mdjEkbz*)sXeH2z0x);gM*`R859 zrSOevqIYvj546uUzCM51%ES(q(=nsQhRdL_LSe*<#lL8q#OFHC;o3da>f@iNCjdEm z6#APq@Wa`)aNDYWA(Q_hDu8oXJskbmj7BZvMR~7UceW8tMMi_yFiAz!Vrh{_bR#{z zOC*u2jtTVe9YZEmRqAwWT3(0VzX4r_mqmslF4+jJK(8G z=HyqEuy{?XWPX~ddGoQ9?&5&+hKFH7WO#A7FO7@o_N4hX=>oT!k zdcsROd(91}hJy3&^oY+c>pF1SgyWo8qzm?ID+9aZRmQma?s;pkWvCQIU*U^J4XEOmp{J<6`5Z3ISVfByC z1O^>PwVsMal-<9fT#=bA(CMk7zLyT#lAILpEs+>Ws=DpMnc)*Pa^ zA&U+Y*LzX;bbj}Fm&4n@d!25)#RXK6L)Kj=hql{ zFBKFP2L>dR^xQrVMJHgRWR7X*GyNIVQBX&XA+Rf=@acrFNL9VJ?&=+1rIIdkcz?{V zZ*}v?D~Waz(3nqibuViro4duuX0r44#-HLy3A>NAsvfGSBjT!dOMZ=zvVISZANqJM zlqY*AiiQvKh&$k*!-wK&)rbqeK9bQYE>B7DR8x_6#uMQi*9xhHF^GjWb7^TYnOKDNQ=XsK{}w^jGc(y{ zSKn^C!y@rkpajm$9n8@OS*0frwCI448c)bKxpVB~6q`mzZ?EwQfGQYiy z)+Ys*ZYn8TdCFgvA8sf@K2eGY_xGzU|M^Pa;$cd=& z_9bz1bA5`j()P=aVNyi=j#oJq1UZ(tRd#;K2oG)|=?y61$k2vj?kxX5RdaGth(k&g zEJFRtJkrJpntst0PSIwS<~ze{a+t*!gspkr$u!2`vs{p4Z9?l~nI_2j3{;S5#UUC9 zcuT5T1Am`zIrV9ic&NG4ch>J1jUJGHF}@G=WOZkGF53|6sv8^yAPxZAB=jK>!I*6 zyDX5B$ToT$ws;qLo~`Gaf^V4u?8Zi9Q>i#pmgaLc*#HVOKY{v!ZELEEJ;}OUl1IpL zgf?p_p#0l?{&?px&5mGF!6`Ppb4=^QZla>6c z6ufxMT?`kq^rrBSADYFes-ddprwL!|zO|TdY9!!wFrFaOU7x9~&}?wCpR&$eJ=-7C zFhZ{YC71W2M(x3@^Ipfg6Gse(uyO9!TUBxMPSUKWt7$%qM=(B%U_ehv(DK{O3G9Ep zLl#fwb1`TQR5hl#DJ~8sDqr+jipKMmJ9Gy?0lXhtw^1-z7r%A|*WQRa*ZFYGIt`chq1|jJk#t7X*59BHz#OSJ zU+~m*uquR2=`R{V{hYOsGOtwMgnQ0yX#y~dOYL?vE5)1OS%|CW<#u)5Q_N_#ihDm# z+Y+4vNr-Ok112p>o23An)K?uv&+=RB3qJ-5o~>osZ<#NF-!4&5+ah(Dc$ooJ6=?<9 zp`?jh7y>`K=Nx*N7AAm%g|s5-DqdB*^^<&BY9;e%wQ*Nu@Wi{@o82U?GYcD4fhqB- zp8ldX)1PIhQdQ00v3ZNhK(Tx6>Q+pXY#vz6HMmc>f-*7E+(yOK(TwB31kg3Xx^-M8 zP4K2F(Bk5Y>$3}Bi)cA}J3wj`JX)kZUX=qo>SZ5zR{?$8w>9onHl}6e|60mO(Pv!S zu2BJg5A@5FCoi7?A&$`9X>U)hRIs=o@UZB6pev_7N`4(O3y{-~D>$ z+n#2HX#$w+Z=HsVwX3O)CYN77ka~2+_yF}%uxe>MP-A`7bPzaQj%xZ?@i6dn(IJ?? zC&cpxZ_#y9%D;z;Nx!{~9;|BcZYhAF{FfpLu$9_LpwbDMN)&K+&|xjiW9wmQZXjSY zelfvvyZPc*5bs7_R!b9mKhL*Oysb1w(*~8c_PG5XP=Ft>kHia9H9VdDIcb*Wyd`in zVPrdhIIh3*8SMC31?pKm&7Fho*=g&>!?B+$ar!Q?a%z5yj8^@;tI0K%#x@kv1gvL3 z9MapzJx?6k6Uo50-3r4-Q!97)ij2?0K&bgBUl=gB&N(Jn9M%(0C`b#A!FsWS8moMs zg+HF!ll|2J?(&VuytJt}TA_2X@8OR?u(7x6cesFbiUZhFS^Wo44139LzxdoW zRF#pp5Q?wo_H}Kio1sL;I@IPj5*L}oI=R*tG~sr-{YPp=D+>Ycqt3B5Vmjn%d3#07 z_Qh27(UcWG_v5X&U#&ft$MZXCMb1HGv4Zy9k9I;GS5sX1T#HEsJ!%5HRK8M-Q&~}A zALAG4Zwpz@YX$J&SB$D@GZlNyV>BNaMbs-+nD))sj*`X1sA+Y} zEA3t<3m-mYf~3Vsr#ag*P)gN0)1)JeY$sYD3_ZiqE{I-W*&~P51E29wej1&KD_9L{ z3~V?3T#ksv=RQ+MhDFvh8&q*RhI}rYYcoHJ>$mxgm@IpLe0`hpxIYe$VJq&LOz|rR z^nImK=e-prrcsuVNiEXax>5X57Ikj0<>{$Xq6L67L}ErG$9F`Kwk@n%TCxIoUlnty z;*X2V*V*r&P~BQ@PTQFY4F(R!FNk+)&MM`Zot3Zy>vj6Foo4JiNEj+R?*EzHS}dSQ zw^dKxgJ)>IB3(EN)}*rChi0>ei|se6FjV)RSSHg@|F1%C-Gg4W99F%L`9104P zHJ0>7IO^YRUno+;9v#YGWD}q6e#5{C%Bf;%3y7A#8mN2jzb|yUjFVfbM4Xk^Nhq}x zgB%=3WY;iwu_}CR-;JlazNY1#zfpJMkRMw<5&0q?Ti3GLkbPaKl=)+^4eZFo*k(m+ zNr{-2&KGz8#iiP2+VhCE$Y#4LmD=v97`!CI>ldEQDsy!gyj0Os9?KCDI>e7=`Qb%R zc#b@SiiuP=vxCr%af5fLBz^#yqoW!fVLbJcVgyx4G@XNdM2{Sq@D|ZxRfp4vHzuII_!Br~M>MorUPdIYh~a9S`~2(S_4C2zq1%;VZrRK9?(RG^H1Qw%y?g zy}kQDT34E`b~$xLH_u5=Q1va&hr7|ze z?2CeDaPgjNjZd^2vjGSZw?0}JSCaUZjm*|FgSE=ZBO{+a;8J?*9-%#&@qu)Mn}KoV z6Q$KXq95b6zFp4JYRm!M4}CJHqN@~g`L}-0n{$0Y;Vi_^k7&%Db4$=>rztlr&z3FV9;`r;>A@#tb_9}H4S$ z6pxL3+v;f2sa%)r%3qmmfqhXj03%!_=ehXZrT#)`T(;N5nTjfWrpQ{s zHkbBb)spTrVH~bmKp?NaoUK;Cm_bZcp%K@UTK?H%3Fen`i@o(Hl8>_8l&8p?B@VXA z;c5u538U`wS0q3_ zjv0C}CYbnz%<22n{_baL0*ZzBIqqTY-xQ;i#Hr}BvuPEQAJI7)vu1u)4#34i6R}}8 zN*I>o@1w)X9D8yla46l4lJhbSrfr!1QWHjb#FX%iHX?+vAoKAt3mv}k>0(h5uHy?e zmU8H?z{EA)QC;DkhW+IF1YA=z7slI*)KuYp(WbcLv?P+Nb)7A+#^X6@trT1u2hk|8 zc*gu}q^QDlol@gLiin_Dq4Uk9jc{x>`Z`zRG775T=%<0hQK2eh#Z!?((&IXNX~s<1 z=WaklRUEPuCOk)XVceA+FGlM#^hl22#?#SSK*pl+{{(cAbR?7$j$JaZ14aKq@M0{4 zp149PCBCXNKyy4lzORyUK6PS$K$tAlN{nu%YTi`Qfo{0SU%a<2yw*z!)fSJIHOZzY zC5nF5?fU9+cF&k@!0YUlmEcnMiH{I^gQ~}gE^DEV{g&2B)U;WVz7CyE`+fu_{rVYM6LieQS;>uFX>&ayd`$RncG{>)cTbfm2RJbvLQ{JfRg7t76Z=kg%jR*RR_CBX*(dw5o1gHVxIJh3>T>S5iFet?Cz` z(D>xN)}(OeTDTmro;VdRT6{aCjoxIY&iT@Dm06>doC^qktBcFrKaCwSNfwrA6u1;& zGk$vgbXQ!9Q9!Rokj$R1&%_ZeXV1T zm0zSw8?KC`$QZknjUAo{UC;8OFQYYXHSNaZPcDa1N|!w&$jq}sxt8kNZspsOmAi^Q z#u=X`6#n>61V}sR^^n-gWlnRi(lzHb60D`!bG;eRocA_SNx0My9> zHF{r*|6O)Mn@KH%040!p$s}>v{Lfqc_;L%w2`xQ@YpPSnV?D<-KPR@pJ!b?SyM9kV zx9^u|I%Sz}@6p*w=~#W)#M@E-PSwb}FEh1{eIQ8e6r2DpaUYJnfMV1J5B`78I5|3C zNQZo%{}+8~8TLiXs%VA2PoKUNh8gld2E-3n zXMbR*y1_NTL59B(DO4+34236R_S4q?*e)YN;I>r*(S(25-Mn{S9%x&?H0_Olc{FK8 z<_N&c2dCYb7djh{xNENh!o;AaCRN&)j(7ZpPF*e1d~<_0utoJfHp&0 zb5L1eX?w&*eKSs41+d^~2QA;3eh*tDAA169dir}dKtoyb=TbO=AmDS#Tc2-kPT;Um zqPri#8pGrF_3a&g{JE+ztsdG~JTT*+-2_*p&9P{W?hpE+M5(l%EN|g~C&y^#6Nr9F zRNr%?@g0Gb^Pveulw3gu38?Pw3>Rs0kFWUO#ZTnluE~n8lh=QwaD;R+Mt81_fbeJG zX0X@5X7|5chEU-9js*TDTBtANWE@<2UYu@|3DB`YPoKYxmdrA2_kuEIrsmgq! zsO{^ct?9U#lZOhYm>RaVE6K2Np!Qc1dTW}ENs9&MU26Fm+r2;YUWPRRZ!)RdT#{RA|zC#-en6C;C*?PVA_}H@3gysz<@~$fxtDDuix91cTwBA&pMCeJuO*( zj6_Zjk)Eu^EOU6yYBk0P-%df9!t-{AD5|LyvApD9KH~iX86> z?moOV3$&fEgjCQ${8}E7Go%4G!QXofmhYj~sex8`Sj`8NxpqlN= z3v^?d^%@@#kjh_>?=Ty9IJyo=(j+KmiMOFEt1$y*bt0%TO7w!{&NS8g%mNTnJ2h-E zB=yUY(!GE(w1Zm*;2VhHT_pQ}bW4OYZ1B#i>0n~sAt9n@3n%H|(_+=K`-; zvObg}9dVFo``4%cj$SKLKi0Cs?u#CGrwbm>ux}cHFhHvVsrm^y0#dNLO_DpLZU!^v z^Byp!+!=)*{HO0XPJ&pP*1A<(HUYokq-A^>vkio?{fs)F%A;uHxs;NvEBd%hPgml& zX_8;PabM4gTbyEy4FT;#BXpnjyiZMrK@W`KI@jeNMYL?q8Hnk_gK3&ItDJKJo7+HHkCyB7^AOJgyNKR5RHVvY*!sECKgf`jFl#^z>cf&C#)6FJ(6-y&m|G_nVyzQ{ z-@A9gFL>X`vAaJahdE1fXl#G+yA`7M@$nzGtAm-xc{g1p1>VV}yKCm-xwqIRuErm! z(xIkl5>w--GL}XYQlXREK%3Q4-op%oh@E>eJ_-;1Vv(D&YilC>_bh-1jK$ecJhy9C zBk_#LZg%f-_!ne+9fL8w*EXO>ZvG+NTTGN_dc;{+Brp&pD>oZ%+Zm0!NDwgzkv&ZS zJzTSDiQqBjjvrJTfzxuN)AMjt-LD*1y^Rvj_>K(W|7skXHP@F9o zxI@0bqWO$G!gmP$yxNvRJotq`FW2wi|M&%jHN$?8!u&YP*-ZC3J6Na}khrj*K1MpI zzu{Za8F1e`qXzaYxWFEMPCED)$x>WoZ+bZ(1OF^Q($`Xr-Aoi9B+77S=7X*+#t_o8-WgVn#V_s)>{mQA}Bb)wgBO6668%&D*f!N`rwg=f- zcj)2fxMwm zU{o{^KSQcrU=>M#bY^X}i{gGCwxR|#%ACif#Rnk=1Li})V(Q)+xIlp{S1zL)L!z9% zX3q6wUe*Lv@q(;2NL2y^FB3SCRoVNY6HkuWMsEZor&^+1`UhYYU8yI=^#L=Et+YJ!qf&edY z9xG31{TIGFUV`Q39M^T#ofrUQez-0~`I8Lm2NIX~K{lK&4@~oU0!{tw$nH=o<*Pi> zgzswVr%?rDwKFVjYAU!Q=v~ZyplvKE#bv6C(*XdeBz^DGHpa$-p-G$QDbOC1Nt2F$ zznmjxsLAL0N=!J_6GJ4*KVLcbXFX9RhF>yHIE0qoBO*W~T?2&{_rvpUvXXhaIAsO;~J|Au-1-tqWi;9zbp=cC%^YLrbV{c;70OafU+i0 z@}{brZl(BXr23z z{=j=!7)9hud~&TX9^s~EJ@`M&VNISxc?OVRR?E%7aHO6WC<3w?okVRxQ6OLyWOv=3 zDUe&>frlg>Na7PRP^w`*8UWGKijd3tp=)x;23ENL&tL-fWGkgZ%O6lD6v{f5Ge<&h zTk8jm8b7!-K?LEYRM5qL!szSZ7GX}`jFdUKxSV_QV=q4VvZ+aN_=(yl-)HT<3Acby z>cu?K>{1L*#DOPpL92Q3h9K(N^)Y0>k4BmUfGWEKw?I^i2R?nIaO||IH8@O&?Y0u5 zu0tFK9KaAU2#1`|kYTVo4&>zOgJx-7T=zh@w?l_PRld2qhfT%qK;Z zeb99JlgPDvZiWI57{Bth*W^#fge)I~b>MQXavs{5eBgGR7l4tSPQxISj-@MOT}%1DlHozf8iGtNRs%f?*gKl$sRYskfC$>pIgPOj3Ge?{WJobj>DJW-% z$Tuouv`~@N{*(~hLwLdA>tWGDekTBD6F?bAK!!HZ{@wurBp-zXR8KW(NxTjQ?c0i* zug*%nfO7Gjvl<)CF7R0$nu@?HNGGVb5LjSo05-D^R5Xax)zGR_T<3Ug(-_M^{V=^0 zaI9d76!~77#0-+zBD*(W{#hD#s`P*vP;N;a7y8bFWEu1Y6fdv~;PiJ(omxL13|i_1 zHlRQJ=hD9nC=rObMtI^0 z^Y~7514n4dA>Te=a0}@r8IA$Lf0nO@I-#!n55GGtlyW$RNRT!;k%T6YwW(K_4?YGk zaJm(pCb3rPP9mq3_}MR>XX|zXha<{gnIseP!Z)$ZC(Cmp%JtA>Yng#(j}!OHzz{ky z*avmVcz9)`Gg6sF`tJnOZ^A@(Zpa(*FrCjUtmOFbPM~KLKkrpqo{R1ir$A zNay*pKg9~SLYD2-k1v@d(vO^VVzI!CR>LBxTS2dB+$n(9!EAlxn6%Ci(45T*2gO96 zwy#@726KeG+tnM8mR&$)V!C#IXwdg3s3BAZnH8+^zz4wPmt&2vsPWR3mA^3w@LcQP zGu{rek+GTe6EDqE?oZ(i34i*z{$va$3hrIMydZT@N=?>| z->DB>pS%Kf%rjjeW%Ogjj%PCoR8&*_lMku}nb_5Def~jn4o*WDHSAM~3HH5+%<3kK ziC|&B0Y&r>J;lx0FCbQ$$MRB;il{3^iel1|K%`?CS3T>h@El} zc^PFW9K8;et86-2N4fd25e)gb=?*sA3%p1rrut|8o(ThPCifb|nxUAy|1U;OF7Qlpi ziEDnvHAMu;Dq0e-Oaa|Aa7e`C%8M?VG~hYPMMeA|0L{VZ)!P$5k3BsuM~s|1TlI1 zp8zAFGp#b*S6mYzfC9(Rb@@G#3bQ+nt>(u)EQls~I!Co$cB@E%yvS3#tYW0mk^uHc zz`F}woh;SJ(TSZNtPjr$(YbpY(dVs{xLIN9QdQOsFye7U*uGd#_5fKS<-&fAIX z?y1?mqybJ>FR0bGBIsgSs->oVDf?lx^x?c6Pg%pW(s1jtO%X9$&c^G%-VPlht7 z)8BE{`OwHFF1NFKUz|j15&@{RkV(pr@&SNu^1B+T<-RdzA*$v}QIiF4M6N+L*uRyo z*XZFtCU$n~H*x1Hf{JwlqHG_i2`IjNo+!{G^}?1N1t~DVH}cUMcUAOLIHFGAceVB3 zz6RVa{79I>(lkJ6iELqmpV<19{TUl{8Of3CPg#`^nCOU}DjVX*Ex_>>ob?J9VOt5S zqdO*u7OryqDs=MW7Q5%kt9?)+8M4Am=jcLLyk;#Ui? zzX%ij6u2Id{Ng95a5)Gb9~Vg5;It*&;Yp=ijTdhheUh102dDqA`&@ato&fHzeT5t? z&>4J=8D3v&3>XP6fOcO`3`lKZ!;jurq9+z`do{yFR3#zOoPfc%MowXMX3PdZFXUy3 zOg*U1N~^u|!h!&3kgVv2)&*Aq@wU(-mCO5*e@F7`ztUAhV4@|T1sjdbBlAO1^s}o4 zqWh)rDIxdso$FukumK%yy`Pe72}3tzbLCfwUCP0S(Sm-;a=dNu%r*4eVp~vDyI2C3 zjaF&2!ka*l!GWZ41K|WPZG)(a5RSws*H9Nj&exNeXJwG%g6o@XMZmjB!rlir&bm1D z5r6_RItFuXC?{xenlGU$4Mf79K$*tMHZOjvj9MvmpDs31W}c;XIZ{f>9tF}SnGOi` zr>9wxdIjk8R|S>bu4O_lw>9_%Y!y@)iq8nUy}L|K2Wh$fru z@c(%F4o52guy0O>j*$?GjAPG`U6dnxWN)&!2+0;lq-lZcR> z>;66O^Zo(loO6HgYkbxh1wMF5UDR5j2h1qR=a+cUF6jhGMJj6=$(z9O#j3Sc9mMjD%zUXnO?4g%tr6Ea&$>!w|NCfp?1$sR#O z5IxbPVM#6YOM`N+zAzjirPO*w>kXm2_g6r0wkh!aSgzszil_%*!bq>zu0|*Q6y$@V zYVG}W4~+sa*>#e+{pqmS%QSyPJc1GuL?wn z255)O*ZFC(+P%bA9J$a<>Mvw}bg;+o77IM398f=dO~{Vq0EV@2N2Mou>tVQ3q!O&D z6jmgVC~(uYW%DfXD}IO1;KiCF`JCyhw@0fR0Q{<1DoJFgKbah(?H1X8mc>n%&cjUO zbCgVXf(S*{jvwH7slI}a&b$gO%k|G>dqRMp+Sno8z6X{f$5lAgKe2(>1V!YFV^WLA z;#*iF8L7t#0nE7c-}(U+zvCLAi6b(?esaw03_j~bg%al;$WtV{3uUb#3Q7A(%`i7n zdB>wSgy74P&)&|Tw+y1HHNis#PuR;;*o=iD!@ra};EPETgDHnI*q`2<4X^OU)jn75 zzkbPvH7a=1ceUFb{!C$1#rqTt5?ocIe{KYa4ME$@vXkW?aYMYJd7h!e{Jd8=)e7Eq z@fD}Rj@&N;(lU3Je^~7vG!45}-c~Q9a=lB7e6rWPM(+tET_#i*89^Dv(Tgt$F~;yk zcY-bg2^xD_|4I{a*GUcFl96;5CEXcEO%Q}WK?NA<(-e%$x-%Ajvk{LYzm*Z=XImpP zA!cVR2=Mk1sZ2erHX}M{{B}d|pYKeFRr#Cy+l@(rg~QoJpw{4tBBu;KjH(f`Ht)v> zjpG+`=HG5Lzin7~nQ5*Y4pu~Z79oMtH@~2fee)M{+O@#iZ;)taE>VO4)z5G77T1dZ z+};81?2kbT(scPK(_l!RcvWJ6=wKRVA71n`Gs5d0O4DpZ+*Y5%hcF@sScSRfjSiQ2 zOzhA>APNZ%hV-8$c=6&g7yi`a7!0?j-$mc{_O6@6AW~Z;A-SNSV*UBC=uz=eWA+j2 z-~ZxUAi`(fSmEh#8CnexQWV4O0bjlv0nIRrcTOO#ak5~U& zN2y5;cDE4mEwae=g2vHxx3=%|RTY7LpG9=jQM6Ej01pPOme>MBb`KP#7>nPXy@<3^ z@QW7IsVNU=qjz9daHfgg292NCo#sC;6RR+tF`@TmkqIUJnZim81}UJ`&R;&6Lm-M^ z<}D>|JtK?5Coh;E*f8bD$3NdVZEw5>>fkzIhV8LCHM1&AjfW*YmKsl0bWZJ z`Am!Uq1S7@XP-!;5c#u{h6yRx%?uiNlaUuACUlbAXX>8Od2&;C2L94&-71@PLfv*6tc;+zzy z(Y-&?RUpV`Y^3O1k$n@XL8_^ZWDi^56_}rFw&TlMwtfGRl%GaJb_L)>nBMJPzJo82 zaoP4$8sHw)+gDZMp(KWJ<$N{r^38(WvTv}!+_H?ny81dl_;)4iQ)W9yM#6^O_xsa< zO74&)sI1uUW^X>9&Q$O*fR!p?!cjj%@(%Nq9TUm~0modO3hT8oJU*X!UuDfTzNkAu zJjt0I;!XoCF&8d>6oZnh-KZuDe-p)?V=RjdfO^<}urd>kN;ksrO~XLgz=_~3|Aj1) zqAw*D)Y&}hB)Sdww&xL)+cg2crT*u4XwG>7b0FDumB*EgBNzpgv#qW}fIB~@KZu5U zLG6@zKO(7wija3Y=_f^D22SjxxSzpz&m<`n*9&+|(UsPcu^dT8z!B;Y{rczxUpw)r z`Q4k60xT_>?u>^=!0saz-Y81mK?4raB}(lW68pb9Ua)uk|9X;uQpP_t|5x`@6A{(^3JC_86$Q@ki(M+{Y?RHMQh$CZYv? zW(aNsFMf6&&D(2ux7u%?+VKX*eB}baKO5h`W+F<9r|z8h;-Tkv3~vGIRGy!78Sre+ zuIGqwx}<(CYV)*W0k;PXlns8oUy-@q`TF59yN#d$wv7U2OnO41)iE=Fp{Cql94@uP z``<6QL)|Z&yp$4wxmpbd&9V{RbD7KqqzWPc7;1cr zhNsiY^u>%_b(gGfW5&`HoiB4y#;@YnX{|LhDa@DlTDVOHM6*mL#9N=RsG zWakA1dOwI3J>kwF=nMF^plA}jn|TN3ZQ(ob|JHurNC{|$nTlcwgy)`J1Mo5VH>EDF zP-%~f@vd=3o#t>Jew`TD$)~7|`2Gd3zM&x|oH-t}0S(sxfpq+tGV&>^ddK<8%Z8(S z@XmO7eu(nE;QhAazi&Y_e3A7}qHidIUb?^n;`W19_s#$rFoUx zjVmwR!*V;@L5^a%wvj9!0X4_tVDMtB{{Rq_l0i3f>=l8$yg<@1q-^M}lSoweyTR)oHQ#k>#sM#P{~0b!&uIIw_(iLLUQ@pS6~H*1>$_ z3L{Y7P#ZE3D~!@>1-XS(0h77f_b>zecvHUHdJ=n=r$em(4P3+eq_rJwE-u$XQ)(7{ z7i8elu8-6O8``!UNbq^A*aCU62dM(Jivb*DECu+nU-I|`d(O)K>qlt@Mz=;(ItAJj z6fU!HYh|yO7$FOD9=&g~bkX;rs$rV9fRcZ^r`%6@?K$V%Mk`M}6U>0jBuH?p(r8E{ zcY%OBHsLJTZ5JN|JaprGbh+y}d9Hzuc^RV!{b;M?&r9aCue>h6I(rV4QSJY;i{*W3 zK~*?w`Z?`@_18Pf;*(He9U!+=Nv#f2PaQ0H9dX!x^ui`BEiXIGm?_GxYwRHNGnE{se>{4XVY zrl+t!WonC+5k;HAAH8edSq21XpeBCRTOd@YTREKEr6~TgN774ALsaM)k`WRcVlY4?B1>?>;`#H_)Fr39p9X$-l^Wbgtg=VKbFOmpPP_BP%Qgyo{Bs&#a^z02 z+mFNJSajl%_zDFQLyuWV!fDdry6g&Qe4k1CN&wOrb#Vreu#Fzk0z!if4Izh@* zE$KuG55@`=5GYU=1JlODP3%IICuA1Z*WCkBL1-rXi#SwF7Bs|3ZDu4d{)SR{t}&;? zR|gRSOun?Z;jfdW{A|9|@c4d8Ckanl+0tp zUw(uc^o?r=k=zu6R_TgNSE)Dj&r!CkB%KW$G)hfk8`Ln_Twwe6id;1666?*1kj#b1{5mxi z2lPV*tFz5PQ3kONLKyEDM#Cs056dRZdS?dhphV$Qv!+0yw2 zBS0_GL#B6+{yt8bI*bj|zlkdm=ibiy6LDWUaPW?kiHUP_rPT)%q6s*X7bup){Sr1Y znaoR%5=0@PgvU)kdH9s<(i}{jStw6H%(rre7?^9g6Gflhx(RB(Erkg+an|s{1s%97nYXm+t zn+d^?O`Hpo$z_MtW}`%iF~iLGQxsBILH-<()2k-A-!Mf(t&^aEr>OrOCl(@!7Hz(0ID<{e)&vC=;>hGWKWzNBC z?a?hyaiy)}3=J}{+ub7M=ski5IV*Bs#q)*RRy4nTyujrqp5T|d*{&bcoL2I@I^+H% zWnMMpW0T~3cV%^~{5i6##msT=ZZE@ZW5Orjvm!;qzY0I8WWdqO+F z{PEJ;0Ahr)Qc|-8PzYP0QG0Qa!vk@WoVBef_^C*^;WNBX88@6GwusAHQE*=~% z_Fqw;7cWY)w6Lp*#N~V?>9D`T2Y^|;dljOUXfZkRs}pR0rsH9xYX4qmks8(#p=Em& ztGTwvf>yO9i!TW448Q?sKHqe9_vlX;nP5kSL)2J!=;of&z;ed0fy)my`a()Bi13xX zWLhnJ9LH0`Z!R<6*+`U75@P2+YY$_uI4sHcGIz#eH7N=X65hr!GwZG%7|Zbq_+Ea; zt16@XV~ufZdVYd8WfAn!xA<`7m@lcxVW|6{pooh_k*s##%)@?z2@W4B`OeU?U_cS8 zy^hZFJiGfTuKHv9eZ>`7bd|al%=siM+2Y^yFyXqSMhUk9493bTFem$!a}T+?5b6aa zRUh-7v2et3f1e1rT-wsE()-_9+q(sumj0V47;D9`Aek8e+{+fxlZ`3Q+La9Q$fiwi;uJY30603T+GAsB+^VwU-`K-se2VidgC+H!rv^kT(T_?_4F4(xt z_TwM#^CkVV+oVCILefBD;$}e3iJ6KqU5|KHg3IZ^@R;Cf_C&sLRoL$dWm~xOynIeA z!{M+|c)v7@1pg5$41`>2N!z}XCnKU~d=XRcC8wovdaJv#Co9xKkT)*s1Qae${fV*? zB?ue%oSF0TuSb238jcB#ziIl$6u!_1H}Zv`CT}rcAaySw@b~&T4y((pcv^B(-tFqr zdDAX2&7n7rTIb2tyO*d>ayi;0JWC%S{hX$eoAVM1uZztw_71?ay5@ix@&(Pq zq+gepB}2I=GpaAs_g%Tq(8EUf_oZHfxycbZBnnq^bo)Nu^#AK{lg5PT8m#UwmE)N= zIUU8cZ`+vEvclYy5vh`2zXgTas* z!VxuhL4JYEJ0 zF2;1DR_A$6C4FmWr-re`;FZG!hXO z&L=^))@gKYhDjfqMyVh zc`^&n74;u72d*bJQ3kSV6A{wKGlKb7sau2N#Eko?s3?e6pV^Tz8@v$nD?~I(%Z$#s z#l^>iek7YcjN;xFGvba zR8(lQK5chjbaT14mU`09(*Ot!O@h2MPVlmV{+}0qzEuP%VZ9;y_J*PbtO=GVo#N-q zcdq_DFhXr?zqt{h!09O+P?9w!3()fyV3pXo<3iV~mfu=(@J;2jl@$0qENoxW zQm*Gru5}cdvDH;T)_!AsawqX1@W3y$Ni24+SPiW^=Ub?yzpPKE=1qPvOVwtce)mNl ziLXu3!LsLQF;~v{FS}`X({bKi?ab6}j-OgeF_rje?B+2G_wLolR z$b}&AExW&uC(Achp$_)^xwxpkUEV^{1YTOtYs2vbP)Ae{HY#`GdPRdx<;u;f&Aa!j ziDbkr1}C)tJ-j}smiH-Hj}YypfZMcCGiDo9m*$N?JeZDCFV6>c+Q9-LSX&@K`onmi zLBx^k110^P+zrbRW2~PGw zI4~Fc3@TM3Z`4I6{YO*RZ%(~^EBWkIc0kclWe!V|NMP#2Tb_6hWH&Gi_~*f-r@@i$ zgHidJvUNebM)b+YqIRvh;bH(vnAe_vY?RsMI)xH}_`L5fhi)k~>bUQ|y7f#z=PAj7 zbA{$29>%DFhR@4^T7s6k1d8ouB?|k_x9DyFu-HIGurXi4kzy^K9hzj<#rFC~Rg$}o zD*1pcNYT%W(nLU@;o2Xr3c!*YWAYw%^#tul|L%T(d}?z?69vD2+kgyD?BOoQCOPQj z)yZWjJooD2-Hfb=>lCmE@lwW#uwzr+1@8N-)5I9(Nh$=WzmiR-W(PWNzjo8$@%^0H zK+C|}g}im>eD73OeAwen&`vbCHT9T&iH=id2_6oXT$KjNW+j!jkLlx0`@i>}+I)WB z@syfvWJ{8zN$*GJ28(KZ=-g4qILGCOuai1-5=UN&NU>4!(4f3j8NpPZ>m7MNi51Z& z)Gvd|!?W~IwMt?Ewe;PThd(1MjxVFR2VGFTZAg3lz=^r>R`t!U*i9gg#r0lkibIsc z-T8rdVxj4|t~+l^=@y*L(iAq@Q7&Ofb+g2JAhbT`O&?`}PP~d^bZiw2GzDbYb z)J3oCo2`wO-fA(b6PCCRF}h5G&mXP_UBYLeIC<=LuXWb74^?{OJ=5w zr|iA#zowK6FDj#LJ_x#q{VucmJWW{nfJlHxLYqB`=v*+?Xh`(2p;yoD*>%wBONP5= zgXg3NgdOf=Ez}tMaR39EAGahndxP3L^uz7TgLvc1`ny?d0~VMP*uRPUPWkDIO$G*D zJ2Jep0SZGGdFiu|h303tu3xieZ>*`w-J>`x}!JF8>qJg4_i?>FCMBn|`Mc zNv5sCzhAQ;-6ixBc+G>_!@#^7r=_r_xJL%f^%dJESEh{6 z3`B%%6V^L@%CUq590LjIsigP`p1sik9+WDj6o3r!x+e&&r%HEoo^=~G4+fPxBwm#9 z)AO8PZYkyzQnsuvWZr4MjCi@^R*)WU7V=}KJ*)%dp2oE|>kHo;{GjQvKUcTX4jj>7 z5ZEPZ_q49b%pvU? zAJ?P+*K0KRe9Z2~#2CV9J@jn`g5s&e7jI_Nc6jAnVIHQM8ddL;le2y4RJ_z2=0V_v zATiNiF+G0qI{9%gAZHXe$yVN|*|LTPp8MdwJdfZkpNh;M3@-t)R7*nxv5(c!tb!kZ zX-aPlW5tJEs;?sN^$a(opiPJ!p}Z%&dG|2h_`- z{X=M$21KK9&6w9H9!nX$RAT>I=13AxF?uIh4wf%VSGuMj*@2&)u2r%P2xD%;vhDy6 zsc!Fs%LcRqiZ#0UVJeFOCPf^THX2Qs$8)KA;KpdO5}^)y{0!mbr;4}-EDG;a+n-cF_dt7Yk??mT2-tN zan9nYaS$9#&{DYhp2i~YBEi&q&hRvijA#;fG2vEQgAXki8kRC#d!UYL3p8Zwp|3I$ znqTezPnu!SE2JR&Q5foa9_4%U%7+Jp zBJSB#UF`77=BOa9-_pf?>qsWUG+aLqN?ZwEH*sPq)t?AnK4^y+En>5FQ{NxATlfxg z8UmG?x3XvFi9T>*f|-w4W*+rw2r_?IWJ^CAu(j|}RY3yEw@X|b@SapojfKDg$bsG$ zDn^4BFjAy)qD5;TBbNjC=!9d!3hdJDQ!Yb4CKZ}@D0*^+P`R%^4KZ%ia=i82%(=~3 z=O{Qm0rBVK64{qVrxwv;Tx|H+zSo16WQpUDK2sV-P3A9PVL*eAL#hN5J|HoWnwC=# zwITLGxHnAwBGVj9Z4v-j-H|C|PL(6DZ$n%>9xtRp3DBAZ(MUC{U6*+s+EqA1 z&_U;wZw>aaSYFaWKI_b{uijs7y4@A4(sFywH~$DKUvaJE;Ls&hvov|V?TVg8h2e*q zPl~757@O3b(G}STzn=fQ{kg+ajiSN9E+bY z;q|nxjl?jBchOZq;0jC=>73p~-4;bl`sg8cI4`?t2G35Nr@#LDxWPbce{i4d`PF+x z*V<%v0b7*tKwW|x!0uB|X@wFz;Ja=<6HE5&DQH~AHyHNboyqOEcbYRZuuk2iaWO#t zk_Of5Q>fj}U2cHeOqn)Euh+G_OK%Q(a?|+l+*;LBC-Cvx|))n3tq+!E7ou3y)gm{RKVm_!piqN~Qa1^k2;O7v=2C|~F*>h3NVnLq{3?_+R1hSpSb z`^6Nv7h=jtljRE!#DA1GE$2m>&f!v5!5QNHHYHeAX5d*7CESH1)B``6eK$4_e{tZd zy`w>dtAk?B1FF!cy?bMz!7_+@KyjZr;K&<;?BzYeHf@hQEPadQ39^+WzY*CsKj_d^ zzhuwtSHB|*Pu-!cVTsS5z0UYX7-EdJyZX*5hAj1rgJ_SiJRt`H6~cy{>6!8w*eBCA zR1@|=cE=gQJQF660oKZVK9z1Zd(%Q2R63;7tu|X=4$>?Bj)sc#`V{jJJR#=kd+=*l zA;6!fUmTN)cQA4pTQ6wTotI^>#(Ju8E%1fhjgn`NJadgr>_62|SV#2ziQyJ9(4&(l za4m-W(LR?zeOM|F`CGjA&jA}V_vA-T9!5+W1sL7ke3Fy=OI~tkY4F4f1lJk3dARj= z`-l2EzJaj{-z~Xp-l6xX-g`#BvUiWucXs&lT zUiTf-rNNK06KM4UV{UVD@L85&(mQ#f>UY{2(~i8=h=I`=GWN!PP(!gWuW9;}HdjEwb^w_Bj4D^99qkDq&sC3#YH@oEMH%SlIwzz=eImMh?$^hE(j+VEAKM zmhs;((om(CwVuB->bnKG|7gu8ZK(pJWA=;3MEOx85dhonQ3~Q@uVt2 zBv4+e6Ne0mPjhax+;ccS__+l2yUI^$@$6|$e#Af>y0Ot@hcu`VI@w!b^e|=Usu;qj^Hre}-mmw9wgj zsp^5Dya{59GvBXEF&h*qhhCY6Sa4ha56kDZokYF|E~Psb37M;Fqp6X0kH+3pp#Jfy z9~b(e>TYqapvFrGS?i8_ZKyZ>G`UWYI)IA52s$_C?N(4Y+_@kl^+Cg|Kmrr`K8kIC z6w~6o*bSidGRx|HdUP7@AdEj!?Js4E7m6tBT>UqF8oa}e(94xt3BCFBk`)N~WUgLz zt$xp_s?p2&o*4t-`46<~e=mElFa~gvpajAw(}=_TmUuCPtLEqr9QIBOidcRa?z*DP zV}H59KKYv>XwujX5$v)1%793e{d0geBjM!Y@oQ&=7du2EPTUZC_jY2W6goK%N|9a9e+!J~}$0o-Ds&iSF+7QQ=Ocg2|2!UdlbBBi475R;FlF63czkL5^) z9}zOJ(YgqRd%+aB1JAf{1ezM?MQKD1LqEoHR|dq;5{AU&7p(68JNo`s ze#$|Cpk&r`E)ZN3-JE<8_a8>MOllf*v4?&>-4xbT-1PkX}KIcW0`;C}n zv^6dfShR790VzX^2e<28%Hrf&Zi>_&fri`)w5_y;=uMVGJ6Z3$emcIo?4g+-pzYDZ zE9jtT3DXVYctq|-{1*0auRMglejGVWID%q#fz#<6FF2IsSk9N|t0<#yB_FbHZ-xAu z*b!;y@O=*JywvZq5Vzg9D4Z*Mj!ui|_8&l0QmDFF#I`h44q6@cIq6X|?QOl>&lF^|)9x z>C3Y)tO5pG>(J7CynaYsD-zTudxXV_Jx5eB*-#LEk@NrJ`@`x1Gi(Opt$UBE$#27~ z17IgHciu1^97!r!TIZJH38I4$9q6SC84>kw@0|D!Q_~VEVlSZ#8bWg;B1^Mg^N>Hx zR5j+rGCbTN7yF{uT~~%&T596>>>eqpy}@pL$g%AQ|7$w*c$=kfNGQMx5QiUZP$9vz ziaFn?(%{a!jk@?d*ty!?X~EJESN3h#eHa8vvs^!c^6&PGfoh-PwJ%pcHf;gE{o8?u zT@WPg8j>gQ%w1noa) zRD{2`N5#qtnog4m*0(eUi7^G3&ekeemDY^%jk}wtWI^r+I-rUJ)!y^w==X*zcSq4N zFG;3_lL$Ia_T)f&r8V3XwgO^wim?reywf^@RCwi6h8e>g(FZV#2P;U~g?i1MAX2S_ zQ$(%N&pW3lqE_w`1apqmQrpWM-)`2(5L0C*I}Ek^s+{{$t%khCnNBfBj!I<_^&2pU zG_Z$WFpS-bw%FSyi=TUKfmN4W-TIcJWmZfp7n;l_OPcof03O(d$q)L_wsBNE z4{?hnO>X~}1pt+Q!}*Z184q@Ro)nFKUeuY$7Wiattxo;W($5&xIg|~+E=S21@$Yxt zdwUns$vEQ?X*ti_C**{(UPCv?F4-X$$!1ce%FrD>5_puHq85P0gyIHhPC(C)-b~P& z3kB;;B#!TV1>iDYE3Q&;x9*y?N3|nJ+;Zqe6FAa|&ozVBh)EoR3S#%O_Kg*h83S*F zIo|YrPsSaT&?Bm1sDnHssPD#KZSjcIXq>G=;pKCk!We=Fb_-esOI}y2&(5vGHP;{I*S%7`8LfnXR z=d1_>7D+bkyh^ux2)j#<)h8xyVfQ78d)`z21 zzW=+fPrxq~g}X%6QC+%CPfc6sdlb0V92gakbM5K;%SdA1DUz-Rq8Ttm^g~rW|WIoVPGhh z5FPWmOfR*RW?QmDm>N@0nM@iXGuWcPqfEed|NP@hAU;N)$^Lum^mqgtx?=;gi?A_Q zF$~<2Z)N|kXc1qRumj!Ln{$rSt{+=ogyNPR5gquNY2>{KI3*Y4ZId4cvbkHShO4{< zja?c&z)TnXg;kqo!cwMR=gjRkWbUzODrwjPT_N=m%6j218zaXYJGM zYk`forc&f)@}dQ+MvEcIuM%qPdMbKfMk>m z;y6g5?g4_{z(|FRCzgQ!)q$ue?o*pVfe0#%$Tt1=*!z0$EM#*1G9vf1Pao1l=8!_vuH1bF)L8!#3NB+ zmsU<-c)ZZ?3I9e32|OxU!^xqp>CmDSJY%E1yxXWc?;{zi6L&0sQ;RuLqalH5SNI!+ z^tzR{2sTD2iZ`XTtx-=BO=n_9C2iCI0oQ7AZ`TadiQf)FJz+L2{bSI2!{`6DdY6Z| zIUcL?<{o%XmQSdHuY9__F2*myq(w+CEZjeJnnLVaz^U}hv__~)|G7ZqkzW-YNZ z#yh7zciDlXdoVg+*!n-z^~p#n_~8-p;BrMk^>}RM1@Dim$h5wW5l)01@%fnt$SKua@5QJofkTEFT++O$c(`B(=~+SP?X zQfuMOu(eHOVcAbN{|>lVd(~UlcHs1q4t=C*wP_)nGH!ux7 z=9>JDZN2>0ueat+lbG8$lSJRLm|A*3VCVr@c#*;6iv+ztXYc@;a)pOI8rKZUyS?al z@AYzR3Wmdwph0b*@}ps#_y7X_AbhYWaHQR*6pSa|A1?|C7P_lr31mq>62$Nr@WtX= z5O=g88Z`thSyX29**b=jB1!Hi%*K?BWA;Kf@A9Gc^~H9j4WT=Df~3%R0sIVsEI zR$-E|6^QP{6-dL|MtJ>>89n|T=j<1mGbD~Kkrb8IpFVT z?!aUIX|<`voCg%7LT4@rV<+$IGu0<0_>iWzc(Isfs( z-~&61)VgYHd&YaXZxemffRvD?&BG5dvVF2t;Y)6w^ym6k--kVBh8Uy`ug;0hjKFxE z=GHgiBiJJ(XgnQePk9+*t6*3t;VgH?g|=o<2Tf;qaW=y&heTo3sctiy0O`@iIpzxZ zZ~_%R<1T@YP<6`j>uyz1o{+8)%kml_6i<-$307k>s#Lp9=xV2FA2#N3h1UblR&_mb zK@>z6xaE8OAT< z4A|j?WXh$#QO+E_d;*&04=;}8m;;tsT~|zRc5Yi*FNS62^M#NmwkgtlpeAa+$U3va zGMD=X@t1z=3E(=1GR~Lc96*r?B)lePd%trgVqYg&_A&O0LKN;6)$3){C)|e!lkn4+ zp*c8+^<~M!nK$JLPEK95*(-eZP}L&PUHp5)J*%P8Cyay#q{jFcA)(9W-1ME5Uy@=Y zTL52`w@26fV&`cX&nwwh?Sm3Xr)&j4ZN*V^+s z{PB!ya`x!CV_9^rcIRn)J^!;i;%SQ%FsR^?0l(@&(j8d7Q@r(6 zMZQ?ChX!*F}&*$bjo79%jl#*I>4S}hHJN?XAbe~M1 zx)-Xn6Z`t%*ldLyZ$7XJCAW0c5LDQJFs4Aq2>}BOcWP|sU<$}Uk~Ji5olhSBdFFLU zCO==Oac^i-vH^uk_8-)2wYJoMv-u*i|M~^nzBA_&)UKi*5!b_D zJfQ)^*C=hh_qOvYv3w}4mN~tN0oQ=sWjSjNW1|`${)d`}cRf(KSvY_4kZ`in4YiLW znx{Wg#4eak+fQCLZaHO3Ck^Or=vKCnLT9PrOtUWa{16W^H{6Dq@F7ndvVE_Fdm*>L zits!{2D`OhZHYke_O=6m!8^ouddn?z8`@30wkw^Q6TugqpU)?Bg7*vWCw~#sgsmf!qfXY2j%*Jb9}rF8?T@$ z?ifJMYq|sr51U_`mBlMH22Wm&19whdSqDnL-yLx5r5&NY3%S%)~brbH= zN0E8*1(bv(YLKpd&(J9#kb?(JLJLv?w~7=3*L9g?1h&sK!3XLNRFC~7ww*BIFD)yvvX zmj7k9HP{8htL~Y?#@6V4Uymp<;tLAW+N$vc!3yTav<3Yh91}m+0!lDq@E0|)eT!5( zhRH*imJ$5N+hFsPXk;j}@We}bLy*evT`*7E&7gN$Kb+$;GE$y@Z7XKO@0US zBcql}e7e3ZmwF`b^tuXjgC8`VG`OO`IOTx9yh)_zA2s~V3v_W9GPiKD=kIv15DZWbk->>2d3iKrGgcR>CMYMoV z%F*Y0u&>!9TeN_U1ZWeQqTD;Z4qmdmix|4F;Xg+1H--E=kqB;L0U>1khX3DGMnbv` zk5p^x2Py^{QI&$TfuAp^7hFXfC&^EKrBmN1L3LK1Gb)pI-@imPhV@nY)(nA;hTi{B zLeqiJmYqKRX&Yzi=h$$xr~^OFxBQ@aB$Soo+iixSxvNX45{|ytBmkQL#%`xeaCtj| z_5{Y6GGjSn|M~=~vY)VtN?5`VtKuCIvfO%B_V%ONuqVrin;&G&`IpW`<0I%yJ05-T*oZM~w#BQ&AoL7l2^{u}hk|*)K0I0pCV? z2{W~2=BXM<5aoU-FK~HeM1skuMk5$5miapOJ#g#VTbI;fndX#xF2hxx?DZf)bKAp^ z1t9@uMMYXIARqFT{;8g%b1nh{W^-nr^)?bNdt{Yb_{)Me|Vu`9ZK-kO-VcvTu}pi1mQI(}aIS*SD2zQ}lne%v=pyV1W8OF;F`kLB^}6n$gAJ)&YQC}T5u^&tHIij%#dz;j2} zxnvjGKl0{0o{v9ETYR`#eqlmd?V{nY3r!!!<5w!lHlnINpRJ1>A)*Sup#S-?ovP7# z#+%`pj3_orWkk6SGP&y(8u|PrTO4YNkG728Nx>?>Z$G#eh3loXvQHS8FFvS3$b{uH^EySxPB=x;>OZPUKNSesOFVe-FNm#WJ`}x~Cm(9Ar?E-y zKNoyvjbBRJyRt;Y!ddqqzgN@w!CPBHBpLa`Mk0x~cvODL{#X!l42K!xq@5vCZC5CH z%5gTn`QrZN!@#6Iz5>|z7owF=zXk{Xn*R4Td_2ubF-q$+>p3!4e!-f_+4Ijw{ksVI z!XGHy${xh=_Yrf`wnnpKrdw@?|4>S!()~$wZ(Xz+pC_8)+OGCp7%1rtSDw_fY=Ejb zk!_|?S2d2n-3NwV#~tzvKspftsR?Y@y+OZv9X-n1lT(se;c3sjonnGu9>qHhXU#T$ z@Mh%3YKf#H%Jot<(UXmRYfnMu`k2^C3ul%W%g97 z*O_SFPx&LHn*{|l{Ua%*e`rAzba1yi-{1Udll)BU4bKG`*-7y!B`WM!D)V?uP=iZ4 zeY$wfBu0M~SFxykGXou`Q zz)PIV^<&<7`nj~J{-}DDE|r7$V|$WY>G+b%gyO3xBGV^w-=JV!oR0I2Qmt1LK~mF# zyZeb)9iCqgequkQ&q)<}u9qY?!k^_&tD;UpErt=4v8;}yzFtp%9NhX#fJPt}L4`KL zoj4}hC(%jzUC*q57dm@4m)yo)pWPrLLI2&U@+WG|7-7NostuqmE?uS2yenC+hw%;@ zc<(e5F1GAE-b59eko73W&%R~xsgiaa8&Be-^fRsy{+I3NKE*C#B<9JYN9rZ>$aMiv zipB8}C5W~=?8T9&9``qVt@qYv{(e^gB`m#kc8#SzGy!L#1nTFC?~+(f7^d!`_62{d5L;197RXbYxtlC_q)B@z@lv5 zEa@~mbfH9qMCsA$4>CFda*knxFUkeS*U^WX=H9%-6o@iLx^#j8E9|wPau-0+uTMT? z`qHT<*;IXEa1DR;M=6=qjhV}3{@JD4uOI83RO{;nYKC9zm@Z|KHJ2Y24cylwRc{l3-t%W^WAlG-@g z4nbZ77S=q@IeFR8htK^6!{VDP<}SHJ@_rls_dJ{+a({0}{^}Q-fc&**1I-}FG0Ff9e);>BKb&^84)P+J8`@eX!+Ha2FVJjTINW{0%$%9RR8%P zuJ&VypDBW%KgyGN(+(7xE)%jshgRkum5=U?K499rz1zG(IrFz2LvV7VNkKmbv4IJY zH+8!Umelj0n8HH6%L*0D%TOer89Is-u(FWFy?5#-@7cDi+>|?wIE}^V6z<~JcuFd| zcc1)8#%}Fqlmwl>CUlaIr;Mh3m$HzbCPJL|O!G-~?vRSg2F@Z0M`Mjw*mio|SaZX^ zZLxcf?9*mB?YKd?#I`hD-hRi%!aR!&$;-Ju`i8R8?Nm~LKwWaLqGoh&->dbrxt7U~ zx^cqzsQ4~O>RI#!jOt}S?wip(r~Tp@1}psivF}}B%2+boqUh>K9_CT|y@UH*Y-WRE z0aZUKDLJ*Vh7qwwl~>191h_u#8zo`VHwBOVYhxfET3qjbZxR#Xr{OuGC+|Y(x_L*n z@d6HL8|^`xOJA0}X;3yv=LFvLh!o!W7qXCmH*{eQ;+YkkRWb(kM`?PIsL9P+#;5JD zjTCgMw=-{gq(2z0G#;*Ta8-XXa=yw_sw|6gQTe{{rgj}YWlppS;1DH& zRvihf5>afyrRP+XqJNe)tTmR(qUt4PS2dFOQOvLHlnIRRFmfo6wusyX>PW=+)CXG3 zk0_`tjovFZrNXydbX-hz4Sh={Rw-NF5%me1Gr*75ze;*!>CP5S)q-LT)14Ig6Vf?u zbIQIA78u7%r|H!x3zKIUVFdQd`~4;LU{l$6)F!b+HxT{sEQ>pAB~F1aa^)i#ny$bC zBkaFpcjPX8HDaf5uZYcx{Fi>m=)8_IzxC5Dq8_1`?KR4v%iH#0lN#V}X6mg!d-^F~ zh|8~qN2bcvs7a>FgZhhFds6dd7(#&uk_IRFt>@a)SscUs+IB;mlf>W4sO*^8V;tk}uoLx&mgoPD9o0uQI3}Cw zi?VhiRk2+KJ}Iz>nF$W`J(D(TKPwo+6JhSOqxN+>h*C1wr>!k{XJv1dYWv04XAl@Q za{lWar&SU`IhN41P4p!K@U1zaMfgLnHqP}1{euaw&m1}wS0BOm9ygbQMp137e%b%f zbk<=}_1)Jeh87*VV}|ZV5tQ!k0fv-r1c_TD2Vv-z6hQ^0q!~)OLkUs3QBYc>_4l3U zz25)14B*V!d#|-VOHEtz%w$c^zGNUmTRE(>w;JJo?s%9VtFF7~y@!+iMSJUz_qo}} z@9az1G2L@DN{g#PN{b6MWgRyy|8{`DPM z)d@|W!pwJ?p(3>-;KLBwvpKJPWFWX-`WIz#I^VH-vafAp}1J)F7rX~8#?z8B>>l3CUmQTgB zdxj8--MC{S&33jYr4KBN!Ub;PjIbw9spzvMs*}#w*~EA~kDRQ3{Q(?Yrhr%JJ@#O7 zPQdxz_ES~(hoS?-SLiHe_!Q99ysb3_9^8>H+Gk=?=(V_!1Knn{=|I_9^1hgbVIEez zQODUr_0m=ZBeRa7E4#)VE{yd+&p;HwqMUCf+4*Ie_!jpPXl9*iQjGGjY|!#dl#jFg zl#a)F$r8FzKwMUhHDVZ0LCTGAo&g(jU{9=m%g;;?qfuJ^8C3&+d=Yrrdq9-N7{!J5 z*cv${L%o<9j)uT-iTt2h%L#%aUgmaCkaHTz1nQ2e1!SE9UQ@Y#0F)MiA)-43`wo@K z?m6G_f{hA&?JccKvHe_ov`Yg*G9tXDPtly*lk3^OnSqFXhm#B*GX76|vxl^dUkfPpD?oXC*S#y`9&X?P5$B5#{WRc+=((D^+yg%-LMJs^a=$93Z*f~G zzzH7;Zh+1p`I?02$S$A8b|mDyVtG6S%MRkx+(3}`kFN%!5wEttYC^Asl2C|7SzbX- z=D-|^eo=f}%q`!l-WRsOyn*#Rn(m%goCCuul2gLW-LIdK)`x!%8rSA`_|QBLRs2qY zWbo-qv(Jj>-B~0IPp7;#qPJuZ0H>r@E3nqxmq`xCU;z{1MQKFyiUwSp;pp~L9gf^n zJbL-!7J$+{6cDtz4cL$E@m?d3lkcs^)hr)CRnPi<0 z@F#*(a!8vHexZ#K#61~^fzS+xYno?@u+0xqmtO-qp^=qHR^DWGKgX^=z}-trTj>HP zwo|(RLjx1>j{*W!PDM2SqJjZVF~%SaMakZ;C(`<(`iNjfZbkniNO6a}!S;G4 z`B&-LRLp9jrzl^DR9c?4nf-J5NjWwKnu4 z)+2PD;ZC>S5-QvgUvW!`SNox_9((Kn9+{%%Oqo7gkR~?K(lbRT9{`@|m0z}X%nDG3 z3X@ozMO%d31E8&Odq1HOxd50(aZG+SK>TlmgjSO6?8ZNsf_ztVLQLZ09=JL(z4dV5 zWXI195(ZSTq5j%OgKFSulfwf%Qv|1?P4){Ql?1)3d{nu#uY~XnPP^vSbQ857(~*?B z^al&E=%=n8dV#Tf50qNd!#0?-^UJcPsGdw()K8s>HyId0?%%?-Xc^)xX}RTC1C0w0 z^9AWw2qoTqV;Pn#O*0R?+{D0{J&6@_9Z`}6`+wkWwlTKlI&e%JhsV)p!9Bf2_45ms z69}_uFFLjtP*A1zAo%`U1$+#;z*7~KA-0D1Pz+qhmYaE%$3%d&i3qk1n&MzLtB&-w zBq$-)%e0_ANpnf%HO}Ws=ar-7FvKBHI!4x>0`?`6-K<~w6VR*8#X7h(QX&w|YRgu& zf;zSu`P*2#GW^@oQrm8M#bd?jBgvb4PVrwGAQtljSNWkuO z9!wSwH2Btk(!WK7x5hhWV?eg)xGXq{*L#-x$hPY{Fs|I@T#XF3Jfn%MBaSmy=sEz0 z@H(8R&sm}+D!c4pbQA#Z^lJ16ZcSh=m%vNK2W6;hYWGPzSPT4*EEoSl*>`a(iYrY% ziT2)#*Cv1z#6SvIG{lU(dNu)y?29E1#x#|*zv*TRdmH>=Q)x5x2@a}GUSVy^%ATv} zuA8olg^fChNIsRBeCBki#TukxvO{^Z19MU2vg&Bf91p9Wx_)enFc84_3M7 zdxA$H1UKqZlp-JU>Lh)fAT{y*CC1c21jv{y|7J5%q*}2-8i8?iR+B&MNfksO7y<@C zeF=b-46R{~Ki;=fz>zurMktI0|0!*&26G)yt|LyQcpIWs){fEpQ+%-eeqsN$GoNjH3 zC8tx3U=FyM!0-Oe{@ti5)MT>r)aw%Bd+l@Fjiu@6fJ1<5q7l;9CyeCf#`l8}qXcE` zOgjtu%x^+&W6@dcWbBHeUmB1y{|PbRmHfJe;^4J#(4~Pxo5ya6n6z-Lz2bP*2@No} zaPW5-#7lj+3g)As8K~gGkcjZR++*_$k_4{(akfVzfmHM3=h5zBW$quI>UWhh zJTNhmGNbzbT)|o>;`27;(JC;?)jdq~Ev*ES-!^cc*Fwzyy1#4x3^e3v7`wNWT4o+$ z1x;?Sr1i~DYx_zrY}uv9QZK)nSa<9S$t=!qHvWE!h@Ut%xfr`#Gc82YLl6tVHtw)- z`ymC6-`0L#M=jbbEuq=jsge)ry^A=pPU8889GdfiIvmlK+Hn4AiRT&#TYWq-JWE)~ z$UN;1;6E}k=pY?OoW6R1UbsUB)GfJc1~zNl^FH1h}rKGN*DB& zU}84%@i4eHk343+V+5FlJgAluW6*zZYs4c%CXTd%S}ZUFSC&sA55%jKUvtBbW}L_8QO@)V;9 zbHP+Ft2W|UyS+7Ez?F^YNiObBN4$3b9$!gob_?qm>WQJuJ_0bl#$rp*u52g6d#+Jz z{~??2BSQ7G0G>*X+hgWH5{U%rS|HiKVK7bZg{6mw)<7T5gO)$-^tW46uf930C&aML z8f-a&S>72uXZ37C&6aff`k7teus*G}9wMFl0LUA+aN3@Y2zCZK&Ngo>MMS`7O~Mx%o+0im=a6kpen0yh{KF(Vrq zg|~Bt?b>1o0x_I(Qz>@EI|AFecI<~S7mtA&bs5`gi-${l|6&;&>$74G6D1~G!SKd# z^-Ig-wU-`NnQW^1d$k*mpMeu8RoUsA&Z*DpR*hLF^nZAzV=zfbkRt zq;D~Kl(u?U(?n*gDR5)nt7@o5W4#%vG&c%5arp45IEKn36KqvQneYb=ab6+=^;b4U zPvfV0F0DrIeD&VKcf@8#-PcL4!SjO~Dv*iWtS%eh`^jt6{tyc>%SqUAS2PNiT`fC$ zZBD~EMdd`nzFYK^78un?93R_FxA}XjGT0hC=jE)Fm+2$}7nbu-({&?rF{(w%zy9xX z6sb6sB6we~+fbEe`Sz`S+&59fxh?yzBU95iN0U|^{#E6I%4WLonD{(L{C0KB`5BZ; zNyvNB#3`9kivJ$4efI`Qk6&GatvcocRbKLbe(6_MjBR32t{(;=diSY+!{2y?URY`t zJ~3JB4189;8+fPF?%Q%Wfm|cUgQU=(aDkU=gD>x-shOUY28^tm*VL@O{xU&zAJ)^9_SZncgc9aPE`JQ1yJm`y z!*RMkc2ZiWBJ?5G12IJKKFQ>waKU|h+FBs8Na*NyR)TC8aIB&bQBNo-qV^-gqFu_; z1F29XPFB*lEX~tN2 zTPuh+Q3_@Rpa1!VUj)CU3?1RoD?p^GQ!A+{wbK^(^ii#sJ7bHXdYf`l8dSdZ>?Ia= z>(*CvzI^boMvD^!5j`Aoiz(^{0-U$wlNoF*vUCY!yt;eDkrLN4dESTVKMV!obx+Pr z2WC4JVkGdAdrIH)?2G!m2&lRJ@ss{hU4W3A9akUk@*6xZR%5HGU=j)X_3*&wd3DEL zEze~p$~MVvu%3M+MQae&)uz+Amhf@qA>-B=EI#EVvW3}KCK&)YS?29nK{$*&H6p(1}ZIAj)VGlaN)q)y^;dP}9^PpDS>~1<&9Y zxbbfTq`yuKPMZ4Kpnng&Q<^HRUuAS^nI|{q7M(~lapz+I% z9i9A+a@)~Jx9k=LYvMI3h+9&wxX{!+AtJ%M-`dgXUDI8U<0-Vw)c2PSJHpw%T!TDryEEQy{WqVbbH(gxHC|^OvaiO9 zJWOj2w>e8n8o_{Vd%pjss%c&e2F~j7*v-uI(m~p@Z>tMRkti?rX+~2$O1*zG%JeBW zos#uZVpIq#FSJRFA2?35LL#2LXpCR0F{6{Xfo{P zw}(^x?Wza^)kRR_a?gXBr+B0lc>DgpKubxueYb^HT&aqRfFtOck&^vYqx}BOe>PD1 zyWRy@dVnCUiYxUCmksqw5PCc;O)c%^TcP1LAKgz=p^JJNSk2~k+-zlu)^Ng(FjTfN?@;(uzC7AO zjVAq~KZLymye!aml!+}*xcp!i7r`t~W(*02H}-9|xH$=O7k)!X{|smFSP4+~q)#7+ z6DPDi`@1C)UR$~+C-4$Ko*hXWlToFcHoEKy3r%*^D|b}ikpLh2OfbFXY#cp4IzF8{ z0(UUG&#+d@z?j`UAMXfa@%! zCi~`9)4!yGv9*ZQEyUc3?q1yCmW*WaF8q97Q^hP=3YAZ9%PI==Z*7pJ%E|H(PDS&n< z#l%o$PJ><>CB3&z-q;#8#63T3s}Kjd>P0jFUT|f&t?Wvr8{B~tcTsGgbss+eQu0An zjAw0huj4L2M{BUm??hbm1J#^GFVRhQ-_{L@F2GAtr8HHT`M1Xa(EA;HpN_%1;6pe8 z}X8pN2{K?u5wgqFGE}^9- z;XiIV$dBm7dVB2#b?|yUKWM;At5AwNpVU$ZO%FYJz?&4|Yo}I&KiICCd9(JQkCOLb zJ-=G6r1;{X0&}0oJDN8E@6zdGhLTdjy&~>0B3yYTH;Hko6StcNfKu=I*jpFOHiS3b zK-T&dN<5_G@g^k%TpSroY_j;%q(~9mWbDWeW)Wh63nLkSV4|J-!8fH?VWNODF1-ED zLK7d0XY^<-M6tb5GPOJwPa|D_Q=EfSww2h$Xx9~itJd?%iVTjFd!y{CITkM!pQYEA zYx815hMhc=?=9Rj;@Kj2Ng5l+jicE?dAxF%L@K^Mx_bjPcuH~0q!;!6Jg3t;VKBU-E~p<_R}b^fC%X&u z7oJ&f3|@0v-$jIPiZ=g59+QCYfYbz>*X?hho_d2U-h|0UlSqOg4CN+x)T<*@w;_0$ zBhfovI)xy{)HYSnM4DP!^1Ee^SknpTDJ(wfkzcdmd(mE8{p1aSft11!grlUmK-6AI zs=v|E23C+@#~Hmivq#db=}47OoX+6BN%8A(ap9Agm;On+6~@ z&+jEL_~ljRN#o*`q~1Ata!{Y+#xwL@lOMKv=qRwyn3djq`UD-wM7$OGjIMUZ#N*dx z`)%O42;4j?+OD2B?&@^}cIoL^n=nH%Nn}lu=GLh6PEj(~ zOqjR{LOzq7AMl@aIj2_AD&#uXuS>AT(P*=K?so&v9nD|eT=BOIHFZxs%>Y^usbXU= z3BOCeeOk%8FR~viC_wk#C+YF@)>(5;V|uILxIr8a)!kTug9dO^$Fh^5vav9$O(30; zeUSMoM#$20hk6nCu7`a}_>4JL<;h@tx`nn9CTd+lZs{62SrV@Cb;O^~;u}3{hTsVh z4AX{{)J$W&5*&k#_qvJb6K9B?lysUXXPAFwG$px-_n zoYQhFN5nhEQu2uis#hLm04+aWfryj zv>C|ic&7y0S(ETiKr_IvE1SInACNJ|%|-z8BeWc)uy_&eeEg1YrDVHxBq|QlLQ0GD zRh0ee{e0fV6vt^DCyEXx5S|n&YFe&>BMgCCE&cbi$~1dsevZUSW?DzW$$Jx+xqEKi zzZE_4(6DH z6XLk7RF=EF6`V69Uub64T6U=D%f!CFQ$uyFV4EJ*R<@>idlE?QEPz?b9taT5OgD`I z?j1&Ckk#HRaB@!yj{N4j(1=lgotdkJ3yI8fjZE@o`KBpaJcWAN^KwH@-ZyKWLm}7z z-Q^5U10H=4M-T$kTw_f^t2Y09rCb&Ocrf;D`uR+YC%bD~XmC|MS z2Sx`{OfG!&)+cfK4sUkWd)Q=Vqo;^P{~TwvQ_eL8tS6fP=!6}+EbifnI|^#mgY4E? zQ2kTNDig8y9C(+)Jorz6tRY?eR3El#_Fe=pQ3Sfp&zodr0o)6Hf+JW?`Ja^TMSw1G zj>Gh!a!y<)Om?Fq4*&bcBx81Qx!8EIuarseGMv%$$1W7~EFrW7H;XYf;928Htgg)h_=Y&%SD<-!H=E*GI7p5)aJ+Pn4Dm@9$c- z%RSJGjX=>gRpe7{&w}~{A?s~vjb~s{jj3{6<4w3eN(pbEayYx;C@BRB(E2x;1SqfL zaVZcu2G$Dq^r~_bcum%wy*aeRq$jKvza^uI1*Z7Fz!V&HQ15cEQ^S)Ow|x`hA8iG< zs<8nLEWexkAU?s-UQq<>p4ZCVOud-OP6X-ArQManA8E zTu##F&qUT^1op1UuGeIeS0IHp5YFFeo@y!U!s`Pvuw4IzEIJfXJz4)FiP z*3xdp^@?{P7AL8;X8;yvzw_T;;%wjTi*>3~5kM*V%eC|YA5VoTx*-1yDY&%jtKJa< zH(-LqRq~m6UJ8FDv=Ne0hd9DSu7$C*5t(dcTgmPSuH=(l6ON3B(F;UToh48n1~afc zr9>R~2&3!+RU7^Uc~#3|3l{8dHdIRJFiU+_gQk%l87Ox0liJ-fadKSP9VsOZ@7n-j z^Yd=P!DBvq)j2xB=O*bK5!yIr3fK{};*+;ia4-2?$r7D<0?kaupR5~JNY2ja(y@3P zB#F3N{oDpK%wp8@ZKzVBm-Pnt5%^OzKh&I`0D&yw^qHz%b-i6h2=2#cn8ZORAT>+e z)?dtB9Xr_qSE~Bzzyf1)S+?BEUmM$Tro}o;*xaFUQU0#=JR>gBvpC0Y>x)ohm<$X2G16C*K?M$bP6Uur%IG!Y;tHwAeoO*sCfG)`ox^QAf0LFKmXmupii| z?0?9axTh#AhBktl%EnH&j3wL*<7I6g-jS(zS5q%q!hw%dF2KR#mf$|}o04#nb4%Lp zbA(X|NToO}#9LH|V6ERf^NkhZT4w_6HNgIq(;ZE;aCQaUhE4C+Bu=~xepi+zmwax~HH`u#;CXwUKAYgoz1nt0G9z0`XZ0!8)dWRNN{BTO3#nZRnikn9xj7w7l}qc6xqG55S3s*D z1Lf?_ai0In>w!3-0IBc5YX;|>V)pMIA3Dr@_4GNFao*-<09LtJ=%;>`PcLo2xn;>| z$xI;vO*pcQ1xqr6VjCJGIveLzL1CtC@MlW%a)TW=zenZ2QhqFUFk9oV!;L1VVm{mX zO|PLkOBQJo;L8c>{KMivpnSJtjM~Un2C%>v{?(h9V$0PY4C5BdqnyA@FaXS{DM#gG zoqb?jYw6zW?y;*XvXVOeHPjw@WH64w?*Xn?`heQ0#VV`274H|Zb-$n(^(XT5&&MTzUJw*x z&!7QVs9<%A@xdkbikO+r;f$&ssfssPx^`o*^3mMx*x@UZVo~lN#HDSB!c7X9M*y_k z;B@&fG^s88W8s-R$Y^P=|3XS?*{`+D93_j3VXK@4{REt#S@DXJJ2Okw)bX8#>hJfL zF9g$em?z&dHOSCS9S41>aD!q%Y>8v|6Ik|!YFSk%4mnJ-j2kwlKHbe2J_2|)H!`fN zs3c~15;OvlPBbo%L=}D>jH02XYNQ+xMxj_m%y3k2H!w>O0W+6j>nZ}qPvp1wd_d;K z`z|k4%hGUBX9ZQue~PeJLZYt zY|eedq4}!+J{NS{!PGahqrD+g#kQinz-&ygLN*fd5K__&hG5D(Ib(^C4_mQpf1UW> zXi9W|Ac=h&3!ylDMXMCxvBYNzFteJzn2RTfkm>Yk+KT(}LtVvV&O2m6ALslZFg8#%#i^pE;X|(olfJ1c_#h&V5+jb%af>LefuW1FdU0{U3 zQy*sf1@L=Z5VW5RKu*JA=#H2}GE9r<>92vQ7@71!3bLjeiWCQchc z4WXMd#C^fB7DayaWak$ zfxQ+wrO}|eVEW?+i!9fEQM#X`R;3t0nzqXC5ZtrnI-#;)e~ND!JZpJEfx;ru(rb?K znOoIMK)a3ir+^r+%7Zybwfe_vd!&h3*Z9@Zw*-y;*paY(T3uvzUW{)C0w^;f-2TnuC-9qA}ZbS zEtWnsVY0^#E^(S~K-QOr7#;cH_fHb(R6kAZBpr(=n|rpR0@kp_2wuCm6h4W zJbia)v1mBKPwLrMRA{f_7}~nD@TqiJ=N4Outw;^>V+X%Sq!r}oRV*ifm1l0P3>M!M z^`?YgJU#?h@Vy@N<6>G>TAGV$c!|*iJV5t;gu+xOsF0urwYYrjmYm-Rfl_ky`d3|A50_Z>Kv@2s7wEnzKC zm3q&;82Jj8xQBF2*oh@zEL^`2vHkPJNmY~Y_@mW{k@qeB(gGQAghA^~#OLJON;DKP zIEve+;0B~Fd}ydG5J3GGHMey}qrH!8^FdSkgKrb}b0EEk#l2BwCIwE9 zKg_Ze0-t+-JXoBzl8q~o!9Ub&I8`x2h-;DCG?`|g@oqB#XLC!Ky1`bQv%UQKh~oXt zN6hK`Q1WjcmD&;I^I6KFC>(f?eWrSvt}!81D>zdv#d#P{&$PUxaT>eAhT|{L{NcOk z>xQS1^8TJc*zg^cL>|uz&>>WjRJ|86X?XdH7slkm;Iy|`1NuC+LGr!{-}+As)w{g^ zT$gVVL+8}T2qZQ=Zv=UVi2Hvzg0PkM-7m8#CF|m)U+P*zt6KZZburFkAj#uK%#f#I zFoYI(ugfo-s1{n7;W#Zx0)>8Ej56t&bmo|EAyfM36&LX;T?9|~Kl%}=B<~j@P1TYm z^Fo-_DCzr@2?hx8UyfDa)23RB9zEc;G=f7GF)@Epafpy1AjweC_BJ=?)QRYPR+4Ra z3a&fSBk9R^Eq`=3A&fzud}^1J`0K=f-nGvMuXu!22n(>3K3&KTc50t+5uJ54)qINs zAFEQy5yM1~kl1wFwurv2BDGU*{D~#IVLLQ+K&^=9yMg3#b&eIfev}HbUVw3ZCHH-~ z9rFupket}i^EzOGwFt~q#ZqW8hCIkErP1jYt$<|CVJTfDNDa<$Z*PWf+^<`+u^)+x zOuZ{c!dmv)Q)DHTc+Y|M+bBUT<7zfK+2{p-!(44k9NVOCW%;0-lU>-!8oUbA)Vw_vtoH3BF1j7|MR;0XTmH zzlpE^@sjhR9j07K%HI%j_(FZH*G{LTgdWXpzr@OAVmJAFFEE`X*I1Ytc;5(PQnd!* zhhXW+!Awylb7d-rek(YPRHk^7&W87!1`|or9TFDfu1Nv$#;g%u2|WPd_5W3GwUiQl z;b2$ERV#_45h5o0=9Fzw`a|kLt~?%P#tAn*7H$Mkj(5fxD(Q5D4;zFU%)v|RHb z8sNhd!Yi?63Icvz-)KD~{&tZi5Ko8^4!}zoyF12`iUw2Id^i!>QvFg+HeoKNcQt%K9I7E;Il9v;c;I9`i{$xssLYRe>v9e>jLZTZPS z!@sY1w|d9f=8qhr+E@gbLdT}~!wvW)x(tTtaPM)fN4-UTsQKP%S*NRvK7$fG19ep# zob%I0oC_Hml;zi&gr?gjzy^lRHtma9Uk}}S#K}=W_4@=H?@`<_&_dvtyl2A;wOVr; z(Kg7tjB*N>CDuv;8qeY%IzasS+gIoS-MXV>i$fu1_6RX;F5q2hULF4a4{K6EQGfVZ z2fx(I(!Y8ae^vm>AT58|yH^>_Ufp}7tMq&N>|Nbm^3Gkb`{4L2H?%A&quMk51P8d6+`OmXW>lMHeljv3|5~Lu) zH)JHLbI*I9Xg2X1{G^E}-`4JOAM0tO)UMk5SXy_FEgNwRSs@Nt3>pTgI$i3pq8bsx z1#mWye>^557IP=K({wi$+hp1Eo!v0^aoZ6g2sehV4yP|t_OzTmo zLQQN?E}1Z6h0DoZmiEFMz%ERcpMWY}LLJM15<{s>O9c{0-;_wGPb@i;8QipKx|%9G ztHlo7Tt>~}w)xQ!h&t4#344~6_zJ}E^ zG_$3tZ2y*|pmv;i1%E}B#K}Wh)m+3?mgg>5E`(kRSN)TNlC~z=*TACj`c3 zV^+Ik%fwXrpc=q768id7+TR}7_sA;rF{^@gps>}F%7;OWK6D&FP$Oh<;aY_LAQ7t5 zmTG?h-jipTo^yBH2xI<0seI7g%FZA)hnj_g6 zo^u|iYYPvn^nnc|Wqzd>pw{gA8YOMoS#9Q8`~* z*75yh5yDz*P4rypB+(rJa8DvDR+~jKE8=~+1w<(cqPr={1=4D zEe>+x!iGrGIu2}AU_JPZWAJ<5NT!zA0DkfEL6WA?wHWlZHGRL>?w5&7Nvst;P3QLtDTpNHN zE58t@pQJdy9LB((@I^esLom5k%@6=l*}h(wAKi}=;J*Hu^=Id-P?c%&8@+M`HQd0n zoja4OG)u^k)NttR)_t<=5#r@r%v3WY7B{{xk6ubRz)EC-mCcf!JZ&iGTl9rEJ*Y(q z|Dg#=%tDp4Z%mJ=Z3T#Nyk2`_(M@T8f1r7YIQ2D6G!xzE~JQtC-e&hMQAl-za zzB)Qdr6%)2#{<||Lb(6^{?8vLChKcq9>?ksax0cL&dS02?6utALkb$N$KG4gj}#qP z-D-VvYR2Jpt+_jA`CB%7c|>f^|70$%>L}-{Yi8aoLDW)doD-TWrN3^nTDn4+eYH~(#9J!LE6v7rUa@tu`Cd76TbO3#vKeLb=HQ|KTAEr^6LU>V7LBN)@aB?3Sc5;We; z7BHPCY=XJ|E}2k6YPYURNn-Bbo2vzbY1c!U0U-i^y+wmnUN_oEb+qqT2=TlY(ia@K z?tLXQ6Gv2yY2Uv8gWZan@sdjK9_)hyQ!Deb*rG+()Ez5^?|2zQ>V!eKNlneJtwUhB6t{y zZcUiVLSUjVz+mQL^EWH`4Tf%qEPdAbetW9E1on-~E&u9`v{rOAmI5;i1LudOnds(? z^<>`i!F&all3!HtF{RZ`Rqx#o6ox>9lrK#%xX&u&jY!eq_RpzZu0@X#^X1g)5g|TE z6?p{)>&wq3b>@t(g)I$t9X2LZl$8*)0qg*oDT!_GKJ9l(uLBoM z`tLvEdWef2T*Fi)TmW5N_-Av1$R&V$xw8*k-W-JcSWm6Tzg2r?FvDV8C;aaurmFO1 zdk$~sp@*~hzRisLh-X&2P7hR+LZEIjum24`9pNI&5r+>^T2^4RI370C+si$8!TH0k z`zbc9I&Ct4G(0MH$LxX}m-`X#5>&%`1xPrmGvqE;^2m*9K5(IJ0_5dr6tDo+g04XYkFmnD8`-oqeo3nRPZ2E zAmYHHvHigqK1JAF%H2hpss%W4A5A@Fak&QngDh&?&QJa!T9eVgfV{=6hgm5<>1YK- z8rk%sb_$Vdx$o?;a`aQyz@p^HEH3&DL*ILfxDc5+Kq90Z?j5AxW8Pu1#@1xk#On-A zA+%8p|C%KL1+6XW6YOs>bf^6KIgSAND(=Ulp*vq3P+8itRm?5PcRZ+@*GCV=ZO3tq zAMVEaa5?H{Uhr&xUo-V1CqG+w##4Q7NZAlSoCy+)ZPILf)pwTbGOri?@4t3)#9KRb z)R#W+Nn(~_)wK2CaMb0P+~N#?X1!_h63I>KIJ)q%M8JA+`;N9MP83z$63S12j3co- z^fuaZHDZdqTK&?!tX<81&7+3T|#BfBx~9^6pCp31^UL(Xu)7 z*?fGcr%>aYLiW`F&y?fPC2)6Un0AfUt%C1E)=AG~%;Q-!U(;|fQH(3EU(O3 zd=eS*!%+wanQmgCm2UZ!Dvttw0tt6)C1XE$c^2rTF$j`$%1~iZfiFL`o*T6A7)f zU@7fYG0;%RVWQ)9bTdPN=6P45M#PPqWVxHGgImlKP8Bq!uT^onfqLichmWth-Io9P z;ac{$WFwF@fAKrUEjj&v%%5$n+ZVPPqs+z0DwwM%;;7W6di^-wh0yid#^hLebu&Z% zHkrSf$Qt_J9y4gDJ~9>xPc*#*X9;s1 z&gi3g@hp$w((gyhMq^nK-gE<&(G^LMI}M)HHCfUbHiP z2V7q8FEVRS&Bx;Vt-pGOKtw-wdElPir(0%;;r@=UA?{D4l8g6^3@|(2mox0O)D1Hq zCA2>tRLMR3a9DQ;Q_lD$$ct#X0!NP?{zGD|6#y!V( zJosPT=}#wJFD(PeDJ-wbOvrR4C$aU|twC)@&YFt=<^9X(k#ikHu2EO02WgS+Z9Xlsd+`n|jr!8BM+cs+D zDfPvA+A9!}L*G_&Jf}Tb@DT6e3L>=8f9j29*p%;z1v!c*fX5tS@QovsW253*mUjS1 zw$QtLc>?lRDwmDe143ADZfcoO^VG8w%zp3;(xRc??+oK_(KO+ZbVQaA0%W+jWZGuZ z3GHDr>lhI%Eh7Bgl^BHBdLOmY*(!Knvd$|vyiMc7A^k};hc8_{<^UBUb@C(_J!yE4 zkM_xowa2WNE{y`>{MA?spzc?~iF;he=Bt58Ie{+p-p4sm(gTn-rw_m z9*!1oe77%>OL~azqa2|Nm3wA$`=901vxXmf!S>H61%hmvFJP-}0q5Jf7fZ!{TE{%* zuEW?4Kv0TsJ!mHCEj|&?+qb>{-;`M>z<>pQd0Erz=k;_-T+;eKNR3WpJxRZf1VXRW z$NrKTBjpg%e>XmoKU>ZMvP_M3cB?-w?0u#TDA@%dDlmIGn#Ed#!JO>1_j|plRimT} zSs97#=j(})<)e+FufRdln7GH{wC4y8K&uN?KTA^D%DI-31Qn#j`~3y1!_?9X)#*!m zaS<>8vFj231MFXF?h)VT7x^L<){HmemLY7(j03a8q}l@>K%R{-E%tW;O^jr{J?jS; ziFaL0B#NC~%?0(ck^Y_M`9%3cq@1Gc1_h=j-T@4e=( zWWRkd*F;G%IBN;2FqXKtp^r=}mAuY{ zFFJjiZDCgZqa5nViJ4Yn%1qpLa;t}d3+;BkTeUQ-RUqm&{5a?JWiT4AnQOt~lbWXF zDAX7oNVl99WaDb`OUe*BCq&mz{%K#L^tFhW35E72_R)fdQd))M<7^r@VQn3X0B6$p zTk8;2jz}*~Ln+R-;MT}~@96Hc5lhpDsENvpQ;@9~7bGW7YJ=0Bsy2VSdOlFiF(?pb91fUW8V<24hpuxh0VcNX@* z&B<(XGW+J8Y0+&wIV2tw35lmzGYx;S%^&&2FZclzlRl+VpU^zhj7(~q>YLv60}_A5 zOuwK>UDo3Lmi3CftV**DW(nW$^PZf7}e2;ISZKrytNgOYjS9G~w z0)3F<6FJa4?q_uLx9x~vb75>w9vC>|8vVA~q%`BzKD(kXIvV%+%;?Z|2EQ5_|56yu zmwZhxsB9)kt)QxKRdQu{g&tEbXfm>CRtRM{;WZlNjl`*NT^(baUk`)|enpWDHCYfx zA_hj)9hL@josE6msrV9v&?a(`i1Rhx{(5?~) zvSxo=nR&po7GlPy5@D)$n5Ll>Lzhs{O`88({DKz~e_ECzbJb&LoT{h4nG%74JMvR| zgq)3`9AL%_Aj(I}-_uGK>ni*O>o4vR?^dNfe$3ZQLq@@c^qtb=*>Z>J$ZsyIHwA|S zKNHRey0u~wlz@cBBWv5%zCRuCk%q&iHXzKy6^2S|gOkqEL+4%r|FOf zq<+C8-ZQh(Qs<38*}{+0x9p9!#~_9fk}@r;hoix-FD5?%%jnUxDH|D8_~r%LC+v%p zv^H+tB}f~D#?XsK5fpN>crsEXU^Ez%dh)s3N~`d2Nn)8C!h1+~ObpYVlQ`Is{E?M# zi_ojzJ5-&E*@Ki89HA>e1de@^UNir@LlyGGMKH8uO0Q1q?RTctjd9t1!jYJuFA^az zcGNg+&|0F7DW@=ybnk;aoAH(ps!tHA368s4k8A*WF&}~CJa)BFb(bNbfPP3GlDz;s zA?MiK$6?O@8u}A8KLW2w@TcpKsn5a}6X4%EKVmD)m`I57AAD-ogZsF&g|Iw!GR1lF zjw}af*({17S42Gc_>RP0LP_s-Mx>80XGkvpq(bgyv$JL&>@gR0=u65V38=s;xdfkY zb?hG5=t`KRKok=*EUNoIENcI!Zcgx`bcU9kgArxP)ElR}Pw#6Suq-#aCXfwk%_+y; zuId+>Z_$=<3a*UPdwugC&bV4OG9DyTpM_$8`knbE# zE-i}9=_d_j3qqx);USQ;o(-+Z-^$X&kvfb7wG`*Rz}3+< zw6qE-H#^Jn?C3NS=3w93Ex zE3i*=VnYK9EBaF<=x>^R>Lm{*K;F~734rQmF#Wx1H~W{JKA8XFW)M}P(##M3YY=*l zE=blyn-#JRSQxxy`}sL2!`fIFQ>F@ngxxX?i+spKuUC9! zSF_Zacvn5c=YF1@RO3@`w z+W*=rQbZ?h|CZTH-V6jxH7)V2Lugk)wTiAaNhH9Y$?Nn$CJrik$XYX)@KU=5%*%X0 zL8!^rqxa1JtclsoUElt&Ix6MI44@5Z+gdd$}!AEr08)l6;m z`O;2WRePwSLG4BH4NEK9nwQntA*&^1WCQH+%){n1Kc z!|UBIBWG`m0^_0c3`Nw=ZnBR!;DLXBe*Gl5`-XBfu(?apZR(BSxM1FQ5V*L@8@0=Y zr96XpZK?gQA0=d8el8~kv)M*6nCnP8JUgk(K+!b!UmOIs9B(`#qVsD;vUbp_vRAvx z0?gj801x9&nfM)Ke=h$F)y=IsFSBKTl|E${s%uN14~N;vCG`9+mh%7S_Y z4O{4+fAGS&O`L&8TD;anILWI^iTUr|Z{fB<1xKl`VTSvdX{TmyIT+a+r|F%3a8v$1 z-^KAcGCUM6&F01h}$49lM)-wjWHXLd^_2A+&jgj~@9}Pe;5cpPnJzt66)$&+e#2UEXJf>`w zd0cR62R4!h3kIHn7WumD_ZR6Lt5y{ENh3B}@@1Vs16JjNc($D8_sHa{a$s^awVJzo z_rE#!&Pg?<+yvp)A>i~msQ=<-{2nBVWPk23} zSYJ&`lvLRDxq=QV8i1kszdp{d6}{;AKbp=mDvqvO!a;%rC%C&iVQ_aRxVr=yV8V-A zaCi6M?ykXIf;$8Y?hXNN^R0FN@t0mbr}wG-R8=6sDp05;bWej!@P&>k$Fs34w6qMo z|B0~z-I_Hw`8pABUI?jnwaoA7c&R1r{c1nSaapnEDi?mq@fBwGtX%G-(?*bnA*ZZ7 z6kN%5{Msv(t;gTcs!BMJMcp5$vd0h=@&n02DJP$C`7j$zlflPm!beq}`$_*R&gwr| zX4IMaDp09pE#9y>Z>(f&&FQvH>ez&YJB|!&gUFhc6AEjN{2pHmdRRD)%x-J?f*6jB zjZLA^?5L~A)>$*Fy_p{#=6@n6>2Jvcz1>Lg4tc?d(w1Z$(V~NoQ8}LRWuWEP!dl#qnR`9?86BCl^tR}X!W0Y{k z6t5#-PuN>A|H>vg+Nae;T!@Dz&a6d9Mot8>(?;OJ@V23T&lT8R0D{-^{Ko4IB;b%+ zuV)_0i{-kXS2JMYe*{ZURO79@Z8|^lJxZgUL3*hs}!Ew zMGeoGZAZ`mBZg^@bfWFNW~0T`8;~lSe2{!k^*Xt?EQ8>Zg$;LJ4ETsbDMHwOL3aE1 zoDMWdp}GVI2AlJ~TqY!~6<4QxRNIk8VN7dTW}#B`Yc$S_uK7^*G4g?Glppui0C0CT zwkWD4(!EE(yU2w$&AD2me#?A0Y! z{Zf(J;#Cz@Ig$|S$(V>R`pj^L19tNM+0bZwDsIUB^+ue^bX*f~x2H_z_IkLenQ#{t zC+9-$Pb$L5SSNSJOi4vQ*43+XmVx2inA=zBfu>akaLHRzApTElAWtWkO7O*#)0dOl z%W27eg;H)P99#|Zqg$c4-|gC-QK{8_KwsxHMbb)U)h=){ObmQI3|_iFo;dQ%rYNYw z(7$48PaA6k;+H8}Lfd^6)BB$P3LAxOXeT^3sODleP{v9|Yuc!;uTaPh4nP0h=%m69 zovOBFFIG^Ek+ZJT{m@v2CjYTtR}xBsa~)|ylj67fH}_-1WbDYdsf{#|2{m=AUoX+0 z`aeRT;>hIDVX?3iB_&)wVo?pVWR#z?952cS zh6k(=aDEkf98tEsm*MV8%r_YSM8fR__*)0eM0rR~z^AP`;D+I{u>Z3# zc7EqUIT*hfO}89H2gUlkvSor;2pYj^AkdknQ8?HQ+xQsVCJcd7DI98Ln5JO=0i-rR z+rKc7&!X^?55l?)V;+|q*n(V8QUuM2ZxVp@RVLOckD6iWCNP9yXw{4MlWD1$sqpnE~b3GzDfE6 zc+i2>aO;$JRW-w`$BEQm++Popg>5D$v8+YLD!iT~0(~q3UW3l4d(9_=HYeL#bBE0c zuw3~VF8J*Q+TkR@nQFYyJy7x>G);@9l$54S*Vx@2)ZYN+a=dc<`@Umea9JOb(>`=A z5$fixm+IilK7zJ``j{OIIh*+mEq%nPf#3p}SSC)CE7P%JY59|-!5L86cBx>+@7SGC z)2f&eXz}u17jyJCXoPVYxE#D=xsa+8EQR$;e`tR`Nz);RldGeML@~c+S`H`1${kmRnt5@|Hw?$1^+{evG64)Hr zgyUiyeybcN_%TB)n*XMp)%LU&t3E`*d7#ru5m*53! zU}>pY*^&LwjPPdwuie^<5LgHF>DCONVQvckeGSSZ|6c#}O>GlXB(ug?{G+|;D%P5= zCGDe$W0S$ZwZx&r0e}%r^Kdh0ja+xZdNl4_o?hRtk946#LIC*-SJ4ihEC% z8o{~%!5ns7$f(#)l^v#F7AP#scycwivJBYHzI($Ry^4$1u2 zYACGh{-G?F#TI#t+Ob8U(aVt*kl8p7tPerHjx#<$+$OajeU?5DR1C(+VjT0}OyK^h z@9+1on-g)T3#HeImhu8W`(%=r2pgb`l(EjC)j zaVAe|`W?UvzUuUXYGd5GX(8-(ADg$09|RMe37hQAV)2N3%17dKnTfOxz$~&g@bQB$ zM!pEJMfRG@0G+b=#LdCzC4xbfMKwK<{?o22GGp8)&OxZ3WC(b`{xve1CTyH_D#u7# zP-7(EW(=GX-GaQo(=_BP%-pVCzmt>vL!$r7?K6eHEvP#98snj^`QOE0!oX^%*RkHF zoWFF@uF>nBQT!i4dPLeBFqU39^4c>;5jy-|acn!1y{lD3cGvtZG)8D5B}vTZc9S@# zjES~F3!+V6-IaB>2fU}UX)|`nZ4~WWNK%6BWtL^%P563COxN_ZjunvryMa@EMdC6} z?cpjw@nfochpY3ilog+T_Xn5%XCF*Hm};A_{dmA=^eC4xFr}zdatVvLRMFXEtAOLc z-}_J>Niaxl(;?}^y_3Vv$hR9Sj>U`|an?NXg{i{r4{nd-HLcB?hQ4#(Z=cHuqs+U= zfQ&!Wocl_h4qQ#-BI71Z{rA{Mx_k7M{cn5d2pi!}zgGF&MzHy6NPDu)Of{GTOzz~E z8?Kq~+cFm!xxS5HehfI!iQ(1P1>BpTQ3nD#d+d~Rs8gF|v}2j6Z%d(rQ%?cWGABIF zd261`WiyoSfg@hunv#JSk1k8}hpv*_lr+#qyMiFz239@E%9qz@s&kp;egOm5cFIVq zBko+}H8|^}Itm+um?-GiOVT$;<-dq{JO^917mxL0!<4O;skeVqS%XLRR)-5 zbeSMmodI==U$>PGVC)E>ysT#aYK}K@3vSR(v#APAuwR_AOdztpXjzVe9WHrh!evfT~8gk+KJ)-U#|k9@3USKe8fgcD}R5{v3+ z#>yL5mZq4Z+pX_zMCH8R6jN@bumVpt-}ucka5mPsy5h@Q-i9%e5Kx6h>K8L>hyI%{ z{@&}G;X#{N;JGSK0qHzD4H4@8_j5;MeV6%;Af}X;d%%0l?y=auF<;{AR^6~kMTq9I zOpvtfQUplvD*%jZgS&cK_RGcTY3w&G3|%IVIZO#sN_R_bL%??(++W^NB>Fl5+@B$A z7b_l()ouffGgm-)-(-W`e?iaR-%5fyiIthKP8|mD7r}9(R3|eol6t4$_Dr(JB-8Oh z=1j~ew>tw4cI&qg;eT6pL;=qnYUmS_gKliu{9IV?1CJ)jQj-N^WKjM_(oakdXMWtm z4<>o&Qcrc$zW;`N&COtlF1&gN!;itAk7-RR(Fv8=FHhS5YoPR2pm3MQ6Cq9fXn#`c ztOLde@h!{{i{pUzUw^BBX*W9yo%r}}&c9t+d3eqcOgq$eniC5Moz9KVe+Ks|V~gZv zgX~U$z^C|xD-b(Z%^6l(**4pD8-;VjDBzbj$-Lf-!DtaOnHCh1a=mSxjevv4Y=&+% zs)NwNUlf}!O6%n4AXn?HEoUWv!kYy~v5ygT@5d*NA9+GJ5rvd5utID!Oks{~^H)#k zOdJGqEnn1`nY%EQZg=FPeD%B!iUm)tqsGz}BUKZ`6tVQ(?=+RWB78b`saa(=9tOE- z#!2fNxaTD|kCGpEX@z+Q{sfTzGsY~aI(QLEF3w6WH%s#+ ziv}Ym)m!8%du@MiWy!w^(4{n^kulgiQ+$TGr4*12y8vNR;mw{WS7Dfrp*pj7B*2v> zP|0vBHRPfr56~`I_vpn6D6Md$aG?&WEO}M@__KxP`w(ucAF2WNSJzHgx)yXo41D^> zfw7@*iQMlYt^MD$Z`WR=$;AMit{s1Q1mAwHLI=CwFNDT)i=P0_K<({oF{#9Mj+0Fn+rW%RAdoPMN{2!||n+%3SkCqrFV zQNd%F46c5{lGhaT(`&Q z15~n@&y#`kjz2knUkTZjT!{S`{`31}2PTLbziI17QA0@1cy^`E3yKA98n|1r)Su&CQ74gR?kF1PxODV^OsxE>@(lM! zQeb>_GRsv8*!JE9e196W&#J{J9xbRm_-{60FBjCkXY_5PudXQ6EP@VXZ2g ze8?sFP4n^0($Yv228;O8g7P-2M*bE7G}=^UO@sX$=@t!7nv9dVzF(nVEjlK-E0wtk|i(!>LRZPvgRbTD|~1+Db;+aLQ`p>IrSM?d$|U16MkfN89P{Yu9sS z>&8ACk0nCwlX+~8(lEIl57XcYN@t_Ep!;jpPf~q3xgMgU;Hwuc@WRsXTGdOtv|3rX zGaXz3d@?hop0LLHHklYMAtpr>$S5XN!AolKq%2WP$6)-xce-ERo z<{gsZg+C}f>zM=SS5HSyxbM2}blS{mBaT%s8`Qtp;4w8D;5qTv9xGu9Y9b-RJ7`0x zOpKl3q&5Dx(d7$}Jl=PLw7+J*VX0eiD6qSrvWRjqh3H`@iE0RT{)>z8q8d})Xk5^> z#p-Bo9L;1Y`*qg%GcT#>Gfag+Y*I;gP1EeR|9}|E;?yxixy97(A9EhwIvWmnyFgl+ zVOvpkM78q@hPvai<^7Esg)z#J5o7>cEqTG-#p=U+f4wsBIE%RCCSeKQm{&*GX5dPo z^Z|QD6kA0)A{UO*P0uRJaO_=rFaTNo#Ga}FTi42-idV|-43{w&0w48d=XL4cT;}lS zGgT2VIe!;GJ> z3*&c=5sBm_Z3I~Zff*BmTAsa|mV%07pWt$wPR-2blf5y)qm9$w0@BL&gAjNi`uK|w z`c$iz`$fj7%LoK#Gt~g z7L2#^o+OI=(ZBH9kh1U7>>B6A`O?D>YJE@iG6>ChXz|1qsAMX6QKI(&;&rEpegfaj zduW`Ek}7(;iUdIA3dz#^oQlCXibmRiz4%XzAHfdDlapo3PGw|bs`>uw_|@%q07;?; zHqvxZHAhEiBlXuBxVBsSZi+R zS+198*u(a@=SBXF%V^kh7x3ro1E#I8FC{$YDR{nqxtZ>IpBN681ql)Fo;X;Ub6!rY zPAhl2VbB!byLqYD1e_MFZUcn2Cc+$y*4~6x0`JReF6k;5cwj~hhWd5@x;n$IdEG@; zrCAnWE@}eV$@u^q+Uz$+g82WovNUh!Py%#yF+pEO2y83jyiUwW<=ZYk5tt1-Sty3= z^A`J{$L_1m;}ncz8!W|M5=Gu}9~l{c*}eK0ta8@;c7WrT0+awQyN0LtLb>T~F?GRI z-hNT=l9%$aX49DOI5_hi?Ql86G&}e=CAe?$4Jv6JPvm7xz4B;folsGl(8jO&E4`yc*MHy{(3$BrAiMJdJB2vq2zWwFFSktzTNxg2uepxHQ4+!X!eX7 zjiK)BCEuZNc91lx80-daK%?0A<@&MxBxWF@Dvgo48*AtQ%Z4eTXY=f&3}^}mQb2ko0L_NZ3>t+!LLXE1Fn z_=u)ByJ~vI7zdovV zetN$`H*3DVGdPSnQA6xQM65Ve*g$4LfVzDep5UC)3eF zM9;3=+JS#{fThD#m0#*u18s}Bd2L2kP@M6L%OsU(-FjwHDZm5x+7j=(2m_+>M^ji+b+&Qi`Z6(05;dao#f`{h2n zcG9 zX(XeE-nD05`pqx*IS>7`mS#1TF!9zavlbhQpk*pGWy=mO@+h@lfM0Bq#gI>eclN0< z?V`;5`y&a)IzpIXL7W`;1bJb4v;TNdvHkt0x8Bxcp*}llzSyI^$_Zg_=&AP42KC3< zCv2X8dy3Bycf~@trIboGZ9D_494f8DZYy2v+y~yLPDCRUb(MrPiiEJ&%gN;8?75_iGvM)3z={!A}-gX~C#NKD61(t1txa_?;H(7eqKUe<-ej0nZDzbt7 z+mxQX9zkTcOngARlQf#=QeT}_b?rz`s>~t+L?>F1z%#0aS?#ebur|<$@Xmb6tw$w2 z=@kA5E@3A|*e4L<87OCV{|{K&WA}=_J!-xU82uYK03uWf!N49Dzv(?p5u`-tuuNC- zWU2kF0~?>-fe`n3V(Sq(D3!C}tEJto=;gn8>8$!Pm=UWe&bu5%nQY0+hozylje;og z(EwUI6QxkvYU=}Aqi5ZxO2Y8nn5S)IGV-tNClOE*PJb$V&zy2Ho~X*@7Pr+@;9lN^ z2+a|`MQdZFKa+{C{?3a9pXK>m(H9Z_ez~PgC%(CreviiZGEgxb;n5w7a=H~ax*e7h zYC(RCSR8Z7sQ*3!68-%XBOyw7(|PXgAi114MZ|^G>xl|By+rzq+Ls89U&FW6zqV(k zto7SB$5*D&e98wi1#)fyRn)Id5v2O=O~1nX3as?=KTR|?cimQIH39I>)MV#An)iXY z)*P;#YN2&QPeYk8o}cDwT&j4I?l0`TvX#IGl5*tU_X9yO9AAN?e7n>~cCS|EQ)saK zy6h5AQhG;;TGLNN`Bqn|7Z7n#PmVkWeDoXw`CPObfGnK?=j#bk26H-CHBs$9d7Wra zGbvq(^Rnx2H_C5w(v40A@EI>GL;LyxYQG=e*KWjSY~97w6OEA?UDp5qR&xBX0fCQp z-STH7s@U*yv)k6lagA}~Zdz^I07YEWSfR5A-RudYFJH?56DHz&gSPD$b0ZFMq97F^ z6T8&HDjoyum_#OB^TdzTK+^0|yw8`L1zs9wL#pmg(F~8zGM|y*i@g`07hJO5@3l@# zsIqn~r(LMI0{nw*O|9I4uX#$=&k96E`Rn75N_poNz!hjKNyr3RA{DEHmx4WWGC>~d z*GIb!Ij3PTs%>NU{^sG9t7u8u1hwPS_~N;isq4~4JSF-x7|M%6na5l@)%3h-;r<2<}3+~ee#dYkFD$fS&zmmlBoa8s4&Wy^9JVd{cO=$*AChB>r`62k*N!c zvpH7ij^;ZDx~Xn_5w4*g3eF!qh;;#pJjDbN3h#MwRZ|A{w}5zOUDdVu+_@=lP^pVp z!54`GDQ)+#XGj@9aX}82>k0UZy7>O@ii3}O8<3KiPF}x7qA%dLONuzgTaE3!{5~g_ zb*WwMKZ7dXHeeDm(^|I3XrMqIGBEQ)&G(hDG2B^MT@>^b8*=MwTFAqkG508@3Bv0= z2{(m9S0IU_@_jgiWtDHsM8Y3ydgf*Hk zlN>p3DK6~^aLv6gTH~5YxjAoz7AooerDontX=*SAG~qU6-)!-WJBs3-S>Q=c>zTu$ zt9*-BaRX%8If-vw@#Q&zk`xEv`=Vhbzob7VaY0aPW&IQrcYZugpI2tC8?#Nc@scru zQ?2NO$4UvkQzWE}Xun#x-8g4i`IArTbQah4{I;gnh}Ey(!EeXk1mp!NJY`bM9;P8i zRAdHZxF$t*%1HNI6p!~&EK5CRwWQ(eqCgVHYBv%~;eP33eGn#h zBSU(uc9}$zeStSw|JkWC73z*6$+f@Yb)|zhV>w2n=$QeqnO!zTS-tuHEPzIf7_w!{ zONRPVDT2QsG4;ruOVcQs@(zpsJA-o%EmUQbuSMICKYs9*hsPuY7g1V|fn!RwQON-I z?6pjezv|1#9wbOme2JjVx&|~d{(k7kK3};{aZ^ij>1dhH5*|%IK>o>LE?33M2SX<` z|D&g7I4}#QGqpwUB;D=sUHh+4ng<({?vNLvl862LjxhG$({ZBpY~2Vc_m*~Pk&fJk zqbd_o8+u<;Dl)Z_@4!tPz`0q?Fe!yt!$%Hrww2^t* zNP92!qy?Lzf$%t;pO~T9`%pSoad1w;%1@Ya69KS7M#X#`gElJ`q4!}*z zG#QI#Tx{#*PTyvnbAq*nNM=v!2PfwN&zoS~rY+ug{rbaxnfk>GkhO0XiP z1ohE0UXZ$wyx+w{BfM}u*o92BkrZ51uf07mV=Vyv4PPHv@$P(nT*va$t~b@~d$~0E zXx1FITVSVba{`EOXbx0gONLJVclPW52lsmlK8?hc^ zrtTIulKm-vqa8pQ{|@Sro@d;;j6PEZWUy_X@MsXpR;E&MVHw?Ty2HNr6(G;<3+(gi z5IGN}_I%j56ve)-LB+ojKw$sT5vgv@u~m?u#1I6H7SJ2jn(3TDo!#?}L-Z<{E7TU8 zD)FCU(dx8q0?M#%Fl`H866KFY;V8iq556erZVtOeprPV2jB)KHU-&5>*;f$WZhW2` zbt`Exc$Q5#3rc+-F|Z+G@&h!gEwaZnEs{`+M;crI8ZG3gV_s7)O6Z{n%@X{RS=U^{ z8VL!i(a3};2i`~;;oI%Af4#H#8l4-=CY5mTT?RT`s>eHsxs%d(qtf%)PX`)~m`!Bgm z_2~tJ>4}ZQ?%E300y}V?ak4Lgm;TI*FHI(-FGIwwM~S+a$4mzGw=|t^_v$C`Ots@ws3L&sEP7 z?de3^$eGyp-({LE?T*#-FEIGer@lgF)-|vClV|yk&}shCb+-KN??ubAyfEJ|x2Io( z@I*4xuVVq)>pBhWW-LcGs;i-V`571z_1o~~#sY6fnUuWZ^n2V2adaB2X5e(hRnI); z;l;uj>O{27qPS)tSnWSf#VXI=rw9ZG^m?jeOkyTeXTQ28b_`CR{kR92OE0TKnty3i zUY2)X{pl$fp0o`BdaliYV32mo#fy@j8&)jH-^F=?%!<0uL>1%nCjwju0d=M? zOuKZkdTk+DztxV+!Uw2nbCNdi&7@9zaZwAFV6waQ{y8PHW-P7nB0Z-smDFy}?Ob=c zhenSWdY)%NR-dc2D&so$RT>+FRN6Wucm~nYy?S4T1zD$@<_*NuR&Lg<7jFi}09#U3 z%HNSt>f?p!wBtNfSoQul;y;&cbx0L3Bk(WZ*Sv+}vhJ4@>+g~XcIY z;c;dzx&rPBGyQrIJeJ~9z;4%ooi6a#3LC3?xO(RFog;(P59eC|q)Ujdeis!7!ff=t zfncN@!tzMH@ya=B{*5rR0$+l`V$L5nLVi{FBDGbZgtgxzM`6mU=XknCHL`gr3?PnW zXFZej68mF}!tmpD3Yc_O-^a0f8nr5%Z+6-0XeJs(hMG&665DDVPosH`L^`g27my}e z1jJiIxG|pf8)MJgz0ci-`0HH$Na>oRBm(s-Pm~4j;e((T9ssp3e z+YE%7$>jYnK(SeK%3oc=?=lqYfNs-zx7@@KecF|(U2@!o@;J#CCABa~R`wUy$P2>I zGc1LkWF3*V9f>kfX~T;d+a{FARo1nqdr#Ig$29<|=!Oj|qY&fMO~n}f#!JZ46;)>v zny5)SewGJX=(N<}IaJG;r0bS>0Gv|kYRh7!tLH+qvs2u^9w$mUBa3e9&g#r!+%P`Z zSwBW3qirEgP#SYFv*Y%B@HtY;Nf!*E0m0oy?fj6t`|)7UoyD37rG7o)GV$T*FZZuB z6m&R}@g$vC3B3rA9mMlX?L{vc3Y$Z}^|#gFgmPoDH3Z0nwpDL!1aDG+0VYPew0iPA|cjy8k#?0L-)xoeNp9Sv{wfBnStYg+0%=(}2*SA)e5|l_T&>Wj@ zMWEiA5}rfvW^hSD4^iE@q#gV8l^@DcKCK|a=TW=1(B zW&;e>@+kJrJ#@a?pL0?@UBun&TWXqi!gxsXDj2HI?xzhmAnIvpv^VypuXX6oDi|+Y zBCwRj7KhKqa3zA`D3$9u9GQa#&4g0;B2wSe1;kC5%(P&f54upVO-s$Tw7$RrL)wfD zda!AQbE-*nUvdw0nk?QmDQC&s@q0u$w3iv zbfk6JP4llfj;#q^J~2eX<1?TGE6%l9e!ylneQJ7$v9E)p-=gxb{drU00L59FCEgx0 zn&v3(Aq`2zOgK=>c~Va{d{p^36O2gzk?D1(>_38;zg~s{-rqzS6cC2uxFW;k9YRqM z2P=5v2>JT#sypxGhWrdNV~!ng?+c13$J6@AkcW@cQOq0+B~^vwVvZucm0N_4Co)08 z4Hf{hasoYrZSe^$h!K6eO}b}VtN?o={&_^ zgUp$~3?ag^4dU*F8z1v==krr@i8v1j&}oD-l(xpmQLlgctk&4lR6cR+vJFmet6}XM zkC*+_9qC)5V^?UgC;;-`Xt_7EeUsep>*8HyphLrJath^|S2Sq*A>y0;eBGv2Xd=({ z@+r5aG2@;kfCo7#|Gjz_tUIT=`#dZy#K8x&n&>7mnF$vLh-Zr%mOL(3&qLC@{Sp zge@BH%W^#f8KqfIJJCaalOc9hkvmtTjjW1U#G??l65G?Dkrq}$tGRw4x19S2+v^ZJ z&y%TTk{~WshNH&R8pf2bh5Jg^Yu33J?Y-A&ee{lIQVRRH!%QZ?eCX7lG`plljfR_) z-qv;b;;a0MAe**<&=~zYo%6PHoJ0}?pedzi3q|ysc^7s3Ap9+g_&{jwO=Yv@Y8f#f zj7ytxWum<6Eb9d0ywyt&Kn<8@Afcbkb7;;=ImQC!TE1^V4F;S)Dz?N?5_P~q?ugz|;1+JBR!|$t0av&`+dVTK^=^e-Q1nMs%*w%5>=3D=tmbKdS2biUPmIAT zH-KN=|3>|(JhAZ0^|UAcbCf`gmh`q|A%|oJRxj6EEP)K@TKNHHc3Ux*lChCG91=jAT%q6q#WzcMwv>t|CpS zGLHwntmd^cFtWxY2F8dn;m9M}Crxo(xaZL*iea;}l5OaD&6TnWQ{0%ACe6y;(4#?z zWGF*Ga+=WMirz4pX` z(26CE>lBck@hMf{QR?kJ6ADMfMXf>r)UCZrrnvEAy!Pl2w^Q0k75-8|Qe44tkD|@$ zJF^#@e_?KhBX4|6Vv;kMJoePDs#*rUBy-YAsqMI!J~u z?e=VPc^9tLVX9x(v!1Ysa9i)d4pEPy0#$&}Dcseh7MxNiVEXKda?9>6cb4HR6}CVIuV__Fn@~io>*o7w z+F=nm1T7>71gC>#?*Y%mc}3V#$qXPOpNb&K*>G_qlGF1z$wr$;FXQXe3&8f<-~Wo?7i&AL-jA zsWRYXM=bDVj`IymzMsc!|1ncfL$v>hve*w|hJ@J;ok|g&Zws(-AE|U0|C^5S zNwmbRSHVNwgAGnFTeV{T2F@8P;A09HE7Bq=r9&>7Oz-cW3o%YUjjMHxaQ~_wq0@*R z)|2;N+k3}jvFvRII!sgj&xeM%CN`WWV81+9d|xqQjdt1rcxpIhn_JfBYAXiygCtLa zoQOCL-3Nm-6EpW0@41UAz)Kl@FZU`k*U)%}Xr8?2*R@pxxf}4uUeF`Vk+^2v*FXV9 zYT86ruCd-6D$Xm;m^45Jwr;Mq1NPmS3Lq`a;|PC>!?(rcdMDg1EewV-VhDf(k^%zy zBt4BFcma~f=(1suCBH=0bCHwGk5jJoG$$FQtbz4pC(2vcvLTZ7-}(gRb#AJTf7}4I zsg5?q$VIz#pJ#XtN`{y33&SfHIII`|z1!eyy)UhoN9=ocTO180FN}N ze8~3BoC5=>-GyTw+y_ymWW(o)OK@{M{bZHs_t{WAGhO#N3q?PU#Mk_K!`-cwZ@SHUT4>UD;HXZ9S@WGuQz`DpG?nE$?Or zIcg9Vo$E3;_>sewGP5?<(!^REy&8X;X;q&%lj5;_5ZD$;X;VVPIg0=yFYlY z?T}bST)KUPrLwHV#frOw1h&f;Qa4CJEo*b)Co=OSR+sJeQj$Ini`71L70wK9eRYWe zmHh(51ZR^vic)^OGz(bDUXJ|XO^cv?jtr^x#IlGNw zy{EF=sqS$cG03^ri3Y2$|&PK~>wVLM|7K`)35^|t2M_&3GnGnu2x_CnXf&`)f zy}*V`4JAE)>t6zLd133o6sYw}Rn#Xh?%j+s~+H20-U4MXKiuy(-j5>C{t3rk?Nn0L0q zJ)l6RfXRe8ut_-wz4}wzBXA$r(=V{6y`rB-tgQiwFy`(<(Wqyi3CQyENqbStOB4BH z*>PZU&8_)4eGcajCOPbFV1D5V6IJkC2s{cRX6vsdSL?6rzo=2P9jLWhkI7w(slG{TfPM%9mH4ym5;Y-F$6Q2K_&aN!b%WD+bVDJt$)~D9uj`=kj7e~)GBbz*M zvq0sR6HSj_F5&91>o3gcv=rH{qb(G8FM5&{g_2=OWEwrY!t0 z$Vp3aiIz(u^Xq*9ct7Xw#Z`Mm%+L`bQTrI&LQ1b!S2|N5kLVNwmo)nr6lZ8CN*Qt*Ue8Q7&NBdN_q%R66x%npClWFm|#6;i_#;7zDGxXt-?P^JzZ+V|-(UnD^`yf08{f&}%04nL z#KtNr!`;dCqQ*<0z00-#N#d9?b@J}@9a*eczvF`}%*Jy5P{k{IJC29?Z{2xukA%#5 zBHmQIjX**Yyd9wBV)Hf82Vs$FV;t$`54>>8J&nm9q z0xS#?(Kd8Xma_6uuGDH^J1Bcp)gku;n(3dR0Vnb%a%|5|qr9R5sa$+mrk_`yfdp45fk!WK*9*QtOG2J-b{zL zeCUj<=bwHPef;GBK0F&$L~(*)Q#{Z1$gKLCQ$!9;_UR`baFgwHUDxxi3Aypm`biM6mArjqg+Y@Raj!B&UCU+-E2HYs>e%3LbK^)z`u60rUf4 zi8QwIvEF_GE22qvJbZiMqgUFo{%UaxvS;q*q0|Kdy8bqh=x16F`{#9gWG#iX*=wcDB+ng~i-R@L*gKx& zX9inHY$ZRHJgrF-{Mnf^nk{{mdjOSs^oaF}hJHNurxq!KS<&d~#$D5mkZocY6~%l^ z-YrL@1}J-p^?SN7><#nGLxeaUP=G;+z6w>>vg%qIt@F`NB9FJAE)~9#7lVid;x^&E zOhU*66FR~E8P!GLL41Bd$u0BK%oY%cW&IzJdt#-Gkc9nT9Pjjg;u1^zuj{PyNOb3* zV|T#I$Hh^zMhz3HcvJ@X!EOWFHxhi5vBeFqDtov1C^WP!resW`#% zeX1}>+b{I#?j--cy7_u{^TL!q+h&tvG0thkHpEr96fADHc<>(Mr2F5Fm+HLelf4WU z=Vw!`m4^9fgMri3J@nC10_gWE8mh9oBmVIcxrCqu)!-+$p%6M%jK%s;@uX?#P-23k zMYn@|B|Z2%Jn-8X>aeM&%P5Q*ZSt_OPmL;`+?Z?5{v0hk2tc$l8e(L8mS41UPU*^! z2)*kUQt50Ke^(m-vUMwa`DLLa0MrwD;Qp=i9!KfrL9I2Qo$-;hu7PRj5Md;(F9@Tp*9-GdF zRfg%r8Hhkk2a%W-7aPJL;}n11O%``E*T|zX84?|a%T^K|c=>m{$w@uV8K`h!FO@tD z^z8ZH^wa8FwEDlPJnwmY#n_&TIEUvqk@X`#-QjfvMYf9CKI&kvjOt)s8!$&bZ$?H~4a0h~9;QtvnzmPiUxRHL7|>?^%JM z91<#+n~M>z>BYEuwLL5KR%456rlrZ^m452BzqMtPMM(uX~&u43aV(;L890zYBkGDPdftht9vdz~TeDtf{(UpaE8x3Z>-}Q0JoGtV#%lsbO~2Oz6S%H(x$Ns8!z}9;4{v z+DY3S7Yss{7f4y*PCSn?numfLotGJNAo8QFx4v~S-io3DZgAJpolY@h$4|_h!Qm7` zOTuk;W}1R^I|8MfQ#hF5*iIw$;L%9sdOM*3ASr1yv2WZ#wx8}zMNFb+euKvg@RzB1 zOch!5O<8MUP})UtE#S#%!Ox>ofda`%I#XFIhWK%6ldVN{`8RQ$2anjbWR29NW^Ip< zPO}R=ShUNS0|AerZg@u3bAuh7a4*Ir9#|@ zsq1YTw58LS<^XRK2(+ASD%>;LpykR}%n_p0h8GX0UV2bZ`r6oKmz@V1$hJX#I~rGJr)Dq#H=*CS{>WiQN{ry{^d%H>h%3-&Uty04jXKomo2zJgcGylVpr9{&?q+?G*xk(Y{| z&wR!^Q~P29m-7%%j!v=hGryEDH*B_HvR)a^Y3*o-lo(b;V|W|80hp;~-wAI&%4 z_KBL(a0Kx0=Z$`x(21$iZUOY`;(=_)crc44R?_VNf!SGvD7ovd4L96BOUb1_D*RZ3 zEOlc7e|~Zxkhd0hXr3x9Vol1;D=z6;(+W7<%JzzwB(x=^#9mH7+b#SDco8k8vR#;= zbuzC>#e37f*FXW1;^gI5Y)YtLuiFd{nVp=|TEX#zga>JyVT64xs zT&MK?U9RX)9A1&BBkdn*g$ZZ05?KSua(4QD3;!(Jy7`0wXNCD6(k&+<(GC^cPTi(> zbO(TO%AEnTAk~2^%@EL5G@e1AkNS579rV3*)1@NVl^Zeg_nNm4Tkytp_Wf=ZJe&$9 z&o9LDs6u1?_1E!%z9Ip{Bj{G!e?PtCJ2J$Je%i#r3a*4H!af5T!!>LM+8wl_*wq&# zdm%BBTb;7FY1KDfn}C%yA-=kWG?Lls5k}f~;Dy}Km;{ZqtHL^Rr>0vL+KjFp#Dba1 zdI%mxFumA`Z*pN}@=Cba8XrZP`J&TtE>lw;2Med9d72NfuT)IG<9}+#8X^@>BAzl+ z6e8M7)vxv(E8xUzejd%DX7B3B`t=ic(^k!Ys6pS`ZzSVc@KBnqDoY-d3MT$%bq;Ki zZd>*;z!J~;1bu$dZ>#bRjPlWxbj*tzz@^8e%9uF|?CT43M%tmxEL%7;RS8nKt|>yy zyJ@^$Mecb-U_85dRNILC_6{=mo5c(&eu9(K+TB~<%R*FTW;|oQ3Nj89J~oUkk-Mi7 z)dk|HWG>F~zu~|IydLUj8-!Ab&Ty}zu}A-`$&FC`@0oK6ZH(dnSbNK`xSDla8xQX8 zPH=Y(?iMsiaDoMQ3GPnt;O_1k+}+*XH9&wf`(5kX*V*Unb$)%nawTb+p4ByLRz1%c z_t?sSe=x4Smr`CHySOI`JDlp)J#B-_m>(n@_##l;PyKtyo#q~@O|`{gnOY!w?);QZ;+SGIpX@5hM56c#Gq@S!xpcu3 z>tY@?qDoFr7K|*Kgjn*KTU;#Iw2^X)&FH6&&7rsjv2-bhozZqJieI^vt<|39(#lk{ zW5fDJ%pc5wvCy52fN=zLJyh;ju%>*IMU%5hGZ(urf|Q>~wOJz>hh za&cSffUM}_tEO-YO&~N=GTE!f&=<(~Ya_MR^7R=24{}520;=l4q?liiZ}JxRT3(2X zdVMsB+BVuSRtfE>7(g;ib-LtuHNDK^`y)vPZmb^E5`sCxhW3I_Ioe9S&|4h-MM~EB z@ePz<`ta9HqlV_Uo6x5neN{aLD&H+iXW8Pzt+$LIl5~nUj%`DJ2o%Ur(Hb~2Na#@1 ziyDTdDg-?f1)(ycX{pRD>);Sfg#dPj%>V#&`Ar zq1_@Z4Y+sQ*}x03Efe{ zrW-*?&uF^*FFbGLjn9(oMZ9b3O*QdiO0<|-<}+z0lG{KURUK2~d2j2+N=)x-`5jsO9|;O6`5rqZr8 z_OWs7v-}U7RIqB(CZa*Y54S8_jRqG;`%^!Ay$mJ3byPJ(ecIfwsZ!nSZkO9JkjdwR z(|+M7XGt_MOO zduoGBl5M`Ja*;IR$_e?X!xiELH_<`{OOTkXuHKWETmBfqjj!h{#!zIC^fq#goZ#J5 z)BC(6eqw6W&xu|=t*q0RUmE9qlJ9n+`WooWjm5cjzCEQSA&+u|=t|3XkE*rdgmO&7uS6t6eq^?a93CSh<=^_nM)OFMgCfzB^Z5%~bkmW9zBI zRe4vrq)aS#-q6^QQ)1nTQglM0Q#^eYFUQBL0jl$rk+XBmLoL0hiko>%f>j-i$&9|W+%!kv0blV zTde^0vtBRLZyuu^3r<*RKP2M!fjzj20 z3=bT%iX@Q|Me#Ji*6n+6T_5}QPOoW5%@U{fF)StGLD-p;^dAkIcaSX-(Up?=g;dd6 zg^~BqR)CIhLuTQt1iDq^XemulF{+kDjvEHI9H+?!Srk$aUD3g;f%Z=v3!nwOqaffu zoEJJmS6WtOWeJ(iMbEpg`Kmu@MDFXY5LJZ^7e;2u%hf6jih28tca_aNs#gD3N1#KL%o zT6=cl5gz@oCQh^2L8J4l8P|NjXVMKv!-`lBQ}$S^a;Xtm{`L`^klN(P`s|JnK0sDC zg38#kK?MohhJB=p@@g`HOb!Un&|JO+D{3?)2|+Q#1bnN-X6@lbrolt%0OBzmnBC(7 zV+7-niB~o52ntnnnY-ffMdq5MIin=jl?(jBb-7x5H>entj@3mjCoAS=M9b->4mWn>QX}6W?e@Oo$rZaDb?jGQpsg_YgmzQVR zHZn7O#CDGyb@vyp=Chbq5LyJ~ArLh2v#_aj3aIpJf43e#(J{HdI!;jEzqrLSfE2;~ zU`tCeHx-v#lG_^ObOS1n?HBz5LdDu952}h0s0*Lj5eiqrVV;75M79Vv|44FGa&%f3 zbAEVmSFSKYswq}82|;71?odx2v1WzWp&S4l`iP}M1mtkhaA3dg@9r6yPOaKo3NjSO z(Y8`o%)N)Hk~x^I6&-SoOaYg}p``aT;NQq9`$~c($VTvzKBDn= zJn0wP4r6aVf||y&;;s?m+_Thg-cc?v9202Bs;SNvypm$zbb745T9}qoXd`x?KVg{p zz*TnHSg8;q-%N!`@WjJ{w!Q{wBZKv@N}d(6#%Nefc_31GV}(arQUE(7e{g6XHFsF~ zBC(>M8#W6C?rdW_$UCj7lCc)^GA~1g1)pJJfR;RFYGPk+U&itpR&e0`JNQ<>^rTg)0yc1iD-C( zp1ttf>_;J|5@tiPdvx5?1jRiNNaXM;*4|xB1XP2a1{!unMs-fo>eVHg;x4~crD{z; zt-=$C7gKVpzs*(d@#fJS8BQf3!Q7eA*SQf8nQZW3eXx7J>}B z@+X+v{muKJW?n?fk=yN0uMx`e#K!1oEp@)tvrN&Iw zcy(sm-=2Z0-oM>1e$6tJA+U2`!!$w( zm*qO2N%LB1>_1?)8=B*`IHR-v@*|GuGp-=rVlW_J^mEWe7vW4}Ny&FmDfw*@1z898 zUADF*$Kl#*imL|p^OG9{0et@$-ip?~c$ebKE;KxXsS1Oh=&J-~ggbkfon=>OAQBla z7_K}98Dq|MfH;;(6qUy7NBbVleW&N2pA}_JBe;*fnc-)mC$2Vupvfeg{E-2()$s)B z_gF#0Z=bWTRd65=9QG5L_-LN$NK&@|wvKgbKsaqTOpZ7n^0lsM5ua)=wX5!-`nd%jiO|d*07NLXQ>Bgx1 zUX6cCH#f0cwY9{ptpXacSi=z5rEn^6WLKqd!)^qK9m?l(7d$eOo2}ShBHn9zhA!&CE-#`ZNXXpn)bZ)X!4PwqlAj8Mi z>26voCj2aii`SQK1B=Vz_}9KY%v9-zf#aGCQX}V7b=uQ@Bb8<*p#$83TEb}$#xte{ z#a+hAzI0S$^?lT){L?@UXtJb>o-$=LEc+BgeMSU9z;7{8-N08bT>$jGFDimxrY_OPI9m>b8sV={pAUux%3lY=ed@bp3cmL)5DW* zUnH14reVb@P8@L@FY_A>m(=btjAFf$I3{3%Z4R5c*cPl;c!Zd2bsl++Vlm7HHvs!;fqE=j@cu0GTZ^Sa?7(6TPsA_+{Mn%-le0Mf=Z_yAuiV&3S#9A zaWH;iw1r^%xicG7!;q=f`&UyFWUU~>yz6r0h^bC`lyiP5z2=mo=;{3($a68-5TnuF z)xn*eE&3qs@;Z+DD=A#9qlmFi<_#cJl7~D2CCkz>o8qBo$oECmB?e- za|Op}RXV#OGyISr-$?_7U&P#G`!tbX9jxmA0C|zaShnlf$@Yu(FBYRTLddjM6fHHBDnDs+dh_YZ=bD5GvH3FNAo+3u^st+pdiz zIuxiXCB`^+W$}?pf^M^Twh){+7OXMUIc4&6sJb!#-Q1{UNUCo`#&FYUIlCA(D4)vb zewrUe)$hE7S=K)*d=`P^x3?V6HEeZ?x-wsngfHe5VZMD9U|+_CIw4E7wu4hf*0}8z z%o+Tu2(n}}j_B`VUlyYK#DCG$ZiGy?u9dk+br4ZazM&szZ8_xe)3A6dU6t&85_hxL7s=Z}#8u;m>z+e!UlFHfyjy>;+F4n%)ExysK_x!wB zTY3^zRT}oCJ>plL7=e;lS2V3z) z74&AB)|fb9JRdba=VXcHfOI){7v<>(8EGk4-|8k84#+3*2;}OhU-W6;hLwD3HR_f= z7&<093)n}dlre}35KV^X`z!HJ@a#rPj#sOW)+k65S(bLC+!o9Ay6>JgdX3xx+l>{~ zth8Fs&*qEScMW+(mKuh&x?VuImQWZp+sC&p37NQKFuP)T4>?h{U#~B9# znYK(m@ny>gTEBr#-?DaE$=9Y#hxAw+Az?gZ)w_7ch?&@#k^W~nJ)Y*@ebfbG^x4Uos#K|ZqimoVDzlDQ*9uIdcri}*{r5cK&f z>*v#}#C^)=qmE3k`|}IBnyJ_r-CbU4j9l)4<0mR ziAqpo>S5G3pRJ@*)U?(HF4AY&PD5)}QeJkcamht9YH-H$nmBE92}&2RQb{iHl>hHT zZ+AQ-W-c~?z+GkXfyv&6$;jfTJ&A->IXXj{!>2*RZ&9Js6FF$jhA;jYs}|CYAMSL^ zS5Q6nk8rJSf16}GDa=n4TAT{(N8zDaQwL`B5CKF&>twe9*$BTzx82c!SHM9yKJ&2x zDTE=Bt??Gg_6=B_<*s9iAk@q=@5{{#7E77ryT^>&07XD@4bqrFOGpokAKJj8$qJ$GotiI}fLqw*JNj(sP6QgRyIu{NJ$)kvgz zDT!{CXIODH+C4@mowSD^`FEDpC?($fqT}mSh|te;E90}Lb*DPhL)t`yS&M17_PMV? zdUwl}y}Z&>Uou-$s*2Nl#nfs;L~($uVR-A<=nScFs%qtqbm(mrrQOJCMswVSd9U@y z1-|PXg|TgCX~)j<)H=iYYFH4 zH8@T0h{L_za0imC#_`2p0bK{gB&?J95X}teY0x3Rp8q~N%8kd87~m|U3L7Oyf`&s0 z;;I*I^i zH2pE_ueWI7wOXaYT~kk26nfe# z?+}aVLl;zSqPH?<@Td?%mxWh$uc;_X&`iO#LA_U|HvS<^thaKcqk^}4)wo1YEZ12J zp424eX{V~Tm~T~_Fg{b+m;d1GF1#@WZyN;CMpez2>L9yl=8YXyY64$jpFczpJxCiW@cC54nPCD^TZ zTD<2r&JR}!NRZ)wtfNfbQeJfu`C6pFnvl{#GRfFzcns(Wii7Kc1?8?9j@6R8Dj&mR zmBeN&)?tehocmH8R?GtzUQOG^p}T@#z^bfRw(WolY3H1;x*z1G@SgzT zA-ea$&bnw^3t@0t zH;foq%N^tjX9{t)U@podxCm~zvyMH1z3s}=zwu93-Sf22^UrwirU5 zUuNF@j8>CEO?}6?4o2RP%~lSZ@_5sEO`+P)LfLPed>>;P#03`lAdBJSsTDL4vjIX3 zx98C<12~i#&~eaNz(F!;)8+?Mg-E&mDvCvknuY`m8|vvJCZ9w679}W!E>382sN9ii zC;JPjIwNPOu=8Z>N5vtP5C=ObZ_-#w5c79qZ^HDxo@y_Bo}eCBp`I6xd8~*t+RjHs zvx{plvWNfT%uq%sYW;3Nsk~TPno{!C*-O5PXxS#(0=3_#wP+2SKx9_a!BwRQ_uRd? z6PSK4W0Kn0zREE2Ct%uabO)~;0Jo7C64>Dr*fk1DE3jl5a;STgSiiYPMuffe(FoaN zmWh68$1*1lF?kVRgsXs;Ct`>OddFjBMEeZ%tOwN{;9~4TuZP_6As~TzZ+Omo z^4iHD9(~BHav?18N23aZ+GkVEZP^%hFe^OvcuF~|^P;kl_Wvc05_H>uOj7x5b zKG}SGIY1%wpx6ndAnP_Mj4wVO_}QM!;ul!r+128m#6!`;9|p20FMO1e01DjKN?i zBR067JRh#n!)B>|8?;}%mT_*LRb9-EORl1xU!F9EdIef8XXfVwp`G;Lq z0_EbBv8gaGT~3oh7xMKs%C2D{*+#J&FW?0GUF(Lw(KYy|wT}FZWd(^OohJ{Je(usm zUOzfy-4w97P3_gP(9p5r#7bz3!M|=-u|`c3n&>Gr#aJ_f(^FeFmytkhAPK@3E<^p$Fd_zfyYxovuQ&dWhmvc$vlVen3nG*)R-|$7zXrOk z#A5WwIOxJDE&m(XiG=5bV`c*K6)5Df8VN9-UWeoOehzPhg~1$9GB@0-uMm=_J51mF zYlbW~cPWkwK3|86L)Q^Pk7kh5f823ZXRp`0?t+)-J+>2+G17BXF#A!R0*hLLZ1a<)myHwpFBv5=$du$}l7g#*KHMg-%wcQe$?XdFwrm%Hebf*uJiAav@_h z(0bqHkr34s+5@Zukl2iN0^4ziMI&xZR1iy2$?Ls-R#8V*tLD_OMx-BO7N({?SV62^ zT6DAU_pz+CfhRFuvcv~+ugwEL7G0aHVbn9`^PYvv;sLsht%DeR;>b<WM;7-kAT?9 zAJ5h0@VzN!W8)R}@}x*3M$ zwZvW0ploExI#=MbvSe}Oa!b#_szCsf!=IRhk972#RX7v|HcDD!Sjm*hKJ@j7dpq$F zRU?@g`z-puB=c(Bu_KjJF%Im9sF^zl(!B6!T|O}Drm)BG9;DpWXFWl~DXy2{Te4S) zReS}!9FB1I)@{^{0UUFR9VhBlBZ7707U`X<#4&kp3Qz$qYkxp^<;L7$P^}L3mPWlp zb-*7yDK(~JmaT`FuC%Cr(qo}tegIXbbhKwy_CVdnHV)tM?Dsg8Z)xsRo09^b$kF9C zCsZL!z_hA$3>lZajm0qYf>KAQYt)?lu-IDoduPhla|Hc26TkxAlVZOoiIV&;3O@srp# zxW(?jUMj8+Oi=UQWiu+IL+B&J*t};8_Ot7zmO>*tF5{4JthqpAs?E1VZQpfX+_ z(kkD*59?UW*TcQfY>cG7M;1h(xx6l%*-@j4#=KygrHnM_NyZBzPF`H0^qNV?}#*J{o$0v9^C{LackH&>ebyx$li zSf7Hq+sPIS*?#f-4PUL?G<7%g);s^K)g`M)T z#dK5*={~Q3le4&S`-B3+M}|#o>$OYZ_%x_M4zjf|oi~#dyL`*dW|Ctg4PH9S#b|9d z&0K5*;!~}4{n2uZ6z5Sx^?q9k4654NTbRbaf|yOzp5W>xMr@ z?N}p8J@tqa0XX>Meq{nom1R2(SI15r7h-ei;k>Z~7ix8fia4MB&tjLq3h2nJbsI_0 z?BXs7KZ(@~`7l>WO3NPgiz*vuKn{Q)V@X`pq>@@0BC(Rg8~vyjZ`-)9lvFTU_p4ZB!*T$CVu1~`kV75`HIT8hWW>>x+s|IpunmxF z6QwcsxDgjow+p{>%i)V~5vj-#Fg|jbz&~cWe9LS8mZEu%lFlUqm&1OdMg)F3EoF>f zBNxS}hmogAH42%2ffJPfx;*KV6s?j%RObX<>ViVWu+j~Rvu}9{dU_zbbd$S9s<1DvAxy|Lqwr<})sKP%v7nJ7U7 z+@nOecQz=xL&eTCE};*GT6u9e%D?2Soz*!t5M7io5YVMM?PJB$%1KSJb9D?VBXW zJ*7rNr@P{ZI`RShbgXO6*QE7E_X|e?8)h~ahDeqphMv%_N{k(~pmA2!swLc2^DJ+N z$Haw|Xf^FyKqGfK&m7dW<}jMwic$83Gmh`9Rt(e%-R42d-0hKxpQ~~0ri0l~C)sRV zY(LX+87pOkUOHyXnyDrI zqNX5ifERjh+Vt^E^W!BOXgF%}HcLy8`GBF=cK`tyU(7LH_lo6?L3`U+{DvJA}M=8bNMI9ZRFbuIx+~KoiLh0XL2|WTa#4H6XBdQIjsA^!ZLK>?Ldt1 z@Diu-q^`4>OpO!#bZv>5?`){g7p`5N{hrFsvqK&eJJH*=MTxL|W0r;kkFmW%lmgmf z#@vDT+9aI+M%E2?I|_gXjbD;@=$XV9%;Pu|DK4sE2IDxk=I~fDFK{8*voijaB-{9$lC_S#@X^_rN!NPl zb8Qz*f0@8MNUSQ6itF}^yEgX)JGs_piKEYW_~##?E<=u*(8{t-hBocu41U1T&xNuy zpkMftjw}4_M6>Hl(?Ia`Z9>}dlDwQ-LW6cBR#%y<2Q!&T3)A3cCn$s}s4i7EIG%+6 zy#DhAuQiZ_7&Ssm>tmJ-_+DcUp0Q#YWIV%!2#8nbKaqcv?rWkMV15&vC?tA-9{rg4 zA(ksmyym$kTgQaj-RA{h9+fz2%(W?0;uxFRI!g`9Z$v%7~c%~ zGgE6t1ym8h-4mzUDo}OMOoR7XA*!70c_!n98+-{8a1#^VCNfQ2dv-zv%jryRm)sKD z#bg7XNzu!s+sL0F>!7g$*=k{AdG9moRlo^6`Q!!FVH>0(tn?0468W&nq8ienX9wf^ zWB%|!9u`OU6Ht|;tgs1o!h^GZWSl792Bv(sq-OesxzKHD0(+#4-?n!?buhI%Tj6lx z_ozBCzWmNi0QuU|;t|@|EA+BFd9d$m5GOfq38CB;tucX95x{=0GMyi1->MUefO6G{K(nX(qb^|e zq@Ji*SPfz{1{w7b015=9Dp~RDbyNVze7GiX9ceB=@wjRv-VRSDV|ZIqN#~wSizM&0 zeFp+aFFKF9ea1g{Tar_1KUV(ImN|@dCael&mrYs@TUK61)G7esHTx?Z4fjy@0H6lY zPncBZ@`apBA{RE;iWn8xz!A0MtUh*g7%ET40GFrDUqd_S8X<^v@>HH-O=A7a9W%V+ zD3_=X7^|uw?vmLWdbfG1n23d90sRlaZNG(>t*)gO{u?Y@>B>H*4S24^U?tY`9pY!( zhoUt~6fO-BR-PLnp4sM88TAxoD16Qz)y-ElxcxY>QxVRX(~R`CiiQeNvyM{6*GDa9 z9AyWH=OGk8*>DeuL@<0E6h%Nc5`uDsRkt}N4 zew(r(8Q>BKJzA?Ru*sQ|j|bpDtK5~LQn#J!!sMQ3rS4I@ad$9Fk-LpWZ!`-?#(i-26!B_6EGyd`C-)V*2 zjP5!nr+74`OB&vKKQZK3mxa)zTKQc3eJwS9MQ?tyj?81*hHq~ddTf~-Pvlj^chx0| z@R$Ui3Rw&o64RuNtpiX2esuXB;TMikVY`5PI75z^oij&{ci)ufi0?uREhqW+K{N6x z1irWFkb`erZ78=VUE9ZYAVp!9?r#%?GM=B-*K}61;Y=aSC}AOG#aB}0K;ei8Ek4m> zYF4Iai~BRHmfHz_$4%ygBQ^rr9wy|PGBrv2FFrqx#7OAmI)5&XVz(HmOQ`yPwu-n_ z_2(&^E!OT1t>^M(ktN2US;HRWA(rz#=`=;{H+{a`Bu8Df{-u#PZ0`&;K$h*A5Mb~? zh&qAv=K@DYx(8K*Sl)SSMYjuXHT$%xOGwj99qWYaWm z&xAf{S3dLkd3a3oP?p&_z)e;Z|KK|B7Pp=X*lQUzu|H5N_QST{6)=w*LSLxkAuN&4 zIQqLE{*)52bTtUrUbVjiSWdjXswo<9gNetFk|h=8xKe}tXh-ni^aVY9Oi4>gX~`!s zoWe^2R_))Lw}WN5)c=4&ZRitfnSm(Ql96;%Gea?0;|}Sdg+e?WDaP;UIRo64h!?#3 zXx~P_o_~PL7vaM~N%n@%89Jswy-s5-;@pd}_-CAcSwf}!bjaR@-FzvNLRq^h5yv8P z$P^+Y@R&{lD!`#5?o>4EJCRw7gfqQxN@b%%7(yn=;dC8J5xbjQboxLA+o7i<%PiR) z#fK14*a5iV^5ShE@m{ei2+80=U)eK_2WOv+;Sb6{%YY@zN8P1W12IJ)gPxJ79~pmHv%Zx?(wt*cIxF z1gZ2_^L=RNUCM9BCS74rV z2>9KWbl{j`_XmUv(>`rze3S}}#dUZY{S;#WQF_a2;1mL3CJuOCLH zncZk9zTGec*0E7#)l-uNlHruZj(;ULmx1)49Sm|{V!xhmzMUTdyn5$h5`>Y<9o$hL zV5ai)d~=WU^B$;AOu=_u3HfbYEN%VbI`7T`15WSP@9Ko!Uo;}U!?%yteA)TpaLe&P zQ7UcDcHqt&e&ANw5@=6+DAUDag!tWUOoC`|7?^H;pwjh6Z(BSdOJwUqU1=)9l}5oM zAxg{x_u?R)yVT6Q4@sRr0=YDK2cT#ru37x$+7nE~1t|d{W(4O{Gr$|K3g-W=%jG20 zD}43>j&~KsV!=i8$S6M|ME*&jDA+0R0v=|^zBOJGJ4sie6w$a902+-RCU*vX zN5wR?WJuL3Q3m}lW3>9tmM+H=1N+;?;{$3lP~w+dlBLaEvLdxKRD7jC^{o10M$zj$ zJ$O`bunYinneK-|TO%vczVxvAcW6?*0o}h5?Con-SS^8T4;)G)DHH%;sybF<;peA1 z4WJSeJ+Tw!$`frwLC6#_Vxu}f2!PO z3A9dIB2!2e!^6v@wv9y}Nz}gE1@cDmGTe5;5^<*_o`W>HQ_bwDCYl(y z;A8AWV%tXw7*FU!UhUo09}*=@8J{^p2cI4m-)d5lHk6GY@2?1QJqc0*xZAoT5_*P( zR4t(h5)nub-lbDOo@dsm`Dp0wlF78uA5iaczZa`MfntgiqUJoh^7Qs*6io!*KcOvx zxwBayZd2P&MA>wBJR|7|GE)M^@$1XVVkHk%)S>z7KyxJ!V-u*O9s09ksBpW5w?dq> znE7CUJH_7eYoY;@Ty2XbvC<(d4@8|r_RvFC1~cRC7J!Me{vQ3&NOwsPk=QVR&WUL< zUvLmhQ#YjZAKR%}2KiBmJ}ta05F}wlQ`A%kvRU;WIpL7@FF+93wdVc44P0bI5SS4p78{!>MHQf_he(8M-M_^alP6>v;Lc( zsdlyS+dr+}vAS3JXMdHth%aQZJ!WKlA@Q;`J{JM-pal@bO2gl`h9`#6?4Yo5{73

IdkWgv)VS3k|y2_UB-F%@bc* z05C4i?`|W*XE~-8%C?C>%k?pHZh@VDUlbnrDTHQfnsvNA&1A_2C{KWrM@CtNctL!t zylz6)2dJH!wkQhT&)xCk+mhEpk@b+L&1wSOkB#@YM{{m}v|EM?G^uVhEdi+5YB)Mw z?Li>`+*|Yk1ITbw@<57;N*SS4M-jN{=CRnmG(gV2;=>7etXk{HmP~r-kQVm0)bNMG zM(^7qwq~W07K5$|ley|naaNZn$q!|GUCw$ z$F^L!@(jP(rEap`pR!sw-g<$t1!hsU5QLKV$>#)+sMkkwavBce@Ry@v<=U1u)$4eP zGn)N3f1Y+ALko25bhzwz1dw+-I0**D^#VDY_E3a=EmB}+igx<3P`#tWAW$ffZsjiH z!NOW;42ow=`;ho%0L3SVe->Ui7I`Kb+P(JL8NU~H^TrtgpQ{iNy=N9zVA=b!!u z^Rd>4*sdEKuTq12g!nFb|Ne9xbWFIYzK^FT1sI)f2f$$|q5JPLAPA__m1hWrjpj!h zNB8Xe*QFScLr7iOEO0HB96!ZRO;?&}TI4YD>NJ&V#V(d6O4UG;TJ!eU%dmS--$JxMM8s3Gmlm3W}VQp6Z%A?lXBow*rd} z6iawm@dK~}*eo2NH(yQLuXqhp@-nKteRu?xfw=ZFQ)any*=!91o7FwGClp|U0AG$D zAq0UB^%)3qbl9$DHs5w5fe)NTutB3HjNMA><%%R^|y0?T~Q9Q5Ps$CcE-w8Ir0i^Ks#P2YTBI z^AWHa|9<2D{>K4(7<~e#KLMhf58vUkES~Hp4NYKdx71WqbUUF z{v)ZvtRDs6UH)~a{ChzD`yb~Nc4sw%2k=pNqQKem>qRG!vjRSsDgnxIO`wPoP!$&Z zg$C3F($KE-EB+bK|NisQBA&2YXlFnNS02G@fITzLLq*_rjD2nc-K(}DON9G2>zh>qC z^pP}3f!AQg{(=6_FTqCeYcT->`V=<9IU&SpXFvkR@bw@`*58+|_ZK5UtjnnXX$1fE zAsES7ToJQDK4)1_VPg+ujd1|5rBpFqdlU&E60n4H`^W$H?=}W|1$a8rAY1Sr2&zyE zTIT^fuDnAp5;w!b=j)CCYjpl=FsH~NP^@dp^}}0%U3feo%;YaSWsPx{zo~kEt{MiB zboPFu_}IC4tL_2pY=axkANQKWHG{HEH+<9hyVOG#HdS_Wfk!N;=SDE^IL4B*N>=*a;Jqm9 zJZnSc0scSTIKVND48m~~ERD=ezu`YmILDywwPmn0dZ&(>|KXbdJy8(Bz|Fysw#eKt z{`06Fp#!gR4y#N)|G#g(|L+C^L$!mM0web4{{26#VE;@OKPJ#4J^9FE`TwVn(*fZJ z>;m3pB=e@jPknx)rEo*x4!#4oBERkU!vh~g5bU2dUD$}P|NE!|`%U13iV99#@ZSP; zE)L$~{DgQAh?Exy#z_D@`?U*zgex6~qnr?G{)=W~hric@H1BVh@0sfqHz@B{D8m47=_;EKaR~jGPz`!LfzUb{P}2DGW9DN!&C@0D2KA*s z-VT2#>H`NMYS2F926zkMC*YQ=&IRIhy?|gh)8zfiuK*D27M+uhUe@@Vc(3uZRJNCc#qdB7k+OW(O*#i393QvL zy#x;uk1^!wcX5ECqp$;T@KHiQaXuOtf;U@CA)`D%0QUXv5eTWu14W+_LJv$HfnfGW zz>Y{*$~@Ek;7GyNkm3mOqnonXG|s&SX_E9!ma_w-($X1XXeub(2`8CfIpSoc~|gH7L*DPAyH7kw2A?g zsnu4ktAVb&-edo$E7ZuqezV|KbBlK9GqJMt9ZoBha?Dtxdlj8mdpxk7Fz^C7#PJ^l zw!nu$9yNix925ngKfNS{=;#Et?e^$g{lh0^Rha-!fpr*(do9-G3D9RN+yLx!!Hr&KL*^iRsF%5mZ{+*C5+`r^{)(9;s8q$)Tv>!Fw%;&>XU5}(9P zKH+#vOR8kBPx^OEZp?0cHqSD5-!St*=v!v5%W_}5)T?_)dv8D0%do3GTWzXxe*)4E z>YU!D5_58L900T1PvdA_GZQHB!x(MtIx_{JhGI3q;XD{kv=5xl=%h%zo!D>8R~v2i zfomncB@{;eCYBxL?Re;0IhHBdw!Fx!Rh^CZ8?VZkY^t!^q-lTnVscd%rva|-fpD-B zm?OLPhiJgdRBgTFe%5#`M{BU3R^90+B&@`#}Ac>6*;Y zEmio353k#mLD-e~^WE`&%V8!xaAV$F^-{e501n0b0KD%b2!S}{{T-Eu5Mnf$nVBZj z&FEG&L&a(zc%ahb=sBr80sDdUb1wg1+f)$Q6GNE?gA+%M4)f}oNWvU9?|zUUWX(Br z9aol?&9l~jiE??#E)ONFkxu!G5WE}!MdLE@C3m13#o^}@SWv^X6- zWyA^;Hj}OvNFRUKkjI%Wlxy$zq6l*o&Er}K*E6!D+VEQa*m!6y5q5*H z_d>lj`@T|NqWuKxxwB;C7PfnEVSI4$*nQ==`+nh(N8*?+k`A%HYWiq@>y`!H_BcK* zlm)(eRM`;*|$2LDH#9O zWL4GC=rnPCc~4JF5laWUq_R~(;2A+hEg2&t_tocVzt;2dBJMMeDnSLVpFI?H9i#ch zRp1mvi zT$F@Gukmw2ywG%iBr(L;xqSc(LEcPfVj~NMrAu82JCxa<{BKxUa3;XQqnK}tNjGkb z*$vgA_CV<~#+Z*7WPn=1O!?M!wvi$F%h)fUKFDr^Bq|*Oy0b62iy6Y>3M&FR>3kMd*3npwIL6+?}e^Sjr)Gs24u$x z6{j{H1O~i(y&kX>@l1Cvn|H&dqKra*-tjjM*-vaA64oa@@YQPizMi!}(YYKtt7nA1 zocx>Muu6_MITLVMf4hiA!(dHgtUN<&n{OuHSg6oR zrw@yI6KsMrL8z~>1)01?0VT$AWNbu>?@s+DsHxR& zFrK%%$G-I~>cJMlcZHj{SThvmxBZ2ARm%?;_`Z?1Jm{Uf>S;|#z-Nh}i5X%0)Y?1Q zb=#IHmd)rle35Rf55MZ5(~)~&0!7`%sATp-DD~lq2;x0Tl|F_qijaf&?4_3if|ZK*6Db0m3l&!1Rnk>W41_lnmR!U(>aIXcSFQEqHLCaZ~B*Ys>CjxDXJz zA;EDc@Z82zz&iH+XVp4jE4%2!gM-h0+RlIB2#st9ZzeZ}tt_i`Ad!Bdp6Pzw?_A)$ z&*7(l8Rs@o{#*a~tMqR|Bt`m-|1L~x5Ol~rxyl=2FHg&X)akKd z-`?K7zUDP>N`nuSsz=l}+> zk@3R+>-Sd+L-_`c{dT`rNPZMvT&;AYv$D=C_tup)N85O%y<$FU>v78$|34zMynSuV z&P|}ZU{c@R+4=M!yS&b9^ZY!u);`Wf$|jp&IsBH`j8E&&UHaC&!XKJ=Bt#k|z6$?; zG-bm@?-I- z1UN8+BreYoLMu=m6oMTXrmS2khAzIq3Fy{QPrxI0G$xQ!?Pzj>6?)*ZU^HW+w8utE zCwQ>|VvH8CkQNLiP#Q-oJ7@zBl4nM1Y*;f4ls-nA9jGn0(PqbJvtwZM#1HegwR?GA SvZq-x0D-5gpUXO@geCw?+EFS1 literal 0 HcmV?d00001 diff --git a/vignettes/tidyhydat_an_introduction.Rmd b/vignettes/tidyhydat_an_introduction.Rmd index 4568283..f06e7d4 100644 --- a/vignettes/tidyhydat_an_introduction.Rmd +++ b/vignettes/tidyhydat_an_introduction.Rmd @@ -206,14 +206,15 @@ realtime_ws(station_number = "08MF005", end_date = Sys.Date()) ``` -## Historical web service functions -For smaller queries where downloading the entire HYDAT database is unnecessary, `tidyhydat` provides web service functions that access historical daily data directly from ECCC. These functions are particularly useful when you need data for only a few stations or a limited time period: +## Using the web service without HYDAT +For smaller queries where downloading the entire HYDAT database is unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with `hydat_path = FALSE` to access historical daily data directly from ECCC's web service. These are particularly useful when you need data for only a few stations or a limited time period: -### Historical flows and levels - `ws_daily_flows()` and `ws_daily_levels()` +### Historical flows and levels via web service These functions download historical daily data without requiring HYDAT. Both require a date range to be specified: ``` r -ws_daily_flows(station_number = "08MF005", +hy_daily_flows(station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31") ``` @@ -221,7 +222,8 @@ ws_daily_flows(station_number = "08MF005", Similarly for water levels: ``` r -ws_daily_levels(station_number = "08NL071", +hy_daily_levels(station_number = "08NL071", + hydat_path = FALSE, start_date = "2019-01-01", end_date = "2019-12-31") ``` @@ -229,11 +231,21 @@ ws_daily_levels(station_number = "08NL071", Multiple stations can be queried in a single call: ``` r -ws_daily_flows(station_number = c("08MF005", "08NL071"), +hy_daily_flows(station_number = c("08MF005", "08NL071"), + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31") ``` +## Combining validated and provisional data +The `available_flows()` and `available_levels()` functions combine validated historical data with provisional real-time data to provide a complete record: + +``` r +available_flows(station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date()) +``` + ## Search functions You can also make use of auxiliary functions in `tidyhydat` called `search_stn_name()` and `search_stn_number()` to look for matches when you know part of a name of a station. For example: From 650175fb308b05084f422c54c84c8427d4334f76 Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Mon, 8 Dec 2025 15:50:57 -0800 Subject: [PATCH 4/9] classes and methods --- NAMESPACE | 2 + R/available-classes.R | 261 ++++++++++++++++++++++++ R/available.R | 23 ++- man/available_flows.Rd | 6 +- man/available_levels.Rd | 6 +- man/plot.Rd | 17 +- tests/testthat/test-available-classes.R | 121 +++++++++++ 7 files changed, 422 insertions(+), 14 deletions(-) create mode 100644 R/available-classes.R create mode 100644 tests/testthat/test-available-classes.R diff --git a/NAMESPACE b/NAMESPACE index 99a97be..8de95c6 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,7 +1,9 @@ # Generated by roxygen2: do not edit by hand +S3method(plot,available) S3method(plot,hy) S3method(plot,realtime) +S3method(print,available) S3method(print,hy) S3method(print,realtime) S3method(print,ws) diff --git a/R/available-classes.R b/R/available-classes.R new file mode 100644 index 0000000..a25c7f6 --- /dev/null +++ b/R/available-classes.R @@ -0,0 +1,261 @@ +# Copyright 2025 Hakai Institute +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and limitations under the License. + +## Add "available" class for combined validated + provisional data +as.available <- function(x) { + class(x) <- c("available", setdiff(class(x), "available")) + t <- Sys.time() + attr(t, "tzone") <- "UTC" + attr(x, "query_time") <- t + + x +} + +#' @export +print.available <- function(x, ...) { + cat(paste(" Queried on:", attributes(x)$query_time, "(UTC)\n")) + + ## Historical data source + hist_source <- attributes(x)$historical_source + if (!is.null(hist_source) && !is.na(hist_source)) { + cat(paste0(" Historical data source: ", hist_source, "\n")) + } + + ## Date range by approval status + if ("Date" %in% names(x) && "Approval" %in% names(x)) { + ## Final/validated data range + final_data <- x[x$Approval == "final" & !is.na(x$Approval), ] + if (nrow(final_data) > 0) { + final_range <- paste0( + range(as.Date(final_data$Date), na.rm = TRUE), + collapse = " to " + ) + cat(paste0(" Final data range: ", final_range, "\n")) + } else { + cat(crayon::yellow(" Final data range: No final data\n")) + } + + ## Provisional data range + prov_data <- x[x$Approval == "provisional" & !is.na(x$Approval), ] + if (nrow(prov_data) > 0) { + prov_range <- paste0( + range(as.Date(prov_data$Date), na.rm = TRUE), + collapse = " to " + ) + cat(paste0(" Provisional data range: ", prov_range, "\n")) + } else { + cat(crayon::yellow(" Provisional data range: No provisional data\n")) + } + + ## Overall date range + overall_range <- paste0( + range(as.Date(x$Date), na.rm = TRUE), + collapse = " to " + ) + cat(paste0(" Overall date range: ", overall_range, "\n")) + } + + ## Data source breakdown + if ("Approval" %in% names(x)) { + approval_counts <- table(x$Approval) + cat(" Records by approval status:\n") + for (status in names(approval_counts)) { + count <- format(approval_counts[status], big.mark = ",") + cat(paste0(" ", status, ": ", count, "\n")) + } + } + + ## Station coverage + if ("STATION_NUMBER" %in% names(x)) { + n_stns <- format(dplyr::n_distinct(x$STATION_NUMBER), big.mark = ",") + cat(paste0(" Station(s) returned: ", n_stns, "\n")) + + differ <- attributes(x)$missed_stns + if (!is.null(differ) && length(differ) > 0) { + cat(" Stations requested but not returned: \n") + if (length(differ) > 10) { + cat(crayon::cyan( + " More than 10 stations requested but not returned.\n" + )) + } else { + cat(crayon::cyan(paste0(" ", paste0(differ, collapse = " "), "\n"))) + } + } else if (!is.null(differ)) { + cat(crayon::cyan(" All stations successfully retrieved.\n")) + } + } + + ## Parameter info + if ("Parameter" %in% names(x)) { + cat(paste0( + " Parameter(s): ", + paste0(unique(x$Parameter), collapse = "/"), + "\n" + )) + } + + print(dplyr::as_tibble(x), ...) +} + +#' Plot available data (final + provisional) +#' +#' This method plots combined final and provisional data, visually distinguishing +#' between validated (final) and provisional records. +#' +#' @param x Object created by `available_flows()` or `available_levels()` +#' @param ... passed to [plot()] +#' +#' @method plot available +#' @name plot +#' +#' @examples +#' \dontrun{ +#' # One station +#' flows <- available_flows("08MF005") +#' plot(flows) +#' } +#' +#' @export +#' +plot.available <- function(x = NULL, ...) { + if (!all(c("STATION_NUMBER", "Date", "Parameter", "Value", "Approval") %in% names(x))) { + stop("plot.available requires STATION_NUMBER, Date, Parameter, Value, and Approval columns", call. = FALSE) + } + + ### Join with meta data to get station name + hydf <- dplyr::left_join( + x, + suppressMessages(tidyhydat::allstations), + by = c("STATION_NUMBER") + ) + + hydf$STATION <- paste(hydf$STATION_NAME, hydf$STATION_NUMBER, sep = " - ") + hydf$STATION <- factor(hydf$STATION) + + num_stns <- length(unique(hydf$STATION)) + + if (num_stns > 4L) { + stop("You are trying to plot more than four stations at once.", call. = FALSE) + } + + if (num_stns > 2L) { + m <- matrix(c(1, 1, 2, 3, 4, 5, 6, 6), nrow = 4, ncol = 2, byrow = TRUE) + graphics::layout(mat = m, heights = c(0.1, 0.35, 0.35, 0.2)) + } + + if (num_stns == 2L) { + m <- matrix(c(1, 1, 2, 3, 4, 4), nrow = 3, ncol = 2, byrow = TRUE) + graphics::layout(mat = m, heights = c(0.2, 0.6, 0.2)) + } + + if (num_stns == 1L) { + m <- matrix(c(1, 2, 3), nrow = 3, ncol = 1, byrow = TRUE) + graphics::layout(mat = m, heights = c(0.2, 0.6, 0.2)) + } + + graphics::par(mar = c(1, 1, 1, 1)) + graphics::plot.new() + graphics::text( + 0.5, + 0.5, + "Water Survey of Canada Gauges\n(Final + Provisional Data)", + cex = 2, + font = 2 + ) + + for (i in seq_along(unique(hydf$STATION))) { + graphics::par( + mar = c(4, 5, 2, 1), + mgp = c(3.1, 0.4, 0), + las = 1, + tck = -.01, + xaxs = "i", + yaxs = "i" + ) + + station_data <- hydf[hydf$STATION == unique(hydf$STATION)[i], ] + + ## Plot final data first + final_data <- station_data[station_data$Approval == "final", ] + provisional_data <- station_data[station_data$Approval == "provisional", ] + + graphics::plot( + Value ~ Date, + data = station_data, + xlab = "Date", + ylab = eval(parse(text = label_helper(unique(hydf$Parameter)))), + axes = FALSE, + type = "n", + ylim = c(0, max(station_data$Value, na.rm = TRUE)), + frame.plot = TRUE, + ... + ) + + ## Plot final data in dark color + if (nrow(final_data) > 0) { + graphics::points( + Value ~ Date, + data = final_data, + pch = 20, + cex = 0.75, + col = "#000000" + ) + } + + ## Plot provisional data in lighter color + if (nrow(provisional_data) > 0) { + graphics::points( + Value ~ Date, + data = provisional_data, + pch = 20, + cex = 0.75, + col = "#82D6FF" + ) + } + + at_y <- utils::head(pretty(station_data$Value), -1) + graphics::mtext( + side = 2, + text = at_y, + at = at_y, + col = "grey20", + line = 1, + cex = 0.75 + ) + + at_x <- utils::tail(utils::head(pretty(station_data$Date), -1), -1) + graphics::mtext( + side = 1, + text = format(at_x, "%Y"), + at = at_x, + col = "grey20", + line = 1, + cex = 0.75 + ) + + graphics::title(main = paste0(unique(hydf$STATION)[i]), cex.main = 1.1) + } + + ## Legend + graphics::plot(1, type = "n", axes = FALSE, xlab = "", ylab = "") + graphics::legend( + x = "center", + legend = c("Final (validated)", "Provisional"), + pch = 20, + col = c("#000000", "#82D6FF"), + bty = "n", + cex = 1.2, + horiz = TRUE + ) + + invisible(TRUE) +} diff --git a/R/available.R b/R/available.R index 90500d1..7bd725f 100644 --- a/R/available.R +++ b/R/available.R @@ -46,14 +46,16 @@ #' The `Approval` column uses ECCC's terminology #' (see \url{https://wateroffice.ec.gc.ca/contactus/faq_e.html}): #' -#' - **"final"**: Historical data from HYDAT or web service that has been approved by ECCC. +#' - **"final"**: Historical data from HYDAT or web service that has been approved by ECCC. #' #' - **"provisional"**: Real-time data from the web service representing the best #' available measurements, but subject to revision and not yet approved by ECCC. #' #' -#' @return A tibble combining final and provisional data with an additional -#' `Approval` column indicating whether each record is "final" or "provisional". +#' @return A tibble with class `available` combining final and provisional data +#' with an additional `Approval` column indicating whether each record is +#' "final" or "provisional". The object includes attributes for tracking data +#' sources and query metadata. #' #' @format A tibble with 6 variables: #' \describe{ @@ -142,8 +144,10 @@ available_flows <- function( #' - **"provisional"**: Real-time data from the web service representing the best #' available measurements, but subject to revision and not yet approved by ECCC. #' -#' @return A tibble combining final and provisional data with an additional -#' `Approval` column indicating whether each record is "final" or "provisional". +#' @return A tibble with class `available` combining final and provisional data +#' with an additional `Approval` column indicating whether each record is +#' "final" or "provisional". The object includes attributes for tracking data +#' sources and query metadata. #' #' @format A tibble with 6 variables: #' \describe{ @@ -375,8 +379,11 @@ get_available_data <- function( ## Store metadata as attributes attr(combined_data, "historical_source") <- historical_source - attr(combined_data, "query_time") <- Sys.time() + attr(combined_data, "missed_stns") <- setdiff( + unique(station_number), + unique(combined_data$STATION_NUMBER) + ) - ## Return as tibble - dplyr::as_tibble(combined_data) + ## Return with available class + as.available(combined_data) } diff --git a/man/available_flows.Rd b/man/available_flows.Rd index b3f0216..ad342ca 100644 --- a/man/available_flows.Rd +++ b/man/available_flows.Rd @@ -42,8 +42,10 @@ user-level call.} is returned. See \code{unique(allstations$prov_terr_state_loc)}. Will also accept \code{CA} to return only Canadian stations.} } \value{ -A tibble combining final and provisional data with an additional -\code{Approval} column indicating whether each record is "final" or "provisional". +A tibble with class \code{available} combining final and provisional data +with an additional \code{Approval} column indicating whether each record is +"final" or "provisional". The object includes attributes for tracking data +sources and query metadata. } \description{ Convenience function that combines final historical data diff --git a/man/available_levels.Rd b/man/available_levels.Rd index 8fed977..6274d78 100644 --- a/man/available_levels.Rd +++ b/man/available_levels.Rd @@ -42,8 +42,10 @@ user-level call.} is returned. See \code{unique(allstations$prov_terr_state_loc)}. Will also accept \code{CA} to return only Canadian stations.} } \value{ -A tibble combining final and provisional data with an additional -\code{Approval} column indicating whether each record is "final" or "provisional". +A tibble with class \code{available} combining final and provisional data +with an additional \code{Approval} column indicating whether each record is +"final" or "provisional". The object includes attributes for tracking data +sources and query metadata. } \description{ Convenience function that combines final historical data diff --git a/man/plot.Rd b/man/plot.Rd index 92e5a38..eafb6fa 100644 --- a/man/plot.Rd +++ b/man/plot.Rd @@ -1,11 +1,15 @@ % Generated by roxygen2: do not edit by hand -% Please edit documentation in R/hy_plot.R, R/realtime_plot.R +% Please edit documentation in R/available-classes.R, R/hy_plot.R, +% R/realtime_plot.R \name{plot} \alias{plot} +\alias{plot.available} \alias{plot.hy} \alias{plot.realtime} -\title{Plot historical and realtime data} +\title{Plot available data (final + provisional)} \usage{ +\method{plot}{available}(x = NULL, ...) + \method{plot}{hy}(x = NULL, ...) \method{plot}{realtime}(x = NULL, Parameter = c("Flow", "Level"), ...) @@ -18,6 +22,9 @@ \item{Parameter}{Parameter of interest. Either "Flow" or "Level". Defaults to "Flow".} } \description{ +This method plots combined final and provisional data, visually distinguishing +between validated (final) and provisional records. + This method plots either daily time series data from HYDAT or realtime data from the datamart. These plots are intended to be convenient and quick methods to visualize hydrometric data. @@ -28,6 +35,12 @@ visualize hydrometric data. }} \examples{ +\dontrun{ +# One station +flows <- available_flows("08MF005") +plot(flows) +} + \dontrun{ # One station fraser <- hy_daily_flows("08MF005") diff --git a/tests/testthat/test-available-classes.R b/tests/testthat/test-available-classes.R new file mode 100644 index 0000000..45e236c --- /dev/null +++ b/tests/testthat/test-available-classes.R @@ -0,0 +1,121 @@ +# Tests for available class + +test_that("as.available creates available class", { + df <- data.frame( + STATION_NUMBER = c("08MF005", "08MF005"), + Date = as.Date(c("2020-01-01", "2020-01-02")), + Parameter = c("Flow", "Flow"), + Value = c(10.5, 11.2), + Symbol = c(NA_character_, NA_character_), + Approval = c("final", "provisional") + ) + + result <- as.available(df) + + expect_s3_class(result, "available") + expect_true(!is.null(attr(result, "query_time"))) + expect_s3_class(attr(result, "query_time"), "POSIXct") +}) + +test_that("print.available displays metadata correctly", { + df <- data.frame( + STATION_NUMBER = c("08MF005", "08MF005", "08MF005"), + Date = as.Date(c("2020-01-01", "2020-06-01", "2020-12-01")), + Parameter = c("Flow", "Flow", "Flow"), + Value = c(10.5, 11.2, 12.3), + Symbol = c(NA_character_, NA_character_, NA_character_), + Approval = c("final", "final", "provisional") + ) + + result <- as.available(df) + attr(result, "historical_source") <- "HYDAT" + attr(result, "missed_stns") <- character(0) + + # Capture the printed output + output <- capture.output(print(result)) + + # Check that key elements are present in the output + expect_true(any(grepl("Queried on:", output))) + expect_true(any(grepl("Historical data source: HYDAT", output))) + expect_true(any(grepl("Final data range:", output))) + expect_true(any(grepl("Provisional data range:", output))) + expect_true(any(grepl("Records by approval status:", output))) + expect_true(any(grepl("Station\\(s\\) returned:", output))) +}) + +test_that("print.available handles missing final data", { + df <- data.frame( + STATION_NUMBER = c("08MF005", "08MF005"), + Date = as.Date(c("2020-12-01", "2020-12-02")), + Parameter = c("Flow", "Flow"), + Value = c(12.3, 13.1), + Symbol = c(NA_character_, NA_character_), + Approval = c("provisional", "provisional") + ) + + result <- as.available(df) + attr(result, "historical_source") <- "Web Service" + + output <- capture.output(print(result)) + + expect_true(any(grepl("No final data", output))) + expect_true(any(grepl("Provisional data range:", output))) +}) + +test_that("print.available handles missing provisional data", { + df <- data.frame( + STATION_NUMBER = c("08MF005", "08MF005"), + Date = as.Date(c("2020-01-01", "2020-01-02")), + Parameter = c("Flow", "Flow"), + Value = c(10.5, 11.2), + Symbol = c(NA_character_, NA_character_), + Approval = c("final", "final") + ) + + result <- as.available(df) + attr(result, "historical_source") <- "HYDAT" + + output <- capture.output(print(result)) + + expect_true(any(grepl("Final data range:", output))) + expect_true(any(grepl("No provisional data", output))) +}) + +test_that("print.available shows missed stations", { + df <- data.frame( + STATION_NUMBER = c("08MF005", "08MF005"), + Date = as.Date(c("2020-01-01", "2020-01-02")), + Parameter = c("Flow", "Flow"), + Value = c(10.5, 11.2), + Symbol = c(NA_character_, NA_character_), + Approval = c("final", "provisional") + ) + + result <- as.available(df) + attr(result, "missed_stns") <- c("08NM116", "08NL071") + + output <- capture.output(print(result)) + + expect_true(any(grepl("Stations requested but not returned:", output))) + expect_true(any(grepl("08NM116", output))) + expect_true(any(grepl("08NL071", output))) +}) + +test_that("print.available handles many missed stations", { + df <- data.frame( + STATION_NUMBER = c("08MF005"), + Date = as.Date(c("2020-01-01")), + Parameter = c("Flow"), + Value = c(10.5), + Symbol = c(NA_character_), + Approval = c("final") + ) + + result <- as.available(df) + # Create more than 10 missed stations + attr(result, "missed_stns") <- paste0("STN", sprintf("%03d", 1:15)) + + output <- capture.output(print(result)) + + expect_true(any(grepl("More than 10 stations", output))) +}) From a054cf4c127602f4ecf5a7d10184fe66e3c71d2c Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Tue, 9 Dec 2025 09:23:15 -0800 Subject: [PATCH 5/9] handle empty cases --- R/available.R | 98 ++++++++++++------- R/realtime-webservice.R | 2 +- .../real_time_data/csv/inline-610297.R | 12 +++ .../real_time_data/csv/inline-d311f2.R | 12 +++ tests/testthat/test-available-classes.R | 25 +++++ tests/testthat/test-realtime-webservice.R | 18 ++++ 6 files changed, 129 insertions(+), 38 deletions(-) create mode 100644 tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-610297.R create mode 100644 tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-d311f2.R diff --git a/R/available.R b/R/available.R index 7bd725f..815664a 100644 --- a/R/available.R +++ b/R/available.R @@ -224,6 +224,7 @@ get_available_data <- function( parameter_type, parameter_code ) { + ## Initialize variables to store data final_data <- NULL provisional_data <- NULL @@ -330,59 +331,82 @@ get_available_data <- function( ## Only query realtime if there's a valid date range if (realtime_start <= realtime_end) { ## Query realtime web service - rt_data <- realtime_ws( - station_number = station_number, - parameters = parameter_code, - start_date = realtime_start, - end_date = realtime_end + rt_data <- tryCatch( + { + realtime_ws( + station_number = station_number, + parameters = parameter_code, + start_date = realtime_start, + end_date = realtime_end + ) + }, + error = function(e) { + if (grepl("No data exists for this station query", e$message, fixed = TRUE)) { + return(NULL) + } + stop(e) + } ) - ## Convert Date to Date class (it comes as POSIXct) - rt_data$Date <- as.Date(rt_data$Date) + ## Only process if we got realtime data + if (!is.null(rt_data)) { + ## Convert Date to Date class (it comes as POSIXct) + rt_data$Date <- as.Date(rt_data$Date) - ## Aggregate to daily means - sym_STATION_NUMBER <- sym("STATION_NUMBER") - sym_Date <- sym("Date") - sym_Value <- sym("Value") + ## Aggregate to daily means + sym_STATION_NUMBER <- sym("STATION_NUMBER") + sym_Date <- sym("Date") + sym_Value <- sym("Value") - provisional_data <- rt_data |> - dplyr::group_by(!!sym_STATION_NUMBER, !!sym_Date) |> - dplyr::summarise(Value = mean(!!sym_Value, na.rm = TRUE), .groups = "drop") |> - dplyr::mutate( - Parameter = parameter_type, - Symbol = NA_character_, - Approval = "provisional" - ) |> - dplyr::select(STATION_NUMBER, Date, Parameter, Value, Symbol, Approval) + provisional_data <- rt_data |> + dplyr::group_by(!!sym_STATION_NUMBER, !!sym_Date) |> + dplyr::summarise(Value = mean(!!sym_Value, na.rm = TRUE), .groups = "drop") |> + dplyr::mutate( + Parameter = parameter_type, + Symbol = NA_character_, + Approval = "provisional" + ) |> + dplyr::select(STATION_NUMBER, Date, Parameter, Value, Symbol, Approval) + } } ## Combine final and provisional data combined_data <- dplyr::bind_rows(final_data, provisional_data) - ## Apply date filtering if not already applied - if (!is.null(start_date) || !is.null(end_date)) { - sym_Date <- sym("Date") + ## Apply date filtering and sorting only if we have data + if (nrow(combined_data) > 0) { + ## Apply date filtering if not already applied + if (!is.null(start_date) || !is.null(end_date)) { + sym_Date <- sym("Date") - if (!is.null(start_date)) { - combined_data <- dplyr::filter(combined_data, !!sym_Date >= as.Date(start_date)) - } - if (!is.null(end_date)) { - combined_data <- dplyr::filter(combined_data, !!sym_Date <= as.Date(end_date)) + if (!is.null(start_date)) { + combined_data <- dplyr::filter(combined_data, !!sym_Date >= as.Date(start_date)) + } + if (!is.null(end_date)) { + combined_data <- dplyr::filter(combined_data, !!sym_Date <= as.Date(end_date)) + } } - } - ## Sort by station and date - sym_STATION_NUMBER <- sym("STATION_NUMBER") - sym_Date <- sym("Date") - combined_data <- dplyr::arrange(combined_data, !!sym_STATION_NUMBER, !!sym_Date) + ## Sort by station and date + sym_STATION_NUMBER <- sym("STATION_NUMBER") + sym_Date <- sym("Date") + combined_data <- dplyr::arrange(combined_data, !!sym_STATION_NUMBER, !!sym_Date) + } ## Store metadata as attributes attr(combined_data, "historical_source") <- historical_source - attr(combined_data, "missed_stns") <- setdiff( - unique(station_number), - unique(combined_data$STATION_NUMBER) - ) + + ## Calculate missed stations only if we have data + if (nrow(combined_data) > 0) { + attr(combined_data, "missed_stns") <- setdiff( + unique(station_number), + unique(combined_data$STATION_NUMBER) + ) + } else { + ## If no data at all, all requested stations were missed + attr(combined_data, "missed_stns") <- unique(station_number) + } ## Return with available class as.available(combined_data) diff --git a/R/realtime-webservice.R b/R/realtime-webservice.R index 5f18a8e..846395a 100755 --- a/R/realtime-webservice.R +++ b/R/realtime-webservice.R @@ -121,7 +121,7 @@ realtime_ws <- function( ## Turn it into a tibble and specify correct column classes csv_df <- readr::read_csv( - httr2::resp_body_string(resp), + I(httr2::resp_body_string(resp)), col_types = "cTidccc" ) diff --git a/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-610297.R b/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-610297.R new file mode 100644 index 0000000..6a3bf5f --- /dev/null +++ b/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-610297.R @@ -0,0 +1,12 @@ +structure(list(method = "GET", url = "https://wateroffice.ec.gc.ca/services/real_time_data/csv/inline?stations[]=08MF005¶meters[]=47&start_date=2013-01-06%2000:00:00&end_date=2013-01-05%2023:59:59", + status_code = 200L, headers = structure(list(Date = "Mon, 06 Jan 2013 12:00:00 GMT", + Server = "Apache", `Strict-Transport-Security` = "max-age=63072000; preload", + `Content-Disposition` = "inline; filename=real_time_data.csv", + Pragma = "public", `Cache-Control` = "must-revalidate, post-check=0, pre-check=0", + Vary = "Accept-Encoding", `Content-Encoding` = "gzip", + `Referrer-Policy` = "no-referrer-when-downgrade", `Content-Security-Policy` = "frame-src 'self'; media-src 'self'; object-src 'self'; base-uri 'self'; form-action 'self' https://www.canada.ca https://canada.ca https://recherche-search.gc.ca https://weather.gc.ca https://meteo.gc.ca https://*.cmc.ec.gc.ca https://*.edc-mtl.ec.gc.ca", + `Content-Length` = "150", `Content-Type` = "text/csv; charset=utf-8"), class = "httr2_headers"), + body = charToRaw(" ID,Date,Parameter/Paramètre,Value/Valeur,Qualifier/Qualificatif,Symbol/Symbole,Approval/Approbation,Grade/Classification,Qualifiers/Qualificatifs"), + timing = c(redirect = 0, namelookup = 0.001, connect = 0.050, + pretransfer = 0.100, starttransfer = 0.150, total = 0.151 + ), cache = new.env(parent = emptyenv())), class = "httr2_response") diff --git a/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-d311f2.R b/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-d311f2.R new file mode 100644 index 0000000..6ed2a46 --- /dev/null +++ b/tests/testthat/fixtures/wateroffice.ec.gc.ca/services/real_time_data/csv/inline-d311f2.R @@ -0,0 +1,12 @@ +structure(list(method = "GET", url = "https://wateroffice.ec.gc.ca/services/real_time_data/csv/inline?stations[]=08MF005¶meters[]=46&start_date=2025-01-01%2000:00:00&end_date=2025-01-02%2023:59:59", + status_code = 200L, headers = structure(list(Date = "Mon, 01 Jan 2025 12:00:00 GMT", + Server = "Apache", `Strict-Transport-Security` = "max-age=63072000; preload", + `Content-Disposition` = "inline; filename=real_time_data.csv", + Pragma = "public", `Cache-Control` = "must-revalidate, post-check=0, pre-check=0", + Vary = "Accept-Encoding", `Content-Encoding` = "gzip", + `Referrer-Policy` = "no-referrer-when-downgrade", `Content-Security-Policy` = "frame-src 'self'; media-src 'self'; object-src 'self'; base-uri 'self'; form-action 'self' https://www.canada.ca https://canada.ca https://recherche-search.gc.ca https://weather.gc.ca https://meteo.gc.ca https://*.cmc.ec.gc.ca https://*.edc-mtl.ec.gc.ca", + `Content-Length` = "150", `Content-Type` = "text/csv; charset=utf-8"), class = "httr2_headers"), + body = charToRaw(" ID,Date,Parameter/Paramètre,Value/Valeur,Qualifier/Qualificatif,Symbol/Symbole,Approval/Approbation,Grade/Classification,Qualifiers/Qualificatifs"), + timing = c(redirect = 0, namelookup = 0.001, connect = 0.050, + pretransfer = 0.100, starttransfer = 0.150, total = 0.151 + ), cache = new.env(parent = emptyenv())), class = "httr2_response") diff --git a/tests/testthat/test-available-classes.R b/tests/testthat/test-available-classes.R index 45e236c..cbb5d9d 100644 --- a/tests/testthat/test-available-classes.R +++ b/tests/testthat/test-available-classes.R @@ -119,3 +119,28 @@ test_that("print.available handles many missed stations", { expect_true(any(grepl("More than 10 stations", output))) }) + +test_that("available_flows handles 'No data exists' error from realtime_ws gracefully", { + + # This tests that when realtime_ws returns no data (empty CSV), + # available_flows continues and returns only the final/validated data + httptest2::with_mock_dir("fixtures", { + result <- available_flows( + station_number = "05AA008", # Station with flow data in test database + hydat_path = hy_test_db(), + start_date = as.Date("1910-07-01"), + end_date = as.Date("1910-07-05") + ) + + # Should have data from HYDAT (final) + expect_s3_class(result, "available") + expect_true(nrow(result) > 0) + + # All data should be "final" (no provisional data) + expect_true(all(result$Approval == "final")) + + # Should not have any provisional data + expect_false(any(result$Approval == "provisional")) + }) +}) + diff --git a/tests/testthat/test-realtime-webservice.R b/tests/testthat/test-realtime-webservice.R index 4c6fd7d..71d585e 100644 --- a/tests/testthat/test-realtime-webservice.R +++ b/tests/testthat/test-realtime-webservice.R @@ -77,3 +77,21 @@ test_that("realtime_ws handles Date objects", { expect_equal(unique(output$Parameter), 46) }) }) + +test_that("realtime_ws handles empty CSV response (regression test for I() wrapper)", { + + # This test specifically addresses a bug where readr::read_csv() without I() + # would interpret the CSV header string as a file path instead of CSV text. + + httptest2::with_mock_dir("fixtures", { + expect_error( + realtime_ws( + station_number = "08MF005", + parameters = 46, + start_date = as.Date("2025-01-01"), + end_date = as.Date("2025-01-02") + ), + "No data exists for this station query" + ) + }) +}) From 212a6d5b3648f2c46569b2827874d539b5e25310 Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Tue, 9 Dec 2025 09:29:43 -0800 Subject: [PATCH 6/9] use lubridate --- R/available.R | 8 ++++---- R/realtime-webservice.R | 4 ++-- R/zzz.R | 2 +- man/available_flows.Rd | 2 +- man/available_levels.Rd | 2 +- man/realtime_ws.Rd | 4 ++-- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/R/available.R b/R/available.R index 815664a..5cbdb8c 100644 --- a/R/available.R +++ b/R/available.R @@ -78,7 +78,7 @@ #' ## Get only recent data (last 2 years) #' recent_flows <- available_flows( #' "08MF005", -#' start_date = Sys.Date() - 730, +#' start_date = Sys.Date() - lubridate::years(2), #' end_date = Sys.Date() #' ) #' @@ -170,7 +170,7 @@ available_flows <- function( #' ## Get only recent data (last 2 years) #' recent_levels <- available_levels( #' "08MF005", -#' start_date = Sys.Date() - 730, +#' start_date = Sys.Date() - lubridate::years(2), #' end_date = Sys.Date() #' ) #' @@ -312,13 +312,13 @@ get_available_data <- function( # Use the latest date from final data as the starting point realtime_start <- if (!is.null(final_data) && nrow(final_data) > 0) { ## Start from the day after the last final record - max(final_data$Date, na.rm = TRUE) + 1 + max(final_data$Date, na.rm = TRUE) + lubridate::days(1) } else if (!is.null(start_date)) { ## No final data, use user-provided start_date as.Date(start_date) } else { ## No final data and no start_date, query from 18 months ago - Sys.Date() - 547 + Sys.Date() - lubridate::months(18) } ## End date defaults to today unless user specified diff --git a/R/realtime-webservice.R b/R/realtime-webservice.R index 846395a..4bb7a01 100755 --- a/R/realtime-webservice.R +++ b/R/realtime-webservice.R @@ -56,7 +56,7 @@ #' station_number = c("08NL071", "08NM174"), #' parameters = c(47, 5), #' end_date = Sys.Date(), # today -#' start_date = Sys.Date() - 5 # five days ago +#' start_date = Sys.Date() - lubridate::days(5) # five days ago #' ) #' } #' @family realtime functions @@ -65,7 +65,7 @@ realtime_ws <- function( station_number, parameters = NULL, - start_date = Sys.Date() - 30, + start_date = Sys.Date() - lubridate::days(30), end_date = Sys.Date() ) { if (is.null(parameters)) parameters <- c(46, 16, 52, 47, 8, 5, 41, 18) diff --git a/R/zzz.R b/R/zzz.R index 43529ba..5a4feae 100644 --- a/R/zzz.R +++ b/R/zzz.R @@ -17,7 +17,7 @@ ## Only check when there is likely a new version i.e. about 3 months after last version if ( file.exists(file.path(hy_dir(), "Hydat.sqlite3")) && - Sys.Date() > (as.Date(hy_version()$Date) + 115) + Sys.Date() > (as.Date(hy_version()$Date) + lubridate::days(115)) ) { packageStartupMessage(info("Checking for a new version of HYDAT...")) diff --git a/man/available_flows.Rd b/man/available_flows.Rd index ad342ca..7c8447c 100644 --- a/man/available_flows.Rd +++ b/man/available_flows.Rd @@ -95,7 +95,7 @@ flows <- available_flows(c("08MF005", "08NM116")) ## Get only recent data (last 2 years) recent_flows <- available_flows( "08MF005", - start_date = Sys.Date() - 730, + start_date = Sys.Date() - lubridate::years(2), end_date = Sys.Date() ) diff --git a/man/available_levels.Rd b/man/available_levels.Rd index 6274d78..6d8bb51 100644 --- a/man/available_levels.Rd +++ b/man/available_levels.Rd @@ -95,7 +95,7 @@ levels <- available_levels(c("08MF005", "08NM116")) ## Get only recent data (last 2 years) recent_levels <- available_levels( "08MF005", - start_date = Sys.Date() - 730, + start_date = Sys.Date() - lubridate::years(2), end_date = Sys.Date() ) diff --git a/man/realtime_ws.Rd b/man/realtime_ws.Rd index 85eb648..d3bc2f5 100644 --- a/man/realtime_ws.Rd +++ b/man/realtime_ws.Rd @@ -22,7 +22,7 @@ A tibble with 6 variables: realtime_ws( station_number, parameters = NULL, - start_date = Sys.Date() - 30, + start_date = Sys.Date() - lubridate::days(30), end_date = Sys.Date() ) } @@ -60,7 +60,7 @@ fivedays <- realtime_ws( station_number = c("08NL071", "08NM174"), parameters = c(47, 5), end_date = Sys.Date(), # today - start_date = Sys.Date() - 5 # five days ago + start_date = Sys.Date() - lubridate::days(5) # five days ago ) } } From c3b01b472e9f418a83c81f5c7b3bc4595f53071a Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Tue, 9 Dec 2025 09:41:00 -0800 Subject: [PATCH 7/9] update README --- README.Rmd | 60 +++---- README.md | 198 ++++++++++++---------- man/figures/README-unnamed-chunk-11-1.png | Bin 55037 -> 108660 bytes 3 files changed, 130 insertions(+), 128 deletions(-) diff --git a/README.Rmd b/README.Rmd index e436545..fe38f9d 100644 --- a/README.Rmd +++ b/README.Rmd @@ -27,9 +27,9 @@ knitr::opts_chunk$set( ## What does `tidyhydat` do? +- Provides functions (`available_*`) that combine validated historical data with provisional real-time data. - Provides functions (`hy_*`) that access hydrometric data from the HYDAT database or web service, a national archive of Canadian hydrometric data and return tidy data. - Provides functions (`realtime_*`) that access Environment and Climate Change Canada's real-time hydrometric data source. -- Provides functions (`available_*`) that seamlessly combine validated historical data with provisional real-time data. - Provides functions (`search_*`) that can search through the approximately 7000 stations in the database and aid in generating station vectors - Keep functions as simple as possible. For example, for daily flows, the `hy_daily_flows()` function queries the database, *tidies* the data and returns a [tibble](https://tibble.tidyverse.org/) of daily flows. @@ -61,16 +61,24 @@ To use many of the functions in the `tidyhydat` package you will need to downloa download_hydat() ``` -This downloads (with your permission) the most recent version of HYDAT and then saves it in a location on your computer where ` -tidyhydat -`'s function will look for it. Do be patient though as this can take a long time! To see where HYDAT was saved you can run ` -hy_default_db() -`. Now that you have HYDAT downloaded and ready to go, you are all set to begin looking at Canadian hydrometric data. +This downloads (with your permission) the most recent version of HYDAT and then saves it in a location on your computer where `tidyhydat`'s +function will look for it. Do be patient though as this can take a long time! To see where HYDAT was saved you can run `hy_default_db()`. +Now that you have HYDAT downloaded and ready to go, you are all set to begin looking at Canadian hydrometric data. + +### Combining validated and provisional data +For a complete record combining validated historical data with recent provisional data use the `available_flows` and `available_levels` functions. + +```{r} +available_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() +) +``` ### Real-time -To download real-time data using the datamart we can use approximately the same conventions discussed above. Using ` -realtime_dd() -` we can easily select specific stations by supplying a station of interest: +To download real-time data using the datamart we can use approximately the same conventions discussed above. +Using `realtime_dd()` we can easily select specific stations by supplying a station of interest: ```{r} realtime_dd(station_number = "08MF005") ``` @@ -86,21 +94,22 @@ realtime_ws( ) ``` -### Using the web service without HYDAT -For smaller queries where downloading the entire HYDAT database is unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with `hydat_path = FALSE` to access historical daily data directly from the web service: +### Using only HYDAT +If you wish to use only the final approved data in HYDAT database you can use: ```{r} hy_daily_flows( station_number = "08MF005", - hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31" ) ``` -Similarly for water levels: +### Using the web service without HYDAT +For smaller queries where downloading the entire HYDAT database is unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with `hydat_path = FALSE` to access historical daily data directly from the web service: + ```{r} -hy_daily_levels( +hy_daily_flows( station_number = "08MF005", hydat_path = FALSE, start_date = "2020-01-01", @@ -108,17 +117,6 @@ hy_daily_levels( ) ``` -### Combining validated and provisional data -For a complete record combining validated historical data with recent provisional data: - -```{r} -available_flows( - station_number = "08MF005", - start_date = "2020-01-01", - end_date = Sys.Date() -) -``` - ## Compare realtime_ws and realtime_dd @@ -132,18 +130,12 @@ available_flows( ### Plotting -Plot methods are also provided to quickly visualize realtime data: -```{r} -realtime_ex <- realtime_dd(station_number = "08MF005") - -plot(realtime_ex) -``` +Plot methods are also provided to quickly visualize data: -and also historical data: ```{r, fig.height=7, fig.width=12} -hy_ex <- hy_daily_flows(station_number = "08MF005", start_date = "2013-01-01") +flows_ex <- available_flows(station_number = "08MF005", start_date = "2013-01-01") -plot(hy_ex) +plot(flows_ex) ``` ## Getting Help or Reporting an Issue diff --git a/README.md b/README.md index ed17845..934589c 100644 --- a/README.md +++ b/README.md @@ -21,13 +21,13 @@ checks](https://badges.cranchecks.info/worst/tidyhydat.svg)](https://cran.r-proj ## What does `tidyhydat` do? +- Provides functions (`available_*`) that combine validated historical + data with provisional real-time data. - Provides functions (`hy_*`) that access hydrometric data from the HYDAT database or web service, a national archive of Canadian hydrometric data and return tidy data. - Provides functions (`realtime_*`) that access Environment and Climate Change Canada’s real-time hydrometric data source. -- Provides functions (`available_*`) that seamlessly combine validated - historical data with provisional real-time data. - Provides functions (`search_*`) that can search through the approximately 7000 stations in the database and aid in generating station vectors @@ -78,6 +78,43 @@ time! To see where HYDAT was saved you can run `hy_default_db()`. Now that you have HYDAT downloaded and ready to go, you are all set to begin looking at Canadian hydrometric data. +### Combining validated and provisional data + +For a complete record combining validated historical data with recent +provisional data use the `available_flows` and `available_levels` +functions. + + available_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() + ) + #> Queried on: 2025-12-09 17:40:38.103082 (UTC) + #> Historical data source: HYDAT + #> Final data range: 2020-01-01 to 2024-12-31 + #> Provisional data range: 2025-01-01 to 2025-12-09 + #> Overall date range: 2020-01-01 to 2025-12-09 + #> Records by approval status: + #> final: 1,827 + #> provisional: 343 + #> Station(s) returned: 1 + #> All stations successfully retrieved. + #> Parameter(s): Flow + #> # A tibble: 2,170 × 6 + #> STATION_NUMBER Date Parameter Value Symbol Approval + #> + #> 1 08MF005 2020-01-01 Flow 1340 final + #> 2 08MF005 2020-01-02 Flow 1330 final + #> 3 08MF005 2020-01-03 Flow 1310 final + #> 4 08MF005 2020-01-04 Flow 1420 final + #> 5 08MF005 2020-01-05 Flow 1350 final + #> 6 08MF005 2020-01-06 Flow 1310 final + #> 7 08MF005 2020-01-07 Flow 1280 final + #> 8 08MF005 2020-01-08 Flow 1320 final + #> 9 08MF005 2020-01-09 Flow 1230 final + #> 10 08MF005 2020-01-10 Flow 1210 final + #> # ℹ 2,160 more rows + ### Real-time To download real-time data using the datamart we can use approximately @@ -85,22 +122,22 @@ the same conventions discussed above. Using `realtime_dd()` we can easily select specific stations by supplying a station of interest: realtime_dd(station_number = "08MF005") - #> Queried on: 2025-12-08 22:15:27.583058 (UTC) - #> Date range: 2025-11-08 to 2025-12-08 - #> # A tibble: 17,596 × 8 + #> Queried on: 2025-12-09 17:40:39.67949 (UTC) + #> Date range: 2025-11-09 to 2025-12-09 + #> # A tibble: 17,500 × 8 #> STATION_NUMBER PROV_TERR_STATE_LOC Date Parameter Value Grade #> - #> 1 08MF005 BC 2025-11-08 08:00:00 Flow 1450 - #> 2 08MF005 BC 2025-11-08 08:05:00 Flow 1450 - #> 3 08MF005 BC 2025-11-08 08:10:00 Flow 1450 - #> 4 08MF005 BC 2025-11-08 08:15:00 Flow 1450 - #> 5 08MF005 BC 2025-11-08 08:20:00 Flow 1450 - #> 6 08MF005 BC 2025-11-08 08:25:00 Flow 1450 - #> 7 08MF005 BC 2025-11-08 08:30:00 Flow 1450 - #> 8 08MF005 BC 2025-11-08 08:35:00 Flow 1450 - #> 9 08MF005 BC 2025-11-08 08:40:00 Flow 1460 - #> 10 08MF005 BC 2025-11-08 08:45:00 Flow 1450 - #> # ℹ 17,586 more rows + #> 1 08MF005 BC 2025-11-09 08:00:00 Flow 1330 + #> 2 08MF005 BC 2025-11-09 08:05:00 Flow 1330 + #> 3 08MF005 BC 2025-11-09 08:10:00 Flow 1330 + #> 4 08MF005 BC 2025-11-09 08:15:00 Flow 1330 + #> 5 08MF005 BC 2025-11-09 08:20:00 Flow 1320 + #> 6 08MF005 BC 2025-11-09 08:25:00 Flow 1320 + #> 7 08MF005 BC 2025-11-09 08:30:00 Flow 1330 + #> 8 08MF005 BC 2025-11-09 08:35:00 Flow 1330 + #> 9 08MF005 BC 2025-11-09 08:40:00 Flow 1330 + #> 10 08MF005 BC 2025-11-09 08:45:00 Flow 1320 + #> # ℹ 17,490 more rows #> # ℹ 2 more variables: Symbol , Code Or we can use `realtime_ws`: @@ -111,28 +148,61 @@ Or we can use `realtime_ws`: start_date = Sys.Date() - 14, end_date = Sys.Date() ) - #> Queried on: 2025-12-08 22:15:29.054838 (UTC) - #> Date range: 2025-11-24 to 2025-12-08 + #> Queried on: 2025-12-09 17:40:40.893085 (UTC) + #> Date range: 2025-11-25 to 2025-12-09 #> Station(s) returned: 1 #> All stations successfully retrieved. #> All parameters successfully retrieved. - #> # A tibble: 4,645 × 12 + #> # A tibble: 4,593 × 12 #> STATION_NUMBER Date Name_En Value Unit Grade Symbol Approval #> - #> 1 08MF005 2025-11-24 00:00:00 Water t… 7.34 °C NA Provisi… - #> 2 08MF005 2025-11-24 01:00:00 Water t… 7.34 °C NA Provisi… - #> 3 08MF005 2025-11-24 02:00:00 Water t… 7.34 °C NA Provisi… - #> 4 08MF005 2025-11-24 03:00:00 Water t… 7.33 °C NA Provisi… - #> 5 08MF005 2025-11-24 04:00:00 Water t… 7.34 °C NA Provisi… - #> 6 08MF005 2025-11-24 05:00:00 Water t… 7.34 °C NA Provisi… - #> 7 08MF005 2025-11-24 06:00:00 Water t… 7.33 °C NA Provisi… - #> 8 08MF005 2025-11-24 07:00:00 Water t… 7.34 °C NA Provisi… - #> 9 08MF005 2025-11-24 08:00:00 Water t… 7.34 °C NA Provisi… - #> 10 08MF005 2025-11-24 09:00:00 Water t… 7.35 °C NA Provisi… - #> # ℹ 4,635 more rows + #> 1 08MF005 2025-11-25 00:00:00 Water t… 7.32 °C NA Provisi… + #> 2 08MF005 2025-11-25 01:00:00 Water t… 7.32 °C NA Provisi… + #> 3 08MF005 2025-11-25 02:00:00 Water t… 7.31 °C NA Provisi… + #> 4 08MF005 2025-11-25 03:00:00 Water t… 7.31 °C NA Provisi… + #> 5 08MF005 2025-11-25 04:00:00 Water t… 7.31 °C NA Provisi… + #> 6 08MF005 2025-11-25 05:00:00 Water t… 7.3 °C NA Provisi… + #> 7 08MF005 2025-11-25 06:00:00 Water t… 7.31 °C NA Provisi… + #> 8 08MF005 2025-11-25 07:00:00 Water t… 7.31 °C NA Provisi… + #> 9 08MF005 2025-11-25 08:00:00 Water t… 7.31 °C NA Provisi… + #> 10 08MF005 2025-11-25 09:00:00 Water t… 7.3 °C NA Provisi… + #> # ℹ 4,583 more rows #> # ℹ 4 more variables: Parameter , Code , Qualifier , #> # Qualifiers +### Using only HYDAT + +If you wish to use only the final approved data in HYDAT database you +can use: + + hy_daily_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = "2020-12-31" + ) + #> Queried from version of HYDAT released on 2025-10-14 + #> Observations: 366 + #> Measurement flags: 0 + #> Parameter(s): Flow + #> Date range: 2020-01-01 to 2020-12-31 + #> Station(s) returned: 1 + #> Stations requested but not returned: + #> All stations returned. + #> # A tibble: 366 × 5 + #> STATION_NUMBER Date Parameter Value Symbol + #> + #> 1 08MF005 2020-01-01 Flow 1340 + #> 2 08MF005 2020-01-02 Flow 1330 + #> 3 08MF005 2020-01-03 Flow 1310 + #> 4 08MF005 2020-01-04 Flow 1420 + #> 5 08MF005 2020-01-05 Flow 1350 + #> 6 08MF005 2020-01-06 Flow 1310 + #> 7 08MF005 2020-01-07 Flow 1280 + #> 8 08MF005 2020-01-08 Flow 1320 + #> 9 08MF005 2020-01-09 Flow 1230 + #> 10 08MF005 2020-01-10 Flow 1210 + #> # ℹ 356 more rows + ### Using the web service without HYDAT For smaller queries where downloading the entire HYDAT database is @@ -146,7 +216,7 @@ web service: start_date = "2020-01-01", end_date = "2020-12-31" ) - #> Queried on: 2025-12-08 22:15:30.188702 (UTC) + #> Queried on: 2025-12-09 17:40:42.101829 (UTC) #> Date range: 2020-01-01 to 2020-12-31 #> Station(s) returned: 1 #> All stations successfully retrieved. @@ -165,58 +235,6 @@ web service: #> 10 08MF005 2020-01-10 discharge/débit 1210 #> # ℹ 356 more rows -Similarly for water levels: - - hy_daily_levels( - station_number = "08MF005", - hydat_path = FALSE, - start_date = "2020-01-01", - end_date = "2020-12-31" - ) - #> Queried on: 2025-12-08 22:15:31.330077 (UTC) - #> Date range: 2020-01-01 to 2020-12-31 - #> Station(s) returned: 1 - #> All stations successfully retrieved. - #> # A tibble: 366 × 5 - #> STATION_NUMBER Date Parameter Value Symbol - #> - #> 1 08MF005 2020-01-01 water level/niveau 3.72 - #> 2 08MF005 2020-01-02 water level/niveau 3.72 - #> 3 08MF005 2020-01-03 water level/niveau 3.69 - #> 4 08MF005 2020-01-04 water level/niveau 3.81 - #> 5 08MF005 2020-01-05 water level/niveau 3.74 - #> 6 08MF005 2020-01-06 water level/niveau 3.69 - #> 7 08MF005 2020-01-07 water level/niveau 3.66 - #> 8 08MF005 2020-01-08 water level/niveau 3.70 - #> 9 08MF005 2020-01-09 water level/niveau 3.60 - #> 10 08MF005 2020-01-10 water level/niveau 3.58 - #> # ℹ 356 more rows - -### Combining validated and provisional data - -For a complete record combining validated historical data with recent -provisional data: - - available_flows( - station_number = "08MF005", - start_date = "2020-01-01", - end_date = Sys.Date() - ) - #> # A tibble: 2,169 × 6 - #> STATION_NUMBER Date Parameter Value Symbol Approval - #> - #> 1 08MF005 2020-01-01 Flow 1340 final - #> 2 08MF005 2020-01-02 Flow 1330 final - #> 3 08MF005 2020-01-03 Flow 1310 final - #> 4 08MF005 2020-01-04 Flow 1420 final - #> 5 08MF005 2020-01-05 Flow 1350 final - #> 6 08MF005 2020-01-06 Flow 1310 final - #> 7 08MF005 2020-01-07 Flow 1280 final - #> 8 08MF005 2020-01-08 Flow 1320 final - #> 9 08MF005 2020-01-09 Flow 1230 final - #> 10 08MF005 2020-01-10 Flow 1210 final - #> # ℹ 2,159 more rows - ## Compare realtime\_ws and realtime\_dd `tidyhydat` provides two methods to download realtime data. @@ -240,22 +258,14 @@ difference to `realtime_dd()`. These include: ### Plotting -Plot methods are also provided to quickly visualize realtime data: +Plot methods are also provided to quickly visualize data: - realtime_ex <- realtime_dd(station_number = "08MF005") + flows_ex <- available_flows(station_number = "08MF005", start_date = "2013-01-01") - plot(realtime_ex) + plot(flows_ex) ![](man/figures/README-unnamed-chunk-11-1.png) -and also historical data: - - hy_ex <- hy_daily_flows(station_number = "08MF005", start_date = "2013-01-01") - - plot(hy_ex) - -![](man/figures/README-unnamed-chunk-12-1.png) - ## Getting Help or Reporting an Issue To report bugs/issues/feature requests, please file an diff --git a/man/figures/README-unnamed-chunk-11-1.png b/man/figures/README-unnamed-chunk-11-1.png index deada0ca1361c4d4ed26c808fb1a8f49ba5a78c6..0b04f1dc1719151a63d88c51fb1711fecc5c45f8 100644 GIT binary patch literal 108660 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 literal 55037 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

IdkWgv)VS3k|y2_UB-F%@bc* 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 SvZq-x0D-5gpUXO@geCw?+EFS1 diff --git a/man/figures/README-unnamed-chunk-12-1.png b/man/figures/README-unnamed-chunk-12-1.png new file mode 100644 index 0000000000000000000000000000000000000000..ab80d5501a9d408c7be417220188934956027435 GIT binary patch literal 98843 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

Rn*B8p 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 From 23bca40fc9896ee469e3cc2f72fc6c4f43ad5b22 Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Tue, 9 Dec 2025 09:49:47 -0800 Subject: [PATCH 8/9] update vignette --- vignettes/tidyhydat_an_introduction.Rmd.orig | 74 ++++++++++++++------ 1 file changed, 51 insertions(+), 23 deletions(-) diff --git a/vignettes/tidyhydat_an_introduction.Rmd.orig b/vignettes/tidyhydat_an_introduction.Rmd.orig index 701a94d..97f8c47 100644 --- a/vignettes/tidyhydat_an_introduction.Rmd.orig +++ b/vignettes/tidyhydat_an_introduction.Rmd.orig @@ -12,9 +12,9 @@ vignette: > --- ```{r options, include=FALSE} -knitr::opts_chunk$set(echo = TRUE, - warning = FALSE, - message = FALSE, +knitr::opts_chunk$set(echo = TRUE, + warning = FALSE, + message = FALSE, fig.path = "vignette-fig-", fig.width=13, fig.height=7) ``` @@ -27,7 +27,7 @@ library(ggplot2) ``` # `tidyhydat` package -This vignette will outline a few key options that will hopefully make `tidyhydat` useful. +This vignette will outline a few key options that will hopefully make `tidyhydat` useful. ## HYDAT download To use many of the functions in the `tidyhydat` package you will need to download a version of the HYDAT database, Environment and Climate Change Canada's database of historical hydrometric data then tell R where to find the database. Conveniently `tidyhydat` does all this for you via: @@ -35,9 +35,35 @@ To use many of the functions in the `tidyhydat` package you will need to downloa download_hydat() ``` This downloads the most recent version of HYDAT and then saves it in a location on your computer where `tidyhydat`'s function will look for it. Do be patient though as this takes a long time! To see where HYDAT was saved you can run `hy_dir()`. Now that you have HYDAT downloaded and ready to go, you are all set to begin some hydrologic analysis. - -## Usage -Most functions in `tidyhydat` follow a common argument structure. We will use the `hy_daily_flows()` function for the following examples though the same approach applies to most functions in the package (See `ls("package:tidyhydat")` for a list of exported objects). Much of the functionality of `tidyhydat` originates with the choice of hydrometric stations that you are interested in. A user will often find themselves creating vectors of station numbers. There are several ways to do this. + +## Combining validated and provisional data +For most analysis needs, the `available_flows()` and `available_levels()` functions provide the most complete picture by combining validated historical data with recent provisional real-time data: + +```{r, eval=FALSE} +available_flows( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() +) +``` + +These functions: +- Automatically combine validated data from HYDAT (or web service if HYDAT unavailable) with provisional real-time data +- Include an `Approval` column indicating whether each record is "final" (validated) or "provisional" (subject to revision) +- Aggregate real-time data to daily means for consistency +- Handle missing data gracefully + +For water levels, use `available_levels()`: +```{r, eval=FALSE} +available_levels( + station_number = "08MF005", + start_date = "2020-01-01", + end_date = Sys.Date() +) +``` + +## Usage of HYDAT functions +Most functions in `tidyhydat` follow a common argument structure. We will use the `hy_daily_flows()` function for the following examples though the same approach applies to most functions in the package (See `ls("package:tidyhydat")` for a list of exported objects). Much of the functionality of `tidyhydat` originates with the choice of hydrometric stations that you are interested in. A user will often find themselves creating vectors of station numbers. There are several ways to do this. The simplest case is if you would like to extract only station. You can supply this directly to the `station_number` argument: ```{r example1, warning=FALSE} @@ -66,12 +92,12 @@ search_stn_name("canada") |> We saw above that if we were only interested in a subset of dates we could use the `start_date` and `end_date` arguments. A date must be supplied to both these arguments in the form of YYYY-MM-DD. If you were interested in all daily flow data from station number "08LA001" for 1981, you would specify all days in 1981 : ```{r warning=FALSE, warning=FALSE, message=FALSE, eval=FALSE} -hy_daily_flows(station_number = "08LA001", - start_date = "1981-01-01", +hy_daily_flows(station_number = "08LA001", + start_date = "1981-01-01", end_date = "1981-12-31") ``` -This generally outlines the usage of the HYDAT functions within `tidyhydat`. +This generally outlines the usage of the HYDAT functions within `tidyhydat`. ## Real-time functions In addition to the approved and vetted data in the HYDAT database ECCC also offers unapproved data that is subject to revision. `tidyhydat` provides three functions to access these data sources. Remember these are **unapproved** data and should treated as such: @@ -107,7 +133,7 @@ The `realtime_ws()` function provides access to ECCC's real-time web service. Th ```{r, eval=FALSE} realtime_ws(station_number = "08MF005", parameters = 46, ## Water level - start_date = Sys.Date() - 30, + start_date = Sys.Date() - lubridate::days(30), end_date = Sys.Date()) ``` @@ -115,31 +141,33 @@ You can query multiple parameters simultaneously. See `data("param_id")` for a c ```{r, eval=FALSE} realtime_ws(station_number = "08MF005", parameters = c(46, 47), ## Water level and discharge - start_date = Sys.Date() - 7, + start_date = Sys.Date() - lubridate::days(7), end_date = Sys.Date()) ``` -## Historical web service functions -For smaller queries where downloading the entire HYDAT database is unnecessary, `tidyhydat` provides web service functions that access historical daily data directly from ECCC. These functions are particularly useful when you need data for only a few stations or a limited time period: +## Using the web service without HYDAT +For smaller queries where downloading the entire HYDAT database is unnecessary, you can use `hy_daily_flows()` and `hy_daily_levels()` with `hydat_path = FALSE` to access historical daily data directly from ECCC's web service. These are particularly useful when you need data for only a few stations or a limited time period: -### Historical flows and levels - `ws_daily_flows()` and `ws_daily_levels()` -These functions download historical daily data without requiring HYDAT. Both require a date range to be specified: +### Historical flows and levels via web service ```{r, eval=FALSE} -ws_daily_flows(station_number = "08MF005", +hy_daily_flows(station_number = "08MF005", + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31") ``` Similarly for water levels: ```{r, eval=FALSE} -ws_daily_levels(station_number = "08NL071", +hy_daily_levels(station_number = "08NL071", + hydat_path = FALSE, start_date = "2019-01-01", end_date = "2019-12-31") ``` Multiple stations can be queried in a single call: ```{r, eval=FALSE} -ws_daily_flows(station_number = c("08MF005", "08NL071"), +hy_daily_flows(station_number = c("08MF005", "08NL071"), + hydat_path = FALSE, start_date = "2020-01-01", end_date = "2020-12-31") ``` @@ -154,7 +182,7 @@ Similarly, `search_stn_number()` can be useful if you are interested in all stat search_stn_number("08MF") ``` -## Using joins +## Using joins Sometimes it is required to make use of information from two tables from HYDAT. In some cases, we need to combine the information into one table using a common column. Here we will illustrate calculating runoff by combining the `hy_stations` tables with the `hy_daily_flows` table by the `STATION_NUMBER` column: ```{r} stns <- c("08NH130", "08NH005") @@ -164,10 +192,10 @@ runoff_data <- hy_daily_flows(station_number = stns, start_date = "2000-01-01") select(STATION_NUMBER, STATION_NAME, DRAINAGE_AREA_GROSS), by = "STATION_NUMBER") |> ## conversion to mm/d - mutate(runoff = Value / DRAINAGE_AREA_GROSS * 86400 / 1e6 * 1e3) + mutate(runoff = Value / DRAINAGE_AREA_GROSS * 86400 / 1e6 * 1e3) -ggplot(runoff_data) + +ggplot(runoff_data) + geom_line(aes(x = Date, y = runoff, colour = STATION_NAME)) + labs(y = "Mean daily runoff [mm/d]") + scale_colour_viridis_d(option = "C") + @@ -182,7 +210,7 @@ This is an effective way to make use of the variety of tables available in HYDAT Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. - You may obtain a copy of the License at + You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 From 4fb8a37500a935ec717238fcbedd2b695c4571ab Mon Sep 17 00:00:00 2001 From: Sam Albers Date: Tue, 9 Dec 2025 09:51:14 -0800 Subject: [PATCH 9/9] month not months --- R/available.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/available.R b/R/available.R index 5cbdb8c..2e9d493 100644 --- a/R/available.R +++ b/R/available.R @@ -318,7 +318,7 @@ get_available_data <- function( as.Date(start_date) } else { ## No final data and no start_date, query from 18 months ago - Sys.Date() - lubridate::months(18) + Sys.Date() - lubridate::month(18) } ## End date defaults to today unless user specified