From 3d6614f408b65ff02c4ec3ab90c30c5348b110c2 Mon Sep 17 00:00:00 2001 From: Narayanan Madaswamy Date: Sun, 12 Jul 2026 14:24:17 +0530 Subject: [PATCH] Text Extraction Done, UI Fixes Done, Extracted Template Layout Saved in DB --- SESSION_HANDOFF.md | 42 + backend/.env | 6 +- backend/__pycache__/main.cpython-313.pyc | Bin 17118 -> 17347 bytes backend/alembic.ini | 149 +++ backend/alembic/README | 1 + .../alembic/__pycache__/env.cpython-313.pyc | Bin 0 -> 3171 bytes backend/alembic/env.py | 87 ++ backend/alembic/script.py.mako | 28 + .../91b2545f5a30_add_templates_schema.py | 28 + ...f5a30_add_templates_schema.cpython-313.pyc | Bin 0 -> 1781 bytes .../api/__pycache__/documents.cpython-313.pyc | Bin 0 -> 3635 bytes .../api/__pycache__/templates.cpython-313.pyc | Bin 0 -> 3573 bytes backend/api/documents.py | 54 ++ backend/api/templates.py | 53 ++ .../document_processor.cpython-313.pyc | Bin 0 -> 10369 bytes backend/engine/ocr/document_processor.py | 217 +++++ .../template_engine.cpython-313.pyc | Bin 0 -> 9646 bytes backend/engine/recognition/template_engine.py | 174 ++++ backend/main.py | 8 + .../template_models.cpython-313.pyc | Bin 0 -> 6236 bytes backend/models/template_models.py | 105 +++ .../template_repository.cpython-313.pyc | Bin 0 -> 4882 bytes backend/repositories/template_repository.py | 75 ++ backend/requirements.txt | 4 + .../template_schemas.cpython-313.pyc | Bin 0 -> 4566 bytes backend/schemas/template_schemas.py | 80 ++ .../template_service.cpython-313.pyc | Bin 0 -> 2492 bytes backend/services/template_service.py | 25 + backend/sql/01_templates_schema.sql | 107 +++ backend/uploads/Invoice For Mar 2026.pdf | Bin 0 -> 133243 bytes backend/uploads/Invoice For Mar 2026.pdf.jpg | Bin 0 -> 226388 bytes backend/uploads/sample-pdf-invoice.pdf.jpg | Bin 0 -> 289993 bytes docengine/.env.example | 4 +- docengine/README.md | 20 +- docengine/alembic.ini | 2 +- docengine/alembic/env.py | 2 +- docengine/app/core/aes.py | 38 + docengine/app/core/config.py | 20 +- docengine/app/core/dependencies.py | 50 +- docengine/app/core/security.py | 9 +- docengine/app/events/handlers.py | 8 +- docengine/app/main.py | 2 +- docengine/app/middleware/cors.py | 8 +- docengine/app/models/user.py | 6 +- docengine/app/workers/celery_app.py | 7 +- docengine/application.properties | 4 +- docengine/docker-compose.prod.yml | 6 +- docengine/docker-compose.yml | 8 +- docengine/requirements.txt | 2 +- docengine/sql/001_create_schema.sql | 2 +- docengine/sql/002_create_tables.sql | 2 +- frontend/src/app/app.routes.ts | 4 +- frontend/src/app/services/template.service.ts | 91 ++ .../app/templates/templates.component.html | 107 +++ .../app/templates/templates.component.scss | 154 ++++ .../src/app/templates/templates.component.ts | 162 ++++ frontend/src/app/templates/templates.html | 1 + frontend/src/app/templates/templates.scss | 0 frontend/src/app/templates/templates.ts | 11 + frontend/src/environments/environment.ts | 1 + oss-microservices/.DS_Store | Bin 0 -> 6148 bytes .../net8.0/AdminService.API.AssemblyInfo.cs | 2 +- .../AdminService.API.AssemblyInfoInputs.cache | 2 +- ....GeneratedMSBuildEditorConfig.editorconfig | 6 - .../AdminService.Application.AssemblyInfo.cs | 2 +- ...rvice.Application.AssemblyInfoInputs.cache | 2 +- .../AdminService.Domain.AssemblyInfo.cs | 2 +- ...minService.Domain.AssemblyInfoInputs.cache | 2 +- ...dminService.Infrastructure.AssemblyInfo.cs | 2 +- ...ce.Infrastructure.AssemblyInfoInputs.cache | 2 +- .../net8.0/Shared.Commons.AssemblyInfo.cs | 2 +- .../Shared.Commons.AssemblyInfoInputs.cache | 2 +- .../net8.0/Shared.Contracts.AssemblyInfo.cs | 2 +- .../Shared.Contracts.AssemblyInfoInputs.cache | 2 +- prompt.txt | 856 ++++++++++++++++++ prompt_for_session_conitnue.txt | 1 + run_backend.sh | 19 +- run_docengine.sh | 285 ++++++ testing_strategy.md | 55 ++ 79 files changed, 3139 insertions(+), 81 deletions(-) create mode 100644 SESSION_HANDOFF.md create mode 100644 backend/alembic.ini create mode 100644 backend/alembic/README create mode 100644 backend/alembic/__pycache__/env.cpython-313.pyc create mode 100644 backend/alembic/env.py create mode 100644 backend/alembic/script.py.mako create mode 100644 backend/alembic/versions/91b2545f5a30_add_templates_schema.py create mode 100644 backend/alembic/versions/__pycache__/91b2545f5a30_add_templates_schema.cpython-313.pyc create mode 100644 backend/api/__pycache__/documents.cpython-313.pyc create mode 100644 backend/api/__pycache__/templates.cpython-313.pyc create mode 100644 backend/api/documents.py create mode 100644 backend/api/templates.py create mode 100644 backend/engine/ocr/__pycache__/document_processor.cpython-313.pyc create mode 100644 backend/engine/ocr/document_processor.py create mode 100644 backend/engine/recognition/__pycache__/template_engine.cpython-313.pyc create mode 100644 backend/engine/recognition/template_engine.py create mode 100644 backend/models/__pycache__/template_models.cpython-313.pyc create mode 100644 backend/models/template_models.py create mode 100644 backend/repositories/__pycache__/template_repository.cpython-313.pyc create mode 100644 backend/repositories/template_repository.py create mode 100644 backend/schemas/__pycache__/template_schemas.cpython-313.pyc create mode 100644 backend/schemas/template_schemas.py create mode 100644 backend/services/__pycache__/template_service.cpython-313.pyc create mode 100644 backend/services/template_service.py create mode 100644 backend/sql/01_templates_schema.sql create mode 100644 backend/uploads/Invoice For Mar 2026.pdf create mode 100644 backend/uploads/Invoice For Mar 2026.pdf.jpg create mode 100644 backend/uploads/sample-pdf-invoice.pdf.jpg create mode 100644 docengine/app/core/aes.py create mode 100644 frontend/src/app/services/template.service.ts create mode 100644 frontend/src/app/templates/templates.component.html create mode 100644 frontend/src/app/templates/templates.component.scss create mode 100644 frontend/src/app/templates/templates.component.ts create mode 100644 frontend/src/app/templates/templates.html create mode 100644 frontend/src/app/templates/templates.scss create mode 100644 frontend/src/app/templates/templates.ts create mode 100644 oss-microservices/.DS_Store create mode 100644 prompt.txt create mode 100644 prompt_for_session_conitnue.txt create mode 100755 run_docengine.sh create mode 100644 testing_strategy.md diff --git a/SESSION_HANDOFF.md b/SESSION_HANDOFF.md new file mode 100644 index 0000000..dc217dc --- /dev/null +++ b/SESSION_HANDOFF.md @@ -0,0 +1,42 @@ +# Session Handoff & Context + +**Date Saved**: June 7, 2026 +**Conversation ID**: 43f3aa27-9124-446e-9713-4e31e083b4f5 + +## Project: Template Mapping Engine (OCR) +A system designed to extract document layouts via OCR and allow users to map specific bounding box regions to template fields using a drag-and-drop UI. Future documents from the same vendor are automatically recognized and mapped using a heuristic template engine. + +## What Has Been Completed So Far + +### 1. Backend Startup & Dependency Fixes: +- **Auto-Bootstrapping**: Updated `run_docengine.sh` and `run_backend.sh` to automatically set up virtual environments and install missing dependencies if key modules (`uvicorn`, `numpy`, etc.) are missing. +- **Python 3.13 Compatibility**: Upgraded `paddlepaddle` in `docengine/requirements.txt` to `>=3.0.0` to support Python 3.13 on macOS ARM64. Added missing dependencies (`numpy`, `opencv-python-headless`, `pdf2image`) to `backend/requirements.txt`. +- **CORS Config Fix**: Corrected a missing double-quote in `CORS_ORIGINS` in both `.env` and `.env.example` in `docengine/`. + +### 2. Backend Code Integrity & Framework Alignment: +- **SQLAlchemy 2.0 / Imperative Mapping Fix**: Updated `user_roles_table` in `docengine/app/models/user.py` to use SQLAlchemy `Column` objects instead of `mapped_column`, preventing a database initialization crash. +- **Structlog Parameter Fix**: Replaced the `event` keyword argument with `phase` in `docengine/app/events/handlers.py` to prevent a duplicate parameter `TypeError` from the structlog library. +- **Optional Development Auth Bypass**: Modified `get_current_user` in `docengine/app/core/dependencies.py` to automatically fallback to the first database user (or a fake dev admin model) when no authorization token is supplied and `APP_ENV` is set to `"development"`. This prevents `401 Unauthorized` errors when testing endpoints locally. + +### 3. Frontend Angular Implementation: +- **API Endpoint Alignments**: Removed the duplicate `/api` prefix from endpoints in `TemplateService.ts` (e.g. changing `${this.apiUrl}/api/documents/upload` to `${this.apiUrl}/documents/upload`). This resolves the `404 Not Found` error by aligning with the backend prefix `/api/v1/documents/upload`. + +--- + +## Where to Pick Up Next +1. **Initialize Database Tables**: + - The database currently lacks the necessary schema tables (evidenced by the error: `relation "admin.users" does not exist`). + - Run the setup command to build the tables and apply migrations: + ```bash + ./run_docengine.sh setup + ``` +2. **Retest Upload Flow**: + - Once database tables exist, perform a document upload from the Angular frontend to visually verify the OCR bounding boxes and layout mapper. +3. **Verify Heuristic Template Recognition**: + - Test the template matching and layout coordinate storage workflows. + +--- + +## How to Resume with AI Assistant +To resume this session in a new chat, you can tell the AI: +*"Please read `SESSION_HANDOFF.md` in the root of the OCR project to get context on the Template Engine we were building and the startup fixes, and let's continue."* diff --git a/backend/.env b/backend/.env index e16f982..bcc992f 100644 --- a/backend/.env +++ b/backend/.env @@ -1,7 +1,7 @@ DB_USER=postgres -DB_PASSWORD=M@tr!x#149@dm!N -DB_HOST=192.168.0.111 -DB_PORT=7925 +DB_PASSWORD=M@triXPostgr3s@6202 +DB_HOST=103.125.129.116 +DB_PORT=5432 DB_NAME=ocr # Mail Configuration (Gmail) diff --git a/backend/__pycache__/main.cpython-313.pyc b/backend/__pycache__/main.cpython-313.pyc index 1af8b424cb8eefd9c94180f421c046815f4063e0..30099f34513b0be399ac17acb29cfc5cc22f05b5 100644 GIT binary patch delta 3472 zcmaJ@du&@*8NbJ`B!0zBv&M1K*-g?W&Z})=$4Qged9`Vr*SgC_HC>i^_D$o?_BH3; zOcV)B$(GVpgO)QUD#oV$GX&Bel98$nh8Rc#Bs3TS8r?F`#2*s~!PpoQ;vv58T-)^` zgJu8jcfRwT?|r`O-#$iuc$v6AaJlRPe7^GSgBKe6uDiV^oAr9n9}A)&?py4M2Wf9W z;B+6*{Q*I;iA_>{$RzIf2^TD3JPIE=Ak}vW(ty}JM(Ch4c<-9QuSTgiOpG;XsV&i8 zkthg91@W#kgdPLYWVITDmfX@Y@qpNJl<=Q-%o-59LWdx>`UKG@dBSExjt+5d8*tmJ zxWk-#5V&_&aYLd*Y7?DOd&uGx{TLq&gZV6*KDa*-kV4|2F_Y8)MmoxVhKSfH*&!QU zD1Cuc@)3cY9bO!bkI^xnzaxtW;wR{dl9SzFxTnhSc-cxJSk^4|O5>on?;}~B0Ig(k zl1}nxlt$s%zZi>8(W#Q=0nj{HrFohMdK9?Fs<<U5UX|LFvR1OlW9XGuxP6Pbw8#GHc@kVM{@U`4%^oDW zjVha(Oqu4`Aj9l!N2_%N`g)Z8)6q*tibtGoLe8?Vs}Pz7_6OMVv>Rcv3}=B*odB1G zUH87NWq|Ev8t2>WSZ6DH(S1DWT2juZbN9+>UdgHQA0*h-t(x+%oYU*FvZ^M|%M=Z) z&>1|4q@jY_TEZm)o-5mOxVPfFF3%uW4;b`*gn0zqrws_GFW5*Q zfQMd}RC1b})2NI)B3t#2laI5j-ae8m-t=BI7rq7j749(=@qj(6q~y$+b}?@xCFr2D zcytcoB*G~K43XjxGK`-_3eQswVF6)J9x3t=(4yJ{05$Wm*V_-V7*j)#s4%R zZ?O9h%_e!BgU(tp>E<-#iAPciOs`KRG+9e$W!>_SqGae7&`_=LF5w2k8|+_)=8TXo z@wQm&h_AniyITlY2i;k!%AGW?1nX=0M6ci(?h`L^Ez3`!2*R7Jv9ryv`~+A|7Ix5< zHLb~66&qelWQNhk*LkeE?8NN8`2nE72WG>#oDS9p{~E zqStu>2D+9Dw?GP0n7XJt5}KAsZe*b=)sjEj=s0}Z#9r@jbzv=oCd%MJpJW%iI}6)D>XwwOCUu*#zOKp| zeHvNjL?&ZohS%^>Jn!8-air12pAI>M6xx=qd|(ixQ=Mh==(>i`1A zhfg)#&f0n$*5`qJyV%z=X(0)g?w|2g+J=4!wu1HS`~ALo-iKd>H8&i*i$05VFMw`? z!2?5;x0`NVPg7Mh<^npa+mcE)o7N0}W!63rm_xO?Es@X5xfE|Co=18oN=%CpC0c|4 zzkv*lO}Fx}=neL{fr#}caQ@B>C0*>(jPUBo6D^Jqzpi(DKnC_gLxpTIrJLm%SA+#a<009%mFLKaIe~k1` z5O}SB3Y6|hrQuzprnR)fMn{fVe+JBcmK^yqiL<|t#7USF4`9e<^hB3g+r%@u8_t JnJk#@{{luQ0crpM delta 3318 zcmaJ@du&tZ6~EW9O%gi^p)~~4)FzK6HzCPLY#fu96UfUc9`j`_RJRLv@pZW1M>zKu zb<GV)G|WO^pKnp6zQnIoNlpxy|u?=cV4i78JMKs?>)Z z@;1M4(itWe{6Vi$-ytZy@_kVeq#;4R{|h4YDN^!Ld%qHuW~EQ|$=ioS{_KdlfkSKR3jTlHLai0{+q3o3fxoc@SJ^~{_0oUD2+v6b!Z94f7 z+U=>Z8!lNX^p-Tsk`hL}eV<9tKGY;GMIgf8qcDo^{-tPqKkVPsyazQ8RA?UKaSkGN zsDe7qsh>mY-U{kOo6v^A4I_C(87pUS5}hkh3Z_EJ1f>9th7~VXDo}DZR44CKVsZqZ zQNNz1V+ zd51iW)@PK1o8BL&(lLuVcoXb8Sk^J?7s|z+E7{mPSKgnm*q`U=UckIAR-}8Oq%|5Z zNmcnJViPQIpPceil~0SSqV#Za*mcd#EYFF+F!rNCO&Nq9M5{idr!`|u%>j8CVyd@K z3>PnWn?><3d!?xmiXr(Ed<4!9HEuo^g>PgHdljvhUXJ~&pN^Bhn zRzq6PXv=G=dE)nUJELB>Pd@nD_|$cU!-hF1GJ{zOL{cq$jw? zkR*Y|Y(AxBmd&rM+1ZdhFhimT2o4g=5>SXhv&l9-Pb-oKgJ6LmM!@sL6L^~b5|Bls z7Xd5dXFcuRb}~;FlkNW$-3qaNiOmOQKToQph6=T-w3kP)oQ8Tvg8=;x666TTC&>*a zzO1cjJ*Q@t^(9XDSs27*^b@on~t-3JOWBqStntst#B9TUexD@SV8 zr&Loj^{i$&znsr!;5^FLjCY+j2;RoW7(>8#>pf@ZH=2AGSDt(Pw$s1iy`MeR(QC)Q zj?J`_z1I;hypO!_GyxUO@@|&!UQH5GeJy|CS(4%Y@{Xugg$u+&Kt_yh2qmxhA=&1; zdR3-_v)FBgf0;0AlF z%Wr4lA~(vq4v9C}pSpI)G2Bi_jWz9*i(=d1W_f(IjJ-_82yU{a?x1b#<>Kk?1&5PT z&2|s$Y>*sqnb;WnV^6343@$BaN;6h0cRrmqG!tGSQk|N~*x~USoh6BH5S%0UCczZ~ zicH!9-=;MQ!c_u>V7axds%H%7Cdy@Ys&}{RySThvywp446pyo;duDv)27niE3oE|q zroZqlk|Gn553bR=55aQdyfHQ4Y?dpngJIg^fZVd&EBS0zH*L>&TQy{{iRqXdR?F%W zIRBQlCvj33dOpW3T5ff1P0OWtxA4q?9cmAmq~zGKk~bLUbs|uNmWu}mSJ>Twi0j8l zxm)ZQ42j}m@zJ4kj;*f|k;nc9t@uE@!mbXF_H(bje5!7q z2pj{Nb_$+CMm+ar58#LF)8R$e`$+Z{4~<-Nh_A7~h5d!&NU+>`E~Do(t5G#gb>&2s zX5&wBx=y>GAJfkU^F-$!+m}X@6A}N0W>wW4EekXzsKze>1pPAKKA-h2LzXlG|imqMDxt7P%)=o=LCX-z@G&rNL zX!f;47Z$(xfG!_+i{MRSZB46&sjlgR7!dz@FnBB5v*iM@(Foy3&#GI+@k5g|2{b8y z&J|FH+lP>P38-~=-FX3k;;U|u`f/versions. When using multiple version +# directories, initial revisions must be specified with --version-path. +# The path separator used here should be the separator specified by "path_separator" +# below. +# version_locations = %(here)s/bar:%(here)s/bat:%(here)s/alembic/versions + +# path_separator; This indicates what character is used to split lists of file +# paths, including version_locations and prepend_sys_path within configparser +# files such as alembic.ini. +# The default rendered in new alembic.ini files is "os", which uses os.pathsep +# to provide os-dependent path splitting. +# +# Note that in order to support legacy alembic.ini files, this default does NOT +# take place if path_separator is not present in alembic.ini. If this +# option is omitted entirely, fallback logic is as follows: +# +# 1. Parsing of the version_locations option falls back to using the legacy +# "version_path_separator" key, which if absent then falls back to the legacy +# behavior of splitting on spaces and/or commas. +# 2. Parsing of the prepend_sys_path option falls back to the legacy +# behavior of splitting on spaces, commas, or colons. +# +# Valid values for path_separator are: +# +# path_separator = : +# path_separator = ; +# path_separator = space +# path_separator = newline +# +# Use os.pathsep. Default configuration used for new projects. +path_separator = os + +# set to 'true' to search source files recursively +# in each "version_locations" directory +# new in Alembic version 1.10 +# recursive_version_locations = false + +# the output encoding used when revision files +# are written from script.py.mako +# output_encoding = utf-8 + +# database URL. This is consumed by the user-maintained env.py script only. +# other means of configuring database URLs may be customized within the env.py +# file. +sqlalchemy.url = driver://user:pass@localhost/dbname + + +[post_write_hooks] +# post_write_hooks defines scripts or Python functions that are run +# on newly generated revision scripts. See the documentation for further +# detail and examples + +# format using "black" - use the console_scripts runner, against the "black" entrypoint +# hooks = black +# black.type = console_scripts +# black.entrypoint = black +# black.options = -l 79 REVISION_SCRIPT_FILENAME + +# lint with attempts to fix using "ruff" - use the module runner, against the "ruff" module +# hooks = ruff +# ruff.type = module +# ruff.module = ruff +# ruff.options = check --fix REVISION_SCRIPT_FILENAME + +# Alternatively, use the exec runner to execute a binary found on your PATH +# hooks = ruff +# ruff.type = exec +# ruff.executable = ruff +# ruff.options = check --fix REVISION_SCRIPT_FILENAME + +# Logging configuration. This is also consumed by the user-maintained +# env.py script only. +[loggers] +keys = root,sqlalchemy,alembic + +[handlers] +keys = console + +[formatters] +keys = generic + +[logger_root] +level = WARNING +handlers = console +qualname = + +[logger_sqlalchemy] +level = WARNING +handlers = +qualname = sqlalchemy.engine + +[logger_alembic] +level = INFO +handlers = +qualname = alembic + +[handler_console] +class = StreamHandler +args = (sys.stderr,) +level = NOTSET +formatter = generic + +[formatter_generic] +format = %(levelname)-5.5s [%(name)s] %(message)s +datefmt = %H:%M:%S diff --git a/backend/alembic/README b/backend/alembic/README new file mode 100644 index 0000000..98e4f9c --- /dev/null +++ b/backend/alembic/README @@ -0,0 +1 @@ +Generic single-database configuration. \ No newline at end of file diff --git a/backend/alembic/__pycache__/env.cpython-313.pyc b/backend/alembic/__pycache__/env.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..87ac7c6182db962ba9c83829af9f1601d3e15852 GIT binary patch literal 3171 zcmcImO>7&-6`tiTxj&+~`mtz>qU8}QiKgpFieUwC8WoU~Ah8sv25Da+0mO1SqSjgN zva?IsGEhJ{r2zsoJ_Nq>;GELl67-NBV_$Qz{z_(}04<6j$W4h181N}?cDY_DQi1l+ zk+}2b&D%FK@4fGvJ?!pQ5VV=UoxlB-jL^T?AZ#%9+u^G*gg!7y4*l=dAto%t~+Z z(n*gr4Y8U$sV|8ueZ{Gh`Wz}rC3zZh$y(UMD#?#&9F#$mD=^P9%_Y#ZJRJF zg2p9x-K9dz6XrCBc*)miZ_dummfk4eD!%~vg9=Bto$QCk`V1H4@YKaka8HG8h0yb7-7+nCL5dXvse*vv>1yQ>M z6UC;5>qd=gu3=jaHY}XCS65Aldmh*ADw$A}n`?%HgZMWoaj?5a*pLMu-!a@Ze7otm zSi=x?MYF2dvSDQ5H~j2f26MYvTZ=RpylJ{l8m?9`iLyp0!J32b5YwE%cy0qb?;4GU zVb%PF0xwvn#NVNEhv2Ghu0``|Bb;I>nsTs_h<5GWFo9Prsr$)oYcGGP%U2sMj-QDz*hDNoz<8GM5 zi(6WqR11Q~vkFsPjn;@;t`k?QYOdyWn}$oMW|k|4Rdu{%)zD0$yJfrKI!gu7O9Vmn zRR1l_u-FWwfwH3V%@=J*|W zY@(;Afl1Kj`k3M%;l|Pcwvw8keUYVU1br`>B3{X7$ z4nKtB0a)1~{kGg8EU4vpsEhg|v!_6H>IKb}xCpYvQ=nOjUE?hPcCkD19ZDhT#gN4< zzqry)yTpJRxMjG=g2srULkrPcXTsU2kD%_;LS%c&#TMC~q=o;5CYH_yH1XdM$-O_E z#v;}+61i>xr~vtnPArWYHsC!#FGD8-Hy}6U44*|b$FX(8*E9H9P`ps`0pT2BAOPmQ zt|L?rw?U#o$*OVJli5w7o8ags=$aMN&;hDSwy6nJogoQ z^6+zK6n6C}`SRQ}|7a#XHyVH3FM<4cRGGUXKb{boJgv<0BFh>jZj)L|g{+q{?HW*B zZ6XLPWw7^@D9J%0{1A&B3JU`3=ccEV4)!fkW(4iUY{%oB4aXB2n!DyDv_=Ei&l9T# z_2)&c;`lRCx$M7H_9RB&75J*4>?46P^6}E_J~W*Pm(&|36lOUXdx=gjg~Z>fD~H_$ z5vzM5CGeh3d_MIv=c$GhvaIjzujmj~LP5%<*T8YpB)_FB!;J5oui$aOa~$_A8v70v zzC}adp`il_*!54t9}I6MKopb~pV?yn<6jG@Kd!gb@hx?HSI8eqh*Q2nN*nR-OYceV ztM92F#U6X*{a)b$;_u+y`+i{Abo<-bAa z{~46frrJh{7D{iS^pmsszhqm5neD>N-}NuA?iAkIMc1G93~(b)r_$Wm!4(8|1E1OE aGc7*5#b>`3GJ8VyU&7#?FhpO4^ZX25KfA90 literal 0 HcmV?d00001 diff --git a/backend/alembic/env.py b/backend/alembic/env.py new file mode 100644 index 0000000..9175000 --- /dev/null +++ b/backend/alembic/env.py @@ -0,0 +1,87 @@ +from logging.config import fileConfig + +from sqlalchemy import engine_from_config +from sqlalchemy import pool + +from alembic import context + +# this is the Alembic Config object, which provides +# access to the values within the .ini file in use. +config = context.config + +# Interpret the config file for Python logging. +# This line sets up loggers basically. +if config.config_file_name is not None: + fileConfig(config.config_file_name) + +# add your model's MetaData object here +# for 'autogenerate' support +import os +import sys +sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) + +from database import Base, DATABASE_URL +import models.template_models + +target_metadata = Base.metadata +config.set_main_option("sqlalchemy.url", DATABASE_URL.replace("%", "%%")) + +# other values from the config, defined by the needs of env.py, +# can be acquired: +# my_important_option = config.get_main_option("my_important_option") +# ... etc. + + +def run_migrations_offline() -> None: + """Run migrations in 'offline' mode. + + This configures the context with just a URL + and not an Engine, though an Engine is acceptable + here as well. By skipping the Engine creation + we don't even need a DBAPI to be available. + + Calls to context.execute() here emit the given string to the + script output. + + """ + url = config.get_main_option("sqlalchemy.url") + context.configure( + url=url, + target_metadata=target_metadata, + literal_binds=True, + dialect_opts={"paramstyle": "named"}, + ) + + with context.begin_transaction(): + context.run_migrations() + + +def run_migrations_online() -> None: + """Run migrations in 'online' mode. + + In this scenario we need to create an Engine + and associate a connection with the context. + + """ + connectable = engine_from_config( + config.get_section(config.config_ini_section, {}), + prefix="sqlalchemy.", + poolclass=pool.NullPool, + ) + + with connectable.connect() as connection: + context.configure( + connection=connection, + target_metadata=target_metadata, + include_schemas=True, + version_table_schema='public' + ) + + with context.begin_transaction(): + context.run_migrations() + + +if context.is_offline_mode(): + run_migrations_offline() +else: + run_migrations_online() diff --git a/backend/alembic/script.py.mako b/backend/alembic/script.py.mako new file mode 100644 index 0000000..1101630 --- /dev/null +++ b/backend/alembic/script.py.mako @@ -0,0 +1,28 @@ +"""${message} + +Revision ID: ${up_revision} +Revises: ${down_revision | comma,n} +Create Date: ${create_date} + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +${imports if imports else ""} + +# revision identifiers, used by Alembic. +revision: str = ${repr(up_revision)} +down_revision: Union[str, Sequence[str], None] = ${repr(down_revision)} +branch_labels: Union[str, Sequence[str], None] = ${repr(branch_labels)} +depends_on: Union[str, Sequence[str], None] = ${repr(depends_on)} + + +def upgrade() -> None: + """Upgrade schema.""" + ${upgrades if upgrades else "pass"} + + +def downgrade() -> None: + """Downgrade schema.""" + ${downgrades if downgrades else "pass"} diff --git a/backend/alembic/versions/91b2545f5a30_add_templates_schema.py b/backend/alembic/versions/91b2545f5a30_add_templates_schema.py new file mode 100644 index 0000000..8279a15 --- /dev/null +++ b/backend/alembic/versions/91b2545f5a30_add_templates_schema.py @@ -0,0 +1,28 @@ +"""Add templates schema + +Revision ID: 91b2545f5a30 +Revises: +Create Date: 2026-06-01 16:28:57.181829 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +import os + +# revision identifiers, used by Alembic. +revision: str = '91b2545f5a30' +down_revision: Union[str, None] = None +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + +def upgrade() -> None: + # Read and execute the SQL schema script + sql_path = os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))), 'sql', '01_templates_schema.sql') + with open(sql_path, 'r') as f: + sql = f.read() + op.execute(sql) + +def downgrade() -> None: + op.execute("DROP SCHEMA IF EXISTS templates CASCADE;") diff --git a/backend/alembic/versions/__pycache__/91b2545f5a30_add_templates_schema.cpython-313.pyc b/backend/alembic/versions/__pycache__/91b2545f5a30_add_templates_schema.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..db28e369d8593f63dd3d668b3301ab8aae79b46f GIT binary patch literal 1781 zcmd5+Ur1Y57(e$<{#_HJ#aY&Az0=m2ts0Xyou=JDqf6D!l-x--3|wwo-J8FKXBAq~sB5^BDrKKjdEr=f1N@7gcL`KBF3`2+Dlh_WO;M=w}mdu}?Y|AQ5de~7AvT4oPG zCjM(=cnz?e0U2oCRhJN&Ly8b+WQ|7#H^)WYP2b@dXov={0QwcwTp^?Rw&twpv8Hr5 z_M)qNGcp-1pjXiuG|+JC5OI>1Q4f;gH+%Xmp$8>7k2p&O^IB%*_^?ks0IgaF?GQL9 zM?4aM%A{gmE2OBnm`fYfrl*OaWihpBakFN(t75YV<-nf?d5Mb%mGB_Jg zC%o5T9$?+{9tF7y>;8U${4%u_^9w}NF*yMzb+98p1y(}O-0f>it4nJ)S8v`PzZ2dF z--&EQz8=3D-U{E1Y(>5szaPFAz8|?4`EmSV_(Aw#9YArWZwe% zV@KDYCQHHh{q3Pn;fGEsbjp?h{eW0%*jF6}_M&Ik3oY?z={@}H%D_Z4az$1`mnPpG zlc(O1C*Pk^-cyeBrqGxY8k?BB;NfePBAsy17J}QrwO$5B9jsr}({~c|SKu=lUQ6g{ z{W{z3(Z^ztbb}4rk(J;=kr=a{c4|{qJ(mDDSPRSfH0;4{LRfDH%+w26M~4KE&@!w^ zE>qsrNGqGiIs)LbK&V?)HN(giv;r%+suDZ%v$sjuW2{w`u-Hf!V=Rz*==O`*oLxO>-eLU<1W;~`U_yDc9;MF literal 0 HcmV?d00001 diff --git a/backend/api/__pycache__/documents.cpython-313.pyc b/backend/api/__pycache__/documents.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c607e16e8bcf2d3ce8dcfc3cea13f582b518fc39 GIT binary patch literal 3635 zcmc&0OKcm*b@s#Me<@KC^^0m%R&6u3NK18WD|TbJ`k7=RyId1NOriuut|ThtE;GAw zBL$7AHh`T&kr63*^Y*3147fDEBA_!B+Mwl>**)WH> zFpv4L1zW-b7Q$9+9i;!ch%Ic#b_3@lj<6Fu4croOh27X~;6g+Ud$1?mhTDv_HPRmT zVsE$ucZ54}r$Mtty23u}GjMyPJKTeN22p|?LXtyr1{ujU&f?xgZ}b)O$PFmD6W)X+ zdb&X|F-aWf5?0XRc?Ir8M}iwd3AedA#Y$}nL26IfPw|qs4=wRajJW}R33fYIm1>@) zj)Yh09B21wVx+FbcWRn^`!pT;22I@wXQIOb%D+Wl&pv&F-(ZK{MCZ3?>f5L3y9as3lVx5!=vXaq=`_k2`SEk-g%LP5FDn!uql)kJHN34)jQ<>>( zP9{8^{S2{6vZetOp#1AuO$R6}$a*p}=VwXVRXJbCrF3~xO)uwVMJJ+(y`EZuP5oSh zBBdAQe2R3oa@453rlzQzRu_~kJy%rLmUDE&c2ndER?~1C6$9}gi790vtH`TjFjdF~ zGqp2m#BR!KaAu)^<@xNpgx6CG+Nw3UY}^@sh*;JNs-nrsyqb}7#96gUG7YN$;peGU z*vwp-Z3-MnIrMY*_CAMDJd6e*&0;883(F=xWCmae(rb}J=sI(ko3*%*!p31$9WmAn zVTFs+2r>rfGZWb)0R$@Dd*3*iH|{jqVw|~y#7OM8Md4#i)NTH4z!-1x4I<$1H2#>F zc^~6{yGd=pW)1NUlOAJCy^1AfiFTRv28{7hUt?ur2j2_qRkPjya*7x~jBIH34`;Y} z#?Q?XN1+-_S!Ka*A#O8Tl1eHsH!by*f=ukx`PDyFbTOqZV(J#Zi||-ZWe9JOTtFf= z%5A7|rBy|Tv`89SI8DcdOJy=dNUQmLRwq^nMTojZOf5)UwG$@|56YxHP?#vo(Cm?mQ_n1_v5f{;N=a$47dmnWjZxm5aX zs0Xdt5-6+?Pc7K>*b-9-*8rqczm_!nAoGflr%(sfeCC zTpu0#@Yr_8;Vs8-*>Sw&IKF-2eECGAbRzQQd!-ZCwjA-YBUN&wwjAl=#NV9a6S4n3 zw|VMPNepe;LOV{e7~TU_Xtk@=hryiDZCc#M1E1lxzX0<8bz76$jn^8zLSxh&en25^ zcK9%Qz|8uscnm}_<;CBJiHP$pb%NMboRM*IZUq{c3?5a|P`Om7JGoqo^Q={yX{`?I zXm((-%7QPzKGeNh6ejSa*!I!lhl`)Qza<_iiz6j*(CHV&U%yW_bH_TJ)t}#=}3|pMpae9lh_zb9B?b+v2Tzv?v$}L`{9yPrBDj;`J zyxwY?S_>pcl=AEwv3hC^BRmd2Ap^Vsh_}8~Qm?&dS}Y~V#3 zTj`QEcOq)<Cuc=SQAT)fN6Qhw9{i+HOWBr(g8J%1NF*SZ!pz{HB{rN*^j>28e3QYRV^&w z>I0N7sG3gN=<72%c5*a15uLhtb!yURFNA~8BV1O|jk;k3onhby$S_{Dz}U{i6_<1J zYna9&^}col<_gC!%wLi78M<6Xm!G1cr>Og%sQ($7c!n}1lzEEIJw=!PZuf5Xy}WUJ zW1wWeP!ygs)|>rn{kPs)fB(_x^2D{$#I<7oCKG==GP-g2S8x4k;mi3ytGlR+@vb{6 z6g-@HLBSq}*aTBy0j&fOYrEOE*0Hd$4eVfer$D?N-`o1`{i+INKX}Ute`cGa^ zK;?c=VF9bS>SBjCCO605D4m+6!j~VPz3@o*qh}YfOvk!Zq2T_)3ks<471$Keij7Lc s$v53cH_!fvo;mvX%xe#?e{q8fj;&8n!Lj>qQo%7QC^5SrIA+-KzhlrcI{*Lx literal 0 HcmV?d00001 diff --git a/backend/api/__pycache__/templates.cpython-313.pyc b/backend/api/__pycache__/templates.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a7d2d21f03bb58ae10c4c5a980798d37e647c601 GIT binary patch literal 3573 zcmdT`%~MlX6u<9-5P13EOVA(^5yz$~5d|$3a1c=l6&zl0oSGU#@}SXt_1>pdJDtIm z{sDG|=_*UyIpcutkl%4&H)pA{@x4gMcSI$sFiAoJ6+$8vLlTujGL`)}FHY8k9Moa< zrODcmlRC}5JXsg2r}bvPW>N{cs4L{A?vRIiLSE_(HPD7oBW*O-9g|I=X4>p05uuBy zwW>2HsC5G(ZHctZ9JO64YqdV&j>t2|$}@IPRR*Mp*hM1s{em^uC#bH7OLa#aeX{ED zkz4XDp}%BK+W^1U-domy?~J%>U_$i{h!A5#6{e&%M)s*q@IzdO+FXU}+X1&F;zq7X48njTHe1svQH*3!9DOxH%K2C_U> z<6mm&7;m=MFDA8AqGVJ#S+ew1SYD3ha>>j>X~VW_);{pYYwuJwdN&!@9(aPWTr#Ma zJY&4hHedmfJ91Q;Pu}CQ9$R3Xz>J4#ESJqNEt<|Iv=mpY(4%n}akmWWHPL7&xUBnnvrIu?bx^`^p|+;Ce()~miTDIT#Kbrn}o1{O#NU$528R?=zb6k z4+l#86eHqp+-7sgXgAEYpw+hFb{CZHeAo(?9sn~)p>OQX(PZLVu51}qBmiDHGvu4l z`OpMFQa*zH*b-1@t|O}1R6!M0X+YG3Sqaiao=QG}6noGVE+w}=lhyt6**lp8@YM=i zxFezIv1AI;#!M&IRvswg0)2-;m6_vCJGe>?X#mYo?1LXW38ErVysc~ALj~`l{N$?l z#NzlbO7qX2_GQWF8!vb!4Clm4rFn7Mq!Y3SecPV6&tc_5iQA2|1wxMiyiJA|uD7OZ zn|WdJAyx5VUoJC|C>BmrV7jp$5EUeB-j=g#O0b{=t10kW`Lw4ppMvxF95P;SYV&ES zxJa8>^#IPRAZOQ$RDM==BL^;GEx=c`ii>EHC!3jMWdl0Ko8Yn8W6%H0; zvAY^~+Qa`5yDs!RT5{ax^#oG4<6F0N2cxIJ7VZDRu=%v_!mzcxs+>0D(0m!$a8Q5gj$0(F4k9`;o#mcnv>zb8x66myC@^!r%9sS^iIES+;PC{%Sg+{?^w z1J+|dJJHev#ZPRipm3pZqwt`>O2zlt#c#_-s~lQSor7ARG;%J>bl!m9GtrYLdZVK= zV3PlmRMJExRk9-e(kIygZ`KdzZsYRb5^u0XLxg7tYZFB#UWbR+K)E1cjN)*Gj zfB6O?46gTnveNn-POlMKmf}TJc{m*uo<39*p;z?a;T;b<3~%T1)wSc73db)kb{N9= zdf(ZVi_fRuLdXsI<|3-)Bkxe*<_T~ex hG4$oka>6)uxzICZ4vg@1^z00x-4Nb_XJ^cR`ETl-0dW8T literal 0 HcmV?d00001 diff --git a/backend/api/documents.py b/backend/api/documents.py new file mode 100644 index 0000000..5b934da --- /dev/null +++ b/backend/api/documents.py @@ -0,0 +1,54 @@ +import json +from fastapi import APIRouter, Depends, HTTPException, status, UploadFile, File +from sqlalchemy.orm import Session +from typing import List + +from database import get_db +from models.template_models import TemplateDocument, DocumentLayout +from schemas.template_schemas import DocumentSchema, DocumentLayoutSchema, TemplateRecognitionResult +from engine.ocr.document_processor import DocumentProcessor +from engine.recognition.template_engine import TemplateRecognitionEngine + +router = APIRouter(prefix="/api/documents", tags=["Documents"]) + +@router.post("/upload", response_model=DocumentSchema, status_code=status.HTTP_201_CREATED) +async def upload_document(file: UploadFile = File(...), db: Session = Depends(get_db)): + # 1. Create document record + content = await file.read() + file_hash = hash(content) # Simple hash for demo + + db_doc = TemplateDocument( + document_name=file.filename, + document_type=file.content_type, + file_name=file.filename, + file_hash=str(file_hash), + status="processing" + ) + db.add(db_doc) + db.commit() + db.refresh(db_doc) + + # 2. Process File (OCR & Layout) + processor = DocumentProcessor(db) + processor.process_file(db_doc.pk_document_id, file.filename, content) + + db.refresh(db_doc) + return db_doc + +@router.get("/{document_id}", response_model=DocumentSchema) +def get_document(document_id: int, db: Session = Depends(get_db)): + doc = db.query(TemplateDocument).filter(TemplateDocument.pk_document_id == document_id).first() + if not doc: + raise HTTPException(status_code=404, detail="Document not found") + return doc + +@router.get("/{document_id}/layout", response_model=List[DocumentLayoutSchema]) +def get_document_layout(document_id: int, db: Session = Depends(get_db)): + layouts = db.query(DocumentLayout).filter(DocumentLayout.fk_document_id == document_id).order_by(DocumentLayout.sequence_no).all() + return layouts + +@router.post("/{document_id}/recognize", response_model=TemplateRecognitionResult) +def recognize_template(document_id: int, db: Session = Depends(get_db)): + engine = TemplateRecognitionEngine(db) + return engine.recognize_template(document_id) + diff --git a/backend/api/templates.py b/backend/api/templates.py new file mode 100644 index 0000000..bc859cd --- /dev/null +++ b/backend/api/templates.py @@ -0,0 +1,53 @@ +from fastapi import APIRouter, Depends, HTTPException, status +from sqlalchemy.orm import Session +from typing import List + +from database import get_db +from schemas.template_schemas import ( + TemplateCreate, TemplateSchema, + TemplateFieldCreate, TemplateFieldSchema, + TemplateFieldMappingCreate, TemplateFieldMappingSchema +) +from services.template_service import TemplateService + +router = APIRouter(prefix="/api/templates", tags=["Templates"]) + +@router.post("", response_model=TemplateSchema, status_code=status.HTTP_201_CREATED) +def create_template(template_data: TemplateCreate, db: Session = Depends(get_db)): + service = TemplateService(db) + return service.create_template(template_data) + +@router.get("", response_model=List[TemplateSchema]) +def get_templates(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): + service = TemplateService(db) + return service.get_all_templates(skip, limit) + +@router.get("/{template_id}", response_model=TemplateSchema) +def get_template(template_id: int, db: Session = Depends(get_db)): + service = TemplateService(db) + template = service.get_template(template_id) + if not template: + raise HTTPException(status_code=404, detail="Template not found") + return template + +@router.delete("/{template_id}", status_code=status.HTTP_204_NO_CONTENT) +def delete_template(template_id: int, db: Session = Depends(get_db)): + service = TemplateService(db) + if not service.delete_template(template_id): + raise HTTPException(status_code=404, detail="Template not found") + return None + +@router.post("/{template_id}/fields", response_model=TemplateFieldSchema, status_code=status.HTTP_201_CREATED) +def add_template_field(template_id: int, field_data: TemplateFieldCreate, db: Session = Depends(get_db)): + service = TemplateService(db) + # Check if template exists + if not service.get_template(template_id): + raise HTTPException(status_code=404, detail="Template not found") + return service.add_template_field(template_id, field_data) + +@router.post("/{template_id}/mappings/save", response_model=List[TemplateFieldMappingSchema]) +def save_mappings(template_id: int, mappings: List[TemplateFieldMappingCreate], db: Session = Depends(get_db)): + service = TemplateService(db) + if not service.get_template(template_id): + raise HTTPException(status_code=404, detail="Template not found") + return service.save_mapping(template_id, mappings) diff --git a/backend/engine/ocr/__pycache__/document_processor.cpython-313.pyc b/backend/engine/ocr/__pycache__/document_processor.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3c8b5c25161dd94843bc8636438fe8fdabe6862f GIT binary patch literal 10369 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 B!QKD> literal 0 HcmV?d00001 diff --git a/backend/engine/ocr/document_processor.py b/backend/engine/ocr/document_processor.py new file mode 100644 index 0000000..c12a129 --- /dev/null +++ b/backend/engine/ocr/document_processor.py @@ -0,0 +1,217 @@ +import io +import re +from typing import List, Dict, Any +import numpy as np +import cv2 +import pdfplumber +import pytesseract +from PIL import Image +from pdf2image import convert_from_bytes +from sqlalchemy.orm import Session +from models.template_models import DocumentLayout, TemplateDocument +from schemas.template_schemas import DocumentLayoutSchema + +class DocumentProcessor: + def __init__(self, db: Session): + self.db = db + + def process_file(self, document_id: int, filename: str, file_bytes: bytes) -> List[DocumentLayout]: + document = self.db.query(TemplateDocument).filter(TemplateDocument.pk_document_id == document_id).first() + if not document: + raise ValueError("Document not found") + + layouts = [] + if filename.lower().endswith('.pdf'): + layouts = self._process_pdf(document_id, file_bytes) + elif filename.lower().endswith(('.png', '.jpg', '.jpeg', '.tiff')): + layouts = self._process_image(document_id, file_bytes) + + # Update page count + if layouts: + document.page_count = max([l.page_no for l in layouts]) + document.status = "processed" + self.db.commit() + + return layouts + + def _process_pdf(self, document_id: int, file_bytes: bytes) -> List[DocumentLayout]: + layouts = [] + try: + with pdfplumber.open(io.BytesIO(file_bytes)) as pdf: + sequence_no = 1 + for page_no, page in enumerate(pdf.pages, start=1): + # Check if it has text + text = page.extract_text() + if text and text.strip(): + # Extract words with bounding boxes + words = page.extract_words() + + # Group words into blocks using simple proximity heuristics + blocks = self._group_words_to_blocks(words, page.width, page.height) + + for block in blocks: + db_layout = DocumentLayout( + fk_document_id=document_id, + page_no=page_no, + text_value=block['text'], + block_type=block['type'], + x_coordinate=block['x0'], + y_coordinate=block['top'], + width=block['x1'] - block['x0'], + height=block['bottom'] - block['top'], + confidence=100.0, + sequence_no=sequence_no + ) + self.db.add(db_layout) + layouts.append(db_layout) + sequence_no += 1 + else: + # Scanned PDF page -> convert to image and process + # Handled separately to avoid complexity in this mock + pass + except Exception as e: + print(f"Error processing PDF with pdfplumber: {e}") + + if not layouts: + # Fallback to image-based processing for scanned PDFs + images = convert_from_bytes(file_bytes, dpi=300) + sequence_no = 1 + for page_no, img in enumerate(images, start=1): + img_byte_arr = io.BytesIO() + img.save(img_byte_arr, format='PNG') + page_layouts = self._process_image(document_id, img_byte_arr.getvalue(), page_no=page_no, start_sequence=sequence_no) + layouts.extend(page_layouts) + sequence_no += len(page_layouts) + + self.db.commit() + return layouts + + def _process_image(self, document_id: int, file_bytes: bytes, page_no: int = 1, start_sequence: int = 1) -> List[DocumentLayout]: + layouts = [] + try: + # Decode image + nparr = np.frombuffer(file_bytes, np.uint8) + img = cv2.imdecode(nparr, cv2.IMREAD_COLOR) + + # Preprocessing + gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) + # Denoise & Threshold + gray = cv2.medianBlur(gray, 3) + gray = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1] + + # OCR using PyTesseract with bounding boxes + data = pytesseract.image_to_data(gray, output_type=pytesseract.Output.DICT) + + sequence_no = start_sequence + + # Grouping words into lines/blocks simplified + height, width = gray.shape + blocks = self._tesseract_data_to_blocks(data, width, height) + + for block in blocks: + db_layout = DocumentLayout( + fk_document_id=document_id, + page_no=page_no, + text_value=block['text'], + block_type=block['type'], + x_coordinate=block['x'], + y_coordinate=block['y'], + width=block['w'], + height=block['h'], + confidence=block['conf'], + sequence_no=sequence_no + ) + self.db.add(db_layout) + layouts.append(db_layout) + sequence_no += 1 + + except Exception as e: + print(f"Error processing image with tesseract: {e}") + + self.db.commit() + return layouts + + def _group_words_to_blocks(self, words: List[Dict], page_width: float, page_height: float) -> List[Dict]: + """Group nearby words into logical blocks and classify them.""" + # Extremely simplified grouping by Y coordinate proximity + blocks = [] + if not words: + return blocks + + # Sort words by Y then X + words.sort(key=lambda w: (w['top'], w['x0'])) + + current_block = { + 'text': words[0]['text'], + 'x0': words[0]['x0'], + 'top': words[0]['top'], + 'x1': words[0]['x1'], + 'bottom': words[0]['bottom'] + } + + for word in words[1:]: + # If word is roughly on the same line (y diff is small) and close horizontally + if abs(word['top'] - current_block['top']) < 10 and (word['x0'] - current_block['x1']) < 50: + current_block['text'] += ' ' + word['text'] + current_block['x1'] = word['x1'] + current_block['top'] = min(current_block['top'], word['top']) + current_block['bottom'] = max(current_block['bottom'], word['bottom']) + else: + current_block['type'] = self._classify_block(current_block, page_height) + blocks.append(current_block) + current_block = { + 'text': word['text'], + 'x0': word['x0'], + 'top': word['top'], + 'x1': word['x1'], + 'bottom': word['bottom'] + } + + current_block['type'] = self._classify_block(current_block, page_height) + blocks.append(current_block) + return blocks + + def _tesseract_data_to_blocks(self, data: Dict, page_width: float, page_height: float) -> List[Dict]: + blocks = [] + n_boxes = len(data['text']) + current_line = [] + + for i in range(n_boxes): + if int(data['conf'][i]) > 10 and data['text'][i].strip(): + # We can group by line_num + blocks.append({ + 'text': data['text'][i], + 'x': data['left'][i], + 'y': data['top'][i], + 'w': data['width'][i], + 'h': data['height'][i], + 'conf': float(data['conf'][i]), + 'type': self._classify_block({'top': data['top'][i], 'text': data['text'][i]}, page_height) + }) + return blocks + + def _classify_block(self, block: Dict, page_height: float) -> str: + y = block.get('top') or block.get('y') or 0 + text = block.get('text', '').lower() + + if y < page_height * 0.15: + return "HEADER" + elif y > page_height * 0.85: + return "FOOTER" + + if "total" in text: + return "TOTAL" + if "tax" in text or "gst" in text or "vat" in text: + return "TAX" + if re.search(r'\b(vendor|from)\b', text): + return "VENDOR" + if re.search(r'\b(bill to|sold to)\b', text): + return "BILL_TO" + if re.search(r'\b(ship to)\b', text): + return "SHIP_TO" + + # Very naive fallback for table check + if re.search(r'\b(qty|rate|amount|price|item)\b', text): + return "TABLE_HEADER" + + return "TEXT" diff --git a/backend/engine/recognition/__pycache__/template_engine.cpython-313.pyc b/backend/engine/recognition/__pycache__/template_engine.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dc9b72b638b063fd0bfd7c7fc82ca890f16de5ad GIT binary patch literal 9646 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 A#Q*>R literal 0 HcmV?d00001 diff --git a/backend/engine/recognition/template_engine.py b/backend/engine/recognition/template_engine.py new file mode 100644 index 0000000..4c482ab --- /dev/null +++ b/backend/engine/recognition/template_engine.py @@ -0,0 +1,174 @@ +import hashlib +import json +from typing import List, Dict, Any, Tuple +from sqlalchemy.orm import Session +from models.template_models import Template, TemplateDocument, DocumentLayout, TemplateRecognitionHistory +from schemas.template_schemas import TemplateRecognitionResult + +class TemplateRecognitionEngine: + def __init__(self, db: Session): + self.db = db + + def generate_fingerprint(self, layouts: List[DocumentLayout]) -> str: + """ + Generate a structural fingerprint based on the document's layout. + We use relative positions of HEADER, VENDOR, TABLE_HEADER blocks. + """ + key_blocks = [] + for layout in layouts: + if layout.block_type in ["HEADER", "VENDOR", "TABLE_HEADER", "TOTAL"]: + key_blocks.append({ + "type": layout.block_type, + "text": layout.text_value[:50] if layout.text_value else "", # first 50 chars + "rx": round(float(layout.x_coordinate) / 100) if layout.x_coordinate else 0, # relative bucket x + "ry": round(float(layout.y_coordinate) / 100) if layout.y_coordinate else 0 # relative bucket y + }) + + # Sort top to bottom, left to right + key_blocks.sort(key=lambda b: (b['ry'], b['rx'])) + + fingerprint_data = json.dumps(key_blocks) + return hashlib.sha256(fingerprint_data.encode('utf-8')).hexdigest() + + def recognize_template(self, document_id: int) -> TemplateRecognitionResult: + """ + Matches a document against existing templates using a 4-level weighted score: + Level 1: Vendor Match (40%) + Level 2: Header Similarity (20%) + Level 3: Layout/Fingerprint Similarity (20%) + Level 4: Coordinate Similarity (20%) + Threshold: 85% + """ + layouts = self.db.query(DocumentLayout).filter(DocumentLayout.fk_document_id == document_id).all() + if not layouts: + return TemplateRecognitionResult(templateMatched=False) + + doc_fingerprint = self.generate_fingerprint(layouts) + + # Extract features for scoring + doc_vendor = self._extract_vendor_name(layouts) + doc_headers = self._extract_headers(layouts) + + templates = self.db.query(Template).filter(Template.active_flag == True).all() + best_match = None + highest_score = 0 + + for template in templates: + score = 0.0 + + # Level 1: Fingerprint Exact Match (counts for Layout + Vendor + Header if exact) + if template.template_fingerprint == doc_fingerprint: + score += 100.0 + else: + # Need to load template sample mapping to compare heuristics + # In a real system, we'd compare against the mapped fields' coordinates + score += self._calculate_heuristic_score(template, doc_vendor, doc_headers, layouts) + + if score > highest_score: + highest_score = score + best_match = template + + # Store history + if best_match: + history = TemplateRecognitionHistory( + fk_template_id=best_match.pk_template_id, + fk_document_id=document_id, + recognition_score=highest_score, + matched_flag=(highest_score >= 85.0) + ) + self.db.add(history) + self.db.commit() + + if best_match and highest_score >= 85.0: + extracted_fields = self._auto_map_fields(best_match, layouts) + return TemplateRecognitionResult( + templateMatched=True, + templateId=best_match.pk_template_id, + confidence=highest_score, + extractedFields=extracted_fields + ) + + return TemplateRecognitionResult(templateMatched=False) + + def _extract_vendor_name(self, layouts: List[DocumentLayout]) -> str: + for layout in layouts: + if layout.block_type == "VENDOR": + return layout.text_value.lower() + return "" + + def _extract_headers(self, layouts: List[DocumentLayout]) -> List[str]: + headers = [] + for layout in layouts: + if layout.block_type == "TABLE_HEADER" and layout.text_value: + headers.append(layout.text_value.lower()) + return headers + + def _calculate_heuristic_score(self, template: Template, doc_vendor: str, doc_headers: List[str], layouts: List[DocumentLayout]) -> float: + score = 0.0 + + # This requires the template to have some stored metadata or we check its fields + # E.g., if template has a field "Vendor Name" mapped to a specific text + + # 1. Vendor Match (40%) + # For this mockup, we check if the template name matches the vendor + if template.template_name.lower() in doc_vendor or doc_vendor in template.template_name.lower(): + score += 40.0 + + # 2. Header Similarity (20%) + # Check if template fields exist that match doc_headers + field_labels = [f.field_label.lower() for f in template.fields] + header_matches = sum(1 for h in doc_headers if any(h in fl or fl in h for fl in field_labels)) + if len(doc_headers) > 0: + score += (header_matches / len(doc_headers)) * 20.0 + + # 3. Layout / Coordinate Similarity + # We can check the template's previous mappings coordinates against current document + # If coordinates are within a tolerance, we add score + mapping_count = 0 + match_count = 0 + for mapping in template.mappings: + mapping_count += 1 + # Find a layout block in current document that is near mapping coordinates + for layout in layouts: + if layout.page_no == mapping.page_no: + # check distance + if mapping.x_coordinate and mapping.y_coordinate and layout.x_coordinate and layout.y_coordinate: + dx = abs(float(mapping.x_coordinate) - float(layout.x_coordinate)) + dy = abs(float(mapping.y_coordinate) - float(layout.y_coordinate)) + if dx < 50 and dy < 20: # arbitrary tolerance + match_count += 1 + break + + if mapping_count > 0: + coord_score = (match_count / mapping_count) * 40.0 # Layout 20% + Coord 20% + score += coord_score + + return score + + def _auto_map_fields(self, template: Template, layouts: List[DocumentLayout]) -> List[dict]: + extracted = [] + for mapping in template.mappings: + # Find closest block in new document + best_block = None + min_dist = float('inf') + + for layout in layouts: + if layout.page_no == mapping.page_no: + if mapping.x_coordinate and mapping.y_coordinate and layout.x_coordinate and layout.y_coordinate: + dx = abs(float(mapping.x_coordinate) - float(layout.x_coordinate)) + dy = abs(float(mapping.y_coordinate) - float(layout.y_coordinate)) + dist = dx**2 + dy**2 + if dist < min_dist and dist < 5000: # tolerance squared + min_dist = dist + best_block = layout + + if best_block: + extracted.append({ + "field_id": mapping.fk_template_field_id, + "field_label": mapping.field.field_label if mapping.field else "", + "value": best_block.text_value, + "confidence": 95.0, # arbitrary high confidence for coordinate match + "layout_id": best_block.pk_document_data_id + }) + + return extracted diff --git a/backend/main.py b/backend/main.py index 5ac7444..1789f21 100644 --- a/backend/main.py +++ b/backend/main.py @@ -48,6 +48,10 @@ from database import get_db, Email, Vendor, Document from scheduler import start_scheduler, stop_scheduler from mail_service import fetch_and_store_emails +# Import the new routers +from api.templates import router as templates_router +from api.documents import router as documents_router + # Lifespan for Scheduler @asynccontextmanager async def lifespan(app: FastAPI): @@ -59,6 +63,10 @@ async def lifespan(app: FastAPI): app = FastAPI(lifespan=lifespan) +# Include Routers +app.include_router(templates_router) +app.include_router(documents_router) + # CORS configuration origins = [ "http://localhost", diff --git a/backend/models/__pycache__/template_models.cpython-313.pyc b/backend/models/__pycache__/template_models.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b92120c3722b5d1fe16e6efaea043b0969533583 GIT binary patch literal 6236 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 literal 0 HcmV?d00001 diff --git a/backend/models/template_models.py b/backend/models/template_models.py new file mode 100644 index 0000000..b924681 --- /dev/null +++ b/backend/models/template_models.py @@ -0,0 +1,105 @@ +from sqlalchemy import Column, Integer, String, Text, DateTime, Boolean, ForeignKey, Numeric +from sqlalchemy.sql import func +from sqlalchemy.orm import relationship +from database import Base + +class TemplateDocument(Base): + __tablename__ = "documents" + __table_args__ = {"schema": "templates"} + + pk_document_id = Column(Integer, primary_key=True, index=True) + document_name = Column(String(500)) + document_type = Column(String(100)) + file_name = Column(String(500)) + file_hash = Column(String(500), index=True) + page_count = Column(Integer) + status = Column(String(50)) + created_at = Column(DateTime, server_default=func.now()) + updated_at = Column(DateTime, server_default=func.now(), onupdate=func.now()) + + # Relationships + layouts = relationship("DocumentLayout", back_populates="document", cascade="all, delete") + +class DocumentLayout(Base): + __tablename__ = "document_layout" + __table_args__ = {"schema": "templates"} + + pk_document_data_id = Column(Integer, primary_key=True, index=True) + fk_document_id = Column(Integer, ForeignKey("templates.documents.pk_document_id", ondelete="CASCADE"), nullable=False, index=True) + page_no = Column(Integer, nullable=False, index=True) + text_value = Column(Text) + block_type = Column(String(100)) + parent_block_id = Column(Integer, ForeignKey("templates.document_layout.pk_document_data_id", ondelete="SET NULL")) + x_coordinate = Column(Numeric) + y_coordinate = Column(Numeric) + width = Column(Numeric) + height = Column(Numeric) + confidence = Column(Numeric) + sequence_no = Column(Integer) + layout_path = Column(Text) + created_at = Column(DateTime, server_default=func.now()) + + document = relationship("TemplateDocument", back_populates="layouts") + parent = relationship("DocumentLayout", remote_side=[pk_document_data_id]) + mappings = relationship("TemplateFieldMapping", back_populates="document_layout", cascade="all, delete") + +class Template(Base): + __tablename__ = "templates" + __table_args__ = {"schema": "templates"} + + pk_template_id = Column(Integer, primary_key=True, index=True) + template_name = Column(String(255), nullable=False, index=True) + template_fingerprint = Column(Text) + active_flag = Column(Boolean, default=True) + created_at = Column(DateTime, server_default=func.now()) + updated_at = Column(DateTime, server_default=func.now(), onupdate=func.now()) + + fields = relationship("TemplateField", back_populates="template", cascade="all, delete") + mappings = relationship("TemplateFieldMapping", back_populates="template", cascade="all, delete") + +class TemplateField(Base): + __tablename__ = "template_fields" + __table_args__ = {"schema": "templates"} + + pk_template_field_id = Column(Integer, primary_key=True, index=True) + fk_template_id = Column(Integer, ForeignKey("templates.templates.pk_template_id", ondelete="CASCADE"), nullable=False, index=True) + field_label = Column(String(255), nullable=False) + field_type = Column(String(100), nullable=False) + display_order = Column(Integer) + required_flag = Column(Boolean, default=False) + created_at = Column(DateTime, server_default=func.now()) + + template = relationship("Template", back_populates="fields") + mappings = relationship("TemplateFieldMapping", back_populates="field", cascade="all, delete") + +class TemplateFieldMapping(Base): + __tablename__ = "template_fields_mapping" + __table_args__ = {"schema": "templates"} + + pk_mapping_id = Column(Integer, primary_key=True, index=True) + fk_template_id = Column(Integer, ForeignKey("templates.templates.pk_template_id", ondelete="CASCADE"), nullable=False, index=True) + fk_template_field_id = Column(Integer, ForeignKey("templates.template_fields.pk_template_field_id", ondelete="CASCADE"), nullable=False, index=True) + fk_document_data_id = Column(Integer, ForeignKey("templates.document_layout.pk_document_data_id", ondelete="SET NULL")) + page_no = Column(Integer) + x_coordinate = Column(Numeric) + y_coordinate = Column(Numeric) + width = Column(Numeric) + height = Column(Numeric) + mapping_confidence = Column(Numeric) + layout_path = Column(Text) + created_at = Column(DateTime, server_default=func.now()) + + template = relationship("Template", back_populates="mappings") + field = relationship("TemplateField", back_populates="mappings") + document_layout = relationship("DocumentLayout", back_populates="mappings") + +class TemplateRecognitionHistory(Base): + __tablename__ = "template_recognition_history" + __table_args__ = {"schema": "templates"} + + pk_history_id = Column(Integer, primary_key=True, index=True) + fk_template_id = Column(Integer, ForeignKey("templates.templates.pk_template_id", ondelete="CASCADE"), nullable=False) + fk_document_id = Column(Integer, ForeignKey("templates.documents.pk_document_id", ondelete="CASCADE"), nullable=False, index=True) + recognition_score = Column(Numeric) + matched_flag = Column(Boolean) + created_at = Column(DateTime, server_default=func.now()) diff --git a/backend/repositories/__pycache__/template_repository.cpython-313.pyc b/backend/repositories/__pycache__/template_repository.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fcb3482ceda4a8161757f0fc25f304c9366f89a5 GIT binary patch literal 4882 zcmcIoU2NOd6}}YpL+g*W1BRs(Wk)%Hn<&-H3JGXj}Fj>0(;r(-u7t1Mn!Px`mm?G$#aIj?i^CoUzlwV+l731 z&f&S2m*?j@mp+R`f&|9nKaSn~MTn5Uqu>m0gE`v(<{`*>dW}4KNFyV3`aRj?_KT51Zgl6qM=NfhLa>t&Xb%kL2~}f9(#2fDFxEpGZfN{ z8OTYhDpxDOdPPYsroAS2Qz~yO1x+#|4tHIa6ww^$5N{N=x8+L7OgP%CRIHXNvIeWI z$f{PQyJ^;pI(Ofp5-u5YWNXQWvblt%Y%FZwE83g3sjnfN{RWtaWP?y9N2n*qP&Vh; z@V@5Bu?ce5OMN--h94w&Z;%4H{+xfqp9_G_o8wS-m!Vv)XQKyff|gAXXXHW~A+QKr zns8%{h$Tg=`_YZ)29KKnE8f!g=6Y#gsV^Nf`<)ldO50Uc#@B!52UF7{-YGU*Z*3oW z7XHq9fjlJd_bQeeNr^mR)}Anw2R`jFy{e>aT7rs`l1X!EKCentoi7(ead-YbTD>b3 zHFf?c?_}ri6pHtxia1Z5$IFsBuQehmG_|{P+q)(w2r>jp5X_MmcRlCa48Sv0Bp(r@ zf8e))Ghm4sYOX1Z9q)z7YrWTJz&s>*l12NjkwuHHvF@Zjxy;zNviQ`l(Xz^NUAI8Y zGq10Z)_f?e?s2)HND|i$~iHu=>^4fPh!|*ujJS2L~VQfAHD+$NVcbepcsazu2nH zE$MShe;Lu|ZXWab8o#dd>&N`9BkmR*#s_-Ud-AsFQ{=L&726$(ycL2+!2It+kY}0! z>VXGzjl8FM_rG>OO~4`z=T|p3RY{|hpfTBkqNG{d-$^tUa{94Y&5? za51uSi;xPtjwoe~yeErT);02Mw!cdSB51K_x&~;6x>O*77K^QG0I z*U8Hyxgih|A}{sF|HFr#6iKsd&|X{FQz?|CCq6T}*$FeDP3*FQQn({2X3!S2-EC;Y zqO3wg-W94;1bB*2>HdyPB~jQ^3Z-7l*Vo{%1G)5T(*ufmh3ePn2+K0taR)>hmfZSaXBE@9(CBW4yjAQ(6U z`;`q201KVq0Hxys51@4^anNG$x&~-n`XK;}ufjr+SclEdDOrTVu90V3Me>qa&2n!| z?Eo0JCt;`U8XZq!p*TEibOvnFJ$7okWTlnX^m|}L7m!>+b8o8~(?!&NABc)>Yb9kr zR6;W&?YuRoUGnlpvuRvx3kalUENP6qV#Lqa;&Xa@&KRDo4PVrUFB*wdEpbUtTxv3q zNdv(>4l=2cGMK$9C)}8muP>$$cfw5?{O}%cWl%>;!Hlu8<}ol^a4nY7W2wjM$FYSy?r))(5$?6>d2N5~(GO0- zsW$l}JPH#Ge!wnVu55qHs2!&%EE6jLcdfFWhn|=BK==C?x}Ueb!{@zjt_H1J5qn*W z*y~oru!2ibf!3ufgEk8L?HZtU>C6BQJry4$h)aLY4t6a8V&2yV4r~_Bpk1Tg;>Pcq zJ=Sggb6rzGY^74(1_Z!@3!pa#+B>A(5M|MffmW;*cgj*l6A)|#PzJUOB}u4M&G4^; zVig*tT*1%H@NT>0dmxJ%w8AY(E^TRMe-u5QZtyzHR(}r!is9VIUi7cS6MM@~&&@(JG^Q`srr*}5-!@VgYN@Mw>Z%c+_?-U( zZ;YjCV+;D&LW>z1`?UN?*%%)G^utd+G^S>1Q*Y{1Z=S}2iRfOYKGfbMgD2rBBb=y( zC-v~;NYAl%<6D2+S30PqbTVTxRlDpf(CSeO)Z)nw(0X5$WmHpMd>y@CX5hyD=BTR=>& z0{@htc;uz;p*$!Es#ehCqEOH@D&N`BBvlZe5PPF|NTrAX7Qx7<4}kod)IE%E@X?j$ z1TJ+y1{+rA`5>v zIG6K%bI#Bg$z)uD-yi=x`Q<+pN%}h~{x9q`E>u~PzLiQ+Nq#D=$W&e#paWB=4?GR6 z5K30UG|ctT)5uDMMy8}OX+|oM38@s;}tV~ufZ9IS~R zYn)qEuqL&5cZ3ADrofu+>8o;U2CRdc+U=X<)*-NFd-|rhH3!z=9&4IgN5DGTW6e~? z3gfSFON9Xz`^a#twYq6lS$wHp+qNr@?6M0EvT8dnQ#Kl|U9TC{g3J`ta4px~vC3Xp z`Ga`M#S}EYl{AUUC5aA{WE#>4#BiV#dPk<=5}}bwxDa7+oUl}WZtWPaBk;;5jGW%4 z^&Q=CU21Rbx|Z|3v|flZMb~S_j-~4?uIoE>bGM3ZRoB1THL9K`t?S!1b=<05vubr+ zr??!ZLT{_8m-&9!u&z6<;o9Y%8K9>MJul!-V(%9}bu8)>cMQ|qD}F-jUs`3?DQ+x1 zD{dL(7go(II()%S(Y1CORS1Lb85SFRGzMdEf!lF#*xyNi%}#!2o@MX7T%}pxeI;xj zrKF3$fct9LW+jbi;nKjH;Nh)Mw?%j>qD7I}&?nrdM?9T){-~!bp04!iu|7TCrziS! z)zkg)lc<+cG*(F$GA#F~Uf$iYYVNABSKoC#knwo3Y~zJ)dR`rPWazfZQrkU7(4!5b zV(GOyi@Vl0uKu-A-L+VJt6DF=(A~X;#nKIf!tlBRzuF{>Rd6e1ZFSc0l}IYLDM&ksIyYXp4-tlbM&R?aWv+ zdz@^M$)48mWV3wyMT^X|hbEd2j*Bfa-P1~Bj~*X>*dh~cHFxys;YN$Rf$t6c;Ah`x zE*-z$B2(?lR(iAI1dxhqaSthuV@aWjN~{oP*-bAIF56bsT;f4}eH&(D ziEXs#RbvZFick<4I)L7!X*-ZW_jEY47F}jZ3MbK~0LXULsCY=Ifk^Psb0i+ZNCFOy z&O10T*{av8fd}zE_C|rrb1+tb!eFjNa_vm^90x2pm4_>PNXIpBM@%!v4Txw31uP5L%;72*0`2@KaI zaXDRs`1u}=fdc1sav&fw6O)*Y1WPkx=VVL-0lNhU;ZNYXJ_w}{XO^EGL=Zw$0cQC& z!M4y9w(%?i@50@wkAWeo_Skq%fquyzo5(34n(DFf!d6PqbR`6NX5tEa*NjHPu2nn| z7hyXr2bHNCZ6AYmmhCNAUKOJg@B+Pw;ueZ26w@Hs(2f{b+(UTf;fNJ7{{^teI0R2O zmt$k0?VEruqb&&7kI;bvH{(=6bb&1_oRZPz*vaizfb&9oavJi(ij;$?&W6Iaw5h!Rdnu^M9P0K;XQ? z!_z<#4v!ypI3*v#B6^Mr{VD2wh58BFP~ZUmDaekr$jE=50_+yNsdvG1{V9N|$MdTe z!))qhR6p~^`Mo&hbJF7>E}bR2B;*w>!l~#NtVAG-o$d*;~qQEJg zNf5vm5rDh*In0}<6ANd)Q?;bm&%Z^az?SxG{w*R?A%z6%M$#k35-f<{BD%o@W~_s8o#ncwZO8x? zZBV@MC5*Cbe{G49#1k!sk|`dsMEnbbf#JVQyBvs3cu`=01Q9m}jthr`C*WV8gOf1m zDE}P2C~z0f#~=V4?+(E^if3=EId^jJ)k2Fbwg-n>WZ1hb%*_LOk4^{kXXIq!{c~Mo67I694X>XpKs6H z;Tpf2-)Ya}_cx9zF^+?s%t;*QCe$_sf6 zJMfPStlHvKa~@&B6+FUaanA5X_T@XKyeGb;KcK&Ye(;YG$vFV=&yXz3KS=XGNYj6l zCOZ*XzJD~{k>Jr$RQXo(-Hrs0&J9IgIQqOJ!J{)mB{~v3JE|fV qPbRQav6Dl`^iMp;fcya8hDS$QPmAa!X&bZpfpL-RBC{OEei5BfP}?rvpWr&u7C8+ zrXoV9Jt2@loFZ}L=tvwY@sHT@0kopxz$v#tK)o_=cI`TwTsUMTKhJ#c&71eVH}m#5 zm&*__e*Wds&bulhf8t^|#9EHycf{X5F^EBHq)LGnah|9pstPDo71U}Hk`hyDscIV1 zMKVX`iJ=yVk-U}&oq)ETDy0u`QKCWGV4S<{R!Iq_?y_dbvwXGzOvqq%xPH%No)dwE z6X5$+r{lJ^L!I!JA8PBY)8?+Xj|azRy}tMd&d$Uh$(^nGsU%>;;->x-Hi?&0sFZr99N6@VF@<9+Te-i{1L5@Wwal z_xiCwNH95a>N;nWUKVEiWRuj=9|Og4icaX5H1K2 z1mwVbW%%TgG-*-Df(sP@x zZ;ywm3azZ>|0VWGe)ybX#B$@&@sbiUdr6!F1tB<|RxB1JzhDN9EzcWef(KX5Vtc|Q zi*90+7yJ5R_wGPn>1it=<=im2repcmIagD+WycuN5LK21y^NuTmpd%z6#)d7;}m1N zaci7lxv!VIUk&t|J?&;lFmn&PQpoOnOPUwYaYW6O#}4a?Hx^#Oc*pAsuOiL)IL*^; z@@Ftz>g!8S76y8?r&T4>^RAu4Jm#|zLBOkZqG+!nn^Q%LZM%2|6*869?_Sg&K8CyKR*^iDOIaR+l}a2qz6+db{JyDs4c{WRPC$XK_!mNa zO^y;Yx%A`pe~9=yO3~y>SHbzpUt+%clYJ!St558I@ekGO-Oo_Hj`JGrN_~y?Zq*U3 zQH0mJZ{lJN=Nq)Epo#{NH5xOTo#gaF?EjBz)NT98S^;w5ip}~ErYqx%!G`Dwgwi^JUk3i#x|x-W`uyhH3|$O=2lL| z4h$kz`cB3|#)h^=#(aFxj!q87`qt2HS(n)35u~G!JG$|EnR*VtyVvrm{%k}AgQYC* z1>WWt-;N-Wz1$6!?!Qc* z?(YU-O_?#m@x3Dz5+npNfnn-=f8C_khUnTpWzKh45kjCW)^)pm-uACEh7f^sb7h96 ziJm|_6g~&Jzq~9D2G?!>mf1NpvJ$~;!2sA`jB@OQ^M~+m*&b~|C?vYtJOptG7fhAi zvsu{LY~

wDl5L6CYDR3-v8ae-tmrlH>rZ;mCnIOSZTes>aL5{{yiX-cZKf?TfLicK}G=?dxS#6cilc z#jMIc)b++}j0gS!<&_3+XP!TuA@}8+(sJD=Vfyu^^`w@7eimW3CEb4lc1$$go_@5ygpm0nzyFGPx zJ$I}>A@evTqVv|0rrMEuK|>8ji19IY1_Jw1p(VarYUOs9agUou^D%CpGau>Lk#GVwZeTMfALEZ+a-oiDkG-i~x zg;}MLh>$?SUOt>jm+dMDQ0TKZv+ja8Alqi zIuTPRHMLgwG5Jv5pPoVyVS}fV!6Ze6m9&tj08$(zMIlbxlUDgdBA?92e-#M1S(a>Q z9&c0^d%q@wU(MaWAhG)N$3hpcq}&;{Aplc@1`QWrd$oL+EN+7D`6p9gc7)?M+}rw> z4DM5m-ncW>m)f3Ok}^HyaeyeBcf0<)Mm+PF^jqv_cj{Ii9vrBub&kZgXUd!f2TRg2 z{Yts&jXlvifFKdG?$H69tqi!50GE{$Q7*LH1d;Bf?zaUO1mrMa*8zSSNMk0Su4$h| zGXAoPiymnvf?f-R3&8L9a?!l)I#)j8*H3(qNM2UPND~& z*plN}+u6x6Be!R0un8U{k%Z#%Z~rqic$2DP?B&{~q6^BBtx6q4%^&S_z`I3de*oBt z;u$Bo&vv$>vbLX)&+y}?wQnk%yb)kF=+hFyYn57cSf7MqrR$}%<251HWaHm14x9cZc&_M#(W>v$~Q zXZ(aCTFm7Y;nXhRWDI?ynizUiR?fo6skfXDM!HCy+Y(k!LVV(OmM{*7q={4E&=yaA z@cx%~i^dHfo)20*dFZFCA`CQbU8uWKoSwz}%R_XQz8_zy;gu#q#q?=y5iSpx6**^> zI8pqcCyUo}AE!r;N29B$zMqC?lNrVqF|B_tm6rUH28an;d&aVBom%oq5tHae;B}My zhIQLZ=q_v7w^Xnm4`I%Q7z%9^q*PTBcQ9BpK{PsSbX%BU@|+`1ULuRb?1Y~)Gn%I} z)LA7}lCQai-qka#TUIO9$vv2|ksXQ_I2?h}&X1{n@S4*xS4*}?Ico9j>MaDsFH+=y zbr~%;4sp=W3}eT#UeE@@Px6Frfe>fkID8Ys^~&>3TjibE+c!OL^g4_hNP;>rP10+l z=D8-d8k#Gq(K^?|BxAQgJNNJp2Wzt|25*23U%L6)oi<(+q+=-Eu)Td}YYWwMUZfA~ zXDN=W?Lhfx`hi)nq4zYFR-0s3ZwRsvd~$ZoE~qpbs93YkZ%%qmnXJHQ##R-h(P^7y zKN!8?UT-c5E7G2?Ph2c6y_}W6s;XGpLat0P#)xL1qG%Zk6&8mqRet>4Kx#&;9UNJ& zRM2RYzgvdXb$@fnI7)?AEOMQP)wfK`jiz_6tg|-4a?BR)k(v7RV=2u@G+He+1+v_< zt;JJ-rv5N2wnl4L7-vpVPon2ZYB$Cr5|pNKh|u#GPO?NlEFNqauc`QDp6s(z2A#Wnn`i5VRTNz)Jd7+ne#k9M`n zL_AXBs&9T-6uLjc;;T6Zc{EXPFL_e?jV@6 z-Tar~PRWGl@H<*2?-?>Xc5FVL9#)fvV=2(|6@HSZkJj}*kAI(61iZdbNA$3@bRun= z2PUmOOc5_+`!&KAeQfwED&6tj3#idoUXYwOxBtA6txe39k1FfIH~aaxbxOmlk&w`b?*yD+ef;W ze{xY7)4;vwZWe;s$frngr5AP=se$|l+G$-75)zn*KD-e0d{hg`6EHbP9B{c%zUZ46{Gf6^&IYUkqexnHSw*}NpCpDiek z?oTS}Q4>_zrWT$ToL*oiujMg%*w+2PxF6NGIOy14=%~f z!SVlKlmB9yOoU8KY-}9=om(Dhc)FpiCiAPc(o)D;f{X9!B6EKHLd^;)OQk?ZOY{*qY$v0hkU2%2lMS%A|` z;9HZyjmV(TPktteX4yl6Y2H5YCp+Y<$bmwL^?+Z0Db~NsHxHM zZDOI|Mgj5x`pMksLY@?TwU0hzyT9E|x3T@cA$UX#bPYbov#0#&UAy>@?T z&tr^#{@8?WN#^slwOb!7&Fyc2>Dxh!9zwwwhcE;hemD1JL67pOBoW*cmGAxjiQOOh zg@tHgo_PQkt&-%_uoDOTjquHa;+7kX+f^+{<@_+z>86|i{DQak4BqF)3iQnUd-bLh zvzH;js~Y#t_X!_qX;LiehQ3?D`X!84RAChrVF42XH&}EJH7hvs2K)oLhZl|?M0Nn? zh9si>@eu2ZuYe>{k3bdtWZXCdswhP%K68A~2xcLdqWe(MF1|5Q<;xKp?v&W00li1) ziuBsicp#JVT>MVai!TOOa$o&Qxdz7v*mrMWt5XZprC)sqw6+iB21Ir8G5){~9^Nti zMpFTyc90+RZK~N~GNdGPm7Q(LbIZB;T#ME6+hqDIv!aq(wVIYry``zFPA?ze>py70 zl*#7F0~VW?Ph>_l|Z zV#%RRC9_IO!9-)JH{DPiFmrC$NSl?zGD!Fl_Q1#ogf#Q~Y|`-Znocs|G@ z+5xaMF_=@y(7SXbM!J3v_>)5C%<)Pq=cV~8$w}51~%LZ09wb6|`&*eCt;%`A|&zLQoRY@}u3gk0E+CDW9oz)dJ(?j8DpOqPvk4ir( z@chENN(xX)aZG%sRg&sr?GhaKE&);biL*?St{o~s^#JP*x|smO-(9tI45_pBW!5xLLC=15lhC1`)q?X!pX2Mn_Ka@Zzvs)eFTM9L``V zXtqRU7!PK_nJI9Pb4tdwx&d>JZi+1Zb&lqLEq{#MsOmnK4_d&8~u3wW#b- z%{?UKEL-AJZZz(DYG_BM)W8KEj-3@wm>17UgQ4SQYKR@-ko>%NErrE3XiQqE$I)AF ztbM(c+*RVqGe8auH0CnxXR zy2OHGCJzXxu->iG$AfP{F$v74?pra)%s;H}vtE9D}w4%G9=TUO&xG5H_x2tbj zt4{+x|JZ83N8{8*(nQzLKqba8%IuO;60)$Cj&?__og_JqhdDY%TDSuAUTrcp%&I9= zwNHBGa7^{yOE-J*ZQu*9cA1seDZOlX^X=X-n>{1(F<357pv`zybHH&@X(**z>nh8~ zv>Mb~7(Pq&ZEu9CT;%xLf#C1Kr^3J=j-ymx#d za>ZExo$xjmw}zGo{KhYpqt*-AU20GyBtB+R)MKqykA0Df*bm%HA5QNW{(JI zE|s!;Hclt1<=G6G{TKkT6m}}kis^uox0UsOcePP<~^AvcKPVz>(gpV zq@9tl0-7GOARDS+$IcX9r#84!8~1b0eT;i-dW5SS+4$KbB7@SCz!GN@1mgaSynz%w zT$$KciL}5?jEAm=2%6BuQO^eHfpAhIGbPv?)lmB0Q`Bn6b-eYU%T||FwPm}Q0K zWFC}dXbFQax>4bLib1QrfVnbYbz=^plG5XYWD!FL-$Uwq{kF5X7l*^(@;!~^{rfah zQq@s5);;pX_lm%?{nE^rzGgZzNJMK(w)1yy0^|uatVv1E(I|Ur8hZbG908J6C5>bHaDnY)eUT`>Xu(@ z`ST+9&Du@&dXr4)WRWdok`#ei!w%a#Tnb+v6BlW=L+o^;4Em0vP6J}j?w-`3W*~>< zRJ`f)!0h-Cj41+H*;rhioPjM6jz> zNOlV5Z9X#MAq-=RmQNe4jS7tmw=1mY&#PGq3XfR}&G5C8r~1lSBkhM`2fcc5@81Gy zvoeHKt#qivl3SdVvXjx0!PItFV!zuc3}uhBd3U!ypF8?_hdoo`UZsotcG+~~wAWgH zUj~S}V$l6|=y_h8d%15bfd8$~C3`-kZ066VT5OeNIMims*}$<@SX^o$r5o9AQI84R zNgJ!tCY&N68Cbkb>_-;4TL`dW!7*w~sqR}9O}{Ghf-2b~``wq|WS#`(U)6`5VBM%- z+?Z8niC=E%y6Wt-wCuda^OgLb66eYCezvi3W?^gj{)f|N^Lg$dm7*q$e{@#`yy1g( z4CN$edTh=H(H_N-jPkeEgZUxk^fD7ttx z@+jON$X*3<+)LXy_X1~2A)P%^EGHLO{FAr{wG?P%;Ou}Ql4#jn{Dj=S)Ak=~;3@Q2GB?!Si=WT+d&a&GirZrlW3 z&kUgd3)Z76?CC16H;HmsHE2q<>(~pnH^m9h;?? zwQ*t(oHuQl$PXxxk89vzPIs7yZ_)Ae1t-T;fvppbqq=%;N>4|{C2LC&kfIQact415ABgeDu z6hU{_(LZ%?*|_q3MHoBOckXd!2JT$N+2+jlWjXSPj0Z2u2Bl|1gP@x~5gbB6m#;?v>_QpRn+UWn_g!w$ zM&lm%P~rk^d^~HRbir1VJZ3H;pg9I2@Qpq)8s$3Q)|`CzEQ{g_f3@_@W_Nr}MndKeFGCIq`XWw2(v71^e|=*H#{g0zK3O-!CFXiFHE1cIgV zl;KsCYP}z~ve+>8m|r*bN&woGYJJd2Itlg4e#Kiz#3RSk@OY~?%zi@zU<^FL2gWRj zY>Q4wa_gHTZ5FOf&5!y@KZI2*cQE>|jkeVZYZ-5IDE4k zj5_qYB0?Vin`e+~iMa1uWcUZ}KsB`pr(kV_d(<*7wMhDat8$e;r=Uj_dIXCHnq-}j zV!i?1)ar{8EsQFQZ>0fm()czt+s{HTv0<#O!n@w`HAqcn1-|%lU*?`#g9q6WPuTPL zp1HJA1K<^GURa#6?h#L=s3&X!!?m$L{0dCP-x>OVg?nijCE7mhMXnI@;VHK5VuPmb z2gE^@qFL7NJOf~rbOo->GCq^c2zdfW*1>fp-+R9Zd0$8B9!@8n`>+Umo%?s#69rzn zVQLXxI;zg&`8G{(4F+M*OHtSa6A!p@8g9?R-7Kc4J5DB8t2! z*%!|NZAIh~%o1l=0@myvR?Nr)rHP4zh6e3KsY%MwW`|Pq7S^p*w2Q)`9zI`MObOBg z_T&_JSlFb8l6A=r;_k+INtD2OG1n;qIJlG+;kRU+@4N*91nO`(jvA}TJUw5naB#!! zeIa5@IWCBLiZVBw?K*f*!z!d`VUSO4D6*|m*q{OJd~?HFoaOUVguOW-A*i5(dHk%t zU5q|?eWO2u^h-TL;QmB6ieXPZR~8P-KW(SXa;r zIdXLr9?=5qziqjMyHGQT!uUN6U!?p9Q2zw@SPc`wa@ThUKROXt!$|TT$?u`BMa`ba zO8(>@_v3Rz@N8+!*=BsBAf4ee!MOt?FE8gbNd=&|@*d>zNVAg~ium~OfAjd}e8cmF z3hWb{^bQl8^{sWHI>{n$d*q3LNf?d&x0Z>NHc9hq{~dM(QGDdXwXsBrx9pS?}fqe5;h0 zYc)&wCzmlij?`e0(q$&ymOf;!n`+*6BDe>>NI5?4ADIF^Z@nbrDf+s^KQ~KFlqg_- z-@i4Wu2l9pl#N)TC8CJ%8lqFJ-5Jgj9$Xs$ zz}LN)R#5snQAXvzN#iPwQXmxwY)l;~qX0E$c%rkxwRgDL=^kyV(a=mVrVHsU#8S^J z7>_@}MiQT33F)SeOZjd9ksfKI9az`&A_zLk(@rr!jkEzB&*eIhB^5A@RMpM_uY`FX z)czmP8}SQV10JULu>~7xPtID8Y7-z6NWx8UqRvdv(GIoPM;w(NOl+2E)6A@$x#n}R zXjbeqXiC+EPvB~{1|w*_N{>o%(?v}bu6ad-lc`Qp;A-fU7wy^8QlrO(JZF_l8aPI3 z`tb;rEZ?-Razh>poGaW|<2uVNgp~ulQ#$;U*_4@Nz>ySmCG!`i=fo`Lz82oIDZ);8 zMJo~*_teQ)xk;(VX9focR@*<;q0?r%oiuWS;v9i2=3o?&vc^}er3|=6OI9wV)R)|q zam|#akL+hjw`(V0WlfAGu9=p7?OQZDmifMoh7J}FYgA2R>z8x%IMWbtYVQ76DVWm- zr5CLi;wZb{%R7W!TFSRU`9h}rR`W>Co3eDQ4|4B$o;_wzR+SFQhBqq-s?&zHwqRQ* zTXbHXwGf?vC~r=Ri7YsFq4xDicRpQCuIMxGb-yXS0N;WstuXAMXnq5of(akb;OT~* zX0df^D42tM)=h)~ULi0}=i{KeE~o-2A$2NmQ1AqeK4^AX{K5~3uv;=vnfFxB0W(>y zxQ->=ZHp}_f=DZ}X+~eLKsMYFQ%z2{mYx0@^{CD{2DT7as|FKjVN>k1jatqYIOgtP zD?dVNew#Hqeb~Ut)JkMJZe9Z9tB3}>v-Vf~1W|ZDk};9CQ-D9Z5QsS!{lk#FtEg;z zCWWUmJL2qnobGXKk8_i`l9|n+n0D!}nrlMk?6S_z+~Kc|8hU!tw6p{0+*%)9IuP%H za4p>}e0Wxy0x?3_WUX<%%CVO6$Z7Lnj{W&omAdjRd(QE`R!#k#GTm`I{$qSt%*Sb3)`9uHZX3_XXsN5k=9sZ2}m5}yyT z`|mBN9WOynd6xlagM;ut;SjQ29>1$mxE620MkQlcaWS-Hk?s}oWO-juZMj;?=Nk%Z3K8(VAIqMeMvh=?20Z~gbZ)i-o+LZ^ z&v#%tU7EK$5w3up+<|xWuJhZcJ!_XX+^q5Jb9xs7ms|%+$j?=Fy#1d61;i|ri^T2J z(yaVbVJog;4S~pYixC$*s$;@PpMoC&CfuxcNMae(H6MtH8 zk;pW$kU8VnKEtEj{nTV`gvw}H${98%zv}LF8|l?xuBD=~eIf_F-^fTfg4Fw)R9UKs zZg96A9zxmClFVT92qi08-Hv~oVG~^?2b_1AK0>U1u{~$nrT7v&3|ot@t7k58TjrOH z$Xn_Bl4uSoLKiP+bZKi?Kv7Zn=B+K9=G6k9H~rI@kyS>59jjZY%F|E(7LEb>!2pL; zZt%Z^?f)|x|4*=zXk3&{~fqja06l_LjNNbF?A$l3>!wM^#K=xa$IQ<0 zH_Fe-O32B^rp@r5-34q+t&9oj0F2NK0*;2pHco_`fWIUEne-orj+vPmn&FqeotUw? zsoCE~Hdbf`MJHox6+(``L;jiIuRz6^neac84hqnJ6A1s6hu~!V_v`#i)56Tb`u|b1 zXva_51TrEDKYu|pED8_N1c?ZWC9xn!@+oZ~0D0!6MASz$?p>c_l~ykWR|5dg1^ZkU z8;+I9kvf;eTy|bc8X9V;m1unsX-OvH6UE3^D)V&5J9T58oz~8btsYtv3BtBMEnJaIUe_0vxxDQyAu2=Hk+Q4xqIG# zKE;Z}x(GGWsuB!6PhMb}gSOvCM+!`Hce}LX0mhiarncQIw+kG6q{$~qFK!|;Ai8k~ zL&7mxpWEW6pD>V+aDjcE}$9hX8w(#k*FzTXx2iT(`D1 zjq}3%(L5Au5dxUm2s!_rEG%qfFx9pXL1b#l=d+PtE(xbr@@yuLlK zWrdQc*5EF!82WKC2^RG!{M2Fps^~olS#%PNJ)>tkrz2 z7IWh=jNxZwtIew}HXj~P()FwNz?w+g0%xz0+|KWJ=G2O{&|GY0;=f<)9dIVm%2n^K zX*b`At{IM^Ylp63uQuOUt5@M6-ou_StZ$aK)L8I!lqc89)t_<|9qoYAZmm;_s8`Os zaThg}9KGXD>VaF070C1fdFJ@opM}edSQSh_Q(nZAN!>hn#QOTln1mi9vTsQ;iZ{8lT1qIuOAyxjbon=iLc%5E#vTAHZ>r!T0Y5T2XwY_j=o16Lv=Oj^O*hpIk9M z{rK3o1?vpo2Is^N;$i!Me4oB~Hvq|fXpN+@WSPoB*Zml`4yR!g)&GvefBEI{q5Jx&TOjIiSFnDo4ydd&QBslW{b)FBl4PLjbvsLH zSQsY@K48FBW#qC|vXOCNIb`?3PhHHntRR*QXtYmm2Vfg|7vj7h&bKcwW9&QIplq38 zyA;+lfVY}t<(4w6h^-r(oJa}IBKjKx4MPKeqqAvk^ zxeD8OSK0dQasHSrJRJbVxaH_Vs*Gw;9(r>#tZJ|wX|~p+#-YjUGS!+nZC}*P!iYAU z<0;W~iSH~pt?1w@htk;~R<>DR*gTPah#s&0gX8!)PwCWN zY^!A>Y^+O+0iCH0Py)VIyo=geOX&red0q91p6r@8T$Q|zD14HL2SJK~tkv6&G) zFyN22cp1tj(1k|!NW+{>onva|tj{I{hrjX7hso;H&vAvbWXqRG2+dubZo#d*4O@-X^oIfbKkck!r< z0@AbLEb1KyopdoOdM?{f(xVpIjIt1*#-{OhP)ofJm-fwjcux(6Bk3R&{wHV^YH&>wop#({zXvKXcjn@=mY+zd5Jc#=P~>2@1*t_0y{&wz=v&EJ z`7qolIeX#XL)ysSW^~fHJ^K^53R+mnTmQ5-V%YR|wi_SQp>Hxb#sYJb>F*_hk*B+w z`W>z}7>n3gjiijwNqf%NXyo7k99nq*o=+(;6CzbD@N#V@7mmAQ7n$~|-nsK@Bc%qf z?EqD)acwo#9C0a5U$eTW@YBe%D)3}=SP6um0a{;D^t)Yq>7=_|cH-MQps)qgk!NpU z7>hUzwY9yF$q<`EwJB`ls)5d>_4DI(ch;x5N4A!<0}}h_i#^l(3H1a0{lGeHRlqXB zC;?w>{0vvIwh3!{LtpSf|2{48)B_EG5WC(F(I4P z1M>&|hB2!!qOtPv^8Jl8tg=Ii*Hn*VIlQK_6xty~CZ4cf1U0f(L&QLCo)js9t~bW# z@ld4RY89qQBP2Yzl2O;3@AETya#P1?Fp~#L4YLq&QDlS85zs&OevRc5-#{h9_N^N+ zp-($%HgYgbS4>n)Cj>2?BB+#Fa&}RdvX!!yQi#SJCLJpsSxs`r-N)i4A6;<156Dyj z`x~{)md?!N?;IZ*2?fd1nHmk>*sHLv8uyn-Q{RBvuSg5j(2Qp+ zC>q8^N(UtIv??5yxHRy1;oCFrsr%itJsUL{_v4hVl-6LS9YO@ptjt5I&d=1`D`@YU zkfp`sqhZ>A%|B)F3j6@xOEl`)ML@Je!{uHIOQ?mE?pG{VD1M;aOx~WbAMQsbe36Ye zMD?Cse@?Xbii8>-$6F>2U&B~ZAwpGOG}ad2lDdb8`vIz0g2{-TxKrswuY7L(CZcWd z_69s;Z<4E{mAe-#R^kc)^a{Rh0}0e!Fao6YRx0IhP%@`Y41<2OCxiD^d7e;!b#$cR z?(RMRBS$a14K>xlo$17mZ-Mz`bon|mn5;n0?xgqD)Ls0H^=R(YzksI?t3rwIb-4@QWe$jrRj zo^iJ7$<)e#Y?NAu12uy`rnrM&wG0_@7Yt9Mi}*a0_)1SXUtSbVEq^XV7nIDZQ+d;I zqYva6OKAqlNa?4Y?j@p+0<9_pRVIEi*HaV3J>P4S;!yjU5RiSYp=|fr{NZ{6rVvIt`Q!my%VaLsK0mRP7z3M}_X8Lmi*aY^9Jyfm^ z6C#|T!!T?sYhGAZ)bm=)@upZ&)Ahcq)_SkwAsbMs5US|w3qsX^0pBV}K-PjV1`^nf zh*L?`^>bfAI0>zeS!Mc64M%ZvO{68AcgTnkIf_t4FaESnx}=aTo$muAU8*0VZ&Vxu ziPl8^+^{h)ifgPPOd*WO;E~t#o9xtqBhIZsxZ~c#Mm)nm1l&l7bayB4X9x9RV;2xy`W4@nV^9n+D}sDFlg~vLgw~xDbJan*2RLQQtog*4x{k$5X#5$ zbvRz5`BN$8Lnq?=`sNPFL}G;=QgJp2$-m_nE-jJ;X=Wf<6)a3)l^O=GV3pX=qFPsx z;Vm*71so17XFZCR3Ld=p>W}e#^F?^9P`x%j7!8>b0j*fWR+HF?bx`VSmG-ckZLJ3f zI~GnyM;|oZY1_kuC1}o{DMuBB-(Gdu4hL zsIHe-FA32>?&?Him}$Wvsb)3^rzxa?=N^+*$E+ePT-acD2N*R&A)FdbtLsx4$Nb(> zX!?db`lzo?oK5=}VqKUb1SFu;gWyMDTaSqRs(5^G`=NPZWAEBoOy)y>M59&I-oB_k z9XzN@r>U`unWhFCZp89+@M{BYp5N^SH%b;l3e2*674sgaOqBxsLxd;voA?oaHVwkS z>nQzmG1K>6{H%c1xEAmjy;Nx`LpgEcnf+makJdpoXbf*SIqZ`)6%zobdgNrGAvC!v z!K!{=2VE?k!d#KGp_gv0xW=;5@Etwp7Ifk&3Kz`fGOWgN{7G0s1v2zgu7>E29B zQ?-$=blwqY#AQ)E;D3(@Bxv8qu^?xID+~(ijP z-igw7!t`eo{)lib3QJ2`M5CKmr@y-)a{A`AVSri%zs8B^vHq4m$qCr1yOMgcERKdn z>8PwVR-qORcXn%r zHPa%63E*5pULbq>oJ0ge2V%P@f(xdZP^miH)70|w65sp0$WaE25tQu@QB$3=nzh%! z9&ZxiR!7992nOfn6juO5EjVecgA1?Spv5G39D%^se)71&mBN2zNEh; z^hJ*RKMZS4LHq_XqXii?5$5p2xXP^xN<>Q4HCjebiR`RaE>0Rm;{uH(sPt9~-n=s5 zu(y%y1o$@?*kAe?W_pFfC8Q~=S?|9sIa zvm_}2pGE<*DB{(G_ z`G(a)?S%uU!#&(cxxC#Zs)2{n8mY%< z=8`8xRj>E~7fO<|1I@*xhM5hoH3XIEFB^IuVcxNRNJf#~vr3Ds!d}S`JOGN9X z2{Cz=2Hwlz4YJ0|85Nc#@Q_+^H+VkoVrNGQQz#32djhBDC4Dra?xRcw)H#Yd5ZW8b zQBh!-0+%6zwM&g+X54hYmf2jlQii}Eg+madHSmU|!NZLerB?mTi7;15^O;)74N-P^ zQGt4nf?Yr%o^gU++H|SXdD>Cko)?$mA5Be@CZ}gVttR@(N*MxMK0&;Ko#)uXwG*Z` zDLL+B(Gpq8C6M)c>)W-0I4~A?`j74B!Uk9nV`00v=eYUo6K|PCpTVdFP7cqmBlZgA zFq1rS)E*f?F!g=G2!^IvMTdxB3Cb)VCGcC4UPrmTOPKkMX|5GXYvgAs5{s$|^EFg~ zm=2*2P*mSc4v2o$sdPiQ2_Q#;()nNcHIYt{6;6!?A4k62c_ZJutEDvoB@vLzUp|5~ zDLubQeZB}XM-uW9GQ@-E2Z72@p{SkRiZOF;9u@&}L7;?xj&xEA!qZuDP|QKl+F&y3 zu*KklfZLiu9;47miL_!rc>7SfEtS2>{pxmP+noX^5bRLt(4f}x z#J{Iw4Z(GM37+%-eMUz zRSPk{UU=8yL|@~2&&DpRThU=YRUsfJHU`ZUixE5YgSKty5|{%0GUk_`Y0>b{K;s~! z$U=40u2Mq;6gX<)$%F#u}(Lm+c&@WwkIzM2TCzvY$q>AC< z#3UKEN!ZFEMok@_TLYI-RWa0+lS>xLW&O)Uqi5DLmohh@fCUiRNeU4+)yWP?XORFI zSwtjIbRlq#A1*Mm*rzTPO`E*4-V(&hMH&T$YJfmyF;H%{2^=FHkmacj(YWL(f(;PM$H zqeyzY>zCj?ksWS`?mU@Rfg00$#v;w~qA5HPKc>SBd_XTl?Z?VQAk~*3g>hv}W#dx8 zEd#6jbMmGFS{v-l#4~$u{u=@^^;ii$Zi!R?$ zWNsDRx@nO4UhW{EZ=rOup7d?o`g~+B+1Q)=yM1kk>S}teR~%{gUig08_s`D#mWH4! z31D$zM(E`^l`k-A>!53XfP(wQ-f_61_7+zK)LQ+xO^Et)K@1J@SI?5^nPjtq{L}CewLWc zw~gi;u1K$QS>f2+&em~QR@tX~+`zzkJYZIWQuYg|B}~fA3Ux;uT+2-|kw@}@EXsUq zNux{!V#3^uLN2iif{Ue#+lV6xAx+^a&OCM>;R4c0_kawS_JU>RK;fjPADxQh;A=^- z9QzA(H$!8#)kWfcrpiOj%k_p|4u^L_7Buz~vPnyaS%I)w9H$sBfi}IK3`(00v8!lT zV8qa_lr-mw(l_DnFPP?eI>=7zyZ)})v{UR9jvvh#*jNrrn*GYF>b0Sf(|kSh+f~rw ztgHxFsCpy$ODcsa{`N~PDlzLT6I2D^7K=i|eoA!e^oOj2na#XasZjHQl2`+3^e~3$ zQDL)`c>}NobpnTY;!V@U9VSTHB(FL;aU+Xjl6%=r#R;imSK1n6%M!c^N|$AhR!(9D z6+@D^Tl$gq5S+Ja*?}E|IDO zYfp~fDDX^5Ud6GC-kXfM_lt$SVA=+M^a0%C(|yEq(oggj!R183N`MF;O8ow+q}TEV z>!6r(<;%yoALVh4&?h66M>Gt!ncS-)C6~dtp@lT#AetrUN?A%-MJLAfu#$~+cFvEc zGIvQF<(V6djh@BINjsT4$vU|;T{=oTOxso4Yh7uEIkf`1WK^HTIBU6-Ff3rKVaJJl zscL^WcO^gHTzau%IxWdqmFO~iyMaz&9>{?1krIYM*<3Efh_a0?Egl_xt6r)Fj7&8$OpLYBN)iZoJ8G-DA2_xXQQYXt4UN;bPy9 zU{ZB~&)sQx5V%_Wb-Tk*dX1&nQSQD%*C=V)HTNFadcw1Tuj38sZXLl z7b*^ycCw0$OhCubEQ8PanQiIyCWhy2MNjT{aA2ftbq#W^*Vp-bX>;#emfOxlB0qA5 z11wJ=sAoFL5_ro__}idEsIFK{v0o6%qjve?if9LwKbi6rQ(&;I{c9IzSL`L@ektZV zJ~YZiitDWhv!K8L<*;A?Dj{rQufNmS5GTpiS~afR57#rSH#P4H`byRem>-O99l8;J zV6R#q73XC6Y&0(Vy{GRLHQn>O-tV7iGR@KT@E@L{6d>5@SFSx{T(%3jJ+xu*n3CHf+7WXG4Ed(vxaW&OFF!#A?DLqK)Q>V$qyUfPNsUSrC&hX-C3vY6YhE|&YFkYbx{_g2aFgWL#b?m4VUnFd<$L zTfOnuZeb)>cBAs!V@F)YgNC-=!*g(Ue%$HOM#Etc9yp)AY+!dBEO;Oxvy-b$wB72D z1?>T}xv99~qhpOT^dqXUb=PUi8C!_3t-P5Kz^A)}`)6O@7x;m(uU^EZj2|L630=Hs z6{9(-m<|d1C|lNNzL>_0*?7`WALDPc6J6V#NzpD%pW*PYk=MlB+Rw?%$PPBrl&B8Z zRhs9TPW|(%>D_Nd@KhWEJod|*+oh6Dm{jeVZ_JKfW9~P!?mg8mIG)231!ip0(?}+u z{{CZA#}A`~m&cg;AE?HFYvP$tBevJ>F(e-VwLY+z<%DTo+|9Wo zV_p1pTv{M;x?0<>mael|t6!%@SaA*<}mjRd;YiPije$?vBTeKy9~xnIbPK&K|I% zJ;|00`2`5E1}N}TMQkk}T1xWEBfc5iV$m&rPd5IX#MVRfGit)ns1l7Jy^Di2Pn?&6 zW5R?^;E%c`Bu1*;YPEfAjVYOFkfp(gg6NQVy~Fc_>7bVxPG&z>DUB)N1a}hLC1`MWcY+0X3+~S1PJrOCVO2K#~B61Cdy8?w@>P#mRzFdBHpjwyS|4QW5n^-x5VHS5t zZ@Jp?mwPPnh@dN&kt(DX=uYKRn!vJ2eGLc)#bZJ^Zv~2 zf#wGV-r1vOMkjp8$!=#fQ3TUZ*%vhD#GC3QceLw5>Z$4u>eTBuEdCa&a#e^gl?ehb zrV=6AWh>`Tz)p>Khp@MeE}W&%k>9}tN|=fu^xfej48duO+eG=3Snz4HDp_-=nBq)B zT+$lR8X^A|7cpjY|DmvD)~8P|{&0|8+3>xJ+A3m-e+)|C$Sb?!^1XI-1RC#k*d#gN z7GT^XVIqad5YIjb&IjQF9g&rqC2T7jRiXwJ~ensV;9^cQePct4v*~H=Otu!_iSo{GE6R zJvCi0s^Jk{n+_8204$}=R=45I^=yWSlJPkNbN=z)ycS(~=)NGBn&(;DxTBtv zTxgY$u9_}i;Ffs@N|0%fV=92#d31%_BMmDpkX+P4$tF33pmZ90sbY#4yP`YMjxHWZ_e#bd9heG8PE5s|DAt;|W z?;ubeAoLzmao7sIv9sF}-%B#f-l1r(8WhX~O(~yFv!CEyKA-W2;av zrCb~ziOTA-vBU7yLvNAEfB}OQ1`qENPJL0jjWzUf?9{j%Q?9tuEG#H))SZD5<@y&9 zU6M9s;aw4mtnAv;GOSmhn7~tQc5okW;Nx{f_h{cu3f;;P;blj_YCIU2+7SPh8EUYJ zgud#R6E#{m6zXz=@)uQCs1UOl>mmb~4jgiE;6q9 zaMYgOn*V|ILNUUV9KSc3oPP;pYn-yk6G(V~9ACSi%X<;e^d}|S+&Q(-6lZP9gv+Le zc|=AK+Ul&CFxCA`t9=nA?V!5o_ZKM->Q7k2iqA+9_``Y(q)VmdA&iYY7FOHw4U__z z1PU@A_r*AF*mP3mh)O2`G|Z^M#DN%ch*1UHEvbuJghx8oH&;pafCv97@>^58Q7oG! z{90&Y{2img%l>>V376pX`!3zzpFIoj`1d@&-z^hAqH}t+ zxy~$DrTKW69rtD}%&!9M1_R1**x~#M-a2ZqcbOK8GGrN3qx2k8Qd2sb7`S`RB0Uh> zO!TB-bH=ohMQlR=(dx?O@YXTZCy`|0=q&MOX3}j+mq$-9x;k5JUxAkXeTW%+`mlXY zZ!u$@>>W$}kHLt>*1xq=756J#5s~}?Wuj_TAJ1tTfAX>esM-#lhilf$xm#Cs+EjNc zkVRHVxC!!}{rYY`MyS=78QLiblT|2hxw!0H?AN}!gmMg;4vIz*M)5}lMl}*r5fl+b z@l2d_4QEpbIXdZ4ILRZ5v1d(sK5~E-VIQ<#xZYs_mX1*1&J4!;k(J%EYuiV^mn1Kp zw~$jH;G3&GGxv?mg-02H?9w$+hqiHqU!SIbkl+MbpRsZw2=Y{Kje^Y(@gl#jY3`-A zfThGLBU;-|=2|#zxfi+__qH&(+^sP6Cy=bOpCaaPzh>hXgYTuvad244n!@Rhe?gnS zen(JrtdFB<8hAT3cw~KYBY}}e*JLG3z6xEJE;5E9S)Lw^cz-k$CL# zzhxuybbX$8bbYCr^MAwg*^*RO-16ZOK5ihsGcYM!YiTiTWvz@hRG(RM@^(eB&gqTO zuv+N_Slda^zTnE8v()UTtRN|+-r!(lAyme3$y+yixNFCR|G4;N7p|U$se`72nb1bQ z(8i9EhJX}*R}xEL+{#0pbYL&-Iu%HXZysB8){Q$4)tj7jm5DuDr*=t!)-An{1leRu zClx;+!6(@s(dq-BOXRtEgEd-b1R-SpQ^Q5!>*Xv8Q3rVoyd@PO8>+F zgrX*ygdeN+KJkUy^WD_U<~h(D?AX5@o>KK$nL~h*H(NHMV*3-(c%3g4>)$Pme85J_FBtHt>5;qCnUWKTy9<)(i z6c94LGu;<*%Z(g$&$uTSu5-omr1G$d8lIq7w#65ETl<^VRE*aaHFR4E}^j} z4LZ}euPf#kr6o-nv?-|bnP8{1~fhHiwyCZ>*M zG4Z#7FZrD0ek38Mp}IX)Xeh#I_p5Uj*LiDrRsME&l?aArv0|#BJ zUOjqOdVaC`hK7&7g$RW`LlP7jL644ya-CiY?dxOaPAcP*+OeULgh`wOf|&40wZDlZ z$%~Z`3d=}Ie)%jhg*Ny#!3HYMn$Q%F8R2BDyFl-q6O})Lf&}e zG?iH9$YlBG#?b7GkVOv7PkeJ^FqBGG?3T{5j2P_Pe!Tfsf&mDWqK_&D8364iBg(8W z1YBwz#Y5??-um*#hvh6e6aAjgl99aT_Yld0*8u5`RBtX>$QYkEI-Z88MF}SV2>ti0 zP^+(XFT=g}7oXPV*%*9dLOKCOTT-vjHcrR*KKDIE?J{;gB#BR>*V&EyZE5(N0@v;L zf@N!7Yq^6J@9x%Pw1D=vby?H$JEHQJIPPxjsqWcNH;f`8p%4%`y}^nl%`|SoQ>XQR zKD|W2KzvR@Yu{)z*DiMmw^zv zf%=vnf8fAr0KTmyzETDTla*0(D_wJ6dlz)j=$9+pt?6Z|B~xl>skCQWoUcGKqzM+5 zjQRg|%qJ)tH@wQ-WJ+P|tgAQ&8A@lN6g_!-nk1+u#Q}u-Wy$Zk?;ENPhp`+bQvtZ9%%OVSWR>U1}qN+7$BhM-Ne`RPVOiACSsg#aB{j>9pBC(mPDr>Y5yh5d0+BUsG-a1+aqyU7R@p7myK%d z7x!sn)5G7u68xgRm;tiRlEZhav4B)?#p2+`Z_j~ak>vQwm5!mw!JTkv-Gww`q8uTJ zf4cx@oNnzcUoyZ>BbPswoh0lqnG0h3cn@M*L-0je+?rI0s|zkvYU@qOempHlJC z1MZGlFv1nQ(}8H|PQvzD2ln)Z?xE3+`sg<^w^f=wCTO$XuW{L&?F?4@;dhxs1%wf! zFl2e{2R%f)%bfg}@S?_Ece|LEvD7;v&VcgzJYND<-VBFRP>3p1c>r)HBY;Lh-SXGg zH`e!30Tx716w#4l(d|TkJ|#Cd--y+OxdJSmMj_@tPvb8VEfR8l;UfB};b%SZ$-$fC z_amfY+NGLBK)UsWkRN5IbT(9;`vjUF=I z2B;qKw9VH;)iHL}4s0h97gabJak~owea_YQm5L36+CxmC z80hsy(pY=GIhC$?rF*t|Ha<6Lo7&chau@nU6rn`eJ5olAQbBlc?GOQvi7*j+^!T78 zKVEPeb(Zb9Ir{;@mLh~IdGWx@Rb2aK;H7!R-6t_Uj@RkJ4k}xH9{#r;vbERv1%Mix zvt38Y&77HU!s?Ri`(N4-#!Pj6uff;arzG-lEg6Q)YXz%|SApX}OtVV$J6i1Ou+v|z zT+L^jZaz7FwKNLlMRPMd%-n!RNo@BWnSsWL3!?Y>E7S;IuNQ^E6QynnzBJuTdOqlU z7700;@pau18L}N_a*cxaf?-+OO2>c=`iAf|kzeYM4|MKfbk~1={L%W;65gQ(7Mk7> z7o-QVq8XtpqsySx)EVt&#fl7()k@%#ntjVkWVW!BVxZkFqwYg+cuc!G|N6oUb(dMa z!DU>TP(44=6$qnKp@TBKo)s|f#+5hVP>a?}mPfOp#ND4SCrY-j0J-`^mCG5lMEQdP z=fcnPT6E_`U+N5Y*cY)gUVjYH{h;=qU#q_9B#n1{eaFhC(^zD@o==DWs(E&6C$L1l zJJDp2nBi>?Q@POPaj>nc@pAM5>8*V>uw;XenaSuwO&SNRs?U2#ANTt*ZlOorNS9m` z2uQ#3-xBz4_72K+P_B*42siFikUc7u1j#HKAGzxEP^R>b+o~%TXd#?>+3)~`-Jh7e z!|oIF+dhOvfc}H&gqBCoj zkTwojcWYG=ttLvL8OB`uKOtiUdgQp$RW0^&%>jDmC@1Y- z=IFg4aSoYb zVXf?F+%bS?T(LH|=P(=o>?Yo^DSK#KZCBj>C-$RPrXvK%(DD2xiVaA35NX5?rR)8s(jwBkIzQrV{$^iX5` ze#JJymMPO@a%CE*f3a;rlWgC3hSCs1Xlz%DK1DcA=y1>~qc}9(7s#8Z_B5P&SqdEa z9<@bf*Q+op`~p;dnKrEby`|)u0q=l1+b})oDMErnxcZ$wR!thDv7wS3qjSC`Or3bO zV_Ov=G-_>%#*w=q*Xp(|^<84)qsB>zAOT2!^>NeUW5w*{*@{z500x<|F&%7j*dsv%;G@NNpV~h(S_d z0v{iCO)-Q2zSrOR^33>VvbJ2LL|pWiu-uRDzPpjQ;>$-?&+78ze60QsF3-NaxD0Mf zyC>`SiSrPW;zI_&QtF~bB(CuL?6<8M415euzz34d{Go)pp$be9#18ZBd>D>ZpV!gS zYGt?;x?LOJ8Hh|(R$5AVS+=9sR&k{s6w+&pX@jFOh5Eq#xLPyOZ1J6{+!?&H$Tn1u zA@Zb-2`nb66y2{O@>xXkm5LOl@3P9Y8@i4dZ7pZY^Uwf+sRi zT+A!e9CFXZNAaSN&ZP3&`E+<2kVZS47JWYUdEY7l`Hr?VM+c(XXFI=U+n$0W_^+S9d0smfzkz+zua zG=~W0(N!}o1|j9@jrP^+BxwRLfB&@4!&HHFZMHKTfP>JJib4tgj2BF6`qu=dfW$+l zT&Q$p*Rx3!vu9PRp)A*lzkex2&VQP1u||HBQO1~(@tLuHzf)yFeO6h&GQ~mN!FP1i z^Wy5{f!!`RK{WgQ2Ltq2i?X`(;I7DiFMUf^?S)`?n_)Q-ikpsOB$U^t5=Hdni9_>r zTtTWr^q}3;7?qp~9-}fDgz^MEy8QEX>pZQ#2bm@ycw*Fxj~J=M3pe8Hg!p%+;B&@H zM78~rI|H~$UHFO^O3#DGmvi?-28LmV9nwjZ=*@B(>_?)NAjOoy5ccOB)4#ofCgvx{ zK3ZqNR(*Ic$_(H6>|_eqAB&4EZNr)u=f$+>>^8GM*6!6&->%CTd^PTHs&qG@ z1S49F_1b(u4(}xUID0P{$WtPRwngoMY4}GX#EM+-hc@H-^#a#lLLIkE>M%g;i_4Zk z=^92Ch!2NMu8TOO9&%qP@22guGYnd<+5$=vew`k9B~%%u=y?S7)GA(c-`!)SdmPjk5&LZUyZDQ6P ze`AOu*2-@NXIHUA7OkhfE1c!`(4osE^?95WASP@p1vkO8aL4#Fa%T=1A$A;h;-T{mtY3%B~qSS0(Y>uscFT09gZqYjB`-biqCZR`#ZE=Xtw}30dXw2 zF4!jbAz&T5BkB^k1PY4z+c>dDxrC_ccE$j`%XR+Z>a*3=cNA0Fv@H}AYSNCO4Q%?b zN&#>dga`(L)t({m%$(``jnN%9nVLf3kWZ;3r{{CQXGuy zLnyMOp_gN~L5wK9&TyJ(i7XdvJDG>|AzD#%1E;zBzFiJq%rdrCJMEVWJ{**lCR4da zK2NZg__ocvMoe0C9JS0RP2eka`kL#$?ltyj(KWL){VC;L?<}i*9x>T?S|>&l9l__O z^jyijzep<>0+b&%*;y_8X|<2&NYNr!``!uVS@4a!Vyr)r#uR};vK43_jT@76dM3%T zvnG3_)*g}CN-i6# zJHMqe^luV}zwhTUhb8)Xbun=@scCfLgC|s6l3K)c3r5g<(u$JmSz0m2N?EM#yfu3- zlTw;clVtDkm85Yv&)b@O-=md%W$7&iY0lByy>@$^x;Fw!@3%KMe)eX)NXwvyJo$k3%H?_Y_iqm&tm4soI(MXsLC*&CU!Fu=YNo3JQNm!MLnqo_ z0`?8j*jFR7P9>a5zH)>QC05GO1q}sS?!=Yc@g4|*1hkYz z>jvO)gWzff-%~H6)XJ9&I_09t%r~F~;Heq4un?<+?DC|1%);9!Wqrn0K@Rs$Rdr(G zT`nGXh5Wt-c8?z^1NJTl3`2{iyrf5gexB*ah7LlxOEDj0bgP0*gtym4viQaecZ3~d z8(0UYL<9^cEeKaw%(s{SaZ&Yn&Egv0gfK!lxIY|!*rI-J+OCA<`BSCW1+rC^d)Uj_ z_gksDPmjp8wJYwv|A}VI{Lq5Py29d#M)VV;+dZpmsxy46Ea9lyrgs6s@(mZ_Q0K3k zttYA)$aU`|cc4Nl{zz(hohUyGzvtI@u=>85+UByJ+9#tuWoG3USv>lX-QJPC5$QeP zQ<+*3f6>Vk`73AC1@~yCpwrr>$KtEYWONtZ(m}dm-6P@KJ;V*<#cvR3wyvn>LhKD| zExm&wpKa!2+1ZV+i5y-m!PU}`WKFV}FIf`y3XcAlPJuVgiF+qn$!f*QgICi!J8<6g z#omU(Y{~#bH+?pkT`Ul@rvH;y&twn3mlmBG^0f8#mscU8Zp_AY&|(1=T{TH*odNFk ztR_>+jCC+{DU;rUcGU!EF%s+a6Y70B)+t2edvz|OYVIC{ zgncY_DB49t2lj57HGP>XiTg?_4JtRpZj=|xO1H%T?(jbe(1`nqJs+)1gQyXcG*!|} zx)DZWlC-NvdO(p_Wwq5HLCvbb$OIqTZuv*DBLLRvFLdxL)~V^-lNr|OS5$6>dILu7 zT^^At^yh6NnJUDUi!9ly^z%uQMVYEFSjd$Nj;k+FT$_4w_Mz9Svi5k1M%$#a_i}u| znN~q^uK4RyayO_w_tZ`6fDIBijJiNy_rY)f+X3 zLr>6fHTT(g<_Slc_7Y}#M@6lXu9>p>b4&e>QF6H+VX1|k&B^kYQj4W2kh{(3pQ~^l z?IZwaW4&|#K3$oG#hKpPto!*{Zb+|_?h>f^^PljL`IFH#51dO?fLEU zdaHCE?d6shomT&OFSe zzTPghTn84K()no4v16}%JcrH_@a>k&=3YP@X%D)arbegUq<1*Im)-)d?JEp@9a%+8Ko zdVd_L_*$Z9|mYRFlw5u2~Uiz zG|;t?ryN}g@2jvH{*;^e`a7R5iOfSE)RSbVZLT9686M#tVS{dB?tV;4E7TBI;|#UH zUvlE+aF=DWi*~qJLjn^oZ6oB0Ks<+wP=MvnTB8HK@uN8}bM_Vfp5+EW*KTdMIfw(S zA#ZvDb)gCIPmMw!5dJBLUrTXea6&ESc|~D^Zt*!|=cB5Lt~9%Cl@_)U#ZSgN%N^+T zu9x@QEIs&x`j|%ODA$Vm%LTDLpJuQ_j2ZOSr|Oy{`!Avh-B*H)v=RzNWubEZox>_h zyjykfO8B$Yzs#JL|iI?ME#q8;j?rkAJa<)u>MxYXOV=^h1{!& z9tY^`FowS4T+OhnNJco?RxP)GW?Jwe+OIP0yTtP-jr4HK<=C0yv24vmWd4aX+e^i7 zUzvF~O^sKCbj~GoMjl@P z`Q)$$ePcZbHB&6BxrPUJJ*Z29ANmWWQ5}RMq85IRKiHxqG)4`4n|CDaX3q0!b*Vg} zeaQ98DyuV&k{f1M+t3n1V2e#KFKpmc+)#sLGc6vJ8n?y6wh?{(nAfN7@HGn3sf-O> zt$GYubZ@CS?dTPm%~s1C3Tcwx7ALz-c!H=3)9JV3rHHq#G{rKXtL>OxXn0b#By2)3 zC2=KD%Z72{l0aW9E;od}@Xr}kat>9;`~hE$3GS%+6wXbRBt?Zu?s_A&f~-#T7^!kd6|^X z`;_dy^F&P~b_D#etT!h85ij5Kn_iV+6;OM}*m$ySh|`r-r(Kg1JWyET%`1JbBiYnj z-JEoqQCN9;WWTh;%|^)!Z?#`N8W+XfV~H*8&tQ5yYE{BXFS=(iF&DEVSTyzi{Y`*M zb)xZPqFWB=!T>&1IM@?iVp-j0tse*;)j@XuaD(Zi6T)|w9233Z35qh*AxDxbX-pUh zDk(;C)*k1Y8IWYuocEkuN3q|-@m?r0!?S!dsEF^2#vi(g&d;+`Uf1~f=$EoH+s}m* zz374LF>0bMFd!PKvzTR)dJ!%75@-;D)ObvisAa$`oCPkhl$2el1p%ZaB||bN`ZrJo z@#u$CI4ONV-4`WfAau;WXd0{q1CTqW!jBCfL?^{csw(<7fDKZK0*D~x>1OfHLnt5r zys%vY^hM61ysaEic6euZOIz$jP!NATb4#1r_+8ZVrp6a}p&wQh{-k}$R^bbsh4wn` zhPTp5pkVZreyK9G5nA-}X5xmo=F6US{e*wX_V=BJZ|{z=Us?Vgjj#Xtlf{L0E;{H`+^# z)9lD1p?5mI$7i$c;ls*-_{xuCTYtlKy9TRo4`=de=MJt|h1Z;r=)zkF%PHPP{K-50 zA$7BlWisiHvBF`f?YQz{a~(9k3c%j*7|aLoc@N$IUQP%{<{KnevTWn=R(O~D=L@_} z(AE`48z+37-)3&Iv)?Ok63Y>ZbT7dW7FOf=>x$i)!k;fKyDF(rbT1gV)$ZKV{~FNVhCcKrSQlx;~=DelMAE8Z~=ECk)kdnZy$(7JYGW8 zqu=NA2T@yZAJQ54-|&k*9;J##cjlg4`ObkKI*UDCV)6#{lW!la;)r}z53lqc_o`|kz}7yAe2^1*d5GjXwyaI>-g-vrG6F97oa z&HsA^D7HJ& zS2cKQ#kL2lN4sG!Hm(mD=R?0?`RKc>+#d=K%ST=RXgD8I4(mq< zh7bM-ft`(=gp=)~zJKyR_TgmuI1bkTDD!{n{-^whob%7;f3%&Cr+Fl7Odn-AnGpWT z=V1TX|DU$F|3lbe|JcU<5%z)YL&y22Esl?KV*f|v`6&BOV*5B(4o=p8C-MC2TjqaA zJpXjt|Iw5GO-PB4w*Oxe4-*sn|0VI9eN5#}=%0H}bUL@>xIXu|XYFcmC zrrIqZ)Uj?keC}!L3g4Z4cXN0D_ISd;dN4NjIFZ5av_Hm|uKVQiw9*9!N#fVA-;!i| z7N^<&>5}!+Fa6qFh2XW?>lne$B$YZV-nTBpg!`DEo*X|NEtf9XXtjFYHY$G_^ZcBV zT;Et2C zpu6Dc4QQ~>M;YZ3D9)r`s5jAPy+lhAga~czXf18LSct)gp|&$QTjRG`tJTYV=18*p zT-6@s0=02!BBnMtqVk0zv+NL=St5SvSN)RF&gOejvhx=uHxB|OG1N`1V1+E1+^9?G z`2p(JPmzgu($nf+vVQBwTj%w_J))s)BF0G-_IiEUasnrLGkxCh=hA@T4I^af`aEhV z@KtdD5fB&BgWq$}OJR?CiXtduiy|0y2Iw8Vgtol&j1~G$C-S&A1#^LT5g_#{)^Xm2cu|1;~zK>ML*Ea~s$iVdKPRHV)k;|K{+89K@pOu20Co=A?^D8b#`*Gumjd5O5s!@WnE5zgICMT6UD8Y>w-5Hy z_6-)$iePTN!@a|8Z)yG_3HgwItDP76%<0L5)eqNyuiqJwUS4X$3q*l zFA2Z>h^$K_!X!ewL+r!|dw^PAK~6Q#7jQ#D+4S*2jzWWfX8d-$iw6=vCwmu`pZfF~ z>cc>@&Dq}>jvhzl{0)46nRi*V8ARShVCzS3zH-q6cN&u2Te(?zseg%E9j6J*te0dX{oqhzk3w{U`Arx<%CfBX7( z7!ADf{|v`!hi~6z=7O*@xUlQK*hC%kt$OD+rf5cxJfdifw~N1sPaa|%g5{Fgym00T zQQIljt%E&tW^GUQ!Iu>Lb72IwdE$K{eN~AGayBfi(sNURgUjz>-cra@1&2a!J3CZ2 zDIx8QV8|r@KnCd@eLs=}eE>NXste_w3LTmq;*U#W=Y1EVUo26fMaT|Y5j;T1=3$Zs zoKLSlI)T|a;=WOM*?tQ4m~m2g!y@gYQuHNch{Fp*iNMHJ*@igJq1Ro~n)H`XW`0gN zEXU^siFN)BQyd0?{}U_UYWh)iHeF8Z=kyA-GYyLybKHMgQvor4$(Of8*@wm za0&>L!JI+LJ)S)u;wh9v+9KmRi2#WJ!#TDusV;+V$i*7ytA)-}u(KLZX?_d2?w^XE zfJocQbJQC7tnUk>fT7NWcbOx~@8sC*>O~TWX`!C>c;0aXVcJ6$Wl|L1H0<~FbV6WO zG2fvvMc@|t$Cecv-O{KBSb*~Akf9f3lfv-s@C}E>ez6*SpM|frJw&|x^&mRGjgu>S z=^Q5bh|Fw$kC0e7B7Gt#33#o`sK`M@6k4b7+|mW#pKPt{YJm_HVrPswnqw2<=r3iC zzu*ng|0G(M6VIc%8O9Yt-lVL?tav(5j7jLW+j^ZM%aeYA87NX*45NKwYZJ}#V+_N1 zgUe6%n=XdVAIm(vXoLv&kZYQ3*z}R@gR7ATVBFQBi!;oPW7_$#UUItW^Mn$q2FHR` zibcJ|KJ-YojA&jY0PbnO_X0}tc9c7I`z}+G=FyMUBbW$^{-)9sLyEedNSs^OAjqwd z-VG!>1VFdK*Jp}hGW|Hx)vx)X)FJ9u-kfdX4O;?j;P*2OxcVM0FQE+bc#It%E_$1o z1{sAP&jrLkDvt{D>+SqQrt;tY)~&m6%l!4bU@y59?QPIVQN4;U=w{o$&MS7>@38@Wkt#?wQuD_cmpt?yPeKI&A-VASIwmAm5Cb-+Vy0Qx0*}3kG@GLw8C` zR25?8yE1r%-f+Zg)}ap0R2607)DI{YZS-VMEgM#-6Ac7g)<8Tz5p=+mbM?p;Q}s4M zz~&&4S=C>%)&XFuMKGnQHbiw;&wsK4MN+|%BBYFU)O_Kta3NO_@J6p+vh;@S;WeYR zH0+7czbIgdN}GQ_zJ&SO_sKoe>gtmXq8%p3@A+ zA9DS|S3gh=qgU!$ns2-pC$Zb9dUjXpKa-(9^mvxRNt&JX`&0eEl3qECRIL_z@!FJt z#*9wn8uB2{e)B;+?)8nq;+H^cBu9TJz&(?6iVT-1x}_>^QT)Zl31O%&pVFr@f z(GIZ)@frvQ0hPw-R-BG-@YkYcnQq!P!2#%WkOIRMC|79A4Ehij_m zcimQL4i<4RkX6pgT1?-i@e#BAfOszUn)$r+KVwht8dZvr2D>*wa%5p?X>NuxKI>I; zSj?wYOK2t$g(b2p#`p(KTsy}}@>)quk*hb;q!7n=nCuqLI~k_cWj0ty6{*3$9uSuPl~0>!2|^FB2&Ou-TMG`twyg`< zGB|y8C#v{<%$1xhbA7`R0ZKi$E&W)N4SQ?8g7tnX!se@mr@d*Dk5@JzVqhR`1T5=0 z-X$>)*7Nn_s7<RZ7-S=ygIp^fa=ZgdZW!A_5_fX+6x> zY7zqje?Z6IFk|&v=9T9admDcpjK25NzwMUJbS4~RZP6e* z21oQ{rfT?7M%ld~j5)ZZyc=+t-PifUPKb!RP?yCNUyeWK)iH~DaO4WU8vaV&E`2s> zt*CWm1OCzpz{>e=^j;V`p@1Q^GqF;d*cW&^N@E9IaSR&pg~n z?j8302tHWbegfZ~r-SSq-_4$UTU_)+E54KQ_v)HnH=iK66dr@!&#h!_&gBa6K^IKO zg%`|xw#(^6rJRRyEzX&|(=q0bz|kYyKxuM#+6=9{;}gd?h64sF7b2id3<1$XgtSS8 zaa;y5RhNk|2JJpoNyoRmEl45OCHdb|0y}Pf@0zo5BV`X`G1;X69|Cz2crEJy#$5S{ zYjVt{n%`xgY3t`>qitv~w)S|L-)~`xu+NrM7N)q6mg(MmX0q8b^^9MUN*WK?RAkHU zeL%bXxVil6@pnNrg@w2LdW=tpIKX`VIOT&p{wVPy;=pQ?BXc5hjVFhxi64V(;q7C< z`X$YIxx7FCO?hR`ffSNme! zVR)~jT9DIj?fMGcZA~FYbkNAI?W*uG*u7S2)BHWtkPGdJ1Wfs;I})|RNq;r2(11Or zS$zb%##r`xq9A*+kN`}6WIcJ$PTS2?$JNW?4k5&Nj(HuyL1abNVejx15%FOZ@8F zBb*+5h{y-a)0Yw4 z(Y6|2JUETNEeSsPobTzEYRBA%Q-ygCY0u@@JcT(k-HyPj>Au!+o=hdp_nychVCtiI z>w|pHK*xI?7Qg76+t(NCijPNhB5+^OW5~?SaFKwHNV}H~a{5~PGbToqwfwo03|B{N zV^z*Nr3#}x9Al0o>SKvD$iV}eKWS8PD*dg@)2q}h)hjsKs5Gz+;Z(t5Ooz95WmIk! z$vc-zLPgl(s-S-9IC*As=@KVo>(CUSN;YXcLV)~ibew3KCY7=@20ZmZP!Ksz0lij4 z_@(5{=Wj8JX}L$b9!fysDdkt;w9nsu9IA#%g)ys_htVzfg!N6P&HIAt*14;T3(KDr zn#}jqbn1hP9Ow~7soK`B%a!~ACy|V{^!6;@v`0r9J05-+N1rY{gDHvKUgJwSkkxIF zg6ye_Lw^TuebG8Tt&-2^*Ym0A_+HZw0zrAj*J%jHL@!r6 zVmD^z^wT!@Tk4pQr_Qs4xnv%AI@y7ap)p87THUZx`m(U$kmHrm0l?+j{o0}q?!@rH zy(!6=oHfI*mE(5cj`Atd_e}>H49R!JWX6a(17q)zO_-puyu}8-xJN zx~h^Qf^^sC>#%r@-{4Fp*>HOPvo(LZ(Ttf~)38R&OW#V}8!%aMfUSB{EG;c9 zv~MSB9KpgefDA3cnS(Z5;}^7pYOvljHF#y}Y!_ymtgyYjKX-$izhSFY(A&klH=gbB z59>vI>+lbdbVu#UUm=@Gdg7oCB=5^9()_FBEE?_nYV-D!UgycJiFmy<`h4%`-Nu9Nj#N1T8u;?8C z244%2m~7|`1VTFq9DeOrP_eahj}{fDFqdbGSE{j{FVpeKF{TX`z@YRcP(w0Pc>PKy z$9zbD86)o|#Xw9WnMY`(SxF?ND9*reW<-!oY{V4CM8M2ulGH3)B|BC69pwE(h%2v8 zOk^Mejd;%VGR8rK6%*^Zc!Y(!0?O)q25bQ>(1OIupvx=Qk7kOHXhMaFw#%1BF`3J{ zE3Oh>38XdlCXh?Q2H`ylKYo8K0@FVc@l(7<4j4~cyZd{!d$qo>&3$E)ncUTcjfKQK zfRkgrL@+YC$60w5D~KfL0H1^zu7*AK;OoyLgiNT_ay7BNWIg0?Vaq=7`DVK=dG01$ zyPqChZPSAJ!0?{Ot>JM%hYeM;XGuM(Vp+-D6xHC-z| zv92MGj7pT~H;V$ozb#5w=udr#_Y(_8-)mywF5zzGO{GkqAz?15c679=Jn(#W?zeEh zxjj5MIbgSZLOIcT){+cSCYSTsf2kID9>eYbLJWHj{s@zx15S{5*XQB7y3`M41n)$j z!+U>(xz5bY+<25XJCINFp_)eit@rrAn2T)-f8lL>v7Q@pe{Qngfr+}Llu?O!XSsAQ zEoMiF4ALsmM?*M^+;??q)MY!Qmq?CXw?V?U2zIEB-QH?e9E~-Bfbl;@TFPlW4hOG! zC}!97cZ|xbFEuXSFGVkjw_@^%;ZSgEAr(Nn#paPut1(L``6;;Zdt6!2wmNO+E+;fy zl5?dJt7i3^682HK{w_w%Zx+{mj7z8UOzYf zR;lYToKX;*chF%~DkDH&?8O4c)|q*1Dum{e?|J( zBwJa%AEK&uR$;*+4XDnT)^vhgAJ1cmHP4z2_gaImi$lITRXJhENC4R1FPna@=m=h- z>>ORKK`Goy+omsVIxDq~s^7rBlf z=hs5E?XT&1{O_5@>hCj6`u4a?RhQ2tnYwmuu^MP}vJ@w;MU&7;NJtdJB^@TX<+ydj zCuT*&Fr?iPX4C>)n+`(^ahlfUmwIG<+-RUhIi(_}qMH@tqcKqE2Ab<$m|0YWDyxi? z_Tux?v}nGIh@nU<7F3W8BnK!|0G0f#{{- zJ<3cpAF%G>{=*_qNgKb-d#~|WiDfQUrU(IS?lgz<|TmdcGgiJ8D~UFYQ)o7!VL_}@Bt z2V1W<%XW`ED=VYZ7qs?;VVBvRgo{LFN;i~M_B{f3Uym-<_|gXfm} z#CxNS=ywrpURqbR7l>yF$?_SyQ>KyHvw|q4qAJB@^Cg-!(`GV<%2$WMlvh7dyZyJ6 zQzJ00XT~I7Z=WSv(IZ#=qE}&{nAqs8g{wA_IW+>_NO#29VIu66E90;DG!k?*8Boqt zACB_!FIHwMict#(Y$yp=!b=~=ye;wHnTC@NGzFLCuPR9`VZF>;n+uZ*R0 zqJ0WCM0=s1H(H_L39-1&zw7^~EcqzBNq}p1V_3}d%hxEsiWu!!-)Xcpd_@Eh2+!jq zIb6ZO3Pp71A2#nCN^2;9--jGXCU!!z!6|Nzlv#cHhs@Xx$)UX&479ZrmvTi3k^z*} z;yV4V{*bXnwt}nIm)o;b-(7|&>N8nIihzOW7w0Wy&v&gu)c6zno-d8fV`J%AU9w%h6~UA{e^;gjGc z#iTLu=w@G^nwIJG2;zm$up(x>{DQ)y5~;;9XHPhvj+Z-yEXx87Hb?MCk$|$GW7NC{ z6%oSVM5Y-UfsQdNuJ18W3RPU0w#Z_&#B7&FA~Pe6njM#d85y_6UGOmy;DK-h?5Bwy2ZC76u|)3RT6Fe#lrZS}4Y z=bbD3>~p@m<-P=uua`sy)7BQ+>-8cm;?t0s!IF$=-z1F+ReiwOZ!L8l*^${ka6C`r z;j0kAj@;jZ!8Yqo80yabNv?NpD>}A$Lhq2-B-r$2I~QsDVPz_fFM~kE1tDS?%$xf8 zc22>Q*cL$L97#TjLnkOwztmBXhRSI)A^fA3sbLYF;K8Y6>kYb1YAm!ZGX(hZfvck* zT->LcP*+t~N~{t>(nhh*a_!3XMi?%0U=NYp@~2}{Y(LO1LbUKYT)g$N zSGR$~A?n^yYx&c#Et%M0Sq>Qvp26Yq3R-x2YfF?VO-O2>Fb~`y)TWz9ld$%@?}9lm zmHU(;OC1(h2 zkZl;6n)oL2_~u63NG|m-d>GumRvM5I+C>B0erjaqHYSxIuUZ$+2v9VB&C3oQ>|{r7 zb$7Yx#kPM(^Q3=ry8$-%*eAa1D(ZvEXl=|`9=CjFLh>l8O&mqvreAf3+>)1Z1ftS` zHrZ>WC)e1~L+_;UFjlKU{3M=wN*~~bVEUG&R@R25tYo6hnm$iJprXSVaLgw2vC^=z zMvfTwW@aT0!of3L`qPDQIShA9xazJccK=Z@P#HZfM--V3Nd0`E#<9@wlxVwXF4Ey! z!%GKpcrvV*AhaLC2d9|}*z_G@89Kuj&GvbMDxTJsu}Hu)Xh!m6Whs-gEoICSjjhK~~c7+60m#@`^~I zY1LAFl!79Q`X_DX;A!nzLn6r}>ulg9qof6klwutj3+P#!qBs+;v*E_4bTnCbjV2U7 zD%|iZlxSmWi8E@Lu~}lu7=zKDm%4_PsC}!&SLXF0g=`ErZpWK0eko|Y0meF3HE~ne!!4Z1XxF{EirZ82BchStJP_*xx#E>732A%5<46~z ze$GNl{FRtgY<3Vu1Sj?g%LOJ^c7cY={IRyNcW#exxMNuz4xo_Ta-1TMZ%+d^HzxA< z)wm&1SLm<1n1}nc!?TC_X!i5o6eW!Kv_M*2B`kqxj4MnnBzjF*fghg9PMU}OZ=iK; z)M*lw&q2Wm8F-!!N$dv7ON!oDapJo;m2L=VRi7|N_ZZPZuaO%<8DjR(oM+!jC`W_i zuKvk3TJCUH$}-UV6(?e6do|PBHKo)`v1DG~mtfa-zs7HQK*F3Fha|2^zd`qjkOWm)qjDbjGIGV= zhJC^#PIVH$Ej-aVl767P9PysH9OM*``iDlQ@2MJ;@*EMb7i;yRt=&jrv$Ei<{=xmh zn<-*w9qF!!f#{ZvD#f>aS_iorHn0ZU`6l^Z4F5(>2rB^YN8ZKKwbnKh!*yJb0@S^T zD-h-mmO_^2*J-kXj-T1JPQsFJy!Twx4I?)3TwVvT$i7R$Qa`>*UPmae#8qm8cBnG$ z!HmP~E4iFN0;{kq&}{)$9`|N@A&-I%a5!?vEhoLCSYF33nOV8~4q#brr-UV;NZIgP z(mE|?sz+(zd-jH>H3gjj;uoGNCJPK?%mWcya?z=?8lB<-F;|3hN!BAHV>TnF1Tjqt zm5kptnKyfL_Yoc;&%hp z+`WK(px|u*b@b9v!IaNkUTxgLKcetjIfo?o>ZN z25=Kh1y(2rs`}fiqZr-8A~-2nuvD+T-0}^}-U&MJj3jNn=fbP6_^GDiBT2PJXp?~*Jo8)<`&KaaV*^0+}al(4>HhFDHY^B zcx*!M+n^2t| zO0<_}^Q%ryug=d-OwVYZ#WJNAX$;jJ<;I7irpgxvEtZ@r%#`jH3bo7a5=3w;R@)aF z?+;5KXqGq9qEH)i3%l!4j`C#b(pAo{PJdThtQ0&xHRX!3`!{N5dYbDduddFlb;4rF zQ#7_0|D;;dllrE~bsF0%kJ_Smi(XG1TeCd!eESEoqoxKmSI*s6-BzemU8msSYn>XZ zIXpyHaM&ev*BmF3cyQRwEtZC+9JOgG(J*sK7#+2uMjgN3_3ZLWNpp>ro+)42eXZ>h znnu~jt_8-Kdae2#In^!hyGy`71_E$DK0z6eES7FJxEpB{mBw#8(Hex$0@eci`@;JW zCW4EbbmhOU(ucckaKE}--`@^z{;7D}r9^Dwe9?Df#y zu<_N_ZI4SJ%=dfJPq$x0r+*xbQl@XN1`Y|7>X5RCz}NFVA5t!Qq{zSuxs)erE~j6U z8x>c~`0KI_(&YcR^oG~AdC zZ54@NI|$2up-^ysf$+BaS5MJutyZ|`wF9UYiK;tX^3kD!{Av(;DdbM=KlQnM@?5m( zy*b(RH$r-~EJa?dO72;e|6sv#1aRya!63zNu_B)7ZFn=8*4nKv`HOTxFc~9PNIp z<{s%q1ZffEo)G)v}mJ+bg6s8cyDa!g9^qVLp4*IDabX z!dp4r2IG@nk>e+F`S*?FAFcsG!zZ;PMLE?>Zh4G>UE!IPdENfnBMPtBo(XZ_XQS7F|nAOOE^#&SXT8{L4YQ@kyfe#DFMgWGR|P) z_jZJPSMgq2uSn*fCwC6mv$41Wr^1}FZ`&#b(*VQ{qn6`Oa?e;?16tYaLh$RTlRP2; zCM5#+1dJ85d4^kmd|}Clz$&48@Ouhz!I>*?9tpK}=Yja0I_}^Pgje(n=%TjsM6g$K zGve$V06ew{^0|X^O@d<`kBhitX>n zI=_>`dbb1CVPTHqJ+3rn(ZzjKjv8i3Mh{1=s{(qDM~MAoinBc|eY0#+){YivCkm=z z-tw@qv?e`_UK^zFgiX)Aqx4pf15x!!|9rF=k!ZZNume#Z7QzPhOk~J^#OXxe6YEC` zdL9PCWQeJ#Fq0TF(ZAwDh$0&%!ZeONT!e>^5;0*Ov3a6@#YZ7-!ryTg5woyq2mn6U zE+7a31_6_hIqJJYAh;JoD2z;y2Z11htq}09ID{w+{+~EX9wC=dP$Xasfs#;JxFkfL zQ&V5dKq$W$+I` z3TNbC1qT`?(h=;V3r2kx!Pr703<3WXupB`#h7cU6nQnM&U?R;c5oXXuK+?asqL%Fj zqKKR_42N6Y9}Eqae-HwPK;RShAOH!2z$5Sr`w;zST_^-yZ~&e#h}{4J;a{=XFT3H3 z?_cxPrt~>3C1gVw36<68;InVr2FknZz=VBtFN%J6k5v;qSKU9EvH7Dg!x{vxcp0zQ zb6ZgypkiL?pa-EAVTMvfE8R|i(eD5fKhc_>ve}DVM557V8jCjGzVCU9puS3$9aAdO ztkx{mEaxmtb}^R;P-tXKO>@B>1OPkVc|afH8TJW*+(AvL$m2zw^|NdG+2B2xHO-w4 zx9*$La>PkJ9>lfVOB815NDAYgD3ceKu$#?CWVKf9rAYFq+cPk3IBw^I{01=1u}H#- zh({fYydo6oOS{u=M3f>cF%)@7r>1Ci(4rk+HQt*h2h$trOZFGk5%lczK<8}~nHtUu zKSp%?0e-|v(^F;L&4M;YA;5q!rV+ihq_=1+SCoV0M{P%mHL*R&5^SS8<_w+OijFDv zuR4l3hiUT=PxDg;6|aIY?mR4Gjy>2$#BfkgVBPM((8hGA;Jj>eJ2$iNfeSa=4ng!Enz z%j?*q5{)x8to{c~JJ~quFN%eBx>g$1xJnVO!DFC$te4as90N4J-Jg5z1{>=`^1GXZ z!u)}vgE5oubbly+6S>8l#!qgUIaH#Q&cjp~s6+>I$irk2P|AD|hr13AjJ6;`=F~A} zLaEU>YznE1-=Tl z-ua8`A37cyFbaeB+oCL3C2{-@F!mASFq3}RFSlO?<-t6-vwNlYxWbE|5 zgFY8~nY>J6m7esq!dlJr^<60A>}chCweXa?J7u|uXlej`-LP8loxC)6ba{nFGxPFg zk#qhH*ALAyjv1^ASS|CPYdm4OOfvrx7jZQ_05#lT;7~Pu5#gjV$z-XkrKF^r)f!Es zT2@Q6tdL|?4OHzNE<4fl(%oXO;756L!!IUc9`fN`&&W8e{;Sr0#2Ad59)Gx=;UN!F zhi1_6=`*8^La%Qi^OE?ISONKjVZm7cA8s4x& zr@J}XdjYA-+}!5=tibeMqW@9U{o-Kb={tLbxTj46l2+)*@yC(ghXTCK`B9EIS?uf| zr_VqVpD(Zrm=L^w3pxC=asD61=X+-dBmF-u{uB85|J6T>{|opL_-m$b`5)?M8RdUV z{ID{9Tc4T!;T!1b>A$%j28RDD^F#mbb^b5uGXukamp*^r_)Q1>TkA8&KU~27f(kHw zKj~j@$IbnpN?v>>hW{t@6ZhY(&jAFG62t)sf-!3MxwBqBYJ=w$8ItT!-#sr<8xq^- zIqzEXcUC197At3XT^-}kd+r3V4)n6DWr4eURIrkawaiYg5WEhSHIqQBnkR6F7Jn%z z)a=vD8(*Pzah9F{!%@51L1nQ1?s_e0gLh`L=+*<-Yt=IvMfs&arDT)+hJdJCsfjYS zN_U3;V&S4oef?`MK{YnsZ{-nD%ciOaia=6_S!T4S#Jf>CW}k6ndNXj5xdEznEy0&* z-wM^$KO=NRbF4VlIl+eTC_(HZ>lypSC&O?W!8MvmE@7A>dSF=>VJ{=?8U97OBYYkH z$X7|gBSQM^D%R|)BTD+shQWJ_PfY028@Dpl`N@zYneE7L!=?Aw-a!rP+4HAUokHLd z)*gP^kAE|^{?Rc1&))z40cigHQ2Mt7&G%6KFM@`Zl@*_j@!R{&#`eFQ|GCD>K>tm< zd{Zqftp5@J_cId{6VyNV{Bw={yUjoGKkfgGBbwv?a76!WZ2fP;?f-N{GtvLQ9nnnR zIL&`|ME^skC=Wh7PpmI>JzcujubgjAl46a30lUHj$FBbXV!4G)!H*3fj=3J;!Vkkt zOhy2;8Whv)W#c863PF!aQZ8Kt4^*|FQq2vUM$P?DtcX7UoSLu}tZC}@;_LqM%D$XT z2ozTp&W&Q;E{SRh9N*wV&wbB#;W&Q558doaOejrKMn29IqnP<9`+t_Gu( zvNyamTNc4I?tlQgq)M&!`*g>HE5bjLLgboeCDo;GhMMIFx#LBGID44*`5bQLASaG7 zvKDF!cG^j1AC57bkSA4%lZ`CV7nP?%rg6Y0qvhsR7Aq6pqe5-4vyw`aWv`J4Xl{91xZ#m$fNPgsM zo3dF8x6kO`6Y_%FTnK>6)4ihn%`H71HpO`*SPc+vfd6YPX1{}g{}s$mu^3)A(~mC& zm!Hq?&e8^nBP@F!R6yE zY`E5_wmKIar~&M?Cm-XO{E|$+q!ZWk`_G5N25Rogj2emqL`hdB2y-mp0DrW1LX1xx zHW`8=B5S(GS@Hlh@Bi387wi=ztLJY^`>1w~Eh(se423R7_sVj4l=rh)IGiHiSBgl1 zAb~kQJO4Mp4tt;*f6`B21VMS{by;&HYAEjoutv5s8GVzyPwHZQsB>66NJ@lsePBIi zbuV>KcHX<^D6o9#2$JJ^~K)9J;>haMo`KtHXu!j zg?~kOg?t5N?Gr~?kFpuG*@GKJu1k3j@#y)8@ecc{RQ{RYg<2`-oM!?^UJe`H<9Nng z_gUJJdA5H4!5bF6Cno_(K}I#AUgc|X;58%{WP-ajwMA-)dT?2Yunn1r+z za_Gao4&2#|#sfmc!3Y_n?BZ7tSwX-@%tt!B%^~|K*tM&rMTvHJ+e%m!XAz`hwcFHthy6sh z*^jqp*mH!f-(DlMOu|jnL7ssGGh2yS;JUXa2F?h+8J%~0c>HK8*TD8jw(rAn{{!v4 z1j0@C=k(u{s|$QPcR>2`kB+--X>Lee&r0a-%RaJqNT$j;Ee$9RG-30pl7UszsPM(zxhhbQszOaGv4N?Q+f63ev6 zW{8vSrXFMC0qb;2JHOmd;k>kwpWDLSmQ3%jC}zz z!3J9z4gN6G&0G%Jm>ujVIGPZ4Dx{)vk7tOr5Y-4C07Gp!ea5pTN;l|Iu+;_U6@&+< z+@JtJY#avrPHDE^9t!hB*vAK&Pc>kcf^=@mQ?-kWJRRpOPsTZP26$Vq2fP{X7q9>N z%%DeO>w#)PuoAAU)dXnd`hC&p1hIGgD7-7?Z?D|@`}|{o&0kd=gwu+z;?h3{T(Sit zW)Ez%6>8sr*E9rtrxouW1P*Z?!s6W=V9+hvX~1zJG!B9UR_PD_<>o-Ef$k2>1FspB zX7H4wkORj$xF`_W4iGb?S`B0qw&AB40jE0h^hl(S#6~I_6pgjMg-sP}(&g;#xo|ia z&F;Tb5|>8Q;oo?_n&DQ)UPFAt5r2XJ)WGGC97{T2ioSq0*m5jI|IKF_-CSm_0v&Qk zoDAi`xHH5t52+Nc2N2x15a(c0{IbXH?GC)z^f?_}R|EfzX9dD*2})biQz;AJYc5wh zOinHtjHjhaW6!nq5b)Bmo?2#D$rm#UWD<)Sfha5nRr(pWmAotSNZhI|8@yrMIAR<> zle1*T5=VZG-Ai81%wDMx8c;^$LGJQ$kZ;PV_7j7ppRtSx>W@r&0%@Ky6XSuRBno-5 zSFmEFQkhVKnrfK*ObK-%bBS=2EDWWm%T5MV&s7Fyg)*TDILf z%o9@p&e&$f=Ov9NqlO|5>pbY0IjV|qOPb_r5Xr9#*~peEzKgDufU!y?N>&&;nZq`z zjYudNCubW)Larm_Uvw~lnmWW&A7_czhSN(kz&)y-!3sC11`!q|6`{*d=2Ac`Kw)tB zHy(8%$HI7G2rE0sGN7{qvuJ1zN5Fmw%#9oOf&U!&Hi2^E0Hv3|fSp54ooS(cDXQ(L zY9qOTQX)AiVr-R4b2nncf{_f~-;Q08PkD%5RJOLRRVZVyL9CaGAD>XN5}2nHqAz7= zF2{@evr+FXYTgCItaQ2~!7K%~J@G2wi^8hq?gD3gjQ>#ZP5 z{7Vxh?~e^AQmM>~{)uxK8Py*km==?E3tAE1o<+;Q@)KScs>hAR0}$4cn<7 zP7*#Kj{);b^{2wWPSIyWs{x@tf!CvV+oII^YA*BX5`fy0d(w>tGNL@Eyg!Bmk6~D> zcC(D)&bl*mK#6efeuTQUWSB$P1FJrCEZPn`hYw<+5+1(9Y&S9?u3T|66nA!J3z zuQ+8iAey04^F{R`DTAdH38RjGiRtK})Q7128B?voQweTniWBo$m#q48gipD620|@S zfWcspeND~ElHnGKYGbEN^+k~Vrj!zsJg$6ql+ZN?0tM~+qiQ7dxXi$wVKE8{yRYE~ z&-+OD@;ZnHF1)kdgY;)-X>O#;7h`*j7eq@9LW@2h`93zS^7#fC#**E44Ryst6!W+E zj6t_#d%00R;Pe>1!8&OUjjNi|G`bPjI}97|p&P@J4(p60e|}KxB)w$>2NxR+O9i`{ z^QRCdIi>N>v^rIsVG=1!1mnP^YlFD8J<>cK699%|#ak zd39iN?4cc7QV;81m7X~4U|o z=MoX;GJS<>GiFT^YKf3N3c6U)*IGej9s*pR>W}VQ3IgPy0C{2X6-VnBZO*Z()Y}&V zh7<;QW~DB9mOW<5qK-OLh;hwAMrjJUF41>rCh83XE)kKBRm2xXVxX4*MxNNxFZjsgK(fM-} zU-1SE>PplU6k0{>eQ_r$?{ksR=fAm7iCG}16s>DE^*v+Ud+u|b(Yzwg>)xmS{M?!& zS~G%^do{RviXb0w$c(^LAWug)jJM+bnS8$2_; zQxFe=)CC!|7gRv={%#a{bmjFx$r?5x4hM>5|w* z$5HI@O1o}|*P>^LdGZDQR(7w4rjK*#veS>78swrm+}rntZNKeVy>_QgRm*z^D4JEL z534>aH-`SwgLRBlUXw6Yi~3i_?-@?`rt$FUg<5~*O~Xi&|pEk0QnKrd53y_XnqxH%qBwX~K@yH@jXTBU0l z`uRiGY5bXLylCT9{$9J|bQO>gh%|P!fw)0~UBNByeSy@95!{w^QHeV~*~p$e)spAB z&&Ea4|BNzsSQTi6FYtSa_n`Bgcv&4eM!`I3v1C%3(T!0IlZgpBat|AH6p68Vq=He^ zh?b4jST*{D)f)RH=T0oEI3fzcKQCKAgfG-Uj+lqXzqc|forqZ}b6G6a zGWS=#h8cMc!_#L zFpjBHh3hc{JuNvJu5%Yv`Su+bU+OX-0@zjZy@MC3M-S8{v9??`WM0SIy zBa0P(oXpX?1Z9|L{n(E#%VJF)!t}dumX@7;9bqY>5E3EaCQnV5QWwr`BMZ zng}=Tiy$F6r9yr#-v}*Mm!YV7sa2W7=;j0&$TRng{M?D=&BNSrXnCIKF^d^H7kE__ z@6jb_qUR_y2Syg55-wrUM)ohweebZ-gFTMVP8L`QOkfDz_rvdh1n4`r`4Pw_NaqNZ zKmid}m0b4R@&p$(>t=QD4lrhDw!IuSQXn|b-K??k@n|l#DZ;sGOGPo$jj1mzUyG9; zG`-AatpW#3xl*U^=QBmA5}cF*Y8K%`9cU8TT9Q-MABV+=gJRB>&cBI;&%; z@nQ3AdqF2&4Yg6W0w!A>p>37>jCmVyifY$Ga&5B=zaQ#oWbD%Az2rTJYIPMcWLwEp zt;W}%F`LJb0aHrTEJV6er7(OTBCl$mE1msb+>&2BOC>*6!T`;r<}vEtlr8=>tE=D( zBrP@wG>fL(^yA+AvZW&hw?EsfD1EAp%tlLRz;jAQW1VXQ!MQu#*`9c5M|xQLLya1; zG9DnUTTZ(QH=rT*y+*N%#CmM8AgC!65XwB=fMnGNWtEkW^#c?~thlE${RCJEfC;OM z?3Z^ZBF!3fq&TTU%)|zH4r*F1c&NfI60TZ2Be5+qLJ)2$Ib@v4f2RXK+b# zD~9n6-uxOdi+SA$Y7H?hJeoO2{f&13G+{B0^2brC#v%;isz5-#xkM4&)Y0N`h>EhM zFE`A@C$EJlu6*WM;4)=R#E)#pTtFA~XOg!jH;osmCxus`oth)3@16@`Se$CPZ-8pP zM6xiK%P{tIF*Ij8{;`9GxM|OpzB7hiO-$5Pzp)C{we;^Ib5qJ3@j=AcWxpiuwI0L8 zVxqXH8`gmE8EU}p_Fai#s{Dww{b;{%|Cq3UDDEu1uQ((67jjD1JPzzM_HBqpxbcX| zA6s}0I(e}j?s_#w?s*|FIsJHg&WSB@Jl|y;Rv^OBG(s7K;l5774TF*)MqAIuGY;U* zDw60iev)O@<-t-;D^pN^TVF#yBglxJc-Hwdu;(s4z2on~El6+41E3NI zgVG=#^mh|b(XU}Tn)cZM+RWn61wGxH;9oFf1yDl&fLJ||Nt@9J8h}tQk?q~v z=|7h&tn87H0d3)&NLlVdIpUAR57y3mH2$2%hO6jkbbd-IZ;o&|rM;c%xvO8?+K6Vs zanAZ$_;DH6e#L$};?GkbmbqU&E&7`-Oy_x$%K0fHFAFx4BODO@Cjl6jGM!81=;p?6 z!-To5VLn}-i{)^#W+M%hAsU!tuN}InuEdO6(j;02M_OI*k*@T_gHEN-$75Xz17ZZt z4ji)V4<=-7W5k~(X7KV3HIwQR;!z!dI8P1uD~EIgQV*0~5TtHjc>0L(hw)uGsQ}f< zM!~#O;@(&R#ppqkNR)_#ef)26s{6*K#3&Srg;9%9OuNQUw>#1sFSGXdvNsS{O%Khl zsuiaB4JVp(2O3cgb*YB6_arA{25Ge7#iz0D4#spl(ixeuqjG=?tK*NvMAnrt1#w_b1=t#Y*?n()2}bb&<^h?ymEd!MD6x zq#4uu!i^`sXm7;Mt8lUC0V9~VrMB^DL!RVdIB;XFIqr8@{n6U2FVbl z0-}sRfcQf|D}W8Zt&mej=79c*Qo1>@CfC8YoB4PF+z++p$ICYHL7a`7)FyTJmH#>H zXOP6%J74DKssUv(?lQ)x-ibp^i{L4{MPP34b@(&mWNI`lqhfdI&rvSY}RFGwd?QUJ9lZbU@d?(`hYUjZ~U$smv3 z0;Q#3XyyEZBCxxHD*mp9N$KN~2T^xiLPiA$vE%W39DdoW;;Wb=X-^ku%}a0JSSHep zXuL9yi71t@gF6wlFzN|=YU*|5W*p;s4r{pMmzg)7MM0txZ#x~BvoFT+vBbXuAFhU!=aqM6LM$kEf z#cHFsX#KT8M~dwrJj-6XfPB0(Bo8>3xjFOn91lyT>x=X|c`l%D=+{rH%DMw^Y(ijg zcJ?WAnv!n`93qbr>y(F2`-8XjQTJx&!Db1|tISq=`_0jFBHo<#EjK_x0{@5>S=bOF z%%W81r{rT~k^OGn%E0~rg?t`gB9uAwpr6*SzqMG{p5lI7l}-gE}EYJzY+T? zN(r`aPxRBl@W_-qV(uciQEg2usq}BlMg?UK!UTG%5fj7HPW#hQ%Nh~(VNM5G<^67Tz52zx-k=hly zH1R3k37y>o8Y({C^{`-5vey0B zC%P@y-TkS;r^pG;x)=Fh`s>{fXe}N3A6DTOY?WWEtcGh9WNp@-ZfFagA~jybF%o!Q zB>HC!s4K@!D+4d0=BL!CK_0p0CtbtG_0YWLg4zi^NBM=k)sT`NmSLU_lNcdW2a4}? zf$)QJPw6%|g*yrfowny_#!x^F?P0A)=eW3~1Dl;%3V(hU{ACL~ooun0Da8-Zu}A zV|X$?8^0N=*MPoPA00!$8wO(_`B!Z`klLn~;lBg7fw z+$;vf4`NpkzIg2Z33XF*h@WygO_$D3jmG^gYzh#J7E{4jPfR?C;xEzD+C@%wRo_Dt zB$d1#mfAvv|NWW|m$mWG1JnG8j#u-s$7Z9`@;-`&r@p_|*%Mu{673fE2h;a607YOLBkn1+6CHW@?Ud4H2jUI*4i^XA69qM$(Lg#&`sZj)BWI+w zMG$X)j6Svry2%6^kKRmlO;nBcWkrMPDkV(2by0I z9h7w~muZX|oas~5KJJXZO|qjTlAf6&>?M_<51|`lw5$ZB_@et5=r&=v2!*-FCpy*y z|2%|g@Kd~Lnf~E6M3c>zDa;ekgxl;9q(1^v7IblNOe)Ldfh5*>B}3X;B5q$mZIJdG z)oxl{?FN`}fLG*oxj2Q>(I0gU*WKG&AeXi=2LN(*#vztVvY>$8yi|G5UJ_$rMf0<}ZJ)cTycBn!#22J}hft!%V zHIO3^kKvmCh~`W+9%bv@e0qP(bzW!{{Vn0iKUkROiS|KE?K=m2fJd$}eAov9-_4s+ zXY1zZCh8Y!H+!$@KJ~5ELC2U5gT`ynmiSILo2F08t-mQ zFSe1b(-Qp~)9L7DQ>WBpL)lFC$2kBhj_vDmVVZZd^;P|QQEsbwYV}pa{oeBaB76HH z_-M=S{$Y;}FK~s%f92sOKIW&fbJpoCQT5ODSjt>UE?wQ}O8B(K2e(N7HYA51sQmM- z$Wk}6^!=|<*Nq>3!FU##G0cma2AMk)H&eBJyd#>1+6SdKI%GOWE&Q}CM*9QC`Qt2W z>KB%Fe`Tv((>s(%>n6zD9T7Rjvx=}@1Zbbi8IAHH7`m1Y4<2Yyq^I#xku0$tG9n$= zbV#)zGqs9en& z<3eS#_l<(N&uNt;Zx3Ly%ge4KeCL>q)U42!5jG;2EDd4iP`5PDU>Z;v7XIL@djRS+ z+{%BB!>RuPX*UhmhNAZd0v9}QNos%8TSNor4bK{Ut%GVto%kqbL-i%bj%=(ep4TO3;PVbI-U&hI>7G#7A{=)4A z#TTtR=6s#Em^WkIAet^>A)EnrcA|k8E6Zh&4rZZY!hTB{>5)CK@1JFarHCOfR+s=u=h20B`8&A8zb zAnA(Lc{AZCAATH{;)sls1QRW7PTh65DiKd6*RgoHCj{55!@DyYaWc4I_0vWHrV&Hh z8Nrm?E!<1FQ~(I&|$-Km)M8>Pyc&zh4IKU-=tZExU0R4;B|sGNd(v!=eOaYt!Q zr$09o(IJyO0p4}K=6ZqHn$F%G{3e&=;H$5P2?p={wRVD|{9K1nvNE4;oSaHgyFvBE z6C|kQ9(<$fg0o9gdEXR=8c=Fwuv!oza3GzLI{-B_d`rE(VO#6p;P=2Q*TL#yaH1u3d{FmBnL^a*Er>kkAGn%s8D_6S9$ zO5G?y5#xbF+k7o?aEQlav7*=79iDUa=a1yZO^z2{PVVkQ!rBy2)wq(@wO&*>Uv1ep zM4~eUUy}5^stSEB*ixHi{!FWgNU0iE>ULkX9$D@nbOk$)#Gm33G-}o~FuENj`QlBC z+{)wP1Z|^|qSfGCI}N(6Q0sMq?sHi$z2X_uji??1m3p%e~_h&XFHc z^s(wk_t-&E$5)z?h2isJm7210hE5Ummhm654nW@EaPw^0lA!{0!LFFP(L1I)a)zQq zQJkP2AikUqYPh6pUU;-?=t{~8`V?3kWPT_L(v8~F1nVNhdhx&vwNO5W+VZ;~6&j|W zN;Hvii93RIsT%gH($c_yR?x;pc?6s&2VxLXw|S7lI;m@c5^ z=H6wp+p+f+r2<&8q_@bdv@zI;ND7W?qHtD@;{+R*erelHi+gnEhpjdco*u(lsfVkj zZMFduS1}gd_Wr3JPTxNe77~|r4tOV!;lzU~YLBD<+Gkz^=C^F7KrB!Uy#Midstsh> z%)dPc22395|D!g3-!|n{P3TsHPO!)Huvn9}RmHijUayoK3y{?l_c4j3qlJXt4H@5V!^swk%oh$W+t`TLv-G)RwZ7S2aTRQ+ z(PliM&S!BKMKt5>uz;)wJuz%mE7z)Yj|Swj2(+J@G`cfJ6gHVE1_wT`Rn9|a*>8rK zKIda4Yir?%s+LB+lzQnjQ%(Wb{`9vNi!M2lmU9VkP#jKyxdhNo4&QKWEpan;)~5Zb z?M+LmDay&hfOhGuza$Np=?UI>c$;w-gE}oMH-L0^jVsjVBz`l8Brf8PeNR}8qinZI zFj#FwW8rv?oVYlB-g^j}5u0 z9<$Axz>14iFq9Czm!x94LroELVT+lb7XTv<(1LE^nU9LfXaC)C>Ab|tDYf`?N+V-` zxXx1hG~Ah7otC&Idx^2^e6)OGe`vKK4JBZO$c*tQp6%axpDVpyp?db<$0L<(-7TqW zj@C#aL81N{!$YN3f@jjL$T!)=Uj|@1?q2-Z(8t7?7)wFUNU&2GYO2UopKa-Bi5*m* zyPpFtBpUyDK!jDe%6~C(T2WPjgpm!_1(7vb(~^;wAANp-v(qTi63tyX28HQgrT~2^ z_@SpyGB0MWY!6bsR6!;4faxGBX6;r*yK%vL*;gm!sM6l1<&jhdK4ik6yJTb}*lT@% z!sr+(&7DyZfm=Nk*p~($MwjBepBHo_Ns5DGoDrq?VHP|&JV7?ez;wlimTuBZ8ty7& z43}wOPsvqrJDaw=+DeQzOc=^Y1zB!NcEa+|YyaZc&}Tsk((^O`|{!)EQ2etkO9ew5~Af0TQcUE=M0 zG|lI|9g4MdvFiEZ*iOl9KWl%AiYk2BBXYG7eUtRo-lhE+ZMekKZ}eI8b&W;W`HuMT ztH{qe9q7(VSi)t{D>xl?gw-_lcqL<1ww72`FVR6F=w$aG4b-5}ICZ&XW`7i^0x9F= zQn7VHw&Dpu)bo7q*fdy?SRX@b3moP@-0+e6^+- zptYmp50K94T-?ep()u$?vtx2CgEv$O+5I6lnqT@!_SZd81d#cw)vL3!cSGXn5{znA zvY76S7-VzrR3-J$Efg>q((}tTHhcI^c_AGWMuxJq2Df(#?NGwsZli z-@&^?OEDad_}ly3VmCD&J#08Mv^U>!qdNCLIC}>uNt#7nyKURHZFAZ-r)|5ZZQHhO zThlhDZQJu zJw`GBf*;lrZ*5(dvNX7?A!g^d1@HgRA02yo?bRD;@lMfxXSRhmN3yZoSOg|vdqyn^ zoDMO$O?mybaAMf|@gx!JqAxnD@&bGx<2`7-*M=?NzND|pXid(pIzY#m>{SQDI!Oo7`d zdmFe z7E&oePYuR+{JFIZMb?;#YiPxdv{pM>D^HG;^R#5YoyK$Ln&k($)2v&$E6qcS4Cf>$ z$!-EV)V6B>RK%DgxI7aK^_2A8v;OIt!t3?~HU7Yrfi3R{)z~9~LZ8MwE|*JiJA803jkQs3yAJ}rE? zsz@Of%s4qoF>jQRNSVC~I&Q?u>b>bi`eF-JEl}9qLYO^?6>yU#=>ju%!kIN3e2RlC zcaQXSg+k2J;~>56Pr^zs0avN)rK1A6n-ga%2kW}+`M}%T0_zzuOKpWt9Ndod1GMIK z#PfY^61~?F5EVt~O(`Z1EAC4W@n|78-~YbGPZ!a8lq4E|L{pi&b^Si@{m)+mXeNdX#H4xNt}#BcCrB%<|7-$rVZ(vD%G3(ADh`?pso6ND0ir`v7lVtt*tAN zg|Tjg{L`wSbY)M%nl)(3j2tQO1qF_YBSSR6mS&YY!{5)#yg(SAB;$|hWB9c!*8pv- z!C-Wm$Z&9xBt7`gCoNA2G5j&N=jg~ls~*n-psuuR=pQ->l|OstJoX17C;IfP6mZ8L z`60}adlZW2f(s>P)69Mk;k$Sp9d(35X!KJbGx~-+!_U%%rp#@vLqgBEbmQtk)`p3j zF%RA$+adJ=%L6mO=R*7jMz95;AeJkDeMSZGCX)o_ph3%5iS@zmHS#T!cfs~1eT3Ma zH^aVfAvpHd4!k0ECy5dMRbZFo*0WHSR`L?mtnwDVX#jzFlrA|D{-VGsx@ich&e!m` zO7z%)Ycdj(nN@8ara)=NvjYA~_(N>f3{dD7aE?ES#n23hkWUvbz21~ibXSQXWptOZ z5H4h<@N&KuG6y_M2~sP-=j{=swg_3J#5NLFXcnY)!0`4Sq;^F6n7)?SEz1esu1|Mt zO0VCCkRcHH52SP?j*$AGDUd1PNkd3&0h66F5IP_)J)ji%Bs&g2%UG>@GCNu-RPc4C z-Ira>Qp`J?#_uTZq}^{q4X!@BxC5UlyRZX2{np@JthgP`-@;MMe!%doI*>SSr6;o6 zy~2|pe-+zed;LN*6aTu?0|LjhXh7n)mVdMVE}nv|1L2*zFlmdwnRmwTc&xGS0R>~L ze<}uNU~CTCr9Do%ArDylYDH;b*qE}wGj8;qx~K2RCi}$hNSyyk!OWg8+ca>4D&U;7 z;~$u2eX90@> zuEb%@^$0c1HCX_e@muOw4L_9jQ^wwAsq}jn6Jx}Zl$?=tLt#O`P40WcEzK%AC9DQN zT|`&{G=|)cy1tZDZH93MQU!M3vbOAJkUZdSMAko;!{P}li7ot$O(JPV$k1fYYt5+uf!gB1YB_QYLi2!AjE-Jf;&eEL<;#8!v3 zcQqNJOk7A&g2Dn{ifnR1Vj7I(;`1d~=G(wL0e+!u#S?ScaO)}$eMObZwps2D2m!<}@pDTH*e@%;fkP_5kO+AMTiO0gAGqS`| zU52*uK_&7iKwGc>6eBY(Da@V?_JQbgSf76_c($1#ts($#xt?wJU47tHhV%BrFtmiy znznIij6-omb-|TWa7%rx7Eyp7$$-jF3hCqXvpwSzf7rY3u|2QN*6@~ zZawAEa<`Ta*BBk;3S^bQ_6c*c^SNJ_?Oea3pC35B_mMFw{U*BaK@y7*UxWbo~8bB3lW6B)yKCgY{KqNt{a z-xS6+cSvT&CWh9+cfZpgX^dT9mDSeO3nnT~tjYs^QW!#y94WK8QdL+iQDt2`%n)Pr z%^eoQ6%}ZdSz6g@K!VOt78O+?GFj#o;_arp6cu$_s~Cb`yv8?K5m4t%l4*jX%y6x# z+em3S>X=%C<6fkL9go(c5!hIj>#S;kJLbc<faGvk6&Wc-} zoo!icnO9JJ)V3m+x)9MpUJVsv5u(O@sGy)<$I4r5KV+4m&agbCGZvEhbr?|@EdA+*V5ShJeDk^u8#JM zT_695z)2o8aCv^pm+4&vyWTM{{C!YiS%|6J`dq7JQqb*B$_|`HN4r9DoJ*9DqYqsug8w zz2NyE9)=EbvxwW4`AEnV&;S7ERyY-w0a~B2SJf96fT-a60}X&37zd1FL{fQb(NT`> z{?DQ#c*G;EUfMuB>&<>XRq}?bvoTLLBRQU27m+L*p)4C4eKxO$1JBfG_{h?ICLPvU zB=a}`q1G!J1S6;a1O_qx+8C!ih_9Uik@!L7+nf+5H=H9+Kh6$=bUpvl^bTGD zX^Duq!9Gnr5&w&SW>`ur^P6;XCN8O3Jp9aGFAwJhAe%pqKQCj9^0y;I1fUDR_j3fZ zLlYn=+2(|te%tplBD>17@-^@s0^kOK1I`4E9rZ-`y&rQw5gLR-4@R&b^Sz~mvDAT( zJ_gw<8;d;C#O?_N^-W`wWM&DxpFj>KWeQYIW%AvwXV-}Niv;Nx3+C%?E6$Q6ju$-^ z#ymXPUuNfv`QX3UXQqA z02IOqVG0n|0Coaivta?}0!@I;#P0FVNaJ%ZA*Y|y+sErAsKr8acqhJx581}1XuNa1 zkVfbQt$^QH?jPXg;3pmD;q-Ac4KfX`%G1T_ol7;m8j_+3$?d%(m;j>yPXMXI)S?QI zgh*J(WoWW0azetrpl?0a32?vEjNCRKB4KCgv6`? ztgZQvTYy`AFyAqC_Tz;(Z(3S!9r)t)sI*SD5%yzZMhBNYIJE$w_PPL`I z8iuR8eG0s5S?d`n51#sL(Bh_4d{8;IYgcfG%U-q125P^~Nh>w1D`l&|1+iZ?wS$K8 z?|d&(r&+;Yt0XggCP)C$U;>B0xyW$BZZHJHic|=cW%j!y_)$tv#%Lq+1?2lIDcZ8S z{^)xC=5CN#AlpCvb%7W?AgSCTsThR6-zAJ({B0Tm7y*z|<>O~nv~D~3QTK$Hmc z;59Wk@!eXOWrlR_V}?3Rqf=l1`AcN=+g?HT@I>*o*d`OZFT*7GHH<@5zbPhA>= zuDuRNxp7O} zlMByYsxjwMCX`MZmEcfFLrL&bghHuNZ&`_@VK|4u!WAV(Y~cnwOAwW%n;LZD-l3Cd zPIAk#k4cA&75}UP)Q9C?ErN)xCieSKX4p9HQ&YKFBuqOM{d}OE6Pj4ajwxDwTwdd4 zfArZ-BL^h|n-U^Lv~YD<`F!ZPT5>chcG3$YN$q|IV{$E4`ip-JFtE;eAZv^TuWo1R zx8%M{HJuB(7P$sgiOffKE*BzPhnRz&e~CzQ%49_-PnII)Sl$nsqI#NJ;8*wsxb2=D z$08;8?Vh>P`dt8a$ge6Vy2&FlnW{>fvjJ!fT*YfWKRA-Znn+pT;IuhH(Y=UyUW^i{ zkS9O7C^3PO#e65RlspO%1RxPuNQ6S+D5!wE{Bm*FxNuMu>A9?D(QE%cKL_+H88B@1#zl?2PNXB zzOvt&VG-RWZiuwm7@6(pv{bY;D;+HwlE!(-Wnu1azr>j>g1QV!BXu?O{LUqA!HM4L^GtU#X z$QXCBFzmJxe<5@x>HNU2j>Pa!AQl7AWGOdNhNSgp6^)R-=Z7H+-(Z)4A;BN)KoVs# z((+GGXf0^yLT;17E*bt>+X2?V%}U(4Vc7Vr;geUzQm`y;b|p|o8_QHfqs(roHK-vG zv|+_nH0syS*40}>KZ`Mq4xWHyN!Sa9FxN$#oVP#@{Nnk_Lcj8Z_bs^T=c|0R1GlKz zC+eVWQ?4tb;2>_`v5RZUFpSV)UQ-K^9gvj(^g~%->3}e&WU$vzk_WfQ=FAn=sgKkkI+ z=a(ub^aBzS>HANbHDCmu!XHEG!8EO2yv*j*&WQIs+0#nHKQ(eJm}zz@GTOn=X5q!S zQ%f?=1hlugQU!*E;Qu)A&$eJ|VFz|MYaD?NuiYzUgYRVYWT3Z%PYTMRyFv7$m-N9N zQnBG1?@domuF+%k(GWp}3z;2z<&-S(wGam?H&r$D;3YesNqr)1szDPKHy9<^%rUGt z123mjgSexh64jIw0Tg`wA$^LM+VX0iDv`{=56b~IC@?~G4%;$D)Bh| zy$-)!ZyDmCTaAj2L8P)<=^?4m6zL&zprR^KEW_g z5QwowLQwgKGnh$WBmu(YgW>yf0fL|qLER#-klnCM`svR%N)&81iYLrx7+B$%%@G%~ z%g7?*pYRq+q?cN!4>wA%gnhoYN+ckxZrE0JfitSeUA<)W&@o$1w=91yX>Pr4Zl&iH zR5bvu&dQ1?wAv_rfB1@iQ41aOBlKstSK+SJwe=zSP77&ubvq9f+tSfh2!$RJlWex- zxv#&VDY!L*4pu+IGD5M^A@dDFF2OHpsA>9k7Uj{ z5Xz!}=#{W6Gl;B!lpA&!FQ9vjnsJWNK~7(nf|6MUC!{Pf{QR7l0F5uH zV`s1g(PvBt`sQtx1!0r?s~uPU>==8n&d*5vero;fqZ_hJKiT*O4#^(MPT#Xy*vp;} z+aVt!<{;){#(NBJ?CKZ<{(F8YU1IFx>6w(muuNg@G1-LxxO|t)h_w;6JJZ~~X^0?4 z)x^!t(!y2>#a6q%ce_3r_Cp`T&5cfZ8(G!E$jE!jvV;Ii3BVdHXHF~C2qLL`0Z1{- zIDLgEHijY-fm9?K%Cx@AfTkG*?&<;)fq?3KYJ0FotmtB$FifzC2fYCp?9?4b=}Lxn`Dz zdWFRZhulUDbTD*QwNs-4A(d!3H?#PwOo9Q#VpRilm94U zQc6q9R_}V55$0G5XmSwTwKbB7F|QTj{&uUoS`VPoRAc_5i(grzqs1v;`BNT0>i*#Y zrnLlK8Ws&s`p>5~K=TGeEFw)Lj5K_|QPF`R^fn-)3ao`!4j}=b+f9EGZ<9$(V!3xP z#%MFgFqs=(0OAZ7O8;kk0w!$-*nk=C2F!V9(Om2DO#9#fMJ8*Ph3`TwIsI_~s?#SCNU14)I&1^)WOW8rCl@1x^Gy z5CUz>OI8On6SVE+rCzdh3~ZY+oKdJ|IJW?37?9(cRG9Q+wOhi&TEMG*KxHM}VZc+ydiM$?hRc3)?G40^W3cTsp#t@^B&Lpi9XF;Vwe}#}9=txBY zUIWl9RsqBIR}q}ayRMgPW*@es+nPJ*o6}NNb1=_fTP*>RN_nc=)X$y`YU~yThFGA4 z2~IdlGrULhJ32X|hO!X#V)beYDBxZOWo2D)Ep2S9VO1PRt^z@Wi{@*gw$D9YR{^$= zAW9@*CqQ;ttXx^o*NLwCilm;UhXviNg=dg&uoj+#pJ1WpY3?RT1AYT$lIm=cMi5!6=hpm$E>Q7#b5lB!rp<5gF_6Pv~6A zwT2cY8^T|S7gIj67;!4xg?F)5pZdBKIH<9O6(YNMKBHLdGaZRyX%vF$E%X$GJ5&mSEU3J zZxQ#c$vu(X^tJ(tiuj&#VkIGakHKOB@A{r6HwqJrBpKkuw4vM=(7hkzgXqP&f@>l2$t_uMVUANz_6+CZPf? zXY~pQ++-)MNbLU4o;SL`0N{5Mo?)8jDjxGQc;P+0Px2bI&QT#PVg|ZfJ$FMZ^>YHT z87>?BkXFO3Nnp_f;Kp5gcqj4d(buWZvCnl}hAvZxhHTEGLbDd)4;X5GUF zQbT^t#&ZzgdgBztcRxn{8g$ij!|}-%?VtadXz$97aUPYs$fk^vjRugTVAb@yUQafm z>|7woAg{8JGB$0+K8zr=bdV^SB0LDgspH55Gu$q2HlwB+e$c?Ro_^Kp`R98#U)*_@ zvfNt``~Aq)EP57ljL>h%m-dTY`+a~eX)%5n+vCjV84;nU@YX@UI;6p4JWM4iZ4x=U zIO+qjHZ`;ZY$7&O!pC(Ft3fo1#5(+v9fZ(wpcQW{YK|cT`!@6!cC%KYv)L(g6!Y{L z2tUY(+WD3ry--i!r$ejPU|KoQ*)~#-L#vL+^>zSk47U!6Wo#4=u{&rmMY6Ika#Pu~ z&z<$#k5B|3=c}BK{*;M;ZJds&7^){fGdCajz(gI-Y>%n$(2tL7Dz&-J%6#0nw~9jp zrc%6Lm4%zUU-!xT-9Hp|f=0x3m&t!?U3C?}(m3&j?zrw&5CF2LqsuB}0-ClbXxfz6 zlysd(V#BvHI*f28mzjkWu2q!}Hrr8|_-lzpSJ*NU4>s(1=~AXLk($cVIfFaK|7m6M zIr#m{EY9Kfdnw=Vkq}UUKB1`7lQj@yS2BomOzTFl-jSC(5~dP?4(z4`?NAG zwlE(*G>%R86(==yreeT$Fcljo~qXr#od8{l4GlC%@9ouZ)AuKb+<4R0{WoJ52z z7H>{28UYfqV~8jTsZE3eF^mXnE-)1IO#5B_Bi1s9o0EK1oNtN#B(4AMTTEmOWt+)8 z@(lCY@k1Tr*JB=ce?^~j;xog=qv3+}Rnt|I(%QkL{gu6vVwhbJi0o|6CHW=k1TC5r zb|LQ^qD1_;lu#)~ToE^?rOfM&t6WeVK;@9rJ01mEE zqF1GYns~Q7w8uShr2+4;03KKNwN+h;dT<(7rB&ya>0l^2v{bhAnnPjvoP-SAd6XxP z=d$9tx#F8BzA=8=4r`KC5dBG)?Vp@xk;ogXRXepzgkC^5v~`zCK}=0FBH1|!7w6nC^l6=OmnN;9^ z2-y)re?=-3Hwm)zxw}8XF57;9SiWBMxKXe>oyk2NlWTR?DgPqYYuPHz;j8(={{W%I zargQ}p57xm-188q5fW$uM-661p%*j88&WM!97F3NokXfvR`;MeqRG)hF$!x~3v?(M zv8dxR){5k-{=G3~FD2!|oRMPGBB9?oEpz9(u;pZ$U%ia?>)>hs&G`>>i5?c{BHoMC zK}Ss#OUBv};6(?Zj9^Wmr%}z8l)Nc|t=#aslD#R_rVY3;2tBpIz#N5*ayzQfJC!Oa zcDnMRREp9&C5f>_Okh!C_*kn0QuP7@k>8-i0b4|cwgRw4dwNN7X_7_3TGit%0e@+> z@^tBu3c4b%X4}wis3gd&Zuzf`u zV#X{u)<%hB@JL!F&pJGvf~?`W-CJ+327eaP!Y|$HXoey_aoe3ih9vpL)@Hzn;2MK}><4 zc+7sffu-ozfqN#_&!hcfB}^x3l$2dX`8k2n@=L~d)mzEeT}CI5+kar%q?-SxpWA4! z%XKr+-CTXN{OVKRtPqp}LTDzP$Qz=&fU9%Hw2qNoCbeYB5spiaYno%4yT^`7R)r>E z+{(Ca;#)Q_vT4h2pceZ_v6^FCr;umL##zFiV)*4(wyj>L8{?OoQ-sI6vE9!|HvON? z^bjCmj`fayBK$8p?qc@1pC7g%KF{>OZL>?)D0c@hRNzJ`QXc2m)M7qZVa+l@Ki}yM zfM?W^>E!1VV-+i%C_NLs4?>Bk(IQEpn-ZN1=m}7FUS9EjEY0uT?m{?liWH;97vUr+ z#Y9O4n@%3JjoBmoQcdJWX!RtA5*Y^6;UvU6?9xvq#9s~|cRj}#R=VFxuGH-++?^HA z&OOt6xzPMbsX3lsuQ2uEI4SuUZ48u*HO6_4l^Y1)-By1i4Not^Mbf~8KcO7_Vo451 zlfbBQ5)>m+h5&KYD;NcQxiUHNWL~F-cSG(I&Kw?JyE-2I)M}ojbmGM533v%B}A8@7W+t z)Uu*;rvWaHhV$Fs1hNDW?^Kz>U}skMw`FUVh8zXT3 zxdV~(^{|0SQgZ#Z`I1$R&L)HxC4SBGu{WQ#nBzO) zmvPTxHy`rJ+i4llG`?o|$MB*BuTHWqQdwX~m7;E!$ex;T)r&&5FjgeN$)_bJS9$b9 zc*%fTP+sLD14V+*ZbW#v)8fSUFvV%?V4pjW@w8ZF`IFYDArcMz>{+hD6SLgWnO zlsgb~tHO`b^4+oa>6XIY~a&G)8cgaC>rhwvWZ( z-&a0Ij66Qe)|Tuar3cU-ygcw7-eNv)4F}UtXL2>XsvK#k0>m6K=IGmAktfICc8FVTF{a`bfO`Ncp?HL3QdX(z3Dh`Y0sX;Vv};yV^!g9-*$Y2P6X* zfaqzH^g5-`oDL+%6x38 zBye5?a2mTFz;y`ePv#G*eZ03S=^BD)O6i`0)rt#vMAR*$YGVrHafHZ!%on;N6@??o zV%Tr@jo} z5NadcT_3z43R73rgis+XmLvJ$oXGj~l8h5;43_VM_-vtx|f@r6pC zx=}bKH#UsyjEg=oEO!Vm#X|jSpZs;_%ramzusYe} z53W?BFK{o-EFGMng}EqwP)bVZ5E3F)Uu+uQ22EA6O+vGj*WAFI;8;A>VJM<~(F%b} z_){o+SWFmNx=l?Z@(^BaiLfLE0(4TXiiju^EfR_-lBQ@HE^n<83cwWqIFj3@VFRWB zM_gI>1{G>VZsu>aSw*2xiqUX=brC>zh$QhESGxKD)Q5a>7onYOZgjlqD4QLRfhg{@ zerVHxcCz^hZ09qN4;{rhvEO3N4GsHcujck<99njf@3W0N?0vzgp-)o%ZPgIeKf$`6E1yx(%nfZ00v$9t zOICV$G%je01l{5)D_xT1!)Pe$1yfA5civ5$#@`H$nd#FZaWQAA~O8I^;%xR+j|?}?x46tvr7SWUAKcA*N?c+aS`%o%lz4QkJEP~IuU(Nl6geq z*BMqXO*OrGeC`|`%v~IgfiN!$HP)e=NVj(*=p)ZZnG-iXt~%;U=b0Q{CpiJt{wC@M zUFcop(BZ#!p-PPkQMWFlaMHNKZ5>XlFBL)*Wg68u9^65@GDo+vR<^h%{4_&+55g-m ztq|t&+aJGE9rU@*(SJ}NIn)XAqu*Q*tsRoPO#~4l_o!;+Hyn8yEF(eYnDj`yD8U2T zF_AS}9I!z~Je__-EP*sC1rm*V916BVB=K(`2GoaLr#;?3*X`TUgnC&S`WUDpSl&E< zV#8K3te2%F;u?#CIkv0yL-&g`bbUD(g&d*gv6#BeZaZ_jAM6Sr>~G!u=3dWYnV$5; zHz~67Whs1UIUR|TTPB(&!-VWq5OONJ3@%A!v8H-Ug;3Q}O!2(U4uF2PDkR<{jC|vG zKW$WuE|ndH2Lq7^*gn;N> z=blBLb)G?|oFklVeBHm%c5!NgANKF_2JF5=LH5{SZ%psp@u&_JeM*E4SR2}rD08l<0n+zEWfF6Q=kUo$ImMw+o>_iI zmN?l+@te5Vi^eFF^~ix`ydMZ}*5bM222#Ni3dG|SH`d7)XbxKXp1w0Itc7S5iKNV= zq4^7tZt0-lMnQ8NEy(0Uv<`Ek5@<)Q%<{u!rD?X;R%u6bBYt|lbi~FiN}{2;WI1GV zX%1-$^6X&=q0`hLO38~n?=#?&uk%@;dfkPtv|X-Or(EYg*BL>tZP3CkzZTwqm|yK> zxYTgEHNT#>pANY`CR=$nUS5YpYJoo6?rZIX=5lbJ?@*#5YG4g@tM+aQg}U36hW5$` zVJ0S=QxhP*x2Wj?)~qqUb~C8Gvl`JtmQrNumeoRKBb^GXSN%|{-L3E~MCL@=TMEs` zC;r01c32S+)(IYlQ_?8(a2#b$@nMW(P{Xa5{$y---vtJ*wL}u@d82iSKA+*obQJuoKApnmwFc_%1<#{)OEaW2Zv47nEx z=rRrhV;kFTj__U>8@7f*r{vAamkpi#P2e8gYwdkE3;8suQ@iiE z<2l8O-|0M3T;7!n_yioY>no16hFaY|@)et76#J__btX5xicXo*S@_Y?UfNDM6DAWf z6aE(>0+7K_aF`DAlk|BGg|zgEz2OjS8B{hyUwbgFG=foGD}|Vo%=au?ntM_X&oHu` z%!62W2eHt;C8pr?fC<#Xrx_)|vapz@!EO_bAbIzP;4==I)qPm2`V${p=f@wr9qY{V zQ{9`L-kwWiuPyx8??1lw=eM>#e_!DLahWd5>FWGUbFYx)^DJ*t@%a$8%cYYK#U4T@ z7?FmoFd*M2tLU9pqJTJ$?;Z67Z$vPS!co&W+(&aH3#tEORP7B#{=g2k#yrpw9DIbG z7N!iU%MED_Nv|5uNR^OaM^VNfMnY-KG(P@D=%qAn)UuTYwrL#jmZ{}nDM^4p5YE0$ zN`Y{7J3N0Y;_3b?UZt+RD$JqtoUuPVk3j(XD>|@j0^%;G64R9PP+=;`l*>DS-KOsK zrBiI{y1l$IIdF%(9vk1Yg7d65+*CI9qeqwFV@_@VdCqLMQK~)G*-}efwr_@+n7#hI zLr0Ig(ifLA(s2r`NXf4;FiXHKMg6f&Tb*LS7|_4Qdq3=lf5*lpeM((|q)P@(OcI`$ zuh9tb%P^&>Gs~iM9m`Xzp=>jHr@7nnl4oB%|Fe~)^-enZ)48{Ub3UKmyYtvu+}BLc z!d3};G)xd4_q*ex3eDOO^SmB0{V5zhy#K|e^R@x})ZM+uk8H(!jHyyJKcQNG&@oAd z?bw$7^@AeaLUkT7CQ-!Op>B3$hG?w|l|ojRnmJw3*n0XrK`gn+UtLWq?&k)zd$0U!)YQ zLMibM7Jq=&JI#qEI=6cJW|1yj&-4_br+VMSc7GbOx{+@d^}tfJ0?2&;R~!q5I1nZ{ ztT47alV&CXRqEd-)J;qR1hWk3j z+buW#?viNs@qlrtiq+!bRE1$$0R?0q4y~zdy29mh@tGc9R6@#02*Xf9U&Smr+vd~M zlSTBre_YtU*PRm^)M9&7Rx5>SB?nNn6ZnuSlykg{hDDu1S!6Qii&JRHEN`sPx&{}d zpICef67|~$Ap*5}++uEthx*esgH12<{hw!z z_dcE1f!*mldfrH%+%2~6c^>tnKYHQw^m^9bB%7$em=jB{b4qyI?hZ}qziwsqs8#yt z80s^6qW1UpJ63Bx>ArZbEcutmQ4rQ74)gFsQO#PeNs)%cXP9#B*zkJ^S8V4Bo;KPKNfAIyY z)-&c~ALhV3@e6jGh%FF*!XA3UJ3N^wD3^1xZb=IYEy z20=`;MUTN06$sr^vnG|f47)8XR_RNB z!uk_>-{{MrpDpz$tWK{-R*XKQ7MNb_NMSC#RM1dz~J`&+Qnm)B(2RCk{nvbpcGc05I-?Ed|4Vfrf&( z0oh{0Xg*}L8J3X&9Mu;d`V5AQBb1OmjGU~&K)-3(paEU680J5Let4#IAzm|A&YKqf zK);=u?K!gd_zn7Dz9`|y?cSBhCa(Dp?T8XOsP+2^TvO^surYY6iIBlOv?Dk(2X8WD zQg>_*u8qiCmj}pT99%zA2beiNeNq`X(9uf-cYfgo_{lE6;T+yqxF836CyoD^x>*Dz zn|MvJPrcK-VEeh<(|%`f{Wy`N^`@oZW*He=T-b-TcI)dx!H7z29{lX)n~bIA z$U7Pi*Gpcd@Q1EpjFrNA_~d`b~jf9l)Z zGmJSt+c|=Jh*hYf-ehxiz`D8()K~WSn7PO6v039xSn6#h)jW z&8CH<i~PU0ywYAe4VgVtOqc$0E?`s@@QgYe7C$K46X~W z*|M1{&%?>}zo>hoGF%%$pCBttY)m7ye>bWe*fUY^i`U6A82h#yAuPB zw6^Q|)W-5D&(koY>vVXLmdRXhn!)-RB?Dl6=w;=^-D7!#uqTXszGq=sbHqKjU5%D) zwfF4&YY41c7u!b>-WoU3GI$A4J#9G_ZvHds7i^SabB0q3@KJj8HjY-By&E$A;;5?| zYx=4VbO~?p5JxPmgOOZ&ZcSLtw4406>%s(Qv)`V}-DfbhQ$m%(wCfU3qb*z8jQ$Gk zmQv&?+*E)^f)cK8O&=djxz_W%<&8M=6ULr%#~7m_I7|U*?gK-4^b-T6EmP5iDm#h% zv?+Fv2W?3%vUP|W^N8*KS&Mz9<~&q)br&XC36``>xV;1P#6s@_DOmztH7Hh(%|3NQ z9VG+)o(i*`F?I+m-3wVm%_G)p>{Jd0SF^cve8xlfgd6Y$`w1^eoH&h?SQh@Xo$Hy0Z=SgoLuBU2b9K~TQXDWq;q zUDZd-!%pY*le#hyOFD$$hs3bFHh5<>tVdQ@^FIQvtjWIC+M28wau%Z{I=wbJBPJHt zTbo?%aHRz!YPOG?OpM!S22I<^m85116=f9Y} zlg(Lad8U|T%md$Ol#MNj6Sx{WWG}g4@GzQD5+Y1aoAdZHo-YlSjNP^|wut1F_!eE+h!OK6GlAqDyr654i!=ZxqFJCAKu-mm+!6j?yHkL1q_3^9O;PJ7&yJX zw$9y|L*{-iC|}O9+w)fRkf~&R*&O<0il>;?95GuncoE)_S!ZH1);K(LVOMTF?* z05&I(&7-r}t+V9YVn1=Ob6llb*Jrh)Zhl#C<6d#E4_nnoIZn2^q;4wgXv-;O?V&kZtkp1+ z1uKBGSuu-5_4FObf28Uoc%#!RdGg-gE|vr&saJ>A}BAb{ZG+ zaJf5~#;>?!)u|2O(MOzJoI&vrO0-Hm2iMAvqTUA9+7-xCO>{l3Sn7Wrv5p#N=6?lJ z58o*cWAi|ZX=C3p$x@D(gL3NGZtc~fIc}|iFuyOeeDn;SeeG&~wd%;<1wK+cA?X~@ z^RyeB2xdChZg1DX&9Ra;#H$Kx!Byd`(axX=YJpXi*{Ld$HbR+IzqiA9_5}6^I zRqOsz1K7g6xqF?`()ziYOaDxuD$a}k zGNBRNl&|$p5X)w0s|&ehv+gch{1T&e?;O`)TxX?;*gT|p?-SSm?6GkDswXSBWw*$P zQiqBLH7NaZ>C(^UluDXvf~vE}&Sz&n2uV^dgx7sTl4GCBjTH|(D-OkzWEE>R@kcyL z8i|MvL0lLGlOQC;O}N?(g~du02Wp3b3W}&AND##jO58;8aVhXbV@oRdpYK`U6G>B2 z>C|mg^t;_>zZL5}*aCLvIT6^qAM{>gmrH`10Q=f-pv0i1vNPM3rbiRYjH7SQ87GCH z9P70%Jx8i(*>a&kiKesc;oDf2L%~mqR87~0bL6qkta%UVh1}dcEUt4G4|IRgyBL88 z|7{%dpMoF;Mi!=jiRAvD3W9|H5y@3{Fg9>DG&6RRQTh)}(BDde7{7y$v`lQA1dNPK zoCKU4|GguKnd4s_K}<~l>ImZG_-_SND{4-iCZER!eWJbWk#PmNUa})kk z5%eo4<$?%^-&ZU=_SUSB=2d>)8^BK@d;w!WR`jzwyX{*M1i{s8N=LpFTkV>Wbv1m? zdOw*h=6wDO`*==ISol<+WQu&PwApgloOJq78(sp-^QmS0$59slV}xjY_fW$)hRvzX z>LYl&++50x;_r0i0rae~7%Hi9$tI^rPPvC`?HtOa>ecF~kw0!3L&-h< zPwN7|M>U0uPPE!#oQ3lq$tBS=RLh23v`F{YeN5@Z$9GnKEfFT4s;3*<=!&v!iw4fN>C!G8IFuzvs8oV}(mLjR1;df2DuOz7!^{*=YpzA6O!ly%tF ztM3W!Sr=iure7WD?J>d!{?bnUkSPw@v3=o#eW%?D@asv!de(Ymoc|c_*w(xCVYzNO zH{7;0#{VqZALvmZyOvh!Hym{QWX>*c3q}xE;sZ;Q$R3`Wzj|W22X-C1!loixaQnN# z%=mw4B>L~i?%#%dS-unD{|xyuv2%O}ZoiE}OpFBV-xeUY?+5=5wG*&%vJxb)^8&c$6sy!bKiF# ztSsz*V?JVL_;>Tsf1EP^YdDzkZ_G!G|D*Zn+d0O;@vq_F1CMX>(TMX`T3W}`=C>Jn z4HY7fn%3hwJ`jXP9|(Gm$WI>_s1j9BFrv|HdC8EpDi)zmIR22Fir#Rc|cnnU)z_oU`t7%ka)Icw1gs@*w)7Am`nu26(s+*eZ_H1w1yL@Kg+t z%s2Rk{4pCSb*Alikx;sY9xHaeiw`Z7)h{ zRDYwoJKzb`yX47W%MsvR#wYL@_16`O?R=C2#2Y@91EB7}8&KvT^&KaDb;yo_z0Tg) z{q^*~HA|-8FT~AYQxknzA2{!RMoM4$UR*ohYTphCXdcLnnc%2v21X&A%UExaFQCbV z2%N24z`1_5J_N5cmpQdj3JoCo0lX8~nw0rY1XlK3) zmemI0$meV>y@=#=6t|3C#WFMXItArG;zoVlN?EBmHrmuRCk8e&s|sOvWD}*T8a4~f zb`UaYlRy)ZG6y{a|HK+%pqbn4bV#W3B)JR&(!L+!7H`pZwRAnDrJ^&rs-u!)O_ZXe zbGzE6tx_544ld`H^DZk}%`0;|XQAh?CF&sHQFYrZD`vmzIGSeEQZzYkRq@hsWN5#C zf+|ILQB>BMdjQ2VC9Zg_t$6zWej}^VmJ2&ZX&d~+vm2GkbU}VJWz4lHC0tWe9&~Oy za{_oYBz86u=a^s8_xWrgly7S#6LPE{qp~@_a$I4c5mEdkL(dCWfwL3)U?sAMJa7$Ync}9 zn^q;tQj{cV5tV2`g^*OXN|F||NQFW|k z;GxIC!kK%GA8(J{e`C*H{WQFBad*{zb9?s%6LQuzg??R-lH=`VmUC+O%tGVo;@iSb zUYvJ8Z{eb;9*Z{c-+1S-%TKuCexFL}`l+`w3g?I3_`0g^b81kO^X(VOK;oD2TQaD}apeE5vS@Oz@`^y$zwUY{Ydau&mCG(!fZb8ra z%}Ta{ogrI;@n^$ySMRJT*>pnB>e1DurduyQk(D$Me^AE1HDyAQJ7Mk}?Gy#0O;P0B z_>%*QX9d(!WaIeiBn1Xbt9=lB22?c5yO?x0>*Z)U+4)lvTn_r89?j#$izfa-SMPg^fl zUDG>Ud^OAYzFKJe>B+~FWO@S2Yn_*_yS--6Uc=hHzUb7cWaFOIi$u>-)y|i{O;rx) z8yg#-&f6P4oi}`p7-swJ^R}<`Z-}lNA|M2_O z`Cf0z+=5o@RUin+_g3tZ@|vB!@RqmA4vfKp$U6%>3mP>RP7av3#*}ZKqKxU}RW{g& ziM}zDg&vD$7H&AbbN8uLLU^;O-NJfPwj?>|_N3fQHBSq8mnwB))`d)M@8$;^p%AMD-KQ5 z3cr&=_^v@cv2$T$QSzKB%E!d6(5`%o6IvHD@&$WORIZYYxnc6fB}uO^ORvz`@T2R6 zkP9AK9kKdS)FlsX#bQm5^O*Cd>h5;m=u9q5KM4+H-(h1Y9Vz-Q&PCTt&1+{?%KcXY zLKhq>c2@1&%s;n8`N@g8C8bxz%(34#H>cc7IkL`Ayl6(M-IrV^n<~F4&n{(mRDHS} z5xP+Apw5SwpIZ${5#zS<$*cNaDpKiPyy0n^>&NXcJ`7tPe`U1yl-+QBS72;>bXpX7 zBk9@73o)&mH&1!;z04?MgJ$wp*<$ZEp67D-2ztv8CT5(wGw9$LJZhX1zmT)Wbp%&fnwu>#Ur`tP9DI(=1Hu#*_ z(Q1#Uc_&cjPxx`_Vd}8?HbfzwDwt< zg^X!=o}1Lq^bbStlfSR?fBUL@QvCFAoZg1~{>L*4V&wZ~tQ%18Z&H7tqB#6kY-e)r zSHZ$hw>0=Nmu!k-O zT~`r3A2fd7apC3n&nL%kZ<#OAx%D1~w{gv`&(?3U6nQJ}+>^b1__BhWS7NTBpNLpn z#C$zFi|1qq8B-ani2FBA+t(J^efLit+M4{qStzW^S)*iwglU#6Pujf+IU7TBHdr2_l;1!inq z-Oc}Oo5#j(jRInaX4}=pFV93ah5f7>-#5*9=IwREI>VnEtX`fKvoyLebl&aV(w)^e zu3QF!F~`NHpJQ<}-rpXOcQbXVv4wGkto4OU3cTh*_ygfH z>(<*GR(B{`_QIOaOPo5dAh{85u^{`X$z07)(Pfp#qatzZ(yfy0;!5t?`C4osr(J#V zP|LWquq{2#?a~f8A%$(bF|D{|=|(bf=|)qp;o^Buy;wNWFXPh8#gu2aK1Qb!{Iw3o zhWR$vv?P?aSP53)9@HCbT>=xb2^RdtO2-j#{ zj(B!KyXGv_;IeNJe~#f56fSI;p_ ztIhj?&u!Y_D0v*C8OUc2F5&QbrD{V-EY1sTx6~y+5(x2DzZkJ;$Iev64?%aHdVe?` zK?%9DZ&uOi&6(C35os}ZuoqWLdgLdR5DQipTRbh9H@mn^gV?B>6m_zsZMU%Hwo3!} z?v|Gmq7}8US#qQoekwm~rsqA~6}?(%p+~UlV9}v`U#Hrit#7*gu12No^k4C_sBl2i z;frre(8_0ZmWnqK%MP2t8#na7Uf+b!{as6j37Olbb?|V-v z(Ov0mMt)+N5aQYxt@Pof*I>N2&NZt?=3{j7+n!|A^KEpvtK}48;Ba=^r<8khrg=OJ zs@7W4mHnf;8OI~|^hMH*;KGSdCi{Mvvc5tEOAwS2`|fixk`!}bVMt!V$E9X!>=zm z`@bfWzpuT;R@!!1iBJ6E zbG=_u-dN5)TTs+doVfj=t;vdUnb*a8BKXcelfT(w)qP%Hb9nE4Z@W^5 zZp5kuPec{!&mD`gbF~k#Gbfi=#M?HS3llV-tlhFcD{!#d`%{YhE3qwSb{{^ARgH93 z;VCqouD)#ii79r5ueNnBk1ulyZz?z6Ub<-V)@v7eo;cR!QS7#5eo$ogs z{?+K8$F{|kDz1#X7c_pE3f-DV=hjbnwYS<*bW!n^6F@E#2&c| zdu1=wZ9VwI@^M{u3;(-mKR(9tH$`P092j&7Kb#gKyZ2E4^Dq9Ngek*=eO^bpB4ygi zd$rTzUgn)|d6)!Fshr`DA1XT(YIr#@F-8#QSo8Yj_Ay}-y`>wJ+Cv;vWwt9xXqaJ- zzSCa)W8UUY0nxSPI~;aWt(3*f)`(;5S4B>KGNtb1@zRVl&m?wFyIwWNb8x4{4)gpn z+5MGXbcC;0le}k~>&J7#oZh@w8OOd*XRLKp_e=X0&nM{D_wcoOZch)0 zxYv949K7rJRDPD!mKzC|Z7Pcj6HescHOkLjo^4g%AAD@;&3(SRmJZhIMDh9S=gmkA&ZJvJ&FB#Ce z$n0@+tkQxK9AWDEN0#pOc80ztisX#!X_895ahdVgc3fY0X+nHOrmy~m!MR?#mfgMQ zM9NJpiYj~g3R_}6ZEZ2Tvci1F9KwN;6yx>fCrb?dT&_I5m7WonaZEmcT${||p7+-W zwr1pDUHSX2S;g+oNI#evnfx};{6nvBcug&r|mi9Mv9ZGL)6VhDi*PY(m z(>bGQ;N|M8F|RyUcJIYTl@wL;fAqf{H&hrl%p+Ih-z}t+{)QjhoL?(k+k5)J=Wj>7 z;=3~IwU&v6i%SgNr!EcF(APLjSoLAce%^IX-ZyXc+){hB_VhIwE9{|ncI4ZVgrsoX z-dJ1v7xRbLXnpsW><_q{H@bNN~bgSw*tWEOYOj{rQ@U^T>YXjvLhb zGbAoHop&vnpSo`Ea=FMxxo+vLZ@k{m_BwKD>7l9}`O}4Oc?UV%dlYNBd6($eh{QmP z_ot{A0<}w($w6jz0tIjInE2dG9^-RIPV=9ZUuhL4bVKHI#)&)g)1nL_S1sImlr$|Y zw8bdC>)H#eol@D}z3u+?y?g@&iSg z&Bxh0k1xdK@kB^6_TcKLaZp^D#4k6I+!@l4G7 zRAgrHdEV93RpeL8OJioNrDS9nz0vmf)OVD;ghi#~6fk~_;cxN(wJ7x`+I&D6B+ zS%WtB=2fbdWNH^rd#`vVbh*<#D|frQ1h=!H)VOcjLg~hZ9W`0ATwddZVx4v5DL*p= zroL7YGAS|iG%6+=E7!P)FFz<<+d5WAbCY%ikKp*9vxHpxBX~+>CAuz3pE`GPDCsWm zMS^*1`0b<&9$3WWzNcO-GvismR$TJF_bcFB5j!&mzQq7XpMM9*4XzNCT?pV z@T4jgi>*Bo+EzRHd$QxF+GX3rcT{IBNIUAEY(AAJkkMMJ5f**wQ|-juwF~xYy_#XT zvAA`TZO~oI^SPIAwi)l|{bbK$;<>^&?4$91mFnUNH^vU<3_t?a_V@7A2Mva~9qqJV z5wJbZA-x)RankrbuEVuv(yC``@!uZv5AJ+{`%wPm)2yy2_a`5tJxL61!#Vxvc zw=Zs;Rb*)RI;)7g6ZRLV703B2zgAT6*DsD65)YU^nX>K$F3NSw>*TnmD{TVvFE^BB zi4Dpg3vb%7HnXBBU!^!s_;dX;;z502M9UVfg za>t+V_8FLy_cPq$&drO8^%XCYNrf`zC1WqImY(@#oxqor+82u(*3}A!tjM;PkzBcS z`?nvq2Qs>;-jkm;42Jc&}BJ^>vHYA5J&8(KUT{L%7n**X#8)i{6fV8L(sSq6HPR zD~H-W@e96G{8)THK4spkJoj-weuStd7Th$?luIr2xt?HrM~-a1HeWaI%Dw4}Vm`l+ zemm}nM4U*~vw) z>-wwf8lUbZnD1F6FaBv>!g{YoR_dy`IZFqcrEJwYHt85STD(7>;<_x!=K4-0S086F z-{~vn98kZ!)EnC<{7yE@+UV`X1M)`-`sR*{+%)w-#f)(?4;`2pu>EjS=3<*KGnGz` z=eu!F+jmE~N3Qj;yDc38?s83E2o{4^a0{*!=@88(&i6U_bKl;Oy@$@2&XHW~EL1aR z!{viwcMOAvq+EKGFpob4jWg2{PxRYx*lPT0XJxrf0dj)pregSFj#nRXUFJO3QRSPE zO8bG{&+DJY+FV_rJAV0BidC%F4QE2}t5+)tIS%}{r?q<9X7Z5U{+M2lj}P0?FVh{< zu=M8J+(}+Zy-!@e`BOs=Z}IcFvi#9AQQyM6nx($UqQ#=Ves|Vx?Ao0<&9FIJZ$t3Z zCbh4jZx%Hi_8xyMOnBzyu>rR*Z>@{%To=!rXHy%zt6cP6lZ55b;J$tpok@)Y&Wn0< zX6J}G%uYT3s4wNT(}{e>E8VCy{@q*QlzYaV@uKGo z3kP3Knq{gR_0{;|YoU2vt?oIGKeWy~)t%TbcYA)K;!Oq9&4!=Oe^oftp1Q2l)>=*V z(~e3X!m#!2V_SC4XcaCszDt>Xc>3#Ua$t#qWOeKE1v;E1F;(1B3?dcM@Qqcg?tiD^? zA+MG#eypOiqWJd3rFEC<=kb%SYSs$Q%88hHZJFtt>xHs02h6rVyzr&`(wA83teumh zv#TWTJf=?9DlK)%4*53DtU(tJ1`u zHH85+Pqc(RHa=T=`$?~xs^wr~#(?AcOQ*E+FnFPF0SjCtKV9nyc@aOCVm!?x<9ln_ z`Oa;Jr>aYaIVgS*S1s{%UmkvSV!?KUx5j=3=bi|2^RyO&Uw-h5 zhIQq&aJ4fTxeB^6c=<<{lI^w;dls!qa~7!%Z`8zSZ`)EN$t7PcKmN z6s2sBurf@jdw)#FXs+;^dx9)%Q3 zPDp8OSW+(SkY-Tss6Nype|trq(uTI@wxSs;e%=?XOT*`WiLUcE$uP0>+-EYo##TZ9 zQrVOCdQ96>(Kj;ro7BTZ4;ll zNLkHy@%0TH@_*Npoz{6Mew$VNDjyZ)N$cuLTw(@Z)~&i`?t6k@eDGT6=b7Du@0VU( z6#d;`Ph;3M`xQ+j%|3^Ib=muUejS7#MEPZV9yQ6Wcu<`8O{YJ)v)S%;s7}n97aC)2 z4qVqr%kMk=>DIz^Z#*JC_4zqsj;DQWZS?y-tH#;>(2m)&Y*Rj%%Q?yIoav*g%zt<= zfHFMEYsep4v-pN|uj3J??t(E@i|>E18pyaFVB}#SwDL!@L2=k3|E}J;<__Vgn#D7A zH8(U@W$DQ97JnOheDOQ);`;;lZr{0IPF%a@)qx)EJF#CI19~j)+-%;f_U!6?&xWh_ zv5jS(O~D?MJ9L`!_&PRvPWm=_D228>rt`k;A_XJOo=dpWz~+jJY!HfN`kUnIup z8$=qYCyS*VyBL|i@!0C-ALW57C+FN;{?0D2XuDwf7*V4F-}1Lx)(NUBn2Y&aNp(9Z zXqxX{&a>+D*So5A`sPV#=cu?TMIH{zj@3VyBUWYGW7#O|W7ZJZwD_oP^sq}^wVtHz zgd-haI|^KZe>8URiTu0uE>5_Y{Y~>G&N;?1M8`M+icBWr{tY+dI6VPMl{wt3?q+Id zW6lUTgL9=Ys*VnBii(b&CgL~{-x9}@BtgU(1cxa^)L~HK1Q1GAa5bkoxQS5M#+;$p zAIsCA;LsQON!e!g;y-zIz=@5`i4b6k}BoKY}A@> z6S%5koMVAhJK1JZg_YT)V)e)U`X+?sj((f?wC)fLeFP5W8r{usBAhBYX`6IGZEjPV zqmZVeJt1sPSN4~KvQ{NN#)2!?eJ@m)VdQC6l3w%rSl+inwYtDtIWj#H&%L{EZY~9#(TiNkruCi6jQg5}!gq{|@{`K-n zVb}c!jno^HbXrdPugIw2e_@tC_xZRVOH+sK7t9!t;ujX|cxM&2ts!ql($T2-R)?Pv z=J|Eh@J&yD`<*YqAVP+vUH#^xsx4xqyf)1)J~Hs8Xyb}9qNbd>Rn>)%6I##IFJ3;Q z{j3_78b9!LgRaSJtCvsRcm+D*ecE$+K7WW;^ID!4v!BOPz;m+B+GSBIXZ&cNuy5Ts z5#Ru==@P7Ia#}j*aoG0k*7zNV$pzbZ?!Lh|x_kTWZL2ab*fwF+EuLLNPqoA-b(Mr6 z%D&F=RX3lC+|TZImwVb2@;xm&C^9>1zYbsXV3?CUp@0~^$k8vA|6F2lC1zR8sj!ye zG53Nu_nr$W33@)T?&r0RH-q+%94)+7U+X0G-gO_-)KlBF1T+V;*{RX7JeMog1!rzcZMx z#y{Y@ZH<3cw=UUey`i<4Sjx<3ZM}EzOjT0k6DIFnY3@++<>g^rs;AU@!~4$j4PGvI zE*!Rbc>#u!+FM5~2ovj`mSQy*Go!e5ZbR(`z2%Nlr`AuS+ImgfP2FUBKk{&Kv&00R zZ@13hby~|GHi=*Rf@kRKjfs=Z+@vlX)>E!jpA}UvWVB&P%GaxbofRdQq=Xaf-tCru zv%6uk>c@!l?USnawg8d9^YmL1t)AhtJ@hexkk#B_P16V-#8}{JX`tXo%P!SQto>#-LllD<&Bc)bmFuQp-}3Sty3H3 z)U7vJYGQub^QjexlcQ(AhH?}rtN`Yn@h$yzTU%#PtvNZ#;tHhF8y+G5r8xOa8d z5!ZMGLn>SBu9t2R5)^VVELXi4N6O4ne!8&ESZobg+$qVO<`wl;cz&m)IR*So06)t+ zEt`c~%2b2z)U~QM+I5LIk~JR19y7pyF>HRYW@-KX@y8NV=jgt;Dsb8$yZxM=_?pIj zZwm#wO~+5K$Q3ZqxS{FRZ2h@LZ0y5f3ya(X^DPSxtpSypnl=1J5Uz14*^qaG~sB-*? znuIlX-z1Al-|ZCK=;>r`zJB4|Wyg-?8dL8{&tCFy$I-!0)RVmCi-tF=&)vRLBzxA0 zRbLwKUR&s}_SvTPX)3!^(lF~I$7|Mo4X>Rq^>}m5{9C*8*9w~&6z+SWu9uqZr**FN za^3M=g-eYvIo4)+dcD>zv!imXtAd>N^B*?np(91yd>k&I_j0ag|uMv`fIC>7AjsB%-~;xqyZXR{5!Fgj*-V=fP{vPblh7*=!HiijB_9Q(1vCVSFgj0bxjxRA^a;@VG6l2peO1cb{)$%IR^FQ%)Z^ zYKh@FB)~Ur;sU;L2f=5%DN$(hB1_`5TTzwRU8gItuO}ycRNNH^emMz#j)H_$Ngown z3nZD|byj__4}7kVt8`o9v>*Is8Ax0W5}#eIx@G>JV3&A(iJM{2%b6M}-vT4{#4V#H z+Z^(a+o<0*h2QLXgxJFko3B>gQIalPA@=b)FRp3bT6alXiyyThB}CSu&~?x>v+l^XTD>fd2>>sz(GGc94QtNU1NXq54~YXmlzx=uayJxFoOx#hPmX1u6rTT_Y=mom|R<0|d@Zk}dN`I|0- zx%P79{_SPqs`(vdQGq_68-thV=-kPsrX*FHygPlTsbSM*A-nG{Jd8ij8?a1$u+ub4 zzt=g*dmr{&(ZJTgjn9J*t+CdcJ}_ujJ1#p@^3|60o&n11E9S({>5UKx#s;69p!-@1 zpZ4HK+VQTJU&dtn&B*S^GCC#Ybgj&O6)$nis~DGljl{MMGoL-cjq{9kS-)?asLo~I z-B+>_3DtZ1wx20oe73>+z^jy$j|Bdq63Eg?*L72hUp_BJ}qq~e3UjOe~r;lzXc3hN)u)4G#) z>qPT0>bu0G{?}hqZ-gGXcQ=2ffB&SCXL4#j`?YPO1BAU+%XNOudTp5DyQ<0{tN+Ny zO*Zycx*ye3FTcED<&UqTNLDYIc7bp`X6wc;hdOK)6cBIswR@%KCUlyZsr>ZwcaOEW z=g~OyDZ_Q$+YANC@2--fW)t3wm)MWFD?8S2V#PPviEsV@cH&OtkJ+rm*97Ui>k6yvf7HSgk!(D6fboZNy&n9LJ?=MgE+cEiGfYaHCWS8-t z_f1!o?~<6aLrr_(E|ViTLo0azbIy8#Hh-^kJMOCpGi9J zej@jTRa%0E&mOPpkCh)A%0xq5i{iI`&N^jxA*UkzUH;c->qjScp0{-?zBq5|1^Izp z!};IOZt;EHVED9s%GviB?h^iXH;UZbI*;s9F$k)h`NQ4wa$Z<|XNCTcw+V+bWNS&d z*J^v?YrO-8DMdHtq?w9t+tgn5E%CKT+@t-uvk&Ad>Wm+&BoK*HtE5sKRonwVh|8*8 z7p&!3s`sGUOJ<|2-5T++=OUNCNPh9?(Z`X`7@0q@4+9@h&dK^JUP&s5v=@Kvx{t}`JljCY2o*V^KW+UB|IFGQrxxUmg0(sn!Co?);@7F zdrwx#CXG>4dNCz0?Jd=NzcBxX``# zSh&7^=Z_V)WoD3WUoM=mvFqy*i{>n=s2}bUdk6DNtYo}&{QT5a)SuO9s+mWX6ZH)Z zwz?z?JkqqCy3@-J`|?z_|l_{=F-H2;B6OInUhgMC%z`qcet zam(fX$n#tPUTFsYsa_2*gdl#=UaTgEJOMSi@`#z+s^W{)-cHfc# zpF!WOcjJdUV@>7n^qG0wEZL10DBi8qVf>*e*#2kXGV2=-RE6{t!-3A!af=^m?Gjd< zki954aQnBMfwCQ1yL42t%G*mN_aCcutB?Guy0+dW(r@MMTfsTySH3hA{HV*x`B2l- zvD4qr;dTC4_4~yE6!Oz=H4`QLNY^@Fgp8BAV&UZbJ?9`HDs*vy+XZk&61hd}e)H+w zJ5?8G?rNQIG1S~$_QRxDF^4O!kMI;b2QAv#kXlXIR`vMR4-MIE`_?Sqw4^T2;S8VP z$p$Ll<+3Z(OEzKG^eh{D0#e^}hi|1WA@znD4jF{lUl_L5?CflPzxh?w{h)xovE93i zohN_knX*>#k{IUD)ZinJB6G*@*p%+VpZ<9FyE=*NrzwW#-Rt)r9605E=H<4}`Zn1) zPA5;zyeua3xq8Wg>2VKjY8}=-YVXP>ny#sQX*p%qsm@E$t%~-SlV!&A2Ui)$+;2^u$E z+B9#^`&lQ~Ud>(jxP3`uFvdEtWLNsKr^4dOIge*J%6->&&guOSWO$&_vOoVR)ocE6 z+JozT=jVRAl{7nwT<_{`c;}$}^t)M@niw}(TNzjFJ+1m7rfZ(Q+FcPMTR#8lz$LBj zYued!BMQCDaZ%c1eG{&0-q?Ls@R?10y==s$y$-pruGjbJl+Tr+xb`&;z1h_!8kOg` zwz4<8d<{Xp&nfEsvhu(vrM2@`G}x0u3!hz9I`%XwauTeos|QawXt8yUpW0poO9mk)6V)9ykqpn%QNmxeIKiN z_d#y@xQMe?Bq*b_|3IiAKr}BJAMwg&8n)=KC>_2 zRqin{WrdSVU-DscN=uL5UeWUB-{#1oBMaUyJ#Cf0Eh6Ne|JMolYd`u1Ol;e? z2xscYZ0Iz1r<(ZhK6QTTSxTnUqulO@^f;^Uj>O4ZbFE8)E)F)B@-ruvNN9cxH zUY?cA5YDKBjIF6!b#d09=Zj3ALr$MBZ+SV{+bEo&*OwkWypNJv)5Q}b-YPR)(%-v!rL&f z`c+4jmx->gt$ECq462dzkN9EV_mM{ZA7*%;9sFtZsQl)l#Eakad*bA~8l1}Ck^ zZ5opJJXSb&Xrb54p|O`80*hUG)}8z*mas=nfc!aV_Jf9wcaO&%zcyy*@zXoiE}bv8 zxb_qTl%7kRacrnHM{wi99}zW~?L2!r;|?ydyE>soXV2k19`2tvuQ)9t61Q*7;EY{I zJ(SiBuMt?*r1FgXU``9>wauV-aL*gniT;z`_c^!DF$_p6*dw5PyZD>O;bD}u%b@G4g5SP^v%@!D&yim>7;?+# zNpOwZf!jK5_Wd?LH}`k6`Cm}qHc=q5;>geClO8z5xZnJ`wNdPF+wSFCUR8cNA|y1W z)%nzcZ$bR=mAiyHl6!13_w}x;-Ze`&z;Sox^sbh36F(&!nP!_gR^yQhA9;VY-Pwpq z;w>{sQj2Yd_I%j6NwB2A)=AX&OnT+6IVYWmkDi!$@6n=CLE`CsQ@%tVpagy*ojxR* zpmt!wLq}`u!AoCv@Kpz>`)VKP#xD2UdVp_J2EitCmY93}hn9PLZ*N{07e;KVc+GSA z`A@wAQ%epG1x_?SySvxM&BjYkPDbvU;?Fsx>sk2;@`uA#Nat%CRUe9a9}yDaX6-H! zowMEt^W?$`%oFX3@7LB4+?GYECzmI$uoS}!V+|1#Cs>n0*R5!~#HsR#Jg^DkS!k>4w`QneA?!O>$(kw;O zq;+?zwL{xNL7VC1Lv7#cUsYCJ68|DSQL=Kw?&WnADiPnmyU9i?M6cW&UH4H%I`2Ah z^|L3lHDt1`XWls(y`CIuA=mDN(CUQ?<1T(7 zp1vU7O_bVac;EEc+h*DBX`a?!rTDaMT&%~PDXUnvU47-s%~MOd776b)ay{67!>P3E zLIgpbxWoI@ncHzO8rtVu^<7N&_?@u{F;r8Uw%q8HqMId^nse<+`(WSqN0wWta}*0d zwI3{xo?^cxs@ZQ(tWQJ7>{Ua#S*c)vP7sQZKGOBMQ)9)+=rc3KlP`X1|FSr3O2b~h z#LV%fnbU1f2icqs;6L~J(3F&WS+m*_#`-Jp?N)pxRi$@+YjJ<}`0vLbE+ij0EovM@ ziKD*edFuU*GIjMf)8_GJPn&P;|FBs=!FQs+jnqZGO|8Wd^9-II`W86hq2A|9iIXpe zkE_2K`2G0fpfjfw+m7DwFnCw4oz&K6*Rg7mvIcKYqUF&&l80h-j?Z${YB-}XctWFo zUtDd6<&ajJO$#~0%$3+}9WGHePib<)ousL&rO$0iUhv>&nRT({E2E5`G0xc&&PsON zzDA^I&vgu&tG9gC155Q+q>TP$sqMS=#Oq%!^)1<>)4W>qu(`M8%*SKd#tI4DGH&mVsDZL%*w$3NE-F?`Wzi{|ec52@`<3kQLgaZSo?W1NzDa0II zxJL9fU^3xKxP%VK`*w!9b}w``-SZoR9D)CSXDOa3_4wL=`+YI{w(D)#b{sL+Qe zza|?S7WY`D*L_wQTYK{Lr=7AxOLB%%mdJ+lzgU+&G=JLBZQEHc>@x_8BuS}}0V7WN ziORHqk&>y4osF9#BT7UZ86+Y~!9gM^5F`R5DI69@`sI}&B)~+3E+&BjMu5o(Voge> zP8+B;R@QFNiy&LpK_X^iB8UK>iHQUpWwapCiE=1NRMg=WyeL;mMKNLf^1$bnOPp&L zANw*^1SeEAS@+zeMn7jQNt;QDXU+W$2cuI`o<@HB&{}pZ?O?P=Ugh))-`>ytI`2xJ zDgOO!qwfoYHuD{$hSyY=5+7`ec6frHmpAZ=m>cA%?QQoaKqW)_z^AfEM|p6Re|OnS zM}fOfwq?qGSSa1}Atwt{Hb!@o{hBY&e%`UmYsq+Ro^`i*rlxoBLXy@E-Pa3UC!CrR z{{7Ng*NLjbrG@F|zdSc;_D$_dR$S)XPMLlu>QV09LqaZ!J*!<7O3i!ZlQzZoTntZN zc<*7~Wz+X+>z{q)s&jHp_|&&kJENr(@{e1FZL9iOcWtgM#vr)g2UD%!?x4a&Wfu`fN=wQ(r(>uVY5M#0{nD?eN7^5-vZa62=bm30B~-aoCN z@8v{=Lx-5n?q+V#FZwR-R5(@9)RhVa6){ZK#4=WdA9))Hi3o^$k`U1k2Vy~z;5H9h ztOyS%u+R^nqtaqV5b+O+A%Pzv36KgYQoIBLAQ2J)sSpqVi4ds|M;5^Yav+OaK0u@i z3KU`V9St08%pEPLaF7WdI|60>Q(sjaASps&Gd+wdUW5RXC&5=JIt6J3d20HNWp zfWQdKhQE>luaW*$5~etUR9+BSqB>YOn(gN0CEyt`URhaMHv>7+?##h#a&a`@Om#EC zY*JRm=uoazcPh04*xY@}M)m_pHB zs7C?%r33*>pb#XnSV<|stCS+*B&4J$l4OFUB!z^R+K$mTHFL#mhI*=tySW=Jdsh(< z2v!0u42p6UfrUlX2pyi@NOd!{Fm*Hi$5f0rYGLU7ViM5QzkxQ{b)HV9=C)Kf5i_cl zjf32hj@*JJA~qIsON>Yxu^XL~sMa~r9I`Am;&`urNMV78M8#5S47su!ctmKS(W|__)Tt!wVRuhGzR10;UVEckZ^Rd z!r&+r3I>bE;PK+%32|312RBnsaR=9>P!_a27!-iCi; zybhQ2Pu7q`<}OrIH%Aw?McIS)boDT`_Y!d!HS-bq(ViWlKd2D6T}Gs_(kW2MKT36Q zm4F*p!rajw(iKoBfuT_Ft2F2}7VhR$7kMokGZ(6krKOEI72tpbUIHsY5Lu<5pr^Ef zOk6F35gGY_lB2!7yMv9Jmn@X$znQ?=hf|bQ4XG}!pn>FZ5|Z?%{!N1_0xNbzO*pL` zFkaTR^E7n=wZk%M2cDBwqP32`qobWXxM{LQClr^7P;lSoyD42O+zpq~8a?TwBW zHkMwTyglN{f8VBedXC;7`Rp$=Nz*Rqzo5Tk{^{^ED}_46|LgxC#r=Qr?|&8fzpWYn z*CPLGk-wyY|C!cbQY_cm{;x&2R^4BE@qaDymlVr&w*PApu2uJ!Ui@E+{3XS5o$dcx zglpCPr5FF#B7aG-TxZMs?|LOz&y`!^0j)-|SUDfTL4a4tX^W{UU_}rttYY+)c`=(r z;00Uo#YzNTLtb>t2Q0LcWqr*=BVZFgRH8>lPP1z&Qvi$EWP6m2rS2%ic z{y(ibmIU}!zt%cTvVwvOf2GMm6ohTz|AsUEg1wO_AXvnv=IF@7f2wvI6v6y;;ZO%= zqjeB%+9X2bCvnip7400&ZJ}p&}wMX-Px`j$Da=_$d_50iQ5hfKNCK13uv} z5BP*s0sf8*8I2+%3`BGi6$e7HM}2Wy?f{jShoX?0CN$<5 zx>Y!VNmgQVGCtrWkWj_kDkEd-zXVF|i${VLi{d$fO74qC!WE0++2hqnoBSs%JL(Wk zvq?B)t6*ni<$zHFkw2;ny+7lSRys1u{1^0(giN{ufGN`A!6;J%(R6kohR_BKFq}9n zY_u_=v*J0yZtm>>3Em^r07EiL4RA4RfP;H1r)>)W@Jt7F+C~Hs5x5fqxTb9;0H1U? zhqZ!+aj^G+T`SRW4Q!kM0{|!O!yd*7I1&oR!8Qzb#UqRa9<(?SVkC@1TQ){o1}82o zx79`au=MIe9fUs8B4h#QNVBW^pQ#@0(=w}`zzJA#uL|T)!J>G`D%tc4*ni-@c;ryQ zqImXL{in)D4izkl=NuftP9zRH9~*E4Hb_AB1UTEjr+?&7L014I1uKjMqOF#-_a{QjOAkVC}?HPA5|0SK_Qvyp}Sp#nyEXh@(t{xI}_-(d`ZKIuaQIIbS{ z^l3H+(qV0*Ml=F@%%*i60>@}Q%8-E?Fo^6?Yow_V;c3n94j4paH-R%@(u5*1k#&j~Ja zUpx{QSrpF+GIC!$5*b+(&j~hiUpx{UnTv;WX44C~M@JaYKu4p&1^A?+BZ-cVBsw~h z=;#Q}*MiXzoV^8qBEf%6L{pl_|f1I&Y4XwF@|EgsFpa0*~M>(EkJ;38;xRxG$7l{}?&32B*<-D8k6N6xeHl z@EqY>*fa_ZjjU?R+5Q4RSww8Fg6hj^djXsdZ!dr~fNm3TwJAHb&}Q7Mq~vUS0TMQt z+JqCxe&lnedQSUl137>xuSKD4c*J zx4LJFlrrfahvftvxi24ujx5UO1Rl9B9|eyr%I5?hxi24uk1WdP1R%LD9|e#s%I5?j zxi24ukWA&nIkV}C+#@9I&?10e#x{f~eW57-W1^UsL=KR7JsND19!!wpoTc3#o4;i}G@P4-Zm$!V2lHQO7p znH*LF8c3l_eAo>mG)If;)KbK>JAprAyUQ59J4sGXmc{|`-Ia3$6e>yZ)io%Ogaj>8#h+`$BuoOlY zN9}6CaYpZ9r54T%90kdcUPb|A*7P2DkN;n5J~SXRH6PQdjYv`)0(xjP1kR!7mvAhJ z0wc~yMy%S3vmTCwV^{|e7&GV;NVpksV-S33mH?qY zgW7|G^}*!EaYXXLaZ9#f0)0s)C;K;OJ~-MQb*fK6J|Z~Y1m@=9hzj%v0-z9ug#aA+m#i9#Ge}3F2nzw& z`_yc#g);$AIKnKz-{XGZ7~~In&jN74pnu>P{0|(10D@yMK#-#x%-Ugtb2P7!bEXpe zea>LsgT{G|XgWA<1wgMavJwFDxc{04(2I(!1mFnIxYq!3Rgskd9IXX#F8~sySO~xo z73U9Z0Etqp1mI*{^$!Fu|GkC+`0IbP#r z&+`P{Axa5Q#=jPVKDKeI1T=QilmIWI(RcTtq+yR^NR|BNdh4%FNdQwfln@-DIrl0- z#m`~8fK>ujp2L z8}x@N89AvOg;n*(9R@kljZg)B=?e9E3pwa9 zmk(=}P5u91%wtduaWw1)BOJH}hZa9$@NjSp<{OT|z`-#nI5-9e2W2lDVH=IN!%3%M zKjz_?6$WpT|Fy!9eHR8qPQ(})p8!iys5-MBROmgH+d89%IC`BSKxYsFkmCFX@d)?3 z%%fk9apC;lG@fE-*{3Gi3Z65P*&IOvas0C4O6 z8ZG}MT*%;L;%HPWFuX8$OE?B`3CCb8;TV)99D}ojV@X=V!F&AK$V;12am!vnuO)*~ z54{w`5s3(>9U4eEfe_^QhQ@kU0&uhpz`X!SU}Yr$N6P@*3xGs1RswM3l5#Hq61P|h zz!7kAF8~s^SP8(9Q_8&nNZev207t;dy#PquVj%#WH5(lG1Gkt#Bf>FwL^uY65655> z;TV)69D`GYV~~o#ZQraW*`v`IXt+gVBKJ#k3YQ3d0BC0MVEcoQN^XEFZnk z0nV6BtNmIFTt>xUJ&Y0+WAHza&e14bBZR(aWTijU*T^M+QTSi<2?e*-!W5FDSqn6w zU~phix?qoYNL|3L=6|URj?kWaT_C}h-g97GK(%ICEgOXZfYil*wWf;Rg91~Mxavoo z#S4-6KT;a5>hAd62pIK9~`;R+}j6oC>p5?maD07L2R1l4+bV0#SZw<4CWe+ z!IH!=IBPftSq;aalOTICN6aZ4je5dK8zH?{Mjpy0@8_jwfZ62eqyj2BMCK&;N7 zH!O{^AzjPN4iq7RqrlyLWNGlhsVM!iH#RLBSGT2jEVx_N)XK%w$(oii+-F8+{HyyA z=%Xo6!ibH81XzavkU-cRB@BBfOiR(x!t0k+!!dTzqw-`A^;+t*44FV4j2$#e0WeR- zK7CZq>;t&}Gy~Jj3Dg`FKmnVj0W|-*ld)Xi7FpGk`mjQ44^yyxGX}Z%eSK z9j!J@1I;KLDz+^_4^-0Yj5RTngRAWpk`n>V8c90HVsSzJeXKC zQc{Ml0ODgH^=iA@n^9eC9IP@c-Z^3 zKy>Gy)fmmqB#ALfk1|POuugFd+9?9u@tko~Sjo(pLppLvh9NPeV8-3^_)(ZTY?Q{C z03&A!tOZ~{O&RIf;AuCUu(Brf4M|M%YrrU=8y47>f@%Yf*5$ZwgOQVhe^dZ09M6&o zgCAvcGEyPGJ0j>)J>6*cQP35Fum$!$%pcpr$Qc1r5%7Eu-JfBNv+2)&Fe6}a!)cfS z4K)lR4y{ALDfF;Do+Tp(&k^+mPumX8iN&&;5kT_;^uiQ=6iyDUwO9(k4cswAU;}pu zQ)2J5vJs9mSQ&|H4ABs{#u3|urFJ+IU?i@w7JxmfAi6P)qr!=m{0i4b>V6cq&mZf4 zB%b|KbqLQGH63~-28 zL>cfLF<$W8ZncMomyvvTCNSlQ@4|KQOq(1aj|X8O>{mwUsLE~anbQ3u;eux{T<{Er3!Wvz1Y=hxqK7}{0N5+t}-i!4~h!W9X`etG05>9-pkFEoSe-Zk(SJ& zY1sQ0f3UNVW_8eXg|TrR&)B$*QUOOu%I!TFqg&@FOb&$0Nh6|g?qboc6CIBkh0H_8 zFK(-h9=U0)4*A>+o&d4|VA8;^Z4jvd*b(||1)yUDJelDa@0YgQwZoC zl);@qDTk9~N<8;XHEIVP#m)Hx$Cp7L!87Ppc*aF8cm{n0r3;Sc(KN;hCnmyv^?(_y zM!B;AX{hk9$%z!S$sxU`qCt4Z5LnTV*yq6`tIqXF;RTHINE`=hwfj0Cbpe z6rv6r1#s3=2@)gkH2>v53N1*}`zd38I?^^rVQnB(LnEL3wrbF!oKYA&Y*fS9*o~Y5 z{EOm@efcN_um>un0^m9JZz}+Gdd z)run$xzG#_7RWV9`G0`oH0BR*vlvVcJcDnBXOOID4F$Pk3<3wrbU2#H(>NcT7!6W8 zXb+6YG(Q-HE`l^&7#KN`VkEAE5f1o1s9KLQveKpq+}0Wm?X+4$P8eh7I#Qb7xM>GZ z+w%U~IzX>fbs9Q6@Z?haCG+%O9gOd8)#_f$U0znMngMC_w=xol(VKn zI_R{f8o3M#_YXE6;vYaegItHFQFH))GsrG@2FC@@ptj&yGFtE)Fqo~W&%#I3%IFa8R>kxB~ai>04I;WWt4WNDCBq3 z*6Hb`OQLyrT16o!<*oaiA4nlA|c#K;iQXzV+gvZJ}X zJvc@kYBvHc<~q_#0oQla3PEH^dyv^~^jJxmT}^ngA|^nA@U!&IHT07@=`kC65Qe_S zO8=lw!RQ|}|CX2T=F)oyeaA8Fk^w!?#PBX=@Ci@S!6&Uu#@WI+df_-)>AX04U;#&O zE*yO|k8$h>j$StHa1D?@y?5g1Muwwr8m2Qtco~!v9R1=32JzwFPnukeo%nd#g$H1t zG;Ko%W1}f;ua6!t{S!ph>3^qhbf86r^uWB8R$n}Q{T19nN7FHVod-`}?!ePdA>d`q zpZ@uzYZFiRo$+*z?{?npBi%G6M&Kq>E2=B76{@SFyNfy16_^iPF|a$w#=;deH7o_# ztfS=U4i5jvjmV6^w2ev0)Xmh+(F#~2$P@q|-4LN)H#%BSF$S(w9d|c78waRJ9Ve=T zg1MWGqk{>p5RCDbts)NYc6PM?u%J-dnb{08|F^?vnL1dlqB@AHYp>?TY&3PTRd=v- z1cnZMrCNx%xwumyquxk$GqnIRffr$nLts+U^g2`!0sKdRzN^r_!=E4>{shlK&w#-OO9Vng zKO~Sq1nESOMgVydfGBvn(0EV|^!)G20Odz!CMCVv zKph|h*~#Fd+y_hoNMb2MOOpcq3HWW$ zKM@Cd8u$+F_(P_F#U0dh;DBfNh}MzM0a?fp<7;FZR!WKtg_)6Ql4K~pj7kHEOljaY z26UPf76LEiyHfCBji@wuX$qA_fO-uojl`561r)&~pOhp7R>*fLSZK6Grh!v4n988Q zK!$vdLO|;jTogcr*40qYNkZc&DviWk4+;gE2BDslg2rh?8en2Vg8?!P3(w(DX(VVv zI4X?@vAj@eWN1+kl_m+fUZ^w*v!21FJWR5HF^8!P9DFJaGCy$Y81uVCXq-eoho?Y$ z2hrS6&#`zHcr#4-ft?i0`4O4R1t!V-8~`(Pxd7amo`XOF{T#TFkV*Fh z0(1KkU{@GfHv)-S_XIL?xdcfjjGz!GO#OpG#6nI2vJ4`8JO(n21mK_PIU=+SfqafA z39+dCJ9n#8v?SBA&M#LT?!h*z>RtEjZetu zi15~AR2qS~JxF9Uc7ptv`Wr}-geHxs{3y_b51B?{@)^L&1$;&v>N&7t$Mh}{S`DnM6VRtU!4z?2imjI+5i9$Y#oqOk%cEGKEE&6htOP z<|hf}Q%q^_WE%Ax0qr+|3%#)Du>#x|$mF+!G%4oxm6U{*g^*=PG2u8^jR3P4rstS^ zIPe?+?VEu#5*nXD8mKT+ep2Z92Y8Nx_H)3!Wh}~|FpVidF9h^F0Hl$i?fl64f+Cn? zp-7_rcJMA3;85>E0|?qC0RW=M6tIc|US@h1bR?!UCLa^jm&~LqND1in00J^$7+5w! z`!7Hi_%IrT4!}wxQ=i7+h|m^I)N@Qe9F!fjR)TzvgoW0#kZFL;ineipoak{H2kt0h z)(e3GEdZhNBQx1OSPo;tSg<&X_G3XAU;>QJkHF+hf#;a!N03UHbqd@+Ciw_Nrald> zPhn9vX3POYEfdy(OAVMX2M5Lv=6W#OE|_&Q`2yeq1g5bJG&w{$M(P>3{7mgjBtZ+z zsOKo?c?vKgDW-86EI~4jTR5<8&QuQ)feD+yRFY|204vFd~wgRbBu$0CuACU=TK^J81zrb9W zbSeo3B&Pa;)g`7h3Ul9=0;_rG=fJB>{agx6Vws*JLSX}B-K0oRAPAX8A){|eL679DGcqTE+2bO7=>Oo=lk-$14i+8~+8zl=^2xPKdz@ zz!CKTN6#>|5%2_<@E#mR!sL&GWkMG3N-<#$IL-pvA%H9wSS6Dz;22M|P63QVK?u~l zlF$i7$TR{0V$31az=s5VDJ8j1Kgu?}kL6v4p;sx3Ky8l8&l!eI0W`N8k_} zn#ihoU$?^+tybgAcEgHyyM7sBDzTmVVb1M1PWhqvze)WCJUV)L-M_q@KaV%J^O9nV#6>!r lw|VJvf$izzHjE{8bE@|ZH0OFz;VLM&pG?q?|aU>zwh_$v-f__Gk(kX-S=3tu618)t?T;#|7%@NUoHXH@2jY* z0C;!+fQS15E@uHHfS8bwh>(Doh=_=Ug!t+;YO-sjq}LcIsle1Mj1X29MrLLo3I!gB0`IaDfZ*CmfcGyi;7>2SD_T@5sdUVVZa7j42gH9N=1?qaqtP8fa*8~63M9EoOGnSZ$aRyO z=N7N1n7D+bl(f=4WffI5_4|5{9_t%CF*JJd^3`h#ODk(<7gslT4^OY4;E>R;@QBES z#CJ)_Depg|W@csQe9g_vFDS35tg5c5t*dYE=b@O)zE4)VLH)l7dBIc>kcuH14B`> za{}-MxfcLkcJWcY1U}P-T>?HWmjG)PmQJ-3c7|sOJL$g!P+RSp{t~c1KJ_+CL8 z3IxUwE2ti-JTiA1N`qxJX@+VKl8&a=_FmtE7Ck0Z!G_0J;1qiEm13h z;W^Mt^%=UL%Y*k$M;W00Q=!>dtcb%T4k%&U%V8UNg@ZODEf$bd?$of0ke8Rhh>kYV zxBvV>{Z|k1ufJzNf%5zyPrd!U=y9-mAUSj`)4;(5+6_77V!Q+{oU|_J-{Gx5$o31C^ofQT=K`;1uT73@^V52Lvp@lymH5)nxX#sCTAX$U#1vu0$3)C!cvJ zz1M}Z7P4c7JY*?@D27A3Z2WaC9hk?)MX}cQnbXqoVdlAU&`L_IOTR``njMo`IVYz9 zRh;}%8B-v6NbCgt?o|3ayu)ZJu7O6qZfE9j7Ogyv8|6Mv5yXxB%W@h`Y~$w$Sbk@j&J#sjL)LL z;*XUsr^SvUOZSQo0Im{Gh!YQg#an0`F1 zwCQgVSSI1T_eO|~bsjbD9bg)OgkaSlr(C$FT>?sCYwoNJl_(f||N2HvaHa{vaZl3= zN7lzpNQIRqz*mMjLR9_s!%`;yzCI^<)?h{?B!;RV($zvzaDOX@tw)~?vY0xBR!21K zk{Z;a9TCoJi-tnR49v(ascEod+y~#<9fIdRHkUv`)3V?R8_t7&`pfLc+K*svjT_SE z|9ZB{4C_}e|%b{aGK#@$m|QX zfBtRA6(8kgV}>dRa*y~D?rNo5YVpN6Y}Y@Y^dv>_%lPWu*1`M0*0nw>4f3BVa6aJ+?!c;!7V(kxQ#jLj(f_VBN-I8()aD6B&d zpop*(5b!1Ndh=k#aQsn`vDO{gZ(pV z??it-)n&VQbQ+3J7iHfhsw)@8S!TE{`65FQbRH4cxgvLfx3NfsA(aTmNFC2V=$Yv{ z3rl**`JSo(KBP2vj+$w@5xLsTg-*j#K=G`NBIRelYTcMk_nBIvI9zL462-#}S!DT% z-w3G}_azYV1h(Vvd~oX7y`THxm&IsvOlgt;7Lo?@Pj2Qs2yZ#Jn3*s8Me5%9%+K5y zC3eW&u}Bd|<3V?S!tmrFig-`XXZ+Oo7Y9_42h`JICAAi&jXX)>`}#aX=1KHH(&06; zExn5oGdaIeoOe?o_b;3>PIG)o!DsI;fq6)uzwED-k8zOp;=5UHDpYs-K0=P7^n9q? z6PE>|2fu%RaC+MbHq~T+-n|4kvve+jl400JSAH`wtoO!sO~(M<>+2 zNFcI}+kD*2WHVzB)+~xn-Zy9t9h~o))8Nbn%08(<-a?bS%wqh6Jnq9g43L{M*+wB4 zq^x$AJt^6DVuCb!z(UShff7T9+Fg(Fk#eTZYuD6x=&H^IfW_!piWF9$e4xWpjZ%h- zbXgJ4Y_zlXqyvX#XdWt@B9tUX!W3I73H~+Q%|+401+uK7t$wq!hBtYSZp_yS_l%H7Hw&~ zL-lc&0V~~!{;;$|H+6_c%g%RaT>>}2+oxxf*dUx&MPcV~qu|E|C>^bye{a_}`#~N& zD!c~p1%WS!j!JA00tup}baU@Czs=*ldC%;8(t=uoN%tWKi(IrQeweKW$0~51D0TP+ zPv!bN8SPpKu*>hpvr)g(33Eh>obF;aK!dU@*)Thgg1(6q7k11KUvWWBNGS+aa*i0x zp(#nT$x+NJH<3uYIgCf#M1+7HGHL}Isis(Y7xuJ>7O&pZI#K06{RmqWYe&QNrB9*+ z)?;e!L3+c+tdYcLA2YiBrT4?qiK-ha85c?^d#NbxmSOb@TRSr6AUN#)Tmw31`9gka zX4ZI4i`v2-O`!;DbyBg$EfX)X9cXVyg8XS(p4~)dbM>n*)ZA2%Hc_KoZfG<6CRkSO ztIomcmn#FLZbPMGZ*4k{?1WcTC+tPf-{OChA5~S94wMUT!`PIfbv!v)c@w6E4)*w` zg^&A|f-skWbP8gvpbMd496~Q*Ot!H0BpUk!lLsnCi3)*3M!&^?d}CP^qmPUZ$Uyh% zP~>Ig8Fn2|fz>yW(q)%`oTF(M0(Q!ka0yI(gbwf#EgdD0+C9Yho7A`G4&x=BuKGQ~ z8}T${K)dI_IWn_j4#H*_t>S!OZwX#^po}|CoKES)YaH)k=n}+U!E5m|hNtjQM0zQ@ zsF)46n=-EtIL!7!wogB%u5Ew}I#ZGj7T6nW$97i&hkL^l#Ab+@?cugZ7@I}0Ce??- zqVRD+w(mS`YO!}7s<$4NrWJ0K(pfrtM0Ff&4r?&$$`leNN-nKe0nRPRN?E~6K)%Kd zP2Pfe?1+^^nIlGwpb*POp_(fYTdj5A(d;P`J&zb|9&{1%u@T>{$) zu#L_VL@g{DdT?Lt5;$AUI1}Ol5iQ~C)O3jPGg3NmF>qYWWTDpErKON2sTkTf#@6DA zs^=Tp?D2+yNw%(A#BwTp!Du^FLPsl>8rxkrYHx4y@F3zwyn;+wH+ZzzBc;n!5Ix9$ zs0r?GO4u>AGKCGbVF1!;Z>%xr)bElb%(u$;J|PK6Od@R^ZMH^&tkDlu1&lE&YP zkD{u12fSowz689hoX+Ur+ZP}WX|qUCn}%YeA0LeL9jPRw@WxB=T~-c06Qc7xGpcCc z7xo(NI-}X3eNB8T7MKJUckDE51HCRX>i}QpPD+yGwv%C*NBtvjcALE$$ANLc&k;y0Y+ct9inRcx-~2;qLN)jovGEff8L#?v~{2#M9n010k3V3cRA9W5+U> zKJze)YESQm@V!q_K65?OJ@hM^2{s!La!XoMdgMiVOm05yaegJ$M4T>sE3kFM&4PdTsL=>|2`RBeERB*VV$(sQK0Ay6AC> zb#tP1PmeoEtrWgj>M<;|g^~`z)ttqK$*>FM#oj38FIl$GHap0JK6Bonb zCYCd4e_<>a`s(6xZiHy*bt~~(u9>2R%`+RGd7P&A#dlWk;K#l3CGcfhzIffy$w-i# z|Mi=A3I$;_UQAPD{B$5O$IJ(W8Tf}sR>xGT*x66g_s4snclHGxbIg$TMv-NSa0egI zO4K5-y}Q;Sdj9M+lvfkO39Df1mODO61=`GF#IkBrlK3i|D z2q;_v0nBgZgtcBgt%(rb#9sB$tDHQn%{ae`%$UETb}%U0Q|=wh;EWwIVXQkBy##v9 zIw42xkPDK+AB~>NOb(3bhudmt*56e>*xiC`M4q% zGPNcKwH~owi||W;LMb0zaUWS%f8EH4CV9_d2cFD63-lg zs;`Hxoa4R;B*ahF)Wbp}>K;ly%2}){Azc5l4A%@H;9@>be!4zZ2OJ8@S&+vs6K?ljlW;DcM|a>KtKNuG~X?;J6(rJo)aI|Q{HJe9?z zC?=)Q!!LYuJ_gGTP+GM0FO??x*kyTjp+u(G$M9Nc#=}EAXXOdossY*|y|HYtmGkw4 z8$Ix0}$u2+$hg$EfG<;I#A4mw;1f}7Z zK(VJo%q6huIsx0R!zwmuATlr!xC>?!mw*v4fObHvjqgIgxpIRY87WAi^0pppTKS+~ zko#Nvhv&Y0ZK*Ly1xbN2>c_XFTG?ZvMyEd)5XQ#gdu;Jpsp90Zxk(&fO6|uQ_2?on zMEQO9i+9AGiaTGFP5YVez&f>wLZ|9H^bt^6ADMINooj(NE8eDef|FYKbGJ>IOoNaa z2Im3|@*g;!%k-SEK^IM7It>TZct30?1p}LzNG+#HCMoQL-IK7tzyoQ>QZf~ut&W0^ zk%wAQM(`O|Z#!P`Q+~bgZ^8RDTD`cq(AVITHc^wuPr+SS*omGoSu32SZ>2tvKI44- zW+QEr&GLHm&gvMI;>2sU)o9y*HMZN~u;9dQRV~NJ26tqda$SSf=lZ&uh(VuhcK=Jj zCB7Axog|^PUT|W0l6P($6o0m@IoE83B=7fqLRs(LM2R)ke|*m$y8pcMqu&$Ec5Ui; zM+W)f>zd%ww3A@=4h<2nn$IU2GF}D|TV65U#rY;?^WvMiPP?%|!{BFnG}Ka+BE9Ws~j3k$gVxY$333%$;AlVlS|gP1Weyt0-~i{$lUN($jLgEgM1IQ zgY{?_C2Q>oJ-#o`6?p6p=QmV(cKNLU&Z3~z zWZElgzovsQ;YEee5HH#ci5Um`+}cQJ+RGve=+YD1M619mWO{)DX*Z0?a>-4++sEI& z0c>~zHDasjl32Jr_oqWco!vP?NBVZYldImbmw>L#oa;R0Y^Su|=7|HZ;!e?ndxT5t zwW4^-P-L1%3N}c>>}0~6Ql0ZiYzGIcsdpd~J1(t8|) zTl(bQt=P}KxC(8w1V#RavHvA)V(M%fb1sPszGcUuJAB;O$Vh*=z`qB<@Hw?_5}}-6 zWBJl`V~C#9?`H0w$$nqPs|wpD(M+)|hpOD|xv)C?>xiDmd$zatg^ml=xZzsjccw90 zUDQC&m&gSnW}$4y*vLo#;-5S6AGE>0(Fgww?=-(^y5ml7rwU#KhGE0xe5p)XR?eAx zHIBoO^Eq>VFDb25o%T2+&()b@y#f@NAJgnWkij1A*nmsmlu--I8;4eumAM3Pp$8@g zhepsSutJr+i7@P}EI6hWhE>6FYLQvk>v7~b&IWo3aHwAbUD`x(Bc^Sa0I_NqYy)x$ z#Ajauh`dW6n4_cR5C=N;jKWZl@Kz2FlhtZGorLY_?Q$7dLz~?Hq8i+a_4^t?@Xelm zrZAOP<|FTxB9Hd}qG_tXZ`EfoyCn)^{gO@ur~vbM;#u`}T;q{@AUTT6;yo z;Jzk{|MUO!awa@f-?J=z_80cS+9{S7&xml-h!qrF0HDtJrlHHkIG7QHTQ5X2Fpq!V z&;GKZQmouyrt&)*eQ&JQOG*R)Dy`f8FyCIR>$cf{+aodf_WO4KzR7^c#s8A^&-~u* z$5H?Nvjkr_I%kDnwT+djVqCPr+i*`nFk$Ld&-2=s&gsPKygZm>a zYZvc4B(&Sa%Oc8Ue`nVv0fGq|nu4+?9Uk1hDiSpOC;@V!G$MeNHe zA>t@zv$e@MG(Op}e|U77@SX4#{yM#0z*v*33!r0anC~$JH-J$bwOm8LhASoWi%VuN zdU0M;>W-N(CQ6p8H!xe4YBU$d<)-b%cG<11xj$MeJ`AeL)Yx-heDo8=8`UxOMU;lq z4SN(Uw#!qNg=tTj5Y>A29`I9@m@%&t$^T$c?{eR4c)kzF%iA@H>?)A|HnsmxD5bQh z6wJpATney5z1a7&>1(5Lx7mS{9~};?(u47(0*BK7E(ah@BJur7PQ9%_?T z-luWf8hGH`{RI0CuSMB$0P*SRGD>+e<15)+(e0$lia_?T`1aEGPuAa(x-lTWi9u<9 zTTrVVw^`Xn4A0J<@OeIMWE0g{P3dtjSrA!ltu+z{Rtuz!6jp0Ay8{LX;%>`br zID3<$F9_9u>CDCs9aLOQBP+iHMlaV&cvG*h?7l4nrbqqkBWu`HuFg}{=tg7Q96Fd` zbFAS|y=8C^e!DoJHGas+mr(VmwCiW`^vGWpsIaI;p#rOZ#5tMBxj0q_sQdQ%q9Z+^ zh85Pz`cTMNo^2dsdA5IS5qg*=R-+ai2lIpXKZk`Veq4RAxIst)?C_Luw3`Y|2sWz2 zmg6X%%+6X*#zzFrlnLGc=p>RLkCgLHe_y~D7A5<_d1b(?V}Z3|WHq+!hVPW$v*!%d zM`S_$tmAkax+?CFYn{KdL z*F3yt)t@I9IyWDxkG1eFtW-T2mVH$Wri~*-=W140x1>_ZRZiMJ(9IiEA>s6$+@H+> z++F^S^>4=xLJzdWz~@(SxnX8z$yTk|4>(r+CoaA>H-sKOdW5(0w_e(5Ru?N-QA@sj z{Xp+U8Ts(M$Xb8&RMFH2jKk;=nQ^<(BWb&kiPikV4vw5kehyyzx3uhcTUVX;73eAp zhaw#cW=aabdf3a!_GB(EB`C2yI56Okp7K?u#`{!YX=GY`9FzY;*^Qs;*B3*THG^)E z*swsasZT!imq6SlzzmzVH~TrUHSsfp#HC3|vl$g-_GI3uxVwz=?T6);lX_pk z6qMQa<3o2GF!jD?gTHEc9uKHE zQqd<%hU$ykzW6CukK_SqELR6{hc%Mq8k<<`R(z>%czxb&Nd9xEwg(d8>Y}5-YM$>S zj-pwQJKDc)wQvjD9j2|OBR@ox#(^L6Xm3zFy7am8t~Q#kTl(T_J|gZKI@6`Oc^Dx< zG0z(!qC)5iFH@Akz~%TXo}wdQ%kzGF?b~gsYZIBf=lpBI@=gOu3_Vz8=Gg3WebtU3 z@~xSaa9K?RF4(pj%B`-)4#S;sxQ|BPB z$HfXK8@=sOw|apy=48nop+!-=jdy=0Rry;xS$v-A6_{;hVq8H0Hk z_4>rlnd*!sIk5_{?@^90w$-~=e+{+3+I($_8zRTrn&}%7l}0q)5v){{`zPKGCcqD2 z*b(+6@Pq{(6`OUGZ%N1IEVWQ9+As#^tk)S!0D`YfVsX*p6E|wS4JT)ys` zE-j+;&*R6{w8?JThO?~^4p;CaWnc2f`oFG_)hn2{^kc58A9LBrXSR4?6)XL|(2)D5z&iAXa{B!2d9SUXTJV?{iKi6C`quU%P! z>>RLMHXo7lHTh`$?#;bMDul*>{_zX3`Kcd}bty>@M=s}udP!8bzEO7}Q7GnBwv_?I zVJu@HMJwLz`wQDwj#C`?FG>e+Y`85c4mdoDIPZ6-(Ayt69B@xG?Rb$>b+l7ReW&B+ z{oN4-hMSH32KD1uZqrS#2S$WBUpMcV6b~Gppgg^+*H?8G^D%G`wU1HLWEI1%57az! z>xA+3YBJVF!@%K=#SO7%LU6tPI3)!-Kjv8z8|;lqA9r`EdnxNXlR`B*SKo?U0s?txjHl4fkAMMt>S*?e{d|o++M-(lC;074N9*}=O3;9tg2j$V5Og^sy+0U`N4XuYB_O@9FLboHa@ny zTpqH?SOpJ18ltli*D@E#)|c@%ls{7uItjC1p&j z^!Um&)6h;=PqX0KPS4QXx*V^aw9T#v!uQiuEdSW~{bLThuO>6{c8L>LGTsaEM<@85 ztUR175n~}*xi&N70W%o4oz;2*GBm0Ta%|fkt0|WD5L*nF7aZQdIlNct%b}LBOR%rf z`^qOD5Y#zQz?^RIfW|lege>xf{9fPrbmC3RpNsnPK-2#&lKck-Bmddk$k#5gjYD2fYiNp@eoHC_Ttb7bmUPVPVj>x9qrLf*r1HlTR2#PLKVZm2!ajcf=ezO zihPj3GQ6bF@2w!id$jK);BMYJlD$n#ae{61^ z*zoD09_HGh;*^o!wdlv}4^L{7?qBJGe~6ZFsOO_wUdJSrhA$p1ES|~%UaH5R0w$p4 zU8^{!?-OBqw$yX|x&+M@q1w;lsbI0Vs8#fNL6>=v6>^JPQ=mfK){vm(eS@CENm&0- zS*g|(J1Q5$apu|_=9+`!N?9VjU7eZm%~F24=wOF8?rtlvDATOb`thM)A&oX!8_lkpSkkQHamCYGOtLCF(L{YQEf^)e4{LJcgEu5*L`;LMDL%9 zs+LXy29OZZLByaKy{kf4EPBu4u! z`9jU8tu0oR(9arSKZ5R`Yd;Ng|4<8V+T1nijz^TTqDwomJi~_(hv#aQ1Bz-m9i9C_ z7I|NIf&4F)I?hAToHo&CbYa(wd(iIfJy-g@Y>kHOs%Yb`#!%a(bX8_wU%cY80~o`0 zx&$%|!=c+>uz7Ol>5zkkoBVeP(eLVRrT}R`z(UjWf1dp}{|=7)8Myw>ehof_d7SC- z)XvOkoTEY`|C)}d|I#-Gsn#X$bSav$N3NPo4<>h;2MVl?YrX}&O`+iP_f=6P^p|z$ z_DT*a#b_a2ny)7>{4&;<@NS5@Eqn@;xPM#1G&BdvXI2(fd4sQEhvm7YC+5VjZ;5Nm zRZa;|O3Z{4&v`Hxg3%)f@{6by~g~wZ6?pEbC%^~&Ml2Sv>vDGc*1P%kO;H`N^DC4PGEcInI;+i zVbK^b9>m09zs73x8bRm%bFFGGJxGTUbE@#he%5sL`!GIByQx0C1SdLrBF>NJ!$cwI z^s!cH!8lpUbQ_|6nfb1>O}!klLfh$5C9?*rg zrI`~$q)B_NZJ@SFGb9Z4g2nf2;$-YL=Xln5diRgg6)k>&R4(BH=Yz0rg;iAgPk-4( zgc;`DVra|JIgY-pEC}|R{E+E4Qa@K;e9`ny&q}B>!9pyl9yR$fHj8-fWY!?f&=V8}Ul)pf^hw-yOT3T!n?WHc7NE(qY`K zN=(~ws}A34*`MeVkBk$_3awws-1xxcYTvKVWD@XKR6R z_-HET$nHk>DPoxsLEw}%OeyWHO_X9Oy_bQ2%;H(!jMR%EYu{H)6WY~1S~<~lA3UjJ^UJ2vJU((iaYYqrcW@$QY^C#0q`j0AJn zYS|(1>}!=5eVdiH2#sk8{MlpH)wfXGUIkp-zz;!mS7m=~vh&S)60!1Y_b{b~{~ZS} z!w`Eo-0z}6yBS?rFtB9D)K&c^r&0XuZN=p7RfieLUR_U?GAw#K5;*4N8*1jnsK&MN zeL0o6DN%EO43Ky};n)<`!U2iVLV>#6&x|}^50Qr>Fsp6%d}?7~qQ_x@`>{**X055f zUSSx@tV<5kZggf@W8_xs>4l7FpKdKD%Z{IK+wnGVoN3Hl$3A>Lgl!EwZ30~U=y3|> zQW|S+&6?z&Lpr-wzH~_(zEW%%wm%#0AGE~Im~ga}p(6qI375k6*@0_>%vY9P$bVqF zP&P#o#U5Ftbew@hcZ*k1gcX)G%6lSfMx6#+)8twz@Ua%a-%HHdUH(o@H9E**nYJpa zM4)J3W{}=ioAesR6qFsa9X*awU5N`z5vObBX&O6MI@iu0uUA=}o?FAKRH8 z^!b+(|K#Gl=IEXnH?0(UL4hX$y{$u_Ws_@4&SrCI&YSHxOOtpvjx zb#i?y$9&|xJzt3@=D}r=*>B88XqXFj9p;?7BeO+1n#oFC;C1asN;tkXSa5 z2hZ}46#nm`vEu8O$Eg5%@^KW&wA&(150KFGuwZdBnXyQxD{p$%RFygKkw$p3LWxKy zUO*dzEN(65M}gb*a6wFv&M0ID%RZX1%jmNb_{25(TwG{~0d70>4()w+T&(m5-1u8{ zppq}`=Y#j+pE|SHU%^e5SaI6yjnvSE!I`nab5V+}b+uQC&jXr<^yRacaCk8L^1R?u zbMA7Q@p*M+W!?4CnP;^VuVe4M1;4iwzT!D}N2+9RvCWTuT%O)+la)S%WAw1odn?F_o zSpBt$LNNTp0*%f#d0VF3;qQwpmp>b2kw1Ry$l;7JiS<=K%=NiFCKjU#-xFJIz+OLB z`l{e9lKiX)hxR=~=sMG!1Dn!`}b2AN&`0~rmSEL-88H+Z+vG&>VXd1woTi9O}P z+%KCoHF$~<_I4ccfw4iiN#HmAWz*mb+(C%wNmCM}chip39B0i*F9U@V<9Ym$?D{lb zf;Biil`!I~kM?jCm~uv)J7n*+a>P5?aJF~}yE*MZLUC+!(r&VmYw`!8cykK}8*=Bh zHp=dnx76GHd`}f8b{*`#)YZH-M|=Qff!}zD;;jjJs4i74WLf0SR)tJV%s!|8GVwaa z5lDCIQCM>C_R{sJ(XGH40s&il6>VFY-%LP~Mm)SOzv;nUvtah!Aj`^+8hIQcm7y^r zdM*{m`jU35IPO8f$H&Eb%A-g9<_-m$lQrM+=kgsXYxTB-B}MVpy;?9IlLIb+XR0{a z$=9skV!0t)EO!CLj+UzVifAS3#_4)9y>5w-t=)^h|LWfQ8aO(jcSUZ1PWn~I?m*SR zd`#sDZIRJ};d6aU_3rzW!npxs!`eh?=qT(%?lv6n0ItQ=%vGveP;Qk>WqoH$czRau z@Tx9fa>RqO{6WQPVZ7eWE$a!uDV+=LuBFCRD{Qkd3<~rDfGqcn5>0Zk4LFa;&MjotcEdD8UK$^86JTbwlRC8BKe1{PAwtN zJV0Ro@aiP3Yu2(|McgKlRpWXV5Sg61v1W);O3W)Z3Yg|~Xx zPN=v3E-UyyJHha`X#YV5A*|OOwSM6ggkvF$j;!;^Q*vj`hF}CSMFuGVNeM@YzPjU> zGhQNkq8>QN@P{7U+=d)8;=*a=E<-HMq^%DL${44;Z*pb{X3S}AsZ3w4R%we8Vv2*n z;|eGyn;f)84=--gg=v1Ps)(5D*|fXbU9=9AT_w~4Wmt#d5E5T6(K!9lo&6+oZ4<@P zn$7qwz|$@M7#40uFBW6ng_&p48XZhy878t#kaw;b2lmgrBEy!sqbqSrmxucuew-~q z8snl-`HvBGb|LRR{V=&$Nth$|@|r50wmLR?nrUQp{MN{rdp?r5od-iiqpF9@4XY~5 zsUJVols{Nj!LOL*sFo8}<(To8wa};>KZ?WixsQ4kEy6y<_2PAdntM%5nj>i5Fl<88 z+7c^-yy9~`O0&M9{8V(G*H^A=UH07XIbDgy0aNwep3>KmJj)R`B4{Ot2_D_`|Lg*| z(S$D$BeNELs~V+pm=b2ALq~*-r*d&bGfGZXaiSFV`V*sZ9#>M4K-d1e*1dD_bse;M z+p*DBGdJ$A3$Lm6*)&ZFoyw;A77DK7?Awfw?Y303ooaz2&{&h#skVU?kWb$&+4bDW zL!^V2F?`%kluVqo)&2I!?2Ymaoq)CzYCP`Xof4OQBFkin4|Mv+*OhtXlz0KvpM1~% zhX~>R(ZzlRjFY8ypEpwKtA1Vr6-M_)d#=9<2Yn`DPEYb{Twe*ekKMcZ9KLGqwa9`VMy3jN6WDwxycA;1R2#MyM$Bm znYVMWP_+{w`6cS1W=qfUpymYvw0KaMjJcSa9KQ-{i5_Sa(*u( zbHnk$@C;KFOkCqrlVQb)>R9eW$JClEk3Jkl$x4gziz%5^awyq2{-xx^Hk88q&aR~H zsOo=dJPXR+D)eK3@oT{6|do zk*>&szcdf#uAM{_H}cT&{?v8D;<<8v*{W+@kF})c-e^61=izNujk@`X>mpk>r+!Z3 zim1Qeum0ybDfpP|ph#4|ILh^F(uyDxcO*Z@E!pI~^@l{eigUJ#8RFMzImsJ;nI<9^ zJ7!u!8*kZ|=P!0SMNx_hakV5r8#J7VefX=c9;Lt%^1DNf{zkyoAK&rU0jr+woxd(} zSK@#T&`(2GDoVk&RK(50WGir$sM)-Jm_;C_eG$gPAsPQ?1%3Q}@%mY_~7 zo5$-jhsenpxz8N;Q7_u~4`P4Lt)VUfytcE{ITTsxbhDIU2gCI)1ld&^%6Y)`n(9U# z-vnnB4kKfVV2{ZSa!+D6DYvJWl&gr0U3u`Wv7x%5uBTKruN^PL_Df%w78iKvb}MF&^9WCzBCtV~9&QaBv;<=%kj;t6(g!u;V%wy~QFnP#8D5j#_-SAsB3py+ zLii0MUL&|H7|tr8(LaB4O1r_kL5jUy{f3H3=>ooaRLEJ7X_Z8vET0py5z9Q9ZAtMW zx+#;TAPaEWAi6)+ICk5WOsev{LG5+dU-qQWYcYC4+|MY=Y>htOG^Z^!>`*5s0pk0N=X9l@Q354 zF6Zj|#rrwcF?+>HlMIGVBca_ptUp?ZMvI33_J^MRqa}O)!0mZd_0&vj`0$4-neHB+ zv0A99Avti!x<2h}VAJC#UTL9^l$DOa9fHHO^`Uw3MDkY5!t8^LP)pD^ByK_3CqifF zF#07Gai-XPidSdqG=t2~5&8wCPM{!BqEHe;u7$chRV$`XWr3t38OM+BavvZX7gsv0 z>diu2Vid=X+X`mQRE`Dd@o=KnZfLN%Z$;$me6FhfU7E}oE4>}K2H2c=(Rn~7PN{om z52JAW8LWgHip5dzcs#>Ll6x=1U#mryOUFGe!h_c$GEowp5K^?F$L>+F4qNS8`zJb# zs_^`) zoGX&A$|&$CRT^>CU=h(Ce;#^v+HTy|FGKl;1Yo{~N(?Z4jI8NA_5z1Cy31<*v^>*1 ztf94L3XEy6&Oe!HiPDF3lro`J;0ARlXq1?KT4#N9n6U4s1sTa9yt}~CTNw+|0JtdL zzR_geR}XhhUsZ#q$k7pELUpjN7eK^$PHvMi?03sUqO(47^US_H&TXBd>$VmJ?8F@) zIo>vQKYJK~C?u6=s;U~dqZ!?rPa_XL(q{>8JG*Z4z4^|pv6)9)Tk6dZ_%_A8e&yXL z9xyfE_(vC$XxxboWPlemLe}hyhvEXs(Jab}dQVsU;M2)a*8r z#U%RzOtv}~sjuc7(~JDcKjF5+FlxYkm+BJw5GTD8llnC^QQtjj-gG_oPQXKydcY6@ zQSONMqWr2IbbgTW^`BF_$$f!Z3Sez5$sI2X+y)kp3d63nwD?vkiZ--i&B3ufrhFqyHV$M9cA?|82a}$J64Iq#m0*i76Ts_8=i8*{ zg|5wXk$r-D`TN;9+d)bNJihc`e-+2ETpg3JI9WZvnq({(SqDb&EBjfg&X5kZLF^4hp82DF1s0Wjltb&8eBPPsLTw;I{0Dc+wFF*? zH-?XJ9nHJFv(H~eD(P^0J=WXmovc&$Y|^_E!e%$zh>jFB13WA`)32h$KQN~j*$H&V z;1_y4F~7_4Wy5nr4otJ%a@B=tpWH_ZmrttRSO@c|empgw{$|$mYflq!bNL^l6#sjw z)c<$iO_Nr#!DtrYk}o=7IwDZa$@b1Rka*)RbI=~&{j7BQJ+=fA0~e=TDh%Cs>2YUw ztn-!Pd03dB<1Ln9q{ahc#leA3P0!S4l<(nT~Y6v2l;UAJ^PI z*PD2TiU+&Pgx!Tptwh!>?_aZApdQ0^WKP3v@MO}gxIUg$FemtZ&7C~dgmxM|I5W*B zNged@j1PM`NX(JMc0`T0d@EtD$B4?yStGm&MmP94(o!J@D50k>MIU>NDTrLm9u^d{S&WL8PD%{o; zb*t_bjcC}X{>5Y+eZn1ZM5DFrANF{B9~UV{9*>C0slBTRST{Sgacl*sx*g*_51|+j zHJ#g~=^{kKMT>P?HOxVLst(MhlqDkp?G&v<0i$)LXk9Zfbi)*4L;YCL#_e=u&RJIKWc>nT zG7V}=UROF-kX?Y?ko#9H*PBU>az%;ngX3&CZoOdOe3`!`3|=$USWd3_hTbo+N~iWn z)JW9&C14(w=CMaOcby1?9}uwBvAKXwTgFMypSsj|b-ydeZQ1#?5})Nnq;Nkz11<*Z zNT(R~;j%oQVf{ptsdhI$;P#%X=J(FT#TJIoVA&CQh>zm1!x4+(RHxDHl$q%CR|DUV zOAer!>*cYnj;B}K&@UIb%Z7biy&c?bHy!vlg*a8c7x3|=GxkuUO$X(bTI5#pEE-j# z#qxtSiB;cMzPm4SxH`Q5=(2&^|1W@kk&PC4gjVHD{Z>}%9h$7E@14y0ytnR~VH~gG zQqX>S_GC+I)NDfwpuv35FIHT2_{~sVP>=Yk!r2w$Q@3K7#UN8q%Q)llQ!;&3yTN!Z zPD`!xf>v+`%?}*#mijnYT%2}f)~LPVMI_fuf&4o>960vRbt3QoE$uCrRYv$SwR<_4 zZKni|POM!od_RA%N=ZmfHKMgvcD)+~p-J-=|BKR+l3nO>+k{Xjt_NyN;EQmtN+B5s)wFlMwSuubILU+DVg*yE|d9M22suqU1_D!~1E zdzwNOY;Ts(&Wi4EDh?>5C?>-5%P>}bCs*ceC1#y;3q)@Eu#Hi@8rch+$mW%0mN$qU zH}w_l$I*3adzNMtSkq$2;qi)BIjVkx()**6ERIQeap}{P;TSPpX57=tXV=qp*6Ped z=&4NJQAu4qB%XL!s=Ra>DmZj|70k>g0t+la<-kh^L9mLi^`dXWBwd zsV4!E78t2Sx&vhK)BFvyq-M(sZ`q|1mQEqH>20A5TYs9QWr0HmUgpchiOff4-Ky5a ziK8tfI69?f<*Lz?Wu3uQDt>`5$a&5pfq7E9>q2$Uo=OE1ln`X7Y*U`T~U5M%YS3)GBE#ZsqfvjMh*Jrodau9EI}9w=4PSuYeAe zkZQ#*JJIgA3#D^^>}R*`pFbDO4d<(G=5yKO+&8YYmEKR?!kq zwysH>GNsu}3Im8}He3N3*ZsWm?y%Cm#IBQf-(_gnLM1_zmH#oQ?hmB-|IIv^13i&w z=|F)a)a1TgZe`y+-5dOCJ*=b;*}r7;RTuT5tc9Lqq!LEW-fZ7W>KS4*sL#B)fHMH@ zsHlxMQ2fm4 z#QV|4vwLlta-Z?>!|(e>u;7l2>u~+oVs4d1;dW(y-w{@cI7u>1#Ztz0<*_C+Y@ROX z4wvbO_hX@q2b8jc(~=lbwCvfP)2{>7%?rC6&J5qlUuOKs42&fvUGt&^9o;1El48Ir zB6bXo(AZ%I>+wWa##~i8MqF{T84wVUZtA_~c|G}os_YhP^v;;js0>TuQ!(=SI-a}J z8z<6q64Wi!QS&#|^I^NxJFV(#PN&~6WDER~*oc!N!d;*V0*75mY^(`#)iGgy;phA7 z^`x&P%Tug;@Uk_nJ=N>l=I7_j4}Qguy-QbEeuTCPIZCrqAFnzmX%n1GWscf=5+RW% zUdAT_-m86igk+DJc~NGd%{f3IXQ*1?P|EkV3}YvI=n)*R%oMD$AyyUp>&rCx#}DgC%%-01EVTv2 zlCWiDfP`d`)Te^&$H`8gU&OYv`txtR_)2rKtqXKGCKM9AqdT6a1P5IWRo5)_L zdl&ols0+f_j+2AIvo$cafiC@N%7$TRY94xpM?y2`r4#x`Ack(+m2{EJn`y$Y%O?eJ zu%qpQ(vk->Q97xQ5kt9pmN#-g`ht4dt35JWckiAnVKh6Y)S8>9PNQ9I9M%&)1m1w= zIsGy@EkuwDUOel(y=4T!jL$Gv)_PPI9iNvozw-7)H2rA9D_FLIom^KkZcgKDrOBa% z%%kQB9myPYWtOCUGDJ#Un)O{G#XLAe1O%~R%7g<;0~9$mZ^p{%7MyU_Gk5!&9mXi} z2Qu3kQmT%2Ov{~l=_58qkP(5#Yt`@F78QOfy!FfSQ#Cxes(`ziNd~-ooCB03nj-R* z;7BjCK~IEV2n z39GSxZhK2=p>c~pNp?02v|I3}2lcqgIrzcg*u%EF!QB`C2i z?YKjpX1G04^d<`?Lp?qtQxFj6yP>?aenGMT$WQ)FBk0RS6HTUFgJ4qZR~?U&yK-*E{S)OGcWIWnj!5X%pb&@emYORe7 z#S5LL=pEfqk&{g$xg{9!rq2^x^-8a+E5F_}P+{_3F1o^%=ji+5t zKK$#JXHfF}5>oC?shNelnGDjuiec_j`nGk85@mE8fl|BmRRPsX4i^6j30qhsd z!K3xewfnpsXE)5fHY`}=)u`M(hBU2tlg#^4eeyx~J-_pOaI^3$Oig6bwwO=3mlaBF zY|y@xLR((dIiM=C{m1IN_bMjaOxGoDm)gFw6>fNZk*CGO@r=KV)vTA5gD8IXSb(U* zn~N~oJSyRu1GiJVwTW2}@D%)B?-If<1*Dv>`{2O#oZTuLk1&KU8X5^ zarTC}9}~qx&3Z*v1h+lqBlE4rTs(aettfMI5N;wtSH0qAGn@x>>ubXfChcs-y!lxa z?yp9CrDkCP%u#-3T)IDDhI6*zTAOIx9764=-#1Sy}aWQ>xL_gZ4_jn$-Ip>w@vgYcm{ zyWn=Tc91~Mn1G$Eon^##7P6sUQPw2ZjE><;@PPIPXqZ6$m}{y)L-iYK4vHIP8+{7Q z=V2JdCX%HRujRn>z$H76yfK%rm(eBoN`Wx9^n0)1UGgH^@zZu2sYTXE`v=u^hQr?@ z>BHmra!ewkd$)=qzU_WL-9?3Sb;2q=RU6Qr==!JW^`E3UnDUPM6J^d=1qm3d zfnwNV!dcWf5!Zj}GV=N#)LOPwKw@F$uet@4IbU(cmi1N8`%6Yj{R<_wAh+J1h9ycj zJ914VQn!`+eXu7e>EB$R!<0YXixXK(7gZ3gZx;#&ikLT5TH zhQg+SF&lo;Q)9KWdq1h~d8SG1LcVkdHX++=~$fAsNAjnn^Z-w!$<=3BwdgLk5Tgud)4A8hT&27hd zk>yt#47WVO!HlL}%SG?jxQ|8-cY8U!ISe*VmTEojvP;K(y3FUThI24teKX}8G@H48 z^}h6drCeM&El)%XgTa+c>LsjR-G;d43@-&=oAjuOB#C%1U(?cUY1i(aq_z%9y>G(vGDHKlW&X0sYVUA6&K{Ra@J4 zOu5%ilk3Yn%6!9jeEy180Dpc*U(Xt{(|kJRz@O4X-1r6UKUHV=nm$ zS4rxBYhlLKJ9}9;6_wV*%rTNpeXk%~2A5uO&d0?E%Go z4&W0La)6|n%iccpi^G^4wcU(5@C0q=W9NhISKtyXtfP@y)~5yJX#s1TcWS>93yw~( zk5u&v!jG-ScJkKYsXhp%F+gna5k!`%odQ?SB7#j1auVyd%rwE{R ze)Jo32eVdSr(b#V2NPfH zKM}h-Ma0h6^N=YpW}iRB6~31N*Oyg=awh&d7%p5(9zz1E1SIT$ahZji3hre?MjDLs)tgv!|MR@$h~rlBrBjy7*SxH=&hu^634G*k_L1C>~~ zAw?_M%Wm03PJ^mrbCl*Z!(>8yuuLIuB{;GS>}XRJYhozL%v1&rpQv|_hh-JRw`GQ< zD^fKYg+^?hnqppTANYn*?@88~M!#~>VWO8_jooJ2m;DXOj;mjwm7^!z!zt017l&A^ z8JIIA0m^(6o5ptmg~08kGa2E@_&Iug$+e>A@$q9eQq7eS7j`7eJRPBcR|FDbqc!Bg zQ25|7oXTX{Pl8v!8FXD&U4V=^otj5QpeUscuQNzncqlaw(o%u&pxJ z^^fc*B8@Py`m7Zlg=c4q^k#Ga(%e?-aii(g$~{9>c?G8*7j_B5-d3g7fHotZZ6%WX z+8#GJF@MV~vfGLUHIP2??jzD7m|&r${{TS0Se2(-X>Zne#fX6@Zo zVNrU&&t~ymPVrVeVK9~y1jJizr0JQn13z0l`Y8*{ene<(=#8_6K$_tZm+-Pr$qBD} zfxd0LxXg<9mup`n7j}GgE{KX%`1Q)hT3B$}nvK{8F<8URirjX+95>92e^wly>}I3L ztn%;xrY)=8))tfsBYek%m2iB+y71}SUm|Wl@aMIeS^R*)R?EMWA}it zu2Y{b<8USKUY8Q_JKt>3n<_kI&AA$Ou-4MuM*CDoPf=b3dXfF5JR>9TPY@^L8@bE!`_$TY8M=I7I5(7h?}m1YG%&gl!5sRK!dvwKZz*ikF& znIudnPE9)caJz?|Otek3xCGWk3yqMXf|uHJl@ja!P@%^f$c!|-HDd=$SZ%17<4L2$ z8<{BVgk^+~&P6Yhxfi@2-e`Ltq>Jh)9b2aL!>n}VfUb|_vojE$$$ zFOrDcNRe*34P3UQsT%wFU?g~!Y$xj1fQR`zenQ{vt8bnfUNJafvH|~!mtjox!lr(^ ztDXM3--`|TX^jq7qFWN+-hPTFDs6u?<-Y1pOUA zLf-oD;zTQ4P~e?&l?{dA0}j_C|px=@g6x@n02OKIFz#sDpIZIVJ|$%*bZo6>_Z5z@7KPB+=! zQ=k#FVN{9}XQnmzWt0Z_mgfO85Usn&A4y({-<}Z}fWb358-zb_QtazA9%#u=-?7bI zO>CxAVE;urMTcD;9E1hAYsWthZ&X_H(iP(?kJVT_KF=XM8?EP<_Es*$TaFO=QuMd9 z(05+Tq?E@zr%9l)xWv2~*cMLn({4MS9Yx{K-!R8|myg*JVlf4g!63?W92Di)ZeL zH@g+^A9pRyCA+_OqYTU(^BCU70`pVf)nfRVL04<}`c=^5zEon`hOU`%QzzSe?Qm&#upHc~b%<1d|#P4}d$zoZe!w@$^ zH&2S9FLGrVhC=bL^Kc5PLFbw_TGy@gT@S{b=38UC^RL$NgrF$cG5b+XlDYblt8PWS z@8!&@=hpLX6=roowR((g<5w2&p<=L$z(s(qX_Wkzkdjl6os8u1U!SrJejN?96xx&e z-v5L>B5+IWxNw0C7=1EknWW@CVY5o-`{+fsx(SVpSzWp>NVc>H0C{5=vjF-3QN+fB z7Wam9IKrZYTjW#HqiSOMHAMZoBI1Zm4|Gh4n^?M=s2i1&#CcAo=EZ(@b)CrzxoN0c zzdT3R-ryRQU0`^nqPZ^WT0Zm>-(un$M5C{&E!V#j;w|v;hJ?X+2$h-VZ;(Bw9V)Gd z))72L|NaWd^CNCxiD~zty^;Qpl63?($0nDq{p>ou=d{;;SM(C6UU@$w2~*Gw0Xy>*EN6ro?*Bh&;^S2z!T#MUX*d zabc|hCpSK^8jx_l4!mykr^Rd8un6N@YrJ1$S^YG7Rxi;pGkHUL)WD`oJPaE?0{XGJ z{d}`}G3+&UKnm}%p@@e(Gvx9xN(l$=aui={RTm0EGBb6wWz$IED7O;+9Z%-}xSj8R zwO#Ok=kIH?U~jkGTp74D^HN3mTr#s!IZHV9=W1cY3SBZlc=XaXlmmH0<2g_ah!Kru zz?|tFAmG>zoQ1Gab5H($_SlI=cYaG z({BSOxM0X8e<^l3N9K#NFet1|16C4FK2I=QUCkvn^UNdF!J~rxSFBg+4xSfaKdWp>(h?B}F7Rp_QP!AOOtaj9VwT*eoCp-J} zSi-ec(yj~;T^wnl-ah8LjLD~OBZ(h+NrAt|}F4W-oAzdIIMQ@_DhV(4$2_t6?L3t*o!e631rrHJm*p?l;GoE_;=5xsVJo&Gs*0E?Zuyko%O) zaI5$83cYhizU@Yn5@uUzs)@>OseobUUd6+c*U$Ne8~lk*x15JW2b~QA?+~r&)qX>g z!!w@6L$ORzdpttB=OW6iio^a=R+`K`PBDD&L66dS9Sr+PP5u(y&@K-Lf&AxOWzXD6 z)GgOpp^G7(>K`LA^tDlVIv}3cB%4~C{05c3k0Xc=5TKt>Z^~vO+iB*eW^(0LhKP|7 zCB>`(YVj%)0@L_&@eY-FeWw_CdD(BLJ5q^L>N4~%aIZU)rKp?7s(I+XpM5yUiCNIs zEq(yXVW@k>cb)!dk3$@agB2UXlV46Y=`ZI`roMP{;>h+zrV#HvP>W<{ObeDQ8rjGs z<1xUrl-MmRV5I}CYLtJi=pc6-4w#!X&vRn?>gb81w?6}q`JrpC_h=h>$y!e*wqk5{ zo^`kg;nn~AO7s-vMuOTEFA>&Ys6Rry}Y8VmlRxR*upwHN2J{L1dnCWo$ z+z-GjaR)ei&y+3-ZAi8~vX+#w2I+9f^*e-qM!puGY5pS}kpBDvO`!EJSAGiCMllKfC01)S;J zPWc03+OM?Ea-MX}=&dzHALxBGRMCsS9W9?+ZWAVrM}Fw*y8qQs%!Llyic z26D9Qh@nxbv-BBL7>P+#q!beq<@^RedaJ@l`Uk=8=_J;_Ekxzx&ZPtzhHiRo7%&}3 zJcp#2{t&PqSK7wi+L(DWFqZNG~lfODewPhtW@;M$!v=z(fN^GfJ3b;+rHmH(hPe1SPS12(^%{+WC- zzB2=&T3a%M3znN$9}(QR-G8p3$Y258YoH+d4H5+tGc?~J>Vd=BrP#_QqOy^=t`)8O zEEMSOzwh^6l5uR?;-psjB8=L|c*}U2Ae}y?GR_b_qikOBQM2xGgsMz8z1iX455c7z zobDGT%*o6*Df4a0N{`_=|I1&6ln%kmP{v@!<3uM+cL(jk%nuy0Yi!F?f~?g3ex(kr zx6AzEDgov9vso+*w9*7yyymTMmPewzDNwZgSe7mF`=dI!vB-LQ@1o%dllPCA?%*!L zC^u*Yw8g%c*`c+1?@infG4BJ-&JfY_sySZk0*^L&J|ym|j{bmN598bgG+pmwn@*G6 z4vS+cD>MS{Sh4hL(U^6AhZ3{UPeK19+j%lL3+KNekE+5#LXx%8H(%rwS(b%pl=23O zz>Fp`vb{yh%W-x9zNeMz2-{V39OLv+?-zBH={NbxLZ6-y=vJi$PU^+9cbw|!ZBV64 z*C)3xUi(gB9?mZ>b}wGEOJrSIb)s<@5v-N6|KTVDqGNbdXiB9%3|>x^8WYwIo2O5k z9z>-5?PsJ{V5ER+gxM0wE_gS?{9HTv{5Oc_`%H}-qA~XKZnx3#rxKikaeeg&kTRR2 zU!v_%F*3Cj3eq?DdQ_!@0dWMuY2cjG4)DIh6YQF%U_4PBD)`=6O;f2HQd4QnD zX!!S_cMKGvQ0}OgJ_2w=8|sG<50@vL#W?0 zhMN2{1^=EkaWPQgn!y|rf|&4ez(sS#1@Ue7Z&jFQ5Q35c0^6`5y>uCaxVVwRL?8i> zfo0pElBNCNGs-V>wnp^BnSr0>>CX9t`fsT|xs~oaYR~2-km@Gyj^|zo&NzAk*nlMh z(&%*A1S(kj&>1!2;Kd5yk3A5uUF~G$F#+qNMLE_mL?fJU&XNGQC ztLu00?YV43iMtu=CBCB2ehKIbxLNo7ZyvVcjJ>^M7*PX+Oori9=uG2)As>I2)0m|v z_NlcG2nLCKi!+l`W=OX@8M{BoALZu^O_#(Io~|atcs?or<3o-B0_(LvTMVi6FE*ep zrfd843k=HdI8uo29C~9T?|Ow=P3kQP3NibWg6j9+rMo5U4NQawzM_Es{67px;V1I6 zq2~YPjAWAinUH^2B7Y|2FMHnIMI;lO1UyF>}h@NU@LD{n{1DR#N!9)BCIHbu}_RqV6)J#{b_Z>91F@KilZf zHv0E3>wi|rpB3_Fh5Ug8{wI9*2P66GiSW-08Ud0T_}AHhtwcl{8vhkkYXVx+0H`v~qX6+k3wl9G3G(_c_0@s@1_h&5H@tziF_QuSSESQB zxq$_k;fUU0TqU7R{WoYssETNZvK4Rm8x*TLLqNp?9vYteMSi%(-=Og75KA z7=bhrgX#+Hg-2^*O0$>xIT#-Ikry&?z5ELL@TiN@QuX_@2=AH#)mnZa#B63#pt33jg`IC zB~&j1mP_MJDFYjH`zewG)vlNw9y9ski$<77T@0^Sw$xTsS6;vE5%=ZFH!@YHnFs=9 zCs4FK&~QRr^a9V zJ6EE~?HJ!r`Ynw}Wsp!FvU&5b44XUe@EcME;x)mcM_(OG{j%#n>?Y0DD86+H*g$lZ zOEKCtXrla0!t7??tTlWd{j7e9{dd7&B<}^lM(Yrk}6;wf^2gjlC^7*NNmDc(l?~it8Bc zuA8qP^9_0a;fN>&202@8O&&k5sY6j)JZ!EuMqQ3F>*IfCE7~2yRBw=ORGaL1J8bhl8CE7S`?PV(p(IP!DN?wkj^V3C}Z;t7>R0Ymyn@)9Fy5QT^4bV=RamC-bE9%`vCo^Q?=$Sr| zD|hE%ZkecX{eTgUxLy0y-dQN+i-LG+e{2lz8F6%9Ef*&j=i8*g$$62I1QYpeVuq~& zO5XfyjX4^HsxJmUHc$n+Aju@#H-{SpRvoz4%D^)GGb!jVVNPLTRhlum?Cc)mfY7vt z;{RfS{&)6x{@EP=3DNKWU_||Y5@q~n{|p$~E(1{6JA?wA%*BYa$NwW)K#LQUegbtn zQyn0I(5T+|=jb`sjwTFBA3y~m=QjZPg)d)_CP=1#G+dWqZ2Pa|Y#T{0?f(*Ex{LVn zSo-4XfErA^s328O8wV&?dbM%B*2C3}K&4 zKtEOOV4?JTJW5=iZfz#wbYJHXeyRr)Z;$O4CxkY0-*WzlK8^AjG+zrPoQM&P*6m(} zQdl!p-HZ-GHfa{xCZU?#bW2$eeh4t554FwV85UD#zkb4xB%%AFgc2yBWL z|8i-DE8^BW4f1h7q9MnwpTLhh)x$`o<<>;lPbzoE8Y!90YdkctUuQTEFo1?+VNq>G z{WlHZ>Fb80?5TYzbYFgO`Mbq@|G`Qe1g@1j^cg-a+cKiZq+QfMAj#mf?%mRit8>ci6uMa*!Em zv{sVi`@k&ni%&WZ3nlTvn;Y#|2Q$k;774Cm3o3i}hdA(yuGzN4EXM{kpk@$-bNbs4fl<2$CD4Ypq8)YQH;c8%-h57hW|7}zC$ z4bL&wq>tRnxFK~{U-m)K17t}rhwRPW9=6aoLrp=J?6w#_sK{<7$TRnuyDMd6!l`rI zJ%6FZ9-4a^<^=yHZb&fV7LNpX3mc4KOQ~21jE?J3dN4~~_h9h{n4xAx!fT?Lsw1Vg z<2NY4v+C8>=;m2zYP^%PLk?ZY1PSPAV%JilWZj@B@CUU0o9y#(+bRP(rOp=5}I;F-B0^l?tdpc6F5&t0b`Im`f;YctF8V|Wmg z2wUgp%6+ip2@M_d3Jo>O{YK-E1xg2(A+YspxQEb|9-f2qim%zFTlFhhZ_9{lulh>9 zYpPwLimpap5eg)WvLD}qJWK*sf8VX{$fgzCkeZhkAfVplc@n!t;VqAf)@By{(3Hm} zJvWES$AcLs;?L#eBzWOMchmCfWF7OYKvbryksV}Lp%P9qOfnce1E;`cyc-FhF{cN(UcDpJPLLfPW584R8wmiK5cp92}$;yH{iF4 zgOVG>Sq%woHUfo2=JF*1|k(z~>4_ToK{ zuFQ-X>uwB^vyPe4gwN5rRbncCYOv*|O$&>+YaP};G2sNQ(opjY(zmeXoqHu%L3EI4 z5%PBOH>h33U2mAczTI*iOIGCN-OXdcwYtl43-zS!jn9#NBY{|kampYYFEbk4@vw=C zUYqADUvlh;AH7-sAy~AR)hu)0;7U?;F?@Zcv$G|ma6xwI;?^7M-8}}DPcbW`ca~}u z71s+(9HEOBme8m%xQDmCcS`6hpv`+xIt3hyVnRr}ubt0HKL(wpSKyVtDrdv>wI`UL zdlVPv0p4DNqdkGXBI`7ikU#3$;vE3dUs(Aq}~nb=8zH&B>k zJ?uc8+yFRvBPud9OgHd0h!x}wmBKBdli`=iFp$1un_J+sjF0gdAE#hOO6Ow0g+a6) zh&&0XGj6dX7{#Wx=Rz=2V4LBUJ@-#nBA$DLxU$w&(}V*e1_eD(F9z0elcSq|%Pyz$ z-Tg9i`6LUHpLgd@<(0bo7bqvD`cT*KbS3aSN%Ku39@Ma0Rcx{Uxb%MLg1=i&^ON_U zQ(wIev4hB^wNY>0rFH2Uv2?1T*4aWuxtWY*%buaPjCfzN_GO+Bn8c$+E~wtvx&+)9=3wID#`Wq{2HZW6V#axL6)YP+(J_v#_f zp>TxI$*x>>);fmVveDDZ&9|AFDsOWwsAT&hBHe7!B_q-*{bWntxzhu@OPeLIaPzV6 z9YaMBvG0>=An+^;0{1$ysE8WkYNVhZ1e!{Q!4*79DNc1hlXvt8*$tPxwrx_jF0!pH>GGQgZ6cr?v|i_k;HpMmfyRSV&;KnNCW$akI4E+aVnkFKFuXj8N>uxs+IoDUy1NJocZ{bxjh`?jw z{H=y>3T|}^q)rmK{1>~KD;plAkNHPIPUh(HF#W`BY8>4=eDe66=RK7Tl%=Wi|(jacQj7WxS~mGSBXLgCvU*C!{#x?D7*CFPo=W^gqs+ z`-`N@$schR%D?wm0p!jD)!OZllOL9T#guq7q8dpFj8b;KNDw zJ`&)lM&a*eD`1i}#!Slm?v3p*+P%BwARnoG6+FJXdJ6c$lNIS;8RIi0<7|`t=a80n zPZqO+b&5)#5r%XEfv=A$L29<`U)iQJBVDFV(E-^%XcMlfd{ z9m>mhNL7ivY!VTCzK||JYM$xfE#dx|A!36=-}7oN1}k-Ib7Z@64rShgvk$R#zsmcjFa^td{s; z9;tJ7)q?m?FaQ(Yo~?lsznZ!%&g*31%->6TJAhE+_*lW|@KXDB`Y~0v_$(e&os z$y*3(!@16@X{5ZqeX{G;3|FO$q?-U$Wrw}p9WJ)U#&i*`rB?^aELSwu$K&kcMtwMN z?D`Y&FUu!a?7q^O+p$8aW1A^I$*>Q*?;7NH3e?BH#7GD1Sy>vsI=jYWsQ-yl=<51x zjZdalbeA#2CVRE@2SQ>L>Uk_dlJF_)FQ5DSD_Kt{sDh#yk3JYtwFXeqO zSzA1_=S6Qh%0D&phj`A`ViCdn0(6lMQ<}9Isx?m!2X4a-T4}_6SLxll>;|Q%b##ny z{marb_FVZS#i+B5i86^^=W$Kwbv+vn?6y%Q(5EdFf_CFE{cyGRkgtj8)HA*t_R(_~ zYznkVXDppwkShHK`Hms5l+G`3xr@y(joLAnU3>PXI{R{Y=ET2^P)%H$20NoT_O^*G zPsuJHEwfwnH1|uOMr?&DANa*F(@q+l>P-*EPZlIkbMZa9Bf5^FZI^r>;*z@v^q8>j zi~2%2+XK=Z9jn;j(uvC}3)BUGSPrIn##hU4~H^KaV#ywte>$c|VA^qcG?3dgib4BXt$b`?Q)^ zY;BhjL#@By828RflhBMp()H_g_M83|4wAewbPJdU0+4|Wf0M=l?a22Vm~O(mWwGAc z6dORxx1F*Z35N&YgHdO{!-65zi2-k=)TfwW|GoXJ5tp&|LR>rJdiNe!E#BfCysD2W zN+-cYE_{%pjpTqn=`K-nI25ReK%&#&Tw8Z`ndCCb^4^<4YbNXk>Pxfrx2xU!$%>cc zb?yeWiQ*KZwRNOb6hDiA(205TD@`PQ56kQ{lp#%{znH z+3%n$J&BIt_{WzbAZw%5Exc7+D-fb*g)8Ue$RD%d-ykg=YAmYe3Dl^wfVdK~-+{V@ zD?Hy3Q!R~~i+Rz`3cD@xFK$l5Sf21BrfYiLPNlZI=;99{qn zadHDlRb{I)AtrxCo{&0)DN%{}c6Yzcye_M5t|g_HbH35j82l{gvK5f~Xc&=~VUcYm zBuXtr$~Ica%dHk!F;DAE@gaNHDc3Tt2#Eg%k$JxvKT3PSLOD_Wp|HK2Zl#@gmfRnb zh0I>`r_+a*>@F*sgkDmhx205`fnFTs-d5qV5wrb-EI<$oNFbW(g8S% z#T^)ejn!|E0qSI=NW3HEBx4DQcCkh0l-x|Fv*Pb7N7>k4cau)>KpO!tN=8k)55R*Vf~#DZhvD`o0r4@poa$o(}6~D2?pAP3xjr^ivNxVkKS98$Xg{*VCEO9Nj@q-hcUKYmV(2)W8AE za0LXEC;^F*BwPTYN&iec>X}qFc&COe-CWaaQaLHQ;6sly?sgTEnX$Y9THgrWYv&HT zb8^5v6{bNNA$d)LTn%j_<{Ic%Rynq7zcVOX8$_u%=!wrXOFtqyv}wT^+F=r8?d$+I z>h;QN&%W*Q&5{S1beMqN$wOqsQjRjFPnI9~(0V8?HVIc0m3q8#RM@aeB zyQq^AuQjzX0WKD~LqtVY5gkOF(Q4X$lnXb=Uq!mYj{KSlp}I(uUS(V1IopNd*RwmA z4qVVY7fwLoo6So;Eo)Ou{3Y5l+2YMujD^tTCV5Q6irX-MM0!hJsDR1?LrpB(!*+iw z!(Dw8IR+fx-Igrpkc63tHmArRGqn=yl9IUMA%B3y&gDZ5_utZCV4b}0S`!&Wk{Rh= zJDenPX4UK&52yQP?{(6JnU8beZ}g~ox&Ajh;du}UL`|G|hv+cB4H42pk8uw?mJ~K> ziW^Ad|*@`B+_Gp2@Hos$l4mwQWkJRs^^*%MCA3v$L{*>U)a?MdAO4IkP zRTk2t5u*?Y+fO;$Z*MR-RdtuB(97a}52ep2v0VT>m2->qw(iCl&eYC_!P~#$A$N!t zG1J~x8^$@`+Edtt?my5`<4k^hs}@xL21L_}w?#y@P{+$wVQMO~bt`So9xz+CajiYB zs4`Diy?&X(Yh|+8OBDkPatV)h&flQ5ul{yW(f!tMYQrfOr!^j%Q(pD%e#4V?4pM)~ zYnc#Xl;sGQAi)Sm;C0q(mM+Ffq=g=4B%?JFe7kP862Zs^6vt;~! zW5a4-L98=DNjpS(+aD<7+G+TJ0px>a1T_yN;0luN$!=~9fjLRZHN&$ricc`#{YHZ8 zBxsfCNF@12xCG7>xwzuR@6|@ghsVbUf{1z__}=_iDAlEl3<>Ek+hVHK55DH;7)xlA zhoHBn*&g2byy7T=%%ag8F9P++Ut?ho%gwV+(F%)ukO(N9v3{V^*LMx!Ww?&MYJF*- zx}-U=q0R2H+S3d-k(kHPne^J>-tMD30;we|-Jasqu(zLO1wzD#<09Ty=t9q1wQDu) zE~JJu%ai&DXpU4}8H#6*gS2Rdn9uzHL9jOI8%$(y3XaBv`+(T-{jE21Psz`#rTvB` zA|0hzCrX;`oxd!tE~W~A#!*UHKmG9f0I+{ml4jVc|nf&_inAq%GbxZbu8D zXdfVR(Z-zK`RIGv9NYe$YL|@|utM?6&7#LQX;){_ta(iQ{pS6k>#ZgbCv*|~kf5|4 zirAra1@6Tu)dBuNc%Jz0t4 z5w~O){l(S5gQ#m#58-xgEo2!glMm{Ylbbz!qbOEvG>BvO@|pv_83V2tEBe27s%%Ob zt=}9PC|{SYWpGi;tf^f~0c%4Bs+d!6Y{HmBXzRH9x+QJEu2)GU)hD%$zvdc2tZz`63D}GghLl zV$PfTJXDJ-zW{v|tOxprfkbn9BeGQxR`!CGvOMveuNGq*uQ5ku2H>}gig$0zj5djy zo-iBNfYkPyF)g0hnLM?tg<*lRuVZ9Oy>n9W z(~GK)zdN&K~CLo*J3(tapB+2gu`~0swQ^`Q!vsm<`I1x!oD)>HZ+UrkP?u|zo$oU z;;n}jm=eDGf3f%0QBnT;zW5*rf`lj`IVdI4-3+LdNJ>bnGzdu7&?zaPAl+Tk4blQi zch3xszzjLmc%SdyXP>*j?)%&4oZmV3u6yqC57w+rnijBs;f*F-X5)#0Vje{@*(}GG-sv4uo@B`TCAiI%@FgO#6HIMBtO+!yr zJ1SsEJ^XlduPmMYMO|^se%jNe$7PRI zqu0;ByM8&ittC3-x?v}?>5vRM7$&-ew2VvPx`&AFMtbH~*qzEP$_zY=8tsd2TuJq; z6W7s2F84Gkq80O(7mT{d^lUQ&cAWf7cq3oNXn+{pzE;ST)1Sid{OymmCoD#C4%6zJ z`q*>dEahQioe_XgNi`8`XkzH2moE?8LoYPh=VXYTQ`ME{! zW5i=??5Ht;l6sJ5R3BpO%p-(df#4mMs{X2}1ndbDQHR;UxqGB%6jAm30oNr$V*^jEPn zp8K*2PzGg0VJp&A$xu-is$6f*91Przmaio5aOXRi@AHvpLQPe>;80L-*w)x6u4yq4 zSCO+;K$3ofOm#AayDA83sB5sFnTBdRF#m8^d=|luyFiTXCn{M9&>)bxZGcw16>xp4 z2VXk+@k;S6$XjCwQBU5mRE@isS(%3I(I{$ofRDe$lo_GFm(N1F6idsvUNdRfDjmd_W*D1j*{FN({0by z&R(47{n{`T`c^xV*U&fk=&l4WEJ|FizIRaJ5e4>sy|#VNJ4h5u9?X{J#gy}v5oUO} zZ9IBMk+2*GsKkx9#=jQ}9MSFpK>^5@J9G{&s>J~@D_CeATjr8P0pWU`DiCKOvNNJn zjdtox1_zZUk3Shl)I@#dyQRdRq5WDBl0kOG2!uHVdlea3)ulf<|IiEHz3j8+d!#sY z_r0jemoMwJh1df=ke{Hh@p(T%Gp|Xmu01_w57S0`CEhTK?L)z_Q5cl-P7S|ww$O55*TLXdrtbj$$6zMh6VnMRfKoEU7Eo4g>G9RyC^cq1{|w+@SCmnzxl?}*G{72VHH7_ zx=?NxZ)VfxFSwSgma~4FG*(oXHcql5N5dpmv0HP>sjdmJtECR->ACU!QX9#jLrLX! zm>7D?BJb*oy%Xh~?{LZe_O0|K@$ki3$uv7y4v4paT`bBSKC3>k6QqLfG!mAt>-39? zzw6^zASAYV?I%$Hbo=;EKn?fGAAB}!6bvUJ-jaGS2JGwJjBQVby)0FD*p(?K$>&#WFie=l_{k5i1QAmj&`b zZI;P6j<|scTA`FY1(r$swWQqVH7J7kUOwJFgY-e8Q3N-hyG0MhefwMUnfkI^^^YFk zdDN=7AnuUvUdBy=wpT#bB{%s*nb74mh=&=(?QVbbFxj&@-wVt~Co0A(O=j}Xe$`6n z`H|G|bxi?COzn}PaDV=E5_5k6og!PEOhRJyDziGl)!eHwjNz-B7q4XH!RdErFu@*d z6zIn>M225KF95vJ+Jze%xC%4r@|QRO&f~9BJo7@&%9UsK#eAQw4Z&{ogGB4X6Y^nn z25ckv(pbWcdMF{@Aba-?V~u^xBhAQ|a!c%(5!0CNj2hhP5?!(HCV5ta<`$1X@>Sx2 zE}#euwo#?7Ctj#P%+0NT3B15=C^k*7*JfqPaJ13*Z;3c%hd%&ihYwD+C}wRwizu-^ z5#nSR;OyQG4lTq1XekrfnKdo76PzYZRgEF*OEMo4D2XE_!&b%%8Uv5P7o7HOR^$aHoX{SX;=rU^KIYSBC&AJ^>|Zn6e|JHD7$vcl?@;qMUzf$HzT<~i21JQO#Np2f$I^D$bHw8r4sOtE0hpgR$^_ z;j(+oqj4_fx~wv*sd&G;Jr2&XbtI1iWHO1w*y)#h(rKC+qL-GtsWrzHIy6M~8O>jN z0vLv%o7$wn70blJw$9YlTkIGixK@h%=oFc$Ro*SV@4-L9`81YbbbiMS zv{OOCJO%fKRaL4kpNc19_RmANTQzxHrWQyDwE1^Zqz$TGek*oTlS zsj#9ZQ)DSCnw`l>z1Nszvfy3iarprIQFuwgwzgPp_Ttub-D$#)x6JkL#p1VOd(0tG zP&TqC+H{uD*olv3HfVnw7aY4xqPd5)(K%+tdSz1?9`I}>%Hk>@2ROUhTK=_|z}|`D10MI` zb^j=JZ|)2HvSiCmXR8V8*6;xS3au^G56x));pXXZcUIYPA7=NM9?$mh9Lhue#oDOW z)bdAjo&1p?chs{3cDMQO$SZp7P@}FY8d|{Dl@)9T^W;|Vo z`hp|YP~5>4mycbpx2Dc5sLyS=c7Kd|94TJs;V9KGY$xlye6yTOz?T|b(4lTL=#^__ zM*n@)wwGw;o5#rz?{>k&cpJa(SEVn@C$te~WgzEea^KZN_fSl$>LK|WhJ31xV>vvDssp?jU;_TI$y+ytv>MXI_-l^Yz5{5-xNI;oMS7`)r1W?Z}-#ocE zk)o_#@QSHb5xIQtgQGniTubsJBiK_Vr^?+rYRZP2I*D(c|`hZVN-1Fg3o*+%uI0`DXjxgod)2Hq~3)rCj{P zmk)e>d)+GC%D2vZnK89GgNq|h)yb&B=s6M(^JLKk)AbwxH5&@CCkqQrfk4W2b}O#? zitEFPcSH!$JN^@hx%|u<<>jxcYLd6%GPJjP#}qcQ3#nKS$YEgOOW9(16q{h$bKV*E zQF9x$zP%c*C)PgULNSJ&P5aT*KTeEDA|8F#Wtwp54=z=I!uP{30F7PlSQ2wm5{8;8 zabgX0esR=}=N_+|(iJBw*}Ay+N%Kk6Ten*({K2dXYIx=D(|r`_gdsijL+hBIAhi!& z78Y-$JYJYcoPhbFujI-0Z@L!)&g4x^H4`oTg`3k9o8`*A)WU=cGzKmb^phXU(LTd) z-w**w^InXy6o#R`$$P<XeJF z=+fAE%Rkrk#?TJY&{^C3V9@TQPxRu&`0Ma#AcG{HloThf?B|^!sI2J-KXbsOEgM1p&oH*5%I&){L>3M z_BR!fa))w^u^%X<=j&1(`ImQ$u(Nwg-PyaPs8AW?VEa{66?zubih-d5N&${Mr_eN3ORLK2j07g*x%xS=!ly@A@lKK^wN%j%nI zVmVVg-YsBAk=gy=5FiP4`z$?m?$UZyQ$!HZEAmk@n64jWvedL31vyYSUOoj_45O%N zc0~KxwM$N5`VCIR1bo11@!_PQQyJj&>P)VSDKJ*JU*Fb*O%tQMEw!<(x@O270o8(p znAGSS;sI34^4SED((!w)ekvyz(&4O4n|SnP<|X&1_xSn^3R0m=zIu%aFxgH!G9Iw2 zM=pHU+ZKz&h1*;NEir^ye0<&|Jh159>ImX=w}ESV_J#F@x_A>`Jf2+Q=io7XSvtU{ zGKG-1=4lc*OqP7weIa?X_cq$9rewZ(xte2y^E2UiGii|ed}N#|h^?GeXY|;X5<%%N zR|FTWO)~SStEt-}jkH}QYLyxG`BXM&8K*k;8kHtvdBpQo;iABiFy>1vdIZl6mS&

4Y6Eha!>txCJ z8ZT1q+kUWvG2scV0sp#+O58!AKbhO$OH(8z?eNV#IlW&}7L6kOpy9VO#DH~l)TvTR#I=9%(K`qz_ z;}fL`Q52D^jxiX)b1HWahC)_K$~=#+)wUL-nn;*G!o7ofjfXIzLh2YyI2+SOD4Ttf zhetSh+-bZxz=H~3-n{MYSUUo+E!Mh`R#Lad<8=4-O)s8&?#xU3aJw**SViBV@8W(# z1-*?}%ajl8gl!9X=_Ujj9i#xv<=!bWhJJB=gnZFJ;;be1D6l2&Wk;TLe0VQcLW<*h zHBsve!|T>YsU**FeeMywxIWJiACiVggY*q^w*PX9NJlT1>Z1c!)`LstG8Pt>Wgbus zEp%~dUIfOX)lnoJiBsCts@>q5=5+e1_2Ejjk-lZpfg62L;=69f1q>vANM?xOBxVn^hJ#uE&nT{^)D*rx4sm|?|wkRSMe`>;TGj8$u3oa!~4W{ zuY^`DCWGBR!Y~Xdj^vo$%?-c^S}=u#u-k;xYUHfh&cN~eS8O_|$`L$Wq|@_sRe}Yy z=UH{3yU*4SX1pS4m9C>+P2Xl6DfXReOU#Y*xj_JbHZ_zQ)jTj#A%?7oZcLMRT1qh{ zs-icioh+NuV@%*Lp0IE}0<$}B;!=4q9Qq%}<)PfdRwsM}U*u9t<(0m0H|IN$Dd<|y zs1fu-IZOVa^BKS{{AHNHotp5-Z}t6f!SO~dU^ zDG)XhlW2M0rwAx#?);@5DxnsxdW+rA^4z7rdi+gNSWL9iEwNNv)`|MeYppu6$ns!V zU(%87!@2%^kiskFX1^i+v*bhL07~A?dU|H0?fi{n8c8|DNt(d>w@PBSrKEi#0d}l& zJ2u+n$)sFC-ez5$TYylQBEjyN3jY^`1hGTLP>bhu4|QTt8@GG2=7R&Y2lwlU=UV+d zXMRB+NM7fHO=6yT?F^6= zn5%F@0E@e4Hm4!uOZ?;e{bb3j#L=PmKD?K~YbXX&-VXtgSMtdgSsUi*pv+~uf$JQx z15P1t#l5@s$f7;zA>FQX^}#Kwu$b#h`wio^wS`!AhT9wkOuO5U91yo((aOkmMyy@AEDtT6XEJg zR4XSkd|vIpsQT8L`*vTh)iNDR3u>}hIon7#SI=}>v2BSJ%MBOLe+bhmjJ+R&)3LR3d6itB5efoU{ou{pYS$(>C#NQ!$q9en3); zbkc)>O`jtNU%&q@_=Ei}?Vd!sq&py3;Ty(C0Q;q#1x#LwWLW_9zOjK z2R{Cd0QH9|+X4)zvO}+eO@Sp}T?Zg9{aNV;keB{xWM+rqGCJWV*aDV%@Sq~8DyQKRa> z!5v7A7JuCYq>w-iM$04~XB%z_FImjm#ha$tSl#>eY0q$=keDkz=6Q>j>^;lZp zOCHvZ$jss6fE)t*o{k6HC@Vt*kl~Xlklu3E!Uk!6P{T3+Dn%0D0yO)x#?RyCO$qD~ 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 literal 0 HcmV?d00001 diff --git a/backend/uploads/sample-pdf-invoice.pdf.jpg b/backend/uploads/sample-pdf-invoice.pdf.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ea280cceb287d00f5757176575f3695c55ba4e0f GIT binary patch literal 289993 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ˆB= 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

  • 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 I82{e{0Nx?xg8%>k literal 0 HcmV?d00001 diff --git a/docengine/.env.example b/docengine/.env.example index e300811..cd2a2fa 100644 --- a/docengine/.env.example +++ b/docengine/.env.example @@ -10,7 +10,7 @@ APP_WORKERS=4 # Database DB_HOST=localhost DB_PORT=5432 -DB_NAME=document_engine +DB_NAME=ocr DB_USER=postgres DB_PASSWORD=changeme DB_SCHEMA=admin @@ -48,7 +48,7 @@ LOG_LEVEL=INFO LOG_FORMAT=json # CORS -CORS_ORIGINS=["http://localhost:3000","http://localhost:8080"] +CORS_ORIGINS=["http://localhost:3000","http://localhost:8080","http://localhost:4200"] CORS_ALLOW_CREDENTIALS=true # Rate Limiting diff --git a/docengine/README.md b/docengine/README.md index 46b36f7..373a614 100644 --- a/docengine/README.md +++ b/docengine/README.md @@ -13,7 +13,7 @@ A production-ready system for scanning documents, detecting layouts, extracting ▼ ▼ ┌───────────────────────────────────────┐ │ PostgreSQL (Schema: admin) │ -│ 192.168.0.111:7925 │ +│ 192.168.0.111:5432 │ └───────────────────────────────────────┘ ``` @@ -92,7 +92,7 @@ docengine/ ### Prerequisites - Python 3.12+ -- PostgreSQL 16 (running at `192.168.0.111:7925`) +- PostgreSQL 16 (running at `192.168.0.111:5432`) - Redis (for Celery) - `poppler-utils` and `ghostscript` (for pdf2image/camelot) @@ -116,8 +116,8 @@ mkdir -p storage/{documents,templates,images,temp,rendered} alembic upgrade head # (Optional) Seed default data -psql -h 192.168.0.111 -p 7925 -U postgres -d document_engine -f sql/003_seed_data.sql -psql -h 192.168.0.111 -p 7925 -U postgres -d document_engine -f sql/004_indexes.sql +psql -h 192.168.0.111 -p 5432 -U postgres -d ocr -f sql/003_seed_data.sql +psql -h 192.168.0.111 -p 5432 -U postgres -d ocr -f sql/004_indexes.sql # Start the application python -m app.main @@ -142,7 +142,7 @@ docker compose up --build -d docker compose exec app alembic upgrade head # Seed data -docker compose exec app bash -c "psql -h db -U postgres -d document_engine -f sql/003_seed_data.sql" +docker compose exec app bash -c "psql -h db -U postgres -d ocr -f sql/003_seed_data.sql" ``` --- @@ -403,7 +403,7 @@ When a document is uploaded, the following Celery task pipeline executes asynchr ## Database -**Connection**: `postgresql://postgres:***@192.168.0.111:7925/document_engine` +**Connection**: `postgresql://postgres:***@192.168.0.111:5432/ocr` **Schema**: `admin` ### Migrations @@ -474,11 +474,11 @@ All configuration is via environment variables (`.env` file). Key settings: |------------------------------------|------------------------|---------------------------------| | `APP_PORT` | `7989` | Application port | | `DB_HOST` | `192.168.0.111` | PostgreSQL host | -| `DB_PORT` | `7925` | PostgreSQL port | -| `DB_NAME` | `document_engine` | Database name | +| `DB_PORT` | `5432` | PostgreSQL port | +| `DB_NAME` | `ocr` | Database name | | `DB_SCHEMA` | `admin` | PostgreSQL schema | -| `REDIS_HOST` | `localhost` | Redis host | -| `CELERY_BROKER_URL` | `redis://localhost:6379/0` | Celery broker | +| `REDIS_HOST` | `192.168.0.111` | Redis host | +| `CELERY_BROKER_URL` | `redis://:***@192.168.0.111:7901/0` | Celery broker | | `JWT_SECRET_KEY` | *(see .env)* | JWT signing key | | `JWT_ACCESS_TOKEN_EXPIRE_MINUTES` | `30` | Access token TTL | | `STORAGE_LOCAL_PATH` | `./storage` | Local file storage path | diff --git a/docengine/alembic.ini b/docengine/alembic.ini index c427555..21d448c 100644 --- a/docengine/alembic.ini +++ b/docengine/alembic.ini @@ -2,7 +2,7 @@ script_location = alembic prepend_sys_path = . version_path_separator = os -sqlalchemy.url = postgresql+psycopg2://postgres:M%%40tr%%21x%%23149%%40dm%%21N@192.168.0.111:7925/document_engine +sqlalchemy.url = postgresql+psycopg2://postgres:M%%40triXPostgr3s%%406202@192.168.0.111:5432/ocr [post_write_hooks] diff --git a/docengine/alembic/env.py b/docengine/alembic/env.py index 35de6c4..c5fe0fd 100644 --- a/docengine/alembic/env.py +++ b/docengine/alembic/env.py @@ -17,7 +17,7 @@ if config.config_file_name is not None: target_metadata = Base.metadata # Override the database URL from settings -config.set_main_option("sqlalchemy.url", settings.database_url) +config.set_main_option("sqlalchemy.url", settings.database_url.replace('%', '%%')) def run_migrations_offline() -> None: diff --git a/docengine/app/core/aes.py b/docengine/app/core/aes.py new file mode 100644 index 0000000..aacc416 --- /dev/null +++ b/docengine/app/core/aes.py @@ -0,0 +1,38 @@ +import base64 +from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes + +def decrypt(base64_input: str, secret: bytes) -> str | None: + try: + combined = base64.b64decode(base64_input) + + # IV length is 12 bytes in the Java implementation + iv_length = 12 + if len(combined) <= iv_length + 16: + return None + + iv = combined[:iv_length] + + # Java AES/GCM appends a 16-byte authentication tag at the end of cipherBytes + # cryptography library expects it to be passed into the modes.GCM(iv, tag) + cipher_bytes_with_tag = combined[iv_length:] + actual_ciphertext = cipher_bytes_with_tag[:-16] + tag = cipher_bytes_with_tag[-16:] + + cipher = Cipher(algorithms.AES(secret), modes.GCM(iv, tag)) + decryptor = cipher.decryptor() + + plain_bytes = decryptor.update(actual_ciphertext) + decryptor.finalize() + return plain_bytes.decode('utf-8') + except Exception: + return None + +def get_string_value(encrypted_id: str, secret: str, secret_key_internal: str) -> str | None: + if not secret or not secret_key_internal: + return None + try: + # Replicate Java's logic: (s + secretKeyInternal).substring(0, Math.min(..., 16)) + combined_str = secret + secret_key_internal + combined_secret = combined_str[:16].encode('utf-8') + return decrypt(encrypted_id, combined_secret) + except Exception: + return None diff --git a/docengine/app/core/config.py b/docengine/app/core/config.py index 52fef4e..e6ebb6e 100644 --- a/docengine/app/core/config.py +++ b/docengine/app/core/config.py @@ -28,30 +28,32 @@ class Settings(BaseSettings): # Database db_host: str = "192.168.0.111" - db_port: int = 7925 - db_name: str = "document_engine" + db_port: int = 5432 + db_name: str = "ocr" db_user: str = "postgres" - db_password: str = "M@tr!x#149@dm!N" + db_password: str = "M@triXPostgr3s@6202" db_schema: str = "admin" db_pool_size: int = 20 db_max_overflow: int = 10 db_echo: bool = False # Redis - redis_host: str = "localhost" - redis_port: int = 6379 + redis_host: str = "192.168.0.111" + redis_port: int = 7901 redis_db: int = 0 - redis_password: str = "" + redis_password: str = "M@triXR3d1s@6202" # Celery - celery_broker_url: str = "redis://localhost:6379/0" - celery_result_backend: str = "redis://localhost:6379/1" + celery_broker_url: str = "redis://:M@triXR3d1s@6202@192.168.0.111:7901/0" + celery_result_backend: str = "redis://:M@triXR3d1s@6202@192.168.0.111:7901/1" # JWT jwt_secret_key: str = "a7f3c9e1d4b8f2a6c0e5d7b3a9f1c4e8d2b6a0f5c3e7d1b9a4f8c2e6d0b5a3" jwt_algorithm: str = "HS256" jwt_access_token_expire_minutes: int = 30 jwt_refresh_token_expire_days: int = 7 + session_encryption_secret: str = "" + session_encryption_secret_internal: str = "" # Storage storage_provider: str = "local" @@ -67,7 +69,7 @@ class Settings(BaseSettings): log_format: str = "json" # CORS - cors_origins: list[str] = ["http://localhost:3000", "http://localhost:8080"] + cors_origins: list[str] = ["http://localhost:3000", "http://localhost:8080", "http://localhost:4200"] cors_allow_credentials: bool = True # Rate Limiting diff --git a/docengine/app/core/dependencies.py b/docengine/app/core/dependencies.py index 102723e..5ecc07e 100644 --- a/docengine/app/core/dependencies.py +++ b/docengine/app/core/dependencies.py @@ -11,17 +11,63 @@ from app.core.security import InvalidTokenError, decode_token from app.models.user import User from app.repositories.user_repository import UserRepository -security_scheme = HTTPBearer(auto_error=True) +import uuid +from app.core.config import settings + +security_scheme = HTTPBearer(auto_error=False) def get_current_user( - credentials: Annotated[HTTPAuthorizationCredentials, Depends(security_scheme)], + credentials: Annotated[HTTPAuthorizationCredentials | None, Depends(security_scheme)], db: Annotated[Session, Depends(get_db)], ) -> User: """Extract and validate the current user from the JWT token.""" + if credentials is None: + if settings.app_env == "development": + # Auto-login as default dev admin user if no token provided in dev + user_repo = UserRepository(db) + user = db.query(User).first() + if user: + return user + dev_user = User( + id=uuid.uuid4(), + username="dev_admin", + email="admin@docengine.local", + hashed_password="mock_password", + is_active=True, + is_superuser=True, + ) + db.add(dev_user) + db.commit() + db.refresh(dev_user) + return dev_user + raise HTTPException( + status_code=status.HTTP_401_UNAUTHORIZED, + detail="Not authenticated", + headers={"WWW-Authenticate": "Bearer"}, + ) + try: payload = decode_token(credentials.credentials) except InvalidTokenError: + if settings.app_env == "development": + # Fallback to dev admin user on token decode failure in dev + user_repo = UserRepository(db) + user = db.query(User).first() + if user: + return user + dev_user = User( + id=uuid.uuid4(), + username="dev_admin", + email="admin@docengine.local", + hashed_password="mock_password", + is_active=True, + is_superuser=True, + ) + db.add(dev_user) + db.commit() + db.refresh(dev_user) + return dev_user raise HTTPException( status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid or expired token", diff --git a/docengine/app/core/security.py b/docengine/app/core/security.py index 3b68389..6c080da 100644 --- a/docengine/app/core/security.py +++ b/docengine/app/core/security.py @@ -8,6 +8,7 @@ from jose import JWTError, jwt from passlib.context import CryptContext from app.core.config import settings +from app.core.aes import get_string_value pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto") @@ -44,8 +45,14 @@ def create_refresh_token(data: dict[str, Any], expires_delta: timedelta | None = def decode_token(token: str) -> dict[str, Any]: """Decode and validate a JWT token.""" + decrypted_token = get_string_value( + token, + settings.session_encryption_secret, + settings.session_encryption_secret_internal + ) + final_token = decrypted_token if decrypted_token else token try: - payload = jwt.decode(token, settings.jwt_secret_key, algorithms=[settings.jwt_algorithm]) + payload = jwt.decode(final_token, settings.jwt_secret_key, algorithms=[settings.jwt_algorithm]) return payload except JWTError as e: raise InvalidTokenError(str(e)) from e diff --git a/docengine/app/events/handlers.py b/docengine/app/events/handlers.py index 23464ad..0ae2df1 100644 --- a/docengine/app/events/handlers.py +++ b/docengine/app/events/handlers.py @@ -8,7 +8,7 @@ logger = get_logger(__name__) def on_startup() -> None: """Application startup event handler.""" setup_logging() - logger.info("application_starting", event="startup") + logger.info("application_starting", phase="startup") # Ensure storage directories exist from app.storage.provider import get_storage_provider @@ -25,15 +25,15 @@ def on_startup() -> None: else: logger.error("database_connection_failed") - logger.info("application_started", event="startup_complete") + logger.info("application_started", phase="startup_complete") def on_shutdown() -> None: """Application shutdown event handler.""" - logger.info("application_shutting_down", event="shutdown") + logger.info("application_shutting_down", phase="shutdown") # Cleanup resources from app.core.database import engine engine.dispose() - logger.info("application_stopped", event="shutdown_complete") + logger.info("application_stopped", phase="shutdown_complete") diff --git a/docengine/app/main.py b/docengine/app/main.py index e6684f4..683fcbc 100644 --- a/docengine/app/main.py +++ b/docengine/app/main.py @@ -37,9 +37,9 @@ app = FastAPI( ) # Setup middleware (order matters: last added = first executed) -setup_cors(app) app.add_middleware(AuditMiddleware) app.add_middleware(RateLimitMiddleware) +setup_cors(app) # Setup Prometheus metrics setup_metrics(app) diff --git a/docengine/app/middleware/cors.py b/docengine/app/middleware/cors.py index f85d200..5c1146a 100644 --- a/docengine/app/middleware/cors.py +++ b/docengine/app/middleware/cors.py @@ -13,13 +13,7 @@ def setup_cors(app: FastAPI) -> None: allow_origins=settings.cors_origins, allow_credentials=settings.cors_allow_credentials, allow_methods=["GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS"], - allow_headers=[ - "Authorization", - "Content-Type", - "Accept", - "X-Request-ID", - "X-Requested-With", - ], + allow_headers=["*"], expose_headers=[ "X-Request-ID", "X-Process-Time", diff --git a/docengine/app/models/user.py b/docengine/app/models/user.py index 06c59ea..e0aa4de 100644 --- a/docengine/app/models/user.py +++ b/docengine/app/models/user.py @@ -3,7 +3,7 @@ from __future__ import annotations import uuid from datetime import datetime -from sqlalchemy import Boolean, DateTime, ForeignKey, String, Table, Text, func +from sqlalchemy import Boolean, Column, DateTime, ForeignKey, String, Table, Text, func from sqlalchemy.dialects.postgresql import UUID from sqlalchemy.orm import Mapped, mapped_column, relationship @@ -13,8 +13,8 @@ from app.models.base import TimestampMixin, UUIDPrimaryKeyMixin user_roles_table = Table( "user_roles", Base.metadata, - mapped_column("user_id", UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), primary_key=True), - mapped_column("role_id", UUID(as_uuid=True), ForeignKey("roles.id", ondelete="CASCADE"), primary_key=True), + Column("user_id", UUID(as_uuid=True), ForeignKey("users.id", ondelete="CASCADE"), primary_key=True), + Column("role_id", UUID(as_uuid=True), ForeignKey("roles.id", ondelete="CASCADE"), primary_key=True), ) diff --git a/docengine/app/workers/celery_app.py b/docengine/app/workers/celery_app.py index 2e0457a..fde23ae 100644 --- a/docengine/app/workers/celery_app.py +++ b/docengine/app/workers/celery_app.py @@ -40,4 +40,9 @@ celery_app.conf.update( }, ) -celery_app.autodiscover_tasks(["app.tasks"]) +celery_app.conf.update( + imports=[ + "app.tasks.document_tasks", + "app.tasks.maintenance_tasks" + ] +) diff --git a/docengine/application.properties b/docengine/application.properties index 2668960..4ad7a3c 100644 --- a/docengine/application.properties +++ b/docengine/application.properties @@ -2,7 +2,7 @@ server.port=7989 db.host=192.168.0.111 -db.port=7925 +db.port=5432 db.user=postgres -db.password=M@tr!x#149@dm!N +db.password=M@triXPostgr3s@6202 db.schema=admin diff --git a/docengine/docker-compose.prod.yml b/docengine/docker-compose.prod.yml index 4eaf60a..d78aeb9 100644 --- a/docengine/docker-compose.prod.yml +++ b/docengine/docker-compose.prod.yml @@ -7,14 +7,14 @@ services: environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: "${DB_PASSWORD}" - POSTGRES_DB: document_engine + POSTGRES_DB: ocr ports: - - "7925:5432" + - "5432:5432" volumes: - docengine_pgdata_prod:/var/lib/postgresql/data - ./sql/001_create_schema.sql:/docker-entrypoint-initdb.d/001_create_schema.sql healthcheck: - test: ["CMD-SHELL", "pg_isready -U postgres -d document_engine"] + test: ["CMD-SHELL", "pg_isready -U postgres -d ocr"] interval: 10s timeout: 5s retries: 5 diff --git a/docengine/docker-compose.yml b/docengine/docker-compose.yml index 0c0fefa..340ff12 100644 --- a/docengine/docker-compose.yml +++ b/docengine/docker-compose.yml @@ -6,15 +6,15 @@ services: container_name: docengine_db environment: POSTGRES_USER: postgres - POSTGRES_PASSWORD: "M@tr!x#149@dm!N" - POSTGRES_DB: document_engine + POSTGRES_PASSWORD: "M@triXPostgr3s@6202" + POSTGRES_DB: ocr ports: - - "7925:5432" + - "5432:5432" volumes: - docengine_pgdata:/var/lib/postgresql/data - ./sql/001_create_schema.sql:/docker-entrypoint-initdb.d/001_create_schema.sql healthcheck: - test: ["CMD-SHELL", "pg_isready -U postgres -d document_engine"] + test: ["CMD-SHELL", "pg_isready -U postgres -d ocr"] interval: 10s timeout: 5s retries: 5 diff --git a/docengine/requirements.txt b/docengine/requirements.txt index 024e4c0..8e6a283 100644 --- a/docengine/requirements.txt +++ b/docengine/requirements.txt @@ -21,7 +21,7 @@ bcrypt==4.2.1 # Document Processing PyMuPDF==1.25.3 paddleocr==2.9.1 -paddlepaddle==3.0.0b1 +paddlepaddle>=3.0.0 layoutparser==0.3.4 opencv-python-headless==4.10.0.84 camelot-py[cv]==0.11.0 diff --git a/docengine/sql/001_create_schema.sql b/docengine/sql/001_create_schema.sql index 17e0751..1ba0050 100644 --- a/docengine/sql/001_create_schema.sql +++ b/docengine/sql/001_create_schema.sql @@ -2,7 +2,7 @@ CREATE SCHEMA IF NOT EXISTS admin; -- Set the default search path -ALTER DATABASE document_engine SET search_path TO admin, public; +ALTER DATABASE ocr SET search_path TO admin, public; -- Grant privileges GRANT ALL ON SCHEMA admin TO postgres; diff --git a/docengine/sql/002_create_tables.sql b/docengine/sql/002_create_tables.sql index 4a309d2..dea724e 100644 --- a/docengine/sql/002_create_tables.sql +++ b/docengine/sql/002_create_tables.sql @@ -1,6 +1,6 @@ -- DocEngine: Complete table creation script -- Schema: admin --- Database: document_engine +-- Database: ocr SET search_path TO admin, public; diff --git a/frontend/src/app/app.routes.ts b/frontend/src/app/app.routes.ts index 49e8453..0f67e5e 100644 --- a/frontend/src/app/app.routes.ts +++ b/frontend/src/app/app.routes.ts @@ -3,6 +3,7 @@ import { LoginComponent } from './login/login.component'; import { DashboardComponent } from './pages/dashboard/dashboard.component'; import { OcrComponent } from './ocr/ocr.component'; import { MailboxComponent } from './mailbox/mailbox.component'; +import { TemplatesComponent } from './templates/templates.component'; import { AuthorizeComponent } from './pages/session/auth/authorize.component'; import { AuthorizeGuard } from './interceptors/authorize.guard'; @@ -23,7 +24,8 @@ export const routes: Routes = [ children: [ { path: 'profile', component: ProfileComponent }, { path: 'mailbox', component: MailboxComponent }, - { path: 'ocr', component: OcrComponent } + { path: 'ocr', component: OcrComponent }, + { path: 'templates', component: TemplatesComponent } ] }, { path: 'account', diff --git a/frontend/src/app/services/template.service.ts b/frontend/src/app/services/template.service.ts new file mode 100644 index 0000000..71936d9 --- /dev/null +++ b/frontend/src/app/services/template.service.ts @@ -0,0 +1,91 @@ +import { Injectable } from '@angular/core'; +import { HttpClient } from '@angular/common/http'; +import { Observable } from 'rxjs'; +import { map } from 'rxjs/operators'; +import { environment } from '../../environments/environment'; + +export interface DocumentLayout { + pk_document_data_id: number; + fk_document_id: number; + page_no: number; + text_value: string; + block_type: string; + parent_block_id?: number; + x_coordinate: number; + y_coordinate: number; + width: number; + height: number; + confidence: number; + sequence_no: number; +} + +export interface TemplateField { + pk_template_field_id?: number; + field_label: string; + field_type: string; + display_order: number; + required_flag: boolean; +} + +export interface Template { + pk_template_id: number; + template_name: string; + fields: TemplateField[]; +} + +@Injectable({ + providedIn: 'root' +}) +export class TemplateService { + private apiUrl = environment.docEngineService; + + constructor(private http: HttpClient) {} + + uploadDocument(file: File): Observable { + const formData = new FormData(); + formData.append('file', file); + return this.http.post(`${this.apiUrl}/documents/upload`, formData); + } + + getDocumentLayout(documentId: string): Observable { + return this.http.get(`${this.apiUrl}/documents/${documentId}`).pipe( + map(doc => { + const layouts: DocumentLayout[] = []; + if (doc.pages) { + doc.pages.forEach((page: any) => { + if (page.text_blocks) { + page.text_blocks.forEach((tb: any) => { + layouts.push({ + pk_document_data_id: tb.id, + fk_document_id: doc.id, + page_no: page.page_number, + text_value: tb.text, + block_type: tb.block_type, + x_coordinate: tb.x, + y_coordinate: tb.y, + width: tb.width, + height: tb.height, + confidence: tb.confidence || 0, + sequence_no: tb.sequence || 0 + }); + }); + } + }); + } + return layouts; + }) + ); + } + + createTemplate(data: { template_name: string, fields: TemplateField[] }): Observable