From ad1b42ae04f5705ad4aa4bc990bf3a3156e23260 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Mon, 7 Aug 2023 01:15:40 +0900 Subject: [PATCH 01/15] :wrench: config(docs): fix docusaurus config (#278) --- docs/docusaurus.config.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 1490537e..73f5e48e 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -11,10 +11,10 @@ const config = { favicon: 'img/favicon.ico', // Set the production url of your site here - url: 'https://depromeet.github.io', + url: 'https://docs.street-drop.com', // Set the // pathname under which your site is served // For GitHub pages deployment, it is often '//' - baseUrl: '/street-drop-server/', + baseUrl: '/', // GitHub pages deployment config. // If you aren't using GitHub pages, you don't need these. From 08f63cdcb8481e1fde6ce6584a22d0d9a19cf722 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Mon, 7 Aug 2023 01:39:01 +0900 Subject: [PATCH 02/15] :wrench: config(docs): remove docusaurus ci (#279) --- .github/workflows/docusaurus.yml | 36 -------------------------------- 1 file changed, 36 deletions(-) delete mode 100644 .github/workflows/docusaurus.yml diff --git a/.github/workflows/docusaurus.yml b/.github/workflows/docusaurus.yml deleted file mode 100644 index 209b96f9..00000000 --- a/.github/workflows/docusaurus.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Docs - -on: - push: - branches: [main, dev] - paths: - - "docs/**" - pull_request: - branches: [main, dev] - paths: - - "docs/**" - - -jobs: - deploy: - name: Deploy to GitHub Pages - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Set up node - uses: actions/setup-node@v3 - with: - node-version: 16 - - - name: Build docs - run: | - cd docs - yarn install - yarn build - - - name: Deploy to GitHub Pages - uses: peaceiris/actions-gh-pages@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} - publish_dir: ./docs - user_name: github-actions[bot] - user_email: 41898282+github-actions[bot]@users.noreply.github.com \ No newline at end of file From 5a8ad9649ed3eb92d9c7e5771e9f2f192bd598b5 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Mon, 7 Aug 2023 04:17:26 +0900 Subject: [PATCH 03/15] :memo: docs(docs): add more docs template (#281) --- docs/blog/authors.yml | 20 --- docs/docs/database-schema /_category_.json | 7 - docs/docs/intro.md | 48 ++---- .../Intrduction.md | 7 + .../_category_.json | 4 + .../architecture.md | 20 +++ .../database-schema.md | 16 +- .../design-considerations.md | 21 +++ .../high-level-design.md | 4 + .../images/ERD-Admin.png | Bin .../images/ERD-Areas.png | Bin .../images/ERD-Items.png | Bin .../images/ERD-Music.png | Bin .../images/ERD-Users.png | Bin .../images/ERD.png | Bin .../low-level-design.md | 4 + .../user-interface-design.md | 4 + .../_category_.json | 3 +- .../Integration-test-result.md | 6 + .../Intrduction.md | 7 + .../_category_.json | 7 + .../unit-test-result.md | 4 + docs/docs/tutorial-basics/_category_.json | 8 - docs/docs/tutorial-basics/congratulations.md | 23 --- .../tutorial-basics/create-a-blog-post.md | 34 ---- .../docs/tutorial-basics/create-a-document.md | 57 ------- docs/docs/tutorial-basics/create-a-page.md | 43 ----- docs/docs/tutorial-basics/deploy-your-site.md | 31 ---- .../tutorial-basics/markdown-features.mdx | 150 ------------------ docs/docs/tutorial-extras/_category_.json | 7 - .../img/docsVersionDropdown.png | Bin 25427 -> 0 bytes .../tutorial-extras/img/localeDropdown.png | Bin 27841 -> 0 bytes .../tutorial-extras/manage-docs-versions.md | 55 ------- .../tutorial-extras/translate-your-site.md | 88 ---------- 34 files changed, 110 insertions(+), 568 deletions(-) delete mode 100644 docs/docs/database-schema /_category_.json create mode 100644 docs/docs/software-design-description/Intrduction.md create mode 100644 docs/docs/software-design-description/_category_.json create mode 100644 docs/docs/software-design-description/architecture.md rename docs/docs/{database-schema => software-design-description}/database-schema.md (96%) create mode 100644 docs/docs/software-design-description/design-considerations.md create mode 100644 docs/docs/software-design-description/high-level-design.md rename docs/docs/{database-schema => software-design-description}/images/ERD-Admin.png (100%) rename docs/docs/{database-schema => software-design-description}/images/ERD-Areas.png (100%) rename docs/docs/{database-schema => software-design-description}/images/ERD-Items.png (100%) rename docs/docs/{database-schema => software-design-description}/images/ERD-Music.png (100%) rename docs/docs/{database-schema => software-design-description}/images/ERD-Users.png (100%) rename docs/docs/{database-schema => software-design-description}/images/ERD.png (100%) create mode 100644 docs/docs/software-design-description/low-level-design.md create mode 100644 docs/docs/software-design-description/user-interface-design.md create mode 100644 docs/docs/software-test-specification/Integration-test-result.md create mode 100644 docs/docs/software-test-specification/Intrduction.md create mode 100644 docs/docs/software-test-specification/_category_.json create mode 100644 docs/docs/software-test-specification/unit-test-result.md delete mode 100644 docs/docs/tutorial-basics/_category_.json delete mode 100644 docs/docs/tutorial-basics/congratulations.md delete mode 100644 docs/docs/tutorial-basics/create-a-blog-post.md delete mode 100644 docs/docs/tutorial-basics/create-a-document.md delete mode 100644 docs/docs/tutorial-basics/create-a-page.md delete mode 100644 docs/docs/tutorial-basics/deploy-your-site.md delete mode 100644 docs/docs/tutorial-basics/markdown-features.mdx delete mode 100644 docs/docs/tutorial-extras/_category_.json delete mode 100644 docs/docs/tutorial-extras/img/docsVersionDropdown.png delete mode 100644 docs/docs/tutorial-extras/img/localeDropdown.png delete mode 100644 docs/docs/tutorial-extras/manage-docs-versions.md delete mode 100644 docs/docs/tutorial-extras/translate-your-site.md diff --git a/docs/blog/authors.yml b/docs/blog/authors.yml index c9421fa6..eef61153 100644 --- a/docs/blog/authors.yml +++ b/docs/blog/authors.yml @@ -17,23 +17,3 @@ siyeon: url: https://github.com/siyeonSon image_url: https://github.com/siyeonSon.png - -endi: - name: Endilie Yacop Sucipto - title: Maintainer of Docusaurus - url: https://github.com/endiliey - image_url: https://github.com/endiliey.png - -yangshun: - name: Yangshun Tay - title: Front End Engineer @ Facebook - url: https://github.com/yangshun - image_url: https://github.com/yangshun.png - -slorber: - name: Sébastien Lorber - title: Docusaurus maintainer - url: https://sebastienlorber.com - image_url: https://github.com/slorber.png - - diff --git a/docs/docs/database-schema /_category_.json b/docs/docs/database-schema /_category_.json deleted file mode 100644 index b89e94cb..00000000 --- a/docs/docs/database-schema /_category_.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "label": "Database Schema", - "position": 5, - "link": { - "type": "generated-index" - } -} \ No newline at end of file diff --git a/docs/docs/intro.md b/docs/docs/intro.md index 8a2e69d9..8fad3931 100644 --- a/docs/docs/intro.md +++ b/docs/docs/intro.md @@ -2,46 +2,24 @@ sidebar_position: 1 --- -# Tutorial Intro +# Intro(개요) -Let's discover **Docusaurus in less than 5 minutes**. +Street Drop Docs는 Street Drop의 공식 문서입니다. -## Getting Started +## Street Drop 이란? +스트릿드랍은 길을 걸으며 음악을 드랍하는 음악 공유 소셜 서비스예요 -Get started by **creating a new site**. +[**디프만(디자이너와 프로그래머가 만났을 때)**](https://www.depromeet.com/) 13기 프로젝트로 진행되었으며, 2023년 3월부터 시작하여, 2023년 7월에 공개베타 서비스를 오픈하여 운영중입니다. -Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**. -### What you'll need +사이드 프로젝트로 진행된 만큼 다양한 문서와 작업 과정, 코드등을 공개하고 있습니다. -- [Node.js](https://nodejs.org/en/download/) version 16.14 or above: - - When installing Node.js, you are recommended to check all checkboxes related to dependencies. +### Street Drop Docs 란? +Street Drop Docs는 **Street Drop의 공식 문서**이며 SRS 문서, 여러 개발자 문서 등을 확인할 수 있습니다. +Street Drop Docs는 [_Docusaurus_](https://docusaurus.io/)를 사용하여 만들어졌습니다. -## Generate a new site +### Street Drop SRS +Street Drop SRS는 Street Drop의 SRS 문서입니다. Street Drop의 SRS 문서는 [_여기_](/docs/srs/intro)에서 확인할 수 있습니다. -Generate a new Docusaurus site using the **classic template**. - -The classic template will automatically be added to your project after you run the command: - -```bash -npm init docusaurus@latest my-website classic -``` - -You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor. - -The command also installs all necessary dependencies you need to run Docusaurus. - -## Start your site - -Run the development server: - -```bash -cd my-website -npm run start -``` - -The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there. - -The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/. - -Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes. +### Street Drop SDD +Street Drop SDD는 Street Drop의 SDD 문서입니다. Street Drop의 SDD 문서는 [_여기_](/docs/sdd/intro)에서 확인할 수 있습니다. \ No newline at end of file diff --git a/docs/docs/software-design-description/Intrduction.md b/docs/docs/software-design-description/Intrduction.md new file mode 100644 index 00000000..01461e42 --- /dev/null +++ b/docs/docs/software-design-description/Intrduction.md @@ -0,0 +1,7 @@ +--- +title: 1. Introduction (개요) +sidebar_position: 1 +--- + +# 1 Introduction (개요) +## 1.1 Purpose (목표) diff --git a/docs/docs/software-design-description/_category_.json b/docs/docs/software-design-description/_category_.json new file mode 100644 index 00000000..f8d07e78 --- /dev/null +++ b/docs/docs/software-design-description/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Software Design Description", + "position": 5 +} diff --git a/docs/docs/software-design-description/architecture.md b/docs/docs/software-design-description/architecture.md new file mode 100644 index 00000000..5395dc7e --- /dev/null +++ b/docs/docs/software-design-description/architecture.md @@ -0,0 +1,20 @@ +--- +title: 3. Architecture (아키텍처) +sidebar_position: 3 +--- + +# 3. Architecture +The architecture provides the top level design view of a system and provides a basis for more detailed design work +Provide or reference a detailed description and diagrams of the architecture.. + +## 3.1 Overview +This section provides a high level overview of the structural and functional decomposition of the system. Focus on how and why the system was decomposed in a particular way rather than on details of the particular components. Include information on the major responsibilities and roles the system (or portions) must play. + + +## 3.2 Subsystem, Component, or Module 1 …N +You only need to provide this level of detail for elements which are custom for this design. Do not go into gory detail. Goal is to get 80% of the elements figured out ahead of time. + +Describe an element (subsystem, component, module, etc.) from architecture in further detail. When appropriate, include information on how the element is further broken down and the interactions and relationships between these subcomponents. + +## 3.3 Strategy 1…N +Describe the strategy used or decision made. Include information on the alternatives considered and the reasons for their rejection. diff --git a/docs/docs/database-schema /database-schema.md b/docs/docs/software-design-description/database-schema.md similarity index 96% rename from docs/docs/database-schema /database-schema.md rename to docs/docs/software-design-description/database-schema.md index 3990f507..cabd7995 100644 --- a/docs/docs/database-schema /database-schema.md +++ b/docs/docs/software-design-description/database-schema.md @@ -1,6 +1,6 @@ --- -title: Database Schema -sidebar_position: 5 +title: 4. Database Schema (데이터베이스 스키마) +sidebar_position: 4 --- # Database Schema @@ -17,10 +17,10 @@ sidebar_position: 5 ## Schema 설계 ### 전체 ERD 다이어그램 -![](./images/ERD.png) +![](images/ERD.png) ### 사용자 관련 ERD 다이어그램 -![](./images/ERD-Users.png) +![](images/ERD-Users.png) 사용자 도메인에 대한 ERD 다이어그램 입니다. @@ -36,7 +36,7 @@ sidebar_position: 5 ### 드랍 아이템 관련 ERD 다이어그램 -![](./images/ERD-Items.png) +![](images/ERD-Items.png) 드랍 아이템 도메인에 대한 ERD 다이어그램 입니다. @@ -49,7 +49,7 @@ sidebar_position: 5 ### 음악 관련 ERD 다이어그램 -![](./images/ERD-Music.png) +![](images/ERD-Music.png) 음악 도메인에 대한 ERD 다이어그램 입니다. @@ -64,7 +64,7 @@ sidebar_position: 5 ### 지역 관련 ERD 다이어그램 -![](./images/ERD-Areas.png) +![](images/ERD-Areas.png) 지역 도메인에 대한 ERD 다이어그램 입니다. @@ -76,7 +76,7 @@ sidebar_position: 5 | 읍면동 및 마을 지역 | Village Area | village_area | 읍면동 및 마을 지역에 대한 정보를 담고 있습니다. 마을 지역 ID, 마을 명, 마을 코드, 버전, 마을 지역 폴리곤, 마을 중심지역, 도시지역 ID 필드가 있습니다. | ### 관리자 관련 ERD 다이어그램 -![](./images/ERD-Admin.png) +![](images/ERD-Admin.png) 관리자 도메인에 대한 ERD 다이어그램 입니다. diff --git a/docs/docs/software-design-description/design-considerations.md b/docs/docs/software-design-description/design-considerations.md new file mode 100644 index 00000000..fa82ed48 --- /dev/null +++ b/docs/docs/software-design-description/design-considerations.md @@ -0,0 +1,21 @@ +--- +title: 2. Design Considerations (설계 고려사항) +sidebar_position: 2 +--- +# 2. Design Considerations +All design considerations were handled in Binder Release Phase 1. + +## 2.1 Assumptions +Metrics and TaskView reports will be handled in the workflow reporting project. + +## 2.2 Constraints +None that we are aware of. + +## 2.3 System Environment +The Binder Request Workflow process resides in the PCMS system which is a VB.NET application that resides on the client’s machine that has an XP operating system. PCMS is the banking practice’s global desktop that will be available to all banking practice associates. The database used to store the data will be SQL Server. Teamplate will be used as the Third Party Workflow product.. + +## 2.4 Design Methodology +(Optional) - Summarize the approach that will be used to create and evolve the designs for this system. Cover any processes, conventions, policies, techniques or other issues which will guide design work. + +## 2.5 Risks and Volatile Areas +None have been identified. diff --git a/docs/docs/software-design-description/high-level-design.md b/docs/docs/software-design-description/high-level-design.md new file mode 100644 index 00000000..b90727c1 --- /dev/null +++ b/docs/docs/software-design-description/high-level-design.md @@ -0,0 +1,4 @@ +--- +title: 5. High Level Design (상위 수준 설계) +sidebar_position: 5 +--- diff --git a/docs/docs/database-schema /images/ERD-Admin.png b/docs/docs/software-design-description/images/ERD-Admin.png similarity index 100% rename from docs/docs/database-schema /images/ERD-Admin.png rename to docs/docs/software-design-description/images/ERD-Admin.png diff --git a/docs/docs/database-schema /images/ERD-Areas.png b/docs/docs/software-design-description/images/ERD-Areas.png similarity index 100% rename from docs/docs/database-schema /images/ERD-Areas.png rename to docs/docs/software-design-description/images/ERD-Areas.png diff --git a/docs/docs/database-schema /images/ERD-Items.png b/docs/docs/software-design-description/images/ERD-Items.png similarity index 100% rename from docs/docs/database-schema /images/ERD-Items.png rename to docs/docs/software-design-description/images/ERD-Items.png diff --git a/docs/docs/database-schema /images/ERD-Music.png b/docs/docs/software-design-description/images/ERD-Music.png similarity index 100% rename from docs/docs/database-schema /images/ERD-Music.png rename to docs/docs/software-design-description/images/ERD-Music.png diff --git a/docs/docs/database-schema /images/ERD-Users.png b/docs/docs/software-design-description/images/ERD-Users.png similarity index 100% rename from docs/docs/database-schema /images/ERD-Users.png rename to docs/docs/software-design-description/images/ERD-Users.png diff --git a/docs/docs/database-schema /images/ERD.png b/docs/docs/software-design-description/images/ERD.png similarity index 100% rename from docs/docs/database-schema /images/ERD.png rename to docs/docs/software-design-description/images/ERD.png diff --git a/docs/docs/software-design-description/low-level-design.md b/docs/docs/software-design-description/low-level-design.md new file mode 100644 index 00000000..2cd80017 --- /dev/null +++ b/docs/docs/software-design-description/low-level-design.md @@ -0,0 +1,4 @@ +--- +title: 6. Low Level Design (하위 수준 설계) +sidebar_position: 6 +--- diff --git a/docs/docs/software-design-description/user-interface-design.md b/docs/docs/software-design-description/user-interface-design.md new file mode 100644 index 00000000..70399ca6 --- /dev/null +++ b/docs/docs/software-design-description/user-interface-design.md @@ -0,0 +1,4 @@ +--- +title: 7. User Interface Design (사용자 인터페이스 설계) +sidebar_position: 7 +--- diff --git a/docs/docs/software-requirement-specification/_category_.json b/docs/docs/software-requirement-specification/_category_.json index f0f5de29..fcfcd69e 100644 --- a/docs/docs/software-requirement-specification/_category_.json +++ b/docs/docs/software-requirement-specification/_category_.json @@ -2,7 +2,6 @@ "label": "Software Requirements Specification", "position": 4, "link": { - "type": "generated-index", - "description": "5 minutes to learn the most important Docusaurus concepts." + "label": "SRS" } } diff --git a/docs/docs/software-test-specification/Integration-test-result.md b/docs/docs/software-test-specification/Integration-test-result.md new file mode 100644 index 00000000..7ab6c5fd --- /dev/null +++ b/docs/docs/software-test-specification/Integration-test-result.md @@ -0,0 +1,6 @@ +--- +title: 3. Integration Test Result (통합 테스트 결과) +sidebar_position: 3 +--- + +# 2. Integration Test Result (통합 테스트 결과) diff --git a/docs/docs/software-test-specification/Intrduction.md b/docs/docs/software-test-specification/Intrduction.md new file mode 100644 index 00000000..01461e42 --- /dev/null +++ b/docs/docs/software-test-specification/Intrduction.md @@ -0,0 +1,7 @@ +--- +title: 1. Introduction (개요) +sidebar_position: 1 +--- + +# 1 Introduction (개요) +## 1.1 Purpose (목표) diff --git a/docs/docs/software-test-specification/_category_.json b/docs/docs/software-test-specification/_category_.json new file mode 100644 index 00000000..f0a5f167 --- /dev/null +++ b/docs/docs/software-test-specification/_category_.json @@ -0,0 +1,7 @@ +{ + "label": "Software Test Specification", + "position": 6, + "link": { + "label": "SDS" + } +} diff --git a/docs/docs/software-test-specification/unit-test-result.md b/docs/docs/software-test-specification/unit-test-result.md new file mode 100644 index 00000000..72b2bf39 --- /dev/null +++ b/docs/docs/software-test-specification/unit-test-result.md @@ -0,0 +1,4 @@ +--- +title: 2. Unit Test Result (단위 테스트 결과) +sidebar_position: 2 +--- \ No newline at end of file diff --git a/docs/docs/tutorial-basics/_category_.json b/docs/docs/tutorial-basics/_category_.json deleted file mode 100644 index 2e6db55b..00000000 --- a/docs/docs/tutorial-basics/_category_.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "label": "Tutorial - Basics", - "position": 2, - "link": { - "type": "generated-index", - "description": "5 minutes to learn the most important Docusaurus concepts." - } -} diff --git a/docs/docs/tutorial-basics/congratulations.md b/docs/docs/tutorial-basics/congratulations.md deleted file mode 100644 index 04771a00..00000000 --- a/docs/docs/tutorial-basics/congratulations.md +++ /dev/null @@ -1,23 +0,0 @@ ---- -sidebar_position: 6 ---- - -# Congratulations! - -You have just learned the **basics of Docusaurus** and made some changes to the **initial template**. - -Docusaurus has **much more to offer**! - -Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**. - -Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610) - -## What's next? - -- Read the [official documentation](https://docusaurus.io/) -- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config) -- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration) -- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout) -- Add a [search bar](https://docusaurus.io/docs/search) -- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase) -- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support) diff --git a/docs/docs/tutorial-basics/create-a-blog-post.md b/docs/docs/tutorial-basics/create-a-blog-post.md deleted file mode 100644 index ea472bba..00000000 --- a/docs/docs/tutorial-basics/create-a-blog-post.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -sidebar_position: 3 ---- - -# Create a Blog Post - -Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed... - -## Create your first Post - -Create a file at `blog/2021-02-28-greetings.md`: - -```md title="blog/2021-02-28-greetings.md" ---- -slug: greetings -title: Greetings! -authors: - - name: Joel Marcey - title: Co-creator of Docusaurus 1 - url: https://github.com/JoelMarcey - image_url: https://github.com/JoelMarcey.png - - name: Sébastien Lorber - title: Docusaurus maintainer - url: https://sebastienlorber.com - image_url: https://github.com/slorber.png -tags: [greetings] ---- - -Congratulations, you have made your first post! - -Feel free to play around and edit this post as much you like. -``` - -A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings). diff --git a/docs/docs/tutorial-basics/create-a-document.md b/docs/docs/tutorial-basics/create-a-document.md deleted file mode 100644 index ffddfa8e..00000000 --- a/docs/docs/tutorial-basics/create-a-document.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -sidebar_position: 2 ---- - -# Create a Document - -Documents are **groups of pages** connected through: - -- a **sidebar** -- **previous/next navigation** -- **versioning** - -## Create your first Doc - -Create a Markdown file at `docs/hello.md`: - -```md title="docs/hello.md" -# Hello - -This is my **first Docusaurus document**! -``` - -A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello). - -## Configure the Sidebar - -Docusaurus automatically **creates a sidebar** from the `docs` folder. - -Add metadata to customize the sidebar label and position: - -```md title="docs/hello.md" {1-4} ---- -sidebar_label: 'Hi!' -sidebar_position: 3 ---- - -# Hello - -This is my **first Docusaurus document**! -``` - -It is also possible to create your sidebar explicitly in `sidebars.js`: - -```js title="sidebars.js" -module.exports = { - tutorialSidebar: [ - 'intro', - // highlight-next-line - 'hello', - { - type: 'category', - label: 'Tutorial', - items: ['tutorial-basics/create-a-document'], - }, - ], -}; -``` diff --git a/docs/docs/tutorial-basics/create-a-page.md b/docs/docs/tutorial-basics/create-a-page.md deleted file mode 100644 index 20e2ac30..00000000 --- a/docs/docs/tutorial-basics/create-a-page.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -sidebar_position: 1 ---- - -# Create a Page - -Add **Markdown or React** files to `src/pages` to create a **standalone page**: - -- `src/pages/index.js` → `localhost:3000/` -- `src/pages/foo.md` → `localhost:3000/foo` -- `src/pages/foo/bar.js` → `localhost:3000/foo/bar` - -## Create your first React Page - -Create a file at `src/pages/my-react-page.js`: - -```jsx title="src/pages/my-react-page.js" -import React from 'react'; -import Layout from '@theme/Layout'; - -export default function MyReactPage() { - return ( - -

My React page

-

This is a React page

-
- ); -} -``` - -A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page). - -## Create your first Markdown Page - -Create a file at `src/pages/my-markdown-page.md`: - -```mdx title="src/pages/my-markdown-page.md" -# My Markdown page - -This is a Markdown page -``` - -A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page). diff --git a/docs/docs/tutorial-basics/deploy-your-site.md b/docs/docs/tutorial-basics/deploy-your-site.md deleted file mode 100644 index 1c50ee06..00000000 --- a/docs/docs/tutorial-basics/deploy-your-site.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -sidebar_position: 5 ---- - -# Deploy your site - -Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**). - -It builds your site as simple **static HTML, JavaScript and CSS files**. - -## Build your site - -Build your site **for production**: - -```bash -npm run build -``` - -The static files are generated in the `build` folder. - -## Deploy your site - -Test your production build locally: - -```bash -npm run serve -``` - -The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/). - -You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**). diff --git a/docs/docs/tutorial-basics/markdown-features.mdx b/docs/docs/tutorial-basics/markdown-features.mdx deleted file mode 100644 index 0337f34d..00000000 --- a/docs/docs/tutorial-basics/markdown-features.mdx +++ /dev/null @@ -1,150 +0,0 @@ ---- -sidebar_position: 4 ---- - -# Markdown Features - -Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**. - -## Front Matter - -Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/): - -```text title="my-doc.md" -// highlight-start ---- -id: my-doc-id -title: My document title -description: My document description -slug: /my-custom-url ---- -// highlight-end - -## Markdown heading - -Markdown text with [links](./hello.md) -``` - -## Links - -Regular Markdown links are supported, using url paths or relative file paths. - -```md -Let's see how to [Create a page](/create-a-page). -``` - -```md -Let's see how to [Create a page](./create-a-page.md). -``` - -**Result:** Let's see how to [Create a page](./create-a-page.md). - -## Images - -Regular Markdown images are supported. - -You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`): - -```md -![Docusaurus logo](/img/docusaurus.png) -``` - -![Docusaurus logo](/img/docusaurus.png) - -You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them: - -```md -![Docusaurus logo](./img/docusaurus.png) -``` - -## Code Blocks - -Markdown code blocks are supported with Syntax highlighting. - - ```jsx title="src/components/HelloDocusaurus.js" - function HelloDocusaurus() { - return ( -

Hello, Docusaurus!

- ) - } - ``` - -```jsx title="src/components/HelloDocusaurus.js" -function HelloDocusaurus() { - return

Hello, Docusaurus!

; -} -``` - -## Admonitions - -Docusaurus has a special syntax to create admonitions and callouts: - - :::tip My tip - - Use this awesome feature option - - ::: - - :::danger Take care - - This action is dangerous - - ::: - -:::tip My tip - -Use this awesome feature option - -::: - -:::danger Take care - -This action is dangerous - -::: - -## MDX and React Components - -[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**: - -```jsx -export const Highlight = ({children, color}) => ( - { - alert(`You clicked the color ${color} with label ${children}`) - }}> - {children} - -); - -This is Docusaurus green ! - -This is Facebook blue ! -``` - -export const Highlight = ({children, color}) => ( - { - alert(`You clicked the color ${color} with label ${children}`); - }}> - {children} - -); - -This is Docusaurus green ! - -This is Facebook blue ! diff --git a/docs/docs/tutorial-extras/_category_.json b/docs/docs/tutorial-extras/_category_.json deleted file mode 100644 index a8ffcc19..00000000 --- a/docs/docs/tutorial-extras/_category_.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "label": "Tutorial - Extras", - "position": 3, - "link": { - "type": "generated-index" - } -} diff --git a/docs/docs/tutorial-extras/img/docsVersionDropdown.png b/docs/docs/tutorial-extras/img/docsVersionDropdown.png deleted file mode 100644 index 97e4164618b5f8beda34cfa699720aba0ad2e342..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25427 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 diff --git a/docs/docs/tutorial-extras/img/localeDropdown.png b/docs/docs/tutorial-extras/img/localeDropdown.png deleted file mode 100644 index e257edc1f932985396bf59584c7ccfaddf955779..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27841 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 JrC|B>e*nH7H{}2T diff --git a/docs/docs/tutorial-extras/manage-docs-versions.md b/docs/docs/tutorial-extras/manage-docs-versions.md deleted file mode 100644 index e12c3f34..00000000 --- a/docs/docs/tutorial-extras/manage-docs-versions.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -sidebar_position: 1 ---- - -# Manage Docs Versions - -Docusaurus can manage multiple versions of your docs. - -## Create a docs version - -Release a version 1.0 of your project: - -```bash -npm run docusaurus docs:version 1.0 -``` - -The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created. - -Your docs now have 2 versions: - -- `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs -- `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs** - -## Add a Version Dropdown - -To navigate seamlessly across versions, add a version dropdown. - -Modify the `docusaurus.config.js` file: - -```js title="docusaurus.config.js" -module.exports = { - themeConfig: { - navbar: { - items: [ - // highlight-start - { - type: 'docsVersionDropdown', - }, - // highlight-end - ], - }, - }, -}; -``` - -The docs version dropdown appears in your navbar: - -![Docs Version Dropdown](./img/docsVersionDropdown.png) - -## Update an existing version - -It is possible to edit versioned docs in their respective folder: - -- `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello` -- `docs/hello.md` updates `http://localhost:3000/docs/next/hello` diff --git a/docs/docs/tutorial-extras/translate-your-site.md b/docs/docs/tutorial-extras/translate-your-site.md deleted file mode 100644 index caeaffb0..00000000 --- a/docs/docs/tutorial-extras/translate-your-site.md +++ /dev/null @@ -1,88 +0,0 @@ ---- -sidebar_position: 2 ---- - -# Translate your site - -Let's translate `docs/intro.md` to French. - -## Configure i18n - -Modify `docusaurus.config.js` to add support for the `fr` locale: - -```js title="docusaurus.config.js" -module.exports = { - i18n: { - defaultLocale: 'en', - locales: ['en', 'fr'], - }, -}; -``` - -## Translate a doc - -Copy the `docs/intro.md` file to the `i18n/fr` folder: - -```bash -mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/ - -cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md -``` - -Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French. - -## Start your localized site - -Start your site on the French locale: - -```bash -npm run start -- --locale fr -``` - -Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated. - -:::caution - -In development, you can only use one locale at a same time. - -::: - -## Add a Locale Dropdown - -To navigate seamlessly across languages, add a locale dropdown. - -Modify the `docusaurus.config.js` file: - -```js title="docusaurus.config.js" -module.exports = { - themeConfig: { - navbar: { - items: [ - // highlight-start - { - type: 'localeDropdown', - }, - // highlight-end - ], - }, - }, -}; -``` - -The locale dropdown now appears in your navbar: - -![Locale Dropdown](./img/localeDropdown.png) - -## Build your localized site - -Build your site for a specific locale: - -```bash -npm run build -- --locale fr -``` - -Or build your site to include all the locales at once: - -```bash -npm run build -``` From ecfc58e7874ee45fd902df4645d7db1116448f4e Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Mon, 7 Aug 2023 04:25:48 +0900 Subject: [PATCH 04/15] :bug: fix(docs): fix broken link (#282) --- docs/docs/intro.md | 4 ++-- docs/docs/software-requirement-specification/_category_.json | 5 +---- docs/docs/software-test-specification/_category_.json | 5 +---- 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/docs/docs/intro.md b/docs/docs/intro.md index 8fad3931..a047804b 100644 --- a/docs/docs/intro.md +++ b/docs/docs/intro.md @@ -19,7 +19,7 @@ Street Drop Docs는 **Street Drop의 공식 문서**이며 SRS 문서, 여러 Street Drop Docs는 [_Docusaurus_](https://docusaurus.io/)를 사용하여 만들어졌습니다. ### Street Drop SRS -Street Drop SRS는 Street Drop의 SRS 문서입니다. Street Drop의 SRS 문서는 [_여기_](/docs/srs/intro)에서 확인할 수 있습니다. +Street Drop SRS는 Street Drop의 SRS 문서입니다. ### Street Drop SDD -Street Drop SDD는 Street Drop의 SDD 문서입니다. Street Drop의 SDD 문서는 [_여기_](/docs/sdd/intro)에서 확인할 수 있습니다. \ No newline at end of file +Street Drop SDD는 Street Drop의 SDD 문서입니다. \ No newline at end of file diff --git a/docs/docs/software-requirement-specification/_category_.json b/docs/docs/software-requirement-specification/_category_.json index fcfcd69e..67efc301 100644 --- a/docs/docs/software-requirement-specification/_category_.json +++ b/docs/docs/software-requirement-specification/_category_.json @@ -1,7 +1,4 @@ { "label": "Software Requirements Specification", - "position": 4, - "link": { - "label": "SRS" - } + "position": 4 } diff --git a/docs/docs/software-test-specification/_category_.json b/docs/docs/software-test-specification/_category_.json index f0a5f167..5d46e7f6 100644 --- a/docs/docs/software-test-specification/_category_.json +++ b/docs/docs/software-test-specification/_category_.json @@ -1,7 +1,4 @@ { "label": "Software Test Specification", - "position": 6, - "link": { - "label": "SDS" - } + "position": 6 } From 435ad3a159667ac5ba45241ba9ab0320dc9f3711 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Tue, 8 Aug 2023 17:06:41 +0900 Subject: [PATCH 05/15] :sparkles: feature(docs): document image update (#283) --- docs/docusaurus.config.js | 2 +- docs/static/img/docusaurus-social-card.jpg | Bin 55746 -> 0 bytes docs/static/img/docusaurus.png | Bin 5142 -> 0 bytes docs/static/img/social-card.jpg | Bin 0 -> 253960 bytes .../static/img/undraw_docusaurus_mountain.svg | 171 ------------------ docs/static/img/undraw_docusaurus_react.svg | 170 ----------------- docs/static/img/undraw_docusaurus_tree.svg | 40 ---- 7 files changed, 1 insertion(+), 382 deletions(-) delete mode 100644 docs/static/img/docusaurus-social-card.jpg delete mode 100644 docs/static/img/docusaurus.png create mode 100644 docs/static/img/social-card.jpg delete mode 100644 docs/static/img/undraw_docusaurus_mountain.svg delete mode 100644 docs/static/img/undraw_docusaurus_react.svg delete mode 100644 docs/static/img/undraw_docusaurus_tree.svg diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 73f5e48e..80398c25 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -54,7 +54,7 @@ const config = { /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ ({ // Replace with your project's social card - image: 'img/docusaurus-social-card.jpg', + image: 'img/social-card.jpg', navbar: { title: 'Street Drop', logo: { diff --git a/docs/static/img/docusaurus-social-card.jpg b/docs/static/img/docusaurus-social-card.jpg deleted file mode 100644 index ffcb448210e1a456cb3588ae8b396a597501f187..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55746 zcmbq(by$^M)9+14OPA6h5)#tgAkrW$rF5rshja^@6p-$cZlt9Iq*J;!NH?5&>+^i? zd%l0pA7}Qy_I1b1tTi)h&HByS>tW_$1;CblCG!e^g989K@B=)|13|!}zl4PJ2n7Wh z1qB@q6%`E~2jemL!Fh^}hYfz85|I!R5RwovP?C~TGO*Io(y{V!aPUb>O6%!)!~Op% zc=!h3pup!KRwBSr0q{6*2sm&L-2e})oA3y5u+IKNa7f6Ak5CX$;b9M9ul{`jn)3(= z0TCG<li6i8=o)3kSrx^3DjJi7W8(8t_%PJ~8lVjC z2VTPD&_&_>060+qq1c&?u#iAbP9wbT2jg5_aX>LlOOXw|dQJ8p&2XYYDc|J+YUT?3|Fxm{f?d*1vFWPGwXt8P3T#_TQB*NSP3+0+ndOe%v- zTZotCfofsS06&ki{<`Cj8{s5jFZc&1dl<{IBW%#V_!JjOm6+#&aRi;8ODL(?0fENIOtiNXjMhdO24CeDB#rNcC*<=TwpueFfx=2=r z-lt`qW^;vEFji%7kO25#YkwjKyZ93WFbbY!Q6-@Jz!9kqj>xgp2VhEYyMJwMYyHZV zG;7!MV>54LS*F?==$6(Z9S zfrEy``J-iu6G?#+q=$58MlrE}+C~G-hEMn#CuNuuVV;8#FHuD_feqmtfw~Ran|V#C zy+f^&q>|d(X{ubCVWs3Ai;Fz>-kAk`yX{^Qj_xV#NEV8oxtfCsq3%uYN0U4+Kcu%j z?Rzr+fnu%QVSgx7Z8;iqDfklVK3tl(C|B5~_ywyQf&|IJgyoV|q( z<1`6^2G=2%pTX$m#~!Q-7f>sA;n6 zsy{fJ>o;yxpRCMtZFb#E)dl;n&K%g;H?#HaC_HvnHuqN*d+9vB7ZNpfqqTsk*(((>8<~)=+HX!*Ss3~|# zShAf@XL@`g)$G$rAA9cU; zk+0v$7Rl=PDs_rN&*@^DQ<3}LIqeDu_8cvBZoZQK#xaB*@qDhG^d_fYSBG@Y_wC5B zy{FTF=4jI`H0PRGXlulcwJ$*KBs^);$y@AfTWB!przp%+gn+%ZU2qD$Eml|2m?K;y zsAx49(J!Aq5lqX4u5Rlh{1hD6V?uI0-0}%=eSBZT$;aWCJrM*G=&(~P~7QxUJFlHF+63{SfFhWU%gt&D(4Z~X54CH?JsJEHzO9{;5# z5f-P_*$Y>=CXYL(i4Vw1)$Y&DwihU}jeLyuS2hQ>zS%^7!rET)y)?ZI;W^c(neZ5; zcYHr@l=i48ImXZ(y)o<7>Av^Nw!8t!KDn{67gef*G5f-&iZ;`G@ej`@uBTkn0_QVc zw|RGr%!y|LdrjWk$H6iyi9+o%)D%pY)DHt@e}~ z-ryeSdskl$jkA%Gje(z=CvGUb4lqb$@>K02q8; zBpGv48m)G3Jz8nD`*7z;ch+s~JId9q{~KmJV4qG#VyhtwGh1U7ZW~XgF&CHVcfjI@4|IAMzt7B{D4ttmRhW76WO-cP6HX>7cPSIon_Pic=YB^cwH;qqm2b=+@OjfH55;lLt@>%R&7MejNBW98rLJXZZQtF zmm<7wrV(U^X%O}rZp($;Nb;(nTO##-Fk_K%y2c4)Yt?EsKDLVz&SyIxmRvPYUf)~A zkMkfE4X%Dz8*f>*I$-5J)wLSdUUaV&xP%U!WXidR7*F!E3|fu1supvKyq>T*84`M& z=Dt)zp4h*&a^3bbAWSy|{$~mRt znU?J9X@W)z1+)2SKH;RDEk{C{F~PxzePOC4k2I22=OxAKZEhYTo#jZLnzJRvL-#I` z%_%U{YhbA5LxSuc7mb|<#t0l8BZHy-cvj?r(|M5YOMU0wJ}PLj6z+91PP@u~sUN(0 zoPkUiqj+}m^;#5WI-p1sl3!d`><`0$1U4*Tus{#@{oJ~C_^ll&fIY{RWHLB)Iw~-5 z_trhoc*;Xx|5u&|7Q=~%>SU9dJXt>XnSP z$}G4aR=bB#EC~i5U_z8$Olb|B1Ec2J6a`$P64P%*8UxnscnAmYxki;vGRSH!M<=El z7AwT}?l;S3Ju)fk9NDaW<~K*9J6DCaimLP@Zry38*StONeVaYg4GMSV1sb;$0#63E znXJh6$=|17p)3iget{zQI-ZcSA4kztpbVusXh9 z97)P(^GVx?9}T_w+?VG}Hu2dxs!PdI;c!Skm{8crbnUpgGsmO6Y~0f~`3af#=;}JO zs+>jl(}Ww@TF9nIIp*io9|Ar+SXKeoJ2p0xqq^dDIUaz_3UMRe!*?g>RKH02EKY^8E=Ov%mKqCKc_O8|58B$F z2nPy$8uP`nq5-GE>)_IseB*$*+;W_EcowmS_|Q%w=6aW(&AB z%OtxG-1&Xrq>E%{bjzK4kBw z>Fssz$u`@4(H4(yPd(wlj>oT~6v>IV?P zZDj-meBV3Xh&lOz7Q@p@Wg;VMtEtz0tWmBTlY%+n#pR{sF{)xA5u*BuDd zu~BvH^44yI-2poCTSulFIMHH|6$HIN2!U|l513rs>o5b7&T060H4stH!Rj6uhJ>*c z|EXULN z@Ms{ehhc57nJbz5tP(eS6gqwNx4;1P!wL~Xzd!0hhz^)}wUrh90P!E%NrcHnd5moayrW^mwAO&F9eVphr}#sl@u5#&@cZG3Pef_5ki2d4No`s`w>3E)~NzQq~(%!wQ~iX zS=!>QgW*;6d%-30eCYi-s{}L5+4xRvjRMVc-|_!cJZOOW|D`V>G$9BAul9zT%D`1W z9M}_f^IBfCT+$nV07$(ZMgM6Q>awY7HarX62K->7rWiZ>Plf%@Tc$X)SUE~YSzKHO zOo@t904vq~)2~8z9N~Y(5ghjQaweijSq9}$13ISo#S19Gyn+S8<}IqydMB*M2Fv(F;m*Z^NjCKA@hf(byh~F_Wz8Y|LB9G zj>CREj|u0+^+~|!q^Z4wYAm~DH8vU0K5hJLx;^WW) zn1WdmfwUxh0&F)Ge zJJ$CZ;Gif2pJe@g3jR{7X$9eG;iwp*gh^4;#?q$usU`sYWi;VGk9zUsuxLCqS?i4> zU*!nKB+RzHh&TF;OaYU1boXkFHseTZ9^7*ClUf6WeOAm2`Zgc?XVxs@; z3fyjS*rbEGB3x27NK$sQDLqTsoYX+=I47hKrjQhxw>;|F(o#M)1Zs3=vHf+{4*=lU zQU(~L2n)P!C zOzn-%j;-zdo*A78MJ(b}aNl*Pd%bH4<%$K3cP@a%?zXvnXr7tnRf8PyxM=h2%x6XV zGm+MfF#t#t=FVq6y^o&};nl4gZ1=OgS0W6oT4??aAn_EswVeD=G?0*F3Ky5X?YMg! z*>m;`U68Bw-j3*NS)Xv59AyM$#IrAaBLy!3%T~RztCkOyD`0Oh)~c45m`f(fWkn+8 zFDQ?ehB?iesKfXr>kR(d+^nK;|$bJ0BgK9l#= zSZkY0hNH`T%pTpu&S<)sN$BmKep32<*GjviX5<~dm2S)BRn}Za<=11?iR0CbzUy=Y zs!S!r=YBKN!Hvrz2HB~apVp)gQ@jZ_C@MZHwF>*RQt`RvqEl`)rFXy;*9O;aJ^+IS zAuxBFkwxDhrD+zs6}YE;!WWE7N;x=xxy(hv8tOrT%;~evWtP_;i-tw#{=|s|_1gD} z+$ZPC>;C15y?f=k!B)}XV?@W+W5Jl7E#au2n|eXFYo52!7iV_nr>%rHTLnmp5t__ zeQ~n3Y!)Mwq>pgU`A+DOtI(5{uM`!T&#y7{XqPhrZyx}q50{b`55VTpH9@&go43WC zqZc?IJ_ikEfm4 zqiap;*teY3XjF&M`E)w#v0j2fK8>&^=3ARl7X5?sL7($cGUyT(&GjZ}T7K}UWUq6o zgZIm=(`C|a=eg_1ZeQ8aAv^V`3$rbeo%f|J-#teM&do=aJ4+|bCGzXl53;$~hV*A0ZA5ycpm&br> z1s-woGI3ag*H2HL@1`7`+#zk!nQo^`L}FmXBF9_OVvslb3Qd{^lg7NlT6j-eh)ldq zIsckeM z_udDHz~0vrwpZ3KkTG;-vI!dRfSCp$d>Y)?cj8N5Tr%KDYlI~&_w+W~Esn4I>jEK8 zFVT=y$0H**Z{;PZsC?US7QBb(=tZKtCHDjvqV8L^j>>H?^4A4kTvR^*B7Ecb4?qFk z;I3A-%I#4)i|WCd)!jLZw1itTxsZ$F`MsNa(gzoB&z!Z262^le=~~4I&U`Eb`C+z^ z-VqlxQ;MGC=e90n>dE>aoHV5TkqviF0s?l+z${VoH%t8KFvbH=8^6e$^AlVGU~39o z`MtfitBvEM13&NqqE=`^fHwS_HEw#UDbHmBR+1A|sO+c44k$ zHR9{S!q-(m1a+=}nRGQkrWg-S#Cg;_7%!4Ry2VnE5r>E(^0Gl4^r-P`1z2qO@^9(pRjEp!;DAe7B)FZP$pa4?IWYcn*v>YZ(G2ETw zy|C4)s}8H`Ddud6ogaW9O%*z&O_X=V^6P+mS%uG2EcbTZmk$RT3*(0o4D%(Ts3kn3 zR^3eYF*}KjX-S8m()tqnj4;!Sp!Ho z(7&2M@h1HM;%Et+(u{~Toh0sg@7K`vuJ8O(-mWug9HRvjKP2RmGqWQF%DK(bM_*a0 z>f3#KhBt~#=bL&FWEC}JiXdh?Q9fn5e)7$+{?1Bdf8>;*vDW!BMGjU0?$JBadm(AQ zHAmi$WF|HJ@r5-F$f^VPE+X>suAfbT1DUvi%}6k2#y?ZFyltx!?p zAr?D|oG4gh_c+U9sb>u3LP&?IzmiCo$x4%SP!Q8Q(jEtG(-GPNIhRV_K5L z7Q77k6Jdl2*V9zOs=X@?=vUZ(27Ngc&%L;RjmxGl273=|7++0XC*K z9Zp<^Y~Pm)w3D*jwEo<^OkS4Y<#>lqUb=O)W%Fa5t!Yi<%z$TRIO#_Z7Q3QZ2H5BD@(x_63h;Y($5taTf_%0;ZvK_v)P3}%^YaRF4ri60UEoVB z9tvN{)Jtntfs9Z(yp!blwx06#5$P9W8ouO?r4Ila4@;@S!F4qL>h!`rvxwm8$-&c` zq^<(9nR=GK@B4e0qjX45ZoSs3?|jeZ@13@KMK0R)%1IlSsLp0DH)BFK20FoEM2kwW zSasI{O!BwCJ+a#u@A3ot$06uqU?n&`1G^@J*u|t@Fqwmwe+Wf0fpg%{_PCq6A2+)j z2hE=ehK9p~efCY}}Fj~mMr1Qr~qOdueZ6a_2SDwHZ*lG#r|D%`UFa~RYpuWgUN;*|PxsXBBeqTj`RJnU2 z9PE7zrU|}#_j#k%TQeT63k<&b?|z^RNGOSfltB4MjA|mxqLrdoZ?;jS1BSRxcR{3 z&%l5U(~v7ESy(7pNhyb$1x}p^+*ny$*~6KoZMdfentT6QH1Dr`Dd@U^^%MTqyRNen zJ1b!yKUiiizxRn-n~&g}YvqM*{G%USoM1&>P*AuSldPnqET|FpU!M=af1wNq_3z-J zu56ng_&fk$SpR2Tg&VxTY(oJPP3gAh>wSjZ5#J1#nHbkU`Cof;dA1dQz?$+;E7aQf zK?$L1IL6d(9>vPMi+iISD+SJz*W!e)X$i&Pwc(XN-;gZPke+O!zgm29u4?v!xUP9C zcK48Y@K`NN;M7x{1@te z=@S`oF&M(3^!G8wji3Z4u|IZUp?p~QVc?q&l}!U>SAWC+@B3Q=M8Gx8SMIb+e*r+q z{Yg@g$}_Sz-mgRV1*RA!0Rj$rc-W8!5u7m!h@?;r;RvN(6Nx9m1}wb6UV=69pH!1u4ND1C3^0#GV9Vk5v%jLF1iBkM+~_oe#(k6e04;|1 zqVxcTK}B~<8@cW$rb+NWw4LZ7KVGkN-UHS;bD^cK+2-3`Rj^V98<9f`kPTuKt;S`5 z?|)V)15P$Dy~TG^p+BRJpbTIN2fb57!5|jT#s_X^pnNi>exLT+xuR}kI zLTF>DrKH5As1d;xUMq}JD`rE#xm<3PV^bKt~*|K(@>_s$+l6?PG9c;I$Y$I9Wx zA;xF_MZf_#OaTl`qJ^-80rMXYZnX;yHMnC5N`v2j=zq5Pz&RPG92*Z}aj95Z+R(pq z5>Xr9FJ8qsGy#`dMOy$X4%|!w<&^&whNI5zri}lV6#?4!$Ljbv_f0<2-3Nu?974eOh|NodBrc6s{g264H^#+vv zkI(-F!??JN@B<(iW`KcV-0ngu+-@)j;0A>UFo`kAQKI6|7gl5B1rI>b2tj!?@U%?! zpFY4#g}oL@l|*Hrm#l)1qwa_0RO)Vc;oKlpABihvuq26}r$$LgB-%uwqRxuRrpyG- z63Ji#aENg52nfiiNRQwVk-^yt-aSGBkWsL4aPbK7DcQKVMb!z2h+ndEs=YI%qUPWc zQ>IZ-)zB2Te@6Q%>$!xa)SLHy;OQb1@YE3;2Jiq}T8Nyd)7_1XLd)Qqf~l-gf<mu~bv_xL2)jRuX@t1;#}dEe+$KYBs8Ozc8vKSmQMe zW+znS+=sB{$!eWdtEK&;U{CqQ65Mz$g8{KO3091K?+PmZnxe)Uj z+Qa!s1zBptH)^y=Y^r;+YwUV(!nv}S<^CwP->`OJJ9$f5gUG$;btdeT%D1lTQVA%c1zi!li^! zRC4P;e}Vde23*`#o$}dkJ+39wA!C@gdHJNz_ROozn%~qZ35{gxr zfiN+FJmv8BeiZfN4}PZY+~4(EHI@`4GB%VeN^dL-nxv{!>bS=G=d1&YuW4g(RYo?9 z1bQp@-L75k9jgsahz$6&S+Al>N$6|(Uspyh?G^CV(>yb-uEMv?{QHK7y|JZHbV$py z%-C#HQ^wHzF5_m4mG%K(t4T}wM0ZA{r9PYV^B7{;x3r!Xhwb>CR?<2{=4)iW>-lFp zYAZW-ff6Srzcmf>ey26kFp~2&CwAle919+v=b#GbfQ_k(^GDH^U5h6Ij_hJl+$cY7 z`$l|J9)NY0%G=H3-AiTp4`ibZCebLFOx0X*^9LW5S-jM98V1l7TC$z>H_cy3Z}AyT z7cVLl@}RT$dt1%R4$rYgTUqZJB_<@D5gGBnLzk|&Ap3rHOWJjl)n=4BT|4ZgqT{Y# zt8otJt6vZPNdUZ->2VQc|t#}@1f$zuiGu7Z`2Eq_iUO7kLfvf z3+3l;rJH=!P82eCED=AEqW3F^^w0nBW|fbIo$+A)nzK!N%82P?SXGa`4vSNK00<2u zG?U_{jq8ikbd8p@c-wd;R3TJ+v(c9o9< z15te~^)#o6%yp?zaR-=9=hVgU2)|jpPHt`JGmCnIB+qepbmFikm>#nfBmU{7vA8^z zhTK~#rjjnUOtV*azuR=2pq%=qDo}!HCW$#qTWyAliZ8Xa(cAZ0uV^tvuLjr-#E|<6 zgACc9`oD!F+lpA=rLNEf$nCx{x6Vg$hB|ia>mt1(@zkT4(zdKQrNiynVbyP`+<(GC zZSyg_F+eKZ$i9krPDP!?9!-GQV7-#k7*{YGhxdf%D@)yd=P%=c?r60bP2qytty%-G zh7;7A?%TTQIkk;cPgbW*m6aq{m1>`^R}`Bmi$Y$X?QaEJ3_Auk*q^L1i~N3dGM6CL zP<_JeZDBHK(^_7!@i}$(_U*t}@%hy|H{~Q{;gP|bU)fn%xGdctI%`>elX|Q^@vKaK z!d+`Jp@j=)v%^wXH{7|-__X;}-BP#uIY3=_0IGNc zu~4o%m8|B~5EtZ$^}=3sv!lGEYU+H?Y3%_wM6P8#*6#HJvT!3ul#<{n9ja- zRGu5okTwJ1Zmk}BqcGi4_;~IURanbdr+P5iXG<{exUhhs+*pLQ^{jA#EZ#>o0{+2Mh|5& za#ugek0I`(zQL#5eLDARVY*Xa(DwdUqkel}vhN3?;f0iO-H(xqufvN&!zQI78i>uE z8>&m)ewHaoGgtXPku_dEb6PORWr~;1cC<+G5K=KBl%`A&gp6C>lB)v5Ri$FsN;P4>0AbJz7kC<~Dg6Mg7fXVHmZhEHpA*eA&u za?3ON*{!W8PYLPoTR+cR&PxuH$lp`AWkTjWWz)Zkn3TIiCEofih+Lm=9GE(9)!Yfc zt(H1<`s=^*222e=?7hC0lh4e7B}PtVI_{cAdxGNtdfZX}Ca>Ti9YS^NB6cCtzFtR} zgaj!>#THZKLuuFqeb58ou+VPMIV94Az9}?pq(nm5%Nr@`CDh7dQqUo_(1Ka~Jk;oawETtB8>b`mRyBtgh zO#hV*Tx!lPBM`YD{&wUnqnt2DkRmgRC{h$?KYyR zNy|HI%;HhKQrs~er!LN>c2+qWT)k%E+~E5H9eFKV;EhkieNbfqMTavz)YO`;;q)r^ zRKcAY}gLEwaGA zNB*t;%C<*Y+tgCdcJX-=MUjGgyz~ESiO9#&b61{-h<+|2 zO;mjRZ}0|pCLmN$E}rD#(9h}~)QpVO*=OQA z#Y%e{>N&D?0uC{dY5L(<8J1$SoXTWsj~6x5e9=~^#nEWa^lWqnid)H7wg`B&H>nuf zicIgRBoFD2ii?SfJ43AUH&TVFO^DDYcT;;?zvOP%hwr9IDk(8n^Rrc$KG_W$S^CCU zJn=ZugG;lxxPrOnJdw}Typ5n~t5&$I{si5!MLacZa-r_WCh{j~l7-Op=$9TV5idhN zglm&=R)0UNEvq|kz+%&#x}Q{2@c3ZLBldp!yX7N~c^eZPht|o%1isQe*+RisbVF_% zc)4$!;>pF);4JrP4@@UX#!&8hI;B{0l7;+j>*r10Q|es&1NFKQ)-tV2$Om$A@O-## zCLqC6viD-87K8StG^Ws5ct0&olMkYox>$?+Dv3O{NlG}G;g5QSmf4?q;BsuQo`^U|{x}>ACKXRkdd^tU`U+|LS znWy0^S2)LcB@0!EdDt(Vij$36^78r3tM}C?KI}e^X9-D}*M!iFT%zNr0Gf&Ck7!`A>(uLE(OdeRwb4qX3EiMVz=vWC3?2PE%-wA%a1ap0C zl~rRJyzSkY8Ag$Lm-Lq^*t1^}+zs%@8si;z!Aaw5c$|~Vez}RpL6m1>KPeiGJ-kE2 zbc5&X&fJgVtRw*RtiMc#4#s3H)KgHzHqg{R3E#R(bk3b8<&|L5d#($dxdtH$sL)Ko zW+BbDfPQKTs#e36Joca~N!pf`_Le7~Lv03)(7sml@e{h^6)?B<b% z4<^3n;sOFVdZ|+>M(^LPJA^2T?>N`FCB!o7f5xo^osCpJG~aJR*pRaJ`|hF>b2{X( z4aKEJ#QV2I?XR1|0J3}|ZH&ySn!Nm=`P+m<#hI$;xz?{pkF56P+%fUR#QbB?5vU@D z`>PliKDIXEyl0$1ZZC5zk$jU4dGg+)S}VQJ{2eA&|CmIoN#1+}`@$?!Mu3F2+9T02 ze0p5ot83?2=!y%bJ6DW(u9o4&WO$pZ4(odr6?FoB7XL4e)f!oeU;7hCto!x9u^3y2 z_p)OlA3aa{6K=F7$1_8Kool5Rz84;b!W+-X$m#2JgTdGR`~%<5^BB{h$tmHspv zRGNoo-aTFhEpL1CiLM*gJ|XE30ntfqZ6RW8RmFz7r7ZSdo2F`+dbIqX^P95F?^XML zEd;Je?~!LW2b^bUTSOUq6$IdZfuOEh#~DDY>}8&v?k$U}JNqeWBw+k5RaOv)s}jE= zQ}Q=>D-=P$ONyT$s*Ds6LSFrpWZV z9vm@*jijy=tPX3=aU<`d%SuI}+t_(ucyRkiyAE)B^U$L7DbCd`ZfC1GSJ8C#vU2#vSFtvhw(~TDanF;rn!a zWgH2WF*ekmAnI0Qm{vS{Le0(+uM5o()7|2IRkMwT_#?fPo-fNKuG}%_?WB5XSGAlb zor5}ub|f^JD<-m8x~AHfvW<5`F`lhl67hM38YaG)q~vy{D&^Yntrm?>4z^ZOsgY#Q z1rH+LbV>KeLE_&Mx4guoLMo);;h{zA@6Vg{<*=;A?ow0;2nhIdN=lYmb%EU~F+?HH zLaoso&FKfglw9l+vgl0wD}L>5CraD=W3%oYoYELRdWj9p+A0?Z!6LgiDg#Eu>Ssf0 z&g1y!IZG_R=3hb@lHbRp(1j)&W)S7%^q<5B2`lgE5Sih9hn&%pLfAg~&g4O!dAzEw zr6}!RX6}Ey-TL;=D!pNqHJX2g5o#)RC9PgCs$st=+TNbHeB0ziMr46BDXhn3@+9lb zakzM5tAy8y(qP%tE{ZSGapnb4Z^LN!*_y7=s>e||+mVpl^pnes7OO}vC4KH*VY&(u zBMQ9fD2JG^z22EVkkJ~(SO;UACk7d9{ug7_|C8~{@mt)aT#ZU+DQOUbF#6axF}^Fd zmhtBwd{#Y3lNT?|FIsK&gZ~-#n-Y__6Paff`W5$GI_?&4)>Y6wNn%X>=Sz?np7Qyo zZH9g7Vq#S+Wke2_L1>5intVG>$_RV=;j_%`e4O#OwWIFnFw^vf``;Nw$R9Y&G7L@Q zEpjyn?t&uTR?$ToG6e_w*elUbNC~oP3@8{6T6R7*{BS$ppthlyGy84Q%jeFbF-1n> zO)SGM6LD+T;r0urWn8w~gEyVb*0_W98_BXWEHC7aW9+`WLmR`7N+r~9=L(~xq$Jgb zc0`M~DlkIF1Q$x214|&HJK67p$TCg(T6J$4SH->xR%+&~^((0Nxq2lp^|OY^7-4i; zBL#gyG5+ECIpe3%Ik#hK5FP>?%G+Pa7_Z}b`G(asWH1;##`0)}=0g~DiAQ%12Cj5i z28T%p_C$R@L_1|{@r`H-3@utWDI40LfR4i!SA32m0qYI@45{@x~z)w#KlJvgXw}%|m zRo=DGsu9QXI-g+Tl7VIjr}mX;4fZ(YL6iQz z`lznb+}yW8^|YL;n26~KwXN#Dv2^Jf8J;RGE5MC0?77MSdMq!OZES zr@rC*vXhutbr*g#pI;TJ7-h(_N3>Ax$cW*Hvendxf#T2KHpKfFv0s*GVYIHa#ER76 zH)fn1{!z7-v31;4FFC;np`(vIh~mi%Kk6K0qRrbY_10$&xciNpno*F#wFH=MCWkdaFgK=U$FHh6#XJ6e393;9h_D1Zj72KeX!pg_>9E<8*a-g z^}Kf2k*_7=T(WO~W~`LQ`#b^ur_5KjDOs!UUZE)a4ErIxiW)A?ryWE_hQ{K-z66() zy-hd_Wf6g>qeoGlrK;PChpG^jPZRHd1~2MDVv*}eCafA~rLyFEm7f|EuG-#T2SgA< zQulXvo;0LIo^229Q9ItQ+RBrWH?~QpcDh9k(_=n;aXhtJh!9kR$kCNj9kJ=~BEU51 ziIB~(jdq=S3*TzWE4mQ!!I|ecuJydbjIPp*Xw5Ghu@wSqzc$S6Ix+3baF**T>Mt41 zK!k+2I%~h$4?s4Ot~MGVS3+Ob?$pC%AG>el2v|PfPf#)JsHx(Ctgl_0O>zUrPSn=nDj;t;8OUo=NMf=eZW`H&)xh@0RbL zug`wD9%>dDMf!g1Mmbzz7-EO^Yys;ref6{S7=chPEbgzvK3Ygwd;HLVo?}5(#ACVb zWsLd8mLOML?j@oEu`Ybe-Ndygs{ANWu zTYi}_YQ<948Jzmju!q^KwWli0(I_g&4zh3T`JS8oyS-JxRIlxlOkv13y^u$ebFvDyZKo49C5A{;Tr}MGMfceW3vqv{k;$^5ymBa8D>MecFsutjT zA|2ncpoEfZ3}EUt@Ng34X@75@l=LMd z^xZ7gESH4|2|k980z_jCp=#YZA)wxX8X~1diHoFqFvh?^Q;)oZcQ^W-l}yf5-ITM^aKZ zdfcjKlYl-&+8kEemP6lOR$P)7OO`b%yP(T25cq|hroP0p;{1@NydW2?&Uu!(^E(fD z#^%)iOUjTB^}P|c>sOo(_ivgq!yorSoV_H}q{tDvSL(K+bRbh52yrU?;o;#a1$BI; zG0RiGi1qO#MDdZ{{&bK@3)dmD(0ps&@XAgmQ$@l-h4Gx@t|NQC$u0q^d(ku>t~*n- zd~721PFdAKA^EX@ux5Tar!^~Q?kN4Q#)8B>%mcd&9luSEH|o>s^4tryTublkdEEI{ zKR#&=Y~)FcH*t4`M?g&TY~~}M>#}&vt3FYW)XMt2n{6+LCM@Vc2}fP)OONUg_(3`R zRab{`pOc0H4Vwb&4_9$Hs=7gmE~%pp$%I+QRt~Z=N*)eeji{_PhDB=gEL1PPqQmXj ziAC29F0k*5&JI!cBe@oy3-j>BSk^9W)qi|x9siuq!?B_AiaL9Ia3GgP?P`@aa0sC%Vx~ z4_H;|sIZ_baSi_@V?ArUq-+ig)fyk1eXqmTJP^R3h2&8I=PKcQB=1Si$Yi>2^`ec` zWhT-zHa%mNK+fB?4Hfg(dl$9ssVh57orM0LPj=M|2|5Z33$ZS1MD#ToTy?*a5E<)o zZ^vgVRHt{{s?S|cu9e|pBs<_KW^^?c+z zVk*-fa)Av4H$i8mAsYz;V>N#~@y4qSwKG%ox#ZW_-xaK$Fo)u_7H+~xDQI%!Bh|re zEIa^~TT?%8*jT^u!yxl1>%qYTu)I_Iwf#Cm!)=kQd!PDS6W_)FgT0q+ohn_P|7b-8%kc;m zg1^9mPpG^{HSkKoxNcleZ|3O*V?9Y(hvnWYam7N)*3PotcW%Kd$xrtzn4cx+@DGp{ zFPwjuW6B=Zy)W%}`8}SIrnZJ4SEixC`5nMMSLxD`jCML$)Oa|F+)t9}6J=&fRyZ_^ z*(>evV$1-$K&$Aa2X9j!@6ZDeqAYa1l-8b9FTg}aF(uUeG0nO9eI}>KD(22{Y3iez z8sj(PllCVvngk!res$*`DI4Nz8|c28;b3g=9C+P-zJQd-I3R2Rjn*zpn2l7K`Dk-4 zq4GHFR>DRKlZC)XE(X!Rv+KEpkgX@Ph)0`3j~T?RfLQbFSRt^V`+L0ShrurdA)6#R zbvLEIWqYfi#>&qP=f_x+*)14zkd8ci08%!rf(xnWtQ7*>#*Q3lqkb5ZF8F>;{gl*e(oha^!C7JqB6_d~123dt*fdvJq(?6p*0LOR6U zl~o@(cjQPyT3~|OL^gOFW$f2uVn7?jn#?#D74*G0zSOzzEpH3+v@4X!>%a#ZdTNAo z02SDS+U^x)AN~i#!qbx+7~#+diA%C-494h3`5HW7V|SpXT!d-y6K;E6??0eZ_5aM0iGa7jgD1?z-2)tt(?%)HrV0P2IbUwxg)d%!3 z4(Qq8t4L!w^x)eVTb&7NdkTc^eWb9hI4uNo=4Vx(!X0`ZmUUTkqhL%zXoLtLh)Z5V zt{c8kL1$SYHBbFM)7D;w($|K!o|>Tg+asAc(_eT~?!65~_r`GLc;t~??0R+=C$8+% zSU9dXJbLgR#?h~h;~9v{d|1ty%Q<2)Xi_iT>Z%Bt?C^@A1-{?xP6+qny4pNWax8sr zh$_z;Rh0)xfA?_O?hY?gv-D6ddJNR4@Y&jc|MeC)wpLV5P2%7;{EV$#ZcqAzo!qmx z?ntfHdsSvdZRqSGv5P*ec0FDX*}Bmbt}B=gb58YCcP~YrMboq0D&KRi(a*1$I=D`) z(2;{aX$+9#~ce9s7Dc;AlEy)1ge>u4P`ls#tV!AH}{Mrf3Ev0g>k_on;O1VUFJ zja5^PD~MNp_xa--s%kd#tw&d-JDVyx?UVu)d+29O8LvL)y+8u|%P4{5!jguGKBVVX zp!?(Q-W+--0V4ud;Ga3@%BC&Ar4xVyW%TLQs?ySqbxoXLB9 zegDO|`1jpj(`&Du>guZMs^_U@SzO2wiCx{s6}xlc&#oh~?+TXf7P=r0OSNAfr7?9= z+=L&!eF>@TAe>!T(a=TM0@E)Zl#UnR35M&^|&$%M!ToyO7X*>OO8DdjGdIhHXPX z?svWHw5|YD^yy!Ed6saf6-1ZQANVTlA1J0y8BhWitD!fgc0O*ZogU?W{Bt5=|3G*4 z0jq4((3_~e7hRJuRM`){U|z**Fm`udnq^RoEE9-!$k5NS%TzM(uPX~_hfO9JTpe|K z%R@gT`}pR!(lNGD0G4yAhj zMEi$N{5aLE!7mDWy`(!%x!PN3{hv3%S)|U`OK02zn;mkigLW|8Cqk||nYC#RM3piP z1hL@Q<|b|GXjZHE1wYf7mwb8HTsHNp&aOo8IRTPw{J4rdTvT7LGO=6`h|uC8t^tE^ z2nXn^x%`~8UdLhe>F%x^KudaWuj^CIgH|`GNqTS1huhCeAzR|zcVN*+D^GZvg@t6{ zt%Jlv;t+k^cO{`*Oyu4vy&A6z3MJqkIX9c1AKljGEZooh3;N(+_BT<651L-I+e8z) zJj{Ug6s~`2z968B!3)qy`JqVw0XcMz?Z)C-ni;Puf&MR5s_EUj`9^N zc;)D0ekKK2F19`-g_u62@O@lqzi$?uQmFd1QaNobI;MW=A>yG|U2xA+(&{n4;JspG zJ-vAO_MWK+!A_SoceK(e*pjJyX<)UFz?T`Y9-H}d$jADsFSt4t`-_TXMgbZ8=s-uI zN}uEaz=#(l8|*5;4k$FC@p&!SWuo}TbavOrfL;Xic}AxxdwTfr^OtTM9$#(&gBgL1 zCgRm~-OP9kaZ(%GS-8HpsZuFAHf+g8Ui_asA_>2N z{}WoY+y{;)wte$I9;{JE2LYtY*L*^DeR{mjQxi_YwYJXSbXjlVYbWV!4!n?iElyk& zy^M>mx?ICf@W0anrFqwS(ZZjxm2p{Ct18%;%=`5whuQRB?n4Dp#-@jXfH)`T4>T}@ z(>zL!clT~7L2ehKJ&TDg2W)5kvy+LcyuryarP5q}=lE*g1$Wvc=HHClGs`X=cHYVQ zV}5aV#pFaKx{*62j~+E^{o=!<`%)BcQ1;0AmTT>}S>h0q=-1Jorgo9}7wS1Vyu?Kz`8EX1p_-4{J;lNJ2x?N3deQ?__Q4X`u)~;kVttI`SSwqY})U zf!AS6{dh$TKArl?Vs+3KubJMLAtooil(z? zH&-|YJnm*^mH@3dxDfSU*-TRgaxN1LCP6qu6!CF@J3Oh0=h9*XU1M@+6Ladmu>#JL zivIKXm3}!-e;8OYA`>woR4Cl#xB3fxB-`Hfqdc^pNib+J^$P$`DP<2hsrEp}I zQ_(``<1Ijf%natpKc5HM-Rbhu=J%eJL$8^zKwH{4agt`@cU1m zpuThV^OMMoOu|w6wC==YEgygQfoIad0O`QgblvY9_mqR|jApUcdy(Lkr*{YU$F~Ua zvVw5Wf>5GNfOcC6tG6U_>qy0qoKn(JYXY~@{Ms4=6*zcF8aRn@6ME~GsrJ;*92N6^ zY&>yh34%;EV*Zw;eUAUiZ&wupmR#g{_0^$e6Jn*c<*U&c;U$E65sQ5)%m&SUYzMv% zL@{=a8s{6R;#~Aq!_0ZP+Tc)HXZ5ttQ41tW7Sc)-6RcWb|JVmk8IeRFVEm!eAw1hE z38h>Y8j7T!0u5>#PY-3{)X9)G95$Wv?EN>(`ptIATg601g<1x!fptG-rH!E8_D@^y z1dNbQ@fN$x9!1XHW+PoaRWA7IS^)5E@W13I|A?-6U)7!w%dBI^uO*pI%56K)#`Thv z-ykObUb-b&0wAUMakr6}NE zsL^B24*0tdMdL@1LP5fH`2~=$lzpVC69|=}~RgpfhWupn~ZWk?Y`?*YnkT_6$PAm99BukW^KI)qfJ>l z7gXMiPUofoC9Bro+CW7mC0xY!TbAfh0b1`nTbEap3tQFSf^P~N%gc}L-aK4q7FyV7 z-@5mo0)~jBS5zmee1R-;UOJh> z6|SRB=#IA`W&$$?_C^Vd&&Iv7(>d?yU;US>%S-BE#sGTl9D^{`XhF(sl)+s)nO|&? ze4$V+tST@VS}vAD#eC`K%Zkygf8sG>Pkk)Z^}zOVizMU#CQ8@4t$~e;W)dyD-enef^M{H?8TfvnQ52E(dj(=QWa6&O0Hv@R6& zpj@3*{UYB9a;QNv9v$&h2&FMY3{H@X_2m2D0qm|zED*}8veH-axyoutqwF+`s)m|j zar8t1hZeL@p<%kzlZ}vgS;u%!PwYlakwmV{6rHdH6q~lQx|_r;Y%Ugs)4647*q_6- zwwzIk*Nalst^J^^%Bw8uzG*yzsz3`;;iL@i*opd5c?gEWnV1H?)A63{rHAr_EeJa! zvLVTlcpd~f@!0}a1uC}NP)0oLH_psD)Bjj%z?;CVe~Ob-vUkv+@w|UkHrAF6MB^bW zXERG#+UDPn6}LdfiHN*L4Y63-QVWLf!d<@>3DgG5QHbSQ0JwNPO~03wt&=#W40a`s znR6ty-#LlsAr&j8WQN5p%Z(NJ26hwHL~*DZ#|M_0tKqlLJC0TPJ6p-04~_mvsh2yJ zcF|vIuCXa-`NLj43JP}KqP;}qDCMonly(h@e*0Mh66D5NoA6m#T_!NLI=5w|`!(Ki0SOZ$ zAkviwBa7y?yDKq$8j(Iryu&3z*5dMo_^O$^eVtYvG5y>wBjjSkU=jo>qer@qPsa{4_M z(Xibqwva-z)kVxKEJq4Xr}L8~Cea8ByVGjJxFPv1my_RMIXt})#m?ixGH;vQLnGs& z(%FW1e$SO?YtGfHiyh}F)3FgT*q%X`S4URO%=#xn@3tOVYJ8{~sR?|^irvM{_V*at zT}D$9Hho10>?JS#r@W#HExX0O;Wi%j-mV4;`RymI_fb#wWcsYLnJnWd4+R zQTCq409!kbtSIN$TtcWjf>tL_i%h(cneO6VujA%+V$YUuQNPitngyJsBYmT?m*Ew)fQL(Vb{TWhqd;;-aCMu8Jqy zw2Yd4`Iz-T{h?>b=3Q-OxR>m>!p8lX-+x@r`JYI8mIyx0sOg>cvh<4&)gh4hba2An zmR(mU>;-6VwQc7Xa@K?Gzs5RDL)+B7sH@|A+w)j!YwDZLn}&KJI*N59c#fg7>AE=i zINsqY>+;Z6qnqY*iv1VLEcom0AhDH{^4ovv?*(W=TKE((gi)J1#w**@D^sPqAJ0Z^ z$j~1H?&D{nlhjt!m+STEj0Qt@%!(D8{b_$=V*B5$ zHD`O^3SIt%ifHf~oz})(b3JpS2zs40H@I9~Uii*uhH}v@Y~*(dvxFpw zA+1~<>mw=oBLbi^HIV`mbpE*1zc|AKIGkV{vP6dakoiot8>A z4!wuo%14@qFmIw*7bgnXj!kmRyL%p#H&@EfeAD#S@6H6OJ&LhiV{HA!) zQ8Y`L$Bq9Tg)GEP$gy?S^oPqB1^qt zJMHL~Uk18aQ&>09jAbl$r2d*J!NI)XdVmo{RWDpYz_TPN^D#*p!zvS2^PUf-Z`G5nB9L zSnclzT+*fn7R5oMKo14@r@pE`I ze3}FQ5~U+Xv;woLD?&R1@SMdKn`3N0%}d>SwkoGzP}bmzboU+(ZNONteR?hP#JA9zYRE}5ryhmi9r+hJ}$VsJ66eF~hT_rk;{+D>g#GN`L(iD)H$%URv4H-v_z zS8NRLobH1LD(Vn>O8?W?juDIdbm`_;YC+B)1Uot(VJV@yVyEpYT*ztMXMPbjVW8}s zm5yBhVX3%jNNmB6FX15?X~x&$8R~&CKro?`7e;CJVecI@#=9J?J&k1Q^zj%F84qTP zbPUJI4atIQxEPyO2mpT|-1O;d9>CnVUAH11ws;v8$ccDV}ac2<q3&_&!wTy->U&lk5cVKJxb9R0Iig(AXDxJKGq4N#1xnY{BZl`vUHL;ndgi>@XYSTCgUxaNIFXF0C@0)X7TNicC_GjvQ ztr@xX9n#fJzpT7HS-e#ry?SurQZh;zH%PMWs>_Q+ei|7D16dA89Ot^8%zgP*V-v;V z=UU|U2G|-D8cN~^u(ut)Rh_yuZ}zoAT;cspnTQ{#fT*Eg*#53NQJgvbq0%VMGSDbB zpb12ox#9fUH9M8l()~6kFyoVTD4>7o((h*{n^hL83_%gyHLpBs2$HvORIcz zeCP>s?ytt!8_cs@Kg(fmNgZDKmHV0dwaV7N6|UkBG!>1)20n)#j(JYa%t$>0zji+} za(I*i?l~5PWHk;{KLKT^rnEG~8l^h^YHg=X0+8S;iFhD;M&s5W?zLD*NAI+~f6yf} zKsOhU;09vj)lK8lKuBOASqSsTD7D-#En9kwA@-+-bRERwB3TUftK_4_Gm?`W+rJ!c z8V*JIk;*wSu&`-(aKZz7DE<=O?H%1}`%`rBr zj`aar@#AMRq6?B}^4GFhz(Rlf(G}q@E_-E(N2^4H4!m)stH`W-#k?bK%{74=H4{x? zB6Sf18yibRl+kUyIyX#xSlTo!%M^xGb_^_!6y?X^k$#TFQI(WqH{T2PZMF2=p?MaK z2f!Y}ERcH7vn^|tZDLR;0H-Q^tbyZ?G?7UlIkYr6KLrPnMT&w8A=at-$*^CUQv$la zp*9NVcNaT)Z4*HU@}|f)v~;r1TiNK{CzI(r&Ce|YW^v0?QWB=GA|{?GZx%-c9-R17 zFIQ(Ho+B8)3+Qc6%zd&1h6YkP-6YVeQyuPFU$C)p3rLVssmFk34c79jC=rG=fH_L} z^Y#K1?Mb0x)=!J||1f;^50rWdxXAD`3LnH{VPjo8ZIU;CtkU)`gRuK(SmaFPNsB?h0arwM+5SUmvL&Q%t z85E>Z5&~)b2YQ3}A8^Anl4O#Q@7JY9uv|(8MfPz@rOe0;uCAy?;gwAQjVi0yGES_p z?h;`bIU-*q3wf!=5{2HAS(DdEVOAT5ktuKFsN8)J)Y{zvD( zr(Est_{Q#>jx-F`7Sx_j`{92xv^}bPxiykDTFQ7~dhc4A)ww_DiR`WAxzl>{`o9N( z23n=16>qh~Uek0wAtr-93J#q}{)OT_uu%z*yL|am1DU7rKoo%Cg8&XS^;dh8k40{m zE=(7&Eip3z6LBvq!&2ENm480+ewx!>8(vQr6mXVD_?ehccU1DFeJ7Q2ad{f(;^Fkv z_~G?yb;CeO%B=tU3D!-NNs+Yg+aH!2&dZYQMC~r|yH+W)S$rG*8rtKGb#O3CEpl^1 zSh5~E6-$!GS;vmz1S#jKVxJn_e|1i^#X3hK|2)_+Kg3m46!vITR(~Ad3(8S4wzuY( zA;t(*RNzdUbA{*q60*myOKCfZ zSSAEwT-~zu*X>h2S~ZU{TrIutUC)Y4){tO$t$tCTRF~NRP*E=~Y~GJ|U90UU14#;S zGlsxY?~zzZ-Q~ECZxsCiarmZ3iQd5$o&UJZ{ze1gP*l`P|}5>3^b#oXr3*IAUlL2je^D^~`l@z_vZ0u{S%M$&)aS*Ij! z-hNtY`2m7T{0c%9|7%sFe=RsVD`#s|FqQD7t3d;di(Lj|YHU}Qc*d$<$J=VPXT>6B z3OU;=WJVhDIq*|VAFqnsn}13D!LHm&D&u8PG(5yyF{(^`e(D=p=Oq90U*n3qEJ&2G zpti}lu$a4dBmQsh1T1Hdtcc{D~%)d5FjW%D3q_w1^wDc{5;~1iM3c$bb ziJQs-Loo06jkNuWrh>(DsmpA1L12D+XMxS{ERq)f@ZtAINzybplW5i2;}=KW_=G3* z#>w(6BIiecp~@#>B+daN?Ao??)o#UGYVLxg&$*(b>wsS7=$Wd=@Z7&p@^8}U3e}2I z&g_oikS81WguVK^CTR-3(7l#(1>}LSVCd>55Y_z~W@bYElp0Mq%K~P51c>4+RYI}# zpHXYgig7oHso2kqR5CT>4Vog>TkDZ1;`D_O$+AiB30ftzWGbmUT>wr5G@@Rc3$vp% zwdPLsKfcn3JmVIMPKP(X+q4WaR%_kR*l_QkFEq(l06CN)lu03-g|Ut+8I`MPPiltK zUwhM@^z=`bUARfFT!x4ff^N_3hREaZ#Iedfq2eVISz$jaT$2!k3k*Sw^Pq(Ou-M_EdYrJSmwf?&JJNH!_h z-&nn%za86-q5g$ZFcdR-`E&#G7iw-Pp71@j%fI)|O_)H9>d{R@v1Bk4E3&^lL&z65 z`3F^p>MQ_bmEhhsR+N8LEp|bjUJVh#-Cctu^UNw-{z9>z=PvyT{0n6dp>%6tLBT-7 zKyHLUMngn^hlhsrkbr@O!iK}b!KDO>Nd?+E=P?XvLpD4QvuD;_jeuoU_ zdTp8HsN%CkkDWX31pK(5KTPPoK)qkZ`gd|CNDHIW1XVYb9qXU(_}v9vU!H=*47UB$ z*$cZhOzSf#glqL0HAK2;FZCmX%5-pt!mg?>kr_5M^hu1!>8{L`ol;qZV_Sc_sY|nNi*)U(D*Xv7rj{`V!YA62maFW)Vpu|rqFC}$p5&0|Kpp+-+8Wlgw7 zAQZzc&Ci8mdQQset|dG**wvXDu|ml7hKXO9efs42=9dusiH~G#^M#Gy=eC?4R@ov1 zJ4fKK+_7vJ^)Y9!;xZ1Q*AJQ^e%i3HQ>76`>C+u*zSGf7?4W9w6AiS z{*B=>e%(MRyo{x>>`#_6pxkvxuG8H92y^(dkWbd2AiqI5D9!~#X1t&74A4Q;@x!ag zp(~3(KLdM(*s1MVeb+jg%F1G^u=x|=$zPwK)g zuZVuc^RjBB{duk~!{6{nx4v0l@&8dulgc(YTL!P)2I^c*(#Sy)T}E_xO={>vLE9fo zDS4r6X);W{Vubd45iK6*n)ezQ{>a`P{wico?6@lm<1yl1o3|Ird6>Eiwa>$xDl8fA zjFw0y=?Jh2N4W_EjGemBg!I%smb8Z&vox@8d5*|s339AStKf9EMUadr{cmY}9+3(N zB&YiZ2dLxFALeEIWAE3eLmUBq0k!jVfbnGdUU*0dtk+NxCF>hZYhmMrhX35)&ki5< zRKD=;(}eFDD6zICwOjjo4(3+Z*o*>q=Yy{~=hZp+cPw}Xfbu`v?hL+OCj}}k3%CN^ za&G0;z4*D?xv86kMhJE3+F1A(Y@h56I#S7q>L}JoPw^k#(hfA^eKQp)8ctVr;tQX5n(wuC4>kK@S(aHHUirpOekHpjGJxdjR!jmLzfy*fo- z{YS#~|0H|~_wJGwD7lOeKu`C~?!x~wqfY|UO?@^=h36)OWMaxhtSi22FgnLc9Q@^A zd@C#cd(B!UK~Dqc&Nzx^p`@+1GFUDZtKdv-1(Cld;55%WQWuXVQu81wyEm8a`^$|r z?Ipi{w-@&=Mfk^jBH$!fn64N-@Z8Lik7PGy(9K+WT7BmMe-ehgUTh67LNl(+e8(86 z28`2V&HTG8o{C|uf(1dE(9#qNHaR2FS*?|Wr1p4xkn)3``BsuUh5?#^Ro5J!p)xv~ z64E&ugeoFvk8wDxv0+UE(YQFf|DkZ13t0&&sP%UT?*fV;+c`sJtj(WV4rR7S*OR!} ze4;W@_5(1%`E^C|MShYGaWHW$zgFPjV?ys|zw^u)|mp zzZW@8AK3(#)WH~G<;aq4UyCnJPZjD`|KPIx3zcGfApP~X&2xa+8MM(ojn(Popz(Qh z7LG&zWPViDV}{J>c)!JXK3RV9G|@|#S6)(M^44FdY@Zo?KI^^N>16@>h=gV5YxNKC zt%4U8djc{e>f-tJ=JpK#?4uW9#L)@1iZN!!>c`KH41fNk0y}{qA^&mO_5+Xn-sN;{16^U3|i^_$7(e>3CjR*S7Qh z-mmCR%`tAs|zS#Rkr16}7&uyK*XNwU$%GAwx$C8-|d_cgGnyx0WU(pT3CT!&mTp zWBoGJqLPYmBJ>c^8d`?a<_E??^-Ti@hT)~TYLICauV8jGC#<8)4ii}I{b#p$82XoN z%5mXx5|{dBy}@jMw$WV230l~>3h42FD;|c-XS_dbGEtfX$+wxY21XHsb5V68*q&geyI&{ zy*^xJUJ9U{Q$06$n$w_}=ecFqIxIwAw2+E_F(m=sH< zPMV=Un^53GazGVHYZQPz>+7va$>6C6!_XiuUQee(~nJ_cz!L9acq+1SWfk&Z+1iAR*D_6J*f1! zQPQ7tK(uHUane||)U8SSB$Dfl2s{4q4Hd=-x1B;G@JI4@f-V%60@uF_Q2$0>Qimm zs5YcBp${DH<$NXM=zy(r?kI7@oD~dpszm+>%BXCTSm$U3u4j)`1j1Ua9P_ms^?zzAxdspPHo>g%$ZYb`dF-ZNrrx^6Mt4KiV>?b0pL)nYE~_ zP$NYeGJGE%|B*; z360 z=oF>sY+arM$80X*tGzsw7EB*>n+4SniQp>A$lxp75~+-xSL~p^JiDx2V-V3xY@;$O z%NdIb#SY#8v#?`ld6Tg{OmAq?i@GwZP~S=LWiP-DO2 zfPQfik0+e)UhF2jS_}+b2F1xi5y*zbJ#vULGVD8G8!5#cpJ{*>FEGjEQ~`dQ zcOU0y^v1QfPn5adbKorrTEV`n1jZ+_CsbJ?7Kr{!{MaVr<5I+;lH8( zlWWm?@-3xS25%g{URt*s)5O45P+KHTQmBiS5l41G*l2XM69dicDjS8R&7MI?rhX$| z9OeEVX^1FAvg=?cGlm5GH&pt&yd*=Av8$S^(AY%ltYRug)@W2>D^WA(SW;|dj#Bb* zPY9}ZL!MjVzPnal92|C{3IUIgvC$FM07?EV&8XVOsA2{>=keTXV!WOswB5r0g)(sH`pxVp$E*LSx0bY$^ho1gZ(Ce+BX zgV-v@;O*LCgouh%LTJjh>6fNe1i)!k?_(K>@#hAJi=BY zGE;k|p=-ghx5_WRZ|zIf2wi`nNO=!AA^h@IFVd>=cc9tAO;Z$>jb7>?tb6ny`W{KE z@4c#}i7OkeEN~Kt%gx{BlP5$=yT6^}6F42x4XRhqN%6t?;^?rmV5dyeoKLqcsOHK2 zbb#$ru$;PP7F>-8@AY=H`&w$0QopRgaXn7;V8}$bm*lMCBkc85YEVhMoV!yFW|9fq zOOmzYH%4z?uXN91iF#K}mflTpD~cK^sdvEd|BV->>NLNJv8A%AlG31C6zsX}U(Y-$ zZwF~!_}FM_&U^rCK^~wXBnkagUjoVFg9|^`O?Sx!Zea>pf;c8<%({Q|nH^JacOn1z zeADz)ALFn#kY)z$^0QBF!@D0pPDEp@pW1(>)BE4M#(XVf)^jdx86Y`CCpVU>tB zuWv)APNSav7T`?DGY-4Nv|7{Snoz5!!&0eVGg@vN53J3Ee_3g#hG{28yjf!D{fT1E zpg%UfmE;4?O=&gw@ZDbf3Hai_OYc~H3~3&%p!09Y^Dod7$$qC>#(szjxJE8nhoW^b zyHTy4i$#2Ft$oO_M0HjPEsBbN7v4b>>76ZMU^64jzyQgDIvRU(8vw zWPJAM{3hPn^}8Sq7x3jCh>#A0#0LkcK;;6~LD|#%`NK@4|3rICT1gYuQz2?o{Y!3t{~rZg8TZEN4}C z0NFhS4PVz}Y>K%r9px4qj2)fe-bF0^YHjv9n(WTJK5}pczXS&VM!l-6Fb>;jtTbAc zK>wvDj2JFDuA*@Qh}BhoWY_h{4$zT9GX>R%Nz*M!2arbiK*p^`yCvbGMUsmhg)T~` zogo2NWbfPXr~}*^P`(nPi=GphNo*`lsV|mWNcALV zT9G=LCo(Lc$(c{p)vLpUgeC#3E!-5SI2<4q|L5aG>&KDQ6FuD;dD&Is2 zkhb{2IeyUMrXlL3Ba;z9Ch9BN|Oh{&lpP3T)V)to~umT2O}(UETHGV#M=KbH!v$e0++(+CsN zSl4jZIVZ1@nNopF65IvlxKhF>5$T-|oFbj-96=Jh9ctiE1@X35d7DPBaSD)+;H0*g6&q6ycF7_o7Ecw|X6Ib0dkC_CeD&2k z4?8=&aA-}O)<}TCveL}yP3kxGgUUoI;yiH&aiWuC5M_T*)_gbr}=-st| zZJZ9OO_)~7+%}NDF!kg;Xf>^I7$qw`T-gJy4AHH+g(f9~Yxw(2pl-SRg!wfr8=mMO zCV?;L;%ft?iQ)j@x|yb=-9tNF>u8~|kQNpK7`dl5y417E$Ynes8{9URCTU895-IJ5 zXfeN$gmepw!q10Mxeweej^snobY3zU8wjP`Z4wJ<@b@jSL5`$!bslp5J**O@Yq>%d z_0hQbLdi?M!t9H9mHsEW9WxV>jiGKMeQ!=g11Yf_90%3xV6v_G>rUWzaJ=|>#w6Gt z!7>DF1j_a~&rQ84Qn+njH9Y0@^rEgU;RTPsTLbVLq$5sDYi4iv7pfSYk zd_X9gsDx|AO^DW24B~@?;DVWf=pZLF6g$J!A2^X~-$QzCY`9=kG+Yy0qnw*_=_~EN zmvYy&A-eT751Sl#79(PY&mVc)jF^}V$sWk(4;x?qGTBP>v}D_%V|3P5Q`KS5v8b{c=sf7;8 zFqg%9AX3{CQ8=vcoli2JJISLN>1js61v%7CNzMThI}#;JFoE~YZVWlH2&RkFfePwL zBC^c9cfypX9rvfb?57aJ6EZ_D5mra$NvyCy!xp?Lb-5yfL}CO8w=pD8^(npBqbtWe z0xUCvv>QNXDu@&m73$6t98wT%g8dU~(ucaHlfk$P7=<%SWg&vjyO`+Hl9|^Z7$A zOeO(-ugx8&LSF<0ZU{UYi$(r=E)z>S{3BcrF%?<<@A04krSP9aY&X{NJ*GFAU~Q`F zNp2ioI&(wWsc32Nd<&ggwXsqM(GTlAYEbad$|0uUnUksjzg3*x5Yc&Xb8vjKnM?>! zeF#^==usY-oz_FiVY|77gsk8r|G95&P2beFjv@L;uh@|)xJzj4aebFyE>LydpS;AD7Kmxcxl$Oc>#b9|?L=2Rh2C6xE zG!vK>JSXB`qb3?siIObloPr!}Ofs{EC#G+aQ~>t#!QGX!-OA zf#wb~D}+LF_GHM{J#CA8gfsC=llm~MJPCZ*5_RI6@5?mIa_Wiw4B5Dv}6#;FrRVu8jR zQ|+?GOQ9jvK@6*Cv+GW&!C8o4Q56s=%jKop=|6|B&CB5mKC>W1A3vz>k1ILtRO+cr;txw^|Xo7o4;1vI6I zA&x~YuD~?WRJ`lK*kG?PX+sv)HOUaUsmtw& z{ctGOOL3U4rz&j>uVP`l3tM8SEILA*^pL?ZaA@R_k_V?32mH)j0@U@J+?Gx!(Wd^w zI{)2K(vy=Us;57#LIjbWB|e)O+E#;H%DNrEe{_@$K&(}{)-vmwp^>XD?2CyX6{Lhy za!(R2Q$+KF-6fUr?s({!w4@$2Dggwpg`!?@Us5R)ic z08>>Z7#koZArTNXuS$mrlK>S+4a8m-{t3dHnKQk{ovDKfN3}$BhGK7s_R6T|S7ZMR z#d>?Gs$3g5+|N0|MJDBs7#%NfIJ8Lr?{*!TV+aK(mQIFwGKUd}%}YnaYZcDHmUls; zS#KH5QZE}E@72DIWZ zPDrZtVaRC?ff+sIP+_6#|j?V(2=p@p+rvTQt+G`62yXR5@5@B(b$-7-lj3+#&Deo1XCzPC>y*N3}&uX0<*I5PeO-4)iJc@c~< zx)tZNom4Dw^Nm(2y^EI>Gu^J&4&|cOwGd=fnl$LGy!#_PD3YeTk~BID%?Yi2hm{%b z2i4A&VXyz|$~)|>Ep7~d{0=UXUY-KDajD~JQ-3~tbfC}oRS+rn^3#ZiGBl2>aXSy3 z=kE{c+u4kIqR2Y}4Sj#O;urUZsUhW=y&vVEt*0_`OwyDc*JT?t%Au`m4bn+-N)kSv zK91 {ReJKDzsq0S-SERkON=-c09|2#}%+_b0t3Ya`yJPygodggISBkbAcyLjE*Yb3t~UOjgkC_x9x z0%ciuS;!aTIaZoh3#Ky z{Mn*dN(JR&aE6UjX}(iKdiHtp)?Dn+DT-#nTL!|b0~qQwX}hrXNf8(CFUUz3Ck@ZO zJr(~a$g9DPz8~o<709L)cO9H&>>POetiuW*8k;I$=Ny)+Qs(gZi0C>6uk}eX-yo2u z_Q?nPbZb&5ZAQ%xm3P5`a##*2TCphkfJs_WqJZj*G(~2M8EXJEwmy^-`Ohh+P)o8d z32-I3#1_iA1go*xr0xoVszj#v7K+l0sS|8GX(C^BPqg!rz>xH+2_DDrF2nbthIsV< zH#H9BPA2g(B$J;T3)c(AivPyJfRi z+O=6D@RCc02uj|UQPXi!$ED@sxGcSV0|n% zESt|!TTYS4n&=IT7>A!CxHRwu+mfH3gAvO8qtFqES*XOFv7wd=(p#vB_9p|lJGH#< zpqSTvztq@Vj38pJ1E@?*IZalBhiY7qD8lr9he#B2TuHSjNRe7gSNXyK0PN+vgGpJs zkbLPNQfDEW2OTT{tZkrJ@nZ(^`bK0RxEf-n_Qzz3q-$Mdh=Fz>d(I~bjhXwkwAbE#ajxzb1>IY4l z^bvM+z;j4T3J$DIIy7VdwwZsMK|r*zVIa~_TNNHxo0tP0S2=I_2a(-eij8|P=HCyvL?}NiRhz4V3H4+rb))2ccB9ciWLS?WQN^W zPT(mTz8B~sAx80&B>sLON)#-(m#)9@TmbJyu#(!n`HrE>x_o5LGmLwS=iWUCJ z$va2Lku;fU^K=pV9ZU+GEgLg3-USwpMBrAY=I;WH;6Yi0ua;BiM1;*Za$JT2 zc${@R6iaXXO$zt4A$&3Y+u%vBVd)u=eplj0mn}wMdkiGxc9f9m>u^Lp+UW{zO)C4HEw?2#b*6zx8Zr=L62x~jL8Fw9ewU#DT6 z2*_z8*r)u>2`PabRe88wRb&m|lG7)<>6lSQFjIkaL9Q23Uzt>(=JC^`hy_&9mX3S3g ze17Fpzc(+phd*xqX+PyJRJCh^kJjAyxsC#TvjI!a!vE8&T6n(QgS`~w2z%4=KOB=O zOc^0f#tPmk7=p}tBKZ9L2|iK0{8##~GllmA*&iR^$fziT2@EISxQ zGLAN1)CgHfd88>D^ZAr(@ERBCxbY(--zfXMfN5Buyr+Gu)4y(Soad?6Z8R#)^yd-d1Gau#{Ee~Msa8J!f(4)&Iuag*7dFBY{{PO+n0{8c6LZW zXc0MwtoFq-a*0id_%Bpyoo9GGkr%%MVY0J2^%QkbqN@4u?s?hn+AH`F13?4^#A;Mb>1;*iQ3? zWVEXstG~!WJRHWQDK;f|Fk)?ICjzhBxTBHAdvK6uhENYbMuF6@1MTCxZvsw3zrQ$J zOz5FIQ%d)e#61y$oe{ac&>Lpoui@i13&d%*oI~2`;BF^@9lE)TaSd!h)6Zmvnvkzv0aQ!JPe2 zQYfgY&U8F5gc)97Dyo>h3{uNTN;HUU=Ks(RQ>BZpSyX6Z0_y8r-Rw;uq9K7`?XU-A zN&TrP0B4W#eMpL3Z2WUCwyS)=%^hu6L{T=aXqbHpi8DML_%mjFVMj_&iaJhG)D@fl zqo#;3tB55bT78Boy=Cx(j zo3jc`p8rPKTR_F}E&ZZ{Cb+u>cOTr{-Q8_)Cj@tQm*DR1?(QDkEl7Ys2)UF0Ip25B zefPa@t+!Us(0g{%T~)hk_m-+(&9K%l1z=o53Xca5dU8UBr(u%i*&Tki4>N}JEuo5N zC)XxjPCN}pufXoP=W3PQ&0n}ZgqpJ4D34aE8(!8Psn%03 z=)^oHDl?{M#*$Lz#s)xnQ-!BRVF|X9F5H(Wt6i$v1kg=7eB>LzqO~iUP2*|&}=PoYMg6(K!GRgs+J#QqOoi;Sa7Q;5Co|fI_S}ucxvP=_qicnw#6kW@3 zkp{zDnL_T3_or*9ODt z)x^)|EDIxq5q1-Ul-hD}%ES%rB~f;2FMx;d_CZAv8I*Y@WU_m9Dcb7ng$K)r#ymf* zI8#4L@%SVu%SJZZ$>31FO?neEFnH-NaEu^j-s}fO4J+jH`q<>B1PPl4Kq8r%B>A1f zai{)={(nNQCWh?fO zr|<&7Sx$3Wb%jBIFqi^ko)!m~=5g}@VHJg6q+EkZR;06zVq92iQDQG;7oLS`b)TU+ zjjnfkmIptt)LjYP98~MrQP7jbywS>2e#pU%vVb`Vhqa7F$uWQ{KUD7{wr-WD&nQ$F zt}XSKsR(mZ5eL|Po0c=OSA>fkZ-VU7sDhnDi@(`5{-Im%U?#DxZ)*u;oMs&{9+66s zgHqF{XSq!cPg*Tsk_)GHxiYVXdpoJWu}rM-;SXRc=uT+C!&kRxqT#Kj^F)>I%8)7d zm8@U)gs%V*7_@Awv5**8Z!o;HHo3wF(93^F|Aa#vKs$jZMHI{eyG9W#JK0#=%Fr>| zAH=8=rpo0h{az8703Fi#bn>9fYGeaU<4fo z+M?-Xb7oo)%YES`ZN)L{Tu;J3dSb%=pKiO;V}AGG-o@yjK0CO>F;WCEj6IK1yzXEI zml$D+C()I-XLI!PknLXM?%a}~uhEC1ho7=qowQGOuH~KxD4Bl%GmJhZ*#4PduTy0% zXqsBIxQn=+Nh4kQ?JKP+V6kE6n8^;F@FtWaVUcwm*%w+!qq|{if{&K$LwJJbS+PoF z!_Eh+nDa);R&W;PQ#a3U0zO)RKLA1Rxf)IcvD4d-THHSXEAh1&Y@u4Z`90p_qHTTu za@%Jyq)S-CLs`~|1+S#2n_gr)W~xNkRC**K$ncrLSiIMD3^lPKR$or?p@w4-i#kuA z0-qn(hNsk<_f<;43*MXVwP;)$^MdY9UmSHc<2!!4thEy@KB5?2m;elX|rt;kR12=94?mIjUMAP zOg4QW=h2+RjQ$pJSf*D6<$ltKTb76jX+5MJxX*U#JdX|V+!plLGTfKBJec|xGeaJm zXqsrJ{<5c>dORc-3U3+EyV8^jLq{9(AV@Z-^UVViH33u0HA%YOPO`$84ROdpT=z!W zt05xj%Bikeh{LjBGBR!m%91CY=FE?6RS*M~8Y5;}G*PhZBRR9dXsYwi%r@AF9g0(C zgNf0!9HjYKcDaSf{NeqaRGk7J^fs(-{#Qw|50N>=otYS0HDr&g2%J9Fnx?m9mjEr; zKyr+bcob-gDo4?X&JokwI(!rAA?O(Pc!sP|`G)+1L$mQBof3flz4^@q@+_xB6y$7J zl2$qbC-$hc>r(+3V|10+fG_ikGS47r9}YsZUWSSUQt7z~y!Mu!h~2FH-d-gUaGBOK zI`%oO&W&ZK-eOq%b^>pGf^^2@9JVX`o7~_PkTvusM)J{F)wEraBlmXbRfhT0{AK`I z-!2**CYNAtON9@tv@B{AJSWHS9ePnilhnQfAxrWQkl-gum=t=kK*z66Q7(M*M%8jH z%R*ElJFvGBOsN*vCDg>qDE(}>7u*qQrZUPTnIcC%7|<0PK)2SJp`_dLJN);y#t^|u zn|Gu~8uqt+g47@QA(kT)n$%oQpCZa3&w(9@Fh9f*Zum4O{w% z;;7-1J8)V@84Inu%($l(UhDej9k?!_lhP@$G`@Td_Va%I(+Iy}QBJffXT2wy99+UF zsz?JMP&=Ve?2bakv0D}0G>HXHdGrX?IziVP%^jjceWy?q!8+A7=L!%&A56SrHM9&0 zl3UT|L%D=uV~dwAUk_7j#sU_wp$}tGO1G21#|`R)$H@@ z;lO?X1(A?oKhb=ZO*%DCc{BqE0StHo(^#{hl7om5=q?{KL$N@8tL)Lb(_9Wc-<)Fob6JDKd z?^EL=JS+VT<4mX`c*h%urcs`z^N(bBxMC>9Qp%)pG^WZCQJn$Gobde&gTx;wY@C60 zxy4dHTjI6Fx7nn31_`#fBqQ&t@WRqj$Ui|0%9gf`%O~Zt?>`lsxr{5u$dQ%0 zx1OA$`6v(cXKa9X*VjYZeBL#!qXUqmku zPL#k85!YCT3@nFG8(o+}j3Oe!)vkg9a|(_>ASf>HHA%qGeq+e6xm#-gA{i%Qin8f*G*!VAOR`Bly{6&{#s?qMH^)GH&P^Du_aFb$f5S1zN$R@JJ8ro9m6k=!1e8=?Jg>Qqy_%Hf7s3;6)Dh z=Qb#9p9=7+0>>h7E)VU7Sb?km!>dB}uU7>pQ3B!O<`nI{$lqyY*jQW0AAsS2)@uAu z{2|2&Shva(_j+DcoRI@4Dr`6lTzAt_yA^85k4QBYhe#9%RJjScBa=0bQg2AYPnMjF zvMlgDl-Z)(RQW3hLEE?c#(#DlS+FU+&J`lahDpLk3sg91pb|7j-Ne61SD>;zka&Zq zm$v3K1|I9z4d3)!hX}vd7RmoS;xmw(_m-M8krZ_bxBLtNa{WH}MSHZ(!9=bhpgaDw zZRjpU*69sONb0@3uE<}oH}>uImFwa1Y#txVKJWa&^hpKmI#~tsi_D zOKpL;&rA^S`xVZa5T*$`j8-27IWSwC{>mv=8$aDz^+iCMcK;;wxFvRmIiA4QXCQpDaY}!G^hp-#`q#Y5y;gC0FC_f=u zlPn$-v%BA6wgS#Y2-y67_lr%x6CKCs3G`8*U6SinzZE+l^Vtj0T1FAvfXZwFUi}txH8QiGXsoL-_^E$5FG~n??LUN{{}|KN#6T zO+__B%BLbZ@}j&~MUN1Kd?>!1zk27d@zYC?u*~>~&@ybPCm!!PiT`8Zs`t-OqF|S} zPx5w^g-2P~tYXblliPiCvm0df(DyYi$pl)sS(chRv;q1Ck-k;B8M3#zti;f~jt z@@PD8xb+{v1wA+dixUkTfdvHt4F?Ge1%LtvVEq$;1r37+4#8rB#UlO0!paU*#u3KE zCgTthB^NWMbV~SF22Dr^h>zfr>s1&vkqHy$%x>jf^LmaM60%egD_e7#VoVG;W8>|* zqiw^whg&)!eDpfl*{yzO#Z0HV>0qQo{T%cinKJdU=Z#F8I+Qw0J5PI)mLj%q-wAw) z0rOG)MsPQX?`Nyk{=WI?VuM#E8=^rnT&%=mBQEsEMP0ifI3^3}qP9U@@uFx!>`4v2 zbk4=i$pslPBuimnVr$&$o)nQ(REzbYSwd^vrn>gU7A|~v&bqEmiNSgXgx8badJxp4 zJ>!qXT6;t>Z`)1G6ds$JBI%7#5%h_k9tyNdR(PNVR=+ITy}emX!p62U795 zM66??@Z~c%n6cXQdu=>pRaFlw+_FZM-5wHPhGs{T18d{IPr2m74(d>;UsPcoj_U?cPs;H^i8*FRcAKrB1=Uz#>Xj* zoE(BG&mvzdtx(;Yy+W|`{QpXC=&$sKNp7X-?lJh0qbA2?>)UhHX&9#6EfSYfPtt^; z79q<6b|3yjh+Kb#*l1RD-Y9gfH0c4)CsGKk`S33Z8vK=DSNql{13ID72~d%lyfbhS zdkO#0N-8e>NTr$#ycJkfq(*dJA`p74JNHCv!B@AeN9T?4O1xThWrz=azZe7%9z1^+EGo-qn^-d{$SNrTJGuuUZYME7aa@9;)JZ(<-1kAAi(jg2Gdgddm^&z(CX{{~L;7TC5IT19E;a6pj8J&|USY-=JzA-sECEIeCcdN_h;b+eZ~E4ptm^Vx|NsjPoFyW&HlS?N8+@HZpooFP1F zSl-}w2~w0Qt}krV;p>i@{l(G|5{tchgxZgmFezdht2+50eJ^14J#W}9?J_$%k=_8)k+nyVRQew~Q&F=icqwTq=X%B7kK5{?s1Y7k=~TKKIkJD%+-t#g4G^&5uqr@*q9@>Y<|sHe zz8^pA*S2)fXy|mL9M%5{9PWG4S0~TnBk;;J@Y6jsR9#wlK3aJDeSP^3R47-#Yo_j{%W?rwh`H-ZYVeaZJK(nwekV{igcgP!FswRKQ!1v zu*QPYPVEK~Rjc!94OTW6Sl0Vtix$DFY^oo1K(ZpLcv#6pE!OS%Y*S2{D1984^1Wc5 z{JUCjxUk~Gr)zjjB#aWM8mJu!&~6Pze*U-LS8kYum%Dq0{qxgfgDt%J{eA~V2bsdM z)Y>D^1Sz=}gN0DN>B}7XIJ}_*ubNrX9AM8gwmNTC6n2>cQ|Wn`?IQ2lVjI#ccuf8? z@3myDr+mK0f@zS_ioyvDXBHB{>uO;0QvZZL)pvjwX)0+%G5Tnn;HJ^R*Mzm#5oFo; ziAv@Z@cnbH#a1|cRgA7HloCqt0km2^x@c!2-=(OvScj$eaSlC4Dq2@PfNkHO$(C3 z5fZwdh~mfj1MZ(8Zyl8{#+Aq|%#1WJ zTDtR~8f$tHT@>DV@6})fkeg&ie&P`d^_zdwDY@L>Lq_UtZO?-)MF|(;N7t*7i)U86Jb` zTv~#r&8?=^C8($LL1WoQ2m*fgj3FvNi3p#k9jA_Jl0D=28CvY8Zl%IJ^mhm1G_o9L+b`ZO zsREn&1mSuihjP4mm(HL5}(0?X$mJ5kX8u{`_JrecCzqt`C(I_KsMi=Lm_T)p#l z@74-{Gm!m%{z$&XF%#AWtSd3|IZLpy$54Vuh=9VK%ojE{g<-Xq*jF;?pw<& zZZdE4%WVzq?X6=9udCyRjxf%|)3cCFGHS=N#~<&#U)Ppi6S-Y@HHq-`OOhy4yK0`1 zm6{3sbHk_YGHmmgTHJ;{aUOwkx6AkTGXZ&^95*9VLyrD!b3+1vMye+Q{og2Fd!DeD(O@ z#GMAiLz^bdVqMU^w-moue{+t$XpPoCtO!aqxe_LeP&jXIO@R0lCffc{Vl>=Io)*( z(P^-Lj8J8L>m46P?LK*cXwaeS&_Vq@udb{1e>{p}yWT14`y?n`a21oyDPa0&-NOFs zQ*`F%y$(C(=HLVU$?k3n0$m0S^&1Xe)RP+d0{~A;h0wtBP)Hb9L>MUOe`cis2mmA$ z8Y&nSLf=m7gYJljwf5 zhXXsg2_7$JR1ZPn|G!@AowaipoK|iZUM<0g zjesU`D(WF(hOwD9jsl;?Od?JfGQ@aO84;L}Wxhaa)jR{oS9llrQ429V6qEz_E?U|Q z(N6nC3ogk4UgAih7E8$#3yrMChJ3&n$C75*alzK7YL^*MgN1Y~;mnPpqR9;R1bIs+Y5cWOst;kSP>7p`vlaQ~{h=U6SwboDT z9Ha0wE&jR!4{#?i6)O5$1Xb6RJBYIy@@fP>RyXgm`3a%K`bId2iH<%18(^NJ_~V`n z^Io`ce!l)+Pl;|atA6?yYb5xq%t8`hw0t3Zt}%_^2BU-DQw*PpB@vo1ZMn``1lFb@ zh?ZG+(4B3b^5s(w6e05q0;~s2Y1iwuW05vsVw7zCr0pF8l3q;G{fge`3p)(ZnhlVa z4c8W`y>XeQRmyh@m!BoY@j~|2c9yOc;%ne15(*x;;aB#sf`-)^j2rL?8WC{wmXXcb zh~F<^uvuV{kKJ^B2Gjufeq=6~nS{L;y)ma2|Ag@-A6D7qe#T#$eQFynPwbZ3K-V2h zpl&e63L}}%uLUqFeKwSHmu=|BiquxXv(U6&L4b+SRtp-ob{MCru^M7(Hf=W(^WaDV zrxbK<8MEbI5_P2Rg&es3P7iH3xWwD4GvLPPflEczZufHAmdxbgi z+B2{qv_Fy`DZLbRREKYdgniZ-C4A1ch zU1-#JBel800)sTv7%#R!jz&xKBVv#=(eC`~vF_?x&zD&k!$qw8pu!i~=wmwOl=5EH zB5&E)|9uMnl`Exus2lBZi8CxIPo%Gc*rcKis?FD%ci>Ca+E)GTHhXb=RJX`#fG9+)YDz z!=}8$C0#~XWK1rIO{0t|0*xw6ikeT#J{XwEzlsjH$lBC*HI(^K39@ne`^a=)oiZ@edc`tiBOeM3p#bohJrt9Gr#uNH&dF~6A5IC*KH%{hEw)7uy~+GHtg zVrRNfd`wElk?XH#ZoP*9z?`RbzBQPKrkjE{D!iEoU_JEnm80WKqE3 zhsMPw{D{6N5XM9+#S#98YwK~Bfa9=(;=5)K_7QShYYui}|3ZVJHGV{2`ClPsdC1{Y z$(Mrp1+PD$iu(|xh)3JLpVPQlZ^9pPiGf}Q(ZW**POxh^e+W^I?t~w;Z_U4@6MQB~ zB0Xx4j7Chzju8gPf1n`D2cf6ycfhz{Ed=K4R?`pf^9If&_1h0 zQ~e~eGB}rTElFg?*0Rf_q@StzYQ|P&K-{j~8+~$|tYeF;y=?7G3-k34AnM?&(Vf29 z~%e(~sow#P{}S4R?r z$V3=)|KtanXDljM@WgN|I#z@H6Dl@F$VJv^Z{JHbU%$SiT7b|GKe^Z*lnLjyf)^$* ze-t7U&KTHug(5QqKP$4i*pmOX%N1#;GaKZ_&tJTK6EA4=9n+B z#Pbey+X&?jD?_*!?=N%L(XeL`-IeedE&Mm-0Ja?Y&>)au^p5nR<*0&Ns3L(zhr`^+ zPY0(o^)d>c8UEPM1jz}2iN((aL)ZNQhzn2DnR5jW!7wJweJOZ4deN$ldvd% z84!7Z`7n+7|9Xl8?K%r_MWTv>b2Q{A5yT+WdGH6IN%D({`O)MLpz+^@kLzYQ;wG=? z1qwIk{0R}RH~sz*egE1~fPjVsK*4-~hWOXm4H^vU1_OXaMFXN^V6w1dVUx0P2rGYL zr4xUd(LF%mnW_6V06rl^(I|BHM8M9ON(0OZZ zw%h#dp6cK{J$)(NWi#{M7N0I1oyHz>J1HlM46(omdCTc9-wpTd(i09$ zNOs2*5`iyG#7!wdO*p`&6tyk*!*|b&8#$N;G;E^9BCb2a)^P|Zq9IinDYui5{T^?0WGBxO>`Em}0X3DYC7tC1IYFYle z(6nq@19>^_ggU6YM|Gb>zwRaS3@FXXK(Y@PSE+|jx9x_Kada}vYfEs@Q zDm61%eplGyUpx17&*bsS74i}E_4a4nLW5?hjv6^>iW3*d&&`vh=9kz;j5wZ`l|$jt z>50#F)>>)NwF?tT9{PZaX*aOGCOT!la5^2*mDG`0gq|}BIxLfd*nGoOUL<9c zbv0?g?NhBR1|Au`Yq7)75m1Y3%$fF6N4zUh>1171Vs!WCJ(yZSZzeV?&9WLD|!cQk@3N5yA!LvX8%>3kPsoHU_A z*DSS}>50FBTSe|~tHjQ!u>*~?yEltZq!W+DX$3Ou^tV1q#K_e1@D+|GGacPj#(KhQ zqkit+Ok?>OAQvf+ZjlTwL+`h^w7@gj{t=O*EY& z4mv-!kny!+!z!frdtXyCYaSil4G9SP9?@^{dJ^{>2dHP? zR(SQ=@g74hbAM1;?$LES%Q(P0oA5OQ6*qQz5=cVOKGsigj5$zBpK_4Z*eOVevdg@R zxq3bJ&wy$nhCaX0vqe{H9)DG+->)X4#PUaaUakh$Xx{Gjz;72{VtI2Y)-?62Vd$0Fos^iH{g>KMorU%iiJbaKM!D5Fb3F~A+S9$RsN9hd z+n*pKT=YxW-VtzO*S!pI+Ub>@F1p0(uv)U?1_{9Th5a>zmNokSGK5|N$@*W^Uh@&e z&gR->GpZwx&rsCcn~xamnlCf^Zn_^4yJ)F60!kT#8o)gy6G>V#GJT+owVChlFw5%UlQn@z7Qtnh1|<>2ukCZCE68d@rDn z4MlPfHms%k5G6h@B>Va43NQVhA^k&#+a6h#Dnc?tD)#WB0`)o4%;8$yB%UgL)G3oA zJK3BOvdUxBcGGz)Auuo0XvkOTapf4Z0%-)a#&w=(qz4JM>0ZJGjI1QwQZQazE2v)m zSpp7YmDVg#@L;PvGZou;wbR|_DI>9Jo#Ox{y*mr{EB}J{c#$2e6oE&%k61Jt>rIrT z^n6^vLM9(`yvgVvz+q8vUo#p@`4{10v8bq=1@~<3OpKsxi>5GELJFf^1RN)pJCo|0 z7&`vK7JD6LFd{muIoe@pmgjtGws^>h4Y`^&Flgh+LPN5!ax-DDS|03206aCJGAOg$ z9O9_h_?8W;O+e)3noPc3=bF>0v`COWZChQNj(^HJ<0G+kNlb1|wm2xqZb|#Yz_g9w z)jk}_szB>@mrNt5RbN80k`AV0rJIVsDw=wWgjKQl66oFRIU(t~4+iG=ZC)(MM>jxi z`D(5Jt-|7!X0sRhj~oWPK<*cHYUWcAUyQ{?;v_(+RYMv`x*Jm-Mz96z3R9t^wiXFj z`;9S0o3b~k!!IXMR3sQC+~b*l`>%G`+88r}c>Z&;8>6g#St5Pg-{tN>J6cE3@(eX; zPz;JfO$X9}htog57XSX#(GpRjE_-t8lp7T>>5ijaGbNa9GNf~+@y6MJ*{RCM&rf2S zJ<6M0t+6jw-w;9cFhIIA16_n~?BE)fWmA^8s8AkIrXP3wE1D%H;XZH9>T9Hd@$pdr zC|O{}JI2h+OnVlmxl#HVn?6yuGOnhaYEbfsWei$ngji3LZQ5ZJ^V6sChB?4PDwz}v zqZ;Ug;i{pAkG%PnEdT9zgG|k$9A<=#rp79|cFvP+(JZ%ltILOoa>^h*SuuJFPyV7c zDke=uT{1Ekg|Gs97~2sB)&6HGrYk%K-Zq> znhLf>ODW_T9ddel3HYqWNqXJq3F9?>sEj#tJYvLU0jYw%|zYRUir8~$++-)D8M*WlNiz);jY>+s%E|N z>DZ}y$O8{gTD_+J0AM5}PRC!c#ikM&u5yj%Uq)Rs^@Y84K>@k<#j2fnW~mkas^yv2 zuQ^Y@6@C251p3tSb}Qx_mrvU+*tZ^eu3uxo6%y`R?1?pR!{6PU(OP%+K72R5lKqsmCR{)xUu)dZkXHvg7h;oC#Hpv$sH_hc@lqOZGMc6 z?wacSY9+fia1S`Q0tv=UZHoR1yALsi9_|pW)Rx0;eW3JT5M!p2e4J^$4kV zc08;a^=Oh@rRBl5o_V$~^EyKuB^6p#s*@_VZkc`6BI!snjt86945Re*D--Eus@uLs z+@ZM(l~nRBD<`y(1R3;~yI`AnL0b%ZWb#b|8<|vSlUN=U^4BXmU!c<7z%X z?%CZ`CD}`2mnq^7^|^1Uz=pT#Fq&Sa4jb}bZ&F7Rbl!v_-}f;C_|ej~36RDONSEdc z)63ZEoBaC)p81T+%X34@vxesSP}@c_HMZt@>COGx{<;DuQDxr8Udo?XYH2RNd0yJA zq;(n_zGRh>Uj<1#ERDA`h85#Qrzre5Vyx60a|LRcQ+;%}x3k4Zv8bnSDcwLQ*F(p< zgCX+kxA8%1iT60uXVYud{k9_&Z2SPst&bMd$BS7S2_Di3@rb`lGENP;1x zOB@@;CGU?#d z{T7=viWw{Fn6ySuxW=KgseC)T+xiDUT3EcIG}EZ*)9zXyR%yLgt0h0Y@+p}k#mI7p zPiU-9$ttC9=9*pYUCA>592?8d;Gg#aJdte&WgiFCJ69DI*U3&cz)TW(uYqGvHEbMe z>TySwR`441M!U!twnFKsvECcBu$-NR>?Dq(UrU)M!Or`mT*tFJ|R={uh5Nn6vFj$Rxsm7+sM zeI^BOS8V5cS##dG+*+&7Br%UX-D}R^9V@Hr^T=Lbp{ZX*^eYwfROD+L!S7Nsa_?GJ z?+1Bt$%lIn-ZM=gu-DBJ2d9kaTeW|)4=`EK`e{OKIUa=OD^drVN=#&*4a%#wS&s0W zjYd}20@w?%gOfbfIZNx-lOE;{vylc7Yt0~tfpxzP=LpF zHt5=j0D4$*1YDKi$WOTSkOI{QPAd}TM5hQB}A)j1;A$TyZAS$cbg2xGnV7ftz^5iw zKjH-Hk3J(`$MvL90A71adzZ@)h%ZgxsQcOJYCg1K$plYtF#PT1UYb8CT4eOBh5LDV zp8owhu=s}na2~jp?UG-PmlzmW-X}lw@~fg?bE~{~KiV~}F3NChw(fs!M5>c84@o=Z zuueS$CFe>3i&_SB>}!cJH!akuF+M4!D0y=>nIwn^eA|L0=KDk`WXHfARpZy=Z@7As zdWZOhqP4UZKTzHJ%M|i%JbT-59gd6Ji_j&}FT zFT1|Bb$sTvp=N4&M+49$3WO}b8oc9IYqKJ1$+CvEN%%KkNmop(x;4G3?{p3t*beYM zR&(N3^r!Kq5W9(siz_u5(*F8O1XqCpP@jV1x&Sdhtc?*w5wBS3fz#Za`YXm4yu1%{C;K7E_4JwWAQeduPZDwF62*>o4ULj_eP^q9 zyK?Jh=oxJUM$mO{iB=q{!l4^~ZM|IKVHj>2)spWo=~G}`8qzUsZNT!UY?kfi_9#)g zu18C<2zMOI+P%c`~_RU z>P>%VbIcQvjQ_LxPCL_op_<$FyQ^Jl#S3F@Pd0X4Mjt#`-C0&YI+XU#bKLm*$fwI8 zO?dGn)7=-wS|%lAqlTq?9YzxBq4wFt6;6Iwrnd#tx00We3U-xwrf>MxppWe6--BIP zsd&+{tD+k7&e!g3!HIbFl!*-W4j*tLAQX)C$;J86qM?-~h96Ao&{Zw+Y~;vfjO0Hw z4Vn?Xhy?@Ggr!71(W?^Sple_Up^D-@glY?w4P} zb(<5<)|OVGRM3m~em3<*^Zjfz-6Fu6ZX+>n&+Iu??Cm$)I0b{-)PWb#B>uYPLPEg6 zBSJ%efcP)BTr_lO@D8X71{s@(s+x&&!vZ;ru&A<2U}8aG;{d68(jaC~(LM~jv1vkb zlbG4R*VO*m1yn zNUS(Z?+ZH40x;@vlM?YXtv~)&tTU1|*va`ywlU6%4pg`DV&<&#(|*wo{mEH`4M(W~ zqKu8z!*uGZc`EP06_S9ltD;djxWG9S5N#a1n>=DO(X*{4M&+@S^Fyj~**@|CCXH#@ z;Uwm8e)3f}8DKbzHE(Dlu*5y}zdwLoJLiM3Fr_?@UIqv}b4aS85C_!qMwE?V23>q9 z%Kmiz% zBI#^-ld_G?4{6`$Ijs)=Iz5$nKCem4+vK%KFsg7niRqqZ8bibV3{#%eiWqL2#kV0M zwn?u_Yqm`DEjOCDNo!kq9ij+B*#wuA7sJO$1=DU)LulJtPnXYf4%@EMq3W?2|KdvEj*4U($6&Z7v{_58Y$(b@ z)+l{o$2Wng6ZmVsK~>}u(|;;A;DYquY$pE)oBap~UAeOKOgiHB9;z8$HAOPD@_n|a zf@54viUUSj(HB@XF5Vw6hq9?;ta6>dEpuY=2K0!N$4L&5F$EB4leM3!|MuDKOL+)u zrQQ`{zSa+|<7C?{-?|n(Bqo3Bx*AerBXP)jpcK0Sj%N6)3}t{~crJY(8K=b8r4*Vq zMTCA^rc_na6r-6kFzOfS|MEcGzI<8}`Xyn@0&!zzbbPLLhRFEY-Oa>l(gDd_xjV)| zCxy#iJc5%3ps9eF*9m)Fok?zmZQ3jh&`;LK$=vuHS?lGY#reCiL*Ylxmc{Ruxe`A^ zqv8{S^CPO?a6Nb(Y`?2=1j7HDy%!slb|a1e3sfrDm`hSyvV0x0VFCo(_Ud5jm{Kt-w59*5 zb$tA)=pg4S#r0R~!s}0tC)Vj7RD4C-nL?FRunVjrC%GCUp>4^E->E*;nD6`GXBW)h zCR_=s&El_r{qpY9N4HLD&- z>9G{s7#}1`TnT;4`L@TGd2UE&f55~=pnWluj645w?){Qq=vp7)4w*E2N}{=VJ|dfN&_(5b&gH(HuQ`=r};x=%Hpvku^QPCjsP z9yZA4D`vLGK*Ce%F(l63ob@2^>=LG0yJ!G_XgLOsHOWY+_m9(Kx zadThtSgElE4ez>^mgPOsR(O;Qo9_;z`efN9Qn2VR7h+FQr=ssQH}=+Xr!V6qwx^4I z%*>0fE(8}m9c=HLD_!}&B{y0^6X#m{wN46O!@lHFD#S5sp-QjAV|+oX*1iJPXtO+d zD{@E4Cnpan;k*Y83#4i-HreSa`A4A3)aA8vkhA z9{_qgfn+7QSJy&IdniGY3~&y4@_>!@X?>xI7MdtTtx*xj7gyE6e@k>dHr1OB2>%~K z=w3_oSN?Dh@8QjC(Z<)s5_4-4^Smytgtjah@EqIM{gbwNlGpJ6RsV z7=d*CffvhMaFR9W8j^6R+ss?_(D9W(Yx|*UUfXKeSw^m0v+M?+VA3=F=6o6542*r3! zspTVpk5SNQ)%dCjFNF^Dcz_ygSp8%yS5T> z#_YE$<<6e#kZAmv3a9~c&||DQj~KnuCuqrGRNed}PImnds>RVr&23V8Xwrr#oXQ+} zWhOId^0^9w^$p3t!1fkVt5!?|QfcJP#sVh+VPn%Cw-vB*NGHltx9mszf0^ z`4PE92Kzi8zMeFA6iIR}8C{ker+$3}4bJyRh@-lu978n1=6GmajpfQaNlGEZq)rwU z0A6)^UK#*-l+^N$lj^_tdxe0!vSlR@+A*%)6##~-UY36$C-`5LU1>NJY}+2$daa3J z9!trLWsqv@j3t?2EMbVoIzsj>#A68+VT>`Dq>^Pu4Tdab>&Z?=v`CZe4U)0TGI`NA zy~q3g|Gt0casRuH`@HV!Jns8G&Xb&)Xe8_)t2<+f+(eE9E8TYxBAcD@>C*M#SkMX& zI!HmY8?|fzTrcyGetZe8SASt6a~|S}{V%Z>f%z})W&f&X#8K0W-a&oGZ;GV;0F4$? zxYm;+9i5_RE-B zj&jqfkP zX(b)A#Ga`oyt(VkO7Ot&R4jpEqyg~bmbhn|`4u^zhuQ*ty@ab&=*-C;FS!Z% zP00}ekL^c<-zClw7}6GmMI#NkEX_maIqI)%cMD0MBlki%Th}}bugJ~G#fs0KW*2WH zzF&W0Iy3~q!Y7WYC;h5$5~;fAh7Miqgo6mVM(@4rt-RR;kU5&6U;FRV0_N)R90FEBWm}huS0^1RH!+Ql>)Dd)-k!nz{Y;?mU(Ll;)4vng|hhX?kp*8nw^rGH;-=Q$fz7Eixxn6FY7;?n1! zm$H@(k^hEWjORKKGudEUuQg4RE_`cd4t}@vVkbsc=hpmfsmncRcPFz*EdGT!vvt9E zE?GtDxNenpqnuf3#(ZCM7ncyZG~Wy=lvkdOC8-YD_GM7L+vjB7M_8(NFCdGL5zn0^ z64xST;(HL4;0p_A>WxmOB>xq}@pQ0;qbbH!~>^>dJ{hCjTp0>F9>XOOg#lj0>ED3 zQg6vafv^X(s~S%o`=MZ%JfCx9f;dH`LSXp7pl!wbLPr6CUrh?RJYtcx=#()0Pw5YT z;=qn6cT*{%L}~Kv0N<}oS*1l9X5@1sZ9K0ZrSK%Ly>W}c{;dBaM}I>mv#Etj~Ewh%m_!Gu$?c;G*lAl z5J{~Ru37T3f$LLxXYa7|yFrP1=M2m|LWB#+!QbKi@t~LE) zT$LN_07xkKqJP@Erg4`+@7Mtz{RWgb^=*HFc5IN_i|PmX6=OsL%Q~F?dGabyo0K6f zWbg^Nev9bERIsIIcD1_hNlv&ck(!V2!wl8M$ldw1K zyMH;vvYbH(K&4iD3#u&ESFeY5 z71fX|XPe^lh4z-i#NHdJ6zi00Ewnsf(eo^XsqBo$uy5`gwHfhp-s`Qct-w4pWrKy| z+$CXc^fQ_`S9D5C^JNY^0vC5)U^NSRB&W~Uu7nMJD1)s2$?p}VGjoHYGo5hTsTi15 z>Et!(wkn>i3*SrYX!rHa9@Sn*a7J*$FPew=pzSqsB{tm#L^F*=lvHq^OG_Y&@Y|7M zm@AvWKC0N>vwm;9Bd{hR9^|QiwN2ME51#*cyRCX48itr^MYbiq@% z4=(ktY`;>~lh<4L4M>(EjXNvOgJjnU_Ow^~;Zu(PnwLCg2=hFuEAv*Eo)9TF5%)&8 z)l=H8&gLB`@V>7g{P)P1E4R;-k?^KHnw;5;Lgs3g>Rk#NIcqldK_My5h3%)}*DeDM_3+e-(|7+*K~X1G(iFaCtRA?39O|vA6_50Zd_Fh{38*N_DdmOK zmxU-ebBi`(p9y6AXGNWwMpMF`-+6K#>Otm3kO9Se7@)*Ee;aQAh!h^&^zaQtq*Mst zxk}E)BlFCDxf9j>OzRZ(*Mh|@4~~DrEd7wcc<4oT9FN{X4-y0#;dg}qs!VunMV`J^ zK|kMtfQx7zQ^ZnIZv{~aaS}nl1L(?`vp>7!=DKg0bmTauLxEE*1<=0>7&Euu$j+ND2K8G0TYxmgMx(@$vZ8xZ1?{SGOusNl(auW*Aqp5YVDJ+06E1ch!KR^K@QHMe!ZO+s%u-(u8yt=7~Xu>#Gz zG1hB0!u&;y>+J`bP^S8pmF!(-PP+CDPR6O~ScgYQ;mgFR|K*It14@*i)Um}04*kU2 z8_uzmlYH3@mhEi0By+~)a%bD0<3k9#+l~NX&fy@)1aGl9)KWaxfEzF4LDsZELHBzD zwz`tKL-(roRVBqSCtctt>sesRcKE^84P$=J^r$baw0)wpAylw`A6YmB;nT2TWNt6q`#w zbji@}RbsG|ibh~gY#7({&YjEO#bll;Ak~c4C(u?LX%uTFiUmTb-3}Vx&)z$sTTWLE zz({#C$(7?!nm8>&?F27MXAPwnc0SPE@EqFaxp3WGd2XL1UB1*~Y*L|Xad|~7dV$Vy zbP$z>%hvwU8K=~WPpSF;S6aNQEdjpE9uCU?hE7zqOG9l`8UvMkblzKUH2be^y8jp& zbC771OK}nw)19PaBi-tbjGh$wS@7`7cC0f?gaQ@E#vY0K`GKBBT^l>z`6{-Xat;i` z-hwr^^5L^=@N3$Nr7jJ9y-uOal1a*MD(gUzn!@E~>N?MZHOw!oj7G@~qZOVq@^E@^gVoL`1~+`zrg4GH=q zhUR8rZV6ybF}5Kn|Ijy1xVyqnCbXR|s(F&j6nTT2I&B@6U)Momn zl~40vbNl+;CPGgwrXWGeRz#vo^va=%#z!&v-QX>;r?CzDmF&wICs&t^gjb+HbyAlu zMj$fEW+#&V8gGY(KVE`c>Cwx4@n%%k0e}1*(>b4BUJnY1Zgl-#TGDp0Kkn<2!w5~g zvI66hkuJCqL^qCJr{ynR-v56Ayn?5WKTl%wvo~rR^I$L2G3XIr$!y>eANg-P#SqaU fgzs%Vr*-jYG(YMS<ttdtee# diff --git a/docs/static/img/docusaurus.png b/docs/static/img/docusaurus.png deleted file mode 100644 index f458149e3c8f53335f28fbc162ae67f55575c881..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5142 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 F{0H{b<4^zq diff --git a/docs/static/img/social-card.jpg b/docs/static/img/social-card.jpg new file mode 100644 index 0000000000000000000000000000000000000000..dd3d154f0069403feead8b50fe9fb5187c893ed7 GIT binary patch literal 253960 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
NGT9Cgd-N)lv-~Loc@XRn{enm~iB% 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 literal 0 HcmV?d00001 diff --git a/docs/static/img/undraw_docusaurus_mountain.svg b/docs/static/img/undraw_docusaurus_mountain.svg deleted file mode 100644 index af961c49..00000000 --- a/docs/static/img/undraw_docusaurus_mountain.svg +++ /dev/null @@ -1,171 +0,0 @@ - - Easy to Use - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/static/img/undraw_docusaurus_react.svg b/docs/static/img/undraw_docusaurus_react.svg deleted file mode 100644 index 94b5cf08..00000000 --- a/docs/static/img/undraw_docusaurus_react.svg +++ /dev/null @@ -1,170 +0,0 @@ - - Powered by React - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/static/img/undraw_docusaurus_tree.svg b/docs/static/img/undraw_docusaurus_tree.svg deleted file mode 100644 index d9161d33..00000000 --- a/docs/static/img/undraw_docusaurus_tree.svg +++ /dev/null @@ -1,40 +0,0 @@ - - Focus on What Matters - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 4ca31516b78f4b73dbd8d779fc3c0ac3bf3c802a Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Tue, 8 Aug 2023 17:16:59 +0900 Subject: [PATCH 06/15] :sparkles: feature(docs): add favicon (#284) --- docs/static/img/favicon.ico | Bin 3626 -> 15406 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/static/img/favicon.ico b/docs/static/img/favicon.ico index c01d54bcd39a5f853428f3cd5aa0f383d963c484..2828bbc016db0c6a3f62d581a9f0cfc14f7d46ab 100644 GIT binary patch literal 15406 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 Date: Sat, 12 Aug 2023 20:07:59 +0900 Subject: [PATCH 07/15] :sparkles: feat: add redis cache (#285) --- .../depromeet/external/redis/RedisConfig.java | 65 +++++++++++++++++++ .../src/main/resources/application-dev.yml | 9 +++ .../src/main/resources/application-prod.yml | 9 +++ 3 files changed, 83 insertions(+) create mode 100644 backend/streetdrop-api/src/main/java/com/depromeet/external/redis/RedisConfig.java diff --git a/backend/streetdrop-api/src/main/java/com/depromeet/external/redis/RedisConfig.java b/backend/streetdrop-api/src/main/java/com/depromeet/external/redis/RedisConfig.java new file mode 100644 index 00000000..1640f28e --- /dev/null +++ b/backend/streetdrop-api/src/main/java/com/depromeet/external/redis/RedisConfig.java @@ -0,0 +1,65 @@ +package com.depromeet.external.redis; + +import org.springframework.beans.factory.annotation.Value; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.cache.RedisCacheConfiguration; +import org.springframework.data.redis.cache.RedisCacheManager; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; +import org.springframework.data.redis.serializer.RedisSerializationContext; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +import java.time.Duration; + +@Configuration +//@EnableCaching +public class RedisConfig { + + @Value("${spring.data.redis.host}") + private String host; + + @Value("${spring.data.redis.port}") + private int port; + + @Value("${spring.data.redis.timeout}") + private int timeout; + + @Bean + public RedisConnectionFactory redisConnectionFactory() { + return new LettuceConnectionFactory(host, port); + } + + @Bean + public RedisTemplate redisTemplate() { + RedisTemplate redisTemplate = new RedisTemplate<>(); + redisTemplate.setConnectionFactory(redisConnectionFactory()); + redisTemplate.afterPropertiesSet();; + return redisTemplate; + } + + @Bean(name = "redisCacheManager") + public RedisCacheManager cacheManager(RedisConnectionFactory connectionFactory) { + RedisCacheConfiguration configuration = RedisCacheConfiguration + .defaultCacheConfig() + .disableCachingNullValues() + .entryTtl(Duration.ofMinutes(timeout)) + .serializeKeysWith( + RedisSerializationContext + .SerializationPair + .fromSerializer(new StringRedisSerializer())) + .serializeValuesWith( + RedisSerializationContext + .SerializationPair + .fromSerializer(new GenericJackson2JsonRedisSerializer())); + + return RedisCacheManager.RedisCacheManagerBuilder + .fromConnectionFactory(connectionFactory) + .cacheDefaults(configuration) + .build(); + } + +} diff --git a/backend/streetdrop-api/src/main/resources/application-dev.yml b/backend/streetdrop-api/src/main/resources/application-dev.yml index dfc05db9..7b5cf470 100644 --- a/backend/streetdrop-api/src/main/resources/application-dev.yml +++ b/backend/streetdrop-api/src/main/resources/application-dev.yml @@ -10,6 +10,15 @@ spring: jpa: hibernate: ddl-auto: update + cache: + type: redis + redis: + cache-null-values: true + data: + redis: + host: ${REDIS_HOST} + port: ${REDIS_PORT} + timeout: 30 swagger: server-url: ${SWAGGER_SERVER_URL} slack: diff --git a/backend/streetdrop-api/src/main/resources/application-prod.yml b/backend/streetdrop-api/src/main/resources/application-prod.yml index dfc05db9..7b5cf470 100644 --- a/backend/streetdrop-api/src/main/resources/application-prod.yml +++ b/backend/streetdrop-api/src/main/resources/application-prod.yml @@ -10,6 +10,15 @@ spring: jpa: hibernate: ddl-auto: update + cache: + type: redis + redis: + cache-null-values: true + data: + redis: + host: ${REDIS_HOST} + port: ${REDIS_PORT} + timeout: 30 swagger: server-url: ${SWAGGER_SERVER_URL} slack: From ec2bc20a3ab8abfd59517086c77f1d35c91cbe68 Mon Sep 17 00:00:00 2001 From: YUN YOUNG Date: Tue, 15 Aug 2023 20:13:30 +0900 Subject: [PATCH 08/15] :memo: docs: add blog posting 2023-08-12 spring-transaction.md (#289) --- docs/blog/2023-08-12-spring-transaction.md | 197 ++++++++++++++++++ .../transaction.png | Bin 0 -> 80809 bytes 2 files changed, 197 insertions(+) create mode 100644 docs/blog/2023-08-12-spring-transaction.md create mode 100644 docs/blog/2023-08-12-spring-transaction/transaction.png diff --git a/docs/blog/2023-08-12-spring-transaction.md b/docs/blog/2023-08-12-spring-transaction.md new file mode 100644 index 00000000..f59ab264 --- /dev/null +++ b/docs/blog/2023-08-12-spring-transaction.md @@ -0,0 +1,197 @@ +--- +slug: spring-transaction +title: The best way to use the Spring Transactional annotation +authors: [ young ] +tags: [ docs, spring, transaction ] +--- + +안녕하세요. 스트릿 드랍에서 백엔드 개발을 하고 있는 윤 영(Yun Young)이라고 합니다. + +이번 포스팅에서는 스프링의 @Transactional 애노테이션의 적절한 사용 방법에 대해 좋은 글이 있어서 해당 글을 번역하고 추가적인 설명을 작성해보았습니다. + +해당 포스팅에서 참조한 [원문]은 여기를 참조하실 수 있습니다. + +우선 Spring에서 사용하는 `@Transaction` 에 대해 알아보겠습니다. + + +### @Transactional +`@Transactional`은 스프링에서 제공하는 애노테이션으로, 트랜잭션 경계를 정의하는데 사용됩니다. +트랜잭션은 여러 데이터베이스 연산을 한 단위로 묶어, 모든 연산이 성공적으로 완료되거나 아무것도 실행되지 않도록 하는 것 (All or Nothing)을 의미합니다. + +스프링은 1.0 버전부터 개발자가 트랜잭션 경계를 선언적으로 정의할 수 있도록 AOP 기반의 트랜잭션 관리를 지원했습니다. + +그 직후 1.2 버전에서 Spring은 @Transactional 애노테이션을 지원하여 비즈니스 작업 단위의 트랜잭션 경계를 더욱 쉽게 설정할 수 있게 되었습니다. + +@Transaction 애노테이션은 다음과 같은 속성을 제공합니다. + +- **value and transactionManager**: 애노테이션이 붙은 블록의 트랜잭션을 처리할 때 사용될 TransactionManager 참조를 제공하는데 사용됩니다. + +- **propagation**: 트랜잭션 경계가 애노테이션이 붙은 블록 내에서 직접 또는 간접적으로 호출되는 다른 메서드로 전파되는 방법을 정의합니다. +기본은 `REQUIRED`이며 트랜잭션이 이미 사용 가능하지 않은 경우 트랜잭션이 시작됨을 의미합니다. 그렇지 않으면 현재 실행 중인 트랜잭션이 사용됩니다. + +- **timeout and timeoutString**: TransactionTimedOutException을 발생시키기 전에 현재 메서드를 실행할 수 있는 최대 시간(초)을 정의합니다. + +- **readOnly**: 현재 트랜잭션이 읽기 전용인지 읽기/쓰기인지를 정의합니다. + +- **rollbackFor and rollbackForClassName**: 현재 트랜잭션이 롤백될 하나 이상의 Throwable 클래스를 정의합니다. 기본적으로 트랜잭션은 RuntimeException 또는 Error가 발생한 경우 +롤백되지만 checkedException이 발생한 경우에는 롤백되지 않습니다. + +- **noRollbackFor and noRollbackForClassName**: 현재 트랜잭션이 롤백되지 않을 하나 이상의 Throwable 클래스를 정의 합니다. + + +### @Transactional의 동작 원리 +스프링의 @Transactional은 `AOP(Aspect-Oriented Programming)` 기반으로 동작합니다. +@Transactional이 선언된 메서드가 호출되면, 스프링은 해당 메서드를 `프록시(Proxy)`로 감싸 해당 트랜잭션의 경계를 설정합니다. +메서드의 실행 전에 트랜잭션을 시작하고, 메서드 실행 후에 트랜잭션을 커밋하거나 롤백합니다. 이때, 런타임 예외가 발생하면 트랜잭션은 롤백 됩니다. + + +### @Transactional은 어떤 계층에 속할까? +@Transactional 트랜잭션 경계를 정의하는 것은 `서비스 계층(Service layer)`의 책임이므로 @Transactional 애노테이션은 서비스 계층에 속합니다. +`웹 계층(Presentation layer)`에서는 사용하지 말아야 합니다. 이렇게 하면 데이터베이스 트랜잭션 응답 시간이 증가하고, 데이터베이스 트랜잭션 오류(예: 일관성, 교착 상태, 잠금 획득, 낙관적 잠금)에 대해 올바른 오류 메시지를 제공하기가 더 어려워질 수 있기 때문입니다. +`DAO(Data Access Object) 또는 Repository 계층`은 애플리케이션 수준의 트랜잭션을 필요로 하지만 이 트랜잭션은 서비스 계층에서 전파되어야 합니다. + + +### @Transactional의 적절한 위치 +- 클래스 레벨에서의 선언 + - 해당 클래스의 모든 public 메서드에 트랜잭션 처리가 적용됩니다. + - 클래스의 모든 메서드에 동일한 트랜잭션 속성을 적용할 때 유용합니다. +- 메서드 레벨에서의 선언 + - 해당 메서드에서만 트랜잭션 처리가 적용됩니다. + - 클래스 내에서 특정 메서드에만 트랜잭션을 적용하거나 메서드마다 다른 트랜잭션 속성을 적용하고자 할 때 유용합니다. + + +### @Transactional을 사용하는 가장 좋은 방법 +서비스 계층에서는 `데이터베이스 관련(database-related)` 서비스와 `비데이터베이스(non-database-related)` 관련 서비스 모두를 포함할 수 있습니다. +주어진 비즈니스 사용 사례가 둘을 혼합해야 할 경우, 예를 들어 주어진 문장을 파싱하거나 보고서를 작성하고 데이터베이스에 일부 결과를 저장해야 하는 경우, 데이터베이스 트랜잭션이 **가능한 늦게 시작되는 것**이 좋습니다. + +이러한 이유로, 다음과 같은 `RevolutStatementService`와 같은 비트랜잭션(non-transactional)인 게이트웨이 서비스를 가질 수 있습니다. + +```java +@Service +public class RevolutStatementService { + + @Transactional(propagation = Propagation.NEVER) // 1 + public TradeGainReport processRevolutStocksStatement( + MultipartFile inputFile, + ReportGenerationSettings reportGenerationSettings) { + return processRevolutStatement( + inputFile, + reportGenerationSettings, + stocksStatementParser + ); + } + + private TradeGainReport processRevolutStatement( + MultipartFile inputFile, + ReportGenerationSettings reportGenerationSettings, + StatementParser statementParser + ) { + ReportType reportType = reportGenerationSettings.getReportType(); + String statementFileName = inputFile.getOriginalFilename(); + long statementFileSize = inputFile.getSize(); + + StatementOperationModel statementModel = statementParser.parse( // 1-1 + inputFile, + reportGenerationSettings.getFxCurrency() + ); + int statementChecksum = statementModel.getStatementChecksum(); + TradeGainReport report = generateReport(statementModel); // 1-2 + + if(!operationService.addStatementReportOperation( // 2 + statementFileName, + statementFileSize, + statementChecksum, + reportType.toOperationType() + )) { + triggerInsufficientCreditsFailure(report); + } + + return report; + } +} +``` + +1. `processRevolutStocksStatement` 메서드는 트랜잭션을 처리하지 않으며, 따라서 이 메서드가 활성 트랜잭션에서 호출되지 않도록 `Propagation.NEVER`전략을 사용할 수 있습니다. +- 따라서 `statementParser.parse()` 메서드 및 `generateReport()` 메서드는 데이터베이스 연결이 필요 없고, 단순히 application-level의 처리만을 원하기 때문에 넌-트랜잭션 컨텍스트에서 실행됩니다. + +2. `operationService.addStatementReportOperation`만 트랜잭션 컨텍스트에서 실행해야 합니다. 이러한 이유로 `addSatementReportOperation`은 @Transactional 애노테이션을 사용합니다. + `addSatementReportOperation`이 기본 격리 수준을 재정의하고 SERIALIZABLE 데이터베이스 트랜잭션에서 이 메서드를 실행한다는 것에 유의해야 합니다. + +```java +@Service +@Transactional(readOnly = true) +public class OperationService { + + @Transactional(isolation = Isolation.SERIALIZABLE) + public boolean addStatementReportOperation( + String statementFileName, + long statementFileSize, + int statementChecksum, + OperationType reportType) { + + } +} +``` + +또다른 주목할만한 사항은 클래스가 `@Transactional(readOnly = true)`로 애노테이션이 달려 있어서 기본적으로 모든 서비스 메서드는 이 설정을 사용하고 메서드가 자체 정의를 사용하여 +트랜잭션 설정을 재정의하지 않는 한 읽기 전용 트랜잭션에서 실행됩니다. +트랜잭션 서비스의 경우 클래스에서 readOnly 속성을 true로 설정하고, 데이터베이스의 쓰기의 사용이 필요한 서비스 메서드에서 트랜잭션을 오버라이딩해서 사용하는 것이 좋습니다. + +예를 들어 UserServicesms 동일한 패턴을 사용합니다. +```java +@Service +@Transactional(readOnly = true) +public class UserService implements UserDetailsService { + + @Override + public UserDetails loadUserByUsername(String username) + throws UsernameNotFoundException { + } + + @Transactional + public void createUser(User user) { + } +} +``` + +`loadUserByname`은 읽기 전용 트랜잭션을 사용하며, Hibernate를 사용하고 있기 때문에 Spring은 읽기 전용 최적화를 수행합니다. +반면 `createUser`는 데이터베이스에 기록해야 합니다. +따라서 @Transactional 애노테이션에서 제공하는 기본 설정인 readOnly = false로 readOnly 속성값을 재정의하여 트랜잭션을 읽기-쓰기로 만듭니다. + +읽기-쓰기와 읽기 전용 메서드를 분리하는 또 다른 큰 이점은 [이 문서]에서 설형한 대로 다른 데이터베이스 노드로 라우팅할 수 있다는 것입니다. +이렇게 하면 복제 노드의 수를 늘려 읽기 전용 트래픽을 확장할 수 있습니다. + +![](./2023-08-12-spring-transaction/transaction.png) + +### 결론 +마지막으로 스프링의 `@Transactional` 애노테이션을 효율적으로 사용하기 위한 몇 가지 최적화 방법을 살펴보겠습니다. + +#### 1. 적절한 위치에 선언하기 +@Transactional은 주로 서비스 계층에서 사용됩니다. DAO 또는 Repository 계층에서는 트랜잭션을 시작하지 않는 것이 일반적입니다. +컨트롤러 계층에서는 사용하지 않는 것이 좋습니다. + +#### 2. readOnly 속성 사용 +데이터베이스에서 데이터만 읽을 때는 'readOnly = true' 속성을 사용하여 트랜잭션을 최적화할 수 있습니다. 이를 통해 불필요한 데이터베이스 write lock을 피할 수 있습니다. + +#### 3. 명시적인 트랜잭션 전파 정의 +'propagation' 속성을 사용하여 트랜잭션의 전파 방식을 명시적으로 정의할 수 있습니다. 예를 들어, 상위 트랜잭션 내부에서 메서드를 호출할 때 새로운 트랜잭션을 시작하려면 `Propagation.REQUIRES_NEW`를 사용하세요. + +#### 4. 예외 처리에 따른 롤백 정의 +`rollbackFor` 및 `noRollbackFor` 속성을 사용하여 특정 예외가 발생했을 때 트랜잭션을 롤백할지 여부를 정의할 수 있습니다. + +#### 5. 클래스 레벨과 메서드 레벨 애노테이션 사용 +클래스 레벨에 @Transactional 을 선언하면 해당 클래스의 모든 메서드에 트랜잭션 관리가 적용됩니다. 하지만 일부 메서드에 대한 트랜잭션 설정을 재정의하려면 해당 메서드에 @Transactional 을 재선언하면 됩니다. + +#### 6. 트랜잭션 격리 수준 정의 +`isolation` 속성을 사용하여 트랜잭션의 격리 수준을 정의할 수 있습니다. 이를 통해 특정 트랜잭션 내에서 다른 트랜잭션에서 수행하는 작업의 가시성을 조정할 수 있습니다. + +#### 7. 트랜잭션 타임아웃 설정 +`timeout` 속성을 사용하여 트랜잭션이 지정된 시간 이내에 완료되지 않을 경우 롤백되도록 설정할 수 있습니다. + +#### 8. 여러 트랜잭션 관리자 사용 +`transactionManager` 속성을 사용하여 여러 데이터 소스를 가진 애플리케이션에서 특정 트랜잭션 관리자를 지정할 수 있습니다. + +위의 방법들을 통해 Spring의 @Transactional 애노테이션을 더 효율적으로 사용하여 애플리케이션의 트랜잭션 관리를 최적화할 수 있습니다. + +[원문]: https://vladmihalcea.com/spring-transactional-annotation/ +[이 문서]: https://vladmihalcea.com/read-write-read-only-transaction-routing-spring/ diff --git a/docs/blog/2023-08-12-spring-transaction/transaction.png b/docs/blog/2023-08-12-spring-transaction/transaction.png new file mode 100644 index 0000000000000000000000000000000000000000..c296aebb3598e24d9cd9cfc3dfcfe7d97328d3b2 GIT binary patch literal 80809 zcmd4(WmqK1(moEOGuS}G3@|VZ?(XjH?(XjH?(Xh`ySu|+jSV`uySu}`_w1hY?C$T= z`|ahby1J;!%;<>BjJPx7t`3ux7Wo8+2?quS_DM`sP#z2nQV$Faf&u0O=uQ|HvI`g( zxRRNGfUKB+0IsaPjj@@f5g6FlB&XPJiGEqYPDMfPSeY8Ws4N5GVQ&X4Q8}UD1!dUwbrEN3lT0Lr@m)~?z=i;?f0P{-sV%tNRH*~Uz=30V$N7w*|Y znR(hnvMPDwq3}12y{0=R$Q})UH;xe^deEbY%x!S{XU&;ksH` zT05}2a^e4{1Uu;ZkJ~i(xc@2QXu*ZADkY06U}JBD%S=s6O^eSBhl`8LX>VxEE-xtj zS9Q>TT==Grj<)PHG%hYK)GiFvHufeobZl&FG_>?I^z>Aq5>yUu){c6vRMrjze>U>p zb_9(a4D8Kp9nEa4asOynPv6GLkqaOH4?+L?`}2Dmxtjf-Bx{Gi)B-6;^T!h!I%-;) z|FsRO%K67#c3Cr5BTF?wGb@mJKr*D?#Q~v*X@_!QlR#Wx=YO*pj{k`Vjp8UI} zl7o@GfQ=PMq$BtL^~_(D|Nii=ikvimX#O`#{AuR@+y&X08;+Cae|^Rc=OQ9n3kJpu zCML+I=n8(4^-=fB+`>;AcaproHIJmSX{bWDaMUk+C#qB3QAl4Xf6G#a=IevQljAz` zmBFb3WYckl4yh6ur;m-hJ=W-f)^)v5{Gx0!E+%{987kiOYI`T0=iD^y#CrJPD7gPT zNYNnHeon)E!~5rLP$^m{(!K}2e-+2|(X{!Wf`lXl;FepWbm6Lqb3lIG-*}SEw;yFk7ZFTCcFmq`lBj@Vt8}cu!=qJ)-KpVE`_s zza`&CXYmDfB>ux%qvU>LW0Iw^dH%?Ho12@`mjNQ?8RNueW@g6U(9npx-{0Dim8vKw zILoR~3F=GDrK`@Hs7a9r^77>x~ z@ZfsQ?)}n2NJJziDH&PIsn_lGd}se~p%)|D_5S9u-&jI`hsP%`FCS?d@HOCP1#MG2 zwN_ipTnPKG;>bvZ!^QeyWLJS;gv;OPGHDdb6|pfqZ@*{A_E5n=qaELOnEdZ@MZutO zCv>?mS#5I-O-v+)qQ7&6lgU89C)Y}4FvC(>)&yFuwl((1a?P1&A;7B|8Wtc2KHr_z z*U7X7*$S+uO(23At?y52jQ`uDNK}AG#ko6cKTrRK!)7n&e7>foi((5I2qWMxR6&X| zp!NRtDy5|3b(^$^&1F9e^HZ(fcx3BmM4`j}#GumU?Sc-={zrtbxc4g#G4+p~9`~b0 zDO$u5$&_?wi6C1r;eT3)!sc31vmT7ZnC|p&Ih@K1NaJX>>lfZ1GWVp{ zo5E6vxdeFq-A$7+K&3NVnGe>1W)Y`>dY5PGST@&khi;U=tJ~e8NuhaTSrO&c%gf7^ zrVBepj?Y_bEh(O=Xbd*jO4-9+hE1dp+&p^=75Cf2w)MUP&R7V_yl(d*P7rsCrxMcg35x0Ez3~&y~nw1j3QF94hjNAZ5s0{9pg>>PQu! zbYIn*EYpTIuqHXLCA$o~wxd`IYLsh!h{TMF;CLBQ3YC0y7yzK!?Tw}BtCit~+mpc5 zL&Kw`o_zR(xx<~c-=bWpeg)Et{hCfVlw{1v z6+Ux{vOg75-TkJn-e_**pQyT9NkwU#KrBTc0`LQIkpDpHxC9o4N(4q>d7eTcfcoVwvnr4qyudNLeLat>rGSc1D}El|;XOp^JQ-MvNK|5_QhB2FE!F3WT-fa)O`5=|p}vK$ z%|xVJb8^MfS)7Ys*QHoi4WTFo5s`!4OqDN?Z7EAfu2)G*JB_;kIS0Q0d~5|$f!O!u$65D=)L6B+WF;Y?D%MVLg7kOumJ-_@OySk$UqyXmnV{UzOa;d?g+>_=QWLkc zvlI5!lib)Q@4@ZBc0a&l(3ElLlm59`R$fJaJ)G@+M8>xfb2L{DEL|a%QBtwX0)6uq z(faRyLri}30$}{$;CK~=(5b%A2=iZ|mUw4*LuqAT9lA6>SA_(@M11vm+)Xj2qFneH zuLVq=_fom%g~ILC9~J$|GT7mMYwm#c`LjV2wAVK#^F+?qn;HL$M^PBwE%FOEbs4+l zA21ZsOO_FTAJ~!rUdHYSny%m5ssI?s{Teh?Z`eM(ZpBu6Bfc-aZ?Dh$Dg}yrB7%a$ z%QoFq_iG;2J?=rn!8NLUvHpv{YYn0@w#t;s;kdehG~Jrq4;zr5rBHg=#ohB^C=Ojh zUkUyO&`9Z^0J!>7xqQ}gFqIR0h6q@!vcU)#`bN8pcW0{_HBHKAP{2=uBcE7SaM86K z<<4dvu|Ix*!sJur)U2YRb}TJ<4zrr+97yKWc%wkN|n@^Bn~`Au6)Y;NDByx zhF^6?5+=<2y9QLWFmzCdzTdW{@&t@PD5D6WLRa+~A%c0KL{0#JitJCt$+@ByQv5w| zKLn=zq7R-ci`vdjo88tU>=>0p@Zb0jn(zYT_PC^oth( zvxu52SDB;~@3dNOieKPE;?j2%M3PPY7hIIBgVpWbpUC2n00nA0y+Edl2Ey=~Y5U^e zGXHE6oW!p;;3NDzntt zK%5;E{o}nue)IgZc|Up~5NelPl}7x#s{=vx+=9;_sgu>oc~oe!braMoYn4jQ)y>Y1Z4 zhk9@qtI3IZcy^VD<+m;>W&qQ@ul!?peU_}Hu>NDqKx?S4f?ux!UOET|bc9mj zXzG3V1C1=yLYZ`MI;Ee#lyJC*?Hy*ko$sGgX}1~Klkg(%O$3PiiRcR>eYI|Qh8zUQ zj@jBhs$ef19IDR2mT4%#52(MEBNpxqH>qX}6f7#rhG9uKsWw`c`QuKVIHT&c<$PjD zB@QLmh?eT6kb^w(y|6#YKtQrtBwwSybvM9MKt_WsPt*Qb{#BbTJ%k*019#xW9Sd`V zK&k(w(0W(bOov6X(oEalE@6~>rKHcEpa=#i6*%;db%v}zOu@2X)8Mj^0;4A4X?)c@ zwLzmiI22wWdOVTSRgwy6?75hNP&P~X#0p8~JXPgn;;+bo21~Z=c%o$_lF`1XkZ~fJ z)A1{ARw(ZNz9`AXLiX*L zHq$~$phignZ{{EBD4z}ltBUvqdsxS@v;cJ_x`2!4hq>{iqxdssV~4@U!yg0te@Ct% z@|2lsd;uTh9myim)HD^*(1nw@>Oqm)VMa{)&pJh3;vy5^e2L-bp6x{Rlz@bWz@&hT zF}#03cWwxc?UOnZv7ZrbgniI-jJ&5L(w^G?Y6#P9Y~I{)FCi=p&C%R5mCwm&?4$idw(>g#+iH7eDoB@QaZ zXQ0UtrWbT|7b)nwp$tq4`F=!6a>`#*^(lDjw)bs~*psVo?uUfh68B!{?tw>Jl~}N8 zBsXSNm%OMiLF|y)nYvhYHhx9HI^JE(-|e7@!kV2)YzND>_5Gw$e@LcdJY7SZ_yKx; zbJ{2|YU`I%644Bci07PskwR7E+?YtEEOY8)0|Ng{2JMw_4IBR~!K_!bdI_xwymbtz zfrH>Pt^Y{&w$+5%<^dhfr=!sqlXRira9UJdJwMfw#pSWvt6Mu5-WF_gIp2>gY5iBGj8EzwTAZ*YtXgKz&d{kN~quu(e zf2^6d*{9^>G^)ckUPgcG0s~}IF5$jr!5Zo#O*%r+=s^!LP5Yt~)=b@}O;(HWBp^$8 zjlJ74o9UnC@&~9k8#Yxuz6o6RRZn75+j35A&j zPJ2j0)_Z2AN+@I~7HuxKPU(&5$S4;0*i`lF>Yd^77Tr1iBaf;T_OK@WTe<%YFy%a9 z5B(;2LS^O5oqW>UUbDfhJ1@NJ&I=2lawwU|0^OTjN4iUg`1K2oHn%6#2xK${;f5b? z5nKkO-N@D3mekh%F@c}Co4G21W*cKQwI1FZd3?vug-I29JRp{iND*2n2@G>6y-kuy z*Ary8aoRb3MOLKOabbJ3J;{W|s_dzeziH22Qsr4Rz`mwL4{zU+sc z0^L#?ctZy+gnQyVP$2HEUSw!>2Ktz42`U_W$<1-XeNxhKxm@y98Fl7jN_k>4?SG z-n;qi4cEKrPkp?0OWiyOIqRY|TH|e}%J!Xv1HUgd&T&$1_711rY#zoy=ZN~M-<-5v z9IsVc5K*zoK?snuM(FNOKAvZ6!_(mGC7&Pmu;B7ymV%Yf*EC)`YR+P(UB8H4!o%3_ z*@b|@IT+N9%@=FWE^cn&KtB2JVKON?O;}0kNf1P$R8n0}KZ2XntNdTS>uvN0yhdi| z`Ud;6;7bOj=Zw;*PByTw_PG}gx%(PW^j7{7pTCD{dgvw7pwbStE%~*FCjY&wTC1Y%~Jo}wq1X`u3;HYoB1<~r^;M)qaUZa6Mpr=#!f7@)V(BLg=4-b#+ zoiC691>tQ^QE9g+P#@Tc$8EIf&c8HfwktTLyG(_!#tFPz+WKrwQyUc)1MlV}3gn|c zOqW=x%#1wrzqdJ|A;~YlYg%97A7}47Pt5QMHnLxJA5!eL*`235MM+|Cd%E%eNByFt0P)s76KdlF8n2a=i#C54BwUzW4sPgU)BM z$=okcP*8m4+T-}q>S_{4Ldxq7E5q{T(4kbbJZ{#)D{sbYba|QBVh^NGbLIR;p^RBm z$81g4LiLFkGd71cn6ua(ScnHH$SpYjA(5nn>NYZbJ!$14?Bb&rN}Z_b%^&j&zq37O z#e;_fx!GM17VvvQnkVl0vr~);r|p@kKIJ9l{zARH4L?_9xR$u5qd~~KjQc3J4{$_m z9-ut^2=!f|_m7>~OjL=#q9iXige&f1>zhde4wm-F=}X+I50C>%lN^>#WaVnV^EOrU zeVFl(@xu82WkCcOK3S9=g0=8j!laAx)Ln~$AUn+n3U#8luJI;d->A1;rVTAgr^{8N zO`B<&3JFQ!cG)qxk^Jl}l}CWO^O$Y_vD+uh=I(j@vH>oK_$c`+xy7CjY03)gyc)3- zq}A`b`hxo?gPY#*NzTkumFAymGHaxh)SQ$G=UsyI@(EIpk+WY8?RQt{ufx7UJM^U= zV%1f4`;e@6Ube91RPx^>z_N&ia0~1dg*ixS!FXRawK-tNMB6uoW&LExPAJEAWkVuq z=I6xqvzG*;_MPJH1<%Ig^+g?osmzW-{8fZrR%K6Yfqtv@Jdv=%Mg`$0!bxS>5&EA{ zoXZKYRbRT;iKFPvPe@D7?bH8(D>rhyQlqv90rb*g$&`!A^XWH?*_l_IsE(AsZQFfZpxzT;zc^k34 zN_Sb*f9{^^pnnBN`-(+=-_azi{m7(+oz*F3&S*&#Va&NrX>vMid16bT`P{Eb0R&k} zwVj__v5LAey;0VMNb8uSqYi7eTR=W~DAnH8_t{|WS@pNw=jXP!~J5I@I+m&8Q5~?`=ELANbH%>@deY5P0k+Wh_bPuh6w_ zt?e6b#T$&0i3xMQ=DjUhCrs*esKo2vYbe=CKoD;5_q1U3IVuIh`dqi|q@)3r0_W<= zG@(pkfzW{=f1%pgj2?7ys4mY(?|VxnfSUQ-$mkfO-ZD+Qg@4;cBa_hu;CdN-X6)@Y zri&^|FOB{3+OC~@LF~sJmr)<8(@y)s&}d1sH|_45CZhuXZ2a9uNI6l5y;Q( zYcO{*9u5y1KceMwF5VtT*>kKGTE}&2ZFtlin;B~P0>f@OlPOtq*FzGgmynj2lsK*1 zyvDZl>Q5e8)oGNN^4RHJ1tplh9YfLCXsPMkRUu4y%A8OzZ+g04()GA zx1AdfUQMK!;+!xw=CXb-5wYQEV?Q5xeA+?Y7l68`ZtXLk{$%{H7|I#TV zD59Cy_Zi{i3LRgiO$>YW@sv$qTJhae7CKPl$J59Uhh~n+KSEFs9~gBQ_nHu8UxWFr zA|o1|J+}wQf*c-}Y7Bp_^f2&Z3mxhuO^vh4p?YJ}GYLz{Mo_+B5m&ZplPfF~wZn#1 zL?S%u?ZFEZX1QFV8dqX7H1oeg)P6#MWsrk-|5bAyRy(A45UTENJW^mZlnF7$pOTfd zr`b%wARrKH#_qinD|q^{Tp^`gS|s4Bw)+Yxuu~^DsSz?!DIA&-{c0VHkhQ+MeJmTu zGns83X!ygKo#j{%^KK_((1*-CMc{^T2#3K0pIk*jPH};JZ$-I8Rm`7X299<=4B|xh z(~nOQCK27jk{w%bB%i*iNHbwJGF?wapRJP}mJY$o5=6xEKH~c_wb3(@2G5x5K=lvB zh+-P8!PMfHL@VtG_$JqQ_Rwbh1&=8q7I>bLgG;*C>`a?Svd4Xfm+z5i`4Jql>1VL= z2g!5NznD00O5eZST15qou)E}=jEu_8Bou9nARXinDn;c{iV#Gdu052$ljLN%twLul-tT&AycqOqnAC>$)@a$)aOjqV z^}9=(rl?MWdp)SZ`H-@ms4-Nwr>u`5m0{%JHzX~RHu2N$lM zzTQxB@<`euPYE0X!f^RZcv0kzD=Y#xSFOq15EX196U4(FpI|>ilz53m5UQB`ry`4( zteW6M@V!KOR4zaKHZ7rbx_QyRc3+5sd}Erc)nlZE4=q;mQq(dZ$K^VAmRSbHlGvpR zg%*IBt3rwbge@;YD$$I|MEfJ3IZ(+}oIZaaV)WmL6sbx+fF#j+Bv-B^dbRPAB!Hcd zi^2Z3`Nbi$E;P`|g_B5-+kx=@+DW5GvtP^ZFxss@kp{O~jyfKxFW8gPdHF{tAP{G%V)tZGrU<)iKj zAdIa=;%WV^#j(vXHSn;bCU;8qn&M_{yj-&L?sHMe#s&EvtCkl2C2PVn2AKu{hPycO z9Hyvf5R6zTSH8YY^#Jx7NeaS@?PII4Ps2Ia@6Z~bdCEAYbt!ZotzkA?#h-@ABwB4s z0nwn*IYIL6{in`W>2g(Oc#E5|2n10!uWD{iAoP>CWZiZMy3F@MnJ=nH6(ye=filXFil5y1TWdLc`I}G%LzzGDF8ecZqElw zNq~S|2oeSh_W{XqQd~0eIXA5+TGw-A8&Q!(TBp6^x-%?XIcdt;WngUuwCSusq6kN~ z=Utl_r2eN;@vLC-6Mv$+DQm0#*G&W@7K-jn>(O2BYk7Dz2CZfah5d@kw>vI}woNxJ z2lNDGbS<;1=+kAq%OOOuAn`a%QG%SWzul^WNyn(*^$^CMXM^4XRVpiy34b_7FDsMa zL@0>scXV8L0}X%Om`H_sB1zFjK#el`0hg4MBs30@aG!*9TM72DY2TJMqE%-{RNf7p z+-e!5K_e*o?Ffp`ZTzwEx^XMV&Y-ZwAD>qvTo_pOU(|w(!W-BvXG6^lvAxmlV-_36 z7QHn0$?hRAW;|f#n~N4Vu_VcI+D%V&q5M9y7F$R$8(t=Evp5bzYC1%$g3TD4R4Mhg z)h%-*+j$*K%VLa<+i>IMN=7HCvOIY>8C53(Cb0;2eS*vnlrqu+<#7ne$jJ5^a7QMB^jsGzy^5j=wWZd*y&4*B zeZ+Y6?|FX`S7=_tf@$nywhh06QLw4}<{Ym7m@PizR$clO9wvqI3rs-C-?N}hy;q)I z+FNJW!;X!W&t<^gHi1p>&!uX;2rg$`l_srjONH7)spr$p_;d%b&>XhB09{dAs!dv@;=?wKEP6NcngF)v@ z`x&}Hki@i8GiPD$lr2HY)(<3!0A?*mtvd5IZct!u5p6p24x*fciSa(7{%v(3`nhkd zQ*kqzyu_n0raC8l%+bwV)~a;5E@9<$5ap0jH?Vf}bg4lc`xu?fil%EcaAo~sTQiKK zj5>SN{$|MM%VEFKru)Qn6;zRQ7Wp43!jr{%5q^GtO&QeZw{ezrLQv`}vAnu#Y0=ry zvEk-?T_>4FhZ>Y{pLlU-WUyLdRI4)#^L#oimhW_Tin>#45jpP+W2+nFM zTcxE$kZugT+zzv6Warz8pJ8&9iq5`|qh-FY$eE=P7hSk38ZH-#sK{daQ-mj{Bc_bK-gM}}4)=Rp)7-@;#m(K~h5+gsh?zFU0Ru_xYUp2bVbyLbk6iiEsp zB<1@F(_-VL%c1kFXzOcXD@qCexuGwjLzr9t3k7FtUbR+r7efqKy|}W)lqSTiyHcsU zRty9}RbWxn=VLFm1-*z??UME9z@SNXmZu-7Cg+WJBZEv{orRzu!9!PL-i5FA2UeMy9ZMT~qA0$i+jSr_W z%wd6wcEL{l_80Pbfke1hgq|#@ptW1-BRA0LQ-!rDr1Fp@stUjW)J^o1ctsH7Lli?D z{)#{GzJ7Fv>`g84N0@KF%I=uelt9>hRp_})01*&)$%v*}>nuEP#7onu!lJk7= zcch|2rGL5z3S^Jvyd{!YMPazbOuR=Dq($NkHS(a0V9#_aZ3#@hN~~b#jQY4+dA*i> zG-xrm z0!Ib$JNv8|Y(Ncb%1F`ur01X}cmJnv%!vXah_ICUsN_4JLLI1|;LG(ux#b(1zF+Gg zBFspSA0)IgJ=~>oip$TGtQ#?F1q^ypd4c z)X~>DaDL1Oct9j12D`m%v&W!XFYZg zs->WpBbS#Va6ZUID{NZk?|%IfBK@D3Ec*t-3MJe7;##w&>*6UB%O8 zTZ^joYj=QbUvRhU15%MGL$_m@!#vZw(h%8XPQDios`exD?JwC|KJTPT>crzyQ08#1 zFP7>PCL`^cdn@tgS#m@-f=<^Xc#QbQO4ZZv zYJkW(M`K!pw-0kFI!Oc~(ZjiX0Xz8-)b?CXqh6|_xZIvMB7q?8NPCi$lvq+pzZ?nx zfa`QLYsZ0(gF{nWTkDUbimNUwvOAhYM9C;g+|9n2==HD}@>7O~!sGtTX&y=WBO(^< zm@LdfuTrh`YMb?~KyEM71t^<2U8TkG2TQ56zfu+%X9JtxaXg1-9p-B!Qa(;KMO91R z&F0gwOoc#d`RPC+!lE6mS`(IdY?~56f%F_4%E5WLoRAmMaupi!_0SI09C@&~VGtO> zaIRI~3!Mw4NYEGUr|szA*5=YO{y-%df_6A^u4%3iK;2I4+aY@bS_-9?1Q2c}MM_}4 z{6OAr|A#V_g&V?`X2u$35@sv-dDezcDWaK3^XK@MKRz=Ml2K{M%g?MXIWwzH{6QQs zVae<#`XdurC%9p$(Km`h5luwn7jFq0AoLOG7(}=!i2Tkm-{SRHE@3V&AJ6Uk3>=L5 z7Uk=I{C!1QFN@coV{Jjl2gHzKOP1iprbLqAd<>LKqZisgFZlLL54yUiqY4ze6|7r# z(Y`Rj?rXblLc48+kw|s|i+M@svlTLca+PvvagMk8ADM50p1ad! zlL|HE<<&N)1klV8H8(HA@JS+9+DTH;j&r--gM}hNp|l04ZGe?egHoMQU;7C^DC(HQcA3?FYLM4!bkw3oYm4%I1+( zmvy5-!z`cEkkzZ_301cAShB{lK(Sl#Jd}-Uhpv~`+3&w~$d9mUz)(5xz`ao_lF6XX ze1l-|$Lxs)L?Cm(9VYR782eH503rbG-}q|y2txq92SuahPC|ts)Rj~@7H?lZZb}0- zb(qb|8Kr{4@+pa#R(-N3am89EPNhm6(&8MF7TiI?!g4U+?4)fvC5}rRvYC6^O3{l? z6GgKqtL=Z_$R9m*B?yKOj`X%q-`fX$9G!%V0`R+t6Ty!AgNgL>*^1hHwT?|o=k2`4bcdQl8kb4arpIaH!YGJCCdG?X z&e;TLtID6aT{%1<@Es1p@jkee51kvr{zfCi^P1R09{g-xkxnuz*JRKBC4+KkmI<&O ztW+kv3n*1%6aAS|t%!h#lF zeRDe1FGbo~fojOnAB;-xh4jyrTB14xC>yt=p@PqDt=30B$L>h|IS^_E$zs77%A8L} z_h)Z_+j^H5kqhm|7U(w+IY{^`A8!jWOf6_$t+urFdLhHgJ>q5~;&7i3OWK}wTu&s7 zXRrX|LK*LKZA=B^QZUC69KJ>qv8AxddcD*%0U zB?Nwm+y11hX$cx8DajmeEl^w1f3U%#U?L+T7^*@y0$>7kH`6yJU{VBHB-BS{GHD~* zjmOi4XDhVY=gG~RYFhXzK>f3B##9f-`=#I9xeBEsJ%#70$}&M#Obbv)J&Yu2ZZ8dp0*lIO0w(k569Fp?Aj*@zpyVNc~vm8Q7$Im^h8;<$p8@MyS zmszsdun;eRk|()vluXSfy0FwD-`Ke9Yd|9q4$OZ87X|^sFWBodrQoEAsVyR*pqyhU zZPsD|M87w6FT!-ZUWs7CKVRf}-)2Va4s%3T84JqavHf^-2&&VsP zAH1si6K;_R?Vi{7EEGGJ_J5R}+!uhaX>WkHn1reV`F)#wO{y9!8XfTaP{Gu5zF&3u#xiOIOg1yUmfVgH&Be1#8sMZ^m@Sbbi17mDH`ci+)#m%A zL3BN4w5Am!m-98Nx+!#(IJLwa*qd#TQ7ZJ$GFb>$iQ7z73JL+Zg`c*EAm#LQz!y(|?k@;UZ?+Z2Y z0X$ToL-R8fJj$LN-tT~7s0j3`dd)*zdfm$<5Hl`qJJ5j?@?Kz!qtBCuLJf^>;Zbp( z&2sZ?Kb^K3IOEB#8W)TEh3*`_mldE3IZxf9-nVP_aIq=;g&(F*3q>EckIIGLabQL& zb;ih!S2l8BV1QEzj}>-+T<~yFJoU2)ot@PWrE+EAg1c!pH=))R$GC}3e}KXq^raB= zp8NfTWe)zy*u$myfBia$DZ>mgk3|(q)Pk{xX4c9P9~+Cy<$eQbf$Dn-ls!x>hTimZ zd_HY%*V3Phc{I(I2l3ugCzF=#gN`@kL!i)wRj+mF1ZrY<-d|<}JqB7oV!QT))_}0k zXe7o=6mQ4wo`!ANFv^4K{6LQP)5w?~McpX8Dzd8g?VQTQw64$fI7@~vY0V3&lmEp4 zCpAHOc&_~{Bs>O$n<`opeo51c3Lmoa84m>1|7iTO>M%V_lj1djcn852{>wOf*m}{6 zS}vmzMhm}{Drj%v6yEN@=``F>urrLeuHz0tH@PhtGry5 z)OojLF{mCKRH7B|qa~Sb)hpEKq8ClM`nalnLeNl9Hm*K-);wtHQYfn;_q&jmja%j9 z>Y$c3neED-j$${RSO0`NEMh5rAJxaToe*o4sx-`w*waCdzYg1dvO$`Lrk!x$B!Mf# zJ1K|TTQ1q_D*x;qA9m=@d`{>c*SY9*_tr!h%-U168Xnet)gQyc8m6s~`;lh@`qS z>h?l_Eag+6)9oEp$u8q2$T*-{gN=#ul^2XZQcqeHw9Z~;s*%SNg-Jzi1QQSlJqpDo zIp_!Nm{^@Hs-fzV2)m#$rUtjVTsT4w2h0%jO8hqau^sfMzD7YkCX-R|R^=&~_N<>Y za%k>58u>k6CtuJ{5(8D!+&$1S?t`ca;dOFmBthv#x5vTjodfU5Dubl5xkS61bJBS3 z9Ak91MKxS7i!V?J{B7?bdfOFfBLId{T1DHfQ1{Xp2D##UFjOz33nz$2M}a>-=}+7H zWWZoD!B`at1C0cqp0wuk?&T+haGbE}ylf?$i+jQ)_+^RgWQ9!CcVjQK=1w(oF?~D8 zJ9je2>n^QUFwe&%onJs;T=i(7+QvV^a;aft%;0#sHKO9ht1vC%4<`C32 z4DF00Og5OsEEq@%(NV`F?I)B{xE`u&JwZw$zkm2)At*tvKc8d99&p~lVATf7JA=rY zZQoAd|C3DUVI!I<=ogy49bFzP2ckBMJ!>zBzM_4X%5i>wE#~CTZ6h2M%#y>|Mmmor zp(!V7vJ~+RnyDPqzzHo{TO5a}$=#4`-OE$ijZ@3miCfIrN&l#mv{3_x;=(AN-Bp)u zXkwgc&Cqd%g>2hsyL$!!!P=vBu@ynXZ0!k*t2hnyu7W(EK0=fd_F3)%&3w zLGx?(>zxK4BR{2RWMD~%vOf@;QX6LCviBp-*WQod!9rPjbo_OcCi6_iOZiC2w?lPX zYP(dmp$Ac~&-cxBe8&{`|SjE;Jd-^$Q#-+U#am89%HG7QsZ|sb{%pr zz+vL;>6nI3k#BZ6mk-jQmY+7}7~$iWS+Kp-^6Mbk4-{&I@~vUM9U+zQN?0GFT3?xas|hiin4@3zWF0>Mm|8#V`~x zE?EY||6#e3(t>ji1S*wLyGUtKZa*s}89cuyt@==<5NECUG!6wwt54g7#Vk=Rs$sZG zeS$5QSMbytNT=eEsH4Y1qvgCXE-DUfuFlcG2<=J?WX;NH(l{{(hl!{tbW-|^L$#kS zAI-7X)No2CItk5+-J}Wk@bqys2}v?JO$H(5lLXH-XW%31cN|{;G-_{fKK;pGFy8Gf5~6|yAb!*KG{dJ&PX7<_tRfW6JpJs;Jr^spahj50KOvItplq!n z#9Dpm)!{4~A#um?=DXV1S_^;KQL1Fk$^GVY@=*Jfk!r6Swr+* zd=z){a?&euC7AdROcY`nMb2!P8KkwarSVBt36YUl1iY7Cd2kFe3d0kM5~{q&>3y;! zfvQd9H80-6efR23XreRct%-_RDaEJ7MJD30WzD=gG_cC$+F&o3X{LW8;K1?s@X#u{ zBYCJMPh=8;XbSjJ6Dr8gTi_<|$xK&2BkqUexHO^)duEGeM8Nra?Hl3p;HkT%AU#}x z)egm@efQan#W6!z$s`{X6RK3!iBz}_Qe)~Y`r#fO`>4#_I4u1sb93DQO26nFUo@u6 zh5!y!Yo4CplUsZisAmYq_U+KkNN1`hZ>L+fiOi|sf95f`9R|$CV@!_J$>_vKHYg^< zIOCVi$8UZ%76+w-vy5U+9tE`9J7XNX_pC7--zg?MPYesbD=&-|fp)1$Fqo`@*qSZ+ z`O~=FOE_7*3gLS4$kknr81iFoI?lLT`PE$Ac89~+Y=*ZEWyIah!&?U>IKHU0=S606 z%HY;jBqn1~z^`ZHT6Deh)@2?WJc?gWyc!PwI2UaR*Ca+E1wzH&$Z!nN$R5p?68C~X z34{)Y$pD9w8*V6HHR>|XVKWA!LLO>M53a6ne|58b8qQ}YVVY6#S7gFdiGAT0a(_8OJv6>;ExEc-z5xV)Znz3mE|9v@#`O z9OIij{M`q-Gc-iQeS0Lx(@&5TvJ^EQPJJpiJIPv#F^H<~P zG7F!@7X56fBhIRMbS)6aposyAT#n-{p5^S&07|0xZNY*oMa*5^|K)YrbFt05w&VSP zHtk{+8UVI8JqpQJfCm?JE8akQ*1eQI(Z{zW9(>SMw++UJ!Nwc8Hk-mvpyvq zeex;-A~=wpQnwDmXs3Vi z2I!gQswLrO{Y%e)4JauA(xXH5xm63(J;6f?KCMS9f@?7F|XQ(+%ZC zRBR%lsb2(FDf!7?KVh~3q0!mMRB%)hRe$lQ>VPPT|FzJ&5pcbVR-$~#s+3T=G)dU$ zJRYt3$}Oj)GO-_gnE||=8T9%KT(d&^ncse=c4A|1#?v79`~(eECbVyMeS8*MYcm?8 zva;FHHeSmS?|6sXrrm3!>=%E1{S&p5DN!F2PwvW%YOL%^0ji3^6Gfs=IiCn z#?5+xH1Im>*0FU@`f(@ho6#y#&d6C*`E2DBUf)Lk!^KC7o!yKj;H7C+J@Xs8LzIth zETi>;mizim$*hHgpZb`8rjwq@`h26XuTq(|#@l(qC*d2sZh?2bI+yEn`rE2(_V-hF zH)CXo*c~Sa{zd-+t#2x$4D07fHKUD6q`gvdgm+WM1U&%JojA2)M)MyAT?)_M0=w-X za?%xBHBblGEqA<;bp>2u*}2HJnr^XD!MNR%nINX=*iwFUyF0#$N`5yUeWiCDV;rhJ zoj_T^^Q#lkUEgF46Q78q&FVJ3zhhcw>LSl24-67bcw#D$9;b9da)c>xgvpDfG{_s3 zzf7#eC*$rluJWU$PZw#nrI?jOHC!7s5B5sfALa(1lz6Y2y()Avus9teF5j4LH8V?7 z+p1P(gIa`9LGK@q<$Y~}neKL?j6Suh&@O|H`U#K5UI55iMmyN28d1+-Ry+GFq}uup z1Nid|L|#7F4LJxjnpdsgoQWH4el9YJUCrE8*G=~0X48FA6Xyi^_>_0K`+zIu_9sdF zl=bI)gqCBqQrXtFB&#M?myu99;Xu8KG>ftdYR^e(_WUj5n2!66LKK|uh1X-#hQ~)Z zV-&mr&YG`NUk)qcu;q}}jCq*)6z%rQbvU3?l}tM4wF>kb*-=~!yDgRAHGyX;>cw!K zmGVEL6-(ro8!Rw>DUW3vA7MN_gh+!2Bix+UwdW+wb5+M3-D;E^$EUnpzJ{<*N)jwe zz5c4SqV$++TF@ovQ}$*M_^|q12P?g$9Qu(^Ru~3LMlxw&7OPaT*59zy*3X$Q7Wtjm z2Nw2oD?(kXy|L<*;s{V&nd4+1be z;yl*t%X-0$TuVht$$!zuS^hh~gHRZHVZw=Lq)Mt=;^s}OX#NBu@CQ;@iRI`P`j%;y z2x_GtsdLpU-`&e=$b9Qi=JgIrDA?Dzxk}r$tN>63ZdhW=j8~ z0wDV9Q76M?Xf);@ahPs6ggG0p1zapiUC6Lxw&(gREK*9xRm$5~q84>-T~U{A0E14-?yUSH~_)Q-XE%Sfy?@|NSk1qfm0D z0<&W6I_pC$leJRkX$2Ic-sNq>+YY3$>Lukxa;9Smpfw~D>rWBorfS$jA=G2vA!+pSOHk*ocqy=S2_tkIs4Mp0n3Z)Kj$fJ89#1)rft0Fj{VeeijY; z^C(V~5FvoG;zl2-ASKD7>M{}V7r6ffyW|H$P}1@)>*>IozVQI}v3u~om^If{p~iItHM>NZw=14XmmPVQXvf#dh^L#A5u^W>D`T zR!4o{$+#+^A5SmU>gc33CTpP@498fM0D9?2x^4seueC~Me9zS)O~y4kVw+Ho{LP5K zdkEO`;mnA9sr&ask81+r4Z;39bTPq3^SbTHbu4@Y8MSujM~#Lc;X80+2~L5 zKjbuE6&Laxqe4yV%^pDfKL;%k)jDB+|GWz^y|{6_q7~nb{1-w)4#(riBP`lTKAd?@ zqIT|$-ceM5W^X29Ohsugi?av$(b)C88@(i6Dl_a9$UKIZXWGGY=1r!RwWR z1RaDUZaTi8nqg>l85zg_7BIoD zE652AQmO;A@01GrBYh~zdDJmx>?V|2*Y--g>QwhhVBM_`bbq~w3vvpgksOrYlD!PX zn+^|CDU#BX^`XAfi%e=39;;+!PC_FM5d43%y=7RH!S+53h)M_&(%ni(cXxvz(%miH z4bmmjpcr&_Nh6(tbhmVO{bvK7bAIpl_lwu%cDtXMd1lqU*1Ffvs>B0T_ARAXZ02dG z7SOm-H@AFhc`&QX`~%r*X(M5MEAia=Z&b4j+u}$Py;uSdgKZV`rmVUmT=i)$@vr519~8`tMRsK$!J?Oq>Xs(PbT5lli}Syby?OPL}h z$ZrZ1IM`2y&=8?b4O4KvQX&LFr zun<70a5DmVRDDY9V6likwxUwGo8FGKV#zPAy!pNlSfvy%v?u28r>Lh`n5vPS#cwG! z6?7g8RgSAI2r-Wy#Ri}ojOs*tPS0FgZb+Ths8>Z7kC(*J_C%D>es-Dd>bA)r zS;_i{R6&`SJ&}nY_0fo{5fR=~Q0Qxz;H|r4gcRq&XtuVUq@wYyAy zi?5OCaed&aZ2x%jq~0}Hfhz5E8Np>prhb5b(>S)Ac@RN~sJ{`5HNtT6v9 z_2+T2s8gX13Hs~2b@CVPHdRYqqV^t+zfIE563Gr$!koJ%MVUvAi$g*f;`2!jPng-) zh2;VX!z|Ao8+iEBbL_oF_YIz=`lSzNj7eX|f9|c3WG|1;D$1ui%;d9#vGdq(`Fzkx zv2d_H%$`yi$bZ~0u~<-{zF*uh(O_lah`L(ncihF~z&9Dn`N^o|YrEK=>4RyLb_G27?zlRz?w*_xfcg zonmOO=W&vlZPU%x78ic>RgMLVQwYppIp^PsUb=pRcZvC!OwRAcp}_asc46$YgKzFN zA8wsLD1#yPhA|INK5f1lNZY}w=6s?nggtDA`t|yzym+7V&W-jhm6&(wRfuXu$ay0f z$j7E7T&Yvo2*phr^Nl!M{?`4}#PuRq>|mfa%}7RGgwj60Xt>-!9%sK-{9t;Xt@ibp zGKOgq<)n^;OS(hDl`#?r<6C8~%ZAribt10^mwq#kb)|nRSQ%(bOG;4C*mx3fu2&y; zn^xyy;Qkql?QNm!nd5LrD*pSL)6W>V9tM%UpB)kkF`QJ#CXzQsZ$sZ%bbl_Q`%}@S z&VA_lZl=DRN5MFpko-1Zt8g>i(cw$$_>PxnN#N-2b}!;+2|vq{vzEk#{>0Vh>FS41 zsOD;Tm+M@vX1~te0y=oah4!A4TWoeZ)(Kzn-fR;lvFZf`PN(IKIoW&(q*=u-C=xOX zN+E68jJov5tMk;+nfPh+Sq6V-T8)i?qc=Ry?+HJIPKSdPx*8@cFYN1Ng}hdAw27lD z!!gue%$bmO$09O}HdoHcGCNhyLp`U!E7JchaADqH^;1aCqFl{s9b*@O5pEq>eAjA* z)BRS0d7iS`yN9|xlydOkSg~B)f;N%vHcON{INBOKZUaGNZIQC%CCKR`>qnZhD1?8OLtc^m`90=Wr#~AvU%q&N zeoR$*waF@<`B3%BPlZbu>4&p7ql~Z?0x|8Ye&K&$Ln0 z^(&rsbSq}X^>5puRx596 z7PRztnT@p~O3quNy8O%5zep=QtoM*n5*hm&%twjvy&rn`T*nI+=Qqe;_Ch1>oqlvf z^=h|6O0f6?4gKM93hJ{Cgh9PNc>AlwWo!(uH@@n{n3ilB*N+hndr=to-w4IS_bw!& z8xM2pv1uX7_&b?`rvFdBQ7cjl83R#{dpfkz?MD!-MV*h*E$fHTlq+|r#D(vQVQg?= zsYfhry7O)}*QA2;o>;k8kLc08dA1+N?h3rR&j*H=dB<6Lm)h3n#>jzuFGtLW`swD5 zi6vTx#w=#~SbMhCk||f62(N{|KC45Bfe|K4S14>);DRF^dx3)gnia3gv9G%gk>MD_ctvuvzSEHTiO$#_4}5f!BusIop*~;2PWBFUX#h5%OEaB90=xk=x$gm; zAR>HN+y8AWWkKsy!iZm57LLI>#;EodS_>|3Okv<%YzccI-p zzS0^hagoPl>F#CJrMkn669k_#4~tk{KG8&E>_FVe^l_t$`{Vym{<%9j(k3 zodP}Fs8(`ul;=pQ4noI9o47`-E!P>ceW63ecF{+s_WYnDvA?}h|2l&=b5kL<+e}?451#sp_9w)As3t*D%*<5=vX)Rl&W%FZz$Br z{_*Sk2F}KFRg$JD)o;Ds7}UKe$%K0Az^~Ry80QFqeOr%m{pObaQadyujHYjA!5@P%gzskK_|AFzBN0WMXmP z5mAi{%~Ha!{8p=ty=pTNUha1`lt5kJUA6A!-OwWkLnj#DSY2h++V`}uf8a|ZPmJGC}v18y`QZcuKj|A z@dXfyEhOzD+#5GEA>DIe*J}F!(kDh zxKm8_aKAyNK{!6AA}CU$!@Rarlf_9LUZE2xqM4H~7M-keCXn_rns4&8JNm0oW&Y^VBMM^TCc3DnkQLfg!V$xKC&;5^#=wKFCBwus zXZy!ffeZt9xtMgDpwueNJ2C6ec$KH&mfYM zTJtn0diY&bU%>dIWIhU<&l%^mv&+kruXrRRB&Dv0#!1}H)?YsA%3-75|K1&qJ*2hbJKN2^t<Yr;5de1(xuCN z=5jqq61+d@N;n%i)rs0Pe5Cs~0Z$Q~l=Lc!=OEYtP=>i3{r&i!9w(MehlL0H2b*}f zCW7DARcRTMY6Vn45?sHx@I0*Vr9KQO@T`Sgy-KSYT*T0T%h%J$On+9c@y&V(oz_^?0v$Q6OX|Nhl$ zqJHJpuc@8Er@ddaExLq+MDzzltZpD-6y)UT)hQU z!}^fu#%KWzsJWoU^Iv=kE>t%;^pn+>vr|&is{04V7Wdy?32p+UKC%pv6&7P|&m?ss z-`Hf||I2I8;AZdJto3jA)G(k6VyHlaeSIV^!C`B>BsQ zXQ^b6LQqhKf&!>tVD$7!{w;#Tm(ieI0#Gd(b;rJX+!#!8f2!R`kgc&-B|m!jf5?N_sFw4Hvmrpe~}+cB!3-N9w^&&&$9MqB&*4y7Jz=EhzYxzFS+C zNi1eD;e@>EKq1Rg-X9csG(Fgm$L~GZhcCWJZ7SAlCFkN&Z;v9<*$Y#Rfh?nnYz|j~~`a1H+ag3*ij= zHC9kHt6tdN-+bSqlS&BAiG$a=?jNV)GhZFAbJ5E8bJj3+uuq=EAUv$=iVBeN+@PZ( zK7<55CXlyp*NViRD1Z;_+@5CeU5EG^1USHws5sbDIxGs`4+)kagnag95`K`N#ATOw1~n{!UE`h@ z}DS|D#uR0boz96Z|0}but7yQEG%s2e6#<6mH0Rpuv@xD3F%2zEB^14{30%rNu90SJ#vj{V!hzEzv@Zm)mCHeFjf5Nk_76iR9X%xCXmuB;`uf1ug=S6SVGrjRD>y9;Fxqx$q?&KVrI6=$kt6c6Vjq6-)ynLsm85{K<~V5}3qe<{m*IMB}!9eRyi z;(h=3wSXqT4@qC3UJ(-n$k0;D2gL5|WHrQ=*nZ@jK&I29QnUHT2lLDq6dc004AHBX zOL%yANPM_Ec^}x&Sn#u=p`YR&5OT!Ax&tX34x9O!ErcmZ?!uQz8c0CztU7WyaBb?) zn_5y(M1ZgU3DhWuq@|?=1Oz0~^=D*c!2g$KX5Dvd zRz7ch1$DXyEr|4Rni}2ip%D>r8rC)Mw7u3T%x1sWpm$vEHqwI@vjb2$6)%BWX+6Vb zKd|{HM;LXr&H|Fal=YdLX!G`d)e@SIMU$hj>Bvmj^L+3 z4!S(*JnJHM`DyhnM)N?Z8sswmAGgD%AKuW| zxZ4N%k>TNL-@#VdKsO+g{gNf`(sXiqnh^H7wzICV@x~2@(=J`papYa8`3N;xr;P&e z?RtAEV5(mVC5`|ZIzo>|Ag)}Kc_62>&0C&N zFVNA+_V@P{e>zzKo?4}_K^U`<+&I@}gaBCQPQcRI1?rnAfb|4E4Cq^Div=-FSkZ2m z_ZKuYv}I5#g@%J;c5wsoltHu*!I}e#orge?9*?!>#KeT%d=oUYHt^@HEH;8{jtqT; zE{pdBs~4|8q+lXq45)T_Yn3S}D7toLem*XAM_oW2s+F}c`;+~#jELKLC-%=DCFcIW ziKY`J20>;-Em+qbsXXB$Ba?<@6EZ~LKA2C7GgbmeI>k06RIV-~D=Vd>Iim!`eVIF; zF!rsVzkh^of8RhY8z-k4AbT}!hg0dIlugEVnvc9;xR-4}9*rd4bsr~zY;5+|(mbD% zO%JlQ;6J1WD!)IBw>o+LWvBQ2Tbbv>;M%FOuh%XAnQLS@2gOD^&E2Fe6eF{jB0)3e zGWO5~xNModKX)58Egx;0+Mv9Bvb~PaYTv(s-oKRby(yAUWBs%9EaN#>V_#vjNa~pC ziu=iy83wC{W}f|Y>dKqOcgl}5HPrC4Q!)=db{eYf%3o{NI^^gDb7}Rcq^)dh*0Ok1wp!q zL;x9N06cm+u(eEvohazv_JNGE91b;HY|t2t2+l_zZ;quj5f?{B5b@6*wI0j1`NC8C z*@4rzYx~-KK26qmwuor*8}xjPs~$gjPH0JM74)14Q#DgJE``w`untrM_m@)d8G_bf z#VTv9x0Ik%|LEy?ar-wS@7wFDva3p~DVbt~YxWt~A|E68>$Y*-cfZb*5^*esK@F?r ziTC9;`$UCB0*lq;A2s=%&zN)?iHx8lWkPklX$evuIogo*#Z8LPeXC?TA@O8sanW!) z&7zN2tHv$^{tP-VF%OZN@A-v~QNGrE0N;-raO-iTab5Ipa37*kMzojT7Nch#Tpx01 zM@Hs&995@$7S{tqgApGiiM3F*iIdpa7w(`5t&h_Y-C=cV1S-SY%E|E^cT$2y5kowK z<84{q)He+z`ud|7GZih0nFCuWnol?ArWd-O%W3tfSGP8vm>Q*QLr8JE^O|f|PdCQ~ zRD12J!n`bw#IoYvJkHhnkW@oBnlar~npuConz9;eaSj58)z{WzoiUlOdloYUrF*Z> z+z;ohjTreVu9x!=xaa1>MZh=b zJj^EuN4oy4OQIYUXA9 zIaPi{_|cSUc>B-!=Z2%4s#VcSO6qFHk(jGB&A7p?8oGYz)?w{1>4h>E^A3=Ab$XpA1= zCIpxv_g#X6e)cZS6KiWBm@W#EwI*X{6B85T+Zp%WEB8r59Dc95Z1^;qLvN0!Ij5-<{?y_Y^h6`aXKf1p|{)2UtxBlAyz4D5S;usW{+a!{1yd znxT;gloSU#kd%j6&X%kFnd^Bx?=v1qfyszC7E&QUkHWxt{O7F!fs=81Ix?}&)NgSj zf*fJp$YLAbU?S$Jd9hgO;#C}I0~rE%Y9Z=J9~;K6|H zq42}*?F;g#B{3O=PRUC%`x}4gYJ3uFb9^SOBwGH)d9mr1C#CUi=3>*P`#l zVpoB@lh)T`;WCjq*nMIdUXiB}sLgzEBvCG!yb9mFXi50-e)TO8<;mqUNnnc5790)^ zk|a{@M4(tchH1AKKtaABeFM?B%Q4cgCsHW4@xgLAnoxp|g*Ksn{=#?W6l<}YrYnKQ zft-7>Gn{F*tuyKQSCseh!A>-^fW6;d6ood|0fQO=ZZn^OENs{2ws(qp_`tQfh5DAWa@g$`~24#OqATQ`7W6{IOnp2SyX9LMOEW;FDnCN4Jeic-aBT#!ts ziM5i`XuIj3ZL4zlGXH9O+OoGq`!+KiMTn3j-}4PNeZZ4#GG7)HdA};l8PNJ>K9z;; zvfqaFV+S3hh8}jrhvx}vd=9Q;R#W4`$&F3}^%2ei4>(#Ms*Pdij9pb(_TmSeiPcJg)HPg>RYJMIX z9BitZ7=Zr!dBJn9HzEoFmWEl;{9#ubuxm~1&$dyo8xQ-r`;{UalAZ}9*TuhPULujl zzR?BEf(eAYZg9zzz4RmriHm00PFcT&${rg>qx+frz@IH>h^Gt7VEiU@Et8AXTMSks zT3S`@iKlxUk(>!*lNk=YeK%PC{xvS*+GRts3q4izHb=q9!s#?cLvxVACVrrPecRi5Ln5Be)fM8KO^=0SdtQD8e! zGx;A$=EB>lq~k`CAD2lfBB{g#ddt_&`ys}38nk^+W=@C-X?VrlPc4x<0r)}JKJI-z=TS@7-uh^B_rDyXkifTqz=!Ye| zB$wNU0$K`d&HblsDVT4LIxj$5xul|BQu=TFPu0rwQl>F1wvOqZ7ukSbJtkT2g4((O znkR;ZL0pOVxZbYj*WWZ-GyTnM``9LO;2Ch5UnOsGcCDcw#>Gujm_?%`(1hRMptpFw z(N9b#A69X+IBpGFru)%gz82G@%4(@_%%U3n)0iSzVPz{?JmMtoNR;3$Q*t`=8`3d& z<6K7>09t9q#I%tg)V!K-Sc}$(+@wrP2?0uf8431?LJ6$~Rdz8*fUkCl-W~lxe?EeR zF6T}>`IciglrEWB7}|sn$mAW=OCU{PX5maD0+iGSFjXKvM6k(B7qmzUPg>?(08uX<}ZoG(XgcFnYr?w5Go{@@ye@nyz>3vdhUlV5#jLE~h~GX%3C z3{u+gW%(+by4lZseJPH7_pY)93=YXw#&>o~Dj_ zkA$Uv7+VSXM8?r5*ZN>d{)|aYdm$N0V)n<^r^57i%Ln>_QE2t0hnvNT;JZ~U(y4%z z_~@yDFQ?tSYzfJ|ek+2@mXAX0l3O(J)AaxnYb}|l)u{s7Za*y7pBSWKN-0|d%X;@S zhDb2Rk%_Dv>NNKYG=&8=mI6RpSRUznNJ7Cp5&;4+Q0No`zaSbP80hz;KBBP3>#OLP zjhF9}i_i3|c<&!NheCXd6$W{K4?n%-4ckj)c{}$A&-cF{{yPW~*zkarZz)y@=8&&9 z`G!M%&xd>Q$6T_m=FLZ@y>~jJ+Yz5Dp%wWG*b)@W zjAhrJ$A9Qke|vw1uV8!e85^pmSoHSWrrekz$JT_>DFh4G&Io1>Bylh+Aq z{yUdwPq;)%+RNgK_=n|{qWS_&1_{d{ZO@8D+Vz%OUCC_sKg9rBiV01orxun~VSIns zC{(aJ^{3j9w%ccfJREYo>g*4fBv4?KSeKmE!lqpL;Y1e0o4|<>gMMqzRQHOVyH7dx zP>P%I_ZzdsS{9>fj!o}>wKxh6;J{)410(}uM)vqB4YM9BlaJ5i)!HU*iFK2U zuVH>V-rXr6S!%HHbQ+XEMZ|(GNjWewA$4N7pyA(wq76_O(BciOKOp_P+q|$4I2I6Z z#B~t5)7G0i_1^z7czgSh^+Yy`vI#uA`>sz^J<{~`i{mEt=9c{Zvz*Dea^?*QMY0X|L?iT5bpuVwL6i~z;L?S zHi@Gr_fAhh6)0F?mk>gl9#e_LT8xAn%k8Qj*6X*ZUK+X@BJY&$W~kDhea zpU%>N%uRn2j&j?7j)MRW8@`9&v`ftFZi`=pzaGCT$dLF*3b+)Cc$~MLn(u!67oKl= zdb*2qQr6`Z4cZA9Npd#<2QsNbW^XiKZ7K3C6&-pEhzn}CRCGKYd)ZEussR-4?4`cF zyM9$3`J8}D2{H!>==%_mm zZgvaUn{3B#P8)9{VkZLc-uAwTZdVM&LF;q=PWu5~DhjFCV3V=Yg#X-xZMZEAcnv`3 zPzR_O?8da5+wkWBqO%kEHp~0=hH>)>Kz4=w-$ldp3FqD}0Gwy$93?P6Izu|4TS1(F z0!-+Mfs7$Q_i6cn$gL9q!i#Rk4tz598HcyZ4skhb#2=!Y0pw<~Q5UW}3!oeuPaq*- zsipdD2tnHbrzA6~)Vn*#I+StHt&Q(At_NhEmlGr`mPQJW4Iuvpu^+#XeCtW|K*HYX zktWDvZ%x-QkLX?=Z?1JqWOJJTd8r02SuPit8WT=q0esS2gZ;jSmkcgF=z9^5plf>~kI7r6d1?ShU zxGxMQzq$9^^Ub*jTd;{bPJP>HftTrG&mT6Hwzd2SUU*z_uRuKBWDhyQ~d}z7i&_YIH90W5iW@o6Jbd z9}64PHD#$F*Vm7aLi+cEMKb$)ZIR(>%L%(AZs$VoXSU1Oo_?|eUw8?8pIP8H`!cdx zO)3Fmi}=+(i3=K-k9lxEvYHf%ft^4f{sBxbFdsyQ!iJKlyb1$XuV zj&yJ5=OYR*fvEvBed?B2J*Z`Dn5UR9<_DE3-*L%=vdOi8pew9xif~J^ibmT27j@nVu3Fh^$x+v<`6lov?$LH*bOjLHPN!247L z@hPbzXV8Vz;`fcLiXY8X(=`CUlFyS$*R1f8l;R)-jW~1TwH7B!Mo3R0a9O2>phz2% zHJFtt93)LXJ1Xbe|2gL|1H@W|Um6>9Q!IyXK{{)i)%+$kT^N~@+-`eA730!2$sbV^@A6fDV^Mel7^JWd(5Nsgwg+-`Wwj(T=1iCkfsriO?-DNC zJh7PoZR_jeQ0uNblz*TQzML_7^H0uo`@P%Voxk^<|Uk68>o(|g|o2!#`#P5~r7JQZTbUVLj)h{1YgA}kC2 z36y%orr*FStduwn5;7W7V3ilQrp@lVIOtcBfn-p?i-4_?>_ z0W^!=#dnW6yi!c2@Fs1Gme}RaiZSiY;Jh(A*8)X`@h7+>B7IxaxU#4>ilAFNf%+Zw zPbL;h_GugcsdndAw4!KX)qg*vo&qi*5rWmeoa7d$2Zd{Y>}=DI5c?K$tEQeOLdoF8%$ah|j`%XxfOwYXaK6Hjd$1%k2< zuaO=9(!VU}l-c93%A$&f^+?@&OUAG2CiK@6ZVe>Ds8A?bG9DzdqY*^4wmG~)v!<%$m zbZ357s;^HXCvY(QyaGNDIToo+z5Rki^b#flN06#cnQEHyGEwOuGhX)vD7eUQDGf2E zj|aj7s$KL6`s0~o7~yZ_Nw-zM^BER$FfRua)4=_ToF~4&ABGq(xF1FyV=H>k=bH~r z{@0h~fw?q{3|{pYX@^s|W)K(N#K83UHP|GeAKahi%l(HaUn(6JmkcR-;e_>>TRKm* zpdsJ)8`m;1Z<$AKXMLTxFi%JVh}}Llbv6$^Sq(>FWibYHW!``P?r0%}lML|R)-iwc zxT#s2@r8_jWc>|q5W=oPUgKB?TN>sPVNg8>Nb-JuFPC}QdORUMH4gX-NJ2IMMw6Ty z8d!%__%SKp!cy!_-9VD@c2c(jZzpU!LLrADVmIg%o{hyNFEtfJOp%W7kWZt7USlO_3Ee4PRgU^&`%wnnY z%w*A4EaCI>72!7?XhH_v@cV5dBX<|ZmzShTn!7>1ID1bp{KO%Wfc-%`^T9GL<;Hma z=;Wr`{lrPiFjA;BCCc?@x!2D-jtWT+uBiG7q2?xVQ|nC-SriYGhbkPC;MXWfaUn~1 ztplJUW3equnLf;XAv+1O&S@JwELtdJz1TR2#(s&I-xoG!emdt~lpw$n3L!HEw{I3T z?sOt1e+K5Xwvy$jfjc5wYk3I)QdB~m>@c}O#f%kJ4wU-X7?7$=0vsJui(uRE{_KZff88r1b*q4$pN^ZW!3q2iN_C-29$6Gbqbae>nEbdu;4PaEkg;39Tlp+w_t2unq2?HN*+=o z2t#5CxEzBwB0X6oOa3&Vyp~WDYO#JyfgU$3&p#up#L=E;>JLSUGN#&ct*bBm-SE4V zzEoFYBRb9N3EdMu5m<%SGi8gL^zb|aRU@4*uisdt$H$*}l zK!Cvr{Cby9>0;X<&F~K|xegP^cU`|B`0YFA&i9Vjn3nLuH|m4dxBoalP2`^wIAK{Q z-v&%^JnN{vM{@?qe3<+^>fAq-z8dhaN`Tr@uGunrx{aSI>#df4;+(Xjh9p!sUE zAH_iC9dfRvexfRxdkq22pZQMvK=J8O?nB_IU;jz9@c1`@x(=h>Dg#5{NGpEzxt?B5 z!h4VP0Cg0L18}8MJUHL)?zaO4j8Q>pLeSCH#PEmo_aHtqman>aFq45z&=EfM$uesv zXt~4mAS$zCz4jU^TsGi#-VTo~TiC2=iRI6B@i(8nIzN=Y@i^B~YZiJu!=*{((r_PX zL{FhqgIXFx;5UL&qoZjyhlk^ac#zv*m(q{)Uk;Ql;$|F?DxXJpKZ2)S^vZyYcIoej(Q*N75=Yj_{vFr*Ik%d{Oe^ zm7?M4GKpl=I{%1CSLElefUsH=`rt$=GZa<{ybgW%71M52zo~LzoHe)7waqhI#*e;r zz*m(A)R4=M zR7=eD4te0ga^F^*$~NZQG9ur^2SxM3aL{jO57;Yza9z};)2no+PPBESe%JP(2= z?2G&C76Lp<8W8d>1CqpuTd4d8ToY)R1mb8aN!85VK5GiqO!=89bOg*vii!=(7_kU; zN#6jiQnR;SYPBqaXtB{rci2QUIx04=TRE7!s{v-HntBy-?mwAGyj!%yBVW&o1F0Ws zG;&V?Y)N7RS6n>)%|#+ns$o&nP~x5#KA1nEoIDoPNWbtMeL*LAJ?fWW_cM zLTf)K0X=Bvsb-*jWhf(RH3*V300hSvrFO3l)k1vI(u|E#MwKVQWku9|1n=i#HCs1v zZh9Vssvnz}_}8P2CuA{^%1Dq@Ov_vQt69~0k6I9zU((~W)0@>S9QtPCW^Jqq|14)) zYVx@`C%fCF0o)ch444=j=O@{-^7kTyXM*x6E=*9YRL%F}r;~AQw{AyyH&Z(7oq-dgp0r=@3{ zGng7a7nw$>I67G(Szfi$*BS}v<@2Xwuc4p>pd>{EmG0{TAgV?jb??!>f#=qJU!axv|M?0??}&hm2d#t3RSMK@Slhy0<(vtD z%xrIij!<9i%)D#E7oDKX5XXkN2TS+>>S4o7`1+(}8H-Pi8k<8b4})*OK8jFb9c&1i z(HEDJ$cnQ=)gU6%IqTx-Dk56M%8yf3T{Ubr^8)9fw8;oy#7y2d9uviS{;{vM)WINZ z>JEJS@KonnSGz&Mry1@!^UNThe-0w`W#G2O1HexTfT3D=bn4~NAXRGmqAT@d-vvlY z#{!D`PJ<}k_#M`X=5e^Xg9+*+Hg-;Voh{to8Eci)6dgqBEVT^JcMDX1z756dqZdV> z6o0E#?eUZ6cmW|tqayl3=IV;Y@zXQHdbYlwZ;A!@UMa8$ZYa}}YspcsDB7m0 zai$<|P3O?}A8|Jdgvxe?f0$Zsi&Bv~4t>0`+P_kkqhc|7cZE}f1OQyJ984D3>H3J< zN8FH{*2X?*8335t=6|wDM8kHz3_k8c4bTUJVk0$6W&wx0^aiLgVbhxcg^$#WD?h&y z$WM+V?_AoUi9EeLTw85t9Xo2n(&>auVW&|kj0H5i()Dh~%lx0D{&Rd4jFCo?AUI{QY(^EOlFquq)_OikJf zC~x}+;G8juaqZcl1^)a`3XPV*Tq*E}a-QspJ`&$Zgf}i&5%A#OmOGh=g$-c*MBGWE zKMWjEL5sh_Xmse4b5)ld-w(q2^yTxSaEn)3#mI42y%a5etsd7Xfg697wX|IG{%it; z;hu0sy6U&HjQKO0E3TTY=JV3OWr2#d5(j6ibTg~%9wPoCHRm1_dhv9e8_cGV{H4u2 zDKKLRk4_iu{>I_JBhFw4Hv_nuKyok0FTL}9Szxpv3o#t+f>oou7UqfCm6wgI&eqd0 zYpR5s1+HCyNWkT|0n*G2VA2_ji~)o^l>3gx70g;DFuMe}7k(Flve>65(16H1k&GSi zR)^wi15*rvvgKNxrfoaAKnCu(!0n3C{-ZA}8>EE{K!pgg-<%osMfF=-XG9r%vL}9r$;wW-6uoYwWG5x1=xz=-0|=UqzT(>@=ekPVi1I z;bO$?YD*NX7-R2x*Q>wwcK8;4W?S!Zw5?uqbTl-`6zfOuL*Nomg)hEYxOBcRR32k7v0?_56A&nyd;~1`c#-h%Dee{W0t?p<@dS%=o zDh@O(iH#8PxD>a(KR;LjMe5j&&&tF$RI=X)8uzEZGHpGnlDb~cN{ht(v2BP9EuQOF zwlu%4{v}$y1T9~0iUbxpS5bn`t6JI4EL9TwbEas_&oA0y$b||b$)}00#&~Mpyyg{_ z9JiL<8+>PYYyF8!^n^xk!u!Lh|ARv)CkRT9{>lN5=vPuJ2DMTrDjggaER5X>JUTg& zphe(WZ8Uv1v9@KIHYkJ*$QPVudq2B1=}5IfwBd?`eIxT2;f0OSjf=JBk1n^P-{Kjd zGM35V?_hA+Xgd<#N}x7-CrFQ^1E*!ENQd9q6%y+XduZ8pQ6QH=re>J6sk$fex>vSR z$~0ZsvKS_E`B90`(M~65*SmG4a@ymESOYAE2cYZ=<_CY?%6Ea0*~<-=JLtj7fG8LL z8}~-`k7W>jJ5BQTQnxa>9ht6WwX?FnpVb64n7bY=pi;Qm<{hM*xbC2v2K3H|InS`4 z)GDZ#TYk(Xd>qX=+5V>j6a+(B0CQAJ^m}WSUxHaLjt7^GDH*#fap?on(#uueRT2iD zRrwvQR^WILmA9hZbu>uBRCa8nzI`_jb^3A<>&Tg*6dV7yqmiv^k7%?>{2K z{uE=goTNCDh@*KYKvV+Zr3yBjvk9 z$0ly)pW-e&V?2!Ks^X>B_0KbQG2#L&yiR@?rWNN+B}CNrTWyF<{G8KIsxZxCKFxnu z6U|d-@G^tXNbp>!;@#YJg972ELYt?Fqq~DIt->>O#I;Y-Q?VbBsWv#?Fd8XFDi8C& z7)zYYmL zWY#ljaR&nqes-Oe8g=nQZc@W={KBa}$_tnnHs>8paRyu#)A?Y$bcBLu&1A&Rz@Lu; zM6)xWTSXc`(yHG9IRaPYxi?ENVF0vF*8I3B;=$?M?G1YzWhZN*|BZkU1N;@RuD?={ zgv{ZTp&5@w(C4@}1oMeCAs`pGHW(J~OkXXIqPYx`piTkHAlnfGGT0nE%x+yMEe)QR zwUwUkU;cc}Sh{h`(P?a8wg^BuNOf`DsaZ=m8TeucL=FT4SBvF#H`o?C+rV>XJX#Sr^p?o`M6^? zH&-(q0jj&w$(6VKqk;7Y&QJS3RctzM*r!al zJN3>uXu`I-tX@zz^AmCSdYr}M(5aDw(be`KBuMSau_#)w%EaZoZk|ZedDC!T71Hh{P~F< zxB4@|mFq@GK6ZybZKaYSQY2RBC#AC2<)N>B*VRZrrYQRfe@iz&7jF_PAmegQ%(;;4 zt#x~$+Ko)W%;BU&iuY?Nj$XNEL`pT;qA8Y0TgECf(a!8(crHZ={iGyr*r^P-oqC3!IGeVwIfjP!Snv!%%N!f;%iPp^NhVWKPVPcVgY93vf zlw7pFvpB7C$E=LvRpLAM`kd-LPzR?2OLc|h9Pys?2bERyTem(;j~2>$k7mS1PBh!%&I=usI-0nyZwvST1S$l!PXF7SxZ{u%ma=zuZugt)!l@74{{O8#9~J)tT7GNHW4Qqg+F)f8Vpei9XCfgV|Yym ziL)|(9iblJzX&Ex&Yi7y=SG(-SBDVOlLdUDl6P8ryh*S6^?kczzG?2@UIru!ZwH$X zQqPh3!h^&YB0=OEOTaN9|{L+RX+_TK-1G0a3IoNmiXknHl_% zm!A%$SzUw&?0b5qqj0;27LZoTIxJ{HdZ^M~PNdX3xZ8QoG@j&qh45o#G=Zlz5KV`Hxf6XG| zej$vacYp_%1ML8K^L|v3xx{!$r z5WAOHH<~-T8J5P@*(K#h%zRs)sTkm6r9`TlGovKlRLGZ= zPkUbet<}Cg2nl~3r)a6Rde)NSLx?8_KDkH8*@K+X%*tAN(?&5O9GKM#= z;S7-u@mkJ_`OTa9odLY=zb2bfkL#<>$|4kXMCo@uD#QpqERu#Zud@e6pLin2n_a5p zJUQUyHP-)E1L4!OqvP62<_DFGTP}A-T_R=x&DpdZ!PJSvKWh0l5HsupS8Pcir?$JO zyCs>WeQL#=Ny-N&`=1V*qq1{KyJ#LiQT$Q`beqD84@_g4;O(1A3_7|&1-NFt|8u_a zf^*?)w{o9oR{H3a#@ibWIqq#1@!H^8iEJj**=wFmJ(+jYMxv;>U*ewY!L zA*)DMl*zAI5>4m*gz!L-WzF!k7D%i^dRZkv`ehlU6C46iZ!5ljO%f(fnVwP=QuTr( zA46Jb@s2S0?smKpxo3OJ$Snf;07=9*f-xa90$j4x+d`_pzcYH3>uIJ*{y(bzIxLFs z{U65#K^k^Jx|SB{7D1#N>FzEO0g*;x>00S-q@=q;y1OL=76Iw*@1W1u@Av*(*Zws- zJ3Hr``<$6`-;c0C8hcIVEuDR^86f| zZKkXe&ZE9-il;YJ6n#>f?51R3kn;FM@_cV2mnLiw@HfG=IZw!3H}zU~+su6z=f`PT z5lPcc4OZb*={1m)`OzyIZ&Of6wviQXgI;((U>jH;SV?yxclBIB z`7n8@HvORsW$;WuY9r0VRyrR~wh=Wjaju5Hw%+s9h$Y{_#`%ufvUY0}CCY!Q+R?{A zwdNQ(ulm{TE3w_T1@tM2=U#`y`=j6AZr!})m2LgjCdJnKz?!#sOJ`@Fwl@SCRg-VZ zXwhxrH{ek*TB!d3cDw&(qhc`px}z%cm%!;)oyc3y!mh1e>l9BuVuPHdmt__KFs4_8 z^f~ylz3dN|HLk%17o>HX2}OE!Cf?CD>mQo9wN)?2FJpH#1T!=d6`K6j78licY^)Y! zcb!g54vHq4Wh#`4Yi<99CrlIEcUN`)zTPPj9T!gK#6JX1IyKSgg%ab5DptN45%rSC zE|ep$W%PfaN$yKK_KY^n)H@?f>{r3yLdt;o54!F=nZ8+|p!+B=0A?XV;DJ3t*VrX6 z(C383+XD&$4FruPR0*D!-vbC5GKWr=V(lsmFy6b{CWtl+@1QB@Gx{*uo~Z@;8anHv zH%gNfCBUI8C#~~Rh_Y3QyE?q=STY1#hhb?lWYbbU3|lwS2=DU0(y z&;QgUdbjD>#i8ZRjQ+@M;ro8X3GHFjACAY$-Ak_+4YT=s{TzRR3q!=M>7adp@*8bD zXP+uvcWS_I|3qEt5Lps|I#$4=Lr|+#Y0qT9<7K|PyMTl#ck1z2nVNAoj!KyPE!PR{ zP+C3Vmq;Z?^7sM94ZE}JjV+&>)3+^#aRc};3**kbx~=S25??T*CeQ!(xTHYz@V-kp z=}FzA@naVW9(z|F@fqU_OE4}ix}B`I^Gp5>nAnn5@JP^k*K7`mx;>YlNZj|lV6f|F zO3Rp#+0$QZ{Zh4tM!e4LJnOcbAgsy+nSWe95%HZXDo#^oPAh^lMu`^)GosksY@j&3!Vx88A0m8gTI5b^CUcUz8 zu zEf0uo9}J;<>li|AlAsyZKe}@*@8IA_vj$PSi_OI%nfxYrqtY%^S89Oi$aOE?W`ZI+ z$C(=O=~R!sT1FKWi98bCfV1o~D!V2+x2@r?{iE-+>D)LZMu)%4CpC1Z`2{kvSZB`O zYA$x{65q7a_H zg>8rc2og66IB)Iv!N5r*R47c!IS$3`E?!?yooH|WjPh@h@$oHEn)VfXeLE^nR}CV~ zZ~*%}Rd`Bo24j=&3%(4p$41Ho%Da)dUO-0VgD_ATa_$Q47sUHAv@KXj{pocwYcT0T zHGoaz|Amm{Z#G7si@B!*z^HyX`OZ&am<8E(TwwT`iM*)S=(Er|bjlt9vTtP0!M7$> zW$g1}hiTN=)U7(Ov~nLdk~#qII^%U^L=cQd3w^eB33y)-3$awgoFsX9)@V2>b{J zG0YO!A^^zMbdsYAc1NcahRQMUl6hUEY__BCo|7JtqKnRW?4 z9I$NE8t#;}Vn>sI`t^Y4Q~+1yy1sJgwor>#WaMo_EQWroERSxR{33G{z{Wt7Np;&L zOS*M`lf?U_7?Y?{;eclmMetzQY>RJw4OExKEnpyFNy^vN{>cR8(}bT<(qgyt?@ zDzuN#?I;u!yA8t&qJBnlYYie{W&2H)B!AbQh;prjO5+49-B@9n%Km(>wZ;}GA1Hpq zfqb3RCP)X9%N*kUyJ+^IBPH%aH@{bnIPMd93q2P~pT0p-rm1vRN_BId)6DP zTB|x5?ljPMe)0-}Bcif#;ic`mg2U%3s71hhvDmThEx=bsh2uHrN#xx}xbTKsJH7mR zcb%pGk%j#EC`XK)3Hsi+@(QqeYvR0jRUlrwCuGrk&WK~5iQxZ)(*1YVKIq;f93g^~ zq_12lq4tPoupko)kk&SJ1EzKwBXz5l2kvbX%zE-$UeUnGlLmpCKUL($r|?v3aIcd< zI@4v9TUECjmX63vq;G{$1jz}w5_q{ylIJw-fec3S@dwlF8>k}e=aTfJbIjyw>(f<+ z$0z;v#{AROX<6f#hOZv7OV9!WG>n%l2*tUihPxr)0+rq@Y3*;DDN^l8oV z=8+SVezOS6He-?fbm2ZM_t}w+?xH9Q{T?-6O7NvR^9yGlvj@&I5nak3sYmwHB&Euo zp|R>im13yu$36P}b0CF}1E(7adZ3DTjQ36#wxxCD?N!oZK4c4!`JuUde29AvAJ!-Q z(^1)J$sXLdh9Mn`ChDU~+T&fGj){^hdbwt{18>K_^16)#K4e~u{ez;sqVjo$$t7W* z75npN;8xvff)@99gs+bk{rF=MrRT?9*1Qq*3XmmEI6*UnAPRs&qL8^n`vO;_{J(z3 zDm)mN>mkJC1UUb8mVweBbZK;F?dEMNdY4uq3y%ivdLh3^VQz^2A3O>QJIdPjW^xfO z>BC5k&=NxK;Pu`p!lBpW&^ISTTqDqN%HD&JRYEIj+u1@E`jmJew6+|g)z{J=ekn|bw7AOOF7BX+h(^PXrX%#e zw#BG3zy%N4d#-Q(l!OV9;V`y*ap}~M73Fk$=N`v2VfK6^60*^|oCPMW;_>LLX80#6yyger8%EB2im^96vR~8;<2oux;ZzSEP@bwQa3Y zAwl41+UT6g(*x8=+WvgKs+8#UPn|5vZ58fku#eJW$+*kr$77s2a%g+z-J%1TPIOJr zb{mC}6!~Tg$&@kJyyK2~AX7;8Dt#u4hLIpUB`UorOV>+k0vbQ$CtlD*bc=wO`#;Gj z^S1x;`xOVje(}2dpBDV%2KWmu;F;_Dln~)K2Nx}Q<&$??f0XPY+ii9;yM0F-0%2$n zfT!v8KfyD^Ng!JIMRY<27Xo}rR=gMUz8{@U=$gI}C+$ehn+jrH(;OMJRarA~!%Mfn z{Ol$oK9h%QKlCZI5Wj=p zxbG!zB)sovysWtr>i7ka0b->n+`961JC-;Jt}xOwRO^PxIC|375KPuOL}EIJ&oHLv z;So-UC0v_pUIP$nW3;->MbosDfZZUNF#R&Xwj=}}g))`G0GdQS4$a2ox`?Y=s}IB+ zWN;W*eN1(+w&$;P3Q*EFk#2zMTj~|{p3$!mS3~Z7{IkA_%>deQ&-SA=>L;jFyHw*K zs%zS}Net@usc%Xa>+BBzc#!@NaooxTFaq94w?Pw-OJUu(0|ai!3w<+>=z=plnt(+2 zPoX_iDFqmI>!-_3KW;y#?^`T1>vIXOjh1R`HMbaK{Pvbi*7c=+gt@42bpYJcIGwa_ zj0lWdozZPY{h@@v#ajw(a=n$KPu2~S37NiJnN`)xKT%irYPr5B+HnjZpK?nkn=CKD zcqM{e#vfKIBZFlvbR4o!+P%nw=JPLVY#i@*Zd&qJifkc|@GY)s+7gY7R+XZDGOoW`$-7F|aTDNK6+ueFz=dPRDn>CALCV``szna|K8yj4vl`WF(-ajZNLmz8 z@ps~9NA@2Tx*3v)gm1nvJ=%W@U^Cm;R|f5(lc_dpnfd~c9G%=C#^>*Y`oWY0*)+KC z{Q^*)aq+Z`@|sVHsdftC$T4TxDPG?O@o2OxsRXhS+SpScAFi$X^8ktG26(b9*%4%g zP&||kCm1Xuf0_ANm4%=~iCwB|X#ehF#U(PeV^>nQhY-zM1;nT*+Mb5PNx96PMV(AV z`Kk3I#LcSpu+8t4azgI-5+$1z9iV&@1HU^yJ4DGb0GMN5%2OoK>HvPJfU{Kzpq)@| zT?Fuk)M*Qvievr4;D3ePIhDgfi^yRAW9;-O)u>3?tOs~g6Drzs-4{-$Y7%!xVryL` z*8Pkjq~<&Y#g6Hmi{3bvnhphbW8)8i&f0c9TM%POWhfdD)lSe&v1I42k6vJZEldB- zQZt3Kt$DVllZG4JQvdFcZSkn`EAiJ}c#`QA&sC$>H%Sy;-VSp)lQCXua-f@;^hE5-DvD}MAek83XDruNfOOFP353l3& z6;YAKckUI^l`_~<{dpA|kx?nqI&PW7Xak|+|jz{}! zE!0qHxv4C0DbKAb)V2*H4$7+hzA05l*4yjG$VIWf?fydrMQLum$R72+n-8s+UVjYy zbaMjM0j#Dx&&e>K?-&Ky0D<+j8h`7EAU2X6r!zvJlyLzxt=h5Ds3)1GjLAV^hsK*CD% z+(kVn3UrQ>;(I`1&<1_Tg`(Pr&Yqse1k}uExPPEMk?|E^SnL3xiESfsCICn<3xF=E z_n`5gVFGj>1U#QmRT{iWH(2a2g{9vqv=iavrc_u$)v^>eb+}acTubH~BHBpS0kJUj z<@6&9tQbXZ4}NtBeYe_8v_4Y!E^9VYX8rkB3YlyQao-BFK<07!tv`i(L)HCSV<5OV zV$WQ?=6>>paC$NN6qi}e$j%M%NRS| ze(@1xdP9V6zgxc12Z_e485`dW zCZLOOy52lx{GkR`pt0v{kGG|(Bl(Ie6+yDe9brXYAqC%ylo^rm*&;$&0AQMuSkXQV zfRFEIi`Yau&?o3vwP&C_@HR_WtE}R!^3aLL!=QiRG$>Hv(x(+hxkD~l*P1v?mXc5HV>3Vtik?ceS>9}h+ zNXZQg>n0KAW{0vVsI{DnIT0|%yAg5jnIr&O$JyfQ_(|DWBbLocW7TzN*a>xOQ)`2u*caZF&WY*OGcCy8}_R}`qtQ4?_Bn(Mq4?t#vqX9*5I7Boqa$pAP?aR1!g|npDI!9)0o__F#<*g&&)=em zt!V&rB81M{S1d=g(^0dtrW9oHTIOr7`JGp!wZaAbS(tb9mx+YGk1ZSq`qkZ{;vhpq z+);73a1eAjrAfNbvnbvL{ZY-p3D-E0ki~b?>&}$(>nBIKa46lSt}@Er#G^1XDv<_Dmx>iYk==NH+k2@n z+D8U)R2c}&pvgH}zty4*eF6#A{G6NW-d+L-Pt@mu7%84e6NQsgOT-dVCO+j7fJ(cd zT7=4TD^Hv3$`UEjr!ZIhUO!jB{T7j4e+0`x5Dj~R=6`mB6J*QXL%E~yVA=RwCOi_I zAjc+>1rbB-H~kF`LOM_S4=qE_Bx3vwtO@MP1iXroJe+ioRGUYL|JL{K)?udVHJoCr z?V`d@)21f-LYUt{j2?MMFiSAxH!^()RJ)g!;{^=t`HM;o3Y1(!zTKz2ZYMrb$ws)= ztLmtoSfp>{Mhrp6Fohs;$)dnZmydS~2ELll7e*GWF3%c?|v=o&O zKP#t)^OD4J+yr2BI$LfK!)+l0Qk-~0PgP(eclY%7Y)7N_Vp)sq%z>que!)j7soxOi zBLhxOq2d?;P%Ch{PZ;|9UbKz1VGKtU(f{OYfaD`&7qlut>o+Q> z9OW-6q@Hbw*B~I>UU1SG#+HlzIiQS(?ZFiJ3bmGWxo6KmAsLJY2@=dh3IT=4D)9J@dAd=;7eV|0o(ot;RGo-uByuI0DC zE?R!F*kfqj{@A*3qY);)N%g;i*tU(~IRDPz?3z8Zs}}`8$QvJ##?XWO9ofy~UC?^Q zf#e6_&S%Ap8Zz&s|HDL(13{h(v_;rkqk0U10lK(6p^x9;sW>9E{UbB;ZKR2>#17?c z51=c!)!9kuG{lkg&QL@b8o+Q#YmDf#J{2s;Id_dpe|d|BP1 zp;?Flm`AW~T+tklN#S5Z9F{df{vfZRVi1K=my~UxepBrU+DTVv9m0m!ArwPk4!E-> zl!y~6LS5Y%16K?a6V#1QNUkwkY2n074WiQC!%+jiAAY1w9z;a^$5=6XfVAI&sG~L5 zv9d91-_K73e8HjD*&oaDKgrmt<7TF{?Qy0{OgVWZdOTWcw_Ki{Q7N77@o2^7IA=5e zj`9K^jQqG#t%}kh48QpAfU@d7+4=bABNKc%f{f=$pC4Tp{Co5DdaGllk)bXwYt z7(x%t7^YEH8iV;*gS*p6yP4naqgeWk3AL(D(Iz*Ne_C(d{8JqU|8O_$t`ryPEmovH zSK_q(|3NYU1bdWlI-N0vjxxfNe!44DYrDubtMIEM2rurH-~ zA_QfYpgX9E80UFE3hFaJ8i&a|Qij!&kB9hcO(%m?14Y@UIOH$%N3JU2x$PM20R7tPgOcHW1=3Jt3pKi63e zIYssxs{K;uzt@u$o3>sb1vvIN(B;Z%-)PSnj>ez;gA_>l9G*NXcZ4ad4!-v?qB3f$ z^}RtO_7h~$DsKmK4&hMA%&kU$C(dB2HUrX`xm*mXfWQ!qp7^T`LEI$=Z0txFGExLq zZABub=nQ+FzqoL{Yy#`v(C@h|SDklXeW~CD3S>MD*nSDZ2582i+oaygP=>Q(fCJie zOK2qXB*+L#W*Ednp8;rWRbd2+=B5Ejl;xU(U16K;$r$7E0Lc0a5(3eJm|pZ4Rnews zS`L=1eE_n%)Ix(gn10(>PfBV}snS;C(3chf*5qam#}qUF~{Y7q!fcN|GnJ)eg( zCTX1JY1wIM^U}af_U5ZavOPI6ORM*I#`1VIH7U=CbHjh=mf2 zFz_%D#M0ofyv&9Np~mN6XueNyE;1I2w{9s(`7G1TiJV(*FPEa%MAeW+SIli{^!cUQI}1a!vT zjLR%GCj8pH0!|$oj9QS4V#DIfg&VFhA7<@<5SM5*bxJO*Kzur;nLn{Ci=Sok9E*-- z&p|r}6A7B?(|mRVLoA%CcT>rf$uHCg@t3?xXYRbNEv`J4H5iLFE`t5Tq$6YtZ{X0h zh3zO+-o7Psf!tIZrW9Vrm*#3smVf7%@CR`S&Am>;QRDleCNMj0Eh$DFGMMHC3Kac; zweR^?ThtDjYH^^l8Be7_CYAV{YkrGtM|g^z4XS0l6KqXm4r2~}M%#I?UiU-DjGo2u z*Xw@YFMZA4kD$`R{PZ2sq-Q~{fXK$+Bgy-{P&@H>6V5WvDksSuT^UlEx8W2^mgce|NGxFOe=Bqd zvR0A9^VvB});|G6sT<|?w>4x+59*X+qh!Ezc>uQXPv5d;+j|&khCb~i{Lelq=X{PA z|F(;%x^ghhUfadAO~ZA6K&5hjQG%$f7G-l~^wMV;31>uXz1T9Nf22X+jnwEZHK6o` zb(j<@)&o&bL=~+R6fr#>@w31bQS}8_&mzPNkddHZu=Q7-Z^5af9A$KJIlFqQL(YJh z(l{M)^G;E*-kf9b1fHTG6|5Z4xgD@Bg@{`XF1u}!Cz!#MidVcY^fz9=u@=pdb`+`> ztd@I+dEOCqPW2JUzf{Axo(_}dMktkt_%go*bc;kS+_Py%(%&r7apl@`+d@^P>TwbS zN0PXt-o08wniUdx(+bEw@OckCfeZr>huY#%uROLH0Qi;;0QH6=e3yumWL}^q*^Flg zOxk>ndFmJ}8GH1oi}7Jd==q;T`?kHxfgE*OC&6zesSm);xxd}_>CYM>G^aWSsXH0w zXv2YcS(rl6kxprcVCoBphTToN3Hvd0{R2L57fXz))69ZMniLpK zq^0u(T~u&0s4yk>tu~r=;X>u?TV1*X?*<+3u~zyPWkuOMBrG(> zw&*f}P5V$|;i5|Q1p`GoBNiMs`nUl?*cs`xtZ>k8-g7UvPk!Mhm2@3;rxZ(` z**!9a9+k$%QQ6x%2ezg)4I_k%Jmv#^03zX-$-Cfh7}36P3`FF9zwio0evAdCK5eBJ zQn$%=BbHf1b%PCmJRUgD$8V8%L{d{G12!hC{2rMZeM$g-=F=s6PTsEtQ1p$+C)B)s zWX>=G%ucaH7s{9TCXWiGmJ2f3!nha4_bvc#vM(n}Xa^O9^z0YG^I%r(IYs`>SZR(0 zrlC8Ce>&6)5H*bSG4_`J<{nJp=SH=c?eJI}nEc>43IJimq}s$Hlc-@V`m-!K#%b?RaBi|p3C&B~2^wa2Di2*rv}6`Ov3_PVZ_ zS+`;GYdO*$5W-^b4Q~&dA zPZdV%3A@1Cs{;b!BGdT8@2ZAN$R7+>Vc*_br*;;JVLKWS7VGqgP=jf)ordZp!&hN%+)j`{d@=o^gVO$yFvz zY@^c^Z~u#jCNRW}vy_Pjx^2^JGuk-S1)Qvz=)_VbM0aI&&$>E6*mF-Q2m`_^|CXro)d!u}z2R zP<1sdqNwGCGXe8Um)%^EAZwM=*tS%~__v#u!$Ca`NO-;F^6o9^Ow>gteLT#1&QUj} zh5}YD^RBV;i}&wr6^Sf;YyFhZ%L1k{Y8AS7 zV*9DB|5l7-$B+m1Pn88IeF(o3g}8l##Yo0J?Ln+C5|KkL6n*-mi=qSzijIqHy#r|B z(I{K>!+>h`(zHm9Zy;s~!My|wlYUZu=jh_-TSV$p>s2DWc(F;Tk-qBdXS*3h0&Is9;jSQ0g2H1FmgPGw=p;z zY2{M0#>!SDSXJHxs7}`zC>gjHTdzr;btl(31~r#~$tc|{lXkN!uG8-nf9z0x^R_PL zhCTC>#9>jLQ{xcvH;bMA9a`-_!y--lGlck7Rs5)*@K+kr6OltpCSsbm3l0%#ObNK2 z8wp7%`ajz&?7vohP`o3rc!?aP_(hAsi}hv3&g-TA^WOjM8s>0NbJLaggG4r}SvgpK z5Moxn=H`2plDoZJj{+;8)7#0Pk1w+`+Ar3YoLo>_vwb}u%XPIQjB%0QD^LWXQ14P% zO(iztQAPFhn?2*|TcUsGpTJft>a3WHJ1J61PIXNwr{ia@FG(wZJnmIyCs#h1s6Avx= zJb)p-)`5=iiP-bhiR+mKn zz#}Rg?(qOLWvTd&q zLhTA^?C{tg9W3At6#^^%xxMmMxVa>E-y>U?1&q7IP*)$5V_UP5jY#rLZr~?q7|~oS zktG*wh|u_zSW#>eFq)G2%r85~u1zj|wJu#A9Ydxw?bqTmN+mCm&$wWUfn*Os#dS9+ zoqOM|xwLr;E@Tqwn|WU3f-miMT|wkH8I){ap8k?{hl*!bKp7iDI>Ww4pMM8B1dAiJ4XGM;3bw z$E_5!(DN2}xMSM}>(u#&>c@P7fWyv;DvglK@s(z%0^Ao03gDo;8aE%uWoKn zM$;t2jVM6uP%>+29q0&o_1ha{-(D0}ylQ@i7vnbBZY8in5{tC*Qx;Tc*2cCxmad@z z+i}|ev;Y)kv_#B_NV!)M2#+l!XamB;&z;xBB9MZkCW%Q357SHWH>-0(G1m6tdi$S6 zP}CcUjnlNo<TZ|Exi>X<2W^u8N`xS>? za&RRI7;6xqahn4LpVC)?=O6VKqbLzicnXhcHV`~q8ZcfS?bz)wC1zWlZG?V2Hok(- zZdj%`atj(jaA73e?+keJLD`%;QTXwMfpk)axl4Rb**5Jv#k?PuC-zvQW~u2EjjuGt z>g(FPBAHq@{%i=E^jfh;$}-BtNELl%egPU%Ez8&pUN(L6a@SHNY6nzoJqAMkWhlGk z$Ei~`nu7IgaB`tEyT4fRO)b=Rm-H-c(d!IWsqeUZ5@ud(q9V~dtMSzF`E07$IybC0 z_c@-@%07LGQ+DKu$*^**kObFu)L-FxU^CSY0+dey6r%$QL`uGt>Me+t+aMhZF2s)R zc3iN|=l{Z9O$Vec0iPs5BDu#dW)V#VV7dp%0KS1~8d%3Zfe|4*8)0aCUE#tM%rI;M zd6Mzca?r0d+Ob&E{d%^A45EZ&noxkV!Q{D3;eBbGFy{VyEDPI-z5Nt>7+>_w!Nqii zsTARWmpv;Y-dpZ8qrny$Zb5G!D>!OY6zFBE*3riA_gkq>ktb_nPCc*C)(1p8cTPR$ zJ56a2xUYKp{3Qi0QE@9N_6U^;+~QqJgGZ!A;g5cifEw#+Ff}yn*3xQH@Yy9xau=cR zrtN3xtEzm-cuvcE7G%Y1Rh!R=FI`$Hr#6>K@~LJ?r{rgTvp1qAqiR#?Q|03)r(zW~ z>g19XeRdg%b2>;SJtD`TcQ{8&Ak{yN;+_@nTmP~`%aBLw?XBol_bf_#cOj{`t0*rz zLcmZvn?8h{IwCTdLMXGRD#d36~hb2#qY{jLMPA za^%w+(XO#v5k$dx|3qZu&P^W6Q!z@E>__H0t381ZwPR!jWOW?i(QnUJSx%YbF@g}E zE*tM@t95_+4Cz{8k_NlAp_cv%@OWC`hw7Fkbmve;B`Ne?(2Pt}f_gI?9gGWzH0&)< zWq%{=qeLrhnC+`~Sl8=PaEz^RrHXxHYCB)KX<*o9KRA;l^~7#emd-?^gD-TIXbWJ* z+?AH4zSMJ9RfxO=k|}v<(HSY+-*1MWMvFBOj=%8#((F{utX-q}ZkuP2&YnPq{=VAz z-93>g(Z?PCOn^qZ~5bt9)AiD6ln4W_6$+kD6E8u8omi+WnB$XATvk~Lw=MGEY zie#dqe5*2uyme?^68VDu!azgjx(H{%hl**bvtn8QrSy;FfQ^9%)>HM1`qEOjvENN# zFQ$33qlt?FS;vIyX*c}&fc)6cXvK;u)Ym)t#Y>|4n;DT>*sX0Axuy0${4N*-HjKCTnyr8fRBAJsADWeIW?y>cj=fqV-4vZb+1pZS4A9Id(fJlfL(<XA=YxnRK4d1^;i7rDEnRG%eWFj0RbvkHwoia3+wocU|6R1 zPH&BBMw%l4gRiX>%M5Kz(2QPAWBP*~kujlRJzU1K9pTRU^@I!{>;=XLb;YVHsF3r} zbmg+etFfj*d%$SJ|Np%fws^aDmdVm{`VwPDacx)5T^Z$%!?lKf3J)1A zCr@Is=N3MK#X0;D#Fd|en=O!?gaM=H9way!7%$XB95a!Nki)V&RcVMn+k~LX?>^H+ zbmI1mAiW~L&eG+xi^bkgi%K}{xf>H_{YPr>Mtq=^ktp2MDh_C_=wTV^eP;!aj_-qxQ&(D;0 z6K~?Gk)vxokiVyF_&i<+;e^~m+M48 zdmwQ7czKrr4*?7UKE93+(3PS#_B6{o@(|Hpy;7c8JuX*k5cZHvr`QiYj@Lb|5D;eD z{k83({OV8RNN`|2Vi~IS;djv7(^2$;?N5{Z@Hf_njYfZH^bQO9#D$Um@8@NLkGNK6 zi+Me<2#5$hFj$m~V+bQFpbnv<%d-q%M+UGMJa0C0b=2}nGPZ5DbWL%S2N^W?g?SDY z_pozKe9ge(k}HVD4)H+^{y!fzRD_UnC~3$GYEkNRHuw!B`Ot@Ih=?=T$7IkA&kED9 zx*$~Vhg&2E111g;TeIPY-AU(*I$`B-+V;5Q8mTyP0tU zxgE)h@Zvvy zL3_Fkz`bVyljD!^?IeG=$iQsG2VnW{Sl#TR*+`s2peSN7>?FP(H@zm;wnN7?d{b6p zryh23iUWZwH}m*-Tl_?t)$t5;deAdLt0^($6=NP2LnQ9kFAQnpq8__1mg2G3JURtg zF~CK-e#;Vi%Umlqq2nzvrh3~(YyrlYb!Nw?fMmcFh96a4Y#<^&g* zA=-c8>?U`-zld8BuTelc7F``Ynmmq<;spO~=ZiOpxW;G~k7ft^fIjXg=G;NQj-jJu zc4NOAAR#2`>JG*0ME4DRVS1zwB{D%bHuvQ}jQsjctlc=6d%}Sn7@#1D^oI1BZ}kTB zh;gz;{#d-ID|uxWZ?+1iEHvzz(!I{-*-QOU zr(Uk>5A2v=HX^@>lD}~<5Z6u}#*9l)asX(vHt>p^5&VlE-)vBUtRm456uUkM1)BlU z56pQf%!-ekzPxkM@yJPFeco8mQ5PT|d;2QLC9M3Uc}tKDN|ueyAw_a53Ue4L?ZA`N ziLA==416iM8z{Z5lk_(PIDG-4JfNw(&;aC7AMMD>VvCC!|4px3vG!DCL={0qb;izM zgW%Q9Ut$Q_u}Q{$!KHDU2K=bh6OhvPckEDnN)2jy>R19Dt1Nc1ueTsOy(r~pVju-r z#U3D62{HuON>+eP4d`>M$UT|Zd*$>HvD#pEJQpgbyT@4Z#ieaOu+0$i(rfd+TdG}r zze}KJHS?ng_j^$hEh07K@uMJ_nRKu^>iCpL8(+4{2yRnh#MSXit2#*{4y-ONk3`Id z_mTcLNQsOAtM@P&oceT~jIE2%fJ4w2l^04TI@D~KCnHw#I2C=D(BuJ)ah9qfPGf^a zI0Ae`fl&fjqcRIo$=o)+?gL6L2U>Nh`toqU59E+s7}8x$v|K817xH-j zTdss#QGvpU4(_%r#r=D8FH!YA z&ztW9PBxzbt!pFoYR!n}kBxDp1CiILm)gCkbC-k0Et0Ex{XJbC^?TEP<9_>7oKFC; zP0`)^eUh5~^y4ocf8+-&ZcHx>%vm3Mc3RGdp_n1F+4O-XbzjI&>ft);}_10J-MZUx=9){#!g>m;$God!DE{KOT62f(Y0jTLmM@ z<%-9j!~R>Xg=_F&sKw`sJ_~G*7euCSZw%&JcFk!540@LUjbW|TiP)C^CQqyour^J! zNfl-N4bwNiEOkp0CFPyy`@uBW34GuG9DE}IB16d<={exl?4m~f{c=b>`|(^gI$yx! za=;6)0r&uHzSQTvd363;V8eaH6TgmW{OjdRBmylXgxNZKLl=N%&;-arG-aAII{mLb z=0JP$JYCfI9uE|-BLcg!cUoM30I#>w^7ul2;QpzVT9LTPDlRYH{hvQ)@dcbE=F*&J zv_Amb>3v{LDbm5VssGz5Vduy8@86Woggr*eI2xJv<=O|ps=?W|q$XZ2Pep>w5IOYU zV@+5UIM;SZAoKX|fTE+VqLBhlH#dOJP*M4rP36A}{=XfnAZ*lfHsb_{0676PW@o_e z$=;8oK>A;cXfpYYC9_?1L&|?uXvjR?J_PXrv`TsZdpt)B775J$u&}=u1$q!4==-9^ zpElng55!{o0$#a~V>H6H>M2f?to52lRpGy9dS*EiZ72GmX2WBPd{C!EjR3RqQa~Ga zf5~aIgf8yg|AyWi3^e`wP2tSrJP@7-zXCixmL5g-4FF4y%HpP%%ztAHf`~;00ndPJ z8vo4&h&>Xv;GuBc{_EX9;}Ew&HR694+>jRrys;$X>Y%vBZeoSu|89pw)@be_u;H<6 z@TgISH7q*&zyF^H0WqJVn-}`nzrvfi5WPF^o4qa8`c=OHyIdXm|Ni{}IBil&u6L_la17bI?F94JU zL+%*Wf00yx2}Dwy1LZXO-$+75^w@96PXV}wKLJ|tHelVO47O9D`L91A?}VwD--#bQ z4!ST>a(FvXrCp*KomR! zZg~1*!nEY$4Zq+*1TN$NyoF$Y#RXgwdpV0+ivBGK5X8UnmliehFKD^JzJT~uJs>~Z z1o-CgDPyVq4Ip5|p9cbOea7`KHUIXBuO#kcibY@zinj!aHUH`fC!XwE`qc0*rg;%> zmj^=SguB89b@ToW-;}@bsdN$=DyF_XP>?Ib?s|UgXWNJvUKME36Gg*;Lo;P)elI~ zzLbTgq>WIi+PPn-(*UR-+3ziNX%3q5T^dH1obLg-MLPrdy#5S}%9T<1K@KM!9?Hp? zWOyIGFvhR_FZfdo088{@3hTSn)#var+2)jeqhjdgYSBJ2YE+p0pN)P{lAtSe*^acn zGFljY3D8fj`;eg9ZCCmInLSv|((->Udk_Y!^#{y4vQCz+(COTz^6E9=*n=8wK>TqE zD7miz>pG-MD9rxP0^fiY-RpcTbhY%i{Up%LPM|?%D3{v;di-}&(dT=-Ou&P>Iy_-54=Ed2OD_Tq*eV>$uJ-u?gF_7CyImcf$|JU(` zNKiu`ILu5LxXlM{0rtyF^vombmrqIlGZaej6z%hckFQ?ymV|MNU6m7<%l=`~JXU22 zls|FQ{mcHlAjR+rq2`xLr{_(A?f&$ea&p zZ#vRt`giF|h(XT}R*km47KrV9>Zo}v?AQjELkw)8?=lcj__ckW20~9;VEdKByMe}iH4w0` z1@nZ&78@B1Q;{tIU+e|Lv0A^Bb+c>%3A5h$TR=f2&2`E$#crh$j0aELKOv$;9|n1% zoxkQ5=#^4`37G-6)hKX)abWPhMfYFh4-*wHVs%Xdi64VBLG9K0FoU-jp!BGm;G3FW zD0EiVG#Y}F(B}2|cjghv2acxmz1y~6j_bAyY8zY<%`cmMG1kpKRE>b>U%gWymhpT3 z1jzGa_p*8TUjO<*v8wo60toO*i-6hY1r(YnOrA;*8d`Z3y-4)#Ck282C>WojwOD&f zU46U|E}aezl7%-XyP}799`IIXVV=|%sU#nE*aDSP_}RaMUYk*n)Vu>iyiH}f!zOT$ z9A3x5S3bew_@GsKt0+d)7vcU3@M`NvxQ~#?Igzz3AjA05aP-4KDLv;8HcF#6 z7nLGl(g*L4osXb`+K{B{0x)&RV=~q$TPI@n03Na%fA@#+5jpS#e8;r8Gwh*Ibs<9c$aI*<6)V5>p553 z;76cNyYyZ&_M_4s;>0B36S#cy&K;*lK^sXzr4OLv86AsPSbt|(4sN$l(Hh4_A<&n^ zD+arFDB$DX)r*&Y$~YFrC(z@=l{Q zaMH!MOFO9}tygS{8%Xv#&Crur1VwShJP%z8zEtVv6ZygN2@V+8X9VhH8W$<6hFZ}X z`f6YVN;)o;G`^o85T|%KL65_2;XJzQ`CiFikOu`-0j60>mT0#DFcRa(sW__Hunpy^Y6%HUX7?77cdvmf(`W1c40@=?gPH=bn z*Gaq8cvd`4Xzg3V>%dnrGGKRBO~0Pp5kpTHp0cm|y^_=uEPzA6m7&M^6e+eOXtz*@ z$V(nbCUw_A9r$zfKFOg9=cs)i>Ed;Bu5*UY^dBZ4&)YyGJE~7(3UggiQC8Qpz&y- z@Z8Rno(nD#$~qvcnbY;ei~8hT*JDfItoLZIRq)qjDi^14t7pIGd`67g@EuOwk#%(4 zDjGsSK8~K5_+rJ-_v7|g(y=Vn1fwaULvR9uHcyn9eoA6d-R^&QJQtvlhb#qHVeaN5 z18dJ1{**{cAsz#Vy}3U>yb^%Zre6~A*dLh}F}Ik*V^9-!7WrNA#B}Vu;~486`RXy7 zV^bHF;S^K%;&Qup_ro9GNs%5cg zVeS_{`=wrV)S3(Z!)4JOH)xUdg6$x2zzc`qy}mx!x23P3V%I9AUoz%!+!LgOw!TIz>1kzxXODTc+lDcHR!&+ zfA@mBa=Y;?$OZRgQP6JA#J3U;F8y<6GB##b*X9dx)OO8kI{7Ox5VE%Jx=q%1vQioW zy_?om|MP}C7WQanB=}Z}pbE-GPxZuI9VT{8|0!d})?*-pIp64o53}{c7wYil4G-sv zLXk@u?+HcS$!(Yy^DlYGv57Wy9SsF_nW*>#XB*8}cFus7ZulG*HqtJR2cLVZx}eer)j8qSstrD#&#T*fSRLPrHol z--#4SY_O<|&BY3}0JolNei-6hs?g3Ic?5U}VFIbduR3_cD^anE@-fp(;U zqA%!W4R)iOMOj+e)ld?2Zd`5brqBUh{Xs7v7qq^X!PpA38s+5>X8)VZo}pR9J&+t) zlAkwFwCIQRB1ei_0dca7EhYSLf1Cqvk_iNulxnB_=J$FRQ*51El@UYK_2U`^#ZXUh zc}Ul}Wwxv`So^HmSKoDe5*uNYA8?oCy^C(AOlB@r9vq|B&r2=;;@k%*=W`FtLg^(D zUz2o#N)wL2qj!Rww!@u;3B9x2HY10#?rM$BT>%WM86lJFvUVW$9i$lNeH(fr*@#MY zigGvN|JxPb5aC=e1j;SelxF?64i0A09HVNU^$wWW6Rsy`SaiI94v5|^#%E&B-P4n^At{M#L|@6_ABhp<5Y9r75o;mMO1uW5{gt{EU9OVe=H7J zpLpN))8^M%uRANf?VH^fNne%=Pa=DRk@bUk%27ZAk>bEKU1K{5ZoH|{}@K%0Hg!}WU z5v%j5p=$0~LKISRF>l`xo#p7SaEAG!^A-sr*p6C7+R;tHyVG1^@Ql#kNq0??DrIM+ z2^qKbFfrxaisd5l>(Yt`5>)vxSQljF(s^KyAi^{ykcE&h*m(X%ZR`}V)_xtiNSn&tlg%Az)dY7Z<>V} zAi;BPUf9>7zFYW2sl#6X^e0M+Hg+->KAJ(r_VZBx2q0qo96{e%KhDiogzGRNzeC_g zbgi|mD3oou6VK0Pb+J|G{n&+fte;Lf1D)J6GR*}?1Pap#atT}e$Uk$_-CoT^m<>Jj zk=JnB3_de=iGb1mO#dTSJYeyVg)DnL!*fe$HF!Kw_+_f`Pj1X7Tg>DqNc`N4p##ikkZQdvht6z^huU}^~ zEMf@ZZC^B%6=(GMrR^2&#x-xXz@PpxYx^R)tvUVG__=Au z^ojvz_3zp2Uw%b|)AokV&;ZUE*OD`q!;T#_WlAMQQq}@ZX}z$UN~_7`E^Ae;T1B&gj{^vVZI@=5GNA)4&IK| z$zZD2+8vIf2(o8-Oai(bM>m|}!gWIS02i(X43zlpj_rQtOF2JtCIPbtCDwtRbNDG` z`M^zT`n!k@?p)rk>=}vva#4)zs52SulUkW1c3$6WyjjstRi&fgFVnEDBLagj3_Z7r ztI-v#SC(?#+RC*Y^t1Upg{x(Cz2?C&5K zaY3mcd!Vc35c>>_;juc^ZgjN=NeI_0?f|LHyGJ+3EOahZl*hh$A!H}3?0AJgg>zKp zqu}JzK;KLHHLhnH%rA-H`D1BcZkaH5`J`7eUjly7*90!^K7_IeA6C9%SsXt$CTfX| z?K`tFWDy?0TMs#vAe4N-a)KZPcF3I~KqJKFlcS6TSnebory zBcfQR;uqr}&AQWnwwBZ)vOzB{eD{`^v~Nsv&=(zp-6&e<`V>>Ldw2FKOspdC#3iKE zw!;fY262TX)$VQN=ZNi!%X;Plu+0S-w71P%gOF88%iUDN zb2j86((NVUrEQ@k^%vNwmu>lTwafM4ASV{q*LO_EhWO^+KOO71<3Ksw+9%5CgO^8Rk6kFyDP#?y$)d+|7XIYc z)?4O|D>xwb1JqNb(%7NF2Eji{ni*en{?;$jLy0C;M;gk}kOo?==O)H}?H1|JdhQk3c07#^O8#C1O$Nh8U?+>XT-YA8mQXZoBZK7tB|E0My0A3tg8*zL@wK%))Uy8?+TpOg!(Ca2`@;Ih}Iyq>V< z&#_GZ>yetpFHZvbFpqoW;mn@fYT9+(uJx^BSTK2a4H(HgMu#y(*`5w*&p@YQH%p>Z!0Y?2~WQO^_JQsC3eAJE!`yP$1BW{Wr>Fi+8x}Cb|1DzLoZPA5P9;$LBW1bIsXB7-K^&b>hI#f+JRJ=d?K@6wo+Rih zmo}Llz*8z6(;cl(>%Z|%N~8HinZpxF z?eB9oKBkw8sxT+ldzi~HnkDy^n!M9}G0@g{`;o(Gx##c7@u2;g9vylytn(cm)4zGz zskNUXUezDtH@A3_AZuUGI8$u&Ni8UJxW*2!uFrQ=vbFtcFuBiJfqAy}DtGm3@a&B` zwUR?jj?HbTP1A1j;-4OwOiJi+NWE@h%{Kv-LTeUD7IgjngG4h<5Ny!*gy+}dbl3Nt zDDHbv?qqKCZmkCLX2*o-bfP4UW(h~x=YRdVT>3C?x8*E9!Z8=5UQf<3cQ(vkjXm6@ z<{FJQi5!|E-mS=;_u@D??YAbQkT>WONVHj4w(xYQ_YM{s+Km1!ED|L^phku4thPGf z+qy1|{o;v1>Yc}0b&SHn?1{p<4e~uZ9TVbAHA`9<5B^|;(%;H^6Ee4wZZ-Da?x03I zMTNG4}wEd3O{sm^-MJ8M6!N5FOpR!qMr2(u<31LYZ}Y%_%7x9H^rwy zn(VV4yPf^UYZflKC$kvwAS8;G^nLVRE`n^nabJ@3yrgC)?!CKm?@tMHZnYp){MPUq z+1?uC8GPq9?I((uY}fN<&ZVz8K%D2b-{8%2*pOkYG|w-$l!xqk$6xC)KLIdZ@GLVm zT^G81MRNzky|pZ6$O#?AGDyTpVBV%_-r&K6!E${~OnKnnWYN`8+CeP%Hkl$*!9xtp zPMFILdKeyoxcOhgB!Jr-M}VTGPt?JJIh{HO1k_glq&;?N`-hbX!HmVpoa?;?1Gy4| zg^YT;N^9=+3eml%L}u;Z6UWL_B&4$~BZ&(PC4F~FB%wX`fw9f!vG(EVsDrofF;5nAZ=q?y@0!41tT1o&#_)cwXNZIL+)=c+A~LCef2C^(}O0Mh=}VF~b$!m<~xW@^N>a^TVnYJN!W}qs%t&EPw232|h@HC3w1p*tkMh z)yp7cpQYp4Kzm3nK$;S4#WcCEzH^TTtSI%7Lgf{x`P>u}QTPy)n4~hJ0O-T-WcRfG zYMX`7nB!_)UhUOl+>XDt83X{O_B5Aa1&(+{;!0cM%aUFoo$ptprWb+PDXGOW+B~FG zS9AfGAAm=}_#X5iu4(j~NjF2Rf3}y&0pPt?@L~7MC&GY-z|e)$DcL)AOJF{B(l?FY z|FK=RfT_H+`Ve>Zj&v|6?p^UIZ%}==pKJD`qx%P39x#GeaxkyGvgynTY?og@h7N!f z?S{HrTjh=_(OxUd@hYS{m<44y(S zxjP2VeSGKwzB7=3v?(0ywT%Pl}6+h z)$`j!@X2#t&8VwSYRb$30LK+Q+Xy|hgSb*x1uR_ty(_D~|NmOOKNO5?{|N>q^?hkL zoY(@0Kv8DGr~6mm6G#VMp1G`B>k_EVWP$Dg)*G1~$;*WQfL;UeIvaGksDF#7j)ejF z0UCT(RfU#s<0%ye#H(KIupkrsqnh78GVEYWS z27ud%{)^0f$W468HE_g9&|DPKO8qOVh@|xuco?t9$B1K~rv|qB0P=C^-vdNPHiKjK z8{kB|uE02~l(HAm|Dyg50y8aJ08|TBYMc0f2jd2WqwW_E5CYg13SzoM48U*Fgn~yP zB&Pb0dU2DG##~HNxTtpH^Uamap3BFohAiCx{S}I_(Es&p>hlml#b0GqdB1eJzy4&N zT@!WnP88_FLp$mc`S0aNr82?9!>x}g_AdbkCglwHd>e&NPtZ>}xPR%S#lTbkkH=KM z0jZkx@f@$R)BB3V7pVr4yqc2X-({{2oIda&%ZiHYS3f0_NeuzxFn9?Vx7BIM__v1(VG;y(2mDQ^1Q(N5oxmKO`U&GQKoatc4~1NY=6FezkyG z-yfl$DLSwjATsZd)tM(9+W;AehOI7!L4?X40t`;JdE~>tbyvTGArwGOw|W8hFh9xpZmWi2aAP!Xqu@n{^u(kA<*8I!8SaBsljPS zBwiq^yb#)4C8!`^&X~Xwj1p zSfr}C!U=yC|J5M!igo+^7AEd*leGar7n;7^UZ9NLXeb0w)-*fMOD28+Jk}Lm<*-w5 zDS|^DFcrdgTrT$)Z1HGtGZ+^?1yJNzvb5ekFeW7IxAi4&>IQA|b=rE9N^(CT^FVrV zs0FLKbuQ1C1cV35#Z(B2LH1xbUV@Rct{p-%UVB|kTVO!QCntR@v~AJMLii`1=M?Jj z5ZD4`mR=7-CJHqPB>c{Ry3l`YjD8597GjNONn>5Ib^!9n>^&Vp&a0ouVKBu~P`ChS zCF%Q4zb~txv``q=bHM9#0Y0iI<^uG4{|1SS&SEwG(pz6qlM}N~ssGuuDkdVZ5y<0C zqj_6sZh*_FhFZi+Bd^^+&xKH?;m!(rw8;e0aZTEmGxXzt*x>}N&##ql8V|aem$3gM z*GWLalzrWe+>rb~jIRp-&380wE;xD!%q_pgH-G-Ce86x?_mkk|t-Av(7K^sSf6r22 z)~kFH+%dntRNbJe_TfDmFAg8qgrun@1_TpT2x zfx_d+3$lbCz^eB>uhuLJs_(uWzplOyYHF%qhV*bWgROhD=n5&eYbUO#jOtG@WoV_f z`2Z=YbmzWWiu?TTDR7)Nqs!p_cL5~Lg8$vmKgWv%Xp0V>W%PHcu%8y5eZ<@ZK}QhR z9tHnfdzuUgwdXJHufMA%Yn>K50=f2aADTCm+{2KqQJCLE>D*nuj2>i-i)vP00*KUu zEP)xr^69Oncqpr=Sv+tbXy3aG0h05}9F51OuAsbEjV3IpQUHEN5pN{nr7<)@xd?0l zJLIHW^<+r`n3c0{?!AAGB^tC*e?a$)PJ?|-=2L2wMr*?83~XNV!DO&u)6wo9dO0mF zIP2GOdG8IgtbSC>pq?pL`S93&WAqa(-X_srdgAX`&T%fU+DG9eCOzELjPR!+S)(!z z%VNla)nqH`@sBEZ1OR**9IQ+k`&|Y2YkOJ6t5}By)15(r=>;G)xPptqVeMBNZ=N)- z(}K)+p-%bn{RVLJ=bK`N&_jq!H-T%w^~c#o-gu^opk zJ&hNCN|wEz#?kh>IpIqN37Yjd${Mo`Q9LU`G00La7&e-;}W_1}rofKIuLsGuvA z1XLfM`?(l{w7T4e&$D37p6LTy5`gqU^bMv+{N8CR*&kxBn_1u(ze=xv#jj-&COwf0Prrz!$08nyw3ewBejgs)y&Q?N^>fu4O%nYXjI9yMdfAmyyqj1@NH2 z*ghvpXm^`Vt=fZ(#^ji`iQt2+LV6KkO+92&FV2+yJ0lcY@&$p_uA^7>StxIZLDRY5 zyE@vb=8IzD_S|1pRXC5LbZo{zClbzp!EWQWp@OCS%ng&oJadQP69k@r7bE))U9%fJ zvLv-v)RbfpNyn=Cr;igVX0`b_F=G=8&*u`*)3timm4Kg~KGHwF9#suo?is)h#q8Z3 zdku%q*}m9;Ar5zS(KPvB*x~s{4Y?{b^J!w!NbMeRtbTe)SWUe3W&g+1yBJbDC<345 zc&(zwj)L|`MhUCktYGR}S@n0)l6hc$n6M-+6Dep%OBpeg+6T46McW3m;BR}IkAPC* zXuKT^4XeO>%HE(#=EuL1?zu$+`^h9DW+;L}%=giYic@pTa>5WH+lG}XGTN1IFh_mR ztH|t(*~3;IA+pnay{De|v(FP)=Ex~vtn)t_VtE32NhdLwj`ke+{%Inv_zO4ZiTNOS z8Otku@AHD$UgC0_n_@|t8*)UI4)Fcbdw(o$;Yh{VPn-Q?FJ1VD(4l*&yz>Ky*ohhY z`>)WMV&K>r3*UTu{Z{M{y88L#t&BF`taqisKchhVtW0xkFK}EW5w!2MyD_&(O|kp} zpgcHqpDdim%TCy6&HY1Axx5$_>)=?Dbt>zZ^6@&gSCY-}6A8WQRK0dhAVon&@~Ppd z*-Ed@3#70kqx9NgwLh z-Y1{BswNv@u%*&F@V1dkGcu{Bt^ra)IZajLevchY8AL{7$4;KbHJE^0i0ghb~l|5ioN7FXw9d`DzK{W9OOMiKlS6|BeLusk)nkK&=M5a z<;Ah`S|vre@8V=UgVsg7HLMn~_(yd6=V~AsvM_?MQ*VDm0YOYvbL$^R^)gX~`E|gJ ztM4Lj_vytSYP+|zIU!&{(D%ZVPX+8wD_m#@AcX#X2r@lfct_<(o(jRq!pVZS;7X5l zhz5t=BmwCkROg0iXQAq$;p7_-ytX&}omUnE3EmXN35ytxsU~mpEVusuzRkvqW|movXRddVlo(K|?#JiQ1i*7;zL0vFx>l8FOyh01ydjhX(@YQ~L3QcES0e?hnZlZ$n z4gi7V88puzV>1r)yJWt`4B=|*A(6>B90jt84}BJ4rsp4*C--#5y~e*Joqz?4t?Ir? zUzt5I!39>U2e_ry6#=R}AVgS{1xo7Z)`qV?EmHz3-K_7i#azGZy&r>QeI#cCCTh6? zI=6iBrZm&9aLz_YwD23f0qFReHgKILru!T(f1rs6&%cF9CGr}VdIL?TRkG#u4;s&S z^9Q8UjEvUJl0>Ea^=o*Pf?Sj$D@kTkKs_#v#F#R-9#BWofMXzSLg9Uv z^$&@bOELRFo94ihPUxGrv5_H(=r%tPuUZguo>MPRx=F-xmdY67Ivav%uhS%YwlVnU zG26n4PkiFWfdb3mIoOFa*8z&Lv|%%b%9FB`Z(b!{4* zj{$F2OtFkyZ^hwsLHBQ9Q94Rg*@7wDEa}aAJ?wXbpl=SoYi)tCwx4zlFs?O;oa{d% ze~KV#5;`GtbMEDqJMQNlcwn^9zo8oidWK%s+k7s+OsXUl2s4pVR@j?UHO{hB86F$= z(f2;qTOz4I{C*H5+zmSY4N%A;aM6;ls|l~)3(lvbT8E3fvgG4&_QID`nPrQ_*ZT+hqEr&|YQ z!`A?QO_p{U(xLAILwuK1#ZS!9#7wzz#cldVG)bDP^D=h=El4UEW>_r(0L*@utd*!C z)ByLRBTPD#}js%eEeCV#fu>boh=elx@tRWE!HQXic*sQmQO;4k|+~BM5J!+h{ofnaVUsxhX~E zaIfoweh}$o{_PEbSK=Zg$vhC~DmZQQjWmuGYg)&(QLvE&^J1-78o_e7b>Qu%z~NZ~ zO+iAgAeE}UL849L(hrQ}{an_q&_5^05(Qx=vh@ufVUv&=&;>&e?fw2tkKG&FPw}H_ z8ilAmWG6EUUB#fMqnFwSg%lOa*NDtEoX+za!0Q!tJ7RkxY{v=s({6QujXY@rz;708 zE>hd!Tm?zo-RWkL2;X_ho3j>;Z}??A&{Xm_v&S>wefM?<(z!N}+hhcv7G5c`G`)KZO0Rpu)ar$S*l3TNzZVF15&hWG+u3wM*c%`hNi{Ph@#7o=gt)|#sI8(NwK=?qOP z?EO#_(HSzBfFNs?T@67*7okcnO`ax$5S$5f88ePc^sUY@_Bcu%66l)iG^iE4q0LfYP>madVm4Zmq*6I}1 z_kMuzd2T4h>iyXHL0fi$C^@6^vAN%2h6CK5-=qx`1{?_JB8M>1iDE_m=cz}74k0v7UTg!5TAS(FtOP5Mn#-212-YTjr2>qJ3wLm1pS$OoWCGw8Gd1VhNA%vXQV z74D>ZgX2bP6hutBUmc}-Td#Xwa5L_MW&bT7lLg34Xd=2-&muvGQQz!jWL*d7kn_qU zrI{(s9Fz(=Omq=#<#Vg`_HI1i&e6+mWUu>GhF?q_Gi{4cPA#wzxl{1_^ts^#sh=W) zukm~qZn|Y-F_a@>7J?wi4ria0mLWUKT@-9m8p(5a(6qL!j+%{jZ1{`4%fsR|kZl^~ z-7{OIk3`;bK<`-(1L}O z;*VEF$AB}`sA?_<&YD;Gm9VJ;UhG;jN;>F))I z_#=mh1#La~v*vNm`6Ve%4G9j?^n^WvaBZphQyJOEDpEMrnTATL<70y;Bzvcy(4+u;IywWWS z9c`=oK6D$&3zP@Tfm)GFzua=Hc{kcqc_Vg)PagQk%$;NhSW=0vgu~wHfz**J{F+qo zHmimT+#J*fRK4!*HlwIIr3ciX`(Oz=EU?~@R+9Gcbc!frBWOI6^rCG(XSMIU;F879 zdtC0b_~-qe*3LfBZKwk&l9^j{8u!K05gtLhEeS>_mp9>mv0e;ht%8dn;#(l-^0I?Q zw{S^BFty@-&!U$CaLqwmWIq8Fwc#(K_2?{7T%{?u#Yp7A7zm~1MyqdPAc-uCA_?X_ zLH3Z-C2bY9vj?hdN%S=GY7b@JiI$O5-S6S0-sPU;tD#<1IH9m9gp0m%BP<4tR`ooX z6Dvag?VT_5LDIFE6m+T`g}v#llNS_q%OrU{R}_%0`Sz^(Z)`fId2D>jdeT;pBc*p~4{xP^5$R~JA+n`6_LJZ1!hFC-w|3_7QXKzb=r*A$sm^+KW3Y*0YI*04Tpz3}8 zUVPo5fjS{N!)B=vx7~jvctheF1pC7)pji`BN=-0AGBGk#Yf@rl+tD%|20r8zhz_nQ=dgx#wy+2a!qjec1jdZI&Zo$(VsLS z%fmPdhjDb{Kt~kSoie`d+nu2t@_!Jyd9iKWMf9gM(iiV=9qwRAlHq^D97Z>0z@$UO zQ{Hw+_2Lqs!Ia5KIqL`WiE&2KZ@DSo@qoI-vO0(9+ru8kjBBmr+Z-CaDHCpF+<=#@ zepg1}(+|L%Ff7QcfgLP)c5h#A!iKW?Sixj9S`g2r3U^QE&+fJ!rJ98Z8ER;>JHVS* z&pGCXbeNGhBHZaz(tC%p%`B=wm-NlIq<*5>$H}k0?Su`jw-&VJ{;6gM zja^%4gnTnm4Ai!ww5HbDO6Pc_O4Ze>b{A-O$T~vp084S#dd)kO5bd7OK-vobPxDxc z@L1Bi?vN53j%u0^g!j?302Ot^kAslJPGn@G_gO7yv<P&_tSnOEnA2)C{fVn|sM4>J--x3{XhAG?l0kT7!yZA_@d2Us(XPxt*iL@<+Au^Uu+kcztXw&IVS zG#)kgM!^Mx#N|W@-Zwc9q&b?D<5RA}(irHRhEyRJE~pEoKVBWire~L8Qut+V!#lq8 z&h^}*C`Yfk^58yax|;XwTXJ4T7iFDMic&qcoSZPy7{_B=;`r}xuMG+BA|k29YP;xl z_tgE{JIOgZr=)Nqo-~mVGx8CbyUm%-m_zWCq`4}{)ZFd(jhn9>0q`LZi#|lq|9t0S z2?NU};OC$vwXtK=V!g57U=CYjkA6>M!`Dr~&)Imsg&dD9zOZ+URDe{~C*jE6IZpEx z;5-!SfIXTlb3oG6L`?Jxo{&krPw;o~D~#zKJ?!_dQB9%Y zF)f&m+~=bD#nqaA;TOBkCq52#*+j0OwHASI&h+p|`C05WR2W&hVsHZVUC7;)vzC6` z-If~AwAE`@-p8L6tHdOf!mS@K^fY(Yy5P$c(Ah@TXWFjAaY2>i?Ib95A{{3?+;o$S zTtFja;7gr}`T5|xsyK1aPdGvG80Ja7?85 z^;IMQXxW6u;&7COc0>ZxBAa<%te1`oCKk0@<{7AEQ97r=bjhfhTVr{>V&_7|6El zAgk4&JN8iLzdM;U9221K2-@rJ%P8vuhiDHn|69^~A^L8h4-rC(!PJT7FyKu`rG&Lxs{Bouzl#-SigZ225Ngx7RRE4SElT`3vmsGLR6|-4Hc%&*g$nNGV>zmR#;>Oo+M&0 zghCn@bOI04P{8TQ!UO1|;ZN9dV0`{HG#sI~6@kK^kcnIM+Rh?5U2pA;AW2(V#pE2B zXv)Q%$)(vTIx3R;Nzk0Ao$mJPzqrJY%olD{9{jPDr?CnEZNTi|DeneiFTq)Gus&w z;g>2e+_bxCx#V07;q_~SO}ia;TJ%~6Ypa>y4y1IwqEY&Q^z2aH#nr~_|05`XPzJ*+ z^!j1w4k@v5Dv}=Ej7vey*v~+Ilyt)f9_fT3>p{Y5mCxYMVQ*7dDtoRzQ7)JMGeUUs zTu_E7ojHQxPEtT%G%rTSuKP+FlbJkI=iUoIvNun{(b7wIYnA+5 z{rR4+)%9Z4(IlndY77HUeKX&9%++9c>T{w>KtC?wut*qxJy% z9mLvT$E1B7JMIm7DO%a!_w6lj1s6iNZpWM$S>lQz%U;#OZ)zZUiNfD=FeXdS`q2> zUT>4`;8Ks8$7p-f#U-)WL-K4XKw?oWN-{0nsN`XV_a#pvglBLPlMH z$Nz&SL_qi(8Jv`RQ?#5$fNHxskL}*x8z2$&78EDA@_PCwtIRsv8w8UoM=_C@vA9lt z!C0j+YGxq}&I?dosWamstLUuv?L2g9jX)uDeF5e_uJ0VVIn&^&&B^9XXR;bVAP!xC z^G`8tyv;YX{`8@BM;t=HxkbLvD|2W4g~)nM@F5+$J%r6YG@5jtPak`@ju`1;R1+Q$^=90!D}0GP2xoeJ zlkOAXB$)UldVgHoC)9)y{Jh0l2&2)S!>iZ8H7h?#mC3CK91B{ibo>Yuq+Mbu&8dTY z3vkA7b)Gl_IB=X*M(jWr-O_k!4wW9`hW8<-#MldT*bjYg+@eb6TZsa)YNpO3eGH#~nv8>Y;~jT`Iv%>j}@+}lsv zW;=t|FADU>X3b7etwdS1|^fe<$pZ zHEJoNYbL3=GW(!oEh&OZWDG4I0#qd_%y0`#shH?K4(-kdYTPV#UrFvP9oGbQ}iJ)CJ3pC9oxnbT8*k11IxUwUZWF> zfSPiQ!OU;Rt@=#XLcg=U_ry8^o}Dp^(}shD!6l$n2)yl_Y+PFNrt2DhZQMjt`c~Pj ze7sMfP8`=o7PYmWg`umc&ZB%~%vQg`G7V5`n$ot`LTMWJf%@O(T0Olf_ ztAzM>dm#Gr2V4E@3OgN!tldV}9_PiV@Ptbd`yT_8I^$I7!t2WZs7gnw&-JFgC``(U zeH5IcK8f(K`bM1Q7=cePbF(}9iPCLBk?}!~&DxLjzH$Nmuj^x#BiG!Tj3Bl@?Zgkx)TgK|Y3>U`Z+k}sr60P&=K{;}|p%!>#))e2gBh2OGIX{3I&Tqob9 zR#F_u?(=#B$12p&RFzGG*FhFCr*~RozXAn=pl$I^vKfWC`Ia%nGn8dHb^im@WCFX@ zjo&3M2?bUqVBZl2bI+?>(H1f@tWP*W4DmGDpmVn2~k9@;TRKCfwF+lnU(DiJAeV zf1=7$PYfU-A2JSkro;ivZ1#2DZlR!AT^igy8H7pUqPYf9&T{n40pc_pQEr#ht~(|j z>hdx=MY5e41Dim2y5i zp|sXX$Y5wN!BN1ODH0Q2a*jXvOdKbKe-Rh;)6!pS$o8s@GFNXT(aGK)-LK z-O6`>9Q64IC>tkZ;g+_C58xaj_c*Lp0`oohzSh7P?yFs9CLpAh#&n@uTjDBQ0|jv0 zw6~zDA%HlD;t$3jEGTZI2=W*r&l(vi&?=tuqa%pG$5AWi78Y=!SidGm-#X-OT1~1J zqaeK#sKWpAo=a|P;NSC7cM&!pCArb=k_RqcI|#1v74nCi%p9$P1C){I%H3#qmW2#k z4(c}Fguh%gpU=X~gKl#UiZoHZp3qHl;r7%A!Zx^)IlS^SOMx2vhQb>+i2Q|YLBm$4 zTGxv^$W`sQq&>G&wVj(ith(ch(`tmo3U)U-1044QY+oW{|>@ z%{5W-5XYHc7PAOB5!7O3vc1@mhUma78%2Z2ANvf4KhQ@iB>-t0w&d`r|Cq2hF@$+U zA2oq1F`$IT*zXk=wc8v9nyZ5t93KkbA>7}OS%*ovc%adreNiq%AAqG7K?k#*>snTD zP!F2d1*?o?`ldmDSIQa?PFvQIE6Z-6W-N_`LwoxxkZqU&YBb)G5tY7im^c9+49e;P&L`uRr=tMjC@9ONmUEnnkGHH&-_U?!^q?Ua2NcYD_RDM z=(rV$0Bf7)?r@2g9!GthZ8I(x+O&AJ1z$LKduZr;yM8cH=LkC5Kyius5~H&ixv6F( z*)tfxJxaO<>1}dX&^vSei$lJ1;v#A^_U25Y@#w+gQWE)5T8|YU<94^X)avEK_`!#7 zmv;?@d85yKsf%E-7~KV#gqXZ&-ww--skfy;grk5uUQY-wGpAwWcmdH6sGm}iW1k&) z@Ku-3o=07kN}%^8J8GGIn|LcOF^;QQtQS<^;^@&T2}v6*$i+HHaXTd$N9oqqLkEjD zR~k(#6bDyU1_?sjL^Kjga7?dD1AQzmS6#|N`2KJV3S9VI~!AR%g z#jF@Y30QaB!qGXbtlAGSHNh)qM^viG9XTeuS&Sg#4CNo9yBzN0Qs=iKmi2Csc-E3Qo( znKe48*66J+6MwSi`MmsD#YSPMwa}F)FHvb~AItwddcdzKP|3tDQl-1PmY@^SihtsvvR!Cf!zY!eW-G@$D!}I#dh%~} zznok1Q`=1^lu*W&5uAJ!0}&13BH?O7rQ0oH&13D1`EAW8*-kgHeJtnqV=PIzc_r>! zS$>F2)tDL3${?q=6g$Z!ucQ;JF~amagr!Ri+e&d69O%Sdu7@iCm#1tJ=GSr;S8Mm2UZ4ArU@#=DZCeu!Ge}Brv zT}~bI!-`SIc85sXKXef@GiF}iK5ttkJ8&UpRpj6X7?ir!Ce4f*uJ2TBpjTaD658W#mRy++@I|!dcB*`o z-X0O7`1{mSTa=dAPAOKYIEBK56)U;oSiT(p@s{+OT8sv>OS{flrn8Q|zBfjjGwlse z_@A{CO^jR2yZop4f#{`JpGD@aRk)UVLQ@Z|)D@h@N14LU%^&7IQ<3gApif1Cqo)hd z-*WrhCTcc8n*WyKh=bE!n-i*_1fS3Z06V%V?Y8uRNvRyCvtH1X;}D|_iuw|HxB^^2 zAI2$^{bU!D(f$ni@_1$)r&A1zC&ZAnNq~F5d8RCd;d{jtsmo)pmy~QjF59Qi zthp)7`a>`9;ZvCamqz*5(~|#6>)u`(L&1v3~t6)xx@)-f%;9MDb;Q^)nl4dE!8V2q_w?7sUOZ_6O z*EHwzN(VilyV}zAK5N3;$o|xHSlUqY+t9pLZ(;eVODvpdoR}BvoXg2Z?0QB!WF#*_ zzW33*XhY0$&YM-Xy7!sT{9lXLdka;eaFGAF zph4K;>4>!+c|KdgCd~7t5Fa6=?~`Z6=ih+QXd0RVY7k?3SNxXfbfme7x`>!m{ux}q zsCILQs>||r`6wPDFZOf*IS#@;d#*y4EUVGEMc@Q?!*-`{4YE(7IJXZC7~|Tb!R^JO za41xJV5C%BNTY_$_-Gbe_6f>RB6WX;z!koQ3=JK>aJbweeq@!5`wVzY94dxtwm6Sz zk0Az#@ebAe$T3|hI%<4h2QtNTFJ{UEPCh$2ey@6X2Fhq%TybNc`StKYr!8pN<%*u* z>(SlhZ=`QkrWJxl2SVm*mJ$cp$OX&BM4E#Bwe+@vqT9RVwx-VJH!4@U{Y76}#XYgJ zO%L6;ygDk$7(F2eO*A}nmYLp!D&DME2RO*b&1-P1fOV-4NEh<(?+W4YI@p-3$fN^WyPfK zpgv!HN^l2#^?l&wmRL;-uEFP?_QAa;8-tV5YZvD>Yt^#NDvz%;JBs+a_Maw;FLNq; z(+^nfatnE!QMv2W)h*)j+0SDAgVF~0$Pbr4I>w6Dd^%oSEMhWY3OTJT^o5Nn#s@CV zsQIY((cQ|0V8X!YQ`X*HR}tn(Gw5BDRa27+_d52?ixYDHJc^_@N(HIUB^$#xTeif{AA+&9z=5395xW(#Pd90sZJ`yg|zV(#0gik z`s)4&IiZy6k}W+sS#Co%oZNA>u(VTYNBmtEaNRfuZe}nna{wg`4{Gkk;HvAuxeAN$ z;uU+B*!h$yUov;bfKgoUEURrrqj`aUlGEz#_$={CWH>&+;7~yK*8AEDAYIsi=(M#$3Dz8`k@^S0gvw>s27>9qIk+?3B$@^q-=e@_*-o+g*wKd#jVf$-%9~apFNyw?CzVS_8Cg2j;aNHN=}ScK_VoOMDOqr8vhQ6)yu%oJ@1A6 z>hZZywJEo|?r$sgKZ)cCYC8}LF1zE1(eAOh$#XO$Gs4xeZEEm{(XKHhEw=;`!zeK+ z0E4Zd`_~0zXfUM6d2_n2v^=wEur=&5yY|nx2Z<1#=Mrx#3-nxqbJlZctjH4Anr^Fh z7^kW!qYCNGDbK&Q9vpxyqr7pV= zdHfkF4{?i1DC`aS;!2rIcK`wL{V1z6j@8 zis61pR02bf?9kFwEGFO_cDMuKOlGmCnNm6FYGwv`yhDp5z;kD^WVYBNlb+i z>49})D!{b_>I=KC&B0}RPxq7{RRtXDLsnYKyuLtu?{7Qz-^(~j?L6-;+Y*qYc5w*q zZAvA7p9K9R@Ge{AkJ<<7lN16HrZI;=Nv)5O4YcPw@aO4--gR9z^f(iEo^%6HDfmLp zMa0{#I9!qIudiF4zL7mfEYAg%MJ{+iZR8)ArYX5KWglCyVcRv#8j~khZM81;-5|L^ zjZchFbpnu(WBYDy&C+6W`bFNYhSMXg4`sb;(`~@Wz{1JCaH3w!*#{J#g`@nvmR2@( zu(V8OpjGTg>cUyQiBAICQv}im=It`@_V!ORL zU4ccCZrK?h09bT?9*0j#4Hr!;Xw}%yPO$^ur%+k}qD5*7L15vIQy)U$O)wE-UqKIz>_E(2!+AJKdA$HDcg~_ zRdj@e#9t8Is=?^fYmJi$cvR8tt=<=OxSWg`>~()NZq`@rQ5MFOr6}u|URc+YBuSgu z{uhz@(vx<@F6`*q%xx+uPu@cW{+~!*D)VeNG-E!)R6-#b0(f`hx!?LgMedIT+L65@ zFnTCOB{79zJdEFb%Y*L1G|T^Ews~fsREn4Lo9RBq^2E^ofDz+UjIVS_olu(>781sA z4tWR}0ut!+&rU%j`t^K5-3_#X^v*V}^Z!^tqJ zuj*Y!P$qvV^$u1eFMY8`wP&a~>lwmd$0ajWX4pw@s15g(s%xt^7z+Z){h=~1&Ot+^ z6dJ?tgrUV1Gc1!z$R|?23!W*#yX+gbFg-Aq>=_8PeHn!RG#)i?E0t)<9R2}(EspM> z+p4=X0Epd0FM&mN`jXx{{74U?hMD!3ib|ZDg!`K`51n3 z;H>43mgQ2w&L8KLGPPFilYGCi>AIF5SOIzYoRm&3`yN`tmJbKVs@k@>Yf zm5AYNOv#(U`FBon$0Ra{8tSDyh2^|^GGJJt{0~wU#++1yN)%D9o)piW8}&tY%fLsl zh|#_mRNS(0(S0~(G4Z)ld3S(e!v^;JcWIRaiLd7<(}SSq%*(QB_o?kMBi!FAkM=M6 z;-sS|@ku>)kNyi?L9aZm`m_~Cdflb#`rV(=)rw1q~PIS3#pEy7Z4D3?Lh9Z_?}MaW@ZG)Pibl&RVT1pfb4bby694I$Q~-(oeeq-C2eEghoTq8U53*PPsuBNJwE&Sg7RE~Qv4-HDf{Jn<=<(F??l@SU ztCtJNen{uEoM~mUUqjdv54)7l3|%Yfp*s%VmAAc;#22%pa?V$#mn|=eFC71PspsCB zS*=eWOR)i9x8V2FIC)IE6-1ebAcM*klJJPfJmGLTI9;XF+L9y zbMMM%>-xwqEeGX;gC=RQCE}*Zl}3vHI{as&8R_b}FRX(e^AW0IEqa~n9-S=$;;mPb z-&Ve&Iy}c%<>Q_alD#*o?ELEndZ^?*X@)It1z_+$=W{D>252>pQtoyXJ;!xWze-@P2KwrrmOixht*yW7ovqkr$zy{uvPa& z7U2Lh>wsI4QT3Hzm2PKK^#26F1lnQ0_OenuZSJSTT(olATmts`&$=590YBWnHI~GA z8r9vxFCV(6m_zxmqbKsxKgBJ|u3k-P`;s4xRNcSZwZ99iHc=2Ga8zf-{;Om~s#Yf? zHSW|GaP40Y3YX8k5pE7Q9t|Nk4}JQp(tdvyBkYcgqYo$xys~Eu`<{45LNkJak%<|F z5!H;)%jd5B++m9UwXcUbE8 o=b8~OI9uZ%J~os4iUHmXbxm|~wH+_~2kfyzqW}N^ literal 0 HcmV?d00001 From 9702621b25114c904ad4bf885453e2ec138d4cde Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Tue, 15 Aug 2023 21:06:50 +0900 Subject: [PATCH 09/15] :memo: docs(docs): add basic srs document (#291) --- .../Intrduction.md | 114 ++++-------------- .../change-management-process.md | 10 +- .../environment.md | 112 +++++++++++------ .../ovearall-description.md | 22 ++-- 4 files changed, 109 insertions(+), 149 deletions(-) diff --git a/docs/docs/software-requirement-specification/Intrduction.md b/docs/docs/software-requirement-specification/Intrduction.md index 0c52b8a4..023bdc23 100644 --- a/docs/docs/software-requirement-specification/Intrduction.md +++ b/docs/docs/software-requirement-specification/Intrduction.md @@ -5,134 +5,68 @@ sidebar_position: 2 # 1 Introduction (개요) ## 1.1 Purpose (목표) -• Describe the purpose of the particular SRS and specify the intended audience for the SRS. +• 위치 기반 음악 공유 소셜 서비스, Street Drop의 SRS 문서입니다. -• Identify the product whose software requirements are specified in this document, including the revision or release number. +• 이 SRS 문서는 **Street Drop 애플리케이션의 요구사항을 정의**합니다. -• 핵심을 짧게 잘 적어야 한다. +• 독자는 Street Drop 개발팀, 디자인팀이며, 외부 독자 또한 포함합니다. -• SRS의 목적이다. - - -• 이 문서는 모바일 HTS를 개발하기 위한 SRS이다. ( 이렇게 하면 안된다 ) - - -• 너무 뻔한 이야기를 적으면 안된다. - - -• CEO가 보아서 가치가 있을 이야기를 적어라. - - -• 이 일은 인도사람에게 외주를 주어서 개발하려는 것이다. (예) - - -• 이것은 3개월간 프로토타입을 만들기 위한 것이다. (예) - - -• 이 문서의 독자는 외부도 포함한다(예) - - -• Goals : 제품의 목적은 생략하라 - - -• Audience는 너무 당연한 것 빼고 중요한, 특이한 부분만 적는다. -• -• ## 1.2 Product Scope (범위) -Provide a short description of the software being specified. Relate the software to corporate goals or business strategies. -This should be an executive-level summary. Do not enumerate the whole requirements list here. - -• Identify the software product(s) to be produced by name - - -• Explain what the software product(s) will, and, if necessary, will not do (더중요) - -• Describe the application of the software being specified, including relevant benefits, objectives, and goals +• 애플리케이션은 위치 기반 서비스를 활용하여 사용자들이 음악을 공유하고, 다른 사용자들과 상호작용할 수 있는 소셜 서비스를 제공합니다. -• Be consistent with similar statements in higher-level specifications if they exist +• IOS 디바이스 중 아이폰만 지원할 예정이며, **안드로이드는 지원하지 않습니다.** -• If a separate vision and scope document is available, refer to it rather than duplicating its contents here. +• 대한민국으로 한정하여 서비스가 제공되며, 추후 해외 서비스를 제공할 수 있습니다. -• 비즈니스 전략 : 실제 회사를 가정해도 된다. 아니면 새로운 회사를 가정해도 된다. (중요, 빠져있음) - - -• 임원들을 위한 summary (excutive-level summary) - - -• 이름이 확정되어야 한다. - - -• 우리는 안드로이드를 지원할것이다 보다, 윈모바일이나 블랙베리나..를 지원하지 않는다가 더 중요하다. - - -• Relevant benefits : 다른 제품과 연관해서 이득. 첫 제품인 경우는 없는 것이고…. - - -• Goals : SRS의 목적 +## 1.3 Document Conventions (문서규칙) +• 특별한 의미가 있거나 강조되어야 할 부분은 **굵게** 표시하였습니다. -• Higher-level specification 은 없다. +• 인쇄를 위해 참조이외의 경우에는 링크를 사용하지 않았습니다. -• Separate vision and scope document 는 기획팀 자료..이것은 어디어디를 봐라, 참조하라… +## 1.4 Terms and Abbreviations (정의 및 약어) -• 지원하지 않는 것에 대해서 명시하는 것이 중요하다 ( 이유는 간단히 할 수 있으면 하고 아니면 그냥 하지 마라) +• SRS (Software Requirements Specification): 소프트웨어 요구사항 명세서의 약어로, Street Drop의 요구사항을 문서화한 것입니다. -## 1.3 Document Conventions (문서규칙) -본 문서를 읽는데 필요한 기본 규칙을 기술한다. +• 위치 기반 서비스 (Location-Based Service): 사용자의 현재 위치 정보를 활용하여 서비스를 제공하는 기술입니다. -Describe any standards or typographical conventions that were followed when writing this SRS, such as fonts or highlighting that have special significance. For example, state whether priorities for higher-level requirements are assumed to be inherited by detailed requirements, or whether every requirement statement is to have its own priority. -이 부분은 회사의 sample을 쫒아해도 된다. - -## 1.4 Terms and Abbreviations (정의 및 약어) -본 문서에서 자주 사용되는 용어에 대한 기본 정의 및 약어를 정리한다. -정의를 해야 한다. -수 십개 정도… +• 소셜 서비스 (Social Service): 사용자들 간에 소통하고 커뮤니케이션할 수 있는 온라인 플랫폼을 말합니다. ## 1.5 Related Documents (관련문서) -제품기획서, Onepager, SRS, IRS 등 본 프로젝트의 SRS와 관련된 문서를 기술한다. +• 추후 추가 예정입니다. +## 1.6 Intended Audience and Reading Suggestions (대상 및 읽는 방법) +이 문서는 Street Drop 애플리케이션을 개발하고 디자인하는 데 관여하는 모든 팀원들과 외부 이해관계자들을 대상으로 합니다. -모든 문서는 소스코드 관리 시스템에서의 파일 위치를 명시한다. - +개발팀: 이 문서는 애플리케이션의 요구사항을 정확히 이해하고 구현하는 데 필요한 정보를 제공합니다. -모든 문서는 프로젝트안에 있어야 하고 링크를 걸어 볼 수 있어야 한다. +디자인팀: 디자인 요소와 관련된 특정 요구사항과 사용자 경험에 대한 정보를 참고할 수 있습니다. -문서를 링크 걸어야 한다 -## 1.6 Intended Audience and Reading Suggestions (대상 및 읽는 방법) -본 문서를 리뷰 할 대상(관련 부서/팀 포함)을 명시한다. +외부 이해관계자: 애플리케이션의 기능과 범위를 이해하고 이에 대한 피드백을 제공하기 위해 이 문서를 참고할 수 있습니다. -Describe the different types of reader that the document is intended for, such as developers, project managers, marketing staff, users, testers, and documentation writers. -Describe what the rest of this SRS contains and how it is organized. Suggest a sequence for reading the document, beginning with the overview sections and proceeding through the sections that are most pertinent to each reader type. -샘플중에 적당한 것을 사용하면 된다. -어떻게 어느 정도로 읽어야 하는 지도 명시하면 좋다. 좀 자세히 읽으라든지, -왜 읽어야 하는지? ( 이런건 시험에 나오기도 한다) -표로 만드는 것은 좋다. 단, 좀 더 자세히…. +독자들은 전체 문서를 읽는 것을 권장하며, 필요한 경우 관심 있는 부분을 세부적으로 탐색할 수 있습니다. ## 1.7 Project Output (프로젝트 산출물) -본 프로젝트 결과물의 형태 및 버전 등에 대해 기술한다. -산출물의 형태가 제품인지 라이브러리인지 툴인지 등을 구분하여 기술하며, 산출물명(가칭) 및 그 대표 버전을 기술한다. -3장의 배포 방법과 중복이 될 수 있다. -필연적으로 중복이 될 수는 있는데 (없을 수는 없는데), 그 이유는?  ? + ### 1.7.1 Output Format (산출물 형태) -안드로이드 : aa.마 -구동할 수 있는 application 이다 +• 최종 산출물은 IOS 애플리케이션과 AWS에 배포된 서버로 구성됩니다. + ### 1.7.2 Output Name and Version (산출물명(가칭) 및 버전) -Diary_ver1.0. -파일 이름에 대해 버전을 바꾸어야 하는지 아니면 안드로이드 내부 버전 관리가 되는 지…모름. \ No newline at end of file +• 프로젝트 산출물의 명칭은 "Street Drop (스트릿 드랍)"이며, 현재 버전은 1.0입니다. \ No newline at end of file diff --git a/docs/docs/software-requirement-specification/change-management-process.md b/docs/docs/software-requirement-specification/change-management-process.md index 0b487262..65ebfd41 100644 --- a/docs/docs/software-requirement-specification/change-management-process.md +++ b/docs/docs/software-requirement-specification/change-management-process.md @@ -4,11 +4,7 @@ sidebar_position: 9 --- # 8 Change Management process (변경관리 프로세스) -Identify the change management process to be used to identify, log, evaluate, and update the SRS to reflect changes in project scope and requirements. -1) How are you going to control changes to the requirements? -2) Can the customer just call up and ask for something new? -3) Does your team have to reach consensus? -4) How do changes to requirements get submitted to the team? -5) Formally in writing, email or phone call? +변경에 관한 모든 프로세스는 정규 회의시간에 전체회의를 통해서 논의되며, +변경에 대한 요청은 Notion에 기록되어야 합니다. -This process can be specified in the one of the ‘Process Diagram’s of the company. +- API 변경의 경우, IOS 버전에 따라 호환이슈가 존재하므로, 필수적으로 IOS 개발팀 진행사항을 확인하고 변경사항을 적용해야 합니다. diff --git a/docs/docs/software-requirement-specification/environment.md b/docs/docs/software-requirement-specification/environment.md index 4c271996..2c07d522 100644 --- a/docs/docs/software-requirement-specification/environment.md +++ b/docs/docs/software-requirement-specification/environment.md @@ -5,56 +5,48 @@ sidebar_position: 4 # 3 Environment (환경) -샘플을 보고 해도 된다. ## 3.1 Operating Environment (운영 환경) -본 프로젝트의 산출물을 설치하고 운영하기 위한 하드웨어 환경 정보와 소프트웨어 환경 정보(OS 및 사전에 설치되어야 할 소프트웨어 등)를 기술한다. ### 3.1.1 Hardware Environment (하드웨어 환경) -안드로이드는 하드웨어 환경이 여러 가지이다. -CPU는 생략해도 된다. -버전 정보와 제품 이름 정도… -### 3.1.2 Software Environment (소프트웨어 환경) -안드로이드는 여러 가지이다. 리눅스, 윈도우…DB…. -제품이 사용되어질 환경 -OS 버전, 제품 버전. 등이 많아 진다. +지원하는 IOS 디바이스 기종은 아래와 같습니다. -#### 3.1.2.1 OS Environment (운영체제 환경) -본 프로젝트의 산출물이 지원하는 OS를 확인하기 위해 전사적으로 최신 OS 목록을 항상 가지고 있어야 한다. +Mac, iPhone, iPod touch -지원하는 플랫폼에 따라 내용을 확인하고, 필요에 따라 -(1) 아래 표와 같이 복사하고, 지원여부란을 만들어 체크하거나, -(2) 지원하는 플랫폼 리스트만 기술하시기 바랍니다. -1) Windows 플랫폼 -[아래표는 샘플입니다. 반드시, 최신 OS Coverage Sheet를 받아서 사용하시기 바랍니다.] +### 3.1.2 Software Environment (소프트웨어 환경) +#### 3.1.2.1 OS Environment (운영체제 환경) -2) Unix/Linux 플랫폼 - 최신 OS Coverage Sheet를 참조하여 작성하시기 바랍니다. +#### IOS -3.1.2.2 OS외 software 환경 +| 디바이스 | 최소 요구 사항 | +|-----------------|--------------------------| +| Mac | macOS 11.0 이상, Apple M1 칩 이상 탑재 | +| iPhone | iOS 14.0 이상 필요 | +| iPod touch | iOS 14.0 이상 필요 | -1) Web Browser -- MS Internet Explorer 버전 (필수 지원) -- Mozilla Firefox 버전 (필수 지원) +#### Server +Window, Linux, Mac OS 등 다양한 운영체제에서 사용 가능하지만, 서비스 배포를 위해 **Linux 환경을 권장**합니다. +클라우드 서비스를 이용하여 배포할 경우, AWS, GCP, Azure 등 다양한 클라우드 서비스에서 사용 가능합니다. +개발 과정에서 클라우드 환경을 고려하여 개발하였습니다. -2) 기타1 +배포를 위한 최소 사양은 다음과 같습니다. -3) 기타2 +| Server | CPU | RAM | Storage | +|----------------------|---------|---------|---------| +| API Server | 1 Core | 1GB | 10GB | +| Search Server | 1 Core | 1GB | 10GB | +| Notification Server | 1 Core | 1GB | 10GB | +| Database Server | 1 Core | 1GB | 10GB | +| Batch Server | 1 Core | 1GB | 10GB | ## 3.2 Product Installation and Configuration (제품 설치 및 설정) -본 프로젝트의 산출물의 설치 과정에서의 요구사항을 기술한다. 또한 제품을 실행하는데 필요한 기본 설정 요소 및 방법에 대한 요구사항을 기술한다. - -High Level로 기술하면 된다. (간단하게) -제품을 어디에 올려서 어디서 다운로드 받아서 사용한다..등.. - -InstallShield와 같은 상용 설치툴 혹은 자체 개발한 설치툴이 있으면 기술한다. - -6장의 Site Adaptation Requirements와 중복되는 부분은 명시하지 않는다. +App Store를 통해 배포되었습니다. 아래 링크를 통해서 앱스토어에서 제품을 다운로드 받을 수 있습니다. +https://apps.apple.com/kr/app/%EC%8A%A4%ED%8A%B8%EB%A6%BF%EB%93%9C%EB%9E%8D-street-drop/id6450315928 ## 3.3 Distribution Environment (배포 환경) ### 3.3.1 Master Configuration (마스터 구성) @@ -70,7 +62,22 @@ InstallShield와 같은 상용 설치툴 혹은 자체 개발한 설치툴이 • Manual (매뉴얼 폴더) 스크립트도 포함되어야 하고, apk 파일, -### 3.3.2 Distribution Method (배포 방법) +### 3.3.2 Distribution Method (배포 방법 +#### IOS + +| 디바이스 | 최소 요구 사항 | +|-----------------|--------------------------| +| Mac | macOS 11.0 이상, Apple M1 칩 이상 탑재 | +| iPhone | iOS 14.0 이상 필요 | +| iPod touch | iOS 14.0 이상 필요 | + + +#### Server +Window, Linux, Mac OS 등 다양한 운영체제에서 사용 가능하지만, 서비스 배포를 위해 **Linux 환경을 권장**합니다. +클라우드 서비스를 이용하여 배포할 경우, AWS, GCP, Azure 등 다양한 클라우드 서비스에서 사용 가능합니다. +개발 과정에서 클라우드 환경을 고려하여 개발하였습니다. + +배포를 위한 최소 사양은 다음과 같습니다. 본 프로젝트의 산출물 마스터를 어떤 방법으로 배포할 것인지를 기술한다. 예를 들어, CD로 전달한다든지, 소프트웨어를 웹에서 다운로드 받게 한다든지 등의 배포 방법이 있다. 간단하게 적는다 @@ -97,7 +104,24 @@ iTunes AppStore를 통해 배포한다. 배포 전에 iTunes Connect를 통해 A 형상관리 서버상의 본 프로젝트의 소스 위치 및 문서 위치를 명시한다. 구글을 사용한다 #### 3.6.1.1. Location of Source Code (소스코드 위치) +모든 소스코드는 Github를 통해서 관리됩니다. + +**IOS** + + + +**Server** +- 모노레포 구조로 관리됩니다. +- 소스 폴더 구조는 다음과 같습니다. +``` +. +├── README.md +├── api +``` + #### 3.6.1.2. Location of Documents (문서 위치) +- 모든 문서는 현재 웹페이지와 내부적으로 사용되는 문서는 모두 Notion을 통해서 관리됩니다. + ### 3.6.2 Build Environment (빌드 환경) 빌드머신 등의 빌드 환경을 어떻게 구축/운영할지 Build/Release 팀과 협의하여 기술한다. 빌드 기계, 빌드 디렉토리, 특수하게 요구되는 빌드방법 등을 기술한다. @@ -106,10 +130,22 @@ iTunes AppStore를 통해 배포한다. 배포 전에 iTunes Connect를 통해 A 빌드 서버의 사양, OS, compiler 등을 명시 +빌드와 배포의 경우 + + + + ## 3.7 Bugtrack System (버그트래킹) -이 제품의 유지보수를 위해 사용할 버그트래킹 시스템과 버그트래킹에서 사용될 제품이름을 명시한다. -구글에서 한다 -버그트래킹은 언제 시작하는가? SRS를 처음 적고 이것에 오류가 있을 때, 버그트래킹을 사용한다. -보통 빌드.릴리즈 부서가 담당하는 경우가 많다. -어느 정도 stable 한 버전이 나와야 의미있는 버그가 나온다. 알파버전?... +Notion으로 Bug Tracking을 진행합니다. 제 품 버전과 해당 버전에서 발생한 문제, 발생 시간 등을 기록하고, 크리티컬한 문제에 대해서 즉각적으로 대응할 수 있도록, +버그 레벨을 분류하고, 버그 레벨에 따라 대응 시간을 정합니다. 추가적으로 버그 담당자를 지정하여, 해당 버그에 대한 해결에 대한 진행사항과 해결 여부를 확인할 수 있도록 합니다. + +**버그 레벨** +- Critical: 1일 이내 +- High: 1주 이내 +- Medium: 2주 이내 +- Low: 1달 이내 +- Very Low: 1달 이상 + + + ## 3.8 Other Environment (기타 환경) diff --git a/docs/docs/software-requirement-specification/ovearall-description.md b/docs/docs/software-requirement-specification/ovearall-description.md index 12fe8e0a..477fa397 100644 --- a/docs/docs/software-requirement-specification/ovearall-description.md +++ b/docs/docs/software-requirement-specification/ovearall-description.md @@ -3,9 +3,11 @@ title: 2. Overall Description (전체 설명) sidebar_position: 3 --- # 2 Overall Description (전체 설명) +Street Drop은 위치 기반 음악 공유 소셜 서비스로서, 사용자들이 음악을 공유하고 다른 사용자들과 상호작용할 수 있는 플랫폼을 제공합니다. -본 프로젝트 산출물의 T0-BE 모습에 대한 전체적인 구성 및 동작, 기능 등에 대해 간략하게 기술한다. -상세한 기능 스펙은 7장에서 기술한다. +이 서비스는 대한민국 내에서 사용 가능하며, 추후에는 해외 서비스 제공을 확장할 수 있습니다. + +애플리케이션은 iOS 디바이스 중 아이폰만을 지원하며, 안드로이드 기기는 현재 지원하지 않습니다. ## 2.1 Product Perspective (제품 조망) 본 프로젝트 산출물과 회사의 기존 제품(또는 신규제품)과의 관계 및 연관성에 대해 기술한다. @@ -52,21 +54,13 @@ SRS에서 중요한 것은 external interface이다. 컴포넌트간의 인터페이스 가 명시되어야 하고 ## 2.4 Product Functions (제품 주요 기능) -본 프로젝트 산출물의 주요 기능을 간략히 기술한다. 상세한 기능은 7장에서 참조한다. -7장의 주요 제목과 일치해야 한다. -브로셔에 들어갈 내용을 빠짐없이 -자세한 기술은 생략. -고객이 보았을 때 이 제품을 왜 사야 하는 지에 대한 것을 기술 +Street Drop은 다음과 같은 기능을 제공합니다. +1) 음악 공유: 사용자들은 자신이 좋아하는 음악을 애플리케이션에 업로드하고, 위치 정보를 기반으로 공유할 수 있습니다. -1) Provide a summary of the major functions the product must perform or must let the user perform. Details will be provided in Section 7, so only a high level summary (such as a bullet list) is needed here. Sometimes the function summary that is necessary for this part can be taken directly from the section of the higher-level specification (if one exists) that allocates particular functions to the software product. -2) This describes the functionality of the system in the language of the customer . -3) What specifically does the system that will be designed have to do? -4) Drawings are good, but remember this is a description of what the system needs to do, not how you are going to build it. (That comes in the design document). +2) 위치 기반 서비스: 애플리케이션은 사용자의 현재 위치 정보를 활용하여 주변의 다른 사용자들이 공유한 음악을 확인하고, 주변 사용자들과 상호작용할 수 있는 서비스를 제공합니다. -For clarity: -1) The functions should be organized in a way that makes the list of functions understandable to the customer or to anyone else reading this SRS for the first time. -2) Textual or graphic methods can be used to show the different functions and their relationships. A picture of the major groups of related requirements and how they relate, such as a top level data flow diagram or object class diagram, is often effective. Such a diagram is not intended to show a design of a product but simply shows the logical relationships among variables. +3) 소셜 기능: 사용자들은 음악에 대한 평가와 댓글을 남기며, 다른 사용자들과 소통하고 커뮤니케이션할 수 있습니다. ## 2.5 User Classes and Characteristics (사용자 계층과 특징) From e57d10f7a1daa67b3bf5b84378a1ebf03ec9c9c8 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Wed, 16 Aug 2023 12:33:35 +0900 Subject: [PATCH 10/15] :recycle: refactor(admin): remove unnecessary import (#295) * :recycle: refactor(admin): remove unnecessary import * :recycle: refactor(admin): change apis dir to common, domains * :recycle: refactor(admin): remove import --- .../depromeet/auth/controller/MemberController.java | 2 -- .../depromeet/{apis => }/common/HealthController.java | 2 +- .../depromeet/{apis => }/common/dto/PageMetaData.java | 2 +- .../item/controller/ItemController.java | 6 +++--- .../item/controller/ItemService.java | 10 +++++----- .../item/dto/ItemAllResponseDto.java | 4 ++-- .../{apis => domains}/item/dto/ItemResponseDto.java | 2 +- .../item/repository/ItemRepository.java | 2 +- .../user/controller/UserController.java | 10 +++++----- .../user/controller/UserStaticalController.java | 11 +++++------ .../{apis => domains}/user/dto/ResponseDto.java | 2 +- .../user/dto/UserActivityResponseDto.java | 2 +- .../user/dto/UserAllResponseDto.java | 4 ++-- .../user/dto/UserAllStaticCountDto.java | 2 +- .../user/dto/UserBasicInfoResponseDto.java | 2 +- .../user/dto/UserDetailInfoResponseDto.java | 2 +- .../user/dto/UserDetailResponseDto.java | 2 +- .../{apis => domains}/user/dto/UserResponseDto.java | 3 +-- .../user/dto/UserSignUpCountRequestDto.java | 2 +- .../user/dto/UserSignUpCountResponseDto.java | 2 +- .../user/repository/UserRepository.java | 2 +- .../{apis => domains}/user/service/UserService.java | 10 +++++----- .../user/service/UserStaticService.java | 10 +++++----- .../village/controller/VillageController.java | 4 ++-- .../village/dto/ItemCountPerVillageResponseDto.java | 2 +- .../village/repository/VillageRepository.java | 2 +- .../village/service/VillageService.java | 6 +++--- .../global/security/config/WebSecurityConfig.java | 1 - .../security/filter/JwtAuthenticationFilter.java | 1 - .../InvalidTokenAuthenticationEntryPoint.java | 1 - 30 files changed, 53 insertions(+), 60 deletions(-) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => }/common/HealthController.java (88%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => }/common/dto/PageMetaData.java (87%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/item/controller/ItemController.java (86%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/item/controller/ItemService.java (88%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/item/dto/ItemAllResponseDto.java (74%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/item/dto/ItemResponseDto.java (91%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/item/repository/ItemRepository.java (95%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/controller/UserController.java (81%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/controller/UserStaticalController.java (76%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/ResponseDto.java (93%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserActivityResponseDto.java (85%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserAllResponseDto.java (74%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserAllStaticCountDto.java (87%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserBasicInfoResponseDto.java (89%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserDetailInfoResponseDto.java (88%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserDetailResponseDto.java (90%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserResponseDto.java (80%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserSignUpCountRequestDto.java (91%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/dto/UserSignUpCountResponseDto.java (63%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/repository/UserRepository.java (97%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/service/UserService.java (92%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/user/service/UserStaticService.java (84%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/village/controller/VillageController.java (87%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/village/dto/ItemCountPerVillageResponseDto.java (81%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/village/repository/VillageRepository.java (95%) rename backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/{apis => domains}/village/service/VillageService.java (85%) diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/auth/controller/MemberController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/auth/controller/MemberController.java index 0d2ba7bb..27bfa7bc 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/auth/controller/MemberController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/auth/controller/MemberController.java @@ -1,10 +1,8 @@ package com.depromeet.auth.controller; import com.depromeet.auth.entity.Member; -import com.depromeet.auth.service.AuthService; import com.depromeet.auth.service.MemberService; import com.depromeet.global.annotation.ReqMember; -import lombok.Getter; import lombok.RequiredArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/HealthController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/HealthController.java similarity index 88% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/HealthController.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/HealthController.java index 0a4e9ee1..49f7afbb 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/HealthController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/HealthController.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.common; +package com.depromeet.common; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/dto/PageMetaData.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/dto/PageMetaData.java similarity index 87% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/dto/PageMetaData.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/dto/PageMetaData.java index 52201e5d..7896edf1 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/common/dto/PageMetaData.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/common/dto/PageMetaData.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.common.dto; +package com.depromeet.common.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemController.java similarity index 86% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemController.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemController.java index afe5b25e..90fd5d32 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemController.java @@ -1,7 +1,7 @@ -package com.depromeet.apis.item.controller; +package com.depromeet.domains.item.controller; -import com.depromeet.apis.item.dto.ItemAllResponseDto; -import com.depromeet.apis.user.dto.ResponseDto; +import com.depromeet.domains.item.dto.ItemAllResponseDto; +import com.depromeet.domains.user.dto.ResponseDto; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemService.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemService.java similarity index 88% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemService.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemService.java index 631c741c..be84270d 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/controller/ItemService.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/controller/ItemService.java @@ -1,9 +1,9 @@ -package com.depromeet.apis.item.controller; +package com.depromeet.domains.item.controller; -import com.depromeet.apis.common.dto.PageMetaData; -import com.depromeet.apis.item.dto.ItemAllResponseDto; -import com.depromeet.apis.item.dto.ItemResponseDto; -import com.depromeet.apis.item.repository.ItemRepository; +import com.depromeet.common.dto.PageMetaData; +import com.depromeet.domains.item.dto.ItemAllResponseDto; +import com.depromeet.domains.item.dto.ItemResponseDto; +import com.depromeet.domains.item.repository.ItemRepository; import com.depromeet.item.Item; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemAllResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemAllResponseDto.java similarity index 74% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemAllResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemAllResponseDto.java index e2e1215d..a7ad1fe7 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemAllResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemAllResponseDto.java @@ -1,6 +1,6 @@ -package com.depromeet.apis.item.dto; +package com.depromeet.domains.item.dto; -import com.depromeet.apis.common.dto.PageMetaData; +import com.depromeet.common.dto.PageMetaData; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemResponseDto.java similarity index 91% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemResponseDto.java index 06377928..815319a3 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/dto/ItemResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/dto/ItemResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.item.dto; +package com.depromeet.domains.item.dto; import lombok.AllArgsConstructor; import lombok.Builder; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/repository/ItemRepository.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/repository/ItemRepository.java similarity index 95% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/repository/ItemRepository.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/repository/ItemRepository.java index 4339e3f3..ff3d5e2e 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/item/repository/ItemRepository.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/item/repository/ItemRepository.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.item.repository; +package com.depromeet.domains.item.repository; import com.depromeet.item.Item; import com.depromeet.user.User; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserController.java similarity index 81% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserController.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserController.java index 775de06e..cf2b3b3b 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserController.java @@ -1,10 +1,10 @@ -package com.depromeet.apis.user.controller; +package com.depromeet.domains.user.controller; -import com.depromeet.apis.user.dto.ResponseDto; -import com.depromeet.apis.user.dto.UserAllResponseDto; -import com.depromeet.apis.user.dto.UserDetailResponseDto; -import com.depromeet.apis.user.service.UserService; +import com.depromeet.domains.user.dto.ResponseDto; +import com.depromeet.domains.user.dto.UserAllResponseDto; +import com.depromeet.domains.user.dto.UserDetailResponseDto; +import com.depromeet.domains.user.service.UserService; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserStaticalController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserStaticalController.java similarity index 76% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserStaticalController.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserStaticalController.java index 09304ae5..7e139edd 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/controller/UserStaticalController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/controller/UserStaticalController.java @@ -1,10 +1,9 @@ -package com.depromeet.apis.user.controller; +package com.depromeet.domains.user.controller; -import com.depromeet.apis.user.dto.UserAllStaticCountDto; -import com.depromeet.apis.user.dto.UserSignUpCountRequestDto; -import com.depromeet.apis.user.dto.UserSignUpCountResponseDto; -import com.depromeet.apis.user.service.UserStaticService; -import lombok.Getter; +import com.depromeet.domains.user.dto.UserAllStaticCountDto; +import com.depromeet.domains.user.dto.UserSignUpCountRequestDto; +import com.depromeet.domains.user.dto.UserSignUpCountResponseDto; +import com.depromeet.domains.user.service.UserStaticService; import lombok.RequiredArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/ResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/ResponseDto.java similarity index 93% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/ResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/ResponseDto.java index 91dfb4dd..99fbe6d3 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/ResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/ResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserActivityResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserActivityResponseDto.java similarity index 85% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserActivityResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserActivityResponseDto.java index a60c976d..3d0c5c9b 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserActivityResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserActivityResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllResponseDto.java similarity index 74% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllResponseDto.java index c7873fc5..5eff93ef 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllResponseDto.java @@ -1,6 +1,6 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; -import com.depromeet.apis.common.dto.PageMetaData; +import com.depromeet.common.dto.PageMetaData; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllStaticCountDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllStaticCountDto.java similarity index 87% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllStaticCountDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllStaticCountDto.java index 830c7fad..0d7b379d 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserAllStaticCountDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserAllStaticCountDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserBasicInfoResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserBasicInfoResponseDto.java similarity index 89% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserBasicInfoResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserBasicInfoResponseDto.java index f481eac1..5bbf8e52 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserBasicInfoResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserBasicInfoResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailInfoResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailInfoResponseDto.java similarity index 88% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailInfoResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailInfoResponseDto.java index b8c6bc49..f486f847 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailInfoResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailInfoResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailResponseDto.java similarity index 90% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailResponseDto.java index e1c033e0..ed6144cc 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserDetailResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserDetailResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserResponseDto.java similarity index 80% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserResponseDto.java index 0b07ca86..3b462518 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserResponseDto.java @@ -1,6 +1,5 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; -import com.depromeet.user.User; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountRequestDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountRequestDto.java similarity index 91% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountRequestDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountRequestDto.java index 251dcf9a..f214b125 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountRequestDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountRequestDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountResponseDto.java similarity index 63% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountResponseDto.java index 1bbe50f0..3d8532f6 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/dto/UserSignUpCountResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/dto/UserSignUpCountResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.dto; +package com.depromeet.domains.user.dto; public record UserSignUpCountResponseDto(String date, Long count) { } diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/repository/UserRepository.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/repository/UserRepository.java similarity index 97% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/repository/UserRepository.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/repository/UserRepository.java index 8ce1b818..41647c56 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/repository/UserRepository.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/repository/UserRepository.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.user.repository; +package com.depromeet.domains.user.repository; import com.depromeet.user.User; import org.springframework.data.domain.Page; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserService.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserService.java similarity index 92% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserService.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserService.java index d9e1e6df..23d78cff 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserService.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserService.java @@ -1,9 +1,9 @@ -package com.depromeet.apis.user.service; +package com.depromeet.domains.user.service; -import com.depromeet.apis.common.dto.PageMetaData; -import com.depromeet.apis.item.repository.ItemRepository; -import com.depromeet.apis.user.dto.*; -import com.depromeet.apis.user.repository.UserRepository; +import com.depromeet.common.dto.PageMetaData; +import com.depromeet.domains.item.repository.ItemRepository; +import com.depromeet.domains.user.dto.*; +import com.depromeet.domains.user.repository.UserRepository; import com.depromeet.user.User; import lombok.RequiredArgsConstructor; import org.springframework.data.domain.Page; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserStaticService.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserStaticService.java similarity index 84% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserStaticService.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserStaticService.java index 6cabed9a..6e6406cf 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/user/service/UserStaticService.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/user/service/UserStaticService.java @@ -1,9 +1,9 @@ -package com.depromeet.apis.user.service; +package com.depromeet.domains.user.service; -import com.depromeet.apis.user.dto.UserAllStaticCountDto; -import com.depromeet.apis.user.dto.UserSignUpCountRequestDto; -import com.depromeet.apis.user.dto.UserSignUpCountResponseDto; -import com.depromeet.apis.user.repository.UserRepository; +import com.depromeet.domains.user.dto.UserAllStaticCountDto; +import com.depromeet.domains.user.dto.UserSignUpCountRequestDto; +import com.depromeet.domains.user.dto.UserSignUpCountResponseDto; +import com.depromeet.domains.user.repository.UserRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/controller/VillageController.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/controller/VillageController.java similarity index 87% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/controller/VillageController.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/controller/VillageController.java index a799fd51..d72629e3 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/controller/VillageController.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/controller/VillageController.java @@ -1,6 +1,6 @@ -package com.depromeet.apis.village.controller; +package com.depromeet.domains.village.controller; -import com.depromeet.apis.village.service.VillageService; +import com.depromeet.domains.village.service.VillageService; import lombok.RequiredArgsConstructor; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/dto/ItemCountPerVillageResponseDto.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/dto/ItemCountPerVillageResponseDto.java similarity index 81% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/dto/ItemCountPerVillageResponseDto.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/dto/ItemCountPerVillageResponseDto.java index 547a0cb4..c9a7ab48 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/dto/ItemCountPerVillageResponseDto.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/dto/ItemCountPerVillageResponseDto.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.village.dto; +package com.depromeet.domains.village.dto; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/repository/VillageRepository.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/repository/VillageRepository.java similarity index 95% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/repository/VillageRepository.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/repository/VillageRepository.java index c772c9ba..8ec0038b 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/repository/VillageRepository.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/repository/VillageRepository.java @@ -1,4 +1,4 @@ -package com.depromeet.apis.village.repository; +package com.depromeet.domains.village.repository; import com.depromeet.area.village.VillageArea; import org.springframework.data.jpa.repository.JpaRepository; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/service/VillageService.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/service/VillageService.java similarity index 85% rename from backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/service/VillageService.java rename to backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/service/VillageService.java index 9bc0ab9e..6135c72c 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/apis/village/service/VillageService.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/domains/village/service/VillageService.java @@ -1,7 +1,7 @@ -package com.depromeet.apis.village.service; +package com.depromeet.domains.village.service; -import com.depromeet.apis.village.dto.ItemCountPerVillageResponseDto; -import com.depromeet.apis.village.repository.VillageRepository; +import com.depromeet.domains.village.dto.ItemCountPerVillageResponseDto; +import com.depromeet.domains.village.repository.VillageRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/config/WebSecurityConfig.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/config/WebSecurityConfig.java index baf41f9e..2dedaec0 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/config/WebSecurityConfig.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/config/WebSecurityConfig.java @@ -1,7 +1,6 @@ package com.depromeet.global.security.config; -import com.depromeet.auth.repository.MemberRepository; import com.depromeet.auth.repository.MemoryMemberRepository; import com.depromeet.global.security.filter.CustomUsernamePasswordAuthenticationFilter; import com.depromeet.global.security.filter.JwtAuthenticationFilter; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/filter/JwtAuthenticationFilter.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/filter/JwtAuthenticationFilter.java index 971a2eb9..0a1486fc 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/filter/JwtAuthenticationFilter.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/filter/JwtAuthenticationFilter.java @@ -2,7 +2,6 @@ import com.depromeet.auth.entity.Member; -import com.depromeet.auth.repository.MemberRepository; import com.depromeet.auth.repository.MemoryMemberRepository; import com.depromeet.exception.BusinessException; import com.depromeet.exception.ErrorResponse; diff --git a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/provider/InvalidTokenAuthenticationEntryPoint.java b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/provider/InvalidTokenAuthenticationEntryPoint.java index 92591a15..a7105f15 100644 --- a/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/provider/InvalidTokenAuthenticationEntryPoint.java +++ b/backend/streetdrop-admin/streetdrop-admin-server/src/main/java/com/depromeet/global/security/provider/InvalidTokenAuthenticationEntryPoint.java @@ -11,7 +11,6 @@ import org.springframework.security.core.AuthenticationException; import org.springframework.security.web.AuthenticationEntryPoint; - import java.io.IOException; @Slf4j From 0daf93e651cc690c1f79179d71cadba4b6dc716b Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Wed, 16 Aug 2023 16:07:53 +0900 Subject: [PATCH 11/15] =?UTF-8?q?=F0=9F=90=9B=20fix(api):=20fix=20api=20sw?= =?UTF-8?q?agger=20prod=20environment=20disable=20(#292)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../streetdrop-api/src/main/resources/application-dev.yml | 5 ++++- .../streetdrop-api/src/main/resources/application-prod.yml | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/backend/streetdrop-api/src/main/resources/application-dev.yml b/backend/streetdrop-api/src/main/resources/application-dev.yml index 7b5cf470..cce2eb5f 100644 --- a/backend/streetdrop-api/src/main/resources/application-dev.yml +++ b/backend/streetdrop-api/src/main/resources/application-dev.yml @@ -38,4 +38,7 @@ cloud: stack: auto: false notification: - noti-server-url: ${NOTI_SERVER_URL} \ No newline at end of file + noti-server-url: ${NOTI_SERVER_URL} +springdoc: + swagger-ui: + enabled: true \ No newline at end of file diff --git a/backend/streetdrop-api/src/main/resources/application-prod.yml b/backend/streetdrop-api/src/main/resources/application-prod.yml index 7b5cf470..79e12b71 100644 --- a/backend/streetdrop-api/src/main/resources/application-prod.yml +++ b/backend/streetdrop-api/src/main/resources/application-prod.yml @@ -38,4 +38,7 @@ cloud: stack: auto: false notification: - noti-server-url: ${NOTI_SERVER_URL} \ No newline at end of file + noti-server-url: ${NOTI_SERVER_URL} +springdoc: + swagger-ui: + enabled: false \ No newline at end of file From bcce9038510fcd4579d7a34b3a3802d95d3ac6f9 Mon Sep 17 00:00:00 2001 From: Jung Seonghun <80201773+seonghun-dev@users.noreply.github.com> Date: Wed, 16 Aug 2023 16:08:26 +0900 Subject: [PATCH 12/15] :bug: fix(api) : add / to health controller (#294) * :bug: fix(api) : add / to health controller * :bug: fix(api) : add / to health controller batch, noti --- .../java/com/depromeet/common/controller/HealthController.java | 2 +- .../src/main/java/com/depromeet/common/HealthController.java | 2 +- .../java/com/depromeet/common/controller/HealthController.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/HealthController.java b/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/HealthController.java index 7c8a4826..fbb7ec7f 100644 --- a/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/HealthController.java +++ b/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/HealthController.java @@ -6,7 +6,7 @@ @RestController public class HealthController { - @GetMapping("/health") + @GetMapping({"/health", "/"}) public String health() { return "Application Health Good!"; } diff --git a/backend/streetdrop-batch/src/main/java/com/depromeet/common/HealthController.java b/backend/streetdrop-batch/src/main/java/com/depromeet/common/HealthController.java index 47e40397..c24250bc 100644 --- a/backend/streetdrop-batch/src/main/java/com/depromeet/common/HealthController.java +++ b/backend/streetdrop-batch/src/main/java/com/depromeet/common/HealthController.java @@ -6,7 +6,7 @@ @RestController public class HealthController { - @GetMapping("/health") + @GetMapping({"/health", "/"}) public String health() { return "Application Health Good!"; } diff --git a/backend/streetdrop-notification/src/main/java/com/depromeet/common/controller/HealthController.java b/backend/streetdrop-notification/src/main/java/com/depromeet/common/controller/HealthController.java index 4d6e2332..ae82681a 100644 --- a/backend/streetdrop-notification/src/main/java/com/depromeet/common/controller/HealthController.java +++ b/backend/streetdrop-notification/src/main/java/com/depromeet/common/controller/HealthController.java @@ -6,7 +6,7 @@ @RestController public class HealthController { - @GetMapping("/health") + @GetMapping({"/health", "/"}) public String health() { return "Application Health Good!"; } From dcd54936fceec6ad4c2bfea5ed165e2f1444e64f Mon Sep 17 00:00:00 2001 From: siyeonSon <87802191+siyeonSon@users.noreply.github.com> Date: Wed, 16 Aug 2023 17:33:03 +0900 Subject: [PATCH 13/15] :sparkles: feat(api): implement flyway for database migration (#250) --- backend/streetdrop-api/build.gradle | 3 + .../src/main/resources/application-dev.yml | 5 +- .../src/main/resources/application-prod.yml | 5 +- .../main/resources/db/migration/V1__init.sql | 168 ++++++++++++++++++ .../src/main/resources/application.yml | 8 - 5 files changed, 179 insertions(+), 10 deletions(-) create mode 100644 backend/streetdrop-api/src/main/resources/db/migration/V1__init.sql delete mode 100644 backend/streetdrop-domain/src/main/resources/application.yml diff --git a/backend/streetdrop-api/build.gradle b/backend/streetdrop-api/build.gradle index 4f975d49..de3f77a7 100644 --- a/backend/streetdrop-api/build.gradle +++ b/backend/streetdrop-api/build.gradle @@ -35,6 +35,9 @@ dependencies { implementation 'org.springframework.boot:spring-boot-starter-webflux' implementation 'io.awspring.cloud:spring-cloud-starter-aws:2.3.1' + + implementation 'org.flywaydb:flyway-core' + implementation 'org.flywaydb:flyway-mysql' } test { diff --git a/backend/streetdrop-api/src/main/resources/application-dev.yml b/backend/streetdrop-api/src/main/resources/application-dev.yml index cce2eb5f..3b2494fa 100644 --- a/backend/streetdrop-api/src/main/resources/application-dev.yml +++ b/backend/streetdrop-api/src/main/resources/application-dev.yml @@ -9,7 +9,10 @@ spring: maximum-pool-size: 20 jpa: hibernate: - ddl-auto: update + ddl-auto: none + flyway: + enabled: true + baseline-on-migrate: true cache: type: redis redis: diff --git a/backend/streetdrop-api/src/main/resources/application-prod.yml b/backend/streetdrop-api/src/main/resources/application-prod.yml index 79e12b71..bd9a79f0 100644 --- a/backend/streetdrop-api/src/main/resources/application-prod.yml +++ b/backend/streetdrop-api/src/main/resources/application-prod.yml @@ -9,7 +9,10 @@ spring: maximum-pool-size: 20 jpa: hibernate: - ddl-auto: update + ddl-auto: none + flyway: + enabled: true + baseline-on-migrate: true cache: type: redis redis: diff --git a/backend/streetdrop-api/src/main/resources/db/migration/V1__init.sql b/backend/streetdrop-api/src/main/resources/db/migration/V1__init.sql new file mode 100644 index 00000000..3f5ec23e --- /dev/null +++ b/backend/streetdrop-api/src/main/resources/db/migration/V1__init.sql @@ -0,0 +1,168 @@ +CREATE TABLE IF NOT EXISTS `album_cover` ( + `album_cover_id` bigint NOT NULL AUTO_INCREMENT, + `album_image` varchar(255) NOT NULL, + `album_thumbnail` varchar(255) NOT NULL, + PRIMARY KEY (`album_cover_id`) +) ENGINE=InnoDB AUTO_INCREMENT=505 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `artist` ( + `artist_id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + PRIMARY KEY (`artist_id`) +) ENGINE=InnoDB AUTO_INCREMENT=355 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `album` ( + `album_id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + `album_cover_id` bigint NOT NULL, + `artist_id` bigint NOT NULL, + PRIMARY KEY (`album_id`), + KEY `FK7otyksnaj781l0b2r8570vefc` (`album_cover_id`), + KEY `FKmwc4fyyxb6tfi0qba26gcf8s1` (`artist_id`), + CONSTRAINT `FK7otyksnaj781l0b2r8570vefc` FOREIGN KEY (`album_cover_id`) REFERENCES `album_cover` (`album_cover_id`), + CONSTRAINT `FKmwc4fyyxb6tfi0qba26gcf8s1` FOREIGN KEY (`artist_id`) REFERENCES `artist` (`artist_id`) +)ENGINE=InnoDB AUTO_INCREMENT=505 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `song` ( + `song_id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + `album_id` bigint NOT NULL, + PRIMARY KEY (`song_id`), + KEY `FKrcjmk41yqj3pl3iyii40niab0` (`album_id`), + CONSTRAINT `FKrcjmk41yqj3pl3iyii40niab0` FOREIGN KEY (`album_id`) REFERENCES `album` (`album_id`) +) ENGINE=InnoDB AUTO_INCREMENT=535 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `genre` ( + `genre_id` bigint NOT NULL AUTO_INCREMENT, + `name` varchar(255) NOT NULL, + PRIMARY KEY (`genre_id`) +) ENGINE=InnoDB AUTO_INCREMENT=63 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `song_genre` ( + `song_genre_id` bigint NOT NULL AUTO_INCREMENT, + `genre_id` bigint NOT NULL, + `song_id` bigint DEFAULT NULL, + PRIMARY KEY (`song_genre_id`), + KEY `FKmpuht870e976moxtxywrfngcr` (`genre_id`), + KEY `FK1ssu87dg5vsdxpmyjqqc42if3` (`song_id`), + CONSTRAINT `FK1ssu87dg5vsdxpmyjqqc42if3` FOREIGN KEY (`song_id`) REFERENCES `song` (`song_id`), + CONSTRAINT `FKmpuht870e976moxtxywrfngcr` FOREIGN KEY (`genre_id`) REFERENCES `genre` (`genre_id`) +) ENGINE=InnoDB AUTO_INCREMENT=2485 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `users` ( + `user_id` bigint NOT NULL AUTO_INCREMENT, + `idfv` varchar(100) NOT NULL, + `nickname` varchar(20) NOT NULL, + `music_app` varchar(255) NOT NULL, + `user_level_id` bigint NOT NULL, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + PRIMARY KEY (`user_id`) +) ENGINE=InnoDB AUTO_INCREMENT=350 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `users_level` ( + `user_level_id` bigint NOT NULL AUTO_INCREMENT, + `description` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `image` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`user_level_id`) +) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +CREATE TABLE IF NOT EXISTS `block_user` ( + `block_id` bigint NOT NULL AUTO_INCREMENT, + `blocked_id` bigint NOT NULL, + `blocker_id` bigint NOT NULL, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + PRIMARY KEY (`block_id`) +) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +CREATE TABLE IF NOT EXISTS `default_nick_name` ( + `id` bigint NOT NULL AUTO_INCREMENT, + `post_nick_name` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL, + `pre_nick_name` varchar(5) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`id`) +) ENGINE=InnoDB AUTO_INCREMENT=79 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +CREATE TABLE IF NOT EXISTS `state_area` ( + `state_id` bigint NOT NULL AUTO_INCREMENT, + `state_code` int NOT NULL, + `state_name` varchar(255) NOT NULL, + `version` int NOT NULL, + PRIMARY KEY (`state_id`) +) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `city_area` ( + `city_id` bigint NOT NULL AUTO_INCREMENT, + `city_code` int NOT NULL, + `city_name` varchar(255) NOT NULL, + `version` int NOT NULL, + `state_id` bigint NOT NULL, + PRIMARY KEY (`city_id`), + KEY `FKrf563rtlt9al5bw1lekn18du1` (`state_id`), + CONSTRAINT `FKrf563rtlt9al5bw1lekn18du1` FOREIGN KEY (`state_id`) REFERENCES `state_area` (`state_id`) +) ENGINE=InnoDB AUTO_INCREMENT=229 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `village_area` ( + `village_id` bigint NOT NULL AUTO_INCREMENT, + `version` int NOT NULL, + `village_center_point` point DEFAULT NULL, + `village_code` int NOT NULL, + `village_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `village_polygon` multipolygon NOT NULL, + `city_id` bigint NOT NULL, + PRIMARY KEY (`village_id`), + KEY `FKadtch2u4brlxykg1e03xdkyiw` (`city_id`), + SPATIAL KEY `idx_coordinates` (`village_polygon`), + CONSTRAINT `FKadtch2u4brlxykg1e03xdkyiw` FOREIGN KEY (`city_id`) REFERENCES `city_area` (`city_id`) +) ENGINE=InnoDB AUTO_INCREMENT=3516 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +CREATE TABLE IF NOT EXISTS `item` ( + `item_id` bigint NOT NULL AUTO_INCREMENT, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + `content` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `album_cover_id` bigint NOT NULL, + `song_id` bigint NOT NULL, + `user_id` bigint NOT NULL, + PRIMARY KEY (`item_id`), + KEY `FKip7vjlqnw0rt125paig31ni3` (`album_cover_id`), + KEY `FKf9j8ocdanjs7a48djb3aqd0en` (`song_id`), + CONSTRAINT `FKf9j8ocdanjs7a48djb3aqd0en` FOREIGN KEY (`song_id`) REFERENCES `song` (`song_id`), + CONSTRAINT `FKip7vjlqnw0rt125paig31ni3` FOREIGN KEY (`album_cover_id`) REFERENCES `album_cover` (`album_cover_id`) +) ENGINE=InnoDB AUTO_INCREMENT=798 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `item_claim` ( + `item_claim_id` bigint NOT NULL AUTO_INCREMENT, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + `item_id` bigint NOT NULL, + `user_id` bigint NOT NULL, + `reason` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + `status` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL, + PRIMARY KEY (`item_claim_id`) +) ENGINE=InnoDB AUTO_INCREMENT=34 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +CREATE TABLE IF NOT EXISTS `item_like` ( + `item_like_id` bigint NOT NULL AUTO_INCREMENT, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + `item_id` bigint DEFAULT NULL, + `user_id` bigint DEFAULT NULL, + PRIMARY KEY (`item_like_id`) +) ENGINE=InnoDB AUTO_INCREMENT=212 DEFAULT CHARSET=utf8mb3; + +CREATE TABLE IF NOT EXISTS `item_location` ( + `item_location_id` bigint NOT NULL AUTO_INCREMENT, + `created_at` datetime(6) NOT NULL, + `modified_at` datetime(6) NOT NULL, + `name` varchar(255) DEFAULT NULL, + `point` point NOT NULL, + `item_id` bigint NOT NULL, + `village_id` bigint NOT NULL, + PRIMARY KEY (`item_location_id`), + KEY `FK50oxdirrbr9uk55y7xlrq6jmv` (`item_id`), + KEY `FKlnnflryk5f1y35ismb0qpnepy` (`village_id`), + CONSTRAINT `FK50oxdirrbr9uk55y7xlrq6jmv` FOREIGN KEY (`item_id`) REFERENCES `item` (`item_id`), + CONSTRAINT `FKlnnflryk5f1y35ismb0qpnepy` FOREIGN KEY (`village_id`) REFERENCES `village_area` (`village_id`) +) ENGINE=InnoDB AUTO_INCREMENT=798 DEFAULT CHARSET=utf8mb3; \ No newline at end of file diff --git a/backend/streetdrop-domain/src/main/resources/application.yml b/backend/streetdrop-domain/src/main/resources/application.yml deleted file mode 100644 index 009172b2..00000000 --- a/backend/streetdrop-domain/src/main/resources/application.yml +++ /dev/null @@ -1,8 +0,0 @@ -spring: - datasource: - driver-class-name: com.mysql.cj.jdbc.Driver - - jpa: - properties: - hibernate.dialect: org.hibernate.dialect.MySQLDialect - database-platform: org.hibernate.dialect.MySQLDialect \ No newline at end of file From d6d62d4793c4cb15547badba6b1fb1aa5d5e8558 Mon Sep 17 00:00:00 2001 From: siyeonSon <87802191+siyeonSon@users.noreply.github.com> Date: Thu, 17 Aug 2023 21:26:12 +0900 Subject: [PATCH 14/15] :memo: docs: reduce readme image size (#299) * :memo: docs: reduce readme image size * :memo: docs: change my-page image without a white background * :memo: docs: change logo image extension * :memo: docs: change logo image extension jpg -> png --- README.md | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index ec9a8ce1..8916299f 100644 --- a/README.md +++ b/README.md @@ -5,25 +5,25 @@ [![Github Action](https://github.com/depromeet/street-drop-server/actions/workflows/jacoco.yml/badge.svg)](https://github.com/depromeet/street-drop-server/actions) ## 💁‍♂️ Introduction -![intro-main](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/intro-main.jpg?raw=true) -![intro-description](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/intro-description.jpg?raw=true) -![home](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/home.jpg?raw=true) -![radius](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/radius.jpg?raw=true) -![search](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/search.jpg?raw=true) -![comment](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/commnet.jpg?raw=true) -![home-2](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/home-2.jpg?raw=true) -![community](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/community.jpg?raw=true) -![mypage](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/mypage.jpg?raw=true) -![setting](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/setting.jpg?raw=true) -![push-notification](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/push-notification.jpg?raw=true) -![let's-go](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/lets-go.jpg?raw=true) +![intro-main](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/intro-main.jpeg?raw=true) +![intro-description](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/intro-description.jpeg?raw=true) +![home](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/home.jpeg?raw=true) +![radius](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/radius%202.jpeg?raw=true) +![search](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/search.jpeg?raw=true) +![comment](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/commnet.jpeg?raw=true) +![home-2](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/home-2.jpeg?raw=true) +![community](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/community.jpeg?raw=true) +![mypage](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/mypage%202.jpeg?raw=true) +![setting](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/setting.jpeg?raw=true) +![push-notification](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/push-notification.jpeg?raw=true) +![let's-go](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/lets-go.jpeg?raw=true) ## 💁‍♀️ User Flow -![user-flow](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/user-flow.png?raw=true) +![user-flow](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/user-flow.jpeg?raw=true) ## 👜 Repository | [street-drop-iOS](https://github.com/depromeet/street-drop-iOS) | [street-drop-server](https://github.com/depromeet/street-drop-server) | @@ -64,10 +64,10 @@ ## 🚎 Architecture -![server-architecture](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/sever-architecture.png?raw=true) +![server-architecture](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/sever-architecture.jpeg?raw=true) ## 📈 ERD -![ERD](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/ERD.png?raw=true) +![ERD](https://github.com/siyeonSon/ReadmeImage/blob/main/street-drop-server/ERD.jpeg?raw=true) ## 🧑‍💻 Server Engineers | Profile | Contact | Github | From a1dcaeb27f3bab44b9e69dccecef0444f5b55cb2 Mon Sep 17 00:00:00 2001 From: siyeonSon <87802191+siyeonSon@users.noreply.github.com> Date: Tue, 22 Aug 2023 21:37:15 +0900 Subject: [PATCH 15/15] :sparkles: feat(api, search): add custom path of the swagger-ui using springdoc properties (#302) * :fire: chore(api): delete SwaggerController * :fire: chore(search): delete SwaggerController * :sparkles: chore(api): add custom path of the swagger-ui using springdoc properties * :sparkles: chore(search): add custom path of the swagger-ui using springdoc properties --- .../common/controller/SwaggerController.java | 13 ------------- .../src/main/resources/application-dev.yml | 8 ++++---- .../src/main/resources/application-prod.yml | 9 +++++---- .../global/common/controller/SwaggerController.java | 13 ------------- .../src/main/resources/application.yml | 6 +++++- 5 files changed, 14 insertions(+), 35 deletions(-) delete mode 100644 backend/streetdrop-api/src/main/java/com/depromeet/common/controller/SwaggerController.java delete mode 100644 backend/streetdrop-search/src/main/java/com/depromeet/global/common/controller/SwaggerController.java diff --git a/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/SwaggerController.java b/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/SwaggerController.java deleted file mode 100644 index 0d2d0a18..00000000 --- a/backend/streetdrop-api/src/main/java/com/depromeet/common/controller/SwaggerController.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.depromeet.common.controller; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; - -@Controller -public class SwaggerController { - - @GetMapping("/swagger") - public String swagger() { - return "redirect:/swagger-ui/index.html"; - } -} diff --git a/backend/streetdrop-api/src/main/resources/application-dev.yml b/backend/streetdrop-api/src/main/resources/application-dev.yml index 3b2494fa..05112170 100644 --- a/backend/streetdrop-api/src/main/resources/application-dev.yml +++ b/backend/streetdrop-api/src/main/resources/application-dev.yml @@ -24,6 +24,9 @@ spring: timeout: 30 swagger: server-url: ${SWAGGER_SERVER_URL} +springdoc: + swagger-ui: + path: /swagger slack: token: ${slack.token} monitoring-channel: error @@ -41,7 +44,4 @@ cloud: stack: auto: false notification: - noti-server-url: ${NOTI_SERVER_URL} -springdoc: - swagger-ui: - enabled: true \ No newline at end of file + noti-server-url: ${NOTI_SERVER_URL} \ No newline at end of file diff --git a/backend/streetdrop-api/src/main/resources/application-prod.yml b/backend/streetdrop-api/src/main/resources/application-prod.yml index bd9a79f0..2c8ef8ce 100644 --- a/backend/streetdrop-api/src/main/resources/application-prod.yml +++ b/backend/streetdrop-api/src/main/resources/application-prod.yml @@ -24,6 +24,10 @@ spring: timeout: 30 swagger: server-url: ${SWAGGER_SERVER_URL} +springdoc: + swagger-ui: + enabled: false + path: /swagger slack: token: ${slack.token} monitoring-channel: error @@ -41,7 +45,4 @@ cloud: stack: auto: false notification: - noti-server-url: ${NOTI_SERVER_URL} -springdoc: - swagger-ui: - enabled: false \ No newline at end of file + noti-server-url: ${NOTI_SERVER_URL} \ No newline at end of file diff --git a/backend/streetdrop-search/src/main/java/com/depromeet/global/common/controller/SwaggerController.java b/backend/streetdrop-search/src/main/java/com/depromeet/global/common/controller/SwaggerController.java deleted file mode 100644 index 267c5354..00000000 --- a/backend/streetdrop-search/src/main/java/com/depromeet/global/common/controller/SwaggerController.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.depromeet.global.common.controller; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; - -@Controller -public class SwaggerController { - - @GetMapping("/swagger") - public String swagger() { - return "redirect:/swagger-ui/index.html"; - } -} diff --git a/backend/streetdrop-search/src/main/resources/application.yml b/backend/streetdrop-search/src/main/resources/application.yml index 475a2619..0bcb0ae0 100644 --- a/backend/streetdrop-search/src/main/resources/application.yml +++ b/backend/streetdrop-search/src/main/resources/application.yml @@ -7,4 +7,8 @@ management: logging: level: root: INFO - org.springframework.web: INFO \ No newline at end of file + org.springframework.web: INFO + +springdoc: + swagger-ui: + path: /swagger \ No newline at end of file

Download on the App Store