From a8ac30bc9f30727ac8888048f71aea59544a13f3 Mon Sep 17 00:00:00 2001
From: Luke Hagar <98849695+luke-hagar-sp@users.noreply.github.com>
Date: Mon, 9 Oct 2023 15:46:05 -0500
Subject: [PATCH] Initial commit
---
.github/ISSUE_TEMPLATE/bug-report.md | 32 +
.github/ISSUE_TEMPLATE/feature-request.md | 20 +
.github/workflows/greetings.yml | 16 +
.gitignore | 16 +
.npmrc | 1 +
.prettierrc | 12 +
.vscode/extensions.json | 3 +
.vscode/settings.json | 6 +
LICENSE | 21 +
LICENSE.txt | 21 +
README.md | 153 +
assets/images/api-linter-output.png | Bin 0 -> 442020 bytes
build.config.json | 15 +
globals.d.ts | 2 +
jsconfig.json | 11 +
package-lock.json | 14113 ++++++++++++++++
package.json | 75 +
postcss.config.cjs | 13 +
screenshot.png | Bin 0 -> 53678 bytes
src/app.html | 13 +
src/app.postcss | 8 +
src/electron.cjs | 104 +
src/global.d.ts | 6 +
src/lib/AnimatedCounter.svelte | 110 +
src/lib/Counter.svelte | 41 +
src/lib/Logo.svelte | 27 +
src/lib/sailpoint/sdk.ts | 8 +
src/lib/utils/hmr-stores.js | 29 +
src/lib/utils/oauth.ts | 91 +
src/preload.cjs | 13 +
src/routes/+layout.js | 1 +
src/routes/+layout.svelte | 25 +
src/routes/+page.server.ts | 16 +
src/routes/+page.svelte | 66 +
src/routes/api/sailpoint/search/+server.ts | 24 +
src/routes/callback/+page.server.ts | 43 +
src/routes/callback/+page.svelte | 39 +
src/routes/callback/loadinglist.ts | 260 +
src/routes/home/+page.svelte | 70 +
.../+page.svelte | 129 +
.../source-account-create-error/+page.svelte | 118 +
.../SailPoint-Developer-Community-Lockup.png | Bin 0 -> 44093 bytes
static/favicon.ico | Bin 0 -> 1150 bytes
static/icon.png | Bin 0 -> 35815 bytes
static/sveltekit-electron.svg | 16 +
svelte.config.js | 19 +
tailwind.config.ts | 26 +
tsconfig.json | 35 +
vite.config.js | 11 +
49 files changed, 15878 insertions(+)
create mode 100644 .github/ISSUE_TEMPLATE/bug-report.md
create mode 100644 .github/ISSUE_TEMPLATE/feature-request.md
create mode 100644 .github/workflows/greetings.yml
create mode 100644 .gitignore
create mode 100644 .npmrc
create mode 100644 .prettierrc
create mode 100644 .vscode/extensions.json
create mode 100644 .vscode/settings.json
create mode 100644 LICENSE
create mode 100644 LICENSE.txt
create mode 100644 README.md
create mode 100644 assets/images/api-linter-output.png
create mode 100644 build.config.json
create mode 100644 globals.d.ts
create mode 100644 jsconfig.json
create mode 100644 package-lock.json
create mode 100644 package.json
create mode 100644 postcss.config.cjs
create mode 100644 screenshot.png
create mode 100644 src/app.html
create mode 100644 src/app.postcss
create mode 100644 src/electron.cjs
create mode 100644 src/global.d.ts
create mode 100644 src/lib/AnimatedCounter.svelte
create mode 100644 src/lib/Counter.svelte
create mode 100644 src/lib/Logo.svelte
create mode 100644 src/lib/sailpoint/sdk.ts
create mode 100644 src/lib/utils/hmr-stores.js
create mode 100644 src/lib/utils/oauth.ts
create mode 100644 src/preload.cjs
create mode 100644 src/routes/+layout.js
create mode 100644 src/routes/+layout.svelte
create mode 100644 src/routes/+page.server.ts
create mode 100644 src/routes/+page.svelte
create mode 100644 src/routes/api/sailpoint/search/+server.ts
create mode 100644 src/routes/callback/+page.server.ts
create mode 100644 src/routes/callback/+page.svelte
create mode 100644 src/routes/callback/loadinglist.ts
create mode 100644 src/routes/home/+page.svelte
create mode 100644 src/routes/identity-inactive-but-has-access/+page.svelte
create mode 100644 src/routes/source-account-create-error/+page.svelte
create mode 100644 static/SailPoint-Developer-Community-Lockup.png
create mode 100644 static/favicon.ico
create mode 100644 static/icon.png
create mode 100644 static/sveltekit-electron.svg
create mode 100644 svelte.config.js
create mode 100644 tailwind.config.ts
create mode 100644 tsconfig.json
create mode 100644 vite.config.js
diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md
new file mode 100644
index 0000000..91f749b
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug-report.md
@@ -0,0 +1,32 @@
+---
+name: Bug Report
+about: Create a report to help us improve.
+title: "[BUG] Your Bug Report Here"
+labels: bug
+assignees: ''
+
+---
+
+**Describe the bug**
+A clear and concise description of what the bug is.
+
+**To Reproduce**
+Steps to reproduce the behavior:
+1. Go to '...'
+2. Click on '....'
+3. Scroll down to '....'
+4. See error
+
+**Expected behavior**
+A clear and concise description of what you expected to happen.
+
+**Screenshots**
+If applicable, add screenshots to help explain your problem.
+
+**Operating System (please complete the following information):**
+ - OS: [e.g. Windows 10 19044.1889, Ubuntu 18.04, Mac OS Monterey 12.4]
+ - CLI Environment [e.g. Command Prompt, Powershell, Terminal]
+ - Version [e.g. 1.04]
+
+**Additional context**
+Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/feature-request.md b/.github/ISSUE_TEMPLATE/feature-request.md
new file mode 100644
index 0000000..0204996
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature-request.md
@@ -0,0 +1,20 @@
+---
+name: Feature Request
+about: Suggest an idea for this project.
+title: "[FEATURE] Your Feature Request Here "
+labels: enhancement
+assignees: ''
+
+---
+
+**Is your feature request related to a problem? Please describe.**
+A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
+
+**Describe the solution you'd like.**
+A clear and concise description of what you want to happen. Ex. It would be nice if [...]
+
+**Describe alternatives you've considered.**
+A clear and concise description of any alternative solutions or features you've considered. Ex. I have seen similar features on [...]
+
+**Additional context**
+Add any other context or screenshots about the feature request here.
diff --git a/.github/workflows/greetings.yml b/.github/workflows/greetings.yml
new file mode 100644
index 0000000..d328d43
--- /dev/null
+++ b/.github/workflows/greetings.yml
@@ -0,0 +1,16 @@
+name: Greetings
+
+on: [pull_request_target, issues]
+
+jobs:
+ greeting:
+ runs-on: ubuntu-latest
+ permissions:
+ issues: write
+ pull-requests: write
+ steps:
+ - uses: actions/first-interaction@v1
+ with:
+ repo-token: ${{ secrets.GITHUB_TOKEN }}
+ issue-message: "๐ Thanks for opening your first issue here! Welcome to the community!"
+ pr-message: "๐ Thanks for opening this pull request! We really appreciate contributors like you! ๐"
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ae39d10
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,16 @@
+node_modules
+.svelte-kit
+
+dist
+build
+package
+
+.env
+.env.*
+*.local
+!.env.example
+
+yarn-error.log
+pnpm-lock.yaml
+
+.DS_Store
diff --git a/.npmrc b/.npmrc
new file mode 100644
index 0000000..c42da84
--- /dev/null
+++ b/.npmrc
@@ -0,0 +1 @@
+engine-strict = true
diff --git a/.prettierrc b/.prettierrc
new file mode 100644
index 0000000..1032184
--- /dev/null
+++ b/.prettierrc
@@ -0,0 +1,12 @@
+{
+ "svelteSortOrder": "scripts-markup-styles",
+ "htmlWhitespaceSensitivity": "ignore",
+ "trailingComma": "all",
+ "requirePragma": false,
+ "bracketSpacing": true,
+ "singleQuote": true,
+ "printWidth": 100,
+ "useTabs": true,
+ "tabWidth": 4,
+ "semi": true
+}
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
new file mode 100644
index 0000000..bdef820
--- /dev/null
+++ b/.vscode/extensions.json
@@ -0,0 +1,3 @@
+{
+ "recommendations": ["svelte.svelte-vscode"]
+}
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 0000000..b797227
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,6 @@
+{
+ "[svelte]": {
+ "editor.formatOnSave": true,
+ "editor.defaultFormatter": "svelte.svelte-vscode"
+ }
+}
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..d196f33
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2022 Braden Wiggins and contributors: https://github.com/fractalhq/sveltekit-electron/graphs/contributors
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/LICENSE.txt b/LICENSE.txt
new file mode 100644
index 0000000..3a42989
--- /dev/null
+++ b/LICENSE.txt
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2022 SailPoint
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..1f08bd4
--- /dev/null
+++ b/README.md
@@ -0,0 +1,153 @@
+
+
+## How to use this template
+
+Update sheild urls
+
+* Update url for discourse, downloads, issues, current release, and contributors
+
+Project title and logo
+
+* Update project title and description
+* Update project logo
+* Update link to point to documentation about this project
+
+About the project
+
+* Update project screenshot
+* Update the paragraph with what your project is meant to accomplish
+
+Getting started
+
+* Describe how to get started with your project
+* Describe any prerequisites needed to run your project
+* Describe how to install and run your project
+
+Discuss
+
+* Create a tag in our discourse forum for your project
+* Update link in this section to point to the newly created tag
+
+After these steps are complete remove this checklist!
+
+[![Discourse Topics][discourse-shield]][discourse-url]
+![Times Downloaded][downloads-shield]
+![Issues][issues-shield]
+![Latest Releases][release-shield]
+![Contributor Shield][contributor-shield]
+
+[discourse-shield]: https://img.shields.io/discourse/topics?label=Discuss%20This%20Tool&server=https%3A%2F%2Fdeveloper.sailpoint.com%2Fdiscuss
+[discourse-url]: https://developer.sailpoint.com/discuss/tag/workflows
+[downloads-shield]: https://img.shields.io/github/downloads/sailpoint-oss/api-linter/total?label=Downloads
+[issues-shield]:https://img.shields.io/github/issues/sailpoint-oss/api-linter?label=Issues
+[release-shield]: https://img.shields.io/github/v/release/sailpoint-oss/api-linter?label=Current%20Release
+[contributor-shield]:https://img.shields.io/github/contributors/sailpoint-oss/api-linter?label=Contributors
+
+[product-screenshot]: ./assets/images/api-linter-output.png
+
+
+
+
+ An awesome README template to jumpstart your projects!
+
+ Explore the docs ยป
+
+
+
+
+WqXEqADay^xvrrPCgfaLlp6+X*;Q!j6f*o&WFROv7>Q`y?aG#04=iRSK6 zEjj;Es{`a`p@do%AQy)4EnNEG7Uk}f1nw3jveFIeGD0l}s_N4!-?-07GUfG+)n%E# zHIZ;A3{O>(J~*9k0)n_9GL5~B(pfIPelFeJW~9@Z2bN#kzi7nB#q~E$aOyhu#;dr= zK21jKg@B<9HM`DDl1wUJNpg$}jT3hTOamRISS&}vGPtD;rx(xbr==`g*&Vb9<|q&U z9y0e59)?v3@3HOuRr?TKm-xarD!~++I7JTG{DV~I))$@yFI>TAUhG*TGeu46`CL=q zBH!-1Q3VSq{uKM6BgPFL8I}{&O)g8uWq9sFY5BZG43C($TTQ+&*v>xInA9!|EiOwj zUtWtyrB6wiTnJvLgY%j1a=$kN25pkC6sYx!tUu*H1-c#MFM$qr;pHf15>-Xx_r+qG zKPv0DYe-DUo6iO6%RYq`d~a>B>1eSI+V|ehAD`VCGgp{jz +uSk^h zvlluhAF_>}0SYglDg%vk>c<;*`7SO;C51UA! {Y0HRLO}+ag5Y!8e>Nfrr26HMkZ(`O-xBD-%2Ar~;El@GwT)vUCK@M1Gx9+M zWVcytW?2f^c`H01ezO3_VV16_Hh$7|y3Y!Nv{N@-f7%DEOofh*<8-qKPaM#uJ^M6u zw^bT;{aQ{-0!k(?hbA0eAn|5qWF$FF&eBiXm^x`(T^zA{US7M&%sw@&$s`pYWm>6@ zl;vRS `~rj3=6_&?Rqw0Qc&klUatuqe6`Z@YI3EHEq+AwxhU2f?j@}SB%UGk+pVjaG z{$xJF|5t^w^5LrwsJ{OQ@BIDFdspwz;B)KJr2pm8#QgL9{U3#Xw+kLnNBJw)e@uO- z8ua(M|5>wp`|&UqST)hT)4v#1`p=ioKS!w3-L1deIkb38J?wv-K;9g9=Q7*=WG(P_ zJpU;vzqgG`0pwR>el|e(+jZkVfBe6H^Z)StUwHF>vh;sE`cpant%u70A37wGZC{wC zNEiL@x7h#CljT+j`mcj6u;756Bpa6sJwsN7H@PlZY7lvMrt8an*XVzEB!B8mVRNdm zC=A@gW1wZqDu_c=Ratlusq4=cF{wBRYDCDAHLpWVJrHSQ3U=e{I@+**UC}1v!ivfZ z5`@Q&sYF#b89_4wf0? CKb;IdIaBPsBcmNGN){Y4o)R=pQ6Gef04W!J3`ZD z^VfX;W175QVEvpDmT%Lb*u;D3WjpzSl)CDj4MIH`uDGN>hL QjLQ4B1}vwvkoDxp#f*I0ai9HT*(0JkeXiQEbB#f0i^ z(drW47dZbdRH-hQ0MG;VYt|JquK=JGmv}&S WZx=Fx+IS4IF2mOeYwUkZ$G{LWuwN6?%j%R3j8skK0J@sW zN5HfUi#)dYfN&h67-;D{^;NowvwiR DKm))! z{tcE#IMAZ-U%uPOQy3j8etMbb3IKGNa--IKyNv <1KQI5y kh0)>T z9UZU*Ok{y|{0{~1ex!W~lgl)7T_Qw&_^u3^?>Gp@D0|=$;}$~LM@{e08cIgk{1;Zh zFJ+`*W3eHOSs-eFO1(=WHgPhdFhUgDy@L?~>y8lqe!fz`LjLg&ct^{@26xkRktlzF zTQ0@I=}gankvK;#8VdAXd+{6UA-S;2e+;}`HZD0Jm#GLb(s%`4z+hZ{1FI4P04}QZ zMPXp#sNYO9y#IOnmWke77$%U$2A+%R#onhuj7I)wBzlFl3kQjxjV-4+)vgy$A-zDI zRuVm%0udsR(4}PeQ#T-CJu_u)#=Z5}XaZZze6gka;T?F*&tRerr^D;bs8ttV$mhVe z2qrXUe8N5OnRwr3J#O?Y{7ZK&(o46dc2qNLEz(_aZ12@_;1tU!@08kBATs`)%N|9} z+{->3`@}dt=dBu0Ezfn>baT~DVz<7m5}(2AC>^qEbE38~X`JlX4de_K@>H#!cUD$G zT)Pvkw+1_HD~yfe4Ds07z9`fVUqU@^jDc|axLHc6+RDw(MX@C0%%GdyrkkFVX$wPe z3U`Ux94bEAEq)AO!uAk#l?f3X9fH($v@!#d5c zr-Ezd%gm CPE82RH>*;>6n&L@#Tvsx)c;yl&nws(Zh)k(ILcL+K;r$gk(N0^g ztgm(xx1tELzTZL00bC0mgVH{J#qAe>evNXPf0*&b#!8NLxG84><@@N B?6gTLr)=z4h)8AIbDV<+fFPu zKwzmSmL P~h#InB;X(b7BR@K`#?iam|#oHEqx)J09 zQ+Il<;smSX3TBQ>G7y(aGLjR6CB#TQdyckeyGd-vY6N;*H$h><;EC@@R20@`>j5_A zI4!OxJBzOQ&;YwR9^))Rk)8TeFx#|+gOJIQzENH;U!12#_V=!`_YZHSp*IKyOjw_$ zUBBf6EgQp-eWn@GexZW_A0y!#@cxE!$xNmUk=?G(V;a4A;}ozN`h?SNq8n4CM}(bx zFeAHC4SmKHxWlq4-n_83bm5tKPD4?G+h#9U&!-NOgi}F%iu?>WhL!u_-~BUPg;=XA zl-+ x))>_O5K^pqr*&Y#}3AE772Q%B|_D z_Yqsqd#n0u-ow^YNJm}q@4K?eI~a*Cd%Li=zKfG_0TrwTI#JR$7l(3e6=;|oqlyYt zo0mOej|JZ|))qJESSSqxEisz68v4O2)1W4nsu}l4%q(WyX+f0GoYC{l7cm*-kTzzE zR+T_gKpL(Dmdy{%_(Wr~6t7Gb8puYQ%EsLM*(tWVnVOiPJ2m1y@`cqG>SYrPL91H< z7|}jHe#*aHEnIv~D-yu96gH>ExCsNFCRHi4MT7yb%1uDOjf+idr44t6E9Te8Y<)pY zGRRUM&iTK?5hEBd<8?iDDzrylwz*UDK+wfqi~U#24>#ArHaxC|3(faN2_BA~vFAd3 zoH;G8Dn`P*I)kH`eK3>}%GbiGuL}2FKy}N}21Pt8v9tNLQyWIp+k8ZyYILXc$E{X? z ^Vh$@|+NIV8Lah?4v%dy8{ zwjM~giIk!z^8M6*2=fBj5KsnMRkJk|6qGqwvN&Y)DI;3?#8Yo=z@T}i{gPQ(ZnJN! z45;{xW-ikZ8}dcL?g1KQS?$!V?nEF#3r7fa%PK9+9gD{^N&B{^D(uD&M`Lv2k#?K< zFVFO^$RbucvPh92u>wkUqA ziFkktWIHZe32uj;XgQ3IZhP2U>xMQ$clZwbG(fn-j}3j$xLARfOb(MWmzH0jocxgI zYTB~xPLScVG+IgU1iO)?R6|{kqhf|-yLoTzi^(!#DJO>WOpGSj@2y5hR*bg$_e7Ve z9572 ?ive&~kPoLkjST>|j_3YdTxHX_T?PjR5e^F;AUu1cT5yrO!&FP@2< zGtT;KoB3tbd99Vor9*u^tljjCa!otHS(dqs-4t$2*DXlW#hs9>umFAgvIc9&+>S7T z+zyuOfkaa%&>)b|ydWyy?J$_@^OT5s)AHDKELF7T5V%8#O+{Pqr^~cOS#PCLS5Brq z6zEkK!>E{q7igK{uKz0DvU0Xhn#XWf)dFaFnBubL4UIeuU^7d%tR8&bnF~mAdnJvw zOmv>Wu;Oy*#7SN9U~kpzd~%R++R0|yJ*4Wk>Yhh8dz5UpOUO;;tXg`V8PXjYeAL}Q zBR?a+$f;CmN^M^)A#8u1s&U(GG_UUJ<$4YLaT_8{nt{3ofK^nh9y1~R)I~pm6onBB zLr9Dtp7xIh^NmDKqoZttCewVUbw}lDP1i}oUTL=8t+@o_WN>cw8?@jYxd?0{=3zit zKd2frlM9yvvXe06eC*cd#bZgFrfTLg{eeQ{uFAO_puJsZe*H$S(SBP@@rmF5>!$Cx zg2#vbf_Y91^AAUZH>6W-L{^hP;6tFGCH@rR)?a@-mhgIB5jEqvrQ3TzE*&};YewD~ z)vjl ~_)+gXWyCII7%Agg%c>yT)ia zb)Sdt^aK5)Zl0iUuO_)w>L?wRYf@P7@`df*zhW#GGKuMR>l;je9futvz{~RB2OlSU z;YZiN$Hi%pq#kE!XYy6~BCDsRH^=D$44ud}Ya&QXM_V556AH(!H|-sBo{)x>p`Zt~ zqYuy77eBMry6o?i4=%AlE^UZFwK+T|XV`WRxK5_oub{h4y~{p~G8~Emy!NVk1d5N( zwVZa$tZI)>M(Uq!kvR3dT`{Kfjri^SB?Bf3!E;Vyr+OGg5PY6X$LN%ndS%N!>sYtl zdqHFsn_s(7+HL!2b}AK}BSyy~I8Hx=C-SN#4niZ#-k}Q5z#i7&FCKjOZ9jRzzF7n* zLCbMkK&=4%6?D77xU{}K-aMYIUvNCzBQm=263CbPXsPfc?a^t;eB|kb`2n}iLumD0 z3o4O=$^JSSU;A40*ge^Hv0%)VNZy{U5~-y9vWb( KqBB$(GfpNp_dqs5@Vye4Ky^)ea-Z?)&mC#kWJntubdV z)C{6x-Y0ZT>VmhCUDJyfd7rRpPHwjh;>URc#mKrXD|YKB CxvSY^F29XI*=>#;lH)N_Vygz pKc>QUUjk=E$Ads+3LKotTbb67!Rag$TsFc4`#) zs>#Y%YqL?&0lYC=Wve@%Xx_|3f_q{ISAJcc<~gmQaX~if^RFIwtd8!#l2|N#RJ)Kn zvfp!g9pA;BZ5Kd6qE8|H$S6fWWRF=vf +IRRbmuIw33@pO{WCg#;?)YIdcN 3E1f+;^~6d;k4@B!{V}D#zyZ z(vKd+#JdY>8yUru+b)R0cH{%GWJ9K>*f;VPpT%Qcg_3pMH2oy}Gvo?X!bFk#IHxV< zsqKc*#_Mi)=uqjuQ2Mr|h1nAZbEUH2;usm35t&g)?~{KwYlhfDNh(*Jb_CY0!6n*& ze=FeB@Vd~IIgh4n=mRQ)L1Dvu<{nPpru1scbh6G `5}|7v^Jh>dV}2Y@fend#(l$Y$w~#~}} zHA!D0(Gtl!LT}In)twe?|1PktDtmA_=5&w@C6f+`#I!k-;gpQ#NZ-8z+KR@x%SD|= zCs=MwF&@Z{*R&P~v%-OmTIru3P4idw;u6k_rM-0N5RD!4lh{tbDZ8nvoP+ZN626B8 z-*W#P?&s&@k%=!+953Yj3=;b&HMUsFajTrPW~h8Gz7_kgrZ^R9^oSyNmp0r0zUze3 zMqZ+IrrFKTgbN?d*hVH1R!f(u58aI_@-S}(U{q$Kl%l5HC7`tDZ_vO^)t4~}DQEm; zv7DpO@V17EF*{$;*haYx#CgxM)x)1r$kZ&-5{7C?0+%dNjMEPTvLVUWb*XkQ+<(E0 zx)>UxSpcExcQl36V@X1tl8#B^n)8V|CD98yrlzG9B&MpChm7@lu|*-n`-0E;OD*68 z*9Dt^&QH_N9bdDJYt}SfDKS}A9Y=#zjCBT_crB1j(i_dq?3OlF0Y;1#f+A6kG8cZE z&uipPjN5>2{5|ipfO0|wxkn@sr$ZcLK6)BZK-p0H1QX^7np)(dy2?2oL-g_rdiQCP zm$>TYIyEfko}W`BSo~yD$i>JcxK`0}^N=kp5uXwXAl_*I_0Z|z{nQ %s zMB4?F&T3q |=HqTaO^8|Z?C$M&k1DZl~S6v_S043wjxLYKc9cdO>y?G8MS zI-sUoS_~9sMFNge^^MOAIyEdRCG;IPs%cW3TaGp+TMcc}(Vi0rniwa6 Iwn4<-x=kusq34%$K`7+-gflE)%v-8?!qmg6@;J?H2tHXF}ZmSeQ-C$ms=v36aP z##@6$s404~L`7pES%C3etV|*xyni}liGR4w1v#_$Ec%87ytEW1PuTQIcdb+!P<)Fg zZjCJ9#me%DH;9o0nP2=cq7B`2L}RB?oo4NHLPU5Uolk^eC|eQn%OER!JT*>s?P3`x zXuKf7q<%6Z$Mbf6d6PH7(z4?x-%9mjt5)K`R%>*$M#_?bW}6>yG0k _PTDf5fMd$%SjT-4Y64t}ejtYE*Jmj)jYpMDk~iYkRaMx( 15EhZ}0qyhx_=uEz0+)JD(fahwoF#s^~cRz&Zp+jDi~XYkAhsYHe_VsKNC& z?;?^GmYPd=tnhLjburE0Wi=pWrtaF@Q}J@|>h!wU;Nll$=<*Tzbl1tHaz9%NAh4 nmjW&Yu|{9jp%6*DS|4p&eS!hD?JtMaj*y=zTMSEx(dMF9vrNxWRrp z9XPlAQ)hx*V=2~oRuhLcorW1)+KR0qKoqO*(b_l{iwV@y2Dz!YVd*q{b$s?zAk5vV zm2{C1Dy8pr{!M!$E5)`{r##8rw!@ltwTG?euwOu9^?Bypeq=jglr@c5#wo_>lOG=> z)=WuJb+H;9H!Bqy!UnqXfNH)X)C Rnv}YlN~$yIfIG@a(8V56NU7$#`5cB8tDy-ELkTs6rjJ*cYO-_ zt+kaR8d4^SBn)UGWEkW)EN?v!SlmZjCD_UH78gH$<0^ZBq2eOH)%JO4u@&D=7^QvN zS9bzNdC@p9rM7;0^3oy9?2 !;K{~`M7cX0h^Km5sU$d(-+VgK>Ee_`D_QB`_(6R(p5 zP;J`WI@gRzByoQ>v%5$`QaUb>U}{se$v*!&YsxIavbUroB`oncD+SET=d`{Ro#MO^ z_haoFE}uo6gX}K1XP9d&RQ{Ejbcg@*rj*PnIe|9g6c6;%MUi{wuC39PAW$ovZ$}KB zZ$b5tWM6S+eH2cY^)v%l5zseo&KyY?y_F*w(t5%PE-kFGq4(Xk@MLaV%xR+tdmT({ ziY|~{O|UtbQ4Bn80L~jj7%a9$kmjmSX1}KUIxTXc*l@p*HUD_aMs@-I>$Xi@b3kTL zsKD_No1L;{?fium&rTwi+lK&(xJzd(US>;+Xu$?sw4Eu?#k%oN%VAZ@Hy5)9xT zNo%(U53RG@Pmu&RFP<>5$WM&TQNMZ?pIb8n+-ggJP+=I-uR%xY$;U#@LL%=hDd;y( z8u44~eGdA bx5hi#?UomMLWt^Fb+|Cr=I&1ss!C?LLy=3mk1Vx({T$CgK00C&zfTG6ve^PO_bPViYNx6fp|)zj)=5 zkQf^mh (zYU&GnC$9~KXctjSh@vi;Yvt@HJ9;b6 UX7GsJc g21$*Aq=-TJy@uKXr$kA%^jh428f(zixCU7s?)7JnLtINQm-(e_NtydZ&=;I=-~ zK9|p$ckHE;-akpItF{qp-EUdAD&O*Be)Xwl)jJ?U>nK>^TTD5Q8z?|j74O(`ild~E z^|xDfIP>%Vom=$;aI5Tz`%=@UpDQ8PIS(uYkvZy9TZ=V*Fq8nr2D-b7k18vL+d^7t z)6>dQbl_r_6EiNqdA=NpUq7-b(*SV~bhCsW`( E z2B-LE61G|d$vWtM1#WL?i8w>g8I;tKgBn~J39Zv$;jUh_)f48;f+i7Llz9OfI<{ET zT-zsA5GptieF1#;hp+Go4h;uEr^7&(2eqnGF$(F^Y^Qhr+sq$Yw0w{fl4>0eku|@3 z7@*9b;dHL>E0!FkLGgOg$36;u+ooZ5tOhtyA8b=dZgOQ3YKyP0x%5L1-JW=mMY#vO z?FBk1yilrK{{Fl~O;j`OS!mw9)9DTreQ*;H1DiM^b1n(zR-*MdS qhN$bL7gvz;lCii|Hg^qz!U3u9myyjnx9d zf3yk+Q|%FJSx;# W4Q+i1VH5t@9dU9m``d=XTbAG_>7O|k&p9P_-rpa z-&k-jRe#R5#ZU0)@U>gU{y7e{B2c`eyk1&>p5eAtQFTb(x7t85*ZNJv9@~L>!ZNhM z!g(m 5*;daUjJc7~p zwDfl92GpBW`J$cMPe!RwLGd?|P6qVFKDYB7u76gLV_|AK`l|7W=)~FAMf8sSsVuO2 z_}UaZ<3xsvrfFvJ%@@I|BkXCOm1kTjC&on{Cma{M!!-Ksu|6k78tBvaFA70M4e5sT z78VB`r-WXt<23bek4Zy^_ltOfjcDJ5M(Vz#$$Q{G0xscB?G zXtSd9l{kE_V+q>{H(O|qS7zHd!#q>C2a9YKfL`=7mg5Gqk*)r`CA4a9-)AaPY>^Yq znXFpXJ>$s>&tu_jfj1w8Yk)Q)^?YXQ{jx<9E}<7W#4!#r!BPKCBg9>-GsaFjyr?p* zU=grgnX_t&cP)I{L1!Ulf;e;m#O#5G#vez!(;dd)(m;j#)VvMf*yM;~4_nI6%kMxe zc-DmYeu}}w^iVs8O7 $kndJtbCMU EGvyv4H?4ti0IP6rm(TpRXZA$yjV;`k}-j*~%5 z{2+nmlcT(RlT)9;s^`+V;ya#agNe1)04z>*k6aGc4eI5SoTP} Kzbp z;U6`pfAlyNemPXAwvI?udwQ8+w9F|b@xdaH0-*KI Z(gR!M4ODX&u+%DfW3Ixn92*mGrPe|bvr z2KnQj_)Fp1x|eS;*I!FIuUny*ek1y((F})z@>T@?{yI7?#?4{RCZn6%{#=6-SDn)- zkB=XU6NR%^fi6xXAIz~QPoK V)2j3vCI$u3_^hJYtkAn}7NF1F=QU_c!tn1wxiP0`pt;2Al zZjZ1K38+LDto?KH&>s#NT~RrPd7S8m0**(t73Npr*N=eW*ZYjZaEQQ{o`mo*g155t zVx`Yk2g3KSeyB?bQPi{seGz_w>*J8`@rjFsH;yXVil2BLY|5#j_AT5cuNG`;-gJm6 zj_(L$1AhqoGTVN )hng7_&FFL% zY-FJl9A^U`a}{!9{n-_z8w?f+g7$VaxGF?ElPF(1nAV{9OqqAtuq%taXlt$IOdp%{ zcI)8}kTtHTD)}llTd44y28SSm8q&ArH_ee4C$2eM*-j8}$m5T7gOuU}Qyh5?o^qnG zO&-&ithsM#7ZCO!o6m=h)-*Uvbt3(b*T1R;sM1_tS-Qj9=bmxx>g}Iu+pXx|bKYzX zTv(QKe9h?Iq&url$e~w#3GExRUGy__%#@Dfe&h6-;`1xc${o)B3gS2&y^lm(h1ZGu zEt*a5`>WdPZAerRa#y90b-gWxzCA!7heII8c#2qm9#Ec@dq(NI|DoG>*qHb7*HS%D z^pB_61G22u_+_IanEooZj{CKz_RI^7+Al{7T%~8d^ks{-Pwula%$$iSAF_cc)6eT9 zeXep<3bUIsx>4~>hckvr!yyL+teE|0_ht#c)BAFm4Skt2y-sEc1oy5wnS$cnuv(mT zt#&T`en4~G7Om#$C4x7{9g35EFjmlbe!#
)X4h za$hfoZzKf;v!bCIl>2 %WQzQDJK zsMsHa(SiW+e}f4lqcAxlvNQCtsgu&aIPxO9-D; d#2e>MOqu5z490UXqWFwo8C{?$QwVk^!Vlp`(M`lpxoQh~)?PmW*_v3$|D<}P z&(gC-?)${_7vbI7I1v?@FbKMTuF^W}4tCF@+3HuHU;LbJ9m&vl3$P3?=T7&1Rb_)I zb;#vehh4#~UAZ-Bn(G|?bIVLAZ{dhbHK 15VJBjd^dp zmijA?ulT~6Be@DHs;O0+uAQ5)eU3J+ !)_A1@?L<{P2ZJJbbB~34pFkO>5WIv zkd-~cta?NVG&p1EbhO0{XP&AaewIL9biO{?rf3z%0#Oo2E|x%)xAa;>@%iR(jSfak zwHx4E*M5oYSCy8zd&i`B9OPszK@3&!w21pcsy?ze4(Q^waLaxdEkdT7(MGq!fgUzp z;WNZCt?W{=J5N}jMD)@7mKZayPOoY1KY4V=`tK&MzM v7y8y?FC)z6vZ_u}HLTVj1vO7i@&yaKiWRpHUKH=oM9;|vreAyS^c1WZK z2)`dQSYwO9#<^i|G+!%$kjwIQeTMhszKc=40M@R+PG5 rwpg$y_;u1lA=fdMK(?5eujzr z{N0c55k1w-?a(N5 fc4^ d9!-tyIcq$# zRX!M0|7$x*`4a>;-cE%P1WqwA-Q!9bZ)X}KC^(qR{lqYyZx0Bd4!G&iac-GT(Z1OL z4?`_+d)m`$cvq|Pj9^44&}_V5(|S&Imy~Ri$$E1Aw2@20uyl{hvYr0wG=K2vOP{5F z(B6I|HDBU%N0afnQ^8 =qr2x% z ^;Oe)y*AWizdw>8b`%y1~!b@D(QYuWmKGt%KFe#dLYB;0Z`$?=-;y z%l*y>s^RXhT6>U FAgpy|eYQAMhqrcQ+Dt7Uw~{fQ!U(F~(sHzD=f z%#JNtM~`k~nd{w~%^xiKEwkQi7pOP*lcp5Joi8h@gfP_EuJpXR e}dwfmdBACJD1 3pPx3?pnG4SS;=w@oGSOxByV6@Ew(CXVd4=Z zT%TBOLw-%B^viM;Lc% 2^IJowJ zBn>3PGHmZtK@*W ?pqZnt? *`)Yf#XMPyG)s4iA0|n8LZ5@ep4|yR z#4MuUgFokVg3Z~IWK25}+K)&_Ip@v=!t6C%wXApH1LcuiWQ;O+U2aRmEw=U*_>@k5 zg40MTRBIYsryoLkO!|`n(?tcptj>KMiz8cOdMg-;L3KCTSCac}|1lZpcCrK`laW4m z^a5owz9h;(a8AX;Mv-RN&e*WeyuA1jlya3LSL54)iN>{XW>c!zcP1Jw^F#Rtuv`2r zk+YMTD10X~*WY5mbkx7ToTUL@==)-#jUg_48ODix{gWp9PQ7?ehd`xQwq5vFLntWx z!ooCO`)TRT_mQ1nk;_b#k9hui-<2%D*M_aE_qxOQqjr;H@K}+Cl$}v8`-6GjM|U&& ziDZf3-Z|%g|K1V`i1CL#N&;7oE^0i4GJ{UZDi9 b$lXPG8W*Xg=FR z!20S1hwSA=etY8nR!ILC+g6_O^sin3ca-M@ A6fnx5teXMxoun@S3=ecgmi zVG#gQ3t8b~cNB`A6%vHDdw(GCQ5q&WPa|2)w&~!Hq;x(}fS+MDpMCr`_F78>4)K!W zb`dLb=JRTQ>>t1f3w{(8Q6%?41R5IvpYB*{wyZD=J{%e>U@m0+-|)@E$#eWM+ W3SiL|8`006n)g6l 9CLV_)vALqUZ zc`CMW)5zOj2#ATu@7=j6ypdoZuD)aEO6ikdcYeoTu-}0;h6RBC-qJGMEgM6)=}}a) zC{F=70NQ 7UosyN0Sx~x*07(OJz*=qWMX;u5fK0_e4r~^-vR*bM>KIV0NO|PJJ7<% zTIF^A1T72@3vcpgsi|Snz_!clQRLx>u$#|{Z5C5afR$DPA_-U}qr4Sy-G5IE^SI+- z*1;MH9)z5#<0^(?^E3)T{97ge1{wnSFS 4M2uD2QTjtipVU;zaT;mJM1;sabZ&W zuKU`+|AQ@mo*nRiFlB$mU<+x80%hu6CFa8S66quUB*woKAe?s?6&wY -81%48O3IfgHP|j z_DKnYIHYC~9Z?fFUHjhqjpWV1J_jD(3J%{LNOKja|2g;_Os>8tqsRHt!yk2rS@Pm& z!oz=ld_OGwKC+jvDh4pUC^Bl0m5=1V$pnY&O9Y#FzWwnr3OX?Om-VaMc@elpO8zO# z3IGaZ!CTQN{#Etd_TR|BbV>>eaJqXnUe4rCVY XZM~08eDt((-dMf zz=-!QPXUGHz4zPdHhQ3N{3#;Hy0C?d65s|FhQVEAh)(=`u>@!!U(Lw0W?*l4u=5s0 zF3U~}XZS-_;E
PrWJ zW^Ji9f{G|iK5&OP!t94PkN;pYpx=aH>JKjP^RuTgMS#f8noD2~%w6(200~e8Pk$={ zUk7GI{6B`1v)?KLv=_7)qrlt+R`5$8V_>kO70DMg;J{>mpZ3TFE$V-ub}0_b4d3kJ z#RUv*Nb}_mmjtBrod)SK;1%sf-KwD2A_m{H|G+HO3#R<;D~aL(s_}~T5h11$G9j?- z)U;PEz{ho8-(l9ni;;WpPs~VfF+<`Qc{%}1?IT059>59=mbVi4LV_qPOm(L_qY8rR z|3mLKOTk2?o*wV(D{kPpkayv-8^wWLlkSsaz#y`}J8WK8%|EH><>di`tXQu1Efyb4 z=i6}~s}rF@A4lN8MR_)) h;Pm}Ho6fy+4-v0nFgq-#%8o-b@cU}q}O2b2k zKm99Yo?C{XV?4A#0c2dNm~t2ca7{3uqWS3oD^>mNnjBDz!~Yj(aj^4R#cD=EOa!zF zFPrycWD`IevSXdyy1@N+qQYN=B>Erbsu>G5H+{}CRx}=j@F6CJOlb)zmHde9!(ln0 zx0}%nqJ;(W?~f7l3CTWT(_|u|VAmGx0lww>cON9H)_b_jCTq+uG^;;K7a9hgt}lJU z_LiJlwNG~6c>Y4W9+65e{6ph(RcHtapX808>yiSmL?m^F^ZsJDvDIAl{9Zmw4@Glp zZ_4S;;1%>#;Kv>lt?t*CU*24%NPmG2Wk_jPoJZi&Jy+^dJQ@e$hEWeeJUGn?v0^V1 zW_;CMEI;&?>fJizYGWfm3H~4v9O4W%%z12lh79lBf%r5-CsQIJ8jneXf)0Fg3dvE6 zd>u;h>mlL{MzNWDPdr~}vdf7YS4QATqX(2TiN_<56EyYGd_4bzfUDAbky`fajLX5# zj_C@kR~;dwpDf>%xB_|H$*Ce@0Sea$_i453ozYD%fszIL;|<)6nKXg@*pN<#|3}$h zMpgBN-TyEm2#OL0B`FdDhwcWIZX^$lfV6ajC`cSqN$KwH4k=0L2Bi+&o&R<4`y1oA zZ+&q;@ASnUoW0lDYh7#3&o%ez6?46E!$*>Q_t;UpgHF9mkC_ZeIGHf= )~VcUjaJ3BKmV_>13H+?AC!i>je zT#!645pMVKw_>KOjMP=B{?Y-dfSdS}t_c5udwpM>7GKcg+wXAp%F`7#9zHmPDt!LwE9GdjKeW-ajbkhgDZumOAJ{z@u1IU8{A>q4Dz8l z%D}p|C*xHemD|v%7nLy`$$+%sL>d|atyQDaLTq)=6?cX!$c+)6`B>jo)M3tJpZ#!S zRz@4`EY;#1^G&(S1K+n|Aw)Q-hl$j?onYFDa#Y_f- mKsTGpp}c&*5v`Q0j >?A1vhu#N5T+&`py37fo=OYPBYqyOuo(E{^Mx*YL`BISiRB6 z@HS@`n}k*hIlY9zGFtlKF0&`pwTrnoC2>@w827(c8N_bpMQ*0~@dFfD L$?J>z_vUIq~ zTX|@+$1Pu2uM#Kg|N3ehi}?BezPaYlW?5o2MZzPBD~Ffh*1EYG<=QRG1!gwNCZnm(oB5>4L!IwD+8 zXKR|gQhfNC<#>sVpsIQIvJBhXUr67$;kGVE)$q6B Ment(vmj-+xZxe9tyE35LW#+RunkUq7K?{p4qa z%jhhd_l+t$pH5e`ybkyY5{~IAzt_G0{So%C=4ieG$eNt#IJUdnjh9sLjaW{rn!r4l zzGauCu6W-)Ki1PLu4~^i4?9jHE!^=t2{#@S$2+^nxBjte_8|7~==~0U^r~mN%8fm{ z`m%& O=1+e1UIcSq@Hqo3DjuGTTcs6Se^JCeZ~ zofSh*!TtQF-+;j(q_3>=f{!uUv)s6HdFf!LY=ZYqqaKB1D4Ewwe5?Kn+j9p(HnOhf zL@RAN?T;yUFuz=#A9+aeI&LI!=+kjnm~mq2!V x+^?a+fU%QCfn>jge^xCmzom&6ixZZxkZfJT7l +aTQZzza?I2IRid97+ZRJzZQ5J ziolH|+Jnb7w!(-t3(L(^czq@YUfyUR!SzUn$bV}fPKZk383`AX)9a=H5A}3YcGIb3 z3IaUVULV8eOsNh`yOZ;mn8FfYsM4J=@YZpeFuguMEw%SkKwp3is?o3n$bS|~CmT_w z4 CUp^V_5h!z-h 8@ID=y%ZZ$oddJzwvE`7ynHr_jdr#6i8EY7!C2AoLzhdJ~?Is!j zg15~Z(xsI@rrx(6W5B$ukva}BDai^MaOol?&ohWBcvGxssIEVo^QAJ6tp-cLT*7{x zGgKR|FEO+I!5YCQ_nO%v=iF(Ju(sWMOI`9ccB?D4%-hAa9+!k8*$OijE~2}CHgY&( zBVS!U#nVnIUZAdtXDwf${~7!GY`kwGE~B{4(+}@Co0$MaaDlUtjLG(lEj6mn$lB(j zRl*Vu4YphAGBj1I4F1HP7QkKm>c^J@i8-1O!-YLa^f9;0wK=WM !#U=*1J>azHWS*8}MA>OXtS~KI@MevI(#77~?V()92FG*v%Bzh6k)RWAoLV z*0ZWHa24AF<+_YX?@4{w_K|NNRh}p@j)LAVS@K#|lh-JwpR8%4@izI5a9}o}m0kI_ zb$VjHuKB;-aMF+Ea;S6CPL(W6_s5;9V(RiRS1)%RW6-B7nWvPLpLJtgpP$``VNElP zsx_Xt{@MI#(8fFevFS)QU4B#9$whC #Lb)O;KMyn% zqE)TYpE$8OQ7>i59z$t{tJgfLCU-qKlKZAo<-w)8W)-z=+sUuNlV{$&&@wgBNAxH~ zWK9g?BGG~i!ni*}uqwI;d4DU-TXzSa+tu@wr}=HZm>9pOS2wcK#W<=kU1e>!x6Nij zUpdOUTyED!i-s|#F_Jsj`;;?Kp{~Zrtjdz#rK_qV 1ztKA zrouT(`yPH|aS#;!i1lqJ8Js;e0 PVEW90g88t~(LAieU`nOB+@xgjN0w1OPb>0s-U{ B^Airj_zzsoW*>;c3M@QTeGe0Uf+=bX~Y|710Mg>$M
GUy$hUw0IP!l#;Y!zy+3 zh1ZM6v5l#W<2Gs3iEfJM7BD;JY`2&}m)W|VK3K_Q#k=*fg7mQOzC4RsmD=uSNlRjb z{dMn6wBHzd1^e*y7TZsLS)#K~hOLhkyF+ g?X2WSO>W41)HB_Z|6G zP>=RLR_ZL4qAd9B_np+$4U6!N(o3EOW@bECceQWOG52A@%}`6ycRX0ZF`cW4Q2OD# zt~84rK@3|^rW5T~mc=pHiDt3jG4vGBKq43xlnnTNfeuY6K_#ix(%DM$aChl8+xMj+ zDGnu}AqR=jL2%51sMC!cf>L-_DPc9eCIbU0FPI4)+PN4y`y5^}PuW9LsOQWq+rE|8 z05- dDxvswu}1Ckm(5`^=TPs_F$D1_dfA zsPWr9Hts3nz3w0#ennqbYqLNtlc8B{)19=X#q*=`{ItC)>#R}@d@ryeZfL=6iy+bP zdoW~4;IT;J#BPk7+tH)it@%1eN8`Qd#0A$>WwHLPnY8qnT&EpZV7;9DwBca*Wi?sk z)fdm3iz< zRJI~d!AkhuZ=`-f*pY8~xaoYxQ!EU-^t&eJJUOW$`N7}nW~3{AY{U$`j*Yhsc=Q#m z-zwL8i2&wiuBEK4cFTm}b-?2?O}~i^H6&y5>4>4$RH3_ie3_P$6)%n2Y)#qq?Avg& zXSu-G%IYA-R^5b7l^!mIHg<7|wWw0EQSCe=O33pr={}sbSM9k$hv)5ajUM`6*3k;m zvwsRt?|KVn ddQ`=XjVhJGBHh^WZ^0Ros&+Vld z*SH_k?ekWy-^V3-Z8v$B<(}TR#7rw(qj8ZhuT^^gyq)h14~}Bb-35vdX= NQ&9K)JItgRI6#AzfP40v)j^h3K$j_ 5z}tuV}3RD=787d)E#oFWrOY&kFr*;`ebNy{zi zx{pQ@W`;A3v79Z&ux>`H_6Q{$XovrMv{G(H>)m)(-55&VN)&?SYY8n5t&4VF+B2N2 zv|{XyXaC9oGfQ2_Z*hvHaVY59W@)##w|Lyr7tb$c#c8=hOIW@>?w|7}pX$4j^m*X2 zr+})qT)co%!pjW)MOp8mJW;NMT{qH&6k4ctF?-Ymfe(`a+`r$Ig*O%Hw $X44%vI-Alt(N!PG99cxwyU*J2{ z%q0ybPItCl?mX>N!}Nrk%Sz>9^j8{6Md>qAA1ltfu^C;UtX_XFHW;o@mU6b3W{BjU z?wugYC@&n)P#uYjr!-R`cN$5#K*dm)EHha;s;#@sckcU)-40m-L=*R36Y)Pz^5Y*r zC}ZSQWbxh81IOM&Decw*`Q#M7(yk|QI )LW0WRs5Ks7O#1(HF{2-P(_#ZsOTWnFA#@C(EUi zJQZdyjb#%fuMpGRFSDjoy49DLyvIo(2A4C#3OBMF^mhj0Zg9u4>a8~#ZF4w2tk;Zq zBofW~1YNIB`q$sWFA{R(qast`k-dOaqzWos`^Lq#_7bc5*VVT0F#QOeQLrdv3C~Op z!urwXZ9k6hj%q5?MMjOydYsUC6F_t^Nyg=TF-h!V?Vl9~QCKxPE%%sA0t$ph8$7Ml zJD3?`0b+@a?F1zwU8_osgKZditL;JScAJyz&cT?_!6MdsdM}jHQ_LqyBs}FveKCpm z-YNfHosfS}YU+mX!&LEJPYN$Jmf4koKZ?8bz@~CDwo)Wof$3L1pR<%)FCcIHoz|rt z0D1Ee+D{xd2KI*-@ecwV=CiaAQtoPvksNFcmaRCD0KPVyZL+%;Q6t_AN8UUA&}_r+ za+o}5sF`@a#2}YCl7riUkieu}1v0EE4sx_psg_(%4PDMwGwsc2J%an$7ozSnXjYN+ z+wB|oEg#gqC Ko@}m38^|^&z^x#%5?i-8SNT|h>w|Eb` zsS{l!<9r82(RnECRC;6CBXIAywU2y;Oxa!U8A=X)_r*Fqk7l@d((*YNU&2TG1%0V{ ztr2?=34ujCu2O@B6BrCtPytA^s`zbWNPnZjb;mPNU!VJbySQsAc7|A!&m*97iAjq@ zTTgK_93)*Slv%9f`tI#Jow*6y3048FnLSUngIu$gfZZVun|-evYIQTcBP(mS5eL(h zS9e!KY(0M#k$;+g{q>5j^;G%CHE&}MVBbhyo9cKM0l`%vETyoEuR+i*l&9PZUQBd# z$20{iv()&Q;q0< YYMY!lg5TQ5nz3GqY8c$!F41b0@vV0wu4N?2F4ut>7J& zzb~Bk>NpTfNw<;~S6n<8imLcj-eN8u)Um|ogi^6U5~)*+$DuK`r5xsa4y-Qc@s5T> z;04%3A@7N~>-N8waj>d4*&wSxvNW` 8BSs`S)--FM$j)X*ivq_#XIdg?o8)>%1csKH{<@a zJI()h!TcV#Q?569UbT?Ace-3+!ZM>a?ZmEwv-txD@XR2wA3X8g50#6{SD9igrH#q< zII`A#p2Sh{6*v8`{j$vGFP6|!2JfA_>*Hhgjcs6xe2+UAtCh&Wfw #AoWE}C=6o*I1G!LnN=Kg>{Hp~$j#%`zYL6xEAMt~G3*y?<)sBe${bS$h=T^x^J{ zA>)-4YHy~D<^SV)opZhvefQC7deojI2^tnr5(DuRZ!t4NLWNTy_pY {O!?ZY z#OgNK&_$jztfl$;=XLno-4^?WJBN# X?iw`gj7Qq=tzP3 z4+J@lN2O02Bky=V%}@V~Nhlu6X~A|!Y5!O-6l!FeFnd#(LIfS>HhCQ~x|DOfbSqrW zvf9vUvhw)98{%KDzID0s!Alzh228eT`aO-JZYwKD%jY1X*Qglv&xU?+e}?qx+tfWV zgcr=vSWMcr!fQ6Ci}^Fe4tAIqsKvXfj>d~DAwl>YZ?J6bf4^wBk+pN(#tS{Zi?$jU z7uVXa tXfq`a#8)-x`L#C^!#ATEa6O$gn#$?NIARw*>ZDz&NL z8s1WXcxeFBMm2jRZHqWk*E(#aQOtSDaoaSA2N80P^xv~JTw*btw41m1Jzl(GySFGY zS-&pjB58hGHA$WvVHH432(d?^9L!;}vI9Egfsfqlho27DS_$&I3w#f3s{<%%SV;hD z#VkEk)*K!w{&~M5XvEtG6FOgnaRkbv=3Q>n4X%Fo^P@pd9Zwl ^mhDc49td+PGy6d!t9C09{m+jhg`v9ucBY_WUnMybhAM*2fa zskKommRmRK 7J7BeO4aq8v1EN^>+lyk>^ z>RA3_TN}<29V^rs`wH8P>%Hrwq%9|+_BoKiAC($cW@7jBOWlLtUYBzUH3tM);n73f z!OJy{tFPuZr>L!h0vjLgn*d3@{N0%&EHXb!wtgiFGOhjsi$LI`_6yBd0{aq$2{uzw z4X0W5&>VH%v-{FlP>01%y)&B*Op`;+DscrDW@A}?(uNP%%O76Of>~mOO!}``5{D?o zB2|e{i`Z|`ou%(eKXZKV^t;xxvEeKw88-wk2oBMdMzl2mj@)XxDB&{}L7p$F2>L>6 zkJair0X~D1La9_HCg!MVv-X=MpHZ)upVwd`pXWQJ7=~7dGShWCNU&Rayfx>b%mP)< z!Mj-Zgc|B@5*aX6X#o)EkT#8363YTEYI=z;&kN{i+~g8@UaOZFMf`3+*Sioh@A%Y1 z|2c%O#m4R=YoJvmkh;U&74YF@hWk`<18<`_!G7prV_d#Qo9ZJKg@fVrEmys~q%3K0 zYsS4af(|NMY>-Pi+tUBEV~WBQS+2vuBE9K*zw^ToJ|E| fEM)1btMLqoY!&@bw#Pv*IDO>_(F>
H1tRi_ zuCi`mD?IRUbu3Z4FL6#!FEXEVYq~*3sa1sDiqXi<&1k$NA~zi`^LlGaCb0R;e!XHd z%cWOiFQJls(W0Rz7=lE|?i~BYzqBtfcwf+E5giyRY6)0I_Yp^s7jKH^D(Bo}_-h?m z?{u5ZdIVOI8yIVcM {w_3FMb0zBA+?S4h }}oglvS2k zWx+BH!*-@@q6DAA1Vp{e4-`- !|3)xC;!fysXq9ZL*r_ z?sQ`Y0D%STFo;knyUkh89FobsY^R0pblV%LyCsMYFP1xYXg8yd8`Ok%zh-orhY$%! z6Hki50@`hMIHHJo9mz>Bj5?qz!NmLlN1KDZmxg$oRz$JK+jE(#N|`@L z%v7^g6B|l2Ya6B|5TUv>sWX;07W2mFZF!P^yph-ll@N&s-RWi1n#Ye( VW5#AjMv!MnBAgaDotCIoJ1- zK+oC`twVYrkA{ri &jm-jr9VjcQ)o#d#;-yuXzC_=VzNVdIqu{Q86<=?9uC zUr}^Ri=0UD<;vCe5e^2vgDw3irF3+tC5Es-95IGtzhNJJ{@sa`pHSn&xLy(J#1|cm zqM9{M3g}sa63suS_Rv^KFkI@&8ACv<^Eo719Tj4MIHVUPu~R<$n;u5;8b{Cs*yms7 ze~2S6D2e=_nlr%Fd{@=?!vZv9_8-vVS$Ssi?BA+;1r@>*9%Yi}ngS?gnT%2r8OL*g zQhpZ|4g-axIk3VJ{AuJ2lFvW97eKxM? F>M$7$ 8!ODWHTNM(6Ra{wDeNIo%xnugaH~- zXyremC%(b!%Rh)7>>HxT8&~=86S$akXXo8Gz=6=usYFr1GeZV_Yv6&?3jve=AB8+w zC}MJ>lx&F8xq%=4*=j1q=n7oElSr-z&>z458g{}43gxB#erDL9>%ohxbtkC`7Y7VB zI$z0yyMSXNACRVb4xqIM|6$}w0}3dAU3?3h2{F%f`$&(;eg%MEPDi_Q+v^>;eB~}; zTKyva!%%Hcq89(-hYP(x+_og0Z;wbMz|J~3i0>7A0M87$vlAIWYxMu| dw?-?tc+j05xL7KG787!wv)R z7e&d0f(av-Do%Ir4S>J(EaA`9t&ZGC|AU^ou^NkRpiYOkA6O g=Gn=^KTPOcgZH<;aa3<6!~-V} zy!TpF9O+V#-2Ckm8!*E~3Vz7zg29FTdEn~9KRW?w`M-oeBow}z_amDg{r0UOaNDBD zb7a2|?GFDPFPr|uyH)d%1phHpilPzh7c3XH@zPu9`EfU*3>eDvNIyT`_7yivj?TIJ zYVSmM6rUo;m1ytw4N8t^#;I{fr3Bpm{~81YhYor%@F{a}g^-iS8POgPi~3;Tg+11& za7vU-;QGxP226@U+ZfiN#t;$(^PwGXB|dB$6cKATrniA%q3fo43cuFaO%-!FEDW`9 z8KUKe1Y-$t4@D^J{xktCYt@qB{zGJ=LBOd(CQG5}oe$C5Jh(0ApLfMmhrFFFu&3j3 zIPjCZxT%+;7={uj8Z77@1g>SyEg++?At!SQRBhl>Xkg4kDZM@i#r~|_u4gROEH$MJ zBIcJgJnHP$|1)cFIk`&yzG0+Ws)z|&MSJ@~s7ada@p*b9?4m~(2<72i*82VnpwZd{ z?8!!Kku&}AjiH0aon-rknhiw!ZYMuWN?y6NBmRCbljyU0_?h;#)9(BLp1yV(m-Pxz zkcZRs+!G&pVK1|m6uJCaY4U2YX#W<@uo)1)!5f2fn4$_rq*&*UewZLI65iAsL3r$T z$cV45 JznqN+$kyFqDglK}X3V7SalU#%r(;f+WxM?&x z=jQEz_?v9e2uT4|ATIWIwygbu7mL;evi`wiS79TzHHK;VkY9+$PvH0Z>X+gnqdmIb z)h@>35aK4U@F~1DP{YD-y^A{E!F5L!Z UG7-ElE}377Fl zn=?|L*N0Ku-|FPPazOZTfThE1%s?se<<%LxrF;m9fZr_P?pk^7!FH;cY(Gn7N+E9Q z;)^dsUYF;q2iZ!p*1vFgksa_!HEjaJR*p(t0(bbna>!_?M^8Cgt{a@j7$>HWY17GO zwvL}){S>b8y!Np3x;|fIK10w*!%A`km2(~o4wmzqca_p5A&E8C3pG;~3ia`gbumxN z_!inifRL&7e80hQo1}iK%)icKXXn;To%KTFH>WEbW1L6 08q<%6o|Kcu?VD}a^{U)BAUxcD=s?y=NhlCK;?UWu<`rw zV`%~n0};9!w?GvcK1E1JG;w>US(}vnaFcLJNKsO$Z3m|5P(}QA{I|s}eH-d*su%qt zC)5g;>CpxoYS$P0SiP~lzRNw|Ob#+KdS}C~OW|K$!`^kJ`D6Z`e2_?S0=_HRJ(Uwd z%XOEhq36Lin`a0iyGah^=3cFI_7{fB-UK7^je}LC17TQXuv_Z|g8noe+Iv|;?@gr| z>~k67dYJL{#}{tYIc!D=yY;~s4{m1>tSPbzyW!>QJNBm4GL?q8qu|E0PKm7ir;4?p z{6W+{;sorvp-wL-YPT}AfI%8_NA%G4wDJ{fVRdTk%t^AlPw!?sbl7@8^YpJJRjBo5 zJ1kC8uueo*8(|E>XxO^f^HJ%M9*$uJCeX?O>R4X(*(R#}rFDY}NHd7X6;-#J_px^< z&rwbW>=@5;X5glnJo)v@q=tawEw;sEQS+iy>nPzqF2iX5sZGF6Vn-COqx>+n`yw$k z9I&(fT5nbb^~dEWi!Af&wnj1;BWSfI4cr9anGI@>9gMw}clA&tkyV1Q`iKm?J1q^; zocym98gJb;oIBa(+^cjG1;^O~KVqV?W@}SmK1ijX*$b8S<5 0E2NciOYJv)8?DtI3Wyf zv_Cyn;f|IAnpe4NzVl=F*9&Yhpn78B3z*)2LZc?%u3l`O{dRk&$&(W!iXqi*b+Eg( z!QEwGi?K0$%siXjb5}9M_6R8B*{4%7ZWWj?8F$SH{>K+LCnJ$$)uh0`YkeF9elOg5 zOVr2U29*K|+1hk@toCea F4@ z0TdM;ZID+8In}>;;i7JynXZnm+2|2OIGnwyOS~k3zWy_tRXImdnW}e`7`PoNGqny~ zsKXDh=_L9Ejy3I~i_G7Rol#U9MyX&{Jddr_B{%FjNjuOd-*VM+Zi=KZH))#6EG~~; zb}Ej;vplUHw2BOy1?ud`x}eR8yvzG*uY) P9wKB6jfPiheSWC$ zlBF(%h@6pw8b LIdnCknt0<=91&57l1r~k05>PxAQY9c0w8=$sRjc^ zQ=^d96!%Da^=zX}p0m+R`a8w1qn3f!pwG%##1!5rbSof{Ou&BaAwT2(XfW`YzqYy1 zRD{eFTg0lo3YimyF+t`BQpMi&19o( lRtg<4#=1ZMmpiembDy+IaeT&(Fg8ntJ(SQQu6;VOsleebk|(>8lrmKow(a zh5*Btdv_Uc&WxcexQNpJe>G(ZrQLMSn7Ap-jpNAAFslF30MQbbubbzUftt+wIKd}{ zyG0+?Z>wh lO?)lP+Ty0R+`&Z6LaC4ZK8i<)%^8Z|h^3oSSDh znE-$T{sbLf@M(M9%H)6eO<>0}4cKw)P+{Z6v+eSb*~EiXkkt2bR=dH@pU}@oITc!L zly4a$pS%%!AmnEvdaSTsq0h{J7Bi#o6;m0?R--Rs4tuCVSJ&jaJCADmhS7zN$$&`H z70l<8Uy6Ex*c0}F(LPM2hd5UIHE&NPwN~c2lMK!)FrjP3YKPTD_(34fWW$@j^PO?P zDKHgSIa~3d-354n5;HIxBvhvTVWuO{BN82hm8qOB`oMIk;FENuj$)QlYE42L8fisZ z&EeBdR{>bDeK)QPzRu3LTJaf1^~f`;TiyE )y+eIj`_lSZxfza?@jE++MnwwG z;hIDt00?0gwt`_}n>=>UXC=Q7_m|7a;I>X@U`%Li2r~Da
>f*PPQ92 ze*i!mQKxv=b5>!=F3+u-F>>m#e{4nR$ST5?x4X=)-cx%&AmNC+hxdYZAz!C9a{O8M zhMKNMspW0ThZt#^M_~I~RS1L?FLVTFDAT1tun*AZKjt?Y1z2EDXnaU4R4T1`c?zN{ z&W=dQ=;4xG&jGnX+h4$(5whL{+NK1m7Qy>Q4BodMK1P%J;Ql*rnZM2actpMOlKgXQ zytUbP0L$cVA8ke`fY BatxN6`4<1s_Z89i#4B6%Ga+7 Rvmtxh_i=yN}~wWq;A!umJ8}h&9*y{q~?%ILMpGCL!%1GI+k6fS1SoP^s?*a4{_7 zv!U#ao;pF~FCBSqY!?D(wAyQ*qc6&<2z_DmzVo`8YH%gZV*b5}UD*9)TQV*F?;hrq zJ-D^su-iQaPqxu{E1oAbiksumO#@y(OMCO%-Z#O(sb|`?RN770jHE@ZqZ1d3p8|DH zezx*f2+`@Z@1F*K?%>mQ$qDH|vmng60rZE0Km4Pw@f8Q+6dES;wEQ^o!