From cdaa23b32e87f833768e573fc147d6ce446bab6b Mon Sep 17 00:00:00 2001 From: Jed Lichtenstein <jed@Jeds-MacBook-Pro.local> Date: Wed, 8 Nov 2023 08:40:27 -0700 Subject: [PATCH 1/2] part 1 --- CopyOf01_spatial_intro_jed.Rmd | 417 ++++++++++++++++++++++++++++++ data/poudre_elevation.RDS | Bin 0 -> 14581 bytes data/poudre_elevation.tif | Bin 0 -> 15433 bytes data/poudre_hwy.dbf | Bin 0 -> 1446 bytes data/poudre_hwy.prj | 1 + data/poudre_hwy.shp | Bin 0 -> 54132 bytes data/poudre_hwy.shx | Bin 0 -> 132 bytes data/poudre_points.dbf | Bin 0 -> 309 bytes data/poudre_points.prj | 1 + data/poudre_points.shp | Bin 0 -> 184 bytes data/poudre_points.shx | Bin 0 -> 124 bytes data/poudre_spatial_objects.RData | Bin 0 -> 40277 bytes 12 files changed, 419 insertions(+) create mode 100644 CopyOf01_spatial_intro_jed.Rmd create mode 100644 data/poudre_elevation.RDS create mode 100644 data/poudre_elevation.tif create mode 100644 data/poudre_hwy.dbf create mode 100644 data/poudre_hwy.prj create mode 100644 data/poudre_hwy.shp create mode 100644 data/poudre_hwy.shx create mode 100644 data/poudre_points.dbf create mode 100644 data/poudre_points.prj create mode 100644 data/poudre_points.shp create mode 100644 data/poudre_points.shx create mode 100644 data/poudre_spatial_objects.RData diff --git a/CopyOf01_spatial_intro_jed.Rmd b/CopyOf01_spatial_intro_jed.Rmd new file mode 100644 index 0000000..61ee180 --- /dev/null +++ b/CopyOf01_spatial_intro_jed.Rmd @@ -0,0 +1,417 @@ +--- +title: "Intro to Spatial Data in R" +author: "Caitlin Mothes" +date: "`r Sys.Date()`" +output: github_document +--- + +```{r setup, include= FALSE} +knitr::opts_chunk$set(echo = TRUE, message = FALSE, warning = FALSE, eval = FALSE) +``` + +## 1. Spatial Data Formats + +**Vector Data** + +- Locations (points) + + - Coordinates, address, country, city + +- Shapes (lines or polygons) + + - Political boundaries, roads, building footprints, water bodies + +**Raster Data** + +- Images (matrix of cells organized by rows and columns) + + - Satellite imagery, climate, landcover, elevation + + {width="50%"} + +## 2. Import and manipulate spatial data + +There are a few new R packages we will need to work with spatial data, listed below with hyperlinks and decribed in more detail throughout this and other lessons. + +- `sf` : working with vector data + +- `terra` : working with raster data + +- `tmap` : visualizing spatial data (i.e., making maps!) + +- `tigris` : import vector data from the U.S. Census database (i.e., political boundaries, roads, etc.) + +- `elevatr` : import elevation data + +- `rgbif` (optional) : import species occurrence data from the GBIF database + +- `soilDB` (optional) : import snow depth data from SNOTEL sites across the U.S. + +We've already added these packages to a 'setup.R' script in this project directory, so you can use `source("setup.R")` at the beginning of each lesson if you want, otherwise you will need to install each new one manually with `install.packages()`. + +```{r} +source("setup.R") + + +``` + +### 2.1 Vector Data + +### [`tigris`](https://github.com/walkerke/tigris) + +### **Polygons** + +All the data we are working with in this lesson is confined to the state of Colorado. Let's start by pulling in political boundaries for Colorado counties with the `tigris` package, which returns a shapefile consisting of polygons for each county. + +```{r} +# download county shapefile for the state of Colorado +co_counties <- counties(state = "CO") +``` + +The `tigris` package is one of many data retrieval R packages that uses API calls to pull in data from various online/open databases directly into your R session, without the need to separately download. When you close out your R session, these 'temp' files are erased, so it does not use up any of your local storage. + +At the end of this lesson you will learn how to save shapefiles to your computer if you do in fact want to store and use them in the future (e.g., you manipulated a data set quite a bit and don't want to re-run the entire process every new R session). + +### **Lines** + +`tigris` has many other data sets in addition to political boundaries. Today let's work with another shapefile, importing roads for Larimer county, which returns a polyline dataset for all roads in Larimer County. + +```{r} +co_roads <- roads(state = "CO", county = "Larimer") +``` + +### [`tmap`](https://r-tmap.github.io/tmap/) + +Throughout this lesson we will be using the `tmap` package to produce quick static or interactive maps. + +`tmap` allows for both static ("plot" mode) and interactive ("view" mode) mapping options, which you can set using the function `tmap_mode()` . For today we will be making quick interactive plots. Once you set the mode with `tmap_mode()`, every plot call to `tmap` after that produces a plot in that mode. + +```{r} +tmap_mode("view") +``` + +Lets view our Colorado counties and Larimer County roads shapefiles. To make a "quick thematic map" in `tmap` you can use the `qtm()` function. You can also use `tm_shape()` plus the type of spatial layer (e.g., `tm_polygons()`) to add your layers to the map. Both methods below will produce the same exact map, and you may think why would you ever need to use the `tm_shape()` method since its more code? The answer may be rarely, but there are some cases where you can customize your maps better with `tm_shape()` that we will see later on. + +Also notice that `tmap` uses `+` signs to tack on additional maps/elements similar to `ggplot2` code (i.e., no pipe!) + +*Note: map rendering may take a few seconds because the roads layer is pretty large and detailed.* + +```{r} +# Option 1: Using qtm() +qtm(co_counties)+ + qtm(co_roads) +``` + +```{r} +# Option 2: Using tm_shape() +tm_shape(co_counties)+ + tm_polygons()+ +tm_shape(co_roads)+ + tm_lines() +``` + +Mess around with this map a little bit. See that you can change the basemap, turn layers on and off, and click on features to see their attributes. + +There are a ton of ways to customize these maps (more details on this in the spatial viz lesson!). For example, `co_counties` has an 'ALAND' variable, which represents the total land area of each county. To color by that variable we would use: + +```{r} +qtm(co_counties, fill = "ALAND") +``` + +Let's inspect the spatial data sets a little more. What do you see when you run the following line of code? + +```{r} +class(co_counties) +``` + +### [`sf`](https://r-spatial.github.io/sf/) + +By default, the `tigris` package imports spatial data in `sf` format, which stands for 'simple features'. The `sf` package provides an easy and efficient way to work with vector data, and represents spatial features as a `data.frame` or `tibble` with a **geometry** column, and therefore also works well with `tidyverse` packages to perform manipulations like you would a data frame. + +For example, we are going to do an exercise for the Poudre Canyon Highway, so we want to filter out the roads data set to only those features. Using your investigative geography skills and your interactive map, find the highway on your map and find out what the exact 'FULLNAME' attribute is, and use that to `filter()` the data set. Call the new roads feature `poudre_hwy`. + +```{r} +poudre_hwy <- co_roads %>% + filter(FULLNAME == "Poudre Canyon Hwy") + +qtm(poudre_hwy) +``` + +### Points + +Most often when you are working with points, you start with an excel file or something similar that consists of the raw latitude and longitude. When you have spatial data that is not explicitly spatial yet or not in the `sf` format, you use the `st_as_sf()` function to transform it. + +Lets work with a couple locations along the Poudre highway, making a small data frame of their coordinates: + +```{r} +poudre_points <- data.frame(name = c("Mishawaka", "Rustic", "Blue Lake Trailhead"), + long = c(-105.35634, -105.58159, -105.85563), + lat = c(40.68752, 40.69687, 40.57960)) +``` + +Right now, `poudre_points` is just a data frame (run `class(poudre_points)` to check). We need to convert it to a spatial (`sf`) object first in order to map and spatially analyze it. + +Within the `st_as_sf()` function we need to specifying the longitude and latitude columns in our `poudre_points` data frame and the CRS (Coordinate Reference System). **Note** **that 'x' (longitude) always goes first followed by 'y' (latitude).** Otherwise it will map your points on the other side of the world. + +```{r} +poudre_points_sf <- st_as_sf(poudre_points, coords = c("long", "lat"), crs = 4326) + +qtm(poudre_hwy)+ + qtm(poudre_points_sf) +``` + +Note the 4-digit number we assign for `crs`. This is an EPSG code, which is tied to a specific CRS called WGS84 and one of the most common reference systems coordinates are recorded in (often noted by the fact that the values are in decimal degrees). This is used by Google Earth, the U.S. Department of Defense and all GPS satellites (among others). A full list of EPSG codes and coordinate reference systems can be found [here](https://spatialreference.org/ref/epsg/). Note, there are A LOT. Probably the most common used in the U.S. are WGS84 (a global CRS) and NAD83 (used by many U.S. federal agencies). + +### Coordinate Reference Systems + +Probably the most important part of working with spatial data is the coordinate reference system (CRS) that is used. The CRS describes how and where your spatial data is located on Earth. There are numerous different CRS's depending on when and how the data was collected, the spatial location and extent it was collected, etc. In order to analyze and visualize spatial data, **all objects must be in the exact same CRS**. + +We can check a spatial object's CRS by printing it the object name to the console, which will return a bunch of metadata about the object. You can specifically return the CRS for `sf` objects with `st_crs()`. + +```{r} +# see the CRS in the header metadata: +co_counties + +#return just the CRS (more detailed) +st_crs(co_counties) +``` + +You can check if two objects have the same CRS like this: + +```{r} +st_crs(poudre_hwy) == st_crs(poudre_points_sf) +``` + +Uh oh, the CRS of our points and lines doesn't match. While `tmap` performs some on-the-fly transformations to map the two layers together, in order to do any analyses with these objects you'll need to re-project one of them. You can project one object's CRS to that of another with `st_transform` like this: + +```{r} +# transform the CRS of poudre_points_sf to the CRS of poudre_hwy +poudre_points_prj <- st_transform(poudre_points_sf, st_crs(poudre_hwy)) + +# Now check that they match +st_crs(poudre_points_prj) == st_crs(poudre_hwy) +``` + +### 2.2 Raster Data + +### [`elevatr`](https://github.com/jhollist/elevatr/) + +Lets import some elevation data using the `elevatr` package. The function `get_elev_raster()` returns a raster digital elevation model (DEM) from the AWS Open Data Terrain Tiles. For this function you must supply a spatial object specifying the **extent** of the returned elevation raster and the resolution (specified by the zoom level `z`). We are importing elevation at \~ 1km resolution (more like 900 m), and we can use our `co_counties` object as the extent we want to download to, which will return elevation tiles for the state of Colorado. + +*Note: 'extent' is the spatial bounding box of the data (represented by the x,y coordinates of the four corners inclusive of the entire spatial data)* + +```{r} +co_elevation <- get_elev_raster(co_counties, z = 7) +``` + +```{r} +qtm(co_elevation) +``` + +By default, `tmap` uses a categorical symbology to color the cells by elevation. You can change that to a continuous palette like this (an example of when `tm_shape()` allows us to edit the map more): + +```{r} +tm_shape(co_elevation)+ + tm_raster(style = "cont", title = "Elevation (m)") +``` + +When we see this on a map, we see that it actually extends beyond Colorado due to how the Terrain Tiles are spatially organized. + +Let's inspect this raster layer a little. By printing the object name to the console we see a bunch of metadata like resolution (cell/pixel size), extent, CRS, and file name. + +```{r} +co_elevation +``` + +### `terra` + +We use the `terra` package to work with raster data. For example, we only want to see elevation along the Poudre highway. We can use `crop` to crop the raster to the extent of our `poudre_hwy` spatial object using the `ext()` function to get the extent (i.e., bounding box) of our `poudre_hwy` object. + +However...the following line of code **doesn't work:** + +```{r} +# If we try this, we get an error +#co_elevation_crop <- crop(co_elevation, ext(poudre_hwy)) + +``` + +This doesn't work because our `co_elevation` object is actually not in the proper format to work with the `terra` package. The `elevatr` package still uses the `raster` package to work with raster data, however this package is outdated and we want to stick with `terra` for this course and any future work you do with raster data. + +```{r} +# note the data type of elevation is RasterLayer +class(co_elevation) +``` + +`terra` uses objects of a new class called `SpatRaster`. Converting a `RasterLayer` to a `SpatRaster` is quick using the `rast()` function. + +```{r} +co_elevation <- rast(co_elevation) +``` + +Now check the class: + +```{r} +class(co_elevation) +``` + +Now we can use `terra` functions, and re-run the `crop()` code we tried earlier: + +```{r} +co_elevation_crop <- crop(co_elevation, ext(poudre_hwy)) +``` + +Plot all our spatial layers together: + +```{r} +qtm(co_elevation_crop) + + qtm(poudre_hwy) + + qtm(poudre_points_prj) +``` + +## 3. Reading and Writing Spatial Data + +### 3.1 Writing spatial data + +All of the spatial data we've worked with are only saved as objects in our environment. To save the data to disk, the `sf` and `terra` packages have functions to do so. You are not required to save these files, but if you want to follow along with these functions save the data to the 'data/' folder. + +To save vector data with `sf`, use `write_sf()` + +```{r} +write_sf(poudre_hwy, "data/poudre_hwy.shp") + +write_sf(poudre_points_prj, "data/poudre_points.shp") +``` + +While you can give the file any name you want, note that you **must put '.shp' as the extension of the file**. While '.shp' stands for 'shapefile', if you run the code above you'll notice a bunch of other files are saved, having the same file name but different extensions. These are auxiliary files required to properly work with the .shp shapefile. **If you ever want to share or move a shapefile,** **you must zip all the auxiliary files and .shp file together**. Think of them as a package deal! + +To save raster data with `terra` use `writeRaster()` + +```{r} +writeRaster(co_elevation_crop, "data/poudre_elevation.tif") +``` + +Same as with the vector data, when saving raster data you **must add the '.tif' file extension** to the name. There are various formats raster data can be stored as (e.g., ASCII, ESRI Grid) but GeoTiffs are the most common and generally easiest to deal with in R. + +### 3.2 .RData Files + +Another way you can store data is saving your environmental variables as R Data objects. You may have already seen '.RData' files in your folders before if you ever click 'yes' when closing out of RStudio asks you to save your workspace. What this does is save everything in your environment to a file with a '.RData' extension in your project directory, and then every time you open your project it reloads everything that was in the environment. This however is often poor practice, as it prevents you from writing reproducible code and all those variables start racking up storage space on your computer. We recommend changing this setting by going to Global Options and under 'Workspace' set 'Save workspace to .RData on exit' to '**Never**'. + +However, there are times you may want to save your variables as R files, such as when you have a set of variables you want to quickly re-load at the beginning of your session, or some files that are pretty large in size which is often the case with spatial data (R object files are much smaller). **You can save single *or* multiple variables to an .RData file, or single variables to an .RDS file**. + +Since the `poudre_hwy` and `poudre_points_prj` were objects you created in this session, to avoid the need to recreate them you can save them to an .RData file with `save()` : + +```{r} +save(poudre_hwy, poudre_points_prj, file = "data/poudre_spatial_objects.RData") +``` + +Note that you must add the 'file =' to your second argument. + +Now to test out how .RData files work, remove them from your environment with `rm()` (*be careful with this function though, it is permanent!*) and load them back in with `load()` + +```{r} +rm(poudre_hwy, poudre_points_prj) +``` + +See they are no longer in your Environment pane, but after you load the .RData file back in, it loads in those two objects with the same environmental names they were given when you saved them. + +```{r} +load("data/poudre_spatial_objects.RData") +``` + +Note that `terra` objects don't properly save to .RData files, but there is a work around if you save a single `terra` object as an .RDS file with `saveRDS`. Here is that workflow, there is just a second step to 'unpack' the loaded .RDS object with `rast()`. + +```{r} +saveRDS(co_elevation_crop, "data/poudre_elevation.RDS") +``` + +```{r} +readRDS("data/poudre_elevation.RDS") %>% rast() +``` + +Note that with .RDS files you must assign the loaded file to a new environmental variable (unlike with .RData that returns the objects with the exact names they had before). + +### 3.3 Reading Spatial Data + +To read in shapefiles, you use `read_sf()` . If you saved the `poudre_hwy` shapefile in the steps above, you can load it back into your environment like this: + +```{r} +read_sf("data/poudre_hwy.shp") +``` + +Notice that when reading shapefiles into R you only specify the file with the '.shp' extension, and don't need to pay much attention to any of those auxiliary files. As long as all the other auxiliary files are saved in that same folder, it will read in the shapefile correctly, but if you are missing any then the .shp file becomes useless on its own. + +To read in raster files you use the `rast()` function and file path with the appropriate file extension + +```{r} +rast("data/poudre_elevation.tif") +``` + +**Remember when reading in files you will want to assign them to a new variable name with `<-` to keep them in your environment**. + +## 4. Exercises + +1. **Explore the use of `extract` from the `terra` package by running `?terra::extract`. (Note we need to specify `terra::` because 'extract' is a function name in multiple packages we may have loaded in our session).** + + **How would you extract the elevation at each of the three points in `poudre_points_prj` ? (2 pts)** + + ```{r} + ?terra::extract + ``` + +2. **Choose your favorite state (other than Colorado). For that state, carry out the following tasks: (8 pts)** + +Import the county boundaries for your state: + +```{r} +ut_counties <- counties(state = "UT") +``` + +Import elevation for your state (using your new counties object as the extent/bounding box and set `z = 7`): + +```{r} +ut_elevation <- get_elev_raster(ut_counties, z=7) +``` + +Create an interactive map of your state counties and the elevation layer underneath (*note:* use `?qtm` to see the argument options for `fill =` to draw only the county borders, i.e. remove the fill color). + +```{r} +ut_elevation <- rast(ut_elevation) + +class(ut_counties) + +class(ut_elevation) + + +ut_elevation_crop <- crop(ut_elevation, ext(ut_counties)) +``` + +```{r} + +#Need to crop +#and possibly convert to spat rast + + ?qtm +tmap_mode("view") +st_crs(ut_counties) +class(ut_counties) + +qtm(ut_counties, fill = NULL)+ + qtm(ut_elevation_crop) + #UUUtm_raster(style = "cont", title = "Elevation (m)") + +``` + +Choose a single county within your state county object, and crop your elevation layer to the extent of that county (*note:* use `filter()` to create an object of just your selected county that you want to crop to). Follow the steps above we used to crop `co_elevation` to the poudre hwy. + +```{r} + +rich_county<- filter(ut_counties, NAMELSAD=='Rich County') + +ut_elevation_crop1 <- crop(ut_elevation, rich_county, mask=TRUE) + +qtm(ut_elevation_crop1, fill = NULL) + + + + +``` diff --git a/data/poudre_elevation.RDS b/data/poudre_elevation.RDS new file mode 100644 index 0000000000000000000000000000000000000000..198d599b90b9da29ec2af726a275db874e0b5dc9 GIT binary patch literal 14581 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 JP47=X{U7Ow4&49% literal 0 HcmV?d00001 diff --git a/data/poudre_elevation.tif b/data/poudre_elevation.tif new file mode 100644 index 0000000000000000000000000000000000000000..3f3d18c821dd9b82021ebc2e3b120c293ddd04ba GIT binary patch literal 15433 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 literal 0 HcmV?d00001 diff --git a/data/poudre_hwy.dbf b/data/poudre_hwy.dbf new file mode 100644 index 0000000000000000000000000000000000000000..1153041872c8910a59cb50096a9ff6e2989b110a GIT binary patch literal 1446 zcmZRs=H_5wU|?9t;K&H1P(e5YgO8`5t7DL-3sAxtBpHCJg264+$H&jn*A<t1P)JB5 zR1a4Dz9DYTU<n-N^C}n`8W@{d8X6l~8X1`=P!0m}OH+zc6`T|ED)aLcJjyF6G}4zs z{pi|*4NVLT&;=>s0|U^+*wn(z+`!0^5_4dBM{ocd8^QvC5_$v&ppgY70SD7N_yf?0 Is##bH0DQZ{c>n+a literal 0 HcmV?d00001 diff --git a/data/poudre_hwy.prj b/data/poudre_hwy.prj new file mode 100644 index 0000000..5ded4bc --- /dev/null +++ b/data/poudre_hwy.prj @@ -0,0 +1 @@ +GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/poudre_hwy.shp b/data/poudre_hwy.shp new file mode 100644 index 0000000000000000000000000000000000000000..c154b5029e4be8f87c27165cc72ab89cb0f9e487 GIT binary patch literal 54132 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�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 literal 0 HcmV?d00001 diff --git a/data/poudre_hwy.shx b/data/poudre_hwy.shx new file mode 100644 index 0000000000000000000000000000000000000000..3d891269c19703a479b6ba8063ac154049e86dfe GIT binary patch literal 132 zcmZQzQ0HR64xC;vGcW)VgT~A`w<Ig04(zcjzP8-S#ld|&n+C5>)B)B%Ql3q5E)LkW gqlg*-c{_mk9Rma71O^7CCLn!*fq^BAfgv>k0RKf3F#rGn literal 0 HcmV?d00001 diff --git a/data/poudre_points.dbf b/data/poudre_points.dbf new file mode 100644 index 0000000000000000000000000000000000000000..2acf90d3732c22a2037b1e56a927731479c8a4cc GIT binary patch literal 309 zcmZRs=H_5#U|?`$2n3R7Ae@0AFEKY2D(VcP1JIQ4D)?p=XC#&<W+y682?UiEmt-bW f$uN*HPC2Ei3O<S1sR|)QiJ3VWsfj5RnJxtYSaT}e literal 0 HcmV?d00001 diff --git a/data/poudre_points.prj b/data/poudre_points.prj new file mode 100644 index 0000000..5ded4bc --- /dev/null +++ b/data/poudre_points.prj @@ -0,0 +1 @@ +GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]] \ No newline at end of file diff --git a/data/poudre_points.shp b/data/poudre_points.shp new file mode 100644 index 0000000000000000000000000000000000000000..8fd08fc4f462e16ab674c78adab9930ed67448cb GIT binary patch literal 184 zcmZQzQ0HR64q{#~GcYg$<?8Q+EICvbb)Y8EDAd5q#UXcsr`x%(r~`^896606T^z7$ oM-c@X!v!K>dfnF?UCs~z*2@Hwn~?2%)FKtdT%Zde`q13~0KiKk!T<mO literal 0 HcmV?d00001 diff --git a/data/poudre_points.shx b/data/poudre_points.shx new file mode 100644 index 0000000000000000000000000000000000000000..af929201b7a917634b49a039de6591295ccbb884 GIT binary patch literal 124 zcmZQzQ0HR64(whqGcYg$<?8Q+EICvbb)Y8EDAd5q#UXcsr`x%(r~`^896606T^z7$ RM-epw@<8@DKxsb^4FF!34^RLA literal 0 HcmV?d00001 diff --git a/data/poudre_spatial_objects.RData b/data/poudre_spatial_objects.RData new file mode 100644 index 0000000000000000000000000000000000000000..7ca7c19ad263f8033b4c7e2a5a6d9e14922af38f GIT binary patch literal 40277 zcmV)BK*PTuiwFP!000001MR(aSe4z{_KN}rh%L5a2L_=CVt{~vz?{@<y1UaB3k$mw z6B|3QJF#2D#1=b1WuNEG?Rs46ec!$Jx4-Yty^iBqKY=;#7~>jOjB$-?c-kw?^^|&A zT3Xs#I#sJ^Y3t&jTDmgt!QCyj@EiP4MN3DkCa9MXpBj=B>K~DwiBC7+$M9cW{HG&+ z!obwj#N5Kl)ZEm{%&eFA%UbwlFZ14(7JW?2tp4lo%uWBB&sqM*h3mNsw>Gj1jLVFV zGjhTc{2%<ozu&8h+yC7^{{6GMUZ%ZFO#a{eV1^$m8%+nS4R$`F4%(EN&?5}oF0VLh z2=4Bdu8@KU441Uq3!ZE`wEZOTbor*8UBI(P@~*Z3FRU|Yy$ZZE-r$28yy~!hCO?0D zq4SF|-~(leOFQs!58p?=U`cAjQ4PT7CEZUw0bh0R`Q#J$Mqi$)1mCsq9T^9{57#|2 zAN*)jwxofLy`N<Eqq93f_sG@7PN3)NddF6PvibVX4?*=tN89S4Pmz1xbkM)^xUtz_ zP=jVU-@wo{X@j?b;Y&`ti~}Q%1zKr=F+a1G{08HDOx2kHCN*ta=L?wJ@Z78bFy(RA zZtcMI0quVu1cy0%7<LC7>AbCMADHFb?5FO3h^KZ)WGrP6|MAxiEBS99(G89XOimX2 zP+R<ERi)~WfV(<N9K5_eoh6Qcu9+Mb4*V9o%<qU=nqOAj;}W>Nx+L!|xFbO)h1|16 zG4BYtFWWV$A6O7%+aFybJ>1M^<pS`i!LXO(!Q)-0E*=M-)EN`61)kmd=<YD^+`F~b zk>G_G?*kve!i2u%qrgj}@0%xqS8UhL9syq6;Nw3Wyq3JRT$g-WS~Uy2uD50DM*h72 z*ZhRP{(iNfouVbbe|wEndtPsuWypE(e2cRo!QiQ^p6@5|xw3M5&fxRfw2&SH_x{*s z8pik1JDwNF_a345b`iKapmn(uxWQ$?xYOVo@4bh9fGbZ$>hk#(Hb1Eh0cWQih~o24 zQx4kG8=UZDXM8a@dP`krh^91i?z;wYq|pdTO;G4+Fil!-w?3E}Vq$CyCOkgc^|p<@ zs(+4FjbL!V*In1if#W?4tU#MZ?X??$w$b;R#e#!)18{KFL6`kOCq4Cr8=y-khr^vf ziLa*pD^T(7y5B5NeP&e>L{8=R;n#yhU~qQmoULGZ%`)$kVBBoYOo*~7ZA{pbx8Tsh zjjbWFs!_I`5BCGJ*3Z^|1dd<*zV-)j!o;|iufd52FKO2Rv(F6}fuW?Dd{v$~37nRB zd2JdvBS+cdJ2-2|`@_w^+0V)oe}Z!r4fmY~=UtvTA{tzDschsPa7i^y@O85F_*)L- zX_v86!KLXb8&`v?%+sXx!FArT1DAoDW-ZFS1#U0uGqMG^ccE3A$>5QR_T5H<M+aWM z9049``|N=scpz7I*&49G@aU6JaL1N+b5knEPt}UQ##PUM#+7!(|M#K9uGg6tzUw2X z6_8Qq{t>n0cVs91>fo=gK^vNa<pv(#n}J_GKedBMNItvS%M-y5ADqYD21~D7UbzFl z-P5@>hM?q4oosU(@KyMW!E3>%CChbRfsbAG*WV339GIYlwv!ZnkF$0J@7H_Uqds`& z+~ayx!5eR@{r(PKdw9?uqAt0#GOF!PP#lVqi!<MChy^c5zE6Rcl$^iPen=2m{qh#x z|J=nUuARWMuNL+10iJo#^>|xyz?oSXnv&D`-BmZpS_`Aoz*BY(m)?OVyV|zs3Ld}e z>4>2zIkuvm(LC^Inj+N<JhDK)y%BgY>A<evV8K+gymR25-39eAWF@<<2OYNuxAtvV zcmmvfAj}OaNV4(BlgT5&^^wg|FM@d;+snU!Yx7cX#Di<xCswHku6A;^e+#Z^=5j9= zTxo1Ms}#%)eEJP4K(gY+pcMAUifhh?W<WHa<PR{q2;QIls=Enz`$yLw>%p5J>i;qa zudeNyI|n@5A;W(fcq-)D;hvzNV!&hGt4`Tb1WSK>AN3cH<xN-;4xaI8e?k{LcVuk+ zc<`eC!sAmwp+CSY`mNvX;C+T$S!97Xwo8_9NZhgC;Kd>IC{)jZL*=QC(N_-1=WX;~ z4gz0Y|1zU5_}0qn0f)?|7mKntgWnF-Z&d>RDjhd*zm2`R#+LG~uv%(^s*Y7#f_04F zyoCx;H<(^=;3;U>=ye&aow^Bi9N64!O6)|iMZ_CVTvy$)@2bdOq>rg;0O@tHD2~jT zVAF=5TWo7Jf#199(X^1)89K!22N~G<MmD*t>c&lA)7a@!w4=IN%f0Cv$;DImKKh%= zgu8yE#pBm4$jskom-D*oeww}EeZEbcG8Ale;(3Pw|IJYD^M7P0H}yQC&TM*j$wD|Z znT@~OJ7XwkHj4Z_BLHmJ=VYWY*uZJKQ6^Z=>DTgWVBJfa78AhQ<2u<+18d2p^Dz`M z_2>F$SdhtAvOkm6P7LIA^fJ0sn+(<rme<_^)-dw_02Po~?PW!+0&<X5KnkdHXY8C* zuxf~(Bns5>dVCXBFXQ*OV|GPkz4~e8;E#K4FFymn*0)K4waWP9P;HR}{1EoA22@5y z>6cSSn~|PoS8@G}mqte-Uw|c7)K{RQGM<gOl!5ojc-rv!yP4qQoEsmkz~XvIrBGEF zMO|M!x(VJh?iFYX-l^SgD~58$&1<{QLsev4ALn5PRg-a1fA`yP@L1RF8h&nn^QHl1 z;Lb896W%|+_d$=I;Kse9Yva8$*3DJ~@IGr+ST=P9S6lDYhjq=!{naS)3%FD-Jg5%1 z@JsRQ9B{$3uC2+rWqEl}F&WeI_0N}p6U{@jdHo5x5v`yaGRFG8{qP7J*-ds9?VXW% zA!RS`lQ~GgzYCbAJxc>`CL_sWq%GSiZu$H3`Cyn|)mKne83A9Ow&dqDXGUz_0jlRo zra<*%D6e?NP5~7yTRQT3GOyBTIHVa~Co@0xBCYGDLltLuy8P-f2bAXRJPehV;pRK~ zDO7BRtMA&?P;D75!#d9$0uI@4nK}z}P9G$Pw~#UTgS;tJScbzE|1zk&4Etxb{CI!+ zsyWhqpiS?gz1_h95zQ7u&NBM1>pJWPS^bO)yt#~i<Bz%8kli=$Wjk7b>(n5Md^PjV z_P>7LuSLlbKA&|-K=X6t<fdoYzt-B1Yh4EWI=0&gZ!W`Xz_WLhGfN#Wms_Akp4mRi zM{l#|J7B6ZOhSLC;EiP%ufOuO3fR?h?-t5MrwtLGVWKiR{GLCA?b5!eXR{SxyMj}% zDNpS(Hr9fdmeIE0%?7?#Tg9OJ7#|sJHo7F81dT3Kw1KJ0XkC$c#tv-RVZ%<0hm2;W z@zZs{CR6I!z@%j~T7s4X>u(;j`88OlT6Y_mrVM@cx<+Hc>dRCgDeqb%uG`|h)5{_c z)x^)~pL@RO&;<PG&`pK$lm4!tSF1+gTca+~=HRO)eR`nX(qG(3x(F{Y{lWap(TBi$ z$IKg{9n$aiDOE#G(r+Fsy$(4@zk2?agnx%GWCT-_UKoCB6y!Vo;^o`tYk=n~9Fu*( zvm>T{S_qzKs~v!Gmwr@PZijYEKNMv?6oF3qUU(1u{w~|O7vNo|Z>@g#`D1YT#P{tm zj?<S!>zcy*PG2y0+G2ljPMtSJwZW-f9o#UU)3ehwYu|%oJB7O;081ZzK4vJNe?))y zkzl(2_O~#(=?SmfugwEvTh*O95R3|3x*l?n9yal_jK7DozXx7>x=+U1yD;JDii*W@ z^lQ5J<i(dDZ|UxvjvVCgU5huZg3FNZJoeTM=&5wasP9W4hw1j08?49pOdqsN&vqqf z+u+m$ehyAr_*8JfvRoSl*ndn^;YLz>-ZZ!n>HQwpSk{X_Yc{rFdkmO%*J(Gur}1A2 zS0vp=WA%6_uiHNSkc_<S-<j<+=<ouQr+@w4=JJMh#ed!JU)Qf3AL-U+y1n_nmMupd zhWDS|+dFj?^hbJ^+<iYVzSBGR@BJF`mfq?9!Fz1))^ta~mKKSdC@0MmQ*+=7r8iyv z)PmP-d~nKh1hnamj@4`*12)*KdDkDT?_sThi;`}z=I(n$Iq5a(EGX*(Y7g4598pqQ z#a$aujJvdQyW2~kztg^kwHuNReoU5TLI0(_@88fD@0a%WQPat9z}J!m4fyw$uNvyY zbxeEVe|d-rSh6lMl%IckvYz33@bO8XdD`HEB~`n?bxgbe{GzrOcy92+>21I>UPqnK z&S|F-Bfdj!(hk<H|DrFr`*@oES8)3z?{(1UX`5e7N`w7MTdy_X6~DJwZ~G%eb!qeT z<CmlV(<ZN|GHV?;zUJX2h`!QB?Or$zE?3$Jhc!Q;FVj-5^iSdY#jY@%0zH}LH+))C z6)5V@H1EEz_Fz1uNnGc2cLp6_TquHGO0z5LdhI1RXl?AlWKf8XzyZN8iq?SEAHT>D zC8k*&dHojlC9TiVKC$TcwB9Y>{f2%_Ghbmd{0wNOYO+EPgyZ7B2Q=BWAyG-D9dSQI z4*gi0?PIcHTfrrM&bYb7L4L2^dF|yO&BG{Of5IremE?oj%P@}8EbG1)KZ9)QS|xzL zFE71Zoy@EC<0;wZM!yGq9><4~ko&Y=Z3hoy|C*27K5YW8|N7ZHKA&lnu7c0gv#@M6 z<S4D1Wo!@l0cl;GN3DThk=D7reg^xo!^>rJFiz6iO<Q#gE`C~@7Wr1t6KSm$ec9g) zY#Ql1a}(I$efkAN?P-F`2WsUkwnY1<mdBo}j($!3{`2Oj>)>ZUeF?6U`q9LEHKOs< z_g`|WAQVV_*Xw5>>}~3s=)&=kkJMKudMtpRO??@B-zge=ex-LkHTb0b;4rxGsgK}; zV;rXzcZ^<*eoMXEY<3sOed_I?ZVm`RQg2R;><QOARh-C4y?R*I2vK}$VM@$C_z9`! zv`^%tom0h7BK4%Z)>&`xNL<r>d=890TfBE_fnS|buuG|X&*#*@_)6We$FrUTxNWfC zB#gt<Efqd7e4kB-jT(?KcR%C(Q`bKC|BC)kU48WR8EbH*eQ-7OSL%}WrJm69sqpxF zqQ6pSHaR*U{gav#+h}uLaLUiN?cu+rPHwcIG3--n_7rcQOtO_@eSUso=>E8$;DpuZ zr1qqZ(U{R>vw-VzvfeM{1hV7T+I)`*NvRP*<gL~g9m(e<-A|L#uPiJeYc9OM3mo6C z;aI-cIP;sQ`CemXlhgP-V{&Cu$ZP7bf*{)g;LwB`YoV7?GlLg)gMLeeIn7>8T3sB| znbhB)>_N6jlopa1dvcGFFTbuI$nUjqnbC$nKbqa0{gaX4-2tI%YWhYqC-}dqX)8ZZ z<@Zwut?UOsAT@b$RVhNJ)Wie#4#Cc+#vkm|ANDLY?ADstCt%RhaW&a~0c*{5`MiD? z2AEPFeBt=Q&Znvln19FkOjTO6Df<P=FUIsBWg{Nm<oyvCE1}O)-ScuPcs*&erW5vq zZm#>@P;OnEu5F0`oej?ohF_OD_;kn?K3BgxYudu!P3=4A!&}(%)ZR@G+VFEG^$oLr zfZc}$yKM%IYv+!I9!YI?{evIuVQQO62gi;BoA|tI48J5*)X%B<(QyXwuTyJ$bvlg@ zF}0ePmJ<3t74G65=#NyblWmId`IKLub~`{Hq?ETEvUwHw-F36#0Qh9x-PL%n6lmFm z*<cYJOz>`4{jty&DYt?=b>L^FT#r|dNC2<QofHXunNoPia3bQ06g1mx*ozc#Vl?G+ zY`tO7+bJhqF6m?Zr5yJjSq*+i%E3eZ>Y|@g_O_n44C5_jr^Njv{GXKVgR1MpFHG55 zQp@rah^HEr0dDv<{T<pdWsPq2wa{-VD|<${!;eW>?h!c(<2YqW`l4tLaNhBscJMb- zX20`$djZT*w)h5nlQLy`!+X%%DcKxg;P`6|`tW{ZTWen#431vdcsBGz%1Cv_N9c!? z;o+){v1I4?$ydRlmq+i0Jxvj3$x<>dEJ`mS6<xNEA&piU>>-;BoGJW%kjc;QWS#ql z@MBWa3w{jzNVYGVf;b^1&Hwgh=)08EnAz*#FQ=po{;_W^nEaqsci6L(=%Fip*$%-$ zYo22qroels2K|yUxUuzk{@re+;XwGcDT5}}n~Hu;v7OY%1>-TrX2Yv8jKh?H-TP&B z2m61$H>WPS^83Lz<N(QgjIWe_dmEd#C8gHuptn={1RVB-en=7RN{Vsoh+z%Ej&=NO zd0(TVQ%#}QQd&IlZBi3#nt0Rz@|MzgqV6F0aVZ8SQO1qI>fM{Y#`sRInDuct`aAin z?#8}&&*aZ@W`0B*n*5<!_z(Dd$?qf`uS4G?KW}l@810>WZ|Jj3=*8rtvv;h8|B}2r zIxrpnV)8bPVgU4K@|G^i^R9rKJA^NQ{3O%O#(O8P-(=zKPFkGIL4PK%eeiQA{D9=u zeX`u#z!gDyd!SE~m%iAs19FnQICtATv`6xS<cdx3`;({boKzEjPx92W>qh#M^_tyH z2dB)>P;@07PY-xUcC?aiCgFHlkg2c2UyzT#Z5zSwWy15}^=6efeGcZB`3`{}nLPc@ zFAK;)^2`(as$v`_bN-#rx1;m!+t3@yM<Sn>L!TxKQ!wE1(k+=CK)6A9`^fo{(8FYw zET8ukXQ`8qTYJss=b-gNlF3RxJo%{i+41lHYR6+E=bA!qC7(DNIs^Vp@~IlrVy(%G zTZgbePVe+@jQ&nObLWRHpX=-cU2XWm$)dlXd|7_72F6qJ)zML(*`GIT>&$`OPrfy5 zcn0)u@|{Djx8V0A-(CH4wK4nA{c~-hKht&;j3ax7wPruvozr{MWbk&+TYl_^n-oCs zTI-ALAMyIZwU5^$Jsr;{lD9`?r}6Iy^byA-U*Em9={??m_h@x@-hW1F_YL6V{NRW1 zr<0%5z4sn=D;ZI5R1moe5d`?`-Th+*l(WI-=TW|13|@1S?fJU9Ui-n6!^SIm?xtMQ zv7?+;PH858ozZX?^g(j@idOH~u0Ll7e?dE^X!#8GK%AGNQ(<SjjPeeL1@U@HolXTk zIldaS{g@1SOlh=YSa0e>LvttNmt>Ne>sbE2(!Wk=cq(9J6@Gr#;V6uUlzMCIK5+cj zIo&b<erQUqaY;uw&a2I9VS%_irRw-M{W%VJTlmY#KYr#P>BQ$e)aL>0RC4M4C2sJW zlV4?Q9f0^fx#ZoRssU`52Z7GGZt^3?Ee+wXCqJM7vtOocN@Tm-xzwPL<LtI&-#Z`J zuE|Y)ay+4z2J?G2f23t<la+B|^3Bt2X0hLI)sF8mmE;5mzaMvWWC5?2R?+vt-}3N% z-+tJK<f4vy+Ho8`7+7!%aeQ)d%{s}H!{VWmp?k>u8?Cd*`5QJ-4vO7<>#XJHpGZ&f z=LhB;m;T^&RJHWrM<w5PT{7b&uWx9*F^~5>mG9Mz&*2g3#^<?m|5mkHl<Sz+1#2kp zobu$jczvete2%*nam)F>!Yn(u_r6Sv?XlyL-Eal<%-&wpy{SJsd3pze^T)jjru@$~ zT`}b+$2BKRINr_1>giJt#7=kv`<*<g$BQBGf0HL1{Co_0I9c?AlE);Qbvyx%oO<z2 zKXBN%drLTOht5SL115KvIT`Yh9H(<c#rBO-_3h604R?B)%6@e1Q}T`PH+aT_n!Uk6 z_df^0ZYB@xz5Fxmb+YxMhetVHM87_{*Wwoyh<B4s`{XC^_ub#Dlu@5`-95FG<D%2T z++Wm3MhHmQUrji11=e4X{hjSsXV|i8)RVOwvR6=#ivC2h?yS0&)C*OcJopTKpTy}A zJa<xgqg~0+zezCDU*3Yn-Z>X@z>}LCn<G9=DzKDZMSmvkIlto!u9LK_Va=6@W0N+Y zDW8Dxl(ZpdXE5|g(z?K^nP~r{)dQcMg?>(2W_)QT{F9^wy&Fw|d?d|^8My`bPny_g z{$Tj$Nupnw6c|5Y1>&$IP0FJCc>kn<7{D0UNqtMk--A9+vh>yofgMPK7U~0in`HJR zs~Plil8NpZXZSZs-D}Hr_*`A9n$?8=l_bU~Ni<LBkEEtq*}8ll!#<fWVTY3Hf4(#X z`X;H)vDYgxu99ly7JlS)=mx`INvgK7;T!0=B<+h0n<3sz6#c8jFK(^oK@Jixm@ZMn zP9~o9TAV!*JT-ZC4E&SC6Zy*)z^*4AfAD+^^k*WXTvto*P+^f1{OZI5Q6qmq4<_z! z?b7NoxFK~?Dda72vEST1@D~ziNMnB@PEE`@Z&VJsOUzv6F&+MLqUg6KN)5)jp}!Jc z*LV1hagaEKfg9+!CcgsXEOF5A;hvE9M04+>ZD9uzd(5z~ga4b@O;z3s?UUG5-mn;U zC9(6==i2ZC6Wcx8D@VH|w#~SF0rn};=*}Ds^jl)<TD^`!A0;*jygwWIC9%$njZ%!W z#M*R7LH)NWwa{LPHFs3+4E>l`eNclH&^L)X>w0XS1y*^il)_I+5a)>#%AdzfL7b9M z+I&-YjN614N1W6c-wDrF`G&)vOL**<?Tt7gLDU}!cWC&)EB;kaAbw1^P<=xw;>?6o zrTzQjc@v<9qhTi##3h`B0-GHY$VmdURCD-y2|GOV?BLfWY(3&S<s7)BP2J|Oy9pbc zwtUbB%nPlZj^|8Rz3EeZ=(B`eV?WO&pr|hrmfNhHh`2jp*;L0|fqJ$pF|HDp9y;b! zhs+H#+(oWGJ8J^D8xaRT_podFDt>==1J|d#p84~frX&q6xN6sMNl)I_`@zVy<j6}e z_kwW$hw(kul`h>5`<Sr4*7bIG$dDI%o{@{=eYTQ0ciVm=z1tjNd*)qjezX(Wbb8By z{C?MA*C9s<YYiNN9`X8Dw;#U8`vxw|V0%N%ZOZvPx+g+g|Mgx=>c3wKdyugB()GiL zR}&TnV}yY7Zh!s(eU~t)X6L1dXA{Qn+Eb0~micVCG3<9j+Q&7kVc!!H8yVJPKSqpl zP{W@}2zt2u1;$~5IB%UGb5xr`eiGakSUEyZB-nA87_@CaZ6x$SLa*108pAJ7Fp2ZI z4*iqR!}pQTI*|Dr{G6!w61q4fuS49K(AIyg680m(=+U=Z(4z^hTa@qPbz9cm_8WRE zq1nM^c^E$lP0W67f*wm~ls4%c`=S0EMPK;I33al~2f`0ZsHGkwqkPrWw;hgnD*oG& zaXs;z@t+M3Zo~cK-*52>#q-6#RX@6jxFG(O)ybCdhvP+mB>wjK>X*?k@fTio{tdkp zf9g}*ci886t`s8Ph+pF>vxC1Lzfz?sfIko~#yj!iJZk(R=VM2=feXX!x5JLc&l_LA z9qds2?1agiFuvnOeGosb)^Q)`i+F^MW6=-s6I4S!V;se2y%^CAeti6}>r;2~IYM*o zvrmD3lF0Y)hvS8W5>Qb$+W`K0ycYs~_(k!aI$LMKZ;p4@DX#}T6%TWKq8N0xe;W^Z ziFf#2uRg|8{GfucB-qRNfs?Y%LyyLrHuD~cxG>(NS>|tyt9WBIA`7s~{--g}Px0-H z=4GJ&<Ml^}9fQ9euP5oV7;+z9#m8tC{F=Bj2pasZxNqipt6(4FK5cLC1o3v<`^Mh+ z8W2{xCj6(k7wcM<EC!!Gj&(x&$31GK>JIx5SLB*@1?>}eXUeztkcYS%w`)7Y50AS_ z0RjtGPJfK?8+X3@3?KMCai?#*tyTe^SY6W}adq6$C5_wiK8LoAF@(PtSMdIR8ssBx ze|E<W)4_e07FAnE`l%~mZ{v1<SlA1CCT{0S^CcMfajSR9b705f7G3YwZ#g)3$f(h< zOL5aDyS74H8#ig>!eIWK<>tB%avUdQHGu41v_qWR>cTO69}AZ^;Y*LGV=HP*vc~v` z{SmrdAN>>il>rI(X?=bK>{smj{V$ebT*bb7_~|_KOYGajQx;>~#lG%;r8(l1*jIZN z`eB^MK3}vY2G1Y+G~(O|=%v`Ab1wB^_ha|H`DzKh7rSLlc2~p;v9MNc@!YYamd4kE z9~zr<arl=nVD$5?>o8toxzY>yj17bWK|jPgT^hat{zq&dEk`%#$5?X&RM0cACdM{j zG45l#y_hF21zW7UnatnUU(?DAeon0Zb>{`}^I~gw?!3+Cr(2{0R_U<tE#x)kS62D} z#6K}VxW)~BZC5=8<0j@~*nVe>=a_d}mOX`^5c6!r()}~R;<FXAK7qIAj4_5jjJZ+& zO*HgV%$2q7fv`g{g@c`EAl{GJ=QgK0>|M-;StV`YKgBHmGA9OcO3VWF4NHvMm^mjL zkHb%lnQ77TES@(;oL`Fxx^(+J>{pC$@6djbyBKwZaS+BujMAl9{&-L^=5#|or}u=Y zdg#{}kLd$0zz>L#tj;@%_$<cd+?~y^12N83uFQmejIrBO`%4%IcWyfLbxhS7jenvY zqkl#wO@@3%|5y<fhv$k$cwYzCi~g+FIUW9W^aslW#gMn?ccX_DKrctXzJBR4^m+8l z?y^<z!=oR?#vX;ekG`{DT37T_^mTcUnvn14D=S;Ag8vasHv{q)EyjP*V!Rl=FE_0S z<1u>gu>0@P@6nrU=!Zitqt_l?;q(y9?bL0~PH?H;5KFXM^z1ufmWXGgr-j^l&*z)m zwz~)PaP-(YDf1A=L=XS14B&l|6(tE6ztNnw#5jzO{C=zz>~nPRubb+IU|{oA=irA# z`}JS>9e!T4X5}GW#F5deF5y+6-=dYThChUUi5BPMqh$f());~`Z_u03UIPd9hP{k- z(~WV5-xBRIqs@?O;E-+Ce;fmybIp&!Z-{nsOWTNcj~=`|`aASiwEgY$_ONr&;<`+< zO@i41=!59~AJ^aHb*)``u4lVgj`(s3av0rvdJkR1fzdtFO6np`i0)DI_XNay(cStj zdvgTrqE}!Kxr=T)K1`SW)Mi9y=ks8THp_PNxtnTb>9QXh6^F`Tm!j(*a$3XZMYNp> zKP0-=@H!6APtnjqp3s-k)f8rpAWzZSA(lDN8_`;mBZuO;QNQ;7dW`WD^-=c81LG~~ z<&J3q@Drj+E_P`EdmZ)UY{VSsfvAW1Tm7$tMMD>sK~F^8?boIW^hngT+-vRd98qWQ zTyucjM4g)7c`f{@sN+75vLKI9M_NU!K>I}<c)xo$^hVUaTNsJp?)xi7L7ztLta>FH zb}4F`<d_b|ThtaRPH<D|fCOHj%c_vOsJxtt$B@IQRU^Nw4+V2Khj?HdMJ-?Q;tt}X zs71e9u7e(nS|DFF6yqdn)}zv7#7R+8%YTMqyhcrKSw0(b5H+#htp)INqL`EixrrLF zL3$2y7sap={&`f|4d-M&zc{}Z6+b_G2IMm;y4cm&6O5>DSr`6iREW(-OUP4HfO^LU zv}Y8jQ6P^|?yomI;Pb(4KMpyIvfZOj;d6*`5Y^YL>leO%@11YAe+7H$uB*X*XfeTQ zEcz#^$yL81=%uJe^@@KYo{Xv|n{@|%Qj|gV$iwZxntLou5Klx^tvf7Z@DX+7Z|TqZ z^T4v%TT>uUkze0WJ&AE2`8Z(v8R(nH;#M^}9|!NfX+Ijz9eLOM;1byL$Xid9+Wh>D z8AmolPez`n0szHSrbtfH;CUnW?{>Zh{T8|VcaJ#4&5;XD4jEv4M$TP(@+$0n<Se5K z@0#G41s|^Q_apr_<PQS5+z<N_nf|Ip1ngd9$|@UuUMJBfcnjn|k{yosj12F&zY63p zGI;8IPqb&G|D$@H5<s6JW4GZwBgOoKNLixG68I~T4tf{#;onCN*c#CX@mOTPkX}BJ zzewxUHVt8aA}zbt|ABZVvKKR6LDR84&z%K(bW-nuJ&Nr3wRUa9d6BKRp2@EPHr{li zl+V>*$(*mSkCAm|%qxK1kJO*peLt^PeXG$c*zZW~z0E_Qw<3PFZT}Yi7V$mw*7+Xb zhsHhLqdg;DX%EPNzZ7x(>DfUyz{~m$TM&mwh^b@|ryl2NK`tVW-`#Z_<1FIH%`f(7 z?}&r@^*j;pMeJX{b0O?kME->Xy8J#~?;G@21eaBL9dSN8V%@&R2C$P6tC;`-<~r>k z3ws)|=(cYe;=+je1<5rK??=pR@ks_f6*1BM=st{(2yy)*BKlODJs5`(;hp3YFuo%~ zZ7yUW-iiqP@xD3iNrd0pk>g-zBQ##M-bz3v15!{P^SL#@Z=YV#s1-P%`pPL7ZxMa3 zOzQyojp(y{{YdENh+bKTra;~!Ow$(4tPA#>GsqU>F`~!V+?sqp<Ar*^VUHp@Tuy1z z7i`xeWIx7Pgwd?QhtY2lt-8NRfE+|L&%9IfBiQtyO*rgsM7=q~%Mf=&7|6Ta#(0j< zZ#<<B{EUbiJKzz3)w<hkfFB;AJ?XnO{N@O)Bkx-y&IyNhli<4HWlRVHzrDaGz|W^j z?x20cKg`uOg}x4d=c$~9_#ynYc9VU*z~}4i);fVt?QkdX;m!D3h?l~}^^Nem^?PoH z{SUvnf2xw-yB6N;DB{m>rUAg-g`dswdX4uBKjmHPH2kFS!|xr^p?AXbO{dI;UmCvI z^ygKyZ}^6R+Ag(0aULUl^$OqH@KeKA*00?fer@>jv4_IozlAR~{J9wZLinPBDrX^2 z;j;#4#=~BRi}On1Q|;o9!XAfD>NxHa#%1{U7l@d_tTlmdyq;)3!-ti*1|t3s&sgLz z6XQNSwM+UL_@m*8J2M6${tb`+R=k4G6K6g67uqvC-2C<7TcG#yIph66iWBrwxR?hK z4sB5t`Z2u!kf&WBSK*>v3pYL1^mPc>qqd1X>|1!p>!Vx4E{BVHF1)FA-w4FP;f=U3 z3pSj7=NIDS@H*)+PS87HrO8K*;&WjSU3F(cj>7KwPIAKYhcN>X*9p6LLoXYCOW2uO z$r~}g!%lqKpN?@7hVY?$1-PZ*&`0RMuzAlWn|%gn*6QYmI5%wCx7E+#PlQeW^fUtY zG%Q=|)g$z8*mz^NDX=eLS#fvQqkY3N{HOKs0FzgRp0@zw>-D_W4P=HO>|a>up%wcv ze!@bgCeFh62@76x^c3`9SirNE9e91u<qvfre__(dbIUM3!(0tj)zSZ9PU{c+f}Dgo zm`vGM4eb6a(v{C)?5rw*UJUE9=Jg)*TUgs2lX@V23u7|21K7k}S;U{~C6(&IF9_4) z0tKjj#o;!dGxW#7Q_Eo|LcjVRF2sF9KeZnG7V$^uo6)EH!ajwH>)N5uKGhxtJreqO zRpDCrGoj+VTj&D@AmEkJGj<~03BCC2%4qn(p>*pJpNF35JMTK|Na%4UCV&U1Xu(-u zUvwD)=Bz8M!@rB`WuaO3o`2-eBYG9<JOI;I7G8i~5*oAV$~fNF|8&U?-cNqFN(A(A zsQbVjDQM?VOQyMleQMpG2tPN}tk2|p^lzx~o442DABT1}S+VT^*lx(gCm2_uMq5|D zSA(q@9{h!PIJEglz0-F=!@y{7_=%wnt~Fl_KO?mEQjeV&zoGgs2T3qaLTfg@xf^;t zv|9V3p3Ons@k4*3|3kG~y!r?`AM%p{H~4*G=ziGs5H#Bt+&`prgJT%RVaW3)d9m<M zL!Pah-T`rZ$m7M)T@fFLoVzjXH2m+7BONca!1Y27%owl^b}nS^2e)0&b0NDteNNyx zL$-4Q5!|+C=?uh2A<J`{&BybEEdKTF1%JOlGVnL#He}Aqeb+94Gquk=MqC~u`o|&Z z<C7L+oP-3=DJz8j3Gpf0bO-VgqDt7g4EiEOR#9>T{#b}KsYf&Thas*uLy|C_L!4`e zoyT|zad=v?9P$@3Xv-BV_&*^7GYYQ3UWfFvsMm|nYe_{2itETBLW(TNjBfb7!LP@+ z+KYAye$K!Ed}?Oj8rKhgIJtB?<Ubf*|0u{`@Ez5vnuuqDuR1@KVq69n9)8mR@)3NV z3IaU6v3xP!C-_9mD=RUcg2lX?;N244!H~b;jT>KGhr9+)DjYHldLlTolYTYWli(n9 z^chgoJHG(qD_C*j@h3cgu(waf+I!%TxP8sx{{-7@$Si<;4z@9MN=G{d_dDS9K_9d- zbKk}1Lm09Hav5x-y>WsuSo^kKW7xG|F^&wbva@$byk}6^uKpp2$Adl@K1qcB3o3QK zB**gyy`H(_qaHWryz(E1aUAs2>uMe7iJ*rk^BQsE&OMc4GOinR2Z1l%BS>6_3c8-1 z^&a{%=r9Zf-XmzI`dP(lZYW~bKbV)-Ro)0(@}b|mW#C*>SuMy}(6q>!Ti_oAWf`7o z#0^4@{ca>f&jwj@;vMXH?o0{Bb5Q4{o6Ft7He=M)p(lds?|Rk+{zg#khq1G{!AP{9 zfj=8f-wFRd@blCj>9xT3hnxAV0^d9uI0SxB;ES(?zi)y}%S3z?SY$9YA9gA5WXO+^ z@TUUz$NlUBe;`oYMH4t-Y`*}+J%JRMI542v<?FnTYRs^?yskWC#wzHmK(Ej$k0D2a z?z86&!T1f7RB3n>?Gxy->)|)({Xp&$!ng|*<Eg-bLl$g+e-hY#Uhp{B=fHmNmfnKg z1oj<s-vD+bu<MV!i_pV?9iq>9!T$|x`)HE_{#c;Vq$hT;Yk{o-`YSR)rmH}|2R6yt zeBvC~$UOEn#(7{JlU5s{Cj$+3=e|H(5UBsG?u<mR=HVqlX!pPxXF4o{d<ItU|L8IN z%0QhQoxbpg0;?Q37XWz*s0g_<4WAGAeK)K=^h7}UlfD-*o&&yIYCjkK9PlwWX(RmH z0CD~~;Blm(J>)5%xR2Qqyib6*l_5Y##RsoGe4+zCA>a}O1o}4M!kNXjq4xvMmIwBN zUl(v14l>?5;KbE#*=YX&x~GuKfL$3a64CDg+t=pbK|2R*ou@H^JqXwo;IJR#BmnB` z6!dYx`g*#L;131BY}J6C2w0`+{S)zNz)Ig~nee*<awo1{Jp)`mYHA+*zkp?5+I5Fq z2Z(tL0jbMgOhddDkTmAkVzf^{JPjupvpTK@{E>jj_kJtkKL>;--FOH+84%jM)_KIW z0l{z(VW$EDv$r+GxC!w8aJx11QGj1cm!<G$1H^beKvmwV3G91-vik3<kf#9Ifpg#Z zd9NPB`a`}0gbi(=+t8v${M?YFS9jna1~@uLZASkE*jGDZz~{2rAxVSW1oW3SdJa1h zVD+j<1vw8eZ&u?l>`*|@U6)Ov?*hd2ihwRv6=yN-0y^wyT*`iHJEoTt^khKmh+z#7 z9|SZV7}F7UG@wC!<6&FDIzN&eVV?uEZ=}zI-tzy27lpp|FRQmcH6Il7()~*>S8ssl z^nWA2aS8g-|HTd4I<N=+CEuEjgnarxW5N&k=<Lo0h==`exv8XhAAfN-nE%PdoW1<~ zp6!#o^T^s?!kocvgSwsPeYcq2s-Fu&>IcG)@ZZ>X<3-53e_p`-eb6`lYYH`k5HI?# zN}JW4*U5E#V~aS-U(A2;7w4(`XT2M@ncth~m08B;$jPc5gz@V?ZSwqOjX`nU(qCM+ z^q=tFc|H7f|8WaO&w*U{XK~>S6!RkeN4|A<$<L3d(^|0;9IC1F0dnu3zD{d0;vWB0 z(|h)a_x+PClw<h$#H@B2DVWf;*95i~cfO#%{KGG`Fbf02f_mkR1Zf7LxBP><wH^e$ z<{#*HI1hfkzkhJQ61InLi@s-Jm;BY!Ue{r}DvoUH&G+%XxMvIWj=#s*Z#@x*`%8}L zeB|F<uJ!MN_}|~@q1{SD(5AYg7Js%_tyK=W_BYRZ>H>Y_FXp@WcjtmHXxvz*0`}9t zbAetrwsU){#oZ7e__r>4eFt{fza<AcD9+pX3tK<HraosB7(f0^yeBV4T;$(4ZNLy- z*YM{3W=`bLxo5md`#S9qpZYhNk~IqQ?BCFLydnG|{{~Sub@<-(Rm*O{AMvj@!=)eF zqn=^jUicyYb(R``!T9&D)qH+$jBEdzw@=-K|LhNUcQW*zUqw@QbLb7fU$G;z5s&(b z`pQqtm-PE;KUV{J@%wZw_ZsY^--q?(&k^tVy?r^N8vHN6*DudZKs)(8tu-zQdc^P1 zr!^z-{(cY7-nqu_6=!Yxit+6CpwYP)*d@RFQzmSKf9`ju=7$gP7yZP%Fh6l#)$i)t zjQ;Qk{myk6=L>u2cl_uSci2t8g7rCfVdwnzb}DNI`Sjzm4D^uSuFlaa*dxE4`n{gR zuKVp6Vt<;~6L!myCk*s9{Pi<NRj?IVX=nX*MsNCNPddCE(wyHfs&^=kH1hIU#_u(0 zv|<>Tzp;nm9B@mC>37Jd-{yuZRzQ#XZPe+|8FJ$%u7~-F>(73<w`2$42l$EWE`CeS zkFbS5@3*M+6*>GozxnZ>Hp4FY%_(^5*dLtv&EN(6MZf8N7gvK__7n3G{ZhHH1WfwW zZx#C~!Q$)@$f2LF{F5>4uAlmqX&~gmPr0h6J^Um;`G^8T=rcd2%kh21_`}cr?voPu ze}2+dF82Jq8v{?!DJ-`Y^r7Ei%d@FnK--y%PGcPV4SY1;A90eOjnSA<r}=xU3Fe58 z{6stKXD3HQMcyx53H#t@-)+=>zOSfn{p{8{{yIfAe~@*X-^&;>CzIFN^7Z?BUUzGY zy-RtY;Nva%-u;WV8L?gZF`*H(JWyPE7_>k@LU}~^P_zp)+t$4o<;}!*ZV}=qzwQqW zn#11ubzV5UKl{I(c3(%zX-fv2V6(1n+n|ShKlf_-1b&Y1J34sai;S{^=ttjYIU(Dj zcYPnvuD%s^+*jCw28!!CzJ+I`)A63Z=b11Eit9SQ+$0Nq=6fQv^#K0;s8-2V#Jj!+ zx2?SiJ?Sg@L%w_5iYK7Gd`0>474y=3H_rRm8so@U+`8v0u8;aIb2dKq6P#~*c^v$B z-`QuD+rVG)oiYA%F67I1{QLMwyqE7-CY*t3T|8?*kN76n=&f7_CbV4cW(jh-9&+m& zT{BqD>qq=*x)^?fZ@A6qALuXN(DS`Np<jH1ork5s&iMv@Iphm@_YD}GtbqRZ^()ft z(i;@@r>`orNmIy+uWWJu>KK>4UXkW2Y(NhK%Zt3Pu)!Q;n9ln<hYj<G{P_;v(zh?{ zw67f#sX=j`z;}RVd?56Tul3eDX>3ocHj@s*U-Gp$>f0Uq(zn<AJ+{yfzGf@J`XSEu zH93_SfjHB*^Ols4&}+UOm;M;ac5J`Qz6^HTx9yoRPay}sZMZNCwq9OkFXBDlW*wV< z8V)v@P@Kj0H{2yLh8_29cy5;eOR)Za!{=;YPNN2c3_I9f`kXKZYjA@YSj}i-BA(l) z>`A~h#P>d5%s;pD0zY~josIYQDdmDQ_{J)88R7&V(O>ov{XC!R=a*fA9Qs_z{@fG& z>H{<E06*79lq;Vz7NLfSSA353ahwDH)kn<N@Y%PeR%1Me&z^1`^D(Y`cD@{AITYN^ z1a@$n)mdp2xOLCVI%prCEeS`>`+=Jm-S#afyDXHCBqPSAH{stkXGZMc=Px`unZ@rf zvh|0a_StoO@%dG}&zCjk#=O63Z&lb&pF<ustHUqzIifqDdk}bZ=p^%Ie9nWTJTQ)Z zPBrxoxzFcsTH_h7CvKJXIU94b{5yH#?hGCB<FCEH$!|T=O32DQUmr2g%7??um0Vo= z>2m%(V$J~G_Z%HgP|U;df%y-GzV*49d}BZQ)93E5dX{~_2i`lU!M^zv-<)#+a^dr+ zqfrOwd7sAv+uueU;q#=C!4}v>AJI<vJR7iMA=|%XM0(j1@Okw|saMFl_8-{JCFQRD znv$#f<Qeeu<%#8|$htEUe)2jajt}Mao|K$8IiL4oqC3dtQU#x5pXFl8L9w~k1HM-g z6)JeIe$BV=e|>HrTkZXTa#7XAoc#=U`q}Hh+UK-%moxkG#Qc;FF>LpHRR-~S54Xw* zKz!@7<NB6C7_UD0k9HRLv45Gk0&d73<ViVP=Wab_H@J!d1g>cH?l#7~&yuC;CX}Cr z4!e&dKJpRwv-mLml=7Ws^llpD-^ahqdJ*)BkGPKSBkZyVWlUHCJ$||xsz6EMqHf`& zakT+8K$j_{Q~4g^x|okcgPs#NgSIcXYA9dUgD!NB2749uFKI-Y8ze&?`<SwV1=w?x z^Hla@_oRv|@JoG+`<>VXJ?Yc={(|PbZbvKWCbmz@cfY0V*T%(7Z}NH#7xd5MbJlCu z|0C?Zj{#p0td^4F2>(q}kveZY;wsJ0dcI%bH)+1_%6<aBQ}ZQi=o#2+4PI|1o<s9u z($QUmz@me@ZlgUl+}VrkYOY>xQEM%D^3$9>7(be0uU8JmIMp1fcP$)xU2`z)UGj5K z*mVzz^E?`Hy+pISf$J0Ww`P|~;dR7snjPGr2IgCp)<OShmiAI!g#FPhfM6o7(9EAE zEk-+N5ayagpK0bU3zA!qmFxbRx&9fwmyk?M;O7b!oPNUZefY5%c22X98zI2OL8ntw zdHos7Tcf=-YY)av#<<kv9rZrT_Z9QNG#l?4{K9zFY<jh|H?JeglSW*>*KBPlYqJ>K z7XBs!dQ7vO6Ha`O%6MP1>%*bXOZlFs*PZ2i?pu?$nBOl@6&-!S_9;GFF&jLr8~nBo z+pS8ic)q`wucA5OtsD$}tT~l)vMc;%jhJ7oIg?*~QD<_el@j_u!y*juXEowFv<7a? z35-k4y{lyg(9@dxPEl8j$Udv?_2cgs*lsw<&kfVJ!g$u)z838|3cR^ny$It-bKN1l zKE{tmT*uZFJ{nrJoX_EyJ`MU?b9`icBKuEVr_mfz#biAM59r?L#(vxPFyJ@rnr6?B zn;+OOyMuoHY{vFzkhBVVU9+=J*cv{s=$C4??@7P>ksN+FZXgMFV=!ry*}|1<zu|5# zQe!&u_h0RtKWRlLPxepcJ|9h9R#YCwgJw<XOVf#<7|&^ht^MG#<~0^orCbc|Tow9X zGy9133D|GV%uK6w(0`igF{N)|?=;gE`^|-as9{<Q?4o9p&evkL=Y&27brIKU#yzPh zg&x&pUGm(gN3viGIQq~nn-e75g+#Jf>`AuQ=uvNt;74l4teI%Q@dEELU^st2=h+SD zYt2Y*>;f|<Depi(Y0`)6w}c+jh<>gn#VhBN8<@0roDKAzCQ(|Lg7L43f3T|?<twhE z#0hpt6Fq%#1NecOh_GhQ5f^GgFNJS|Uez#-hvVI+Nsn`-plZnH_mpq>tQ{9zK-ssk zD#R@sFDQK8*R@mY3d*7LoMqX(-r(EDYY?Ys?0);q<hZhVl(?L7(tm_iUFZ`{Ul&;f z<yl-`)QEaaBkr@)^yqoW9QsaU{B*Jseu1V-(52h(S2UfXM_#9%=*S6Iu$@M7uP0~} z(rzC0i%?<!Z05NB@j<Y`i-ztTj|O4yFF_A$v=6wog`cj`S~dF}?1=hT{-W^KVA=Co zLvVeym?x?h=b6->R25R_4fVUK>xRO9s$UGbH3xp0`dLV_Bflr+O{<GqdF8=RRo}fg z)(P>9`u4rTGwz^Rbw(}bL#r<@tG|YyyR_lrGWcogLdoV@h+EX+K41049m5xHC999` ziSeaA&jA6RtJS$1;$^kyAE-~hHnm3Fqdva#t6>s&H0#Y4=u!3I(0e~2&+3Cws=hry zsI$lX{Js|_hQe=A?+)*|AM&i;ej#B3{95(aMN=Q3pVXVWzrT+0pceI+n$rpV`<kH{ zG4MmwV!oq#<(!7Cpuf~Bp4QzBe_t(BV*wYuOi1K?n68ix&K=Z32XVZ5)}U#2@ITcv z+jM9EIaTMB=RbqpQBPgIy8+}=E#~j2#dS9I#EDLR=s)#%CY*s;!{Q&q9;h?sHMj;p zN1awuH)<Q0THd3WzZdhi)d>Lw#?UM3*sIY=&<E=1vATDlkJRDyeJ{@g!%jU&gFRAn znp6t<^&U9<9q7~GmjT8rUhK(9_&;jpiG$|XK>1GF0_YvJ_ufO_5l^c<xd9xMK8bD1 z>qs~u2fCih>dF3bK_CISR1eXs<HmM#W+FG}lpbLiMLOHRP57IY@uJ$f-=xoa{9f_* zwv;=!D8p8KKKHKs4{hdsOJ}zD#OH_|xNJC|t4+!Y=rOe-rqDly&pRu^^*zaep4@t3 zB->kzW7WzoQ;*v7^U|aqd_H-NAs)WGUS%GX+VfyPi+X&Y=O>omCZ~*ad&>8ztS_K; z-j9|79S_}0V*fgf?stXnZ&&TvMLwsEqDFi6lQ^!`eJ2l`G#2cW<>m^1UEK?T75sd) zxKC9r=7p;3ae)`C-P~mt$6581h>3{D)jImWt>NdYwPs!T3cIC(TWSHjp%P2ps6P71 zFG8QG-W{L65cXg7eEhCGkQ>#LS6|0syr>>37oA7Ds_rw95WFKxbb-E8-FR`s7Isf{ zHM=kY{($O|RnB~V@61^<1H_rCW3h!+&@-yT_7Vg5J*orkOnuQ$s(q~!9!v*!J^c0) z{;G;$6XIf(n4hbf$HY5u#vpj2;ItkduI<3dP0!wde5klR3-(ntuF9B)Xh+o;!`Ig@ zgBco40{kWw({f<{REgi_81epbiw_%|2BW)vaDbgsh3{`S9Clb0;x;h}`a~7*Qt|}$ zU&XK;<4lF-p9y=Ya#Kk=LT{*sG`s15aiS9UH>$+>1eF~XJ!sS5&0zQqDvPY-TJSej z=CQBmVmzu$R3WY5kEpua-_L{JqUzNAVgc;4s$JPOeT;jRSWiKPu(%KUP1P*4T0`i0 zRkiA)f8l3k#fUO3w72r7cjk4-k@AOq`xba#<yY75xA1<-Pooa~!t*HKe~7mm55BwH z?b<Su0~LIO03Y^O`MOEHIOuKV%Nxz5FUXWtHqe{O7x-W`a=;)p#;x*s!?dlF!Dn6e zKZRXWK9#QUfSfCz*qPiy+^l@u=FB?uhq8FnszCIwQjBYq_lqMZLOzxEtjm?KOG;5b zl(%~RYIzZ4x*q%o<yDh?_hDC*mj<`H411^)_f;x|5<Z}qm!}l{SLNYb&2<pBC=Xof zd>VF1iErD$z9>b%Rmo*9*hl5I40w9r`Wh=kp*NIExqt@F?``d30*ZQ4Ii+p&neexi zqc-RaVLJ>zeWkz|%;bb0n0BS{F8FiG<af_HOac?NVEMqfuA{5LJ}aZ+4BFiQBhH=J z33*e7*{t0MJEIJFvF9oLN@eh+9j4G1%D~~x@4~NA`b+FhpjVZ?gS++Od$C*s#)nc? zav%tLL+QTS*R~9FUK2VB`d;aHK4B9-=WrYv2eccV?G8U$Db717t!_MB#dhwKgNP37 z9T}%Y+@dsBetZc1qcjc7y~qCUzJ5X)#*ebAgWGeqW9Qws<0wxZ&eUB4y{Tjxp#;Qm z%FPCw<i#dJA1WK~Q+I(rRvLbfs>$~k_jf79{a#8#C!0sSuOSN-@bi^<Ny;WSXDs6L ziSrrCc17NIVTY96qK-9!zEbuuoP7lTu2RgiQJTClHN<#Unsq$BkL_(f@J!4bzF(KO zR^DLW8;732UsGDg99+QbS>IULz6;x-;aL0Q{JF9|iqbmAW#XZ~K5sQS)S3Nl=@VZ3 zgza;4*h<Q+*~r^&y?Fm6YYxugbN%p@%wYSR_IeKgKv3t}Y^MhHqv3ZdJHFj8tAy=! z`_@uDzE5TTw$i9!(ufP7SocKPEa%%OK7W%|+TS>iIE~ErY~ayo3FWHp)PVzd-P-N8 zno<r}B#zI=v{&A@+7W|X=w~GWsX$i0%ecS~QC693SHSic_v0xl7$Aec^HbI(ku|oI z8-u^hPIW-PDt;#3tOog1i2FzsV!aB5Sa(SAof}?3mKlOQQhdDi!ySHsqBI&33BDOV zcldSiMTGe&EwaVVXxK-EI4_{Mt=Bjo<5MB#4Jpp8>i7u$q~dJCw|&rKic_!khxZ1L zKOgc7{iZnfJmDbx2E|d`Cb7G~!%2x2&=-nB&9Z_Vz=Q4dm!kg^2j(P%yd^8=krW5k z^zq5z-)+J#wID0wRmGv6!x|UzI#CAu`J7^$qc|41WElEEapq$1`7z-63m>OK4=65n zY0wICt`JM9DL4(GM^^5$R4~1#E?HT{P;t#x(-3l~;PRv+c=`H5XUMsN;Y0?nw`YrD zKHr-O2z=klx*UoVk?ud)AIAo6th=Aj_dV~^20r(K;lYpxMM0<Rd+<*cdl4WZUQ_It zIV%L?U9tIbhq5qm<A9<mfnZ+CBlkLiYdX%ITLE%AG~`IJENtRu#0iRpl4b)De<{Q` zTOn3ERLmH2><R3ELR{}s0EYbg#1%<bV6PP8cHKY4zoT{ALLV!Jn_Q~~J)y`Peth{a zFzwNUO|a*Rlz{f#dB4O@K|yR!F^^QiZ5SADiimx`4nkfPAwi=%!Ja654;SvicvpC@ z`(6cpu)@>Y!h&)NGhufabiL)=3I377`Tf(oZ1=%$+iQ3oaUNb_b0Om;<*EOb<|P<k z3UMEsLabw?=-p%27wBPyIIpVcxu&L7DA;CD{By*|3YK}mxKT8>IB1OVqM%uWo>4R` zp3;c@QE$n^R9?Tft$r~48in5JyRD$_<>iatn!ulvUp$j4g+D46^MB=gvy-}@zvW_n zi+qcJnKk@y`8sYG2A9=N4uHQVpTDEdR6K`#X2MNlJfA$r>$Md>&+Rg>lkzO%L+3Vu z!@K1=K|bXP3`D{3Yi{qMXXSw(;F*JdUwbZr-It5=)^g3q_?CP=Wzq9>7{79H{aEf= z^LSw!uutELeE5U%R<+b)AP@3p6Xs~c-;;~_S&lG%$`r89huY`SUh-O_ZM89u<u#4^ znn6#<buX7G(H`=ulUtTU@5$a&Z@&laCKKx?$;A0z+2dHJD)^jC9QU&ORa#o0J!N9N zCA)FF(QNdWOq^$uU7|t)FG{YShaQrhW5EOP<nnEgU>9V^buPTqfJf3s^eP4q^wV61 zUng5zdOYziDAqZUEq}A{!xnJq(=lJ5r)AuRg7=Uu8tohgy(OD-`ToySWJ1Ur-e-1` zv?h38+01}Cz4%<yL#8IeZ<9@HbD%!#nr!l>c^3k}>}HL;(f%@~AHgq^WpRTXIJ({1 zLJM%jxEU=WPqLwJ?>~osBIEKR#-}W5b4#6;py(gULbjXQGz0^g015id-7^(-N2ZxH zdltX1jLBOLzfvZPZTbLuO6HmRZXw%eaJ+j{j0>4v@+U*sA(_o2UwzmMS${gfpmm!8 z128URmOF<hmx5wF8<|;>T?4+i=r_u`e?bp|#!=62z^{~vc3jrsk#!U3Gg;erwlg8G zGI1SO)&h>w8L;W(*Q23dWrlDt5Ld_=v^uhj-xuXXR_oHo=I}FQHBVPOU_VzYioC|} z>og494L$4qd++Ub_@4I<*NF?ze%|7~FK=;u)tlwM&@SF@!_%vy-@RWiY8;E_@qVSB z`*}O~;>^Yy_d#(#n0JZSgy~noXA`PeK<{}!!UIBYdq1$A+!XEUT@)BUAs4()Ll53P zcfdmi-u~sY2l~YOCKD_{v7Vi`SY_5*ES>3%sHP9(%==iH=`Q%e-UoiUyoZ14z27a) zk<YOw{qlz|;Le#btK-0J%aU6{e|c}2H~JyQwRhgo>fO=*-nlbs7(sr#m*_#Fzy)t1 zsUW)jEZ;vp_~}O2CGYsAvn9}@-kkn`-SZBZR%0ggfwy|dB~y$$Z|@$m5s-Ipx6h*% z!awwO#Dl`lcsn$ot&MT#ZGU`ZJlfrx6+02Hcw1iy4};zJ=J12x=xtI(Iz<I``!&55 z?2vbtm(}Nf1v?hVHtCS+q9w31-tETJ&gSQg7?^-9+hlx2eC^!~4g}&H@0wK~XtCXO zCv7@_-+Ps79XJ#OvWy<y%j+`>w}J1sk8g|d<;CR!=qs-$lSd}QUU)rpymlS;@hYmR z{x}!BxzwZ+<iYEFNsEftpg4cxb=uCTE}q}()ZX25y}%PX>w4gMypA<}9gP0-I$Ce@ zI<&jjAtsQ52V@iM@qAtdZcf>V2fTK1Vh&v86t4q$_R8f3F;Luh<FzR0ZSS_={OF^l z7!O`^Qs!;IdwI<qv$P%L!Ye0d)e>HB%JO?x`S)yY#0Ik-HqD2f_oCT{o$yK-Ft0!K ztyfI!^ANsQR8Oa4=ua<kpOaT06XHNIuir~kecCM8Z!h_~vR1ICUgEl<7t29dkc)qu zf*$vBdYbD08+7<E>^A&SFI&^Ldte8=%$oHW#r6^NzPvggkIjRh;??o+#7OwNUhSXF znumDUt6lHuJz$5u+H4(R0{_d)NOPna?37pQzKU1uhgKFYZx9E0iFwIhVx1B%Lr$oJ zjW*YfgP!qfIP{St+r5GAJX^?%SG{d_j7O6!Ukui<fyM_78V}q9J>{kMNM{z`17Xv9 zeqLOU@Y2z2_2T<howuVm?17h7$oh-$+da#!E}V<!@ciQ8?hSkADaN0k;yy)Brscq1 zdW!Y>JYQ8$u)z5C6yr_Lry&cgLEn1b2wFN0cFt4G-}OAdF=Q$HE6=kombDNEd7irR zs0QzM!n*r4$iJt!Khg8h=Otgzo}QxL=(+F5ltlQmo_l7LheE%3ZvNJ4E8<wsjgx(z zK`(fU_0c@n26nc>xba+-_q-we4bK(7th+!yJQp?yybrtR$@DX{zvt{l!yCgN_ngx5 z#x>}F&k@eI_Vc<!ceEc5{ot9=rP?IKSDvX`w~pucl3hIdp#MF^IMFli=*a!>4?M+r z1<#<TSJsk&bWq94{ezz3e1m6zr+W{`fv1>X=IMWZ*xNmS{mgW@UgYT`pFQ~f%DB=q zNF8C!>jZl|D21Qz89LSF8uW~3%Ena_ReZjW=R@EZda`T<#*JtCjdnZu`HYyh5o~v+ z(K?W4BKG|zE9U_{Ga4FP<Imh)+=JiOz+&@ymHGFc$xIXmliG}*a*FTkYVd{c6~zsV zVEB5U@%{KbEI`2LuFR|Sgg2xEf74UU*Yz~}>|CF}XIVGsOHU(i`~ZbgvS8DIvPSIR zMsPR`!1_T|z2Jv?GChmWX|SQz7T8Bm{oBLjd%+re{MN#Ldg`8;R|J3BvuZ`oksqKK zM|u2uaBxObvgzXOnPB<sNxPtLJbuJAnuzxF_!bvf4SK@k%fy>M(!fu<9dgfuAGv`E zd>?dO4}P`ByThUPF#bH=M(3S`9C*B$)OGhXk_F|+6tgOjGmj6+se@MX`^U8w!+-Yp zs>-Q*3H;vEqhm1dTR3fgcaTNi`5c^f_2JJwb=TG8=k7Vpn9b*@T>ta<_+#S0az2Oc z;O4Qsf3Sly{7H{jG0k+)FCNb$RO6usJj8vj9^!sTj|WM04?#{n?y(>xc;jK>NsMcc za}B5Dktb8(p@Apr^@~7U;&HT5aVW;WhZuKx6vW+3hko+d`?mQvUVrxnmj$q|9y>og z-HCDTA+8sBY)&Zo2tV3G9Cse;m0lweUwW*)x!^b3Wp&rL4fq_(7TmuFKhI;#_7;wQ zV8(dYd+>KWQZ*O0CW1)~-+Q9JJ>t$jwt%1G5uG&P(Lqq$&*l-r1uT%|VBz0;i1W1` z9xW?QI)UcjWp&}dc$ik{a-RL!bAOe0&<7r^bNU{Eyn4_Lf?wg$k~ah!pDYc6z3`~T z30bg)X~&n858d8pOQ7dGs$R6ZYY1vR9$6cobN}_)^DOLwd-=^Zv!R#Wxg801&Hd{& zlR4-ocZl@@_~q_m{ZjY$mXDV&1>fDCA?4@965{S}Sy+*@-J?z=Q)<~NNN&*O=jD^# zp*P%1^`2Rf-|e06K~K1sVc<>W^Hk2`dQ{0t&Fn&+_}TIk2}hmnTxCMNUn+jC;;s$s zv3teYObztByI9x6{a2*xxt)BEz+Qy|_#Tz==>8+}$=OK0Pi4JJ_s^Zitw+1Mf1u*! z^K?t@0DJ2$&KtPD+^SiL=Ws8%F*OH%toxHsstP_Y%YC6g-EVUy7`zd0cJLT@b=;Ee zd>(O~#{I$#6DPLMxfZ4Eq3_&JkGP$L_iz{EX?L-Xh5P=8)&mxSdmZF1kW=?vb2C;# zPrGk_w&(}jg=GpMPwtyXAOZt7T)AwEc-B47x@9fcKle2U=L}f`=GHeahQ4uM_U7<5 z*c109+;9xeOK~xVU2vy)<@1aC1KnZGlc0CpQ$BuZ2Yck6aMawIKgX=-=K?+I9(69W zH}r)&)7_)Na5qD9wwI`n-GdLku^LLcZ8nA8aQ9tibH)+$X%Uc(_{Uv6Ms|bks_<I% z2KL$Aiv?Lg&yM}a@Ot7tCU<E~&*{)#?vg%>(~ppqdFbwLx7vk2<=<m}`V^77oPY5C zVm%ah$-v*AX7Y3Ot4v0G>F$#D^%nd;_aSel`J|9=SDW+qh9gf;AS?4r-CbYQZEg0~ zb;a@J?%7uV_*ioO@az}l&9L=ZWTAHV?WE6%j=lN$*!&`X&fUOo8lRtK@J#s}aQABS z`jz`U+@0U-XaW1=?ik-y&30jhaXXOdaPY(2dn{OZ7;@|`?yGSZ*DKvSmJPfBf7`wN zg^0ElpjfZiT^!%;EE@^?;BL5jqB-TIVbX~655W4ZN>UNGxYt=TJ(2gV^<~=``2X&D z)m~OW@3?E9dF+F@L|WD-vh5vE+;=X0m(gS(<X+11ps<V5mt!n5ArI2$gBIS#b4j0> zwF*FgOP_=sI)(n0K04Uy&O`8_dmky{6=|{7#&7Vqr7Smx`$@%mV$wUmEWV-tq~ehP zQZc@kUTps;fcHPY>{9S(p59TpKT~?9hV9!&JVm3jj*e7ZpOlJu3sTW9l8X5aQZeuJ zU#E$P>nzfZK2`@1_e;h7%F@-k-NPVn(j~n{PKDl=LQQC)J*9I#M!l&H&N|TZ6y#ny zW8+Q<?4?xPuPhbko227pA-iGMq+^?1ZGdqo&1&}T8uYVtjGtAaHBaMsQx<uM+`lI4 zK3Q4+SSqf^OGn*TnZi$$j$~mAaKyswtFWKa;f?cVLk^`GYY`Fh)Q%Hb!(fl3v4P#9 zpiiV>&U(GkZ_=RMTSh=`r2+T%t%rV<iuG)zKEEH#zYL0gyi`^FPJPISRNPlD^*kE; z34VgqJ<v87c3$dMJmCrSqSQsTXf5op)ak{#mWU6egO?@`f*p|#3Lm@VHYl#oNe8r8 zY}*$U^8}@0o}ko{0u5RWtuuq|W^ym86~>9w*mBl8*iUKa>|G9s)1@67A3X@YByIQm z@mbh$saU^7+Q!S`0oxy5X^b(+L<MqQ#_*Tqq78kol2=TMm+<qId4<w8+~~~fbZNb# zjMuHqH<h;cJh^;3@7Mg(uxY%%+s`K$U(&9Z_5|^Ly3d(*v=yKCYWwzV_W=dJ67xaZ zj0EqFpgjvBvK^*wa&cq3oNn5K&n?zTm%2t-7yV-Uoy+L~yDycnKpy#h%6zt~boK!~ z%8~T-<z)@n-mN-}`$Bqe>T;OB-&8V!pA+-kr3~9G*$<WVBc!69kcx4%)FIlwIooH@ zh3-*&e;fVmbFgF5{vFy6hyN_)vXBwqcl1(cPrko?hPETy=fa&JK1b^#)7RyJV&1#7 zg~j}6%2Tt8kCwyVm5TMFrNR*jWaT`gl-*UIKUdE8OPMZ8If41Avw_#+kqrE~vYw=r z<#&Skdz}_1&B@Aj18Ga?lGc1L;iv|%Ro@XC-1%GxQz@TDXD$X`U_U;4(1_!rL*wTo z_#WIIK8*c!X>dFEAyU!5k(y2n%-#ly^^2wEPR1`dUd*5PXk5TviQne%KE0-Uouq#1 zWt~vU@nSxEqaF2zdCw}T{2a@^wczy(4(o>S`aKt<Aik4!`(iwU?bUVI^{Kn~9H&oq z<oBu{e*Oslm{jMAQ4{D93BwJ@sYI;jA^9<VRT|_&@^$^dF3<;(Pr0sdAV-q-qfPqN z;E^g0FPk79mAtH|wIAb9QnJ^?cOLj8b^M{`JW9oGrJ)UvQmL%7C%M~m$^-aul3Qbo zKYid)D%}i=`S)v`O;$j@C0Eo}s_}DNhV$l;D&1SR_{pPGD)%Kx#5&uOGYxNbTErt! z%vR4Y<B=$p`$Z+k+DeM~+()h+pKuLiS!5R;iL%~KeU?X}+}f@UKTjgokCE)51IMFL zUTQKB*GhK0y}cXlBH7LjnqYpH&W#~Q5;5;pvN59YYcjZ@M?Ww4@sf3^<vkwq2$Y^P z>OyZw=D(b0+7p~OedAr&NeQ~6Is9LVn4ctJxqQCYaBjQ?he^D@!4Hz87G2!}{UM1j z9o`<}Kq9VFN<_a|5|W-##P<q{4|oW>D+y?Rb~473#5a6@JLqAFSl30OXd~5S`@kKk z3O`ID{W*W`4$#%u;~?Z%BCdN&toQc&2)!!l)OhhP*eywi!<)Mxo|CkTLBs~?(t$mq zb}PS{e4_yTcB|hkCHU$6Zynsv?Y+sUc4#j*ao?|-IKSt1&H2!D+}G{Ww8U8GJvWxs z!#Hv~mvE&F<Hzmvfn&4ro^HqYb-IprcRRdmS|h}JZUvi<EP#BuiTTKG;{GEyF&=S? zcF+Gf91NdWI2U%n&AqtMYQ!^cP9AxYkRLaDy$|Ong9DG$j7R&p_2GdDpqar!2j~;G z?%a?Hiu%Ki+nV72xru(a>z8BGePG92OABiI!QQ&QoOW>s-qZEgC4UL@i>tVP=6Z<< zRp7aG%4P6tUB$YMt~0kDafM&+np11(QpEeN;yzMWugOQJ!)~~`typrr8Q8DOurgl9 zqQ>P({MqdJj@ytQ*B(=K#>4M*743#=<3i5|&>OA|S%@60XMg??-pkdXbG5CGHui(o z-Ao>E0OU4@XmIb+sNy8>NT1ma?Li^$8x)Q@0)=@V8+*H!lfAPnL8o@(Z3cs$u~S;! z1eNm^>D>YSI&ZM+4TitT2tEuZb=c#)1sv)2WbaCF!qvAK1HdVZH#Djb&hCBH`6(#W zlLOaoS~pt(Zk%A;=>oWgiWEHH`|?OT@btH#U-3M4SK`keNC$=Z0(|h@Y1krA*q3Hw zZ!gqW2lWo8t^5Mkxo_C$4cL&0wO})Dj0D>~ny>)RYu}k05kXiJc`eYaX86QQpalzw zgDi*d58^3pyMXeNc`M^UVLX9RzR|BAfl13%7s|n5Ewt*M2FIQ&w@wAK2i~aK0i3e0 z+F-P|y|8Z$T;B8E^ao(x-VbiO!Og3z@0<ts<R0^_4ql0#|9d(p)B^*#>|<zS?@;xD z)|EYAW2feAPJldC!W`_<Ytz<mpit)!6wV_79e1aH-46N;GO|EFIw1Vp@eWM4`ebth z6za-=qbyI_#em~{&zSLglLGsj?gzOI1?}#@?OVL=>{(3~-v)Wen-3`DU4UCM+iykt zIqWElEj<J78@9(}EGXoOgAZqW^%w@e{@AU`b5N*j0rEH$Tz{}ZzlxB{Aj?fdP6u;& zR2yX4P%Dt)RTJz{Kd7oVXg+lGrDfm%)7f8-ff7y(fy&9SNT9G@33B?l4H!}L`drA< zVBvfXP&^QDa9VjyBgn(xVHdhsqCW<Yo|>h43{s5rKw*Crn9BrpaPyeWuXx?P&e=63 z;EB@geHq|QzroeeK7)n2;$X>{Z?Zn1P?r~cKQ8dcd+=+k8(Ug}ye;I{u?820Kw)1T z*tD>^e*%c;uHg$%IDY`_ou|yi_;DP-1CPML3vI_&1LdiTMIS+KD@1=dCX{@9aRh`J zZI%TJ`y0WryQ_}JIB;b8b_h7DZ<o_U!9ByPZpC{$3i;yT3A1yGJW#0T30@oR(CZ+0 zORs;zYEZ~m2JhMXUB|d~EZSzY>^}IgP=96*uw=*Y<>&{;mtKwB&w;Nwu))%~l5M=6 z5Lbc1z9+Ek^@$o7e~v=_J1ET8ffbXd_g!pb@1&h+YLE7F(mhaR6~>)Y&E96ucY^xu zjS}{O2KNK!^6xCy7z;M#1Sr^Y-pc~CrxVLuq92@ud=9W%^SZxAg1z1Co}vAngnhT5 z;OBy_!>Zm`3d*h=--PFO@}E2NVhb?r-YsK{Pp5>tzFTX6LsR;Oj0TzZ)fk+F7e%`{ z%?|#Og!Xh=ekkn>pL5;wz81cqkXH|~>`OQBA`8%fH`kvGz<6<bz(hLm!;CA*&?8R5 zzDFB-XPuHJh2246eHRq+ZopPP`U~-W=dO*r9zuIM!yOtp4;1zzfqiwVUl;*$yB6Nl zndMt_z>p8k1Ga);G}PcQL9yC9k2$n$4Bo?;ViN>TV!>5#TBDA)p+B5w#GLC6J>|^l zQ@p>kc#5F&A_i*UirSqX@;O$sU=WBXv<2kRdF%K&U3lHSZu?H7ADjh03q14c@XveT z<vsnIK+ib~d1GMF3e`Gm@X^m2WzZMSESnz=zG|qO0C{$Pr?2<r7bxTtgWo?V>)^eH zFs&TpZ-}su9&GdIYGYh?h-u;04(Puj!Z|abUHnlc-fPGZOS3e7-u=5x6X=&AK|D|b z6!N>kG&*?Th~H)_!oczC;Q@e?tVfK)_#QG(yH-11N2n(X3U$vxq3#}dZEpWpkjo(t zUhlBQa}E*qUx7m2CHSN3kGw(~dzY%(B?EFm-66*oLtb4BqT5cxxN&JzxXiCT*lOM6 zPtcPt-Rn<0Rt2=UDSJExv^miz4)=56*MdQ){gmaP-yVnIxV{UwDM3HD#HMvHasks3 zSYTYZjLsca2X@G1<?4He{lHBdPd0J_w{hbGxcixQIr_=vK>est*g+SeUN3kmb<u9L zi_3W`4)DhQ?M+~hT<-2Vz8Ln}r3isA?6OPobVn1kvkRB?`Ft;jY`b0tejN4m0Q7>( z*C*emK%ck>>q+46yn4pDHukQFroyv9-9^beA@8n2Jp-`zoOf2xE3OT;P1}U)xwgs- zKlcjkG;X~k?3-)%AANFQA6<n!cTlKb2ljKR`4a8wDx7Ns3j04nr)phlzXe@e9T>YF zbayg*4}0tC9k3zfI2c%`_6+z(u90IslzYKMrRn?r;K*@NzOZAiSyL_U@;QZiqo6qM zU8n8cf4Uwxr$v_GDR5Eq<qP;cORhaU=m0JcGD(A8c4gU3FK}(WbR*~;*SwLIuVLq0 zH>`VbvjE&Wt4k2t*>!u0<|F#UmB-^?{JQSzR;>y8$(7pz;Xk>atg)lpOYls^-tFjD z*9$FHt=<JfdklrY;(D8fQo(x$w|m|Ki&)qN6!w9EPk9gu$a0J-P&i);<n$>2{-NE8 zt{8W&EN29J>?+h}2ZbXvZS38uo`A&zt9O3c9sYw`T|KJ-C1AseX=Cs`H{l!)utn;a zsnCCJ!n!8dzRvoiJ;Bc0Fa+`#J7>_cqP!6L*R8+N$3u`iH(Lfe;Na%5c4!Z`Ay2zJ zg#B?7<_kdYoQu;SM{d3=lP2(b;VXXBME|%YdTW`%j<}`XS@C`?$Zdh}8{9^9`t1UJ z<u-Qnay{q+w`?wuf>W()IY6Jf&G6B-Xavq-A}6@|`NmYVtJ~&zYgeGX-GsOf+&x;| zJsA{FF?AEpApp;A%x?ib=vKJ)=nB5iwG9@_`5upV&Rqt5>h?URsTumg?M?rUKJYi( zgmriD^P9C3VCUVw3l6uv+fPpT+1N{<_QK|Za8f3r{UnV!feylY7{ecsv>Sf^Tq4*h z`LPssU1E0hvoZ9uM93!r?YE5I2l<c)=edAN8ZMA!KVe@bJ{!u9ZU%kJCN_h<mH55A zU<7|q;?ILZ$UUtO_>o%<*yQl@l?O0Od<u^3lkj`h2Q|ngFVEfDg`caVt_wXc!7w`Z z9SmCN=>k1138A2YoIXQ4N}yH3`5v)Z`_<6fl7vs$ZK1CvTz-aqlZ?9dWf$~?Wb#4Z z6a0B551s&d+y?qfGVk}!wP<&VupbRv#6$~lY3qQ-@T(=u5QttQ&zl}=1}<;iZ~@zM zd2P29OZj`KgBqk?`;77AsO{mW|NcA+6oV|IkGM#(O4q9+{3pqp*(;0DzmmM=r|x1r zOIU84&$X$^_g1i@lCAIJcVc`=b{chG0=*#NHX-P1$-(;eYukcHuP!|e{Uy1)@Zoa{ z@a{3?jd5Ucp{YCUhlI<;u#1wH7xr9dJHA_M9f3GZBF0~mFU`(wg<mRd$cY<J$QJ=^ z8-KUQb4a;O4A+%zsulF~D!8qBN(A(jRM_7K7PRi*k9bEa)ad{(F(C)MmYtW6{*^vz z^Ddm%6XjI;@?-iKTkv=40ei%A?m|8=*qMm~p!I>ceCS7aVc!Pm%ZYVRs5=Hm+1qBo zpK%xJE`rlp@Db!OMz9m^`)iNugz@fv(Dhdh$esHMPWXeOK6Afzde)WB;4{a@ji66G z^umK`L!Lc^{6DbWV0njiVCUOme$byDLOw6p!)ClO<kQ1cRx20d&%;az^zA)Z#s=fU zqkrF)X0T5lgLBttAx`vg3*5evzxNKg-xhN3;oo4&#R_nuszYzY!yaP1>M{M@mp5a; zIbJmiVE;W993E8-@8==pn}a;24)Wr$wvWX{=m`&@E-1KVm0>gZ7alvCmls11d5HSM zqrhY6VDz(x=y!XFevM~s3>;Tbn0Elpyh|QKemuGS1NrytuU}RZde>7phYfV1!2{j4 z1@A|^<|)*<2IJkEeu7+kiU*y04)xrW3jf=4)P6+xppY*I=BmaFgWu@6>CTG*=nv2B z(<X#I1ch^qKq0RcJZfJx#~nQV>e&IvmFLywM>|5ldfxJwVo(Px>e+1hA@K2ht603J z=Zl!ovCwOt!nz6gUY(EwIrJ3fOTeExXAWRIdTDVZ2`H?`fQ`5!2y&Y={4=j^?|)o{ zTzK_b?K%wo>?PD!0v&iT1}N;$0NuWCQ($~~d1d)EfPV3cD{Sz21ITg~{C&~`ySI2x zuM`VtN-%wp{J<JeJZ;;H>9H7pUSltH`vHCHHRa;(a(-@Z_`PkgD_+Z+J-!RO;+5B9 z;#J787mq)Je)Kv-#}2$Wrqg!#L0%6VjeLv#@p@@GF%a$SU3c@v?$8(B?MJ^jvk5f4 zReuHawYO038WieNg0^oTHHBa2?bI4?01E4HpeGML1?6MjT*v!(3+soVu+9iZcRV~1 zcH28%XVF5$sovZ+3;)hrs7DX-P;vN!-op84;FQ;z?r1mf8JYg!7)Rc7jdB`6PkArq zLJr7s)#xwpP339bp`W~WSKG4z?dN@9^P<~)u7maqr$KLfA7i0Q@YK!vr}$py=S4ry z2QRZwIw;f`1@8n^8;^GL7S_MO$Mve@qaVFXy3B14f5`h43weS(-UWW2_b21~9gDzk z+`tO{q=RN-FViY*;Dmma>5gcebsa=Fx(e+etG#_l)I_j>!H<KGcUfcikxQZ9WWsrn zVCyk!Cc=-93HfrM`M#+4R-jOS4V11PTLu1`OdaEE1ixM8JISd&<X9FqXVP?x51A-G zvf&NVZosa~rZh@Y)&e(nd3poyFFR^5>?Q1oOsFpn-e5s<@Xr3`O(9RR`$G@!gZ#>v zegV5L6ZZLo&qsJ#L;uQN&AhV>dQ>Llb%5M93x7fOK6~~aUSG)51HatLuE+QPy5inu zUgw+c_@Nd2nRRgZ_u|*nvdEyuu5SEZZl`W+hfhnJ_fUhvJ}+MP>D`(acpn~T|JQv5 zu>gg0h`}dqRzCm6=VzTfP&kJMylK+52yvP0Iyc&b!nsBu!sS_u$>t>`-XM?p)FNNb ztVrbV<;$I`@%z<Glc0}fcfS`8g`Sp)af9qZAEo9o+iB;cmhkIjk9+t&^5t`|-~uSr zL;0)SUUTCo->1@#k_qQ5+t|yiY`n4o?I5py{o#D{i@d8}hDHOLOn-F(exls%o~#4j zU+&eWL>uxchtvl_&g6=|nHjKaa^<4)XV5=#)%eX`7>{ywi%m65N&nL&JIP7=JWi4C zf?LDx%QZ250?@y5pZ@PM;3vp^HSJ%*50DFWO2B~Q(=G76^5DiDr@_CIhu%8h9ri;G z^UxaaD;MXV<U-vkP&g+M6xI*G9lw`v#<-I2-u>_@#=BftcL0Tb-rx}@wf-~k1ittM z<n}wrgZyPg?P`cK6v8<-pg0Z`!u&lbp`ix33<SAWtl1Yd745EIdQ~@Y3n!XEp$;S{ z%&&tCr+K{_>t7o|KPy-k9nYmG^1kZ|xlueC*=ry4okBRj7yJ|ybRKrPaz6_A^V5A@ zsg1p|^`L?<*e|6}mkMMW2jo*}ddg)z?4Qy?E7kyhjne8{(yWtU{~d>SA>LEk@?cod zKDe4c^tsYeR#5^wuJq(Vh@jYiN(~Rf1VukqiKj3t2BTOI3rzj`s|^Wvc_jP_<%I8> zJ0Koa&Zy<t@-Db=+={1&=aj;J3{Y4v2e;Ef1BHDm;IUoJZ^GYEUL20d9)vqm^))Eu zL4!Zq&g%yGQvO~%>;vwjVp%4%n@XtL2iA$YRhvi9H)@q?VE{I}n|257q!Q=bRl+(j zXg8$FM)-9q@AA91JVEuxIYsa{D)%pf8DpBaB!xO=;K=?hjzX`iCe5DJWC^(N_!J%Z zH>y<(Fu=TT_u^pBRhvJ)`G|3;+Rj2&;GSsfz35Msa1I1`#J;l|{1Vj(I_%(?knDjN zH>wLmPF+Mip<>xM#AB*!=TA&Wd#P@X+F}9wuew)rZ6fTrs)!4E-~$>q@R3XL)nM@H zfIBMmqw15*_4{F<Q1{=)Uaivwni#CUa!Nk_uCD#!N*&L?j-+pU!o4HpQr$CYrziYT zHKZ>F?Vxrzf4~^}POTi1E5m!KeI~_Tg&kBUrA7pz-PPi}yn58=`o*vt>T$X|mcg%4 z3+IS}(|l4=VQ1BAwJ`F)4SUxVLT{+Ib{{nt`d+<5k~SXkg?dkePVJ!&)cc3cOn}^} z503IEMVzlbVyN2zc1<nR$pMd_eRsYbJn_6kf5^Z3Oi9jwPoR*`0gCogeeu!qW9z}o zJM`83+_i@X?a@E#X92d85HG8Fd<yK4`Uekkv$5AO-4u3A!*YdaCrzt1UKWsRjgSuj z3j6OsE;rW&J4UabeHQE@@4FoGq%qF6uLirT=|1uMM6|o6CkwBECfwjhZXWz4n|vR1 zU7wuOA`5y()8mp+NP99WZJs|ltbdLcd24L(XI_W(QOGy)8<+XLq?}oh6Ah0SgB{ig z^$bCwUKS|S&jN)yr=Y{QxanO%xb<t%uNp1~q8~Iuz7i<;thxiesbM*S0Fw1&!5|6< z$m2r7!Ehb`2}VS@uI6(^+J{@VB(GIX;LqF+o<<t%zqXdY-<C3FJ3s&ZdC@t3|MR_K z*jo+VCiJt0WkeAlXo8z7UErr{0zPc_hx}^%#=V~lKUSl;ur&d8PosR?G!%MMBfIe> z3gcHJ)Hef#JT6dr^VW;W<iI=TPe7N=BZkA@(K!B?eFOfird#b{$4{|ebt3Gc=QQ<x zbUY0`qG9@%0sEcjoI(!1H5+M?O}VJ@ssQnU`fBd?C-A@2`7w51et<LU`n7=GRSS75 z;K0FQZ{VM*t&4sx=ie<^up8_>+y6NFL2X|8VJ_uXs9y#O=M8auaY6zV*TvMv)dp1O zc<i{+*b;h1UAK1B&q9#LPBp;z{lx>pL2-RY^;E~`E8-$mF&BQp`|gF3&EQ=o+JhGd z$GgM-P#w?8?TLO>3Fke6LY_B>sMB>j_0w{_=4daKP`?gj8XekMg>a}V^r~vX?e&?E zTa}Q<2hJI?W+3ESHH!saK~AR+1*a#r+2{f?9TekFH6?3QZZ7rX&CTDSzg0pVdT{)y z5x-%lRb$`pf3X}K!vj9SltuTaqd!$beGf3mIoBNWtnz2U2+&u%u52Ima$Unh=o6K& zehUiwzroJ7;p;J8RUNqj7VMz!X-7RQ)CmLI?Ff#yCM(x{RP72*z1HX7=RO+Qo1ech zD42R*s51sSylmow{#8k=FZO183iZxFVP78auQTcDaFPR+zlRuM9IM>9ag^W7yE}?{ zp2yh6fwtpyry)L5A$kpiU!dalZN#^#ZkM8;j0EZK!hcY8ayZ-(@vW-up8anw(_Ud% zV|=TcGC>Edw_EQe?5L`?-nc{XCsq1&Iu)4E-r1gM1N*Mxu_bI@ZOx7Ph=WwZ{xq;k zn~0vIR;{^K`)DtDP8vD8Nm^5~qkgw>|NLI1HQ<%eVt%hY>)1isRlF|zdKJrj3?a)_ z*wa4gCtt~Cd(>gU0I;F;w@#GTrajj5V81%em^JAh+lTp!phElOHN<x+O+sWVwyQr3 zC;KNjec4jz8CBR1bKef2s7F*WJV+9Z=f*BD(ax$b?QhbzxWMX^n}~^d(61_?&ITy# zBci?59(<qjkjaghpiuW79L|C;wBK-}Ovx|nL+Ce*QhS+k{ETA48`-#zcUS&BK5-r8 zYeaC>?)*NYktq5NL#vkiYV&@VKYXD-ks4xRY)kpAck0TczuqUXef7Z(e9z{k&X*|1 zEYt`3@W2DgbJ=&59VqHIl~6AOlx1#hGLancbr;`XmQ{a_f`5mZ8OU~=+;zr9kpGy; z_MG|6fbZeQ1S8&;1!};M%@tX^Zp4z@DQqXEbyHttzP$W$7T-_r^j(h6F)voW>B8{} zgV%@S_j#9i_@k<s?>59DK2yy<esdh<da+yKVanAqZlnTNZ5uMf5nS6S?*ZE%UZEUu zjcWZ})d<ST1}@Zso5oz*!0T>KZIXWl6!Q;MLY*m+1vtsd`5e`jqQc>q|N2=tFX6B2 zY~(>0ygnBYc;CwPFxARKx|7(Cx#y0Itxxity}!x2#{3-jN%Hy6rD{{}tWN5?wSp`h zQ{@v`IY0fczpr8-X7i7pTz#tLgm$2CJ}=*&iH>|8xCPX6!nqw_e(!@Gh>KKgChD8* z{cpG-u2Su1fl-jluKfE!r}IN#7gWMI2H+`ftOrj!dK9u>PM0<wN_}yr?wUxpvyiXD z&vCyk+4r$G+v(JVz%7aVdzPLF$DL6B0X#2l<w7|W&P@Qt_)t~+q-!<4=O4fE(c=db z>0b(YVj$HL;un=r=N>Fcczl%pvT!~I_@Zd_6w1k~@E3z&?^Ul^SOR=IcaaJFIaMhS z`T;-u*i^ysF61eJ-`<Do!f#UjSiPhh@AETuwG;32`>6Hu`t(y@4Vg+iE1XA8fAwqJ z1lVtNjk%Zi^e4-Pj;})d*kJW{`lnQrQgTaq*Dd_~=wC+zNkuI={nctOD{2*xtmnw< zpE<Au<4UcqePks4-YP8Q!ske<eu8#W$lC|ScwhA{e&=!8qo*57R&o5_Gwu~g{c+oH z(<|!1n=iJGLHw?|!Gbj))5)m6#Q9&<HNETcO0sIgC(6;4st1w~pQ?m>I#8%L%KqVi zV}J2N?7vm6D~_|@nV-ylZ5a?uJ0sK|1rP0eI_m&fz=<_*Z`Hmr)K@$EPb%d1x$TYP zb5n<DO6r+K$veC8dNViX<RIQsP2&Of9QW>NePIVw<D>d)qJ9zAt5srtk!o1=>Kf|b z^hbN&wg6K~G_T;dsCc{p?N|KXFQX{;u@l}jrhfQi$0P5BzCpaM68%M$a4sDf<`J7u zdl;JCtP%Bt=m-8wUxh5SoJ{>9)D0(RjF?Hg@W(y~d3a!quKsQ6-<Tf1?56#7-#_+4 z%$HILb(Fxs>n3ru3t~Q%%9{cO3L7Orx96|?$Ad0BzzY=iAA-U;U!YxZx7KV&AwL!r z*9TMsc`!IQfB`WmocBbIUow?(V?Q3;0$SH-aE|&!*q={U<V)y}Sl>DKnB%x#i;^R> z)51CHWQQUBI6ke{rIu4q^zAUWfbY{Mb#DX4pB6h$f8w~YXnA%3<GtRWZe622=pDPl zknLwa(Xb}%2GcS5-e#&MEA&V%<dZyKgWOb}M!(Ix>!m%^1HJ31PR!?hCXCWs`PXv^ zb(8p>2_qZxdQ9)6Utq&Rmuwd<M1l4VWR8qyU0OZ1<9#G;S01C@c8|Tel>Un6-38(F zXM}oe><8A10);x0<R<NkNRY=jQ|^TG1IP<yrC&)VKH2<Z|Ae|%q@BcExbC;YJCt89 z9#l)V-0495DxB{|9yCm2yL!(ztvT(l`zh!+gTgs{yuSb2wa_CfroVE$bNY$nRa2p( zpxpnl<6@km(rj!qhVQM?UgynmtX%eM!g`Vi{E$3<j(=aYwq`?K_fAw4`%%mn`PcY} zDEyj4e>ZCO#~GU_-_IvK=e$OIUXO{_Kw+OGI9$@R53e`6xt%BVa8_7)cR!HZ?RdXz zUsH3At4Tw{*HCW@=iY!U*Gc)GM#TW;yn6X=Fev7ssDyL9z<EXyGQRJE=p`o9gG&y* zs80D_wzT#_BXIezfR`Lsxiv2b^SyaI9{teVdlQH509SrL_y+N;YSrhkIK+Rd)i<Ax zp!}>^VcFCbT=(fx0`$8oFLBj2#t-XbUCj|Usq(*WPM{yRv%SBXam&u%neXUt?NT2Z zNdH2p|IOboylh1I!079|jNcp6ZzJP^eC>!RKJV6#xk+rl{D}IN9A82mW^nt=z3u3S zitBbNp)L}5(p~E;-&fct3!cfz+`#8Rc;HcN^N;;3EL)w%_q<dvXCCG75(`I>$G_M6 zLP{pO($5grt5xUypAC8j3iVyV;|Eo<s7DHhMQ@{h=duy~mHo0S$LYTa`|JPuy^x0s z@|YjS1Bb$@99T#$kguZtJH*6h(mwej$D2@34;1q|Rr|T&9^BpQ?ltzCP?v-4Qk3;8 z?XUL9S3vWT38_11Z?+A8)}7-<%wJJ$<HkcWc>jKmSK+)ea1#^tzzwC{lIbrB`xDvE z3=G-ttEbQ7_24bE<Mmhb;3vvOT#s#RXQ4g|$n+$(%d*ye6^PGOi)XxA#{16q@3x!% z_1t$2;y5oS>{I_sPKA9jVCLcCk)y$sOvwuB*CbAO+5F>|3w8CtpbudW`8~htExc%# zgmcZnfnD?p=qFim;taHKZ`FZ%;E&$yl0AI_{ew<^FBefywlACF!u}NYD}dZiKtIB; zS<Af~#|`(Lk6`}`=gWaY-D$AiFwY4bXSI*l3!<Gsc)6BxrvG8hImR7ae&+nBn8&1K z8WsF1<<~U^(dbX*m)t5bup3HF+u-xckGrD-aX+P)2dR8ppelmDq7?SAf?|G(QplSI zZ*amIyxyR`G5S$?Im7cC<W{+#8}B#|Yqe@R;y&eO9uNqw57_<V7r6SKp*6;nlH2p) zw<+f@GrY-p*y(K&X4eHrHIJ+hc~uUZWT1vWuFOao|Ah0sEZ@<S?7n^i`bC*iqt1dd zFzKv|r2$!)FRDzuxN_G@^1!`ARsLd9`HEJhU~<K#mVDn#{c#J%kSufwiur;{c!fS~ zNZV&4mht}FhYhBWu_;2ltQ6`T^Zs3yX7~H+`f)$|wB)=uqD5W!|4Luaqp^?+rBDZ% z^WK$tuS%g_0qNK)@jEDcJbAS_Y1cWK?Io*wZ7Sc_``h}akz}dE(uL%Mk!$#Q@0-oL zb|w$J-@S*QZ`!BEMsn{$tG2xEs-ed@zpc2E(H(xKlE*k_a=v{$JQq-0e^v(WzTThm z5ISt!J@_HY$SFIoPXc34-n5*+_YBdCp7U3`Fb#@vzL+nd6zUj(h@RbGAC!}4$0*sp z;ykT#hW5Lakay**G3mk3Tgo|1umtBV(z~4tE^xR%mU756UW^0fl6Z?!-iK~mO_GI; zNt<`o?(pvp4&yM6mBRUTlp6-Vysn~eX69e_nWS~H%>zE)lI@<9dodqOIr4DZBN(5` z5qfVIUieGC#C08I=JngXc;8Hg_D8NCWGqXUykR?3uKy_0cu+n2UGp)X*Gc9<0i=%h zqQjK0E-$Ndy+h1LQ_{U@NNU+N=emY)9v&E7INlubmonm7XA`zVXmT5WK93h2C{UW_ ze;e_K(q+YqK`Ef)_Q96$uapD1!3DJLek~n-zf!0p3-%t`+nwXloEw!u)1I!M5g#gr zb7{aH`#Wt}Ome>_>DDZ?8aczlj{V(}h6psXJ`l&}Lb%!EG$_<-1N-x!aLO<1AW^QZ z=9P`5{6u>{&gb(-9enbW^3&(aZ}<<&n4{<V!VW8ia{$>c>kyf;-Ht5j$LCI~+i7kB zx$IcsU~*dd&9xlY+$Y1&ZN1@O`&awMjNGDuomGaM*X)2ERR-zpY0wGuul98gzt1uV zNtE};1KU$hyv}aSr~J8?BSHlSnf(0D=jfkV-SZyXEq};vjz{xTT3tT;)jk-`)*Qd> z6WUyX9Z<Gz(>)z=p0eq_+UvQF)Uf04MEJu>mO+f=I@!K<D=}^qU*Bk|<GB?dSQrR= z%L8b^*UOxZ;io7{228ul^}G8?KK<W;HxC^$M0}?>Vjd`m{3!}7rC0I(irqXo9u)I} z6l-_s*TFbfEKv`zg1@4eRsH%y#1o2%4D3OQO%sr1e&9DLtkxYJ%Jo3uoJ_C_3k!km zPIL`}epR#@|4Rq&r)Y{1i1$;}G5l-^|4G5H67jS`2MQkkxV(ae2Ef-RYTU*+m*2nF z=j>vxTdo`Fw~_0a2D$6GPFm2bRl`GE_hj8_a9e`(bFaVFM}_k!!Ik#G)dD~<|4WYU zUIV=%&o2GlmFuNrKfhTEJ0c%dm6@RS@}Zpz^bj}8Q^!p8Sp+7Oqb0$ZZQ6r)e{tN% zLp!b1#kiM?dQ9#|f#dqHV(Y5`TsK~K)piWmkr}vw9%&6#UZ8uUV>J<{$))CYW$<U^ zl7rWJalKeLhk|5XdeF1SieJ_w>&5aq^W|r`4lL?jxu3tubHoL5|I0&qUgC3%8zpbU zb>wm8H&6e)jvO~K2<<Ny4txgV^1K~K|MgzOJI7CkA0i*a1PE|OK(9|+?_SaDV6!}M zYsT+Vf3|<!Q5*Q4+&<t0ejj>yH0-}Z*cT1fUfB8@;#Nh2!k0zR$BHJO-dsT3u4wr! z@I3UWLO9P1?8HLIAdiKhT=F<x_>YQSrRQ(RK{3y>vK}00pM9zp^qaz|{vjvIsj&Z+ z>(joP_V9NV9vy>iDTng>I=@zf;`)yQ(%qf%3pZ~V;w#0d4<66C-aXDZ*@f~i=5Hy4 zdO+Z$lO+|1hZNJYdbP#4R^-^Vw?+FZcx-tj`Jl(=hu{n*43c+lr9;msc+74b$@*`k zV&mS?{CnlPf@1o`@LvOYJ=P%tr(V@7>&g3G&HetA&vPuX0(Mowbb8oN#hBJocgT@~ z<qFt7!%`ZqM!clR_&Vh=KbO$4>e(8gP){5T@z`f#$@fLT!u4~Z4jCxMc?tzr;z6&D zjgKB;yKU=V4u3@<=0z!3_9p`Dm)X5O$GxRRo*CEudv(mPDrEokxoHABsSxUmfx<pw zj^_~zv-w=Y`JNottjhv69=K->{0;@vU=VLA8a9jUbCq%tcz-tgOQ=6YvJU27fB*CO z#*ypmRpa%zAp~r3*I3<#`3V)7XY8n7xStI)ThePJ;$DTgPN=Zfd|g33BkcF3+`Nsy z3p=3@&XZ)ju&_MkVg0AE?5Bt+cjs7uu?V2yCsfus1Y!O*!#`9EU07BRaj#<JhOT<^ z*grEO79{-D&kLq?ZB4zq`02%zS>UpVUDK)Gav`v6-&Mx-ufdKeR_~JMAf8iftRXL% z4~qHpiY>FGZK?P2SpX8;fd+<uq1Y>LX$SkDICx3B`bX;NZN2C7`o~MRWFk&eoKCc} zf?iNybo;;_EBG<yS6qELcywb>*e?kR^>)GHv=#@T9~4ja<}QK%u6Tat%3SK{*TW0? z@wwieFK<LW{dvLheE8RjZ%(-?j_02~Mecn63LV9Wxv)D`S(p^mjc9d|_O-^x#x>Dj z$_8%+*M>b%3g?#6Zh2+-(eDuVWhpy#4*Ej>k?9@$eNSQG2loEwrX2d013r#3gxprv zvjv@k;sX%pDBVJz20#xgSq5nY?W<X%pNt0rsUX0pdp6x0|K$&g`M}EQE`h)4ht6i= z3H>}8YWi>Y?X3`}E7x|-okM?$X&Lmt&U}+u%m#0s_j0HICFa8`i#tZI=J%fH4BkyY zykuQuDE<3ab*^oP94QfQzog$Q>{AALj2z@nDb(WuKQH+b$GGE*TdR4DTfVtoYa9iB z|GxSt{kk$990>|_TEPmJHO;gbH#PjeYZA%x?a9P})%pGvud5GX+)<&`;V`dT7I~;< z0r+E^X(;_gp&lQ}x<&ju>ji=3d0A2DN9C`hfqtBa)C$O`!?;j;-n3N4&tiVQO7C~T z@#&z6)6!0iXI<lB7c<`X<bhJ4Y-ji|&XXxPfes4iDuF^>yT3_C(&nG}A!VB`4k`RT z&vOOcua1slyeh8StA_Lo>BV_C$2qU6Gp@Gd!GMfodA=5C?KQgt<6@z%F(~RKRoAJD z$8p}Zy-~tmuCuh!9)F7SSz^9}N;rR;acth+4_qgxH+FZ`35-|wZ!Y0{k^YuRuelyt z0|6fNu&T=PehKH;ZcKCq#e75Mt33<-D36cr<nu~EG4EJ;x$0vx*jFW|QJMcEoPz{% z+YRogJj?+J7NlE!qCY9_&rt5>MhQ?jCj%7scPe8er<Y*dDg&x6H>4k|3BLA}@r?Yy znm&{-k54Za(O-7sfl(YMYW-)71BLTp>7RFp1_%3oYTk%(ss#^5rJu?A&m4D^>-EZZ zgW894{0VgqIBq`;o5naw+&`df5SMt7eyDKHDp>QGPaXQtI$LLTL7b%cQoC0g?e+U^ z7@>dZk;gm$3oJ^D=*Pdqi}s}czT#i?#7$6~hf=_;dqaJC*!_tkueU$D<A&+fmzC>N zirFpJ-Atx^USiweH0|CAi=Xr>()7RF;@_ie>g*?N4<CF_yWanZcPZ^P%gfUb=-t-n z0PUd(H^zY782HhCt*w_%JHj#$^gr8Lm26!6mtAS)mDiH?O{l{FHnVQHo_TFeb#@%* zbMv@a`ZJ9V-U=H>`&Bs~q7drm+5F@G=r29?nf9wj_~sm5SGTU7743f&PUyjJ`YruA zAMY>!IYlcI?JO7fdCI@BP#F06VLdnIA(mDhv!8yNm>(^FaQDp+$dUX`t5<93uU*@H z{to@ME8~tOL2t+lFN|@+_>f;v_*92Im!Ff`>p}kIC(o{OrN4S2Ygqgf@Ywf0JK^uh zg}RI2p~5032j&X~H6N+Z{6U`k25v8#y)~77wSV?c=tsG5E*B`AXAG{{Wm3reNT!?8 zzn%-jiguAte(-t+{5Sb%CX&#<WStf;g9mYe!Z|7QM=Rq{c{mG0f?>v6wCVqb&e<xh z{Wl->SRcs0Z+muRKmA$P_sNV0qWer3#pjJJJ-v#4eS*ueG~OqPg^YN=I`<6?>CXoz z#}xB9J{<4JJkJp`JIL97;yx02_VYzs5Kqac<gYx(>+)D!=81~?5#%$M{qTnWB%jSh zCBElJhi=TTTu}AMYWn+2M*VtDzgwsq2(CuM^SRdYU}Z3Gey|_pNxt53>V&D}gDKX0 z&JC~1b}|0gm^t@d19EY@A{iMFJ(SlG&Nt%cEl%d}{%cp%S1o6|^L!9+)h)gLiD2#; zts5`FWxpom@%hAgE%|~A4Q((E<+DoKn678sQ@Q_4j=Sr^?~!x+y8U1A&*)3bEE#u= za9HzmB-@b*tBe;|w~*~^Ft@=E_LtMsRQ9*H@29d(F(}5ra&L>hKLKzYkK@>{9%kQ% zUST}L^DRKvv0)yRHy7jd5zJ#9GIrZ#w(pQ(67TQitvPGo@b9ea0t$6r7$=Q9?#<^B z=b_{*f6KUqWhg0UzH3+8Gp{xv`{p&qMZ$UFd`>2Qfie5S4#B^WGtH0fA?EkVg}QTW zZ|Ul>RT<|L<sF2dE9bHGE*uBf8{4s6_vNM)ZRYr}nU-^w<HcrB9r$T-mg%HCAKrK9 z8sF#e=k(sk$ZZ<MK(glC4ScVHQA^|5?gh<0<x=kV{|Mb)%jTc>^+2nN<s8S{7Rx-~ z!`uK19{*{#y@=y>p#My^H;?0H9Cn6<x52aAZ~&g~+hOhjj(>ebBH)#!Z=O*u#Qb{s zou1p4L7&R+=RJPB4=iRv2l#{=;XtAOF8J!v<g=f^cb>{wY(H+Rpgey1((@SQ;u{Mr zfui3b|2?qxa`;0E?Z>q)(NEQ{c48poE-`;bA?`m`w9D97i~eTUP9JvjXOo^uI~j-d zZD}@;^AY0uph8@4R17RTdKLbb!tV5qxAcP@gXS91&*pJRj58z?U8h6N6=FV)g2xv! zZsW2D{rSMB-$G$m6`^#*!AKs&28!#einvV^bQ$j?EKbge{mbu9+Uc1^y`IEEh@`TX z$qfEIw(A;RC!yAD8U6PF76xWKvE{KA{cz3T^c}Qk;(DF}(NH_aH;V302VguXWR7an zHK4dor|_=(!<F_6-ex!Y<$vNbF%L`Ol{mjeJ$_Eh%$s(HY14Iiozm7tZ~nTj>Ronm zAJ8WywFUILLd?ri_*o_PrM(sR`6|TyN(%q*xYdl~xQs))_$NLNYV7LD_Yvx3fx+3( zykN-bE?;Qh!iM=bhaaL4_X{f$bW-lnE{p3Die#TAJ!oH3cyKw%y77Pg4DH*IpJTa3 z&QBp6tMY*TQMn$d2)ktak@6z$J6DK#M+$a3^TUHY;d%V^yndJCONW!eL2H;#E}Xkf zmIbQWegVU67qb5uj`kuSz7FR+Sb$ZB0>;Pw{YO}_eT8!Y*{+p-t-||tgJSwCLj8LF zzGcKI*gXYq+lleKxSpy|FWX+7^JIVGYu|z;KNznE>fOJ3o$pb(?ynHe|6sc%<r`6+ zVwCT;EN8nUyl&5Y_t7*2;J9-)hCvT1vR_|_!FW?leSGBu=g;O0FYCy8i3N3J4^-e{ z1oo7lWvY++*)J<DHPM3qrdYXoz%1w!#i}RE)9H7u9=gn!-xu?N6srwpJm!5?jr_8n z`S~k(04$ix1AKU$Tf>G!&ntv;(m|>Z&aW)#^wNv%zo>ESUCQbF>r01m{zcpetC(Ou z#gTHrX)=z(5y@ve@H#YSoDWGnoA8bE2nlpd!T5STuW{c%+`x<iwo~luxzF<Xv(6C} z{j#{(nwgyMiJ!1y0rf-z3-VKL5-nC&p&aGJHro7G`=#A*PG&!5j_=f*^Ay8Jk84G_ z8nwlu2IJmIyNs$Au^sEYDdN5cp>8zWW7DVl@N*UG=1*$H`?7pH|DIn__YLfaV#k(u zbLs!>-oCXV`(xjSPG2Zz2UW8MvHg#{ep|+QqcdGD6>&UWnz_oD@_UT~4ixih6wkc^ zE^~i@SZ_wj*W`MKP<I<Na0q$`xlsz|UW0}P*&{iR-%Ocsm-`XKeeBA%39;^+*Y4PD ze=^q{y4<!|#(2YqjtD5!6Sw(iy+yQ(O0h15Qk)M|iu-GoqvBm&Ku;<s6lZPw#<+Q? z?K9|4r8qCDoS9nvCFijhblYBs@xYRHd*(8(5cj<*SDU*}=ku`a9^*`w6^7nZ<`3Cj zZ7;}UyttmU_t5vk9U!MKF%FeSHf!Hu9D1t5%VnHT5bAm|e&T@{Aj^btJ?nbz<`AxP z+)8fp(;d8{T2+(t?!q~5jL&y1z0Y}t`^L3%$Nt4XzrVA2d@<viTeahRz~55du-w#y z>sFV)cCzBSn>dfGJk_Y}TCR`rI8&}4@z`drukEdUX)Wg=xNVGa)0XPb)=lSoj`<PE zxNH65cpvB~<(lHQR-Bh#dG+@|w&(JPI(wk^l}n?F6S>a9bUua6KkG~XqVv+Klml@; zopP}{_{W;RxafGOJ>$YfOw=aZYd7RN=fc}#_p==rI=>i0`S`PLId}N=Ft&^6=lyHl zYwEXi>$u)B>0Fb8VeIeC-OqFWW$gM`S6*jqm37NGZzB4A%8@1$Co(=A#tmIyCKv3% z#Kmrfj910|*vjah?X)?65;4j_&3Os2u8z{Vo&RXg^VqY1Amh>A%Rh6ywXaW$0LHDo zS9dI++?w)0EU+6K7p_-v`kB9P{qbqeWX7SaqsKV($>Z5Iz`6)rDJQkK@q*(=;;W&& zu}lNkqv(dCJrv@;c*S=PAn^0G;SJKkPloVx!1rHrtI*!RLjcD4Td27joacI_Js^Yg z(l6);a@=lR*OqZ)$+u=BIgU$aCFIk7mGFhhG3)ozUnqg&ME~H0|K%YjpitL~*L!EA zO@BkE|IGXOy}dv^^FCbn4E=|XER+d;GjvU&J^0b_^s5r^*X#kkPf<^N+)|zM40Ymb zT%i2adoweK>p(m<kL!$$whijWc)W2<(<+qbCI<Z~*njBdPFx4)GBoEKn%XUWnnm&; zX#PENtOw<xacH_1$BAK|%$LxUN}>KKs26PF!S%cv%X*n}J)6gY#Il|1Jk8|1gswty zgX?>`+9?%WpVhfDc24SF{4+0Dje!Pv$Ffl~UXKfT?6>fVh3s!Vs{zkAuOZeiP;xqr za$cVUp3fCoc$s>miSmGo`h?r-xZc(#CeV}b+cEy82j@pjTaEw4^+l_QTPj{}z}AR9 z9OuG0-Qb{<CO2V6ly(yHNZ28z12>R>j(Ve~vRzz$^_au`Tyh=|WAo4cuaNjgf&5<R z<~zqY4#N09a($LP_kl4ziR*X5xt;v{wZlDOCzQcc=X;`mm1_NGbvZ92)Ds28{YFZq z)HN>dub=<?o#veT!!&~&zHl6g`{b4WL+U4S-8JxbP&WtOXZ^(!T>p%ke&j0W6JwQU z-ofuyCgeQu-UX&+c7DkDs~k?Kf^)PLt9bqS)tj`Xep=*Lkj`<t^vBQ*-2ax#18c$j zly!-`j~M4GcMeZ}$8~J6&X{t)#|mBE??BSyRO-z`25&oapWWeRJ}apo4zHNw&-u~A z+%U$!zo=e7y(aDpR~FoRa+LifEVF=OT{)#t7aSDpBPciWATV&l{KmzUn+-nx!#V%E zVZ_^L>a~rvvRAV|xNDBjCDv0=Zj&6-VZOtTs^5&+PP@7-HKg9z^Yno=uUk-mMhEJt zLrby)sek|IeKCGgUf8ix#d+XM;|)Gwd@HY%nfKv%`jc03g9*&wtxgMbd0if}N;@l@ z#|z%6-EJ%8O*jvS>=!ei_ER|Dj^AgZxXnNFhT?pU^1`J2cbxw{-S@y8u16o;R_7M& zi#Q*nEXXzXga54DYk9OD<znZ!TTyJ+{CT|txjwvUdCz;4vpk;-<(wB6>&7UT&l&H_ z{1dV6lv0e}m665sH!$xdwDo{VY|ns|RUG*|;yyT~@>~68lp`L$!TCU;&NL|XzVecJ z6T<mT99NC6j)VWH?5{m<8rK8F`gcmp$IF+nKl|up>eF8LPP}rR`2)f^*&MI$`!}TB z>REhr37?B)F4@lA*Ld%x-}A>FwEO5b{pMfeoyUK3KWNJ?_mkL9EGxkFY_`cOpYxN# zxpE{6N|USJ_uBT?-&t0H^WrT^j?8Ai7-?^uU`!sc?An0$>Ee(~f1!<OUMcgBjNVPF zOM7a>4e4Zr%!~S^H62_&56|1+^?05R*x>W}$^3r3d*|j+PuAi_Vo<C@rmVq(JwW07 z3{dNnLp82LRb&|-V%+o_4jkjxUjZ*AoKGz;y<8o3T2aOg{A9iLsq~Y71dev2-TJ|a zaN0SZn@c;AH0uQ86mC~#-15cg&26rOeXc*{6a8J`JYAcA_S-&qK4$C>n}6nM?-~Y1 z)6c#2RH@B%TA|)Fc)hdUBaB<c)w#jzxt@2W+vXxt%o9`;zAPF^J9trH;aC7NO`{_y z)UO234uEGwKl#esNm1bG$+4Sg7f&NV<NJ$w|B6$weXO-eJBLf04-o4}DNb=?BR{Xx zyOeRq*^2}888@7RgU5LF;)QhvMttsHS?OHw6ZeTLidm2pe3Vn3PrEAar&sV;MYi)x zCWzBM%WqtQK2wyMtbW3E+K*xTo#{XPu2(;e>o*O2H{7fW3Uy3DP8V^VrUy5~QJz@` z7ZmI2{A-@Qx6X;lv?K6(b?Coa#156yzOt+Y{q^2Vq~*A%*`fx=huK8yv-GP>`c;3& zan0?m%+nI;rBW`h=(iT+Z{D(gv@fkL4#{OciE!Q-$Hm_CjnqFa@9Hk%^;lkp`9H>; z&VQvou?k3jKzlFl?^E_K+GYg5Lpe~<{VB(}jmGLR^Un~j_M^VCIs7D_@yNj6pJs5} z3g-~<djllzsV^+rl>KBLO0Nm;o#_uSjfC-mP+yoovtBU&uC;gSYU+c7x?8C~EOQQ= z;y!JwmWm4IyY%gHIumi6vY%;j8uMlPU9nwD`_q5X+(GmQ2CUOLK)XNiUAG0aM?$@6 zklT5g2PT}a1A04-`oMTW*>H|N*TaPKgh34ph=Kk*U<M54Mh`Ij#o#qu-}{pX6~F4| zS^DeAijoBSt-|?tpjZz@If8|pZ2rkNqZ`2AGwh}v66&W@KVO!g<a*oQ-E%$pdEwkb zkZDK!{fWhEo=~5hNo<+P-(Tom*o5!H<AoT13H5D39+yeK?@t`_uXV`94$-v#&lC>~ zXcwu@=$HK2M_#&p!(+<FCmv`FeoofWW;=h`Z~Tyc-?y53EE%tS*Yz)8-1c2HXeRx( z?}i<>(~tN*yX-Uj_h0LYmG!)oWr6BxY@hPjbJZE&{N%x1;BOwF&2_V;Iy<;tsJ*v& z2=~vS*MhkprWy@D*A=VowPk*>!PNW_T*u=y0QZ?R#D%zzP0SNf33aeR;aqX9>%pOd zJyUgNA`B?jxm1~Ss$<Fg=z(<}I&xnbw+%AC-C0%Af%&YiZ)}U0-|9X+WGdGSWjX`A zm~YID4a^(%IivW*JYBy>7SFj4N}T^v1#@Ez7;@|VTjpbj8ecok>k8+$lEXGE9`e`c zf?(*mzasF<Az$Wg2kidwllz){PiUob|B|A^=;O?%_2vKv#rZy!a9)DVf8AgCXP=?{ zZ;Pw#|9Y?fru%ktUDUMZG)LwubD59(6aTf}vb|}a{J-*e+e|t*b{yNeQ+z)6$JJ_J zzAu{n@OI&O?zh*|Z+?LJ-8EStz~-NQmo=mJP38LOpSlD3&JSC1f6t$Nnt%Gu=p#H7 zu<eMdlbLVauKgJc=ItAgdN`SR<-&Ok?60MUKe@ler11JvzQ1K+z+B!(IJcGWRk?1b z;`TuH+rXHP3(x#bas77yC#3oLt<%17-`SsiBvws3+A=@C_ub6_>{o6R=RUUX*U}#` zkGm^(IJ15FYc{g~#XK}sn})83xL>eEzEvsrH}Y5w>K~>7&_Cuf1LMj+^AA_{G*&Wi zu&{qgL(U7FD=N05o;%HiYVi1zrUR+p4mquvLjADc=1y(S`-pXM{^g(M^8gR(4edMY zsRxAfN5C~K<Or^Oa?*l+&k7!p1B&Z8%B6>nInjSvTCMkLjz@95>0kNFi$4Typ}zf- zpDNa){a5~~Shq~MBCKBu?b=G$Q(4Sw{Il*X))iE4>N~-Jd7yv%@+~e^CNK`)a>dH7 z3HcFk{P)kAGb0$MZJw3#n0lDg>WpJHbk&<n|1a<L;9iUmSe}yhW7Xy+SLr7%WWpCX zM{@HQ^_y^RBbdVjqrs_-To>?jlY1PS!t09bb4sy3k&<Nz*&gG0;3f64)1~3GL*r^U zZb~~n`eCRE^Gip2oc+dia5h&h{%l*dg7IJ0?#>RJrx<%|{$b9yjAy|;5bn4${l00j z)-hZk&j}cvtmN~J9~(q_yjrU~k8$Icy|pjVZtcr<jpBUOg^ZV9=}#9M*qRD??dLw; zqMiLy&!g(Q(`T7)P~FsZJ@*yptJgIe3)XRVZq5A-!g<Nme+{1;;J%o))6S0Jew>a7 z)VS}U>zoQLeoxGMQkgaSd6fHVdrvqwiTh?OPufLupN4g6n}*yk@@Jn`|2-d)x!>l` z{w7-%Sfrl3wLgseF2p>#f9WCj6~^PZPvg(NCRxM_BksQy*E3X_9pip6um8`!gSeCV z8Qj;xV>GFc(t1B1#5|Eq9y|*UU$|u!_tl8?g;gwnMZGxgNku82XHs#!B<iCamx%|d z7pF%Y>dAc|GrDY%(hkh<TE3tA7{t6gRnC#`V|#&9KP`AkeK`5-$6p-h!a1uTUel6! zA;Nj9;II!bO5h)<GA4~&Nc|FL(C+#N>h*g+UvpoPupnUb&ps>n{Ex$^Pu!M7>%yN> zIUc%~L_6b<yly`8aqPzJuT8x+sOp_d%xkf^en0dy^;6N50OpzW&(W&E`~2DOX0<mv ziS5;=UTp`quNfQ}wtJWGD)ZQGVtqPQ>u-jx)Ke|IJ}sr)Y!d1*o9$G$xt0a{S=;o< zI_8y>?dl&wxfjk013$cNe3E`4)7&`jStb+xuYB5f-C~YsmQCZl+2!ApcXFQs)4Zq` zc-$%VolsvMJlHI+jSxRq)-O?R8NcrZ<CnQ939lLNjQL{Of%D6M_93K<812XL8J`t* zmvSF7J=KfjTdY^46zh&Dg>!8|;anq|fBZ2`6Yt4O{^sRJJ;w2KO={|M-YTHir(g5~ zh4bvdpbbs!IKL3|Wx-O$u|er4d=8M!N9s`zBT9^?-u1oxqbuK2^-9r(@uFh<_p9_9 zy%z_ark~@%fdsl)fBeEY%;|&PLhfJqQzz(8e!Fm<I>_`7&cpoi-^Dt?O0n*qvh&mO z`E2L*E7SJy^W2upJn)uvxBaHS)by%VOX`otS{KJtZwluxg0&7Cw`2ZTwI+^VU{96W ztJ-d*zxO9D6zf|n%3@1TGoMwg=cN$q<0{^@?;XkY6&?q{^*(X`vVv(kTrYX76O+cg z)Q24%o^t*0p85PDuAf}#pK@a^<Fpv>1I%CKF&&&YJsz2Mfa`L9@^K2Ln&mNnbZ@&e zK3vZf_o*qw{bq{%0Y(?Nt|XjO0gC(R6^r-ZugUpTrsFZsb?)^S<-9M=1J`|W&T1-{ zPc!-MzAv0dov`n?4&zNkZ|!-#kyS(dI4_#uIAbsTEJgIu(jSaNZLKDl^ZMdGQHAIS z%HRG@J;1z`a}}}X&`0t)gOkVb_Y+@#?8fzcao>e}l-t4Yh+E~E?YHVPA0y%HygkgX z7VC`41F6t#{;B8nC(oM4iNQ|FZHAw|!u4+JStA?}hsrH{cK9=IqnF+FXxL-9$&-tV z@V;_Hoq^1Y=`gq85bxXi)tLHRj~CZ-<V_MwE;9e15gcabxzu@6WB_|7=P^voClTjM z<y9Y>O-FnttAK;+#JXy0c%p*6OgJYE6yt8$`J#Q}pf6-+Yq`CFT*^+d5H)zh<@0&S zkL=iVpUz)df3C7_itNZl`);Gjwu}4<{$}3Q=12LtUAA-4AF|_{W-VID>s7|*vU6R= z`JUl@jV3*@V?8%d$McD-(>CYA#(}KU_I}uJ_$#tv>kxHI)?d4`U|Lt!U30r9gWZxL z>g>rpcb&d%f|*xdog3^x;rwmTfEz#A9+l@X$m^ZgUdDVAF%M1N@KnIcDr`5N_Xrx! zK4Q)9iSys`#@6FsFrT8a-OFI+xr^gX&TZ|?b749j^VP*VQ8JdZZ3J=~nJM3&=TL*f zxpClX9;6G3b!21<xM2&-x;8EidQukkeTg6Jk4)UhE0dgyh~xXSj1Vc>TUlQwe1c*< zZkf4VSy#j>GBLkW*8R;&8QV#eXPL3_ubu2yF;7CqV>J<%%jm}IklcVwHosT^d6l&v zzDMuGUv&%Hmfbv$cuCfV1=2yIx;BRq|I1olObB2<3+Ix6wU~ec>N7!(brPFD-U<CD ztNG!B^Eh(uhHo>-V0qmwBn>vn1rC1R;d*OcUvFizM8uae10FC2ww_$G>I2?)*}d<O zds)Yq8P|XFJ*q0svc0<;cYHzl>gqgd%{B7S`)EtDvM#GkIB$xqtoJN~mbCmy%1T@F zx=b5tO;*;Yk{Rd54Q2ls`*|+ra~kW#pJY1==MeFJ8(OCNu)Rj7Pl6tmHFY;{g>fxw zVja*K_Dd%EU9xJ6+&*($=-lwQIn~DAyJGpo_we7nf8{R<Z_WCWn{p!1j^5>=VN*M@ z?qp>ijQ8g?%2y*;kMe26xsxQ%FCwqyUTd$VrBhW)t7?UomX-nj!@p~-uOxr3&EMC> zf7)6)S~dB5rAqvlo~yIO!OPpzS>h=EMmsqy9QgeoU#%+sxps0`u>XJerQpghXjKt^ zRWl(eG&nLjGCq#q68`Y7|NYwsb%KK8GjIuhM(2n+v+3O>3p@Wg80MdYV*GfHz3zW} zS2r#&HZ)m$M4dku%!rMQ`}6P2zy6&O8<_FW@A2<{f5rcJpg&FUuitA2C*fAw4JsS< z-@c+Nv9-4}|My>3x##F0b+q&J(zF%++P0gX5&may>n(G`ui}$ZB8+TfLz5zd1LKVB z15;9CjZCfn^)dd>!PV8--An3huW9S(>BYaAwC!eL-pA6^yiYeXE6W~cz5AG%nVFiH z{_`FF&(%TV=<OtvID2c_#)hUOg|_Wx>g(%U`5|{tXEz5tfMZf<Xk2<^a75c~CjWfh zR^sUDQ2EV}&~SVNf9+vn+NW1<b2BTm-lkSoz0A%3T*}T%6B-i}nUEYG84?)N&CK_& z>nNS^-Z6nGktwMmxJVpd_urpV>S^!bsWJ8a_uu|6J-}agijNByZxtGtobun@$?SjU zPV55*cQ41b-Flf>So!)^ibl2n938rmaS5p@f8-@SI^};5u}V?;FA`Qg&ObCZAth5B z#(zf4@Bg@)uK4j99EY}^&h~$P9xQWpmDsvD{COHrZ*P_RpC8=32iw{G`DA!#JS8LZ zKL>46e0q;RV@l8@qs0;XKd6JM$zgvqNl0KyV2`jQeEB~wnjGdI93PV!8}}cr@IO6; zc3^lC{-5{P;r;*q??0MC=YOLq{{5!aVnWkGWB%xpKbo>eaC}^HN?_cdKCKxT4p9jY zObPw-fyj{1I7oTs|IpLb!UBU+;*<WH&aRdc8J-lG{2!m!Ns12)`ENd5FCjiPBq`KC zAwDuLCD}hADe6B|(Vr)-=@ywB5ttqr9r))yo~g+xk-_3m4F<)eh8npBMu!@CCj~~v zM1=Bo!j-f|C0zB0S}vX%qSRV<a+Bl#qZQG0mpV(l|BC_nbG6Vva|Y&|{QKX%TAG+a zGsHw@7C8L>>(%(J8h`AiIMDdJ>J|ULivRyr{Qq$k|6demP5M#)A)2BKrNhtuHy)F2 z#XnxszYl_c2JGKM?7t|<|AUUvf3Zn_-b;tp<G<JMHUH(FRw{BT9R6PKKkxG&-_x%U xjX{;s|7wf>S<mvXwf<8b{I9C<YX9Zch1dF@yYqjrgOyG7e*uvH#&>ey0001<>&XBB literal 0 HcmV?d00001 From 1762b6d3c162fe3e62cbf295ee92a928e84fcdd0 Mon Sep 17 00:00:00 2001 From: Jed Lichtenstein <jed@Jeds-MacBook-Pro.local> Date: Mon, 13 Nov 2023 16:13:03 -0700 Subject: [PATCH 2/2] part 2 --- CopyOf02_spatial_analysis_jed.Rmd | 386 ++++++++++++++++++++++++++++++ 1 file changed, 386 insertions(+) create mode 100644 CopyOf02_spatial_analysis_jed.Rmd diff --git a/CopyOf02_spatial_analysis_jed.Rmd b/CopyOf02_spatial_analysis_jed.Rmd new file mode 100644 index 0000000..c5e6acb --- /dev/null +++ b/CopyOf02_spatial_analysis_jed.Rmd @@ -0,0 +1,386 @@ +--- +title: "Spatial Data Analysis" +author: "Caitlin Mothes" +date: "`r Sys.Date()`" +output: github_document +--- + +```{r setup, include=FALSE} +knitr::opts_chunk$set(echo = TRUE, eval=TRUE) +``` + +In the first lesson this week you were introduced to different spatial data types, various databases you can pull spatial data from and worked through importing, wrangling, and saving those spatial data types. Today we are going to dive deeper in spatial analyses in R. + +You have briefly used the `sf` and `terra` packages so far, but today we will be exploring them much more in depth using the wide range of spatial analysis operations they provide. + +You shouldn't need to install any new packages for today, but need to load in all the necessary libraries: + +```{r} +source("setup.R") + +library(units) +``` + +## Load in spatial data + +We will be working with some new datasets today that are already included in the 'data/' folder. These include: + +- "spatDat.RData" : an .RData file that loads in the four objects: + + - `counties` : a multipolygon layer of Colorado counties (which we used in 01_spatial_intro.Rmd) + + - `rivers` : a polyline layer of all major rivers in Colorado + + - `occ` : a list of three dataframes that includes species occurrence data (i.e., point locations) for Elk, Yellow-bellied Marmot, and Western Tiger Salamander in Colorado retrieved from the [GBIF](https://www.gbif.org/) database. + + - `snotel_data` : spatial point dataframe (i.e., `sf` object) of daily snow depth for 8 SNOTEL sites in Colorado + +```{r key1} +#load in all your vector data +load("data/spatDat.RData") + +#read in the elevation and landcover rasters +landcover <- terra::rast("data/NLCD_CO.tif") + +elevation <- terra::rast("data/elevation.tif") +``` + +### Bonus Lesson + +All the above objects were retrieved and cleaned in R. The lesson plan in the 'bonus/' folder titled **'get_spatial_challenge.Rmd'** is an assignment that tasks you with importing and cleaning the data that was saved in 'spatDat.RData'. If you complete this challenge assignment fully you will get *up to 3 extra credit points*. Even if you don't want to complete this challenge, it is worth your while to read and work through it! + +## Distance Calculations + +We're going to start off today with some distance calculations. Using our species occurrence data, say we want to know on average how far away is each species found from a major river, and compare that among species. + +Throughout today we are going to be mapping our spatial data to quickly inspect it and get a visual of the data's extent and characteristics, so lets set our `tmap` mode to interactive. + +```{r} +tmap_mode("view") +``` + +First, our `occ` object is not in a spatial format. We first need to bind our dataframes into a single one, and convert it to an `sf` object using `st_as_sf()` : + +```{r} +occ_sp <- bind_rows(occ) %>% + st_as_sf(coords = c("decimalLongitude", "decimalLatitude"), crs = 4236) +``` + +We set the CRS to `4236`, which is the EPSG code for WGS84, the most commonly used CRS for GPS coordinates (But I also checked the GBIF metadata to make sure it was in fact WGS84). + +Quick view of all our points, colored by species: + +```{r} +qtm(occ_sp, symbols.col = "Species") +``` + +Now, calculating the distance to the nearest river involves point to line distance calculations, which we can perform with the `sf` package. + +Before performing any spatial operations, remember all of our spatial objects must be in the same CRS. + +### Exercise #1 + +```{r} +st_crs(rivers) == st_crs(occ_sp) +``` + +The CRS of our objects does not match. Using what you learned in week one, conduct a spatial transformation to our `occ_sp` object to coerce it to the same CRS of our `rivers` object. Call the new object `occ_prj` and double check that `rivers` and our new occurrences object are in the same CRS after transforming + +```{r} +class(occ_sp) +class(rivers) + +st_crs(occ_sp) +st_crs(rivers) + +st_crs(occ_sp) == st_crs(rivers) + +occ_prj <- st_transform(occ_sp, st_crs(rivers)) + + +st_crs(occ_prj) == st_crs(rivers) +``` + +Now lets visualize our rivers and occurrence data: + +```{r} +qtm(rivers) + + qtm(occ_prj, symbols.col = "Species") +``` + +Our occurrence data set covers all of Colorado, but rivers are only for Larimer County. So, we have to first filter our points to Larimer County. + +Similar to `filter()` from the {tidyverse}, we can use `st_filter()` to perform a *spatial* filtering (i.e., we want to filer just the points that occur in Larimer County). + +### Exercise #2 + +Use `?st_filter` to explore the use of the function, and then use it to filter our `occ_prj` points to Larimer county and call the new object `occ_larimer`. + +*Note:* You will first need to create a spatial object of just Larimer county to use as a filter. + +```{r} + +larimer<- filter(counties, NAMELSAD=="Larimer County") +st_crs(counties) +occ_larimer <- st_filter(occ_prj,larimer) +qtm(occ_larimer) +``` + +```{r} +qtm(occ_larimer) +``` + +Great, now we just have species occurrences within Larimer County. + +Now for each point we want to calculate its distance to the nearest river. The most efficient way is to first find the nearest line feature for each point. We can do this with the `st_nearest_feature()` function. + +This function returns the index values (row number) of the river feature in the `rivers` spatial data frame that is closest in distance to each point. Here we are assigning these index values to a new column of our Larimer occurrences called 'nearest_river' that we will use later to calculate distances: + +```{r} +occ_larimer$nearest_river <- st_nearest_feature(occ_larimer, rivers) +``` + +Now, for each point we can use the `st_distance()` function to calculate the distance to the nearest river feature, using the index value in our new "nearest_river" column. Adding `by_element = TRUE` is necessary to tell the function to perform the distance calculations by element (row), which we will fill into a new column "river_dist_m". + +```{r} +occ_larimer$river_dist_m <- + st_distance(occ_larimer, rivers[occ_larimer$nearest_river, ], by_element = TRUE) +``` + +Notice that the new column "river_dist_m" is more than just a numeric class, but a "units" class, specifying that the values are in meters. + +```{r} +str(occ_larimer) +``` + +### Exercise #3 + +Cool, now you have the distance to the nearest river (in meters) for each individual species occurrence, but you want the average distance for each species. Using what you know of the `dplyr` functions, calculate the species average distance, then make a bar plot to compare the averages among species: + +*Hint*: remember that the new distance column is a 'units' data type will throw an error when you try to plot those values. You will need to make use of `mutate()` and `as.numeric` within your string of operations in order to complete task. + +```{r} + +avg_river_dist <- occ_larimer %>% +group_by(Species) %>% + summarise(avg = mean(river_dist_m)) + #mutate(avg_dist_species= avg_river_dist, as.numeric=TRUE) + + + +ggplot(avg_river_dist, aes(x = Species, y = avg)) + + geom_bar(stat = "identity", fill = "blue") + + xlab("Species") + + ylab("Average River Distance (m)") + + ggtitle("Average River Distance by Species") + +``` + +Which species is, on average, found closest to a river? + +Elk + +## Buffers + +Alternatively, say you want to know what percentage of species' occurrences (points) were found within a specified distance of a river (calculated buffer). Here lets investigate how often each species is found within 100m of a river. + +To do this we can add a buffer around our line features and filter the points that fall within that buffer zone. We can use `st_buffer()` with a specified distance (default is meters since our `rivers` object uses 'meters' as its length unit, we can tell by checking the CRS with `st_crs()`) + +```{r} +river_buffer <- st_buffer(rivers, dist = 100) + +qtm(river_buffer) +``` + +If you zoom in on the map you can now see a buffer around the rivers, and this new object is actually a polygon geometry type now instead of a line. + +```{r} +river_buffer +``` + +## Spatial Intersect + +We can conduct spatial intersect operations using the function `st_intersects()`. This function checks if each occurence intersects with the river buffer, and if so it returns an index value (row number) for the river feature it intersects. This function returns a list object for each occurrence, that will be empty if there are no intersections. We will add this as a column to our occurrence data set, and then create a binary yes/no river intersection column based on those results (is the list empty or not?). + +First look at what `st_intersects()` returns: + +```{r} +st_intersects(occ_larimer, river_buffer) +``` + +We see it is a list of the same length as our `occ_larimer` object, where each list element is either empty (no intersections) or the index number for the river buffer feature it intersects with. To add this as a new column in our `occ_larimer` data we run this: + +```{r} +occ_larimer$river_intersections <- st_intersects(occ_larimer, river_buffer) +``` + +Now we can create a new column in `occ_larimer` called 'river_100m' that returns TRUE/FALSE if the buffer intersects with a river. We make use of `if_else()` and the `lengths()` function to check the length of each list element in each row, as the empty ones will return a length of 0. If the length is zero/empty, then we return FALSE meaning that occurrence was not found within 100m of a river. + +```{r} +occ_rivers <- occ_larimer %>% + mutate(river_100m = if_else(lengths(river_intersections) == 0, FALSE, TRUE)) +``` + +Now we can calculate what percentage of occurrences are within 100 m of a river for each species using `dplyr` operations. Which species is most often found within 100m of a river? + +```{r} +occ_rivers %>% + group_by(Species) %>% + summarise(total_occ = n(), + total_rvier = sum(river_100m == TRUE), + percent_river = (sum(river_100m == TRUE)/total_occ)*100) +``` + +<hr> + +#### Reflection + +This analysis is just for teaching purposes, why would you be cautious about these results for answering real research questions? Think about how we filtered everything to a political boundary, what's wrong with this method? + +## Raster Reclassification + +So far we've dealt with a bunch of vector data and associated analyses with the `sf` package. Now lets work through some raster data analysis using the `terra` package. + +First, lets explore the landcover raster by making a quick plot. + +```{r} +qtm(landcover) +``` + +This land cover data set includes attributes (land cover classes) associated with raster values. The is because of the .aux auxiliary file paired with the .tif. in the 'data/' folder. Similar to shapefiles, this file provides metadata (in this case land cover class names) to the raster file. + +We can quickly view the frequency of each land cover type with the `freq()` function, where 'count' is the number of pixels in the raster of that landcover type. + +```{r} +landcover1<-freq(landcover) +``` + +### Exercise 4 + +Create a bar chart of landcover frequency, and order the bars highest to lowest (see [this resource](https://sebastiansauer.github.io/ordering-bars/) to guide you on sorting bars by a numeric variable/column). Also investigate the use of `coor_flip()` and how it might make your plot look better... + +```{r} + +ggplot(landcover1, aes(x = value, y = count)) + + geom_bar(stat = "identity", fill = "red") + + xlab("Land type") + + ylab("Count") + + ggtitle("Land Cover Type")+ + coord_flip() + +``` + +Say we want to explore some habitat characteristics of our species of interest, and we are specifically interested in forest cover. We can use raster reclassification to create a new layer of just forest types in Colorado. + +Since rasters are technically matrices, we can using **indexing** and change values quickly using matrix operations. Given this particular raster uses character names associated with values (thanks to the .aux file!), we can index by those names. + +```{r} +#first assign landcover to a new object name so we can manipulate it while keeping the original +forest <- landcover + +#where the raster equals any of the forest categories, set that value to 1 +forest[forest %in% c("Deciduous Forest", "Evergreen Forest", "Mixed Forest")] <- 1 + +#SPELLING IS IMPORTANT + +#now set all non forest pixels to NA +forest[forest != 1] <- NA +``` + +Now plot the new forest layer to get a quick sense if it looks accurate or not. + +```{r} +plot(forest) +``` + +## Extraction Statistics + +When we want to summarize raster values for certain shapes (points, polygons, etc), the `extract()` function from the `terra` package helps us do that. + +Say we want to find out the most common land cover type each of our species is found in. We can use `extract()` to get the landcover value from the raster at each of our occurrence points, and then do some summary statistics. + +Within this function, the first element is the raster you want to get values from, and the second element is the spatial layer you want to extract values at. Here we will use our `landcover` raster layer and the `occ_prj` object to extract values for occurrences across Colorado. + +First, we need to project our landcover raster to the CRS of our occurrences, otherwise the operation will only return NAs. + +```{r} +# project the landcover layer +landcover_prj <- project(landcover, crs(occ_prj)) + +extract(landcover_prj, occ_prj) +``` + +Notice that this returns a 2 column data frame, with an ID for each feature (occurrence) and the extracted raster value in the second column. We can actually use `extract()` within `mutate()` to add the values as a new column to our occurrences data frame so we can do further summary statistics. + +However, since `extract()` returns a 2 column data frame, it will nest this into a single column in the `occ_prj` data frame. To separate this into two separate columns we can use `unnest()` : + +```{r} +occ_landcover <- occ_prj %>% + mutate(common_landcover = extract(landcover_prj, occ_prj)) %>% + unnest(common_landcover) %>% + #lets rename the land cover column which is now called "NLCD Land Cover Class" + rename(common_landcover = "NLCD Land Cover Class") +``` + +Now, we can find the most common land cover type for each species, using some tidyverse wrangling. Note the use of `st_drop_geometry()`, this reverts the sf object back to an original data frame, which is required for some tidyverse operations. + +```{r} +occ_landcover %>% + st_drop_geometry() %>% # this converts the data back to a dataframe, required for some tidyverse operations + group_by(Species) %>% + count(common_landcover) %>% + slice(which.max(n)) #returns the row with the highest count "n" +``` + +We can also use `extract()` to extract raster values within polygons, but here must supply some function of how to summarize all the values within each polygon. For this example, lets fine the most common landcover type in each Colorado county. + +```{r} +county_landcover <- + counties %>% + mutate(landcover = extract(landcover_prj, counties, fun = "modal")) %>% + unnest(landcover) %>% + rename(value = "NLCD Land Cover Class") #renaming this helps us perform a join later on... +``` + +Uh oh, this gives us the raw pixel values instead of the land cover classes. We can get a table of value - class pairs by using the `cats()` function: + +```{r} +classes <- as.data.frame(cats(landcover)) #coerce to a data frame because cats() actually returns it as a list +``` + +Value and NLCD.Land.Cover.Class are our cell value - class pairs. Now we want to join this to our `county_landcover` object to get the actual land cover name. + +### Exercise 5 + +Perform the appropriate `*_join` operation to tie our `county_landcover` and `classes` data frames together. Then make a map of the counties each colored/filled by the most common NLCD land cover class. + +```{r} +joined_data <- inner_join(county_landcover, classes) +qtm(joined_data,fill="NLCD.Land.Cover.Class") +``` + +### Exercise 6 + +Find the average elevation each species occurs at (for all Colorado occurrences). Which species is, on average, found at the highest elevations? + +*Hints*: Use the `elevation` and `occ_prj` objects we have created or read in above. Remember to check the CRS and perform a spatial transformation if necessary! All parts needed to answer this question have been introduced in this lesson plan. + +```{r} + ellop<- project(elevation, crs(occ_prj)) + +species_el<- + occ_prj %>% + mutate(species_ela = extract(ellop, occ_prj)) %>% + unnest(species_ela) + +species_ell<- group_by(species_el, Species)%>% + summarise(avg= mean(Elevation,na.rm=TRUE)) + + + + + + +``` + +Yellow-bellied Marmot found at the highest elevations