From b1a5d8f5d30d881b1e8daca97f3d1fd97ecedf96 Mon Sep 17 00:00:00 2001 From: "Anthony D. Mays" Date: Mon, 8 Apr 2024 21:41:50 -0700 Subject: [PATCH 1/6] feat: adds Lesson 18 content and exercise walkthrough (#373) * chore: adding boilerplate and templates. * chore: update the readme * docs: adds walkthrough tutorial * doc: fixing instructions * doc: nit updates * docs: adds a note about CORS. * doc: adds alternative dev tools shortcut * docs: nit --- .../lesson16/web/MediaItemsController.java | 12 +- lesson_18/README.md | 56 + lesson_18/api/.gitattributes | 9 + lesson_18/api/.gitignore | 5 + lesson_18/api/api_app/build.gradle.kts | 78 + lesson_18/api/api_app/lombok.config | 2 + .../codedifferently/lesson18/Lesson18.java | 38 + .../lesson18/cli/LibraryApp.java | 190 ++ .../lesson18/cli/LibraryCommand.java | 28 + .../lesson18/cli/LibrarySearchCommand.java | 28 + .../factory/LibraryCsvDataLoader.java | 126 ++ .../lesson18/factory/LibraryDataLoader.java | 15 + .../lesson18/factory/LibraryDbDataLoader.java | 26 + .../lesson18/factory/LibraryFactory.java | 103 + .../factory/LibraryJsonDataLoader.java | 28 + .../lesson18/library/Book.java | 77 + .../codedifferently/lesson18/library/Dvd.java | 20 + .../lesson18/library/Librarian.java | 13 + .../lesson18/library/Library.java | 300 +++ .../library/LibraryConfiguration.java | 16 + .../lesson18/library/LibraryGuest.java | 45 + .../lesson18/library/LibraryGuestBase.java | 75 + .../lesson18/library/LibraryInfo.java | 20 + .../lesson18/library/Magazine.java | 25 + .../lesson18/library/MediaItem.java | 53 + .../lesson18/library/MediaItemBase.java | 93 + .../lesson18/library/MediaType.java | 28 + .../lesson18/library/Newspaper.java | 25 + .../lesson18/library/Patron.java | 20 + .../exceptions/LibraryNotSetException.java | 7 + .../MediaItemCheckedOutException.java | 7 + .../exceptions/WrongLibraryException.java | 7 + .../library/search/CatalogSearcher.java | 31 + .../library/search/SearchCriteria.java | 24 + .../lesson18/library/search/Searchable.java | 11 + .../lesson18/models/AuthorsConverter.java | 18 + .../lesson18/models/CheckoutModel.java | 15 + .../lesson18/models/LibraryDataModel.java | 61 + .../lesson18/models/LibraryGuestModel.java | 19 + .../lesson18/models/MediaItemModel.java | 29 + .../repository/LibraryGuestRepository.java | 10 + .../repository/MediaItemRepository.java | 11 + .../lesson18/web/CreateMediaItemRequest.java | 17 + .../lesson18/web/CreateMediaItemResponse.java | 10 + .../lesson18/web/GetMediaItemsResponse.java | 12 + .../lesson18/web/GlobalExceptionHandler.java | 33 + .../lesson18/web/MediaItemRequest.java | 52 + .../lesson18/web/MediaItemResponse.java | 37 + .../lesson18/web/MediaItemsController.java | 34 + .../lesson18/web/WebConfiguration.java | 11 + .../src/main/resources/application.yml | 9 + .../main/resources/csv/checked_out_items.csv | 5 + .../api_app/src/main/resources/csv/guests.csv | 6 + .../src/main/resources/csv/media_items.csv | 32 + .../api_app/src/main/resources/json/data.json | 268 +++ .../main/resources/queries/anthonydmays.sql | 1 + .../api_app/src/main/resources/sqlite/data.db | Bin 0 -> 16384 bytes .../lesson18/Lesson18Test.java | 13 + .../factory/LibraryCsvDataLoaderTest.java | 84 + .../factory/LibraryJsonDataLoaderTest.java | 76 + .../lesson18/library/BookTest.java | 94 + .../lesson18/library/LibraryTest.java | 353 ++++ .../lesson18/library/MediaItemBaseTest.java | 94 + .../lesson18/library/PatronTest.java | 93 + .../web/MediaItemsControllerTest.java | 125 ++ .../api/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 61608 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + lesson_18/api/gradlew | 244 +++ lesson_18/api/gradlew.bat | 92 + lesson_18/api/settings.gradle.kts | 13 + lesson_18/webserver/package-lock.json | 1697 +++++++++++++++++ lesson_18/webserver/package.json | 25 + lesson_18/webserver/public/favicon.ico | Bin 0 -> 1310 bytes .../webserver/public/index-with-form.html | 29 + lesson_18/webserver/public/index.html | 27 + lesson_18/webserver/public/logo.gif | Bin 0 -> 304480 bytes lesson_18/webserver/public/script.js | 85 + lesson_18/webserver/public/style.css | 52 + lesson_18/webserver/src/server.ts | 34 + lesson_18/webserver/tsconfig.json | 12 + 80 files changed, 5575 insertions(+), 4 deletions(-) create mode 100644 lesson_18/README.md create mode 100644 lesson_18/api/.gitattributes create mode 100644 lesson_18/api/.gitignore create mode 100644 lesson_18/api/api_app/build.gradle.kts create mode 100644 lesson_18/api/api_app/lombok.config create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/Lesson18.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryApp.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryCommand.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibrarySearchCommand.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoader.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDataLoader.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDbDataLoader.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryFactory.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoader.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Book.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Dvd.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Librarian.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Library.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryConfiguration.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuest.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuestBase.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryInfo.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Magazine.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItem.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItemBase.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaType.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Newspaper.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Patron.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/LibraryNotSetException.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/MediaItemCheckedOutException.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/WrongLibraryException.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/CatalogSearcher.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/SearchCriteria.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/Searchable.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/AuthorsConverter.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/CheckoutModel.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryDataModel.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryGuestModel.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/MediaItemModel.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/LibraryGuestRepository.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/MediaItemRepository.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemRequest.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemResponse.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GetMediaItemsResponse.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GlobalExceptionHandler.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemRequest.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemResponse.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemsController.java create mode 100644 lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/WebConfiguration.java create mode 100644 lesson_18/api/api_app/src/main/resources/application.yml create mode 100644 lesson_18/api/api_app/src/main/resources/csv/checked_out_items.csv create mode 100644 lesson_18/api/api_app/src/main/resources/csv/guests.csv create mode 100644 lesson_18/api/api_app/src/main/resources/csv/media_items.csv create mode 100644 lesson_18/api/api_app/src/main/resources/json/data.json create mode 100644 lesson_18/api/api_app/src/main/resources/queries/anthonydmays.sql create mode 100644 lesson_18/api/api_app/src/main/resources/sqlite/data.db create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/Lesson18Test.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoaderTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoaderTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/BookTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/LibraryTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/MediaItemBaseTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/PatronTest.java create mode 100644 lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/web/MediaItemsControllerTest.java create mode 100644 lesson_18/api/gradle/wrapper/gradle-wrapper.jar create mode 100644 lesson_18/api/gradle/wrapper/gradle-wrapper.properties create mode 100755 lesson_18/api/gradlew create mode 100644 lesson_18/api/gradlew.bat create mode 100644 lesson_18/api/settings.gradle.kts create mode 100644 lesson_18/webserver/package-lock.json create mode 100644 lesson_18/webserver/package.json create mode 100644 lesson_18/webserver/public/favicon.ico create mode 100644 lesson_18/webserver/public/index-with-form.html create mode 100644 lesson_18/webserver/public/index.html create mode 100644 lesson_18/webserver/public/logo.gif create mode 100644 lesson_18/webserver/public/script.js create mode 100644 lesson_18/webserver/public/style.css create mode 100644 lesson_18/webserver/src/server.ts create mode 100644 lesson_18/webserver/tsconfig.json diff --git a/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java b/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java index cae5ff06b..43cb1ac00 100644 --- a/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java +++ b/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java @@ -1,16 +1,20 @@ package com.codedifferently.lesson16.web; -import com.codedifferently.lesson16.library.Librarian; -import com.codedifferently.lesson16.library.Library; -import com.codedifferently.lesson16.library.MediaItem; -import com.codedifferently.lesson16.library.search.SearchCriteria; import java.io.IOException; import java.util.List; import java.util.Set; + +import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; +import com.codedifferently.lesson16.library.Librarian; +import com.codedifferently.lesson16.library.Library; +import com.codedifferently.lesson16.library.MediaItem; +import com.codedifferently.lesson16.library.search.SearchCriteria; + @RestController +@CrossOrigin public class MediaItemsController { private final Library library; private final Librarian librarian; diff --git a/lesson_18/README.md b/lesson_18/README.md new file mode 100644 index 000000000..65cfaca45 --- /dev/null +++ b/lesson_18/README.md @@ -0,0 +1,56 @@ +# Lesson 18 + +## Lecture Resources + +* [HTML Tutorial for Beginners: HTML Crash Course](https://youtu.be/qz0aGYrrlhU) **(1 hour)** - An introduction to HTML designed for folks who've never worked with it or would like a refresher. +* [Client-side vs Server-side, Front-end vs Back-end? Beginner Explanation of JavaScript on the Web](https://youtu.be/7GRKUaQ8Spk) **(12 minutes)** - Check out this video to help understand the difference between the server-side and the client-side +* [Post From HTML Form To MongoDB Atlas | Javascript Tutorial](https://www.youtube.com/watch?v=ZhqOp1Dkuso) **(12 minutes)** - This short tutorial explores the traditional way that web pages send data back and forth with a web server. +* [POST Form Data With JavaScript Fetch API](https://youtu.be/fGYQJAlLD68) **(10 minutes)** - A tutorial on how to interact with servers from the client-side using the Fetch API in the browser via JavaScript. + +## Homework + +* Go through the lecture resources to understand the basics of working with web clients and servers. Feel free to skip the HTML tutorial if you feel comfortable working with the basics already. +* Complete the [Exploring the Client and Servers](#exploring-the-client-and-servers) walthrough. + +## Exploring the Client and Servers + +Let's add some interactivity to a web page by using what we've learned about HTML, CSS, and JavaScript to exchange data with both a web server and an API server. For this exercise, we'll execute the same task (searching for media items by title) both on the server-side and on the client-side. + +### Sending form data on button click + +As demonstrated in lecture, we have a NodeJS web server implemented in TypeScript using the Express library (all files in the [webserver/](./webserver/) folder). + +1. We need to start both our web server and api servers. Our API server is implemented in Java, so navigate into the [api/](./api/) folder to get that started using `gradle run` in a terminal window. It should be running on port 5000. +2. Once the API server is started, run the Node web server using NPM by executing `npm run dev` in a separate terminal, this time navigating into the [webserver/] folder. Confirm that it has started the server on port 4000. +3. Now, Open up the [public/index.html](./webserver/public/index.html) so that we can make some changes. +4. Wrap the search box and button `div` elements in a `
` element. Configure the `action` attribute on the form to specify `/search` as the target where we will send form data and the `method` attribute to the value `POST`. +> [!NOTE] +> Our web server that serves the HTML you're modifying is also listening for `POST` requests on the `/search` path and will [read the form data](./webserver/src/server.ts#L8) in order to figure out what text to use for search. It will call our Java-based API server to query for media items. +5. To configure which field data will get sent with the post data, we need to add a `name` attribute to the desired elements. For now, we just need to send the search text, so configure the `name` attribute to be `searchText`. +> [!NOTE] +> Note that we're using `camelCase` for the element name attribute and not `kebab-case` as we do with the `class` attribute. This is a convention used by some projects and isn't a mandatory rule. +6. You should be able to view the page by visiting http://localhost:4000/. Try entering some text in the search box and clicking the search button. You should be redirected to the `/search` url and see results dynamically rendered. +7. Check the terminal where your web server is running. You should see messages prefixed with `Server: Search for titles containing` that confirm your requests have reached the server. + +The look of the results page is very simple as we're generating the HTML the hard way—character by character. In real life, we would use template engines that help us generate dynamic HTML and describe how we want it to change based on data. We'll discuss this more in the next lecture. + +### Doing the work on the client-side instead + +This time, instead of sending data to our web server, we'll keep the data in the browser and fetch what we need from the API server ourselves. The benefit to this approach is that we don't have to make a trip to the web server before calling the API server, but the downside is that we have to move that logic into our clients-side JavaScript. Figuring out which approach is the best (server-side vs. client-side) for any given project is tough and requires assessing a bunch of tradeoffs that's beyond the scope of this exercise. + +1. For this part, we're going to make a single code change to the [script.js](./webserver/public/script.js#L4) file. Uncomment the code on [line 4](./webserver/public/script.js#L4) to get things wired up. +2. Refresh or browse to the main page at https://localhost:4000/. Enter some text again and click search. Notice that instead of redirecting, results appear below the search buttons. +3. Assuming you're using Google Chrome, Open the **Developer Tools** in the browser using `F12` or `Option ⌥ - Cmd ⌘ - J` on Mac. On the **Console** tab, you should see messages that start with `Client: Searching for titles containing`. Note that you may need to execute a new search in order to see the messages. + +There are several things in the `script.js` file that make this demo work. Let's discuss each part. + +1. First, the code in `listenForSearchButtonClick` searches for the search button using the css class selector `.search-button` and attaches an event handler that simply calls the `onSearchButtonClick` whenever the button is clicked. +2. Once the button is clicked and the function is activated, we prevent the form from submitted data to the web server by using the provided `event` parameter and calling `event.preventDefault()` to stop the normal, default button behavior. +3. Next we read the search text from the text box identify the term we want to search on. +4. We call the `performSearch` method with the search text which will, in turn, use the `fetch` API in the browser to make a web request to our API server, parse the JSON response, and filter through the results to find matching titles. The code for getting results from the API is almost [exactly the same as the code](./webserver/src/server.ts) we were running in TypeScript on our web server. +5. Lastly, since we're on the client-side, we can use JavaScript to dynamically modify the HTML to show our results. The `showResults` function demonstrates how we manipulate the DOM to add new elements to the page without going to the server. + +> [!WARNING] +> There is one very important change that needed to be made to our API server that allowed us to call it from the client-side. For security purposes, modern browsers and server typically don't just let you post data anywhere except to URL from the same origin (in this case, localhost:4000). This is done to prevent a type of security vulnerability called a cross-site scripting (XSS) that attackers use to steal information from one website using JavaScript code running from another site. +> +> To that end, one change was made to the [MediaItemsController](./api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemsController.java#L17) to let us call the API. A new `CrossOrigin` attribute was added to the controller to let us use CORS to access the API. This lets our website code that runs from localhost:4000 call our API server at localhost:5000. In the real world, we'd want to configure only the specific hosts we want to access our API or use other means of protection to prevent arbitrary access to our API. \ No newline at end of file diff --git a/lesson_18/api/.gitattributes b/lesson_18/api/.gitattributes new file mode 100644 index 000000000..097f9f98d --- /dev/null +++ b/lesson_18/api/.gitattributes @@ -0,0 +1,9 @@ +# +# https://help.github.com/articles/dealing-with-line-endings/ +# +# Linux start script should use lf +/gradlew text eol=lf + +# These are Windows script files and should use crlf +*.bat text eol=crlf + diff --git a/lesson_18/api/.gitignore b/lesson_18/api/.gitignore new file mode 100644 index 000000000..1b6985c00 --- /dev/null +++ b/lesson_18/api/.gitignore @@ -0,0 +1,5 @@ +# Ignore Gradle project-specific cache directory +.gradle + +# Ignore Gradle build output directory +build diff --git a/lesson_18/api/api_app/build.gradle.kts b/lesson_18/api/api_app/build.gradle.kts new file mode 100644 index 000000000..78289559a --- /dev/null +++ b/lesson_18/api/api_app/build.gradle.kts @@ -0,0 +1,78 @@ +plugins { + // Apply the application plugin to add support for building a CLI application in Java. + application + eclipse + id("com.diffplug.spotless") version "6.25.0" + id("org.springframework.boot") version "3.2.2" + id("com.adarshr.test-logger") version "4.0.0" + id("io.freefair.lombok") version "8.6" +} + +apply(plugin = "io.spring.dependency-management") + +repositories { + // Use Maven Central for resolving dependencies. + mavenCentral() +} + +dependencies { + // Use JUnit Jupiter for testing. + testImplementation("com.codedifferently.instructional:instructional-lib") + testImplementation("org.junit.jupiter:junit-jupiter:5.9.1") + testImplementation("org.springframework.boot:spring-boot-starter-test") + testImplementation("org.assertj:assertj-core:3.25.1") + testImplementation("at.favre.lib:bcrypt:0.10.2") + testImplementation("org.springframework.boot:spring-boot-starter-test") + + // This dependency is used by the application. + implementation("com.codedifferently.instructional:instructional-lib") + implementation("com.google.guava:guava:31.1-jre") + implementation("com.google.code.gson:gson:2.10.1") + implementation("commons-cli:commons-cli:1.6.0") + implementation("org.springframework.boot:spring-boot-starter") + implementation("org.springframework.boot:spring-boot-starter-data-jpa") + implementation("org.springframework.boot:spring-boot-starter-validation") + implementation("org.springframework.boot:spring-boot-starter-web") + compileOnly("org.springframework.boot:spring-boot-devtools") + implementation("com.opencsv:opencsv:5.9") + implementation("org.apache.commons:commons-csv:1.10.0") + implementation("org.xerial:sqlite-jdbc:3.36.0") + implementation("org.hibernate.orm:hibernate-community-dialects:6.2.7.Final") +} + +application { + // Define the main class for the application. + mainClass.set("com.codedifferently.lesson18.Lesson18") +} + +tasks.named("run") { + standardInput = System.`in` +} + +tasks.named("test") { + // Use JUnit Platform for unit tests. + useJUnitPlatform() +} + + +configure { + + format("misc", { + // define the files to apply `misc` to + target("*.gradle", ".gitattributes", ".gitignore") + + // define the steps to apply to those files + trimTrailingWhitespace() + indentWithTabs() // or spaces. Takes an integer argument if you don't like 4 + endWithNewline() + }) + + java { + // don't need to set target, it is inferred from java + + // apply a specific flavor of google-java-format + googleJavaFormat() + // fix formatting of type annotations + formatAnnotations() + } +} diff --git a/lesson_18/api/api_app/lombok.config b/lesson_18/api/api_app/lombok.config new file mode 100644 index 000000000..6aa51d71e --- /dev/null +++ b/lesson_18/api/api_app/lombok.config @@ -0,0 +1,2 @@ +# This file is generated by the 'io.freefair.lombok' Gradle plugin +config.stopBubbling = true diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/Lesson18.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/Lesson18.java new file mode 100644 index 000000000..fa7d8ff80 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/Lesson18.java @@ -0,0 +1,38 @@ +package com.codedifferently.lesson18; + +import com.codedifferently.lesson18.cli.LibraryApp; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.CommandLineRunner; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Configuration; + +@Configuration +@SpringBootApplication(scanBasePackages = "com.codedifferently") +public class Lesson18 implements CommandLineRunner { + @Autowired private LibraryApp libraryApp; + + public static void main(String[] args) { + var application = new SpringApplication(Lesson18.class); + application.run(args); + } + + @Override + public void run(String... args) throws Exception { + // Don't run as an app if we're running as a JUnit test. + if (isJUnitTest()) { + return; + } + + libraryApp.run(args); + } + + private static boolean isJUnitTest() { + for (StackTraceElement element : Thread.currentThread().getStackTrace()) { + if (element.getClassName().startsWith("org.junit.")) { + return true; + } + } + return false; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryApp.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryApp.java new file mode 100644 index 000000000..006f5274e --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryApp.java @@ -0,0 +1,190 @@ +package com.codedifferently.lesson18.cli; + +import com.codedifferently.lesson18.factory.LibraryDataLoader; +import com.codedifferently.lesson18.library.Book; +import com.codedifferently.lesson18.library.Library; +import com.codedifferently.lesson18.library.LibraryInfo; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.search.SearchCriteria; +import java.util.Map; +import java.util.Scanner; +import java.util.Set; +import java.util.UUID; +import org.apache.commons.cli.CommandLine; +import org.apache.commons.cli.CommandLineParser; +import org.apache.commons.cli.DefaultParser; +import org.apache.commons.cli.HelpFormatter; +import org.apache.commons.cli.Option; +import org.apache.commons.cli.Options; +import org.apache.commons.cli.ParseException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +@Service +public final class LibraryApp { + @Autowired private Library library; + + public void run(String[] args) throws Exception { + // Show stats about the loaded library to the user. + printLibraryInfo(library); + + try (var scanner = new Scanner(System.in)) { + LibraryCommand command; + // Main application loop. + while ((command = promptForCommand(scanner)) != LibraryCommand.EXIT) { + switch (command) { + case SEARCH -> doSearch(scanner, library); + default -> System.out.println("\nNot ready yet, coming soon!"); + } + } + } + } + + private void printLibraryInfo(Library library) { + LibraryInfo info = library.getInfo(); + Map> checkedOutItemsByGuest = info.getCheckedOutItemsByGuest(); + int numCheckedOutItems = checkedOutItemsByGuest.values().stream().mapToInt(Set::size).sum(); + System.out.println(); + System.out.println("========================================"); + System.out.println("Library id: " + library.getId()); + System.out.println("Number of items: " + info.getItems().size()); + System.out.println("Number of guests: " + info.getGuests().size()); + System.out.println("Number of checked out items: " + numCheckedOutItems); + System.out.println("========================================"); + System.out.println(); + } + + private static LibraryDataLoader getLoaderOrDefault( + String[] args, LibraryDataLoader defaultLoader) throws Exception { + String loaderType = getLoaderFromCommandLine(args); + return loaderType == null + ? defaultLoader + : Class.forName(loaderType) + .asSubclass(LibraryDataLoader.class) + .getDeclaredConstructor() + .newInstance(); + } + + private static String getLoaderFromCommandLine(String[] args) throws IllegalArgumentException { + Options options = new Options(); + Option input = new Option("l", "loader", true, "data loader type"); + input.setRequired(false); + options.addOption(input); + CommandLineParser parser = new DefaultParser(); + HelpFormatter formatter = new HelpFormatter(); + try { + CommandLine cmd = parser.parse(options, args); + return cmd.getOptionValue("loader"); + } catch (ParseException e) { + System.out.println(); + System.out.println(e.getMessage()); + formatter.printHelp("utility-name", options); + + System.exit(1); + } + return null; + } + + private static LibraryCommand promptForCommand(Scanner scanner) { + var command = LibraryCommand.UNKNOWN; + while (command == LibraryCommand.UNKNOWN) { + printMenu(); + var input = scanner.nextLine(); + try { + command = LibraryCommand.fromValue(Integer.parseInt(input.trim())); + } catch (IllegalArgumentException e) { + System.out.println("Invalid command: " + input); + } + } + return command; + } + + private static void printMenu() { + System.out.println("\nEnter the number of the desired command:"); + System.out.println("1) << EXIT"); + System.out.println("2) SEARCH"); + System.out.println("3) CHECKOUT"); + System.out.println("4) RETURN"); + System.out.print("command> "); + } + + private void doSearch(Scanner scanner, Library library) { + LibrarySearchCommand command = promptForSearchCommand(scanner); + if (command == LibrarySearchCommand.RETURN) { + return; + } + SearchCriteria criteria = getSearchCriteria(scanner, command); + Set results = library.search(criteria); + printSearchResults(results); + } + + private LibrarySearchCommand promptForSearchCommand(Scanner scanner) { + var command = LibrarySearchCommand.UNKNOWN; + while (command == LibrarySearchCommand.UNKNOWN) { + printSearchMenu(); + var input = scanner.nextLine(); + try { + command = LibrarySearchCommand.fromValue(Integer.parseInt(input.trim())); + } catch (IllegalArgumentException e) { + System.out.println("Invalid command: " + input); + } + } + return command; + } + + private void printSearchMenu() { + System.out.println("\nEnter the number of the desired search criteria:"); + System.out.println("1) << RETURN"); + System.out.println("2) TITLE"); + System.out.println("3) AUTHOR"); + System.out.println("4) TYPE"); + System.out.print("search> "); + } + + private SearchCriteria getSearchCriteria(Scanner scanner, LibrarySearchCommand command) { + System.out.println(); + switch (command) { + case TITLE -> { + System.out.println("Enter the title to search for: "); + System.out.print("title> "); + var title = scanner.nextLine(); + return SearchCriteria.builder().title(title).build(); + } + case AUTHOR -> { + System.out.println("Enter the author to search for: "); + System.out.print("author> "); + var author = scanner.nextLine(); + return SearchCriteria.builder().author(author).build(); + } + case TYPE -> { + System.out.println("Enter the type to search for: "); + System.out.print("type> "); + var type = scanner.nextLine(); + return SearchCriteria.builder().type(type).build(); + } + default -> System.out.println("Invalid search command: " + command); + } + return null; + } + + private void printSearchResults(Set results) { + System.out.println(); + + if (results.isEmpty()) { + System.out.println("No results found."); + return; + } + + System.out.println("Search results:\n"); + for (MediaItem item : results) { + System.out.println("ID: " + item.getId()); + System.out.println("TITLE: " + item.getTitle()); + if (item instanceof Book book) { + System.out.println("AUTHOR(S): " + String.join(", ", book.getAuthors())); + } + System.out.println("TYPE: " + item.getType().toString().toUpperCase()); + System.out.println(); + } + System.out.println("Found " + results.size() + " result(s).\n"); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryCommand.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryCommand.java new file mode 100644 index 000000000..54e2d3050 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibraryCommand.java @@ -0,0 +1,28 @@ +package com.codedifferently.lesson18.cli; + +public enum LibraryCommand { + UNKNOWN(0), + EXIT(1), + SEARCH(2), + CHECKOUT(3), + RETURN(4); + + private final int value; + + LibraryCommand(int value) { + this.value = value; + } + + public int getValue() { + return value; + } + + public static LibraryCommand fromValue(int value) { + for (LibraryCommand command : LibraryCommand.values()) { + if (command.getValue() == value) { + return command; + } + } + return UNKNOWN; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibrarySearchCommand.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibrarySearchCommand.java new file mode 100644 index 000000000..c4bf7af99 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/cli/LibrarySearchCommand.java @@ -0,0 +1,28 @@ +package com.codedifferently.lesson18.cli; + +public enum LibrarySearchCommand { + UNKNOWN(0), + RETURN(1), + TITLE(2), + AUTHOR(3), + TYPE(4); + + private final int value; + + LibrarySearchCommand(int value) { + this.value = value; + } + + public int getValue() { + return value; + } + + public static LibrarySearchCommand fromValue(int value) { + for (LibrarySearchCommand criteria : LibrarySearchCommand.values()) { + if (criteria.getValue() == value) { + return criteria; + } + } + return UNKNOWN; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoader.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoader.java new file mode 100644 index 000000000..796f6d35c --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoader.java @@ -0,0 +1,126 @@ +package com.codedifferently.lesson18.factory; + +import com.codedifferently.lesson18.library.MediaType; +import com.codedifferently.lesson18.models.CheckoutModel; +import com.codedifferently.lesson18.models.LibraryDataModel; +import com.codedifferently.lesson18.models.LibraryGuestModel; +import com.codedifferently.lesson18.models.MediaItemModel; +import java.io.FileReader; +import java.io.IOException; +import java.time.Instant; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; +import org.apache.commons.csv.CSVFormat; +import org.apache.commons.csv.CSVRecord; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; + +/** An object that loads data from a CSV and returns a LibraryDataModel object. */ +@Service +public final class LibraryCsvDataLoader implements LibraryDataLoader { + private static final String MEDIA_ITEMS_CSV_PATH = "csv/media_items.csv"; + private static final String GUESTS_CSV_PATH = "csv/guests.csv"; + private static final String CHECKED_OUT_ITEMS_CSV_PATH = "csv/checked_out_items.csv"; + + @Override + public LibraryDataModel loadData() throws IOException { + var model = new LibraryDataModel(); + model.mediaItems = loadMediaItemsFromCsv(MEDIA_ITEMS_CSV_PATH); + model.guests = loadGuestsFromCsv(GUESTS_CSV_PATH, CHECKED_OUT_ITEMS_CSV_PATH); + return model; + } + + private List loadMediaItemsFromCsv(String filePath) throws IOException { + List mediaItems = new ArrayList<>(); + + try (var reader = new FileReader(new ClassPathResource(filePath).getFile()); + var csvParser = CSVFormat.DEFAULT.withFirstRecordAsHeader().parse(reader)) { + for (CSVRecord csvRecord : csvParser) { + var item = new MediaItemModel(); + + item.type = MediaType.fromString(csvRecord.get("type")); + item.id = UUID.fromString(csvRecord.get("id")); + item.title = csvRecord.get("title"); + item.isbn = csvRecord.get("isbn"); + item.authors = List.of(csvRecord.get("authors").split(", ")); + item.pages = parseIntOrDefault(csvRecord.get("pages"), 0); + item.runtime = parseIntOrDefault(csvRecord.get("runtime"), 0); + item.edition = csvRecord.get("edition"); + + mediaItems.add(item); + } + + } catch (IOException e) { + return new ArrayList<>(); + } + + return mediaItems; + } + + private int parseIntOrDefault(String value, int defaultVal) { + try { + return Integer.parseInt(value); + } catch (NumberFormatException e) { + return defaultVal; + } + } + + private List loadGuestsFromCsv( + String guestsCsvPath, String checkedOutCsvPath) { + List guests = loadGuestRecordsFromCsv(guestsCsvPath); + Map> checkedOutItems = loadCheckoutsFromCsv(checkedOutCsvPath); + for (LibraryGuestModel guest : guests) { + if (checkedOutItems.containsKey(guest.email)) { + guest.checkedOutItems = checkedOutItems.get(guest.email); + } else { + guest.checkedOutItems = new ArrayList<>(); + } + } + return guests; + } + + private List loadGuestRecordsFromCsv(String guestsCsvPath) { + List guests = new ArrayList<>(); + + try (var reader = new FileReader(new ClassPathResource(guestsCsvPath).getFile()); + var csvParser = CSVFormat.DEFAULT.withFirstRecordAsHeader().parse(reader)) { + for (CSVRecord csvRecord : csvParser) { + var guest = new LibraryGuestModel(); + + guest.type = csvRecord.get("type"); + guest.name = csvRecord.get("name"); + guest.email = csvRecord.get("email"); + + guests.add(guest); + } + } catch (IOException e) { + return new ArrayList<>(); + } + + return guests; + } + + private Map> loadCheckoutsFromCsv(String checkedOutCsvPath) { + Map> checkoutsByGuestEmail = new HashMap<>(); + + try (var reader = new FileReader(new ClassPathResource(checkedOutCsvPath).getFile()); + var csvParser = CSVFormat.DEFAULT.withFirstRecordAsHeader().parse(reader)) { + for (CSVRecord csvRecord : csvParser) { + var checkout = new CheckoutModel(); + + checkout.itemId = UUID.fromString(csvRecord.get("item_id")); + checkout.dueDate = Instant.parse(csvRecord.get("due_date")); + + String guestEmail = csvRecord.get("email"); + checkoutsByGuestEmail.computeIfAbsent(guestEmail, e -> new ArrayList<>()).add(checkout); + } + } catch (IOException e) { + return new HashMap<>(); + } + + return checkoutsByGuestEmail; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDataLoader.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDataLoader.java new file mode 100644 index 000000000..c08101bed --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDataLoader.java @@ -0,0 +1,15 @@ +package com.codedifferently.lesson18.factory; + +import com.codedifferently.lesson18.models.LibraryDataModel; +import java.io.IOException; + +/** An object that loads data from a source and returns a LibraryDataModel object. */ +public interface LibraryDataLoader { + /** + * Load data from a source and return a LibraryDataModel object. + * + * @return A LibraryDataModel object. + * @throws IOException if an I/O error occurs. + */ + public LibraryDataModel loadData() throws IOException; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDbDataLoader.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDbDataLoader.java new file mode 100644 index 000000000..8ff694f00 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryDbDataLoader.java @@ -0,0 +1,26 @@ +package com.codedifferently.lesson18.factory; + +import com.codedifferently.lesson18.models.LibraryDataModel; +import com.codedifferently.lesson18.repository.LibraryGuestRepository; +import com.codedifferently.lesson18.repository.MediaItemRepository; +import java.io.IOException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** A data loader that loads library data from a database. */ +@Service +public final class LibraryDbDataLoader implements LibraryDataLoader { + + @Autowired private MediaItemRepository mediaItemsRepository; + @Autowired private LibraryGuestRepository libraryGuestRepository; + + @Override + public LibraryDataModel loadData() throws IOException { + var model = new LibraryDataModel(); + + model.mediaItems = mediaItemsRepository.findAll(); + model.guests = libraryGuestRepository.findAll(); + + return model; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryFactory.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryFactory.java new file mode 100644 index 000000000..838b774d0 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryFactory.java @@ -0,0 +1,103 @@ +package com.codedifferently.lesson18.factory; + +import com.codedifferently.lesson18.library.Librarian; +import com.codedifferently.lesson18.library.Library; +import com.codedifferently.lesson18.library.LibraryGuest; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.models.CheckoutModel; +import com.codedifferently.lesson18.models.LibraryDataModel; +import java.io.IOException; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; + +/** A factory class that creates a Library object with a LibraryDataLoader object. */ +public final class LibraryFactory { + + /** + * Create a Library object with a LibraryDataLoader object. + * + * @param loader A LibraryDataLoader object. + * @return A Library object. + * @throws IOException + */ + public static Library createWithLoader(LibraryDataLoader loader) throws IOException { + Library library = new Library("main-library"); + + // Load library data. + LibraryDataModel data = loader.loadData(); + + // Add guests to the library. + List guests = data.getGuests(); + addLibraryGuests(library, guests); + + // Add library items using the first librarian. + Librarian firstLibrarian = findFirstLibrarian(guests); + List mediaItems = data.getMediaItems(); + addLibraryItems(library, mediaItems, firstLibrarian); + + // Check out items from the library. + Map> checkoutsByEmail = data.getCheckoutsByEmail(); + Map mediaItemById = getMediaItemsById(mediaItems); + Map guestsByEmail = getGuestsByEmail(guests); + checkOutItems(library, checkoutsByEmail, guestsByEmail, mediaItemById); + + return library; + } + + private static Map getMediaItemsById(List mediaItems) { + Map mediaItemById = new HashMap<>(); + for (MediaItem mediaItem : mediaItems) { + mediaItemById.put(mediaItem.getId(), mediaItem); + } + return mediaItemById; + } + + private static Librarian findFirstLibrarian(List guests) { + Librarian firstLibrarian = null; + for (LibraryGuest guest : guests) { + if (guest instanceof Librarian librarian) { + firstLibrarian = librarian; + } + } + return firstLibrarian; + } + + private static void addLibraryGuests(Library library, List guests) { + for (LibraryGuest guest : guests) { + library.addLibraryGuest(guest); + } + } + + private static void addLibraryItems( + Library library, List mediaItems, Librarian firstLibrarian) { + for (MediaItem mediaItem : mediaItems) { + library.addMediaItem(mediaItem, firstLibrarian); + } + } + + private static Map getGuestsByEmail(List guests) { + Map guestByEmail = new HashMap<>(); + for (LibraryGuest guest : guests) { + guestByEmail.put(guest.getEmail(), guest); + } + return guestByEmail; + } + + private static void checkOutItems( + Library library, + Map> checkoutsByEmail, + Map guestByEmail, + Map mediaItemById) { + for (var entry : checkoutsByEmail.entrySet()) { + String email = entry.getKey(); + List checkouts = entry.getValue(); + LibraryGuest guest = guestByEmail.get(email); + for (CheckoutModel checkout : checkouts) { + MediaItem mediaItem = mediaItemById.get(checkout.itemId); + library.checkOutMediaItem(mediaItem, guest); + } + } + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoader.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoader.java new file mode 100644 index 000000000..ccb10e908 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoader.java @@ -0,0 +1,28 @@ +package com.codedifferently.lesson18.factory; + +import com.codedifferently.lesson18.models.LibraryDataModel; +import com.fasterxml.jackson.databind.MapperFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.json.JsonMapper; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import java.io.File; +import java.io.IOException; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; + +/** Loads data from a JSON file and returns a LibraryDataModel object. */ +@Service +public final class LibraryJsonDataLoader implements LibraryDataLoader { + @Override + public LibraryDataModel loadData() throws IOException { + ObjectMapper objectMapper = + JsonMapper.builder() + .addModule(new JavaTimeModule()) + .enable(MapperFeature.ACCEPT_CASE_INSENSITIVE_ENUMS) + .build(); + + // Load data from data.json file + File file = new ClassPathResource("json/data.json").getFile(); + return objectMapper.readValue(file, LibraryDataModel.class); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Book.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Book.java new file mode 100644 index 000000000..d6067634b --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Book.java @@ -0,0 +1,77 @@ +package com.codedifferently.lesson18.library; + +import java.util.List; +import java.util.UUID; + +/** Represents a book. */ +public class Book extends MediaItemBase { + private final String isbn; + private final List authors; + private final int numberOfPages; + + /** + * Create a new book with the given title, ISBN, authors, and number of pages. + * + * @param id The ID of the book. + * @param title The title of the book. + * @param isbn The ISBN of the book. + * @param authors The authors of the book. + * @param numberOfPages The number of pages in the book. + */ + public Book(UUID id, String title, String isbn, List authors, int numberOfPages) { + super(id, title); + this.isbn = isbn; + this.authors = authors; + this.numberOfPages = numberOfPages; + } + + @Override + public MediaType getType() { + return MediaType.BOOK; + } + + /** + * Get the ISBN of the book. + * + * @return The ISBN of the book. + */ + public String getIsbn() { + return this.isbn; + } + + /** + * Get the authors of the book. + * + * @return The authors of the book. + */ + public List getAuthors() { + return this.authors; + } + + /** + * Get the number of pages in the book. + * + * @return The number of pages in the book. + */ + public int getNumberOfPages() { + return this.numberOfPages; + } + + @Override + protected boolean matchesAuthor(String authorQuery) { + if (authorQuery == null) { + return true; + } + for (String author : this.getAuthors()) { + if (author.toLowerCase().contains(authorQuery.toLowerCase())) { + return true; + } + } + return false; + } + + @Override + public String toString() { + return "Book{" + "id='" + getId() + '\'' + ", title='" + getTitle() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Dvd.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Dvd.java new file mode 100644 index 000000000..0741a6b82 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Dvd.java @@ -0,0 +1,20 @@ +package com.codedifferently.lesson18.library; + +import java.util.UUID; + +/** Represents a DVD. */ +public class Dvd extends MediaItemBase { + public Dvd(UUID id, String title) { + super(id, title); + } + + @Override + public MediaType getType() { + return MediaType.DVD; + } + + @Override + public String toString() { + return "Dvd{" + "id='" + getId() + '\'' + ", title='" + getTitle() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Librarian.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Librarian.java new file mode 100644 index 000000000..f3d278ea6 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Librarian.java @@ -0,0 +1,13 @@ +package com.codedifferently.lesson18.library; + +/** Represents a librarian of a library. */ +public class Librarian extends LibraryGuestBase { + public Librarian(String name, String email) { + super(name, email); + } + + @Override + public String toString() { + return "Librarian{" + "id='" + getEmail() + '\'' + ", name='" + getName() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Library.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Library.java new file mode 100644 index 000000000..be240aad2 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Library.java @@ -0,0 +1,300 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.library.exceptions.MediaItemCheckedOutException; +import com.codedifferently.lesson18.library.search.CatalogSearcher; +import com.codedifferently.lesson18.library.search.SearchCriteria; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; +import java.util.UUID; +import java.util.stream.Collectors; + +/** Represents a library. */ +public class Library { + private final Map itemsById = new HashMap<>(); + private final Set checkedOutItemIds = new HashSet<>(); + private final Map> checkedOutItemsByGuest = new HashMap<>(); + private final Map guestsById = new HashMap<>(); + private final String id; + private final CatalogSearcher searcher; + + /** + * Create a new library with the given id. + * + * @param id The id of the library. + */ + public Library(String id) { + this.id = id; + this.searcher = new CatalogSearcher(this.itemsById.values()); + } + + /** + * Get the id of the library. + * + * @return The id of the library. + */ + public String getId() { + return this.id; + } + + /** + * Add a item to the library. + * + * @param item The item to add. + * @param librarian The librarian adding the item. + */ + public void addMediaItem(MediaItem item, Librarian librarian) { + this.itemsById.put(item.getId(), item); + item.setLibrary(this); + } + + /** + * Remove a item from the library. + * + * @param item The item to remove. + * @param librarian The librarian removing the item. + */ + public void removeMediaItem(MediaItem item, Librarian librarian) + throws MediaItemCheckedOutException { + if (this.isCheckedOut(item)) { + throw new MediaItemCheckedOutException("Cannot remove checked out item."); + } + this.itemsById.remove(item.getId()); + item.setLibrary(null); + } + + /** + * Remove a item from the library. + * + * @param id The ID of the item to remove. + * @param librarian The librarian removing the item. + */ + public void removeMediaItem(UUID id, Librarian librarian) throws MediaItemCheckedOutException { + MediaItem item = this.itemsById.get(id); + this.removeMediaItem(item, librarian); + } + + /** + * Search the library for items matching the given query. + * + * @param query The query to search for. + * @return The items matching the query. + */ + public Set search(SearchCriteria query) { + return new HashSet<>(this.searcher.search(query)); + } + + /** + * Add a guest to the library. + * + * @param guest The guest to add. + */ + public void addLibraryGuest(LibraryGuest guest) { + this.guestsById.put(guest.getId(), guest); + this.checkedOutItemsByGuest.put(guest.getId(), new HashSet<>()); + guest.setLibrary(this); + } + + /** + * Remove a guest from the library. + * + * @param id The ID of the guest to remove. + */ + public void removeLibraryGuest(UUID id) throws MediaItemCheckedOutException { + LibraryGuest guest = this.guestsById.get(id); + if (guest == null) { + return; + } + if (!this.checkedOutItemsByGuest.get(guest.getId()).isEmpty()) { + throw new MediaItemCheckedOutException("Cannot remove guest with checked out items."); + } + this.guestsById.remove(guest.getId()); + this.checkedOutItemsByGuest.remove(guest.getId()); + guest.setLibrary(null); + } + + /** + * Remove a guest from the library. + * + * @param guest The guest to remove. + */ + public void removeLibraryGuest(LibraryGuest guest) throws MediaItemCheckedOutException { + this.removeLibraryGuest(guest.getId()); + } + + /** + * Returns all librarians registered for this library. + * + * @return A unique set of librarians. + */ + public Set getLibrarians() { + return this.guestsById.values().stream() + .filter(g -> g instanceof Librarian) + .map(g -> (Librarian) g) + .collect(Collectors.toSet()); + } + + /** + * Returns all registered library patrons. + * + * @return A unique set of all Library patrons. + */ + public Set getPatrons() { + return this.guestsById.values().stream().collect(Collectors.toSet()); + } + + /** + * Check out a item to a guest. + * + * @param item The item to check out. + * @param guest The guest to check out the item to. + * @return True if the item was checked out, false otherwise. + */ + public boolean checkOutMediaItem(MediaItem item, LibraryGuest guest) { + if (!this.canCheckOutMediaItem(item, guest)) { + return false; + } + this.checkedOutItemIds.add(item.getId()); + this.checkedOutItemsByGuest.get(guest.getId()).add(item); + return true; + } + + private boolean canCheckOutMediaItem(MediaItem item, LibraryGuest guest) { + if (!item.canCheckOut()) { + return false; + } + if (!this.hasMediaItem(item)) { + return false; + } + if (this.isCheckedOut(item)) { + return false; + } + return this.hasLibraryGuest(guest); + } + + /** + * Check if the library has the given item. + * + * @param item The item to check for. + * @return True if the library has the item, false otherwise. + */ + public boolean hasMediaItem(MediaItem item) { + return this.hasMediaItem(item.getId()); + } + + /** + * Check if the library has the given item. + * + * @param id The ID of the item to check for. + * @return True if the library has the item, false otherwise. + */ + public boolean hasMediaItem(UUID id) { + return this.itemsById.containsKey(id); + } + + /** + * Check if the given item is checked out. + * + * @param item The item to check. + * @return True if the item is checked out, false otherwise. + */ + public boolean isCheckedOut(MediaItem item) { + return this.checkedOutItemIds.contains(item.getId()); + } + + /** + * Check if the library has the given guest. + * + * @param guest The guest to check for. + * @return True if the library has the guest, false otherwise. + */ + public boolean hasLibraryGuest(LibraryGuest guest) { + return this.hasLibraryGuest(guest.getId()); + } + + /** + * Check if the library has the given guest. + * + * @param id The ID to check for. + * @return True if the library has the guest, false otherwise. + */ + public boolean hasLibraryGuest(UUID id) { + return this.guestsById.containsKey(id); + } + + /** + * Check if the library has the given guest. + * + * @param emailAddress The email address to check for. + * @return True if the library has the guest, false otherwise. + */ + public boolean hasLibraryGuest(String emailAddress) { + return this.guestsById.values().stream() + .anyMatch(g -> g.getEmail().equalsIgnoreCase(emailAddress)); + } + + /** + * Return a item to the library. + * + * @param item The item to return. + * @param guest The guest returning the item. + * @return True if the item was returned, false otherwise. + */ + public boolean checkInMediaItem(MediaItem item, LibraryGuest guest) { + if (!this.hasMediaItem(item)) { + return false; + } + this.checkedOutItemIds.remove(item.getId()); + this.checkedOutItemsByGuest.get(guest.getId()).remove(item); + return true; + } + + /** + * Get the items checked out by a guest. + * + * @param guest The guest to get the items for. + * @return The items checked out by the guest. + */ + public Set getCheckedOutByGuest(LibraryGuest guest) { + return this.checkedOutItemsByGuest.get(guest.getId()); + } + + /** + * Get a snapshot of the library info. + * + * @return The library info. + */ + public LibraryInfo getInfo() { + Map> itemsByGuest = + this.checkedOutItemsByGuest.entrySet().stream() + .collect( + HashMap::new, + (map, entry) -> + map.put( + entry.getKey(), + Collections.unmodifiableSet(new HashSet<>(entry.getValue()))), + HashMap::putAll); + return LibraryInfo.builder() + .id(this.id) + .items(Collections.unmodifiableSet(new HashSet<>(this.itemsById.values()))) + .guests(Collections.unmodifiableSet(new HashSet<>(this.guestsById.values()))) + .checkedOutItemsByGuest(Collections.unmodifiableMap(itemsByGuest)) + .build(); + } + + @Override + public String toString() { + return "Library{" + + "itemsById=" + + itemsById + + ", checkedOutItemIds=" + + checkedOutItemIds + + ", checkedOutMediaItemsByLibraryGuest=" + + checkedOutItemsByGuest + + ", guestIds=" + + guestsById + + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryConfiguration.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryConfiguration.java new file mode 100644 index 000000000..3f5e0c0b1 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryConfiguration.java @@ -0,0 +1,16 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.factory.LibraryDbDataLoader; +import com.codedifferently.lesson18.factory.LibraryFactory; +import java.io.IOException; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class LibraryConfiguration { + + @Bean + public Library getDefaultLibrary(LibraryDbDataLoader loader) throws IOException { + return LibraryFactory.createWithLoader(loader); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuest.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuest.java new file mode 100644 index 000000000..74073cdc4 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuest.java @@ -0,0 +1,45 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import java.util.Set; +import java.util.UUID; + +public interface LibraryGuest { + /** + * Get the library that the guest is in. + * + * @param library The library that the guest is in. + * @throws WrongLibraryException If the guest is not in the library. + */ + public void setLibrary(Library library) throws WrongLibraryException; + + /** + * Get the name of the guest. + * + * @return The name of the guest. + */ + public String getName(); + + /** + * Get the email of the guest. + * + * @return The email of the guest. + */ + public String getEmail(); + + /** + * Get the id of the guest. + * + * @return The id of the guest. + */ + public UUID getId(); + + /** + * Gets the items currently checked out to the guest. + * + * @return The items currently checked out to the guest. + * @throws LibraryNotSetException If the library is not set for the guest. + */ + public Set getCheckedOutMediaItems() throws LibraryNotSetException; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuestBase.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuestBase.java new file mode 100644 index 000000000..38f522bbf --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryGuestBase.java @@ -0,0 +1,75 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import java.util.Objects; +import java.util.Set; +import java.util.UUID; + +/** Base implementation of a library guest. */ +public class LibraryGuestBase implements LibraryGuest { + + private Library library; + private final UUID id = UUID.randomUUID(); + private final String name; + private final String email; + + public LibraryGuestBase(String name, String email) { + this.name = name; + this.email = email; + } + + @Override + public void setLibrary(Library library) throws WrongLibraryException { + if (library != null && !library.hasLibraryGuest(this)) { + throw new WrongLibraryException( + "Patron " + this.getEmail() + " is not in library " + library.getId()); + } + this.library = library; + } + + @Override + public String getName() { + return this.name; + } + + @Override + public String getEmail() { + return this.email; + } + + @Override + public UUID getId() { + return this.id; + } + + @Override + public Set getCheckedOutMediaItems() throws LibraryNotSetException { + if (this.library == null) { + throw new LibraryNotSetException("Library not set for patron " + this.getEmail()); + } + return this.library.getCheckedOutByGuest(this); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof LibraryGuestBase)) { + return false; + } + LibraryGuestBase guest = (LibraryGuestBase) o; + return Objects.equals(getEmail(), guest.getEmail()); + } + + @Override + public int hashCode() { + return Objects.hash(getId()); + } + + @Override + public String toString() { + return "LibraryGuestBase{" + "id='" + getEmail() + '\'' + ", name='" + getName() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryInfo.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryInfo.java new file mode 100644 index 000000000..ffdf4bb9a --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/LibraryInfo.java @@ -0,0 +1,20 @@ +package com.codedifferently.lesson18.library; + +import java.util.Map; +import java.util.Set; +import java.util.UUID; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class LibraryInfo { + public String id; + public Set items; + public Set guests; + public Map> checkedOutItemsByGuest; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Magazine.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Magazine.java new file mode 100644 index 000000000..d315bbb3d --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Magazine.java @@ -0,0 +1,25 @@ +package com.codedifferently.lesson18.library; + +import java.util.UUID; + +/** Represents a magazine. */ +public class Magazine extends MediaItemBase { + public Magazine(UUID id, String title) { + super(id, title); + } + + @Override + public MediaType getType() { + return MediaType.MAGAZINE; + } + + @Override + public boolean canCheckOut() { + return false; + } + + @Override + public String toString() { + return "Magazine{" + "id='" + getId() + '\'' + ", title='" + getTitle() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItem.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItem.java new file mode 100644 index 000000000..7baf7d11d --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItem.java @@ -0,0 +1,53 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import com.codedifferently.lesson18.library.search.Searchable; +import java.util.UUID; + +/** Represents a media item. */ +public interface MediaItem extends Searchable { + /** + * Get the type of the media item. + * + * @return The type of the media item. + */ + public MediaType getType(); + + /** + * Get the id of the media item. + * + * @return The id of the media item. + */ + public UUID getId(); + + /** + * Set the library that the media item is in. + * + * @param library + * @throws WrongLibraryException + */ + public void setLibrary(Library library) throws WrongLibraryException; + + /** + * Get the title of the media item. + * + * @return The title of the media item. + */ + public String getTitle(); + + /** + * Check if the media item is checked out. + * + * @return True if the media item is checked out, false otherwise. + * @throws LibraryNotSetException + */ + public boolean isCheckedOut() throws LibraryNotSetException; + + /** + * Check if the media item can be checked out. + * + * @return True if the media item can be checked out, false otherwise. + */ + public boolean canCheckOut(); +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItemBase.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItemBase.java new file mode 100644 index 000000000..3c0028fb1 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaItemBase.java @@ -0,0 +1,93 @@ +package com.codedifferently.lesson18.library; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import com.codedifferently.lesson18.library.search.SearchCriteria; +import java.util.Objects; +import java.util.UUID; + +/** Base implementation of a media item. */ +public abstract class MediaItemBase implements MediaItem { + private Library library; + private final UUID id; + private final String title; + + public MediaItemBase(UUID id, String title) { + this.id = id; + this.title = title; + } + + @Override + public UUID getId() { + return id; + } + + @Override + public String getTitle() { + return title; + } + + @Override + public void setLibrary(Library library) throws WrongLibraryException { + if (library != null && !library.hasMediaItem(this)) { + throw new WrongLibraryException( + "Media item " + this.getId() + " is not in library " + library.getId()); + } + this.library = library; + } + + @Override + public boolean isCheckedOut() throws LibraryNotSetException { + if (this.library == null) { + throw new LibraryNotSetException("Library not set for item " + this.getId()); + } + return library.isCheckedOut(this); + } + + @Override + public boolean canCheckOut() { + return true; + } + + /** + * Check if the media item matches the given author. + * + * @param author The author to check. + * @return True if the media item matches the author, false otherwise. + */ + protected boolean matchesAuthor(String author) { + return false; + } + + @Override + public boolean matches(SearchCriteria query) { + if (query.id != null && !this.getId().toString().equalsIgnoreCase(query.id)) { + return false; + } + if (query.title != null && !this.getTitle().toLowerCase().contains(query.title.toLowerCase())) { + return false; + } + if (query.type != null && !this.getType().toString().equalsIgnoreCase(query.type)) { + return false; + } + return query.author == null || this.matchesAuthor(query.author); + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof MediaItem)) return false; + MediaItem item = (MediaItem) o; + return Objects.equals(getId(), item.getId()); + } + + @Override + public int hashCode() { + return Objects.hash(getId()); + } + + @Override + public String toString() { + return "MediaItem{" + "id='" + getId() + '\'' + ", title='" + getTitle() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaType.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaType.java new file mode 100644 index 000000000..a4bcda7ea --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/MediaType.java @@ -0,0 +1,28 @@ +package com.codedifferently.lesson18.library; + +public enum MediaType { + UNKNOWN("unknown"), + BOOK("book"), + DVD("dvd"), + MAGAZINE("magazine"), + NEWSPAPER("newspaper"); + + private final String type; + + MediaType(String type) { + this.type = type; + } + + public String getType() { + return type; + } + + public static MediaType fromString(String type) { + for (MediaType mediaItemType : MediaType.values()) { + if (mediaItemType.type.equalsIgnoreCase(type)) { + return mediaItemType; + } + } + throw new IllegalArgumentException("Invalid media item type: " + type); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Newspaper.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Newspaper.java new file mode 100644 index 000000000..7316109fe --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Newspaper.java @@ -0,0 +1,25 @@ +package com.codedifferently.lesson18.library; + +import java.util.UUID; + +/** Represents a newspaper. */ +public class Newspaper extends MediaItemBase { + public Newspaper(UUID id, String title) { + super(id, title); + } + + @Override + public MediaType getType() { + return MediaType.NEWSPAPER; + } + + @Override + public boolean canCheckOut() { + return false; + } + + @Override + public String toString() { + return "Newspaper{" + "id='" + getId() + '\'' + ", title='" + getTitle() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Patron.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Patron.java new file mode 100644 index 000000000..1aebd364c --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/Patron.java @@ -0,0 +1,20 @@ +package com.codedifferently.lesson18.library; + +/** Represents a patron of a library. */ +public class Patron extends LibraryGuestBase { + + /** + * Create a new patron with the given name and email. + * + * @param name The name of the patron. + * @param email The email of the patron. + */ + public Patron(String name, String email) { + super(name, email); + } + + @Override + public String toString() { + return "Patron{" + "id='" + getEmail() + '\'' + ", name='" + getName() + '\'' + '}'; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/LibraryNotSetException.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/LibraryNotSetException.java new file mode 100644 index 000000000..660367b4e --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/LibraryNotSetException.java @@ -0,0 +1,7 @@ +package com.codedifferently.lesson18.library.exceptions; + +public class LibraryNotSetException extends RuntimeException { + public LibraryNotSetException(String message) { + super(message); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/MediaItemCheckedOutException.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/MediaItemCheckedOutException.java new file mode 100644 index 000000000..573627eba --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/MediaItemCheckedOutException.java @@ -0,0 +1,7 @@ +package com.codedifferently.lesson18.library.exceptions; + +public class MediaItemCheckedOutException extends RuntimeException { + public MediaItemCheckedOutException(String message) { + super(message); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/WrongLibraryException.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/WrongLibraryException.java new file mode 100644 index 000000000..90e8fe1d0 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/exceptions/WrongLibraryException.java @@ -0,0 +1,7 @@ +package com.codedifferently.lesson18.library.exceptions; + +public class WrongLibraryException extends RuntimeException { + public WrongLibraryException(String message) { + super(message); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/CatalogSearcher.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/CatalogSearcher.java new file mode 100644 index 000000000..225e02f88 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/CatalogSearcher.java @@ -0,0 +1,31 @@ +package com.codedifferently.lesson18.library.search; + +import java.util.Collection; + +/** + * Searches a catalog for items that match a query. + * + * @param + */ +public class CatalogSearcher { + private final Collection catalog; + + /** + * Constructor for CatalogSearcher + * + * @param catalog + */ + public CatalogSearcher(Collection catalog) { + this.catalog = catalog; + } + + /** + * Searches the catalog for items that match the given query. + * + * @param query The query to search for. + * @return The items that match the query. + */ + public Collection search(SearchCriteria query) { + return catalog.stream().filter(item -> item.matches(query)).toList(); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/SearchCriteria.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/SearchCriteria.java new file mode 100644 index 000000000..c53d83282 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/SearchCriteria.java @@ -0,0 +1,24 @@ +package com.codedifferently.lesson18.library.search; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class SearchCriteria { + /** The ID to search for (exact match). */ + public String id; + + /** The title to search for. */ + public String title; + + /** The author to search for. */ + public String author; + + /** The type to search for (exact match). */ + public String type; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/Searchable.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/Searchable.java new file mode 100644 index 000000000..bf822366e --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/library/search/Searchable.java @@ -0,0 +1,11 @@ +package com.codedifferently.lesson18.library.search; + +public interface Searchable { + /** + * Indicates whether an item matches the search criteria. + * + * @param query The query to search for. + * @return The items that match the query. + */ + boolean matches(SearchCriteria query); +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/AuthorsConverter.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/AuthorsConverter.java new file mode 100644 index 000000000..d05940368 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/AuthorsConverter.java @@ -0,0 +1,18 @@ +package com.codedifferently.lesson18.models; + +import jakarta.persistence.AttributeConverter; +import jakarta.persistence.Converter; +import java.util.List; + +@Converter +public class AuthorsConverter implements AttributeConverter, String> { + @Override + public String convertToDatabaseColumn(List authors) { + return String.join(", ", authors); + } + + @Override + public List convertToEntityAttribute(String authors) { + return authors != null ? List.of(authors.split(", ")) : List.of(); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/CheckoutModel.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/CheckoutModel.java new file mode 100644 index 000000000..1cb91885c --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/CheckoutModel.java @@ -0,0 +1,15 @@ +package com.codedifferently.lesson18.models; + +import jakarta.persistence.Entity; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import java.time.Instant; +import java.util.UUID; + +@Entity +@Table(name = "checked_out_items") +public class CheckoutModel { + @Id public UUID itemId; + public String email; + public Instant dueDate; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryDataModel.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryDataModel.java new file mode 100644 index 000000000..e6f4b89d2 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryDataModel.java @@ -0,0 +1,61 @@ +package com.codedifferently.lesson18.models; + +import com.codedifferently.lesson18.library.Book; +import com.codedifferently.lesson18.library.Dvd; +import com.codedifferently.lesson18.library.Librarian; +import com.codedifferently.lesson18.library.LibraryGuest; +import com.codedifferently.lesson18.library.Magazine; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.Newspaper; +import com.codedifferently.lesson18.library.Patron; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public class LibraryDataModel { + public List mediaItems; + public List guests; + + public List getMediaItems() { + List results = new ArrayList<>(); + for (MediaItemModel mediaItemModel : mediaItems) { + switch (mediaItemModel.type) { + case BOOK -> + results.add( + new Book( + mediaItemModel.id, + mediaItemModel.title, + mediaItemModel.isbn, + mediaItemModel.authors, + mediaItemModel.pages)); + case DVD -> results.add(new Dvd(mediaItemModel.id, mediaItemModel.title)); + case MAGAZINE -> results.add(new Magazine(mediaItemModel.id, mediaItemModel.title)); + case NEWSPAPER -> results.add(new Newspaper(mediaItemModel.id, mediaItemModel.title)); + default -> + throw new IllegalArgumentException("Unknown media item type: " + mediaItemModel.type); + } + } + return results; + } + + public List getGuests() { + List results = new ArrayList<>(); + for (LibraryGuestModel guestModel : this.guests) { + switch (guestModel.type) { + case "librarian" -> results.add(new Librarian(guestModel.name, guestModel.email)); + case "patron" -> results.add(new Patron(guestModel.name, guestModel.email)); + default -> throw new AssertionError(); + } + } + return results; + } + + public Map> getCheckoutsByEmail() { + Map> results = new HashMap<>(); + for (LibraryGuestModel guest : this.guests) { + results.put(guest.email, guest.checkedOutItems); + } + return results; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryGuestModel.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryGuestModel.java new file mode 100644 index 000000000..d58181c15 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/LibraryGuestModel.java @@ -0,0 +1,19 @@ +package com.codedifferently.lesson18.models; + +import jakarta.persistence.Entity; +import jakarta.persistence.FetchType; +import jakarta.persistence.Id; +import jakarta.persistence.OneToMany; +import jakarta.persistence.Table; +import java.util.List; + +@Entity +@Table(name = "guests") +public class LibraryGuestModel { + public String type; + public String name; + @Id public String email; + + @OneToMany(mappedBy = "email", fetch = FetchType.EAGER) + public List checkedOutItems; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/MediaItemModel.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/MediaItemModel.java new file mode 100644 index 000000000..247f3c6c0 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/models/MediaItemModel.java @@ -0,0 +1,29 @@ +package com.codedifferently.lesson18.models; + +import com.codedifferently.lesson18.library.MediaType; +import jakarta.persistence.Convert; +import jakarta.persistence.Entity; +import jakarta.persistence.EnumType; +import jakarta.persistence.Enumerated; +import jakarta.persistence.Id; +import jakarta.persistence.Table; +import java.util.List; +import java.util.UUID; + +@Entity +@Table(name = "media_items") +public class MediaItemModel { + @Enumerated(EnumType.STRING) + public MediaType type; + + @Id public UUID id; + public String isbn; + public String title; + + @Convert(converter = AuthorsConverter.class) + public List authors; + + public String edition; + public Integer pages = 0; + public Integer runtime = 0; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/LibraryGuestRepository.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/LibraryGuestRepository.java new file mode 100644 index 000000000..cabc08723 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/LibraryGuestRepository.java @@ -0,0 +1,10 @@ +package com.codedifferently.lesson18.repository; + +import com.codedifferently.lesson18.models.LibraryGuestModel; +import java.util.List; +import org.springframework.data.repository.CrudRepository; + +public interface LibraryGuestRepository extends CrudRepository { + @Override + List findAll(); +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/MediaItemRepository.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/MediaItemRepository.java new file mode 100644 index 000000000..e9a0ce22d --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/repository/MediaItemRepository.java @@ -0,0 +1,11 @@ +package com.codedifferently.lesson18.repository; + +import com.codedifferently.lesson18.models.MediaItemModel; +import java.util.List; +import java.util.UUID; +import org.springframework.data.repository.CrudRepository; + +public interface MediaItemRepository extends CrudRepository { + @Override + List findAll(); +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemRequest.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemRequest.java new file mode 100644 index 000000000..8d663dac9 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemRequest.java @@ -0,0 +1,17 @@ +package com.codedifferently.lesson18.web; + +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class CreateMediaItemRequest { + @NotNull(message = "item is required") @Valid + private MediaItemRequest item; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemResponse.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemResponse.java new file mode 100644 index 000000000..bd835ca48 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/CreateMediaItemResponse.java @@ -0,0 +1,10 @@ +package com.codedifferently.lesson18.web; + +import lombok.Builder; +import lombok.Data; + +@Data +@Builder +public class CreateMediaItemResponse { + private MediaItemResponse item; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GetMediaItemsResponse.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GetMediaItemsResponse.java new file mode 100644 index 000000000..c0d3c86be --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GetMediaItemsResponse.java @@ -0,0 +1,12 @@ +package com.codedifferently.lesson18.web; + +import java.util.List; +import lombok.Builder; +import lombok.Data; +import lombok.Singular; + +@Data +@Builder +public class GetMediaItemsResponse { + @Singular private List items; +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GlobalExceptionHandler.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GlobalExceptionHandler.java new file mode 100644 index 000000000..4fcf6f890 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/GlobalExceptionHandler.java @@ -0,0 +1,33 @@ +package com.codedifferently.lesson18.web; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.FieldError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +@RestControllerAdvice +public class GlobalExceptionHandler { + + @ExceptionHandler(MethodArgumentNotValidException.class) + public ResponseEntity>> handleValidationErrors( + MethodArgumentNotValidException ex) { + List errors = + ex.getBindingResult().getFieldErrors().stream() + .map(FieldError::getDefaultMessage) + .collect(Collectors.toList()); + return new ResponseEntity<>(getErrorsMap(errors), new HttpHeaders(), HttpStatus.BAD_REQUEST); + } + + private Map> getErrorsMap(List errors) { + Map> errorResponse = new HashMap<>(); + errorResponse.put("errors", errors); + return errorResponse; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemRequest.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemRequest.java new file mode 100644 index 000000000..dd64538c3 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemRequest.java @@ -0,0 +1,52 @@ +package com.codedifferently.lesson18.web; + +import com.codedifferently.lesson18.library.Book; +import com.codedifferently.lesson18.library.Dvd; +import com.codedifferently.lesson18.library.Magazine; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.MediaType; +import com.codedifferently.lesson18.library.Newspaper; +import jakarta.validation.constraints.NotBlank; +import java.util.List; +import java.util.UUID; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +public class MediaItemRequest { + private UUID id; + private MediaType type; + private String isbn; + + @NotBlank(message = "Title is required") + private String title; + + private String[] authors; + private String edition; + private int pages; + private int runtime; + + public static MediaItem asMediaItem(MediaItemRequest request) { + var id = request.id != null ? request.id : UUID.randomUUID(); + switch (request.type) { + case BOOK -> { + return new Book(id, request.title, request.isbn, List.of(request.authors), request.pages); + } + case DVD -> { + return new Dvd(id, request.title); + } + case MAGAZINE -> { + return new Magazine(id, request.title); + } + case NEWSPAPER -> { + return new Newspaper(id, request.title); + } + default -> throw new IllegalArgumentException("Unknown media item type: " + request.type); + } + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemResponse.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemResponse.java new file mode 100644 index 000000000..fcb5a83d4 --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemResponse.java @@ -0,0 +1,37 @@ +package com.codedifferently.lesson18.web; + +import com.codedifferently.lesson18.library.Book; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.MediaType; +import java.util.List; +import java.util.UUID; +import lombok.Builder; +import lombok.Data; + +@Data +@Builder +public class MediaItemResponse { + private MediaType type; + private UUID id; + private String isbn; + private String title; + public List authors; + public String edition; + public int pages; + public int runtime; + + public static MediaItemResponse from(MediaItem item) { + var result = + MediaItemResponse.builder().id(item.getId()).title(item.getTitle()).type(item.getType()); + + switch (item.getType()) { + case BOOK -> { + var book = (Book) item; + result = + result.isbn(book.getIsbn()).authors(book.getAuthors()).pages(book.getNumberOfPages()); + } + } + + return result.build(); + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemsController.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemsController.java new file mode 100644 index 000000000..f5dee45ec --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/MediaItemsController.java @@ -0,0 +1,34 @@ +package com.codedifferently.lesson18.web; + +import java.io.IOException; +import java.util.List; +import java.util.Set; + +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.codedifferently.lesson18.library.Librarian; +import com.codedifferently.lesson18.library.Library; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.search.SearchCriteria; + +@RestController +@CrossOrigin +public class MediaItemsController { + private final Library library; + private final Librarian librarian; + + public MediaItemsController(Library library) throws IOException { + this.library = library; + this.librarian = library.getLibrarians().stream().findFirst().orElseThrow(); + } + + @GetMapping("/items") + public GetMediaItemsResponse getItems() { + Set items = library.search(SearchCriteria.builder().build()); + List responseItems = items.stream().map(MediaItemResponse::from).toList(); + var response = GetMediaItemsResponse.builder().items(responseItems).build(); + return response; + } +} diff --git a/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/WebConfiguration.java b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/WebConfiguration.java new file mode 100644 index 000000000..5d21ae79c --- /dev/null +++ b/lesson_18/api/api_app/src/main/java/com/codedifferently/lesson18/web/WebConfiguration.java @@ -0,0 +1,11 @@ +package com.codedifferently.lesson18.web; + +import org.springframework.context.annotation.ComponentScan; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.EnableWebMvc; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@EnableWebMvc +@Configuration +@ComponentScan(basePackages = "com.codedifferently") +public class WebConfiguration implements WebMvcConfigurer {} diff --git a/lesson_18/api/api_app/src/main/resources/application.yml b/lesson_18/api/api_app/src/main/resources/application.yml new file mode 100644 index 000000000..574e0f916 --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/application.yml @@ -0,0 +1,9 @@ +server: + port: 5000 +spring: + jpa: + database-platform: org.hibernate.community.dialect.SQLiteDialect + generate-ddl: true + datasource: + url: jdbc:sqlite::resource:sqlite/data.db + driver-class-name: org.sqlite.JDBC \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/csv/checked_out_items.csv b/lesson_18/api/api_app/src/main/resources/csv/checked_out_items.csv new file mode 100644 index 000000000..1c2fffa70 --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/csv/checked_out_items.csv @@ -0,0 +1,5 @@ +email,item_id,due_date +jane.smith@example.com,e27a4e0d-9664-420d-955e-c0e295d0ce02,2024-04-05T00:00:00Z +jane.smith@example.com,295ea581-cd61-4319-8b0c-e5c0c03286c5,2024-04-07T00:00:00Z +alice.johnson@example.com,17dd5d20-98f5-4a26-be09-449fea88a3c3,2024-04-03T00:00:00Z +alice.johnson@example.com,28e5c91f-0e4b-4be5-abb1-8da01fd5587e,2024-04-06T00:00:00Z \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/csv/guests.csv b/lesson_18/api/api_app/src/main/resources/csv/guests.csv new file mode 100644 index 000000000..bcc02b051 --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/csv/guests.csv @@ -0,0 +1,6 @@ +type,name,email +librarian,John Doe,john.doe@fakelibrary.org +patron,Jane Smith,jane.smith@example.com +patron,Alice Johnson,alice.johnson@example.com +librarian,Bob Williams,bob.williams@fakelibrary.org +patron,Emily Brown,emily.brown@example.com \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/csv/media_items.csv b/lesson_18/api/api_app/src/main/resources/csv/media_items.csv new file mode 100644 index 000000000..c3f8161d5 --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/csv/media_items.csv @@ -0,0 +1,32 @@ +type,id,title,isbn,authors,pages,runtime,edition +book,e27a4e0d-9664-420d-955e-c0e295d0ce02,To Kill a Mockingbird,978-0061120084,"Harper Lee",336,, +book,17dd5d20-98f5-4a26-be09-449fea88a3c3,1984,978-0451524935,"George Orwell",328,, +dvd,28e5c91f-0e4b-4be5-abb1-8da01fd5587e,The Shawshank Redemption,,,,142, +dvd,295ea581-cd61-4319-8b0c-e5c0c03286c5,Inception,,,,148, +magazine,222111dd-c561-462a-8854-853ada4d3421,National Geographic,,,,,March 2024 +magazine,0afd425b-973f-4af9-a6aa-8febe943a8f6,Time,,,,,"March 15, 2024" +newspaper,91b74a71-97ad-4fea-b17c-a640c98d355f,The New York Times,,,,,"Morning Edition, March 22, 2024" +newspaper,45cab344-b792-484c-9156-d929237dde67,The Guardian,,,,,"March 22, 2024" +book,218b55fa-a3cd-4803-805e-7cd1ef3115ac,The Great Gatsby,978-0743273565,"F. Scott Fitzgerald",180,, +book,b4249c17-f77b-46da-aa82-7aa227eca5e2,Harry Potter and the Sorcerer's Stone,978-0590353427,"J.K. Rowling",309,, +dvd,a3cc5ccb-e2fd-4cd0-a6f8-dc1f2f07589b,The Godfather,,,,175, +dvd,6386364c-8505-4dbe-8731-ff8fa0d6e381,The Dark Knight,,,,152, +magazine,e5060cc1-33f0-431c-a1b3-d1979e38b6f2,Scientific American,,,,,April 2024 +magazine,7048bd13-49ee-4693-8900-e396bbdf3f98,Vogue,,,,,Spring 2024 +newspaper,6f80a5ce-5958-48f3-a029-ff3d76f2c3fe,The Washington Post,,,,,"Evening Edition, March 22, 2024" +newspaper,f5f1196c-7935-417e-bc52-7144f63da3cb,The Times,,,,,"March 23, 2024" +book,faf5a804-e02c-4bbc-8505-4ba90a526e28,Pride and Prejudice,978-0141439518,"Jane Austen",279,, +book,1aab8182-4345-4ead-98e8-0db53682311b,The Catcher in the Rye,978-0316769488,"J.D. Salinger",277,, +dvd,2b92ef3d-b224-4589-9a59-cdaba758affd,The Matrix,,,,136, +dvd,e5d75a1d-f3b4-430f-ba63-b6e4603228eb,Pulp Fiction,,,,154, +magazine,75fb71ad-ea84-45b8-8396-b790c833573e,Wired,,,,,"May 2024" +magazine,e30a6739-cdc9-4b2e-ac67-7278fcfb9a59,Forbes,,,,,"April 2024" +newspaper,3e228c29-6163-477a-8b70-e873a3788758,Los Angeles Times,,,,,"Morning Edition, March 23, 2024" +newspaper,8e3946e2-d5a6-4cb4-ac92-17cc44935d2d,Chicago Tribune,,,,,"March 23, 2024" +book,b08c9da7-5c01-494c-84ec-af3fef9dc480,The Lord of the Rings,978-0544003415,"J.R.R. Tolkien",1178,, +dvd,af1ae237-d29a-49d8-a18a-d6193c07a033,The Silence of the Lambs,,,,118, +dvd,215af9ba-e881-48fb-8284-a3dc6a1c096d,The Departed,,,,151, +magazine,8efcbbb2-5c1e-486c-924d-63c3503f498c,The Economist,,,,,"March 23, 2024" +magazine,d39f5cf3-9574-4fdc-b81b-99d31b26ee92,The New Yorker,,,,,"March 25, 2024" +newspaper,8b369c0f-6c68-4a84-8e15-8b85a2dd1949,USA Today,,,,,"Morning Edition, March 23, 2024" +newspaper,eaf356a3-ae28-4cc5-92a2-9b0264165b5d,The Wall Street Journal,,,,,"March 23, 2024" \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/json/data.json b/lesson_18/api/api_app/src/main/resources/json/data.json new file mode 100644 index 000000000..d419365ff --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/json/data.json @@ -0,0 +1,268 @@ +{ + "mediaItems": [ + { + "type": "book", + "id": "e27a4e0d-9664-420d-955e-c0e295d0ce02", + "title": "To Kill a Mockingbird", + "isbn": "978-0061120084", + "authors": [ + "Harper Lee" + ], + "pages": 336 + }, + { + "type": "book", + "id": "17dd5d20-98f5-4a26-be09-449fea88a3c3", + "title": "1984", + "isbn": "978-0451524935", + "authors": [ + "George Orwell" + ], + "pages": 328 + }, + { + "type": "dvd", + "id": "28e5c91f-0e4b-4be5-abb1-8da01fd5587e", + "title": "The Shawshank Redemption", + "runtime": 142 + }, + { + "type": "dvd", + "id": "295ea581-cd61-4319-8b0c-e5c0c03286c5", + "title": "Inception", + "runtime": 148 + }, + { + "type": "magazine", + "id": "222111dd-c561-462a-8854-853ada4d3421", + "title": "National Geographic", + "edition": "March 2024" + }, + { + "type": "magazine", + "id": "0afd425b-973f-4af9-a6aa-8febe943a8f6", + "title": "Time", + "edition": "March 15, 2024" + }, + { + "type": "newspaper", + "id": "91b74a71-97ad-4fea-b17c-a640c98d355f", + "title": "The New York Times", + "edition": "Morning Edition, March 22, 2024" + }, + { + "type": "newspaper", + "id": "45cab344-b792-484c-9156-d929237dde67", + "title": "The Guardian", + "edition": "March 22, 2024" + }, + { + "type": "book", + "id": "218b55fa-a3cd-4803-805e-7cd1ef3115ac", + "title": "The Great Gatsby", + "isbn": "978-0743273565", + "authors": [ + "F. Scott Fitzgerald" + ], + "pages": 180 + }, + { + "type": "book", + "id": "b4249c17-f77b-46da-aa82-7aa227eca5e2", + "title": "Harry Potter and the Sorcerer's Stone", + "isbn": "978-0590353427", + "authors": [ + "J.K. Rowling" + ], + "pages": 309 + }, + { + "type": "dvd", + "id": "a3cc5ccb-e2fd-4cd0-a6f8-dc1f2f07589b", + "title": "The Godfather", + "runtime": 175 + }, + { + "type": "dvd", + "id": "6386364c-8505-4dbe-8731-ff8fa0d6e381", + "title": "The Dark Knight", + "runtime": 152 + }, + { + "type": "magazine", + "id": "e5060cc1-33f0-431c-a1b3-d1979e38b6f2", + "title": "Scientific American", + "edition": "April 2024" + }, + { + "type": "magazine", + "id": "7048bd13-49ee-4693-8900-e396bbdf3f98", + "title": "Vogue", + "edition": "Spring 2024" + }, + { + "type": "newspaper", + "id": "6f80a5ce-5958-48f3-a029-ff3d76f2c3fe", + "title": "The Washington Post", + "edition": "Evening Edition, March 22, 2024" + }, + { + "type": "newspaper", + "id": "f5f1196c-7935-417e-bc52-7144f63da3cb", + "title": "The Times", + "edition": "March 23, 2024" + }, + { + "type": "book", + "id": "faf5a804-e02c-4bbc-8505-4ba90a526e28", + "title": "Pride and Prejudice", + "isbn": "978-0141439518", + "authors": [ + "Jane Austen" + ], + "pages": 279 + }, + { + "type": "book", + "id": "1aab8182-4345-4ead-98e8-0db53682311b", + "title": "The Catcher in the Rye", + "isbn": "978-0316769488", + "authors": [ + "J.D. Salinger" + ], + "pages": 277 + }, + { + "type": "dvd", + "id": "2b92ef3d-b224-4589-9a59-cdaba758affd", + "title": "The Matrix", + "runtime": 136 + }, + { + "type": "dvd", + "id": "e5d75a1d-f3b4-430f-ba63-b6e4603228eb", + "title": "Pulp Fiction", + "runtime": 154 + }, + { + "type": "magazine", + "id": "75fb71ad-ea84-45b8-8396-b790c833573e", + "title": "Wired", + "edition": "May 2024" + }, + { + "type": "magazine", + "id": "e30a6739-cdc9-4b2e-ac67-7278fcfb9a59", + "title": "Forbes", + "edition": "April 2024" + }, + { + "type": "newspaper", + "id": "3e228c29-6163-477a-8b70-e873a3788758", + "title": "Los Angeles Times", + "edition": "Morning Edition, March 23, 2024" + }, + { + "type": "newspaper", + "id": "8e3946e2-d5a6-4cb4-ac92-17cc44935d2d", + "title": "Chicago Tribune", + "edition": "March 23, 2024" + }, + { + "type": "book", + "id": "b08c9da7-5c01-494c-84ec-af3fef9dc480", + "title": "The Lord of the Rings", + "isbn": "978-0544003415", + "authors": [ + "J.R.R. Tolkien" + ], + "pages": 1178 + }, + { + "type": "dvd", + "id": "af1ae237-d29a-49d8-a18a-d6193c07a033", + "title": "The Silence of the Lambs", + "runtime": 118 + }, + { + "type": "dvd", + "id": "215af9ba-e881-48fb-8284-a3dc6a1c096d", + "title": "The Departed", + "runtime": 151 + }, + { + "type": "magazine", + "id": "8efcbbb2-5c1e-486c-924d-63c3503f498c", + "title": "The Economist", + "edition": "March 23, 2024" + }, + { + "type": "magazine", + "id": "d39f5cf3-9574-4fdc-b81b-99d31b26ee92", + "title": "The New Yorker", + "edition": "March 25, 2024" + }, + { + "type": "newspaper", + "id": "8b369c0f-6c68-4a84-8e15-8b85a2dd1949", + "title": "USA Today", + "edition": "Morning Edition, March 23, 2024" + }, + { + "type": "newspaper", + "id": "eaf356a3-ae28-4cc5-92a2-9b0264165b5d", + "title": "The Wall Street Journal", + "edition": "March 23, 2024" + } + ], + "guests": [ + { + "type": "librarian", + "name": "John Doe", + "email": "john.doe@fakelibrary.org", + "checkedOutItems": [] + }, + { + "type": "patron", + "name": "Jane Smith", + "email": "jane.smith@example.com", + "checkedOutItems": [ + { + "itemId": "e27a4e0d-9664-420d-955e-c0e295d0ce02", + "dueDate": "2024-04-05T00:00:00Z" + }, + { + "itemId": "295ea581-cd61-4319-8b0c-e5c0c03286c5", + "dueDate": "2024-04-07T00:00:00Z" + } + ] + }, + { + "type": "patron", + "name": "Alice Johnson", + "email": "alice.johnson@example.com", + "checkedOutItems": [ + { + "itemId": "17dd5d20-98f5-4a26-be09-449fea88a3c3", + "dueDate": "2024-04-03T00:00:00Z" + }, + { + "itemId": "28e5c91f-0e4b-4be5-abb1-8da01fd5587e", + "dueDate": "2024-04-06T00:00:00Z" + } + ] + }, + { + "type": "librarian", + "name": "Bob Williams", + "email": "bob.williams@fakelibrary.org", + "checkedOutItems": [] + }, + { + "type": "patron", + "name": "Emily Brown", + "email": "emily.brown@example.com", + "checkedOutItems": [] + } + ] +} \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/queries/anthonydmays.sql b/lesson_18/api/api_app/src/main/resources/queries/anthonydmays.sql new file mode 100644 index 000000000..027b7d63f --- /dev/null +++ b/lesson_18/api/api_app/src/main/resources/queries/anthonydmays.sql @@ -0,0 +1 @@ +SELECT 1; \ No newline at end of file diff --git a/lesson_18/api/api_app/src/main/resources/sqlite/data.db b/lesson_18/api/api_app/src/main/resources/sqlite/data.db new file mode 100644 index 0000000000000000000000000000000000000000..16f3563b10820e8dd268b0c729ae36b29a164dbf GIT binary patch literal 16384 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 literal 0 HcmV?d00001 diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/Lesson18Test.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/Lesson18Test.java new file mode 100644 index 000000000..fe9ce6799 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/Lesson18Test.java @@ -0,0 +1,13 @@ +package com.codedifferently.lesson18; + +import static org.assertj.core.api.Assertions.assertThat; + +import org.junit.jupiter.api.Test; + +class Lesson18Test { + + @Test + void testInstantiate() { + assertThat(new Lesson18()).isNotNull(); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoaderTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoaderTest.java new file mode 100644 index 000000000..f4613fcc4 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryCsvDataLoaderTest.java @@ -0,0 +1,84 @@ +package com.codedifferently.lesson18.factory; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.codedifferently.lesson18.Lesson18; +import com.codedifferently.lesson18.library.LibraryGuest; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.MediaType; +import com.codedifferently.lesson18.models.CheckoutModel; +import com.codedifferently.lesson18.models.LibraryDataModel; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.TestInstance; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ContextConfiguration; + +@SpringBootTest +@TestInstance(TestInstance.Lifecycle.PER_CLASS) +@ContextConfiguration(classes = Lesson18.class) +class LibraryCsvDataLoaderTest { + private LibraryDataModel libraryDataModel; + + @BeforeAll + void beforeAll() throws Exception { + libraryDataModel = new LibraryCsvDataLoader().loadData(); + } + + @Test + void testDataLoader_loadsCheckedOutItems() { + Map> checkedOutItemsByGuest = + libraryDataModel.getCheckoutsByEmail(); + var numCheckedOutItems = checkedOutItemsByGuest.values().stream().mapToInt(List::size).sum(); + assertThat(numCheckedOutItems) + .describedAs("LibraryCsvDataLoader should load checked out items") + .isEqualTo(4); + } + + @Test + void testDataLoader_loadsCorrectItemTypes() { + List items = libraryDataModel.getMediaItems(); + Map countByMediaType = + items.stream() + .reduce( + new HashMap<>(), + (hashMap, e) -> { + hashMap.merge(e.getType(), 1, Integer::sum); + return hashMap; + }, + (m, m2) -> { + m.putAll(m2); + return m; + }); + assertThat(countByMediaType.get(MediaType.BOOK)).isEqualTo(7); + assertThat(countByMediaType.get(MediaType.MAGAZINE)).isEqualTo(8); + assertThat(countByMediaType.get(MediaType.NEWSPAPER)).isEqualTo(8); + assertThat(countByMediaType.get(MediaType.DVD)).isEqualTo(8); + assertThat(items.stream().map(MediaItem::getId).distinct().count()).isEqualTo(31); + assertThat(items.stream().map(MediaItem::getTitle).distinct().count()).isEqualTo(31); + } + + @Test + void testDataLoader_loadsCorrectGuestTypes() { + List guests = libraryDataModel.getGuests(); + Map countByGuestType = + guests.stream() + .reduce( + new HashMap<>(), + (hashMap, e) -> { + hashMap.merge(e.getClass().getSimpleName(), 1, Integer::sum); + return hashMap; + }, + (m, m2) -> { + m.putAll(m2); + return m; + }); + assertThat(countByGuestType.get("Librarian")).isEqualTo(2); + assertThat(countByGuestType.get("Patron")).isEqualTo(3); + assertThat(guests.stream().map(LibraryGuest::getEmail).distinct().count()).isEqualTo(5); + assertThat(guests.stream().map(LibraryGuest::getName).distinct().count()).isEqualTo(5); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoaderTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoaderTest.java new file mode 100644 index 000000000..8de5b0d85 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/factory/LibraryJsonDataLoaderTest.java @@ -0,0 +1,76 @@ +package com.codedifferently.lesson18.factory; + +import static org.assertj.core.api.Assertions.assertThat; + +import com.codedifferently.lesson18.library.LibraryGuest; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.MediaType; +import com.codedifferently.lesson18.models.CheckoutModel; +import com.codedifferently.lesson18.models.LibraryDataModel; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; + +class LibraryJsonDataLoaderTest { + private static LibraryDataModel libraryDataModel; + + @BeforeAll + static void beforeAll() throws Exception { + var libraryJsonDataLoader = new LibraryJsonDataLoader(); + libraryDataModel = libraryJsonDataLoader.loadData(); + } + + @Test + void testDataLoader_loadsCheckedOutItems() { + Map> checkedOutItemsByGuest = + libraryDataModel.getCheckoutsByEmail(); + var numCheckedOutItems = checkedOutItemsByGuest.values().stream().mapToInt(List::size).sum(); + assertThat(numCheckedOutItems).isEqualTo(4); + } + + @Test + void testDataLoader_loadsCorrectItemTypes() { + List items = libraryDataModel.getMediaItems(); + Map countByMediaType = + items.stream() + .reduce( + new HashMap<>(), + (hashMap, e) -> { + hashMap.merge(e.getType(), 1, Integer::sum); + return hashMap; + }, + (m, m2) -> { + m.putAll(m2); + return m; + }); + assertThat(countByMediaType.get(MediaType.BOOK)).isEqualTo(7); + assertThat(countByMediaType.get(MediaType.MAGAZINE)).isEqualTo(8); + assertThat(countByMediaType.get(MediaType.NEWSPAPER)).isEqualTo(8); + assertThat(countByMediaType.get(MediaType.DVD)).isEqualTo(8); + assertThat(items.stream().map(MediaItem::getId).distinct().count()).isEqualTo(31); + assertThat(items.stream().map(MediaItem::getTitle).distinct().count()).isEqualTo(31); + } + + @Test + void testDataLoader_loadsCorrectGuestTypes() { + List guests = libraryDataModel.getGuests(); + Map countByGuestType = + guests.stream() + .reduce( + new HashMap<>(), + (hashMap, e) -> { + hashMap.merge(e.getClass().getSimpleName(), 1, Integer::sum); + return hashMap; + }, + (m, m2) -> { + m.putAll(m2); + return m; + }); + assertThat(countByGuestType.get("Librarian")).isEqualTo(2); + assertThat(countByGuestType.get("Patron")).isEqualTo(3); + assertThat(guests.stream().map(LibraryGuest::getEmail).distinct().count()).isEqualTo(5); + assertThat(guests.stream().map(LibraryGuest::getName).distinct().count()).isEqualTo(5); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/BookTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/BookTest.java new file mode 100644 index 000000000..9c490cab4 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/BookTest.java @@ -0,0 +1,94 @@ +package com.codedifferently.lesson18.library; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import java.util.List; +import java.util.UUID; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class BookTest { + + private Book classUnderTest; + private Library library; + + @BeforeEach + void setUp() { + classUnderTest = + new Book( + UUID.fromString("2b7591dd-f418-4115-974e-45115b3bf39a"), + "To Kill a Mockingbird", + "978-0061120084", + List.of("Harper Lee"), + 281); + library = mock(Library.class); + when(library.getId()).thenReturn("Library 1"); + when(library.hasMediaItem(classUnderTest)).thenReturn(true); + classUnderTest.setLibrary(library); + } + + @Test + void testPatron_created() { + // Assert + assertThat(classUnderTest.getTitle()).isEqualTo("To Kill a Mockingbird"); + assertThat(classUnderTest.getIsbn()).isEqualTo("978-0061120084"); + assertThat(classUnderTest.getAuthors()).isEqualTo(List.of("Harper Lee")); + assertThat(classUnderTest.getNumberOfPages()).isEqualTo(281); + } + + @Test + void testSetLibrary_WrongLibrary() { + // Arrange + Library otherLibrary = mock(Library.class); + when(otherLibrary.hasMediaItem(classUnderTest)).thenReturn(false); + when(otherLibrary.getId()).thenReturn("Library 2"); + + // Act & Assert + assertThatThrownBy(() -> classUnderTest.setLibrary(otherLibrary)) + .isInstanceOf(WrongLibraryException.class) + .hasMessageContaining( + "Media item 2b7591dd-f418-4115-974e-45115b3bf39a is not in library Library 2"); + } + + @Test + void testIsCheckedOut_LibraryNotSet() { + // Arrange + classUnderTest.setLibrary(null); + + // Act & Assert + assertThatThrownBy(() -> classUnderTest.isCheckedOut()) + .isInstanceOf(LibraryNotSetException.class) + .hasMessageContaining("Library not set for item 2b7591dd-f418-4115-974e-45115b3bf39a"); + } + + @Test + void testIsCheckedOut() { + // Arrange + when(library.isCheckedOut(classUnderTest)).thenReturn(true); + + // Act & Assert + assertThat(classUnderTest.isCheckedOut()).isTrue(); + } + + @Test + void testIsCheckedOut_whenNotCheckedOut() { + // Arrange + when(library.isCheckedOut(classUnderTest)).thenReturn(false); + + // Act & Assert + assertThat(classUnderTest.isCheckedOut()).isFalse(); + } + + @Test + void testToString() { + // Act & Assert + assertThat(classUnderTest.toString()) + .isEqualTo( + "Book{id='2b7591dd-f418-4115-974e-45115b3bf39a', title='To Kill a Mockingbird'}"); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/LibraryTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/LibraryTest.java new file mode 100644 index 000000000..f90a3a922 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/LibraryTest.java @@ -0,0 +1,353 @@ +package com.codedifferently.lesson18.library; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +import com.codedifferently.lesson18.library.exceptions.MediaItemCheckedOutException; +import java.util.List; +import java.util.Set; +import java.util.UUID; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class LibraryTest { + private Library classUnderTest; + + @BeforeEach + void setUp() { + classUnderTest = new Library("compton-library"); + } + + @Test + void testLibrary_canAddItems() { + // Arrange + Book book1 = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Book book2 = + new Book( + UUID.randomUUID(), + "To Kill a Mockingbird", + "978-0061120084", + List.of("Harper Lee"), + 281); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + // Act + classUnderTest.addMediaItem(book1, librarian); + classUnderTest.addMediaItem(book2, librarian); + // Assert + assertThat(classUnderTest.hasMediaItem(book1)).isTrue(); + assertThat(classUnderTest.hasMediaItem(book2)).isTrue(); + } + + @Test + void testLibrary_canRemoveItems() { + // Arrange + Book book1 = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Book book2 = + new Book( + UUID.randomUUID(), + "To Kill a Mockingbird", + "978-0061120084", + List.of("Harper Lee"), + 281); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book1, librarian); + classUnderTest.addMediaItem(book2, librarian); + // Act + classUnderTest.removeMediaItem(book1, librarian); + classUnderTest.removeMediaItem(book2, librarian); + // Assert + assertThat(classUnderTest.hasMediaItem(book1)).isFalse(); + assertThat(classUnderTest.hasMediaItem(book2)).isFalse(); + } + + @Test + void testLibrary_canAddPatrons() { + // Arrange + Patron patron1 = new Patron("John Doe", "john@example.com"); + Patron patron2 = new Patron("Jane Doe", "jane@example.com"); + // Act + classUnderTest.addLibraryGuest(patron1); + classUnderTest.addLibraryGuest(patron2); + // Assert + assertThat(classUnderTest.hasLibraryGuest(patron1)).isTrue(); + assertThat(classUnderTest.hasLibraryGuest(patron2)).isTrue(); + } + + @Test + void testLibrary_canRemovePatrons() { + // Arrange + Patron patron1 = new Patron("John Doe", "john@example.com"); + Patron patron2 = new Patron("Jane Doe", "jane@example.com"); + classUnderTest.addLibraryGuest(patron1); + classUnderTest.addLibraryGuest(patron2); + // Act + classUnderTest.removeLibraryGuest(patron1); + classUnderTest.removeLibraryGuest(patron2); + // Assert + assertThat(classUnderTest.hasLibraryGuest(patron1)).isFalse(); + assertThat(classUnderTest.hasLibraryGuest(patron2)).isFalse(); + } + + @Test + void testLibrary_allowsPatronToCheckoutBook() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(patron); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(book, patron); + // Assert + assertThat(wasCheckedOut).isTrue(); + assertThat(classUnderTest.isCheckedOut(book)).isTrue(); + assertThat(patron.getCheckedOutMediaItems().contains(book)).isTrue(); + } + + @Test + void testLibrary_allowPatronToCheckInBook() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(patron); + classUnderTest.checkOutMediaItem(book, patron); + // Act + boolean wasReturned = classUnderTest.checkInMediaItem(book, patron); + // Assert + assertThat(wasReturned).isTrue(); + assertThat(classUnderTest.isCheckedOut(book)).isFalse(); + assertThat(patron.getCheckedOutMediaItems().contains(book)).isFalse(); + } + + @Test + void testLibrary_allowLibrarianToCheckOutBook() { + // Arrange + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(librarian); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(book, librarian); + // Assert + assertThat(wasCheckedOut).isTrue(); + assertThat(librarian.getCheckedOutMediaItems().contains(book)).isTrue(); + } + + @Test + void testLibrary_allowLibrarianToCheckInBook() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Librarian librarian = new Librarian("John Doe", "john@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(librarian); + classUnderTest.checkOutMediaItem(book, librarian); + // Act + boolean wasReturned = classUnderTest.checkInMediaItem(book, librarian); + // Assert + assertThat(wasReturned).isTrue(); + assertThat(classUnderTest.isCheckedOut(book)).isFalse(); + assertThat(librarian.getCheckedOutMediaItems().contains(book)).isFalse(); + } + + @Test + void testLibrary_preventsMultipleCheckouts() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(patron); + classUnderTest.checkOutMediaItem(book, patron); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(book, patron); + // Assert + assertThat(wasCheckedOut).isFalse(); + assertThat(classUnderTest.isCheckedOut(book)).isTrue(); + } + + @Test + void testLibrary_preventsRemovingPatronWithCheckedOutItems() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(patron); + classUnderTest.checkOutMediaItem(book, patron); + // Act + assertThatThrownBy(() -> classUnderTest.removeLibraryGuest(patron)) + .isInstanceOf(MediaItemCheckedOutException.class) + .hasMessage("Cannot remove guest with checked out items."); + } + + @Test + void testLibrary_preventsRemovingCheckedOutItems() { + // Arrange + Book book = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Patron patron = new Patron("Jane Doe", "jane@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(book, librarian); + classUnderTest.addLibraryGuest(patron); + classUnderTest.checkOutMediaItem(book, patron); + // Act + assertThatThrownBy(() -> classUnderTest.removeMediaItem(book, librarian)) + .isInstanceOf(MediaItemCheckedOutException.class) + .hasMessage("Cannot remove checked out item."); + } + + @Test + void testLibrary_canAddDvd() { + // Arrange + Dvd dvd = new Dvd(UUID.randomUUID(), "The Great Gatsby"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + // Act + classUnderTest.addMediaItem(dvd, librarian); + // Assert + assertThat(classUnderTest.hasMediaItem(dvd)).isTrue(); + } + + @Test + void testLibrary_canRemoveDvd() { + // Arrange + Dvd dvd = new Dvd(UUID.randomUUID(), "The Great Gatsby"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + // Act + classUnderTest.removeMediaItem(dvd, librarian); + // Assert + assertThat(classUnderTest.hasMediaItem(dvd)).isFalse(); + } + + @Test + void testLibrary_allowLibrarianToCheckOutDvd() { + // Arrange + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + Dvd dvd = new Dvd(UUID.randomUUID(), "The Great Gatsby"); + classUnderTest.addMediaItem(dvd, librarian); + classUnderTest.addLibraryGuest(librarian); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(dvd, librarian); + // Assert + assertThat(wasCheckedOut).isTrue(); + assertThat(librarian.getCheckedOutMediaItems().contains(dvd)).isTrue(); + } + + @Test + void testLibrary_allowPatronToCheckInDvd() { + // Arrange + Dvd dvd = new Dvd(UUID.randomUUID(), "The Great Gatsby"); + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + classUnderTest.addMediaItem(dvd, librarian); + classUnderTest.addLibraryGuest(patron); + classUnderTest.checkOutMediaItem(dvd, patron); + // Act + boolean wasReturned = classUnderTest.checkInMediaItem(dvd, patron); + // Assert + assertThat(wasReturned).isTrue(); + assertThat(classUnderTest.isCheckedOut(dvd)).isFalse(); + assertThat(patron.getCheckedOutMediaItems().contains(dvd)).isFalse(); + } + + @Test + void testLibrary_preventsGuestFromCheckingOutMagazine() { + // Arrange + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + Magazine magazine = new Magazine(UUID.randomUUID(), "The Great Gatsby"); + classUnderTest.addMediaItem(magazine, librarian); + classUnderTest.addLibraryGuest(librarian); + classUnderTest.addLibraryGuest(patron); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(magazine, librarian); + // Assert + assertThat(wasCheckedOut).isFalse(); + assertThat(patron.getCheckedOutMediaItems().contains(magazine)).isFalse(); + } + + @Test + void testLibrary_preventsGuestFromCheckingOutNewspaper() { + // Arrange + Patron patron = new Patron("John Doe", "john@example.com"); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + Newspaper newspaper = new Newspaper(UUID.randomUUID(), "LA Times"); + classUnderTest.addMediaItem(newspaper, librarian); + classUnderTest.addLibraryGuest(librarian); + classUnderTest.addLibraryGuest(patron); + // Act + boolean wasCheckedOut = classUnderTest.checkOutMediaItem(newspaper, librarian); + // Assert + assertThat(wasCheckedOut).isFalse(); + assertThat(patron.getCheckedOutMediaItems().contains(newspaper)).isFalse(); + } + + @Test + void testLibrary_retrievesAllPatrons() { + // Arrange + Patron patron1 = new Patron("John Doe", "john@example.com"); + Patron patron2 = new Patron("Jane Doe", "jane@example.com"); + classUnderTest.addLibraryGuest(patron1); + classUnderTest.addLibraryGuest(patron2); + + // Act + Set guests = classUnderTest.getPatrons(); + + // Assert + assertThat(classUnderTest.getPatrons().size()).isEqualTo(2); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/MediaItemBaseTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/MediaItemBaseTest.java new file mode 100644 index 000000000..543319c33 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/MediaItemBaseTest.java @@ -0,0 +1,94 @@ +package com.codedifferently.lesson18.library; + +import static org.assertj.core.api.Assertions.assertThatThrownBy; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import java.util.UUID; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class MediaItemBaseTest { + private MediaItemBase mediaItem; + private static final UUID ITEM_ID = UUID.fromString("af71ac38-7628-415f-a2cd-bcaf7e001b97"); + + class MockMediaItem extends MediaItemBase { + public MockMediaItem(UUID id, String title) { + super(id, title); + } + + @Override + public MediaType getType() { + return MediaType.MAGAZINE; + } + } + + @BeforeEach + void setUp() { + mediaItem = new MockMediaItem(ITEM_ID, "Sample Title"); + } + + @Test + void getId() { + assertEquals(ITEM_ID, mediaItem.getId()); + } + + @Test + void getTitle() { + assertEquals("Sample Title", mediaItem.getTitle()); + } + + @Test + void setLibrary_withWrongLibraryException() { + Library library = mock(Library.class); + when(library.getId()).thenReturn("compton-library"); + when(library.hasMediaItem(mediaItem)).thenReturn(false); + assertThatThrownBy(() -> mediaItem.setLibrary(library)) + .isInstanceOf(WrongLibraryException.class) + .hasMessage( + "Media item af71ac38-7628-415f-a2cd-bcaf7e001b97 is not in library compton-library"); + } + + @Test + void isCheckedOut() throws LibraryNotSetException { + Library library = mock(Library.class); + when(library.hasMediaItem(mediaItem)).thenReturn(true); + when(library.isCheckedOut(mediaItem)).thenReturn(true); + mediaItem.setLibrary(library); + assertTrue(mediaItem.isCheckedOut()); + } + + @Test + void isCheckedOut_withLibraryNotSetException() { + assertThatThrownBy(() -> mediaItem.isCheckedOut()) + .isInstanceOf(LibraryNotSetException.class) + .hasMessage("Library not set for item af71ac38-7628-415f-a2cd-bcaf7e001b97"); + } + + @Test + void canCheckOut() { + assertTrue(mediaItem.canCheckOut()); + } + + @Test + void equals() { + MediaItemBase mediaItem2 = new MockMediaItem(ITEM_ID, "Sample Title"); + assertEquals(mediaItem, mediaItem2); + } + + @Test + void hashCodeTest() { + MediaItemBase mediaItem2 = new MockMediaItem(ITEM_ID, "Sample Title"); + assertEquals(mediaItem.hashCode(), mediaItem2.hashCode()); + } + + @Test + void toStringTest() { + String expected = "MediaItem{id='af71ac38-7628-415f-a2cd-bcaf7e001b97', title='Sample Title'}"; + assertEquals(expected, mediaItem.toString()); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/PatronTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/PatronTest.java new file mode 100644 index 000000000..2561efd5b --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/library/PatronTest.java @@ -0,0 +1,93 @@ +package com.codedifferently.lesson18.library; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + +import com.codedifferently.lesson18.library.exceptions.LibraryNotSetException; +import com.codedifferently.lesson18.library.exceptions.WrongLibraryException; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.UUID; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +class PatronTest { + + private Patron classUnderTest; + private Library library; + + @BeforeEach + void setUp() { + classUnderTest = new Patron("John Doe", "johndoe@example.com"); + library = new Library("Library 1"); + library.addLibraryGuest(classUnderTest); + } + + @Test + void testPatron_created() { + // Assert + assertThat(classUnderTest.getName()).isEqualTo("John Doe"); + assertThat(classUnderTest.getEmail()).isEqualTo("johndoe@example.com"); + } + + @Test + void testSetLibrary_WrongLibrary() { + // Arrange + Library otherLibrary = new Library("Library 2"); + + // Act & Assert + assertThatThrownBy(() -> classUnderTest.setLibrary(otherLibrary)) + .isInstanceOf(WrongLibraryException.class) + .hasMessageContaining("Patron johndoe@example.com is not in library Library 2"); + } + + @Test + void testGetCheckedOutBooks_LibraryNotSet() { + // Arrange + classUnderTest.setLibrary(null); + + // Act & Assert + assertThatThrownBy(() -> classUnderTest.getCheckedOutMediaItems()) + .isInstanceOf(LibraryNotSetException.class) + .hasMessageContaining("Library not set for patron johndoe@example.com"); + } + + @Test + void testGetCheckedOutBooks() { + // Arrange + Book book1 = + new Book( + UUID.randomUUID(), + "The Great Gatsby", + "978-0743273565", + List.of("F. Scott Fitzgerald"), + 180); + Book book2 = + new Book( + UUID.randomUUID(), + "To Kill a Mockingbird", + "978-0061120084", + List.of("Harper Lee"), + 281); + Librarian librarian = new Librarian("Anthony Mays", "anthony@example.com"); + Set expectedBooks = new HashSet<>(); + expectedBooks.add(book1); + expectedBooks.add(book2); + + library.addMediaItem(book1, librarian); + library.addMediaItem(book2, librarian); + library.checkOutMediaItem(book1, classUnderTest); + library.checkOutMediaItem(book2, classUnderTest); + + // Act & Assert + assertThat(classUnderTest.getCheckedOutMediaItems()).isEqualTo(expectedBooks); + } + + @Test + void testToString() { + // Act & Assert + assertThat(classUnderTest.toString()) + .isEqualTo("Patron{id='johndoe@example.com', name='John Doe'}"); + } +} diff --git a/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/web/MediaItemsControllerTest.java b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/web/MediaItemsControllerTest.java new file mode 100644 index 000000000..fb2fd8a27 --- /dev/null +++ b/lesson_18/api/api_app/src/test/java/com/codedifferently/lesson18/web/MediaItemsControllerTest.java @@ -0,0 +1,125 @@ +package com.codedifferently.lesson18.web; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import com.codedifferently.lesson18.Lesson18; +import com.codedifferently.lesson18.library.Book; +import com.codedifferently.lesson18.library.Library; +import com.codedifferently.lesson18.library.MediaItem; +import com.codedifferently.lesson18.library.search.SearchCriteria; +import java.util.Set; +import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.http.MediaType; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.test.web.servlet.setup.MockMvcBuilders; +import org.springframework.web.context.WebApplicationContext; + +@SpringBootTest +@ContextConfiguration(classes = Lesson18.class) +class MediaItemsControllerTest { + private static MockMvc mockMvc; + @Autowired private Library library; + + @BeforeAll + static void setUp(WebApplicationContext wac) { + mockMvc = MockMvcBuilders.webAppContextSetup(wac).build(); + } + + @Test + void testController_getsAllItems() throws Exception { + mockMvc + .perform(get("/items").contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andExpect(jsonPath("$.items").isArray()) + .andExpect(jsonPath("$.items.length()").value(31)); + } + + @Test + void testController_getsAnItem() throws Exception { + mockMvc + .perform( + get("/items/31616162-3831-3832-2d34-3334352d3465") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()); + } + + @Test + void testController_returnsNotFoundOnGetItem() throws Exception { + mockMvc + .perform( + get("/items/00000000-0000-0000-0000-000000000000") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isNotFound()); + } + + @Test + void testController_reportsBadRequestOnAddItem() throws Exception { + String json = "{}"; + + mockMvc + .perform(post("/items").contentType(MediaType.APPLICATION_JSON).content(json)) + .andExpect(status().isBadRequest()) + .andExpect(jsonPath("$.errors").isArray()) + .andExpect(jsonPath("$.errors.length()").value(1)); + } + + @Test + void testController_addsItem() throws Exception { + String json = + """ + { + "item": { + "id": "e27a4e0d-9664-420d-955e-c0e295d0ce02", + "type": "BOOK", + "title": "Becoming", + "isbn": "9781524763138", + "authors": ["Michelle Obama"], + "pages": 448 + } + } + """; + + mockMvc + .perform(post("/items").contentType(MediaType.APPLICATION_JSON).content(json)) + .andExpect(status().isOk()) + .andExpect(jsonPath("$.item.id").value("e27a4e0d-9664-420d-955e-c0e295d0ce02")); + + Set items = + library.search(SearchCriteria.builder().id("e27a4e0d-9664-420d-955e-c0e295d0ce02").build()); + assertThat(items).hasSize(1); + var item = items.iterator().next(); + assertThat(item).isInstanceOf(Book.class); + assertThat(item.getTitle()).isEqualTo("Becoming"); + } + + @Test + void testController_returnsNotFoundOnDeleteItem() throws Exception { + mockMvc + .perform( + delete("/items/00000000-0000-0000-0000-000000000000") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isNotFound()); + } + + @Test + void testController_deletesItem() throws Exception { + mockMvc + .perform( + delete("/items/32623932-6566-3364-2d62-3232342d3435") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isNoContent()); + + Set items = + library.search(SearchCriteria.builder().id("32623932-6566-3364-2d62-3232342d3435").build()); + assertThat(items).hasSize(0); + } +} diff --git a/lesson_18/api/gradle/wrapper/gradle-wrapper.jar b/lesson_18/api/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..ccebba7710deaf9f98673a68957ea02138b60d0a GIT binary patch literal 61608 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 literal 0 HcmV?d00001 diff --git a/lesson_18/api/gradle/wrapper/gradle-wrapper.properties b/lesson_18/api/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..bdc9a83b1 --- /dev/null +++ b/lesson_18/api/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip +networkTimeout=10000 +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/lesson_18/api/gradlew b/lesson_18/api/gradlew new file mode 100755 index 000000000..79a61d421 --- /dev/null +++ b/lesson_18/api/gradlew @@ -0,0 +1,244 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/lesson_18/api/gradlew.bat b/lesson_18/api/gradlew.bat new file mode 100644 index 000000000..93e3f59f1 --- /dev/null +++ b/lesson_18/api/gradlew.bat @@ -0,0 +1,92 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/lesson_18/api/settings.gradle.kts b/lesson_18/api/settings.gradle.kts new file mode 100644 index 000000000..30fe58578 --- /dev/null +++ b/lesson_18/api/settings.gradle.kts @@ -0,0 +1,13 @@ +/* + * This file was generated by the Gradle 'init' task. + * + * The settings file is used to specify which projects to include in your build. + * + * Detailed information about configuring a multi-project build in Gradle can be found + * in the user manual at https://docs.gradle.org/8.0.2/userguide/multi_project_builds.html + */ + +includeBuild("../../lib/java/codedifferently-instructional") + +rootProject.name = "lesson_16" +include("api_app") diff --git a/lesson_18/webserver/package-lock.json b/lesson_18/webserver/package-lock.json new file mode 100644 index 000000000..7bedc1e86 --- /dev/null +++ b/lesson_18/webserver/package-lock.json @@ -0,0 +1,1697 @@ +{ + "name": "codedifferently-web", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "codedifferently-web", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@types/cors": "^2.8.17", + "@types/express": "^4.17.21", + "@types/node": "^20.12.5", + "cors": "^2.8.5", + "express": "^4.19.2" + }, + "devDependencies": { + "nodemon": "^3.1.0", + "ts-node-dev": "^2.0.0", + "typescript": "^5.4.4" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "dev": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.0", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.0.tgz", + "integrity": "sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" + }, + "node_modules/@types/node": { + "version": "20.12.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.5.tgz", + "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/qs": { + "version": "6.9.14", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.14.tgz", + "integrity": "sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-xevGOReSYGM7g/kUBZzPqCrR/KYAo+F0yiPc85WFTJa0MSLtyFTVTU6cJu/aV4mid7IffDIWqo69THF2o4JiEQ==", + "dev": true + }, + "node_modules/@types/strip-json-comments": { + "version": "0.0.30", + "resolved": "https://registry.npmjs.org/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz", + "integrity": "sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ==", + "dev": true + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dynamic-dedupe": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/dynamic-dedupe/-/dynamic-dedupe-0.3.0.tgz", + "integrity": "sha512-ssuANeD+z97meYOqd50e04Ze5qp4bPqo8cCkI4TRjZkzAUgIDTrXV1R8QCdINpiI+hw14+rYazvTRdQrz0/rFQ==", + "dev": true, + "dependencies": { + "xtend": "^4.0.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nodemon": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.1.0.tgz", + "integrity": "sha512-xqlktYlDMCepBJd43ZQhjWwMw2obW/JRvkrLxq5RCNcuDDX1DbcPT+qT1IlIIdf+DhnWs90JpTMe+Y5KxOchvA==", + "dev": true, + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^4", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node-dev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ts-node-dev/-/ts-node-dev-2.0.0.tgz", + "integrity": "sha512-ywMrhCfH6M75yftYvrvNarLEY+SUXtUvU8/0Z6llrHQVBx12GiFk5sStF8UdfE/yfzk9IAq7O5EEbTQsxlBI8w==", + "dev": true, + "dependencies": { + "chokidar": "^3.5.1", + "dynamic-dedupe": "^0.3.0", + "minimist": "^1.2.6", + "mkdirp": "^1.0.4", + "resolve": "^1.0.0", + "rimraf": "^2.6.1", + "source-map-support": "^0.5.12", + "tree-kill": "^1.2.2", + "ts-node": "^10.4.0", + "tsconfig": "^7.0.0" + }, + "bin": { + "ts-node-dev": "lib/bin.js", + "tsnd": "lib/bin.js" + }, + "engines": { + "node": ">=0.8.0" + }, + "peerDependencies": { + "node-notifier": "*", + "typescript": "*" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/tsconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-7.0.0.tgz", + "integrity": "sha512-vZXmzPrL+EmC4T/4rVlT2jNVMWCi/O4DIiSj3UHg1OE5kCKbk4mfrXc6dZksLgRM/TZlKnousKH9bbTazUWRRw==", + "dev": true, + "dependencies": { + "@types/strip-bom": "^3.0.0", + "@types/strip-json-comments": "0.0.30", + "strip-bom": "^3.0.0", + "strip-json-comments": "^2.0.0" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typescript": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.4.tgz", + "integrity": "sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + } + } +} diff --git a/lesson_18/webserver/package.json b/lesson_18/webserver/package.json new file mode 100644 index 000000000..12558de2d --- /dev/null +++ b/lesson_18/webserver/package.json @@ -0,0 +1,25 @@ +{ + "name": "codedifferently-web", + "version": "1.0.0", + "description": "", + "main": "server.js", + "scripts": { + "build": "npx tsc", + "start": "node dist/server.js", + "dev": "nodemon src/server.ts --quiet" + }, + "author": "", + "license": "ISC", + "devDependencies": { + "nodemon": "^3.1.0", + "ts-node-dev": "^2.0.0", + "typescript": "^5.4.4" + }, + "dependencies": { + "@types/cors": "^2.8.17", + "@types/express": "^4.17.21", + "@types/node": "^20.12.5", + "cors": "^2.8.5", + "express": "^4.19.2" + } +} diff --git a/lesson_18/webserver/public/favicon.ico b/lesson_18/webserver/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fb0a2bf6c63562a0bb7c539a39316e8b8c45df9d GIT binary patch literal 1310 zcmV+(1>yQqNk&E%1pok7MM6+kP&il$0000G0001M003(M06|PpNR0ph00Dqv+uE}1 z#hq%=-MUYO#RS}=Wt{}c$Pp`5bqnC4u}t(9!T`7#L(&f9q!+MQFMABfv@60rwyVyW0NAF zIb>#H76et9QvjAv~HcP`%iEW(=L&} z$^XlGfc;qz327DL|{yT*ur8TOiAmyyK-*m3mEQYm4m(WTTD(x^tQ8^*#iI*Ln_8%0% zedXPEc{-X|R^k}q#EXd$3Z4nWE3jJqhHrK?rIf8ONW z{bH9e3#pQjZA`^VtW-s-WgjrCv^muXf64+S*QdRAcVwz1S!anw#aV-PjG2Z6%l2@8z& z-N6QLh2!h3^hCDs&xkd)$#e|?U#p+pJPUS!TaSl56^I=}2MH}v@|Z$pl{_=e##^$x zbJVsT2NL#{`CaE|M^!O7IYda*`^7Q0=;3Yc?+`nls>L|YmFW;-dT;GTV7OBkN!nX1 z_b*TyI{0nZUTs|L^(cr@4V2mZ&f}pWgL@3!o{C_-kP9*lJT(}vBatG6&+B`gdV&4p zq5Q~vo0v;E=v6o#{@Tq+v|iDs;K0_i)K9-;Bx7#SG-L)h^m?N&qp5Q8dAYOLXIUOQ zS)zsCeGHnKH#68<>zP!3fBiIT1R=}Tl^;ynTYwMJ&wyD@TXz9JOGM~6)-2XF1NXh$ Uu2V`sKX9^p`hVT9000000AZhZWdHyG literal 0 HcmV?d00001 diff --git a/lesson_18/webserver/public/index-with-form.html b/lesson_18/webserver/public/index-with-form.html new file mode 100644 index 000000000..e83270dba --- /dev/null +++ b/lesson_18/webserver/public/index-with-form.html @@ -0,0 +1,29 @@ + + + + Web server demo + + + + +
+ + + +
+ + +
+ +
+
+ + +
+

© 2024 Web server demo

+
+ \ No newline at end of file diff --git a/lesson_18/webserver/public/index.html b/lesson_18/webserver/public/index.html new file mode 100644 index 000000000..f16e7f862 --- /dev/null +++ b/lesson_18/webserver/public/index.html @@ -0,0 +1,27 @@ + + + + Web server demo + + + + +
+ + +
+ + +
+
+
+ + +
+

© 2024 Web server demo

+
+ \ No newline at end of file diff --git a/lesson_18/webserver/public/logo.gif b/lesson_18/webserver/public/logo.gif new file mode 100644 index 0000000000000000000000000000000000000000..9309d40e36378088ebdd1dbb191a1afef9bf6a91 GIT binary patch literal 304480 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 #fn8JA+us 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

-5{de`E2;(98wg-4jfR!Pjmk$hCiT;u+yuE|7u=vQHYc zTK(D-{0e+WqK;BFhCo-ZY%;>RwsJKu803f>TZs}w_~F###$nCOav~ZXsC{MLlF2a+ zR-K$myn;(fL$W1Z%2qB&|4%FynMEM z7X+f3Q0EC}4%VY-PTdt2HX1^D3LUDYkBS+}!9R)TMV;-nFBsa6)F$O6Ru??r|E<>$ z2XD}$H?4MW5MZDoKw^dZhzF%q<)qD)Y_;yH!UM6X#>%XrWjA59h`Re7R2+xmoj6dX z^b2njLD|MMsidgxAm(z>i_%_taiH(6J?Orektg05#GffxH=b=G_-s(>#kBZPf}Z9l z#?#`}q1tWdEat>*E;3o*H4JUq`=Y|EUZO6D>G= z$Q`K1N1IE-M-#(gM$<|6-d)^m{D}-VSb3Fm@sd8`l4*>+-dc8(sob03gJ-gW`7d4y zPX0k@bbM^*neIyFM~MF@(bM5SXp3JUL@o#j+LUJ*-2*uYsnupB_?S*hw>MYuq`cU^ z%zbqJ6E%*H4hR18XG1jMu$z6uU~xw#w8VHT(==%C6N;X}(S*S_}s zQ9)&8&5QM_nTK-Z4^PQ11Hb2Xo<^ZcsT!!Czo&N&i`p3c&1(#uOpkJjC2N^#JZhec z#Pii8aaN}8^fP~p)eM_U`mlNxq&@8ubt!tJo!OPZesU1?!D;m~^G8L-M|lKs%h3J-u;MUwo^+b+*&*?qH+2d5a^iu=%spmDhM!^#azvaGTpsKVq7;LmbaNr znRs3*NE4B(EfIBL;@@uN2Nx(7_%W9j`-k-5Wvt%O2tK1f3dtz8o1B}zmmG}-_q`d1 z(%=62!ACQi;+iZ*DgNq2t`QnN(lbO{m%xnMTIXJo;W#SR$4%b&2d_poK;t-$I zu4`A{Vh{}U$TAvcjpTa_hf@pcVWcHKvX=dLC|Vt}EmnCZ1L<hmiDM@+C&X-d$V|-RR5dipc`{3$T&K}7R+>eGpVtWLpwZFX zC)89y>I%>HqMjU&Kxf4@Gz(iJ<7clbJsYeNAO(-K_qi1NRooNW<`Q^FPmn$p-n&3D zP5xH~A|zdK4nmU8YVs!Kq4JCH-paOybTJ(kl{-2{0;`j_HX3_&K8ZbKq8Up$$SVhk z)a3%3*fXL1qLvf*?ewkm{_Ig(c~hA~3<}y(h5gdP4tq$k79xjcY+irw+kU)iY^dQ> z7E1-LxMytEuLC(P1%R@6G3zn4K$eWa)>C zQy=O_Mv=A^GH#0Mca1rJbv^aXro4ZZw-f?J1Q0RWi)cs4gBfttA8r-eo-)(?a_GC_ z>We@JTLBKFd^I$m*2=3s`{pzGd)`iqsQ_@q2E5w84J;_mO~*C0m`?J^qA z2ZMRbRX#dqm6uBMM6V^+6?J0X3QDhs+u3<8} zKl^OGpUZ6bNq)nO*2Q7U&XqRTm1zDEnvfq1kgl{8mmCGbnB5yH-L=o?2B_$H8K`vw z4;*lLzA2ZQaR0blO?ZrEn>D|>FSc!7DUyjby!rBrp`W7{pP0X<<%c_g_dwe%ISXi5 zD~H+ROPuT1M`o$h-6Mjyb`wy19hbk#KcbJ{kBWF9UU1Coe)G$0buB(|$LYrfJEwg! z!@X$cF7By-K9$1<)0<^0S3xGK<<$R;-OE0Hi*q{4^|p>djwRhqP5;PEQ5NH&S{e*=mf&NX2|TZ^ zkbxIdaY`{@`?)%sEwy{H5NZ1IypjKY&V&pEx5q`Tu=xs)=l9<2dRd87V|?7U2(t#` z{vl5c;q$7SUj%f*%258%UqjyQfMOQ?xlV${M4?k1Pr1x6xGl!Dc5uHg1(@%x<9zwi zP{hz12eKmX==Vrs<*j&D5Wyc{Lec27`sL!ILfIg7mdw2PAV;SN#Qz|3gd#_N1smbP zL{Z)te=`~d)PHz4&n1XPtWNZ|N0;QaydC`xM^vGLFnP03Wi<4UBK+SaJ~=S}!pWwf z$JzYCQNtYbpZR5XT^5I!rz&|7f!a!p7+UcFK%QXm;xTxECbki(^cy7jMG%sNhcc0T zYtUduh>By-!@n%9QocbIB4RwK1gV-QJeh9EOOn2NC~+F6STr+diVwOiQ%pv0$+?-T&&S3h zX*`Kh*#YpDUET!6XlQMCCO*s)#cdb>Yf`)=MsjI#v}PnHHJ!v2=y}?BC_VE4#Dnw? zkXnmxX&7q3f{2()!LnQ^t35Mh!7_gR^L@dqsnMjwcS>+>QcCb92*VMVje`8Kg7K3e zNG^DS8_=}$ICCLe8t*TwoED)Gi4C%Ryqh6op;Sx=*p@ec%Ifat%vWG3u7*aRvfE#g z2hp#Hnzq{OiBm{1)U11s6&qQG9N9q@+36b>AkPh_N)&`49-vTd?)}shAU(cu$u}-O zjS-zgWjxW#vo@(Y31Vai_QfC3rX!-v<)k1te*?A5uni; zb3og6oh>4y(?bI7h)3ncTI1rE0W)%5Ql4D~NM&5ypQ1A@=)TI|;*xV#L`q0I(^H+y zD;B$D=sX9>T%kdoroH_ktuT_CO3v*PcMFRPq#VALk^I%z^f)xN3JFpUO)V$pC2i!L zaRqrIT>tE4i%bN}i4aspi(&AKOvz5SLrzF$aC{7jpBI!hsTGjy;*k(x&jGh4RF`G6 zL>Y*~#hz0hDE7w+T~7w>X03v(XOO2T;Y0}H2(OM~xdnujUWhx6?D79)E_1Ch(mG>L z$}2Glfj>Mcsg20Pk>L>?*&9EBh8MK069EMiRRI8!6I;uQuT9hkQvm4Zp9&Lnt5Y#l z4c7Vp$%8;u)xz0#YJ>r(vAwQJ5~!*qQ^&4b4DP&9HZTE%*p$zZQ+it@!$ynjmI+4K zTF#c*o}OAxBm|xa3>4hSYALW+27;^wetiq89AU?=+%7LjwQzEK)`AT1gd5ibn7#U` z4Nz!e)g^Ab>H8GjK}18ZO;ex#O-2&Ux(aa6L%5OK7}>+Jp{3v1U5>e4KeyV{vk@^5 zDy@#F35ZEu@W`j%v8hqR-@bpeH0B~E_uL#b9omsKN$_( zf?vQGZ9CZwZhB)|ReK)4j%|NM6X&v262#NR*Zabo*j90+85{R+*B6ymfqQHzInA>H5Xk1B|FQ)zkpz5sQqqU* zxphAu)6$jv1iEm*u#RI z*n#8-@HuVrv198$Pk;g61fB*ue;18*_VS`C;YHb92<^P@gHxD?!M0(bsf+gNq;mVj z!GxAU7OSU!-?b%jbf@E6z2DKilXRvD4OWjF>BBzRJ)j*`9WEzPzC`QT^XGtETJ$Nsk~*x%QBK6g=A)>FlMt- zRdCjqfa-rHFGiO~txRMH5*eWz9Z$n%A9fR;7MZgZX89D+if<6#>GzmO!FyL|aJA27 zBHSbUMx&AayoZ8L?k-_0mtAfTQ2h0Z=i?6y91nvh@c5PlMJ zV36a{#9_tg>)vMW+&@6F4KD=W=V=`h`grrPp@6s4fb}pSv3N02N1oZ}qm>Pr#!2*( zEcB)ibv9W*NxU=awuDV;MEd(z{eRdayF-4d!TqP{z81piZ2(q6-tW7x!igfMccXlV zg1>Z;m7K8|Z)lA0vtZJITwwvK8UcSWL#-AO6gV?Wn3%#ssqJ7F!p>a}V7B*zrt4_n zDST-aQf(UY3TLW>7bG^mUge0&R>{|?NXT1179F)mB4PF`Y5=mBF63_d3>KL8e-lnuTA@e;VIbLetfEgUohc?0m z%P0{`YwXlWPlUUwhhgrPqJy1EU89~DqLGnIrN%ThqA--y;zXE~;Y%6n+oLZzpcCO< z=^CwXMpJ6pD}AKS*L5@oyTLfSz*#Av<4n{x4D-^npAox6wLhMUGQHxFMdVAx+V#w! zwAYDLJ>K!9yc&d}wO%Bl%T`l+ScMxaMTNhf%@cXaAF6gRK)O4|fttb-oLZ&dJ-?B? z;kPu6r1?Om*1|G~dQ>$9vR8G8FrlUN$DT8jSPuQ*NFTFIF;CclIn`|+IsXm`JN0T>HgGn(aRjORH7N5 zs&50yJ+w|Yn>*d$PgCV1{~<{CY1C}Gf6fKHU8Yep1Un!BEQ5HG43N@98$7#paU(la zWiL?y5@El$gm$!@?|fYe_To2qcnZ1UGfJ~ST}3g}5@y+P^Yspq-PBJC6zZA}&~r|G8M>2vehlIJ@`tZ}+~*5j8f~vS8#19+7QgF_ zIK0zV;gpq;6VBf@m89Z6p4={{)vYXx%a z?LzRF{Wmq)Ju%sRDaJz@SyEESk#rjHUjsb6)hP|Lb>rfsoV=jJxTEr5KZ*N0)M!-m z_3rg>7!QVnhi0$w)5)@l02BR>eqx{0`ZwFxyNUY;Hl@I=a5xWfeTfxDH2rzQY5U$f zt%%&d#`@3I*<-ylxFG(*N%=om@W8%C>uUPkuO;%YW0})vhm#5X<;mfb#+%=qKA!f+ zUdDf+^D6yJGC0X;2D1Kx#hM7v;!np^Imh$gnPS0ieCLyB?{J47*_fTImUAJ;V}Ea0 z(g3pokM*?I?+Kz#`1+Tg|6q0lfPU0kFT~=?^Y7xRl~4W;S8pBGbl|sbZ==RWhcpfl z80qK~Cm5Qo0*Kx>P_VEgpXNeIM`ryw899xr5`o9ozM} zuJf!i?MnFb{y943Aw+B(9NIK@0;C$@yR3iPKs7$sHfRbx`}67aDrypcf}D6`2fTBd zaXkcu{;!5Mj3Wl48^)Zdo16@#V~_d|?*G3T=b;ERLaf{vO)KMQ9n-bO@jIEZxbQ*U zwDg1jK+Z$TD>N3dG&I6r&`^x94MhoNgXI&>3LjJ8+FD~6p<*sb_cKB0(U;;5g-#eS^)9h}^6Z{KYgc#_NT*<`FUf^7 zifgtUl@~x+85e@}kFZp_5KDH__cG5iSyyYVslTHcxkft19rk3}6~+Vbbw>6su z0{(9d?gEqpI05wkpBOxxE-pUizuU<183}23|J9rfI2O*Hm3J3|qvP0RBj6Ew)W8G7}@#`TpoK%;``o@d2}_2b;Fa{bjdwa^GRJvJu?ey5u>xKpSD6ambdpY z><7om1Br8AK7EThI{P$saUFUU#dLEG{QXCNjlvQI2x`F**C-}XLs)B&Ext`CsyH{= ziJ56EiZU#L!D?pMEqqp)0iG55wK=JX3nFar^4VNb7-L4B-o0oZT}m2KNll?Ast!t1 z3QTUbh1hqbv1O5FV2xitiWjOyn&iW*niKVdodUfvD_nc1qHxPInsZtgCNY*Qb z1I>jU%*nAck@4gZ3l>ANuj{_#&*W77M$QiBsy~xH`|YQdnb&?Lar@WkciZvK9f#<{ zt$qF9gEVJscd0xfoytNu2E=Zi0-+FIhCQf%D!KJQypnAzED1Nr#>pB8-;UHza!8JX z9~V834y_rswr1EPFqizEHFr-=kkDg6O{&jbKj92O{5gJ%m}ey6h~a34Kkf_95pBw) z)Cyth9|q$WZw*`Fw#n*Eha2g?ZEvHh$ULaSO@-@j{51^&mvfdh8*4-~#{Asb=kA4iY#leG=b z^@hmGvaYPI;Ira?-dvGIcg^h|M18CpVVj7Zo;@t-&0gN%<%Kf;=J@;X765cdvDI4& zd6g$iIeaXlit!;7AZF4_V3G^?19JLQAv6|AL8;IqJv5nD?m+QWx=IE1Tq!>4(#@y= z`7}I7vUh7dv3`O#4JlLl%r1GpKb8G0YajUMv_=j-3ftx_khxI(6n-%wSZiiJAB6atbCGo0DsHZ#@r zxbzoa8wQ7dpEROdZqqpRg?`63aY;u~-P5)L(78_<*;uQ%=t zadO)cHLq+}*~iF!`Y~m84CUi0Jw#HTs0ei%h^dJAqDV-DwSNppXvEt`TaORd9iQm}(&$9Mb~!(?8kn zMHm-M)5$V;-+lCSo`2GKlQA*ey}sa5?$)lR($Q@J?wU_^pU7;{6uj z@rLk;F=3bdOK^CKZXoAO?rT<(e!NsI=+Sij3qLUG^v%1}i74n9&8k_4Q`H8TuN3Cc5Z|+C^*u+f89!_$z{5@=+gSP&u!Aol%ei|8^2PMEO(IU%7 z@O~lf6Al~BgS7374K==G-+afIVsj?k91w3+!1sxu)Gp5XQ-Ux4a6#5(xhMxitOA>Z zQQc4yGM$YbO8wLHH_A?Kimm7^buQ?)tUecRM$muzg{8gcayYdKMQHprmb&~JL|4J~ zmfxii`o5y<9>r#`#c0svnMkdDaJ5$+FaFO~1u)TJ@$2wJtE_yAE_oegX=oSn4YLZE zXIqtmE4K)CYB(4g28c0!uy~JdjM?RV(JGXiIrG)lMN~<;VckQ{6K+uU4O>m`E%+$Bd#-j zI1yTxQx%K;1b74qPzy5A24xZUl(^7k9HYb;t%E}|2^2;{+N;0j*2}6 zLyt2g6Ectw-7Jm8IihZFYJY9g7cAHA-0A8*VwdFoJ zT&e!T=u#a-jbe66eVp$Lhs7{>h|@*;>W%4vXjB~?J}sp;y5Bq|d+Cnq6(j3#%uO<8 zvdAUQCuC#6b}};g9zQuJIRM}KRfkb=YawQ4o*)0dkUAZ{SDp7nnZv0XwSQ)7J%277 zZlZ2}{46cT)6s>=1O`57Wy5c-{pQ*qy{4W^TN`0%M(F>0&PE(#1&7zcL=_^Z1(zyH z_xL})9Lp}$ zj##h5JG0$y&pC?iJ06XQ^&rYX$UEvuh{7}g(xE%dDU<~^>ZR(#|1l71xMKSIe_>P}Vv^x%7lOkNPT5t}KZ_plvv+1Coy9pD`gD}5*c z)?8!6>Gp&cIHLA=6}E8m#Sm&*E75)bekngaPIAjze#X~uzZt>Sf(cYmlFO_ijnk7V zwN%$HFW<;i#r{*oR&#%%^Nm+CNH$;?X@RG*j^l+&B1ZDjQN#}wDJ5%L{gevtsTGH; z{rlUBGyXEK39F?L0DH!bu{g1Y@|Ltb8(6R)cqNat+PK?MsGQ{)2Rvt@`8_R;N(Gz+ zk(E~UH&Vu3otB9g-{Dd<0F!e1J72A+(1+V0JK&-m1tEeYygeYNa!0fTLZ>ofmF{&> zu4Z}jzUNqkblN!$IqQ4ygHa^jN#LfaX5YoFs?T4_BWE$LA=UFDCi8FM`oBj1&da^% zCsPk1QetRGWZeCiP6VBm za~)Au{b~8Ti)3H-LhOhj@GuXHRF&^?^ub>t}wY0Fq$t zyPCTPCMYNo=bV5G`g4zT#sH!>4Yq5zeWQ~WSX1hLZ&~@-chX=Yl9T4(V1!oL<4e$hnQkzy^YVx%?bioABc zkzkWTkQscJ8}L*%`vEo1&{ZD}?M7mzUrS}_iWVfQqTC;=s(|^I2?ejgbkkuiuixb3 ze8j-S+}l7VW$F+Zg~%3IDI@T5-XOF>c#`g|%>y&~ieOZvRQUs1+F__^a9K2rj0%pl6m@ z7-hLkC`u7)N(UKi0}Hpku%Rc;-UQy#M}3L_Q^JgP^>w?061_6~-R4(s}KERz`eJqb_=-W-(FI)^IJ z1jID?kyNG_vOSG`3dXz8XkUhp>n42^0&NJ}Ak$Lsb7`p`k#O7)Gs4o^zlUY11oH4m zAL&AbF6{*7CWBX6hL6}A zplX8V3P$^`I6e&S?1zx4M3E(C7X+o%hrUQ(fzr7ub6muYrdSPfslYe&bZCJXS6~QM zS7n9Vff5txYFbG1+$<|L^lMR3gfaD zT_n`Q-eT|Y`5RG@g+X^c|1|tx#J&}GR3zwGx(qvSwo{NT8Wubcw>al`3O@^?EWu}B zBo3tw)O?UJJj42(Q(bY<4&jt^p`WIk`20Z`vE(W-i8P_i0X7zv`Ggk=peSr`RSDfx zG!_dI-7J|=%$gn1j7B&c@#>pM1MZJdzJQp7xt6667S&*jiQtgYO4ua zoO1xgb*sg;L$!!0$U+tt7v`5M+Q1Siof?zPUW(%fsM1QLkE2|OEQ?*2`7KmO#6Y8f0Y#m0iWoUx8s1Hlud()YP#+L6YOub zFR}`o7tMW4iX0=sVNdZ!RRQBB5W6MfY3cg&Y;f~&23=5YKLSLp20pV(Yrp}UUuzd< z6`)*gQHc$mS3VowMO=%7M^$ytXzyV5Kv6(kZen#NvYt5yZ*ei#gsN7o2v}VixsS># za>Zkjf;PYQ33F`#=eXV#*_|RR6?uab8tS?(H49MQ>8_k?ziSr5n{e!Y$ z;~J!O#JPwa{Ok)@KgXVOv)Q<_#Z0EL>@rr3i5Mc%YRA-;0&C(q!{_Y0ZH+%`t+C8u zM7E&Mvg47l=`ld|25Xw?_n!&_VjAkgoZI4@%VSZkJF1W=X|Q!rbLw`R2M^S#Ax~ea zMbEiC&a%BtJ(jM)IzOH4DXt-Iy5${FYsTGDuo`TasDB#W5ss~oT_e=MRrDhgJWV@W ztHJF#-2;*B@G@ZQ5%mYA#!MxnQHG9u1n9GR(3*8wU1G=78)ocaO`QznL!@nUb$0}| z`&V`6KQAC$y>#0Y9Cq>EBbs>c%C3Q;nJu_6lOjQ!cop*j)9~S5EKs5$P!?Nw z&2x7mi&9SlG6A}@m5hED5)L>M|LFkFzsW!8~5WUyVy(=-j4-;j3 zkQF1o9ih|Y?8v?X^&b3jTq>e18a7Z5s}}kMt__Z@hxIO2_x~E}Uvr~pjxB)8fV3%a zAX!{ldSBWZWfY)oWtGsDX0V9%!%OiGCCErfO7&;EB+{a5=B;r+kf;5}mY*g1Rp%7I1d0oc3-6NO}9 zOdO>$HA?(5bg))G7j(b*4jkh(mcZ1W<=^h>PhZV;D_ER)KkYa;bn|1xCV8;za45fi zV60j4rvb{Ow+l7kC4Z~aKVTGg!po(-XIvx7N{G>cjin;1ge3eHHY{aols4L0mkylO zAmKqxsC}WT_yu)NILjD$=#n5mnRR2h)UKuy2msPwE6 z|Al+=E26VI)zga%#VsZjKbQx9qk=?({025}fwglv9<_;ZTZWuLM0R@?1Cm;_m;6X$ zKD=exrgkY82Mi`zR+%8ada_(ZJ4{py6~Ji$SOSDM)w-sczlcVRi`Yoqo%CQJ8LJg$ z)Ic`cs3$whPiplB+zaHx6GKc*NRc+%GThL~Y2*C56NAM7W@(OVUNJy_7jQ=$_2|gb z1M^vh@#zAJ)xktfvBXcKk4Q(C^3zf_({ZQ#TJ%j@I0*K3-*8$0HUb*-Nc zzWIMKCt*K^f=d+3uBFZcSX{>OB^o9^twZL$CX3eJ9RzK}JlkxC&Fgw*anElqC2i2a zwmvIt)zE%=Injncx%H01CSG+d^!yg2f%;5F*3G2__ELw`mToJ^e$srjEJy~0_RG3( zCN2F1Q3`_1Eq5d)$HE(Sil=w@0%wm)#udn*x6Kw;norg1cGh+_@0$3@>g@rK_G;6F zxHUiVT6q|6Ksct2zHown?<%VGOiAqS-u3#Q1NL5w@9^X^(B(J3{I_3<%pgf&`?&{N z*6fx3N5EkLw#|pm53WQ^KRD&v4Yz=h>=1?Ysp6;^Lsn`J*{jl zN41G|WUk~Z0ciT4(IxWC8az?cId;ctt zdRd{(7GLeOj?eQpj48Uuv~IyP(_hn2=9_h32cscOmD#3HyxA!t9 zm5hhXJ(S&fCmo3W#r)$GnWNav(*X6oFL9bzoZo)^gCH7CzHXePOn>X;J2_`1-tWN? zKF2~6&yF`v^AO*+x{v*69Ft;CE(TGo_1{Zyr>*hCG!5$$x!XO*S<40#51#)}Yyp51 zel!5^S~kv#<%nr;z|P-4a!6%TYY%NCNH=$_RuuK_8tqNfKgr06HLwiY0LunEnMajS z4%~jd*=YEgm1v<9>J^#n)b|V=kR~q4pnsI6t}? zRDT{G^Sprr)FZv(`_`Y#CjK%8@ZE&%3Xp$k&;xc0|H*)T!4z~AQGfF2^k*#W=K*V* zy$rEe!HrY$wddEf$CX@#&vB=+pPYbwC8sPayCBNIUoyGBQZYxc1IEVNo)%9$+;eq@ zR%+)j*U9&bt3Ur9t*0L$ojr}FRQd2{_VoTp0L$Vj`4^V|cESEvvE3Pnyz94X|386j z#9gA#9`oOP5p;YOdrn4PenEaV9L|)5y$fV9IqY!RPSj_~^32wLWNq@)!Pn6C=`Y{DokqhG ze_WsUF>D38;YT~pido=L< zMQt?K_b`nk?fzk7npLcg>QQM`Cha4&B8n6{ZZ1qFfOb{sZd@1P_bZq1g&kAAsNu8Z znZaoi1{HF*U9e~3Y-vU;RY!D7P3$|3T#Py2)IN8k%WaO=$ZFZq0}{60VR2xqj zA??F5-l*qK-%{_Pin-2a>%)93#J);ABYW@MIqIU2N*-P)vWk_ zq{^&Yt>tNT_T{PB<45hTofI?g9Bj3P*K<}Fwgyx99uurA6D-Q**oVBNJpN&_SU;Cs zXa4HybhAI^>M2W7^b;pN8;4!?-#)6mE+5KE*h?TAKLxT>AAT~t?PQ^P4PLV>`qL2z;#j@CIVaYl>HU_9>Z z;n-NVaD^9M631!9ZwJ59=OwU$93vCmC{;@$$VZJ>!O0p1`)N}D_v(QLKm`~Fmi+I- zfzb)kj{g6p_5a@yE&M;LhcIkKVOezzI~oA|A5rlCtRC)YRDJyegF`(v|FwFUoB&K! z*M)stT>39%_WDNS?AG?qZV_;de~0Y={rTj-M8T_jmsi&}p#Zj70MWO@J7xBrDEP%M zs^plmX;uY$A`Z1&6&;KIm~CcHpGYCI4>oX+0rQOKie9Q?xi#u>A9JZ8qIRCauw-YjuYU;Hjz@FQpGmd^yaFxfNEU5T7|~T}?WsH~7LL`6vu*c*FlEDTZGDn!tg@i`<$H=17a- zV0%K~eK_t@=K?E=#9$E?-X!AJ1L9=+_E0N#QoQ1~hi->kahIWz>`{IGSGSUl^k1fO44*b~}+;cPQRQ++4P<8MFjy^l({m*7AL?17I1As_2 zVe{t{GNA#0a-QYN(hk#fF&^X>W$B$my{GK$YWcPx)M=En*xMNE(!Hp z>fP6T@hzCn{KT)=nU^wBZSNkh#(cw4#QOkpud0-%H?fT=CEvbzw>Yc(0rXS#n;!)}$6Gne#9$@X+o$dI#q2!cL_ zYrcYJSB9N!Xy>DdcZsSd^V82o*Qvcp1pMDHr1$QpJ>IfHJ5Mss&=DjBBgoiqW39#k z%7Ph!Voi;4_R>TRT~-L%%|_Aemm*+n!Ol{$!veV$(KFhvQxC9z3>J(|zlN;~vu3 z)#ASl5dv>xRUOOn1v7Z*#m);;NK^-_d?%<4=2PnX=36tjIRkA^Qvcq%Z+a=2G(XSM z^W-((h;q6iVKqY%{;sJsS%?NTap{%wGV~7$?(1TY6)TGAQ+R&u$qF`M-D+2%ijD1k zYH=#~sBSu?H3YKqhnL)TY`zg7Xd%EME#4z^(@^JllG4>O;RUBMH7aqjC3}%Vcvw|y z%Zb0e)v8V|jgjN@*P@7&K^y?ag@uip7J^^dXbUJxpf9CAO@4eKHO}*XvvD%j&l|W! zjc+`b6f!4XOvrG?A+r%(Y-2HC?Vk5#Fi_g`g_sIm3x0&#t1!$z&g%E_Q4b-;MOFP= zt+94y1TPJ87`=m2wbQ+J0_?u)PhEa}H}6#G;ETfhBK{)c&o{waheKYAj?q>QO+L)^ z%O_LQ_w2i$II)rNNUOTcs=Cqa*;%i-24B+jg*-f226j_FYZ>Xoqme!PQIfNSw7!>E z;&mqMS#S}L_9R-k%=({|B z&y{n%RijJe-03TNEXfS@m}ml zPn*TMzOgl@AM}0DHF!)20b|c(8ZkEbIQ_Cf%Aq=Bw`M2-aXkK9A<=)Li-ugd(e^fv zT*cmOTyZ|jFmMt;6sR~IowsDF(vSqY6NV}K?Ev^!h z38ATLHaAS#A~A{l*#5OyLvu|VZSdQDW&0zq0jaEa%=Ub3q>!?-+KN$m>sVC{>0 z0M@oyd*2t2Gyy`tIrVoB6V#d-$dq+z?yr2Tu3ckz3^ zNj8OU;EN`fK=(2c@#8~Q#a1o!Pak0Y{%nJkg31frtzW;x-Xm@?CUY-ii%KL#469@Y zUJ!_s`4hu$JIRnG-VkoH&Ex6Cu*LV2UIAyYuTSY^Rt%?pEq4C<(x}_{_0?XRp47<* zK?@7Cg89NUeH-NY+BKwF&do;I2_nxYxrqIDU^tDX5g5 z;cIe3^z6Nq6dkS>-5JHWixJ%75@fTA5KT9v2u9rSLO2WKv#0lJ?&Fiik3f6`;Ik57 z=N_51gnKDgy+R?d)i$vB3d9=}c>jl2)m5Nm=50v*`-kUCAr~3ENbo)6GT|1%{kM8@ zTi&h|_MRmG|4`Q;Ydb|$2KD|&Jm$z?+MkjoNcL?csnIsItffcJ9MW9ZNA4h)^;$>z z0Y@VRh5_MsSP1OpCKE#fbSp@LMZ=&(AqW+KAOhrs3>ih?OB+Row}lMuhD6gpFb0Rl zXYzJMcn0ceb4lp(-}4GXu*RJEK7+sZhohU{>zSxPC{>~@e2l#MUz~}Dr#^+Sx+0zE zW9|?0DQyA??E;&z0Ujz5-W8Y~Ttq;H^J8j|63VYS(Jvx1cC;;Wd^qyW_ej>wfN(?< zJJzMZE=t4DrdS?~daWpjA6rZmEl7PU8#71FK5fmvND_3QXF$chrV<_EfsEajbhAb_ z(Z|GHDd{Lb5e$lH)-hkcCPBdBLILp)uH!M5i6#*U!NeEtA_T0c*f~3JXhrP3tk{Xn zq&UgY>(`0kEMOXaVi?jUbJ%{kEb)}hxtW`RZ92JoUj2ijM;XdmSQRY55$*Ig?8XpLTM^F6JI^NoBIO6(NtE4rN}{_- z3p2uJ7>V7zj`S|_;)pO%mxBB%iIW3H6j>(n@Hj_i@Cd9B3ao$xka*A8!TE;Kp(qaw zai+U9q_~Cm@;b%kJQjI#t8*inT732j9h7>zoQg)i{G;e!0!Ygtj=k6hb=p}PWu+-e ziDKXo3*z*us1OE;bSE1<-Mb^@QNn}wF_D*??3)3)#PJ@L!EFmbKZaaCRXiy`3UM-p z;7^n+nzs0A{K_I- zAiN<1J?)s;8)mi@^zcReLk{8Wkc=5$wVOjl8vOX>LYG~G++4W%h*Z`-cWlv-_+N*> zJ!045tbCc%%a3tS+399Sz=0Nn*#F@VnZg{Q&P?8nr_rRfnAf!2%m5yF0O zfTXquHtJ5yol<-r72LZ*hyoA{tPl#R7IG_QlEX7O#N&c_Xy{hqdMH`eGfI{YABuF6 zr&0tDO~4LPayc0WQk%YKyKky30}XuB!bgEAx)q0&`Mg2JKVOGDVyv{`E%eJ zbtt%!3T3rS?EYx<0ly-zEw0#5X76b!iu&evf!FlK zckhwhJI0p5K)u-t0ox=`+X1?cw(vVWBz-N_oBV}ek9b{+ZC2iXTCLp}^-G1+HMQ#X z_6w30RbHt+M^oeyKnUujF~c1sIC%XywiKDwSFXNCdLF$UhQP=2!JeDI-qRnC-0e7cUr43Bz^jpNlCW z&!e?LrU`dcIs~QOukwO#w$jVoZ=CKdv3&m;`gn#1+%ncw*8!0k>oW7XGnB{|Cv(>J zy%q>!Qc<@vv~EsN=R+9a5DpbfQSC)U^?D;(zKV_5-;d&}YN3rvBqcp8Gq*imn=jg3 z(Y7&6>K7df(sbY43;K9+hklm|z@jUQyp*n$@MQ&r-;lGx@-munuhy!Hk=?)+J9l|f z`su+i;$C?+=snrHyQ_8dw6(wx%CGqKl6nKLNCn?&QHFD0lWPsa=%KDmk0%FMu%`IR zvi_lN$MAMTV@gtmV;A7%}4RgZBg2`urE zaWL0*s^;f?X%AP+UdnD!yL6}?MXDht_AI?CbD*l+pl$J&fA#Pv2yd+|zYp)Nf_y7K zlxvKHSPn?4CF+dWVjwJ)$r%C&M~@5dOB|@&vo$4llH^ZS5r6<41Oy6z&2nA)IQ5{KugT`O|7G2AzPSv9vu`w216P z$S0C8S(3hV+e{vJ3%d_HE+gqKlXo+}OlFp9SjAg!ZpExoKL!x3-P9gpl&J%EbNs&d zrt04(bu@CC*n9yLr;SG7)#Xk%keHFw0?F1hD$N*B4FG7sjEjH6)^r5x`Xiuy;zgep z$D>9X=i13!n&~AeOcx2`eovn(@KbD7HyrB4;K=p6(6*2-2~CVtbiuuU&KUvBvd#k zOY~xbgz5uZ%rdF$z^mV-aT9X_6mdm`W#Yx2!t0*ta7$UlfD)-`K{wSTLwSrQ7?9V* z=sI1+veqa7(P+4P8H6B~=W&>|2Axhj#Eiy-YW3M#%O!0oZidgPcCWKd(yQJ(?diD z_+b_*q^t6gpQUO)`}qRt&pvDZ+eNYNX=*{9{o5t1(=kv0lWc5KqY0f7x3o$Yf1~O% zIRrv1w~7zc?7G*OH@04Ghzx+Yc?xHjm9`Ug{acXQgiAZO19*P)+N+KxZ+YFC*>@D2 zMq|x44*ZLg)=7fUIa-GHtedT9nca(A3W?|p(mzxDi@RDUM_AV5qQHev#BqKPAzgzW zL-C%($)4=o+Eb>QUXlG2cgEB$n$4)KH=p)j^?ZT`&9Yg{vB8Gt^6GrGd=Y8uz3zh5z z^`nBo;~!*e`1uRPuv6Wan;;fhg0}Ek4gCk|}JVD7m{t{Vn-+z`MuKkCjhJls}wGP~0TlFPDT+o1N?($bqSA zNz?-B*_|&OMP<`4`=%ey2EJW%|NBDq_#k{eSx&a3^7W;|XMCp*m%>=n5(*Im$w&7a zkCwS1elN90d%mM@<5xd!PqSX1c0eATo*d+#NIoRp{(C)tx_Z8`OVkY!hJlyKZ`2;% z@VBl=uAY-x{4^ikrxc9&^Y7-jJL8A6#Ns8w7Kd8WgkLOmzrvrq**5E(0fX`G^Z~$d zO}H51F0hT2VuYjbM8PTH{|Rg{vU&x2sdjcLZ0MX+Ae>HH7#*G7SkF+AF8f|KQ&Y30 zDIJb-LOb=P2s|EsjHc|FxSdSv6%ar>FVNp5w)9OjtEn34o2jc3d;1dovvXx=GM2AJ z=-Cuz=u|59<|c*g@4s(X0FC2mwtER$srTT`$_XL;5qGPH+{5W$TntdeDU|?QtPCKN zzvI+U5fr9`i0--W9;$|$p?z+6n=8xM}K&1utvW79w{(CdQ$D9VWq4lUPwstk@W$F>X54?y8sPJ53F^gzWSR zCY%#gDPGIWJEn6R2UTVmljo^*WMafEsF;^AIT|z!_x@6w%>9y$wwp=ohD|MZ4E*^K zj`-=BjEH~=f2w9W7To9}OMd3P|D-{_FJecTq|hh8O+7)t7gi}A8gZWHulQ8ufo&^; z+6OaNAn-jta@8@FBxvl3=z0kQr0NmYin1US5ayhU)F~8XfcMQtabdVd0w$PMa3JPu zJ5{}rhU-`l$^D8Q@jEEGs)P(-l$NK28TN?~+6Sg-3iz?ZB7_oe#+gmc+iv(Ct{kdc zp0==k&Y-A7eYPHyS`0__FLM+i3b9hev>aY%#9=vXmiB5Hl83N|ncEIE#Dp9Ut!o{}yMg&L4 zV&+j7#~yZ?*71bp(hKt7?e(DIl+;jw?duB-Dhm;^pk$Wx@u6+5m~W)}oSByKBSkM9 zgz*dfJE_j2WZcNw7|7vpt2!#4i^>yC*+0YpP$)L2u<(4bnk_ea=*0+^CWU2D36^pi zUe-y9#6chC4vdr+b|82wDJ#=naf-6Pt9nSoEb+y#Q7gHzx>?PTtggIc5rdi3FK!a^ z^WD^wM=#IqJsMy9v^&_SqArkmw6c^*2_k6yHpy&e=Sf63^!pz4pbt9VAx^q22zZ)% z>wLO!agP$@8uJS?N+87#XXM0}NeNbjQk*$*l0GJJ8;A0UhMDwWof@kowP&41(f(cf z{B0ps5UZ=?2gd1is^e2?d{xt>wX^xxRgSK%*fw37&E;1v)Fb>PZl8M14>>!=tN}M)TE0qEBspn}GYAoiqKgi)TQCfEWCv zsUm1d;@5y4B|RD0qaleB{K-h{`NB=$GGQ_$Wom_}b+U>OiBjtmf{ZuTG<#u~0euY2 z0feJ1NE+lH!qF7+6)O@hKQ;!$vGnoB5(ODB=;BIg$h&N`S*M#*mcPf}2Jp+D0B|9s zmq`}<4r;}OhztUFjjmYKAYhoj;GUK`ThbqGWzS7Y$w~#*j9mQfY5V?8wEHVF;O9rr zRz_4Kx3E~N`%mZ~qX%E@X-;z$sRfc)jVGU36wGnnO1@WD2i(=c7JBK4QpRumDPz$9 zMj3TpN?Mh0Pqtu~Y%2Z}$IAyGsy|#rE$y1Gj_0NAz(6+3pNSrId_EyYtaROnTFQO8 z`6s;EJo_^sQio0dsQ%*{Vc-5PAdNv2MT9()lOklfiS(GS+GJ_ez~n+fj|v?=#&4qY zM|Gk2{U?VY`PH!m+>b~6d7o8@9q@_p7ZK25PO4HX2#w3fGP&SeOXiyj-Hn@ZjyHcC zIawu#OZ`SFx{)J4@Y@Fc2Ikn;O5~MSU7^DQlPZP*eejm-kZ4Mx2sEejOMRZTo^O}$ zoy_~qd7qRTjsDOq0D}dm29|pMMX7`Nd7R$g%=R-90>)iJzWV9vR-3sSLa2g$22EG0 zDH}NCI3dsyq2YI`q4C^~Ie@K2&cmB>&s4UhXmHrQYWeM|=F(b1(Ww42IQ zyUCGHj65!$RLpp4*g0L(ZmjohzKCGCpDVm$p{0(FlkO?`(|b*ZR-X)-*f2j{Ie)a1V~c>U8EmitI;i^>#Ryu#nX-;v7ORBbQ@SnWH$-Rok@n*PzD%0PTRn z&TSPAM~VFB@#N{ih^Y7y-k`hf*$<<9n+2?WoM;Mn+yd}5?Hk)LVeu0GJ*_vtM)_at zWbr`u5vG#&&IerYy+1N+6KE+RF>Y4-Y(`Iu{T?iqW|#ME+?hnrdnPao-?kF;M2v*J zqkmVZ#cY`nRB}+7Qn)RuaiO3ll7+V@SCArMe2)YbA)O9rY5Vx-WjgH%!P|~!l|R`R zI<@wTtID{mA5(#@x=cEzwRmh2Rh^rYY$j9M)ar=>Z{yy`!is@TA?p=zL&(<`jdY}RR@2|Z`;or zg2%7uf178TZ%HpbYDeOMwOohAc7Xgy$)gi$Ek>N6S47wh$jlBunh0J75AQ1>kW5m2 z^?L+QKx*`(mUn8o>~N`vR0>>8W8XS+|0LNM8&)Zx-UYL}+Lt2ozCigedM+uRw#)>4 z5Ap`cywlggBXuYFF3kIYE-RBHIIu2WY~S2Vh zYheI=)zh~w2M9XZ8#|0)DltAKPule!Jcz^HI){Na1?Bl6_3P(G>kpy!;}NlOn4#Bh zz{DlR-Ft^Llp;4@a$kiXzMl%1kuloy#SaRX`5`qDV7xBg=}ZHh|Fz%4ddch^2#8Vt zw6+s?YD7+H(kD#(*;)F<`W>m3B0$!XSmm`gz}4SA*H%NuAXDG;+ZVDdfuz9>tJTm>S;k#U|z=Z3_W5pM)= z4p#%z(}j-zmfnJ?1F}&;saUqyvIH zSr19r>BFtzEaPb}`Hf(F!x&Xz!!H@PQUcc)^qIG?3YR_m8}=cNPadRVK5v<)$>Qv2 zRj5MgVL^#kFtM#rava&KC-+lfFJfmvI>N7~l*7Vt zE#MFantRG%;KR@$M7EX)tUi43QpJi^?2Z5vF#!O4=eABcBQVF|iy)sTt2p-ojN7Pu zP2YpVfW9y?xgBXVg6{O% zcakfCF)Gjx_^kDi1aJmwJxFp|1l64pbR8n3hCME)Y2<)D8vxsfL9u?%sG+I=Z5&uE z5ifHy7LD{zn~oqW1VZi8RDn_2l(E2FAeSXEbyUa`RcGUcDB6Ay`w=bIO**?I@~AhS zJ?W8amhdKF#JN#|(xw?aj3yaHhGYolrv+&v@gr{%@G4(3;?#a%$&`#;?Fv&zji_Z4 zf!aJgF(^DZjyvrPK!+7TfGF851n=kNfbl zeAy8wJbWB?pE7Zw>T?Pq5FILM3j1IHpz)3l$wq;v{+i(}LHeRZj`mqpE3s`GaV{5+ z8Lg4S-lz z)y*JHB_9)pCKCc_H>Bw|0{do@CP$tvvr*I)gQQ0y7?%i#H^Y9b5-T*3;xm?1J;(|W z!OE|yDqJcy8>I+Igvdb(7fZdUo%jLg`TY8Ms7;ThD8dkxtgOw#{+)*#48$J|i>8(% zqySzVmba4pYP9T@4$AJqLMG4Xo@C5A-o>xP%{O>1E5)tPB$XK}FpL!o4bf`HIvEQk z=p`T>5~yI!H^F1=gcPScgNtEE*zr=$O6O>fS0W>yju{SHV&qq1=*1z z)^;r-Pr^g1(T0nID5y0?9&oieKvE#F2EXitDQZ%%1!$=UhscWI?3!C1GlXhx_R+2_XxqMF9vA|Rco!7z;SYk7v&Ar$^Q?f3xK<2nSg#wuHtN3Y04V6qIjm)h# z`MsEOcJuGypDzH+~Pz}!S zOCt|Tqbf`*^Uc0;1%_YN`>2U_6RR7vWJ)@r*hU)O9vALL#=Us(mkx2FFbx6=oE*kuP9$JJKDl!+OODVA49U26 z0!nY*A%Bywqa23Ro9VMO3Nd^Jd)5A6%2v_%*%&?)vO8@Wt(4vUfZ6XAIHEoyI%Akj zt`GnI7(U-j?WC#FGZUI?6e|sqGg+FyH;9{al@7zjunY%D5od)*bz zf&J=T41nH|YLSM!FD0gGjyb)(qhbGtt+#w?^9%fKlVBlOaHqkY;!bgg7I!F6971u2 z1_;63J-9<~?-zFp6o*1_t_vkMzz4>dQIuX*XI!77AGgfa5cae8tf*@UcS92cj4*kTFjt!IxjOmRUyy{f`i4FY zLE8q_v{$%kW0p%p3$@HrRpxD1L(s4R+{>V>t=NwR!^G)W!&+ zb+%_)jS{}*1+yeL`nfEmeZv>5PqeXw6|h+mZ%h6Z(Qc6wt80|i*Jsl*GuSqmW99_C z($v+bRqUpX=GvzSQh+L$ABdi}jfuqRAQg1Q)M8JB7PkcsokLioQ{#;HxpKyDP_bpI zQ&+FF$GE$rG*v@82_nzA`L-#U(S#K>bC_zoYPSSD6$~e&LuuY0#9I&Mp-oqwynz z3?~U_t%pxQgjCf{$!SzNwp@ymSzkDZCN6fo-^Qg!m^_iuI$`K#`Lx>L@m>O&{_a9W z_`G*(+&a6PaSSk%jb4!3r_+@yj{Cbnq)wRZ^XyawjJwB60btv1U({mQK-aF27eB-_ zk1aLuOS7hd+|O%X%<(wuQP`(_uuOiJ!!P-)Z?)^YV_|VfeXP_iA-mkL^@?&kXK0&s z*cN*VhOLmFsruIBe< zPpUOOJq*;C_Tkg)yBC+MX4Mn(a`^T{uon(H{K-t`OUdTa>6=YK2;W%&+4Sc0<-hzo zQUIog9>B~T5V<#{QcQI9dHq4-Bbp0@+}Y->`xr@I$j+n?x|PERkivO}ulyYU&&`g8 z=X=B7d%SWxXrFztS37m5GZN%vFZ6@;d?f7=lOb-)j`>^9cMesQc`C`6qS79AABFhe zt%+xrLf049zZK&k{z|-@+RhOf&qPnz*e}`JsAVdx+D_)EdmiDwQxgQ%H!MP2#`m7F zwUz}?F?&#@DeuSD^G%B#7c=sGzNdn{2br;-robATub6#yP8Xa>qV_`v^hgP_ZGI(Ho>ENA`_Q2UwUaZ_zX#W z9cFbDX*E=ytNEUB1RaF8`ni+&LgVeJ$iQV>=b>TIT%*8gWZ-rt`pW=nMbh`<;NOJc z=BcCk!y~3A!U`V{?^vRC%jp&JqZyv%>LI|*&zy%o)iQ)E+VJMjbG5lV$RFu58HlC+ zLF2|65{_VAWZKg2@n3W&Z5!cew#LJ>k9N#r@h~f7*O^1h;zv5u&Z#Z0(w7aDFDhCg=Q+)M3{}>QLypx5@;7f*X`SD&7Fg8329z#nDXJBQ8 zClaI*#3wv1wmG@~v)JaP#lVH(FW~ZgrSNKcczsP%b4yIUED)}%+aimO0d_ZGl{T`B zu)wKlnrJATW2mWz=ogn38-|GC#E(yGV;=Y3k2||HYs|+daJMrzH-7$exTsW(Jw{j% z{_{3QkRi3`0e}T*JW7a8iY~KtFwd(ZLjAA7Rztr$4iEDn?B;NCkfyFu3WmC6534e( zamo={P5ZzqaSVk$V7Dq0w9b#6lI2NzbMsrSl=I$;1u@g$EWpMVD z@3o}gaQ~OR>zH;w^SP4n!_}4oSA?k4=#-L#&DnnsI`5C_rb;6@VR+cLB6Mtqd|r`8 zUBi=EZe4Jg760I;YkUah7yA|N|L#myd7Cw}>7w7>cOFCPFVHRH@0IJKF~57E3IZM$#vfJ9;0E;Z(v9Z z@6K{w{=U3)JZAKDj$bmLFr$^*(q2VO6O1B{&YP$pTPRqLJ zbaNy=|IRkz2_8LiWX^U~aiXU%`UGludKSX#deqyENBH(YQwfmjKgT=Or z{RZxW7}2j;L5+ykbqXbwG?2E7bp7|OH@hMUMW51hnAL#7Jq>6S=+FG#!AK}9I6M~c z5ZNe}o}P3M$^7>WM=Q%{_tllXj!I4(?tI65K(2R260PQ+9xuiIS+e%c*$=!RXSyzT=;Ds5~6#^MG&3eeGhgxnrfHSosSeMMa7FfW!-fl z4J(_;pi#Th75ck13K`sh%oj!8VylK^a~GTB^LyTrPwNmGO)NV80jjPmoq{^cv49&{nh1~}jfl#}w%ozbju_}JJ<+xfiUk0=QlXP# zd7*<%FpX1Bgyq7(ca|&mo%`E^JdM#DUDt+uvKgx@7MraaVGl7~p0;(v=nD7uZwYv0 zWd!T{=s;l&HmSEDmcIA7yaCrw^%d#@L9BV3dS_9TN^>!BI=dh2gA%AC?Ct6Ivx6Y_ zyyRWOv6ch}w@j_DQYe}&SLA@Q*jOq{ii7(FvYg^4cqGCxSwY_$=Z}C_y;gX+0;SA^ z&|NI>LGdtg0-yE0iuy$0hDLIW8@k3yi004G0WNWcH7`%VWZV(yv;N*`;b%87yF%E4 z&e5ANvV0BYtJvUJze-IGaWd}{4D{D;6)H099=7QhnZWO3k_&i65f-Xhf0D8{w!G@! zQGls(ebp3Y#MKj;fbt{{^SR1@sCDd!4O!C*^rgk?JLq(43{7S=P6C1<8Sm1Kbk3p} z~y^mY0OvmY&MaiPhtfayD!tvLX<*`X(>3+IKxDpMBw7(djXgiP|Nrmo-1*l~T}+`{kPGe#UObw^hCx zR)OUdIU;SLN8GM4V@*b=s^PzqkTui#TBo)|?nRkFa>tK!AU`tS6Eo|er%+9eDOgpa zS@>myspS6T%8P(-SX!fkqqt7rx&^J!+kC1jc2zd4(z2`peXDsM*sKx)zzDfWq5_~*n%zDgC`pAfgcW|Chw;B7P8SzRAMaDCoLm_VUKD%3w3 z_qQ|ZT!n3%M{OUny-rCM5EK2A+$eA@4IihjDblNuI>?4hadnWzUysqUC=7q*@i>|&L(l|@q0I^O zwY_kIiB{YAaO)`%Z0lmGlyH6Vx3XmzzGOyzgs}*g;jy*6UONSp1Q$JqeO3*X7x*j8 zM?**oEW9VL?z2vD;u#(iWDayj$KsY4D5}7ef@SrOB%Mw8&1CmJP}BTCz8rGC)7Th| z%HdR|Yu%t6#h~u@?cSb`S(8;l^19f|N`5$+y-5-KBRH{EdvNE~ z5etAs6Jq6la^VHYbkWGUL6#&Dk$jLgkOB#%VmOAayZ@}GHZjT5>s-G=5REk}h%gir zO+Mg99aMPSVUup4&39e)&e~eb)L>x=j1tTMp=vH1D?tM9Q4pK3(Ptv|-}@W?Vo7bb z3cqbFy1+vEDcKTfdL|Em9!WTR@vm6q``u&dd?slP1f3sW&{tztjdI&=p+nGGwQ&?ZO|8P_$%HFNm!N(WvRMJ$2v9b zsWn3(>eM8y)S+$EB5rHA?p?%ft@^HIp~uGH!~n>pAwiOQq=16_h(aX(B$h5F%yJ~` zLdEIcK)G(*@68F#GY3n(lK?Wj2n%*EO$XPT3P@))5@So0W+2iZ_2w5f*Cb3Js~b6P zYrZXp;>dPb-wT*u3fi$H%8`h{qX|y&agrFv?s39>G*wGoDbTlarx=69bERZrBO|%| z$o-%%Sn25yQSn@?Jhed2$k0lY=x~QOVXMT)d%(Oi$O9Ef#EhW8NqunrLE=K(U)sz> z?kxJLUjW6m#lom(ZBGF662&iUgcg{4&skC%JI3S)WqgM+3WD(K@yBwanijpRuytn2 zDD9bp?7*b-cs37#sEx;}4ira7B)EfvVYD;(Z5$Er0Wc@qDFzMvte0{-Nkzx}boeBe zT-^4HncE^RTyh=avOo8v)(e5W6+UijLn3yy0V3%<@vBVt8g;pZFVWGoD0=`1^U8J-eU z!(8SL8kyV2K!G-tEzt2HC(Vn-=DlPx+&0;AKVT~_xg!XnLjK_W!zYqjkLqOO@jYi` z=o#WSYl>H8B+?9g>`is(lKOMw(Xt(%K9Z!36_4M|i|?BFET5~qf(W1>Qr$zB@B8?D zNX(QHB{z6(*}}0c9RmZumq<@RX11&)u49r=qf$KaAh1`$&MV*oWNK@Q+Sw5?0+TA<-7_IK{ zxy|B*?BD!yN!7@W`wC+{4k8ZBBi0P`Yfz3n_?GX%N%c}Ae_S%ROW8jai{?j}Uo3?k zrIZ8`_PkMp<1oCnafq1fxLU3#@#0G@v?{*k=ZmjL^y@K*gjAKEd*5$nQ(Hwt|`taybgjm z2N&Jl5r0MaB}|ozM)?Vi5^v4u+q=dK6~qJG8uU!;sJckyW(Z`jsIk#$DJUQL5aOrc z%2c%9$F8u`;L38k#Mik+u02U7ws{9Q?*BpBS1&6^$jFy_CC zl3pRKE{FukGO@r^T`suZT7_ktPyLo~*7}+>C-ogpA-pmv+-Bu$Q$@`6p;s2ovr8B= z#iz2cBnf1*f;&fmCJ>1TE=@yyqkE`Ja|*8zG74L>kXm`p^O&MmOnbRO1fC`LT=%vB z62FyfV5@6CnQ2WR%e5J+dbCoTr8m&F7EH`kGyQfekzx=QZZqV@^+ftwU*T}MmoIO* ztXxFBy>FtYWKE^Y@D1&<-%bv@26bKaD5XD>v*aI91U!W?C|h>Kha#>*AUb#WTtCwV ze?&K@@wT?hCaSoq6@*4#dPBDT2y>A+!B`!Qri6|Ze-XnhIT#rRQk6EvsjeN3>}Fb zScz}HT|`azTF`oj4EnT~9zPT}77pV6?!#R6Z(U;c$f~R&`!~0fDG9n>g8>>cYNP#q zR5FOEO9*a0ij_AmoDO8zU!&ScG=LVC zqW+I6Zju&rPG3RuVT9oiW@dl%1C3?p@}j3!Q?GEP3> zA}VT^9vEeq!&vd5e?ypds$ke$R!#H2vF&F!X&Ka7LwyC8*KqJ8~H z`(zEB?k@L%Cj{=Jp$sr~2m}n19Z#EjkmmTXXh_@e>0%_(3);kTLVZ z@mU774zq!`koi~JGe0%Ql73q=55-z$%=XXC4mQr>56ts=)YrI~zJR>D4O_?~L_Eu{ zubZ3maP%qP>J^;x(NCqJM?*g{ex@-RrnGOzv~Fwf(3PUURo_>GQ(JEiXb&2~kMa%kofzND$jLX7u%c9oHPvOgw;mcBk%d$Jm&;Bke zFs>*yEvr1PnQ-Wedhv?Z;EE3aa#inpdeZ+NLI1xY>8k$^lGaDQi21)j(oru;(f@B6 zuDGr^wjTMo-r%*hcRVUh{|`uda*%^VZEpVE!s62V<(1V(NP3+E_+jP)a1IV2=A&z3 z22Nf4uQc4FXt--;^M4@eUz?bZ+aDG#fG(M@GGooI$#|@$FlEYtH@BKa8m;!CZyxHo zx3MqFCR1U`2}aaQ<%ozNNmN)bILtv9wF)ZLSpUa53U&r(c-f~5d=_*k7`2S0E;Q8UV4ugsc{TK8BD;(?PKf<+zdf@gM z>fdAH$35l)%fkiv&}~s%OQHnmi`34!Ua>mU6R#fh=EuTcm1OcvF1L4ee`V>LLf?4r z3z=$!TjL)9!mz0-tRe`NMB+qSg{Yv$K!H=!C>`2w453pUcuu zEUwxP+XPwMX&oo!wWwSn+_#+$nGVla3c+v>#7Kd=LB2`MJ>%)S9P2IN#mI4&GX!Z5 zYy+wzmcz}Z%5en)7r3>VR~4YTQ16&hMpBZk;{!SuMiYH=r&U__I*{VR#KsYk|se@z$OL(dN&q^^dwZLv((O(#tAOUj~olvdM z-|J`9uY+@JQjxU2ek}Ya4v)PaA}NAy5dU@N6&UCJ!2cqdLYTRA)aLiEw*H9QuDuD9 zowm2?;iWM7q$S*MqwRYS4-eZuHdQ*@fp!zlv0OEJnhy5vV+7x1Dufi%Qj8CS4YJWTd$^c=_zta;k7 z9L&Zq>%vHY)2hTzhStLLl)*eTCZ#QooL7Tv#v*D{M`J38l#iZ};c03dFusWOH^+6> zIT2H*D2q1{nf(E_6Xf^#hVyiTo>}mG^xvoS2U^AG37Y??pLyhaGh_5#(Qmr+ORjy( z#x%a-tT@Oly;@?@9{KnW+kDD~%*XqH77Qw-!EgVA?U-SOEa#h+Q2a!cY1M&x9kQ+| zl+u>vTanrHoHo^{Papv9@v7Bc^PSJGVDPK-51g;LljD+J1*!h1l6}+5w5RcolQa5& zwdiLLxa4yJ!D0DL(X_BD&lkE1wqx*l*}VB98?vjjPq*FEZMv9-I>|a_fJ?>!1`LEc z>^a3KxQDFYT~}UL5_=MZd$Nqn-KUBct{2&&94++FIhtnV>$J&89#LAN>`4~(`VnIb z(F(djF1`}3D1tmz(x|jyHK_uc+;~4awg=TZlTHXlXmw)_($<#Ec1t#wv9j8Oh4MLd zWW`^jXg_;wJ1c6pL?`fS$eu?juWW)*vUnL(Dy<%73&5AMSyj?r{AfbWyAYCq>+_Tz zIs2mytSQ~nINDmrdW!-{E@@d?htZ#tCCpnDO)vuYhIdWy`&0f=R)lA>l7MYfhKZGM zd*+)w{kKsBi{CIqLg=gS&IS{7)QA)!-D|MWraHxbqToe=`3GNBXC+^c#W3It`q9ya zO#{-(#=Ld}kAwr?jlU}VbEv)cJ4L8?eSdOGn70hL9@LFcqiGgMoqfp?kWHuEWM?7m z+yw;)G^Qh1ASE)T`+41#ft{`@Y`TyECx5V#X$>tF z09)ZT!DZnA>3`q5IN$k%H93Ez)W&642>lk}IA?sH?p)ti$ttZo24>QzqkLos*NNGW zBAxJr4sA^(8J1Oe;?n5iHw0z2Y-^3(zIU3ubD_6IAFEw=&DgxvMUD|p9c0|cUHN@Z zeyVj$Z_)^tYT78&7K`VWvJY`ljeN(@8d)f}K>IaIt>m{(pIcTJBcoGQ**`6NQO*Lq zqyWDPlByF8?PJAtS^X-42hu6+>x@X2=hqjwT`ojdh;@)S$SSsaSn+HRW;~!mIl2?4 z*2PW6a^*?0iJMF=wcwiz^vg^p1(0Z%L$Npfv!yIXtHgD%N);lrTlqfmldzDsiQcMU z?=Pbg^)}_9zDdb4aco~KQ(9CN9kp~ms><7~i(9#|z2yfp8Mcv=Ro=2Lj>+M_>5_&x zO5W|_mIaew&BRRoRQ)^CHUkb=YVHY=n%BQd8AV{|TxedNn?;F<#64}aOB$`&z3P1{ z`NlHllq6+qmt)BO5GnYr93SnZG1lOZ!;75Z*8E}u(^6XYQ!91+=QSZ1=EB$OFC_a% zI-JuOO2?(K(ftSc5c$+%18)KG(Qec41H*H-7eYjmG=b{%mjAw2_zSg9?r8@p^|x3c zdBS3K1;t)(!z+OZ;vf0FE&Ao3-D8mj_28M}5jwAri9a*;L+qUR{1+33#3%5Z!0!o) zi{ha&i-!Y0Zi(~wQd4Dv3xuHU{7U#6&V>3!%{=b*|9%_g@}}m&&z*nM)pg3r9?om8Pn%*JrMO&xRVmgigS1rB7D;nUoKih5HEt`F8lyZFTekaGFN3HlWH&^Ol(DP zg4&oKPa7!s;QJBlO@qW6azCz>>NlR80trx|Idb}PN~QfPb+>Eq9KiHM42}8iR7(YmvhQ?GzgD$g*qg7qU3&lb01;lBO!}=zEcjVkE6u%!6;)`Qb z6G(^@1h7N3xnO3hoG)+0>^-TJi%>??U{sSCh)6kV5h3YViyebO_2eb?Y~X4QVFgje z4#fpW3C8+q#EuwZ1JJP`HRYG4(69axewE;_#?brfB=Mt|jl5|5n79|B?1^z4T$s2s z)B{%nI9~TA&h`|N3w-7zCTJ{b;YaP8?nPMO7fF4mMQD~#4Ngv&NcBf1$J`|#(V(^- zcE#buF0;hGo;1RIlp_}9E_D)_l>dQ3lD{P5nxwimd&mW+8H;UXv@P-BSSpActb1x$ z>oNGMjTiNJ;5@ZiN`D!pxMIO-*&NB4mdw{k`bhEyp0 zD-o8@V~R=5e+(`Of)yhG(FV8|i2aK-7dtWf-fArr&bZ?8a|yrmh}d7sd&Sy1CD42OcE_RxTJ+)_QuVNI}rYuUkuCAAma z)X67bB#$Xg?`2kIk*)O7kkV1_>*@7k;rqOGmwaSe`D4-E+(_m^^8qZ8pkXOgDhnyd z3o6}{0Dqw>t`OBt5MemH*Q&G+d!YcBr!IMUmT=@MF~Y@2{0q$t1p&If>GTXK`|ziN zU+q5%N)L*1M5JF*6yuSWvlr+tVJKUa0Y|h6ZItNLt}v2X-{`yYc>F>Ga8-hBMGOXj zv;a&0ij*s;CCo2Xa0@2v&Uv5dfjd&lG=$}(S+lf(z>Te;G*f;#B~0j0mwm6|gcZw} zR#jV2WeG7pUCW`B#t+nd{)*07O4El=Ft1Tr+M^Huc?Bs}SxH8)w_R_T0ei+jjkqRB zy@oMh=wU((R7QdajI^i~92J#5V9PD5-I__0->N0XQ^G?&=s2~axr5RLu`2Rr^krc| zk#VmRozXNd-eaR!+U5q`_2`O9_?ln6=@#f8#0&5f+lA88#TftBX^N{-O#6&*r!+&2 zGtB)LCP(4f)*b+vkT+b=+|udt)wr?JE!i=@F%2qn(^C?y)kJhCh4dw&Z*LOlPwY8w zlCHzrr!!1pju0GaVM0eWn&-dFGa|nz9=T}DJ9(*|g~Y!>x(3%r18|;eW0hU0R7?mP zkRb)6*he)*+?1ZnX6N5wxN}mzDuKNN=DooVWC+7shCE}T8{pbmA>`{A+e|F zO-~EEiMiX2sjdCNsjZ}P4R!Q*%=I)hAbwbytJ*`3sd!1ulyRuAT6uJf&SeYys)MYc z7iT$OHmh^&zL$Qe%+!Q^1qEW0F7`U1V>_cp)VGF8+jpKfrbC;SrNMp;tT^$;arNC> zZnSq7P0CvB=_1l;Y|X@bz*?R({ylWleLI@EA2@AR@+vOJv^Smr$4vnmRg=4S*So7- zWXzV(r0y&Wv*7Ci+iBy!xFT$+CY5Kd@r9t&?zI*#6JGb{`!tkvyLUUa^$*BoC!~dg z5r8EQ|7y)aX?&%_J(YYi!^+5ke;2^`{2usTi!oUh6<5{96qc%jEJa|Hk7Mui-yQZa z+_b!ukCp8>Ro2y4x zmm1@xWH`i$M`yLc-V{|ydinN`Sxin-AsID-q#kqWNq^Z9Jq4`6`#7?KNdxWN z-MCKPFja;d75dXE4pTv9sQI$%12JA9rhXkifq~e@mk5;@x#X6U5P+`OviNx^Eg=p4 zlSo#1{NGb;Ftf&tdT^sxSb=D$*gKKMrRAa&{r2hKM!RdRD^ z!bN?-%Rlz7iPrf9aVt8PUWTpv65{j{?y&Oj@Oc5FbT?>hHzId%KQsj_St+v1fuCnb zz{2OK3w*P~@pI=%;Dyth_*L0b0I`JWWQAIuJ)pnkmaJmB-e8*J-IzXuHV^?iVJwU~ zb~W2n>?CJv>BPzQf?B=*M!1UG@@7x!o7)+hVhndN5R zH?32I9SAVtBmZVc-RzjKDMsupnkNYN&A0F@;_~b%ZTf3s1FSz4ljJvTURi^4J>(i3 zKW1D>;|+fd_|{ZEh{p!%yUx+Fo_G879y>OHDf~Ku!pJhqgen9O`7{ABRh0gk&gIMDQL&wnN9 zbG_rD%L#EoRZQ9kFMewhx*ew-bd2?BuGeW_)j?wyU*+&>H}TaMkuy>b^SC+iLi^iV zyTH?;KtMilsh}?gA@}59rSM-qc(3oJ=a-^iHf;`Eg#Lg6m(?>Tzsuz|yzDVZvNgJUI0Y>$A);Cp2D8p06 zRJ+hzJ8dzl{0Ob@CWagGaxBN8j$yT>TgqxJS*4lD3E;1ZHJE;!3=`sX4jH z$POW+lb&02J{jP2CP_mHe`ouc#r^*FP0Io=NtO?iV`1v65_L%M*Yoz?6y_Bm?$-{A zFURzu`*ClSokqVBxk&vZ-04labStUPwY-A7#25J=S_HU9@^9zGOO?9&7=@b!<{#7j z*PmYFx?M@LZ-c8#v%ifT5?)vnFQ3tX0TK`}0X!NRgNludVSsa}rKJAvh*?gCbbf)f z5o3vb410NnZdDahxURmTF}k`1Q`6dxffvFVnWOog_~9L$|LMYkvRrVw7csyg+Kyn9xd!!C`388+#Kh9U z1)5V8wc_kHoso76Ow3GcQ5L_!3Wl8U0fhK(u``;EVm*CLcPfSGGENhGB61EtGjJtH zk?5CDbK|C0{}!5;`$cxYikxMYj9+wGoG;V&1L<57+r&3GBpg;}LsiO*WaL&Pc6QC@wJ**(5qL9~Dnn$xcG}s8L&< z^JMBpEpv5Et$`?F!;st0-;W(yCoR?vw8f4)pMxQ4U_jM{bDjC>-4AvYeb6Y0{$;G&+qI}zvd}lHP zO=Y5I;QfT|ZvkL2u93C_)O;FBfnIA&O_g2`n}-WhIaZz&|4jEGyBx)^>-SvzDH(`` zd11-Lm7pP9YG3Xke}ys4zs{Q}{Vy!vA>F;~kljxInF@PEQkAHN7KbFJzM9Q@Z#d7v z!l#;5gE;CUG?-BmpR-Krio=!b`yz#qrT#O^rB^4RZfcOo-9Q~Fjg(R)($mvaz>W^MpGIwKNKUGAE^|l zU_O=A!a?QUl4eyc)J)7j!aI?gNBiEMxfTt^$4+SwBw@EQ6A~$Tk5gUZwIRBFisE3g zHPfk(s9KNrEX+YX4L1h3$VY{(hYJb9^e_84LeuH7@vIbT9nBva0>3Z8aLK(z6&YKg4%#K=?{ZS; zUBAkB>TjnCpd;z*t8Dn8!$ekRtb1qka-80Ze^sK=zEd8AQMxPtq7rSu(J#}X(=Phm z)75|-?;&J$xkW)4_g{X`IY-G}A~V#s6aC}U^DZuY(0ZPN6>MJowS^Xdv=xj*w-Q-e zs;vJKhbf2Qs30nL6U|_(lsQ$gg>G1>RGN{rLxS*cE?7fc-;wkz%0!!%(KX;!rl=%6 z!Ak{}?4nMU*{iSdLk8s9ZtUayKDszphVfHdw!-{<8Hsm?iRuYi1XMBQdK=%-od^>O zv9@n{T8l9~@5}@OmXyMX6@g&<*2zIq7y1VXpB-$UgX)y#J0G8pE^kRUv7YhwA`>Zf z{~(PFLM{(joSq^n3A5I?pJ)8v_-R%xN51Sa7%oTu@xhi}^)3DnD3h%ojXyVp38~M| z&x1|d#4!M89`dV6Oy)6^5_M=!$2o{P)ZJUvaek{t;a~Uxj5nseyaaxP2@kCVQymE16oHvnYP!|0u(EUSYE0x5 z;!K_kY}5cYATrI(2o*z1>(O8&fNCZ zo!|2slz-?#IYR5S#YqisH6SX}wGR#whH-{oXMTohS^GpKw*5bvoFvrz+3STjR)#5} z0Q%V)r&P+u5ue(hEywWp~7LGCjL0sUJ!*QZjokT33t;BCF46*9JK&Onz71`}R z3^18iyL_@hA+MWv6@Ae}hZUZ=?%1OqAoCMjMeHhXrzAY* z1$5Ht7`5piE)|8Bwkk1|;w-)Ko8w7P(vI(`{V92$Jx05?GpF7QufqkIBaR2(cxB^R zRq0w-?8!fq3QP`D67>D{Yu~f@Fp*x_e4(C0wmpEa|G9Ne-IqDRz8#{J$6HVhUf-|GsgCV!QO#&CdXLLM!oqv} zxixh%bQu;JJ=kp&TS?zYTzetehSbye`Hx_ajy{FVbfnD#pV{$~_+6u&ZYKZaoS2YZ z^T?DeC1|WHS=KF3Io8*_#J}tB7ZtP9 z-4m>C`+sabieb`Z$7@-p-BYhclRFPT*l?+ceL&#$EL4PLP+EU%G%3wi87F1h)sn-c z$E40Z`Ti?yEVntS?iu~o``haAr=D?OqtK~W|BP5vQcC5mr!Nm9RAwwy$w>TyyVJa- z3VI;EO0@v1KfkpGV=b@w55hjCr}^3dj|oak>7s#RAsS986kLLX8F@lq%jxC(+wBIs zO8XS=2}k|S6pyq3&w8^db#5~@+~)eo8n&q0zwelQkxP9)0rU8xl^RtpoV+CSPX1`f zBb5z+=XJm5o9@K)P-yC%Ab;vW|DvMnumbv^1gA?iyC1Voud6Ob-l%^ z8-J<1k6@(z%JO9nWKfKmvk)ZazTTdDYhrspZN7|d=*%K>=8>ljwGZo8Ke;uok#0|QO^E1WI@0T`JTCB1oL z`zLKwr0@jd)0Vxndvj&%}QJJM*g(ARZ=)5~U4l zwI;%a%i}yah=HG{sy`0yphta9z?o;2FjzkC<@}@tel3C_nuF0<wa z7sW&FqEAI6)oN|OR0JHDS*EPuE?iShOoh*S17~W*XMJN9@?`p#)q=fkPp?#-{)~B| z_Mp*fVo9J!>tc_s$Ol3ZmTfHNp#XP@M0D#*QUks(@eM?RP zym9*(+&F>#62pk&3LeZ&`-YM2xz^Fe$Y3L&)fnH7N)V5iEdQRxMvx9YERg-sQNUSL z(&){^>8rZDHyqp!WG6~|)5fb)Ms%^XqO@2XUXBj9NrP1ZQ5r6SL3+%4nW4Vnpmqip zg)DwiuzEbbrl!jRn$V0ZS$oyMy27$=g7apL0kkUSB22HLpYRno2d)wQD%k&(33Y>N z;&&PlEh3`?&y(U?j)fE0Z?nK}8Vk8$ORxwu`If1;nf>`2$(!kr7)+YZk^p!1gU0G2 ze;wE5IopipoitC7<@Y2v5d+_78tt=OGt^_56}vOSKpfM5LfH9{w^);vu`B z0Y9O+7un((#_z@U@~UKGJs`cV(C{pds85Yvn4uxc`!kQr*6vLphtO42x0G=$ z*xR$V_#@`kMIP-eD~JV6jh&`x$p%s-H9k3y@vSRi+U5kIj2S3W;M|nnt%v_J8=C_s5@QV=|#Ag z&W%wh+R4CD_A?_$!|FoD>xXE5%FX=3q1NqMyylvsrA3@RR@|soqT%q$K+I0Ew+bDk zLabLXvS#b1fW3HyqXVl1b(VjPOfwAE#*HQ0mk_%}^e^zWVF>z< zf@De`aXL?V)&*!G1pK>zHp*7!>pi1oyAY!URM~*Okq#h(dJx#MGng9YpX?Nh9S5qT z;rzyTBFpkqB6}t)1+aMG#i~(awSu(mLl&Zy9M` zkLI!jDs(Km&u;SDZyP@cwRy&*_x%hEJa(K8Y=z1J$0kc^LTXS-toK~ zktQmqYF7ltNs!2_;Dl^?OTns*<@NxiR9m#ZQIEsTKMchp=BD7-8jgg540E zA#ABVQ18rt9Ev@fhH9~v;505~oPpATSAc{29@xpyR0j~}bbxWvL$E&|Zrehy0~R|P zbnO@4?^os0?E7psazmhw#+5w05xRE0|WMl-qQ3EIiU_=oZF;_#?)*0p1K{xH86EpQS2gE+z zhFlqztsbwm?2`Zo)8}@jnpNcy2K;akVx@K~fk6*5Co1`7Dm-RhQ9(TjWl+B%cnnPq z60=jrvk$loIL=TSY`-?{F2+zaH?-NLu~HQQSR@cjnVU=3ah)X`@mGw!2hW4zp7hcn zlUJGeuWS@tM~Y|W`^BKl=m$OtZ+_Ia2;3F`U1p85eTPE4dmSLa0xwdW9EFC1>o9FU ze~EziC>r!Nr)}pd-Hoh^YCl~K&L^q7%$@#s@kB_B?Xp4V#g&G%umC52q5ZPye?J5u zipxx=ORbRi^OrK+3{_#FD>c<+u`BUrd#-QA)lno-!-H6UXXc)8zrpn?WfnU8JK-j z+Po0MkUB6{7!yVwGykAWs0)tYsYpy#So}TqmbH!6VYu`2v$yrdF(xiKJ4peXNgE<7 zYuw8Z_G=!bTLAvxU0P%K=QSK_p)zrSeKRoRQuJVWefIOS?(ppZ2mZc6Mt|oGHsGq3 z?Bg*idTS^_t0zwuHuyPN{KjH)k#Q%dcwwuJa}*<^7adegG_C1@0T-{~&VlqY>OIoqP|g zS(4Uje5__~+lLUJco6bjQK#&czBFN9I`_WC8o6iRGoLxMk3=muJ6r4)?oP?-t97Zz zHmAZtIJ|Wm_@EqVa3XI5Q#xY5X`dXDJCrB}i$@%4%Yy$VpW@){4R@U|RGdWbxh&nS z^6R?Th9AXXC@Cz#TBLycFksxzsb6#>#-7I+My)g@`*Bb=w!mj_1uQRLw$GX;_Ry0q za!NE|R_T{hu*@^OKr=6<(}YoMAJ5Z}8;RiOt5Hq%UUL^cQHIg~4_j~j)r1?ke{W-q zZPX~~?v!qkmS!N*ASFGd8ypNqBRA68Iy@ee>kOxZ}yL z?a@9(SHICo#o4J*Ph-;@utpTx%(N4G2MKjP#o|s+tfBYG#s$e1BZN_zeYP0fe2nec z;tKU>7z34RS<~L0dms5%Gnwe?OPA^UvP0u;>vR>!str zFJVHEe0lPNMM=y8D;%QUtVnIr9e|sCFiyX9MF%eT;zyHcS^tP_R`St$C)`T(KxW@Eqs3OYogx=-2h8@Tbb!%kR}A9;V?)Y{)u z^zq^BXK=(8_9Ea|mr5B7Wk+G$-S4)`4vCU67|c^Wj3`E2oIjl@HNT+nPEvJOu@ynd zphT!qX_;9KwJ1{3($+$q|E<_|V;JO!=?lOp`q6yw#4x6uiF1y#?XF_`inxea0K=Ec zkqSjI?(c7J@f~d+Vh&FC_<;JUinOW!>3{!$`p(Ub`h9YS>S$o>8eEJeepgEBNq{d= z1DJ4hB=GrgXe7zsLX2YQ7NZ`Kqg30xo#L^R>T+~60@v~JoVqBxwsZ@As`dies&`#J zgRx1xwU)4~MQ6?W!s0-Fo2{e4O1o67O2qy#;i}UFlW;I(mSL%B<&7;THnmXM$7Kw%HRtN%qejFo zPP`Sv$6Y2ZNQ&ZsXE+y>*gdWrQ{LZ;HBpOmknOP?S=!c-OrTlA0!$1|!(5n;O6kp3 zC&r^+XWI{VzRq8(h&cV;RCcGQ1TUyxd-aF?`+j-#`+MQupvQ8t8t$v;fj5dtw%(QE za&$7CQNi~1Yyg8-jrY%v*G_qJNEy^vI0ko9=Ki$DOPpH@Bc$$Hc#LVG7*!W~U5*`O z>)J21V$AEpshAo)`&PiIU?ipGJz40$Bw29weNR%__h2>g69o^Q0-+qGlYKrkdrsy% z7_XvNbhrwB`1|MZD_m63`lP+-!3de-FVr<%WTu7_Js>v$oX^0QcWuEd=dZfVrQTI) z&o8rUyETo9M(KR8E2 zuUwm}%>>jL9219sR!$O^gFh^j?uIhXn2smJx>cTG(^I6o@^d~`mm8Zc_{RaMpTW+V z9>2^m)V!IsD*L*X0(~bWH<4-P%jwHV*Y;E7hoWKv?e={qnA}*BwIlG=LDI2V!2`>ZGAmgeWrc=ZxRh6rd)2N+;Fc zQ^!`TJWAcl--ySY>`2WLl^RwD!^l<94aJn2r>f}o_Cf#EmSNhl?V1y(hX*&7h{@aD z1GmR%WJD`K8q^43iF>zeg&^jCf9#=i+=KYkT;Y~Po6Ah{^qK_tJkmMiN#FIq`7 z@IU|i@w`Tb()L%t-|Pv6LkV&n0X198ie$bJ zU#WSIHXOpVRHd)2)K0h&W|GqJJ=Bbt2umnq{s3l;S?v&A5uCZ0A1Fd(Ph^;%2 z7J+pC8f^lTmL2?)6eGX2@$x>XF61%YkCz}jP?IqqKGu?f<`>OH*+t`-W2IEm+U&TH z07R7Puu$on7;8pP7?tyR39a1#x88tq#R;{{VvRR1cNNMnKNUs!)!scR{HAt!Sy3RWKI2skJBgeHT&c)Dv*ea(WX*Q4n$cT} z`eut=>awE4a02yIVQ2TPfmWif4JK!0V&tPvVpIPUZEsiqr}ySL#te2&l8of@_IA`X zDUfy$PNxr@ZQZXQ+%%;WZlGbYd&$My|jrFOCa=P^9yzmYa)*be?$*QGN;&DnSvPq$b(T48JU3$km zC#GN1@>HUy@9-I;upd24aTGzJOCHLRoo(Fh zk{7F8C>tCAq<&);gTdoCtwkTP0Lt@I5hwj;DrCVU7aF1TB0e<$6?=QBmsCDzi(gbA zhI;klrk{^38omu`WS^(7NZRxF|F%KNrM&Tz8n}Zqex$D2==&1UXsuL`SM)bkZwt1RU%>L+63>oWCiXpE_{lTKJ6zjH6p0#&}Bi4V?S<$p8cdUl= zr7S>F7%|f2FaxI71r>LlelyZv^niVd(Wo5Y;-$Xh(7%NSKX-Z_RzgW&rJTF0PxG2QPA(b5OzyK<4Np0mfx8?p?mKE zM3Zd)Y`7fniI|z4ocm+x#g}d6O)@^vz-9I4$fF)B7?lW^uMT{!i>T{tEN!nvK6p}V zP|n^Is8@eAfywrWUduI7g91dHZG(t5mbUQi;k1Rfa+)6qEg>4yBi2J=w9KQLk6NO) z%7LWNEEqZSvt@0Ec)R%R=Aj#V5{Y}IJ2;MaLx>-n{hz*8QD2m`=r!};2Z3Zl?)J`C zvkoCt-xW@i_993cLrVuA&;EVJ{@L&6d$FCA5ZOdkrMS3x=3(n7!|DSMS$nFD^ddl} zqTaYK_{dBoFTU%~NAf|v#s_-<7RU8FqYdnxPNKV(6J|9>x%wb zQsu+Hu%>Q+qR(u)b*IW6;a7EQrYhPrj4Le%w7RfUEw%1b=j@xP&KKNSz~UW!qX9st zU<(UP`?FXZGM{i|q%^5ei=hJ@PvKtY{^e-(?F*3)dUim@Dp;TQAt#6y#DNTh9=hdA z`1|^V*dHKL7k~w3LVyL|xp5Q6CDw{ZgrIe~cu6P{VA?bux|9y$m;f8v!98e5)y%B4 z)(M{-!935Aa?M=G1%Gz{Vblub#R}wc5X1upkie`^Gw-eKfP;SR)t~K`~}d5 zkryBh1N;$C{+urP!Wz;QM`%u-9TY;sj>R;G@bX3#%RmzsP!5GAcWC-QR&U0 zwLw~MT1|8PJ=HpG+ohnMNYt9-Ed#0bVkvs%UD1j~nWvOIavCGD zRwHzm7*=i`lVD><<3#~mzE&cGeWI$GKNNlhgai28v-hn#D&trH0D~a{ z8jc79*>rC1xPu=_G8Yea{Gyi~BMKc{BzWDE=;CSkyq$i+++s35a|(1irzp9l%yUC^ zzlpPo1AMDV&nFyD4{s4|8xr|;9z|xppW;)0Eh4ZJu&=T_O_c;D%7Aem_UVsMJ3>M^ z+)EK3wxU%JL02m{L=qD6OU9pLAj?)f3&Eaot4Vmmm(^8s=KznVjL%wi4K>!tPz>}??65{> zs=QFo7Dp@OAZ^4zVJwr zqNvJR))gb4h?#ezUCNWJ$HP~hae;ZRRITHo zoYod!631VBSsn2!&r9SyH_^g48tsZ1d!90?^HW^i#SCd56cG49muk#7Z~{iLC9i>y zpm>bXK!PtP3IwLm)|(~RUl}HQ05+l!zbJQd_eZ00@$g*Mu1RzO8%R_qY7JU~4|zmh zerp|BUPiwHVRnVka}|~QFo^g#)$158jFzc&l_wmP7kWF9&?iOP+b>H{*;iSE-|4+6C z!B!XegN&QOF~@L=Im6+p(YY}AtVQa&E1j44-9mZj89 z_b?K8DO1;`?mlH!t7C9p24Mj zyIwDAT3BO1Sog!<)z<{pTP>|dQr$(oW#1-XxdQDJBTbYeAy0lI1jencbemtYnK<5~ zEEs5p)zOR7f>ikY-qBY~xqIAsn6W2N-h~(AQ!f;80-x?AAjcV8b@dA#uV-|my|V+h z9AkYPpS_hJNs5+MDo>X9)v#yTG+f$N$Nxs%idCjnO!wm(ZMkj(MmTf#ZOw!Ref@T; z|7mAafr=!;6UBxy{*^;`P&A(Nn&6T5HGd~>Co4&EKXa&ujPi?=;gr^a#zMBfNrA3{ zi{f~z1_QOKVnP~6$GC!^+&9|&^!XH)d2h*PN_gL7(o+Do#rpB5-6s6-$I}DXTTMLU zB^MVxtG<%9nsC6QfyT!%Jaw=W-eSHWc|=c-@SltfRrd;X-r-#mzVs%iF71-8Yq1WN z-@@_MUL9lloT@`UM4qQGDC8)U)!lR0$a6@*^9iD-CLR9vf|2yMd;4u@qic9I#Uc zMmL$Y3HJgdnq8}r#f%y{donMs-HsW0+nJxp_V4cEwCn5FwXf6%P{=|rSr%_ps<=QGOx zgeE2Pry2+VPX|k*7Z9VyWv{XG&;N`R!%HMV0 zw;5F|a(`*@NM5*@E}bx%ueb7T%#)xWY_kJRkc|vU*sL5U1sm}FT2{14Q5J3^r&!6h zZ`6!f(f>OuXw56z2dm7*Sqr}^U0AhaUUPV`h8JDaNK|z#T5Gdg^VDA}URbl4g;~vp zLsXHEs60L%g_|Nk*I7G;$1e;H%nB}H-n?-;xKf4Y5lIKAfo!&n__7@gR~ zz!y#QW^8=o&RE?{M8xy|jj=bkws*GX-tW!vXhySl4x@NacxS%+kFmPy1at82$Iqqx z-+%u8yTj>yZ(SR+7NRCPp0xU(F}CCPOYIR_AC9)?_j*ZJoJR4Ke{ImmXkv0N!H z9+ZzOB+-6RhX%veUwRNI%)gL;=u=c_fasLD+ZdP7{KS5*?VU>Qfux~jP4vUxa|UTw1c~nkn%}UBK6TOGycjK zC=(O3z=FUJf!h3(6@YzPlx7u}vsbCwR)PkobE#D|#XL`We7LLcRkLEW`c3Uce|8m0 z9WYS3Ao$7it+!Q+fUgGWt)AwHa;E^C_H~xx=^-hah<;{n@Xz)7!?#4R_S>oMX-W-^ z*`d0P3qIA1JuVS7qVt#Le=v05qIyy?S359oPHV~&a+4iS^pCB9j;|5_S?zNqF5->) z>2mJ})bMSvuhDXb4u}vCHy4x8;(#EW06>4Dgv@V)#3gF@MI|v?2TwMu1K&q(002!8 zd5#eiy&$p=vjB0g4-ox&iI^(DUst+7jRMY-n88mNL!YIcDszf(N=Cu-Wt+3x$#fp7 zV~OAMKBS*}4isQRfA^k{3^?1?@0%E+@NC-Dv z%(5IrF5Rtt`|RR2g!hBPw>Ly%a{&ejhCggd2WqM+cXI+yb#~!{E@IlD``AEF0@C&z zwaUL2Ij5H88YDHPY%JpZ1YCO+Ln{+JwH)a}=Z4%gH3d)u1fW-jOdv2(A@XfvJOCh09j=h32dyEcV0p|s zX~Lsvt4jE2DwP*8;of7ShIA4GDr>?i&wdBuxS zJn^2%QEU#~;xuc<%tU|z{x4nAk-u8>BbYwyHexx2VPa_!mfE@5vJlrTQ2s-@j5QI0 zd_m(9D9i1~YSZ2jZGm|146E{8HgRv`j`pbfXWt5cwArsL2gD&HNy~?pT!;%Hd)eLA zXwm|-48G^wfun1H%83obOQI$x3o;+USu!L^QIe55surI4jw6(u(OB+hO(6rp3DGq$|!S)-`!dpsZ0y%V)cbx9d z0h_c&-KdFb1Q=b}&shp$-c2hVSEhE&EGX#nI(!3HSx6OdiDBb*n|F^#@kui_2!lNh zfy}mt{{ez#dD%~L9u*s>Fu$T4v`f(4`1i{UA{q>O8lq*CdCZnlNLij)*b)<~+&RDy zopNhNAD^2NDBjCZ;YA}uva6D7+)yTZU#y7&Lr}0W;v*Fce4h4}Dp;pKy1Lj_J1Z3} z0DsH306^dTe$PVH0TJ2SS2-OrA64$+5wie+3va9^Sm=>AqKlJ%9054EYO7U)FT3m+ zIvrAn*bR%yRmh1lOxSo>MQoO^?R}7!e;zJSc`8^K^_XQqbnJT6CS|pP?CeXYXxBSc`Hrh+H>qX6IJSLeUobGQ@acDNi(%K}KX?m< z13{mH^^K{GDbu-tuqFc^w}*XX0q!FG1E~Z>aJoag0l9GT^|K1j-~REBHPHZY_U(XY zoVeQ3;wr)z%nl+KZ7zcjI5UdY8~OY9Lbqe_gg)4*jM{*iQ3t;x)iQVLakeLokpU9N zXAV1a$a(2XOF-c4sck24Bw- zum`d(JgHp~bSjf@7uj-7;>BvR>HtHQk?Z;bpVVLO+m_$DR@!M!meQ@CI(I-A8dOrv zCa(=|=q*sFixm0k^+>5tD8YYku8c@zi0(?3F#oO}ltO_X9u)G@@INnaQOAJK#Lqj1 zeSj7!TA}In{S$2eEM6v@qn}#Whhk;=Hw8}d!-od^>;f`cZN-Zgs|%D94t9EO1N64n z{iidZszA0!3N&YUg(Rfd4)0!SQ`o04m`=rxj&8wmsQjwt0`dF=E$IdEb6H`A+hFZm zz)m;S2KuRex)7{F;9_$ZR+b{CSjNvALQt?-*~fO*-Xsa{ z|4Qy1Gi=o7~bjm@(8}b zqrLirKqf}~b}Xp>ke^T4KoJl=d?``?gVN)gQq*30McTkT$EN@FZRF08kIQnT(sAU% z-opzS)sGU7#py6~=5#-Qh(?UP@czNiW*;2^)+^t0K=Z)+;y?qm;XE5)?(Q zAOjA5U>^Pyv<0azq1i-%y5h20_hs31fBN1m3$|kwzLcROP2y}I9>fR)^!Kt9s~s^#+-vg z%|h-&YOj8zhj;vvx z7T|js2suIaY6Cn$XB|=<1l-{H4RIY_g$ykizAZ;I{){C+fH3=L6?5C(bgkZ>xZY~b zJ3cY>>nM`WV7BAnH8b!!fmG+Zu2_|02p#+%xAn7<2+EL{`XGlK7Yx5vO4&e4%yG(> zxDabz&_oNPMvG?gxU+AD+@YGPhM$ABEcL}0pMM~LMbz)7bYig`1Oew~ z502(&EAy8P=D4TOmjZa?&=@H&%6(Hb3XzwMa1(O+px@`3rh86+`xeYW7ssj%4W|K^ zSwNN6o(`=h^W8*5h$6H@$d|xIF?hy$*R4 zl|4E%$!+NTj6$GNd(^)-cue`N`*ZF>4v4KAPW(~WyjXU;Y4-8Yxa(*s_wE96xwNcw zb*D1*g>`Sob8Mho$W9KAX)rY6bIwp~(A&q+`fO>+T>5*HL8k9BM z@<<0e&V;^_RBnF<^-ZrY)$(%yz>Rv?RdvL`I+*Vqd}|H|YGyr=x9Jj|YkpLIUVG187zv9nxRPrIs#Ov!fw0bQBEa1&@)Q1MMjg-T_G zE&)qWEiFhM58eY^OH}sPg3A1yq^>9x*-FNc;KlRGDR>nIP*|*9HJ*_3&;MoEjiVeO zw=oo?$d)eh3rxEp5zlZN{x4I_wnp@oC6n$^R=~o9%lhJj z*P)BLe8`5G&$l^a+(naejUP^8yH66M9aP;90nE5=W+cMh8_j@j!*}Fv%l3$WPH}8w z4NZ%D#6SQT2uQJXXzXo&{W~PzB4h>7A%X-s6yy-=qLa3tVk(*36}m@GUxV%Nz6zb1 z@>K0w2)p!7@~C>A?M}pJ16PwMArt;70u=`%-2G`Y0@t8hDQoiHpgO)Ht8TT?IvE~f zQj-NBJH9)5p__;CYr<`EQuf0*K*Xp$VJ4G?Uc`SiNNB?w{ z()T+cz#CLp%Xk5hP7gqQ)?t_U#t%+=PlHOYTrR;u!^0A0Mq;Kvpps)VhQQ8{_4A+YGVk|(hsnItNfKLW{Mq0pofRt}| zxwN~~2-~+fR7V?fZ3HdOjF3teM+-pZ6{`(#S!z;tgmQqww*F{i)ov~7d`3|24#@qy zo9K?5ab9$z+hh5&3ey!?SC=AoN8N+fT3Ofr3=-&(d%6^kNuCXle`{MDashCSjGnEQI(Na;-5Af?=BuRWAL6(fq z?S#|w(LTB6Td|g844j?%0AxpYJ>^@L{M&anpe?^`_U&^kxAzcc&)b)NML&z~{+~IT zpZ&Q)^WXk-_v3-mHS_-{PTUg2Jy>pp zN^vs8KG^Pf3SEgk*P{Cz%--tTQ@wH|I*;_8Hzc*)0yWi%PW?`jASi18I~~cf$7&Jz21#^3$NE0`vx%vYvR|5OV+2}L1r4jJnuS> z78aI?sF%cG{^LzEbPl{fTZsPb=&|ybX2HKlS&;g^|Te&P75{+~9kF$j4ffzzw@S zVz&K8S)8Ibu=m?uYF$O+&*?$M9op0xdM_HLS0t=oci5Fa=^()j8hmtV*+h`G$xtIw zYS9yOhsAKac;H)<@_a#^x`X|4!aE>fA#E^Q!Sl4@=})8Mckq{oA84z&3wpa%zU~%J z2SjTa{6xKf>+rr@A9Ve*#+p~?LmY@@(fNr|O;E%~bCwrY1_};EdxUa{R=Ll=@wKEs zz`w~q!r~rr3hlKlhHK#OMvwdcN}mE7TUkP+$ZIq=8eU-{17p74vfj~S$jEGfUYL0lx!=IPA~Q=V+|3G4(Dpu7nH^JQ^>#`jre zzh1B4j6O2jp~`g#(_&H>viLf7-wOrUb@v0HN@s8~G|T%~%F`@6dA}0GP)hY#t`TqM^FvPIsZEs#Ny;Zz_$Zj`2C)$zzyYEzWqUkgLoc|{I z=oG&8VE5lU-IU48g8zQ)g06(21oxqI3*W5&`(|l){`kv@b=A3+>VNSR7gjVMVSl&A z^d(y{d!Szz0Q23aJ$12wb+G6Vf9a*p-dQ8yi%9W$kZoQ6zuT@opD&S$8@ak8=i68N zB8O_bSE&ZYaY)ylPLYj6{(=<=4Ro+t1TpSM$mQ41k6#=gEo_<^&O^kYb}yh!?;$qi z-+xVSeMC>jE&%0=yWNWeP;RHs-;=VPb#S8xZ9kuGkH>Z=9?`JO@UZ@o^^H=-1JF(I zsRuuGkUv-dQNQX+EG&+GFVG=L-laxAn_B$q=HFF1>$SIR2QcgA`@~I{jF%`G#&kXo4y;fSZMumG^W8+6o+BR% zO$DR)Q1bsv&rId%ebd+fhJ`+Zi3!X-&aKbOJ2ibft-qi@vCK^XCe9|_z!EoO-`g=EHv?LzT# zzL8Stn3*={;vhv^c!sjH*ho!^vNkOx!_xW~W;zFzt!)0^mmb2w2#qh$gG#SEZ z#?@yLUnr9|q5KOvOlrZU1`}YYDO0Z-;-T0$p~_ir>Y4Zp5@lNgIE*CgCqYv3tvp1$ z+_#S!QZ{;nuSC?V?3kBA&|ltJ-FP1AKhqCJAk3Rv${7^RS?s!|wS@iKwDJU|y8Xsd zm;rPQpU)~=d48z7dUr}Xl~Vx~Wkcm!rEizF)6LrwN`{dO8pSd?ckBEqM|KQvu~Lxc6g=>pXuJF>`Z+=9aNcD5^;h1|YOBjaU0dm}YE3d_a!sgOiIdQ**} zh;k?Po*ZDnj-ewV6Dl!wJO?YKxgCWPi|4tz8VLFCDL=aRRonXU%L9{Y1&(-UD1hut z%grU7M7un#l`T(~E6ZqcJH4?3UI7EvKjO9o<8yWa^q!akX#v3b$L8x;dNqpEV;88M z#?E6ptEv(R4q~XNg4SuuTiGbwxtFO{^j>zNz?m8RX+kp+Vn>J0Ze~okAE!CdF8F1A zU8X1gEOD8R`Ns7#_b+!#n1M_%yri1O%gKn5xO@p)v(8-OE}U^LF37(pr%ia@Y%bsw zMDHnumg-}uO(C+Tth=-s6GM_MM}|)0^xC9TG9j5{W9RX$}uj`P(U zcqU0FLEEcMBi z!6nj(;lBnRG?RcMBgp$@wYGi=icfb)^fg6GT0`vghj`v(sy^9oUnzAi91XnK5@_T1 zxSw7v@3_heK*eXm!ln&s`yHAKVm>f3BpHq;2amjlc_iq1mQv-Q(R}W>#8SbP1$b#x zd5Dp+p3!3~fL&_km(O(cia_|k-~tkzX!kB4;!SXKb5dIg#n0%0O}+S`gB|S4$e1Jj z^3P;yST^kK(+qtsWhtgwCRIjuK}vGoZh`WhQ3TRA34XNHZ{U2AaRL0u&CQ&$qBw)F5Kw9H8)yUX*;|v5@8fMfD#r zVC?VED~i{61ruKo2s&G=7#0mZ{I2P&*XA4#LrQFjlY;3=c>Vp;*wYvBl?R$0_eA>?KXy>K*D4e37&Qf=gTp+=$8kY`5dF9MvCaA%t)OISxOe>SkPmwe1Y(H zDz{`2-k~H^^%)t8DHMMq-NgW1V4AH7&E^3o6Z7tqI@uCURg#I;7w&eob0-I|`VsPm zo{CHzb5%o2CrDh!Gzy|&W3@R&nV?z9;C(^EacsHXFGU0&KtS!@;GMJ#2$50Du7*8p42994pe}=o=VOg9Z%LTFhz%4qcF{P z5X$!J=@37r^K|;~WZSNSGE+QJ1ONV28_cf$^Ae>?c%4?{q@CJ?&met1*cXPQ5kO%$ z2Yp1uuYMu>e@SVsj3&@yef7x^0L`z;QLf5T(7EaX!jH4ckVctuTDE&KE(3=_x8gka z3L$p1@}#J6(vOdCLcaIEgbzO8E;n&kq@&j(tW@e`KsUX@n3{&3>u1`}Uk8X)<&1httbe3z=^Pr25Yz;O~y&FnZoo+^4jt>p^zo@M-n zP9*e$GX>eV2O+dMqmW|#yHZZ%B=o!fD}oL^IFU8YprSY69|GVUES#kuD>r5qVGp)c zFrU@?{IbA>Nl#=gq(LqdOeAl;f7oHa`SMKyJbu{fQN8R_;d`;%&gTonuF3?ZNDM^W zlF9u*ef+J3x$A7Nnht9oe{Sk0gq2iRuPmT{!K;M81cF9f%h|CbxYgwcZZUOZzXTiy zSaXwz8(e*8=;4GJ_tR<0IKc9pY%CrFfO3;(r*f1F|2nyamVmS8*~xU9$IL$j-buHm zgr*+bY}bB{fBtmuh);%^tC3eRDaLX_`C(I<5g5QSQb2n(=VYt;_bj|X6g=!Z&_>>X z-IZOW&g>)NR6ED~`I#R@_EHl=l}KjWI*g>{4UFYw`1C=2g~DYLR;=;$Q`X5|)Rw}{ zOOdH+$^(kA&X7UUS2!o{w_4H(bJRLX;yF$)UTXa}maxb?MGQred~WHPrrAyU@16)= zmq>JIg?zU8a`C*j&gzvd|jZBv(OqS?Y{>JP17_VZ zb;C)huO1FP9P$_7s6@cJk4B{d+rnX&`+0~^+X!CE;@4T=mUg= zs2@{+pEaL@hdJM)(jzi|8C1+FB$V&*!ss966@XY-{G*mS=y3Y-Ib_9_5CWSudI>DArgyalR;i^xL2b*f;CIg_XTqlg=rJY zTidF7^U)zaGRqSOh`A#ZsZI3#WvBjn=Dsa(nVC+`aM~Qx zww_j>j!}gMTxH5XoJ=Cab7mN;4O4;e-UOuQS>RT<3_nbVE#>VVTw#)$yTV5{?Rki^ z_+u9k5hCxNW6Wr#UzZpz*TPR)CXUF0>J1;Lw+m;TM-};*I6>`kylcK&cUq-|82&r@ z*>e0>@AR?+XoWIiP(p&nJ}g4cIO;Q0!}~TQr#zMKHO07SK8`-`nm4T>Lp0kWi9z%w z-CCxbR#xz8RJjafiysEFDEJCUbI{JN+GK1~HvC4B&0`nuXs><28xu1r;5V5hz{cO5 zkTCZl2kVd#<>oV_8k2EM+c}=8T5UaLfwvwqHWAZA*5rNRik|!dn_MXZa+YK?XTABE z^%_BNY?1zfKK@{x*quJxeKWstlXxClfE9Q8Y6lqngd=9-7kVPIJ)!vXhL7XCpl+?0 zFcFjC$E1TyTnu!5?1E2oiwSH^xp{=++hRc}<5InoQV)t|4~r69Xc-eRsx%>E$0bLT z#K#G*DxF~zZu!bx<#!0f@C_TcliQ-mBi@qN^itPZQu+Kcp&9px$`pEtp~{8hVo(-@ zSzHI{59M;+NiCJd`+9Db<1K*4H7KUsB+vZxgi6@)B;sh#HcQ>a@`NmnyK>LF!ZRV6 z`zHUg6Ci`Dto{WO&QDK_$+>4#0mK05?5f0T%lIXD;_|38@DvzPRANsxk9IkAKrE%0 zEx}1SFGYzbL)?09up++1A%RSdMnGAm!J?-oRaq?ix@HfT|4yDU?YyqbrxrC3_i-xD zhoXiBi5*=Ba)?%manxOg)<#nR{;)HPJAtPxV!{&{H5MFaI2*gfsv(vQ-zw*#fidH**^?6=C}$8@}V@JoQds^+66PKLjsjJKAK{51rL zmz?tcp;RYFc~R^qT}~B1W{NFqmPKx%G6*Q>zdgc;EX`QsHvQ`5<^p zfgry?w&!!>)5+I!*RLT6tLr85TLe8!jGW`VXJ^2GL$vqBBIPc1`Q&3j8k?q)M_){D zvkqg0@s`<}W4Jj3HBT&TK7$Ikz@K*h<_KKN#K8H=xbM4_w7VS~i|^CJC0f^n23$2l zJz<9){rz!r40txh4{{_!Jy<;K>$E?yUD!kvNF~^{OouRqnCp*1zE)V*kYEgB^TYFf z$`7YSc46JwxZ3@#zKmu7-*-Y3zV9h(JEhM1%fdUSmX+4Kh*sAV!HFc0Zt{_ z1Rra2^*_yhVQpgURD+BO?S+bC>>w~QdeSdCU1LI)Ze}Ps9*dutT$@P4LonWyMmu*O zp3p-3N%Q(i-!^u_YaaZWVOv*E<`u`r-i&^Js#qylc?rrFH-mBmDFdl4?(SC)=s-b- z{&rGYLC1_xZP~AuJ^&y(sIj_Mww#9v1sE;)EiVoqlJV|Y(?hZkk^BKakrREgCw|*{ zxC0>{Fes}ct&5ua4>|Q-s3YMq?c`~{!ptxh=cGH`7RDq>JwtuMRLL!W@BKb-EUi{X zbd-ikG@55}mZ^s0dXN-(k62ikw;tHd1#0+aNUQt=B|gQ3kJsa!6I<$+i=WHJYmsw0 zCC^mCla?gYIy&Dh>FrNi0lrCQAvNGO2YS_k}s@?&dlp4u^=%y*O&##fG6jOBb1M z!FEhlQ*mqD`ldxj?9B}P$_s}04X+exxC8}&ZG(Xl0Cvz2`=s+)LaKlL_8t_ui1l79 zi6tfT1G*-XDNH_g5Ao8!OCIj52`y!2=YIpiTox%@s%n*)i1FDfzhTHnUjsrzc4` zhU;iIObFq!H=I_>$Q1LA4+Pstq=hgF&>8U40i3dM!8XcZJ=`KN#fG3^S8rfuh`{Ob z&JNs>;)Q_jtpp4zjyRbn>A5q(4ZUBr1N=*&d{!7eEBy$)*b?Yv3PdnBJ2fO z72>F&_9OHGHja=~)C-b#e)zjH`xOWL`c9Nq8I3hwZ0g-%V_sUm=cPN>`|tPaLna`t z?EGUd*r@Br-KaG`%)Wvup$KjC!C&yR#$ELRAV;b?{VG(ag?g0(nlg~&CBpPVp5d1_ z&`=5?rwq_8Bj*|*;B59}!V6A_0w938Um;YCxU+oaJz15xX7A%ibMZ|gw12}OI(6gZ zso1Pnird0{`@U2m4p0$M(XHQL90G(q2kYI*-@Q+^Q<=OBC|I#iW|}1cqbq_yQtx$ZD54=U2*ugpX!lZQQ>a&H=hq@`{fHTGlw@^`-k%wJH%ofjtraK^ zg{kW<_Wx^Kz9)XVIYhE=#$a;=vJeG{Jb(SfHsXOuj1C)@Z28V%>@n$cC~f;ldpAIC z078LVO8fQF$l`Nz=!5?%ndxsg(~;U8d!I)W2X}ZTU6q)G(MNiK1!UKQHGt9s163J|E_H2sjFux>{-9tn|>cxK9gCv6nO|rMFYkD`}79-BmM5= z%i#t40D60?Q`gOR?09Y;zdHLLVfEKqKE!%ax6!)%Wv1*O8LYo@f(a!=ZZe9goOVHc z-i20CH}d^Az~|7XqM+sC@6@8d##s_{@GxmsH=?&!50gpP$S%sd^$huvc#VXqZ@*UO zQOO#^MdYB~^3Vy|KWQ&Seh3rHhyU>f-r+M*1l%!9OtDx@GB*K4COKKpf-^fCrALZN zOHXHf^*^&sUqePRGltX-@n{f-0*v%w&++r=SXZqG0V@ndeQnNNF&BC^=PvOfx<^?9iv~N)E{}XORc)xyxOh^hUb^uFW1FB_*ZsXQ!i(KilBY9X z8(bz0B}&av|9`l8%dWP*xLr4bBtX*O?k=T4ibHXS21<(-cL?s%1`iIwwYbyb?(W4M zifaWZ_4d!^*?XLG#@S=653t_Mx#s%K`@Syn=QUSwYd_!>%V}GYv}njrstm-*l$E7OD7Q7;5gDm_;8>#^5-+iYJ6G3B%8B)Q_C;fkoXY}?tpDMy#;6{l2=RSddgVB!g3 zTcsu3Az>j^efd7S^0E*3gI>6l1;qfZZUGLn07Dk%@n?0|cepvAN-ureB2#o__T{4u z{8Lj6H>4#k+X};JKS?a`+_vsB3ldbbPbzY^0r&JZ<(G?j>VC2(%e4HOV1M?$gOc&Zfk}jWM#fcqPeU#1lE&Vl7tabBKfEZVhy$5?bWh6V(Ti zIU>&R3~>0@m%lPX3Tb%WLo5>Ha~0cBY?I|L8!JYLpC*wVhhUA)d7crQd5qCM>7XRx zH5V3MGqZ|w;s>c9GEbm7>djp2z%mW{IFB(6n8%%Er_XeOK-&V05{^=c(t>xaFSWi> zROJcKs3(V!Uml^D$|@@|6zFO5>FKL+yy>|QUxuWPD!_W^r*L$OWaT`>n=7W zf^L~Qj$|*rLXNcK7y#yu_A?Vu*6+U5V|4WTLmFt0x-#!nv#Sw&rZjD8Ri5UFO1MC` z*(XWqbJ2;Jy@mBLIn}l_5mIfR7py|O$Lpd~uE0G&yX|sM?9Px^-6QMggZ0s~~i#;5?v0h#u zLWIK;wHAr~oAtY9_`H;GR%YW}f~)7<4PZdc1__Fry^0_v$TT$PQa${Unx@HrjcKe< z!@qEON*=j9U()xjQ;>pIoq#CQO8RvFbKo339yH;ZkQ3k?%+4iptYo|ghaV#uaYctm zxFGW&GdyVPYUJBy3Jidn1|Ov4w2_I+`H_IU4*1^W4rNe)ts|9ZQ{KRKMk!MEOEex> z61+Ey5IjRBl9uWha1aIXg>Qu40jzO&+v;LmW-RgOcfTlOcvkU_AtMn~O_Y3H6Dr;5 zBavlD5@J33-izZ&F!FDj?&5yIRg|^N1x>CLU{Z4Grw7gFZXkgh0!l5TfK~dHPa4JA z<;0RoD~MX-nfo?^lF?&3#aV}wsH^;{6N)#9v=PMV<%{iWf&0HI%g?C~5uU&^Xm3Uc z(vJlwlB}Zwy)cArhveu5`H+d*XNL*t!`Jdn@&;xW1A?b=QKE!t?|ah!F?a$0ZXDpK z*VP7#0^)Twhw?#x4Mn$_=Q?7M)|RAm*ZPtbAM9Lpl)oadNFHcd%OC<0@QfZUS%K@k zPGsLsv#JosQfR(U!rcMx`=4bUS60NP5qM=%SG+mCBqhQWDHRVTG<1Gg0W=tT%&qLHJ)rb{g=0a|Ph)@EREo z-~Ao}2Wuu6(kaQ`%4C<2$)U1ZMKwNU|Cr9cYASB^I5Uod!V9bRE9lM+Re+BRyEa!m zKmDX4H{0v;Yl`C@9vOLYOGJ0nu)>qGU3 zmQD?;nqDt7m3ildCWuPfUC9x@bqot1g80OVQ4r6cr*2wGI`bWsiPNMKH&q)2m%SA^ z(xmRv9~{9(*7O$IDnAb*TK4vHth%s`w1~1Yu*z?vAgn*;`^O8d#a+LNhcw{Qj~eZ@ z_nDz2^bxXcv+Dw7LuH66;!o<^2RM+)u(lxcLn8c{vcr(Mzu|GE)AxfwkQqfl7_jb- zVHHC?)o#Hxv5Xko^VBu-u9U2co5snzay4;S0H-~Q~G!W zCSRk<+MU6gzq0t~XY4gG4?vxE=_h}95g=N2;r`cWZ}HirD3Sh@rSiXQx*X*j$`8TD z3}0>~d1OyJNqk~&brzUjERT|@bezE1rmNXg9o}kygkIArO47A_bI%;kN`Ws>F;3^@ zs@>NB-MYTdywWCke6m6#DAhn@o1apRIb?|jFc*si z6D>WbJJGa1q9n1DB`FxQI1RcD@~h+XSo0-Y%~F16_Pqh83fFieaXZBM;*qPRChGa; z+&0)U`bq4M_hCuA?oLd2`AVs7!oER^r4Z63#mF}@wIAJw=Le1L%+XX_1l${ANo~M_ zq`U6ut+#U{PdTVyJEtH0sW$9J%4m&u6b7X4@4>sch0*S0JD;FQBVD5R$2IEhB2f)z zX1Nrlxf!;r4>}_r97TSyQJ3P*c+x>Ui}ap4pm}*gWPP}c)zB%7un_M*2f9WQFFgRs zFo)jvMj(}9Grrb2Pj#v1QzJB%PpkN~&CGWicKFaYWiTfFbKr<9lf>2ogT3FN{7>ji zM#;b3WmQw%`#SE`TGo77CxR%+S}{_~om33Wl~3P)t;HN(N{}z}j8t4{SUrO2iM+lIygvk^MI9pnaA3#Ze!j*)=h!$+A*5$sph5eWII+GwefyMpX z3v5@V5A}0{D3JHa1kmd%cJ_j#r;s%~d(>sPHQzKBgd) z1BlakA~U0&k;V8h>ig3o-~poX0Y0y^j64x7Dn-bET1ti+Jfi*%OCALp3UvnuB}fql zW{{#LqX2ZdN?!_8bX!MyP0E0e|r&UT1@|}=mI>r(M z`B?ECo{mAa4K4m-w@E0n`9OQzQHoDU|m^KK)kR<@<@CyLFH)D zaHGURj54k$ws7KEkw_?H#CV?dQ38q=IP7u87MWXSjt1~HoIzV@h+5VO9!e^9@L08V z7`V0AUH^#hq7r7Ck5;@%C`1Shq>%wIW`c`p&nCF0!l+lW?_T#c3kVNFgpsnMYl)(j z)O$QhWRxJ}vhXV_$In;zOkRdcz_3de3K10LJ(k3o*G6hgG#Qahd7cdVg-udV@s{+0 zOcI=2<0V97;nacqE$9==*iIHI%YY~&U*h};s3F#Grjodn$ASPCidHj#pQqqb1eL$1 z-~paY_~ZCQAP;F@0IAZDP&2L=6R}AMuMnI45SV5!EnxtR*603aj~8;Ic$AGzp$7c& z2RGsg1bQa6U8UpX;a&!6g1{shTD{>T;JrnZZ4WEX2IdrduB?#Be*(WUN_H{Uf2OCe z;b)WB!TZu91w4sW8qA8ZfoEUq1+0+FBDH0#?#NGA;y$D5#q3Z1071D&rYK?o=V=hE~Z`GpR))o}AT_CQX5i91u4W zyFUtHR*E3}&5#Qe4p-NGV@!0#PVaF2Oue0bNHqQ^<`rJKR)4DjFOH3!&#WDp&PoLe zT+sL#1|--su{;Cp{uFz&!O4QC6c*{qW&*tj7xA0iT_D}d5z$? zYoMoqOpTg?k45&nUCBk@8Ul?JUyYQY&a8w8Jwa>oeZ&LLb@J0ef|m#z*fq$m3ztn- z#V1)`7X(_}^Ic%AOhu~xC+6ov_jXDC@ssDqf*4!-&G@p($kvRsFMLGtQ#C_-UMX~J z0~J20^ISkn-L0$FbK%vkXF?c-@KyPIJ9Q$xc>+;BjPz7#x_Cx}M|z?t_#wtS{|CA~ z*AU5<>_toTMZ(MH9Lq<;{ijIVIOt8vCV?a=j~hPEeT`92B>mx`7pYxy#JuqM#8dNe zAGhDlghbItny`xDRB#&6dH5ZgKfZbiL@vQk)QVNrfT&3rw=zqWJe?*J1S&a2gh@MN z`O<|YE~`p3;>(EuFw^|e9L1iIQuhGGwWZhj^N8F^8Z+lw4b8HTZTA4La#L)UCm9?a z1^2M4OCeH<$)jPKZ<1{!AB+<(x``I#kVyDV=I;rzS#Ewp-15Q1&mzp&r-rnihDahP z+Bv(mWKx0lMXMbsfg`N7E-q1PzsfO(=U!+cHU%$SNmMkqi^`~p4YQn{5qZJj9Dw;x9v%!q;)2?#x? zyS%6a!Wx|Ey_XvrUQCXm1;{-~^wNF^2$;^;%a`R`VRvd<78v@34B*FkbyCIN5&W~; zm$;S9iKM!Fh7TBs04zx)w+*lsW;@tUL$0-#vO-3RNjy`2jg$hE?Biso$iRvZm%Z_{ z@gLp|R&>w*(MFRp%-J2i?=f2@cu7BFJ-xd=Hpe!@tvPcr2p8D{De`e_$D?WgjW@6N zz6_c$(HK15COGm~(W<8=yT4oHm}hBP3=*RJiySGLgauYKlh@%6FiQkO{gElgsntuD zzQwmGZ!3aFwG)@&weLL(5*>YC2WL+6*%CjNh2{Q!w^`-Twnz3se&!mGY0--?b*vB$ znP@#*TFPzijn8;HlbC@X^RHpZ)>`X<6|s7yzAEVJt(`@q=dwR`=1iudi132d|_PPc!uf{kjG1OZCA+Hz$#%2C_0Iz*ksGi`tS6E9#={z~Tmk_4UScwO%* za7E4KHGPlQwCDtO+R;XJl9WGl-x0I!CV%u29Nw^xQ+vQ`0q0}HyCn)-RxAyAKNywx zJ9J0m(?Ck^{0G=>SOGErw1daae9py&R|x#e0QLZ|UWS?r7umwk|DeOT7D%8pG5#T& zY=wEDuWs`oomge%6v`?O$gVRF&eh0`JA9cim8G*!51$5P=K)NkbeeG+Y*`mJ5yu z@=vJdPX96-Iz=5GiZBNC9R-+|29SXbFd!HyNSpqlee|DUpZv z(GD<#ytzvFN=fwL3jT-)&U{Vw=Iq6d#+>6mZWp4>3H6Eoi# z>NPY#WQq9R+z8&?Ap397h_A)+UqzDVA2NTHdiqtS|Et{HS9#`J#V5DQ7Oc0buWuhG ze-(ZYkxafNa`~$L`d0tRH-j&?t@F32H^l!pHDK=lM-7O<{@>JqM7{rqFIievUQt<9 zlJoyk1DfgDTJ9C@nE*mG_rT!L@W|-@p$7ba3ilZ_;r~zr{*Mso@aXsiOUR`PXd>h` zlM7${di(8vE8PEZho9U5-hVRrHj9mUarKk;e-!S+G2j2<-z(fpM&qL=ayoqW0a+G^ z|Dgsn**=b?epa*WIJ7pEwVhyeW7Tx8aF?JjiJWXc1u{yB{XUY6)tW0+Pvg^xMprEr zs)mb&*5G#7OSPJvcj&yhSKiS)7;$9x=F`i5L2Gq9)mCrnY<@R5r2{p%Fn*I560p(z zqy9rb=5US@yLQ|zMy~^)q@(&+0uJc~*w^ar9@X0ux(HI+xZ01%H|IF!1b*#L#0Jdw zY`vb{O@8Ey2$KdQaBVeR~MZ^}l~!97p>r%?9Mf(scR9xR95pI3JjW z(G9{EI(*RKscPJt1ZPI>Q-fLW|1p|ih>dxp`kV2@(#ZEbYu!Pp;fJL-HANFugxWt2O6)92la&p4jtd)p0bOJW zh`aXR27ZB(4LEb0w3OHlvrsYnaTW4#=&7chJWUZU%$~SQ=C(>>7ZwseP7DyOFH*Zm4>%v3!<#;{=7&dA4;&@nzq=DJ{dF+W_{{uVNoK%yX}RXZm_J`B z?Vn)n{#mNOb<-63tRj>GRQlBYk)k2$-E1P!o5W&;R7xZ2ah%WD%Dn2lkS-TLuOAWO z?b#9VwKNW_^zR;4Aj2cIW;&4M0xr{hbVAKDf0M)@o8sWBD>nK-Ni3B7!O*Z%8C9a` z?!TIX$0D07Hg!78KSb`6*;kellkfMaPNC6lsazXY{bok04;QP4H^kR`zi%E-qMg|N ziG3#KBeE;6w@Y)bMm}Ja{ATvpDf^_@`4A0msbU>S4dLDyssfG5^iLp7 zA$6b7N#BDC+C9Ziog`%@chFY}jcmb{x-xf{rM+_NNg zWb$r7CUEv4!rY$Lw;>IsZgY5Qe50 z-ypSNvDFmrzw|K|ePr?xc2h}4oA)ti?1fyf(z zVVW&l)ln6JCGYqi7B&pQQx!Avyf)fm@hwXs4?Y_&;MY|d6Rf6Bg*W2TmisCoCLBIl z1Vhq{Xy9K*a?N{-RCZ|%#+|*-{r#2j5!se_+4!T}hf66_W%r@IG(j~o%Um?pg0K-N z{wj>rdN-j)B~7R^X(J|d{!Y8JYn?}*>5kwDPyW z_(=^n#P2T!Dda5Qd~2Rw?QLyw)C4AV;MAZ)#kb^HYu59xqz^1?SqiEtlm)skR>XW9 z$#{F2wXgNZ<)@~o|N7KAra}xErtCFZdyIvBQ)ZM{0Dz!!ezt>36%8h*$iG9hzs!7$ z+_})S(N?Z6-{(yE>aF_sEMZ9WO`tSad*xPN>m~+DX;}o^p@^$v$M)KR#R^KB2P$}g zB*{T#P!>eY+xrwhsOE!buL!w|90432K|}kv*A9Qp{*^k z+m#@x=h3BgJ50;1)+8{!Kgim8B*lm;0~V;FAR$bu`H4BR2`WT6y_N=#^i3b{z;DuM^PQi!|DMU0v7+H$I=uu1t@hVl zrW3fHsYdGI@n9+-V)K{k0wTfT@(Kjs8J&Ebl%}<|x0FN-rYpyyr1-aaI5$FUoZ5xv z64jl`@nn>C?SktUcUEe|&2ts8e-2rg#XGHf@jjIVlb|ifZA~`_{KL}^e%a*2D<Sg6fcGT>-24LQd5eLMI`!&pq?vvt z&3$_-{b04}#BD0E;imSqTRU9cNi!7RTgWezeRz(X^(4`-u)oA=Q(bJqD=)j9+@lNP z@LSYiW8p4D?a!*i=>>*y&`h>5-(Oz&@#?3KpZ?urKeK;GTbsZ9?7by={4l0-!YMSLmej(l8RT`BNI z`_T(<<2HgRC1i~EkyE?Ff4|L{VL3kXH#o4!F_1@E+QAnnQvHt{C8)F{xF9v)=G5_t1LRg5 z>Lq^1A8m^id?!x!k&#o_%rnF7iBvFo_McY z>lM2sMnZl#Kxs1FGjM|62!&qJfK>rHL0;@wTU-JOFn?B!oW4OGeXPF35<(iJO7XSZ&jc zn-buLEyG^vX?GQA8X5X>*%EqWzX&Qf$_;(*DMEAcnhTlk;FuqSR02C$V$(u69uIuLd;*}MRQ7izCRY)s&!SO-wIhm& zM$#mbcxB>8o`~A&=-n-r7M2c2@bqfA~=`DQ;>8R7h;9 z&sp;isoIjj!UpP!tQ4Hq7Oj)QYpf~1#`Imw&aKo6Yu2-xsAA1bzVZU2t>j3=6FOq! zDapV(F;D1#mc5W7v_ZZZarrWRH48t) zj-{*g5~77{DvS&UWSdmh+KEQc)zjDdk=OPri2N(hO0R`jpH{j;BYOXIH%rwHnf82& z0TJXw&a?UjMI&C(MZ}ujpk`=^;z9)B$T&WnK#0LLJ2$;;9_Vw>%SG^HbRx+LG+)6xHSqdb7a z(*u4HxwkoxpIcsZ#tBI;_-QJvcSaISwjYzq;2@_A07Gt+OATKDMDy6GfIfugho=?& zP~UgpPiZuhkw?KM6mORAfIkmJoF%U;CpQWuuH{i1iE)NngZZ{5qPt1YY0%YVLXIoM(PJ(OAR06@Sr=0nBxT_}`sm3IlPcH98j|Ar zy4E;ARLFUjgTS;CN#AF(0v5udd5xh>En{v>sGz`%ypYIP&+ItEz|jW1N>2R8RF#8!XT))+IqWWw_W|8w>KVUoYN#3H@zs00^8v#eijTnS!4|oJ!z~h8mlRIIT zP+_uzN+)v8>2%58bU{%PH24tmb5rJlz1LahEO+7&D~ey+4SHWO zLG3~u8&sS{3h@gU-wKp}8ESb`HWdeCR9=f9RmyOB`#z@NWXGlcj^$wM>coxdl+|J0 z=f7Ca?c}!`taN(;O9YznmO-{Ei|0G-;q#z5rgk;`&BLr-93sp%q^1`*@b}Y)Cmwf4 z=vfdR12jhvk|zf}^c73nE#cb({fpM9cy&Q8K*1*^T+Av=D_D;P?9lLEzT2gj4ZHLx z+(`}{gr4bgw&J2>n=`s`8+jqtgHnb`??m9P?*`q5CF9p><6|t-BQ^;J#g9~yRwjFn zGBH3d_Ztc%6xMJ9F@38pcM&si+!1JDJ_qZ>XR>56=exRa9Qh*m4%G6N48VMqhVY_Q zg!IaxiR;pj>Tk6_#JiJE(45n5g?#G7@}5SXz4$UC`yb|>!BcLs8G~qVpxUyTA8*`T zB-AbDzXJ(;Sm151ct~`{=&_x2RjGjWBNxbuC-tGQ`*MC}A@}6xlSlI(kaxG4$dS;u z;4bY`HL2Ej+74`c{MQw4%^#}X@-0ALR=nN7_HWoUuj3JD=-j(K;8zoyZnmmaH!uE! z=<0rc>eh)xeMZlJCm6VqUuyfzGQE=P#fAW>7^2Y=zd;Wm|<`LxeWKraYzfI<8 z9(`n33n+K6h^l-a^VL+%CIoK}CpseS%)Zdu*efix8;1d9yZmxL(ItC-*8j&>nQ7~0 ziy%wxPj>-C1ogSC|0V|xp-00bnb2r1w3I;%Bbq5Cl~0g1CNnEr=w1kv%N3gy`xLE* zCakQg<24 zD2zs;sdd)wsR74FF|k}yjI6ATA6YYxv$r>IV@`hk{*|3{{ppiQi$qJA&Y%#4obP^O zYc(Xss9e;jw!jn}Ph<0Vy<LJUtv;tDV@$fA6 zbv%P7VAt$?O{ZzFRt(b*CI2mTqFBc=p14TM>a zPxkn$N3OR!Z&~&l45jvCK&FvAMu_m?ehl^7US+EW*(64b7N{O}e)4J2Z=ehX$i6&I zRCZ(7*twdofbhgbSW-)6VM&FMwe>WRTeu3phC#{p2yutmQq@*ZRB631@#I+#0_W(w zG1GPz%1~Fsx0F}Pnkc4uTYt$4!`sZq@PF?RGePVh&uYzE<_(-N()EdgpQ+|xVLb?; zP92T3Y!UcR0>k5*sb@apfi%?kb=ZdCP^P^p+P?O)l_L)Zs-%G<45R z!U^ca%kTiNr$&6RIa#)ZIaZL8lGt#?{|rnDe3+i=MbUI!I2XiF)Mz}H8u6$W78=W@ z@^^k*Y{7PEeITeZ`_1r6_bQ(FMdFp9caH33A746ZOE8nyoE1Wm9C*6&`zXk;%|WAa zlVueHp>FXQ9PcOauahO;XcOQ_HaGy`-j68)0Gv}kj(H;Id*lLh2=eMO1y8Nhf`G2J zN@)J?d}7L33KL4eR5}6xATsiL)N{>tM<(*}$6Gt)KA>ccwq%9Ajv_q+jompbnAuEg zD63;Q$vB{RG;4%h%SXtH=4E=V6)d3TTAbN`+Y`dJjcn4M*c2n1608fMZRvp#Xo|UB z9BGnNVZ53hwB229opxVIYj8=K*p-eF>f%8DhIn=dZBJ2yk(9ZesZs}VB8bH9_t%C5yezcB{DF>3}sky75*a1BvJTV4+t1)c4oV0bHKBFHm9OzY| z0fp!*4ijsJ3)_`F4RwxFIj&nt`(fqAJ645(ODs3v<o z)bfBt!%fR_cGN2`bQ}SF6D*k_eDF z3PpMQ^$by350EJ~VDRrqC+wLY+y}MhbW$*bBWg9ajanQ{Y~nv@U|THVdOE^XQ5^CF zNGOhZGbu|XHjMk}K9sGmgl3{+$kldmW$!uVt)C*7uj4S9&vI*eB2TGm`VDLyihqD%Z06K@ zgs7HCgR`^xzhw!}(iQ530}0hVSy<^@H=R4KveBOT{OSk5*aT+xg}g{H(omYg#sq zfP?wQ#D5c%Y)Vn1*F~>&eEEt?F8ZpOteb(MMZeja@2S@;wNRWjn{M}v^aaL=E9@Z@ z)(9MRtb@^`hHMV=;yC`2wL{Gg`Ij>JIA}?H2L3tl{mvanD6@FX%r-=~o|}#88X^sG zwyd@BFB8S&h0Nm<7|TV?Z`#hO&phHBe%0)LFS#KlW>cl?)BIov!sN0U#J*B$2;=uW zB2d>A#@#((+Z$X~<#nIk!Fx7^+U28Bl$BNnaHUJuWX=!Ko4=J69N5oS{6WTSK0z!t zq^reqgkTrEwhZ`2N-?7Cz3S2!KN<(6{SY{6!pLNpe3Sli`?oAT~A=i9k}b;X(oz z1^$eYC3jiNn_fQv0uBQsC&r}bd^x6VISsj6P3y`R z{?oct@Y77#rHB}&X3S_+KFrx=sgc&Zc@WbF6u$DAu03($8+>ZJHUG=SLNVC1%0NI0 z5TvTir9_xX_Npp$6P&;IFU#l?E5l(=_je=k9DbRPQ!>+*X^A`cm_Zyh_~+x-<~PCL zfgwN20`B|*UcHds+zUX@2RyTtv9!~rKnaN1hlUQBw2QLfRzo#Z)hA12ml4$2S71b| zUo3#Q%;7;im@y?rvt`~Z6Gb1H5~1?Umr>0B@7imQXn!W4a(Fu=-&!f=3Z&@>4fA)6 zT*QDKLdK{hzYl~=uLV>bg^0xfMdtCN4LIo?1KpJLGFie~%NT!OsSCd(2AMU`Mr{&45H zj?vE!pkxh0`9x_~x{6>mY1av~kzfks{i!7Sxp*{Zi?5jjbaM&M%3E7b8IX2ulh?*1 z#?*VP9>bbVZ=l z+wf^b1QROsy9gvi7}(PR_vVT4orsZaeKtm;`=38&v;-v9k!t~R_cYFm{0&MCCvm@8 zqY_RNvw3jZ)Bq--P_L#GIdVnnf%~rpSg8;jTU=d7i~Dhd6XX zeHTx9djs*LJ;!Sm%lSeeLOg_}#KZAC_i1PD%2|T`X=ar{o-6Xr)2l*j>_VYI?ZwA)iid5D<1TO|<};oZf7EQE&|?F=6E7yNW7T)Js`{!+eU{ z{j5Jg3+ZbFTEE7Wrodw@qjt~axiBDeYTwz)`|U=bxjm;$iLd-kL>zY*$OxHl;|Y|! zN+UT^{JEDkvB9U1n_Qw=wweY^T$0dtdUCHkV%K|$?X03)BS^f3Wy<>-X}WM{7MpFB z6IaPuZW_FEin^pNIRgOVA^GX;6>CmX0YCA+N`gx*Wjr-496hy?g&)XZ(u;2@4?RFU znDm%E-q1~|2_<61-!K*DGIUB+MpjVbjli#;b)-SWTf@}ZIn@sa`EixS1vPqyzsf7< zh{=AYUz9ToVJghWGwrHM#43@ZYbCd_GT*B6sV6v&4E>Jh@djD5hjSl@=dw380C^>= zX!msA$0pC#RN=aCkH{HrC_u|psXc(k2`Km( z&C3bkH_4<=fLg&W;Uo|v`E&)^B=5@rkI7(duZWnMVx7st8)eC&U)c?mp0p&j?K_}G zGM97|eXHf4v==#z5a7$muihQw_GT`!g@0N{HQts7)$~!Lr7#sunm`Hd#v`1AE243mL>$Z^r4&e@kO3j_mo~NfALq+`)CKQ4_ruTy;sph5^Y2Sjn88(=;5^go03aiV z%C@;TqD_0dyX+dNz}g_Fv>^xdDCKDYz)0F-Qus*CoLq_lFSd;~iiI_5`~MIRMNW-o z8dje)zTW2t&EvbX4cyi5Yz|GyJ1|^>QhgnAez6V7h{Z#Yuh}aK22g~y3@#Rk% zfMQWP8!e5;)76nn8P1}$Kix3H3r9n^LMuvnrTTT>4GbnpO zY4;|Q|4!U$Os@LZ{O`5_sYfmk zRmbBAiT-^hVO{pKa}dhdoZi0VeSAGGdhY7tj#i?^7r*x1^U0r>;-G+9MO`{?DJ>AFee$127&EH@4aC2$yQ2lXW#j~T$mC)#Oqil2u3T`)+s zpj-ipE+Ww^Z+>c(Qw$8F0r+)6v#;xkol&z{*7Z|D0D=^ObXCqNnfZZ0G{v?zf_^z> zU=8Yhw|V;w@5R*YlYl|A<@zWi@#|6D(6XVtTz~oF^@7U<-Nzg0ur_EVbaqf$atn^0 z2VK*38~na!et?pYwaCjYuv2;+K|3d4umO!`R#;;|f<_NQ&G;#0A&`fi-=L4Dcs97ASfZ?IZM^O018jmiwDBgmv+IqI-_P8u> zCtVv)Ll6+PaIn1%gEM1+`;0CtYc?P zJ0X*?QtOmyFpb`S%O-RhHoTICNypYijzRm#oqzkz_W-Zm0SnfH47%Ni@|&TbPrFA^ z<^s;rpAH`Bib?6r_iG&f=YI%`K2_8)?47-M&9rVSfIZbai?CX!wd2!4@(pjX?>8`J z4jetZ8S3zdy4Q^{?)R|E?&Q2(QEMeiS$I+)_n8%O!NPPR>M`(|=fEm{wHf+R75MO1 z)nUu-iC-w1RA!5PFUni@RJQW6=hf+a(42OuKog+|aZFJ1jcx?;q z1Xt|+KsMukVw>~774CVlv5)Qr?hFiq#0?{DqvaC8f!&p1AR`J&Tx{NY>oF+JOF z`eVp{cOM4M53Gii1<8fT?gzH0{WRsL6l~hr5CDLX=}v}&Xn{?c?Xj~X#uZ#%R*Xtw z5i*|i(re8^+L#9k#n}r`SLoK8bn>Owzmd1vr&C*AizZQz;+$4#c4V`U<+Fn0RIHt5&F3 z-FN-#k z5p187#2^@;yf40VAkx1mAMlragvgXm>%G3byIbC94ilqkA>DMWh`d1%QgjS$I={oB z3dnw$p)}k^SlBI}9SW$(6U=-RTY1%o|D*T?dgSqTtZ(9>E;)78p{0p(AiJUG9)sbU z@77tY^ZIpJ=DiP$SD4K`oFk(3$LdC z`0x9(F~&$oH;xVg2NI)n#AtAI>*yQ~ln%$}?gky5(j787l@Jg?6hx&&u`#}K^SiF= zzRz{;|6%9syq}-f==et(-F64aI5+En#S?RNlsQjQVC zSr&Ta8e;E=)v%S%yi`I7d;y*{dHfDh+fl z1~zQ9{aq4cmB;3r39;9^mx-W%ELJ+VSkpJlL!z^#+`{7A<9u8$i*_8jN(c&Z8}V5H z^lrWOD*lR2{~G7%?f-?>UAHHAF2tpKufLW=oF)XmZvKz(1`Q&!{amof8@k7Mr= z#%`@_%{(m{%(spsedkd5W*p@uVKP&?o-&X}rhnWI@!A|75UID2@ai*1UWEvj&5Y5; z^HgVv9pHSj4SOiJ42-0T>8Ec)m_m84b!~DN3f~u!_Ln>t-=zQj_pFz4?#&hPVc|Ig z-M4P_kdME*SC5A7E)BltAS|f9-M5UmdmGR{YIY`MjLo=}7e{UJ9ewV0R+0X19Eg zWmmECpen=(#n^J@togbfY_lp!3f7+-dOXA!&LYX4txD1QrjQ_)Jj45=>t_}P;~^S< zydd}(i<&NfZmSvni?Wu@J8z@2#Ms0COO(ubbWKqb)XaHe;@$p`#yDZQoGGBTqVW%9lw zl}P-Fm-CGhhp~xqeJNB9opf3?y_(iAhk_*M%_2=kr-E_UE|%IX67^ za?r*;nZB!mZEP&LC@w!njgG;jXBET#xo+g)qfgOOBu3_-?A&Jr1WHGx>KO$i=!=Pu z`5B6+)M94xe)B%P=dQH?rY%NgMJ}xneo-^)PGI1%h|H$|JWw==bqIkMfuT3GD%x0N zMY0!#cW-T;>gxyZWb>mk_5KErn@85kEB$>d`|nviMRX>j`n+gKEY8;O7J=UVwb8qZ zmV7h+ZHlH)sAj$+;?b@5fgacPIM~DN>Z%0CYZ@RPlrk;4{Eu`2Q-8sh6FN9ExgzTFp#Sta-wiLTU~P7~Y-yQH9{p-5Cb69uO{{F)?cFM zB{zm2k~o)$P%nehrSDqlReSCW85f=wh$|oY*hN-oF6L?)I?dJ6!$%w>QAN5!>|lH2 zmzBd-ol@nqE|O6(RJrPOuqTZt`$)tktr3z4obUefpIZUmKnOywY$0eG^x;L8j!@bo z`g!V$2Rn%SF`dvUYgs5Oa})OxbBZI_4|?uObo`-J^Wl4@RFDerBiy`(Yv#^uZAlXM zSxBjjkGcDO1Jw;Lx!M8178wFc1->s<#)+PG4v*4P6dT?uuU zinIf;uyK$S8|(6~4?O#H=KeknXc{YTynlXCu3rSG zT81>;Xk*w^+0T+R2d#m(%hI=yMzrHE*JDi1dvUZs)4Y_1Vi7R4lzC0v)Et5bk5M)3%=B;LJhe5mKCnBg=9&F46kPXnOzW+{4NG5ra%ff1`7{ z6KtuC3fk;=qsS3MBXOD#>sOk3c`%mOtEkTYS21j0N|p09y@)+DODS|f?Kx?g`fG{0 zUjTeoNVL*b{PtQADTkB5ulC_5`Q*yEoSLaZ+V)Y&3%IRvFSpS93?dJY#q3m{iY8~- z19VVxwo)ji$3Rk2ZNqG@9g#U&TV_hR)}<0IF1+-|NC){tXGN9M6PP_ymiNLuAeD+v z0*Cl|#-8oizVPV}SvDIRrJs2no6136-)q$#q@{(-etyNPrs|J>%fj~ju+8cYWV{J{HL*VUh^*P2~T>j?lraG0EX|99sDiyd<4$ed$&S2 z0-o1}5el9@OIIJvDpYTy({CO)--E!sfJJcu+BH(ue3dCbqrs6L~JVE;|ev9*D=WJVt!mFA_zqKav%&L za?D=?A$lTmULl|?wSrDN6GW7aMHI!2f%nT5zL}^s8s7GxIEeN=?OO7T$TJ|cZ?;HFtnKLx(G6qk&H zgkPvv2~-|GuCQ?#T)fS`1;lW2`40h@baqGN50_Cz{|YqdeGln4TiHm@K!gJrI2fE84ckbt3L|?&`(o(=dvhjM)8Wq)Tc)cFO9vG#>Zh_Gc&bJB@vlbw% z`M~rA&O?MvCDao;Bq(ddO-<#*Hwj!7@m)QPUzKlqwcQVIS3m9b4z^(iaEYt&VWFe+ zayZD8E&t{QT$KoZF-D&aNm>v~D$3S=m52ASwu;+J5?&8rsS-)4Ac==2W8VXoXf6r; zWI^P`YuntBgRbVlt?*|wsXfkXlxd?kMU4yKLZ<3`PPxGqGKID1^a|cXn-37dsV)pQ zJH9a$>QeWF@5!Zw)Cp^_a783?*5tsPF@b~V`_0f8SO8q(OLFWkFkIm4eh`wL18dMv z+(Txllg?f7S+4$T&>Tp(jQebvn$0$1+=^j;ITQOnKSv_Vx{mpFSaMu;vPmxq zaiCFNkhP6sdf6A+sBh5>qkj;D0TQ!+X^Y?cazk4`HDvvQiZp@{Sph(KFCY!B9ndDI zbrJ%Xyq6QeoojWF`&qpoT6TVE4RD*Y^G|ha-Kw%+pqkV*@z^$EJPyMw4jWPN*RV1zU-D+Gm|z& zTv8^M@{2hHf{R*{3O`Yoe_M+hLR#ueMBf?bWUxy&4d5uPOTWijl5bFKbC56>Q*7gY z4w%5L`#40jC3D4TOXl`+@Nnt@I5i|IrCOh@RwdnY@@AuC*1__{|3PV17UHR zvY&9qjg%6jpcC0-%Xx zgPY`A_>$6z#EJ>MvM1qn^S=`dHZmV3<;~PrQV}iNaUL(}FycE95IIpxvxdnUTL(e;4e;TR==+A!@ z{F7?>E+PE8E_rW`TzlR@8i!SRjsW<3?p zQc^vN=%eXU%E#_szMRHO4|HUVMJg{T=>$9)T53?CZW6gYc(~TVSA`_hGU@ii}O{{!t%- zw;wgfrjL3sHYU8?XZ>GtU>R>=N?pC8DQx zAeS=7vc=&jaGI&=+ft~;_3o&^sBz?3-{W&1!e1BG=RHHU3d57m@nwZs_ljELdnEcp z3$y9lJqP=tp!NX$ZslW2msK)~n0ZpRCA#WUhh-x9Y!RhlJZzkMUU#lV@XeIX8y zK9u%vSB$OxLBePQ{>n3y&i4MDFMEEakjm`Asy;J;J@4lH!%q=zMqXoK4#T=blx}*B zx{@#l`hnz~nl(Wxp3eh#+_(krpsRWb!^^xu`AEww*RV2I9^>?$fvg!=+e_xDzRweq z#xq!6x{=MB9A>rGXD0)^^&JMXZl#sb#?DmJO&!q>AS0LB+#UH}3l0V>bR{@WyzNtW z_w7hfZz2xOwfvoH+p|J{t7r*ZKf2GkcN;@O}2XY>~e#>h9|An0A*4CeI z{14>3)hfQTD}D=4BZe1fYEU6f|4$nI%l|;mU9;P(7isk07in~l`9zbf&bvp3<%Gc2 z3&B?pQ~2*yxh2$T9O-&?pl7y-J)XKy)D!uF`(?qD#ql->NeoE zFwh*qb2(l`c~?np2(>uyr|;7-mX?uIBr(I+Uqhn^i zU1D+PUPzL4MXK9&;hq}@GfPpH17jdiFs$$HlCS$a*jdq4_r0x;p%!;+gat{wOz_Ln zl&I{j_iw0u9D>>3-oF*j`Til(kt>teJBBe6W4u@*nV`$2l})(&9_;j>uMD{*!%DYd z_mBmAL>7^RSLWvd;}r zXY*}tS8gcTtE5I5E@!N)+0Q$1GHdJGEVG=sTe(AzPZSO4Qg@*eS>b*SH^0Ycb-Y75 zpzlYFS)_M8Ti5fJ9(onH@7hz;CZ_S&aO0#G;v3u8cdM%-20>pM(H#6itc$OShHc63 zoGob~_tJ3JQsQ&zw{Lw@HHD|iht42nSFcfN&qNnsvT_O8zdz;YC8eg?{l0_k=U>?= z9zgm_S)J1yX89vpTu5F=zB6zhD=ghT9xv_K*}h%eQNhGdo4X+P^Ro7E=SE2)ii&@@eSsADqgM!%hw< z`?v3D{*k|0p2Hh71_A*)F*Kc3#*qF8=3fNbnkNbxyk;j zXEXsOcIV$A2M-uU!ZRRlTvBIhL49;)oh~075jO8Roo};XPbtjVqXs+#W+-3|0*uMn z8MJs;&mdSabx_CC0XHV_12U@dNoJP@!50hD(;t&VBWU;bl9(4bg;(Lza?)weyw*Q^ z*V(nA6Ue+9V@mayWmrg>ueBiQxu|>6LXwUg;;SWvqA5*?VR}meTOrlh$YfeaID}T8 z*b()lmM0`Tb6>$0c@jjRg~Oa_pQB)k|Il&ihJtA88Lc1v$b=vTK0%*Q=@;ojRGcvn zcj!jPG0fA6XUwJWL|EDkb0+aS3bX*D=xFMHPBwD{*v%-hfWqjxIS!y=BEaX&NinIb zO%E`ns*c~QFx%b0&Cy%RMnAk3V|^T}ctd9A9sdFGfgf~#iLH)(WUPz`jZCAz6d06uKCB4HrPU>n-IPVym!c_zS3GZ1Y+)51n3;+sUiWBS7%&QWqxiEfV z=AE$wnw1yV%Omf0FCBx-9O zlq=LoIC&R(iC)nkqpGD7ftWl?2H$*qH&3;uPI6E3rc4f6+Vy4m9mwyrN>v3~Z?`>j z&iPeQE+ymiGL*PK`)ubcq&j+kB1(GgF}ykdw*zXvW61D z%#J&>ABdW~I3QL$?>Mi5k0zqv8mEZN&j>U?I={OG-=_Q8(eUiQjN4@_!VN9p!8!Hq zP)I;?U|0zJD)3ejLnr(#n{)V(9b$B6^p)Q%xal>2zf<{EkFN zcQZ-}l!rMixNuFM1spr&Xm28)Qj;xOr0RWn^_LvX<8tzHL@2C9Wp6E{xuNP@vU%;- zEK9oP=L~b&YP-``Wo`Nz(gfWE7e}vOyV}X-W!;(Nd4@D6=2fYcbhgZ-40euf+z(x+ z?s`ebaGjO1_&(1Ux?ymDDAmgQqbQ%ldfws2t>D~8H}$P1`>UlNPG!CCVC=PX zx;+)f`kzwEDUrh(LQx!3w7=D#ombM3A5U4+RG497-zxk$TomZ?mt%w{btJh^uD)$ z6Si|409*pf4#1bt?Oz+uu(!yEN1=b8IU}e9iUPmnP5-_j{fXSs`0o!ja`e6ONzfuE zIBxga7)agn_wnG3JQ1(5Pn6d1g%vEjAu;NM_#minTxF81sLd#hx|oVydzf%k-%v@k zKh-uF>-7Yk`o`;F=EMzuDsoRyLl-?+GWBpO2=E6HZ`_XQi@GSWdd@%E_oezsyUNio zet0LGQXTe2pZttYTzBZRIyamiCpGSe)5@9o+0fBHyMKKHDuf{Z^ki1G@IA4xS9O)& zj0^uB>#L#13_{!+6~pNEMskM6##<9m6sjdpI(}Om$s;EE9fV;CBFe@6Qd|%=78{64 zq$UK|TSwDkUKfNt~3K4<_jVs=N?RmGQ7xXiP?zasc3>kMV z&MXU-94#z`w7ik)ZY~}Kds2Cq^o`T1NWmu5fTVs_ zyBF?JmV-BnBucpmMXJ8gNt{9@hP#4wcSziN&d?hCZZ72Ex5R}yOsKmgrpGJYIzi~v z?=%D~b&yo5e-6{Mg&ATq@NZZ%<>WkF_`G9 zB)KV`LO$i)!=V9J6l_q!>#szZX&Xiqp3SD5c50S39hx0jl(t=!7QB&$hk&-VV~Ji~ zIArQvfm@q1j9-GvED`4jM1QhXtd{3K@M7W1QOsq(^N1ydK|<-m;<3LZZ2-Pnr_aD# zWWY@b{R_K^&+>bw7qvn|B|%87#}Ph|-EJ0BaZ<7@f2E300A@Qd2%Rl4lf)HPunXhU zC1?9Kr0q~SA1bF4XKb8Mus9ANT^Tp90nPM?V(isVY;&r`=91uXCG|{A+WL`#R!=I= z&FcfGN1mw(Di<$}+JiCip9uhqm#K}8S1Zb`vpzktI4ABjG@B*?gup#{AL9@fs_$8N zsUM?{fQeE71|%SWE_m%+;Ps;PTjFK+scbwgFhL7!KT8xxr=R{bjp0hAS%rA%!yMwM z8fN`6p;SwD;RWWf@LaR{tmK_yKDpeYGiT-}EM^C5vSzT%d5~*rwYmHcrV?(9K^WNR zFjIn@zM@Q*sS7xT(N#_eu1=>W6^4qyOGStfoIxqh4y;pH8d4={|AzU-VJXKP>CD*} zvZldXtUudO#`wG}ColbG80eKmId@Xl0F1YJR#0%DoRpO&qC{6Fa_x`i`2#M|lmw!A zc$K|9xJZSws@J;s)Gl)j0HSL%=bq6qzH!FSoGe85OVab z6J(Mr>#8fI>`HDDK*w)OEQ@0bS*x~Ha;ve@-T_6|!jnC%snN7$g?&gjF`aZ3Sg=yH zE}hEt9T3w!%(5hGCIM{BS<|#sXj1}jRe`}aA-C*H8Gl=8O{0x1Yb~lYeC(lj8i6BX zb1W9hs8tvIyLqIcz$YZ);yjNzjGTZZ-Q;PCm5O?0Umsk29s@#W(e>A-8^UhS)YSB1 zwnVD(QW{<*S4H0~N_1`DbE%5e1?RZ=TM6lW;i;w+->UIx#2ARL?Ep+{-sfR8638fX z)ux-u`PJl>c(@^K6M8g&xormt7m#!V8DDEzUP7Gw z*H&$=2V3r~#f=To;a(pV=+JXMZtF;0WSd8XCw1zjoLw{(1xQ2&VSl$RbGCOI!kmtJ zV&U2T^iWtMnQyC!_^n+E=rHaA4o`)|{?rmS&pXn#`qF*xUgPcmCjQ97x-8P;kxFX& zt`xY#FyVE@~mLhjE5M}+I!00v-H8|S^8fDzSt~KxI??h(&a$ka;!~n%Rqb04tc-_X6yiV zF}!D?&_}}dN$r4yQ~9*W&9OUuAOAf5bfy2xAGI;N{z(-Vm8Q;L;f7^{g^BvWi{d8V zq=A|y2Zz<+>ZL9k0`+$}!8RjmY4l)E#2_ZgD!$F>ToqQA+;ZDj)IEaQZHfxXLB*Im zMAdXl!2@YL0m5I&hRt>EfT&b<3Rn8i2k@uEvAFR#O4n`nzCEKp3mt%IiOzT#dc5`c zv~wi@e>%V( zuoZAMwO1;%%ok9l&Kc-Bcx|dB6-Z^PHIIK}OWZvh@M9SCUqBXY4$d-n?fOi6V;TYE zH2@f^{xVG*8X`$E(zK01cFub`nkV0?HbsVk1kWDguv1hN^i4MhJUn|h!a#6-wnPU2 zvMx6+L+9-0{tiw2F1uT2+}Ti;Hqu}5!>G(gJqaLF6*YBsrBR7syH4(PF*dY>@&XvF z76zE7#9!x5zC2}2OEz<^<9Y?JLpKLS_^{)@D z!U62+*eA!*UBhx(Zjn`aG7;8Wse(=L&b zb!3BB-U)5>Y*0+I{r2W3-YO@J$yu)TZ-3UrEIfLjLz&vP!Unf|hL;#mdZ>-l1Gn=S z>1O#z*v$eXUF=dKZsGnmC?*O-k}1;J@JTM;=F2I6A@wYM8|sbG?*20+fq0SosF#y-#mlTrZBBP)nJOO?}*G;@-l)^J#vqoiTdbVCg3P`rM4C z(C`+MX(`i3U~+a{WotBXiA;%H=Kat62KN3A|C5B%fmrm4n8`Ln?C56sn@71%R|W^I z&7UCr{ofCt+h6&vdZx}e(gUEM43w0%>TE-k^!BWM5vLVVelUqJDADpJS~e{1v~ggb3YlT9q@jJybWi?=s;my<2(%*sUZC?JhV{Sr z8hEMFLKg(Fm`Hj3k6*09_+8~K7({l&=`qRi)s5TyWq{^@EWUEEH+bvSf6xLA&@AsKfj{Jxie0wCYR^rC};Q{m4 zMDveHYoGpYCLlgJAR$41u|QOsYASp zk1!68=KI1j-i1B3Jjw9h5_CFN#eN8h-WQ~R1@40wubtp=z||#Sw;TDcW8ulS?)kKH zv-!Q-aX8fo27X?r+{xoFm`0FPtkNp6nokWtY>`zX58eGf7T36_-+&!`1nDdY+?ANq z`_z%D_6d)K7%!IX$%fq`&h@1GYtZo{*^c87E6Y*)?essKKYjbixH3UI$dvK-4lN|~ zAdF?P%7&mCaEJS`#_7G=Kle6(%}nUaOz7ro;8p8?Q4bs9MivDoSDhL<>z%5L``=|UT?Ck9lJqR#Z2mc5KL2B)z9U9_i}81%c~SB58#oTYav2q5@f> zzvX?`m35~_h>-JO0@~zWB3wwPt74`^@zFZ>78&@poO5o#CS={Syu1PefrY*Qdz;jW zGA*~iG0Z-J#$xNKQlz8=qkaqNKDmrZF>Ejo(G<%`y=2uJ86$$5Oc3?8e%{xWK!G%g zXpOH<`3x6b&VSDR`Y{QqgHe7xq*oOAHG4_t!e-Bs>-gCO^TPcUOKQ zUUc5$B%eq5Gd!&8d0eG>g4uC7YJ;>27m=DCO$vZ|6FPfy>ifZ^K&!3*t3Vn{a}wQC z4bJi)WBI~u08$UEiO3m{L~{1rY3HIHyUlb(kNUy2G7bzC^pSG2z4UYiGe|37;&dfJ zGAuig6AiYaLTIZN?U=ZFHO7-kBu8{=X_we|fmj7l}7aHG+T}@sT)KrG3Np ztw5%#jGpm~>OwOg@0v)fue+MON$~7?h%$1mfiW(Rv$iQ%6|N}Yc6uZn^~CTvfb@aQ zjbVW!xj{@TxPwoa3USD9$<1Ixn}-cZ^t(;3PfO%{y1qc$Rd&h@*+`! z+wpYE-$5&;e&?M#3DHzACFzaVj}#_y+;)7n%^e$Q!!D4>=_Xd9Fy}ZcCN8y7d%H3O?`?W;VM~KT_V=<)m)S?-R36HI%C}By+-^AVb zWNwxn`Mq$95o(g4V(hTF1fk|QH-SGoPK9phfGdBsFkajze977eBAwrd<*z{Nx;{4? zbwjD}WI)D)(1zuv0EZi|#_LZ7!9#ScQk}XxUNysCx;0(PD7@23Q>f`|X^$_Zm;d|d znN-w$^ZuW`+n^SB?A4kv_+?yN*(!-jix~(4-e~fs>Vi?$;2?F|1)MP~fz|II^IR^@ z5u87&1aFMd+bU2b;Lt{SZgQe;t3FWx0R9N;w~(9o7}s~n51t(kiO^5(ONuf3cba#& zbnAg(r=;*^l8c-mk$K8SSzIfdm2Vzm^t%v9xz+E0dgE6tTl#OKl>_G(?}_Ax+tvL1u-0oMw#-u0SM=k9Zl8EG_zwS; z$v@p-es(vxA|$=xzZCBUH^ejVCuB@8mqn5ilBHTAOT-+m!{B2-PWx&hPZXdK{d;`n zIA>x6E4^V{eXDgR;YO?_ZBI(3nrieVMztulLrOT7+fV1~JnD(yzU4OzY@1uk zFq;l5&pWf_V0tM*bo0MHFk_va*@LNL`k_z+`i*mslgx>=k-<`#m|ssPgB^pbDa<^y zf+Mt1@vW@&CZBb7W%r%!eLt%Z4)tycs@_Ps0#9EPAJ_F;bgQYL6UH$ zs^^Rqo59P^S^h1>cooDyJsV*2tzl_&Dd5{tvi((yQmp1lbWgGgA_v2Ck@zPbThxh) z5yRh)?qJ@;Fh!=%u|5(F#rC~?Ya&f`l`wbr4oeYyZ!OZE$BtD&6BzC3Gt?}8(E=Z2 z075BMBZ0+;zF3yrqe+PC+koEi{n{J?GDnGh!mL>ntTj{!(ZAJzFvQYk6d%WYo{NEY zNWz3W>1mU^3_%w2Mb2uoJd1MNN-JeJy4|~@XK=2#+quK9d5C}jS1Fy08M6R9gTNb| zKf&-BYa4Z@H>LQkLT0niz!TF@if|0M>?BG<=_{gX>&mO`!no;$b5|c+qAYHmbIvrn zZx{zPw7Qz#K3RDq(b1yAV<-0rtpDpOfNjX31CAQ z(va+L9+st=M1LtW&W`J(YU5C&FW+v@{v7&UD2JW~JNW*n%tlGe_LafVUt^Ds!mYc4 z`B^6=rQ*LL+HgYoOU}L6xL>edLB%t@CmVtEz3jB4xgzqtm!7oEoG!XF5j^a7R&XwM z0YR1l5wF<2m8byoO7BcDb3qQcoE)PO#piZ`y*1Q#Zd$XJ0MK9ok7~Mg7O_S$@T|^U zO4;C?nl!uw`N7IM31;g;+_)O(v;(z6HpK8wM=76i$9+;g3#^Qh+9;uGKW!6sTxXPT-~5qipBQSV6P*#85q|H!35)~r7 z5kv2sD6PlubwRBb1R5_#ZObQnZ9wPmD&OlcjOp?#-H)qFvclI|xnh~!6xr1+@scqn z9PKGpaa!E_K>Q&2Q>PIV2+%e z?P(Fi-45O>lCbY6p&vy&bkLL==&%ID{m|$u+1~5-ILD@G8&UoT3BKx34QbQ^%c9~}Vpfmma-Y{}+G89ChW<{f%UO02T&+5WDg=07a>_An- zikXHoz9U3vLqf?lIx#OND%{~tZ6y0- zKAMdtbCtGa^EhrcK98;UD=F(l)lR#!dTy#zlWTn&%hq>ly*A25Ma->ejKdp)MyGk7 zQOdRBSdvt;L`n5~D&pcERr|@gn@gZDd(k7W@=-Pwfy3)%HOdbS8!b~z2FxTX21**t z$mES?5)%6J)T6~P>xLW5Z&Rl$#fEF#zt2Z}V4$Kym7SGPNSVW618m6vIMlisT>)k* zZYIuIL9?LtwCBpgpVLEFF}LHYGLJatSNN!n?r`r@UB~7qJZoUy0#!&gN;#Wu3z5yj zYFZm^el=|U!P(?l+!`F~&+dNR$cJtq{03nzP>^1okF3HFntitR6lF`RqW3wsn;BCg@(D z5`{(4pUYF@%I^NEeQZb{QtFaN=qqxqFZx}a&Rd(UrZaEe4-4;aY=f+z5uy=bFKarAS9vt2uE;s~2R+zl*Ba7ZG1Fh6k=mO;9vt3+ zjx^DZs}f&g(LzMo~T`rHB~7}TievkYBb#0;N%q$<@6G2gp4%d=^tE4N0e#Zs+!#l zACq91p8s7D*v!)wG5x)CIspfWQEEXnwI>K(8(~y&P87_{AQXD0AYbGO&Qno|6 z?>&pZ5ND9J*QFcGjYXN&`pJ$O_NqYFI@b#tr~@(tI$NDRZ^UuR?xg-;{BPk^j}DqF z#}k70)A_cc9+v**`LnjnFvr&R0m1)#t1I)Cw0@4vMlLbWEpT9|wHeNzw9iotUZ&Du zEA95d&tFojR%@HSe6r2iE6IFZ@n8Dmc8;=SXD;z zrlzo9hNaK;t2Fk#v%jXS_1#f6@uu734E$?6*VZ^6wezK{QQo!0Y-99El1>!uV(At7 zC9t*#<3q>Qy5Oe}1$p{adf6v*802$CQ8_7uoD|n${^1 zuMJT8Mu9_eg9tYs5f70JXOFdsi=ELocA3~pT>zIs;Vb3%c-0*cj&Xf!Xf54${Zgk? z10yfgRe!%(j9b_(7V`Wmp0?-2%#Z+iw$gr>W%wFjRh}z;?)ggSi7)ANamMM=U(XR% z>xIhd8b~rTlmE<34a&XQrgB76hYyN3dTpJ&c3!S>OuNptGa<-?IM|k|FJGsMU8#R> ztS#!M*ZsN~0dD0Y_MVvWl3yneY>j`|8sT4NrEq@8dNy&aCMnl zXaf7hr>h+xm0KREr5Jv-=d%{&_l~Zw5k1ADZ^-&eC@8Ng{B^i#I#|zA!R}A1>(@Hl zk6QjvBXJ7GzTD2ZGVoxHI$;O=D(WCRbW;_(f)3lS$u)hez-}YF|IH+z^~|&Npd*yu zt5xeLyip~+Lt4-0i1Mr><(6QY=?E`zB=dT&)y7h8v@*}*cZPn4OD~zPlGmEdUWp4F zsZVIvFue^pK*}7w(XACTSrV#NWMTrF2*H7?(S+0&$^!0hT8p;a`S|X0OzviAeY6dS z$gc1#bqEn&()wS*Ae?#IKPVdQE@r%2jy^1IIp3WNQ-1#Ruz-Bx9KHU7ZJmt(Qa(Kq z2s-d6hgWMdrfMpjZU>-i^=b52M3$L9l?zy!9jk|LEptAKx+W*o3I=5b%zWjIdb}9; zK{h+^gHCza+@n+RZGhX8_@B`-OXft((7opw^-$MYLH_p-*Qh1rsbmSD=NTf(p>Kpo zm}r(kx`4tLIUmfpzP7fB%p~x9hRzUstaQW1y%{jXg)6q!F_?$9hrZ3nnQ{UkBmZxN zKNCL+PYoAqvSeH|=)W&$4Xr+5C<;7DdHt#|^8LB2y%Z5Hh=W~Q`s|s{G(6qr{+g-! zyBf4wLHfjPP}}b$$4!3I(NG+w{@~}3-Fda(W56%4I_BybvYAE8=`^wY!+OED^xH_5 z_V7i4@9AZod*-ytl;x|q+1vcn<6*s6Y&&Y}b=UDhgUwb;8>*cE{d@tT>@iOBfG654EHS>DXn{DV9Q!AoosJllKcC)rp zR#TN-#oct)%d}0F?@}sK52YBmB>MUS_Oxhnod%>4vun1gu8#*&FzXe~u}VN%HUXSj zE06rNx#Ok1xN$vtT2(U47XD(47)izXEd=W@+0Mb~x3?iztv8W%mF!sgrRLpyk~JR3 z{LJIYeKqaWe{K!6jSrg=_!aH*N@;7`@ZB*|Ym@PfSxE*|w8byh-RVg`1;ToyJMQ63 z)ni6m7?VQ|pT_K(**wvVXhP%RFFBF8kCE4Y&s%>!CAg(<-%+^#_&A;(0|nW|_g|lv zD^t`dZhhW&~d_EXR(& zIzH{5IAm#xmVilIye{F_my+u3rpFUX$ERI|d&3=<E?JQrT~MwMXAt!uZ0A;gfH9aN!M2|IVZTcrDt9DKohH^(1!b%FU&b_Ycrck zL=T~)w%d6czx3YSx2X-M#okzR*-@P9DoL^E%loxp<@;r2%F^?eM1D;nG<8|ZvZz1p z-nnVn*Zu4NNsnt%#g{bBRwP?r!Rq|euTGbz&>iFD#jK_z>*nHkd_0x5?=^Z^*KR@| zbY%RJYPPRb@@@A#L{rP+^MXc8ZbF)m<;L&*dDJ!%wlk{1Kt=+${!V<|*ZAQlbU@~+ zHaieswJ(+ENi$7>*U%I)yrj;fmH${fhiC&CR&?wY4;%;nwHx?El00Tt|7mR(G`Mt;`awElj&2(FSotJ_|cY@NMKbY}OqvtVdn!P0uv5;Qn z$LrVKd-E^$ZT6MhJ=H8SBWXDXf5WUh#Zi}RKRv~tEqs-OB>b{peuHe8mojWx#!$|| z4oT)TGG%7pw_dpn%iM^Mf&|=p_>#~rw^YK2-CTERs?woR@!{GpOT6O0E%T`3Z5@7R znBkHHWyo+qp_TVcG>Jx|X*cn>xzBu;Z9a6QC~*nQipPFTHQ=Ife}CU~`*-$!sMY2a zc$0^idpJuVj88rAoBlmL&44?X%ANbSA?2UAxJxZP!}d{L`?BjP6Ugw4?Niq07$pWl zfoWtR%;N$XW&Xqhpt8Oc*r48vehL#qZH|3=2h;=+>DK38y{-N6z?srOO@Hw4JYigE z@PilVG4ZydOYDm9|))Pa<1P+GZL<&`aM8ufo zX(eMcWS*C0eJ*e zmYhz($9o^|)`}4iW+)7D4lK(Y@kw^Z?dpO=sj980jAh9diO~=f1W0|wtZ0wWPRq=& zM*T!-(G@|6X}`C&>v7n5DZzloFxCP+9KxWwp3OCcOqP3qj=3&C6}f%RXY?hYxiap)6I1Lo-}f1?0V=73X*H1R*0o4^+6o;%Nz$q@4%J7r& z8mo(TD3i>D&RY_R`zf+R;*M3`OHu9S>wJ(*)NZ? zna$bI=Ux=F_Fl7q&EA_1^-{KGp*fAx(#+pmAox{;X_aKa%xfVQlP=zP!?r-Dqy=t# zHY(xcd*s9_MJPvX4+oc#P_XKcf%TotaR|ocLGt~qLcx#1ldc^PKdFIzS&f+#J5xaClr?TwF{0F zodP3Qn0G;sUcb;t@%3?o!FhA+KWnRGsL1SO6pmVLz`yfq3K@l^h$lxnXb1rAmr}T9 zX*5D>Uj*0eo;o>+-#!BW%*9O-KHVc&na_IFRoc=*lG{1%QWepcZ_-gjQK52>oqcX@ zZ~D@QZ5%H0&1Q;|?1GY!b$Cb;i-mmw8n@WnoZ0peI}1M0X%&<^dF>uf**dA9D1M5Z~cd4atawUKNzulmM(vf)2T*LZg4 z27dd@B%Rjyg02mN_6^DPP>&o$yWrD1_QE@S*%W~e;Tme1k+<>VPJ_#wqRxW25;~Wg z-mW&qBD$YNxcL@-DcTGs8~W-$5%gAhLrs4zznKx%Iw8IzH#uywScQ}CdIyJ0d<%XF zM7Wub=Y2lhyB2DkwDT&NjF~~yPmLFf{5a^LZ_Mj$q2XKYIOpU!`3;+L8FwOr&ryu-9FLjSuV zZN9U37p?2RO~CX?cb{I+s&GcCsISVOXU6^K#Y??MANSF>7FAk4zsH|rZsPfi-Af`b^|Zr=Ys zOIo!6xdWd6`uTFu*=}OXO=d0A z9)lxz2uFynDW6k`rWBPPKTh3VWui} zq|IlgB2-|Iqo0#bP>&`ckaX1`nO)7`El%S`Bsp9n+=*KH&RGA$1e}B;0=)O&Yfc!O ze(tB+OkNCIFHv%9PI|jA6J)oyHQCR?B^idSy3`w>|c1M$hKmNCH5Q zqp>;~j}k;@i+PHrgzbaO?b1r3fmhF-YRLl$%VK`SO66jCrYGUai^f7_p+n3jEK4zI zQOTQL$!^LSQmskICp2HGePo%r`OWl&KH2)08Zfue1m;*iQ@e|-8F!0U_Bs^uo7sv- zH-p{ffxpbGH*YkIYM37=OR>v?CLJD>E`wF{RH8ppY8~pzKjG-uN$ACw^on>Iz(#41 zmI$5g;o2Om3>o(ghHx>-$SiZ3 zXn*!%=NDVcF6OM6BN6ERT!iHi>7-uXlByT>D20DFY6_VJQ%aq-&AJVeD<3hq4H80J z2j%F2B=m%wdR{@NRPY@H?bE$H&3U`LsEEn+(tXp6{SA<=s*CDCVl_&#Tad#t0S(T3 z1Ig){8^dn?ifz&*B?i8t>_qh4KLu38K*P_`lTo~QM_=UZGzUsicSUUdih18f$*>i1 z7@nCaN-C%Nx~}rM_@Vo?N-*_zAOc#_=WJ)_7-|xn$`TKY?unf8N(InjT};TaoLGoF zh!APcnx^8OhkYFga|F?=c)_4Q6nn$fX!hxjD@k3i$wO;a9toQmwq&EF56C%puvx2#XCHn`UebXi zRn}mI?sl1*PZkSzx=;rEn>WHbIysZJemLL9W|UGK8R3u*HwqxKNO)}ERw<6tKm3t8 zw5>{L_u`yQI2}}l#-XZfY|u!OooSn&nUTRfR1wNv@h*N+lW@>sd{8T<#H{piP`X*M z(bv3=gErfK1+0xFDX@ic&Qm@f@%#Hpq49f7ksCg2#%l+|JT^}-aDiVv9nx=h|C7=M z5tLud$pOrH1zx!al|EJ>sqHObVn~H;Hs%qiT|aUnH4e~aVW)c3hdxxV z{2N?;cU!{59CYC8!vK_Cwzzvy)MK+dZKF-!xMLA{xUEhiRnQQ?93?8}{h)Qt@ZWx}X;g0Mlm;a(6qYRl zeThBGwJL7Op>ftH4zSKuu-k{)o{$n2NxV-#nKW3Ny5oQ)K6oq$y;qeeXe5Z_N!v&* zKMteFB>M6^P(Mq-K@v@al#s%oowPm1l^ zje2vioAjhx#n%1(BYu!D|DgE;^m0s|hGN|okc&B?09Abv_23Xgbgiesou6Il1(Vte zR`>2Io^B4V>q>RFdzxA2vN(eO^eCjh3z`>NPT@kj{5eKzx|%u>mTK7}ER+bM)cY(( z&w_EJ2l#KSHi#cQtHUYt#lbG3dbwMJ#6BPz`k-AZz1KDQt7erl6|B+QTz$j=qLP&x zxC)l^H@o@$arzyT*jJv5jT>Fi;siRU0+F{{18~3_vIRgf*#piHg47JEmzBzesOntg z7|>Fq#>E3a0%qg|_X&mFXMrz>-#U~M^HEX0Dv;g$2r`O>Jpspb9lo7Gi6rteJOAm% zw<;S);eGQ4cH^sh6A@|o!@m4-5e4_gtT$+DHZtkayusRu5>RhTXHf}J6RQnpTV-hW zC8sVyIDI12-$^*$o7g*E` zRnls<`0%PYhvM~rW5o31cJ+RnU`paRb!J6SL|D z@hC}{w}74$s=b*_u68_(_#Cu-!o*%FjqSk$w$;zvy{Bp*xR%B8`vp+(+t3Cn2KzOmYtv; zgkr~Q-WFUyjE2GI77ZB}ei`+X&Ds?rvmW*>aJ_yr)d?+2q7q7YqaR1--vYItr{F-% z@@{;%NK6P4dz*Oy;sWGMqH^Rr^{6ieFB3}mLhGm#>XPV0Vi+(=uj!$_RJDJRAATfk z!+MkZ@_-nqq1t?-9n?I6g^7>K(mKf+Jxo=?PnQGF!oDwJQ17fzc2(&5H_C&VTg)&` zsH&HS=s{Dp*P{ML`M=iPrUPJAM_o|W`KW4otXIpY(aR5GwKSrRe+78wKBP3S}j%?BG zuXQCdxAplRfRLamU(TI2O-&W!HPKl-`_6u?I9OXU z^n{;dZDaR4h=R)i6dm8`f|NM=y<6f@W5ysjk;wiHUYj!4e5oy%2i;w=C3e0{_>G2L z>3Ij&bLf@m6(w%%CQOnK*of4M;)ppR0`Iil8Qe&SaK8nA|9RzZv{YBfKB!6dReq7z zBabcI_H_^XacKF(0PH{V##ATLTENBxrh48f+nHN4M`M2Zd^cBMq4wggsd#(9z~fD3 z2FEJv%4o_f-EDI&ExKXg8|C zCq?pCVYeU|tb*F+F2@caRE{j{<=hlvInhIj(z|#Xd1TT_I-<=JD?oN?>ESk-txE9r zhh|q^FZ=52&f~$GNGtugSGjcE9$W)W1pa=iN=O5L9M8ecvoP zdLjB|t5t0Al(HYz!}Oiv#iWPacc+)1PGzF=i;jT+0MlWu1zdORb_p{8OXwd?&dXuF*rV>H$Q>rdAdOGeO!nLP%PtQ&$zk3#~vhN){E9ugF$g5Bc zHyQmUmNdjUk4iQT06w<7PFkm1>e1GnPsGIa_Fa~xXlw#OV$-Rl!X3a(d2HHbr~@s- z;KoI~BOQ<4pdE-v(HHxM}ow_W~J|xr4>h)UMLPZ=?FvKIDSqO5?s0`-f_K_6Ap10MZUWlJOd8&{e@ z>U_Ly5;J?HlaD!xXYvaMYv{y#prtjz&>YB%SPV3tj-A)?}WcBTk|1aA?de3%L{6B1me(e80+YuEP zQ~H0|j=KL%fw#7`x9WCv{|}scp91d~s-PPk8yl{^7d>?5?whU_?%~w`%XVyRe%adI zSwvgO$=MvAoSvQk58HA0KWxX%?XUlS-`s;9Dp(?^j|WlYM34#Y`=+b^Wjp-rNnZCS z(umaVPPCLwr2bqEzwklQJP;t_{QuaFnH*x?@dEX>N)@bxZ$$r*{9=42DiX@5(at52 zCzio8P}8;QOH%Y42*yb5!uc3>3KI|3mV4UyEO>hTU4gLKm+4Rpiu(rV2ZDf;j>3px$ISw27Ok827o4tW#M_(;fuCZY)1CUtWsk046*qA8l4=}TmyQu@A0`Bv1=)zfR2|IkjdzDot0WH!8!4=Jdc z`0}O`ILJkzIq9CA;Pez08KOS!8n=nto(VXsXG3KG(bC+7ODm6rJet)qWmQ^aNR59}7=BLqC(;h2H4k>cy&Y zaN@x&kl1nzHw5&8IG(zUr!A?Z;=ahr^~vv5K$I9C5QM%BhdompdB~@r{^MipBF{(( zC8fRcWsCmZFna=!&KpAzr3Jj0U_7Gqh^JG_Ju(r8^N_GJTS+L;YjrA+Kv^QACNVc& z@+!jMWcQcq?_^9W^T|uGij*(xVD4%Y`jcLYlIw&Ula6tW|4^^~(kp*Rkr=eSRu%LR zU7*ar?PpiiPcXDvI*N!G!&^Q|v|+=iA!rdJ!-U@@-Iv4C&Ky<$@aHx;H8bB>4;l;$ zKLnf;PZA#oshTY#VuQ<7|MKjrvf|sKOD`Od@v#6VzEtcCarWh9YwP=!iC_+&J=V{Z zDbLK4*&#Kbkiy;SFftIq@Fg3UvgEW+x{p2wEb(chdiVdyh+)$nzpoZC1X zoKRLDx&L0-*Yzkz2fnBX7KvcBR3zBw2-;R6BKwN9T|V&ty3>$P2{a^10S* zj)!DW9;5>W!Hg?bGV*_oTeUVvBdROR&f_N5Dt4dA;1}`Sn#ZM)w!ojG@r(|oEEW2Z z@sIbXmamFzew*VksE;MgAbGJ?d7-UlvIsJ{J4rtzh=;jVb-U1Ojc@*tr zES1C9LK+c0(-n^A06qAi+K#1&$_`}{Z}$9?x|UCa0{G0}@jYr~KEBz_+uAJnICR=< zHw-olu>(HLKyOIKXu=0ZY5M?3%u2M0`O-& zdjvZTCw>=%0GfR*Y=9mrAkC;C0#&cId#fCdFCCn+I1#r=ALLmjW6tSCH&;#SZQc#v z2f?|Sx7_x7d}y2CV)~Iqcgyp~#uoI%ZC7GjrDN5Nzar3xM>Wiv5gLSLL}lX&uLq!~ z^5dOo#W1y3jU%;3b;Mri4}%W=?Zev=rntG zNF1&s#a9QlGx5_N3~zLxe!-q|K_W#XkDWbQeIeVOc?BS#=a(;(xA3*ZY4JD;P^p(m}H)tx{!?M|eb)M~*$KeNd##S#*6+B7}?x`%V?THs!u(w@V#hvt+V z#jG&nYGqC@zrlA69>x;`0Z-bQfT9Fu^!EP(4Dm6qHb;($y?B0$b;AixP{h*3ss=|Z z&(a8_f3_94-QJ@N-_r%3aaFy&6}FI}5}ub=$r4!6XR#~ET6*+&UYq$lq&y@BAkD4# z@QB^x27jkq?u1h_f@9Q310N9BjpqV!{g-&INgfyt2&|b8)pWr8Z4(_@GB#j+7&u~? zf*%fMH9+s-t=?F|Tb@p`L+s1ZAC?@($OY()!%`@pHO=FvP=+~0;lltg88bX9C@BvD zUq;UJkg+iP?cN1{6H^Ued^w2ss*2Fu_oo#aK`-g$mdt6dVXET%`Be&=OgxoZ8z&UR z1!=$WAN%gK3&|x?sa-B@^@^)Zsbf}7w9FO75sDiN1vuO3&<0$EcDyY3RB{t(2< z9b0n|bRXg3UDAut1Mt#@qKKkJdU6EK4Yy09BU_acDez1IsduP&SVuxNWon}OUFtRx z!T?DB<&w;X0JH#!mDM9s{6X5b4nQKX+F*o{Bor1LoVa`ctxzXD2y{Nbp(nqxhWjZk zacxkVgDXe{Tfl+ASGaHCqv2DEiW-Qsl|9h+3{G67@g9W4T3tj{U(*Hs3N`D_F`)4t zV+jS|CGhU4nR=PM>QR0n9=@ZVQ!$_WnGN8LAligsOV!gzeo^w9yHnw&euh1m!S|Ghi_nhSIgs4(=U~j9#W%`>-U-mqFP$4 zOI^rs|oZqy4*-azq>a$cr8-wX>ckyh8$zS=Es^EL}p_{f?@s zX4@DCL~y32%&RTpLZV`Y0=U|ySO8T=-o?jDLzgTf?c&pZN45r=b&-d3P5yEO2PgMU zs}HlZnHF>;S?2VVH4_sHuz2O^O{UxPrf71N-cVt5*%D%CQ~f^X)?yn-+ZrzPAeKD- zZF-rh33z4kL2E``2F7hvMr~0(S*iNqxV7%byfGh6qf%#NLOHWzsqn~Zv3wr~xHa?s zOs0MhtSpOaWgm>}D90X4cfT}ipEc>d$3d<%37C)|dTg)%QqI(B@6>-5qdw`{f$^=D zeUHi226tPUunoT=syVh?U%EHu_CfV1vv|#VIHjSqY$|`*yDRqlQDg(3L!tj9ha(Zr z(ee!r$F(EN_);iI4#1nO|H7BJ?)(i3Vu2UWq^sZ5P3QWn=lrmIOCnFejC=b=oG+Uk z^@mu%C#1d|7@%hv6IaDLN#eY}L zX_6zoyE*Ei4L#l7eAQsS>eWy)K=TAt{jHRInovC!FR>E579kC@iT#5YUZWS#uT;T1 zs^l@+GL#PT^{&34>y?0rMuUv_ay4NX0zBem?k~Rzg70?Jtmfoyjhdg z7kI`=bK*33iZY|J-au-cXl*Fe_{gNS7sO^Oe8>QJ{G?1dw^x*revytik?8#?D(;@y zr-Ii}u7W+sGY^a=Zzj7$E!&XIpS~&3;wMA#rg4>C6Wr?_{r&{i3$N`QSVQ|Kj1cL4 zBf{>|aa*Aa*<&M}_`r_|!`d!?a?TpBF$76V%h)1##f0lqdbh@vm^UwRoAHaBjKSf@YJ2mIu!wGr9 zy@uMKAInr%Q_g0U%o$x!J1eC9IGrChAgkc??D&Oqg4fYf0yZiZnh-8bvT;2b($5)} zy#FpLYbl8(FY#MIWw3b;`OdAXeA|4G4Re&K9{#O6L><%jqKkjWe16F`pU2Crx<#!-~J}kt2v5B8rPUjj17bU7f?~boFIDUfS;@3nfrxRYVJG zj}WC{8QpOotAW7I_h8%>SrTEtX&qqsDe)_{417yj$8FZ%ot zOWc>=$?r`*M=k&NWnD5i)#@$&*Zux7x=#JD7-~G=_WYR4(u+>~L9}K>!e{3e>1#~_ zADy?d+xsNAw@RM?k@J9;?+zmXN9-g5)KyC>zvgm+ggKDAQF$B2X1V6|%bGxtU0YX` zN7t_xo3BFq!|Oif&+SDc@pVWhCT(%0viNAdeWw?7kIwL)B+exXJnVgP*d}+lb~Zu5 z4XK>)tC!PAyBv;XU$7pSc=0p1U2hKFp=RZN>MMH~VSCyHJc{syypTJ8%uj3zRNSWsseY*Yo0`r=8U(#ix z3a=_D`GWtbR#R>6cfP!^VPZ(Qb^dfy`bR<_qX(oTZ)4psVGTbEGpS|JZn#Xmc>nHf zcon?(5~}3|rjb8?p|cYzE6fQ;@ofS7M~;5fO)0m_?8<%KZ`6TG0;a~+oX@|~T0xdO zYc9{3sJyP!-aD0U?dfhp^`!QH+l;3t<7Hjb#h@Xp;u>ZGF*4lR!gu?S;)~vQ-<+<} zM2ic_Omzs6XTzJH{d6E6DX_`LvzMelI~%2Kq%Rx1z#-ob!SXVE4+K0E4xbH4SMc81 zw}&`QXKeiBIkvMqj>5jV_Zj~=^_Sy7dL4V8(yj`>{CdJ3PiFAVhp(c#_9SDjI>HNR zFx>uJ?b)Zgc^kpgfLEt}p7* zFh7@-nalr7Y|qs*Cr{$WSbHg4JVe-%s!b(K*k~xz%WKF1@T}4+wRFv=Z)5Zq>_$h4 z?k9fv_(bXRwV6>tFWq)A)sbb&#QZ}96nT|q!jWi~AN4iH&+c=aE@f!Fs;5lQX!_r1 zt7$dMg_=-m2c%5!H|Qj9_46-{uc9wNlxm2QFA=1)Vlb_s((NbIYaV>%En4)c(*8Th zaF_XLF*X)mot_hQX9Ht1m0lliL;ie19j{;2d7Nq}^h+P6t6!9NL>6lI>oSTE2!5rh zc^Ku-Pi7ZSCf-pDH_r^t6LB<>CfxVbGq*a-T^4k9BwIv%*IIX%Zuu$~4ob~A{Y~Ah z7!plLUG%W`<&lEAfW1{esk*u$D_U%l{P9$P0#_5;JQ&t6*_i-lxzJl#*)FVQDAf+GJ?xiUy*&Zb_66%e4LV0f8488t=uCF6)mbSb z|2(Ih(E!O57dwthc{%@qbf{iKn%*oDxK;D9NamV|$S7Yl+#bUwW1&@=Mi;S#;~EQ4 z>j)>a;O4dkcyU*%em^K}YMV7OGM?O9&U_n1V+(--D9)yaDxIZ>flCbuuj}TJl8}aD zBpY?+cM7l6VAxjTEYQ4H{7dr~i9vl16_Qx}C6$o-W)E*BF(RR?`?o+pr#u-R);Z#; zWOi;o>7Xn(KH_|?d`}uOKoaFYlW3$t_zCvs>)r4uEd>M11v9uyznRD~EnAxx-|X-L zi#Q~64>V^tZyD2Wt*D!UA%XHCO!Tc7%a|lBpDFDkkBaG3HX+Ewf47`a`Bv??t6f_^ zhJ(~fAumsEnOl4#+_%Op$%Jn#LwsE-LTJdR69xIt#wIJFJlOkGi8EJKkutbzC)}3fH-FHUxpPz4&uG$@5<7G0mm-gu zJHYb=)=?m6N&NIzvLoxCsD2a2=CAQFo?E9h z-1Y&G6-23Ze)!yxfN9O|&lPaOpwV|liUdEnJY!f{MhOxW-UhBbc=cH6X_FC(TvzDa zQ1kopX+T;>9nCy|Ym(xgm5c+F+lO1yPUDH#iV>Bb8=G@)G7EPrycN}b$Z4iZFHfUL z?h>zwSScbR8bT@F?qcKc_qNPHBQzF`6ag$sr3T(C^N$Q3%G5vfzz(*Ey|6V;!!dB= z4+^c_UtcElGFNDkMj_i3{M6(XIkxvlxB@&7coIsKnyP}K=V1SdUr!-{q~j!P$~FL+ zX=={waZ09Wt^xNE;`Q6+00#AxyLx$phW<>MtIv4&BeTR`G-%YmX8mB~@B#qwOQ~Nj zPcZS-3^Fphj?xat5Y`MbA5jfWk(VbrH19cb5`I?~mUNEORahsbt|E31YkZ{8y?+lc zP@4}YhB0Qi2oNslgiCCx_A4dSic#t~UT9+e09Xem?}JH@dLZhNik9qo9oGxF_4+cVUo^5O+?TQuZ03_m%@bm0{1Q9NR?-aSalKZaY^tY)Q*=I4Dc2_% zGdvmg>6rOxW`T_RLeF+EGi?J2QZ}Te!n*%NIz{dgH50B-DD;=;)0#$v$lMxOW-A;X zH;AX^TH|dYWJq2uWayE3$1&m)&$wGyogF*@w-@wS~#o;-6ZWUj#;u@#0=rSE>H=}6Cvh66W8J(-xLrOf?|Dp|Vn`|6 zs5WtA{EgvN(gUmHSeYq9wFhDwpS*UuC?9NZR$a#IMR`eB_C2gSTw{s`Yf z^yf{(YMgrc2@zx#)Qo)|*^RDknMrlTlDqtQ6A?wMtHPZgxs`a2U4#I{%+@>ukP4Jk zdneFka7)y7p`DdYfSZ@Z{QGX};{mf*C9$qiT;=eBufR-Y%~dNtwopRU8Y-<&R*+%K zL|_tDeb_Sq>G~d?22SBo$`5hsQibFOn<`-1_HH+ZNxk{gW3+kmD5>F{cr=p#G1ZP)>2;-tx17H zN~gc8WNp8wEw+HY$+waESVzsl6zvNH-0s@8QdrbK7zST)dGXMoY@6N7_|cE0<)cu= zkUNpWhfV@%))IwGA)D!q(X-OL2ZdT6-V_uNq8RoGy>D4Ow)Wzme`l^e|L<$n9*sxj zAEW8?%~{=EK;gF+muw4uI$d^Gl=CS!+M1*puDWl{o?;&U4du<3ANjc|PuIXi@Jz^sRxrbg50{B!3b$2g_RIrlEra_B@@++UgD>*?tOF@ss zUvUeCwaHTenpqFTRmlg{@O;>BDW4aP`+a`~v1As~KjeL|h*aaLf$f{G&($ZZF z`(zMju2gI+0}q74wb{lclWaqu?HmVu#3lSKCi0tj2vwAd8d)SN-I1U~mZ&;{+R*l? zs+Wu&EYKy|Bo`l2jq#*@F(Pgi@Hu)W)=J4c9E1eOp`vB&d7||qSS2W91AxszwDoEc zpE`X`>^PThSU#G>T8KbgQ2?LJSd$jYCLa=4f;g)Amy$HEn(X7=RR`Vpk6tj`rmru`e#&@wi2uH)p zs1*dBxJmp%8R_|WiX4)_*o-7+D@?9AW&7wkhb?}mDgoyb_(wI@<8ERWY>*cO`)3)9 zt%?9~+g#pY;!|ZXV>MPPGyaxE@Qc4{&5+EmVgj49jh10aw*ADr{hajy zx>I5?K%F4p3>(L+-izn8m2kj(R#Y~rJc0@Bm9V9jO-hK!1pvs7gb26rtx)-uE(v$w z3=2uGoGsvUT3HS?$ogRjH;p2=S>JY;b?KI z;G#VLtbZ`Et;QbNRrW+kF)FifaXd5KtkB9cc zLsdNIF{AiP7@v{nT!{d`tpdnzl`O^aG8<;kHS zFdG$bvq|65`e;e05Jcwm1))R=#wYSm>x+dIy{{Xa}v$1vW2pgBrXku-H;rGssa6+&Dbg<`vU(( zt#^BXFOLjS*J#CHoDyvsg>Sh|l_S^3`kNcOU_4(m2Doezo8RjebX)__S5NycnOJ5C zm9G(ih`Fr7q5>Usc7@0lt(@>Doc{AEhk#N z@CaA`jmjBDNAs;&_8Z2ZLtZ6Y1NgZ%;#=+=S;v&gW(Y@S8ng^i>0aTmXvfGpjoEfi zDU5I=QJ}+|i0YjP`B{`**3nTftZ~LS#X0y5G~|uVayl)D`xUI?7dSg8Ep>%&bJUBNpE1EMmE>ZVW9-%fE^8X zmEWGP^5y&0sy+r(^>ekICmM7SsO~0!@2@H{AehCXG)6s zL6TY_v=$JlaTK$=SfzWsLwl#uaAQ-V{4umC;4%X(-^2|D`o{UwBkHAYK>In>iWbe^ zz*+bu?6K+y%}|K;DK9fNT?92qAz#sd#QH82B2jKUiG_TzfY9oRm7Gd@uz{Ql$ZCjL z$@LyQNR*cWyx9;hLlwLUuzTZuG`E4=lhnHK@#&7-+vh?r1=crqPk zfejXtJ>&!|IlmvC+iN_IX;IH`U*YX#vBYToe#^PWW~rb2S--DIVi>JAoGdQQ`6mpH zMDF*B&idm@Za&Z!khs-?C%gNiC7!v}blNoxTyIZ*_| z%vM!N&$2e0M>6V(Cv2yvGTHL_jkQ)g!P^yOKdUE7DSOiECHd1= zq+m~dnY}X-(Hna+GgyEBM_BfD)S8g7tTAxx2i?@I0sfckdB8%K{TXAPm1ThpsU3__ z00;mNE*RH#=g`SAB8aJRBO+eFLz%c-I>pg6q8gNC!5Z>uA4Dq3&T9Mv8Uy$Z>n*WV zqt+^YG~gl)|1?wr${VppZvo$c-!bh@vbmI*dt^PGqi}d1>0>e2HfP`mpb}u z11duAC}(!0hhKa^eP~bg7z$^Oux`0fSu4 zk5LZ8a8}i@VeBEj(j516SWx82vXu`2aRgqP>z<08(1CX&s1q%+3(F9w6apcy9oH-rK z;7Gx{JdqMSp({FAfF@Y)Bq;o(!~HXd?77j-)>lx~U;XmeBs-pzd)5?foNUsgiz_7CQCpyOl8Fw@pnBAN>GC&u;N3xU@Tn<~ z;jqywj#~Y~HK%9m{*4j$P|y#(@GdD4p0^2flLy{<9t&WAEJ$Ks>K}+=;{URpLmkD0 z94}%A&oi`wjPf)mWqxpb1H*K_bAQJhZ23~;_uY-FFJO56W;Ic3^GNgW5u^r~&X^R9 zlVf`fW4yR-lf~nGzg?vb$U%ViSgyW{bTXEKJU;RM#;k>m{CJ&D{4~$LR^ZSNeCpOj zZ02#*hq;P)41vA<5*7HJ=HZh6PKK&n-s!uqKkA6>d?8^cUlniIhH=uIU%<@sz`goQ z>cQ>OS9lfcHvrP1Mc@r$^hR3uW^*$PGFZ0@9wK@E-yC3yN#r)_;oVY{>21v0E5|MZ zWCX4DAYM$CwOWecpyx}S6qv`y$PH#6)deE%cz9vz&ke@^ZW{Ng=Ydl5`JE5vj||so zk%*>L2FTMBk0Ro!RKeBHzg=4PANbam>QAP)iW|THSxDviwJafig%(J%l@|+FNKy? zfOrH=JToy9?^={QHKGxZS2nitaczAgOH(=?@p%35UdF@wh;2ONYsy2m7$VNhd%q(t z0=xbp8yunI|KB528ka_?s1kQpHLm9V)Twuj^tLZBYrS*qDDgjCjJ9g(k7tOV``ADr z9wTIVP@nTSy{OTNP99kxmMh_F(>>2&Rlt7uGLL?>ajv&aZ4FYp2%b%-V$;(~UpN?r zq9ihV*RW^o?3jpQaF9fTM*(ljyaf*=A%p0F7vpF}5UI&H6+O2^sr+_CA~8+S0mC}~ z6AlN)5+a8c18<@2$G>?IJgZ{}{aQ zk!myfhVHeb^D!zTj%fJ%e455Zd<>S!mivLXX*ONTE9+UDmu6GK+;S+XT6>tmf#sAB ze_z`8_uaWt_SDw(%F4O33t8(2lck&p4O}7}|J~fAREJKB)jm*FcEc`VvwPv zXdwSJcYcl2?b;_=k=VL~*?R;|2(TiZB1rS$x25=?5~_W;L?H5s>`USz44D-;)(&I} z&_auuYb|-0IwYf<12@s6@z^N3^i#z#M(nOtEo*DUYh_ zofPT({0isj0Sd2qwy`nVkwUVeEJ*xakno`ze`mWy7 zW><FYadKS!LTw7z$F`fsOE z9`@ZW-h#m8ySoMX;7Uwv{A5-kFU@wxdaJe4;h7G<%F=8P8>NOby`bYx1nWVv(HaWM z76AfoPK)NTE$zv8mgS_$iDpqT#9C6zo(z|f==RJy)nI*Q5^-Iap0JE>#aH4&|shO_*I(R4;vMQ zxCy6K-9SXq=FRc=>`m5G!B?oHDdz{zdab|8 zGlj8tn+N{OFGF*?MN&$0vjprc4v)5TEERE!kS3C#IyZ9sguj2z5s`7qz7`$a+(5Qx zF`ucN$9Li9?Am-zio3S-9Avur=G8@}Q!+g%%7#eii!#!pHRZUg(h|n!P$gTdo__<} z7wXHNgu94+)#wtlWT|QjSw;nASXq-Q>^5-9b!cz-`YcJieVe{FP5xB0i71c6={X>n z_HIWpkapS{R-vB-`!2$8#T z(L=+n;EtIBaKCDS8&e68M57p(YZjlaTh6q0zQ|>Opr;wF!R8?VWZb3dd)%*Ra`|m3 zT3(OaURBeiui5uTnYQVkCjvFl30XAC!$MgC9v7afFiG(Ozx$ff89}zR5873&IZ9sq zsfSzM2^irwO2ZHx8BqAyiHiwT6Y0-vyj)Axu|mTsuJ;-@4%5=k68vBGoI1?N7B;C7&Y9 zBC*OWMoEF!luUEEkd?g7|TdXxqYZOk)VsOLaZT8 z38mV^iGEv&i!lZF%RdWUkaenUj>HR0YO@Z?arPrgd|2%laG}be7r}E<;m)3yv7l; zcmIpFYmSL&z!3%U$WxEjwSl-C*ewU@lvM>D^%@x{oONBR})(kaf$Zn?<;-if2%n9J*%Rq!49ltgN#dE}w$A{X1uKfNyo2?byn3>SMCZV5G9Tw31oBq$wfXqA79+4Lkx;sE0daQ}>302^HLUiTj`M80j6w?2@Xw4H7 z&pP^%J?;}U+Hk=W{JV8qXGN=rk^;4FxU#|(OWpxZOPHOYRz%CS&5qSdeprvse_40< z_CWzl#IJ@LO#{w0I1vtmJD{SH-JqR4P-zf7at-e3DNk|Rl-+q@_OPgMN}89Do*8IQ z)gX}tU17D`BFV*Lb=as^*b7#F=+6U5|AX&~=B-0GX z(vV#vUQ}-%55aDT-ts^B2~v;MnEelOfvZ5pBf}I8Fe6JOF1ru_{*eK_>6w_z7l7EA zpWsIW&_AgVrfZlr^)r`mzPhAtid$mwNaCymf43RmfsZ7DVo=!`u-kpWHGsrg%y9hv zbIMsLxw!aS9|t=}e@l#i_6&!*7}nYq>~g{T4lFTh<|sAFsHYMB@q%1G7CN2jzDXLf zc@Q2L7wB5e7)1>lRe|z5^1Nbkf47N4RNyGmwK zJO6tO%_Q|L4SZO{sPA{X3Bn0}+|sh=r00W!)<%8(b3`S%$%qEDvvTZr_vnDLfFFSS zN(cvZ){XptI81AOIIooqb~w_&MuY9oKG`o9cU_z-XIgkbU`*&X)+{KH zikFEKf9JZ&%)ZM;1`Z`b(Az%Z^)tex9+Gom=pQ<9p9dxnp1Gd4JdG*$%G-Xz=*q0@ z%+$kR{Hz5-d594sjWjD)jl1^Aqy@y6BvdtHY!CdowxVjP=?2^7y5szLN{FC`fXg^{ zhAV*!zQ9NhopU9`?vV}_oftl3ddf`d^%ijn zQvzh3mF+CL_A;7Ql8hnvb}Z$j%%BC!b!O>p*x>1$KZW>#x`E{ZqLty6xEQOhn6PuO zA_qv7k+Xirp#hU8qDc)yfZpWh5&-~Id6+C@Se0geTeYb23MG+`PU2uPr}EROU4Nnh zXf_(vnMdaw;4539+CvRsE6cLVgLY$6U^DS#Y670_%EZ)UqxVxG%Lq*DGq)HbrDi<( z2(I`ul!pI#KR$<%pX}HLyceLu9}T<dm@lzkmQIEKZ+m12vs)-P46B=p+hh(7Sx7xlPN~i&dKQb0cPr0K(^P}r_ z?HEGmPR3Y?*+53(YQS<)W%5p0>d4eV_X4*I`PN;Qa=Ua&0N~50n~OVH9WEaxc29V< z=$>@KBQ1Z6$7#xtV$+4t2AQA~w3#qNCGB?cH0b4YxeotqZio!@`-;i>wmA#pgMUUOBzxQ0s zBN{?mWa(SRw^|eLCY7>PR$u_IkYf_7gUDh4((>VMpNj(GZ)!js;*c(klAC{w^mDH? z9vB+%22jk#SuCv)PaW+qyy}J$D=`$vH6~LQs;$fm(BTwQO+i$RGFQ3mzRYGWNkI}D zBs?eSA>%wt^sZpN%*}DXfbyWTMh&Uxv?%gQWg{tMJ4CkXEEu)B1K~v5f=bJ7 zf$a@Ot3crytYB+;hFFrfcU4thmHlxG=|YQ3e#1Rn-t}Tjb{@nk-%!hv0b829R-5@L zL1k^rDUY~D{*wGfm)D@9wr5mxB|%Lc130TI`%mSjIPgepusejE;f{U*Tf3aNX^YZA ze63zdd5vX7?}guuZ?kFv1zB&iGP$(=BcWc^h-}6ZKf$W!zp7ek z-ES;fxk6h{+^d{DIyvE?Txr@GJ(MqELDic1k|&KXj>#2RDdq(z%3?Gsaq`dT+aaF* z;s$MsC2h3PX;tz-O5bLp^XMn!9R=bXZY?ZxIr#>vpf?iID!-d;>*as+FchOnF3i&$ z3mD{%<=qO(>B|fajyq6W9V=>V{H2UccAc&)tv|9ehU6O*gOPH~jCE&K!qWW}D{67| zJmT+iT6rn>Be`>{F~c%-iGm7iKl##r2xqI^&;lTV?rxNB$1QY@h3sVYQ)&#g`Jru2 zb(NNcPb(x&Pyz|Zn=U%`2G1I6gHUnEeQSL0j&{XA-(FY&Pth4zZn^HQw!i%)oLMK{ zLuJqmksDEPTcwBw<><^zlKE=)KPRh_ukFlsO&$K#FDeKhI-;b-H$HQHk-0U=IR;6RD`^+$3NJ~NesCX{z{Ex94Fl{P1i3~H@r)WFkn*t?h#$7Mny{>XW6+1Gp2)ac@_2#P<%NbG z>YyU??De5Qn3AG&HS4HJoLFV(0I*NkeW&Qj3HUk1eP??zKMG`En45VRz;RO0wfit7HX-$V$sek8pbwJB#K=D`2uQ9OqxIh1kLjHcRt(#& zuc?-^MiGb(`9>c2GQ6~`u=E?y+=zCbTF|MVvCx(AB_pC)$@kY;be4FOlu*%zsb2@#^+0kjpM3qeYeE|RCS3`D;;__ErdrLrfsxYRDYgaI86C>h`)Q3 z-o$MEfFcs`|I+X@w={gk|3kz7|AyU^RD4?cZB&(84A+bGzp7)8|kv-6Ap zMZ@4QL?*>3bcIR<($v~7|k2iGLg-t=?>xE{aMoZa9;>CC8wegnSfmDR5k6>rB zl{C+_@6xE5*ekS>Y^yt!(UB}>F z8gaW^TXS%(ny4kp4QALSF9%0+Mytr@7CBG&ADG_ANH9RTEQGd}@0ru9->(!ueXzo) zp(=2zUs4a4kM;g!YBekCCkgX#o9s5@}ChStIMasoP#iMVUbBgfaht2(*9CshMY0tD+rr zr+EO;d%QZF>T+rplg(g`#I>Ar_f9sa@Z7^VoA4EU!etpL2zIFL2qJ0wXy#DWz_!^O z&);dD{~^9t)ISq}@3%ULD_zkY(Pt=`zPjoEaU5FuCJKQ!8M^^lW)q9Dgq@+t^{+%m zx*8~s9EE6o#YeZ@y(BeIhpW?X`_d<7egC96SGgZlDN=iX&?0Q-N|pwy1q*L#`i{z& zv87Zj37v^O0d{ulME1=5H`x~Q^}%xP3nHa!n%f)4p|fGq=YOc+Qmbu-^Onh&r_hVZ#umhUsX?W}wxE8`o z9zD?HUCrvAgkksx!>?a*S~=sopwU^C`4oJsSxSF*u&L}?C=Ki z|GbR)&-s1Q@<1S>dzw=YJkuVwTXuU&gee#4c>_x+B1dfe+kwb_VXauEgFUEAtd2R4N|ijT;qocEnOAoLT#$!3c}U|_Qx?xo=up99t+Ss5+8@7X zs#jY^`h4FphTSMsKkCSV{5{2k`E6Sh|f`y?%9Z~t9MgnktK zcGm+3?282u(2@Z(%lE4)RJ64AfYbCUxI$ z%=UsB5w9+O?~t)kdA5>HNv<~!eou#ep2z>b-(gmQwPd||6~9o)^P?-k%j>6sdGq*P z&Ynha?2Q!9Ajc9jsMr4EGY|=|M7m~iXos=|*W0;jeVieBLa#})ZuMksP$pfw zvD_aLdV$~l=Pznqv8W@j6k^+Bd%;y|D%)+JT}vyD8u@x2C)3_D-I_H6BxN0Ev*Df1n+t5rBy))pT6bMC1~OZF)e z%wut=u{VgBMna;7rmXbC7ta)0vUPWd4@2Z}BaqR?>%%^k>+i*nF zmRLQ{oao3fN}`d@VR;h;`9uTzA;S(hUw7b+2AJ0VCnew1)|b%P7wK`5!`nsB{A?dS zy|^`NNTHd<7L-$Ff0povf7@0~nU?7jI@lw4$AIc+pcfweMngKoSjsc9iAd*BO<-J9oqc>cS zhid;7lO%6*UwP`}+)e$jVQzNyDp={k@jMUquT-*g=g#C*nabJWD! zNk~FUs{P+N|;Evun1OeH;3kjBmP3F6pH#N@t^Z5&Ig z4DD10;F?yQ+k1vI6`%)4+xhb`M7v5y-_MOZ35kN-r0N+Pry>fAMV_0|RkOilhz&L{^L4je9p~WgZ60I`ocqsD_-T%!2gApgO!HB4X)^dnvSxIjo?$aP|+8Q?V(z43FEO;q(sEI+9HAMi?1aO&12T1pjFN{mbo>`iqv|d++MTQ z(jqb@e@H0HH7Fj-XbTZX%(x_%7)5Q4I9o0T?2Z|kq9HJVRbNmXAqX#h{Vbgug4hWW z#%b3sgB43&=+C_PM@pnmz+DUzX_+U#;)DFlA!=z3(3?>qhsN)Y!xFamiO=GROMr%3PVdm5rXe7?UBcxfkRk!vYM#7TnHo)iu97BpIuUo}LWquH?ktfg z8Dw>w3tC6TLAtXBY9OQpfJU>?wM^P0x3mRwtYV3gg`qpb9jlK9KEN7XwE1`p$N4?h zy*CWY%z%)VXo;EtOw{fi$a)QEWXQPju*PJ_$5Q|$Z;0RX=vVls-VKgQJ@Q(2b{6=Y zi6a0UYGB3X;>P?CBLs020vv5X;%vYQF3qxD$@eysj>Wt3%-qTqvM(0E4SX2aiC8gw z_9eC;E1QS~0eV0O2(Acl_?&5LCxTG96HOd%>u8yIrdeD@b2^%{)y7T?P>FE~iFD81 z3eJ$Lbu$M6?gnLcNkys2<-NugW8Jj#^AckSc~R)cG8G^IS}50nwOkWY8xO6jrE8Ka z>3e(!hj)F-59yF|@0lph?8Z8*fP=wUXNZO}CQ-wnKm#c+^|Nq}KV^|tVuJ`P3(t#d z2J+1K`?dhr2Fw04l_zy{Go~*l5hzYPx}oSa%B$(hhUMcn_$*Ctdt1ox`tA@415f}K zB47uiQpvCS`BGpd{f$P6agP>>0Higq(&Zxw`LD-7jO7D)+xuwX*KUwCtY=XX->jN|2vIW3H)MgDSk}FQ7FguF-fDNf>Pqb0wQU?T zQ9r?)faDi@neO>jd8?TP`Bk33>SHkANq3;AzcOq_RsTBFhfJc_r#i?ZOx_hDe2vZ0 zkOwpi0|2?KBdY&>FPe(4*{;3GO=MA>->Tt)XcUUoCg2`-4c8_jUM4iF7Hg?^aX<{@ z>nc3zep!mtzYuOXrN#Slbmu$hUzY`H+Mu)rjKi=}CoUqb_1+d-FiTo+|mmzLj? z*O(7^Oa^@;0VlC%{gLo09RdDb_v&w5UGQjK^bD9s%!s17{>38@-x=7l9*F*#6tWOy z3TSEVtlJuDjumTRNNlk+156K@v7P{gf3+Yyp;YliysRl$OA}yKBML6Ny6VVJ{#u;8 zc;}bXsu<+*SKW)f8<-qx;Y+7PpeCen!aPmvRqWOSJawJMZ!&GGx|Z5XETX`;zUzf? z*?3-|Ckvpm1MFe~YGnkdZwcNvhpJrbu>uPA2qW5n077fD zRe4N3RkMG144}4>9AO`lj54Ut5_lAA*NszfTCDDm*^*c7Wh@DV=fCdG70WF;$&cB3 z*$fWgB9iT?GhopTJ-DcH`{$1)9n3IAivc&>s&3o{t{ARyC{Ybk+x4upt`BE27 zRIAl)qJ8uB4NJ=pRs&73O3xF;c5UK2tah9w&Vd%@G01ATiCkZqk)FsJ+kd@J$tpH&xUTxu!Q7?H#E$({*3qf^h51BXZZDqF|DWQ z8soy6nBRHK7fl>}&QS;uFZaZ0{>XV9q-el8*q5HYWz_I^v`LQq#skb+;AN;V7WUa7 z*tCP<_aqiR4h26|pYhMuX^0IQXVoU=YX&B*Cx?+v%!TzkaT7LPH)6NSv^yqD8h{H1 zHyO>&_VIS@=ITOxaDY90guvMD za7@SJi|IVx=^iyj6Z)6qAi08XlsRE2H2B*eGOf@LA=hE|kK!UF86zdf82psa)&!#s z7M?AGRq#WbE{f_%ld<)oNgZP2_bsYIvr${2a}*Og@kCpW@1v}M&XU7U!k~eZS@sQR z%$_Ir-|1-NbQW)%dcpwqY#Q7QbESy>?UXMQ4z)r+^x(^+HS?yH4dR3u!}FVGU+Zs! z6e5Ua*0%%jq=mFaNOh|_xb35hE=m#l-tbuUPVjylrS3y!FK|dJnB7=T90g8u@RB>c5 z>Ot($Jvz7V%AnFLVfUHB4u$a0o3ahBgY`K_Qk25u4?lB!-m~9!riR!`;#yUf)P=Hsa5#7Ny_aH&*1>}`a zKkW+wNOp}kN-fZdJJ(?{!O2XG)ugXc- ztbci&ub}`gk8pNb9=W@ijY0!6m$n<47@8u!bSkzh5%%fjCmb#MS+;Dj2oR~z7^t7; z&A*eg$DercAJpwYzf!)46Nq4cAg(1*vm%>klmO(E8PlHPy(Eavn~6=4EMAW8$=J3_ zkN>1DkM5(OQ$;7!`yXpRCU}}-4}Y#pPDPOjraW{BL8o ze?{Bi3q*e-tm!HjgH1Z)U-a9JA}H(mFW=L@=s2C-)N6o5Fhh#J&tXnbTZ>5TrHqpA zqF-@2h*7hB7`t@d!XnOn*lF0~%fk;}`R*nf6#uw;bWw z^PrUU;`6$?y9-byZ{EaWd-UW1#(+`dcgFGxH`5A8`2X^k&ZC;9nqdRCH2jw2%bfw* zLo@M{lQrxsEOTIu;Mb?Zd!aw~4J9E0d(h z`ZzUq>^8BrWYTPP(&VS|m$RI$f>KeJMQt0bkkfVXW?}Ew$+RLV%;lZhw;i-|X6fxT z@LiSl(CVk9g!hUb4tXD)QN^c((RRUh?ls$fEYmZR*ynV`5gv$XB!?gEYO`l2MRuI@ z#ofipu}r#T?KQ2ZX8ATqx$OyM(HpkC6j9s&-k9u{#eeo}! zST>y_8cbw)PmayCFi>tBi7~|A!h=*;jCjE_J!7#gePodx-97xU`nWe4OWA;NPZGlv zv6#tqsfZ9;28C&io7zV5Q#p0z=zXcf-PDKDE`#_8U1YIu%-&~w$jRT&pF*QXWZ1)> z=wY!O#q?z=5l*#$m57@dejXPPiTOCgCU^k%ejL`;SkV^qOd`g?T{qKLC2!9_a+8iL&5Q5RFaUc``^&3 zr;*)cCBz&9H#$+2umAkX9i#{}9s!~VYq3O5aW)ur*h3+2*?9q#(w0%?xkvmsl38II z)Qdy!DU*^pt+trG)9)kCS&TSe3eCIAOqqXj@q3R#>S{1SG|>Nz0Q? zfxcVW%OqUYV*5%eWOd}? z8p=n;sCTi((<3XZi7h;knHgi-!^Of0(N97;#UJdHp0Xvma>GG=(y3M^IBIFj|L8yb z{28>U`iwYZs{dS_ri}xLo;zZR>5=Y3ivCz$I$5Vx5c5V!wbK#~7vdCd%W?v3f9FB_ zOld}uH;-sr?2B6|yrXuLUwLm4Xbrw|HRyot=(vn5I7A**3szEvPLf4!yrC8XIU$$? zmea{<5E2Iq6oB;fmu8j=xsrrNamD7P{#X~--K1$SSSKII-de{gJoA9okG{bvka^7n zeb?!a{$j*FH%$IZP>dacVV|i>efY>g84>Bi6gMcHseH%edTpG*(FHy$p#k2CKl5dH zHU5Y($#@abTr(v-_JH0IKx4+=`DRHIzA|flA=^i!*PiCxdm%v1LZ-7sV%(7kH|MhB zfGx*X%IziU3u5cdOLGScbpvRmhJQ^jH%J-n1K!k^5V1%j&{7=GEu_j$b{5ln4SVt% zig6b%4o2lQo;-LGq zL=2!rcnmge(vOJ($T3wQFXl=<)(vrys{pU{Rmfe?(1pA27JZku{Cw!1Y*;4bOvU^e zAc&(#;<>6NcRsA+fxNU>Aw^JAGA-31rjj^O_Ne9xvlvF2P@M_58RDb7P6Ce#*0)lj z!iiP!2~Q>@O1oKh)0#4E&MEIh{YNKa&Clu87gAZIbRcfSMnjRgJMGFpbZ!JV5-4A7F=S zLb^v=DxEJ>BF}!2#dX*N9q3=SRy>|aaYz?xnM;x%za(>(ErIayJqk$gTJ``B#gE9V zS|TLgeLAb!TGj zArfwCxE9&iRU3D{EO^?8cSP&!NY-jbk>s?xP>3O5ASt`;?UhE_&8uH&|NeEpy*F^^ zX5=IyBLSK@iYasD0tUZqP35f`M0Na^EyP}wWYgVNefeh*KH;BNn5V7j+eAy) z#w`KCU(&XsD0Q`X)5CNU;y$12T`}#X{&|v(vCZ< zBHK}0uWI6d2rAM_>X`mhXO%RvV0dvzP znqdx6Ja-U_U(Vt+D z$rq_@yOm0Mc}e@Hq)VGYDv}C}^urqi_d^}J=9r7VNJ}X);Q~n7DwW@6dA=7mhhXxi zOHU0^eUyelHDixYpZ>!gxZq}_ZEZpCUBX}V#VyoG8Whr=-k@3qm zl{0C?j=IPDD@q}C8cP@FhgY`xpRH+JK`pHjW`Mx2k0GtD&OCf}SAp!EJ7iq6XnHQ- zpPW!7q`-}g3tq#VPNE%=hNJ01YVSWWfcR|l#>C zSHd>f4Hx?(mRE+t z+1`&joSsuF#EOMvnDbbE7pMw|H&suFT<`#>20P%y@|Q?d5wKP}5NWfk5`ox_4-ge7 zXb~Ob4N3InQy!LOZ0AF9ViL>S68jJ7QPuuHBPVl>q~Z(|MLRC_nzC%)D9bJ8l@G3Q zgh2+8tdS9auM)o0l?-vz_A9@E^w~kw;WpcDQJ0+|D2=36fA!zIaWsg;r!HXMZ3X4= z+ipfb^`O*mPW~}&H0ln@T`mB5P5Gx%RE@1kJ4-rjI6SwZ=PXWv3C+MXgYR|m$Bx0y z#<+b|RRf%EojxhsZl-2uhP?+&>SE+TIIFP5^FcGe=2!~lmbkgt#JEu#3Aqd!S6sR} zQV|2PbhA)|Ix&s;Kl~Y9x-XcM=91wJG7TV-!2s#d55Guc+kVRwM-x}8q@|SJ88pn= z#DHkirHIi9DTX9G@a*Ftbyg0>JlJYrAs>^KVN@^4be+W?9RO2;iRq$$w%{}K0ZOw!V5afV#ddFdTJx1x&`$(@;2fX+}nZfX_=$J z;p0aUv@3;1=bUBK08RjJ9W{ki4%d<u;r252njhD`Bm416vlI#NE3K6sc!;sl!;jws%=-@_7E*LkMrk9 z3Lj=z?1(w>TgLbKqyPfd@1D_e8dSx{SD~t_WVC_@&Z^kUIAi8X%I)&>mTXl+szc?e z+7Ez$k#y!P-zZlj3jyyvO~^iTaC}`2R!is49F-xQDPG)%?8!@ZlZe~{GFVBi%R5g~ z^`MveB>6Jc$!8Gb+6P5OoO2V91!f8=7OJINEz~ibH0ExjbIO@f4xgRat|mlyuC)JG zJw2DZ{^ebJMn*MF_1~)`sC*AqKQ>fJEfb*@*;b**TjJVYo`TF3;{cUuRS)286!LEX z?_Sr{TQlN*OAC-od-D#@ju}Z zZ3Y;e{0mYE0fzM=Ifk|Ldf;H%HQPX~3Kj*b&kjYRXKg=&)rqkv7}Wh@wSFP6)zbHs zpl8E`{QccA2jJPOxqV<0nlb;^%La(K0xR7q8qkddt#mhXzh-%q$hUn~;+e>Ps8(_J z#N>-s`@KZDxOe%+b?x6+8vfy3MlO>$fv>GiB7P+#DQH3{?Q(0s>rUs(W8p*|Mx_j2yIt;?O?) zsUFRJq3pLz=QTg@WS922xdoWCc@mu5FuLLX6oF&E4N`Un=9>W*;Gw2)fO*o$B`a)E z8}b-ELGSm5^r~~%xHsxI!BR4{w}&X!vsJBwUO088 zIP7EvK_uC!SPmLYPB5?b#xK^7szcakN|qIe$ik^u;KV=kTlELY9s-M{SIOR;&A=bX ztI}5Y<@G!@ zr;`>q#ol=q)*KQqiiCT`jXFjw2Y}h8DU+zMC5!l9!Hrvs@&(`24xwA>d(ZmcNyb644dVBUTbhqfk<#ufz(=Un&+GX6 z^FZ~}Pdg_@$*0Ordy2FtciFapuunh^{GKFWJJ&OplRy!~=D-7c6q49v|4r5S zFC{Z_P2>z@A%eQy+r~71dhJJe^6!R{Q|x`Emz?0IodGu3wXWV+#%2u0HtVk>1kP%+ zM6jG$Z|hrm*px#H0DLNmduXzuQM{*di-==3!W5Tobt|D=tGLjj*l_0r#$`5%d=w=zawl((1OS^yyf%fBH+`z$K}spqB9$=pW@t` z65l>xyL`W6?cjwgfmSF(vSuK!$lW3HJCHMrE~mchl*NHtnvNjAgBfumI)mBmO%(5u zJZ$z22gd(Al(fWDrGPr0-0Ung1yK?TOQw%t%=m*u)GBUXjJ|A})d5ti@-u_nmS@t!`o9d4PXjl(2@@x+a2f-rFZdF}c6JsP{ z3y7zKmU^c$cBje81t{KQHY#ep7oQPd&$7`%YJl)dI*JB8hEW$U?-co@wdnVl=3mVGOeRy1_$clZ zQCMWauddYJ6l4$}3Pl@(CC1UmC*tB!mMkbkRB|RRh8D#G02rfSCDCjg6_wE_$r?#I znMOKPgA5%VQ)Bi2KCyj6QcXmJ8ekq9AEz`oe|uXv)v4Aw)H}S?2cGB>nEkZbBe1d6 z&ECg;_`wPV{le7;J%^eqD|b=sS0DcTeDr7kAIa&Z41V)=jZdNLR)Mp>7i-C>p6?fL zz>`ROBRv8b@iyRpQbzKgNv=Fg$h=)A-%q)zQrmT?j=NxjLOVZ4))$4C;i=NM9`Iu( zNaL3Io#ZlNpCnA$wME+R^($nRCsQz^2;;BI$X_C>K=U!ehgV1yb*gz&+;~7)C5VZi zc@<2EB<)3b`yZl}P3oBWpUxV&pNz;h<6baBR()rt98n%Tu~j9y)O3q=^xS7VIkQ%Z z9G8V(E}A9pY8EAov=cw>ljdwVPXF=i6F(SY5_)gV<>~X*H_!8QwZrTq+r7A9a|Yrf zRY`@&;M`)*ub$bq^eE`^F8Q;kY0(%O=Hp$~=cH^#>%L>$ zON;yoPOW&A4|yfge)Gw5vHns4$T=aI9>k0Wl*`^O!v^YYR%WKzcxAA3|w%FCzl3%y5N4&`^&)&{a4n6M~YnxO-^&8+$ULD zsIl(wMYN^8g@6c=&eA5zfJvZ45^eZ!-t<{+ho#vyHEtZlc0Mssaf4DKdi?YnoLREZ|Ma;#VL*e$?zr|7lHy4O)g|wFOd)6K=1Z9*Lv^JjLY1Qh zpY6v=K~`(8E*6*!HiccNd!?;~ctK&Kr)8y8G{!@UsIxS1cxGfw z(N5sN5cFI+SK5kApLLwDvR=UrJCsvpMZrtOoQU(ponPGir{L-7nf&-ci&a|f=?R9egh@5mCbB~4{UqFwLjW-H6lX@rrj43Q?rdhYO zU&=5*C?&G1fdi1(w6Fy(5nX7sJHWQH#Gc!XEj7BEN!I}TxY&w#NNEfmNv^Y;{+sWa zl(6EKp}>-i4J7gT-NaJKMUDwu^jA7J1CF=D=G7x|dW`!|o`R}cqv)lY{y)aP!l~_c z>o&m}Jh&D}u;5y(l;RGhK!M@~iqoPkP)Z>L2*KUmf;$8$4h>q|p?I+tE%le1p7WjW zoHO^%JNGZhOlJ1;TYK##1TtrEuOw$EMi(9x3u9I-kU;|G!byzlqj51kNx;c%)FF+n zXdt3g@1la+#%K7G0!@qp)3l#7qoTo!{>aPhJ4}djL-n7vu8-P=;XmgtJos?NAf&$_& zjt>$K`Bd)+m5`eP6oo&#=)xQEU)TD~@@X1q3(GX8(jc9^m`BspGxlh2VXKG_pbIzO zDe2kBPjqM)hwU6@<+<)00t`lloah&-Jrd@aU8NqU>%VAh7Vjmh4`ZVBzvR{f47`$* z$;y@E)EUgk;qa20vtp#X-`2m+mn8=(TS=>cnM z4G$WtgWZM#izZO!EFl0yZ7=b256!7(UWA{@NTXmKRh}2x8~7*l1R<|8wO|R;y(ChN z5qnUXaZrjQg>vK9FKj_ps0ghmwqPhG8vljlaxfEs@W9ZslhedR&@nkRyZU$j1L_)oU3B-_H*1J$#@1=0rb_caH;p=zjULJd- zv4*t(Sqi;$Vc#L~Om*pT<8u*mME&zM2RgzO9tTr$n6IHDoLwzH-Lp&2l6kuKewXzRv1u z;%11~p3El~r>XBWdi7@sRHB6t1v_V?*|V_k4uh@ynW^~;gw@Aci&h7Li)o;;d`Uli zXPt*!hkF;hx??qxu0i8s6Kc9*Q|SOw%*4zyeBt8P9hQN302qglWGr>aO$<(c^znCq zNLpZsr+o`|*!7%~hHe&qhlW}KPI3UcDBPGKX8tiu*h2|$wF>!s%s@Ou49;4+ujG%c zl>qb`aUHJ|5lNWoR9Ud+$v(b+i-9V`ALyBT9R0Cnf#Fa$AAZj1ETV@Bf=B^964fuS zT)dlgUVJ@!^+BYFr|(hq_lcpvk1hi_G-$2wLR}=+4?f&J_&6jGZg~OsOU~i@4r#Nq zN($YTRjmH_R&`J>exq#VXNB-W+nHaeb?w)pE9~iy%J(S1PLl117ROhs5)j|Ai(U{+ z*_is%Upe%fMV+teFhjqCL#QiC$mN zN4iCrxXhMhIH389m&c1&I)3;9rV{GY1S91^*3!V2djy~ApTQT1G}?T%fOhI|J>~<_ zd)z$q39vjL)t9$!0}MC_`$+qxgW5PiT2n;BZKRZDVU(Iq>ic9cMfk8+AaR>z*p!vt zu=W~GSoOrKOEGwlSI!mk+NX^0m{;xd*Wgnqp2fA!IwSydW++3;BOemtHylu&VEbZ$ zs8uce)X4*&Y4Ky8QR-WW;}g6f4GMY?b5prez8KlPA>X`*?3LbnCr0=4eFCR|mba$i zjNT*`FR3WQN%gKG5;B5b4N+)(C8gnzyXOy2Jp=n{Aj)0_ZWP=g-h2gPpS*0n25EAJ z8(}2-_8&gR*hnWhUY--DydcG;JJA%;BTN1Qrs;E*^YsYWYr=oNj zUUFKgYzK4HiDm3D`($VIq9|HXz@`Ja7aZZwg7ha@S|k#~Sj8&SP_Qm_m zG6}AkSSXjc*YdoA?K{%crI*@EhzuC?8V%BHLVf;7Y=(JQjoU{t33hZb9cB#EREZl> z7Bj7qV)YT=k$|6106<&2lY>}CFQ?t9Ko5gRj6q0eJv%!#l7~*IMLd>1Ol+rFL7!gu z8%R#+(uX*SKz_t+G#sW}42{){Km3-+zD#6oYoM`z<0?~6uap^2N|n$+6fr5LLb2DPu>9!Up)%oS7j?NYLs*1>_r&FjLRkH-YlF4#O9ODa%nSd#qQC zshf{qDn8EKjmpCHOyz}vcojp#22x1(QXf>@fPGsWj)=+4!c%LQsAiq+Te}3NbGQlj zqasb+lNYnyM>0Gz(|L@UJ>s&;t{Dap6gJKRp>tBF8dI@Dh9840l?>J}Wq4Sc7$bTQi^NE8r zck>I(@|pUA<$CXn>~N-u%eF6jkav*!@wvb?^QAlDiWi9PnX|m#b86Ww@n=dw)R%=4 zXSB*BLR)>0Zp8|zlHFE+DWn~5&7b+4PBKX=OY29et$Eh1^eB%_e9K-!1;r8oU&;Om zdYZ!|crpLRIg_V9POC|hEu=ujDdKU*jlw}`hVoZGD{};#Bx=*hO#S>07XbH@+D7L> z8iz=qhElFTr%BCw9{@~td-=qRITGgad&FuCTje2v$>pd@Ti$rR!6=}4ppG1_*EsaO zr(8!wNdi+s3`r{SqHx`rn$Q3~!y)NBgRgRWe#rq?Dyv$`84q6XSs@3a@ku|?&gn%3 z`Z!kQ^+~<(r)2{$tYc~oKB6P+;*^Ylu328HqqT`L1s}Ly%D7;v~@Hft)vRaq+gVIs0sPu_|{Ls<*Fp{Frqb|>#>O_x=Ag<{<2j(ri zAkZq z{f2YcM^hjV0J5EhQWo$%@FNWP(R}Biv5cfe?3m1ZEKZ3rJPeHg%CE7!w^i{KD)3zm zWpuM`XPJ&p^YwSDgvV{B0+^ll>PN>CQm^W?z2s=7>`VPgJntd}j}^>i5xVG9F6X#e zlIlnn%xX$UrGVrKUa)z+u!c{g`xxjim#mWPIAOPzWsQcm1o|qLqGxy8yTGY57N&D3 z(r10NVxpa}ZFJueX&Y&C;%e%qZD-G`x2wD8+isoMX;Od=22I*A75z3@?CrIGr~3-g z1_Q?f#qQ5PyU$p9F76WbT&+_7r!^J=Pz2-xJ^#iU8^e>Hm5q3m^S{>EoLlIB7e%+U z{%dc?Rhj>XHTJ)Xq8s#9{%MWf+1=a!c+jgJAve$F!E$(USp>Mk39VuP$3OnMS&q3< zaiGN2jx3Rw6vOMcx)_nZupHXn!lCG*m0V_+Gjtdyv|_W9L4yQo!}&=%ppAQix0#6p z<|1cG^(@7nAFYivl|OLd^64j8(K&cuT&LM8zM{@IQ+}AEoU7eZIbVfjZO)8p5qNOR z{4L7wQ1WD{iK7B`=hZ|0l{SW(zW!X&Bq6KHXRAxUzirnpy}jA}ky~}=baMbn(>YqQ z!~;whWVtV1eVXe~&E;l2OdsIGGLffZD#6#$e5ef7ud-gR23W;acZR|SWm-L+<|aK-}}{y`M65f3DDHDX)xPoH(|<{*%T-cf)#R6 z=_B?0h4`EcpHn`Akp$F+n9%`2fo3D*&0rZ2Y64-q9l+QPvxf;!e$$KHP%WRZm%2VE z=4AW@D}gfj<1_M-G8%2)ATkGKxZZ$e4=Lks!<%-KJ!oZ<^tAY+7^Nd0X=$eqBl#d& z%yPSME;nlL+jiz`DGYHQNN3Gk80pjNsd{e^sZ>LiFUYstQFc!GbeII z-AMsg5vD4^p3t~h5+T`v%}UUgP%N1rZ__MRO480Jg8TCqW?st<@j-+*s9og*E46ie zK&snzv5;|dWR=~QN;fEZf$~Yi^O^>dfQmF+XxFBUHf8mk_O>85-b|`n>y&CXW$Pxt z{ih1lQh;9mc7n@xI|3{d*0q3io609`yd%PS2DLwhMy0Xn_k^JZIOBZ_ACmNu8QIt4 z3@8_#ePe61I8m8X0U2jo#8sn6D1|EhZ6@ zUTgg4*l_^(0nNauzZtu9q(YYUBdxrAE$fW`>}O9?$jMh%SJY_(w|Cs{>H_O%)%|Pi zDjKZwnp<@`ySqI)77(3^3ZwsYq;DupPA$xaEhaAXZU5=^5nWonW)V=e^=c zHYcT#tI4Ah5dIV!F5y;o3y%-do)O5jovy0AHx_Lo1AOwN>39(Vm z{6SDk&`Vka26SS)OdB7+`TPpIShxN*cT@2Neg8vbT zVEld%@pC?|GJHzw*Mu1~s}GS=XR7Kfi~th60U97!Il_CN8_mH*m|=@&a`&}29>c}7 zv=$x^?5Xqy*a{hljMzOZ1lf{_ufbtu8CW2%Gc@<k9zBrdc8K^~zy+XeuE1 z8-$GE${!RV`mG$9>Rfi19R)v_+sn(khXrIHb3*zFq1y+LTsUnYFgBt$0G-MP&)AQA zfb3NPJY)VwP6Cuv>Mxf+ zn<%wqTy_gBrneYRfTw7KJmm+8wF+T#OZGH#pUsOCP0XlN!G26(0E+%ehRTLr=3;k$ z;)2Z+XwooK4fmEK3juW*Pxc`P0IbrV=mA(%Z3k4rt2u7|Vj65DmK1O*k}W&j?L={S z)qD1i+!eWbi%hBf$RP%%0rbE%na;4KzPg$;JV7p^{dxwnSen#r=3e4HdgwlMb;jZp z^5)u-pO}TS>3K?hl6x~ZzQj~S7{7$57uL|wLWpq_zIHl`>&I0skGYB&Eayc`M8OaT z2FP3eXSRMlF>IftxCZIBZTmu?UDu5sb7Q^sghGjaEN{{jKaJa2H1-Lw^Cl@qJ(vEh zIeQB%F1;xr4XvxtCcXFy0W*f`$cbH@y`O53d-enB#Ud`dNA2YHxHX+~%Lj6!-KaVh zlku7?MKka7UC8%VAmBb(i2`Ug>|1rve&n3~h!JQw+5fP|^gfb8PZSXHxsvxS@{O!*7;W`yE9^OVd=!zQWUzb7IABMlzntgzHZgzitR2Pi$ zOdu|y57E~nkVJ>{rty1qlU8qABSJEOx1A81di?|g67Vp#S(-;z@zel!!c0kw(uZ|o z>f3^YXXAD(x`I#Oaf$`+XrJ`a|40CfopGE223U<06(iFbOUJOiTDFb)qEiU* zwI!gZ$B*$MD}hW(59Ag!P;2NS*a!>rgFPQ4CRpv+Jjf1QE>O8{1((9lOphBp!q zudq-;$e=(H9$vVN4aw~S5|h^#!kVnyDriMQ6ACzqlRKf%>*zQ-vNW>(A8AJA& zct!~v4Ha|#;zAn}p^_ebPK+4!ht;TRBZ)GuN+Q0MbIDXr)6+Mx{HR7~Yc0>DL4Cm# z9EH-NU?a`(E3msN0igHstYwcJ&$P8a(|*ZXxzUBGB!`Bg z<&;aoVY~o;+YmhyIKcGv>fOfy#`b5vU?))lZUX}oLkB>O%e^cqk9LD6GELxVu0b1t z>D&%w<=XiH$X%)|qvu6-CP@iEJND_Ju6@7k2 z0wU!x(15vAu7`6KFnx*y%WsDhZwTF00ubNM@VHf1L*VpyYh^Lwf~xot)$>OU^AB^R zFjG&5Jfohh9(3EqffGHXcE^g~<=FgM)@EDaJ90F<3okB^datKPh5m(2;S%ol!q|I<;wGq5a#$+kq^}NL zuOS*k_H+Lw+m37=I^uE65lK-G`(F_eePUZ$n$%1euLaG(IY@){wxPW(PaQo=#?M`f zZG8GL{uo|5wpBvH`wCX?eAmEGqam!DR^w>~tAi#Fp z!N>yq@2k=68Kkn>jV#WXhF;VGeq<4 zbImoPY@Lg|mn;jiZuW2Pe6Ubey|s2voFT@1fqCe(TVpz0%5rnt1LXe@&jZAOR-|U{ zX%!!j^|ZreZ^3(OhHl=T!`;@XNErvm)bx|@OBWG_VPv`<*CyF@=IoyVnq=HJKC7N} z@l+AXsgnIBNfE)@fn$0HQuTc*Df$o9-^ zoSFXn6PeB3)eqf%MITzp>C%7Btxh=>PctwPmUnXeb#iqBwtWrue%Cuq81FW~Ze4G8 zA0hKq_1W+{&Wc13W|Um%It8JUEj<06;U5JN7WE8OImcvEc@Gh^Hbo%8sImW%M0vCsj5-|kOs@3ajEp? zmFA^={i>9+FvPyM8dHBQ2BbWq=*L3-^_3ZM2c<24($jW;E zzD1&Mrl40XZ+^X$T-G3d6A@yR8Um-qm94*yxAmjY3}FC;?p+w*3MLX0LS@uKQq)1! z<)KR3`Vkxn{>p}R)nszL(CcroWB4Q7%9evO$NXoSQFTpiU427iQ}chV zYQTHMWMHjDT<6}5H_7QM>pvJhi7@Fk(>T@V>n?N3cZORVAT z{8;y$f)br4^dw^P-;)-Gvt&Xa)2jP00F?&4NhV(UOpT@@RJ#man?FuPsf9sO@3c%{ zD?95I)<;{a77fe;T7uNLPZpah#+g~hv};7#oNso5%^zYztXjGHBI3@7Z>TEwJ7_ptAZ?5_O+nm+b~-;aJa$CUM9rr78WbIwxp(PD*x z%BA86z}+!xdHwA~XWOZD`x{dB48z3PEo^fBPH0@kg}!Mw++RO;?)+$pl2CdaZ2JNo z4JXO19r^k7ax}Ol&zRuttH-M!#%`|tgF6MjeL8+epMU)2H;`@-rKaW3L=ytiZ?xuH z`1KM6n%v{Eg{KH=ZiRD{(%+7#)5R9v{XIh0D^Fz&TaBzr0lg>vh^fyEhYcTSI%iGs z?8M6KqjODpj}9^eit5p*SOt0)l)w7QPQi_oBv0lfc|^lfNpd+Nq$t7I@sK#Jgrj0l z$An~HFWo`^qCev)ypc=!e(B*pHz`13FS`Ka56SYCnh8z2zm@4^@5MZ$C~EkZi!&rR z=@0^WMep55s75`tUl{HSc7!H$Nbr_^2J>l^eIp==Lgz%xhI1HnH}UaS{Was7nJy)+ z!cs77?^LmgSW>S>U1fH?#UHmV8Wc!v>gd#u0awWX=Fc`GM@uc4kTTMH7m;HWvk_EDvkrl7D8)V|9 z*-gM3vtE*4fg!%th!L&tPZq7ts&l+;Yk}=0icW?N#Z-IoV)uQ2iEvdYGzpHBDzb_} zBnDaCS$HHk#m91NLxv?JbS+Cf3KLO25YXMGzIW`8f0fnWsk?JEYjD>`P*9p?UA@;s zX3>5wguIf(HT}_qpPmAH;;0^2yH8@yVwp;69?a@$(nl441L!orm=TaWia8WXr)%EAu1wr`r31fym|iO|_nmmK-gK>33P_{s|ZyH9`?96NcOW zv@D7;RFnDrc>9f;iyx$GPn2Km8*303Hg=89=f>407LDo{P**QEwRRtw1IviNs(;{&%Bnt9A z3@x*H&d_vNB{ukwud(lfbIfUFTt=_6_>mjH{6Ur;^5v%wc+c7K*N2r@@Y7%b8)5!C z;@gAB%L2Mh+t8?ZvI=k9Vd3uO%B{_R-lgqL3K*;6~0nxAeE|;#IB7Sh-ZFXAEu(D3M@Bm;?H%r8#04CUiY{Cwe1WdF<- zP@J9iV{&!6!T*wt!!A1^fi3u^v+W)AkoLs;-~j?ExL!+4bZx zQAvZlEurV|lO#Ruu^a&2lLj~8IR%SY?b!ny77FpZ%k7jU_fbfH-@C%y!`iI#^K&t@ z+Zgb2|2W}o%foV!y9#7b5yxLE+owHWX-_DsOGDgnmS{&i5GAZDr2d8*8z;fgpjKpX z-pY{OUk`if6+_~8E8CZbQiOozLKF}qZ!p?{K#si=@zHA1IuFfhQt}B99iMCy#GuB6 za87_O5|R05yv09$H3<=bpjRpC4{GvrOrO?#S)BK`${y)Vh^1c~SNLrP!e)5H4^>#| zjT3Gl$*B3B?a41+QotejZGf*rlLwwL2m zza72E`A{sTAO_a~$oS4VY3H^b(e<%1Ls+A_RHYsHNJt(~B9O;$nHw7?xmp$mOXG zpe938C6%yl^Uiyzr1*NjdYn`0ZpWl!#7Lc55HkOPK;0w3lk^VT zfVftSH;MW%|Ml4J&gHC**5))SBB6wf6)@z{e~?u)MO8upk?_$!#Je+>C&4$(_j2Vj zkAWb>X(j6YC6^IZ?vLrP7pj8N*U8%cU8?seD_e+#QVJUa8B}?Xkf9H+1pga=DFX8U z7Jx-Q!u51#r~m%|uz!(vqeJpzIIUX~0HE$MKaGMd;o>9<02^D|JG<$?Nx8kF<1O{g zBes)^OYG<4^Q-SadS=7b7pKt8RG7MgKFd?0Ku&)gdH3jWj@b9C9v3H>CuO^aJtrxb zB32?nEgh_hMj(XAX0Q#V-FR?2d6MPfNUkhlpCjMB2D(Xmf@rK=LlaCYv)?yiE|fZb zR8=rm`%ZK7;`<7-CiH{7c z%_-oJN#Hq2-s*lG$3Pg3z;&}7czZy0PdLvV*BCdNA>p>+KIU!hlqVal@aoR=hpA#C z253bp>Vt}i@t8hW!0pkQ2y2#6(atuPITpX4Y;oupGMjM;G+#Yfv#0i^qNEK5@BTR3 zUubf(DGU0!|Ixf^;FBzx7_u-nO^J8?az`V)`@_@N0=jU`6v=KzIOX_5~NLWS`2Ym|!#n;Lh z%aB!%A%C%Fd9ZD&-`3D$=g-K2WKC@KY~5m;QZ z!ZMUQIgCpcn2vQP-siB13jn2PXKAg)R~ImqW(|CqMP+*~RFLLY2cdaXBx2M<1dUfR zlT+7`AbB<7^CKEm`5icmAu$}F#s`q2^%Ow5P!sU+S5Lblb(hh?`8GndgNqZclf zVFi`(8P#kOhhka7t^xvG^RA=$9%q4L@Rv%Xm9?ecDtYqEgc5X#+AHk@ku>{=YUxbs zSH~@-X3?Ko%hA0xT=DH^LXh`yZc&)9j7s;)y=Unh4~+d1kfhSpa>%ZxxSg8z$9_(A z92fm9!ab8yboJ0LS^P(^195b{czrOn^GgrR)Y%Oo{}V;gFskIF)2^Gw9f1b&=Yo`a z=bJw@N4Sq?#qX}TMgkxYCyIvkXEVpg#;b$IHOC+yFB>PngI2LU5AJov0+D9AzDnxs zxt}?d?t6Txd|i1}F=H}t=mUWStr0?0Oa&>&ItOz+7Cn%9e2`pvZYU-!j0yMy-O zO`P9%>1Flgj&i(uNe{x@gA+eimp2ZJm1oO)K6ln_4Bf8mvOGL$Av5^t;GXnaGk-jO z_WZmYsZX{&!Or<(GkS{R9zQpky(yOjxNbD_Q=UQfY?G_cUEgod+urNUMQirF=EE=z z_(4xPFXk5a+3kM)5~^5%UPK~uM&45`C99g--s&AOJ`IiwDd5;#EL8@ThvrOY5Zr?Z zqWldYj5%aBg6CZyIPhdJO0mGd82YgZYE*;A?ELzi1N5z2q9teugiS(-C3w$}m&}gq z=%WhRp#hEBN$j^I#tJsMh$sS1D6Iwce?UzL4r;aneg6h(re|bkWyi_OgMjj|oRZSA za&$#yRqCzky7~wp7ja9Aj9x=WXBV!g%7dqOphVubHJrG8@Xxw9H9dm>Vk3!xvn&4y zzYUWYScsI_{CI%tsmf@MA(qFzR##uv^>(9{uW{kGe}N1OJr|vqd%{44OppBy7zJr} zSebNjQ3@ge`p1uaN(77F#aG9K$cM-8bSJ`$%W_n(^M$^N)2jEgwLN6$X2;Y7cudx{AKo&mjnd|qBW@McjI{rc!=T#88Wj*Ie(x-Dzdvg@bD2!pVJ1f@Imp*}j~qFwa9`<;dUbF-^HipYECpZ7(g*p01| zUwqL!edBXKrXs9238~TNL|`X6z~r=Bu*pF?=+qmQbP)LgQO9)_gWrAcRv4W1g|p`C zFnJJ1_<+_ytmf~BiG@%i3M3Ye$_Wj1g^I)Jqh$Ei!a;dL2P-k*V9h=rMzFlK11cqKe=tJle%c z7>$aOg0e6egvdlIuNZE7q{M;)damgD+KUR|De{0#NHJScC8!Pxcd71Wo_VS+Ptgbr z>Z=rYul5Q4PU;&Y_}JZNpHSyn ztFL`mBw<82Bz0Q$c~%ord&lVJelem-TunL@2162bg8+a$_dvwWkZv3BiG z-@i4hADKYcv$|I)7oX@A=$pdfZ9-lwEfCdH!!u21$g1I_>G7TzpAml5m9sBIZ*D0Q zlSSJ+kaPQ*gWC~>h_T$Og_k(WN%esTaF0hs0tGmSCJ4o<3i}qtYpP@*dD|<RGN+PAL0Dl7ejV}RP$9~GYM?isQr+wfdJ>LtR9 z(A~)%%sev%0i?je4|kIBLbu=)3y2U8q&1i7fufTjADjjc0ufvSQKxx|FgmMzHOru8 z?oLqs)Ut6 zi1VH|np$eRf$FtjGzTRU6D845Vhq7px*aT4O?^f%g*ECIhZ9x@Pp!*8?}`h*eP+a9 zhA;V}S=eJsXYFy#BIJbPQ?4?C9vI#p%7O&IJ$;r)3ZgbQu_qLMQ24Gb#ZZKHPFqdR zc|@vLoLS#}uVd4M%a*_>tDq9fN(t0;y4cQ&%%GF%QR7lVQu*#kKCO{~;QhY69d+n# zDf@0oS11cAb)K`&(W*u4C5)Hyoh(&^;UVlzs|J{m9KF-~9j1Yt1yVjjUvWG&h_b6I z0<}1EiB(SfE7TQpkROiNW!y=8#s~g4cL2fhe}6C8K>m?z{5}6ylG*Xk;=zA#2Oa=K z7dDn<0{5U-1Jp-nas1zE>EarW|Jz1x?BMvnX?2g|En|;UoMhwb4|fprY3Ka=UpHld z6nxG40wooE!qizW9Q^bm#Pa2Qt1nUu_{n2M0~+ru2xd@0Ii#F1q7q?=R$9xXz_Ijh z?NJo4sqAiu@pfqQ$mN25%6+$h6IpRIM{!-kf}B=!MP=^&*WZ50NYbgOYUjEVrnYd7 z*IGP>`xwku7BKYpMy!_^t&k`^y`dDhNJ;Kp>9mWk7#cG*T1#~JNkZ}EYyNnZ7b&Gw zYg^`afG*^owdDyvt{PTiHL2aXao;kwIG|hRN7Lb}QaVB&#C5Zq@*9;|&g>s8pH?wG zi>@`D;E9cJe#uI5OY=e1p6G0vP*l^!(EGfd*(Z-XX34^;EIwGr7hVskVeaZG9Ne`@ zm>$BnY{zyPeN7NX=d+(k`#D`*-i5P|-F>5TczBCkL@XgP{f&nu9Xy1{>WQt*jTk7$ zI0pcE65K<_sKfIJvAxEZRuO^rJv)yhwdKPFu1YWRBkztTs3IT z3hmQ&nQf)w#2nyGy@@9%`}C$nXHjHO5sw>1yVa3^E=|Wcx~}JPP+%ngih1XNlOVd- zu76-{B`P;ZlFaKSm^$6=O!mXGpazwVU_skqBpG*E19CS@Gw18dP6Kvk4GZcMv$ho* zCle+k?%e1&S>8;)HM8xuZ}{TuR0?Uk_Cu5^RNBMCiU1FZX^KCBE?XC{}a+wGM{=9@i@V zb4TBo{Ytz;Q18Cg^huUtOxT?~@;&(3dJHf;yXZS-Ph)@MGTe^hd`TmoWUtPh;{D)T}3*(I!(v_S||Fsl@I+b_GD}^5aP^A{fgz1*UshUya`*o@gnqy z3h#A1fCCW0(3=8#8k7x-u^Yv^zr=<2guGhozL_cL@DX81is&OE5oq>INIiJ;+X%77 zH?T8AIbhv(>#3b5?0vOCM0)!u5w`@Ag?U>>riAQ565h}8EYg!svd9Dv`0p2r6QBkt z1$z8FrMN0MiBnGIzdmXs{`V~13=a7HahI-AyMtz*Y#vOBVd zOw3oy14WS6t+HFXheO4hLe^BfR}S-NvsbvFSBa{{7b*jRK2vuVC~IxD9?@pgTP(Nk z-Sk_BOEJ`1xw=F5j$RzvyCSmImKa(8T+@Q9OIp(lygVRdn1s#js8A%c~+8A%2 zh@LDEQXZ^U{-PW=c82p>phW$syb3vlCH zt?ieF?Zn*8L>G&#+wbpHQoQ_?OsR}hm#qnRcLiv0PgXI|TUq))gf5K5e+l;aqRQjE zFWvefdH*{gsgXTkE@W3JgaL%))+CxU`V_G=_C|79X4y&3aA94GbyTzPCNj#v zfQwH%aFDS2T2k@5&Ti85exP9?uE`?nc5X9&Id)4DdprBJS33Ol#EXrk!% zwekEcBvlwp2evf6Y5ALoXl#0Y~kDs_#|iwHmZPHF(y4z+>DEkPqwPQt6BZE z`M6f*LU_AG&bFfr&+vO%zlX-i#$Aeg5QL~8gc0pl-$!mS+dDw}hPyUFt(juip@)vs zteT7J<%xdlqNU<#7qq7GRsJJ7%RHz zz31CoK3oun#&Vu}oVRC~kZS-iiyH;ntYa{7)-77BV z?o|8NZqLhJtowhwJ(VcGUL*Zf=jI-C9qtsVz7KT>_!r1v2IZkYEE7l{RF3ynxwu$)N6gQCs?@!ZN7)O?oV z^BT*Qh^oqJ;{ii+7xGNg24|1o1lg@MgPHm_6CJsCUlQX=QQGLhw9+DCt-*J#$aKGL zZT1g5>o0jh->}nQ%C1Af7|{4M%Ouo#V?5K)#uFwNt-kDkWik6Jq~JQFqosMKHZe6; z$Qi!~N}x5f;ZX@Z#T`aTDYLIG^;ZW54uu`$VVkN9B#;Ne)d8zHv1LZ@?_~2MO)zcI zbq=q8HSaZFy9zw(z9(S(`MB`q(~`T|ROgq+(x!RyTc;yeZTS|F?P4UM+uQa; zs*(e7cdj*;VijIA_VNpkURWj^bWIK4L?CRJ;zAYynW&Ui7pKX@SWHNXtS&t4DHpER zbtmoDlE%Iih+;+wB5ZlKmFXh89G%7$M_g>|yI-t)S39qr2gY6||miCU>%G%Fe0ZNIps@m?dLZBJtrU)|92YEEY0uxOhipR)O>4F`2 z^8!Wk5yy%vDH`%@pQ%b5ACzQ|S(SIIg>D*xPT^P*Ly;~7kcb*8IC;j?Gv}g+Oas!e zW@mnEomT6HFJ&PIw@*mpj)rPr7E{c*zexFqbfDDkaC2P3f2&mr>-i`LdlH{SBvEs% zGwZ91a!w(EuJzu}*oyb#rM5xf)NDaN35fjhI2Ch_=)^QOOwkG%c0V~Iu>gg__Z!!? z2~(aJ(p-d4VG~TNI{#a8>JxivE&ov>n4U@MKs3r-j5}6S!u5Z_B`U_v?c9- z33X~A_unkP2W=KP6%T&;Ax7|-<{I2A51VeR^K5D?gMFseH0!y(=3yQK;+mr{zJETw zf`!Y^r3QcF2ZzD1@Z6`4V!v?5sA@0&(?N#1S>$l!oi4Qzn}vW&^8XxvDBwOI?{CLH z(fYr}|DUwbe~o{*Ui%+f2q*l`;u*lH2>$tv#sUEEqlab}7MHT7mpx4Xu|?p7-@EGj zxNmg#jK}H;t`n*1GeQhUV*gA!Kwe{gIjH+^BsQ+jkH4!VY!nhY&d*`jfZHNMwpq>B zFjF=VWC9*CXE>~QB!IC;*3+|*TRMoR!uM=y6kjb}CcJbUC;a9~$g|zYtDJuFFjnPt zUJ1N8VcJCS=@6J7T_KXCZU4;IX`XSa`icvxywWle_4r|hs>kL0qsJB=H+?)o*={v! zo%`E7P0?+2A9_NpX6Vvvsca0x5}$&`F=E97ah%a`-3N8ME>R+#l~UNo{r3eb(QH-m z7Y8`SPr;vW^s!QAI@N1E3nN?+MEjH9S4FKgYu!qBU=BY-<`*_VVjf2F{_^jW;w6-~ zEZMH+d#i5Q#OYPPKm>*cvDbZ;3&>&cqzCT`4Fi?rRD|Y8;u9A;S!IP=z`mHB020{M8C=P^rwQ5XEhfH zoIX*pLta)djlRn1V`L=M+A=J5m&&`c6Q3#ZAC144#z5w`LMt0}lc3Gtn8B?p6`+}7 zh*I9;H8rW&Q{ZWw-AntRxT~mT+udlv!kALApM|*EA5C`08T2`POtu|!n3$kX1OTn7 zG(i7W@qsJ?0JF3F>nsQ7f(OlFXxX)jrUN-z_3Nkn@ly5?YRRMCeEOp8wgyGv2wT^3 zLOOFt5PU7gs5J73)792xkR&b!KF;ix+scDWJeskpcQUDG-r=cheyvSPSk#fQQQujM z|H(2|UI5#?i=H|bA8qYF;#feTK4nEiI%_zsz|fQS6ZIKomQ#uu_u7+;)z9k8j77(9 zcm3S5z2oIOo-4GdD?e%YRT*Z_a`-gMv+kTn{G^|9;6UUC>O@T~))iJ_asKYC^{f`l z(kA99!+R_sa&P5&^r)?L*uoo1;bR{%dbz{`(_@MkM820~uoJ>YPU<4x#Z5}MjjFQm zo?~>SV>jXI0wqmz%O{M)Goe@q9QfzgD`9NqH+0>)10GzIb=MR;@X=Jyo+` z7ZDSC)%%=1Hg>H&&;9FSyd~?{m_zwp6^1+P>oO9z*tYM;2$Mal+IT(SahzMKJDI$d z<$DIA(FF_p9e#qI5Lff>>5b@m^n%%C1JFe<{PVjbN<&C>6|n@8sQs40aa% z_2Zt}5%%YNurmK|5+*;Ezv7(rIZxj8RBJ{W16Wm!IeZv5#Ue#61#C^cFENB9${`+} z1rSMCl%SRy z!t|nTcaQ$`x2=OVW9Gm7{B;TV-8oF|GPg^EQ#{c;i+<>akD`mkRn2NP*ww!A5H-9i zaK%?prxrr79%>h>CzVKPM$1s)`rFcDdgWVyk;MrTxPzN-V-eDr{qhs5cJo2Si&#%a ziP7c?BTdb4g^v2w%U-_fx$2K)5+6&MD6&u1*y`{p5a8u$NYBE8cMd$ZL zz-UC`(TQ5v^QyvmWt*VZ`&c}aHIV;tbJI-$bh8}2=Pafn=cf1tlZ+J=gT*8vU^R^toJ!3AU?et@*;NWc6 zxah@7j=)1vU!sn$r|Fs>77$x8F-o$cf*l$Mg63x-(JzbR1O@1@+01B$6gI;$<%>Sv zO(VI@MUX3q2hC2zI6igz%}+Ww2R8wkW;*48q9l{Yj@nEP8BSGE6h=v(q!Q(!>%4`k zo^D-(l9o9l$v*NWg^{fi7eS-t)yoE4V}h23nHaG$Aj181^zKb;r<(IFSJw36PKqs) zza|1+U5Syg)_2#`;DA326b^$O@!! zAeQKMU`N!eS{`w}`z=w>r_~s_ekuuHwjzE=++!Ekw?k7b%yC+`$F{DJ)GXy*>82iYO?-Vv!%=STtMP; zU`KhCAo9$_>E{mtY)>04_?axB$cd*B`O8YG{;Nr&{u|*7IK%ls4Xhx6O597Z(S+%p zi!u*yw8K7@^noG>Aj)tF2TB${z7WV91gp?p7`vnKTMEzc@}*zxOJo83MXw6g?#I;W z13-Fnvv?8mH1l2V?%H#LFF(aB6q&WpHjnmJ>JnKmX1=g$yC%L~vHNVku==(oS7)}f zAUEz7UH>O(&cJe?s}G3cMqhq!(j*yMU-st450Py%(xz(2+#*?FQ*W7NTROO^T4LDh zHz9RLij4J?4BS6l=(hSC=QvI};cK#x@jZ44W`UjD^@fL%syrbDe}=_YO&*uQWCFQ* zJ0EFY=6V_EZ&v7jPWk-2sHls7>LZstCytc;>qcsh-Bsj}L|DH2+c87l_=Vqap0>%b z_=T#|r_K)~3pTDZuQK+0w21I9qPv8LZwi@If3HX)Lt7kyUqpQaMsH2gtT2S@2 zjnhJDuz) zIsX_ZI;wqweVQUs016*eqEgaUb&x2GsxINGzS2c*^XDTH%K3=2K?demI10N$lQ?pE zoV8z+`ZnLzu91OKb8IpHqn+Q)iSIHL$jZVsT_8kGMqdLI%Tq#3AIM(6EnM&pQ`f6B zba81deZl`<%=aJ6`gdl|dDm-#wla(U}PK8Ng(u*gWn#kT$m($%YeN zY|Z{*z9;rp5D0q~O$6U6`fm*89|$RqY$lb7X)6$S`v&pT0i9y38ZMu60;Pk_Q*ga4Mb%+xN$vAS3r4lh5BKDiOs19}!)|6q zb9LHk7aAKjR@Pq$_vv?s;J=D-!2+%Okgsl2lu3&<^}M6Mn@3h9CO$$Y_J>z$a`MQ! zA6-jpz7;)gm7#T*1QnN_Zrm0biqCskxQnN*46t&x)bLjBo+|Lj9bHAR~>;5ag*Z2Couj}G~ zyYFQ&ae~?HcE9a9cP8{68#G)Nry8*WZe}Sfe)%*>wkqSTQ~36I;;KZms+deF z*)^$xzs>AN>k*rAFFTZ$5YDi_Y8eJ}7FmQ`h&?@<7dWL(OOw-C&HrH!waJ>}F~DZ@-D)Tpbr@}upz zv`6GBhM5-3NVx$UTjXrNmMu~$n)2yMVbL0u$300bK*sY=+Tw)>&SzXC((g&LX`4y>yu6p+1Lx zp;`-mtXvLK-<)nu-L`#y@EsyxbN@(ZC3choVd0{y-fRyZ8y%93n!huW)u@r47}R$H zDS@2#(HNZ&`R+BI^Y_BXasN|!T$6Fxn%2a!h&e##!}IH3YbAVuydy{_7PT8lYjL2* zslodu19PV!d~qKj=xBPxHu29ZZI*V;^VJO(k@G+UV5|9;9E*&(ppql5m8?Exz-p-U zdab%>J0$uew@lB_hjhO9VS2{BD-!Fa+9+M$Q{83Y2DY*@#xi>j`w=RoUJ5YRnqocO z(k`7JzFMSjr@t%c5`o`s*MjQr1BcO^er;#G_wA^cNI8MTZ#~*jRVka?kXHQ_+|k>x zcaLH7w-ao@|F*EsGs4Rq%y<8bh4nAA;eq($vXcL^>q{yt15f}B|DtGHI6AuOn=Ue2 zGdFer@2+o!Q^PZBon$5Ji{&GXKkPyd(_)@%{WBO=NB-RhhA!+j+aZqCZisv0VVir5 z@G`OUbn&rudd)X+Bn1o&Ca`Qx8~vjT(~IV{kk6ooDIi9ZMMsSXjS*gsB-=4Ypm^wd z*Mx?fpD0E`ESl&?^*L7c>6{%S^A{ixQv0s{ zK{Q=^Vbfn+sDf|I3T6$OZ9z}#p<8B!SkSmLB%6Bi^Cpy)>ym#Wu$_;S&GP{0CrYlK z%mx94+2@=l`I3@2tl&eo*<<~fbTHvUjS)=ZmR!0YUUb?!B2Pv7c!t)uHAk`9FmM#R zJ~{Nc>QI>1u<_`u1?{roITEY3;W&z zngb@?Ln7H`2%yP*z*+mzqLRzt;VE1#@qCzf6G|fLd)8}E^^X;V+yM&(38`1sl6wUj z$mZ23`+Si3W2|HYq3^Ucc;SMexGW9VI%utHNTxQAqiLU+%HI4c3Y&h~crKBH&Edn| zy9S@c2$=LzbKBglCFt|{eEElP1tuM(uqoE52vv~GADVYbXcKW1JdlxZN5|Zz+pakO z%;cU>U@r~%Xhp+ve`sY}PTR=yj34n&eqD92q-kUR;gcs#PFKS-SFTe7AZ-#`pz6b* zR@~)U*aov%=Zyl3+FNc1`id8R*Dyf1K1B5p|B8hNe+tu!Ev!kJ*d>)yPB*^tys`R{ zGjI(@Z|zu(J2QNXC8a3747+Qf;ejF_K}J_d6lSEFW;_I?Y+EXdd6+PM>OZ|K&xYi@ z$Jo_473606DcEbzN4YM6HevCd)$>4C@$+yGvMSuUG->UfbOe;bTRtJ8Qhd`RbSH^-KNV*i zzN*2<(TSJK#9W`@tuzr%}pfF#*XI{57s$@&Gfb;~e%o>)>vx8B$;>I4PVgqY_TK zWO;nX=qRd`&pR5FTm6mS;XZ-Ke0aom{&r4IO{K6}pSf})CGTf;rF3H(%|nVxC>D}d z)tb^(ix=QWZB46SEdZXb(8AVeQJCWJSimejk+3Rr;gV(|oN20P5C=A*ELfpWiTs<& zNJMS5kQYW!Z{wn`IB|H?Bpg!87V|)V#X?f0o6PU?(A~gPpgS%;rL;vIZRM~*be+hB z4hLjHgb2A3RsKBreQ5YD5@(AE!+-{fW)KY|dOWcR(Kn}g;?MIMvKHRzKv?f71U+c} z3L>VX6=1JzO|O{W=?bd?Z_0}imbLj+qY2hWQ@Z-WUur^%lT5ULH~cI=^IJzd@G1~u z&R+>_tK+*jhvd+3GzooDa5KonRq&ZUM_+BR=g%9FR}1lOO&6Np?e=Nd+;KuigKeTE z{oMFw=1hd(lq8{@3dN(Y+6$PQI36E2cC2H+8R%)~-TGLNK91-CYAE{IfX3@Cz73{6 zsS1)2Q%qW%@%T?H!<4CpIpn`QMyX5%kNyM8AQb-pCXM{M?tctbhB&Qpzzos;ee_K4 z`A3{Cy>I3Hz`!!FbL$HuYuh_Z8xPDzw>~pWid5$Dm2aotyAIw9r`4?gp_N_sDw#}o z5ul8nr(*evb;BL`7&Ah@O9#NJLTxiL+cYr}G4*T6T$p{p_aT69BcZ{aciKxnd89bg zhwft*R{f^zIF?1yQoDGPgv`Zsq3vt!iR$U5aRl3Hd;T|7c2AX*a!CzGQ9c?w{-*RRMfu3vOk4{4cIsWo zhS4S1L3e}hF{Gi$_E5VB5X=plL_L!YZSlH5j{?@Mw z{pCQLsu=siG(HO(JflO@s4VS;t`(Q5YO}0CEK8?N5&^zw2JoeG3gtu?M{n7u>^szw zkJWeVNhOhs!`QWMc|c8t*u!loN+P8WjM)0JlT(P^-bS{t_usC|e?Ox1@RQ10YTd(u zx@%3nk!1E~!++NLR`v5%QJco$P{7A*1irDpA zC!t}9{oKByX^6Ol&U794_xDR_-P_!h`H}`-H(dUAUQ8eqmF;?9RL)s4&dsGoS8KfR zXs1O1rEPh)QCT#kg$6w|yvW6F>8QL;OIFwMqkbvBh#NaE%?2BNN97(H#19BJ4|^P4 zCG_(?!aycZf7EJ0KgL79g3WrKj3Hc4l(gO^;DgB<1UQ= literal 0 HcmV?d00001 diff --git a/lesson_18/webserver/public/script.js b/lesson_18/webserver/public/script.js new file mode 100644 index 000000000..d888b6af1 --- /dev/null +++ b/lesson_18/webserver/public/script.js @@ -0,0 +1,85 @@ +(() => { + document.addEventListener("DOMContentLoaded", function () { + printWelcomeMessage(); + listenForSearchButtonClick(); + }); + + /** + * Print a welcome message to the console. + */ + function printWelcomeMessage() { + console.info("🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥"); + console.info("🔥 Welcome to the Code Differently course! 🎉"); + console.info("🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥🎉🔥"); + } + + /** + * Adds an event listener to the search button to listen for a click event. + */ + function listenForSearchButtonClick() { + document + .querySelector(".search-button") + .addEventListener("click", (event) => onSearchButtonClick(event)); + } + + /** + * Handles the search button click event. + * + * @param {Event} event + */ + function onSearchButtonClick(event) { + // If this button is inside a form, prevent the form from submitting. + event.preventDefault(); + + // Get the search text from the input field and perform the search. + const searchText = document.querySelector(".search-text").value; + performSearch(searchText); + } + + /** + * Perform a search for items containing the search text. + * + * @param {string} searchText + */ + async function performSearch(searchText) { + console.log("Client: Searching for titles containing: ", searchText); + try { + const response = await fetch(`http://localhost:5000/items`); + const data = await response.json(); + const foundItems = data.items.filter((i) => + i.title.toLowerCase().includes(searchText.toLowerCase()) + ); + showResults(foundItems); + } catch (error) { + console.error(error); + } + } + + /** + * Shows the results on the page. + * + * @param {Array} results + */ + function showResults(results) { + // Get the results element from the DOM and clear it. + const resultsEl = document.querySelector(".results"); + resultsEl.innerHTML = ""; + + // Create a heading + const headingEl = document.createElement("h2"); + resultsEl.appendChild(headingEl); + headingEl.textContent = "Search Results on the Client:"; + + // Create an unordered list (UL) element and add it to the results element. + const ulListEl = document.createElement("ul"); + ulListEl.classList.add("results-list"); + resultsEl.appendChild(ulListEl); + + // Populate the list with the search results using the list item (ul) tag. + results.forEach((item) => { + const listItemEl = document.createElement("li"); + listItemEl.textContent = item.title; + ulListEl.appendChild(listItemEl); + }); + } +})(); diff --git a/lesson_18/webserver/public/style.css b/lesson_18/webserver/public/style.css new file mode 100644 index 000000000..89ac2183b --- /dev/null +++ b/lesson_18/webserver/public/style.css @@ -0,0 +1,52 @@ +body, html { + width: 100%; + height: 100%; + margin: 0; + padding: 0; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + font-family: Arial, sans-serif; +} + +.container { + text-align: center; +} + +.logo img { + max-width: 300px; + margin-bottom: 20px; +} + +.search-box input { + width: 60vw; + padding: 10px 20px; + margin-bottom: 20px; + max-width: 580px; + font-size: 18px; + border: 1px solid #ddd; + border-radius: 24px; + outline: none; +} + +.buttons button { + padding: 10px 20px; + margin: 0 10px; + font-size: 14px; + border: none; + background-color: #f2f2f2; + color: #5F6368; + border-radius: 4px; + cursor: pointer; +} + +.buttons button:hover { + box-shadow: 0 1px 2px rgba(0,0,0,0.24), 0 1px 5px rgba(0,0,0,0.12); +} + +footer { + margin-top: 20px; + font-size: 12px; + color: #5F6368; +} \ No newline at end of file diff --git a/lesson_18/webserver/src/server.ts b/lesson_18/webserver/src/server.ts new file mode 100644 index 000000000..61364c1f2 --- /dev/null +++ b/lesson_18/webserver/src/server.ts @@ -0,0 +1,34 @@ +import express, { Express, Request, Response } from 'express'; + +const app: Express = express(); + +app.use(express.static('public')); +app.use(express.urlencoded({ extended: true })); + +app.post('/search', async (req: Request, res: Response) => { + const searchText = req.body.searchText as string; + + console.log("Server: Search for titles containing:", searchText || ""); + + // Invoke the items API to get the list of items and filter matching titles. + const apiResponse = await fetch(`http://localhost:5000/items`); + const apiData = await apiResponse.json(); + const filteredData = apiData.items + .filter((item: any) => item.title.toLowerCase().includes(searchText.toLowerCase())); + + // Dynamically build our response HTML character-by-character. + let responseText = '

Search Results

'; + responseText += '
    '; + for (const item of filteredData) { + responseText += `
  • ${item.title}
  • `; + } + responseText += '
'; + + // Send the response back to the client. + res.status(200).send(responseText); +}); + +const port = 4000; +app.listen(port, () => { + console.log(`Server is running on http://localhost:${port}`); +}); \ No newline at end of file diff --git a/lesson_18/webserver/tsconfig.json b/lesson_18/webserver/tsconfig.json new file mode 100644 index 000000000..33b87bb59 --- /dev/null +++ b/lesson_18/webserver/tsconfig.json @@ -0,0 +1,12 @@ +{ + "compilerOptions": { + "rootDir": "./src", + "outDir": "./dist", + "target": "es2016", + "module": "commonjs", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true + } +} \ No newline at end of file From 865760ddc80e96e24352de4e3dba2baa1e44b638 Mon Sep 17 00:00:00 2001 From: "Anthony D. Mays" Date: Tue, 9 Apr 2024 04:44:07 +0000 Subject: [PATCH 2/6] fix: script --- lesson_18/webserver/public/script.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lesson_18/webserver/public/script.js b/lesson_18/webserver/public/script.js index d888b6af1..735428c75 100644 --- a/lesson_18/webserver/public/script.js +++ b/lesson_18/webserver/public/script.js @@ -1,7 +1,7 @@ (() => { document.addEventListener("DOMContentLoaded", function () { printWelcomeMessage(); - listenForSearchButtonClick(); + // listenForSearchButtonClick(); }); /** From 6a8865580e9846ad5e6f1bbe33858b7be947689b Mon Sep 17 00:00:00 2001 From: "Anthony D. Mays" Date: Tue, 9 Apr 2024 04:47:50 +0000 Subject: [PATCH 3/6] lint: fixed file format. --- .../lesson16/web/MediaItemsController.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java b/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java index 43cb1ac00..d4bfb7bf7 100644 --- a/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java +++ b/lesson_16/api/api_app/src/main/java/com/codedifferently/lesson16/web/MediaItemsController.java @@ -1,18 +1,16 @@ package com.codedifferently.lesson16.web; +import com.codedifferently.lesson16.library.Librarian; +import com.codedifferently.lesson16.library.Library; +import com.codedifferently.lesson16.library.MediaItem; +import com.codedifferently.lesson16.library.search.SearchCriteria; import java.io.IOException; import java.util.List; import java.util.Set; - import org.springframework.web.bind.annotation.CrossOrigin; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; -import com.codedifferently.lesson16.library.Librarian; -import com.codedifferently.lesson16.library.Library; -import com.codedifferently.lesson16.library.MediaItem; -import com.codedifferently.lesson16.library.search.SearchCriteria; - @RestController @CrossOrigin public class MediaItemsController { From 7ca7eafee4eda55d283791a65e81788056999c3a Mon Sep 17 00:00:00 2001 From: "Anthony D. Mays" Date: Tue, 9 Apr 2024 04:50:59 +0000 Subject: [PATCH 4/6] docs: spelling and additional instructions --- lesson_18/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lesson_18/README.md b/lesson_18/README.md index 65cfaca45..480795e63 100644 --- a/lesson_18/README.md +++ b/lesson_18/README.md @@ -10,7 +10,8 @@ ## Homework * Go through the lecture resources to understand the basics of working with web clients and servers. Feel free to skip the HTML tutorial if you feel comfortable working with the basics already. -* Complete the [Exploring the Client and Servers](#exploring-the-client-and-servers) walthrough. +* Complete the [Exploring the Client and Servers](#exploring-the-client-and-servers) walkthrough. You will not need to submit a PR for this assignment. +* Continue working on [lesson_16](/lesson_16/) PR submission. ## Exploring the Client and Servers From f588da9b25b83cd3afa7cc1e80020481e81ae991 Mon Sep 17 00:00:00 2001 From: "Anthony D. Mays" Date: Fri, 12 Apr 2024 09:56:57 -0700 Subject: [PATCH 5/6] chore: adds assignment details and template (#375) --- lesson_20/README.md | 17 ++++++++++ lesson_20/template/hero.jpg | Bin 0 -> 336646 bytes lesson_20/template/index.html | 62 ++++++++++++++++++++++++++++++++++ lesson_20/template/logo.png | Bin 0 -> 29879 bytes lesson_20/template/style.css | 0 5 files changed, 79 insertions(+) create mode 100644 lesson_20/README.md create mode 100644 lesson_20/template/hero.jpg create mode 100644 lesson_20/template/index.html create mode 100644 lesson_20/template/logo.png create mode 100644 lesson_20/template/style.css diff --git a/lesson_20/README.md b/lesson_20/README.md new file mode 100644 index 000000000..454cd922b --- /dev/null +++ b/lesson_20/README.md @@ -0,0 +1,17 @@ +# Lesson 20 + +## Homework + +* Watch chapters 1–5, 10, 13, 14 of [CSS Tutorial – Full Course for Beginners](https://www.youtube.com/watch?v=OXGznpKZ_sA) +* Study the template html files and prepare to style it to match the [Code Differently](https://codedifferently.com) website (due by lecture on 4/17). + +## Working with CSS Instructions + +You will have the opportunity to develop your CSS skills by attempting to mimic a simplified version of the Code Differently website. + +1. Make a copy of the template directory and give it a unique name. +2. Add your CSS to the `style.css` file in the directory. +3. Submit a PR with your completed solution. You should only make modifications to the CSS file while leaving the other copies unmodified. + +> [!NOTE] +> Make sure that you have the [Live Server](vscode:extension/ritwickdey.LiveServer) extension installed in VS Code for the smoothest development experience. \ No newline at end of file diff --git a/lesson_20/template/hero.jpg b/lesson_20/template/hero.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3a3f4cb1401d167d346bcb19599e52d763522727 GIT binary patch literal 336646 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�}Ef&#K=%Y_gUZ_aQEzDl$&8 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 literal 0 HcmV?d00001 diff --git a/lesson_20/template/index.html b/lesson_20/template/index.html new file mode 100644 index 000000000..9809481f5 --- /dev/null +++ b/lesson_20/template/index.html @@ -0,0 +1,62 @@ + + + Homepage + + + + + +

+
+
+
+
+
+
+

Together we can move the needle of diversity in tech.

+
Code Differently provides hands on training and education through coding classes that gives participants the technical and cognitive skills they need to excel in technology-driven workplaces.
+
+
+
+

Our Programs

+
    +
  • +

    1000 Kids Coding

    +

    The Code Differently 1000 Kids Coding program was created to expose New Castle County students to computing and programming. The 1000 Kids Coding courses are designed for all experience levels, no experience required.

    +
  • +
  • +

    Return Ready

    +

    The Code Differently Workforce Training Initiatives were created to help individuals underrepresented in tech reinvent their skills to align with the changing workforce market. If you are ready to start your tech journey, join our talent community today.

    +
  • +
  • +

    Pipeline DevShops

    +

    Pipeline DevShop is a youth work-based learning program. Youth participants experience working in a real software development environment while sharpening their technology and soft skills.

    +
  • +
  • +

    Platform Programs

    +

    Platform programs are designed for high school graduates, college students, career changers, or professionals looking to develop the technology job readiness skills for today’s workforce.

    +
  • +
+
+
+
+
+
+ © 2024 Code Differently +
+ + \ No newline at end of file diff --git a/lesson_20/template/logo.png b/lesson_20/template/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..847ff80d3559f380eb063843cae3cb47471a6d7a GIT binary patch literal 29879 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 z Date: Mon, 15 Apr 2024 08:46:21 -0700 Subject: [PATCH 6/6] chore: adds viewport tag for html template --- lesson_20/template/index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/lesson_20/template/index.html b/lesson_20/template/index.html index 9809481f5..f918a9287 100644 --- a/lesson_20/template/index.html +++ b/lesson_20/template/index.html @@ -1,6 +1,7 @@ Homepage +
+ + +
+ +
+