From 1f89ca9b6b84883f8679b6625f29eb61fef9dad8 Mon Sep 17 00:00:00 2001 From: Sanechka_Plaksina Date: Thu, 12 Oct 2023 02:40:26 +0400 Subject: [PATCH 1/2] lab_2 --- tasks/plaksina-av/lab_2/.gitignore | 477 ++++++++++++++++++ tasks/plaksina-av/lab_2/README.md | 58 +++ tasks/plaksina-av/lab_2/data/data.txt | 3 + tasks/plaksina-av/lab_2/data/milka.txt | 5 + tasks/plaksina-av/lab_2/data/ugolek.txt | 4 + tasks/plaksina-av/lab_2/docker-compose.yml | 16 + tasks/plaksina-av/lab_2/lab_2.sln | 28 + tasks/plaksina-av/lab_2/result-1/data.txt | 3 + tasks/plaksina-av/lab_2/result.jpg | Bin 0 -> 107269 bytes tasks/plaksina-av/lab_2/result/result.txt | 1 + tasks/plaksina-av/lab_2/worker-1/Dockerfile | 15 + tasks/plaksina-av/lab_2/worker-1/Program.cs | 23 + .../lab_2/worker-1/worker-1.csproj | 11 + tasks/plaksina-av/lab_2/worker-2/Dockerfile | 15 + tasks/plaksina-av/lab_2/worker-2/Program.cs | 34 ++ .../lab_2/worker-2/worker-2.csproj | 11 + 16 files changed, 704 insertions(+) create mode 100644 tasks/plaksina-av/lab_2/.gitignore create mode 100644 tasks/plaksina-av/lab_2/README.md create mode 100644 tasks/plaksina-av/lab_2/data/data.txt create mode 100644 tasks/plaksina-av/lab_2/data/milka.txt create mode 100644 tasks/plaksina-av/lab_2/data/ugolek.txt create mode 100644 tasks/plaksina-av/lab_2/docker-compose.yml create mode 100644 tasks/plaksina-av/lab_2/lab_2.sln create mode 100644 tasks/plaksina-av/lab_2/result-1/data.txt create mode 100644 tasks/plaksina-av/lab_2/result.jpg create mode 100644 tasks/plaksina-av/lab_2/result/result.txt create mode 100644 tasks/plaksina-av/lab_2/worker-1/Dockerfile create mode 100644 tasks/plaksina-av/lab_2/worker-1/Program.cs create mode 100644 tasks/plaksina-av/lab_2/worker-1/worker-1.csproj create mode 100644 tasks/plaksina-av/lab_2/worker-2/Dockerfile create mode 100644 tasks/plaksina-av/lab_2/worker-2/Program.cs create mode 100644 tasks/plaksina-av/lab_2/worker-2/worker-2.csproj diff --git a/tasks/plaksina-av/lab_2/.gitignore b/tasks/plaksina-av/lab_2/.gitignore new file mode 100644 index 0000000..154e127 --- /dev/null +++ b/tasks/plaksina-av/lab_2/.gitignore @@ -0,0 +1,477 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET +project.lock.json +project.fragment.lock.json +artifacts/ + +# Tye +.tye/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.tlog +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio 6 auto-generated project file (contains which files were open etc.) +*.vbp + +# Visual Studio 6 workspace and project file (working project files containing files to include in project) +*.dsw +*.dsp + +# Visual Studio 6 technical files +*.ncb +*.aps + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# Visual Studio History (VSHistory) files +.vshistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd + +# VS Code files for those working on multiple tools +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +# Local History for Visual Studio Code +.history/ + +# Windows Installer files from build outputs +*.cab +*.msi +*.msix +*.msm +*.msp + +# JetBrains Rider +*.sln.iml + +## +## Visual studio for Mac +## + + +# globs +Makefile.in +*.userprefs +*.usertasks +config.make +config.status +aclocal.m4 +install-sh +autom4te.cache/ +*.tar.gz +tarballs/ +test-results/ + +# Mac bundle stuff +*.dmg +*.app + +# content below from: https://github.com/github/gitignore/blob/master/Global/macOS.gitignore +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# content below from: https://github.com/github/gitignore/blob/master/Global/Windows.gitignore +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk diff --git a/tasks/plaksina-av/lab_2/README.md b/tasks/plaksina-av/lab_2/README.md new file mode 100644 index 0000000..acf6e89 --- /dev/null +++ b/tasks/plaksina-av/lab_2/README.md @@ -0,0 +1,58 @@ +# Отчёт по лабораторной работе №2 + +Выполнила: студентка гр. ИСЭбд-41 Плаксина Александра. + +Вариант программы 1: Формирует файл `/var/result/data.txt` так, что каждая строка файла - количество строк в файлах из каталога `/var/data`. +Вариант программы 2: Ищет наименьшее число из файла `/var/data/data.txt` и сохраняет его третью степень в `/var/result/result.txt`. + +## Создание приложений + +Создадим 2 приложения. +Был выбран язык C# и технология .NET 7. + +Для создания обычных консольных приложений воспользуемся командами: + +```sh +dotnet new console -o worker-1 +dotnet new console -o worker-2 +``` +Согласно варианту, программа 1 должна просматривать все файлы в каталоге `/var/data`, считывать количество строк в каждом файле и результат записывать в `/var/result/data.txt`. + +[Исходный текст программы worker-1](worker-1/Program.cs) + +Согласно варианту программа 2 должна найти наименьшее число из файла `/var/data/data.txt` и сохранить его третью степень в `/var/result/result.txt`. + +[Исходный текст программы worker-2](worker-2/Program.cs) + +Дополнительно создан файл [.gitignore](.gitignore) для того, чтобы не закоммитить в git ничего лишнего. + +## Настройка окружения + +Для связи двух приложений воспользуемся следующей схемой: + +1. Каталог `./data` должен быть примонтирован в каталог `/var/data` для программы 1. + Оттуда будут браться исходные данные. +2. Каталог `./result-1` должен быть примонтирован в каталог `/var/result` для программы 2. + Туда будут складываться промежуточные данные. +3. Каталог `./result-1` также должен быть примонтирован в каталог `/var/data` для программы 2. + Оттуда будут браться промежуточные результаты. +4. Каталог `./result` должен быть примонтирован в каталог `/var/result` для программы 2. + Туда будут складывать результаты финальной обработки. + +Для каждой программы были созданы файлы Dockerfile ([программа 1](worker-1/Dockerfile), [программа 2](worker-1/Dockerfile)) с подробным описанием процесса сборки. + +Был создан файл [docker-compose.yml](docker-compose.yml), в котором указан манифест для запуска распределённого приложения. + +## Сборка и запуск + +В каталог `./data` помещены 3 файла с различным количеством строк в каждом файле. В первом файле - 3 строки, во втором - 5 строк, а в третьем - 4 строки + +Для запуска приложения необходимо ввести команду `docker compose up ---build`. + +Результат запуска после сборки: + +![](result.jpg) + +В результате в каталоге `./result` создался файл `result.txt` с содержимым `27`, что соответствует входным данным, так как наименьшим числом в нашем случае является `3`. + +Изменение значений в файлах из каталога `./data` также изменяет содержимое в файлах из каталогов `./result-1` и `./result`. \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/data/data.txt b/tasks/plaksina-av/lab_2/data/data.txt new file mode 100644 index 0000000..fb9ab8c --- /dev/null +++ b/tasks/plaksina-av/lab_2/data/data.txt @@ -0,0 +1,3 @@ +3 +8 +2 \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/data/milka.txt b/tasks/plaksina-av/lab_2/data/milka.txt new file mode 100644 index 0000000..5b27e61 --- /dev/null +++ b/tasks/plaksina-av/lab_2/data/milka.txt @@ -0,0 +1,5 @@ +самая +красивая +кошечка +на +света \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/data/ugolek.txt b/tasks/plaksina-av/lab_2/data/ugolek.txt new file mode 100644 index 0000000..53fab8d --- /dev/null +++ b/tasks/plaksina-av/lab_2/data/ugolek.txt @@ -0,0 +1,4 @@ +самый +милый +кот +уголек \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/docker-compose.yml b/tasks/plaksina-av/lab_2/docker-compose.yml new file mode 100644 index 0000000..ef6bc7d --- /dev/null +++ b/tasks/plaksina-av/lab_2/docker-compose.yml @@ -0,0 +1,16 @@ +version: "3.1" +services: + worker-1: + build: ./worker-1 + volumes: + #монтируем локальную папку в запущенный образ контейнера + - ./data:/var/data + - ./result-1:/var/result + worker-2: + build: ./worker-2 + volumes: + - ./result-1:/var/data + - ./result:/var/result + #добавляется зависимость, так как по условию второе приложение зависит от первого + depends_on: + - worker-1 \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/lab_2.sln b/tasks/plaksina-av/lab_2/lab_2.sln new file mode 100644 index 0000000..d4c99ce --- /dev/null +++ b/tasks/plaksina-av/lab_2/lab_2.sln @@ -0,0 +1,28 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "worker-1", "worker-1\worker-1.csproj", "{43ACD78C-1B90-40A9-B925-40FD839FF4DF}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "worker-2", "worker-2\worker-2.csproj", "{E34454E8-2FCD-49B1-8D30-314C57A1A1AF}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {43ACD78C-1B90-40A9-B925-40FD839FF4DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {43ACD78C-1B90-40A9-B925-40FD839FF4DF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {43ACD78C-1B90-40A9-B925-40FD839FF4DF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {43ACD78C-1B90-40A9-B925-40FD839FF4DF}.Release|Any CPU.Build.0 = Release|Any CPU + {E34454E8-2FCD-49B1-8D30-314C57A1A1AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E34454E8-2FCD-49B1-8D30-314C57A1A1AF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E34454E8-2FCD-49B1-8D30-314C57A1A1AF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E34454E8-2FCD-49B1-8D30-314C57A1A1AF}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection +EndGlobal diff --git a/tasks/plaksina-av/lab_2/result-1/data.txt b/tasks/plaksina-av/lab_2/result-1/data.txt new file mode 100644 index 0000000..81a8322 --- /dev/null +++ b/tasks/plaksina-av/lab_2/result-1/data.txt @@ -0,0 +1,3 @@ +3 +5 +4 diff --git a/tasks/plaksina-av/lab_2/result.jpg b/tasks/plaksina-av/lab_2/result.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8c6fae679e64df150bcca9217f84c6931a4f38e0 GIT binary patch literal 107269 zcmd432{fDC8!xIw6-CWOE3Fz@iVlVv^J$CXBWj-07A2Ha6;YA2Y93o-OGyQZD@xPvcKFx9b82eth zIRCv9_HdEx?>V@HxkWBqGddx9?*Wfokl6K?ZwgOdyj9mJZZkrWzwz*C6fd8IQ=-$3#Y+`!X%-q(_-oeqy*~Qb#`;m_?#4q?+NN5-={Q0ZsnAo`Z zgv9iW%&hF3x9@U478RF#DlIFosBdUQH#L80Y3=In>Fw+PXW-lD*!aXG?$;EaNFpyR zE-n9FS*338?Eazc(f1G7_k|W_n|+*%i<67zU$c)L4`Uyk!d%=JuALAuy2tY%NL23n z%adZa-W1k#@?N}QLlJ-Ybc9brUW2GW{nzsUYWV*>yQBWM4F4Z?{~u=0a&U2QAK^Jp zaUNs;gq*@0Kn|Arf#dHZj`fmxz$<@-ENdFsDAWUr>NrIoCIh($bTwQz4bLjAa&>l9 zEDR437_bQ&ajg8HwQ6^_J!+IluL{uk=+u5%`d$I(BvK&#ZO`kh6da1Yt zM$X;7f812eMtJF)Q#5DrwdDeO2rh(}k+uMK}%zkHO>O7=Ru}>GxWB(`Rx* z^TK@$|8#!c3Eh5LnvBRsc3x!Z!vSoT*aH^!e~yk>%B?M) zRleo4dJj^O+H*^P@Zs{0^IF@<*!NgbOgIrFyQ&+o7lYtqUZ*PsaGkjPn0YO%YFJ=R zVmR;eg!-13AkSd*GdH1DkY?6hWw$r6<^8y-9QRO*wvIOEDEQvfG4L7`I|jPAilSde zbrNF1$B>Uv3BXebA($0_lL>4X+f}JFP}7^vL!%>76h}$c^|NMIzMsmtOSsW=1Z>+7845yzN7OgN4yGS-JUO^;+CSl>HtP`45>n)7KVAqNW$V87PhU5C)n zy8%kpV;~h}xy4NHc&YPYB~gjN=B{8$i&VSWZNX&_i57%3ymQ2Hqi`I1|A>PhMwr)* zN9eM?qonljQSUtion2vZPU-_mwY;wMM@$d!-8WN1zSLF6pCGaHmgLxUMaz=JjinB+ zIGQ7!s-4oI57$lmnuqbE3|fw(k!PKcIQ-a0Px@$|SL`b2#*Zmrj(mLEeTY;;)~REf z2c5)Pd>FB|?}%e6tUH)K+=t~u2ry0Q22_+46-|rz&{<0N>nA;m2?~=Q2$xOsQr&=t zxN1fplYi2P^>GszQW0I%oha=B@xZ}H98qoXun8=LFqO?Pp=ZsjOSv+EV;U$KCqKzK zd5h^ve>7B?_YD49(O|sGOn8`xPR3x$q~wESX}9eRjGdAK>(WT+CAAH!qWsAN^UF0R z!>*#Yax0ZpLTs)%bkv3Tl^bHYE?VyRRx2pB@1_k#da`&+82-Ne<^7dRnWnmljm8AH zk!N`50Bm}JofrdWZeCHr#KyVFkp zM)5V4Jxe?D%XQUIIOiTUFsT$ER@`Ot1~L#5CgVOs;!*WK4Iv9i!Nx75pc9Yidz9=o z7Qfj%G@%(KjW|04zf?~Tmv{$=_oAL_fM}&7yM*NxX9K?%m}}#UVa(58_kRqg^dwS- z!pKV9ZMA7w%AJThs$-|4tONxa!;~nvn8A2@qLG6B{(LvxEs2cvE>04;wau&bIx*(U z@pfgHy}rFNpF@h7i8diiXEF)uzhWhbcg+i}3QxRl_kOmfTp2~%v5O>Rl&kz{3>axX z`pJ3%^u|u@IZQGyGE8ABF&|>L}^XDQ+rQOiuzgAJFcJo1ui%z($KO5Q>W4r!o4d}1h z&63ThOBxjd?U)C?2?0UyjAGjW1+{Y$5^h?D#iBdsepG&fUuRDzPxw>1Ko!%N9>!i8 zhM<%Kg^j+1k94fngpBoAj>+41qzI|S)YU2PtFPoAQ>$Luy%LZ|MqR zDg7i=CphUKq+~d*;~M>z`V@$$9;-R4HQd(WbsRBi2p==zn(pPw@-MT$b8X9IYIQD+K@@SA+1VCH#S>~zf^%0w z0-22^%gve=gzTBhh#BS~J@Nz0zgJe1f{VlWkY`nh$QZSnbk*D7_WD*#lKHF3Zvh*g z>5#h|F?Yc45~J+A<0c8GkzUwiX;TsR4y!tjF&|RFJ;QOWrpcn61#)#%VDv-EW=ZMH zU|_?vo6%XxJ*u1QKd0i&(shKhkfHWT>fcd3hG&&}2?;DddVo?2lan$k;IXgz2*Qo(~Cns&9;#azZQlb%^3jlcknUwMt~2t(vXd~Ug)V$ z?X`Z-X(-AO2N5pfHq#^NaKw>TZNl&pQF?nGZFff`Fn++0Fa3if))!2%XjgZo*8$h_ zg!*T1fu|p-^A3=7m=_`Q$lmtTNCA#JoQcSDt_a!m_*5wtHB2& zBz1fn5e`JBzGApD_33pK0I_*J>3S#Cv~Qq<-Z8)or*gWda=iX6d0>?3$94NzoxDRO z-!C~8cTDYt9f``;r#IJ zGg@GqE@Yi4Dk?vfEO_$#?#0m}viMI}bC0B~8r3lY zZXXO4D48rRbMq51mQwJ9c=;%|EOXSI#R1(Ky|uYkRm}0#>j#zjU*2|UDo9&VEvNR} zrH)2e>c2lGa$Nd99Y>@8p?~Z@^pF3C{)zw4KlvZ}asQ$J=YQz`pX}GeO#qK0{f5Bv zaovCvz=_Qc5vBsYokH%<@ZFPM$|t?5G)>T0d6fODQ!6jhM;X3Tci$-%U-a@d!l6jq zFTlilMFqSto-;FwDC5UxjZ5OQ4*%5T`4qWY-WWKS-*ERQUgetH&F?kaV%DKi>q9TD z_bi}39C7%7j>FQx<8Uz99~^}eGQ2_8`)f@8%VYr4u^jvhlCAvhdwpZJc9U%*w)II_ z{p+VsqfezqbYdI!()5v(yndi0Q}IBywip(=cz#0Tca4SL)jQVOc=!w8`2FUgHeg!@ zNAyF(lEY71MTaQFNv7W68zxW#QagJakN^)?o^Ncf&w^Dur4cR5VEXZ-z>NaFw=vx7 zD@<3FwXv|s^%^F@6_rT^#rrvZb5=9EY1e00IUv6|amL7`#QDeN-W6VBBX=d;*Vwk; zB_uwKmPF0jaHSUY0?uM0KEh193zQ}v)HUZ0-in1)eMrTRsyOxd>yMeSYPjSZQ?duh zA1G=;iHD|af8#Q%Xbx*H}-C!-ETK7JT?tzQU{iMUj%G5x&Rn|EL(QoLpkRlz{` zve%EbSs>xc5>e|HSn1u zj`?E1@eTm%yMu@1XZj6dNo5`Ifu) z&dg|h_c}doK8ec?ZbF@sE4dt6-(DTjl%L^}W1jc^EV05S89@Iun=_Ny=3EVZh8093 zx#(kmQTAf=U29>cJqJoLAq!tJZjWzi>_2Fnw2{&;&mHx#&WK;wKU=8h`s!70@Y&GX z8FhRm*|FOn_zT41Z782X{DW%ftMsh!W!+>5<{OrhI-$g&+!YgsjA^xe?UMGE>&A6Z z95GaBz>S@QIWjK&p3^|lz&{OdBK`sJN)k(Z^p@(8lJrs%{xEB&DQ zZT3m{;KMh0GJW}@mNg__avGZGMHRnv8}`H6vA)eF)23s9(K=f))tGm++~I0sCdz^( zIUTm$2E2|CVEsTz0ew#zD!4H(P{NoBpXtEvWr;b4NeP}iTFaZJ zEyLcLr0^41cdU>4OW<)dDjwK8yuLyne&unRiXQH+<%S#KFhH^yn(g&mEQT&eYqgP@ zJ1kDbpZ2;m*^_d{3@EtWfby4b_o=8-QEs&K`ePM~0iDjYz?gaRqA z>8`!kJPy+%@^pG8arZzEf+1n2Mw%-xR2YfDNH{OJLixnzA>(KT$Xul$IE>+lezf5Z`w zY6Qi0$imDplHL^8uL%9o4jFnHiR0%k7nLVI`t!-nkhZl!NMC+nz^C_j0?7ps>6_7C z&s8Jmhu2*h;&2eXpK^=|Vh1tVJN_skeMlsED-JBwq1;PSK??Zgx_|MvU>Mw*WYL_m z7Xd$<0+rs`lfCuEucsyt=H}@3{9f7736D@PIO53tCXwVeX(gkuNgXN6kuRjZxA{{x z-{H8tSCCMmP&snMp?9;oR$w)k7DF=NbfwgwBZ?Tb8V6RL-9|I)*&m`bi?gXo(*w0W3X6W=s zDnw?WL^so>g5>J^A=Wtkmgg;D#|7D&C02nqcAFOp(kR=$lO@0)jmdH*+TVT~TV#4P z#-|RMDq$*)CP5kQsgCFdaCR6X1_=C!Q%ES& zuw|lgSY(*$ElD~hxl-CbMC&A<)*vE-9DxKhMX4j5ZRxW)BYtq z+WspM#w*VV#_eeH>(3_sNuk z8W%^TI>yN}yfH@{cwM)8GigwK{XmyA3gInextk)it>_M=dOOY{14L;!mtMbq7> zNwn}dvPm^*E0!fOqN!@W2Oh67i76T`pPjCyd1;Aux9$$=r{9>_AK8c%b9(6$OwVUn zFqOwx+=!n?9A^=yAkw}4@y}3vuv$CHVfA|FogC|Fw*e8onEkLUqxbiHZuaVCELJN= z>Qu-xw#}55L!K362hv76rLF8d?bYkdtqxaj=YdqpUBBVRse%zB{k7t>(sh5*@U)&g zH9Mc7!|E%zN-cebfske$c$YG|cGPl^K?{9kZI{LiYBqiH5P6sj`21 zD~kGtDgz0B@QU_q5+N|)c@F(yB4oN&6k;en!ZfZj3OMyVWmnQAda~*J=&VNR!sGAu zi`K*>2Xsc7V$KqFCcAbBY`PpEi)s1k2j3feqi*S*jt#9D-H=>F4qh{Lb6g>;uQ1O3 zf)TnRsmA|$JgHi}IW{~RxKy8RcA*vj@ZGx% zzORZK69?jye%8r9l#FhV3-nqFfy@)X$+}37WP&~z5!sW{cPUbtWFVyvtn_zD&UTny zZptYYY=TX38KnM_DO7nO{v!(LH zFm(!7a+(aKsDW9eNRTzI8uRy^Fp2NfS&x$V(Z7%l8kSr*xvO5HH$L>hFDHbQiGzzXtl(9757P!%UkT9aU5Ma@hBXPYuhzoY!~ zxKRXY$VyenVKhMAB#P$rY_ROqLRa#|tCoC^i22_;g@rm1I&@FUFqzN?j&Ds{4|`C^ zyg}EG8r>eeOV6Tm8c_~^ydUj3)kFc66Z+H&Q@!6=C&*{sk-MHhlo9RcVP@*MNf^u( zE~`D_2po8>!K@wQH&?U7|FFPi2j(?{64mgt)dB4thB|AeE{tKCDHW9je1yeUc6JCh zu@k?}{D^)@)@2GSh3(?bI!YKS1RPhwzFdryrQyTZ9m0j9AFTqfJH2=y_PS#`LY;nT z`4t)@i|n*Q`la#uh9M;DCZKRA;`Ly)f2fN=`suc`yoiV^T9o9=o$1D0L=!WP@2e%s z_fj#d&?Amx3)AiU%%-(3D=HPKE>E8#7iNw)LRx^LJN`KI**~=(1N8wU=u`wr=mp%J zY`{+oq1Qirw^iK;V|o_D+RR#gKOZOb7lFSWKk+Q+)Q?KFE-5e2HKE^NrnqM>J7P&g zh#)&}zMS2etJ zaAos{;}OSzw7=!vZ?TVyHrCHw1i{Y=WsnPd*f(^Xv6#b0;1N5uItVRV8SOZr?~t+5 zOwLgjKU0$qBt;^L%drcT!2DVdH{U&Vh+11j=qG12pKN{oqMLUd9@*J<%?G*d<~nvE zPa%d3x#_(mp%`h?R71J74!MacFNX2qME3jm9*mTn@2ORg9Kq^{g}(rZV1Hm)G4RE*CYKYV|`<^Hs}jo(Tj+|tyba#!7y zZc0f5Q=mP76oQ~W|3`X8caDdA(rwCe9MgwX))*0aL1I!bsYT)KT&F@eue|V`j?mCR zpPAXKnA;TFE(+Wl+d_ApS3d!_qKv{Gj=79CmScP*X~1Zx;{9~jS-&@KeF}Fjt7jXI z$mCP&Ajh-9os-qSje#jRX6wfC=X+GJT9%njrUH-HeoOw%?SV_$ydM79X2aRri%FSY zMM|4HaNsA%^MdAbC*K1tRAi+eE?5CwUEOGT1$RS_`!3m-``xeC$6uJqAG_!7;_l?` zHU)NdbN1-IXsmI)&@^G3n3cJG=Cl#dYh%O*I`k{+INg)lMl+(SBu{O?X2vD?xm*3ku1|2SCh5g&zDgnpaL);?d4$^k#2j$aZ)>mbrwHF zQnhlowI7A5OK%^Xlz^1D&AAP71+MWwh~jpBQojrV0R3BSX?Kqa3{ zoO81+(u^rF4^hzT-Dc?g5Z6dC4Ux1myBQp;37gd*bYsoe;5zd_aagkj6@ezsUhWL`L^7}9#j z13=xCJs;rlV|yiF!TCJHyF1~&V0w5`otq^0iDS}+=Q=3dr7_q5FgHwy_~{MN0BA}X zs7tfcjoIicEH8G67S3+jQP3j3Eq{6;@hb1veG|cu;G2CSK`tdqd-6vdcAoEGZI&as zU+-m9N{uDAw77XnjhD!@m=q<~R7719dbM-Xg>T(jgPM^e!FkOxf*@a36O4G;zVp}eQk8AsO%qoXb(2t<08G9 zJS@h%L-lGJrN44$(+)c>rXuG2)rriNE-a>eNj|^gy4lhf1bR>Xm7ye4n+|4NTP2)h zsnP?ddkwEs^=m)DL`_w0~6aU*B?XxqHO1T=99S=jPbqnxnt*P6T{v ze^_*KVB76+@Vf{5)L(I@^xZ^gS!$bwp`(k5R!;*;&KNZ#?9zA-3$VV>1U8?;(=)41 zs_jZ~=o@s8<*kA~-m13Q0^v0Fa{_u}{xmQ%rp-|*7Z%`ECGPidIE}4opgTpo2f)p= zrVCSm^MG|C*OsxVF$Nrr6|Ub1UNelWk+`-2%_}Tp4^%pA7Z=U2Pik^Nj4BetOUT^fpp! z(s!n?9bSBhfn+zZez*sl#Eyyd!^1066wh&5)1N-e+pyMcNsZLfvpBrH!Ta{}iu#*N zI}eo8IWNa`7>?nMOr0C6vTJ7WDyokcBUJNjLPw@|O~sXiLGzP)BXHfVl5w!5P0*I; z*d`VVmWDhBF)yNc4f)|5hbX2>7- zSD&c!UY^Yt%y+J``AqRbI*Q@UbOH%64Grb!gCG5Kg%U_wIlxDso5yQBzvNd*4$q!V zq?FxOF+ZO1y8rd?8CE9}4UAH)+WG^GV*w_2r}Ql)Un#Xv_L3UiLj{!F(v4HDXi7a} zv`lt|hS~8yeYkwFu5URRIRE~LqY3b$is>Cj7K+I=d=*6OGocDZ_e8=t9!wK9}F z=A8H&f}!_E?JBCaj5K< zTV!Dw;Xj7kakoWp9ezgJ(S_&1Q)H6k*CURX*s~a6qU)^HURSe+e4119INX3X>G&m< zKSkZTVdnzG@yFE796=Bz#{LhKhwb*wJCtBJ{%_{I@dD&G?HBgtO&WMFq#m>P*ov2MS<)gP{tyrr=TyPlL#5 z;=f?AYrXgUkW%{RWZ%i){Z8-)75@$Obp8Ag(7x^cWm^3kylG!$5gP-n^VtxmR+>^a z>nMaS5An%IlMhg14NQacnM=o+EM^oqAaybpt^d zRSPrYn&et?&c{#u2Dac)~wJt41ki>ixNufw!BERLKDxKTD3+h^&Duu zPrb5;nSRQ8p0&)R;YF~i)&_Tov$L<^l ziR-W^+K&VN-+y1XJdd3SR1lTB_RI5)sM3`*w`fA0`i4OO73xd}gi*RI0J0Fg6xEmk zs{CbK;_MrB3`i?(?Y7d`t@|~YRCF`CL78Xn*5qvMIuFBb6)b`QQgZIlP1O@H0adW) zQ1RbEE7Eg$WzK5{f8Tp2y9~lMe~EDYdi+g2ulpeUr3Jk4Aqs6}AF^zV-OFs5wb%pq zK+(m!P49YDLzW$-f?S5zw*Y@=7FcICh+ZXPqzj$h&`1+TD z;7P;ikcv+@&Dv(BAyzd~KzYnh8!}a`zvlw9!&MlP=~)bDC-ugBPE^M+ch)y#gJ~>W zlo&GM+LZwbGgOvDoGoA(r!T?0P%c@IUJpp$lvKHX*^RsN`~iy%PH;b@4|-BTR`fsW zUu&oQ9q23#r(FTtK3uC{p;k$at6Bj~@6+u_ntwQ6%K@@ZY<`pcfIr+)9yG+7Knk%= zp?;BRiiaOqvTz9sv=b!_V~5>+S{>(`erg&#T>7@C!5D<8ep4)sfKgx9ENldQsaxle zmHNQy0W@M0^#S2zpdbv;-MZi~Co6m9%SeE}Ymo)%lE%Y?^Bs}L0#iSIKC_r;y+k;1 zS;Q#we!mh^=i755cP*M(Z)vSXZzHXhVEl<iC4|z?n1$j zzjaM|u37sJrmYWByGg;?J^8jIp>=Y_YQY61*Ou1F4jq^l&blRget%eDMpCx|B(^>( zvZ7p-*!zm(Ya&CBEW{Lz=$q4^hcVc`lJ`8)w5MsMpX9r|y|wOM&;Q?u(bLw5Fz&5g^j-F`GG+E`QT-4$apzY+e6OwkN+i zbHdSqOZ@z4qZ2jNcNxxOsJ;?)Rp^!;GJJ|)QK{Y9XpHq1bcB7e^{+|g?bJT})hy$e z(drI8kfHR`UbFojC(MG>+^Ix&XIz5+4T_h3Zd$V@QJ@y!N3*=tG*+ruN6de84a(X0 z_oyqc_<{iA>qtExy^`dU0@ozB2aY*Vuw6oNNbYsdCMUq(l!+hJ2929i3Gb%u+S}jW zz0G~W%dSgJ>|75G$%heV0M`)ba2PfZL2gcDot?cMA&?)NK&<7~j@Q&1_j(jjuFq)W zzZ;O@SIUHAz7O^289iSGK31Q41wMSu(t{<<|7amas`O31o_6tTwL<&wf6Z-r7s59b zp!e58qsW=rupW!YPrlxGaV~La?t0mu=j!PJ>a80}?Zu-bQ}+<$7+{Qt<@3h()l2)f z{-w%+lR$QW>VoxTLu^MJB;-1X3bbdFh(&iPhHWJNA;D#%-02>zr?W0+6w)ti?*~~3 z?+9;@LKNb;!%wv5u~jZnD8x8Rh91N)V3VdHU|zfhWx6LvR&gX`uP!~n@m?+z9osyv zknNC48dofdIGr>IPJd)$2}jOvy#k0}kn`$^1X1`!;_yZq7fcTSZKqc)SI@p(0B%0?P;; z#W7XE^oTZ-RZ?9t|lNRcTS* z3S3N`~ikzmMp7_t*Y4TPElfnc~F$%{KgQ+ zA;rDGH;Tore``Y{R1-UpqvV7_JpUG+Ur=1ye9U1F3RMqfQw$3gsN(SFPQMeM=3KE~ zRI~rIHHT8KURcTr``&E&0KgO*CVxkr#<-K+eYyy|ObcSIFr6R7mY6|LfTujLaZKZq zDSUN%W6o7o{C71n|B^zFtqHZ|VGQSWltB({7()d{>2uBllfezc>kR4|h?0-N`@}%u z#)s|x$U=x(=a_|SzPepQMBZH|op^Vt;cx@Y=DCr(DK|6PsI{ft=aR{En zXsjPJ9w-1Ht0hp#7NZE!{xWxnwuc;*Cs8AxA2hagKl@T~a~sOK^<_Zuj+$JG#KTw< z1>0~3&aRFtOhtMcXrhF=zN5xBPuqml=jkWaTk!#l92IM5nJVU&nWovmo z^Y(t^z(qb&_U+Ic>ge06w7mIr4L@97awejHv}c<=t+=S94npR#!rTQ*=Rtjz+Vf$_ zs`^2|&e|BPq~@SXrN!YT`p3uz7f01TWSVE(Y7ICnpv_cf<$b>;1}{=F@YyhB{O!i} zf5Mv3M3x-gfRaJ1?Gdn{k?-L`g!nr?1Dn+prgnzJ4-d!hZTt$2m$^}c;koqVvzxJU>*)*& z8G)*rr}lxZ9t)*&gA=pp9qYEuk8Kx-lMM@VI7H&NgUyWm3|Ae)X5bNyrK1n1g?OBy zs=cXM^AMomdQ_G1w|0D6dz#-&t@1afWEf=9_KrO@I-Dtc%5(D{Aei+N+{{hbkfcl# zx4NMstRYkbHhKedp|F=Y%)6RldnC z@g+m;H=&_6o_UR$O&}Y-r1E!N>~(1V`CDWq$hGwSNI=4)HznCxm)t$>#C*$|716RY zxzL}k&(Lv3CS`*rA}SmrT-GWrM_3o1&@%&%IJ$?#n7KA9DT_@0}dP_t(X0V!^WVbSw!h z2G^!6cb~h}-Tl+|d0=fswUH{i_KgZCIPIEw(aG#O@?A^0euXpB%T z^FBSThHmOcJ@;awapR&XWz{dkxU@l7ymxRQEHGi|#rOD_=|KJfrGWds*oK^5s0i!{ zo!pH#NkUQ%Yid*uxJ1iS_L=6Qr4w`3A?`$6VF>? zi~Riq0**~J`Czi|Gz;rwpHC0Z^SXZCrWdDXm5j0s`7`3YzXI+4XT25_OTAuJ;*b}- zST0}T3>mmI9%O4~hSUG6(z`wfRw`g&BoPsSJc!bdvyIYm-2%y z$p+@B{5=5c4cj;!-gC9n#$>DqewTiZgyMpAA%#}fKEe|9svo(l-$jpUt_e7>*7su` znxGrA&F-XRo$+$3n|=W+Gmpx(2ty8mx1fQgIZ>5e!9AwxA6B#nF3W#<@6DHYCd+j8{y6cjEZ7>SjY^vOBDoAEV==MB$e|5Z0yo7Hp_gdVRK@k*hYo-Qis|bFQ zRkIIh7c0T`X5KS?Zn}QKSj_s^e?NHs{~*a?_|xoi=D}%9AX)td@Jtm(eg4qG`B4X( zo=N$1Cw18ZbBAYr`}?Bl>pS5mosAx@<&R!)15SfTO$k&{(mxd3%bN8~LkYUcH+4bS zGxpwfB38jZ{9eDH)c6bXg*T@ck{yQ(r6{H;`aVMOB@|>d97Ou^EKef%M!S9w%eOGX7gKIurZQ){1v7G+mJ3pB`PklM#NclcSr`5P1}5y zs+DbW_n|{5@7cihzxM5&-g8(6TbyYBSaF~-z2!!b&+V8dcCo9I0BfyH@Enc}}Ax5HTEZD&44U(|rJq!Gx63qkg$UT6eW`bY~a)Q2KA2ru&7zgZ+F< zLVdnJxVPE`htU1Q8Ehqbr!U5}jOj=*n2RH&#TDp}>8q9x*Gyw%<Sz0U`pit@m`IlFp16TrD3_RwHKH!$f+^%6)*=|GT|pl2_?LIN{^@C(;VL5 z2j|(dYdU-w+Ih6JFD1?U5jXqRsUC9I+#9J+OA|v_1l_U&y|w{n@xrGzNM&lY-G@@k z%l;C%+y1%uXRV7*BC01^&|nOq!6V}%a6^HOqnxMLg;9fPPkv(f$>5VrD@uRNCK{aR zA@e!MVO$-0#zoH64J^MRHf?4RXB?9wfQ4`|`-3W1u&1!|Z`pc`4o-idu;DqOgi-jD z5p|yt4Y1@2zQ|Aa>F+U7eUPVq-K^`CPp7?73N&9Ur=NQQR4p^`?~fI^Rw8}*ci~Co zyr?Z`X=}SVAmTxyUumQNhF#8&5^c-FZ$sgw1kg&w4lUuZfN4w_bD@h%CLnzP=jh~K zK!a&lyPkP76`JTX#sr3!{~ihsjwoD}u1?t~{iXJ;UMw}@?Zq3W(&pVy9LPr;-blR3 z4jWyTW(hEL=>7f-@qeW_{BRk{9!Z*R$rPrl;ar*$$u?*~%8Z|S^{Tf*IN4TA^~z(5 zrilm1NP_}F_O8PwI%x=DdL$7bN?+>@{52Ilu2k*N^YDr) zD-Ok$)QQ>mW~BT_hd5_D>|qZraSa-mJJ3eRad-7Obs4WgW~P@atO;5g`bq!6Mabva zN~SO&Jg;h4=epU;Q0zA4fNX8)63MH{Yl1S^Hu1D5MGGu8eoOvGUge9*X+c31QH!w} z%}5YvG{Czqadj28L5ip>t1fg5W z1=4&cF#+@Z*t32fDx=S^Ngd)HZFNzb2fWpoxA({0Yvt2#&cs(^aQ}2#-xc56TAwOr zvCAK7H;gE2y~vXoQ--)N;g}~yeqU82TVq9SZx`7xpCVtH8*`4G8$gx>AQ7B zF5y;;v*C#RHQde~TPoyEAEd~15rmjQR3UQ;lz9Q69Pyh8to$vjKEgEeE^jZAb5jO= za(6p_t+A~5+Szp7^8R6Lj2AvjrxTc9208p~E_lRo* zX*0#zsm7{5?0|w{(s>UfoT;479mT%Dp8qn#Y635b`r(@l%5**&x& zZEjv_RQ$pkDcB&#a^H!X`d;<(h50t{0@4qhsH@($g|{Uy_W=Z)+}XGS)ihZ%G7J>; zjQ2_?PV%Y6nKwok!2UJ!yd29JlPyR#Hh;oU0WLp=kY)q)r!nkI_9QExEF{!TsueV& z4TiHphi5Hb=^7|uy|?w0f3)t3_swK+L`CZTMc=1Xn*Q94RJnJU0DJ@x2jlU*P{T@O zC2T}3L`wWtIc+M|s#(1?26IR+ zl6DyBOUIf@KUsVQCMDO*mCtH=V@I(RkkHiHJTP@j-l zWBtI2bX@yaPA0&*>I4@&%rxYq4-=DCv_nVMawhSA=QOpJWX(JcKWN_=U;15a%Vqrb zxLts~j^Cl}2oegI64_&kt8W0yn71i_Xnh~5c0Zfx138$kBv3p;j*=Qj98&5++#F-x z=Dc0%f6sl!-!XV)Y*0K?xX(0G%|*xSQP5(HX>C4szKG2$)ocOh3&H5p9`z`oWS|?mQdt9Y1gk=;R-WQ-i#3s!@RkkJx~16zUy8W#Mtv$f!T3~kzr(BdE8}@>QJIl; zS$c#cb}28%K0KYZL%T zz@#}zYAsu|`T(0iIL-pFI#I%i^KeayRT9zS5B(L@271bmB}NrYyOxR3+J?pbUEf}x zZDvDKd3!P6%k%m_M;w=o=qXg>d~*-s1xsm+DMJN!gDHvh)HSm@-1#Pkcl+==&oI6r zs2W{9M1~v^P#o(;Lem*p=5kc|JE5;ZI6c} zg;vYe^>tQp%TVuGt|Q|@x|xGclI~}qO4C!M9vnzrh3K2r!kWq8ZWJ$KLiR#?6B=zX z94}3X_b%wWDLQDJ7yz_sc=ICJ^o+BMv3*p zq)#oLgNTN()%{iTqIS&UPCf9}zaVlHkQ3{NN-I#L3iT2snIeZd2p-?pis&+WkiM%# zj#^X27k8yQIc`|Bu^%H>AwI2_h2A>n8yVLm(PrqiWPm6d`dZa;BAyOP$dN>QbryaL<&BYaLra8%#Xfa(}R+)a6uLp4*sjPF5 z*oPLsWC9#igQBh!?YTfHzpK81vWvO&H2C$g*k zyg<>ir^fW1Kln@c<|Ls9*lt?w`jUvS=a;KDoo%%D6LXB^MZfBZ_d>As&3*a)^Ert? z-xRhlG;E_(-j2nSUB7&$79<5DKlTR&(|iTya?VYIUH8+O74k7=fUEoAwfS}Xj`E)q zv_S#Tz~Q{So#{V7?M_&v^s~>IS&x1{sA$d1QO0&_4qWyay=QMQndxE{9IX8v$yTjA zF_dDOju~Erb5TJrn6{EH4ds~kl6r+^|IkU)4j}TK zy8l_8Z=03xANA>2a7XIOK}5N_Mc;6H{^W0FgD~;g*$Vq^$1DY%;LaK^(w6wm&c2|; z==QwmOi!t)Z^}XS%`2c(!}Cl7N@)W2LFB!Vw78}NHt4;nG`Ru4RyMP$g}?r(c1c&| z+xCo>xYMha35tsZEZJ)tA<62ci!EqkrX^F6E6(sQJ+BKdXXfg-pQFb%g;KZ?6QsfP6NO^H>z3cud3x7#oUZpO*X79j~X^+xf_GKLL970 zn}afE&Y2X2*-rgSTDT7?UoU{<)|nAgT^AW{S}0z4DfTvfkv;y zd%J9QX#NUvIHbYQnEcHa&i`Lmn*D!VIi_;(Z)NN~x;AOK6Eww!U{PoFr6@p>dT*pQ zskzr(?`wwwtDiDES(Row+t#uY^v5|++f^*>6ss9u-HPlPCM+Q zVF~zgx;x1|xD#*^^Kf*{C2O;(xkG7`HT94-iA#c(^#^8;c4}hss!37v0@x0oPyo*S0_rJTP6$R{}qeYYN5QM#ZZJcq$ujdxGq8zOP;b;Iqlo(NXw^Xg=ePgWD`U5 zrrTnjKjz+byYlV$`_gQJ!QWmuRULC$iLx7hb-F4OzdlZy3BkQHn2x+rmYYecnrYb> zalb|VFTA~1SW{gXt&0_Df*@UpN)u@+O=?sG1b&Es^b!#%AqJ$kkSIt8QL2J~bm=v8 zh;#t~=@O(Q2uKMepdpy@pY`vv_qjUHbN0SD7hFPEYh}&(&GC)#evskPw1%k((=0$N z^FZ;zC_sh%FUt`3=@1XR&F)>&#KX46#u+7Vx)MJB!cL}|W<&9r%r$H5tg2QT!h_=# zOhkjIe&y+5QLqu;?^q+?3lWIC#wb8up?%|Zh@81{k}Mk#(&7^2cs z1RG5^$BznO7IQ%Z?QVZRWiRiEj+uqJ=wGYKf10`iW4Tm2YOh&Fzo1lzS_;gYutar7SY1hLG2ja#&bto4AAjdcgb0IG^4Stlh?Rl(!#)E|iYqmGsj zj;C)dK_|`>TNv~I6fj>@Uh`h98u52wG|b_%c$I8omRQ>gZbT$QvaxAb96s;b`ZUNwQ z*uco|SK_04kXB;$v^^@fQF3#LsUc$ft2s1m`YNV9&M@e!3HF0j)H9xnd(kC9REv4a z)-+M~v?FtD7{H*6Dv)X-g1{FcUh^o$!;(3RZ@B8M99r;mv~1i#56{od(Hh=E$`rLE zd=0w*q=sS_dGSGBgIz$uo(G5k#}?{YSrdCuV(OK_p22sSy7j zU9Nd;Zkj|$3T3%{rdtb+c z=qgqkji7NyipUTx$+dmZ#+WR;nEGmIS~aBP7k8oa@)B-o@&4j{0%31^Ys3BWhE>`q z(&xVZNjaZIQeI;~oFQ`d^98yZZLd9fmj}0ZEV^f;T3+UkbY^bIoEwW2sx0dR{>0`G z6omTvFN?4?D|r;3^!JgoGU?Ak8^(m@;tLN*5!ILH8+c9i+$lG+xCL-bdA!!YG=c*ay z$aB}DBjok1Gz^UAAFZE>NXLfYrP~J&ZR~dhb{B6;oz2J`G4~nsmyygjm}*#n!;4dZ z3N;jUm41UNLxxg-rx(*g4JBpWqq34Y`tmP4AxU=?d4`P_1Q+dOwy60z-3{gpE18|0 zvAJeB^3?9VumP#^(Dl&0`vbLwW)YG_2=0ThA$dthz?H{9Pczv)|9-&j>I#z5)mPj* zXMb9XZVTFIM$az&I1)FvwLz})s<6kkJz2TE6>Lor$;?HEmVDm{s)JmbT5wXS#_k$`L*ruGMr_n?_Z$}s}?(0VZ_pa-ov@-Yx0b%eYUi z1IINT*l8u4CDR-b6i$C#OCjb1I?-SM=GscEyV7@uJ}__KJ}3P=^_V72SD@ZxU`c;B zt*5n3zys;fxEs*Yydz()TOmQFR>8Ot%HfG;DkYxyKm`e*yde7D|K+$#iDaH|M*SZ+ z?r3NKbKJR5M_tGe$bXJI?Eit|&TPB%*X*m{)Sy2UKl4UwSouLqg%KR4!*3Bb)iK4k zGDb7=QS}g*!*wa9AsF>!8Q=}|L10(kPjKzW0QhJglY+K1^)9?`f?K}{s z>)o}~ZBh99tA@|9iU*&RlQ=hpYD=29sn=3cR1~yUO_wGhl10g(o z)jyWt&`X`7@K27T&yky{dmOn|G6_L2wtx(4{U<#y9_w3$Da>Wq?rxg5OqLJdhBd%s zBKQ}*iA&M4Jr9$l$k)shx_449H6E*vj{d|n$Nd7kLIs!$xc#K2{e=mN3OP1eTWk$1 zuw4gH$rF4Z&_PR)Ru^ucEnxG@yeVNM(K~g_61mR70$)b27T5>BM8lwq|FW!cf*NZu zByR^HV)fa|nx&8&Bhp+7LE#C9r|XQ*$MzX%OtX9DRtZ?b{YmZhSWf%al^AeSZ2$gu zP%o6f`y94+WkHYd6wRaZJH=^ELE8~GyPIu}C^Iv4?bH1FWSQ0TeQ`6d+!xWKmqkzc z$&h}mXb5~LY^k&w@AC?Dp2_ij=vkfadwgZCeK_ogGM{pDd3gAZH!q^<^SuzRkXQn?51k|~(LsHSKO*bCJo|Eucxj@<(Xa?Gdm-TFsUwR>%G9vL zR=Epp@>&Yl^;NtmIg0{j)G}q5{eW1n3QYvF{Z2Wx(|x(~+g^Zhb*G+(!fZjL-PJU7 z*2Q|zP4Q(J3)>eqZ{Q0}5UT7E(HuV!3u;{H>k_mkdG;Zm9{ zJmQ|6o9CXwJujR3bDfxDX*bEaKX7|l3zPSQ^IlsfxfnUry*r_~P2wq*~W}r-R?jzteOBss^cp0%g>9^P;}#-Xg8+;_(v;K>vhWb)RcH=%%N$ z>};(mMxwgWNaYrCdW6V$cXNEhgI^5+5avQGs^*1$Kk* zggEqNi@y(d#perbIm^ua;R;*q?>F>)HX$~jf7&D2lg>|JFo7VKqsev5kI zM2xD^>Hiiik|+g93aTWSC|#tcnUNx1mjM01%(N=XTc=@kc(8m>-GeIfqJ#DY*|)E! z?q!fBa7t^~L^KSWjJ=?%6LMrm+IYLh%?Cw$LKk5?qx>Ikg?hbOC*~eN%g0 z!PazyUDIINVzwn%#8?3=XSR%@8I2W_h|?cR6au4C;4*52x$&b!p9*BoUC=k6hGtzg z1ni;9oS^3YK}al=G+By1L6zvy6(A*-mV};tk7wNfm3g36LNG}bc4>{&zG$m3XNwE+ zHm;Pb9b4vQBx61HqyHN2B8uszR2Q07$iFQ205V)McrZ_w?31XgZcDYaB6Yp4Sbv;y zZ(3@WXk>EDavbK3s6F$w^u9$w5O;hLu;0I@1G|u5A`)I5VuLq~*H$KgPrv|iq0@AA zlqNS1Z0d1M9a>gEjAG+Vhh6j!7i52Hg6Fcj{KJp#mYb=}g`+%alHm&^+kX*jfcc@l z#pG+r`G-`!ABSzJ_W7+K^<5JN_b=Jb^znyru-@b-Qh9saa3&3o5P!7}f?JzdX|yS3 zCZ_KTA{^3E^KZcxTAi-xn`9{!Zmn*a=NuK8-9!_T9;Z2_Tcj(%wPY9C)IqIG2|5oW z1?-;keMBkg2J$kg3=sVnP&cS$pEZ@@l#q7i0|nbS)8e>q&ZFnw2cG!w&ecUY($i9% zbI<);9O^uIq7M{<7H29W^=GiI9bDW1MenyjR;ImSe{GxyckEukM&@O=mdFS*=FLD( zfBBJDMv{eBE~M{0%hMYKVFZ(rP?{#yg!0&jGeqz%)vbWqXii3bc;?cs{?>8nqhZUf zG2hGZ0IL%xEM-6{ui+c*Ymr%6epDN&=I->5CE+kspv-)GSYzp{5)p)!Q(HI1tg1v* z=XX?+&Hbk4gq2X{mt|$L&+a@xUr_IvYv=CC4gNm}nu7idn*M?Q7c>R`&!B0;|5wnI zo<@>blg=S&4GQGl&R?DHT}jMd&zLP?rX$UD>)vh&J~WmxDsWO`PK0|~jf`zvVb?WJ z%WI(&GfMWbUf8(omI3qyq&U@xG)*{L9`5^Tr#&`$#TK-f#k+gFk-%hbU!&}5-RIyr zUVQG81+Qk6olFb!NBS3Z}miyt`CS*T#dG} zddNb5Lqc_xgn0C48?;r2DEC2mnkr!&V}(1s%Z47G6sOewp;#{dI5W(88J{J-~Q)7-V^E8uQ#|y^LWh#F8g}n7a>Xb?LLZ!h?+lPH>Yi%Y! z^p%PJk>@M~uBMl<`14D9m1JF4xV2zrW!)%&Bbg zapbn2fPQGHXQ8#{$DwRJP39wWwXWjTZlUHh=F|4Y(iSJ{EYs4QM@w715F^!~4xIq3 zll&i}9rrX-&?j&MH@)bP$zJ;}%VYEjz#~nagX|WO3^oq&WwG6|)M?5+suEcbUs^!u zEBz5tMlc+(A|WuuPWXk?Q9bTT7+h*3r70^n8RvcT+H2*Dkx&h)Db4#XDRFf(rJD@~ zZ7AEFC4f0X+DFYA$bsXP{)Dt(!d*8oPT}YK)w#k4Vs2U!3#t4%>~9CO^cWpKT=11Njv+fetuu&*b{^xFPY8nZ9pL|GltCi_U=?hLfuAA^VeZ+Y!`$T1`rX_MXjgCIusTTYkRo?hrTWsb(~uWd3nyAw3)Jui%=VS*jyh& zpnM(AbI?iq@|rSl`=s3W?C_iV@7t!Ra&*sq7jgjT6xap&650fbBO*O$VGgC`p@cCL z=-iZ(&7H~Gy;LV9(>aVu7W*Z(;v7Uj_SdH&-}}!Yqfpj;rXspWyIYd#KuJsNL)Xs_ zbOoDbRIB93)q;LGE1K$(XBwOpUME(n_8JK#Q_R*zlivmS3yXuu6O@;esM`}2a2rq~ z;Kzc*GBsyZ4QDYB-YrdR{60p(!e;p?UvqWka(~alQRBJ(oOGAZ^4w0L29MUx)Rbf8 zba;tfi^PzHa^)N@LAH_NrpZq=ueZlWyP6XgbCwZ)lFYY^EVLUJ$d~~fnxJgVDF6p| zhIy4PL$(3@(n{zODwI$YU+wtM(cQxMVkd6%?CsNb;%bNI`$wV`4j(f@NtH}CQ`SiD zPCl{;fzh2$R`2z}?*mwaI3&NE)7DPGGE7Y!Qqree1Xq9G{HxgJ`r^Zi(y3JM0hBya zoxIUSY9xSOFr`CWck@Z9A;ESH^8x>|=-3sit4$YA#h#O!GCiPKuOjh zoX?;-6!R*(CYe+y2TE)=ElsYn?I~SSXo*>k95=ZU@JL-|cbqhKUBh3IIFzugT5wKg z_$z}}Z8e=_kpQc)LAjS=5;4_n6W3gdQ&$;(2ds z541=DQ>7K=KOfByIl1xgb>;GTz2F2W^?_-8CoK#YKX2l2{|)1veU5>TZ1DT{;}AA- z@Mmy+FmNfZ6jp$CighzpS`$pr_ANC*uT|2pf^aqtJ9{s`p67oNUAe^e#4Yo5`DEE< zb9U5vQu5_vFCVI`;h?bU95q+45Are-+td*fic|smCq>gf6Y+UJ?kSA*7<6j-EZTpM zc(=>}29L^|7u~GQL)~Ofi)&L?0L)?p)s-+N*K3c8A}!u){idSPM3sI`*jsjp(o$VC zlB@h8w0hBYP>XNOe{9ZqY)L~_Mjb9ISwR#l{7`as>frUvbjV~`c$<@cPjPLquyfu% z(MeYFuU`uw>Iu^pNd6R8sxa*Vsu#qC8Pj1(ZlfE4=O>BOBUgl2aVo7r1U%~uVLxFM z3hAbG>*Gnb^`zZ+6Q0ivBGhm^_%k>P%?I|_PXgkyLD4iF)WjTlIfTj05~75kPheg* z!S8cXgDy6ij3zEto0!k;?yGV%CyvBleZ8l;B-P(-u5Y_W?f49CQ6EA_=dn;ZR+VCH z{>nt<;3pFI=`cLeeMC0vVfbRxYmI_7SJ?yy_Xo{Fopoa3`hMH}Hm+z|L`aTp8+D)< z4sG1uU8+Q0ArDpy#;c~pj=5Co71+bS0Ny9Bt^MAvF*mMWwInW~)UM*ccAuHF@T#hTH&x#tsMm1*BUHMDe9E;?tr+pEh zu8sb#y~B75Y)6$49w5ZQD?@_D>dJ+P-l2ku=_a~dq}qWqGkB6m+}M6bXkiV;MSDv{ zBhmYqbLw2#7p-0+Xu31FgL;a*V@3rP(%Gmc1@x2D^_w$QbQceB{6K8fp4HP^c0X_{ zJMHOH4#rOoCDI|9_wBA83~pX70}KJr5I*>gT-qH^5Id8TE<|<1`@}JMA?M&>?s;tpvuEu;>%~+h2+m7O% zI3K?Kqp7=lzp)G?ryHmNLqOg4f2$tF=*lvOnK~rF*B|G*Ih;e<=T^5h@Bfua0Fq@6 z;dX@*+}dhs%Zr2CPIjla&)fK&w3PVWNclik?_UH_rG0?V5M_p(1z0th(?HCg5HgCN zalSq)HPfjFaCgqBzDWo#%YJgOXt!i~@vg%A$S*cuAANmha{yi4@6V)ak@b3@d}}~a zkCKEGtVkD}Pb4I2c>k{4dL$OPeeP#`vHp|V#*ovWxZ3>6exY$t$|xF_?@XS5&Ab9Y z(M|=dB`YuA7#)|Huw@tj!te^r5LE^{8mPFdb1F zlCmnsOvf#+qROt%+@$7$lh6qY)*dGsN zp`Pjs0}o(1VfF@5_+)uITibitLBiv98?CJwFH=o&;-#_;z{(kqtmtY)=*M;t@yG|b zV=pz2c9%S8;;4}Zq|_`1?u33+m$@^rVL~)J*ZFBL+qWkELgc2bFwoERYaHkqf3;QC z5oJPGy`p~DWDn^uf!9CGQV0tK=>z-w;>;#Lbr^jA?*iz5ARtPD&hMF9t4hA9{Ge1f z4%sxigKK2JR`~MFMe{rV>jwmcPX6B;lK&g1$^Ts_#9y0PKz$vG)df+H`q08nAbzCI zw?HumLy~(nL5|DQ89Efq_0>31^=8TE7SEaH=dO}@#joXl{-uRe%t$|*!ytn?!RBPa zzA=GOdy;g0!B*v`kjj6W^1>I`PsdlUx7xXKn%C`Byc1rE5!+3hp+YW@#fPrvKA3r)?Yr(}cAh?JQkpY$WM5hvSa7f(r7J>h9IE#U z76(P?CG>t9%u=_{tM@2%FxV3+eiGjHB)Qn-Qj!Fx?JNHzS&1zW3-jypl^LWQ&6sM_ z-+dC0xTA;hznb()^b}U(pC!#lO}zUe$)h6uL+iccyUZJoH_Y3s=<-w-(#FbXT{Y&9 zMylx=I@vmmQ5{Qx#%aUEV&20_oAk$KyJj&zWCLgiRlLF9S+s72{tYI?CeW{} zvcpJvfySY;%FJrXs0_dKzbv;pBS@oz`J6RPIS}D3wKgP@{zl29%^Gmk$*k z{I^N9EFlj<4hNkK=rEh{}olufbq_+ekwdC!Iy3#n8H|eo?lL~cYO0J8n4>bsU}IVgTH)R(LpNkrz6Ew=sj_>{!eL8)xRbBSGFtVVALKVjL^k7%Qr z0Ex0*)m1SiJfwFEc~bWrHH_#ZgN+(!H{B~DbeYcFpWla{`IfWL9N|Xl)XQQ|Ib+Ts9Gu^nb^ES8J#?QupvHzpN^| z?@tTrpD@{xOCx6U9cI>8eS~02Pa6}=pGAxCYER3TU@YOeG;}JG3e&6h)`SiX6lA4T z_Q&p$RtB@67Xu7LkvH56RqxSyPzbx)b$+#{| z69A3F*wu*R#2Vloi1O$6JkCacg2K9A5}F<)?1Z|9f+{GA2qam ziaF6Rvrer?pxToRgfWK7#hE9cy_ptz+TzQ5*abnsf9Be+0j&(4ZW+|X$|aSFIOa*x z$_o`8Q3F$Zt+6M#<)c1g*|o#M*Zr++t%{S%`acb5Ute(gL!B&N_~BH_59b4~j}#^q z3E%b8)0Z73OnsOsTx`g|D+Q@zH#9tw7REK5_XM}UJxXt@xaVh)le8|RFMD^{v0{X{ zbbCjJ4>&5DXoG2*NEfntbOCuhAMfA*W$m0^M8mc!Y%2A2GOlDMHqP+CH9_s>=mtpPZMxcB zizGeHBWP3B05==*J{5%5nmE6m9iY5Szem<>`um_wFA(OVT~HAEk<;#$SlxrcVAlj9 zkiLZCEcK~qAee!=PED)i7NwSM4rYh_lO^&Z&AtW0oXA`u&Y@fdZrv$VHGKT=dA_1m z)*tN_>0u_ul2sN%Yxlt!4GbPe%MK6N`L(v)t{h%~zW+6`$vK@EQrc|EC}Nkx8FVC+ zoVjg!U}c`4x;(mC*1N*>3&l#luX**CvuxtS z_~MQ`8#3+c^UyBX!}O%~mhtE3BsdrrqY^^KRb_%w(zDZziP;py!L`zK%MEPT)TIUs zIY9ynEuvZ$Q)cG!ZIf&GO~+oBpyOMR1#YQ-4{VF> zJdo=C$5pC6n|eK+G@Y*tOw|ZaMGSW-c?gws5yQ0te9((GGRVJOcFCC^av4-9A^m`j zq>W7!y~d<^9&(r3LXt72!bpes`ILZ^cuh#ZD8lc^qR!vNRnq#~sOPVm$JzJ91Ejui zx+WoulSlMGxe(Q(`~k=rXP^lz2ec+Nyv>i62$ zF4K_UFVgyr=0Cu#V{iR5 zy{GD4K4NrRPSZ=_cInS*$=p4L`aMQo69c+BpVED;rGJ9kq{cJMEwfTB%H>37$j7!; zp28nLVr^I7{luns!>D}9HhuQd={WC#@G?i8;w*tfZC=%`e*gZjRd;3O-BR_x z;Ab*iBH2!hIGSWl7eP2Il9fCr%nt17#wGgIi;d48BIFb-jidue2BC5NYloa_SKG@) z0xe?RT1S-_n<`pWSsC75YSStcl%C7~50%I8ckZF-Ze^ny$rH)bDEySFFuW?iFpz)He?NKx+4NP2la!@VZI{+F?lC> zVN*!gpWK>Hb;R-m7$4Ue^zVY5om#4tdNN&%w8msVMbn_p4>1);*q5DGTp~Uhg;wm? zd|OzsKRc~B`A_3Nqar8A6V!Rw9&63VS}A!=1L%oQ2lfqiPQqoO;kU8**R}Wip$$mq z6F@jehU`I5e~r;$B?Kp7B)I#qEOx)19021_+U+tky4;Q^OJIm}Qg=w|grfoULK&0&ZdFK2PqtD&^aQoC@2|&zPi$6uKhIb&%uU`1 z=%hFgdN3H}F{+31h(W}9ikwh#Qjx>w=YTa$X$Uw146UsspunhcFb`dr%-839oir3l zY)S#aveb3ey2+#*S*win8f0rGwJ!8pgssyW*(rVhxY)}f3$s9 z!KXr$%_or#h;rwUCmdKYDjG7Q`sFfndbaqku1S5Iuc3{j5& z=BJ+^8AOvxX*OiYfY`Mi)S0H1nW|h&2g{|V^;e6CxA!fSBR&pc9@T#quKf;la79r7 z;E~Y;Ud_vAEv62W3U@xQu

dgn{FbHs`U={$8iXnop_9<-EHx)56H}oO8(WACuXu1RDvHn)gvx5CpA~ynIDrUnm{9JMlKC+ zATX`%uBYXtaMnU@U`2dKL%?J5jaSe%*@No9#@rD76*$<#41pWrO*5jEz1N(6bX*M! zSJ!Ph0xE~6)c@eLCjnfzQWO?1_D$O)ybAUg@HOHDT0n@_ zX>aCmSdL2u4tyP*rg#zjNWOEv6uhfMduR`I;0P;y2v2?C7r zB14hdCae2m4!?qV7QF1ECVWrt>*jva3-msa_m?Of9R2d6r}B>krGm-;C@as}0IL~K z$oVyjA$5YVN$n^`-kBmI{nv(nJ8=wzJs|zb{4n8Cjq}P5tZE6G7Uq7d`t7WG?pv{M zMEvLB*`DcIseNNbK(y@9lyaZHUal@zscTa9bYaE$x@xX!p+)N4qGGs?Sl6EI;v>d- z31b>KzS>@8B!ay(m>N#ZF%n&jd}&1pLF``fEt8+ySmxlW_?N{e92j`Co9K#}?Eda{ zaO3mwyQ}e7*Og?o<;!&>#?s2?9f{z_f0HxI!2>?*14UjJin|}ZUECh~lqg$sVPwDg zwfp;1a<|SrhHPVFv7VtQxkc0@xKVI0*@t4u$fieB(JxNwf{#5=Fm)HBG@hICc>Cz&c1~L0V?vqp#bU;S4geS18XA*MxAY=bE-c(0 z&bWH)m^Q0Y?Ln_gi%{{lNC;}_nEllqI|oo$KICKaW4mRj;j4K?cu>qO`jc7JYfU*& zb{z5_QrB`-%Pj}Y2wN2(&DcuZC_t-OJs=Gqx_wjUUW0sZp(K*Pk%~;or4Y+r=UXJ5 z=31YR%iFq~H5S42l*FR=H=H5A9KrUL{0UjY*MJXws z?12A}e~u42wSng63Y(`1yF$78IBsGOwO z-3hG20Mh_ihc(f$2>E@wX_*~0(WHB>Q`W~{C{Ml>8gyCzWh3zl*XDj+hb5wx;7^6Fn9~LFRU)tb6lJjra<|=pL_dSoBql& zOgA;b+{E1$~BXu3U z>=Z(tB4E#jG!EiCVm!Xp5;`)2XP=~)=UoUsGvz3mL|KOKnU5%w4$Hv)gczB>?*i@~&d4Fs;Lc!akV!lerW23DqJypA`4_(JfG+on?8vwl1 zSy7#=g#5E1C`Q1Ne}8sxN~ey0f#;#>`%W(ZN<-u`!mIllxg{6mlj^c~8wP#zDZ-43 zC)5%G=#?OpUGbT=L$T*DLC1P~&AKkuV7e(bYQoeY0~nEw~|^-ZdolGSXrPEhIZvvA%Kj|hQ`BwVcD6NLY}M)*k@u8rPT1j_So3HeHmYPeU)eP zxA$co4YOBT;abJ_Prv0HUpV${C3N-yj-SS|L8UW*lAu16FGw}!=0qx!b-vCmi?w5C zZvts0^kyMSc9IV zo+8B56GY!@8=l#W-Q5d>TV+n%H8qwUC|MhAJgP*+<}8@BtkRKO+|cBrv{y+JJ*Nn`xa7D)h`UB|2G0YMpeff1=U7*Z0Cpk@6n9-OKP#jjsIoLs$VYW<9CWdx_ zrh@KKMWV?z6g5Vn?&Tfqxh5Jq$^IS55fJiM9LR2^iTq@(6`!si@@)npd-mGM7vcqP7n`- z{p6}~R4tlMUl7i8mnlw`cu+HE9}^oM2=n#7R2Q1#9uv~;4kar{jr17^y4G!aO0 z@}p++*;V!zAVZ)FbUm_+tt#JvsKtBo!127I)uIc~kHUr*ib$cdW8x`1&hCctz%G#ietGf8); zMC!qNR_96Bgn$$t`yDu3dbFH(->g0F9O2d8q2$|12{wtFR>>pGC8R0iW4CBZ3QCpH zj+saSpG8_#Y=Ih`vSNSJ93TR)qp;GBH3x z4keY52XIhXDT-A18bq8fjzBvA4J8}=@Aw+8>FSi2KM|Hr2_};Bl6BcyU7B-*+e;$P z$@~cxwAoXdzb*SPW31$R7O#&seE*Il*gF%=OR94jB~!-cH=}LGFMMjU__+m_HAwSo z442W6(|~=M&P>h+*gR$^CDd1}Fp8Cm?qS{_@5laT)4ouP=?~Mz0=4{wt-Q-qKI_rV zqwHQHZUY0@53&3A9d8RsJ@+s5WR)8}d|nh#-@9f_pKf><;ZdX_UfH zLmvAvw^l~IH4;o4N)3KGCNV;3CP)LoQ-NJ*G-BkX^n$+U0I8wGd=aI@IZzCica7{u z^BR6i8Cd_9B_YZ>by*<#h0Ig0uZc0^cgg#Ur+R|AIiU-SyDJ!G4$XmMKUTzaLt($P z4H$27<^j?Z)R_&HMI84-+uVKx-xUD3v^B(5fn# zT~(CjebcKG$%nY^W2y;F7I4NDbSjhYEv^m?O~f}M9Y`%N1G&WQ<{;+NiIa^kc1cWGWNjTB~{&Q~O5 zJ0m*mBFai8bH#iwPS2^^I5_#s{e?xK#`dPce84cbdqAt}#eYBG|36VeIy*DkvLv4& z=55kMoVF9*34C`pAX#yaKzn$%##U+x(DVc-=W@~LN_$m5N zev^MN&_i;n0aD(T3tw(L^1YqnYESV^vxa#U{%kSZF}2Ps`|A4|5%+ohZ~)&H`f-gc zJ#A*BT3k3iZy4~v>g8$Z+} zF0;L!<$5>%$BhbV9nhoj9el#F^ocL&1d0amrfAlhS20Hk4YEgbs z`RdK!lq*nQUYp6MNIrRerK-6s1w}h8obi}NrG-}CvQ6=En?`PveG?KQ5>jcXP*rE^ z8E#DfUGx+$S8i3rHaJq4?lEdjq9ojG@933J2EhxV0@9XR1vz>8Xl}$-@E&hx9s%E z8+Ro7hk9!SYG>tI4{*A_T?BqSO;1mQ87(WQ1`AFu5dYYjh6(2izQd=_%#?{6JxaI8 zl^w}RN|(B}n8&47Bstfd@dr2$-_SWP3udPst~r+zI?xLapTm5Hasg?sA1j1G^Qd*< z_lfY#wwb0Sw(4H3&at+l7?{AVdS#YHlM@-Yk4Gl(x+Qonn?BvE~Um!oe#EjSAn6 zun}{Ml-~RSft4)z^fr4V`ncfWj~qdp@9W!v8|5^Ek41X}(o4si{DE*!9HLTv`fziu zorXRc(y;USZ&rU|gwj`%TWNtnhHvQRpms<3gNqpHfe<0MjAC=G2 z&2Q(0!}f(kEl9O}a>@QZ`JB?!m!;bean22+S=jnmg+lFjTMeXvYS@-pD_ zHP6Xc?s&eD(3O{MOV1(Z&Dbmh!%YH76NJE_!IgMtajN-8PrwWQLCroW4Q~n^P$~lm zppIjbPu48E+uQC{CA=OKa^@MYFI?MD+H&ThvI2YrT{Tk4a!Wyomyi-tv}Rj#KN_h+ z_&qayzq>*IU?cKCG(I6d<5lIQ+RN5I&Xd$$+dH0$&%Hep{lIV7UuM5#G*l7sxMjWF zWVz9FKo0Y3jSd@q-aWlI`KiRn+1&B9c~*l}n~0StRsxbkbsW>f`FohLXLz zNd804m!_Hk&l^%13Sj>JWoh~6W~gRo11#A7Y23-2%EX25L(fxRW|?1-5?g3qbxk9) z_O0;H)w2xdfXM)TOMb&OSpu1;Yjrboo3I}iPwU!4E!0@bpOrbDW#vE2IB2_PV_{iZ z9Xen%;Jmmbo!ylUk4X7ehrDZ6917Q;s+688Q$M5OaQw*Q+OTf2Q4M7VIB(t1k?piu zT4@3$VjyCuQD`GLUNtTt$E5sEKJTmMy2jUYb5p9>{0}}x-r!Yv$il*zXCxIbvp!EX zC48Y@*M2&WhQK|De=g;d7DxxMg{F$|*%iL%DohklrN4erMMAXZL20!eN zB4o@|RgFgGEE;F46_H>7;D7TwxXSgS=LBxHWMm`Tugu~RV{XQ0Y&4*H4!0LtKBo5H zp1lU-mwA{YXbdQNFbhxQzCRTpcK&ujUDE}fA7h`AkJK$vr%aW@8u{-Y41U5YAh~zU zKe#>Y9elMlk!uyJJJ*7}t=iGvDGD(ut1yIc`KmgiWQ1d?O%^&;^|=#s-fISI%jyWq zVeWtMky9n#sC`JiihKarOXYRBnFB!4QOo4z;ND#!Dga;z8YC}A8}O%X9vrp=t>g#~ zsjmMat~8oUP+n0bZEERKnjXyb5})3S$A{146=%2aI(c`kR~+gn%9f92K5=_WH1nSD z*y{ql9YmUoEKsw^986y5?gaG#x_Q5Qi2{6t$07abP#cJLsb}Rb2Ky&@WaDp6Xa4~u z9|PO!C>c1{%nW@3+{SwIKR_hI$JM|$N`{g3t>KeqOex2uRdj#pVOj!N&ft&8A;U0r zzS+UJq?*>+q0oJCH{~ndke>$7AMnmCA43i)7C`ClO20Z62>7)o0I5aQl&{}ek{azQ zdz0?a(Uqa@Y_R?HeEw5qP64xvRg)@>GVex4H<cjbFC7hb`HfT z+*JHW^`dpo^!4^!ZN_wiWefP=i zVk)Ex1zaS_BxRwJptDcsJ0!%urYix*#EH)g*Uy^z`zb7QO4d+OYMDh>>fGSqNskpa zziO4p#m5g2Kkz1J#rXP$Z60Y24>A->ti{_$k_wwTb0UonVM&!G+_2?KJL9_R-G3~U z9HcJ($bP_dt2bK4x}a_|`|P2~Om3tc;5mkqln1fAoo>a{!y$12Y6cwtXeMx!s60HI zLb=o4Xz;$8pk|DBKNoqgEL`~zYKKGuPbeIDj;d74oc|A1$4$xs())?OyFdipEYez! zGbj0|ACJ#v)we9fc?Gx3tIvm3C(rH@H_sKcm|zw+OeN$Kg&uA68CeyG?7$R#RIq{W z^G97(BH{ML1)ph)OO4M>wbYt$4wtu!Gr zu(91&=z=7V-U)8%iWOk(gTy_DtNjg5z=$3`3DCfd%6bIXMLt-zc`JQLZ@YTZOiz8o z4p2_*0S9s3v|qYYxU%&?Ts1Bt60%pz{Ug_=Rif*^d)+R&GiB2ipk`FP;D9mEA8A z_UiQFuzd5F>Sx=?I!-Q^@{x*^tJDv`o77Tru67VUKHL#Ji1F-I&cU&%uLqhlAFX8k zu=+E7{I?M6Nmn3wP)w-DWKqgEBU}3d>FhM#ZNG1YEhN#N1bw|qHY@S3^lA~|&G>(P zb5IHlcxK*JzV-FsjfB*QOHXkS>_T{PklCxkoCrw*y*S+g8j!V&{_m(z9$E{`KaCS- zXXK%u0^HjM%upiQV}%ZgJ)_ii#`w)%676Wf=ldqb3UIVV0UBb9B$|DFmd@cz8v2|k{Y_Wk zM@Z~Lr|Vqd&hSyY%#A;iBCj&lHU{=Aq}q(0x}TfAo?I%YYonQl(@ubln>!|UApG=I zs&b4lm3ozX7Lhn(WaY3Kux1Ce{iLVC3&E$_6QG0Gf{BGi$`wWi8kVd@fl()5q}uyb zpF-+>51QxMpA>c@LglaD2oQ70wJ(Uok2+VtaE;f16%gA!jL33z=iZ|FYc1 zifGPP0xJ1(;ur(-XH1y3ints##Tf?h9_k{gw`mWy<{&IPK zPjGMoxVI4v-M}&yOEqB%PXo+_-{@GJSv?wf!WL8?@>QVvUshDcIafUg48*^RtY^l$ z-UDKD3B(ufsc<+d!6UGvYmD571KQszoBAPgy`q}z+kIVpEl3lk7X_3iT`3|( z@+wjzAiWcn4gvx~Kmt*eB2_wq5S1o1(xoMI1O%i@s0mGaLJ1EfCL!5BB@S-L^bg%>Kj=~eOkqk&aOh5GEYTANP>R5b z$aUUP3#_LBm>t0VMGwzTqPJ;Gv)I#gJK*Ivu2x9Bf(7D3N<49K+yaUXW9Y82em5^!p@b2Br*BMN zU)k)ThKG#zF3gDWnLkKV?ImD6!M7fR zJE~f)8~JvQv*jcm6d`&8{6&a+e0R`sG)byiVjC96_qe{Ufs0R9wIb#6WMz-yhRo2h znR91QjG)Yf5gGwDQ_gHg;Ufzu4uBE347~=YGSPQ=F)a!tf#T(8u3S0n$SQH?wfM-B zai58UE!Rlij}aW-ttb66+0U>^n3NkDM`)k)itN;;JkMwexm~dJWZI)o(!{c=MNd@L zY^T)5em>2h$y%++)LmwqP~L*goaY7JgI>i8_2g6Ph4_CK$`d**qQ0XX>v;4`) z(pZ|Uq>-&6PX3(c>7Owx8^@|(k6D=3XM?439O?~^w$p@2JDXeLZPRGbjqh_2h&9XF z=rqX@SpU7w4K6G0+0e!R)qPrY#x^JfAjYb&HLrDi=#0rZ|w-*M9F; zSLCK+sU2f~W?;;UZ6@pGFIM|Py_Pb^U-E2W27DQObPz)I(S2eNkE|VJ+;1uoAnA26-bB*8C0_Et;BbiP| z#ZvUZ5igb`RVwcv*8w>6yEnW1pNW8HDa7^fxKx zkDBG^u1{>#m^q8flI@Ds#162Ul15q0ZY>8SILS0HzZL~ z^I)F1gRN;>EX-7r9IH464&br~!KYcMOK02&3z39NDTQMTS!+83d)JqMrpV7<7 z3BhV?B=ywd5DUWPC&H9?cz3KeRIn|pKDy@QUsN||CrEW)&-iOL&t$4CF8M|BZ8SXU zlY>>{*U>oFez~^}YhpNu%`%)(U54c(EM?K=o38VA(7Jz)$l{MrQg>|huwlx2HMpi7 zmtn9LYrHRqW7$XkQR6oN*2G1701hwfLfiaSE_&!0DoGN)nGtT@U_E91j8`;W>-Oaf z{=*)S+WNR=Ey!D8QdGFc<)FO#DQ6lF&RTjdk_4$ezug@8%lS{JzqN_9f+?(krf2kCa%U3 zmow|2Cn_hL{tw-W(9@1sDq{#fu2M|aUGq{9w5K7@SJ$Wy9w{oBatV%c631xhvbOfEUlU}Gt@56ovzCu{4+eI?NvZWGe< zihJ1dTh# zsPlMRFu&Qp9Ij^h(?J%v`7f3m;Rg7FEO!@;Bi0UNxzB+tcSi94hvjy@z%W-X?DwA;V)&jY>zBxzeQ*a#dZjbJp6q^Q?@jm1iWL zoJaem`=AK0+SkQudeb^0`T6;{;Q~>Kq5xNJQBS)g$!3MNDFlZzpQ7XS?z!D4MHQ#? z=04)GzmX+3f6?;<|1Jm*)p}7dDwiMduh1#7w{p*_`&2Ho!N4**J}`XFR3SsMLs*#c zf?h8em!;hRuyb?4xr|AA^>F)|)6E0g(@CBZ2mk>8MYlOuaZGA~UQ?!{7Dxt4)FRiUl~ zPPY*T!~Vx<=a$2h2TinPD2F71J@cDD+mW4TH`^1GyQ%-2C4y9?ekmBogv z$#U%}WuO}`$fSY9n zuNoEya=4T()t(qC=(Dp0Gi?{-w$!1IIZ-h+=qkf>2hrpkh^FFq5BQiq0`K&m{-iF{ z$qzN<66br~sW7)wEIl#s8uoH#&KDJF);?(5^}6N z7Eg;JCw3>+L!`X)&o5gG%snBfMVw(vFiva#@Mz2Vsla*l$-85t`aZBe~)ocYki>9C@uwQF+JFd)!>>}q6 z+4C<+DbO+XUp*f?B;9$PSLCGvOxg5o^e1cMVtU@S{IuLAH_Fj=*z4B=H!>S9VEFPq zOu;-zijCXJ(pHiEbB#A7*cOW`0UM<%*TJj7h>#sYs1$@&?g!R4jQ?mfn-t-7j?Zs- zwAEn#GF3HPV_Tke@QRw{Fp^v2%o>E5CO}msk&{T`dO(C%g~PhVg{RU^F*shYE1W;r zbu|ayG@Od_O-xN{&~@A^^lXaOsH?o3xe=npP&DxBZ zj83WFEKtqB-Z>guDzP`3Gs=O!pYqq=ojBA;AVRj7+!tV{fyCB8$TqX}&LZ)_%CNx-rD1=yq0dYTTE~?Plqw4pqi~KzaOxdp(WyZe; zBrqgEkDx16uil>V+MOKWIVe}?ihtua+AZo0ZJ$B0DyFr}wj8K+trz^jHNg`&bB!%8 z#T2L4txJBW^|R+AELc>yB7loIzw@gB(QV@!3ZbHSPgMr5?8 zp|K(D378$uVNz?l$ocn~WJ5a6r7Ig?xyN-D%z4vPsDdL(+59r5`i&&9oU;SvKcLc< zmui0VUg5decULI<#@&(yn$Ol#x$1i5nh135Q5t%AhI~6OgQCDb6yj${o|~y4??J%J z$6au@;j$^}LcPsO&kpuN7R`7b?%h>qqfdCQe8GG;Qd8p0MV&K$yyq@MiL{$1>6lvp z>*C}~#UbVmfg8mA(IIEAvJUAwznZ$;);SL?5yQW&Gvh0oUyV5l7%iSdITui^f%k=L zb%7Inp%^TZ`Qlw3-G#f)@WvdEBwy0eJ)=V#pCn*iA5*MoBQR#9Yvmte8vDN|rqwKH zB2BZovfB8Q9GxQ-VGMcMcKZ8osvO0gYEK+$i7UGUn>O2Sn7l8kJIF{i=Vt$&d+64Sge zS3Pk8IVEi&i%_m-hk>S1V*>oQz zMS^tOBt_xpUrO)a3`P>{Wt?_VmJKOe=O=C@3MF5M1W0GdU;UM9B_ETkcmm$oJ;2TG zBFQHnVMOd3;b*;ovz`aC4Xa698KLDtCUYw{MNB-7m0Ese9Q&m`ZrZw`_4R|sXqRhr zT1uKhdVEW5oT=rs)tBOmy5+3Ks$;%{qB{j7`(vuX{OJ3>haqA!9}m0^FM%Eb4J8|J zhdq1pr3~!lmKu;)Bd9mj`SEC$yG66I5ubi98f3M}Jc`;9bdxOhSAUfo=%dstg6_4& z6892upy=Wk_HQl}Yf3wK#TF0WYtJ&l*)w@rtjm0oRnh|Yy?2tS=M*l2LbFqW;zJld zWSa)oV?Gu%IRq~vPX&R;=Y&|ow3q%~$3=T!r{g&66I%1puFN9NebTaWR{!b^DE6t& zDfn}tT$nbf%l8nx1e7k&hd&pL;KpHN!mh9B*b-$5Fa=Iq<-h2bi=@S-pT=BE%HBG6 zr=%c(Zop&NLMe|M>CP)9+uUa^QZtM3ahLHvO3huHj`S`1K3y*vYxMcyp`++BzhBqB zUO}}wYq!A7adodn6bIt(@kf>Q6SZD8tCkHhv(}IG3f~tvYq_|b=lxDsdAmovJhWpG z0!RpUVc*iO0~^IuTfmv9M#y-jAq1Mo$khui7Cpv^x|QQwk0R%;Xd0zYkohULub2f) zIU1+0L9aD_#c?n1yhT={yTP|Q{VRkiiN9^0nDARev}Ho^gblgHWSdww<6e(+YBBiQ zwCIpiEa7tS99cSv03Q*4BSG+odX`c(hN&_H!BYi!K>Lm@$uOzVT|iJ-12&bs zXw}%5(B_;yc=vKxaPawOC4m}q2x%GZi}_eM$JmR~kc|3*;$scVyvlJ{HcrJ1K%+yN z(A`_Xv!CZXVAJBA$a9!$K~3Ed#xPcJ*s5!|x(OZ_dPm6s(YWc~={ zWP7C|p4=gq6iNT1jU$=XgXQyTzFP!@ZSO32B{h8w)$TV#5$YqJ4A-6?fl2Ca9k`5X zrB0q-hEMA#Jb0D%{;#j1_~qdC=d(+7AuX44GHk_`My5QSYHw!8c^4E8t&Hd$*Cb=M ztiYS8oA?QacEc`g+5%Re2YBL(Kns?f*UqE?7aaC$MfWLN*WIWsfv{1I$B8@DSdohw zHkn~_Vamk%*XoW7^RHm%F-&0t5`;UhIui#cM(vu`jo7i(QSbQW0m}NU}VTc!`RuT=c zACj249d(-;Jp+>>JNNEI`js%a(505#)(TN}%F@Sq22H^x)B9VR@>IGd^q}q{xDdsL zP299m*ib>iRBp;5SQudK6y*Gca7J~&=xKBaVX&>>sXa;!Cd@OfWstyoLruy`AYC2ygEhoLaMY|l@dpy586Cv%>kfW`Sfc*pc{4hnx(c z^F3c+!=ER4L=VC-!NPI(;I4a_Yqpy;Ar0Sk8Irql*OqW z&_(ZZ0$7N&>4|T?Nh~68cc8$Op9a?$Mqu5>i3oU%>Q<_ZdP#q*$z_Vws#0$gF)jNP ztDsihq%4ES{yI%AAf=~)-+(O$+BSEFWcgYh64vP5Krm42nGpbFh@;BGi$Ob`a=4zJc`l8=5Yhk(NxUPMo)i-#K2S%jkM+6Mq;YlR zdC#NysV8{vGYZxcu-P6(c}30T_~9@cT*Jv5h)2H`2*WvC8~6D*`c#J6nYhKRpj+9UJriM9 z{iXlnIX_*_17rg75i1UbUr8cqT1`;77vk-LB>0SYtN?gVuHa;?9CLTok&!4FRpc-f z@Ru-gn-r0Frr{yOS)FZJWYiob%dUU8)L$m6wnsZJF8g(LGi*S`4`Mdc;BeTI7%z30 zy#PM)HX+zwrQ~c3&;m*q(O|=fA0gvPT-7I{sUn{0su>AhH75?1bri2M<#+LVHA}m{ zRJEC|eQZ=_XruCSQds{59E0Od%um2Jh+AT`>Q1|i#{42zp*lCDU3r3P?f!XY&US9S zYI;B#EIdDx(s>?JY1`|U?alM#SJO)4ntoALR>WcK$f1deg~z<7rE8<5Tc2+%&{&Ad z8d*EE)L&bB-kg{V7PP|S5TK|kd>_Stcnr9Lj>eZ`HE8w?%#EJ`Lp*L7?DoH36qep> zXigHUYY6XK5pR(3C5JSHM8oSCIhc4hFyOan1M^DmLvJ;hPD<2SZ=r~zZO5+NEKi0k zNlwS2@iW|vLbdg^x9So_e}t>KJJ!VMmR-sAuUIIv!1xilH{B_kRP8ajno!|3+7;qN zHGQ-QF|!Js@3o)EY&W}MoNBE|aSO05b!}*jFMQ>2U9-l;?e$rCu^m$&gdze0udOIS zbuWrV5I;Er++>lA8-bV$s`HUs``J^}I|S_{`?6Y=3*_|?!ivhHy;}p!r07{Ql%fWA z`ZIGG!@$GzX?uw4;hvHKGGxYPR(zE6cAt!RklxgR(L6R6)f{G#ZBczo-5Na3ivc|Z zEF-X}Daabe1kU+5{)Y~{wnQ9aBt|!V{-LW)>99!ZjO-Is-G#b!5>Bn^UY(o%B_+hj zok0XgHFGbbI}%xGL!ei9Fo(E7yR;LPWr)T9e(IxG-&jv_Nh+N^Dg1}dXyS3YHZ(Ta zXq&{>-j{jxb;)-{nsit@jHevwnL@cql?0SQXa{q3;^|;59>N+l+NmnP!R9XLoV;Z8 z#jZ=lB5;qVd^PQpiz%0Sm3@Z)Gn@KNaf-2fm?+q#fWo30A#njd(OyC7d^B$Gut#9B z_wsU@3b+`C-nSQ?jbaV-Xk0$_Cqby?zUfiZa^Tp-8^o-rn173vRMb?NN8{ zzGR#*tXCSSuU-z(60i<5uCCHaM;HK~77_*4aP}DyNLSX^f@iiLW%kRgM#?p7sZW+z z3fSeDjmtTnXB|j2dwTHXcEu<;^`sOd95&Xm@EwTwjDQU5ylUosyx=8Hp@&igandsI zU_U$O>E}hh-wl#j7vkmphY$`Y@5AJ&tUuMSF0u*$A%CZ|@lilu>jq7bB=DZVB1W^a zefqWVQ=y%m?a}wJeXWjH;g z^#0V|azCXADf4Yb;#S{#{v-1jA^j2l%NC z4FNmOzy4%}ThTSmH!1GxSY{AqXn`z1T8&-_(ovnu-KqfaO5QCXsJb;#CoO89acR20 zcpd%@r{13yTuw-M$n)m;IgAV_1FK$OrLrel0zDKlgbVmaGAB8LMp2(nZmL7k2yuMx z^Yo@>QcGdFuq`EeelXg0T1#o59Q%RG?)$Fn@G`Y?VOBB)dB)Ta9Bfs)=UzJN84yxf zp&t`)Rj>vJoj7!`G_co5G#frD0>_3vG}hvv`}gN5keK|hwKo5UbvLS()7UC_lymh6 z=H^CLMl@KP4CI@Cr4-L<$d?#X)33ME^6q28t@?DlbKFgfj>eKlu7T&3NSrSc-_TeP zf0KqHYe8=qV9^0$!Z{!&d`!FfADFNt-~WOMAKrdZw)W(T&GUj=c{0MoilaU{pAE

J5`Dbz*HP*H?&yZb`o_AZ2-$gLUz>R7%hT23s3MK)0J>d3Wf-FbXtp|N0A8}y zCE#os``oN+B<4Vil-icQ+OB3e_sFNS!s0i75WJdi%Y3t33J7?i{EBKsU}Xk+y7@FR z$XJ%&44z_W-_>rcll98Q&On88p@a9RuPVnD{9y*^q>#uf3q&Bm1*I&zC29U>+CzCn zNmOihq^?g@E}US*ay7b3=Vp&%*7AqT9O&;wTi5$;8mE@`OQz=WbgNe(wp8>DbPutK zd~@-IR2fjseqkDTtw&OhQI~NqwcAiwn`H2Jbyqs*^cO9I8z-k!U5nr1b?Z|lB^|O_rb3gj+F|H$oPQ3A4LEGe+K%@x{0+8@HLe87)9w{0 z@iUz~(ZhHAb+2Gxv-0vwvu(|`+ih(EVha35>~F1byRp!W!?2T?N2zAP4e(_>760J5 z)hTC{06Q#;G?soZvOy7t^Z%6;NM^SieyCy5LsUx zWdGY9Gy89Q%*zwI$%yr1)UJ8NBIgBta;D0K!}ySr3LjrHXi3q2{f+NaY|fGUr= z$c^#B6~fGil+@svvSo>iV2M7%t@+vNs?Q= zyp|pGwwpP>{t(&I z1L8>ST78542p4Uy2Xdvb0CYN`A6qzV5M^-P_Qvy(#P+lSXn1t4kcn!N!xs}Yr z3e0?Km{cQCBab97uRp)gZ*WgWGGwSm`~OcL@A}acx<`A=eq8U~eO8z?o?qPlfg{WQ zNC`JHI3O?xX@8KjH2>>c3F=#prO33tQEm~W+N3dTujV-%JlCUw0ga*7+%r++1mGdq zNdcw8FwU+*PXWHMfSk~+vSuv~wq9Qm?u>_aon$!dhL0>k_f?iUo90#T6nsV}C6N{A z&?KVb%fc8z7HcAE0m;$vxgvs)S$jSUT65t^NJ?k`Wg?A1x4#t8Ll=JY$Ug?c$9;M1 z%~it)4K1E;Qc7j~DS8+O7s7Jhir&<%4;3?x>X-B07TM&AHKFPz42l9EPrmqfOX^?p z{$P^v?Z9u@H`X{&vj{+0RDG@cx!Tk;Mit3=^WsCJ^r5Lt{Mh=fo#gAY7YGq~vITZh z7kMm=2q0Po@Ak@f*Wd>%7g(d<@y|-Up9V+~#b$RS(xH^zC-J9*(vNP&rFVM{9Bt`{ zVeZ}T-KD5(aC^s)?K!f%5H-6Hi{iA=fIDSAyizTqqFnRVT1vdg>0VSY!i?xVb&?i# z9&nIjN60plxFdJe?}nCHPX`U@X4wY0q$@{vSI*wdd2jqR$>%94?w!y{hAQM^5A)#4GSWA?mj=B73ray@gTwOlPOE;nDL z4}t35Qyewuvfk~ouc-Iv>qShmJcEz9^+k9jz)MX^JhKE2^!oBsmQz+@Qgc#9CJc8h z!CQ(a?QD?h_UHor7I&cokc|&R6$7QZ!;|-F8%XI%%=KPZRh=#t~rh7 zBu;#CzLkvx{UdtrGF{C>XX1T)FOw9cF6u*hos#@+2Z&ld3cq`<#CV@`%jJFkO^z?7 zZ!U+X26NRnu704%_$cqzn@t}*cpWAAs4}R`Ze8NU#l!3Rx7}Jpj**t-fd2FIMlm}s z$x_o;mybqU3`AWy7@+@r=tM%F#CO0NF5DTlDA?WxqM4iE*TI~C&{x_3ZDgKoRCBae zJ+wV0P85XrP;RQf8v`NvL{M4qOiWw%paYgRn8?AtpSRuz z#yDrWSpDRBZv5>f^wbpV3p(_rSIkSsXoW^bwD(V1}pC{wZz#3Qp17KJwpPrhGw)49BeQdXPJu4^NED+ddui_$ZpQv*I2YTN6tg@k zOH<%3EH zCc;`YK-Q&+wp+8*oSI|Zwi8su9XNg4Im#}E$=PTM4K-cP_>dvugxa%l&;bpyX8<(C z7962@(6ZCI1Kvp)nvF=H69LQ>5#k-&1Vo8G3FZ50(NAlo4s!_%bD?SvBiCn_tX6ci z;xm#OUR$n1w#-QsatJWxPkBleB69X@CX!HHJ0!R+@Tvd@toEe*Zsd;HPr`4=sN{Co z)_{UGYwxW>dBJO*ADMmBuBm;RrZ$|Y4qM~hC4<}^=ayVr#v<{GTP243j)7^j;KzWZ znP16zxl+nHO*W)-$0u~kp&MI5W;A$VqH={`uAi4ZXJ0HjaTa>A9xp0~rjMouB6924{ALL9K zJ0bBELZ|SzAVZjtZBY9LfzNt%f^_#Zy?eHxv3ADRsVZ*fsfm*;2U7Wc-a+|| zv>eV0_I7;WbtUj&GH&)!FhMqV4%8x#mk0C4>w3 zn}*Xya+N?`Hxt3=CBhdk$Nf9(QZ;ckZnM@vvxob|hGN}@Muw|`{Vy%P6+PVU?fZr$ zG1h&PcyWD=R7=jw>h52(WpFp+I1dn&ejYoe%{g-!qlPEdXbG)i9|;xA%!sjJ|K}R> zw7L38(}U4PqbPMXiUTM({kmO1e7z{%n#eRC#NQUxsv$*0#;SW22DyYX(xe((LoKc! z@Z!0j*^9R84tcF$mT+cYB{9~N(?ESIidF0c16r9m5O;|VY3K5Y^xdlGV&MS@X~HBr zKjbkp*OMhJk>tKh@2~z6eZ>0xyik}===H6b--aWlqF^lJPQi(XII^L)c71y;y~|$G zeWUk#MuD0ibu-zgk8F7O&jeK$U|A64rb5C0kPgC&h3ZPMSIPTLwL&kFB?zp$m?f3d>+~kNadT>Ha&e*7B?TAE?A=+uQ)%2 z?nHv~7vJOI0J0e9p6ni-Q)kP$EBCP`d0bfUOs>_N{4)K_es8+S)2|m!Sj%}L3)ed~ z4cgXP@aOYsCYH51n<T5)EXdN2e`>5 z|I!+O$uv-Fa2f#tK9vPUt{Ac14aQTXa%{$(tACoB#Q3@g?QWi|PwOw}(rh$N4vxU5 z{VXR*?iJXNx=y91cvF>ua{Sb0z<}y>$MIwb3)H?k)&h7O;Ldly&L$AmB9g6*%(W5? zmnm(b{!CVI-EB;09(y9RK46w|m{vZmXV9WrSmYJZY=(wwI7i00b+t>b)g8=Rb%Vv4 z81>nfReo!!5b@28689|etxly?8A0u8QbKG193CLw#Zo2_!mggI+bMbNi?r1{ zx-(fP0MN7uuBfU$oiIRRGWH-;hkOSdu|Vn0w6r@L4b-N~05Tq~}((aZFZh!E^cuzG03OH~I1NgE3Sv4uen8*N|| z8+Jd`du5&1W_N6@-oT%J%HGM$U~oxeA5n3$X3sv;&hc}@CsOyrRG->Ksi}%thasp~ z#bEFVR{8Mr0(t6NFYa)HWLsF@_`>#(b#dq|(vcMh>CBZlDGlRT!&adZK=wb1VEA?J z`Zu7GBy37t3^Ka^Rrk|Z?C5^1)U4_;(Y}LmPC4bu%$jukU)|e9f{zhKCuoS{(0MKJ zaR8gN1i@(3dCbjucPuvovS@TF$f3ufuGxs!BakLoQ(u$Drov?4e0G|_Ims_?vn)zv z3-Voj?{o8-v3^V*bk^7cHan5h9HO*oY82+OH0?I-x7Y1&>0Y-}lI-CzR9?$I)ayEQJfz(U}19(<>gKo(AY7XZ1zGHl$Y96^% zvk+@eTY1;bb|?SlSzDh=6uGbwSoP#<8r`1|7mK?4;?C;aRq%>d?P)VFa zmv~m{Ib|)Sv+KZ%Y-V)$^9%*9RqDfDd~}7aUU)S>QLfK~nyqnK+ARN!v}!irt~u`9 z+;VnXYgs`lI&#b|b90AP7@LiR9*~WF>}Rq(j>A&JM&>VtT?_IgKOKR%<`HAbVqmu5 z^G0_p;UEf+?)*lz4#QPh->C#)fsf<)^%0*QF--AQU&B|wLmD&^nm-|c!{Vle1wR;y&rAey+W)#h1}0!Y2$}Bs=N2_Qq;2S}Ab;(N zV+Vw}86p_1F=OX-9a_id+y>%*7yL^GY?Feq9Yt#&B>J*mxPmNk_>nKus6 zuGRUI5%}|)tNQAUBm{Bp8)j1^scsXP^Fev!=%4%O(;HaE{o7s@N=>n>yua&}kEP+< z5SN#;YreC!2iW&=eV=vBlJ;0LvILS=LWE+PQ@M7W5L>ucT>*Sxj~`U;Id;-+4O2x4 zp|)*V!qYls>tr0FYRaAU*^hTJ>{7xd^uoa=+#-C-$EF^GL&!Cn&C4)FNnx!{$Om)*5eOt(z$ki3SD(tQg!C{eBYg4 zDKvqGQL$ul;|ogFXsDpe^_ng3l7HxAl=jCx>q;Azn}>Tw(v07yD_SJ=w$eGJ*vrMK zb1%w8g^7-<^O8=tJBSgLV>hi$4)rFUidHpOyZpT_8g6cR&wTvlBY7Ty$l_9)6QsdE zbV`SD|B0!u*=qvA-ES9uhY3U8APiBgPGi~Hi4LlWJj2ktPuOZdHcl_|c0R4*srP2o zbfj16PuRy*SI-|KQ@))QNE-z_+XNIysT$WZ+Gv+ZkQn^%{!~DY{r;?mZNW$l(Dzn$ z`+)}{^J3$TT|rXKhatF!`>gjyf+ zUa~uNSe+a?$KN?p5MwR{O_!AaJy#(s< zcDFTB4y>7*pfLjMX5c7R&Y({k7lWXLb19y_J}$V#x1a?jzTlUdROMSIig{7C+7o%Y z%&mu0aXTPPae$^n$b;PsG%lZ&ab_KJs+ov=-Tb#YM4-YsLBh3}x$ZOVmP`7S%hdZz zvCYAZl;~uPz)!53-gA(M$ACnkl9f@{)YH&)qOT!1w3?;sw@EWB= zbv(&`R;s4E4^)J^#`XASV1pO&$gZaC6!Douw=;AJ(C)?Xl2=rTw&!QiS?0N*GBit zK}U~czV+I(2I;xKu?^PZ@PJ^E)aC^1NOJd2{=6XNZseKT94SIrQ6acjhE}9JONm!S za<19r!)1G(_|#N4Dd?9BmPhdL`^{fhBJ<2ZYI~$D1lS6+NeI$wJ!@HyB&hTAmCspq zZ*6*3d1XZ(`>j1vU`#5F_AV$M%y*h`RnbqAP`R}`!1?R23V|??5~x*Y?|c*aW_rz+cIAnHla-jODd@|I(}JW#0$Hsw*+ugcw$e zPrL|FXct)=+e(XZvY*_GfSw1<-*RUQ?0*YYHwJfGK9eqCTvfT^vD$@709%WQawLjT^`-l=44KTFTxDVTlZW4Zn6|$X0Ve_=J7kfW#e)* z!Bz37lFhJ8_St(WcihfK*j#kaQj2V~Mhqm9gN1rK&hgh@ zo@6Kkq!uh+XIBF@vxtDGHf z^EIn)_nUmq&N&20wF(G>9hg7tJP2a^f#nvHkT*M)pfJpXgq=0%-QBiyGWR~n)Ano&Q8A+N=RE?2tvyg#eVQG zhFLsc>k{S2$3-Y9E|o0@7uWwdS#=Evd|`!U0mAFdudAD3nzlZqE~^-3CDxk6rHag$ z#yx3xl3Y6z(6E2_3LLE~59Iig>Ip_s8XRtXAZsZBo-FbKQ!A3@8p(s(QbCXB+t^M; zg`?#6FPo1e@XQ;0vKmilNqE7R$iEPG7ZVxnHf-o4@sWFNjpV!vFb6XyXJDWR-4KDv zy2)Mrmigtqm40R4?pd$aozreduT4&h)lJKTO1tJn#=%rLfi~J%cgY$k)u)K8ITNgf z>H8aVxE}qSrSA-fxtxOM{0be1SdhY^~(;g@VpOp?Hx}aO0@mzZ`ib z+|>zZJTH1VPb%Ve8?Nt{`o&%C7XNsW3j@4(Zu(S~jE=2IZ~pc7Z3<5VMd$s{ zF;*@}opa!Y_#eE_6BG#F9@gN25-st8Y4};Gt;Bq#+QACvk-`R{erYe!4SKJ>vNNB? zE*<*53wwsPjZu)~`QX^8qSA0LxzQ`+XTfNGt{-+fEN$NhEC{&S8l4Uj?94q~1*HpRFu@AnH}s#jN^vEqeZ%cy$|(K`s8`ALT$*skZ}@k^T)&ylu_aN3*tI! zWHgLXMF@@ucuwC@cu+@@&ABr${-gA=1xcoz3mzyW`I1581D%vC%Lm5~k443uO2G8| z$ne2sO9rS^XSd{5JMtK+KvQ<4am#gu`Ts-5`R~%a4YKW47zaWfK#?Z9Uw{ww`Cka# z5riNZ@9o5>ekHa{f0v;`zpRm6Y(w-WZdoQ@1CsKXmCLjY&C(!3)JK@gF^n|g!PxWu ze$NxtMHn`hVc{8RF#g$+>W%NtLgD8ZUYmgv0E|dr3ji$;Cc5ioxt$YT^b zrii>)KJ!j2pc=cMs2{O&~dS zI?jXAF;?QpWP4rXnOkJq1>$&a(uH!3Bn6|#caHC8e$bS9&o)LF6z|vax#S|#Kmb|o z#7>qcJ~%1kpI~YNJ>}TyAPm-9*Rzxpl;VZ8#&8rf?s9&px~VB?0E92X({phIqF(^RgbGzfG$6o(0UBBva#k{%8l)`kR=O@mR@ zwyJM`vCd}4Mn@5=>X%kGV~I>;@010(&Bp}RSk$RzZjvoXqH$sFKwjnUSWg7>tH`J; zqMn4iRK*%$>*D%SW;Dc-?Ea$Ye?2Y0PCx@vf?JS9Nc=o2Mr8vB?~ph^G67MURDRaZ9DhPba@JSqL5Y*=+pJ~&h6vZMDHlY>$jZDyWrhw4g^2+F=klxt7?3xF?- z5$yrFcAP=M4%rMYfsk{~{XG;QGd5!PAnCo;p!}u4O%?G6SFFm~CQ8dCzBwG%q`gQJ zn}lEY)64_MHf@~^yWRb{qaB5dflmgj-U#2X*%3SbHXmHqtV50?qN1n_l)H!kBIL~` zq^emaFQ~_Qq-GkXv`kSd;~v%G2w9Tes=cJWBAOttr#?9aJEzV~gtjAzMm}$0HT7{A zIw}MhB}onuy0aHH6bJ^E_Vu-OqeUYt4bLjwUqqy@sed<%eDaIAxf9}C5%$yJGH{nTX+WeU z61iIiZpOCq6?HP~3$l9TN|4xRbXFZaaE19P9gg(LyG#KsF?#k_P5&363-6rpLV zoV&Lw-2iHy>o48(0D7hD=l8aR`E2Gp(j&$JQbsKKmUXGByXd)Z_O|wyZ4C71HodmR zoL}mV=kb*s=7`EEF6%+<(@P9mWYNJk26CUVPOzz1verqJGzeK>V@ART`NZ2p1&|5c zNN^@MK2*4iZ@eo3TLArR@CDbmH*4SP&-ufEE=>3n}rn#u@50K!&0u9(|A_XghfTVPJ7t2mK}}gGS|a z=&C1QJn%}mLBf}oP`cS9O^ZgY?|LMIg^YiGQlAj(+Y+bb7FWS8uNv8vsME@C6amMwB18#SJln$5 zUU#Xc4VIV8xIKD%q5jHj+vu!Zpkg`M(-S82t~Bk;WHxR51#1Lb3He5@7o%<%+0djD1CErfo)csBd9(Bx$qHk5n<^_ zN?+`No!6j4T>I}w2u=fAlzU*6HzEViF{d!9E?21hTAd{yI1Q!sM_P3rheoILrZ4_T zHkf2ty|rQ={p?2U{PlK+?i<<7Cxb2(DemU0zMI);YH|UTCb#TyLvBC)-Uh|S{1cQk zOnXv#_P`3ciG}(i9QUY5-jbsQv&_%qP9JylU3= z8!GIiZ5%#1HyX)vUd^mKeWT|=*ef8L4EDjP;tPo}sLSd`6s5QOGUDLiGf$H0WQUD- z%t1(qZ^e53V8*4l+p}C{MXC@gRX6bzH?>W~w*SW5<{QmGCmuvXE-=FvU z^?W`b&sX`*3uEV21NAU@gew*+_0KxUiOAmV#L`8BwX)_?VtHGuzh~fm> z370wBfcKP8u4K43?2`RoAK%)&G=*L{2qE=#VZZIJ$bV9sou;Fx(_4LS0UNY9GQ^z* zdDdp5lN|aQ(Pkm{U(eeSJ?a0C816XTvJFmr_4C_vC~*Uc_@I4RcLf??Y#3v!)l%Uyr#la4tRN z{yW^D&o&10Z7eCrDoo4M*472~+R!oVMJZ`7M}`=VtjE#se*YoDTEFp0Vc(_c=g6PY z133&JhuQKX)}1KZE{1fEh}@#4;^l!d`S{gIO7XNrm*-6lOqY6v*FiCRRDxKqeVY4) zx4`3&-O>yO*dc1j0j<4jX!xJEV3REfWWAjMHa{KiKWFQ@B0a6C4tbSkOTKt2JwLSS zhEjJ~N6{^Ne!3mi1C*%IFV)!4kmFZ3by;;f0JDTkCew zPd_a^cCmRp)YUXdIdBg1vN14N`KF1DoP^M*u2I8s6<6o`_AwiOo1p2y#uI37w5hqN z#coBgKUQYphi_Q+&c=|63L?tfbQKfsJC$$#*Vb2%! zsXJw47J`gUD{=*SA0HLkZ!@6fbuUVcYt6MkIt+lF0=$2pLhLE5?e2){N~c5@J^HnSKB~lV*KxTl z4Xn-(0rr=tyP!{XJVdEh2~5uA`~bJ9-$vu)7RF6NiKgw~*;)(zJaS4$GUQ0tTGVID zfDPDlFpy=RHXA~Q#t{8sM~3cEr@O?#)P={01MR_~O4hv2|D-M$DwX{q7hWtnZAR1p%k3mT89fu*#GP+Li9T_C(^uxqxVj2s0! ziELQuananj-Z&|mJNC=smbI~sD93>#kB%_szfU`mb?h@1H1Ima4?1!)NYH1CQUsdg zlgE(w$oR&xZ;Psh!m*`Kgcnbyuaj>*6g>UyQ}~mk2S{ALp%Qu&tpgCLBg?#9IR16C za1D5I?oPe5YxH%sCdR9&C5F6S?Or|eBQ%`n`_W`ku9TRF4>c2cZ|oJ^jf=xKmKVZs z0gv;Ae5Zs>FUtYcaI;;9ASLs~A>*XYYTA1Wu{~@q!)AwgFIsO|wVh$lgn*#`tEA`P zBjxKcLHrnM6tG!&>z{qadyTEmfhDPZS$bV-GKJQ2ne@Xw=sn^orUJO{XMhn8&44KE z?6Dq*_!i+TN~^8CxdoqQ8epDvy`bj%yXQH=TRGa+X;;+CbEI>bUqPBq2K+_3s@EBcmMEA-oFYf#8B_z=FUK71y)A7 zhm=VBsgAuKf&k*Jv!6Cvc6?&4muwI$Bw;=E_K1DvkbZDQ|K!x7&d3*zovb?wwssp^ z(~d%y`w4k2cPXLr+d_HPwYmO5_PSC78w>>(8*|s4A7ZmZE_oJFTV&`1UsjGG7t<0L zWT-N=S+4^N)K0t2gPu@`KU#hgLy{v-Zu=^!{H{3-?of3t*P~xQ$Vzd#!EuBMN{_)0-FiwbvPy6?M+E1n9KOnSa=<&WUW&Uqvg<+7?L z^D;;|RpMU!Ecn}QqBZ5W1542}p52hMP?GPgU-H|&dvqn@Rzst^==#N6wfX~s@5}JD zp<`dxB+zCn-Ch1EB5}4&w#1@=-jO3BP5dDc2G!$o#!1(H|o*N2}xA}rz6Hz2_B{U&U3&ZW~ zpW-0+^>^Rowt9ngS-}_>QA&QD^1SutmPcg|6ukN6ktkfqrk~=nX+3v9yUz;QF$Mg) z3AhF{B6ylB*F7#~4_ZyGTp9UZEAjZI^o{S={^^y_#SLDAK1elj10tw%q_t1jC&Z&r zzg7h2jOjb1r#u42uD~ktN7RgsNpNck>=B-@VZ)qpJOQiyz+uwCgZJ#ip|T&PR`Waa{R} z&*>~AmH2UFYn*YNc?m35_FLjZX^yr%)W1qiBhB}93A0sNnnv5K$lHNI#my6{dt6Eh z>8{t9Pp_MJhMav=d)Zl7W0xJp9tAgB8*B=ue!4pvK>|aGT+{^6{Ma^GZ{U3YYoOYg zx$(H>)Ob~4l6hW#e{w&nfwlAH$o$D0;Y|I26`|i({lIoPkW4lstn{5 zq)&abh4*=zd_cwg;yOL@#cO37R;5+IOlj-6FSR>kF7zd6V)!>r;g~3%rR!Xp#<>{zhe~UrMK9%UNDO?J%KDc!N6(<;^yPtqg!qI$ zbU7^nbCwAy>o5JUFiQ-dE2(iK$-!AwO1mjL>UC*>{jPUzM9IJNtmVSH5t#0@=b*xA zva-YpZW6&{F5(&F?v06ylbZR)Cmf>8U%gT{oId+PUDx=86Tj%WJ4&Zk#M{OJU0mRA zBF^0%=T|n6pVgO|QgY*Fo*T1)FuNIq_0|&JI(QRNP=yUgV$4`?p#GRyjSg5HZx{HG z8Ub9z0R)|KO>T+ahsYeq_Nnxq;S2eDcdFM4h9kUE>I(zk*7FUV3-UT!^_w$}z>V(5 zKn$hXGsHS*j3LJ?N{IkOksy2lXfE2kl)^-HXrRN&%@bbN=flG}tsb|38*7}YszSxw ztiCG%<466?s@=m#B8xW3B5~+r=n>d)L*;oOX1Zq|txQGdmz%sd#hfKPYEy`c3JLUn z-SB0}EB@%0Lep=~5+7)NOhH~UZ_)?0`aBS@yx#$NhBgF}{imc1Xufg32LZg5!0erH z_rEqnA`GgE+)W#t*}W&4vogKnWUZ9p7NlY`#L|!4Ad2&~PP_C-L#KYz!P^VtHj%~1 zU&@~4LjG=F;W|;q>KSi5*uRU$tlS-HU9s-yA0)p8_GPZ51=FBBQ$1sEoT) z^_3%WM1H(Vc%RM2)w%fkt4Me#%Q!6LB1~I%%k$35*3Vx*__U~fqtL@xukg@k(2s&k z!bD#RC)1h+_9Z1pHpZ)kayzz{XEq|a8nX;08u^?zli|UdIrn|l zKff5eoc2W~hO_D!-Ad%N`EpL3t$U`w*`t7x@6G@GP9=ZOZ+6tdy5yVO=+!d~si#cc zow!txc4uIBv%>v17}e1OFbth__W5c35OTCRT^mqap~M6;Z7210d7q1+Q#=YhW0VDF!t#}YGnruY+~dVAf1;IO6!y20p{KT zA-ASc-Yaw5CsclO<#TP1c#Us}giUGOk4GV5 zYwyY^U;Uwf?^*2b?uun473T&t(xjaL$^S%swdK9xIuO+LINxDqq;Ut*H? zQnD4F)O=d?F>rpJ=((}tEoPrtSeNhfp~`On-s#$?ni!p|i5n`D)w}FW8MFwWG&b|d z-C-|`hy8Hem6{0sZUb{cPZAp(dm(dY)<`EtdKNfIgjo5QHiZBZ_hn?bnf871Fuz&* zr}gvoZ&(vE{JXW9^D|wpa*afiFK#itF`rWM#%Q6Q-nbH4Ha|zqYFYmU(>e^Ht_Cx} zUcT#WdFJ29IZL37Hg1pMKn6M3$|iSRkLokT1&b-(?K2p3aejG6eh?Ks4l`iFShZ+* z@J3XC@x{y(_vUhTr|NV-&yM{vIJ5ir*x%PvzcyVU&X&T(TqR5n@o5nU?-o0*v@`Cr zzb*;`Br+sUN(8XKN45}HMm*6MD*>Qg4UtuC4$~nK!Kc*_)ok#AJ8a_IU09kIJUlV6?4*%!2NSaYlxFS(K6d4~$>QqV_`Z4(>F% z7jm3nh%9EGuB7pj%Hm3>j-616bw>w`;Bo+?xp*9}a-<+Ih_sdtms(H_ylXCA`QEzY zy=|}?Z`V?sAs5YU@d7aY7TpD2O|>vHc}_rLglF*vl#i`CL^6LoTKrg{^d~O73QjQ~ z-PvyjbEDberq~|iO8~c=?2tcV^pvM3uQtt19i@~+IzjI%3 zM|wnc;naHtb!=P~x>s@e-xoVW#6sd7{yO(~tWqdxHLE>;9N)P1#@kkV`*<__-DF1k zqq@4J$8+zB<>7i|-;2dAn@?GqPK0IG*qYIyeN83*;m}% z?wAgXnF#f;2e9=zaZsNn9`xv^~m|1tOlhW$At7Q5OyN2&d+e`+6Wxm-yPGX#phI^BsM8 z+OeChBDp?==WPc5$$;Cn=nDNin)TXQ(yX@b=qVXT2Vp9XCmea%cza{P3T|urrXDp^ z#;L?~DU}@&oqRlrQ+QN07F%}8SgAJI_D93;5ac~f)R2??WtO-_qYd`CB!Ew`4`e2T zEFX{GR^RMwkU9x0-CI!_5dp2C_qmeITQ7dt;F->@QFn`=CL_Ne^krA5w=CiNwtA_J zVC6YYx(`!p)xrA=B8u^mg#7*W$2dU=Fd<9Qi^=X%&gqv%$f=hC`doc;yuYOjjenSu zPgkkMWztL!ShQR8I4YvYvwXwFWGkPc$&{xBPQBOion&efF39Pk#+5#0i_BIH7ks=b zBWl#p3(LCsLaBLz7?_G4=^zTV2~cs%R$DBpu$81sHI}>$>&lKSY@K?5>Q8F@XHZZ>YYS%<1Iqo7@@0td!}-0Iq2G)*K`Ng9mwyEm2+ z_5*h1sk=rpBVR$70665Y2QQAUC=JHd#_rUmV>|jn!Z__jRt;u%0eiBc2rTo!(x0+3 zkGI~=!z4%;x*X)tZ~WoNM1wzN4@UX8m!T}EcpfN5I>25?@q*Q|G}}H%q6Bd?>-9yuujS_*z7f%goZCgy zm22-QAkSjp^xoL)yH_9gKKwNEA2uAOPdgdsX3?i?ZKDyzf!bpXUiw|2YS}`AeL9~J zWg5=VVDe3`jN%AVt{V#B7_t#e_|9S6?1#gIj7nqMJD-({zRX=z4lho*e4t0y0z#Ip zX4UBJARdoQJc5LgMml)8J43)5uLL~z7Hp(+T?#U`%rF`_*;=sr^W6~tt=)kwkMA6R zbx3(rVe}drXJ-KK3lF|=v*-(l%?8<_%0GxCGi`Q8Yf zW~$8m;YbMgZJ%wkXHP3ddMtsFxeL@uN-Vg-n?R&|A*hdHXGOYrX*YMfTjF!HGnNNa zjmhIyZGh$@^`y#${%sJGs*!>VuEw6~;_xsJb-sng5}u2b-vLUI+CeJ6HU&4%}4 zj)2WOhMdWrFdnudN)0^R1(X4KUEuE88pZwBoTYq2le6-UO7*=0kwx1(rEZ7^v7Zb} za@c2xjN2oi*X*#p?%H@XGQHP7=R>xH@#FNh7I#bdXtgj~6 z`p+$y^twAE*_YC-OU!xFK}A^b@X=@`mw_Zjw`}M`raNKaguG&1B^3You-)5Y!N1B| z3?3RD(EfNIl7cw_2Bww3O_Ym0xr-ix)ZGVu!K7foF?UelXUoEX;;zV~=u8jSjjIdr z+`Zl*{PzGx=~GhuvD-gZ(vs0vs3X1G7!qd( zOPZcO_G2`t2zXsGxA8H+Q700SexapcVyPiV=8H-(k43iVS&k;rt#ZXjl{_y~2w|Ci zyLx(6@~5?NKJU^;Wq3C7vzl|!IjyxbkKrB*daYPgeMY6*%Wrk}LccuT5#Dir58gTYJ<8D$^`NF<0>qN9zt8*ls*y z!r2PWm;9K9usJ32v!$B$#;v~=AwZC!KrgwDyfz=P0Z-QN}E&ILl06_>QU z*xj&NtF2w|U49BckP$p{NKOZUj|S2>F2DqUG7suD0be*@q{1C}{y^^)LjCi($Z)m43EjK1%eA5I`a)1GCWEm6zBrrmK#Xy6kDNk0V$uZZw zO7kjp`T$uw{ZdWKYq3)|;=}?MEE2ZYXlb2GJcj2%^Xb(hBrpBH;)(b+FSbDv=8REf zV`M|M1WR)7^v+I@I9bn&HDPmJwF}iLEjjsfvPz6BZ_mPcBUGKnlMxoS4>Nwi1OvI= zQKSq_qpsbA`W75g&|&GLlrLGc``(ldawgFT>S>h<<-k`V*k|l@x?tZxyDO+;%rg0C zmW5?b8`swogZ8+FwDppYi=&GbCc_?N9Ca2yk>vfzUd~<=ng~X~nD%nO_2>scY!Q15B1nXDbCPsA zQpNZC#EnY|!SVgM_3$dv2;VGBPIW3EycNEp{+a*&y#oC^Z>uMjtA3UBU__BoeNq=K z0=l7R^p8=)Eri#PjOpu!R9N{9a|v7xH2d`{db{c9@zyKFAi#QeO~FhvVn6j-=VtWX z3T;ZsxUIu(D_ncHZ=iXF`^}r2Vw>?vP0HAmX*~useg5CV443~WkCVg!wvMUo!rnuv zR#pj^W9aLCpdQ@UjRRYk^##a*zTLz#D94q2>0a3E;X*@Y00xc_YqWR?E6M0c>7}>V z_~>i!{hI!Vrd5%4T;v+2ypw836V}IM=n5I;EPDE&>o5}fy z9bmO)&3sq&=Wp3gW6EbKohOMJv?w7(-4p(q8)ia6&2HY8&2u+zlgSH{6iGYN1wElGOZ`fAb55jk3vlB%dB%d%Bs7vc$qpRIL+>SN#{~MOFM?lA++6x-M z9;dqkHH>?3DX@TLNUz&a3m_tj0iWrcxw7f*#^ZM5cs=uIvwuF_Mi#XpE?-K|qo$+t zm_eY}0`~qqCHg_*uxAVnKz)sxySY>giWF&Q;asJ_p^DC(mNxvPkIw94@fY~e^UrNh zTmD1HbQi_)m*1ZR!jlaz`-TRq57q|x+1dLomdRwLS3S#t>MMCX_O=WaJSa4^JmZj~ z?5%JZaq_bIIrGzs=G3{02nXs%te=&Uki zvQ?ntUz3_cK7G#PT9x-MrWVXuf6R@F2x}o_$tb^e?+9|E!g$*BNC+WNjFgh35!32% zaRmO>7AHLKxy5hp9^LOcCx2+uYx*_caoj9Y`_g+uQN8;&FTIzBd#10zkVW@EYq_y6 z^d)H`WW-a>#88UR0y4xd;qF*HJT#!GEY>o?rqL&6!)e8KS5uiLlm5W@d}SaA;uz_+ zp~aGOV$fp5)HbjNNAmtbp!al}Re5jOdgN^<<=q9h&o_${E6@8XKdj)o!nyxKfUNJM zCsY37%eJwZeU84}l;FnQ)a#?qnzza%Czf_Z_xx=QY)hj2o6 z*a9qz(T}wUPq1`7sxr2g(9CdSj}XO}HZ&8`a2)wNH6c;C&3qYX(|iBTLi1{WU`XJ3 zm$={I!oNiPhP__g^@g-6_U4eWr;x7hw524b)-slBMy`Y$c%RL!Vc7^@d1e)&QDGc! zDrR#e+@|@}Z{ z6gU2i){GR-5m7C%-n*78u?Dd&KI;@uyR3%l`H1RSGY|S`a7u2Fe*X-DrvJag`mN{y>~?sQ@Ma)AP2=;b!|BzC0+{YXW9}j6E%1IBgq|T> zXlksf2TV)XXM2as%HiS;`4vE&(Kw>bB;o6n0(vYRxWtIMR*IYao- zJ`1o6*g5B^WuFC9Pb45!?rl;tqhj85+)sFHi zf}xqqi?6n1MeqBbIb#=V(e1QA0As6B{o|S5j~iDV+)}{o7tZQ1}JYW8$z`6jd;o785{8NV`N$FMX|_47Ulb91VDO?D1H zsXQR4pHlhssXJ&~0>PBLB*c@YI;+04WC(bQmIhs-r@$e~OLq-t+EF(k+v2*ObCm@< zJI7WeJ>c?d@kOij&-3h}xB+wqM zEqjzxS4{Chv2UR{IocCst2`?+@oUp4H4({^9j*&&G+r_@x+MW==szv>z*#KYVAg?1 zwSvs?S_4@mt7k1box5bHM8M&3_T{evX4Ah1H&rm^iCp~#FA7f#&bkL4+qtDgxMSV= zoO4ftG=%LKiE+eIt)Wj%X@hhmt1OUkW&OH*qM>8}Ta(t4P4`f7)oTt_%Gc`=k4xRF z`jl0E?bTV2A^7>}D;#S9TL=@@ODLRcgaZ}LDqxE<{l=m9(`H&pBC#kD+Ht_e>Lk;m zZfcv1wQY3FmZ-Y1*M8>{<+`+yK)-~BULbc`4r=97wNgARvG<=Vzbgjf4E=WP$}Oh; zaCp-RWBEFcvvYIAdy1;+nGuRQ_LhpA_7AvE4fD0ums#qSJDWWo4>y|%&Vc{SXzU%7 zK}#{c{)eVXeBvPpJI^$y8fW;D)VBNEG(z9Q4Q0mg@9V4X%kUgV)5dpv8A7v_zFYfJ zZdfG}+PH66+`fcRT)sXf;!+YH7obn;R@ojK_&QU3<)riRJHG_2&CfmGe)90cLtgi{ zC{tQkV&RSD*P;2IE`Ud9UUV3vOXqsle57_&__)7XkTG*qQE-1Vbo?$Ly6<*?oXZ{+HM#e@s zYSU{q179AC6+#D3Q%ttGscR-IP@(lAf_& z8mj289;ZSqqRqGO56l2$K7%jCXP#QhF!LZ{XmQ>IEHw^0qqeMp#4{<@2#NJ;Z--@Vk#Ur$e!YGb=}-}hT(l`Qhkcs% z4rRuAh1N!)n^?unV+b!QDTX@~8Peml<$%Z|UCm;BP;f}79aEam61PoHO@EYBsnC~eX=`z<+1;t@ z@%@iA?~8rrEcP9eJzzsY>!Eni1;$o8bR2`!d`c(+u=FNY4oZh?AZn^MTPYh%ZHYefE{yg+eKQv1Q-p-U&}> zk8WtZd)Up-QS&LOq9Ta{toc3Sfbqo6bhE|#=&{tCj^Y(H;4dit!JaE|8@5GhjDUEK zSF33sNIh_EWPt=JS|fTVxPG41g85E|28=Ki7UlnNjFA8bt1 zcO|JE1N=w+rd`Ohoeo-VsEs%IiYrd^PJeXi;5+iG(!(#Lhas^<&e;eHg^6%hch){? zAOn6t@X9Zsm^3fFs=V)&vkPTirm4kX>jY4qz%hmsGsH@~;R$$#{=Ln^giHU;xG|jy zPLF4_BNqK5q+mzx(Q+oC{y;zPqxY^KG3`? z-og7uB|JO)(IWi&_3KxflQbmCO=dfiSlp~k44iVDY0b*U1X;x|)#s!Tj-X_};tQ9} z?|`^3394f}Q>DV=zr}J(Y(f?v`*&@O`%Uwxe|AqLnb(P(Y3+xa_wsJFQzgv67vBqH z6lvlQ$H(bzOoDi07mg1Z(jmfz0PW#q2tTlMWvW!JKyFg?K~cID;h%sg*Yxd%pvnXifk5l)Cx{NgW@p0}c^1 z=ypFCD!D}mgJ&^>^B|zzJOY}+79I?t3G{Ko>KSK`j&$3(tQSC%C|`axvfd5`Upjhz zQ08>Mgh?M1v`B%YkJD(u4YUkkUtAVXkOo@+qK-TR=eKbLT`FthdTLr6HzncsHnc}( z;oaOy);~|Dpt8=-3VWVD3~4{(k8HkoC@)BCkIW*;qEjE;axCjrx;CJ_t6-n`zI=9M zrrEF!mz``jH?Z@r-f~@raCra(_~b&i_!xJ=9CK=$A(0m(Xl^d?B0mBGHdq)9om@0C zNWS2D-97)u-n{mHqvt(23E!-k%==eB{mj?sl@m;rvlDt zFJghH?|5iK+^VYy-d7;qGjZ}#sj(q$f0>CY@ zZ_1v5k>LfDMH6-Y(adJfnr&VCm|D?v{hZ28QSzLps$8~T?ktCNqG-~=5_y07-x6Ss zZqF(Mt;IKyT=d((zcivFFiDyzqZ;HS?d&|B0*~ONdhyiET;p0*Rh!#ajmMMA3zwu% z9)M7sa=U%hD8@(42lr*Y+AIHEhHXZjV=DRGcnWTP^qIVC_K;EYo}*jM`!R%Xxaeld z*h^AT>pYZC!&U#`Xi$cH{u=7smd8a@@l{<6 zU=nQ0v#z&XSZ!06G#{q{Miy712RRPm%sCSk<@d~N92WP!%sW4cQ zt{nWnQz-EZWJ_5%+r4qW9@y@-Try*9mbw(`Ya52J0-1);OH3H!6nhHI*+j!<6R9B% z*K-n3M#X@geci_iWy+47!vx9sL*T`jS-4Ddy5G#11I1Qy3XuEy5F%(W2X`zKks$JiL#$1<+S!DJ6I&--Xr8DCm|{`IgOBOg11EA!xvPFm zXk5Lz^M}L4!ARcI@rPv^t;&sz^BY2p;-eN?=0YyPSCqs9sc5#Us_uXI zAyzhI)^1`nkqJ>>8$U?TG7@f#GFJIXsocL?G%}16XLk|tI^D#R$jUwsWdIKMF8wLo zptC45zRff$S=clbZfrG*iqHxa=gJ|DPiBqhy^@}FIyrks=-0LNO;|gu9{MR7)@f+S zszIwUj{q3(9I#0g7<`Ag7?-==~EKC6=M~)34$7ESH+i)= zm`<;&Z9jzi+FGnfm0VVm*%@!_83j%UFnG`tIT%5L5>pb~#_zXaQkbX3@;*IU3djvC z%_1S`2;S(*p@$9Ul+JFeUE{gIm451j8ZY`Yrk*p|Q0FHMY~|FKEJh}f3o5-1vvW>h z6E&ObS(ZbAUM&H6fzCk|&%Qn{e05N+>pt4z8<_=O0`cKJRSEp^r_u*1wp-z{PGx;dH4RTm zlyAE|n0k{w;&Y-H#&>fY9FB71Q>AZ=J%);}AL6Gf$$^%mfmK_}@v|m6!MAgKOsfN# zb6%aWYi*A{VDxfUFJUX==^h0tNZB=uIehroX)Ev>@AWtA|~w`2N7;Czt} zPPi~iDNB5wegcddCnw*#zODQ0vkZrCkS=Zx@)RRQIK}&|6|{&I?5QPVxlpn+&R*gP zLwO{>fr-uJ_80_2AQfClTAf{TKxLG5hYKnf!NV?}IR68Ek6P9f?b(evidlZML>-ip zr>%AKN}{}JI=$CWVJ)z@HY+$;0>%XoJ49upA50%U9(U%dOuTkZxq6d7;bBRJ$ZNaD zzSr!gv+A*?X!hML{DNK5`~A_ffRo%68Nu1fu=KkV8E9Ka2?YG? zKhxLoW)+iF91gj)yOzG(VULDrCZC75f3_dIo>If%EAtfQh}@)eu*%s|aEPE*Dxwp8 zda^IZ<{j7@k${RIv7&6LUjo!Jf5G5~p$^4;L_LLz#FXGPKsB~cb&Usw_|JR~?;!o|tFRMOGz%G_c`UdD;6f*!Zm|JYwD z=6?fM=!?3Gx%R#Z$B1ZXCD!JF!A_ocKe$SKE!0eP%b^U=uO6Vp7*c`^L8gfJp+0GV z94?Km$o{lcZ_*jsbJ(9HXbxUSr|14WYWN*Sxr`vp|rn9i{ZZ{ULK^cb8HVk@^5EkV{fEMylT+i z`vK+L==$qblXde8#^ZnC1TW5NXx@l7Zz(+ad%mHNDln@lY#F)p+f z#)%08g62%yvE7R@aG}{j>#vlcDpgg_Y+j8AUq?h!Crx*6kuWxBeNcr|18w8G^(xk21B9epx?d z?fx;_Swzur;PWHP@l}SeGpwNw#FP&bg_3D<{i}=clT(Xbbg>0&Ts?g^;elnfG*fKv3Ti!xo;x!fBGiY(f{>L z=>1RMgx3FJ-vn$9mq@G^=?Ji>aC1l}fQL zE#V}$d=>A@V?hoGuQgd;6t8mX`>DvvDcRdgLIQDYDZzQn}C4TstG?*)FTC4OJBKi7(Ocna?ro@6P}yXjWbdsZ<8XK4Fz7=M@~ z`tzau*6VUW#CB{CT!P5Ft{f>X+OYvbVAdNEsq?S#d5O7{EyfD*<;?TrgN8!(MrH$X zrYaL&(-kSX9)YdS(Pbs0`I5ncK>wW2#-b&?TkYOKnC7T5b^iqzc1*2Js$r% z&hI~@-~aXX|0Oa0KYsuJFD@{NLoafA404+2g?oWH-zKsGkz%Thg2H6J$Y0|Ke5%Jd zTfl&S$-e$$eTr#t2rI{6)}!sz2PpDoZH?aDj9%1YRHWm^K9e8DHo?s4L4F4jbU}~^ zGJxE6b0j#z$Ho;B^JA^d7j875;_e<*8*Ak*xzMWdwV(PDmr{JQ=%c{e5-hL&2S!m;+BUbw zwn%z*!>J+)Up4FNXP?v+7O@EsVQ8=i7EiO<@veyY7D72ytp|IIeV%!fKvl((C);C` z^77q3kE`sx_j+CW5x)Ff>x=E@?X&5kCGvy82e`yV-Ld|PHlCAMd=JCS8g2&m7r64C z?#{Bei!-roUuPJJhA8#_n#-${8OWCBvlKw2+a`szZ+$P?+78$RZ!g9eE#eupG@wMH zO{b-Rd2%ISjb3xAK}w!5trDM8ho(p~lx%7jRuS%th}UT~8OyEc0b&hy z+nt(28cOI)b?gfyyNmRA2#@b6F}Af-e-HMiB2*yO1!R)2)0#D{zE&~o$ir}9z>c)k z0}(_ig6-9Y(tzBGSuHInHLS7a@pMaIb@5pN-2BTqcN1mRyQG{*?Wr@}CvHF@Uiw^n zu*t1FezLSoY$8Es<8G4u<>9*}VwWwgf2@^`2ivCPv}IP0ldH_CPIZC3;vp&mlc4R}o zc5~@ZqA*IQ!e1m?B}6n`wsu@g4AJcH&!@}##;5N)!lieEglOU~?!}dRw0T;5dbi$} z?eAX~YuaM#&l8^U9k2(x9bBw%5;ry1Z{qa^)DxiHRXCaajBwi|+ho^rxq3J;{XGRX z7P!XbL)=2l#_v1F-+6%M?4}(~ca?QSsg{N;m!rz#DD>yejK6NJR{eYYv{16?YJM9q z(u;`2)bMWo;b0h}2VqC5G2Y({6_5yWbZHK`%GY^P-}S?szlT`u)S7~C+0XUB5TTZ; zOxN@MVU37j=_|fQ#~{3!EZJ+}>hIrwA3#>T$iWAf79x9%hQ~t6MR&s->jDD;=Kc=j z+}PW&F2BY|Y#48WTXby<&{y3v@cDR0rs$>zz6f;|C?i8-!AJz77;xPtp4QhZpYb~! zuA*-~W=JkfQ7%C*z7sIqPTjqvp7O{DJ^5c&sTNFyF?iX7Qi?P}BUQi*gli~$V?Llk zKts39H25EL`8HTO_pgiw%oW~fE#~Xw>DSdQOPG=M$q3KBge!)6S4c~|jzVpD$$>Z{|A@Z?(C;6bmNtKAcD(}53e z=*jg@4YQAk=v>!Lk%I`~8q2x1^5`bNq6p>`~F z<&z;4d(-gJlp0R9Hi^=6NGN&VrIIUfcGuiDK&yKF_&MqC8Wz73Iw;>_>9Sy*ZW-M- zp;zh*U{mG+#CEVXnt-R&l@5%sV^20gYC`k#E$5}#rCHd*5dVDfL6O*wti2!o&d2c&nN#W6ePl;$LR%nzf!8A1=xWJHE;LyeF$?v@=DqaWQDUk%8D1P;(3!tj|A9@nogP#%563w zA#WFfFuyKE|NWNs-RG2|R|-0OB~>*h|K>}dDMV%TVUH4In5UBeqLn@0Lp&94;l3%` zkYEHnC1Heh-n{)x^!xa+tyPY9;pHbkX6a|+VQSglR%>FRi{iEC`UXC;cQ=|qM6O$U zZYJ#UkF|=Len;*>q03rImFv-3{=@680f(9+;4M+@=Wi{>(mh(p3gS6*IS+zQ>;1zq zH_|6Q(gWpYnqbYw*=PJbF15{Xf0$kP9E6wT=`_hHbDlH0YV5}^>KuIXijCFxT=o|t zKbAycs_<1aPk`&+lcBjmxB(KrgDWERbhg<8>`_KI_J!fd_k)>(uplx~gT%|P;KSd0 zOH9<}u_8mt+s0BzuJE*}U0$4ys_DSplG2Q4#gE5rDCIF81Nkl%{g&HsU$5O7eR`0;NXe<8m-H(V4T5lK?BR=(ocJSh4JFgct)YFp5WNthzbWlfc*o5U; zDh$aH^2w;S-TMzEs!9R6+noeIPR2^0C^M+BQyy zp~twjO+A1-_=Sn0V>Em~lKk3CE8-gN_&UrE-HrJbiK&IMGDpt-;aDGDB%~#-^=Ff1 zy|z!c8rao)q=xMT+XK#D(35MQ`shWh;*lOAU_>O{$8?3`FbK@O1L6#E7K+FlVL5pk+?bjx!GS2q zbsy(--Rp<%<9mNTKll$I9LIaS-p{9$e&MNvt# zXH~BW8~G%Sk&8_25jBJWwC9C5Q)gS6D$(~*;&vUe1{TnqS_G8!_r&IkI;~%+fPk&( zNDTs5hP6Je%s#p1;voir=R6~}Xmp9Gu%bg7%ZR~JYS{a+w;9j*|&tLni~-B_D`Dgdp~`=Af42QjzIT-j(|l0R5U;1Bduq7u4w&`=0I7> zrD?UbsVA}w8E<^%y{?WMr}`s3?&ZzQoUZ%j{s5@tqHm@z>61_eT6z+!Q-h>l^I1H=O!5+X z5L%0iFJbB;<$y&2_{apK)G17?^?==!MuZ4zC6euadI|;Y)y>>Dy}j*P^FX?dI8;z- zFnl#ICKJ6%k0VA|820TK(WwD_nLkit>v))CNY;j&s_Djgqf8-)& zht>Xwi8V@pDOKz~3rx2Bo?sS*}91X>BEP+EssUE`}s5incH%%ZoLRN z>NY=&g8%8!gzqaes!GEQM)%zZT{{- zt}dc4^S2%79~pOGK-6MzRvdlmrze2`n-QRy=6@v5eET-!*uwEAp(zt=e(6!;%T6(= z1nm`V{i7YOu9DB-QR*N4NT!Xq`9uw?9)gy z_UR3p96gnW{R)W$hID8dd(`7$l!P0~@Y7l?y_W2M;5e=*(01Vn@5k&UQJ%wXhn`2mO^4D&4-2yE;!$8cb!iU!HVDkY zz|HXw#5ehJvt!;k;wFu6WvqGj zpC@b_SQ2%Pu}kIE8)B&h%x%6S)))GS6-D}_63E2ZH39fgx{u! zfAf1FZd_)Q`jE&RW$e7jNG>HSM>Nxxh;>Aqjyu%{SVVeCl9sT{``+vyKc&?*lT8K( z`a{gtBbl1W<7|3*3}Ez+6Z6$zUExY8*yD zTs$D~&37Ok@L7~{J#8$F_p1Z&5rV0mjpd$!WZS3!gSzc!jbpp2IqH>>-G_U9e(v6` z6QFeA7jaYwi~ru7N*m-Y6e!`I4hRGDPfQyqd`5+q7GC3J)=np$rFnI|tA_pgICA#7 z8tzv{#NV-b*N$$Li+d~bN*x#79R)i-J6yRHIBHZGM9Kz$CY>wLhaMW*D{yJHiDify z@PAaf+^CLoTSq(cH2LTM7$2McT%Ju8f*yV%@-htQ>C|>fd4?Ln6Z+FWuV#1j{ZR*Yn4?D+42jd-9TU2eeuSxga(>udz6N~!AJyh3I!SI5GJS^EKC z#2!CrE?aaZre4yZ|5Y0VRGUhP6)_wSmLjZ>A#AB$w;xbNG`P; zyQ*y5r+*`RC=hcN;qLy)VOkj%S+e1(4^K6>g-se8orjSRN=%egszU8Z%h%Y+`8DVr zhBo~s<0zGI_b}GqEE>d3awoha%e8~JU^6#?=UuE0l-AJJnn8*vtI=0D;}PPrN>6u? zw;X_ZD|vT(@4WByF;K;p0{W>`K}{N`D<@uj-^msKV2MVvLS%2??bOc9cSR4xmxoigOqc=?qv!92_EgH{!_>O$#pz@)%Q ztczT*uD z{f*tQrDEo`+20|Rhz&S3=Iaa8MT~fF`ET%LYIb?4Uue<9s@Ag#13F%p;Fhs|??!KZ zeySa+wl%Uvgi83?J13C4VZgLN@i9&muLVhp53&sLGPuKaZPahYK~Weh`zs;qY4q)M z4urz{5UW8`KYu!G(gBs5Z=&{VbbaS))2P_Gt(rbFk{!=$&U14dlr9^WT?um zK=(N;0pi00N73IQr!j7aLUYP-<&4>fKU5I{Efgo`J$qxmTd#vgFE{3dYAz<;7z(d_ z{lh^1PW}5EbtHzv+`xJoZI7a|0bH*l<>t7HS{pYbi5F;sHFG417D~3!vdyTs>P4G- z_^zNA{(HvLaSCA>VSojJ(PSZ)>=_mV{j-%XzVBe>GIK z+0r(sCZCYdZFw%=c+!r%?VOc-Se9F)JUtURALOaKwz~#=N!MqK7=8}4fv8=TpObSW zEc!ze=5Ml3B6S7?8qw zB@4t6G@Gpn_@>Ti`LcG2dV(p#jEbN@I)SG}|C$+gg1&#TuS z#MTMjH1m`8(SH|hsMsd`^2P(s@0b*HHtN{X+ zH%S#W`K|7qPsBa+o2tR3bG$~?bxo^T#8`c@T20NRpn(@upQeMeo@~uslZN-NS9f=u zcks(S*$sa7%S%d}k||6erTH^=F0E^TAJd|Sz67jTtBGeAatmQsR|hCr+?XKMkU-qu zH~a8YI$I`EleoT5Q7+a2XM_dLm@2#i3@$}2If|J8DvbqUaLKqjwPbS^wAN&=x|O|ujwLk_!%v3U2gO!Ll}pzT`+J!iV?1VHz5_mfzW%$f)q$;?VM2k0 z49H);-0{R?io5Wg38Kk?U#pq`EBRS{P6>F;(kLkw)?XT8kh|QiVKO;dIJ)tt^!E+~ zi2vS0g;C)Y4WNbQW!lq z;*8Os<7!I~9GZ$!LQF8(XZV2AN)<*-9%HRFXh!PrgO2W8oQnZfKjBHS$y2&0AePe! z37ve9Df0Lo_=n)_UgA>;$78(FY@j^lg}6W_$0>EKD!_^KZH81ix;OVi0I#^SiPCb! zZg2D5R%Xllm7!_l6C(#Tzkb2bjD=r7K8cuaT6TZuWpz@7X&-%lINh&cxS{Au|8-w` zX3sTmnDba5@oRQ{zOJ}fY@=Uimb)@kcF|)t=ovFNK{t5CurrwO6B7$M4lEwLTekZ@8fi39fn?$FKVIJ zTEq!KUZy`~IN*TZD`9~&AqDUQd1IkfJlH}HU!dO=U`f$lU1_?Lihqb?axAC=n1X+Kn&)eA-QuZq=lUYL7ZK9w5&6W+G@98hD`V zg(nHuFA<}MF|LR>(eV}#KYCD0GG#6-2tdSf*L2qTJXz2c1YX5@@s#EDA7ahQ+O@>G zZJB*5!!wECCtKUlPv-1SOqC1fzeysv`wxi#(_#Zz=bcjlI0VD|%^8arf%-J~6;n{y z9NT8cG)~epIhZJ#)3;B~dz;pG1x_S7uzgo@PSFbM<}rMXNdszH)Gp$r2i8lns&o>z z)$3ZI+jir2o$Z;zTMx_Pi^by>A2_~;fB0p)VYXgEbNHHpVDV|w>8aavcZL+9D<6u| zsT;8X0)p+)M8$+%t{S^tUOAiCf`s>Wdg--yA8#56n{NfJ!>P+(bE}~np#^JfMIiqG z>N#m=!b*S5S{XlKesu~9v%6u_Y`;6^hb1z z?@ae_oS}9=Ws>K#U~Pzaz*R$w<>;oI-cqj#nWgEp(xK%Zk{}zHa5F?Gr3em|HI;=H zpgqrUO)Y=Uz1#f#vxC#!s;_S69l77*EYWunaxIJGr5mnL8NK4mahCU$^cb)3&hJxO~m%<@{qeb}!J% z0XT`=NeIyI<8UaU%z4l|*3miOf*FX8gg@7@mQA0>3U#@vLMJ}kdy+dp`uG%`Ht8`4 zQmvAPiRkhG|f!btpCbRZ7fKt9LmbqG&+wtTd%xhk)|k_ zeF3#PHDHn%O8RHh$8MGfelH-@i9>85BLEmR+-490s6gt1rhqc3rIN5Z5GsL^LWsMt z+3F{kMP6*;D)HP?uWYL{4z!exMjM>Ja96{OHcU68))3lxBgxosh%5G04D*^NRH%CM ztOt;QU<v&qx*MA*3S)EJf zd_2^|TY|dWG_tYtU^k4fGeo)KmnWZtT95ryi%Spy=-YqL?~;B#>1B)I5g@zo&QwHk zX3}$kA$S!_3v&!X4Qf;2V9eT5b#v*sWtO4xdVm7b>)E!>#`eC?x3${91P9H(+K)T? z6aYhX4j2s!+V&ZP9K;(sZWj~rqO_SuMQUu3QU7(;4kFa6dAf1=Rf>+)=Uq_S)r3H{ z$DRJQUe}tLMo<=E4l646<_RNq<~&Uc1x~W?64gbnY{hBro_J?8_IeGG?0&xT+tcYU zSGZ%v$FD=b++cYy5WrHMBZ(SF@?lD|2SRdENs{F|!+B=Kj50gjRz~1StyjohTs_m6 z_kHn)JJqPqrKnLxZmF|_r+sZnF|aiBe&z1tBTaj3SB*aree=SlsKQ_w`Iq4*4T8Rk zrNt>W($16%91EWrvYFFIoO^aB5rlK>QlVq4RiqoBoh?<$0(rE)^T5uZ!*w$ z!vb*k0(bIPD%Z3cR~k@t#yA))<$}}Hhmrkjm;AXE=B+A!#YQiML?0#rAF?w`j~br@ zIJ-6mRfxw?@-%f^5sHJRj|(oHb%vJ&5gcL~RTyd0WumcYLJs z*d6S|IK7Usf@crRC;)aGIe>jin|XJj@>(tTN&fqR09)HKN_ z&mwM(S#PDdx(yK}I(=e=Zu;+Uj1oN)fSK}F#iq@nzIIP#TTPGT`Y_daLbspOe(-NJ z;WhYz$7El90fXEJ4g z+Cd-U0vwP48j7j`ASej*TwrBtXVL;Mh>^G5E;z1LOY*_MZ$e?}=FXE2U2t#d)6a)m zE}Oo5uy&)e5gme_0Zt$#fPfhnAfWY!yv#j~7F`pB0C%4?aI(x&qY}HK_F$fuY{9gs zuXWmBc5YpYSrT?C-LkRXcQH+Q0Cv?d$IS6$G>{Ai!a{t>e^y|^Mq9C?S;0Zdfz_@uJ#Z7F-@9#nu<}&KMnG?sr4Z+l~T*Vp62e(FGu&<@Te=lDc_kWH$`dl2P}r zOzmSRMq^vJTTp0 zJ1W)F|0Uej3QSzMB7cjeQ)dgi5;_#$KVX0^0Rbx&!6 zax#th+*()s4)Y5rSrZI#t@fUe)|YEcl_%?;|JHh~;PknEP4}Z_Jz;`__ll*^hmF=lET(w)&LrD3=p$C&Ws>ew?#$ z`Y=vUYH{{!8p+k2`X~T)RdOgkjI~d!#@*64HR(!6(L*VwTvy`OY@?H1O>ULkF*;-Y zM7X)fL_KskT=nbfXXWRM-g zt4wiC#VOhSCy%}AmXgtb{6vxmufK0CV4BStAa8WRqI#Cpr(vV+o0N>Zq9h~xYqAkN zPVW~Jh&-6ps4X0$dKz|K9gB{2?R!?1*u3$q0rVGom{j|TJ=(B`)d{8X(!Cg>pwZLUKqKd;CGn!r3V>Hsc>b3mEJtL zhvM8t^y!|s0=#r=1vL6 z7qSO(w9Noxo-|l{gnii&9x%c6S_Qmd~iK`NG|<)t^!f>vx`5FLz0?(YZd|_~b6$JrB?|u&Ml98{tuKA6b~Vp708D z{u#~ewVDDnP74~pv&qwSF4a!<@ltI9>jNb&)^|U$_n9mAd#n6&Z4hWA6+jb-7ayA6 zjl5Bw6l0#epMR@I%dSqgut9B8s;z^@w$v}+SLnp)fsOC_BVa?YJ7+D%D~ee-=*aHPg|K4~Ue?3GOrvHK4T?p_xd$q0@;2*Y z@ZZ@s{`JG;zA^JgozFUEt(eK2?Kz>2X{iOFuh@yUInGwR@9h0iRfQNa!=`&-u;Pwj z-sB-8m0gD@K`WcE2+i}pUA`n?st8b&VPnRKYE6tFNW^o#j@nvI%aKc>%`tiflkzeJ z&0qL})jxdg>Hqz;;TYKe`+IiZtY~=?ROppr(|K?aCD^}kY~x9Fb8U_S^IT@^SXGyl z-izz+IiCOeeD&yGdZ-bdb6@XqDRTJkiK+=zC11#ROUax2D6bOeea$h-5d8R#p8fS` zX8}`i&r-exvd6nejW6Kh4pzZhB`i%53hpP@A~7otV2M$$9nd+Ckd4l$0%Yn;&z4x- zaDYGp9x*C@J;FyU|3emcnLtWyQiSEVO;jk=m;!AxxjO7bL%(rH+cW@Ie0}=m^L<}0-{XHt;IXR1>x(0s>;Au`t0F?95;;PnhEAoVzdW({{;l3} z>Qnx+iMK@v_>RSte2oY^r--iNaLl-OpOY@APvV2l`01FB8`NDFEqmr*VzU3>YNma_ zI{Gc(D5pNE$9VQGj|1ml-M|ajwJU1=$8Z~2mz^6%X?(!afbr|!vNZc_0$*2O6AUVQ zdRzommH+2CJJ5CzD#+%5LC>-!Sz0vUVq6Yb@OzazuiEfDS9}&t7V(l0_|Es>UjN(r zqp?2N1dz&H7KFEpsljbF(RxPxb!M`QkbwLaT)y~Ax3(UR;Nz-eeeYIV znT;rlYWk=#CZ<_qeab%BMJ1psMYb$)_#Qx`dj+X$Lmgq*0=Q2I&{7~KNOnUyE_wI< zMs_l->S@~3$PBW&GBGHnO!@_QNjlT&4dM1JLIld-)8n-adQBM&Ek4+Esc71F!<(e+~OJE?}CBi?SBYMW%C_3bC6EK%BChaiwfSqW(7eONi_`a|)e z29{q);~2j~=KD4Ao8oC(X??E8FPxfOBxKy`&PzKw2+R{Y?&c~zG_n@6^j)r*%W7VM zOPU(1W?5N1Pkb;SPsvi&wQhUj{=L{N(Kw~lIQ7P0b$wE7-hSTHGkj?+@Kwhi#s~BX zwSfRyVm-y|!kQ>FvPrv$b&tBcad^11a-t@#DI}R!df4cfqEBAwP3?31#|)3yen5ie z-Q&Sh4r^&d!J&2Oq3Vvf8m_fN{YkT`>TTgN&pizbgA0xC?|$^^tNF|`93Qo_COiwKfA$oYf`a&Kuh@i=es(YsQ!|MhTJH~Srr0X zo00o91JpLl%MwBo`@JsS}T#aW(IA+cUg6i&uNTY(JlWZ_4v{H~hslQ%rBSDmJK5*yDpXFjwG

pehgSCKCaPpq9zJDm==r+0moquI9pbsoJzVxGHph+2KzOp| z*mxWqQm4`02&@#@J(F5h0aBsLdZ5*JQ#wYD& zb2Ij>QzMTd29QF;*o@Zf6WEFjsL`9&ZKSRB=!T+q&19(8opdFc(BO{Orgfnjo#NNA zF3Mubnh^foe2L_zF9fbURggOqSFcc5kmYV^lVO7z&V*9XZ+dQJ9*u7w|2i+4TM?_7 zW$#m+6des~w#Z9PGU_%6Gwr2l#0OxaNas*NG&yM9FkWr;+?qzi;<}ATH;3g^|F%|p z`S+IN55AssyXYdlOZdps-n!}4 ztuN+q_WC!09Z1XUOQP}{%E=V?0_Y8Z1<27D?+0)Y9$S(NOR7kd1mvackvO z%`3Th_Lk#N55u?FFwBB~>S@-~O%XLAnx2|)kL{j!3gORezKYI*xF8poVh`>y(OOf% zsz^vdPDH-P?=5&Z#y2s#xnL09iK!)ZAVg8#3~pNG!W~A~M^c--sy2uN>DJm4Fu3Eu zeZx9+X86LxJxl#(wn4$=l5RI3n@7k(8ZD4ol@7C`>>n6@h)0~8!Aa|ke3xGAKE8aM*qj63C0s8!gsb! z;}clea+kaGU~u5DW(sAdSYk}w+UZy2hD<2r74UK_$XJdB^o|alA##x{mr}y3-8i%R z)jwEz@Dd0;*8K0c%Vs$b!F$4S4AkKm!Hl!jF5sHsEYX251qeq%P?9qrv% z)zjak*YhH!bbf8r6nDxpD=#ZJ86m^t&~4Y2Ld=RDFyZ~zILq$vEyODZK0qF(Yf_b) z3sBsLslepgjEm8**&d|jmg3{*j>EuuUHtew?IS*Znx2|6ydF1n;>J|4$17_A-yjs0 zvN?(95_Q9d&GEhhA7|Jx)fiTc24HKu#kjcY>x7K7s7ecaJ06sgy|LaW(HM~`FNK`H z@Sxv369!FZg;C!C>;JP}{=kGu2xcEZ%r4fU*-bxQtqlop8oK}0C?}w-^6vyLdHDxV za#EI>#&(NGapwAYJ{eVGD~FMS2fy=$B*$VLq|y}oUi|!Yq2z6r=TM0&vPPas9J*mN z9@ChW+%U5@TD7Snj%m4#zQ`!=T2N$*0yymB^Fmmnl)ZZH!hj$H`j8Z3MN=!tRU0{* zrjbOpml?@)&0T-tknW^!I%LHFbs@-now?Q0q*IHu)b#nV>rEnaUUFYWp>)R^opQtL z_j4ZBNj^*T{({g1v_tn^y>;FPGOfpH&{k22{(1_Od%}a(_B<_V0&wtQU=Fu`ok(=j zF{T%oWgEJ^J90|yc*YOJMCroQ-@a@3xxC_3Ijd0K4Y4~VxDU_8-W2YW;O8;G!McJN z8nv-sT4^VEq*}u7})w zxB?TKuD3J5VgJ^V0-nPhjL7+Ejk&3V^mDm$rK8v+lFHfM%C|ExDj4JSe)_Fq7wpeqZf$?GBqT-o;KbggmA=Sj5 zUl=~^Dv%%46ey3YBH!r*(T>ln;}$U7uzT|n6`vGMBtMoWg~=iED|6zqG;E_tUDKd~fD7-PFQ!(qtsEiST`RX#(0G33|3up>|EV>2is_ zvW4I4*G)yIT6!}L^*RmpCiJuo0wW)zf6S;3liWz>(Y=8O|F-oN{XcAdtDL~t_kY{^ zOlSjl|FQKo{17cELA;YYl)n)TU^FD=`j zKU`(h_k_y?ZpsBFI#w@Ax=kl8zJc2=*6-YEVsgLE2UygYh9Y@2c;if&yKsm8mUn)D-{1+vj>Z?P`AiSp zVI^{<)#W=#0P{$RIjQ4Q#Ol=@$Vw6}y>hbXv`h7Zo{)lRD9{2w4w;D3e;y3Fg zr|h*)hdy9%0?$2#PO#2t&UPh){&3A>Z_#wkn^CK5{ zmq}{|^EO3rHC$O*qIvA|rYslXnksX{qQ98v;SDfJeR$WTHiza_J?y@!I7_uPBiEXp z=jD^hZT*6P%smch^4Z@RlOv6=nT+qSW5klMw8IM&U1 z&>0l;FazVx8%u^pg!iR|OOF}6Q&L8$<#%69)V(a0tzliAO6i=g+vf@#ztAonaN$V> z^c+vK{6>eIHa=jIYN&)tjj8ly!<@Ety>Lv}GF&;w!J|)sWvEfHbJhb9 zC_W%gaTFRd7TQ%C`0FH4D;%8wwvO?khU2BrfK&<<(u=2)_cc{dmAlAu+CK00DNS8O1CD zGtb8`nP+YaAdlZ+xEI4i!r~~a=RLGMj(W|(lyjstj^56Wbw?giNsHbG7RDO_3y4?{ zHvn9`N>fgohl2ol$B>Gu6AxTi);OkESvg~oypdyT`{K`S`HGiczR6`!bwuqy^^y&H zj5c~R*)w~)%vF0`=baObpJDF-?zG;2+-YJez{M_<5i}n& z!QV4JBTv)M{rj;)r^r3+=~ZD+iUF0MG6q`x#puJ*lXBXb2A83XJmRzzbzw&c9kaxRC?wm0sr}H(MaQ z)w2=3ObzyTqSOyBlt3vVX`BdsQPY$nUSdlNA@{zI|1kyuVtU|GnRk)vN2V zVQ-b0vfnTb{4`C78zqJsjTR|vIn;=iJv`4aSbEra@K#}(vBGog4-i?KedZ<&OV3~+ z@T@B|#4GeUhH=YYMr~xNqCGe6z|e#2mO&1vzHaCjta&|HC3UuW;-&V>Z*u<#ySR6* z{dQLP?+Lpgxzp(CFi)?7yj@FF|H1Uum+9FcnA*0OaU%a%!fT@|uxAAYiM74yvSD2R zwq{|wG9mxAX6gPnty#J6a@77~%`yXM*MK#P@&9Md(y_Ud_bE9`W`NT@bQZrEI@`QU zdQl>9YpYKd4|g!OAFKOFH)|(Ns@T%Tqy7*t0Tfz|^DYo1FGdu0}D!B5kwvUivuXV-qqrtEX)cb z|5MWG7DNV&@YDe%9r-^c-6Mx|JN*Y1RxF{Jms-*N{3CyrbjS$!r&JpjWEdCN8{Wc; z8mbO~SWR>i?9V}MjmaLYb~vPP(gXzTt3BDGfMK3mpw_M91#GEp4>Q2Ls7Fp(Yo--6 zn=H1>h{{gNm++6N4jwhSPyhTd8f=PcoT%N_dftjV+7C`cw8?v$m9v!)J3tK1xFYnn$%PUJZ3A%ulTFB5 zwi4rfJ|owXX3&NtUS6>c3L(7tQ^OzaFu&MVT!R}i3z2I$=Zv4Sdx0}L5ryKTM*u&U zHz>D597=;0**c>|9cbg0ZR?!5HO#_%A||*5oJ~ClFU&m57Pn!$w!iZF4!xF)yy?#muz@QX+KU(e4& zL;=-%(n4Ja>D@mRD5%T)p+<+K{Frx5-`!cG8m4Z+&4Eh^W5V4}i@C(T-CRb~Kcs?P z#^Ps2hwV$V>WfO7aNC)t2=)w20tKZDg*ZP{++<=NweDueb5M%gQB z+x$=kUxyk*5^Qoa8Y8s^jRn>I6G@LFRSm3fGH)`fZZmv}kX-W_&ITWyRx%7D%^QR` zgqT)+QVK3WZo#Hv6QY{=^P~{zIg~8cIxDVokDA*$d!|gsFb~B|<$R+`;$+wiSl309 z{~(kv$!zS7oaA+0h#Q8ZZEkxGA<`|K7PJ?bNG!@v|H~ni zu)d#a{eU=lO!2~|LC=duGd0}Yz+_A(T9~0gU7kZk6M0d`fMEB)iB1>TZE`qGPTqgM zV^(LBuqrfU>T3A$i?Lqnt+NmIVUs?OzzFQoy!w(KZ>4~ot6I;YCchF;)5?HMYDQi- zHkCu%9DBzzbN+RN!RNKN_HoBxy_@+ExlK1`V8dwI^D`;)O770N_eQEYBkf`F+{O@SLUK1Rc`m1xx}TNHYZPn-x#Sup0>uvs>HESz}u^5j!O z&qo7+sa0rgC&_&d8a;Cws8QtTXa<*D{D!R=4NaIg)_pX+rVf6RvOcEGWR}7ef|Bzq z?b=T2R9ll{Dv1j8d|H{c>fdu|4S(>zMl*Kc`n6$}YK_a*ppMx-?V{D3l0P{m`MXm8 zxMqOUqI3Trt{Kb!>6)Q%D=WxVKPblx>or+Czb=?FCM=7&EaUF6*U8qT=F+F$%mY44 z5bDAZ#?=gvtfK{K0jb%pl(lS|2mL&~+E^SrR~m&3GJjDB4P*Ed97;&l3$CV0rZHqO8iz>gzqxiGOb2py+j?op@n_7Iz{Q~3&CYmQmwa4ZTiXaN7j*NV`D$H zwTBGaI}b01PNuP^o3e8QHjNFMr@t?l=(8G}wlR}qM(ovyXth*)GX_ zm;y8(5qo5CUfouQTLZlmj_*9ljo+xP_yoO6mGrA{LC?1wm!MZLpCiWx=G!r6&^&<0 zLXW9|ylQsd4q0mPruF)2+D*7R-a_vz00-Rfg zS?(8RFtaS3GKdH9kASVcnSPDo?_sk|3;5vALlv43OF)Q1tb#G`l_yc}(Os#gH8iL` zaR`0U^S~51;BC6SryvX`sfSMJRe!QDI6wIgKe3$fD?x?YW30(H}>=tsOPE9=lhzPTWfRi%_UbQ+cQ1^Bgp37fU{@D$1Q=C>?4xf0NDVDaaZxi0q!I~jrlu=i{_n+ zM}|J47QIvDJwMUyR|r2aA)m+?TfCfjQe>0DN+LH{TFZO@T`+1YkS9LAUz@ouJa`8dDt#*9JQJtzpw2I`&2bO%s zvQ3&bkWln)oDT8anY5jb*HV)iEK#wBYkP$W5{)atMB3g)6)lo-gWY#9)9gO?g{Xj1 zdfh+VHlzJ|$fbN{(%x*@?q0EKVsp*6+UKW!eibint4@Eujj2X#NVzZ{Ah8ZKA`ZwN zaxt7}oHnCNV}RWRSR_B{EuAv{(!1o~w5p+=P}-Qzn{@UWNweiIwClmyGn#q0g2~X@ z#qA_h=d3>2p~2=3-T--^7ur{tKqbKf?G-NOMav)gpMS^y7s|(oiJ_ZPN5(?TI+a2# zXuNHG7kVA2vK1d!Vu~3>534gmC(dw0{hd1R8hc&8t>M#O?t!P&XuRGjJJ?plgvvr% zm&yr7Z`UlBsu>5PNRP_S3@h`b=Tg&uryk&O;RS%_Fn7KF&(Q9ip446xmjWooP{(Ej znR_A`Qtndtk=rHM=vv%Tmc>$PT2P=v9l~JVNARA5YHQO85qoP#jPL5o=w>3kD6&4pt7M(5^X)g0ltoxLacN;A`|2{IA5r*UjXXzN$P zvo!xQq4Np}S?@X3b`k9;WvAD4>yp;&D{4Y=GLr7MtUd~SAFIs7yN1qq>0j-;&jR2B z)WmXkY=msNtY1c!tMEk6RU?15yuX*m6;fn8x>9YDfpm_V%qmn;ty#>3;lKo=B{h0f3`GuwaA^6(6CF93`@@3?n>4}kV3`Y2VTDMwgZ8|!Cet{%{#I!0= zKs*dn?a5bstM)ZR4)%`=Ps3zVz8yKjD`EImJi$gsj6&i8G`2^}S=WKr^v&z{_&n?E z-|7#De8a8>U2_lA5BkH*7hcu|%K!jRwP{fR@WDQX(xSSu!i_xDg$~-2+9Ei@jWZ{n zY91+>ihS+!=C!8J2Qo6tsB=8o-jUR}_h*44FTbysbk(povwshqd8PN$A_L~i@G#m+ zUfh5LxoTCV7@DQ@8K;rtKB0__9IX6^*ORiJnFRMx6P_AE8Ue*;5uM_^)!COhi zAw&R3z%xEimK6Hf`&rJd&ZWncM@F5-U@f`t1}FHyW@la4KZf+a=H ztCf!WgI~M_m*|h{rLwwqI)bnD2?+Pgl7!vw0ZMATSbdXLkGQ5w<$== zkCypM5qJ#^!C$|!^7|LvubB9Cn_2{Uvo~@TU4%=4vols=5(WEJLYq=pntx|u^9Zo6 znDF#NJ+31;8Ogp5v(V3$uHbtX@u5wo@m*T>YUnmpdUY5XN)c+Go!DN8NT*4Cbrz@c zgy(ydl;V~M2t?>SeKVP@~}>bV&XY7&ICJP>g@JoA9o*nYZZ8c^YqrD z9Y!teV7$zObR2wz5i_?OM}&B=1(}FeGak=CdvH~0Si>~9D=47x8}=KFW1!Im^({7E zJOO%xWt0Pr3r?}?Ig{$zxi zh4qal^VyRJNAX^g?iF;iH|wm^a}O{co8i0*yx}0BMVh0%Tg5!yz;1ko+}mz`M=|Zf zo#22I-_6_uwoh*Tk$xwV-y(fOa0M)aGW!A)Lb0ll(+qOg9HDiV+XKx>d#H8wxAT>l zM^Ochx0mGVHO8UMut&+U4RzmNoRR{i-2(3L@A&jRxXb_B@|StcYXB8dubR2I)F_H(Gky&DzeX!ZOpA5GbsvyJT3O?ylQmbJIf;N%dYRDPmDSCUJ)brpZwF0 z<;KPlmUPD3kgNv9JxisykyZ80MEPkRN_f69&Qal*h z#V7CQ0SZ*v>8Me*( zNy>15ZW%&Ep;<;oaMn&wO$0O9og0j@qPk8Trl3zToK^Tx06;(}VpHc%See}Bm-!jDI9dsoj)tU2evvlaE+ZO$z=UE&NiesEWH*rda5tHY_h&a66ZrTEa^8Z2Gf5kP?hHbp4T~QQ~4nmaP z5ouB+D$<1r2vJ&IMM{VekrpH*3P>*k0!oWWlM*5&bcl2X0qIghf{hYLKtq5e@0#~p z>$leW?fvb;eZa{akjZ3bp8L7)>-t{^?opJ%#`w~4nnMyGEOn}J+b z-bO#kU%AqsCFWzEXX>jcn#>V|=u?HBy1Cf!GFMAD5HCM+BpDfSo}s03*2-G!VcL@` z!E$&1iM)QS!tRd{&Ff9Err>*r=<^Y;!h{=Je&y|}A@#Nz@67Gqii%bKrv_E!x~jzS z^7R9%Dx$66So@FQ!4qUi!lqaHK4FQRfR-Qt+~{9jVceBXv>M|ix1SpQ?*UPaf-mV5`cx6?a96{gWMd3l zk1*#8re}O)v^~Ci$lw19qcP{mu=Q@h`{5~x{+}NO->f4Ri~5BM*Gu0vue`6$!*{7) z%5ZJ;*RvhARVxej8r>F4een%_tLFS9NG?=<+}2hZ4Zy~5s&}Y4B$ehpkW%~~Vdt{AAet`nbiHDYF-{qxDy@^0y6{-9KeFUgNCl}O zB03O_V(9hwsle!vIJClhn|~StSKKdt=ty@EdUayIFw#5glDMARa0SnKfi&2~l@`B6 z!uxM9q08ite2KU^g`NfPrCT9I34mf7E-eHpjZSuYe)zk_QJnsX)D zv0-haYGB`7*sSxoJ6$2k7|8ooQ*ax~YWGxIX_OX5k!`n4$6EY?J$+(MZYM0VGM5uc zr+mp0MhNO`qgf&J^|+ ztd&P6SlMUZwY)Mg>^nTvyM4X#o_sEJCx0XC3gjfkDoZMQb-SO>R{PPo)$ORn)XPcK zyz$f?PCqv4CZ?`r=UFut4omp=fRsN*4XsC{n~^BFf9c=7q0g%cp1Br^YCjtJemaXr z3Uc;JUCqUhscY_P<^07({`V&5jvDL7QW`tSr$C~pDHlWhb=8hJKX}XHqHvBkkc*xI z&eHbkThIIF&|{U)&4m1sDu4BG@K^h&>n*i z_RA-JuUM_Ny5l(JT2mK&qpOV(jx&12fl{+l40eLrr#S1kQ=bdvG!M;__EDED9HlVE=&>z)%pAo2!v+Z-Mo zO(_A#|5@{yc`#~P(Wa#OS$4Gk^&yMV?1Hz4QwO;Dh?$Oqm=P>sAB6+Ck~xsh|7_#H zRwjCxs>arucZQRZ#M*6-7%kb@;g)p882-CU9~4BzjG&9&QW_3jlq@aH+hr!F6{lYP zFt#9g<@!I#ZWVQRR8YeY|Fx8%S1ca;8XOQTlaR@{jkhe9op6$dciha2_>Mo}yXST_ z)t-}QKL~h?X)*vSHm=|TJuBWr2e^0S3z1dM6$_eeQjjK#0rt<7)MR zZXzG?%8*FzMOKFqf;w^lewmEcXB_RwznYq$y+7I1eCfSK8m$a{>pMFw&oJb;&{jX- z7Gv%AOKB!jHY0)34=K*tfHtM5fy`^e*P3Sq!{oLo(OOq-CYV2X`|SM})RAex)wYz~ zvzd}ZNC<+wC=fMPn$&hX258#F^I-ms4g0!p;Gj1F#w*{i?Th3mST~wF89_&k4Z0|b zrc-dU$lTU+t4ozZ&DH6|iDu7@(hVXpd*LTna=MpVsa#jT)|D^TdwpRb@8|MBUT#ue zg*J7UuuSYr}^gl1n zo~U%Pd8*+Z5{$+uwn-Hb3j$ve7B9imCL6wzePZ-87cQan9c7MBH5+|B>ZD>^4i$lj zr`wm7m(1YG*l(i@wnHDtEJ%p#%~N?J%hor`lkax@(hmszxiH0~PVO|0wycBO?5uDoiF?Q`azbw>x6zpL6)8M zTygQzvcA3<@#btEav;AxJsTL6n08!YP4~d~jg?v5eNyW6^bQ==u)N5+sUA_%TZx)OX;?V-=LY)z7C;O3ZZv1CT9ruoX98S>bkOck-ktCkIWjmHK9(6 zt{8Q-mQgk5QB0Fb8`Brl)mOG^>{mZJZ4{?(U5L! z?Spm-=oEeAZpT{)_CARj$wb}u zgWF}$LV|EFN{)0UcaQ=+Ej4-;PBF168%D&o2_(jA5?*Q9m@1ACwR z(kI>uk-wXhOB5no^qT1*opv8oFXC69=BahRdXjgp^XrVh<&11|nS#Evibda+ujamH zZ7Z=WL6M-iclQ5o6a0ri{Qq!0{pWlFT9W_!@&7-OgZYH^NPy=ryPvH9Y6#`z0<_>i z1>)?tghsHJ#+(ym#={h_B}J3GLC-q07*g$TeceT-{w`pad(^_p;d-wHoV7z{i-kwa zZ&%1B2);VFvz?9+=xHMeq<%*H^WkM+xx>v2t698@pGwf!1`UoN{(i`M|F!RH4}=oE ztgs>`&wc6x=YAp`VLL1%kFuexOuv0qwl?br#YQ^9xX%wuJ)W8x4M-e*W#WP$0i43p zh<97|Q=NitR2_1Q81HBswn+qZ7?@+sKs&*W4dqDsICRqZI4WZa+npK*T|7F@c5eJ& z8W337EbiGs{pJX5*w~&$8caBvt2x#1n zW4)20EG<`7cp+PFvQ1aJlB02}Wn8!1gnbjDeZCA@bbs4r$=QEQgWd z<)NkSs)#V3z33g06Se&YvB@QAcix|hYHIAlp5b0#l~EumMp_JsPN;z+E-?sE+&*5` zKJFKM;-7rX_n6sL{rgYKcw0vsJ~)XgpV%7#CUL+>?};e|dxnJ>2c*3Y^nS|58>vhR z;W#NdDD@=VfLBC)>=qL@mlFvI4>0=BHZ5{md#kQi?EK+#lgN{3;3M}{P-WeudSOx# z2DpMk+MB1`d*9>u7TFGTQXKxTnBI{j>ynk6^41o|P;(_wneT&<&wDY}-9iP2mCLh! z{-wC^D>(rPxC#mL;t80Yz#X?AtdOy$>UO2OfVLCLgG zf3NCUV+Nz#(WFWeqmT-O~ zx|+$xKdK)xbJ=i=^AHR#I#Q!jpEiLRC;yM}Ycqu%#t`^_8NY(5`~Q#et24N2=>N<3 zCAkJVbH)5pr)O=6^MtZv-s+tsXsd`Z>`APg^$ks{&%`j>zpet=N@2Y|Q_=8>beyVd zSVQLAlPB=f>~@7giGfi|-9^HlZ96dfRr?Luw{u_9G|~kfE@W{K6o;j&jShw=Wtj5) zaLzk*%-6GToIXV!N$4%!wp~PfP#Zf*-(s0qP7&6V@N61fyADvJ^%%zE)(j_Nm2ZLC zlpj%pcLovos&4#GP(yRVg42Ln%EMNd#-_B_TJN5x0##t_H_SAM-a_N*>BV-O?kERE zf+@$uHOGGkCes>mAaN(o5_8LHrosa_Gu`DWlKZZj}$J%k+fb zy^&BRYKJ#~Z6NgFWu@x%(D=3H1jC77=yVO5MSDwWcgTMp!-PpVaUj{AK| z2P`!8gO!1*YrKA##>uBdIM_x?C{=4bdUP<|BTxyoA=3a2P0JpHUv?bA@UyKrb=?2kQ3lAk4f^8w zQvQPDvJEJa|KliQUCA%Y7}~n^=waw=jS?@0d8G;#izSxz!d?K#&rtf|PQRkxv%>Av z2vF}3{-giJsi1Zf+b7Hs&%pBoHTP3!bEje)l?P0p-s_KKJ0? zEepBlTMXH~$`go&mz^**8_ChzDgGjp1QZLlm+Xp5?#Ys->k^>^>OyJZ~T_~fCDad;@>jdIxD{n>yvtmu5ZwkOpZ_zo^5+fdsUL;FKB zeTZ=RYtDN=&+PY4g~N!Wo_@uYS6jv|M_*2MIxw&JRtFK}C(V^>L-&=7SKSxw?a4vO z4AB&noML5(C&Fy6aq}LcoiHPdS-XpNWzA7RK(sjRJ_F0#V)WH9PIY6?DUAIAez6vj zID(!bLbvgW1m4`_gWZpnsgTiIb~#64gk7&E2|Db`gS}w!5c&>R_}Mh(5b&DN0HB1h z3v4HP)1*;;F7v-f)`!zN(hu_9La(!1^#WiP|EFt>QlQz(r$XZ(B3~X)zR%=rY=tGz5td0en5RnkO3+ok&rMUCa_z4N-}^$J zXpMwE`S{`>dEkY}L(Ll{QGl2ubMGKsgUP}^1E1txWXsbD>y`U@YX*8rK^8%LqKm89 z?h4@~0T;90>0wO-&w0M)c=^c-YhTZ(P;mUKS>lWBc!W4C<`4D+d>VQgaxAm#YWM8Q zr!N*U!p&LmFTQ8KdZwHI$8fL-L4|gqlIrw^YP5>he^b|PRDrbJCzKpAGK}8P@}cJyLTOaPN}sb>g=`}R>(tSH^>BX2E??ZySMLy0J3If8(;{ICW*3L(MSZ) z9qz`6Gp2h^7=a4m>uRR7#lqlV`I0irV5PWTUR}n#{MfkFpyDlsF($Znb6o*|5;S&$ z>X5NUGL&}bF^R>S0zzq+LKaJ?&ZaNnZiNbV!gaevR$+aLH&8sQ(0)d%n^rC;f8 zW>>Pb_MK3T6pijwNwnZp8z24GGUVe3znjZyHkY6AP!H!3dndXu(T>>kp_$m$&~nEt zuHK>IvtUZPN^)yB`3QGjyuV8YnM9%&0+5L_EJ-|Sq#JPg`0lB!g+lj)GBou-Gj*%t znd8^xx?ZO1&)=xn#oYT0mg_w)(8H==&5ZWkNhItU~q@l4PM$&*!|H!#M{xbfeI;&VT@!tbT++j8k zCmrm+87IX{2d(cefdttq#IJuWX+}x}-@WxLAXO9Ylzq;sQFw>GSjQvx@;xHv_W8)- zgQ*u7p|pNH8~T-d5{?BK9|6ApP6Y~d1AF=|!g*~iBqs}B8tc^<$&JvntKWX{!BF~< ziihEs7jIG&Xo33=V3=aL0z2MZoYYk?5K1 zk)n}v#r}qez3Y#tpvR3T7-vABXJOH+!)FWQUW6%c1(Z7l`wZmY?a$Xvf8m4|HPC!t zKJJ>`@b3ZV?r?*6Qp99@8exULH_8uhDy2EI3^9DRmjbf5QLAa}8h&@BAa{ z#ANaQg{9Mlx~22~p=3958H*5M6pm`X-nwt#3lh_rd+6rUuj@zn=Bt<8C6`PT@bs%N zFTu~hFzTQ4kq(pm*1s*zg;F$lS+NH*e&{=t8$9l!P^`-2EG_qaG5tF)IqQP&Ki{y< zg3q{xOWpen2%V;Xw`}9Dlm}iR2K#9!D7H&guieQF8M7neHWb#0z=OJkT(1Q5C|d2D z6o8K;O6QhSv8Pzap^0}{nU%hK#Vu3#_d{AsRku0B65sS5tH0 z$dFud$cW6WORQHsugxyxFQJ6)@jP(7P7(&fS?A!LMXjFT>Vwa(jxjgtC&%ofOY95+ zoDve9l8gmLdhV30H!D5*{sZCsxhu~eNdpHg`~?THuL3*Yema3>O1EZ)vMTAaCiK$T zou!Vt>ecj5>cJW;YqWRiYR0`>A?eug7uZpSDleVO|4?qRz2sc8QE zE|QV4B(~EUs459BaEFZ#1E?v-#^*sK9=0)~*jR6D(`jnSS3I*P)WJP!g6_hHH&49sYUyQAdx}d^5#xo!;;ns!` z_KLTRZ=!nER1Wp?9=J`y{cPi-nxcM+I=?2&TNPZs;%!@1Xs@Ge!*O<0cE9XasS84t{jXTVFz?yB_cSS%7K=rJd7K%?rJ zk$L4jgc@7JQ2YC{swE{+@aeI4x6YcMUJpr?h?@}|L8?&AX9sT7?ttmH_~Jo4=#*7bfN;{4LIwChZw6_3+qn(9|+f8i#8T@r$8Nz%qv8i4rjVenQ;kkSuR&y7* zJsn6HnM>HDkdxc)FO#B3b;xxFJ=}qD`~~1fIe`$KRh;&$ZzE1D-^ucf*>=dgu6o^N z;Ou&Q=*!WjlOn54-QDL0FZKPrQgJ)y?iV?6l^y((J7q?<%7$O%Jz91?pJK#J&!~4N zj26A2EGL!N8`G{plWm0C^5_{2Ial6u<9|QR?nlPr4j4;gy4;01)g1zC-Z3DS>s&V@ z)Q%M%Tm(1ZmRHRBJ`Ed}?r6yIp72*l^MAnW;T6|^KKD%g+;DvH>6)b7V zIEqBS!PeWpo#J`;;Br_2bcS7jx^a+9QotBH)8|wMhk)6i-FS8NBb`%WPAG-Q8|l}j zUpkJ)ocwU%toelmPU?%TTVAJ*yPVShy#H5H-}XtloS0#Ej>D6TA4qTcv7Hc0jn{pH z1?fy6f0U!s+Gy?PkCXX#f_<2S|AU)>Qq23v@#LD3F2YR0lnaiJtQYl`^`a8h=mLTauIEsj49o*QKD$pA()D-x8z zK&!L(kJC&+u^HV6#$$MBGS%czj~aK(15s3(yZp%b3-WXs?#KD#$9ch-fl^18PtJIr zH}I&7mV8Y+Q35fd9#*oXda?`o8#owhXro4MdGXNAax;`1ojG5-1Me}e9*>Hvgbtiez znlBD4;)mw*pwI-Yr@ZS?j~t0^#xA*Y@%I+0t!)HPyeyBp?2nD&0;VxLj22rvb;-Ed zo8G!~Ji%BMtvB`-01%@Ct9%+A)^wk$hDsrsfiIe^p>aK)^#WmseqK>{ZLaPA(`tJc zs5+2hEJC-tEM2b;7lk|0Vaz)DtM_Sa(w_*Kp4+Qgl@zrb%zGv6Zn~Q`9rdj)@Y#pn zjX7`+HC|i6E8a+b7NQTL6{8y*F;OHw=2-g6S^4f89UGlb4^mzWsIbCeXOl~>bw_&_*h{qMdlYMdFGO0|tI zMFn<(`8&=7IstAE0~XD;L29>nwLX$St6gl&l87sfxn(U#A3C4b^vT}>Tp7@K)T?Pj zpzIX|p-;W|7X!az*-}$tpSRlgF3~QdQq<~lLVEOk-ossqE8IHBT0&iN;ZTLsYEDbb zcxFcs5WVNzzf#5)%z+(1-~F$X=mDAKvt?ydaY-jLI!^o3day=ZL)HTk z>t9K@t8bq#EG1Y+j@SF+^)2re!MdxjB7T!n0nAh)7i>ab>z-bephLQ0F~)r35>|9v z6k8LiZQv9o@F6^2X8&d#M6I`{^5;;1QLVMga^QVO=r71v`v^~yxj@?Y(T@-0LMoi{ zoKmxdl!qUuwiHS9UA7vv;-AunoFnyy;WYt8Vx^z2Nj>&TnfQ9xe@Z+{YkB zfU@y_@2CSP`Tw;84*;+K=Q!ap3%;+(9m9$TsgMNOlAHqW74|*)Q2QKwd(~Ksp3f~u zoF02;cx~II=XY&%mb{|vQtib)QEvrm_D78r@?p{k5+#@|#3ItM`wqk0FTlXFtUEgg z%1q6y8`?4+7Y}PS`rYU^OxDy&?!F*pZ7O*C;Q#e^9MEC>?`Jpq|Km8oSo~kV4KQZ_ z-uxWiui%HsXU-by+xt3fG;3|&0&ULn^Jb_xPSwvD`tebE#D8?e8mlg_p?!wA0-;x%~hYMqE6K}`6j(1X3aj`ARrAx&&v$yfEXD53|NA> z97BZ5^O9WG_lEHcFkX-J{ccmDk8~C&jibdp-lH_SV|$<-ia>NYOXtc>;kx;6{YRt+ zR`m-k%UpFmOkZxp^1%E-;3KT?-t1XqH$l=BP(>p%k1(A}`ZDC-JYJKv`l*s=7Iws; z@5`t`zv`&JndYFfP~hHmI+Xc_(~1tJ0zttNXu17cY`)3h5ivL8H_PM`K&Pq~BQaJ_ zd-~PnWIr=m#w|R;m^wpsYB2E?x3E|8kQPicA_FGt$YjXAwktYhv>NNRrV;xzC>`b7 z%ML>>6=~Ajq}0_eP6*t%Tz9xE=9|pc>+a|Kwa{aAc-uR>8q=9NQ|#;~Pi3jIm@Q&n zk%(mOSY%R>G2V^5&UUJuS}8$>xDJ&l1scMC0eE|j^-&6G_Qt;lmh%=hS*g|N%k;8m zT+k}`tj;OCR`=+dUg!sB8>GZsx1Zd?JLLT*ceSjJIUKJx8|ejVweA-4_3c9LB z@+wHQgQuef7#FG&D3n4(fzXsyTTO46hvd+AHKeMvzD!fXk4|;FOtHripEItzr7=4Nb25w5?^%ayztyx3 zlj9MUzJdP$HG>P;zLJ!ye4*E|75qyKk0i>4t2lrDJFP156Q@dq=Cjj_OGLH{680DS zyK%xKZ(I_oE_kPFjg$i7^>5Siqeh$?>1~n2(*_KD_wJM_y3P%_OLtoMyzamJ(DU|7 z#4HJkjl}W+QNeC>a$?5`pGI+w^-ad%ZgFHXoByz@t1BmAn0ldZ#%Mb$G;8sv%Inu! zS_cFI2A%Y1&zCA;$28VyOe7%6w&CCbKy$MEw(!n4kZ0R6+pm4K^GW{^af{eIesBw(f0t!)nH<*$Ww21Dbh7KA#utVQr;2c3TpZ(?%^3ZmIT0DQ<@KT5Tm5 z&B9pn5L)x2mXmI5iJH0zVzS!b{KL0!y*aW^v*T&!hBPGqz?Q3mLb|7_3WID$HD#@h5J?dp}K&E<*)>ge1Kjsq%sGu;uRi5m+WY7lw)!dmq~Sc(f2Rg0wD% zLa%kcsylSdCPHmr0W*p_ssZ*Ii6VnKw9w}CS73m8;MLDiH5U4+6JaYq(S|(DY0fae zdoi_3Tc(9%O*6PO8R46c14eL0L`OHh3coW-*Ef(LS z9&4F7JIrw8p3E1Rs;pfGeRAbH_L`h1k=>-DTJwd zU9{<~vj0>g+kNUnQmv=hUCv)^?8!f%S>*DsUNyrWE*}fBlscQr44V#y9P)J@`u;Q| zyBL*Wx8=TL(?kl{!qWm;6izfeXDoEEn#USG2NhpY;VA+@6Fn$f)iSBF&jD@ zFx5Td{fa%j(v$aP_f@vY7CdC`p|@8kYT>%XHzlDZQbT{&KJvvLz=q{WjWZFWVDB&_ zV1)BkorU%IpuG{xp<(hS_|8zI>W8k3*PnzL&8Ga{AAiJEb5&6aUCyCw0TK`vk=>>T z_fext98Bp>S3#g`;@hn3!R z-k5Z@ZYsQ+G#Y;kGn4YI5dRWvRW zZgZ{EUpqc|9TCE7veR*^QNnWjSM-hSdC z9&Tpmw>p-XY+C87VfkcR{@oi>J- z5uXIgoI*$qN{w+o8XINg$qb@bmsPO_O~x)Tc((^t?VM+?(!RU<%@Nz0h%oZfu^Hm4 zf)M~an`>kh1fKQZ?mZuVM(cmYE_vg(!C->@K)$Bokgb3vEt zjU5^X(@})$93tSbMLKbSw1K7UEbN&MIiH-^M7GjWgf)%+yXDIhca-nH2lgRfQit!l zwpX!k1}_ll73S9v%|QJVJiFFXO4z@P_Fxeh*-Mkjl(srf0hPA zg#zu{{6_8~NpJ;y-NB=PWgB-Cpz^TIE7q7Tw$G{gf#y@r%)P~ar#2LRQP#5Uy?k1c zCA;*YoNlX`nvVW(!BleAj(hi;0o|1^>2QTGJ^c6dl}<$~L796qZso=mtO9G}A%~3g zj?skiOi(r$NF)$os4VNHf<5O_CFfYkPSR0h>9r3o&c2~iSH1>SavW@JY*djhHVtjf z=Z1nMvK?RCPdD=`@p#;AWKI*N2Kp5~=A=F+Jse>vC*x=i3>7N$ zBTj-lvP0%KG7m*mqab~I(72Kq^6iA3^_|+4mf$bhbXl{XdJpJDDi=>>eUligw0%`E z{z7kK--nqyYAbhl|#wRV?^+xC3IIrCt3+D!+9XNo3 z7Y>T*kZ5IuCb3T!xuZhn+>Avg)X|322!$RQi>c%6CRp{Gz{gXevfodX@i+f-=g{@T z>tq1yMTZPIbmIU3g&#}+GmbezPmWD&Q={YC%qg6UZ2=F0$){J5I+eX@+<5P&NHv$w zc|TRY3EgSpE&QM|%a&kN+H+nRS@oTH z6qCGct>(Pe(=hJ)VPW^nS1anQU){AtZ%vmsC-SPoFL)cf`NrS(9Z;ur5v%g4%Vz2Z z$RQ;wTMe^jq@RRN(5Cy@-(}X^McbmE5zTk(?V)gT@Ru|;^W64cz-q61IFo!=NNEAD9B; zJH|HySrTQ4FhjqQC~DkMhB>n_zY#fSM53jB*xlW2;A9VsuyTt&@4xkdS8K#bw=ulqf<}0+W2@3vgVro{5Q&~GtquaQk>|F|LSh}~oB!ZW zVmr0K{y6a&1oSE2`VLiwgDYP(keeiK6y5g-YI%`osm)CE3or__1ZPTrN|VldV^V+P zS_k(N3ECw#z1;(1ltRVJaH4;gypYwD7 zwO(*>%wM{pE{kccp=(*x;xqc7De@ss_4J42#ej24_kTStTbJ2)Sjm}xD#O+rC+cQ* zw#4?Fa-nJUwAdDw`idWYjU>7|uj)=;cAk%GI6G>pGH~YDmo(gO0c*yw#Q&-UBo!75 z^y3uKniEEW0I?G?uJbCpFUKoaDpj^aWAUr6UZ@_wiO<7m(r3f6*C3yTw!_=~AIVAN zqd+&^gc;6BW;-&9C^Br*8kRo8`q~8BoG(tTj6RiG#Y&Q88n~(xo9DC=DEA@5 zuJzgREl+bXO6`rT3(x(8R*do&;qPw=4@nmaGb&PeolaLL1p~jXiE>ByDHPYKe`P7U5b8<`It=166XDZl-1sDvuy^H$tyYranrN%u z!azQcTttV0{UwB{Us!dDh3?AspxOA-%6m$d?jvr^E_3Fiz9@4VnC=D)M-FjbBavWl z@G-XW6j1KN zB+-Jgd;j@%ezrus(2(JP4uFHSdg4}JrjIw&H#Hj=g!%;;ytn^(J7wUK-_BT-2V!F` zDUYDiUQpu%mdEe`XK74AfKz78p9K?Q!DoU_0qn7zM2d?WtWR7%F@oyZAl8&&TRWk? z)YO`wnLpN(6oo*ORXo1>k-RmIA^ts3L+TIb7&;SXl#~byw||3$q?i>Li3L&# zNiD~pA01-vh{Ss%fplie`|T6|G`{J+9)K{iMxO^=zIL53$Ty=$<%`E0!7N~8=z286 zqE%m&qg#nL>2L< zuJ-GERSKG&76}Cctx&9-oSnIl1D6{3mp=hpwl3hhX)t%sJ&lP;>q2ZbiHHl+$fL ztXf7xt!}1LcTT41WHZb83nz}P!SL>U%9n!IQ9Ie)yR~Y}-vB3IBF=4WJ2o{bNzTjr+-%fS zdbIw9xuYVIrsm1k&1D*~0`_lVJB=`EZe@VJ(h!X{zS`8rdQpT@pvpS$ME&6?T3(E@ z3*RIz%&v@S`9o?-mZOvH68a=fLnwmx<4ZdfD^fIul&g74DiE0p^2M{Q*%}IMVa+|I z^vnr?q)FXLLa@5^=ELdsV*jj;O+Dk-@8llPj5)P0lLCt;NouDap8E}|W9Cxl$fx16 zrA1Y<&R8E;^T(gm>RIYuF8S9-&4-vluil%hn)OTLda&OHnQ<&@$`GOlch=}4rTxT; zQ;2g6kZPEy9iAWF&75|JWT=U?t~m2L!eLn>d|F72j{rXY7(zocr2HN1=0=l>2p>96GM?ZNik8t9@L3~D#Lbm+4$JaKPCnADkm~7sg zqn>AETNj`7cx5d(RKm^e!J--BZj^0;hlY5(jM^HuhB~-!f*HgTA?t2N4>o(Ivb+KD z*!P+CVM3`%-R=4~|0C@~QCChL+{Jfxek8OQ1um(qEqHKGEHgrT0Z#onwgwBlgo|;P zUQUMxpYGm6;eC*`KJZH)>eK;F*VaGw>FQu!A$Zh zQ!)&)%TqW}I{7Z+sWaE@sFH)PLCfRpsuCXiBxvsAaxu%fdwKx*`{Mp-KpzWXnAmcv zfS8nr92{B!yUfRfR$;^@RT-HCVyo{Vp1R{bcpr$$MjHNJ{}N!Ruld>6^+UJjVLvpK zPFOPUK_+D_ULesQNu8-34JwViYI27GN~kBCS((}zB7J_gxEiWU*WNne?fJs>(;#n^ zVAUh@wUKpF6)KdfKsyRZTh4HbA<5h$z?noa^g2Q3v`HstfsQ3KRy*0u&BPuTjIW;( z(W?QHOR?dy2oVR;5djLgF8d?jGx5+)NU}#C9Wy`@A|disdS|^dJSijR(XfUwBQ5w_ zYvj+*-QTacgm51!SKP^*aQt%#Bf#ygMS(kk0D?_E?l|tGjwB!TSNBM4g8}!s zWG_3RC1RrGMH?dc)a>AQw=Ra&9PDz>#|_sd@!jfw4=_bI74;+$wgf9Qf}XPqit8{Y z0-79N)??qP)0H+pgKe&hcX__-MRa`J@M^QTE&HVApBjDGZ~JX#FQ))=j(r1|Yse4w zVrzH$3{T52Jz3b&S(N`=kG<<}?uCh}zmDmC$|JNfo%Qs-#P$cxe2<^WKqSttVhuVj zpb{PEjkI10WX>G$Y*b=Sqkb5LBg3gKid=bCnXO1esDO(_HUK`7tgrPWI;DQ8Pk|>1 zm+Hou2Z}icj5{e`i7R*O8%so(4vA;JQYVJKPoE6DXKKFqB+`hjXOQe4jIdhK!{;lD z)WO3)WQ00Fe`f65@frc9ix9Tkz9t(=x2*)64{q2O=`*bK4L7jml=fzv__3mQ?O)ts zxx9Prct8v|W~T5w-#h1WysG~SDVIJeV&AA|H|GSgBp&;BVA% zV>uU8$9VsAsK~i%IX!xeA-VQiSBuu0DhgT8^}J8#Fu}8p6y*9}D(NWuAn5cTzL~+L z5n2SnHz$YH+QsE%6?vAk3{)gHm^&jCt}xfT@F%S*Z|g*Q9fi(JZ1W??Sh(6L^Voh8 zP|QlY0A%YtosrW(Z^HZ;Ta&so)}h2g-o}|v`2F>Uf1PuIS!&nx)fTleWO^#I)DP8& z!~pd}rj0Y)6*l|cn4lAB*Xe)2}+-3Xk z0UYQob_r0%5y@TchpC`AqhR{GISUxiP5(CQ(tfIq{4eOJn(>%l?~lIBqvMMuxmO0< zMA6wvRTVS|mAtFRnIKLH+iq!}EXG291pJxz8|ZX~XI~4rC8gy=pALct^RaWf~Afj z@Tyta*3R|6_bzcKpyzI_!oa1r2>8A(99#nhR>0e6Lx4`L!O!h=*8Awg=Ftuzp9|hh z)Jt7f3wLP!>d*Uiq^PvGVK%4$Av$X~c;emdLMKSQC2#OhScKgJwN0z+dbco7-;qoj zmeTLi+ksGQU0I0hR($a5IzrT@kFzXd<979_6~rqY>Lw`iE|d8UVZj&On-AQ zURo^^W_|pIj>6zof>5xZesRXrKb8#})U2J~?3L!E)3b z7v?jT$C9K65GBDCU+oa0`{z?v+K#^;3JvhDTiN^bc$emV_5I5cfiT#WkZVbr#1zvA zzkL;M|4T%N@duUyP&6OwHe+P>l43-jZg%3$+``Yzu6{|@%?;ER&Zx2Q?-&a3muX2= zb-QsumzY5*9Ttb)dX06Qq4NjC&+_iuW@XLo^Vv+-w}#7~ zGYQ#bKK6dLFju#EG|4Ac;Q+>hI|U*}?DT-22Uxz?)F)R6i~e!Xw% zcy-6o=8u^e&+bE)RcJ_-BA~#dfMP+7-igKsxx+X<^`HnTijn@A7nC`P+{zWHt({wS zuX+XMKdTPAhsS*MexP^Y%Ar=$T=vp=902P7pU-0fyS5X2G3d!9O=kZr8b;qt z#PG5zfz}=yMBR)OC#3$tomia(^4Ji?sDwVApG~n5`IEz`VF64_cO_#x8MA({(kB9h zQx7!g3&5hlqT|YW4@^xrDLM_wbWqpqMp3wDSufSaupMea|HX{Xnrf_rBZKzd&FD_f zg{rzpYRYdF>vPW1&65Giw#fg{*_l2yd3Iqu6sqM#u*f2dfPn0)AhC)9c9c~b15zMV zQnidCLIh=rMjjPGAs`YQ0U3iYTVxGj!eStieG{PsrGz~o2t<+yNFYx_Z~Ms)zSEia z!~F+5&&)aJKKJ=u=aP^CeRcIz*5|zf3pXP&4oj*FdMZ&&D73!VfHY5EsPpXLJT zj$%CW=foaP_MG32^&i`)IP&h!;DdtnW-KR2`k!R+={WXGY;(G%$hmW3j}S^|R45kV zI-j^DN86}-mG##2kq2Am@Rq!(BpHkDYx;kwn+`ZuJ*aByA(XUwnbG5^Bj_hYe^J9M zmp<4RRXfh8THSr*!<(K@g^ZCy?|dG`te-vlYiqN?=u~FCfs~ z+!muRea6zlz0u;9dvib(ov=}tQ5m$5u;1_AD+G!bbKsW zNoWO}V~33fY$##~&o>veFl{qmVahoW5wM*1&8P~<#}bN?$+colD6+b|46Wv*(RLzN#n z0R{tm_6PE>TE;3TpTF<^x? z?d4^@BnMoI9!xVuV z5!B+5HLJr*Cx-Gohm2_9KewF94-0&KlKIE39ov&@DsDdvd#qyyhBLjm_4nW@^_Us0H(fMh>U!yV3yS?Ixx)5+|crgDN(N*77|f>Z)!Gu=n@ktET&Jh zc8F90giwkDa6C@CYMoX%wzvy89v_+YaKwzh(3rNfD~Y;=+p9vd$ST5#M7VY6v+ps5 zNYnfjIS4fI-~OFn0cGpyNi3Rknv)7_EqNwY62*E6n)pdlgN2vzxs|^KH(QKx+CyTj zxyV$KxuK?^46*!Hr3+#uSouLHARDRmTZm}zA(Yr68{+1QwbIbW^++{(wi=<78Oz#nw`C#J_g{ucFNq-`o6BP;8-Kz&0?YVqq&Jq@vG}z;I!>GQN zHdMj0exf+-H&+|;J8@1^$wS28qT15630UELs*^dveR!FGo@s*6Sw3&+@@T^_Mvj6b zv+FH-+jRr;(o_Tj;jg@NTu)$*+BnBr8-PAo`TzP$G{tOjeWSb1WXU))6G%ZGK4!F%I_(v)+I1a;em%{qo8%YIy>7(X?eoki>$9-0 zI)40woS^jC?+A;>6y0j5X}9#Y_j3*O2~`9*GDC5W9r1P|JlET#gS8Vr!^O(RF}rds z>1T8|gDiTHAs7E@KXS72ZdsL)d)K+cD#0Z{2y#!@+1aE$MJCSZIJc_X#%*swlH~{Y zv8Qu@oj?k{I4~lWRFCid%_;CZGX&w;Y#z8(Jq}&PN`CMG^EfN#r9$YC%6F^v`sPZVP-2!?zj$D`QV0E-j!&=ayVaxT(E@2Ex6f(f z)1l%){=_x;%O5t}im(DbV84@_4cWYMb6RC#5*U zsn}$KeMwvrq|zVB4M$433)V$qVb!{sI#|_B zs)mKFfiS~Jz=HKBIjoU90Wlyr2oIhi#5TF}lH$dg7^hbCaYkgr3d2y3OoBT5r<_+q gY(Wk|i9=n!2bu2c^Th)3+hO`|RO(kdBeq8V27Uv!Z~y=R literal 0 HcmV?d00001 diff --git a/tasks/plaksina-av/lab_2/result/result.txt b/tasks/plaksina-av/lab_2/result/result.txt new file mode 100644 index 0000000..f64f5d8 --- /dev/null +++ b/tasks/plaksina-av/lab_2/result/result.txt @@ -0,0 +1 @@ +27 diff --git a/tasks/plaksina-av/lab_2/worker-1/Dockerfile b/tasks/plaksina-av/lab_2/worker-1/Dockerfile new file mode 100644 index 0000000..24e5c4a --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-1/Dockerfile @@ -0,0 +1,15 @@ +#указываем образ из которого будем брать все слои +FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build-env +#наша папочка, с которой мы будем работать +WORKDIR /App +#копируем файлик в нашу рабочую дерикторию +COPY . ./ +#запускаем команду +RUN dotnet restore +RUN dotnet publish -c Release -o out + +FROM mcr.microsoft.com/dotnet/aspnet:7.0 +WORKDIR /App +#копирует не из файловой системы хоста, а из того, что собрали на прерыдущей стадии +COPY --from=build-env /App/out . +ENTRYPOINT ["dotnet", "worker-1.dll"] \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/worker-1/Program.cs b/tasks/plaksina-av/lab_2/worker-1/Program.cs new file mode 100644 index 0000000..ce4c2a5 --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-1/Program.cs @@ -0,0 +1,23 @@ +using System; +using System.IO; + +string resultFilePath = "../var/result/data.txt"; + +using (StreamWriter writer = new StreamWriter(resultFilePath, false)) + { + foreach (var file in Directory.GetFiles("/var/data")) + { + using (StreamReader sr = new StreamReader(file)) + { + String line; + Int16 i=0; + while ((line = sr.ReadLine()) != null) + { + i++; + } + writer.WriteLine(i.ToString()); + Console.WriteLine("Количество строк в файле: " + i.ToString()); + } + } + } + Console.WriteLine("Файл первого приложения успешно создан: " + resultFilePath); diff --git a/tasks/plaksina-av/lab_2/worker-1/worker-1.csproj b/tasks/plaksina-av/lab_2/worker-1/worker-1.csproj new file mode 100644 index 0000000..93ad7da --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-1/worker-1.csproj @@ -0,0 +1,11 @@ + + + + Exe + net7.0 + worker_1 + enable + enable + + + diff --git a/tasks/plaksina-av/lab_2/worker-2/Dockerfile b/tasks/plaksina-av/lab_2/worker-2/Dockerfile new file mode 100644 index 0000000..7a5d970 --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-2/Dockerfile @@ -0,0 +1,15 @@ +#указываем образ из которого будем брать все слои +FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build-env +#наша папочка, с которой мы будем работать +WORKDIR /App +#копируем файлик в нашу рабочую дерикторию +COPY . ./ +#запускаем команду +RUN dotnet restore +RUN dotnet publish -c Release -o out + +FROM mcr.microsoft.com/dotnet/aspnet:7.0 +WORKDIR /App +#копирует не из файловой системы хоста, а из того, что собрали на прерыдущей стадии +COPY --from=build-env /App/out . +ENTRYPOINT ["dotnet", "worker-2.dll"] \ No newline at end of file diff --git a/tasks/plaksina-av/lab_2/worker-2/Program.cs b/tasks/plaksina-av/lab_2/worker-2/Program.cs new file mode 100644 index 0000000..ccd6a93 --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-2/Program.cs @@ -0,0 +1,34 @@ +using System.ComponentModel.DataAnnotations; +using System; +using System.IO; + +string inputFile = "../var/data/data.txt"; + +string resultFilePath = "../var/result/result.txt"; + +using (StreamWriter writer = new StreamWriter(resultFilePath, false)) +{ + int min = int.MaxValue; + using (StreamReader sr = new StreamReader(inputFile)) + { + string line; + int i = 0; + while ((line = sr.ReadLine()) != null) + { + i++; + if (int.TryParse(line, out int value)) + { + if (value < min) + { + min = value; + } + } + } + Console.WriteLine("Наименьшее число в файле: " + min.ToString()); + } + double triplemin = Math.Pow(min, 3); + writer.WriteLine(triplemin.ToString()); + + Console.WriteLine("Файл второго приложения успешно создан: " + resultFilePath); +} + diff --git a/tasks/plaksina-av/lab_2/worker-2/worker-2.csproj b/tasks/plaksina-av/lab_2/worker-2/worker-2.csproj new file mode 100644 index 0000000..b90f9cb --- /dev/null +++ b/tasks/plaksina-av/lab_2/worker-2/worker-2.csproj @@ -0,0 +1,11 @@ + + + + Exe + net7.0 + worker_2 + enable + enable + + + From cf6b2d2ec3b7a9d6b90d0365cbcdc98c8638c37a Mon Sep 17 00:00:00 2001 From: Sanechka_Plaksina Date: Thu, 19 Oct 2023 00:41:25 +0400 Subject: [PATCH 2/2] =?UTF-8?q?=D0=B8=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D1=8B=20=D0=BE=D1=82=D1=87=D0=B5=D1=82=20=D0=B8=20?= =?UTF-8?q?=D0=BF=D1=83=D1=82=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tasks/plaksina-av/lab_2/README.md | 2 +- tasks/plaksina-av/lab_2/worker-1/Program.cs | 2 +- tasks/plaksina-av/lab_2/worker-2/Program.cs | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tasks/plaksina-av/lab_2/README.md b/tasks/plaksina-av/lab_2/README.md index acf6e89..fc39a83 100644 --- a/tasks/plaksina-av/lab_2/README.md +++ b/tasks/plaksina-av/lab_2/README.md @@ -39,7 +39,7 @@ dotnet new console -o worker-2 4. Каталог `./result` должен быть примонтирован в каталог `/var/result` для программы 2. Туда будут складывать результаты финальной обработки. -Для каждой программы были созданы файлы Dockerfile ([программа 1](worker-1/Dockerfile), [программа 2](worker-1/Dockerfile)) с подробным описанием процесса сборки. +Для каждой программы были созданы файлы Dockerfile ([программа 1](worker-1/Dockerfile), [программа 2](worker-2/Dockerfile)) с подробным описанием процесса сборки. Был создан файл [docker-compose.yml](docker-compose.yml), в котором указан манифест для запуска распределённого приложения. diff --git a/tasks/plaksina-av/lab_2/worker-1/Program.cs b/tasks/plaksina-av/lab_2/worker-1/Program.cs index ce4c2a5..d6d94c3 100644 --- a/tasks/plaksina-av/lab_2/worker-1/Program.cs +++ b/tasks/plaksina-av/lab_2/worker-1/Program.cs @@ -1,7 +1,7 @@ using System; using System.IO; -string resultFilePath = "../var/result/data.txt"; +string resultFilePath = "/var/result/data.txt"; using (StreamWriter writer = new StreamWriter(resultFilePath, false)) { diff --git a/tasks/plaksina-av/lab_2/worker-2/Program.cs b/tasks/plaksina-av/lab_2/worker-2/Program.cs index ccd6a93..4a3a62e 100644 --- a/tasks/plaksina-av/lab_2/worker-2/Program.cs +++ b/tasks/plaksina-av/lab_2/worker-2/Program.cs @@ -2,9 +2,9 @@ using System; using System.IO; -string inputFile = "../var/data/data.txt"; +string inputFile = "/var/data/data.txt"; -string resultFilePath = "../var/result/result.txt"; +string resultFilePath = "/var/result/result.txt"; using (StreamWriter writer = new StreamWriter(resultFilePath, false)) {