From 1fbbeacd1345bb028b735e58d5468ac52a750193 Mon Sep 17 00:00:00 2001 From: ochenstarik-ui <267932263+ochenstarik-ui@users.noreply.github.com> Date: Mon, 31 Aug 2026 18:14:34 +0700 Subject: [PATCH 1/2] Restore local provider logos and add model-family brand marks --- docs/reports/model-provider-logos.md | 11 ++++++ docs/screenshots/a50/brand-catalog.png | Bin 0 -> 73853 bytes .../router/web/static/app.js | 33 ++++++++++++++---- .../web/static/brands/LICENSE-lobe-icons.txt | 21 +++++++++++ .../router/web/static/brands/README.md | 3 ++ .../router/web/static/brands/antigravity.png | Bin 0 -> 13126 bytes .../router/web/static/brands/catalog.html | 1 + .../router/web/static/brands/claude-color.svg | 1 + .../web/static/brands/deepseek-color.svg | 1 + .../router/web/static/brands/gemini-color.svg | 1 + .../router/web/static/brands/grok.svg | 1 + .../router/web/static/brands/lmstudio.svg | 1 + .../router/web/static/brands/meta-color.svg | 1 + .../web/static/brands/mistral-color.svg | 1 + .../router/web/static/brands/nvidia-color.svg | 1 + .../router/web/static/brands/ollama.svg | 1 + .../router/web/static/brands/openai.png | Bin 0 -> 6607 bytes .../router/web/static/brands/opencode.png | Bin 0 -> 1615 bytes .../router/web/static/brands/openrouter.svg | 1 + .../router/web/static/brands/qwen-color.svg | 1 + .../router/web/static/brands/unknown.svg | 1 + .../router/web/static/brands/vllm-color.svg | 1 + .../router/web/static/style.css | 9 +++++ .../router/web/static/workflow.js | 2 +- .../router/web/static/workspace.js | 2 +- tests/test_brand_icons.js | 13 +++++++ 26 files changed, 99 insertions(+), 9 deletions(-) create mode 100644 docs/reports/model-provider-logos.md create mode 100644 docs/screenshots/a50/brand-catalog.png create mode 100644 src/antigravity_provider/router/web/static/brands/LICENSE-lobe-icons.txt create mode 100644 src/antigravity_provider/router/web/static/brands/README.md create mode 100644 src/antigravity_provider/router/web/static/brands/antigravity.png create mode 100644 src/antigravity_provider/router/web/static/brands/catalog.html create mode 100644 src/antigravity_provider/router/web/static/brands/claude-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/deepseek-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/gemini-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/grok.svg create mode 100644 src/antigravity_provider/router/web/static/brands/lmstudio.svg create mode 100644 src/antigravity_provider/router/web/static/brands/meta-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/mistral-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/nvidia-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/ollama.svg create mode 100644 src/antigravity_provider/router/web/static/brands/openai.png create mode 100644 src/antigravity_provider/router/web/static/brands/opencode.png create mode 100644 src/antigravity_provider/router/web/static/brands/openrouter.svg create mode 100644 src/antigravity_provider/router/web/static/brands/qwen-color.svg create mode 100644 src/antigravity_provider/router/web/static/brands/unknown.svg create mode 100644 src/antigravity_provider/router/web/static/brands/vllm-color.svg create mode 100644 tests/test_brand_icons.js diff --git a/docs/reports/model-provider-logos.md b/docs/reports/model-provider-logos.md new file mode 100644 index 0000000..013879b --- /dev/null +++ b/docs/reports/model-provider-logos.md @@ -0,0 +1,11 @@ +# Логотипы моделей и провайдеров + +2026-08-31, предварительная часть перед A50. База `17b368a`. + +Причина отсутствия изображений: getProviderIcon ссылался на codex.png, claude.png и другие файлы, отсутствовавшие в web/static; реальные provider ids antigravity/claude также не совпадали с алиасами в таблице. Неизвестным провайдерам ошибочно назначалась llama.png. + +Существующие OpenAI/Antigravity/OpenCode PNG скопированы без изменения из assets/providers. Набор дополнен локальными SVG Gemini, Claude, Grok, Ollama, NVIDIA, OpenRouter, DeepSeek, Qwen, Meta, Mistral, vLLM, LM Studio из [Lobe Icons](https://github.com/lobehub/lobe-icons). Лицензия MIT и точная ревизия сохранены рядом с файлами; загрузки с CDN при работе Hub нет. + +Провайдер определяется по provider id, логотип модели — по её семейству. Название модели не изменяется; неизвестная модель получает нейтральный символ. Нет выдачи Ollama за бренд любой размещённой на нём модели. Добавлены значки назначенных моделей в карточки аккаунтов, рядом с выбором модели в маршрутизации и вместо общего символа на узлах графа. Единственное изменение workflow.js — отображение изображения; топология и настройки не затронуты. + +Проверки: test_brand_icons.js проверяет алиасы, семейства, fallback и существование файлов; прежние два JS-набора проходят. Браузер подтвердил complete/naturalWidth для 16/16 изображений. Снимок: docs/screenshots/a50/brand-catalog.png. Это каталог, не доказательство сквозной работы A50 или авторизованных аккаунтов. Новый клиент находится в отдельном worktree A50; установленный Hub и preview A48 не заменены. diff --git a/docs/screenshots/a50/brand-catalog.png b/docs/screenshots/a50/brand-catalog.png new file mode 100644 index 0000000000000000000000000000000000000000..7397cb05ba91fc76b530454248540903bbdbd027 GIT binary patch literal 73853 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 literal 0 HcmV?d00001 diff --git a/src/antigravity_provider/router/web/static/app.js b/src/antigravity_provider/router/web/static/app.js index ae65cdf..12f1f8b 100644 --- a/src/antigravity_provider/router/web/static/app.js +++ b/src/antigravity_provider/router/web/static/app.js @@ -787,6 +787,7 @@ function renderAccountCard(profile) { + ${quotaGridHtml} `; @@ -991,14 +992,32 @@ function renderOverviewView() { function getProviderIcon(provider) { const map = { - 'openai-codex': 'codex.png', - 'google-antigravity': 'антигравити.png', - 'opencode-go': 'opencode.png', - 'anthropic-claude': 'claude.png', - 'deepseek': 'deepseek.png', - 'grok': 'grok.jfif' + 'openai-codex':'openai.png', openai:'openai.png', codex:'openai.png', + antigravity:'antigravity.png', 'google-antigravity':'antigravity.png', + 'opencode-go':'opencode.png', opencode:'opencode.png', + claude:'claude-color.svg', 'anthropic-claude':'claude-color.svg', anthropic:'claude-color.svg', + grok:'grok.svg', xai:'grok.svg', ollama:'ollama.svg', + nvidia:'nvidia-color.svg', openrouter:'openrouter.svg', + deepseek:'deepseek-color.svg', vllm:'vllm-color.svg', lmstudio:'lmstudio.svg', + local:'unknown.svg', 'llama.cpp':'unknown.svg', }; - return map[provider] || 'llama.png'; + return 'brands/'+(map[String(provider || '').toLowerCase()] || 'unknown.svg'); +} + +function getModelIcon(model) { + const name=String(model || '').toLowerCase().split('/').at(-1); + const family=[ + [/^gemini(?:[-.:]|$)/,'gemini-color.svg'], + [/^claude(?:[-.:]|$)/,'claude-color.svg'],[/^(?:gpt|chatgpt|codex|o[134])(?:[-.:0-9]|$)/,'openai.png'], + [/^grok(?:[-.:]|$)/,'grok.svg'],[/^deepseek(?:[-.:]|$)/,'deepseek-color.svg'], + [/^qwen(?:[-.:0-9]|$)/,'qwen-color.svg'],[/^(?:llama|meta-llama)(?:[-.:0-9]|$)/,'meta-color.svg'], + [/^(?:mistral|mixtral|codestral|devstral|magistral)(?:[-.:0-9]|$)/,'mistral-color.svg'], + ].find(([pattern])=>pattern.test(name)); + return 'brands/'+(family?.[1] || 'unknown.svg'); +} + +function modelBrandLabel(model) { + return `${escapeHtml(model || 'Модель: Н/Д')}`; } function renderRoutingView() { renderAccountRouting(); } diff --git a/src/antigravity_provider/router/web/static/brands/LICENSE-lobe-icons.txt b/src/antigravity_provider/router/web/static/brands/LICENSE-lobe-icons.txt new file mode 100644 index 0000000..1dd53d2 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/LICENSE-lobe-icons.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 LobeHub + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/src/antigravity_provider/router/web/static/brands/README.md b/src/antigravity_provider/router/web/static/brands/README.md new file mode 100644 index 0000000..b1c0b3d --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/README.md @@ -0,0 +1,3 @@ +# Brand assets + +Existing PNGs copied unchanged from assets/providers. Other SVG marks: https://github.com/lobehub/lobe-icons (MIT), revision 4aaf4ee1fb2678a7f989ea570f0f6ce14a9abf75; license bundled. Served locally without CDN. SVG geometry unchanged. Trademarks belong to their owners. diff --git a/src/antigravity_provider/router/web/static/brands/antigravity.png b/src/antigravity_provider/router/web/static/brands/antigravity.png new file mode 100644 index 0000000000000000000000000000000000000000..d53a1b803e4e486863b34e4aabad30688c713fd7 GIT binary patch literal 13126 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

kX?fwT9Z<)75a2l2&vD zeudcdQzYL{6Fa|p>xJ2;AGOfmIXq-vy9Mv5DL9{d2098nsS?O{oKy_sBr4RcSuiHU zvtE9QJ0+kCJW>T190mt5=Bb?Xcbb<<>zubAe$)04P*(H6Oe2M${ zc6yWa%pD%-tfH@9fS+`;@Rh6%S!^HchzydYE87Z3^0c8f3ZPNK-=DqRT_{zypoBUc|Kt7ARP(FC!UtCX)|??AO`37}CqUJ5q8Yru zMbh7w_WHF8KQ7N+(!@?|l%KzKYxb$Go7mZ9u7H-d%K_d_vx>ML6fD0p{OiaM(2%p$ z#jG`@f_ITNlY_yVHOe)tvgSMXmv&&@xzHxr-R)+pVw9dbv1JMyd zzT#YL4rH(iEbPH7**GHQ+ex=jxEB-!5wl|2maeY;aKi`6cZB6^=KQ#}N0dAm0r$#} z-9K>W{+@3*)qA{cPV)lK?Y(^+1)ey`!T%!GmH9xPsYdzXf4L}sM?jQ?{iY7>G33MK z7hdd6Ybp4uDZsEH`gV%8qI%mq(|u8Svtz4s1-XNlk6(cQ+$oC+0lbf(xBPsvXVm2@ zNcbfS-%s1BJiYh&b9UokZ+8)|Pk_dNY5{!V)DJd~?<9p@0ccI!ag8HrPrPjMQ?9n+G&{4eM9|q>pAU0g zKomZdSv}9NwBKFj^w0=`lT`0vzyC;~w+P^0u{l(pvudVwiZ`_Rk zepvX6qy*alhqnP-`vLg8>w({AB|u!LMuH1Ez_d{MQ;mjT9<7fHavoGHN ze_egW8D?hEfTAs3{L9lGKY6oPs)X>7&$srcHB5G{2hnGy~P|piH6$%Z{3P#sRmq;_d!NPKXi&!em~90Rr3vq5SRii z*3_~0>@#o4ngyPNS&eu0oo~m@un~5=&lx^6d4HCxmbvDbOuwF&Zxb$YIM!e6!J8DZ znAI&8;W;n(fV(T}fxk8-0Pj32OR=(@%8o_;ZG1D<3(y+nN~hnToWoNrZBmrX>kG`E z^etV&l{ZFE8mYLWTlR|InbNNy;ZsO)xWIFemB7ylyk#rCzh+@bDcG-T+*c^IgSPrW zd&ZE~Z?YwAre=@BXT5($b~@uNOM<}V%KtR+_6~^Y(~eIwl-|8{YxeP2U^txLU$PN6 z*Qp^*s5-t$CM&;Rj1CT=#zI8+$&S5iu{>6>glvzG(3cKD}N)GTu?^&(! zJ33QeTxq92d+nBid+4?FgARA|bm{O3BWmFz;(p5CxYG**zgs$Z9soR!UV;k#GuQCt gU+afUs6_w&0j}Ubft5s{g8%>k07*qoM6N<$f{$)jvH$=8 literal 0 HcmV?d00001 diff --git a/src/antigravity_provider/router/web/static/brands/catalog.html b/src/antigravity_provider/router/web/static/brands/catalog.html new file mode 100644 index 0000000..b29d0f3 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/catalog.html @@ -0,0 +1 @@ +Hermes Hub — логотипы моделей и провайдеров

Логотипы моделей и провайдеров

Локальные файлы. Первые три — существующий набор; остальные — масштабируемые SVG. Последний значок используется только для неизвестной модели.

openai.pngopenai.png
antigravity.pngantigravity.png
opencode.pngopencode.png
gemini-color.svggemini-color.svg
claude-color.svgclaude-color.svg
grok.svggrok.svg
ollama.svgollama.svg
nvidia-color.svgnvidia-color.svg
openrouter.svgopenrouter.svg
deepseek-color.svgdeepseek-color.svg
qwen-color.svgqwen-color.svg
meta-color.svgmeta-color.svg
mistral-color.svgmistral-color.svg
vllm-color.svgvllm-color.svg
lmstudio.svglmstudio.svg
unknown.svgunknown.svg
\ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/claude-color.svg b/src/antigravity_provider/router/web/static/brands/claude-color.svg new file mode 100644 index 0000000..62dc0db --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/claude-color.svg @@ -0,0 +1 @@ +Claude \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/deepseek-color.svg b/src/antigravity_provider/router/web/static/brands/deepseek-color.svg new file mode 100644 index 0000000..3fc2302 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/deepseek-color.svg @@ -0,0 +1 @@ +DeepSeek \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/gemini-color.svg b/src/antigravity_provider/router/web/static/brands/gemini-color.svg new file mode 100644 index 0000000..62681df --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/gemini-color.svg @@ -0,0 +1 @@ +Gemini \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/grok.svg b/src/antigravity_provider/router/web/static/brands/grok.svg new file mode 100644 index 0000000..efb1a61 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/grok.svg @@ -0,0 +1 @@ +Grok \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/lmstudio.svg b/src/antigravity_provider/router/web/static/brands/lmstudio.svg new file mode 100644 index 0000000..ea0816b --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/lmstudio.svg @@ -0,0 +1 @@ +LM Studio \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/meta-color.svg b/src/antigravity_provider/router/web/static/brands/meta-color.svg new file mode 100644 index 0000000..a8a8d94 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/meta-color.svg @@ -0,0 +1 @@ +Meta \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/mistral-color.svg b/src/antigravity_provider/router/web/static/brands/mistral-color.svg new file mode 100644 index 0000000..8e03e24 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/mistral-color.svg @@ -0,0 +1 @@ +Mistral \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/nvidia-color.svg b/src/antigravity_provider/router/web/static/brands/nvidia-color.svg new file mode 100644 index 0000000..a9683c2 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/nvidia-color.svg @@ -0,0 +1 @@ +Nvidia \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/ollama.svg b/src/antigravity_provider/router/web/static/brands/ollama.svg new file mode 100644 index 0000000..cc887e3 --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/ollama.svg @@ -0,0 +1 @@ +Ollama \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/openai.png b/src/antigravity_provider/router/web/static/brands/openai.png new file mode 100644 index 0000000000000000000000000000000000000000..7bfb26c0f7887100f8400670ce9ad92f8433cc9f GIT binary patch literal 6607 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 N002ovPDHLkV1jX+S)Kp@ literal 0 HcmV?d00001 diff --git a/src/antigravity_provider/router/web/static/brands/opencode.png b/src/antigravity_provider/router/web/static/brands/opencode.png new file mode 100644 index 0000000000000000000000000000000000000000..145cae786c8ddacfa3873d688988cc9aea49fbde GIT binary patch literal 1615 zcma)7Yc!Mz82)C=@EL>Ax{Mkbgi#zeC+fJ(7(!cP2&G&mtcF}BX~u2&kR+6GjWG!m zg{W2|m&^#+vQjRQ`!yv(NY-t2cK4h;d-}0I-uFG{{q;QOeV*q{pi-9>K7Ky~KuE49jb_{cAhbo%=;}~)OVTF_ zN``HRnvuq0qcP|mX^9e8hRCgwz#hD>?#D5^cnL-kPhL~xgEX`ioB?k3cs*qk1nW&U|>}yRFa}P}g+32nn;H^RRq1(?vmi|2NU7V!5xEjHQC!-9FFKa+kH!sjR8a zbw_{q^+OBvTmr>io6T{C(&@+gyB_imgv`D6;+^N^Ti~>bH1SKE)@)yNN6A%DcFJy5 zJBw2)p2fa}axCw~t8v%O{R-sxMIG07*thj8;Xw<#3{2Tb{BqRSoTTg*sK}E8PK(a# z2OaVgm+va}rbZ{_(f#Wi43yJK1YO~8#qfkB7zCNag!#ZWTm}I+C=1|FfD{slhePCl ztus~>?)&ZWa*#U>O$Lc`FFQEaTT(-NHa~v+h(o3V1bO<4C%*ko@`-WhWEnC-)PV11 zcX!76LQmd)P8-iBXNh%5gXF0GjNmSaVB1#ZO)M#E@4=5_r5_yor`h;Vd8J-D54scTMrRlCO#orXO+q?AO=XnKm#q^diDE>$#W57F*+_)GwINireaX+CtDM1`U{BtI)NIYGeU_9bZcwr|o%EqhaFRS#NHuGLm}h9!H+>kwTXKaY-Et*))DRCYXj@To$Y zU*F)X-sxW4+z!g?K*u&u>bOuetQ7D~_+{SAQ(bqUkb~k!&4|?Pb`y;`UJ2x`!xW%8 zB@{qeo*s#QaA~N!~bUn_>e9yrioF+jwJTzAv{z zMR1I&cMH%G>tzlfO|%S{L=<(qY#p-In{%#d$jlCx+|cM*!~HTb*kJU~cbD^lQtg<4 z0I5eA&Zz`=eeP_3JC61%vD9h|c+ddOx>*hy_tzmyKe12*g z9vs}LXy@4I6h zv6;&p<0mVdH__RZ{euw;7ugEcOq>KLXfGe|sNf=aTn0uuwv+w#sS3nRZq znA%pzAVF9Ck%Vx~`%6lOLswZ-Rpw@}_q3&&-vs|7B)*p&k$~st`%g+vmo9HV3c$va KVo`2Ri}@2+SIj2> literal 0 HcmV?d00001 diff --git a/src/antigravity_provider/router/web/static/brands/openrouter.svg b/src/antigravity_provider/router/web/static/brands/openrouter.svg new file mode 100644 index 0000000..029070c --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/openrouter.svg @@ -0,0 +1 @@ +OpenRouter \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/qwen-color.svg b/src/antigravity_provider/router/web/static/brands/qwen-color.svg new file mode 100644 index 0000000..f2d0ada --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/qwen-color.svg @@ -0,0 +1 @@ +Qwen \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/unknown.svg b/src/antigravity_provider/router/web/static/brands/unknown.svg new file mode 100644 index 0000000..38f80ad --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/unknown.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/brands/vllm-color.svg b/src/antigravity_provider/router/web/static/brands/vllm-color.svg new file mode 100644 index 0000000..54acc3d --- /dev/null +++ b/src/antigravity_provider/router/web/static/brands/vllm-color.svg @@ -0,0 +1 @@ +vLLM \ No newline at end of file diff --git a/src/antigravity_provider/router/web/static/style.css b/src/antigravity_provider/router/web/static/style.css index b677047..0f593bb 100644 --- a/src/antigravity_provider/router/web/static/style.css +++ b/src/antigravity_provider/router/web/static/style.css @@ -1915,3 +1915,12 @@ body[data-theme="medium"] .nav-item.active .nav-icon { stroke:var(--text-accent) .status-dot.not-ready { background:var(--status-error); } .status-dot.ready { background:var(--status-healthy); } .resource-value { font-size:clamp(18px,1.7vw,26px); } +/* Brand marks are local assets, separate for a provider and the model it hosts. */ +.brand-logo,.account-provider-tag img,.available-account-card>img { width:24px; height:24px; object-fit:contain; padding:3px; border-radius:4px; background:#fff; flex:none; } +.model-brand { display:inline-flex; align-items:center; gap:6px; min-width:0; } +.model-brand>span { overflow-wrap:anywhere; } +.account-models { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0; font-size:11px; } +.account-models:empty { display:none; } +.route-model-with-logo { display:flex; align-items:center; gap:6px; min-width:0; } +.route-model-with-logo select { min-width:0; } +.agent-node-icon .brand-logo { width:27px; height:27px; } diff --git a/src/antigravity_provider/router/web/static/workflow.js b/src/antigravity_provider/router/web/static/workflow.js index 9495d01..fdb750d 100644 --- a/src/antigravity_provider/router/web/static/workflow.js +++ b/src/antigravity_provider/router/web/static/workflow.js @@ -212,7 +212,7 @@ function renderWorkflowNodes(workflow) { const assignment = `${cfg.model || 'Модель: Н/Д'} • ${cfg.account || 'Аккаунт: Н/Д'}`; return `
-

${wfEscape(agent.name)}

${wfEscape(agent.agent_file?.split('/').pop() || 'Agent File: Н/Д')}

${wfEscape(assignment)}

+

${wfEscape(agent.name)}

${wfEscape(agent.agent_file?.split('/').pop() || 'Agent File: Н/Д')}

${wfEscape(assignment)}

${wfEscape(runtimeStateLabel(agent.runtime_state))}
`; }).join(''); diff --git a/src/antigravity_provider/router/web/static/workspace.js b/src/antigravity_provider/router/web/static/workspace.js index edb881e..0e8514e 100644 --- a/src/antigravity_provider/router/web/static/workspace.js +++ b/src/antigravity_provider/router/web/static/workspace.js @@ -135,7 +135,7 @@ function renderAccountRouting() { const profile = profiles[node.profile_id] || {profile_id:node.profile_id,provider:node.provider}; const quota = profile.quota_snapshot || snapshot.quotas?.[node.profile_id] || {}; const reset = (quota.buckets || []).map(b => b.reset_time_formatted || b.reset_after_formatted).filter(Boolean).join('; '); - return ``; + return ``; }).join(''); return `

${escapeHtml(agent?.name || pipeline.role_name_ru || roleId)}

${escapeHtml(agent?.description || role?.role_description_ru || '')}

ПриоритетАккаунтМодельКвота · остатокСбросСтатус
${rows || '

Аккаунты не назначены. Добавьте подключённый аккаунт.

'}
+ Перетащите аккаунт в конец маршрута

Session Affinity: ${pipeline.session_affinity ? 'включена' : 'отключена'} · Порядок применяется к следующим назначениям

`; }).join('') || '

Агенты ещё не созданы. Добавьте агента на «Обзоре».

'; diff --git a/tests/test_brand_icons.js b/tests/test_brand_icons.js new file mode 100644 index 0000000..c74bb62 --- /dev/null +++ b/tests/test_brand_icons.js @@ -0,0 +1,13 @@ +const assert=require('node:assert/strict'),fs=require('node:fs'),vm=require('node:vm'); +const root='src/antigravity_provider/router/web/static/'; +const source=fs.readFileSync(root+'app.js','utf8'); +const context=vm.createContext({}); +vm.runInContext(source.slice(source.indexOf('function getProviderIcon('),source.indexOf('function modelBrandLabel(')),context); +for(const provider of ['openai-codex','antigravity','google-antigravity','opencode-go','claude','anthropic-claude','grok','ollama','local','vllm','openrouter','nvidia','unknown'])assert(fs.existsSync(root+context.getProviderIcon(provider)),provider); +for(const model of ['gemini-3.7-flash','claude-opus-4-6','gpt-oss:20b','qwen3:32b','org/deepseek-r1','meta-llama/llama-3.3','grok-4','mistral-small','unknown',''])assert(fs.existsSync(root+context.getModelIcon(model)),model); +assert(context.getModelIcon('qwen3:32b').includes('qwen')); +assert(context.getModelIcon('gemini-3.7-flash').includes('gemini')); +assert(!context.getModelIcon('gemini-3.7-flash').includes('ollama')); +assert(context.getModelIcon('custom-model').includes('unknown')); +assert(context.getProviderIcon('custom-provider').includes('unknown')); +console.log('Brand assets: provider aliases, model families, unknown fallback and all referenced files verified'); From 79ac9cf5610dccf82af9d8e97a61d83657cc6f82 Mon Sep 17 00:00:00 2001 From: ochenstarik-ui <267932263+ochenstarik-ui@users.noreply.github.com> Date: Mon, 31 Aug 2026 18:42:41 +0700 Subject: [PATCH 2/2] Fix account slot isolation and add background checks with per-account model discovery --- .../2026-08-31-A50-accounts-discovery.md | 183 ++++++++++++++++ docs/reports/A50.md | 66 ++++++ docs/screenshots/a50/accounts-checked.png | Bin 0 -> 75956 bytes docs/screenshots/a50/accounts-checking.png | Bin 0 -> 76458 bytes docs/screenshots/a50/accounts-nvidia-dark.png | Bin 0 -> 83837 bytes .../screenshots/a50/accounts-nvidia-light.png | Bin 0 -> 80840 bytes .../a50/accounts-nvidia-medium.png | Bin 0 -> 104307 bytes .../a50/openrouter-wizard-result.png | Bin 0 -> 101509 bytes .../router/account_probe_service.py | 94 +++++++++ .../router/action_handler.py | 72 ++++++- .../router/auto_assigner.py | 37 +++- .../router/model_discovery_service.py | 76 +++++-- .../router/settings_service.py | 6 + .../router/unified_health.py | 25 ++- src/antigravity_provider/router/web/server.py | 7 +- .../router/web/static/app.js | 110 +++++++--- .../router/web/static/index.html | 7 + .../router/web/static/style.css | 14 +- .../router/web/static/workspace.js | 2 +- tests/manual/a50_preview.py | 50 +++++ tests/test_a42_provider_connect.py | 4 +- tests/test_accounts_a50.py | 199 ++++++++++++++++++ tests/test_memory_freshness_a47.py | 3 +- tests/test_web_handlers_dom_contract.js | 18 ++ 24 files changed, 901 insertions(+), 72 deletions(-) create mode 100644 agents/inbox/2026-08-31-A50-accounts-discovery.md create mode 100644 docs/reports/A50.md create mode 100644 docs/screenshots/a50/accounts-checked.png create mode 100644 docs/screenshots/a50/accounts-checking.png create mode 100644 docs/screenshots/a50/accounts-nvidia-dark.png create mode 100644 docs/screenshots/a50/accounts-nvidia-light.png create mode 100644 docs/screenshots/a50/accounts-nvidia-medium.png create mode 100644 docs/screenshots/a50/openrouter-wizard-result.png create mode 100644 src/antigravity_provider/router/account_probe_service.py create mode 100644 tests/manual/a50_preview.py create mode 100644 tests/test_accounts_a50.py diff --git a/agents/inbox/2026-08-31-A50-accounts-discovery.md b/agents/inbox/2026-08-31-A50-accounts-discovery.md new file mode 100644 index 0000000..2241abf --- /dev/null +++ b/agents/inbox/2026-08-31-A50-accounts-discovery.md @@ -0,0 +1,183 @@ +# Задание A50: аккаунты, обнаружение моделей и состояние проверки + +## Дата поступления +2026-08-31 + +## База + +`origin/main` (`17b368a`). + +``` +git fetch origin --prune +git checkout -b antigravity/a50-accounts-discovery origin/main +``` + +В `main` напрямую не пушить. + +## Порядок исполнения + +Два прохода: **Flash** реализует, **Pro** проводит аудит. Пункт **P0-8** написан для аудитора. + +Зона: Python-часть провайдеров и экран «Аккаунты». С A49 (субагенты, скиллы, память) не пересекается. + +--- + +## Задача + +Восемь замечаний владельца после установки сборки `17b368a`. Причины найдены и проверены ревьюером исполнением — заново не выяснять. + +--- + +## P0-1. Аккаунт сохраняется в чужой слот и рапортует об успехе + +Самое серьёзное. Проверено вызовом: + +``` +add_account provider=nvidia profile_id=ag-w1 token=k + → ok=True «Сервер nvidia (ag-w1) успешно подключен» +``` + +Аккаунт NVIDIA записан в слот Antigravity. Бэкенд **не проверяет, что слот принадлежит провайдеру**. + +Как владелец в это попадает: в мастере для OpenRouter и NVIDIA список слотов пуст — `buildSlotOptions` возвращает «Список слотов ещё не получен». Дальше в `app.js` слот выбирается так: + +```js +selectedProfileId = window._wiz_device_profile ?? (deviceSlot?.value || redirectSlot?.value || ''); +``` + +`??` пропускает пустую строку, поэтому побеждает `_wiz_device_profile`, оставшийся **от предыдущей попытки подключения другого провайдера**. Владелец пробовал Antigravity, потом NVIDIA — и NVIDIA легла в `ag-w1`. + +Отсюда жалобы 3 и 4: «нвидиа не добавляется», «опенроутер так же не добавляется». Он добавляется — не туда. + +Требуется: + +1. **Бэкенд отклоняет чужой слот.** `profile_id`, не принадлежащий провайдеру, — отказ с причиной, а не `ok: True`. +2. **Состояние мастера сбрасывается** при возврате к выбору провайдера и при открытии нового подключения. Остатков от прошлой попытки быть не должно. +3. **Список слотов для OpenRouter и NVIDIA** заполняется или поле не показывается вовсе, раз слот выдаётся автоматически. +4. **Прогнать сквозной путь** для обоих провайдеров с заведомо неверным ключом: профиль создаётся с правильным идентификатором, проверка подключения даёт внятную ошибку авторизации. + +## P0-2. Вернуть разделение по провайдерам + +Владелец: «нет разделения по аккаунтам. Как раньше: Антигравити и снизу все аккаунты аги, Грок и снизу все аккаунты грока». + +Разметка группировки цела (`provider-group`, `provider-group-header`, счётчик). Её **скрыл A48**, добавив в `style.css`: + +```css +.provider-group,.accounts-grid { display:contents; } +.provider-group-header { display:none; } +``` + +Вернуть группы: заголовок провайдера, его значок, число аккаунтов, под ним карточки. Вёрстку A48 в остальном не ломать — это правка одного места в стилях, а не переделка экрана. + +## P0-3. Проверка должна запускаться сама + +Владелец: «везде пишет Статус: Не проверялся и, я так понимаю, ничего не работает». + +Ярлык честен, но вывод владельца неверен, и это вина интерфейса. Проверено: + +``` +unified_health.py:499 precord.last_success is None → «Не проверялся» +server.py, hermes_hub_app.py — вызова проверки при запуске НЕТ +``` + +То есть состояние меняется только после **успешного вызова через профиль**, а вызвать его автоматически некому. Пока владелец не нажмёт «Проверить подключение» вручную для каждого аккаунта, все останутся «Не проверялся» навсегда. + +Требуется: + +1. **Проверка запускается сама**: сразу после подключения аккаунта и периодически. Период настраивается, значение по умолчанию обосновать. +2. **Не блокировать интерфейс**: проверка идёт в фоне, состояние обновляется по мере готовности. +3. **Различать три состояния явно**: «не проверялся», «проверяется», «проверен: работает / не работает с причиной». Сейчас первое и третье сливаются в одно. +4. **Кнопка ручной проверки остаётся** — и для отдельного аккаунта, и для всех сразу. + +## P0-4. Списки моделей не подтягиваются ни у одного аккаунта + +Та же причина: обнаружение запускается только по явному действию. У Grok, Antigravity и Ollama владелец видит «Список моделей ещё не получен от провайдера». + +1. **Запрашивать список при подключении** аккаунта и при периодической проверке. +2. **Кэшировать** с временем получения; показывать, когда список снят. +3. **Ошибка обнаружения доходит до интерфейса с текстом ответа сервера.** «Не получен» и «сервер отказал: <текст>» — разные сообщения. +4. **Кнопка «Запросить список моделей» показывает ход** и результат, а не остаётся в прежнем виде. + +## P0-5. Облачные модели Ollama + +Ветка обнаружения Ollama после A42 читает адрес из профиля и опрашивает `/api/tags`. Это **только локально скачанные модели**; облачных там нет по устройству эндпоинта. + +1. Выяснить **по действующей документации Ollama**, как получить список облачных моделей учётной записи и что для этого нужно. **Эндпоинт не выдумывать.** +2. Показывать локальные и облачные раздельно, чтобы владелец видел, что откуда. +3. Способ не подтверждён документацией — так и написать в отчёте, а в интерфейсе показать `Н/Д` с причиной. Это принимается; выдуманный адрес — нет. + +## P0-6. Долгая загрузка данных аккаунта + +Владелец: «у Грока и Антигравити долго подгружаются данные аккаунтов… чтобы не начали по несколько раз подключать один аккаунт». + +Измеренные пределы ожидания: + +``` +quota_collector таймауты 15, 20 и 30 секунд на запрос +agy_subprocess таймаут 60 секунд — Antigravity ходит через CLI agy +``` + +То есть до минуты ожидания — это штатное поведение, а не поломка. Проблема в том, что владелец этого не видит. + +1. **Показывать ход**: «идёт опрос провайдера, это может занять до минуты» с указанием, какой именно аккаунт опрашивается. +2. **Не давать запустить подключение того же аккаунта повторно**, пока предыдущее не завершилось. +3. **По истечении ожидания** — внятное сообщение с причиной и предложением повторить, а не молчание. +4. Ускорять там, где это возможно без риска: параллельный опрос независимых аккаунтов вместо последовательного. Если ускорение невозможно — так и написать, честное объяснение задержки достаточно. + +## P0-7. Локальный сервер называть тем, что там работает + +Владелец: «локальный сервер это llama, так и надо подписывать». + +Сейчас `auto_assigner.py:83` даёт провайдеру `local` подпись «Локальный сервер», а профилям — «Локальный сервер 1» и «Локальный сервер 2». + +1. Провайдер `local` подписывать по движку: `llama.cpp`. Для `ollama` и `vllm` подписи уже свои — не трогать. +2. **Если движок определяется по ответу сервера** — брать оттуда. Иначе подпись по типу профиля, без выдумок. +3. Проверить, что переименование не ломает сохранённые конфигурации: идентификаторы профилей не меняются, меняется только отображаемое имя. + +## P0-8. Аудит вторым проходом + +1. **Проверить чужой слот целенаправленно**: подключить NVIDIA после начатой и брошенной попытки Antigravity. Аккаунт обязан лечь в свой слот. +2. **Убедиться, что мнимых успехов не осталось**: ни одно действие, положившее данные не туда, не возвращает `ok: True`. +3. **Открыть экран «Аккаунты»** и увидеть группы по провайдерам. Скриншот приложить. +4. **Дождаться автоматической проверки** и убедиться, что состояние сменилось само, без нажатий. +5. **Проверить, что «не проверялся» и «проверен, не работает» различимы** на экране. +6. **Эндпоинт облачных моделей Ollama** сверить с документацией. +7. **Побочные изменения** объяснить. +8. **Пропущенный пункт назвать пропущенным.** + +--- + +## Ограничения + +- Ключи владельца не запрашивать и в репозиторий не класть. +- Учётные данные и `~/.hermes/agy_profiles/` не трогать. +- Вёрстку A48 не переделывать: по группам — правка стилей, не переработка экрана. +- Службы `qwen-coder` и `qwen-compressor` не трогать. +- Версию `0.1.1` не поднимать. +- Правило честности без исключений: не измерено — `Н/Д` с причиной. + +## Критерии приёмки + +1. Ветка в `origin`, `git status` чист. +2. Аккаунт не сохраняется в слот чужого провайдера; попытка отклоняется с причиной; проверено. +3. Состояние мастера сбрасывается между попытками; проверено сквозным путём. +4. OpenRouter и NVIDIA подключаются с правильными идентификаторами профилей. +5. На экране «Аккаунты» вернулись группы по провайдерам; скриншот приложен. +6. Проверка запускается автоматически после подключения и периодически; состояние меняется без ручных нажатий. +7. «Не проверялся», «проверяется» и «проверен, не работает» различимы. +8. Списки моделей подтягиваются автоматически; ошибка доходит с текстом сервера. +9. Облачные модели Ollama получены либо честно объявлены недоступными с причиной. +10. Долгая загрузка показывает ход; повторный запуск того же подключения невозможен. +11. Локальный провайдер подписан по движку. +12. `ruff check .` чисто; релизный гейт 10/10; тестов не меньше **517**. +13. Память проекта в AI-Memory обновлена. +14. Отчёт: `START_HEAD`, `FINAL_HEAD`, `origin/main`, `git status`, `X passed / Y skipped / Z failed`. + +## Главное + +Владелец смотрит на четыре подключённых аккаунта, у всех «Не проверялся», ни у одного нет списка моделей, и делает единственно возможный вывод: ничего не работает. На деле проверка просто ни разу не запускалась, потому что запускать её некому. + +Рядом дефект, который хуже: аккаунт NVIDIA сохраняется в слот Antigravity и докладывает об успехе. Владелец видит, что аккаунт «не добавился», и пробует снова — а в конфигурации накапливается мусор. + +## Порядок сдачи +Передать точный `FINAL_COMMIT_SHA`. \ No newline at end of file diff --git a/docs/reports/A50.md b/docs/reports/A50.md new file mode 100644 index 0000000..ad8202b --- /dev/null +++ b/docs/reports/A50.md @@ -0,0 +1,66 @@ +# A50 — аккаунты, обнаружение моделей и проверка подключения + +Дата: 2026-08-31. Исполнитель: Codex. + +**Статус: реализация и проверки исполнителя готовы; независимый проход Pro не выполнен.** Flash и Pro недоступны среди моделей этой сессии. Замена независимого аудитора на Codex запрошена у владельца, ответа пока нет. Не считать этот отчёт независимым аудитом или разрешением на релиз. + +## База и область изменений + +- START_HEAD / origin/main: `17b368a155fde354ece0b0fa65aaefa6eb5db1fe`. +- Ветка: `antigravity/a50-accounts-discovery`, отдельный worktree. +- Логотипы: отдельный коммит `1fbbeacd1345bb028b735e58d5468ac52a750193`, [источники и лицензии](model-provider-logos.md). +- FINAL_HEAD и состояние origin фиксируются после финального коммита в отчёте передачи и worklog AI-Memory. Собственный SHA файла отчёта не записывается внутрь этого же коммита. +- A49, граф и алгоритм исполнения субагентов не изменялись. Версия осталась 0.1.1. Службы моделей и пользовательские учётные данные не изменялись. + +## Что изменено + +1. **Слот аккаунта.** Центральная проверка отвергает чужие зарезервированные префиксы, конфликт с провайдером существующего профиля и небезопасные идентификаторы до записи. Применяется к регистрации профиля, прямому добавлению и началу OAuth. При исчерпании слотов нет отката к занятому `provider-1`. +2. **Мастер.** Состояние очищается при возврате к списку и смене провайдера; пустой выбор явно сохраняется. Запоздалый ответ начала OAuth другого провайдера игнорируется. По умолчанию предлагается новый свободный слот; занятые можно выбрать явно. Повторное сохранение блокируется в UI; повтор того же подключения во время проверки блокируется сервером. +3. **Группы.** Восстановлены заголовок с логотипом, счётчик и сетка карточек. Убрана фиксированная высота карточки: иначе новая диагностика и длинные ошибки обрезали квоты. Это необходимая локальная поправка, не переделка A48. +4. **Фоновая проверка.** При запуске веб-сервера, завершении подключения и периодически проверяются подключённые включённые профили. До четырёх независимых аккаунтов одновременно, один опрос на профиль. Состояния: ещё не проверялся → проверяется → работает либо ошибка с причиной. Снимок обновляется при начале, получении моделей и завершении. Есть ручные кнопки одного аккаунта и всех аккаунтов. +5. **Период.** `account_check_interval_seconds`, 300 секунд по умолчанию, минимум 60. Значение читается в настройках из `/api/settings`, а не изображается полученным из снапшота. Пять минут ограничивают частоту платных тестовых запросов и повторных OAuth/CLI вызовов, сохраняя достаточно свежую диагностику. Проверка отправляет короткий запрос с `max_tokens=1`; предупреждение о расходе квоты есть в настройках. +6. **Модели.** Дисковый кэш дополнен ключом провайдер + профиль. Discovery выбирает именно этот аккаунт, включая Antigravity. Показаны время получения и ошибка сервера; при ошибке старый список и время сохраняются. Успешный пустой список отделён от неудачи. Ручная кнопка блокируется на время опроса и показывает ход. +7. **Медленные операции.** Проверка модели допускает до 60 секунд; обнаружение — отдельный этап до 20 секунд. UI предупреждает о минуте на этап и показывает профиль. Синхронные обработчики действий вынесены из event loop HTTP-сервера; медленное добавление не блокирует `/api/health` и чтение состояния. +8. **Название движка.** `local` отображается как `llama.cpp`; идентификаторы `local-1`/`local-2` не меняются. Ollama и vLLM не переименованы. + +## Ollama: подтверждённая документация + +[Официальная документация Cloud](https://docs.ollama.com/cloud) прямо документирует `GET https://ollama.com/api/tags` для облачного каталога. Это отличается от `/api/tags` локального хоста. Прямой вызов облачных моделей требует API-ключа Ollama; локальный клиент использует `ollama signin`. + +Каталог получен реальным публичным запросом без ключей: **19 моделей**, ошибка отсутствует, 2026-08-31. В приложении он кэшируется отдельно от моделей сервера профиля. Каталог не доказывает индивидуальное право аккаунта на инференс: UI сообщает **Н/Д до успешного вызова**. Неподтверждённый endpoint личных разрешений не добавлен. При недоступности сети — Н/Д с причиной. + +## Проверки исполнителя + +- Python: **535 passed / 1 skipped / 0 failed**, ещё 4 deselected штатным фильтром `not live and not network and not installer`. +- Skip: `test_windows_csharp_launchers_and_setup_compile` — на Linux нет Windows `csc.exe`. +- `ruff check .`: чисто; `git diff --check`: чисто. +- `verify_multi_provider_router.py`: **10/10**, 0 errors, 0 warnings. +- `release_gate.py`: **PASSED**, включая полную suite, P0, updater/rollback, версии и проверки секретов. +- JS: `test_web_handlers_dom_contract.js`, `test_workspace_a48.js`, `test_brand_icons.js` — пройдены. +- 18 регрессий A50: чужие/небезопасные слоты; реальный loopback HTTP 401 для NVIDIA и OpenRouter; дедупликация; состояние проверки; периодический запуск; раздельные кэши; сохранение времени и текста ошибки; документированный cloud URL без передачи авторизации; переименование без изменения ID; отзывчивость HTTP при медленном действии. + +## Браузерные свидетельства + +Стенд `tests/manual/a50_preview.py` использует отдельный временный каталог данных, синтетические аккаунты `A50-TEST-*` и настоящий loopback HTTP-провайдер. Это **не замеры аккаунтов владельца**. OAuth, квоты и обновления в fixture отключены. Воспроизводится командой `PYTHONPATH=src python tests/manual/a50_preview.py` (порты 5803 и 5813). + +- Без ручного запуска увидены `Проверяется…`, затем два работающих и два отказавших аккаунта с HTTP 401; появились модели с временем получения. +- Мастер: выбор Antigravity → назад → NVIDIA → неверный тестовый ключ → правильный NVIDIA-профиль и явный 401. Дополнительный JS-тест намеренно сохраняет `ag-w1` до переключения и проверяет очистку для обоих провайдеров. +- Мастер OpenRouter: автоматический новый `openrouter-2`, затем фоновый 401. +- Период в настройках прочитан с сервера: 300, поле доступно для изменения. +- Логотипы визуально проверены в Dark / Medium / Light; 16 локальных изображений без битых ссылок. + +Снимки: [в процессе](../screenshots/a50/accounts-checking.png), [результат](../screenshots/a50/accounts-checked.png), [NVIDIA Dark](../screenshots/a50/accounts-nvidia-dark.png), [Medium](../screenshots/a50/accounts-nvidia-medium.png), [Light](../screenshots/a50/accounts-nvidia-light.png), [OpenRouter после мастера](../screenshots/a50/openrouter-wizard-result.png), [набор логотипов](../screenshots/a50/brand-catalog.png). + +Первые два снимка сделаны до поправки фиксированной высоты карточек; окончательная вёрстка показана на трёх снимках NVIDIA. + +## Оставшиеся ограничения / пункты P0-8 + +- **Независимый второй проход Pro пропущен:** модель недоступна. Реализация сделана Codex, а не Flash; все проверки выше — проверки самого исполнителя. +- Состояние `не проверялся` проверено тестом до запуска worker. Отдельный браузерный снимок одновременно `не проверялся` и `проверен: не работает` не снят: стартовый автоматический опрос сразу забирает подключённые профили. +- Периодический повтор подтверждён детерминированным тестом часов; пять минут в браузере отдельно не выжидались. +- Производственные OAuth аккаунты владельца, Windows installer и установленная сборка не проверялись/не обновлялись. Превью 5801 не заменялось. +- Таймаут ожидания не отменяет уже отправленный провайдеру запрос: адаптер завершит собственный сетевой timeout. Повтор самого фонового задания не допускается, пока оно имеет статус `checking`; после сообщения о timeout повтор разрешён. +- Фоновая служба запускается жизненным циклом веб-сервера. Отдельный вызов ActionExecutor вне запущенного сервера сохраняет аккаунт, но честно сообщает, что служба проверки не запущена. +- API-ответы не превращаются в подтверждение работоспособности при одном только сохранении: сообщение говорит «сохранён», результат проверки показывается отдельно. + +Дополнительная правка теста A47: проверка памяти больше не требует навечно зафиксированный `80aab00`, а сверяет SHA, реально записанный в CURRENT_STATE. После обновления общей памяти другой задачей старая константа давала ложное падение при корректной памяти. Проверки существования коммита и свежести сохранены; код памяти A49 не менялся. diff --git a/docs/screenshots/a50/accounts-checked.png b/docs/screenshots/a50/accounts-checked.png new file mode 100644 index 0000000000000000000000000000000000000000..e721b1be9cbad5c852c673a9e5d23f10b678e011 GIT binary patch literal 75956 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 literal 0 HcmV?d00001 diff --git a/docs/screenshots/a50/accounts-nvidia-light.png b/docs/screenshots/a50/accounts-nvidia-light.png new file mode 100644 index 0000000000000000000000000000000000000000..9dee1b92f80deb2d9abd4759f8655ba5c8f9af6b GIT binary patch literal 80840 zcmeFZbzB_Hwk|vb4M74V=paFZI}9FP90CLgZowJcB?JhN;0zXQu;A{41a}ECFv#F8 zL4yPj@UhR{$-DRY_BrR?@7{C2`^WC#*Yix*s%NcLRo%V1YBhJ$cgujsin0o_02CAe z0OkGzxSIn=0Wi?eG0@R4FwikDF)^^PA7f)be2D!74y3 zVqzLL8ahTMW)@~LYIZL6=UfcWnVCVxVAR-Ip3a2B4s#qM)JRJwivrLPLA- z=r7V}=mdlqM9;XNJf)RXQ`dNH5*Pnz3^9($!^@}X;u@P(RZUFC?;P-lmfH%6fMr5n zO~)!0y(vu4J@5mAOi*^0lv$^FPVV8+y#lg(&41Z`>AwF)`HO=4B0hq9T>v!H`<6pR zxi|VRMFbBBpB-{bs-c?1W{s^7(K=UkpgrLUc>2eYIz4YE;%*jzb1(RS0F?kB0l1+F zjp*N_rF}q4^Plgej*oq{ZY>=3o?Uv2m-zG4mpr7UWx)!49~%09>n`XITDHRf+Pnb# z!GTl#%Y+u|kd5`LvY%fUOX(xxFJ8U>!vk@TXjkZoJ zO5J&Ag~TKGD!5gP5qn}d+4FjjM&(O81S~{o{sr(M^>9(ygyTCr0@s!!-`NFS+}=QF zUBc}44xL?9Qymf~dRW0Y&AvX&<_>Up0!w_msr=MEy))%V1u;P0MW@8icZB9ldc1xcy}RK{l~`+~MO{s_Q(kv$G?mD+E*Iy*S$)VB3%hM};|b<)Xwj(mj~b>((t~ zQO!>crlt8>gQv@F@s(YI-{{NP#xoG*?ghcay-Fvbs^c9%!B}Rl#5d!l_DIKi?`eIQ z{cGi6vIcAx79DtxpPYeVqzl}vwu?Vk)mUjMLbo<~dsqL^H;-g<(3XRQGr+6j5330S z0h^tjaH}tyf6$sZzH<$o@Uwm*YgpT%*s&VgZ2MX4b&`p7TqUhVY$ukxQ4 zrfgT7YEy~g@VXKpRfRM0IP0>17HPV-i7aC$23!kef2CRwG)gC%yk7N_BmZ*vQyY9( zTUCeRF+*PE@TRbFfi}GAy6^Tf7bmC>^~%J-={3^VHw7}j(YouqK++}9I;{5Q;??w^ zN9VYHQGPh2!1<|dE?49Z#{gPWwSRHJ9Bz4oJ?g&J;07hX*wh%zZS3WaT#^){RHc3f zUF@>|z)O&;rt4{5PXzlCr;=ZUOwUiA`yOhuz5{e-4snKREjZ{)5_f3v2~%c%F3ksu{RZRsrAL56?9DryH<9DUs{DNsY{tlet0)r8!>#*@C3k=s-di(m^h3Mzea0n3 zRAne)a@Kydb=<)xC|O5`7v!|O<%HRjdBb87IWE@AJV>y#zjOVSb0B8M+~e!w_ZVFq z7xnoK#!GZ>yNP{5oZyZa%J)85!@g8ypY+`i)0HjTG*#71AaF`U2BCz}@PdX1<{ohm zK};cL)WbRvp-Zd^JsRAteAlL&p?mDm1=!SZQI(P2bqjRR$;ZB0nRnm~;_c|NQZ z*AxUbTA{5d-$^dMK{<}qG`n}A90n}2xg*zNC_gf0GrpBp4WFNv^YxOD&AzZ4+V>mZ zs|_++Z5f*>X44jsQh2!|*w12yXN@qTY)>;2mKA-Mq;v-e@xP_=KcA#7vT>RiagDO>q+?PETBtfWG-!zt?!lC+XoVIID{jMsK`cDl>4l0nOx}Cf@yxYLq zhJJ*9d2rs)OI@fo3Q5iMo<^$FqbX>OD$yq@NL=dA+AVcOr6vN306hEuvzU6OZ z&01uURWa6V=K>O{=5u9pT6T_&ZHFKj%EkzuNE=b1hU2Tb_}5L`5aqiwexJDY<#Zcf zOj|SV8_9rkD3wUp7lww@26<=5KY#dfmOf5C%eE?=;g~<=7Fu1sgZpgtvK-IT{KsW# z<~J(9ZGfevLzWH82KN*3&tvCd_==!EFH3+13 zaH-!l_&2kN!Tv;-S8~x+$N97&6XfET_oK<{wGa63;K`3@YO{@(GWdmjzQ-%KhlOY3 zf1<5zD)GLr$>ERoUe!YQYWa_pAyo&Zi7)V@%AGL}bZ2d%?292qT}lNX<6=a}q4+oI zj1IYlYY(kkl@14C^&;+wxCMve#6+eSOg<~lwrNUffc{m$_(esU-?(vWYU5jjjN0{m zfBle}9*}KNEB?5Os8HF}N0N>2v$p5so~lamQ<*U2_xyv5B&IUgI{;nC9f187@wV+% z_Rp4UWxp$j?QNI0<7d#D9}DA%_0xh&pv0vFSj@Ok&Clp2zs*UN2R&`cYd*_L9QX9BpNqIqxLsjoj$-kPww9iy>ip@E=^xHOx z-?IL(U3Y-^v-rvX$PJ19l{>(|wZhKL9}&mr`~272O$B)ayQ+VBynf$H>o>Wlepxb? zKEHjdDEo9d>|6 zm-!frdeYE<95wmHs%t{`zHW@Y_+YYL-#}|B$^ioZ;Mz+fZew<6`6ybTQr7XIk%7af z#BJuBlGr_8rE@im?(-c_+cHe*NfX1j*;!@5aakvBDNsWSx`MbrmW9@oR2igdql?|U ztc0bxWEYEg(c_ZRwmsj#*uM8_?N7dM?-jcahv0i#uP^pv9vhs%)4iqZ6GhA3I>5^6 z;rfiX!d|Y;oB{hzs3{29Qh%BJcx(1rSB;)02>w&tNxZX%w1kmXWgOO+Az*Nuu;*UF z=wxsI=C^T+QjgCdpmRGM$Ag6Z-o z>zCo_Z^|XT(pJ(Im;HPzoTPthki(7d!~>MZ@bXCGk8LX-v#5r_^ue%pgT#4BO*Q9S z==_%3pc{T^RL-@z&}Y~kfV+@ozxs>79iSTVT0d8eJcC%XUvl$CN(ujXRrQAkiLDy% z_6KpoqMUA>dQ?x zlfdoyhot+~63~L$KtIeKSvOgOl{+X@Mv1YYnyPVxF}}Gi3#m zXpvTlycf?kNp{`EidjF6%g+j7;l?{Z8&Sd3qlnF1uhYX4k&u=|bF*~54@@7$w?@7r z8@0NJZTi|O<4;ynLKjPyLwmG#zj3%F94k@sF{`Avaqv6a%A9o1HgcqfOw;AbP!c;zvZuSPZjC^Q>_1{7RGzm_oNykmC(`@Rb z_?`L_*0+^$ED?Akv!y)R3O0H33WnT;h0d|xc|^|?oF$x=%cdxL*O!H+5A;;mE6`TA zSUo7LY^|DxH5?|cYxHL4Rq3QVa*5Y50a)#;Tz;pt1?Hs*{B_U)>$VfE{9v`O14eza zqujYMD}`@dJbc8e%g=)vl7^cmQak3AHWzl}q02Az({4V_v}S3|L{*j7O}(^X{D|mx zmzQVg=$Qd83q6JzisRL3?TXPODU@s&^TH~7&*6;Oy~nmA64v5Hyj5d?@9K`2 z&YY>9MQjBmURAe4cJ7AtrXKbQon_zgbNNjL1oh=z2VydSjbqWo#KssR#KQ^G@};#| zajGDnT|S}^p*1vA`1^Kvn1}vfEmK}TU^sC&W!UCMx@lF30e_}GtvR+U5wJh|Iin+K zFMg$hCZgRtS&~U*W4~lo=IN=Q?wq$o@ou;<|7I<<$;X=t&FT{P(W;rUyVZU%_isiT z^RhX)rs`Iv3f0zfsltd4lGt$AqUJ8?5C~UDRTt}PYRptt^wzlGN1|%u>JxRtekQnfLX)T70-QPGuf zhuT*Ij*il`Uk3`;?4qs1_Sd}#GI!I?G&c`D2`}s4#(Rl`y_;)MaMR3MvVS5trzumn zi*Xz7L_z;{e&NMqZ&)BGpug~`2!nZ18Ei^P<_-X@<>P^9DV_-n1Vqt?;7Xy!*UaoE zc>bfO(#Qv<7Y$%>tTS4@5I94;{?fCAj!De47mOKPLOfc*4YzidYV@^CRoIS-eGQM-u+@+AG-v1Zq+Ens{Sp(f-X+sjht+c5Dz_6M`gFmcPS z9M>6SF8RgJ#2!h4#{>i@|J6>*o@9vj4nT4r_lxsemIy>_68J~t-2pPmYjmPFB#;~a zQ|S5S9tgy+8Vy4%S4&6pA%+*r^*+0dm0UQvHB(qQXKXFgxdSN;UnHT5inm$dh#qrl zO^sS@r|z&w4(akkb{donsmju!i6MID&`*r^9Hu!?eVJZzn}Yj$j`#ceii_NUXJQ$M zI(uJ=5=zdqERV)2~TO-8kb02^GHoj1=RYbuza1mffj=?qe}Dz|g{ zgqMTMrA=O-z3Tv6u$aeix1rerk9p^QTd)?d85Sd1$C%r_5ww{_shT7 zs54%KhUWYc;PQnhT>hCI(ZmG2#1lu@{V|5ZU?>0&2)9tx6x0*0*B(R8b>l-ZS_Nf9 z2FW*@sAmDofn(Fpqas^g39rxj6q{Or-}r67t)1XzWLv9>5yMZMCk_}P~KU1l3>ebLNtDgP!Y5r*OD5Zd2Z~5Q0GDtpg1lrdO^qoto}Oy zf6=Ys07+5{qWG)-X=2+?28rEt-M_=GJ-vco^&x~c(ncUc1WLyq6=GKCCUv(W_2o&= z0(T@lRFVpFRRb(Mw>i}8Hp8GURYB}akKyi!E2 zHGFAypU#d%WEg0<>(;0t%={s?kKU~jx_N|$7ga#*?^u_^F+dW9#`nO*hpDbbGs~q( z=830aPIm1S|43FaRB^_1;KAoW(y7Bu3d{U<_ z=w_NZ6=g=dbP_idKHXa8w&`XR*1BW4DIWD@{8)lSyJscsWX~)RHZz@5YtLX`9#w9S z0~?#_Ay#;@9@i%rP2+?`#l+$2O(KcB7V+4Di$^zPX1PWF^c5N_&^Ek%r)_TvQ*cbI zF0L+}(w_X1uUl^tgiC6xHg5fmU0*M{8+XRlmBDe6BksWJ!XjWX86*i(?*#V z?wl~V?qg!3wL2>J$4SCAsYk&s6z%JW>&^-G=(jVXZjRxF#9Bgo?-M~bY$N4n!Cc-e zu19;dK9=@$`MEp#92m>UDE(D;5)89M9zOwZk0<1mfra6$Z=jV)(mPQXPYHzrs`=X; zW@S-!gT3%~zVwRE(tU*gJio37`G_|mXU1h}6BTlb;)FL7HF_<*7uq5)1qDM4MD4#y z)p~%7)>9J9c?7GX@q=ZB^0sgXl_WdF(o9@k?c8UJ7iZrVhd&0hAHPB*pW<$Q#wa-4 z^+IX4kP~_OHg3-NVR2qCcv#4UcR&b3(7d5#e{wM1+n@d-z3gzYbs!$yc@a`vZ(I6F zrI={)K3HM7ncoD_$H?wkq1EOxC+=>b_kNaCVhc7SzLt(@<;_uZa9S35=CWp5PypM1 zic4P!ZosPN@JUar&C$s0N)Zy}9X6|NqSNHTUX1U&VpClbBnnkqPPbL;y{bL&tA@a!tAt8Lf=3_iCE=6P}`rvCD9W zmy?HPvI1wY#2mO|$mPlU>6dYw4e1H%yyy}I`GJ$=kPZW}IrH+``0*)hsF@Zx zU0Dt2s-#RX7!iP;CchSlFG09x&u6-1mz(R5CP`$r>k2^y@+kD3u$;L{GV{>SRA+RZJYL}aVP;r4AE!au<3=K#q_(wHBm#MG?n;r$G8 z3hgE0LZbK%u-|><8-4fzsz)AP{I+O0+TisNq2m4vFqj6lFOyK{`CxYCzWdi<+tRGO z!a_S&UIOqZ*dO~Zl29O4XdXhv&+h;yPwkfmqSkurw? z8DmxJZNY+ZEraCqEw;so71=wn7!5EP{im2Ad%^wn~HE+h`lpM;4y> zC)J-sl)+{!4(g9IWZ2YYrz1JHl9F~ekVFYO3)wKeU1r)C&DR4Kg~2Rb!r+3A}JWuZ0Z21}JgwRiaK{Z3Fy*GRHVAf_Eywg~wEPExu-ROyjH-Q>9B8wW0 z>M6v&bHM%6UyuE$E)AM47>g`Fbx-;zxE{&0Ih#6oE|(C zJ?vt@T2$iL$cpbhsvtwiJL7^V)7YP+vU?SWXXq5^(G~in5amKaUGw9C7zOwzdmO7J zj&{*sBsD1c!MNr28t)4rlr(%n=^Qs}5bvhAoaX%~u@MS0L$oSv;S&)vYjRzD{k*a@ zcmO=Iplk2#cU9d(IufvGeMNQnMvb7YohFawc<+=3n21=F;s*&KK-j=*oeH}y5R%j5~puJ)%V|Lg5?j)NM zj}q5)4!$crRkjEEM+$JDi^1`mX5k}80d_a3q8Zy^-gP^eKOw5R!Hmvka!1Fr_82E0 z)NrM0WO8JbF9DKjS062s1028lVAM5!c2k74%3(==TOTDaI9rz{ClP}TY-$EP7b|zr z>BYH1a0T z$(7sA_gI&OjPkMTvUk+7GBrs++|=oUGiv30;n2)n$!0Jk;`BrVTIY9^%#E`#GlIe8 zMa5cHX|FXhvy;m9WU?_u{nE2M|Ksr>#TUMo5r&4fBUNg`8UCJ$OpJq!d?p!P^-E^! z#Z?q{k$I|BOk0}hotndI(fW7wTjJ_pjtqrRYP8KX#3W>`6G>C}0>-&8sxA-;9DQdY z$9ol=B0{b;l24GNSy6Fove4vQ4$N4TaweeAu_6DseGw~jIcz^~oKhL*^^vGX?+kyv zihDCK@es7?10)fGA$2%{XYPmaTlObz@F~DxYFccdm$U9Z*O`~udg>jZW}AvN&>4Ol zwSAChY;f`5{`6eB14!PV=Oq0|q&T4M=lLCA)c;y${D=R|w0~QTMByD^Hwj5V;ENo# z)_BgFZ{XVAx0+Rycn;VK^hz_~@~7|VIHB0LU;JckAtPPO-tdP7;dru{9f!%T(kzxM z3Q$$N!7BV~kG5Aymw8bJdAxI4FBu9{@Q*17Ol%o!0>^aSRRL9G&zBKQ?y!v_sl;4e zQ1&6nryJF9N>Z@5SqA8|tevTEuI~=;{b^=U1g}3KGi{r&DO?nIiygdX9p1PhsZW2> z$3T?!ZFX2#!Kq_JQncCTYI)h99iJer+@<*VS)=e0kXA99j=RQ)AJb+)6oe7HB{61% zpmpXAwxMu13oVa-HNbY#3uYwhr5g`i>4HeEbeG!hjZH2TIWQLIGjAtv%F>M$;BCd| z`6%@+?Uxf0@E*2%cOI4CA>2+|oCi>G;rvxe#hB9DXd@`4ZV?JV`P%qCse{ zPG*yCviK-N{S-n~Ut3TKy&_=)+D=F6K#_~%l?Y8w%_*uKQ&XZ}9|QB9qO>cKIRYe6 zse_+f`9$%{y#6%y<$Cjh{5utE8XzI!1s>VHg!yi&Vw%h5qg5;=Jp3Qtku_&!=M|LP{8ExZuO(s!+ z`ssQG9Cjvw++0(tXf7b$4-PzhyUw<5O{hXNXT;M76E3P>2pg0tWRqk!F)?(+EKuD#agOk1IX&Nu~#bU7cey zrX;b&WDs!~g&ISbWY6}JGjn1=lTkwL8);>DZF51WbG(b=iz`0xp2>dHeu9iCuN4+X zM#5A3T79}YJ(KzlzL9W7hw1Ze4%91v1bX?fWkIbTdY#~)7}o^1c$~a5eb9RhP{MYr z{s|+ax1BwwTU6M_dz8#bjE5Z~ya^HCr#4&mh#KXpHU$NqXFkIN5OsV$BqI|I)?g!p z7L{_3k3m5tB{KLuk8K^u7uQ8pO8rkQ99ncgH|bMI(#Lh68ua1z#>mED0VPS7Ng!>n z1axy;i&0mdY(r#{!bF4KE;eMm2hwpk%4eL6MV_+PEIxVcGTL%s$Bs(wQEFmkPAh4kNGh{f z4b9N9XB^$qumAS6{@~Z#*x0YdZXE@ZD*1l<{X}gH+5Xd(z8KO0)}C@bEu^lo!n0@b z1qT)=t%NuAZWt$h)H^F~85Nz`I8ddN7%dL%~k8DK3#oQp)xxja1Z`Fa|tPC*xI z9D+UqAj;@_dJ>g>!BO1D=*ssgj_VKeg^kTla%CCn-FXJ=wKnslHi0IP#sk)of$8{2{@|ySe0WoUd_E; zgR3>WHI5Ni*Dap^GZ^H_J57%|`*m}t&azc8U!zBtH0y~A;=4tV{s#virw(LLAxg)* z97>F0tW-5yUW1a3EhSq8QKe1vDvwmmSYM^fJMTT_uPbHtp6IJHYFLSnqJUL|qf`U4 zo9S}6tN7-Dn0BRkjruF^huPg(pWzUaQSwSjDYSdI_Gierp4izk73C%BAwe24FMD}C zr*=NhAmJ%!0kZ>}&4tr@&BD+P5j0bA$P7g+ao|a0WmQjuH}IGXRKh<%YgudD_}$*T zvitfYg++Sfs!96i{>3?2F9@*n*k`yr9lFEuT8)>TJX1uEXC-#%Ozv^fwt%G#mswtE zK&4`DokwGG%Ltt|F{rKVVjfbl2}A5f!k&!DNIFI3(`?p`kEgg$wIjDG(9&R!6_!EH zq}@BVIXU*7VUyWWwQifG^+wBz3vYeix~6$e;Wf_9Y4G!wY@H+&k$q)ITWFycm%+rpAO7Na`H1Sf5V9cVfOk#bYGymn!d*f+RPD9UF@HKW5BCAh zdYjfG7oj&!D+%V4rn~!ju&Rm1?HA0s9>Iz>WLYEosA)v2I+R(}QD=_CD-EFg=S3d) zLfTsST358aR#bYKg+iG{XR-mk>v_3588`8lQZTON3C*g&5r2abKZNedW`P+a=H%Idyq-vD)^2ZF%>tucmGGI)Zpnd#yPe$YL9&|&55!iW*tLBNJZUd+q6-CvoIX1q=;Iyl(3J&66`wd4Z>NE zCXX`oDab8K%ybv6;q^c@L#=QfKy<`myhV5|qs(X$r$-a-eAPvNlZfT%u<#`sQ=e`W ztLsO=dk}FvJUm_B9O@ILEX~_TT;C+0`m6t^q6v%`a&N?^6^(!zcOsJwyZ-*OCnqzi}W-eu&&c(v9^M0 zO>|$rR3YfU7@+9u-)iZ34uRO)SMm%K_r%8W71sOV&o%b=TFJ57UcU5P?nAxQ09Y9>J zHa7}ASFEEECKyd(1`%3|=3vS2g$zVZO!f-)l1}ZIRpnJV^b1oVTtFwJN2SlE$CPwf znTw&9Ssuk+i=CwKd50fc^hY#=UWWj)>fDoTPB~2_QTI==st+e|hVa4rfjq?Fu28SA ztz17PRvBuI{nu_5vqJ;|JO?wVWIE&T7C8$g7`P|DHF()fhlcb0nX~X8qS9H;m7`yC zqI$OXi+K6(2)CsAxSS+6v5tZQKkqclOkr8uyjW>=I|yyMgmHHr>7;Y(8<-}BmIxv< z0rgk5HwecHaTLcN$m?7G1<!L(kh;O620AsErZVbnP*U>JAwDHxfdx=h!1b{4p78m1P<3L`~;IWB>VfRXmtBK zz$Vv43A5@QU@6M5ke^FV19c^(F~_TetTSYkr4PfX9M|y;_~Z0#K9A}tt8n)MCutsn z#VAPk$3oZe_;v0#{!Hb0(FKV{ZP6c@oEmKIhO~LVkE#3?gNrc@P7G3N%NM=HwHo)t z7gRln|2*X@=yc+CyUhz%I6md+)BLBrFHaEfT3%L7x`ikGt|0uI<9}W07|jEPcI;?N z6beBwX27>tzxOS^b>4cq8Xgr;5*%S3+BZ)77Lk|-EFDp{q*GiNwK)L1b`9OsoDUi+ zOL&>P_DmPV{zI|vw*8W3TViYXMND=gEX=FSd2|fOm+{R)X`(kt1aCw4#7W#vVy_=< zdfWkW_PNjEBk&*kh;UB4=?bPb#*sOf_#tO<*i?`fJ+1m18TgycHu`O$u7tL3{bqRh zC%UGZxEaChBJhRZ5KO=0*xsT$Bl;7ai4|R^;Rn-RXI{}&UKoy#$n7!xiS~Rn&Oy}w zfnwF^vw{OBangtb|8J146;D+m>dMSNQPsZc{PH_)lKDHp7-dN3L57QjiNv4CY&P>t z`-LgzmpeeV2>!hoZ%v5jD@%uGnaxk?Ez#T07ZYphlmd-fwvsFDO9$1_&yPo4BT_QE+3bBx1k zFOfe<iP=pxfrS91Pur-y`08;k{t(mLFr*aH!IFWsp}Eu3*R(~9mLi58meXjn&t`_fy;w1}x3<^?c_+oZ&uo8nuK@1`n zOuRHRD>p$_Y@V3ctGsQO1yw-kcVoQw5=mKWcU~@6Q~$)ZSKG=IDEKk8vX6V%WHQ)# z#BB$YG8;2YB^dcQ&t1$ex*{~@MX@aq0}}wSrViE&e5P1D#~@~5prK6PNK0x?!>gpi z9pknGytJZX$YxK=4)PPrP`sE8q@j51q_*gKir<=W4XF9jJfu5hsgx9|k);$2F9 zhaX?JQFDFhC#RZ}pj=pZXjEjI*kR%WbDQj(ZZo!0!icFr4Da{zt~7T5E|M4FPx3#{ z?C7z^+_z@>bK7LpAR(X?y`b7g7gLCdK{kuDHVOfOwDb#UX*B5h!1ed$}RmXU*Q9jqSXm+`|Fde*7+P9J-h`yFu7T#Xyt%o|CbR;XeA-zZ>e z$QyvZ2RLWz_=zk-`Ha%9Ta{o4 zMssZ;<5ctZOqVf*V+e|Q)lKRhm6*jP{Hl9)(;*3x}za+@bcmW#lw!1&V!=q~bg+%5mb}bee>1#RG38`(PEsW=~Wf>V`pR zY1wK1lh>~v|7_0GY)jFf3iUHmEnXTb+v${VsrSdvyJozV^!kl-R-;J9xnL7+RzlT} zG4fAr6;Qgp+6N5gK8j&&KXH;#(TxD*g3%WQ&UY! zV>4&5fsBkm5u>lpLob!pzcP_X_km2hAIO2#_eITUphvop91dv}P2g_8UmD50G{AuZo&DCwsWm(+;OM zcZm`r2OnA6SjLf+SR{+qNCK%=QC7V!koCCPU-VM)n_smm(3R8ILc?C|1$C*OaOX3HrBCp%o(B*6wT*-*b7Sc=h_i7<{g#(t-mO zo_)Rpn7{Fg z^f2Gz9p8AX)>o7Q+xN~6F`X_ddlr2{^mwza8N-sG!bOdsHa5;@BbaQYU^FTiq=Qs% zrBeTytrWNxO!&Y&7S4f;dK(eO!Gs$2HKIgjvu;JwH2BqyhSBA-u#ts^?njH{@(!Qn z$@Yt<7R!gr6Q|E#4d~f?AQ++Xp|kbW?^NQCQ#B(G{DxZ{Gb$zhZGOjE=@I!hP@avZ z9^&HkV)H)PlO0_lZ4d>?7nK0FgV+YOBY?;Uk5n)~CWbdHh`em1dz`Jkd2LhjW=@=Z zo)f*S5@=^F4ugBHkIFWk!q6D!DJ0{0F1H-ckPkCsBysBt1gbGogfaxj3f6eRJ`wXu zI2=UIYybpyD%IL-#d*cKxF`nT4e6OIf(sIQWvj~F5(wqx&1(59MwkE)g`w24C+;F9 z8cL3NUzA_=sZA<9hmcNhDNgZ2=+s6~!yJK;e6AY_)h94*5qqF2W3XcK_LZ{qtMOqD zS#M0fl_0?B2oq?%k$A>_zlb;7xtXWY5wb5lzrZ2v3Zcuyr{*X0{Zupj$RrM`JR0qq zRZ9pHN}=a(7b!<&0&G!6G8bn>eJ*x)d_f>JPOa6;_1L+=)qR&vv>lJK^dotY4NEyk zorXqL<)o&toM5v-b<8*7{PynmWuyqdC7QlXPNMs63lefkb^#M?~(D^J8dbS*D7=0Ji zvx#UbT+gx>Yl#(+hJE+Ro#1)9LW6q1YN34fB~DXQ_NzmI`lLX@QG>|aVCy9A^$OMgGPYhJlQ2B-x`E|SF zeiWxZqfg>*-zcCzrh`IDt7c}eBBEf*x+)ipw)35oM5|LM%gf03%UElH#STfSxlfUP z;j>g>_F?ft)%c`=mRDd3>0_(2QE7c87Z69E3?~GYw!)|=J@TapkIk|S_N}YYqEe}UM~z8 z@zqZFVir?AlHHgaayZ>VRsb)|6vs?vzowRbMXF3cTTmt%mM+75@QR0YQ7j;GOSJP_ zPR%Ph;7dD9f|oYrO7kj*Tldbycc18t&ahA5=Gimwn%Z-;jN*wov_;LVWm2j0t+hN1 zYdKZd-hZ9ApVKflCHFWxI9cIQyKp*Vx=aWJ1Thdn2iMr6Z|h)I6Quc3F>*Nk zgq{6sw$3>?UT9WKqv)>gAq4%w2s#L1&xI0FYT?jJacXEWK^R=kuDr76UW|mp0D;kbJR+7 zMCe4FFY3psZj>i-%qG0P@Dq7gz3K#xx!>g-;P(5fhYxkM70bXYX=(I_cYtn&Yeqju zjn_4=1ZLGFr*r$oyd5>Ai$)(5 zRd!i1V&7Q1X`IxBolBX|%q0xTweWrVp3DoH(Bu7RS*tnTrK`lx|I$A0VX|2)WPLL> z5c`Mn6vVkt8*WuL8-a^keCpC7=^R+>MO&2hBr+LwFC?@XpkA_0_gV`8ofr zNUd6Nh~;p{#Iwpq0LmiitO1g%Iq<+-tO1S^5I;J1i(mF5fsZqB!>cSe%PTH1yf{}J z%RrnNRh~)JObw*oW@^9iis(o9K`2Y3qsDno&i9jauilC%q?uOQQRhO>;;yPEOOGb} zq@wyslgke4q{Y+O*{{|`+xaD~*(G*}YS1N_nRORGYT{|1I76xZu%@U5(w44pfgh)K z;*F+&@`;(Xvu)*K)ihlr75|%?u&lyHx4{I9-sP!2J~fR=MWh^&1*sPrA1KmkH_dta zm8}33i;r^q`0IHN{_G`wN+MP!+Yjun&RJ=IwcyAmrV#!xXxEZa>!N-4%hiK6RksK# zs!?);}ufUl1SR3AO#l0WRo75dox zVq@rI?Nibp^zKfJ6h&~U7~FKHfSW%f^YJ?P;~q3HR1)C=!1}_ zh$Z$X?y=hHtq?g39*?1MiZsJqz}|A4m%lhRLVuXwcL!hC_tUuc;^&is8QoLakk7*P z`5JDF>y0^Y7p6Np25TT_CNkx-tPHJ`r@pHTO2mg<`;jeP>^nUNv}hzQ5ORaX8h zSHdT4;fLVu9on+IcTe$ff@QxVW(>SB(v~wY-|w@{=_~GRjS1wV>hwM|1jIO!cRB&} zhj1X^PjzMgXp4S+X`<6|}eV#)0n-`+?GY!tb8sf@PD< z<0Z1ZN3f$lQD;T=U})IiW@s3_7%XW5QE>viH!}^^|_wr^-K`ffnGoHlg{E8OIE!AqM&GiJ8+ck>~1M$cI zhC?l3S6$TzB;U5H>YJi)9DkvbYso9}+#XhDI3;e?S55XE{6&QbfPc?p%g9!e3$1RmL) z_;f#e@lRhiII{1aCduzzE9`C6hF+T5TyJEmv-qVpTt2zo7LL{UvC!9FaIR!Ad+rEp z6hOYVj(ee`(VkjgceSwhwr@ zuWtmMkC|@}zl}_&W<6YUWrk{s$roKYtgUNY=kCa;j(bwmW-hRrtA_k#v9aK{Bk8|{ z^6bLyt1*IK-@o_#@4YRH6$k!hy)omTX=Cd8%YviEM0jTYfw+uBqsnig>O!dSTW_Y6 zjw)HiIp_>P#zN4H;2D03$btvP$yP15d}zRYOcBF7hi%b?9MRe+`6pII)Imq*GGDmA zc`DL@C+IkK|2~{6>I-l2ArW?jps|S>$6bz@=+s+YU(J4MYaw3NTSYn$j$9_ z_&?(lNF2RVEKbzo>rxVwOAZ!c^Lx=j3g?B#r8|`e2R_eyWf;a_&W20IFakoM!+RJJ zcB0e+Y>v75)l&+;9o2V0Hu>g_3AE-&$E{ZjR3XILU7wZR_t|0gq`hV$l-%3A+%`qj zQfEl5)u7VV8G(lxxx%#4M|Pq!EZUs<_Mb3Q|}Y{n03?;g9WGRGe>t>X>1cx>S>TEh7?adOP@T^?A*=?+e?oP zlAtw{HSH2a!i__{?ait&GU$1bm;T-26!W(h!VgoV+&{%r1y|T z2Hire6T(s~q|Yx}Hqlofi$zaM`}}^&IKtq#j?|b93ga^020P!rca|8#=+;|KiLd+u zJp}3_xnS#Fp+B{{CI3va_^(2wzl(5+H(t+DxNGY7>Y}NBf=pX8-9|*tu*g+IGq%MK zY)_YkKTpWdADFf;kIe#LW_`1d@@K!Fs-NCs`(HX}iin*UCf@&Fk*(tbgKOgrip@p* zRoFN8kn~j;^%JMHTRk`7wtU;4q4xKSe{r^WyqD3Tx2I`y4SLqBaJ+UE(c6RRf>5Jwi}}W;PBLI#&OyGi=@MC`6AYYrcE2Wi>P9Q1?nA z>KZBw;_?LK-!twHH!YokpPt)ETuWTaSn~BzY=}oWcZq!4{gnz*_G`%kSq`NC%Np9h zMM}-TQK_@+%&n|yu|LD%6|sW(^g?P>lxta%4V0N8AQo3XS^QDMTzGPdH=82b9zdX0MgpbXh#YQ+|x#jsZVNOUH3}GAzWl z$0&9#@sEgQ70d~Ni&AaN%H1%W)z>&>{F1YWe3~(K%qY{X)~JBm$T1!0lAGLenqXT+ zNx)o_S$UIL&5W;KgmQBi*1z}ImC@U3B>2u;kFCYcVT(u6xt=Z^OXqAITQz`1{x zO{i7$vDcaQbgcZi@0n?rXY1<=!(is+YN;AE9+e0fT^=T%lNq@oLe_^2*XlH;qVOlh z`-Om+LkvK6D9RlGK_VNzn9zbf)h(^|D|hO3lZm;<=-!QTBg<9EJ2>K7F*rl-Vi5rx z?@I0`qrL-7x`m2cR81Mye%VLo?{lzCRmIJD%{MW@iTK*L41+V`KbBlxr0#ddY>VFF z_qUdidcA=mkv4hr`36^muv_g{2=o;vQz-XZ>IzuE{2>YVFi&$dwI+d5JbWqp+c?5j zznJt6;Lb#XYj-2*l4u*`$wQu+YF0I2xan>`8z`rtF`OLW5E7I;QwXL9Z46)ZvF?S| zk{eyU<>hv5y#r|XpT+I+IqUVXFUn0DEAy^alzka=TvVj*@_*YO=0|ZPxqQ@DZYYMR z-X`hTX!YL7L>MuDwAbV{Knl=qhS59d0T=6;ge8G07$i2~$Jw>@L&fF9`@=-f>maR$ z$-ZVY+J@ss`oy$@IxICMlAeOLAW!|+0omYh=W-4dGG3+GGpjb|{3Au~yanSlk9R*k z_Nq}Mqcaj=-RaL#P5*(lBamv9iTm|ZRFjWzf^y$in%0WfJ!>RXs0=tF8-wQ+Sp1x$ zmIA8F{Jqw6pMhVgf-OT^{wpCJJ*d}9Chr0lfGbr$>}yZxrFHrJN+*2sa7S_Bb8cw! zk4BrY<$7fx(V`6#K4%d^DPr!rOe(-ul63!AD@i%4b#$I3uLvTgHMjnlCp@m~M0R<{ z0SAxWO3y%2%o;W9sG>Z3^80nzPhQghhr0I+Xlh%xK!YHlH0doMQl)nYRgf-CIs{NK zw9p}dNKuNk0Flsy2%-1ht4OcXdnnSRgMc(q+%J3I?LPOOv(J0?{k!MiVzK7ToNFa( zeshfRjqmxjNy}Q*KrN*-`jdE|%1A?jiG;7Y2PzUUHrcwYO!V4W&cU9oP%z(_c+${W z8}3+Slly#H^(BR8D+<8J`sgddhBKi5>=T)fHs$%y?v;2sTW zx;N>nX(+j);z8?zFvttLqsDc-^GY%@hRrtOgSVQTljB4DgZ7hhn_QFhL@6tW^nCzA z5bt5UB2|Hiav$0Zrf6D^!f%wSR3=;_v|4F=wl8DWhZ2UK`U|}*sp*;zkm}mZ#rT#} zXw&6pc^mQ0nXwfWOUr38#i`yc^nPD8`mLP%J7ZwTZHJZEYPInVYT>BMR(Y$hL{D@) z&AasIWPOjH8mr9GT1QYVwl?~kby1Ttz=w@Uc1|?yL>foS8M^dmZu@!xSi5v|q@cYC zqde#gh=5rAm3+Z?p9a`vqDPO7dFHM9lL-b3GMgJBQnrCA6#m2_YEDAmESIPCG=T&~ zZUtHB&sz8Do9!sno$An}{0tv5fF7F#u?gtxaUw^4ssrC<35OjtX^Sq7bu&f<69yA9OE-0OPdEcaoywobR2QIVf&OhRr-jue?MF*t0XLDyji3mT8t zb;BjvyI*in`Q`grs_8+M>Q6L+bhX+OwfEzEm%$NgUl6JPv9~JXsbwnw!7ng!Yc;KS z_aLRbFyG&*PFq)Dx1Zew*CzPT!3oHG#Jql&LhXi*M?CGM9@pumec(9~vljasKu11g z7(5z^88VEcb7Z30hl{LOhFBID$AfQ;avm{-(R`*p{NfPuiMmn*?pw4t|3ulf0A@k7 zz-Hn3!oA&cg8v6-Z*uV3Z1h7(IBLNc@#A8lkUh_)?wLlui-Dy!pXFO=E()dN#o)f` z+Af=xGlnZ(+4DI{>fo+`IBO`9cgczyinPiS;{vQt;!v9 zy@Zj7FZ}b-wP^;hPn(m9#F+c}>rmz@fodHmv{HND`Zn)QQUG z1tA*TkJ#&tBq)i7q9#^O7|u_)g4fYREz0OYPM-b)PAL%Mb@(>}>i4JnQPbXrAt4)^ zQl%u;EN_FmKzrc?E|vy*axD&hUAXHxxed47PbL`Fo)9|7rQ!eN%~gTaME0O0`(|vp zfFF&&`SH}hyR><=w)5(Oya>)b`HJ|>4@<$HYvRHWmR};jJ(wQVb}jZ6n5e3B^YmbdQgE9fMnrD9tK2 zUxS}7&&4UyNc|Fxv3dds%YSImDNg+M2B{*j(mnC~Q9gKYC$F~u(l*0FxFIK$27>$8 z?)fW5SyA*TMN6%I6LndmROzhA%vk>wja#O-1XpC`Y8kGnfPeJ&auQs&RNgrspD#=t zLM~e0J2Yhdur4gtuxNJ%FmB_@G5hLshhk-ew{_;9fHmsQ`Do;5gbHIi{ls}fu`>Y; z0)iZv9B^82C_mGI$IrV2)Yep1m*;b{I%ms&beUO=Isf5Qs={RySs>$^U7BEjaD;&> z8+5S?*od?~W0{bOQwJSWrtv`Q{mNxjROqwg%k2#{*^Nl!MK&8(BJQlWQ>G=KbybBe zWw&lV9~$Qkzq)D~E|Uyj*qOJgGh10($Y_sU#yNnrUG2r188ql}x>a@nI+|H*T49Jv3&W z=cY?rc3zzMt_y`R$`6`HPD#0ND-KENc>&N=U}FQdcV1C&3wx-5c#Up$=9ee8PSU$X zc&=+{f=|wS8B0IU-7CLKwO%h8M4R9|Y@#M=@K}l3MOhr*o`j*U&A2JJo4Ey7F3o+j zWy2&r*SfIaE(!Ym8NaO|eX%%cz$^{a$tE)Nd!;xn0*{0%sMoXBaQ}L>YLu|ZdAvTJ zjxC;WfpT%?0Y`*E8d0=AJAT@UW%K>owL+hlRc~?@<=fyAQyTYR=~_=2wfs~WW?b93 zDsc{u9WX%rMC zKc`XOmK1P`0D~2m3G9KFFypCnO#OjkSs)9QbfmL?$IL)3uDmFMt*lRe1e7$Ht(s_n zz{pqz+8!iyC^NOh6R12MURF{Herd7g=tg|xK))ZKS>5rR%4mEPmor)Y$)E{=7@_Dr z59rNB%|<4Lb0PPZQ+?LtXJ_tT=gUd6?--fSoA4GhUq$sEd|y)opVu7%03fT-7A=?v1o!#?DY{1G_dyu!Xb zyc}(>D6XRAb-M4I*=fo=OR=&ga}fkkqp?alWmnN>eXXqe`cD=A-)%7eLHE7?`z@mJ zg5}TRCm%YnNlE;J1@>)D)t`Q({WRQr>-3{l{$S;&%=Y%Q#FU~~t=B{s42&6`%V5>bJa`Kh+1gfTnT#683`f7V0B-u-jb`h z*Fq>I_Z=6YOb+W|Vl2T&3x7~U@=vF{J?#0{^S_?e< zumwkU5d&P{F#35@d2ClX2~a_*qrF|Pw1wN;F1D+wcVY;*x!d3&YkP6Mn0T;(Ld&>nul5pdui6 zZX=f|wa_;En+nyzi?S3A%FU!v7VDe}54^45gLCTC18Fy1Pqv%AB^ciK)Xw8wc=2vF zF@rPmw3W%BAz0%b9%bq{L&K>KVpLwiz3K)$D7(!od8WK!7m1N6i$nLRK5e(+*u-8E zYF(IDW7;kq)?Oz2U3ES9om9yVtR8khk|0Dw+LQs7L3dmdLBowo(TFUGP>77q`K3Y? zwAk!p%(zG5q-wF=e{(I$uOYgw+)+}Oog@+Plvy-p3!C>Yn_QV&XDTQ*i_ze5m=}F! zlP|d3purA_T<_oD#ceMROs+Ko(?7v9x5aZ6id616w6_D@$NM4#EI_;=o<@CO(eQ62 zUou1^eppKWIOiEo`wj5a2kQ-6^BW-1DE;du*5oxh|2F`-$E+q}?{Mzb`KuH7>Vpx< zLCX&_&qtVS{>2{htm}2Odep~Ns*~PjKh=1G<=cz!STN^NQ){w6ceWeRy8-*^`s_q; zhj*QuCuaNkQLO@Q9Oywzl#=nEhkyR3tnmNJMNR0zK?%Zz;Dm&DjR6k3NFij1>dJ=I z#vOM>({1cDzNhY&6^8zw9X|H%5~f*9@=a*wZV*@jUS$$Fa@;82PO6=FpRM3Fh~EJ87K7K4 z6{HP*MAs+K_rBgOV^6;%g>b5WIZhDyyGBv*GCyoSR!sUG?LE)@@QL%?Y=rsyn?Jvq zvi{MVDDUZVtMt;g;Ke}x+3L&}#aC^{gsE&FdbR#DKc<<(MGMIoYa!CZ*c}355e`}H zrp3x039yDoIHuXWS~rh=)@f#Z&!t;CGaiaS;;xN48DQC&;tdJuvNL19J8aJloe#XJwYgay=z>LL z!!wu(En1##wdrF4*L~xZqAYm!i}e@@v(r?jB`d3!w*`$dfh&!;m~GL!14Yx0FTc8< z-ntHhS??Ma$Yt%rEJS9B$ro-*8tnLq^UHs3LFso9dHQvZMqlt-8W((#BvZ(k(d~3V zs7eUW&tJW885MmW?i%Adr<7;TH`}gMdHQQuuXpPnylC{p``KyVH8mth^LL-5b?KLC zpWQ+I>aSjkr>-|ww<*8h${;h~J2hpk_^TK1UxN`{-L*wW;~8E58t-3I;tY_}su{O} zfB37HzXmfJ@%xnS0RR2S*%SX=k7I2CBX^IzK7E}lk$_zXE|C2k{i$bA%<1A}x>XJK zyU#rT8I=_-7^xJ5)6Q%~@xqE{DOj-4_^DtI!iJU}Gbc_=t47C9`t!r7**b#PPq)NE zXyi(U@J~hfp7O7^_g=&;nlgP^B%bvO)*1<;>TdzZyl)8TOgY#3Ba31BpUG5S4F~Xl zajo2c{wqIQ??3PqFRfR8Q&10qh5G|Pf8`5#4mrnnpINT9PMb7B#!vr?nm729(A8FP zsOA5kq_=_I{r~V&_@@O@D=GwF_g8-Y3K#O?$$zrUNU}lQv%VciOzuO>ztGHO99e%7 z_W6Haj*3$G4?I;0+0j>>jm+!{ViU=*)dd&HJCRMfZRFAXi=Ke@KXH10^KeQnCs3QX zR7@W2*EN%Nf;tdojq3jPd@?W|IAa5w}{z&^Q5kS7luSo zy=yx$$RXL^06Q|SY+{&735=C%O!bImY|7FX>RAE&go{XFr(_YDk>P|@DQ zIl3D8AVH=A(!uRl_nXa*4C@^|vQyWR9=e?jH5O$09aw z!XiHO27)gWmR3o13;hkQkA4G$tL*7y9q3+k{iLTY^N!3QB6}5cl|kX(dT-#brqC(5 zqMw(qx>(Q3t0-5kzZ_>6tm!^~EhYa~L+OaR2cO6;ZJyN4umsKlOj0(xfm;;N?@P$QXGL{?*b;SPhR4P9p(I8Jnrf z!O8Rl@Qpi>5`%n2K?SrF|Kj)M6>jqvPx;>&OXb%py%rM5ZKw+)oh|~kko^0&OlpD_ zv-t5^R}C(59xG~AJ~K@dT2tmVDmsFv-v^=!im8xpxFuq^clbuK+IQ(X)>N@IlTN?8 zI2XZ9^hLl?bdVeOZK4i+8lbL(FOhwfYlH_JX-p4!)Lf{9-*@^+_bc0GXN?fErnRg^ zBsXrQ$hmqT)A(oirX)<2>+a~X`wGBv#&8w3;Ly=gVV)+?#strpPXDyFr=w#Bx*)v`!c+tY4DpRwtwK6>A$YQasn=%xQ7h`KB(K*|Cr~g95_$if39`YkaV?To;$#ge~(u4ji z_ig0k8YrE%Lj2NG%B)0#@D?x4&n$O(cV4WArlpZFym?x0d__*HfpFM>p=Z_D)?#`$ zA^aSp0CXdHZrV9TpH{TR?^du$!5tM2?xb`eHd!@mXQjx0#MO1$CvkzWD~tLvgMi$- z7C+x|^I#&gmU*74K+B3F#RiB4ky(q?4Co*M0Wicgey&THz+8tIoPPtV=j~)zys##8CAbOEL%-z75$tS7U`G*{eQ#W~ndW zmjPYbemunPIbx2>Srkur)Q>Yt0fc>I#$|`VKQVo`G_qmRuE0+U{_^TD4M@n**fk*4 z=k#rrOQmi?!1}wB6Fg-|%1h){3}X>TSixh5=e@HzbZpK0_%(IRL%A9i{(*Fyb27U4VavJuX|mC3xB$n_=K7f&_DJPk|K^Qtx*U3 za1QM{*8bAopasv4Kbvq3kE*}wC1IcR565ZQo1#3aw~zy zyrnt{*xvLogljxp^?^ry*VO6fEEMzZMMyLa7m?TYaVCT!TG)OA6axI|pDdoEms~!b z79`W<+9(;Mv|mUyhXc0&ARmoe&yHy&b?c_Qot?I!#k;*blb}wvdu2}1x)eWvcV1AU zdyV^Cl$ltnd3ffFx{=C`W-UvhEKs)_NBiDg36C4S2%C1!%i(Ch#$uMDsHvkiSc&SB znLDKTr3lD6PLlLwKxT`s9#eC+bTGg=04Y~tZQriOd}vw zjwkr~aMc$clHusE8EueR9CZb2@i#AQ@r4kttcez46BzZa+a?E$s72S%3~&3l(;2%w z`|zDQSdcxfm5*rZRfeVxdeEtrsd;=NsvP{Vb*GdGbpj1{fel|tJ^k<*u(nn14&RRD zy{Szmmzjw%4G&jX0WQkSX~W28VT$@|HD{OJtz@}VPP-sZd(x&xu6huVnJuLDVfX(8 zd~g1WKkEJpyp5++Zhy6$TCh}k61y7J(@ZsGDsMGNqd;4gzDNXcrUJu>l5$LSZj#1VX>&Riy2W;g((L=%(Q(Wj zF!Fhq2UL$*=HXr`e{Qgez9;5V5-+ibw}KM^%(!C$M`Ce+Us&ItN4IBQQI}p-{Z!G= zOZ{P7v)lKLn&TM*(!HeFg6H#sryFjKvdTD8|3GefCfPg>FEX#xS$`*{Uz6yGFW}aQ z!bbU9srrQa6f;hL4u3NbYyPOPLphr?6ewx57S-iGL)hfzGiC0T&eqB*p#vHgXh}1jCsgQE=`32 z5KxzNBCbecncmSy`rA!ew`A!3dBpm?&{j> z)w)URM0k$K3y9mx3dfXa2HMav-1fsrNhVH{*PDI{5f_UI4efS6sEA=gwVc{JuVfbO zGOrh3HMsU(zz}cF8s5J|JJO6{4iomz_(e;-`AhR^4B#4m8FE_rj~Cay|N| zUfrB=@7DTKu?ehPOO5=b+ue2|N_z`L5z z!u4d)InDj&V4d=b8O#@I?jQD(8WA;RI$LSXgouzokL^rDqs5h_{7Up{!>n}v zqvqXrmLK(|5BT|F!ol`kd>`)wc~!Mj_Q&|V;D(uRW;QI&8Y zk1d^i%*fbSRgQPmz9z*@o;Pyo_f5dXQL=Ax_}uF$uyOzObKTJXa-*5#nJ0(TRkN~@ z&*N3+?X3BMB7hh`fI``VZp~ZH0~PNE`}^!!HA8mJ`i2I*;2H4>WbgeW;j-@Fu1Gxe zL;^L#@o6-xTLhU|!K_|@@fI}BwB9;y?ohW)QCpd4n7#a78UGNyfY)TB)vka;|4MaP zPLpl}RnqwUR$d9>betXeSmy#2u=0Ld$HO}2&AynG&kO#~->N@JfA_1&_}skl{h?sQ zfQNVayioVR4nyk=m616T4azY&uSm6(k3MUT$h zQn6~YNz-I2MzCF|7VhX)NOc)J!@fc zF>?B>te_ZKt^H_e`QURVvAt@g^!UKw84XfvI3u`v7*$-O!R?=}R!Ug?8z9D)L`{n8 zX1C3W>YS;yvp4nGG{4iDzhs5Id5cee5U#=|D53j&dXVcz;#oZ*&mMc~G_`P#Fr=UW z@~$PN0qFzQwIao{$L02~G+4@at{#;YB$vMNY`h1tDZQC?m#)KvF!6roydNEJj~5wQ zx~-NTY+m${m}Jb?14=?bP}6O#77cM3dyHkF9z|ODTEk4uBII((@7>IGToLUesJ^|U zcRPaLyt*tI&7-~{^6;uHNw($z*#?f25*QySLdJ(XZ(KbO&GS}D`=-rj!s` zX;Y^XGeetYc=+L&*fuc>34^-=P^^UTz(d55-cnpSUSD|FDfeaewSrCKderKg!T9a} z?yC5!)Q@AtXRfRD(>fP$);Eoxjo19<`ZSOC9N0>Wa+A&2C$+BkAb3z%Rgf;$g|+YQ zdz0ZBD#}GOGvU-PE=tAN@)#i}GYye_cf>+u9giuH!x~lf^K4=9@_C({z2k35`R&RH zB3PLf4-gZ>3-?_7yU@E48sDLVD}p8rbxZY(!-NVt)e=bJ!f|M$kR5M9nbE-4ECpL zEF{CXz;oJyY5}pxd^3@g^|aa`(7BKrlKf27a!eR*8COrlc%mxqz^(`CL zKKvhS^DnrkzRWN~JYrY!1nXm83@%F#$$s?a$Fz;%w7{$!pPK{1V17h3E6sz1jc12i z#nuvqDw+;EL}nMK=(mc+;FDN1!uH^?8a0Mq;WP#svR-i?xoq$AFNv?faOrWmKm_zA zkzrD^&aqV|5++ehG9u5CFq*3#aRWsWy0{5Hs@gwm+lGfteN}nN=*qYwSuI^IA=}h$ z1;h`J0RY;K3zPDgc6nS-1-Xd(+ac6sLD)ye-r9H^X;0yJkwqXke$OK%rF32t zPlic|Dp49C%hBiAyWl!yZUe`vF1Pe*II1`l=$~RPgHq-j@oFH!I{{iIw0ju$M?U_? zZt0JszuPj^8c%eYYlw?$ig)p90vFd=E@w^+jV8>x$zWUMWhFlQ-NWDC&4_&ki05zx zt?g$pj7y9tY;!|G%Bxd4bjP2^HKB6fH2HwlASr-zc#EttTpYC98~TzqYMOg+68s#u&R`G?)t*%A|hz?k#5k0K4Z&1!0gOP8Dd-cCl{6@>!L zo1GR(Eu@#Q(})M5i7@8G?)sxzySqC@8?W2@H~c*)$%rLM=;bACjyB8nc(Gqv6Owl! z4S?zC?vWVoC;g|-)H_B<^W({4?o`l?^@cYD;o|uH%iV~KfZU?q@9w>!t*jl0jKE++{&`ZZH1N6662-1(7iN z^(7bsf5(9)vW;_-fFJ#gR$_cnizbb`M3KoaQ=<>Lrac@MT+&-zs4d|Oo-QgAiJ)Pk zXD=CZgAQ98G&)$^d2^oPUP{atN@%WjoTmV7yo`l*@?`6)+6W=H`iIjDFxy5kvNRv1|)vU(#W6OH>r9AT@&52ge}K2^UHtxO*JJafSA z%~zasCT`@t4_Sm=W8L5?ugl-5l{B!A1re`!{>X z0=S)xI`UU67H*Zt7iY=)Ke{_E=HnES2tf!>FB zOr3tf%-zCI13HeFqWTQzeha@crscYm;l71e!xK%kzqSKj#y0if<)p*TdCqSDa$36b zW08E+fSYxGh+a|f;e@x<5m&_n_XA#X-yCAsc)RRRs`J{Fl`b~=12wZCC%mUjnNn}u z9FiLeaMn9NJf&aY;c-d5beS89&8FM2^jX$7s-_9A*K5C_uz%L|=4V{n#|oe@Tv7u@ z39|V&1_gf?W0-2QSx23yyZ4GU_0OX&)F5Ym|gbrJintzGlgXs2aL*$$rJ^R*~cO1dgHz~JLKZRbzC zwmUoLFzb5_Lp2K;PtHeqFQ%v-nj&;ON*=FYQ!Tho^wizG46ig+a%nb44Fw=w%Y_JS zK+X{?Hb?8D-6j?v#FX978-Q3xn2*O71@rYaQ2y_{(B0Vi6A6;_XE!7qVQK3@0P`=i zLxCZ~;xorm`B|^U2JS)93)pcwGSN1kL|Y$j-~B0b6jjA2w%p7)vX`#;>a(DD& z$oJuxOMY*qx?0F@XZKzV>8Ga|zX6h98S8;|ZQ~aWy65G{y$6n3zx!EZvy!o*tDn@^ z;u<~idny5S1{P&7x9wuaa&9p!`rySbnZ@kV6Ncb>;g2@C3VFSiC1p<-s%}e*wm9H2E!g`0q{k)gDe-7>U{=LT zxP;V2s51$|CqhyPHbE8xJlgo6z{=~V%x+zjN>2VqhSxv;jA;IhaFeHhp&=aRk5811 z?!K#!{}PCaZJ<0b?mf`@F0Ob_EExkPNd9=_ewUlY{u|lng;9(Tnb1rg={visN6hf$IUQ^6puEuylSzu-m#7I-V9o+pJz#zU1Nu8SdE-^Aj`0>9PAOD}B znYr?WS@c^k{{qa@*`PWY+$NlWpQAp~sK1e6JHDzmW<=%KQc=f4}q zp9nI4$)Bsu;G_D&S&1gBrn4$<#7hu>6R#7WoBb?iTu6CpVKd{>uYMNXMzXWxnrI|u z#F}qUSIp|=251TH3gY2EoOMsYdZ*MAC3=bLHmJA+xD`7K2n)|81ius_Bkz(+Ix{p+ zdy1`DcKex7Kutt|%gOt&-vGy0_K2yn4c$xxqjxNL9^>)yLE#S*#-pCvGa0?QsTN7M z%B8(RzNAw0>ez~?ycQ_{|AdY!s&A!jy=LKo^Zc$~r1R+#vvkywfq)HcXydsg#hR|Q zQnhnZ^JwkccS~%=B(_tvQv|IvB(k+J?%xMfywc>xxB9*~!3Bg(q)t}P1J<2=ey#@0 z%hVOWv-0Vca@@(l1%8Ls);3yEB03v?19W}9l0o!{j6ivy#rutUh0X_)v+?WgFuD!J z&a05EdJ~(n1yPgdMGexK173yV249{4aR<1{+UbD0F09W4KVYY5%gLp&^PyXsN?9-K zUsfCAnqR;Dn9;Sm4C4p=MZ9;WqQfjFR!syJ5`39ZtO7CcMhj-2u=4|wF>Z6cikkS7 z#h15xJl_^K-Ioa2Ga-Z~qX%uR-1|8yUeF)ATO6+q>CezLJhqL|nv0&}a2Ig8wWiRk z&Xk3`2t#cVhr5(k53b;5xTbfLF=p}lbjKf{V;bZARMaTXPuL-?Mr}`WR}1TQS+R*| z;R~+CWyL-z+-qJHa+%}t4WfFUA62&Fqt`wVBu$?$73Y^WE$nSC)FS(L@(PKU+HwTq z`RP0!aBBLkNZpj~X)q}+4oswun^nf3iryKSvkM&-)6MiNI6$X_b6?rECKr%+JQFtG zi)=Hf@wfI$fbtKQlog_8J#x@R6~*CbnxKy~Z4$j(a%CNTUv51ZFq%A&n4G|HI~5Do z7)saonYfd;q44Xu=?fHHlW(Xp^?&B%MOb;*@_=(Iku!wfB)Li2g#{UP^(X6IR z-4rw}4zD7($S|LF&p!o>!M|$rIQ()9FJ+Hj zcz$&CwAyWh_OByq#QnI)CiAe7Ba#zGse|JVS9S?0=u>RrdCX4%3NcdOjnZM#B5F3D zaQtKmb$dS7g9M%4*hO8eZOz8kccnNM8=Ep$jGvFuDAD#Fo`+jd2Kn}jNZWSrtF|NR zbPCSd?ZS-O+TLWdot@%hy1u?UOX1!pvO#o2Y51zDzAHX6LM|#mB(3I6Lo%H1J{G7? z{y@v*Ok>PjW}wIV!*%#IweoY!bHg5OKG81yZw;JMxSo9ug7hrN5CUR~qVjhxN}7!@ zN7k?kYyWv6yUMX^sSae*W%c?YXx z$Lf7L;25!QoG_+(1^-qb?r1#?rmVbvVq!=(+kGxeq^TLdG$NS>CnL6y9CMt92%{!$ z(ZuuqSg>t`unzD@U1%Abm1}a4dRcCnX*^^%@p#cGGdG{oEw5k)#7_tD1cA2JJqQRb z1dzWMVE(%WS&vGyM{~POyiN~4^6 z&^n)-kd|yv5_jh`!M(UC>%t@hKDg$$pxA-rL>)i_I<`nABgjW1D1_%bTRBss8tc{s zJU=)UI^2WoW}~=?^9lNXCp=e{Okrt9%gPYEE#BKpbv5IMk|)Wj&un_iVRW0qi&0K# zw|;8lWiMbK4*rCJh5(bU5w%q6=~})*2faTG*@0;xAfS7kxlqD4K61G^)t|z_QLVaP z*(hm3z$9w{k|F3$HZM{ceK}|5{o{oB&4=x4F2CWCGKQb>r4Zl))Sz5ZHYz<~qRYU5 z9+K}7R^}6lSzEF%$EJd`)3cLm*j9|gDi#=JT#;k&@HVyg$Ovq3kcQ(hVOjbWsHA>e zbivqie^*6@+p&0)c=>(eJ}IA_N8v`yxi4`-Xa`XkiYN3{9<{0{wZiL1EaDuQs_chk zOlJG`bfd&&&KQ~jZ4PCLg_tKwc0P0h{c0^^Sxpw?o?Lu0(v z+kToU44vC+vgm!;7-m@&}d9=&-2K=n!?oFxVAh6I1Q^&mf>KZRkY;|qN#999e_oj<{0Zmo4Y>4};RJ(h} z06Xa|+h(!H&JB;8dfq1`>P!<2xM6F`bkO64cEj+(r2fG3@C#q+zbb#AX*^wgH!)-H z&BS!wJsTBm|B`a}s!L9ThBoDH3@R5*`v~9!YbR*<`gmJ#n!GI^)hujg&ZM~-o2ch7 zGgDVC(6y}4TaH!VBa*0{zKCT{Q~OKCt8hC(Am+30yH~_;=SN9-H7jDB-9z0fs6Cs8 zUAQ62>28wt#%UfvrN*rYDt>o3vPDf>_)XTNu~BVRMO+7+Ox&8n)GY!jf*`!3jVc*6 zM$S@%f1sBo{V*i$V4f6Kl~+dcf;|n<_qCJey^88V?rXWqdU(}z-l28g4WaYZtnPRV z#+W<4ps#uv_4SdNWQB?C7Y2R${dq8kZ@6EB#!I5ZK|x{7hKBksDtO-RljOo^vyC7z zF(3`@TV`3tF5HtR4N&M^B0C##(jYZpbw9(R0<*}H1q|z(U;|`#e9E!LQ*yS;D0ag! zk}F=8R%$#MFeYO=;_x$+{XDt;fSPf)M~n}p5#5Cg9`B|hc>DD-6J&!P#jEm!Bi=!w zjw=DRwPyz6arGwKPJT-kDZcB*p!1+LbyK|qqnn!IG((gMZ}nbSlL)UgH919c5y;-6 z8#Mi(GV;NhUr*+_EF!$%LK>P2W8`f}>18ZIi1uBTeZ(;7lsT0>$7fK(*GL~9ip0Z- zBC~GaSRoyFc;E}anY?pzIXZWeKs@U(cGv^T57QwW(jd5^D9HRH;{Ll3R*xFbd)9Hj zIIp2TI(zctwz7WR!hog@(0hwyJ{?ar z66mlCyZe(p!N*qmn4Q}yU=}ZG@vsRXPL@vY@1nFzP>zv_+Y)blWjPaPA^HQZJnx!L z?aj0aZ?396HK@*%W)n)Ltvilm%8dyf<)LPtdOW?nQP(?vQNE z1v>UuRy;;1`V`=Z90xzSn<^Id?-I-aWH3z#US-TK-Uotj_K)|&7z&)r5|d(bOJ{ZU zHF4MD)$3F(k3GkJw4}&6_=xt%L?Z-}Xhj9)7uXu6jii!51;t{BNFgU!O-yhabVUc& zPu=v++%a(5oKZ*|-+%!7c57b~+nv4kTJJ?lXiaARNml$lhyD7bnvfl3g5SrenWk%n z6JI(^JnpfNaa^rw;Au`ND%yjFazHFdgDHk)Ew*3gJi#`%!>3XP2dfmx=|;s%y_X%3Xwx# zt2I={(vdcK;d%QMy|OIx2pQYj&UD4qPG2mWQEItB7`Cy4nR5|}P0?JRCCKp6rKF!} zr}}!)0oNK@q44A&HeaSfLDbI0KPRH*-sMQTG}a{25_DVy$x#_qtMjrXHZoE&P}A9k z88B{<+)yR9r}OC8i@-%VF}PGTOzY|DsSh~bC9dkU4m+0X83nll?_$xOnUx~fSXw#x zX@d?Y7q42Q*f$~sbqkdctTms_+Z|cOcD(rP;d&~q_kF5^g}_<4m@%=vsm%>Ze1${y zhDazbLf64ky4EN;x~fS-e_Y8#dwdxJ%NJg0gs?#UTdb7|FenC8q!soHt?@Z{`i4X$ z1;b)|En zUJiz9y2FL~w0iuueS=@`@ywbc>86m0dNinV(-igCYXN;6|8ls+w>MdQiIcCcfF7_F zv?9Nf3*L3oDhoH~&Mw$XFV$uY;(Ei09^m?7yq#;E^6o=J_U0iCY7p#)fpYJ$z_Zbc zdB>01&l`OrWp6J=YvoMo=}**jHe?t;Lr!w(G{3CAU8A+wXF|)H%!B8@I0&IGAG7~^m2Z+PY#Vq70+LiF`X~u zW_My0J0J_ol@JXw6_Mv|@BiGPtxTSinFDvoL&T@Y_t0!g)(a7_t&s%uIBlYA?h$yAySPs8AnHs#Bdj%ukx2;6R8c^ft#P38-k!@Bk~d; zdo<|&8KaDC;Tshd^b)URexP6;B>d>>OTx>(hG8%(iI`X7so2MY>;gC%-(Jf@NVsfZ zpdBcc)I|QzZmGX^B>%mJ(Lu{)py0gZ2~p3lquYH{>PDlr25r1)wkK<=34-J^pM%rg zNXPa+n`Tenmhy2;|4J*7Uli9^bz%@9`J8tS;FLbIyDtf10g~RXmWwZ1)W20;N6}B5 zelJ%oGfHt8+J!TsON=I}P%e3tN6k4ju2+4($fgh;FJ&f_4|V-w?hl$oCWI)k*u0Y6 zduLOYFwmM>t--5>h&`OJq|D%auMJvJ{Jgf6G?q;bq}H1&Tp~W6t+dekLY6d*th$P% za|4Vm<0jvT)vckLLSmn(r7atHc=ELX#Jfh%ouF(rR{6#vklFFuojik5uaS|bk__dk z#}R$K!b5M@*Y!5%QBn@pd7_4ONCWAla#Gha_S&sz4|J`M@R~_s(g)VGqj_mbUD-2n zac|0xv*IVRm6Yiqkdp$Q16}*i7sjK!x?9ya6Ixvv}u1=a2GGuw+ zcP`JrexTali8ZSj#Z%uRkUrvS`!V=%b_V&;#)?#)qv`wa6zhh!(lYl(sGjf7d5#Is z%PoV(ll1{F^+f&D7C9}PX>p}RM|!=Yo~9vylX<%*;MD_$lc5?f378g?7?TN^f7?iL zZJYZR=z+EA=q^Xz4*mlR`K6F@`2}0+8`U|K=i9naomRgk+>9M>Y)HYgT6I&g<6FsX zGfj1GAbf@##(HG2yl$F<&J4>vC%zss^cTGq+?iip?HJNOH?X+58=*MlWt|CI?*^WG zHsk5|Bmt?O)_BA&%)4W&rQ3Rq6kX2;AYfi;A)Sj5TmY#C{&0s@f2x|9rPfUETrRm> zP5^@jLzJuHns0;dgN+Kk+py#V)Y9O^tdX`@AP+d%fB^T7AQ#?Qb2ZNAG+TAok)ClT zO@42$+ADDXy8l8XW|jaTG>%rVod@lg)T)o=nN?3RX6VdHTm*jTRZTa4zbxh1x0bC@ zecCJ3&&vxv>Fc`}_3>jVEIQgU89js`>{uUun*F#aypLM$aeQ)dF`>BlVSel|c~d*! z)@n%{5Vz7}z}};#zPhYVc*bZ#yJbmk>d;|XRH|c0N4O8qDhACnd?$~$-YKH1dG9G)^$ zNitG+Rh|9Cd)%i6aFY~^G26&jw)4>AV>($~>WKZanquOzCFaBdhI5VZT?lyTUeNlz z#(mgv$%YQc!|)v2?Sh6L)g4D=kBR0usR|qn5UepGb(RC~cOC`?KyA>e2g1#g-R3FL z3}E3n#eOa+0#vIqcQ!mDds2i=Y!Vr7lZr`O)A4*kwhbWi`!7}5-y*w%{3^so)Kf{i zuUh;{HVgWjlz)fa#Y?|X_r$K)VrdratBfL3$Slj;<&boJYBxgu5SSF*i3K)ap(}>+(bW8zdV0P`|)n|#h|nn zQvI6UU3gswt9MW}Zr;1eZ_d-Tk(!_FV@NBhF>wyS$H60?LEurlN3zTxAi+Di;qdtKLoMIGa4)9v78jwf5}MA=&7aQ zV7TkhroU(JI-LUv?$t`dJcm6;I-=ZLOFYSI^)n**e%jc)<_ijJ9uG1zK*-|w~!MktIfzWwEf!dL7F}NKChVi z*e{Iy@9-)^^E~3`JhuwBU<<@unx}Vex%wj5kQ)Iik5u#&1qLuMN#z0;BF;z^Hg39p z%n=ZH3jm|r!f=3R$NIqB7v;W-TJsCJ2mv>~%f#G=Np&-RezP;uCW9nKp!}EdATe4X z0(iAn75=fGSLEYva<1hp z#6b$6jk0mJhe!v9oE&eBs8Kmqh-e*oM>kGaPlw^Sa~=t?UVSpSaJl3Da=l{d+jaId z7=r>+%*`=YQXiN2?84Z!Y`-E~fAqy8P2A`-261->KrDYR;PbpW%eXje-+1A=EfmkZNc@)gq~G!edk^~;0g!plRllMgIvGz$zy0C%Zy+5sSJ3{^-@e$(jzd?wHoYe|?} z`0*D*TScP&M{2U?@2Sc2*{s|B|0FW{n?L{mVDr)He@|p$*-ZYwq3N<&3;*r)SY6ED zrbt9ahWuMDd0OME>C2o~9Cg2h4{6hNRMtJ=syT|^%n0;>dxe{-VM?1{B5uj-vN5+oz)@lJ6 zEF2vs0OL%A_noYQGwoPJ3q9Q@@JUOP=CVb>2Af@Wf+Az2Ni;>$)Y`oN4|{JN*4DZ$ zdZ(p8TdWjmfIw-n0>v$8p|}_K0uAmE+*)82D+CC|A*Fbb;O_43?k>flQ0UEGd#!cO zK6~x&JNMkP?{~iE*?;7Dl9}hn2MuCpxUf{6_At^xg)&62C=a<@xY2#C>I?{`)Gp~L^=b(O9)sXDveH$F}% z_Gmd*8p2Q}Xx^5A@)(w;U%-~90Bz_6q_YBIQ5y_qBfd?JBg;oD2+$4~;xej%}2W6``BCWw8gp8c&|?$-@+ zcP!ma8U7%Q_OEsG2=S{I7xzE8CYh}z6rFbRn)TD#cH~QTQl{{C-u03v%i>?G)gbCg zdHy_q#_MZ|&3?}Y%|fD_TOV1n6$@F*E|-dp#M@8Y`UbHP)=6Wt9~H0QC5&YasPNN* zP+pE!2Iq7Cy@(qf?6#t>v)Nf~74@9;oJTE{6 zxiNpzdln}%G9=c`vb?I2BSK6KCzUr;w#yF4wXN({Bk3+_8hW>2e=iY0Qw)3BuN{J* zn9o=V_Mv=&P0%8VTk7An;7_>`PDfw?+?aNfxekh(HRf3 zLU<@bpeJjzD3DuFKf<9EE#vPbx{|5%6Hus8wRo|0^_tb%l(zzoW|f@riB7zpk?y7x zg=zM6#NxsyD+7|k(80gb5Ck9#5o9#B-_W9XKnZ@n>cw73Dxc#t-bejXk}XPfvvDDD_DaCsp*{ zhp)^NSZ+*$*<K{fh zEy_!tB!2tlGPP=-`;i{*p^ni)$i*eeJupu{hHS?J8X*rS&Ftm7lfse>ICeE5xz;op zv5Y!&g3A+=;8*ff4=647jLt`%o8={d(^$U?{=Tt(_wP~|wPhdAp8zSQtuY9KVc5r# z1;dn*!(Eqi9}TA`icdBAThn8e@EF!32{Z=8SY<+o0`h?7I{{}u|9^)5O} z?6+PNf9teQ)#-)6-vVY5LjSW<`~B}(>bFkc3NY&HDymOgb}bD|2!0_~_>B0c&*6WF zdf0!@7R<$X7n9khp%@23;O;}JkJx_uT~sIjMERfp`M=RWT|d9y(E$5b;e@ZQ?dfLy;B@vkVlYS-T@ zPpMzbJWQa=uF~zr?1+0-;L&OpwyJJ&&h*f2yvI`!Tk{}EMgL09a$ZeY^t)Jg zpjtGtpu?kT>9Ob_pe94N+WaMdt!9_%%x(e?rO)u^sIKpjR1#n|Bqe$2P7aKrfR)-c zR(0=Vg%xx8%Z{%{bGbDpLE8ARx0RT`+zBJ~=SPJQmuEk}`K5ADQG?Rfr3WQf*=A*q z(2N`C8qgyu8p7b}13c(nsT6$2qJ-MkNv1-~25wml*V%X#%~@Vnt-?I^P+uQ!dL3}K z!tyT#OEeWG$4-MfSm`&b$A(&;8QH-xeCe^-IzhzQHl~dVsKB(6htURfEdud#^J|=S z#xqVM+^d10hugz!zEqLwO1BLqg%!HflD00OaUPfDt1!5xY@OE`6dM2#5(Nm#!J>_~ zwvqJdPXy~evu69eR3AiQfoa^E@yOkmoF?-qKTbSXN{>pv6e(6686M^2Pf=8qWWnDa z0LH*0-)<#+M!&l+~h`ZZH$W=C`y&=TX{`*7OHgPBzPubfA`XEmsl3E=1Th zVq6X@tFTTZK7ebSdI*<^gm|!db3sDvv_*o-+o|=hTWr2ZiF5NChjl5hKvl_zw{$gM zj9!pA`LAj@)@W(9a;x!rCeSbt24R)r8IgNlP+{=zq1s9M`7C3Ze)%oZ?#~_w2uTcR zP;TTFJKN^zS=pbhLrO%q^|d`7i_eCIfgmLr{T9WfWs(?aZ+#;xuh1|sXZgVq(w_h{ zz)K$S#a=Z%*YgGCn^c^z$U>&H`so`1y3K8z_h^(D!yi)UJnb_kf$TKDVYXK?dN*jg z*dIc4gUXdim2qKW{1A_;*NcDQjQt_R>giK22SaY9{@c`*{*Z!>?(e9(DF1hyU`bj| z{MeYP=KU*)XNBWb;%_I-v9aSws~`+;vx%%1sF0lCvVUxI{zGH*zwwJ-W2rm;4`Zoc zBr)ISP5%Tmw_e?iO|vPyDm4EIz$Vyw_`c4E;jnS1l$QIk48V~#x2gi($(I_?*sVuq_SVZeS<^Y&7+?c z#KGZomB{va)~=ks;f|tnA!2K{EV3r*n1A@x$F6(C-H2e{mH*}bg?vC(7E2)tzH=Kr zPOeq8m2F{N7P+9%JnGNC4viS=&~DcooqQXv4B^wN_j#%&d1TFUzGtfuIIp9jrZ%=A zqdSwWVd+~$b*#@tQ5GE-b}XF9ZeU##u0iW2+YZdnv^EJu$%WAL)*RKnv~%K^IO?Rm z>2sbRJ~TZWGi1oApHy=>&#l@0SRbbiL3?H$oxg{-_f7b6xj+za&gA6r^v5ssf|LS} z8I!k|GQw;0&#}1yjxYwwOvu@j45`yIh7uGPdScp=ClnuVOU)}1H{}&|dxBSq`$9tt zj^$rY0|iUb`^az^;g7b5aRw|5D$Zlw%EZw^vZ0--{@jl-5OYzTZTYw9xW>r_^mW@J z#BTM@eN0;>G_XqTO4F=uBn?il1NBqWuv$hD**r=JFkoaGp*i87`1~v z>8W}gCFJ+E8q{2B#-&}o)#J!pjpkJnc4psf%7X01Coz)4rSA-EkU|%-qiq;hGYfLV zQB}@5&*0?)^qeD{&++iAmDyM1BY0jpKG7Jc+kHRtgE8-*k=aM_NzZDPftmlRG@U8L zq*z5gB=d0fr4Lx8ZPaN$M1l;s$ds!sw@L%gHn{x#5UXE6&_x}XwGB-Al`c{wk zWZ7R08{Fb2oefk*g!#OGJV5ohNJ0`_dh_1jaufb@g1VsE$tQxJ08aBC)ubGKZThUhYR~=rQl89#TrXWLS?*&1HXM}} z6)n;I+{=)n393IDDYho2elX)@PFkDo8oc8pU6i(03dyQ9$k{q8S(s>6!DYR7zt69| z38OvzgMb&dP%MP1_{rn3<&o`?G!~K)WfIV_>g(wp@)k(Q;1JcG1LhQX&>qt{1!ynX zs^Dm)W398<=DGEA@9%T@=*q zSv}_c!Eu%tnmDrd9EhHAw7a2E)|}hk=de+-Ptfk%nfEbshVK<$FAx@M9#;$-+5`Y) z0WcqwP*oneaC+IqpfVn%4YVOGe!RW*UXa9n%;^sPWC;J!i;4=#es$Z9K`}{r&8rI_ z(>tyXNOsJoD?ZK~`H1%1xjsPW?fFEjskcIvW*2Ueb5^`%X1rZ(iS{Hw$n-^(vqh@r z+ZQhiDAn_jCfwu{^k?4zK@c=>dCg%XFMXEzUTpVndvif{pct{g%tAN$Nq21t#<3R$ zneZ=Z%R|rCSg(C7GfSi$QX@45bgsA^DOCumG2062h0`84@#~$t*}ORTOiZL9 ztB5IS^DQeB_>{J>&VrT2(bSc+<*4r+*OYF|ACrD9vr_4I2Qk8V$A!dEgHa2PZ5kv^hHG zROhCkDthSrM|Bj1y{rW=Adxat^D5y|oabe$AB0`+KlM*4eNtub46WfuN6cp>jGaA? zuO9BC-Wb~CwrZjY2FjIuXC?e2nBwoThQ_oiyjnL}XqIh2&?zR1#t84GT^0-;`%oa! zJuo!HHLi5ZWv`O_lRoo~XdD@1weJ7P z3_o8+RYku<5vrZm4i2BAqleyCE5&(Si7ajpUNEAY(d+1=OOCmHN#DOkCtf+Fu%4Xy zG>(2bP+O5&Q7EYr@BYUPZA)}g%TBYUU!D<-b=N0)%z-YFjhp~R_yA*_T;D$i`9lRV zoq^BO_nEJcdRZ1UaoEeVpM1efjRW`prK5bX6gDhhH5(kiO+ay@Hc%|CagR0 zB^e*z?&(R=@#b4kjYo2mn>B&=PDRtY#VQFUNTf#NoZ|9GYPq^?0i zk(&DC=qu~A9PU&5U*J2jLcqBd_WJ@L&_NT+MnlObtsZy#TOYDsEspl%t0WhfFLry* z6g-qTi?Z*$#bRLS*z^z}7cw;x+8Ous2~SGx(nK10l4V|17Y(`~3FA{qH5RUUZumE_ zMW;5W)PsEoLq&;%2H{(`9VuW08`G(Gnxfy#v(i(|uX>6+Law7S?|8-^NrN(KFXF=+ z>+d~c{{eZ}BOF>QD{DZhFvj9hR52)D>(#|NIw`zXW@OdDfxx(8OG{Ijzqr2Y2EJpe z_VN^uYp_{YY&Eqld!&r(GDeV%;1hZxvHiTcwN^lhAfn{!++LEnTV^IQA3loL6IdSO zJk(z2Ov{s*St9g7$%X1!I*1=N{Mb=((Fa}6*Pp#j(oO61`|?z8=`N)=+{?Y;^n9WM z@YeE!jb6b*zE!s+gC@d#DRsg1?zW?eh6ej|UhaBz&9a8{n~RG0N|#z|a%V7{9baBb z*@!JCEv}J3hO+~GqtWp`G3KRTH>!KsQ@xE#`B(`IyqyD%nal9H|jCQe=VE&2T4Ri zQqQx-1+3PI#~tJ1!uB%o{v5f!C@U@80f6!4Sk>$~tIQ{z=S#RniIzGJGY_{|4<@MI zCEQRwkOdn%kYgqL`Fr7H6&qydCYyh}ruk06f#=ri{62mEww{KtNzv8jg zP{Vtv*AqfP!4+0@!VpPWx}u@}69E3SOVIC8R)J)mB_10P+)6yRBp5{&0tJ+fTLTGB zu>ExVKjA+}CUn}IQE0OWaGF_`x(X-V-VDWOgHjD`z-Hq;HzGFf&Xy)A;t!8b9$2mg zrI(rOU<(A)8frMjXuJz;&>UB!<&;v2<$SKdZ-I|%gjpwTyN0`ootSdyz<3dNp`td3 z$zh{Q!BujgytnM#(0P`EdNsD(3@%Hm8qN3yeQQIR#n?$`=dX3J;&qfloy?Z7x7jjI z_syiR(oC-s?Ug4pl(6EeGdFI&@*s-p^}jL@rANHELtC~)u-3?{Zo_iS7QjT2S+b}{ zxtyPqR*=RHmgf;%a~0?_iIkyf?<{Kg4D~XP5otG?MIram@aC-fVFB9`!EmA38{?}F zV||t&X)69zn3#s(vN%^=tNDV;nPsfS<~DeNC`A<_{j4?6eKQ_i5z?yejZHkCg?Kpsy56Q>0wKgkf@J4&TsEBV?2kZkU2t=HXjujzbByYU)I$|vTNVxM2RKc%4*k;T1-?;%vZ3=Pdm*!~IF zF!SE7u8oH^-lmC6>{fU!KS!KYme+!3uqBC=Vj?xkN*KINtS#)K!c5MU=}ZsfDrnxl zB%JGifFejKI%un{Ga*Xe7DmahsZ%gkXyPdKzBLqAR2gErQd`OlHP?*dplGIX4Df6E z0A|bh!TCmGZco$f&G488f2FPmRaY9cSNlOXH9o-ADStV?cwoo7UX|lL<3U0McQ@~C z%mqul|DqBT(mqO_nPFjj-oh@QbZPCJfG~_zw{iLFXH90z0X;H~dD?_Ri@a4Fh`Xg* z+in$T)ju-;Vt4)Ou-rO3BNO?>Y}H3nkvl(Rz*OX%lakC~X`u=iWA-R_R;g1Tr5PSl zF~{OE)Sk6YDF#p3pR*qD{{gFHxM!YNtl_npy=-=AzjGxu{ey0F?_hNL<ImOj z`i)iFh$7UBHv5qxQ6(#MZr|jQ9?%GHy~|{?L>--YZlIEzO?04e^q@3bsyGik!12S6 zi97C-iBkzbE4M<_5AsQ+A!U#Q*}i{{#Y+vI&%E0xHZLXvek5|3X5~F8Y1!S8`_z`p zQPXM#6*@=?D@!jNOWK5i-nkX=Gf2paGGX#9(=e2A>_Yn~iTX*6fTx9-^K%_qfFS6> zYA;OsRL`_}==Eg+iwiU53;ZwvGyg*m!p>mzzVb;a@^`Q&vhsQ_k9f_uP4az}obIsD zsO-54d1#yovgn^12j1Om*$^aAmFSw=Mze21C!%Pi@{Q;4g{-7mj&t(P%tV)$sq1Xs>~{S+MzX(%O$UVWyzSZrQr1=7K=+AdKiHD?FMj%;9|c zP&A1U%26V<>_3Sca6{^7T!l9CS1qiv(x)qR=56wGk@F4oBH%M|u&X2e$;t<4G(zZ- zWx|Jq@7hE?hGWcyDZoWdg{buxm}?|Z=IZ03n=Lv=LaWstz9{W6Hv|?Ai%7q_HMQb7 zw1?hbcAR>6>kmWt!v(Bl5{Nmy@Fv zDYRQfZ*%9nUE4Ivv9qpxL;pP9@{ovNiiS94RYK>gwTEkhcmy>Mq^@Lu_G6JMske=bX=SeNFEE(&&FQ=R16B6hFTkA}R?ie+KifD&`S zHm+#yU0G=21IB{m*OznO6Ie~WAa105uzW4e&ZGx!-B~__<e@ zGqCSznB51K<(p*4msjO!QcR1ZL%-H~4!&e9o6uRAxzCD^jMbW3q|QnCnB`rZ;J)t< z4RhFYePS1!(O*vZ`uX#J&o}$Ckl4^)ZBF8|dpyHs9R0r1xPj3zw1HjoX;QUiVw(OX zcSS^AebpcnZbOKj(JMPLMEb~UI}T9YYexx~P%bWM=7v^NRCQx??5)YgV-M`HgkSrkK6~=lH-GI|=0AuNsCfLf z-Cx@T{HyW56z215|K7sj{ry&??rB!V|Bd>C13={E)!4@z*(VQcGh0vwmGp;# z+!6+4e-|_T_YUu8-#tX~-g8zK{0?;-|0Rmh+V0#YUY@*fRn3q8Ry+t(s!iLD$?J!R z$+c`1^4sC}=zaQh?tdNnXJ|rqVS3rp`y-qkIy5qZZBNFp}iueg2NDvvZ`q#1lTRJGbh~h8!B8$I7 zHSC8Nru-Xx_y9t zJzR$`BOe`tB_sbnW)ae0*x9s^R*s5hTd833Wp7n;^S9^2m5H}_4V4$jn;+h{wAZ(v3YPNNlz z<4DA4D^qb$_ujw#Xq#+6qn8dHneiuD{?kAWG1Ao&hxfO%@AKJIS5J)3qi!qG`i`t4 z|0~-bIKL9_sD3Bj{rjiJf3S`6`yJr_opb*{PX`Z^43XKM4+LS!GJF8I%DyPc%M7gu zIUQ#iCk`K3?majv_%Y7!UL3kB&Fs=R@roclRscNnz!7>c)p$nMjj)O8Ua9uOn&z^& zYTgcJ$>AZ0+AMW=01T+l{ytTWb@r7Zo&u*z>!|+7<^!G*2KH#U=aQ5%r!F>?5CKVA zw|PCECCfOE>y@q?lkLVmCF_()j#gGz`DEE=-rn!45wirxt4})ezPMhW9uIgAx6jnB zKHaEdX_(cmkDbwD5wv`c7#C9Q*Z)EElB2B1+76$cXDy5hfI3@5JCk@69jAAg!w=w_ z8g<@fr^loBOZeU9cqmQJ`D;gRFz4+B4%J$cNBp0GHrNzfQ4$3wAPi-Bb`pvmd zOsZg2*chz{j*p~lzu?prWFl>O?xz>PR)u*XzUd@_@114GZ_?rJPBcKRH$TXxpG~22 zO9HLV-}I|mB~i!JP8mi@1z9eK8JQ5ldWw-#N&1Jg&k2yB%r2lZ_6k03yty!3M}BMu z40QeB5qHbcqn#+XLc_uIsA#(i*re&#g4$-wluALH@y`*NFqsS063Q);aOivvA>vtU z936wD?;|_XQezhuI_}{HIP=G;*xHLn!hL2s0Zr=zLeS<+T{UkCJu)fAT~+JQCL||hk-&BF7qn+&ZyYtPW||&YW0gB0YV7NDPFmf@?$5rO9q1$^hh|qk zP#f16xE8nANZlr#TK1aSmn_GBc2)B&jKgn6=(v`wLKp6dL-O*B2aY2&tcVMPx^!*L z=<=k1g$O`^T$)Rs;#NHeWVVlqFmJ`f@6RE#UrQubmdLpeEotFG-t18-uNGqw*KjmF zp`-5X+{xMS;UvQpFH9~`fWs{lIj{E>@|Nt)q|DZoK99+ApR0p3Ys-~XyMcLwO-$Oh zW>$5s?@?2JA&FRP}9wcUs-ISzQqmUd&lV zx~av}FKnG7qE1hvc!Bebm~D6b-~h7QQ0b#d*e8_TzUJ@vXPo%yFY#y>^~uANRLvr9@MWH62jSKl;T?UtOH&56jF{R5hIJ%%b z=TSYiT|gMPx|qKTd_s^2>D$b^@O%d2oJ#0*<_%>q4Ioet;j zM1>_Y!fkmF{5!@z)_kA$p&55jGqbknBlvN|6&9q683d=A@ zYL{u_74XqU_PC8Pf*;x6^iXKvl4j0yxZ#Z$t1GGsPpPSCv!CA43Dz)s%|-O-i(Acf zlA@&#R~E@*tO|62DdgH?tB!mu(j6i2@mg`TRepX{7*A?kaRk1NJyiUy!-zf>fFbBH z603#JF>{=lZa-cgWB_nBJ4;kP_%tB9nGAbobQ75$Ta%Sg&M~TIlI2eZ>T$(8M`!)> z6wtU0mPwP?lYGn0eJilEwLT-SpgJZ^r;YDd2ptH5;9WNTc5V*!di~m&+cduNA-1g)7VKN^+Sbs z3oTt(Am9iA=#VxNx}w1KDM>5zl0jo14+XCqR#%Tz=Pm-= z1k>8LRlqYhBo}3-M(f0ZnoEJG&HUwjH)Sn=09@D4b%yWXnUieekh2t|`P7fQ;i}*r zeJn~*j-xjJgyDn_KJ4lQA!)2^@lmj-7)}vOa;kprV^aQXN(Xm4G(8Ub@y;xp+K8tY ztIDV1$of%on+`D}vnZ-M7yz`hdBI3L%Q>SW$GA%yCieP@w~7zd8!XT~h!NHMz`gSH zOs2oFFik;E5lvdvNl@SCsLqEfuo2KLK9R?95fl!?h$*PmGI!As7G$FHE`Lf(rpO#n ziydqScJ(qyX5zJZ^fG3gr0k?`vz^B6b7DHHk;CrHCj3Vb=m_MVm*+e9kbmE)!XoIk zNx{p|lwzLs%Wgb-tW~O48~JAS@}0wtHjU#ro0nui0qfN+%(1gT5+VSw0v z0RQ{c$4uv6h-iO^u)2SXj;b~+EN)lfp;Q$7MbSBnp=HP!!(Vr41)tz9e)Ni#-UIi% z`l(H1;Y-en)DCVwnI>!H8@UXh*b|I(;)!5WEX5_xfqr~fcW{|e)wxvmBSE?AcLiq? zyBZL?s7^|Wait`}?G7AWe!dSY55K?9y8H>CVj#6b*4CVOTnkOF?7KIJsU0F6GJ>pV zax>CHb3;9JY(1BBi24gc=C{MN zPIc?e*-G39ZR$hjU1>^pug=;@A?`&IpGiAA-Yr*ntgfe)!8U`xptCUwFQs%z;xB)* zGk(oapA@AHR(MJC?CHLcOcRJR$fyi4^Or8-`MjdP{TL$|&VSspgQ_L7uHIKf{RF(( z@zb%li{*&8%g>QQw@OBr0SAYfzOM3qIy9~&Qh}2)5?U}mQ1!rakxGXqoiLJzqg5%Y z>u9x~rqQ!=Wj`Tgy`JGjZq{ygo~}W!fMl%9ar{il+Q&ML6$+xb6H^#Liw^q4cWk$v zs;|s%*w=8uGvyJ|+}5LwMaEO+x=KESy;*0EVvoy~w92*AJy1hcrl4=_kB)zD=s;2y}xuXM`!B;zCclI6KtHfjJmwGyR; zIz6M`Rovb3bDN#XQ*I%VOe{&fV{R)XR&GS8GDz(RG3+EaNcC%S?6igQJbftm+SOy+ zxy-e5g8ZRC{M6Rkh)JTklyv6+I~Mq4zc6i{mv_<`S+8i&5NUu+&r12&DzDqGt3N=7 z-&>lDpk_+64`AjIe#yO;TNNvb#|@~FGO2ig8^(~oA-lS={*fl*TSUo9ZQ>$<%d0B| zWWfweWLmk}s7UNahd})?Py0~y@{IP}BaBjtlSmIXBr9*g(nhzKKGU{=W;bSUuKUCY zU!wld;HM+3%18WbCkF6JlKSnY;P{kpDul%UVMq6GEG4O`A5%UV?+bF`o+c5LMVytB znt#&&n@TKyZ>jw0GqmV`2t@u*H2cqkwe%?Hu{dH1NLMT=+#1;0`Oq&bNvP}_Dux%q zC4V29l(RAYV@#2bWTfF^NnO`v>O6m9#AB(dIVokLfUp?%Pz8x2*rp7ugdp`LCjblbQ5$y|4KaHD}T8|n-rxelL+arUzdA4e;t_14thkxFPUWW5^ zP!5UV0&`_j<^|)}!@_SQv;8C2G2S6?+{mvxm|7R1`y1OnJuY|iuG?KtoEz2+pPK~y z*9P*N%=K=j#o=+GjEmsO)*rDZi2eZM|i4m)>7ADxD}sY`SJn`SD3sV?AH* zPXJy1v}%EA{gE&8lkOY{P~(Q{jJ>J(>wrqX$#WAYhCcaivcHS}kDK62 z63JsMVZY3|VAuCsnao7*cse&)_i1iyC4OI-r9xW&<1Eqp|GODcg{j}eUrkpYYyR7% zY382K8NJE<#p1pA=XI>#FU{x&FV4`WpxcD~&cnw^h9_D+X1A%S$WNgysQxn2+OcsC zJ!Uc$IIa6Rtn({QJJU4?Jj zKZG4W6}NH$-QA9s`8H*^uWjw%$;#X$Wy1nbl!-FKd{42lB8NaqPNL17Jg8c`{W13P zaqjV`-h$xm-@T{cU!pk?S)d5e4@^f0-Qvr-W}} zdBfXn;#oJ7MDW|~iPHn0+cZs3 z83w@Sy)egSU5e630bNV0on31>zY#FHRJN;2rR)+p0N@0`Y?w3+ofq8!=UQcC&sAWR zNZ$nlXlMYA{40h1d5Bj5hHOvYORDi6cU+kdboZv43PJ12`vhESWsF;^UI{fX30kQO zYS|^3Td}c+m}L32!#NW550^xnnnyff5+Czze5#9i!hFPW7+10(GaEsCuKSAayS}_$ zLUr<{EA2d*z2h^>`H3EztBtwQ3<7>ax@hDipv8Np@+Y7(A^6iO6=*@w%5qv(gE=QJ ziG|yr-?CSmYOeB)qd?gQX_ML`jTj0G^W1FSsXLY1fpVeMmPZp zDWqxSGxAaJi~$B7HYn&=ocoS{KNwB6G;uwy4}#bpw&N-w@5`@7wO2Y{f*eD|{Z1n1#$J&JQkS zb0=c~pkrG~&|D?tM0i?em9C*vEMvi`EqFmQmYp!!{8`%_1jwNzy{KKJ;^nrst=rA?hItBADPB&{AX=K16fqXs2uB?8E6qg9MhUyPzdOp=eSe(eG9|B z)ZmSv)oIm@Rn2wTv2I1If6Q>(uE~%+{TEnHw}Z7o@~V;yc91!9##Y(Q3LEtcl5-}3 zt8ONyfW^8@7n=005$)CJsR4J_5vY^W;1g4#6Nyno<-U(hW*|DkMvxlq`-uh4NE=cF zL*1iqQW(DJ8k9};@2Lk0dTT_$V>u0odUZ`9$p_@kOS;%1GZk?VmXc}Pif-Cm_BXO9 zKD1A!Z5;(}#uk#gyXZXase9FJRij}lEWQ@{=2E};>u?a(DvR*&M&`SP3v`|mQBn11 z;i59@3t~Z8{oQ(=ni?ieg_#he9BN^3u<3_HIC>+@5;d7#n+q7Uu&6}Pip(ZV8-U9)Q4mwE%eug^RgTRyU2S>z>5JR1Ej2kxLUdKFVYtfy+Jw!`CBx|+oMudFi($~(nr#^e; zVXw2RUD%F$zg@xVT2`zN*bIdm7W8tld}u@*oST`Sa#|$KA~7WPHN_oxr_eQ3$%E>d zw!uq|$F?Hw0-o&bXVIRz_k*Op+#TM=5 z#DYPfjY@rUT_6~~N3bRrjWs;kuuJAlJg*R2eToaH^`si|T=6i9jS73OQQ;F>KB>ou zL`6xfso^@dkF<%E@aNNDz`QW9zsE39qOpf-Oe^rr0vlM$=b4UeIHCXHoH_VtwXHzO zdcCnTDPwhybKJU+<>XlN)BOB|PdeOnq#12was-P(<;BT=JU%eL7xv+ate6IiW~D&N zuy`gc^!1_Jhe~wGK#tzfbU|7@dFN2Udarp$V8ZxaKA7lZ4BZ6*DgM>ALgWj}ZQ7Va z_VST!g53~onWiQNj37()MUhRB2`~PLIB(&RC_>v!Q|y7SSDmLZW_i@#$6jgQ!t*DJ zN?%O=W^+9L-RZ7OviASL14Bc^{=v8ZE&0)ZRG9kPZJZ^M$G3zlQ=z>+>=g}5-)FY7 zhgo3}IQl~-G_r$4y+N$jjfN~U1Of7}k$uyvZD?JhfNqW1&`7%s`LR)_KJCN+nHyE* zH!VHcrHa|XU+$Fh#9Dcx-RBKRY1)F=+@%?C{6t`+{M-n5XSv(hpz_RNMEh%ciKIh= zK^t6LTGj!wOjsJ?i%uJZbHKzj)ocPMMr_Up)PnZLU0g~SMrC>~4QTDd4k1bO;kFKT zcYw|NIc0`em9?0xgBp8hJ{5ZX#p4tm8pV5AUiAD>y=+zsdt-Yg%G>fwvm?QR(3wP^ z>=J=0(JRKU38&-SCtxDnd@$4r{B$GL`lFAl=yH(dvSlM0ddXaCEoP07C<>~}9VFF}nlc*XFaw;}S&*jpr^Rl&n{wz?HmR6f z-syxYZnycG6H+oNT%P78gYQu(?wlJQJe8LcVahgfH51C)>&O{zX=(5*D+Axy!W!pl z&pc%LhGe0~W~>68__*sksGt2@+fw3juQb;bbQaP9diCYr?u}Qz{^Z5Qux%M%uj|0f zTGfJ;BoDEjwE?4b@*PKjg9SsvL)e#P8k3!8vD)bTE=P4~g_G*&0`D(G!uIXLlkG>j zH-%G-%oX^#&1QKq$BHV%*S#_N(Gd9=nK73~>}cwZuxC{bYq6<^5$*S$v(=3qM$DYlhcnj@W&I2dJrG<#JRMgd4)j<6*`4Qd@3)T4! z3?PSBC}Nh9OSNK~Lu7VVBJ;-)gvE*v&D#y5>L$WMS-Y>v+ncRLIgP{RJGOy{(2^2= zgVcf=Nr$|gu_K}Y5c@<5|I$R5!-l$bXLHs_x3p)up0!QKsG;){sRl>t6x0Mr+u?pE zK6c2S!+=!U^A!ek0qMcU04^>y4vNXy_Q~NN)H5p?wHj}Cke1KVt3?+2Cyu3so9<$z z0OFuaL(<{Su{i6M7PkGUQjL<_&sC**VnBzD`_zx5Ek2%DHV~X6$gMxwP6}vyY8=Z) zub3(fJxFx`aEx%&%8TQJ9Dr&UIbu`Rsae>Gk{qmP@0+OQ< z-Aq!&g)%=3H=FJ3J5LOQG|DSOuZ2PQWz$ynB+)(3O*n+4CN`50$M>zJ?H{tX*veO= z!RyBK7VS}~xh`~y{Ga6}>Qkx8R|A5mMgq!RDZfUT(3I{;w!C1VEs@I$S161rPL9sJ zbR3TkLx{&2%U$x9OzzzTA;(W$bEPEqI$qGj4LmLfyfQ54+RoiGpbHnnW~VMP|ES32 zhrBHji1NAZj~M^o?J^w%Gj7KBeukN+L+kuvznf)iEpo!|`wh;LuKWw*qi}x#JsQck z_TwIC8o2+;5mSqdhT8w!==_0BXP&kpf7!n9427hiUp9i=o$)DG_QbZyLS5O}^alT$ zf4eTmzS?8&<5EkMhKhi!zHwqA z)7HY&r*!LHV9O+F(Bu1q&NBPRzQ(z{Lf#I0%dhFSz3ISouU`g7DMHv*{YTtaDN)u% zuyG3*%bYVYZUnwvY)cdS(j8!@34q`j=b2r3XtU;vt(rH@M0N@JMn*1EgRBpLW-In- zgFAwZp<%+_b7u348)-94#)>K$Ak7WVH1}o5+_a0(-O1Q601)K4=Ss?+l<7OB*=+~k z*l2YyGvzV-uG#!GvwuF$k%0kdZ_aNpot;LX8jlRg0Vc87f0N<}a=mm|sm}_8#h`3o zIvzz0f8CY#M;O}c(_f+p-N=RN;M$@Ky zwO0=)N#n8^Ry;A6ma$~C$mJR3MQLGI@M2Z3fAt%Ts-gk1Hm}}9)`}^QhBtX5SI)ztBU=6IQB`yOg{J1Pub+>{ z6(8jggw<;1bkoFl683&~tvV&B)Lm4>;0*u#g{Rzl`U|g}Baj0svJlnTOyNn>hxAoa@XJW8zh>8;66ZzuBZA%@3!7g>ex;bM` zMVX8w^_uTkEhDW+tfIh4%dt7ENZIS1+JGs!>AJ%fz$b(F@p`sm~yU z1+A#tJa7(6F>gw->Tq${TD&;Kf{>`MGKgR+3mBgl{ls=!K}nzICjewRlDm#S^p@Vo z(wSXR8utx%S4Wx5Io$o#y;bUD$0K|k9MtH%dG-vGm50UlT18RHHTjCk?j>osK07Dn zAj+Wc^BAXqv@9mq{4;BWeg}MIF;v+G)@f<tztd~b? z9C8NaPS$qUib3b>vRYoNXkm(PXSh&on0gZ@lj{{kgn_H@q+zn1H|lrF<3{aLV?LLu z4r&p{V94M?fGt=Lyu-=(2cS)^5BD&02k2qOV)l>QCdwn`O4Tqt0FF)gEj`vQxt}onwa8u zo;O6VSnzw_4M7K=Qox?bRQL2Fa*)UZN?y|8@qzBOi1cXc5pwp)-KNWQ7@}vA8$r%e zgOnah(Q5b!=&cYZ^o{d2+6Q)U9aXWgHq6edU-|68Vrl}(aOQB5`U{>_L4%wgh|mrC zw!+}wB{jHBdcMmqXAILOW)QT&CMW&E@G&Y1Ste>~$SZ?)XU9%x)*snn)z!hpeBHy~ z?%Yqwqs;OlGuHZ%?KHGVmYDS@SO`0Gj#I{BI692VAd@$AQ(E`DB+=H+*=vY9YGMt> z55gA%ZXoH4C)JX;U9SSoVs$dSM!~KNV(PYW3jWT;vz(kUsBHm0fo) z#M{jdmvC%W@Fom2nrKylnqiW8=R7nv8f9FuZvrR!|gQQEH!82~8=TdJcguuJ}bZx8Hkw?t^JelLRw~JDn6_yNi@L+@5tXKu1 z58|E^2!=P;6Iyx!+uK|H%wn;*?kh$y8AepJQB8*yLc}jB%n%5&<#Y};F**|$Ti6S6 z-F|X`p*x+FLO;AeUyl=`ao9dw@zdM6WLz%rI~V~$__MMy>pqJSE=l8Wc&n3Yt9+iB zj1f3MaFZE~TvJ3>gQy@du&*;Ci@YebT3T%XoSQ-{O5P}7*Dj5Sck=(7b82ktpb#>yYArmLZ|R)fcvg+ z{1;&}4^OD@ptz&fF}-6SbNrBK#?= zl@ap-3_K`%eDCj@Md_91x!bu$IjL1*pyHa;lrzRiLgv;(fR}?52jW$?u}Dt>HLj`G z%!MSkQx~KcVG7m1z$N@&?Y(z2+-u+O&z2xj61@!x20@56%qR&_NAG12L>-+mLx@C) z5uL$c^xk_f5hYr*V6;KB=p{%(`aZMw^X&V+&$;(~&a=<&IqSEcbVb19=WN^sD|qEAJTW1uZPF{cmpUt~R& zVoLnjswzKwrz{>dG^n6RA;Y#od5Oy=taEjFF8W8c2Vl%S#o?7(1n*nE&*6%wF8jpE zI|r$0 z_j>pDhC5;YvmFIas=Rzb8R5b?+nolR{p^Z;>YVKf9)=NzTLDQJ7E#F;f+(1v%SJg;Ih}~~z9ILKUU8&{OrazsX|RdYMW!$D5Mw>x}(TF*6=lTVKp@>GObEin>l3Gl}EG^Q# zb5W*tHhd^#eKcw(c@tLAf`ZzL55d@Jj8kdtH$?6GKg_k~_k$;C!KZ@6=6S7;luh-k z9yYn$ZhHr~gPu2yPmkzLWV^iV;qAjT^BVlwI5k3zH{&Gfwx^Spm71F3k&w%|u12}X zN&kc4abfoH4}u>@LyoN7!qKD?V#sUsolW|(tDGuMP9uQiyG}IhT1aqPm@nehd02Tx z;D0}>@)v@AjpzRpe*2%5UgCVd)P2+VmBi9O^q%w$_>BYC+mp=g|J;!M4+ts$a~Kf+ z!ZP+ReyqRsOl|*2l(5dx{epk=O!Xc9NR-4d^YT@tVbBt9cb}#g6Y?Qsz}m^D6uFd4 zAe$?Uv&gi0yuM9ISt$0xnB}U7C`WQ3*fUR@=uS=)59OD(FYUXynL8Ah#SRFQE%$9F zg-J|Pt`mfCg%8gIgRC!iXgS=+gr1IQ&q2ogJe>!)*COfVof90rXwz%_=NGelB+-Sz z3ahuOE4m2MVe3KNI;ir7n7J*?o1-gqeSIhFGrG%Rq}$U6Y2`-*e zAZer3+**{^{F+Qmg)J_29@sdC&QoX#+!1|bm)yCsqgKl$(be&t z>#&;eZ8jz%hpmPkx1;gkWFC7aYRg@7Z;VN7kB(EJD?l$wylUdh*P-yoOUjlsCYNXy z53-Gfc;nuehx>Ot?@ULPMtW}th*H3B8_BH0hFoJ@T5v)fDNG;+b82{`7XV5 zPFV7J$)@`KeJAl0nYYp0_ z;yffwAT&e~PI7Vxh;T_OR<{wM=keSr-2P_L{7sp5{u77OTC=RAi;T!tkmIH68{+7k zIk4^1yM5*1>kn$!g&imMpjtF7o6fif`Zq_`LOe)yj5kc3u3!F9Z4uu6M?=BKgC;zo zhPGHr&3Y4UC&1S>0Xg@{Wv{AS;LND3UvmE>-2(M&z4u6qsyO+=bMr^F1#i?E^s4&R zRbu&e-RbyZboy!e+4()R+cw-fa>Y=pz?0{gJ@{E+J;T z2l-5YKzGX*18u-~21ukduPmc!YtSGPj;BOjVWW6{c-r@k@5yTmQI@L}goDQjyz%r$ z!I*xdyG zqDbPpvuPd9&N|p!NK9j?jKpOxid2Tew{5PXca)nt`7E^pYtgu%CdT*zqQ|E$e8lGo z_$3%{rH3<0Fuu=)_k1uetwBFiU972 zFlh>KTL?Kh6qvhhYX5ouX`#{g+IFHv-M^6Z{MS(PsF;A3p!Ti!Zd~^#_u?`qkSfU7 zJqYp2fg!cXl4t(Xl(7;3e;DX>9q5$=r-Hf+$SNu0Yk-_c(+|81=j2KY4dx>`q z+zfDwl+N(t^dB^Ol!~u?e7_X8=P>)KR!=k{gsjo(M~1tG*sJ)9lBT8Eqd% z1o33~mE^Ziz=*>=huc2>Br!xS9;b&w^-c#0ii=qIdi@P;b2GirDmOU{j|U-pnn^`RaiZZM&@fO-g^qg1>b&RdBF ze6!|Z^n2?|CLk6H^7;BYRVGO4AoCEn3w?6G4ZW`h>mV4RP*vYxz6z*v+YAsvSV>UI z_fl!&rIJbbi^CLo#gS9tb6g%j)ycxTjs#$cv$vky4Tfs_k`D;Odn!w%tXY6J8-8vR zijy?f5f4x~C%e2J3XGBy!!}aWQlO-42}tfzYKOWd#`n+}v+KAxs#207yQM-*ngMj7OE)UiD{*n>wgFFk3_o0c$6`*{6F3`B#8>4{eh7EZ|uY-I_ zqcz)sZ=)RSwF+gGy=P)WLqDeqmBiWdKZt8 zV;pkswH0NL8($==LmtuQ2&inpHWx)u_kI|bPS4Ha?{ZjHI59C#NmdkHaP8aQKqcbPMIPMiRaNTl@)_WOMOn zd5q=i6pv8rCm-fKw~X7L=7o0snP0|?B~HYAIOLO%CYSwF6Jq;Y73-qXy9 zPO7huL&P{Fn~S<}B%F95PK72VOSnst+f^yMNGDdZu)kwWC@#fnMvklV=HDr|U*ugHkM|Cs9f1ReJbdRy zoBMFl<4{Wz1MaHwXmcUJnbmpPr&I8`&*t{Es9>hLSBnm*^>xsjr0;3iP!NZ6?`9mk zGJp-`QUNAX1foSP3b+QG|2zn1-ab-!X{Rhbjwp=HC3Q1qLYk`G_J zB<0*xd(K|aQexSZcEu4s}HxK`sgD9wAPRsYhG958{)-;lO#?+A5Pfb{GZy0wk9 zbcnCGo^HvN-~LvPEnoycl^ZMd?xbhCBb8iOwT0D{Cwf(FxZ5T*eU7SqHYS~4jI-g_MV?Kc-k89U=6GMtPc6Kb*4vXN>g8r>41nzBjiwo zH}E{P{7jOD_45jf94tCU@ED9raaz@Yvm&L*sQf(?>Xz*u@f9rH_8#KvjyvsxM%6?V zsX<3XSl5S|iYc*Izb-wStu1Ff?WOK4Q5(d3--C~!s<<4yuWs2fiVxHxIoPTR*~NLT z3XMy`AdNp88vL(us#;aoelA%EZoGGXXl*Dg?jyde&YJeRypq}!#&5dpT4u?aL$PE@ zJ&_PBot#MWMcqNn1+wjsq{+bC&SO<(9&LY({mWBr;S6A&I!{=)<0fcT}`OWU3|29cg#x^(|)q8 z&tG<+wMOghwyXKiDN+BxYh~11$7U>1sv0sD)7BZqoMJ} zD-J4Auo*7-w`n!?PP9$;bJuXR$Zp89Py9aK&nkK z)R(dL{){=iRRr&KU4Alvx7xqcTDnr4$i}88rqES`q1;AC``Fym zgakDVH)UVKaD?b;03?Yv(E=vVODE2s)GQe_zv);pP*&&=ewCb+#Raf07XaLX+us&0@f1pYbiode1&AbQ2Cd%E@A7wn9Q zrKLgBsTuZe%cdTSkupwen_aB;1}zYp+>iCGJg-n!M|JdysNP0Er$7c{WB57j+BOA> zJiyogx}N2DFp^%1Uu4Wf^?X3f16%U$bIC5#ZI`Iyndn%@>XDua&a51=Tswq!M;LC! zvCYIx-}ntxN;9ZoMq^PhFZB?Wl+;7s*5q)m8zj8vQUrf-92N6;gDM+0-#9A+Yf<^i zVhzO34YjEawfB=Wb&^PBI}3zR2=Qs_tHKxeG9R@@GgwQ_BAdRo+lHA%(iLUZ*S(-v`|(G2w?Wf>YRm3 zjj4s3YuU|O4~I(~aPvhDN<@^rt}0oOPvYH2$dx($nTC>82KLw310(_oM$hE*ZpOx0X~?QcbObe9W5QN^YPzQI z%79=li$Jw%`YsZCH(x&tE$JZnqna0tTl%K0chb|QM;bjlCD!2>Gi%=J9BFM}anu5d zI`0B)7B&5ucx3{goP$Qy9@DJxwt0nT2~0-ci<8>fkKLw{20s=_qhgx_e%Bom{r+gz z^n0+)ox1L5=fkb;lqMTNAtxjPw)*xJ)dS$2Q^-Kuq#CfMp#=a2g+p$+`urXeX|9 zlD@a~x~T`M5tQ|L@Ow~8td|LWTiITgb`ExpMSjTY9PzvV5FzO{}-7LkT)@ikPU;F@0%*Pyb}&45YTMM{1iTJHOu*0+wN#&fz22NgD? z$p`lU7hFo!F2LODl>7xHx$wgi3sr*aT*EWWo3kNTQMOS(d(-^zq}W&{4?q=$S#!uq zMhYyK_KReS2u>)*bc#T<8dp{}1t!Ja*%%UoN2 zP6FFfr7jt6rD&fuM*)y}(Q~~=k7q+7VtR#16*WaD^Q0-LsJLCmm$xC%9xDp=Yz={p zorCC7xBB58%m?8vl|mQDOHJ2#gK&MD=!1aERg?AxZ1?9Wqgxgqw_5F23hoM7$~Qfe z_7IUJni+y)xzv;76D@d3T8=;kTZW$ng+`0qtWIng7Ur8vX%T=mvL5+S=!4}J?2HG7 z-(+@eczjoU@C*B#Gy5`(((UOdz$FpyXrf9{x)Z6)U0E@GAtk>TH%Sc#(>`+Hj#Fs8 z&WQU~O>rkT}BXV@GSBzTJkPbqf)>%R_p9dWw!Xhx1<}vUm`pchf8eQo&su z+Mvg4Z^xaNJeH&Ur6%2b8}}@uMAn*c&lj#x(C&6VZB^}Gp|f(S8MRl4$OVXjhbQ`V zYpfovoswF+e>zRWYOC@QmE&~j`}WfskX|lPisJ`WPYaI3Y~!Z`Br_l^HJ^vR)Uw3o z6OnOhZDvzT@QVxfjzA5`xOZpL(mTx<@0P3SG%`>IHTcJaw~;jLK3O|hc^Bz|I8__< z2Yp|O&&7sZ5gX82U2`(LkYw9F6qmPQ+)G7GzK$weV#_1~s#!d4(XN4^Gdlqw!S zHKgU~$YeuwxRbYWh-%+eAsA?a#~2xV$rw`0`STX~+^{I3yC|My z-Taj#*sw6?b09cIl__`|o$0d2`^-$wa>jy2YlTCbM@D6ig}kk`TDF~w&%hXV+@M5t z?5E=)+R?Ym>4j^rN}a*XgJKb!12380*?(~iewf3$w-(RJy08(KAM2(@rnp98$%K0$ zGyHtUY*bi;LkYh$<~_W#-!wBIpphT6Rp#w>#%{?^)^_^&yJn_etMT3LmnN5u(@OF8 z50Lf`eH_F|#^To2dMKZiU_j1EufIz09l+Bx5l<=UL7gJr&x~e`jg6In`YkzF=tRNH zvee#BXHxg}mlc+D)>C%nqL_G%CC0?N5UM7+I9k%>?^b4tF_J6{oR)F?0)_8Vu$iN! zb#L&7CVpC+#&YFU0G0e5?&WszZ1@p3T+5IRdpder()-PcM(hFA^wX+UFGYjG-yS9|?>`~a zqXpKMcjvGWyM(OEySny#d02qG$dNbD`>48{-78qTaWbfM)Dv}O&sCT^zqS8zMk}YU zQ4C@y>PYI4bSZsQi@=#7Dpe~E(BRqH<%b`6ExCy)aSI=NF019DA3@DJ1+Yjd>jDV zngB$T*X|kvR98bGzzLw|7Or>K+;q4`a9p~ciSf%J4@@t7DaFJXd8TK$kDbYh;N3~@ zlDn1^2fr;kvdu293^qHg-0Otssb5w=I98ShgAscU34ZHb5+`d^YLDo_=PYW`+E&^~ zUTD zu7hc*kaM4I8(MhAEVe!b1bo-mb10ji)6wIfHW+fRDMxNFODCNgwU2#KV1IC|Jst3A zVa@D~f$mndN8f6x+p(BMNl|TlM1i2NYksTF9ZiH!iP*MStT%g>o+w%4b2E1KuR&XD zGgOV0`$B~|F@EzO4g2OOyeQehaL6^tpj2&PLA~tTi~KZA)w~*X8~!^^Ul4cW;8i+_;@mO1sfJnh)4(GL68ty`zU!tzi@5zt#!9&;tgUuEQxcW z7+vU3hbp|;=(%omhg@72RL8g6LjiC)u4SS95S^0s5S+6{*2}94eQLP~NUfPRp`+m| z##X$h+~30q^B3n~e5jSt>ormF>}^Q|GJysbRP@{LhCI1o!ai)!*owPRqCKvCN}U|N zlr3!2)AUeB@xG$Ge>m$qiK_QflD+Cwi>`iXbO8qL_zZMr3JRy?F0A2u5kd^ttqb_S zQ`ctCDH)hArEXufjJO3l(b2&P+*Rsy3g^vRJDb6Xi5*f$AnS}jRYxCK`$!zrR7#3z zk%sJ1yCFJ(ShCU(V3xgbg(|Pk4+UbrR`&dP0ng3+bw|>1H0KRz>+`>=(OTcN*;mK9sy-0M`B;9Z1C9QLv?_sBZ zTh$NHvw%)=wMS5QU6Uo(aZ!im5r>mkNPD)v|4LE{ny%W4XOH$*mNWmHvm$DbR-&5y z`e1(Tyv^q$)^R{Zv{fAb0zW%vDaiZ0V^jM=Rvhay3_p}RJFOH+dfD;K==OMiS(uF2 zwtDM@1I6`m0eRgkllI&?FAjfzrXxOvl?1vt44$a0&xiPuP6P=Nu&i*wg3?kN2XQI! zIL;8r9WS@9@uMuxCbgm_H*#GZOKKl=WctJ%Cl|^$qgckuWeY(nekrpu3ze&GIH;xZ z7ubyPy!t89n-{|AWf|U|VPoJk!sjaXYHvxh&@Q7|#66-=pMs6#Jf32?+e~g%dRycJ z?gpU)S1QL;_c8rl+aMpFgX&{@Y$;?7jFp2PhSe98z8F>K)d?mjet}!wWK3n8fJ@M< z(_+-+Hg;sa$9!$HRUb8`>52m1yTD!7D&voLH>;CUQtM}M?d1#R)0Fu6_8!dk4($;W zxt0UwkTHdRdN~s&@}4@LSCW0bYHw6&@Z^NA>+^4vY#zav{N;Vi>zziK&rI{ZK|HRg zH)-AK>V0=REwd9XCLxELjS*K{&~@#peo1dTEDz6AIfw;{sQw1!wl%JR3DWiWzOS?alCiVCyB5Rg#zE;ya=?t8dOTHl34}HUU#c z0FGm4Lj1Ok_z$q)y*rbitoMZ(jDp_ja)kcN?%D6PzrT7p;{b{qQ~rnFAcJGCO^;TJ*WrM^4UaUPx&ntOKl)BWnZV-cK@YT zS;caQmRR;K{NAr|T8+#!aVu>%)K@j&)G<*CphmlV9T%V##jg*a^o*b1Y8V~BsyRLa%A`Bzg!Qx z1si8%wmz!Gfi1iX{Td`KSq0#T%%SIO8(^-xJS}hLr{)LuZn>84o6i(apcPN9xg_dC z{~osg$x4a+kBOo`w3HS(BEElC+x=hu&Il=;8{F03zM~r;oJ!-&sB&tK#j7Z)p5}h+ zH<`^=&@0_{`k*Uube#2J!Y5}!tb43J5@5f!6W-KMcwoSEiG@93kvMx%izp8L#9f@9 z7cvBv0Z_i95PMoNs8i?x@iUxBmIIQs+Awg%Iq6#G1)v6*Gh6RR$M*(f4kXjR1?$Mk zJXF*8{LW27A?(3moXsdNk+0Ph+WGL-S0uRj8Y4Q_$RB-w1$KH`Kk}lg5;pA=-3p6| zZdpDy8tsZN>G0*xZj^wTHc&21pG?p1vO#Em&U8Xdk)T=8g*GAoA`?Ao9f|l$kgrPq zv{q+HRj{`;QB0Q|Uu$X-T0!G}jP>f*-5Yk@iXKg}0J1_$>-4x(;e`av=y@YmEhVPD7Ri%_q)8I6&wb>LPUJg&FMSxpzwA98_}}1kCGN^#c-SdI^Y}OI!fRsVOtm0pt&Rj zUhA`F(rHMY^e_=*TAy&^#VEiK7&R+$a6n|7zc$!g7;;I%K49)8pjig|V0HTZSCU_x zT#xzXEz%}!t}GCZDD`DH;wDOs4Z!;YV93l+>nrCkIekY*{CNa!P~tKF(1_cdx#V2f z@dz1}jskY+^5Xoh4Talvg8(ZHdp&@Z?~R!jlaz$ZZ2&W`*(asf+|WFr9K?k4RC-i1 z^VHJ5o9v~JI;EIE*-*KMWj=1e1FLDO5FlOU&9zgiq{2nn(YQ+@Ibb-IClgPFh$syv z`)pstnf4~Ol>)71HkI^vd;88)8?(uc1>9~K+!}aTUX9Lw&)uAC7&(-uHu+W!^b7mk zIpxOt?P5v$ZO4v|9O-GXNe@PM_ICkppA?2_o>*C?(E^kE6RjJBgU&SLet3*5SNXGl zdjV`v^`I_E#Sm>_A|sGcX1Ctf6%Zc=~hg1Bx~qIccR zTqV`{ZslV&VbPem5y^!cfLEPBGyqHw_MvEDv5g)hs2D}&EqrZ(3A^lmJ}i8D z-@14FjzAr4av2ISZs}f(v9xMN;QIkax~y+oIszM%l?H9@d;k-vQ?GZEZkN%~ss2xH zcbDA$kemNa)aMk?Jp3nj*MFB{{A<_C%QV{hcnpUDovP1`-BIVj`dOM4_19jqcTYSU zv(5&6at6ISk;SRTXOK9DQ^+Kqove4ZXno;9MRo=||xB%+(9Bc)dOy~?} zpz_C4j2@zhI$e^VS}qWhcvV%?Pwc60bQqTw{Trf|&(7u}V@Z@V!^A^Jl+zq{tqpX~ zz3ih!_Cy?}DcYy)Mdvune1Eo^iI#^}XH4M47M|#*(Kez3kLPLS4ND4yT;W3ePtxt- zLD{iusLw(vVYgFm=j50dinB_=-LAou$-- zl1f@6VRE8XPYCB9)t4=ykO>^-b*Nrx zuprKMc#F#RH>0l6PMCC=q)g+XdQ2*Ja_%H>JfO<>J|xzd<5Iri*G%7VEAuqxf;{y5 zh<@4qU~K60{STzSh{&2R0_Kn}S#DE6hwQl>Zhzz`E09_nV)TlNLqw6*eD06h%t9Ie ze2i_;W7x*?3Y>L+0V__KC-5kS|^X{i88xIaYbb z3ieyOt=lpR6F6nzcV2^XceR{#M-kGpET1OD`j*e+4Z+om5<6Z z6__gLyz3EjWq6qzf7zZ+tmf`|5zbu(^qJ4)~C4BGOwm}^hI%YN8uC9a>6@B z-meud9?c$0LB%}-(a`EsB>*mxrFjx)4>^oDJ8hiZ$j4?>1Z|G1i#pBd zIeVnSD}g5_rqwYojkL^NcDM5@b8>2A@FPGP&j&vYcEvdzaz>KDhjzfIjIF72V;jcW z#ji2eEwMTtwRDrnqF&}z z>m?KDlk1p|Dx0mAv@99xE&BJl&c}8EZ>-L?Sx2ut(GA$woQuJA1aq>C)daB_7zNk1 z$2jO!BDZk`SHrg5u1iT;P{@-jtxvuxXjnwmY4ObkUU`Mrsl>H3>CPjSO66L}BU!wM z6};K~PAp!C`WI;)AiKRP3qIdAr7AM+ThwcuD6Fn+ZjkQk2I$=OZGImVV?*HGw9OLD zp-E~tm54@va&vgM{I0sq^scF_Y$EI0n2c=5K?n^mI{61u-12>iJ=6P+AGt(R=?d#; z0vHZ|=5v=duOM2mob9%)2{~TjIMOu0u?VFI>6M@T(dkg*IgS)}EYT1u!JyHoD~pVJ zvEpOg2_z0-YwU;AUOP9Hv@Jv3oPnPtE$_t?a2-HGPd zZ7d{6umm%@HCF@+FeQv*JUQ_HTR64R4ZTS#lkhZTqkc5imBHPYE{L%%HB zI%9O|THV}1Vhb+tg`=Ymjok8T`&?%K1YXFRuAalWL{Xr~Pn!p-Bi}g}h24$)%|%5q z7JRiBCmr7KY)K8T2i^e=;l0S{DxK%g^Zu@6{|mx19-isHq-*E>BlGxUiYrEPpyuB- zivJ2@@aKGkTdoh$MTvyx(ZbJBlPiAoBRjMRp?>onH4eIxX^9^&|X zOZfIiT8ZZ4tn)Tyo$$jfeeNk4FgiFu-Ff53Mr0o6T*A*7M731y#mr|D}ZI*zJ1egSQWB(1-HT$q* zy8F#W?pqAI<955*v{$%h0Bl~=QWSF4K~ zsRp4n0(OhqEJNMHy-*R>BsQi0F~s^yrr@OluTPBmp6Rm}d=4n-+hqv=kf7TmXxtm;90UX@zi{CgKOI`P^jfDI&tGxWu zIKi|1n~0Hj#MssLprlz}xydA=&S=PR&_JC*Io%OItsVMGuG*h8bTS(Mp?YtBqC*yS zR2}-U0WZ-$;oum8?iCDb&Jt_JA;Ani*C~Zv2up(bj^>q*;?885>x_mS=T>7^-ey1I z%mJ{-S)K$d1d9^exC$z#{g>tW@b^0DR8GDtWKMLogMmSwk!tRXpH3QX>lE<#0E=X~~(5UE|rfrZ}QVx5nWl4hVrr zXDYuX3x|mHgj&x=<6DF&j%90cl06bydCCp2&vv_D3)c?c>kbUIMM&7{e8J^iYD&_E zJLGG>`ScXqLHi~kNXW{Dys3UgC!i*%#KX_TfMO_#ftB1`_Skb;;{EltDxc$vkEW`mB1$8rJ)B0cU2-sp1CHI!1;+uHWzHT?zAk zBcV&dH1Yt&TOnOJa6{KVF#iGJa73@VYNoJC1P>xBY=M+ZizMwoc)jetB3`?fIa8gu z8_(%6$i`KOjt`jhaQ@+3`~CZp!S{*)>FJ}1N#gwEfE-R( zCyc|Jv38yw-W5S>ejDkalrveK_ulq2bDSI8MyBpJ%lxjf(2tbw?v>}GHn|(_|L{nR zvr>{@`dntRbR$qk6Czk6HE?Enciqf*->Ob?j$CDKpld=r_lS#^&(-x}ekyZdGBB`% zyTz1DgOF@f!a%mKoJ$?|V~I0==yLl+4eNFgDgTl%K;~8%Uqx!OAuE9u?$jeeUB?3N zhaSt|uWw$Yx8yE09zjKS&Yq%%fcimR+8^VKq_tvtF=^*93t~hvCg3pU0%6X3Nn6R3btDK7`F;6I%Sryni4 zEtgB>+;5BQ@y)JD=g7R?@ysnAx9g9g&AP{#4e49GJ57M^2g)}GI*sw_9__>yJ^#Gf z82-HzY*loRJW*NI63V1Q#f`gS8?9!^%g`kM;c+|uJ1szJr!n=&rZ<9N(TM4?erqqJ z1d*vjj-gh4m54;3YJy`?#=F`RH3{e4uWTPz)zCL5cc(uucpNVw<=9*82K6S3x=FW5 zgaBARY%yB4HttuIOCK(_6{Wp%QzlVwOLDwlgfj<+TQ=)Ip5Hou(^al zWo-f)EXb*DQ1%MiEDwTh@FLW#AU-`uj`t(o&!0HKa+wBdJf;Rx0^)up>AJagGGsZ_ z(U$;U*cCAiTIq=QejOC$V@vn_xj5QB*LoDPo>jr|wAVv{GZ>`Uu5eU}C3XS&d-L<& zlN_|U`CD(C7Ww>k@yu$uAFb!eCOIR=T3kT6a0c(XeUZQU8elLBG6u9;;~MpCGB`?& zuE{9~s06y}OF+1sO0Ybz@4F(jE~2yX?1iS4S7|8gAm-YOl)dtQF}<^+=YTh9yk5yUCyeV(ddcErH|h_ zVhW2y@;m@GZT+zGw1??ZX%5rM7C=E(g{{WVWS`?Pw`Z zdQpKK?a>81xBebI{pW{9k(k%d^Hi1fM{pO`ZVoPx+X(L7Q-IpFjnay+|6v;PpGFb? zxC!v=-JR&#$>8<^J%l>H<_9vK7*#90p3te){6-ra~FJUqN__qGSW<^(6L4`+q zPyoeATe1izm*=p8(v`+GujR}Zf0}Ptgor4e(edK4%(2dr9QwyddU2mn@b9ZmXYbW^ zNyau+z28?d?#CP#{14M8%P)Rk9cA}Fc{gUb&UE+p)$cEv5pBiu4=uea<VDQ*Ez{j^ukP#F>t(=wMOg(|00ssC zfN}E!T+aif0619KIM`S?IM_J2xHxzO_X!B_@d+Lg-y^(F`iP8-^wEgI3!4Pz!Lx@vlJ9UIJtifiQ`gkeHcc5DpLoJ60CM#RNlM0}=NEEw_pGV?3|rw7 ze5GNYm*3IJU}jku`a`OVu|V45AnXR6;xD~_J-4cF3hgg+oEw=S$xZp)!NkV9(FyoV z?O!sI2M>8LpQ)Sv;FWYu%BvY$3F*+ldi0p?0GpnH?^WmcH4;FGd1E07CJ8_SuvsXr z{*8nLgXI4I@MQrWT=8=rgVA<$mZt92{xZrsa>V`N0%d$ZW;ZP@4Z@OsDJ}iK;Y)Ho zDkhZfDIMLN|Iv#uRxf}{$LIRi6F?w-^7olKT~jk`#$^2Nh$5lNNH_D ztu+YnDCvKZwszW5j0AkEx5gs6EQqQQOwLtoYOwui8!#azi-^}y1sFOj$f=o4irV#Y zA-yOqi5e##d!6lsv05d+#-|f=?kA#W3Q`0G0O2{JhY15?Bm&OkqB|XZHchyBds)S` z{bRCSzUBN{JkovZWwTtfQR#`7#4jep%{?-qsIg!vTO=8!N)cL+;p1`+44M7un})Ap zaa^-n0|coM?+L^Uh6uHYgjl_ zJu_EA9UcTK#2omn1ou?$Hw-R0d0j3p&M(x(2J3BAOmn_%T6E+nQ~4&zC>Edix-ILC zzXf)4uIkL85xn*Ov8Er+m@%c7Pt%}>CvbDQpg+Olq+zc2%u)|JQ}5a8cql{VdoFT7 z`fAaZzja>9L%49tZE+0>EeY_b)t@J~anBxA4*8PHE55Z?>i1J6hjG+w$5P-!?8zpSvMn#PV={g6Y>nr4T>0*)Q;aAUtRS08UuST@dRY#(WC}l8Hd7TS8r!b%) zk?**CFPcQJ^c+VJRicKk;M^>jrkH@2S^;zmc$Ak$UmGLUXBNT$&b zQ*&$z?dXp^UNQE%U+$q*DIwSLeERybYegMe0MwlSJ7NOHEtsV=?w}yq0knmSn0_rh zY-ae~2CDu&ruHbtS$V2!XJe?eNnd+Ge8N`T^VJ~CFQzzDip{Jn?-61V(Xvanh_Ql) zNo5{87{21(xWJ!QFa|bPemwzHTVVO^ z=jD~9<;BG?tyjv*<`xb>|1NKgY-@65ov8OK?wk`md`s36bX#o^6oMU(uK~*2L-cy? zo^6VawhSeWHKDKf@Hd}+cBO3OJFL71m8ht9&KbP0)ZhOs>}_0i4G1@*CctjgZQ`Th2yHtiI$1^Eu0=r#nTAY}ojW4o3qH~i^ zWhAGlDXftLFY+EWKTshY$;WM zD!BCYI~uF0B#*IV#y+@jN>u`b#vd5&d$3n!DlFZ1DEtl+qS8InW-Gtzp&swB$#2*( zT_EMtD0kdEo@2)^6#Fh%zm<(V)#doyqd%ULR%U_vmdo-dVa8u#Uh~+hQjglKhx zc6wjYvvhQkQ~k>6sMyj#JSgt{>dMhS!)D3Qxo2GPT(}{S)a6f>l0PU`psty%|2GxG zB2lz?4w+y!kZ1fm4TAJGrtU7}9{I>wIi*6|FU2~+*lw5`mmisojH4JQ13rU2K2?UW zJ{?e{O%SIpCOc$ct1Dqzhju%-yu_5}A!)P!Jv4OQ$js5|lMJjWLvoqF&9d$7wk7VH z@w2pZ(yYrI+McD$K;!;$bw|$P*FHpC8P0j4x9P3{OmYVjy;GN&@F(N9nI4wCqrp`A zroW|j=n?$z|BSq(5W}?4eB9pgPYC&iZ`}N0sD+B)^{uvZiw~E9f#cIQQEge9QBh(2 zBpzxDzIOTLjoV7$D*PH#8oW7);=5P~8Ve-7nDloczj6}a&pAoK($0R#$#c)%HaiuB zq*=*gFs|~X<1CvbHOIwEJTtCSkyCQ>e>U7B8Nq@g$9jT~1Ex-Tqxzf9rzOvtS_qDE zvziG8s(YxRBJJ`E8_~_-0{rSAP;FjHD+JI-W9g`FG;3@DJ8)BCz)?>#@hD?=K4*j|~r z0bq)HIN0b!M23bsQ1D{7mle}N%f5!kqcp&}(!f4Udmr+?r48NT)XJhToh43hpuKrM zB>BgrPcP0K14(1S0OrVKM%Fj>_d?R2UgHY`QhFPo%#NQMQPPxFeyp@-rFIR?zw1Bp zFrT}z)ATTOIw2L+qfp5DL1pwp(@}d`g9pyv5Xe0k!g%%t=}ZHJT6LobryZuX5G_}9 z-|@e|R=$KSFn=cE@hvKDSr{6qU7amAUncjo^6>$hfDd^Uu!OKMv#qf~_N=1k!0(lf z({*juHOah{wT{ti9F+I^ms-pd{3bzd;|S^rR%yMxqU2mhk^+5~$_gu%%{d2Gd|9;o zhQDjGTYGNVX1-IHI3M5IBM-^y#N|Xe=6*yFh!0q~#Iq3`-qCbfy?Z!mQ(Gy{KDN_O zTTgFsuawhEo}Mts4YZfoB)as`P;6=nc66|~;*L_82U>@@(qn(Q@7jJfL9_GAZzwu{ z!kJdS*?_LE>Djn~Tt$^*S}uhvdp3~%%|=K9r3zxDPwuJi_LP8GF(YdU;a9vUSYK2W zUQ`&}-{!H^p6Q)OO9eI(Vd3iRh*<5~blV0kq?6Xv(F43~bS^{m1|(=OlB6pH7kzgc z?b~3;rGYBnHsnC)VO3{g6gIe00RXF1l2Rq1;LNDy63F2YeHa;nuyGjp2J>CTHfPxR zp*-@$7F}n+%P02oN(Su{-AKasB;3+lnnTT)aqL)!`*dO1QNR>!lW7TQoWmtTA-v;g zS$`JKG$m(dj$!F=wIYoy^0-2onjT0}W`h+de?`;BdM#J^4cjk~7H!@?M^C#O{c7bB zj-1gr>e99UmRCHTer~hR(_?&E-j%(*wM6J_(VeU?$MLMhcX1&&xvp@ly0VOg#r9*n z@@&~l2fYX;VT|s(v2H8t4B_+@-&zm+j9l+ke;TLAg4Ryu@P#_9^{G?9Z3Vs|APTbOP%^KS)_qo+TR*RrmQ0Mo{7D z-P0TLUp;DBr8N}2wR+nq>o>a73CBQH;fvnV zKeJHVtZ{lbDAwekYceShGtM7?GfAO9#if33$5y$S@9q;eEBou`vVTuWC^Ca~FG;_D zKPfHq`d_Tpu|?N@QCEK(zB-B_$Z@?Sp807VbS@JEFX=tz&@4P&!eed+W4K_w!Cw=L zrEfE|DXJ%66|pO^mv*#Cbm*e#>&l^Y&z;?0#7!5=Of!8jZ-yRJ+7lpUrJ%4H8eg8o zS8zY^s>hq%Q{BF5Ko1On2Sokkc-PPSWTc-*Cj%V|llBcpzn_#O1;uO!yQ+R%k=P#c z`4Beu;%6AW$m*INpiSQj-t&^p53Jy*KHgM_xRgE_Fw*^g$4ee@64qC^c+rG9lzUNs z$vtPoM(6o5EjcgZ0~NQ2g^QjrrG9-N+ccZZfL+~qk8?$G(borpPdZl*$9btJ&5P%t-w9CDSj|zd_DzDDNi=aZxcJ-&icW=3kk|(##NZyFI{OM_N^;9-aKM z3eDeO>!Mb`^Dm4_%AJSLp$0=;2l8L^csh21X-c$3t2p+eKQ%NEt_dStH?(zt@Fx2s zA*fLnI(&CA_wu?Bc8>`3}t-oez0ehz*rtrw*hTB`{t#dDPSL6mobnw@5L* zii5Ef(x?<#mxQ$Q!~god^zog1Is~o&s;Zxu@k@Q;`ki)sJojr3D7I-m3j~D>K2JjMFHN+Ct6A7xcn5yt17NQ6IiHdkID|llKm^J4g`gx4F~q zV(*mN+g5=(YjcHq*uN5&ngWEve~&rcBUxMTVBliA*Oj)P-FqQv*1Vkc(2I=+LCX(%3fV0NAZhi%r=W_SF5&b{kj8f zlgNXMg)@qoaRI zu*UwU=>Q3rdBwEN(r5Kc%p7i-TB6`Cq#`OO1T}mauc`|2DBJUR9H<$(;j~N(q~~rU zUjWa*vg3sBfF%!U1P01`DvmTAPgM%4BdYvL&5;i#B*K!ao$yeJ0UzV(J{mh~=x^KF zY}tG;bSWeDaEZn;5omF8Pq@EGTA3M|PY^ROaN2FRosBA%N$x|AMZg|lh?NLa1t@a- zo-q^{h(TK?XTV`Y0kWbwRm8GDa;$ovr*Q}DQv#;pv4$kbfm{Oo^{RqQf?rIJ_6vyb zdCgHu5wAXloN2OWrloCQ(-*Nv*wy#-nb~I_dI=@2)e5SL5R_6Ft#5iNf@6e?RLt!L zU%G@5nVMMn{7Rq^J|pcLJJ!_E(3;YM#|vmqX&qHmN5NY2@+w@GnlTyH*hsXeFV-rT zf>ge$&upT7IZHqHs65)QprWes*Na*-@FJ%2dO3`-fgs&5g4T{J_kFAE@Nj%5QX~GA z(7V;u2m2!}i`J7}CJ#7oCYWVw9crOD(fYY@qbMP4mW$>OpA|gNM zM~pB!wy-q$#atCb17bSura9QhKl+M93VF7pUB&|Sa#Zu-8g+RSQ}EDSZAm7Z-4Pe; zk4{U8a!<5O%PSDRD=XVriTrJ^w-q9~UNSMHnKq%8*E!bOZ)p`toTh-rw92qCyb)ZJAMmMF1uxGKHhZnKxLWE}+uP5V2NY_` z1=OBSrLTLln~=z?js_NZ-i3Bg4iyXRmG|e$-5=)(A#wWRB>~S4 zZ>(zWDKP#3`QF2ibY@TfpaHgHGgcsSaLNgpk9t;Oy=2;LvX+juB0B-jq}-7HR4XWZ zB0I;;z{%PFbd7@?6SIySmlYc)yHUz%TkNyCCr8Z?rKP=rwM&p|LmYqH{?qI;(!Jyf z0Wavuh%tl4d)sp(p_u3*S8}QZVUq=*`iE4j%(@gUV;LxOR2J{?$F`l|H%F(#mRE`O z+oQ&w?O*)-H+g^e8J097#229B25Z*8j3R%2zxr4gGc_F?z7_mp1bNq{I_DaYva4|v zymlc#pwbzUzx4WPMMBuSnp%flOk~3y;{9iLzr|GfQIu}mG6wJ=-1^B}zyaa<+pTK) zrJK=H8j8;#5TfXD$2ZHPcN-#p#$B;}LuL!@`=2hQbSciw2e$CWDCVZdAR zUbB}{xfH8>apq_ptE&Xwyo@tCaX9B`xcSXgW9W>0g7^81M2mE zQ$e8>`Zt4q4;tpUs$cj>^W`jIg-58yj}x5wC8~OnUKeMhbQMZ{6;Ded;wk-K7{Edo z2la?e@_U?f^n*$5Zm^=MIw*k+2P{!X!Et$;oIly2&bjRk@HIZ=ClT*6(v24-wX)BO z0vV;yWh_1v;Aq>`Oxc!pn+C*MO?#BHuqN@q80k*XzT?$S44i@D#Tozc>)I%MmfYF( zd%1$9!{j#D!<2edx&sHXN{g16xnx^3mbp3|l!BS~{^CD?r{+yAPaFg`auw&_)^=%6 z51)G@3>65w$>ze4jbAWx>4aNiSJU&U+aNzEz@o)wZ3^rDQU2YWE{v6o^Zj3jgOn>R zzdN^8Rnyug*gA@SCZUi$w4v7jqIvXLmFlMs@!A4n(Y-kq0y5ZQbxf@to003#l78tg z7*^9PW|CNC(WWWdq5q0p=&nFF2)67H0gxsBEq)CcGPW1Dc5Vglu%L%Jy+_!cA#ewC zJ!J}^@21`BS9jk{$WnIiFQB%2?0M{nguEK`QTht<79|+nG$eV$bEoqhOq{)mk3{Xh z&swBTX7R{jvKsuP2avQcW^cxw3SY)DjQc@{tUeY!&`=#{m}j%{&>9mPg5lY&P{d9Q0=3)b=yUmiSWMV00?8&*8h2HRz*h#h8xm92&p zlfI#j__Pe*Lu(7_ixy7~|K3+^$B%D_{pvZ>jOCTvB#4?AF6!aB!z$PyYaPZpM~raq zUDsqevOFoUky9epCrj;^dJT)XPemPi(2V7*M>MEC{u<>xI^I3EyiA{$e=j<@=QCx* zDX!Dg?h0ux;DV)If==sJB4WTeDk@0Y=$;-La-5QHTI;SQJo32) zobP1nNMH4)gISew3+pE*dme-IS(Y$qmI*^5R6g<{WaqtEr>Khu+NM!x*)CRA#xlpw zhs}>bw_>^~9l;u*SxMm~BF*1c-O~+4)FFSnNbZ@xO zgzT6tRFX{X-n8}JV26b_{soP#LHg_mV-e|TB5T2R3wHuq7lKdy4%erm_rAu8{M`FG zJRCnl!^U?FI3g9(G~BVR6!7Y^Ft>qb&wTBAi0|s$3Y2yvv^aR&*7hA(`PgtoWgZPR zOM@n*-ph$|dCvWlrcZd4$#gy~uMTWuF`?Yhe?PM*^y5*3dq}#q31;&J2a;2G(RHDp zCIepI0#dthQqStKt*slku$C7ze@(xfk<(%h)J3kM5Jgkl{zXZN=J5U{%&!OyXN8Og?i7Y>Ih1OsOLCEG?T?P++VfQ2~i*lhYM< z$OYb&bFUJJfZF7qBjE6RXrHda4y*^u3!6`=4stiOz>)}Ht?3|`9 ztNsc1e~;R#2*}7@q?+5EYeUIwY5A1C=8J#CAfN3zwNBzt{cU{A#p7fH1IO&hxaL=f z)?5k5kj3Qe+gmKpVqkm}CV^}w1&!O?g)mYZvU8Q7{TeCR$J)}EA{(r6>ueFc-b4cj znS$UNM$O{lf;YPjcwrxCuvC&l!iSNJ9Sd?k9ZU^*^-6;FF6Bj)#8mi+(V4SvT#_m{ zkX&C*&lV*Q3E#r`1na?--+OEwbL<3DVJG(qO15@hQT-vo35hkLig2vZQ z-BT0Ho!7FY{^Y)m9C%GN5sKkHs5bL~PL^hU@kdqj^vvk%u_^gp%`yI3oT&HXUsUD$ z067<@$!%5M&Edm#3eZg)uxyu}J!m-ITVN;?%hY z^B#X4nr#DpR%oxJrviTnHqy&!tw?E(#cWJH)hRTspO6#iTs?sgnYi1cf9debiL9AG z@_IhG`8U5|4X#W(HiRtfY*(d@PwNbyZCi>2#IL;wSyxZfktt@jL$efH4(Ap9=ohOD zC56nv^+x@}x zQ!YdIN_Hl7Jrznu62&>J3ik-vm-M*(q1vpw!0-E^4z`sbr%Bb+ch9wz?jt?iV7TT@ z-1432?kyAgR?ASV@P)g@luxNEL@MVfPaDz!cMwO!kPoU;lc4EI8HRDW4uKjA7-6Ua z1JOk!U2ChZd6SNe)|ropN%Yt7jtmcHPW!NqLx%&m(9eSHO!95i=S6}CPAfT>JGSO! z=6Baae)2hSc1T5M@c3-4fQ{ySlG^pzl z?+8Q1Y{_nH4qk#YFzD15C_Iv?@^SoYLG)Kk&Fsx7DXr7Sti^8_+55l8Xyrz;C8&e$ zjx_B+wM4A19EF^7KD5=>b%m)4T?2eV4zs!Xo!*fsJaU`Ss8ujBhg4;JZ2htfBiw(w z*V(%~<|0@Hj^1HRmdo(Bf(d*jekVUVkpfBPYoSUx;!3yKB$qn~pDC`#>molFT@S<^;Zyi(@$jxj6MVFMVyq#QqC!V)56o-qEQ_^5vxBlgj zt3-E?I6h~uLBj(jLMIeMNB&8#R?-Z^XAwbErehpfo?-{OxSOu6-R( zPQ}BXc+dgS`G^q47nI|n%idh9SyAL$am4f{p+09EVjy{~>XC_ifwA^Huk0k3Qm8OG^v?&`u0G|XG{>1uq8a{FmHspIc3buW}H zoN^P=Q4RUb-&mLpkaZ*W=29&kbG`;t6fa1rE$Jf+z__&JPZQpmn%8W76SNYanxGOE z8N%Mhe2~FCJP)Hh2sx}K$y-~QXGq=mr+248Jh3Kr7*4TC{+<%~WOD;J3Bk{3sm)Y8 zSL{_pib8!+59=&Q$v1g;f5fyirf)Rg~uRqv8l&6dNf;x%yUS}r$oj3ME0@)vB(vxvg*qG zOuvD^81Guu>GTHzT?t`9Gj`P7lEkQ_RBtCCq_)OFscD5J0~|Is)lPZ8NjtJxOxMXx zCqaAH;L)L{YGhc6i^B*y!i-lH;5xjPGd~4#jIXM@(qk)*r@;3!XmHV2^M&-x+SfH3 z{#wKBYh!`I#s(F-bP&JF8U$shHNU4&Qo}Ig=LSDReqp+z+F2#}#0TpPcdG*kEjuA2 zIn6FG<#7vV&*swvW_7bkezzw8hTTF7-(6L~pP#OJ7n8ZEglH>4QUwhxtKO=+-I&6% zA_=?Mol5duU#J4|77SvC!{kImg|i;(W(@Op<|~lbZsHjj;30x{ZK&S3rkbJFQM+S$ zkd(Zt;(InOPtF$jP=pMRJMEjBSb{j<5?gcE052W9%GYak(^%4mRMP(fV_D(|VWJ?x@O_@QX$oZ6LnCAz^z`X*>^dkhijubbW2(!QxukkS`nwN9>wFBY z1)O2ZeVZH4@wZK}AMFv$t$1cnwT%h0S%*)%YhOrzjStc=$t}LG{(nL?t)2h)Rw#EN zd27GS`CJ*xy_@~OjSpn@8zv^!?*MBlM-@}r%$eqMP;zV-crU+W z(vfo|B6Ptir56;t6TX{ z#Uo&?U`9Rt0b-WWqUg?m4IM=5lt) z^yUP4j)af>)GoON_$yz=y8|x@PO;nMqL(`#?iPHjR04I)uYWCx{WSL9>jPKOEIqdr zGmMB$xJ|CwF1p#dbylu1<#KYy$FlmJ-@y0QJkPV47o>7S;I#6{`u+?xQqxMzQ~jh# zaWTI3V#cdP_{@KrQ+{tcbNZ|T`Yi22i*Y%E3?XD$Fc|JK#aAHU$O1!Zo&5QDQ7Jp~ zq(P)G5;IYbu8)4I9*0}tYl$x{(w$gsQYZa<32i^GtU}yA9;_}q@SN2;>XWhO@zuBV z@6FR{w}cVx!G-nbi`^7anb3>s>V5up%f(v%TOv4No_5J0W1O876&UPWbisL?@`tz# zn*DuYF`Q)5wzG3F#5Lz#k$X#gSUc%Goqz5Ti+yTryl5LV*lO{IxCYSHNwm%J73y*| zo&Wx+bYi%}^oRI$RdaRHpF`IXI5TsaX7jZrZ8CPW#5 zA$)f=q7E7wL=#c$XZuONQ|g)dCm)3D@p9C21g`$`a}jRYDcf(XqYk3iubok&&waUfN9{pe6l1SjReWsWT4kB#^XVnPoB=t!Hz#`y z7;$`xy}GIPe1Vi=_Cq95vFf*M;f?u@4d95Ur1V4c=7s!{c)Y5|aiKy#;vk=e1*(U= z-V9@muxc9aX;mSM8nj>SCV%ba%k)y{r%ZUFAiP&9AF3kWS(_B;txbZ)r$g>jL^RJj}Toy*F?tBI>!CM|Ek@qt7!SC1v8#=$|5Aahq?p zWwiMJTL3NjlfQ-6`d74(7GF_HUQ)3}Tk(V8scBg)Q|O)D$H;|mF;G3hIT-J~XSjWm z^l1G7i6-q**|Fyt;Uk#-;kJMeDW>j77XI#S*bM*HmQ%m&rB3VzTC1GoiC@*EFJ26} z53qz%43)>`H8YkR7;y#!W_l^9t+p8ax)2y)e*g6UR}we-;rJO2wGul={<`;$V^cz5 znW|I+t6d0OJDyxl!$FmN4rytd9*_z+Dhi4h_2#c2i~sVMSQ5#<+P1}#mQ3F+c*V(| zEiSIKzU_!((2pDqMn79;m#EZq)E9g3IY(%&oXGS?rO+1g-pVsA`#5!Krid?;tPIcoe!h6sPpI7V+JH6!yPn^ zQoeOZ?GKfZrd(98jMd+pp)6P0{-h5Qs=AEX?ocbox=P5>S8V(l&|C_Pvp zzUS8@`1gq^>?(5dWS(mP!xjyqe@sVBP&QI1!nfmcKHY(RN~^m`T^dB1{^&S=CWuRI z)9g5<@=5c7UoeogqFE~uN8yVx#NCK@2A6nCMDtO7s#47Pn0-5G$O{~SZ_;iC+#hLS&^IX3X6*om{*R!d~x`@(^u9`Rd-#g0tXrO}7so*m9< z>7M5xPL@9mCNPKh>d|j6E=PbNsu4;c6qPOM@!jpIuZtU~BW&GW~=on?Ff#x5B zRbk-$9`xmRquN~yWerP>)!aV}&)afHx2OBJQ-80i?n4j886L!DyP6gb%wko3Bat(~P}fgKaB*1%tj3T;*@%pl zj-&B^`NT2wM$6Ni32LpK_`SgL&z`ar+TR-^bjxDDlxFhu($k*~+w3J2u#vB>X|P6* zSv?mZA^Gcs#y>gyhoe&Q;_-j1J{VXbMt|#ux)6#Sz0H^H2t@AX&NaZ}7&#c@hy7cS z|8&#%qNHkCw_GPM-BKmkHd#?tar~Uuz|xw&57V;h(3y$mW#0TEQt=mEalCLAUlh+L zoH%cnS{8bT3ihPDAu$u^-IMnvRe2nF?xj2Q-uQ%HnK*n_N0K~B>`A1@tnB8Lcj=n9 z`qF@N_ecjYFX(TCZxsP$Yt)|cpD`RS{b%aGph(P z$TOCaB+X24BpI+FX7zhFnswU|eo8>VVv%|{Q=5yct-`PyMJCnHIEVuaq(KWt&f5eA?dCkDU7 z^y&N+(d7^WR?t&ie3Cj6pyr;vN_7ngSXJ1K-phV>pb$@>q;j(B6`CyS^}0iMTT_!K zsmh(N4oo&mg?C!Q+289@oma+IIQe|I@2RC4-bkCUFk;%pbbq(r5$FpbbXt_%a1_je z52_Fnm-w4USDE{W6q?r=xPc93?ts;v2^&T9IEwUeJ6XgVO$|E@z6aQn0YBjgF+6!^ zKV;ccAEQX=0ZaVxNr`Vsj5vKU?G50bllWm-;iQftl7=GV9Y>(}L)L99h!+DV63D*W ztd7jtv`>h()KKqWwD453vWCP%s`?jZ%;~8NLSCk*f(v8FP|8wt386L))lL%YlvMY{oOxksr$DzY@8K7Z3}9BxP9o5i?rLuaqWG+b-)-ME&9 zz@hjQiI^bMXD;(h3RSg5q*wi}tGBkPOTESd%N&ui6T5lXths-IJKidXyFC3CD~Dh% ze1fMU=AA?RTQdKJ%OCIOhZTlhgs1l3!S*yJ?bzZ-qrUIOr%sL6QD;ay--k5_x1{7; zWFhNCB+5?=WsIka$0s~0MwQs#9i&YRMu=B1JY?xIY%P3JAKTn$NF?E~Y)Goq03U*6 z@U}GI4eLc(-voYzrT#zx9pmBf8qM}%`lJb2YOyRL|B!y7;l5#2mj^1_B5+5|%5jjU z6fp~$oI}c>SGZ0`!rBDj%YC&FptQYmQ?)Ta1*$`1fC0+y2nJZdo9n_!ks@zh38~nC zvL9kt3AU<8q>YV%P^NgM2G|2hBH{&kvOS_RZGk6H*7)p|JR}-{x4D}wh~x|DZH_x& zNGz&uou0eUk1qb;lyunnE8oNP5O(pE6c{Jc(h_drQEaY6QZ~DCf{Xu&8&%o@z;Nj2*|lK@8nI^OZuQM4>sC~)b0fk6>;(0S@rVz3`clxGC>07zfV3ni-RSm zNm!dUYly5shP`yDUu0f`wr!z#%|m7tbwfnhK&JUwKHTJ)as=D7xnEJJVy}Tf~isZh_ z@(Gx_c2&)>vCF5oFYl%cpr85gaeZ_l8CQYz8Ize?`r3yKqOvi1o7Z)AC%lS#+08O8 z9`J>6@X1T*Wq%i{+tqJgtOuNuR(i(F8!$fhs7$IA6cjJ&zB3K9EdU%oM5`Xb=Btct zz-FiFKAuApFK5jnUOy!Rs>Xd17FpEHUK@aN_;nUH<%d8*iSdsPU*x|g#;SB0HTOOw zv`&a)ZzB-(^Mx`-h^J59M-!_#yd*|1Q}{FYHI3YqX=?_d7#C^b_)}y zRWjiq{!$7+1Tyfu*iS7KX`zOzJW{+pDL%C|~3tS9{DT>}YAN+9Oh%2O=wq^sVTMKQ+#uXUMI3~9SqZlM_8v@lWWXZPJduq>@AogRkSfrTfXqm zV0Z*4x8RDCowJy85%C?y<=js)MB7iEW^i(5;&c)6!aosGm&oc;QSGw~yKZRgI6N8n zmNum!DEoen#A)KqoOxX)H!(NCv1fktM3XuG15vACdH)Ebv07q`JvUblCnYr_{H>4b zNSm#17O;cXYI6fb3R_O&FcKKOSGLU@6_vl58~*_Ukvf|WLdU|>A02sII@r+;e?C># z&M~NKO~Z+bEg$~BJ>mQJeUtwuiSbIKV4;Kjmmb*->}-)j9eo;+I0$zAl+Wpb{r z)&}@mtsc!}wKnG)y@NHO_0?n^i?@-NQEIH*7rTpz1QUHA0Gj)CzpO+%iZTB!ouXV}(2u@MJ2aF2VdMmOFd^K3 zDg=Uh<=+#|d2tz2;~!*SjvIqSe{HG7ZGKBWFON^+Ca?W&)F%3HP2{Yw4eEJ|t3yp^ z!e=?#dW)g8vzGUQ??a~2c9p2~7puVrF21RByWl$I&}Uw(;;^m%w1*EQQR92(Hr-i()Zg7kR8E!;&Y~U2cUZ!upZa=K6a=lC!yZS(?ocW7o%)s;R zHGs`-leS+p{2Gu7cTZT)xOnkgCE(Fk)gMmIt82gjva$D2`Rc>N=WPTYI@Gru)x6*h zM}xJq=RqUUDaP2MZ1MleVERv0DH7J*{nep4k9%(!rN(FaI>NsdK73xanCVcBS-WLS za$Q!IX9qKk%pLIBFPF%;-ZHjHe``+-OC(!=|CJ%|Lo>hOmhs1UzLS9eNq4}1b4Od? z#IA{1dR!p+rMF8B&=%V0QQTx7J0au_%_w%%;&uGTK9Ai`-2k@#xZy?~M3Iy~Tuv=v z18p}d-Ss+&1cAhOvg816$pLTf1cf)7Uu2aVQYvT0=Ty`C%diMbaE{Nk-nj-)QuzO@ zzM7b^X9w|l8|IMk__}+WI~vD*a=$s1c}rBqR8|y!EcTS~l;$55!WdWnfr!f{OlgjL z)5f~TuVwu>_1)yAN&o2_czE*u-TK_8@=F^8MuxoT<;{2mvYp)ITjY%DEn)Z&q^}@X zGvUcCSr60i?4yLgF>uWl11KC~-zm|UEwd{qE^F0)R+d^B;HscQX>^iHhavLxka2@s zvm?)+((ckSER)s{cuRQbmc5xgYRKeMujzErm$J7OM)uP1HM4z-uT6s|1X3#t5SpVX za~^he84=%A6^`1#_cdtp5t*;4t48RG*4vU3<7dgPQ+ zaTd;t1^s?-IaTy}<7gdD_Z*78#KZ>DOXMqp=m&#L8&z0Td%B^aacDWwF@%D^gLpfJZVoKp5=}A>{wpP4rJ!_k_Z7^?DE?BX#3`$wU&*kB4yY3=PzjODTtbrDM4KS!)k|@1e zODoGr=P2T#;57=rBCHaB_xbi`-uat+pG1Mt>+xtR6u-WKt+%qerQrqeY* z;u>&V<8=JoYIj10k8%MuJFm0GPBnUtz9n{o7LJK-CaweaMT;nz*FUKGpsae7+4zW; zu2}opCXoQJB(Bdhr9nN9AMU}o&GaAbHA%W9<3{pNTJryXl1l$Esl3$Qmq!)w$LiYZ zlfpHhd5Ycw$vd!el@AX&C%{sB)xV38FM_WDJAO5MUUvC6ana^^Va4UP=&m{+JxZDx zcP4T}knp85$z0Qq6(k`!SK=w^&Q?TR{`y~+Moh&6>NLQTn zYA`|Mx5D&2nQMUC+Hi34$g$yXYM=wUv4A&uc^W}oYk0^8wp}YLiT9zQeFP!4&ve5x zI8|P`Iq^>JXKfAw3L}Rkc7XYg)I&P|K=BM43tnjW`C+~8v34PBd^%HMhoV1ox!0?T z-8|vG`YDh%YDjL7)>mJ!Tee&bFNT+eXOsSxW{k_qfeGOo&Q#TOX99CJN zAE3zk!)4gP&A$dTx^7DJJHAu?|5WZUpV~?3;rb%5)-v@|O$9lpdpzJ85S$k@wP4G< z{VcTDlqwm%Z}N0Gg0NvT%EVg>Mg6;0KfOTr__lO%Opc6CImI^5*ncNz>6K$4D5gUm z1@OgHc$k}Cd}$y|V3rq<$+cm%vb45Up(T3i;cOo!(Ly0BfA~hLm3DAu*G28%$b|Y9 zh3U3Fl`J}ZK9+jkH7&ItvZrQzF{ny2ioqm|>KzRKzCEk&8Xw6p`GSub;6#K)m~xov zNEK+wF*sHs+OgHXXW%<>sCru)X`SVhX_<;^3hH2l@(fNp+|?d`mDq)ngK6N^Wl$lk zc5R%qoSLW8MRytXx&8{(;;`$>m&&Dfcx=GeHCEm9-vc5XPmntSp!^d4@qwr2b=1j+ zyE!@8)*^>o{+6ATaSxPmMwizExa<*k4JJYfYHY^?EuUxE)5L?ec1IUcc|A?g5q3mo z*>GGhTV2#sYY{NSqa9`Y<9Y5`cY7@WCDZ{ErzGgr8Ht^%%o7BRD zk5r}QPOs=#|N1^(L_mM(%2P&#wVIXp!c5310^VNg(g~Tn#PFRD#ZMPm6r(e*Ru0 z*%$N^Bx&wl$rSpi3L(N6n@Jh)Gl{#I@?GsbE&xsii@XSj&EzN_XudpyGFZI+zt|Y$IEtQ8Arnll6xFb_>M6CGMK(R~?ZuwY~$fC(9D$e|^$Sy+Hlzu*_xT z(S-qFP5&n^!%xdD{*eQPDn}VVQ@cn|{}jbGzxmflc2U7wUnyYd^bb*&`TRHECgXpR+Q^UEar>al_46ka(o2Ydb(l*6vs;ODE9vyNeI-V!{nA>U zC^GMU8gV1?S+ytq+8r6tcQjCIK2+6Fj^0Ps4y1cPS#0rYHuec|7l>egZ>R z;;r{r$`-f6h=W_W!2y*ctVrh1v@fPTa$EK$C;289cV}#?FcugiromaM;TH&_i;VR1ueetSL7h85mq zR+mXCzUEQ;f3f$LQE_c;x+nw!Bsd8!AxLm{3KHBM3fJHi6fS`zSa2vTxFk3fUU=bF zxO?Fi90CcDKuB)wuY2d)-Mzm)u&=lO`<;ci2WoH)y=*3aVApMNawFISHg?}jl0;#yjp{_Gm@MsaO+Ryn6aDFZ%+P4Ioqq*2_5i<#>Fd)kW9)d z0lw*(tCpoAXZdPO7u%gv3EO5P;rjAu+_4To|8Rh9+@#9&tfJ1L+d(jR#Eemi(cK+? z{LAW=Q4))nA|a%t-=)L8s#D#-uZ1kSK=Sn9aqXlma~6*mPenq*(lcHv=2t$0oLr(5 zqLjng!&lGmw8rH9s+!FFUy^B0&5VAEV&t>}@Zm+FyZd?8__!lhxMHK%{f)}^igH(k z)ar$rLLAvQf~(&2wN4CpFqr^T23mj>K@3lUkKqsO^$y+m-I z@;cd3=k7}`N%#2h^xUd5q1WETvvZo7nDg`Sq9(CTVoFioZ_Q+JQOe_{rhd6(dveAZ zt%5UF#AGJqqZK3yS0o!WILw71&t*i@rs-#X?g(|N-M&AZ&E4_&28O!)LYsFJ`#}v7 z8xL%NaGUx-TTja^nNaU)&aDBYPpw7-bW6>8IuzbzlUrgorQpZSIMv#I>eskeMt zn$Thgb<>Y6)Y5W;)A_-NC;a3WnrQr0$j=Zq1K0Bl=T)u{h~&fJ>O9W7Tj@scb0(2qvhi!aGH$(a1u zt)Ft#y|yHV%K>*tV*o_DmD%L?JSA|>`Ebd$|9J%u&=|Y`&dzgrK&*1sHajzy{&LBO z-!2}+<2K+Hx}#+^V~}cIl6W35MY;P%j6{%Php(YBrx(!Gy^0Y1tdEeNVaUj8YpEl) zgZt!ER)3Ol3I)M!#}dd}ZA2mT8dJUTWaKkn+vT}zrNZZ*)q5SJ6}}9h zVz!DzJ0?eO={jZd)$f(Jw^F;rvT2aJieAf&4u`IQfiGt_7DvZ!hxl79Pejj_F!ADU zn>ceL)IR%1FB=)itMf%i*g1tDNDhNcB3#$Zf&y&Q8MJGQGdj&s!K#UJZrgK;XV94x zgP5Y88ZEw4h$us$XYNW86EYzD=Yl)p2kkJPzugtsxiq8m>-h>hGlXn##aZIT8DzaJ z$rx=LgTp32`A$+`0gzD#@-E8ET`%OBl6NZ3B%byXkk>(ct{e==UL&IYg|^fip9b;) zhQ+I_-bXAmuaPOEpjS?BffyQu!jA+~fo1YXyIttc@05P#rXTfg^_@87w!JkzO;c4@ z1~oOzr+>0$xAQimQ4ogPC7t3WCoDMcfLVNAM|W%%anC5K_D+ofIlWA2Y+*8+)Zb)2 z)sDYHq6r4qkKOe&=CfRVz1*}NN7-Zn%IHhoYG;M9M;$?ouSX-viEvd_gSP3(Z4E{g z16o$CQa4>oEDIn-!3Zhq(q#%uG?EQokzG5bCjD{t_C1Tp_!(leiUmpO_Ia(@$pLjP zQgYRL{)h0?@io$FM||sGZoDqWSEpc|v&Po;>tgmNE|0;{A;u0{0(|2cX9KLF_!PU0 z@sXS-WcF5%$TE%sN3`qHvuZ&4S=Eh) zy1StoAr~iEix5MfNc0;5xAwl_X_|bVQC&`=%E4}Y=xDu~Mv<*dIB+esK3wNz6!%`f zX}`{N?0XG7;J&92nD&u>1g&fpajQe1+Na>Uy6jVc#unldRQNGdc-84yw2}$XjHwo; zkeZV-hK(Hq5W4~1a43wk&Qw0dwyZWJen3AFXQ>Lo46To6tXPh1_kFF;t-on0{|u>cQsAD|A!u9^AS!(%Xj{ z4LJ{&%C)+WT02c$?$B2J$Tn?rY9Z;FU%Byf91Sn3gsxH0Ef972jc@pt)~7tnebDCt7o#x= znU-b*T$e_MY|Ql>D9L^)@SxTwFu4zfkU6V0`ZPw*- z;@xQJ&zum$5LdPMHMGeg0y{gW?C(`^jXo7^eA@UxZJV4b*%q*&NcZEs8u$JASZ!A) zy}g4qr9{<@-eXm+1?P%lkTpSidu4zUHi+JGFBxOs+_}7n(EY9118Z4^f%fj*9m#d} zQaKpcCN!#ckg05$XBjy@PouQr9zWlyb{sZaoy_&R3bZ@81KzwmhkB{v8iLXXW+(=O zgvOVN)2y*6wwYfK=nY8WCDV?%z1G0Ypz#dN<=%VZuFqfuZm5Jt8*>Gtte_03u+}`V ze(bs3km@kd|2NLtgylTFkDq)%Eir2^Jbf>ZfN!Pm4vfV|KKEnqZQp%tieFj1^PjUw z2=q5db4C78Y@Ml@mat!%dRU+MZE)|N-wF;Io;!g~^FmQ>rg!V0p11jTa3&-dDq1G0s46%q&Kbem zWa)yYaq(d1#GsEvdjh)YofYC9m(#KH*O;Xt6|E9$9xnrsIg!O>!Drc>dcboLCoRN(;DeV^YNRUWgQo`BlAmf>*jUy9nNo>xy9-x_a z$8zVPyx@d69#pj-(_5qX^|uTd?A~ew-D)ov*d4;WX;OOf-c&?wf>DlVV}~n5F&u!l zkuWnTQ&2c_37qE$fYQB$rdAjLiLUv!=}#T0yU~J&`U+`GrmvH;?J6HQJ;y<3kX3w$njY1beyhpiCB&(*QRD1CZOYG{bthL}McX@aJ5qh=biaE3{I`nL*g5#Yb=fC z)6+c|TC#K;e_b$KDFhU747X!g2)kh5jzw9|n=nU691*Tx?VSdjstfmb;F}A)*^o8PV1ykkLGY872QRiY~1e|Y$ zvvx$8><=tB5EH7*9aGAx5{Oq;Q59Yhw{rK7EA>0JazyIw|9&TVa|`{6Ui0IV<`S;V zA!-vrYViw=aM8&*@H^v|Uue4{E=wNK%2%m&hpJkAYNOnu6vY7Wb*3E~6o#;;o2 zy^e$DB@buDR*x!WqOHPf=lYvk>AmCq>%aK=A1q;11k9CWwJsQkJ;I|n-1_^&qQddK z-Ca%xX|2~PC05tqK2k??myVxKFX!{*da=Zt8?S8$YR~j@!DnWGKTmz6m2VYFYibez z!#2Dw*A(%s%K7t(yi2utyCGFv?Z3ZWq+Ny zz0Nb#(HV1>L~HGd3!RZC>n=avA4A%ID1vWYzg9kuO3~DP=KV%aq}s;&YzyGK99RTk ztPUhz?pVI#kY}*fogMnW_L~L3QIf>q%nM^{w`eLqwhN=jMvN?J%vP*1dNYsv^TwgY zWo?lt(#~HKr2p@kKR2)+eA3^){X%o#+P)SEG;c82d9s$0&su!oKgfdc6Qla^I)cN| zOMFi6=82i6i7{@afr4vBD1bhD55;D-{j@xA>o-u}J5!Uhu=)J+;oLT`V*%w36Do#fzFl}B|E*vCvURe>oOUS&NjD(W%jMQhJ6YiU zJgunA@f+D^!TxZvovW~p>qEm%(>wBQQu6sT8Sjayw|v@fz+c(?ZGG#Q3|;?g4@b0U z0l$3s<)5Eq`TdcX5XS$r9Ts_g?xf+rf5U&cG6AMs{!TLL-}fcQ^Q%RypoP)bXRKR7 z*MGlEP3{j>I9%=?t~$Z&jHwhUnMxVaa&;uqQ4gi8`cl0D<AQut~0rhe!p>$5^!w`Nbb>DhaGI2C#>yBY&as zw%Xd2Wi2h(%c+^0{tX;isBL#~kfw<(;v+owZ3J8JIsA9y;IZn^|EM0J4=p{VO7j7Q zp-hjyQSJ=f{RCeB#%=RgznKOmoXyW27qg*o@lSt)i!(&8si6?~)<03G+dKU`Dpyv-2bTXA_StpXMX(Tmta1OZj;!fx{cG zKO5fDtd%<>C81fZf3hL|NsEYP{-4#8xqX|>o;$5j7#bV*)jnbS_UP=-7i>X(`WKqQ z*+}3C>2V?OnVAI5-;QvT|5?NMUr%L11J|NJWoq+PWh@$W%7W+c+utwTl-Gw4+3)yw zs!K}He>qf}lK<7)n)ZKnk9RCcBlx;qOqR=ww7#KUOP;At8D`CiXZ@kSQ*5d0B5^25 zeAB=QXPGOtN{otTpw71IoJg;q*LH?y54EYBK+&ri$^mb-jEz0j1-0jN9_2pNP9RLU zVDD4eFK%wos-F`a+w`2nRbF!reXddxe`S%QRsUM~7aA(Gl_`;*V8|8Nd%?8_92tI2 zPW#UuZ<(ocmY>Ua4|5*<;}g%kP1_1K-RE!>`#zxJRu(<3CnSLO7be8(BRCG#{|7#JQjr^CV zOV-(r zsUx&BlWv|@@0eG~EQ$97Rl~qvludV=Z8Ot%-{8bHp3L$)NiHP&gUy_(lpoa00Q4#! zfgs_=cybD`z;MVWDW-98xFP10yw-l>OV1Um6$KkNe8=^HPA0sKH@H_Nx-+t_2lLZ& z%BuCBm#}(`KQ-M-wRBltcw~cdcoKE$w5QrztXVu`6BQ6xv7PT6JWWMzS8RTvowG|m zt8QGt!gcqyISrnHQ!vGL@Zw;Kk_QpG^l3g-UNNU6VaM?n)R~dyaJjtI>7Thr&&cg; z(&`zpP5rGdS8`;F%fcn~bmX;(Yszjggdn~V>EQM>%fzpHd#Ov+mpsmhgn=RQx1)!I z*`Lu#+way#hVt3D3*%#;cMZk6L_s23%ocgt#(j89@T8@pDUIIkFdOPY) zwTgjFFQ#Jga@t&JR0>$-BNjm9L&`L%ssV@DFZqY}n$b17wx+l1a@xpRJvDxS+1FR` zdGM$f_ma@A-DDKejMpU22G?Wp&REUKSxXCM0WKBK7ToMrIz!)1MFi9k@H2I- zYt=jO2&a6p4DyHuhTn*nFn}`o^c!;P+P!${ zqZXYMqa_S$%*^HRb|58s7_M@PBgnh`>g3C?h!wYSYWS)|!t8@)eRUf2N(bigw>XS} zMA)xHRmsDU?21klvh2){y{n6&V1Qz33cj{FfRyXt7D{{N-dvp(UfN{R7hbd*Tp88X zG77Tjad8gX6GcDMq{J8wxg--)FK0b6!PY&1meX?BxH)49)YVA&n3_}h4G@d%D0|xq zczkmJIk7F%=sfrP#ykH&@>DjL_G05P4_+K8sX}pKNp)(HA3I|JB~zUH;z=)-2G;xn zIWaxPs`-4JEVxatgW6lp`+g$7JzS*W1UyAAn4m%1>Zi1321e;csVw$azq{V$ zx2MJNd-#W9xr`}c zs-Fv1cKN77DJpC#y?0UR?X?7rPvJRxvapRqsX|GCCyST6US|-*$QBZrvsc;VkRaV>&~_lpl50rr&xNzlZacLs14B7;TL}H!2Z%X4z$IC zf4fcdsmZ}-IfxtV85-Kx0XBxNf;Z(=W9Wv)L_uqVS1VLBN}em!vBU@&a*KQfL33>+ zUR4>$6W7k#^a@+$0VCf1)!O?dF@qIGZ;HJw-^pt+2vE7}7>f$9{v4q5L8k2sY4OTpOpfic9sS3P-%8QMFqq~$Au0!rHobZd37LHd%YQlra&IC%7R-` zYPRUf9^QJkPf1MT8_m+~l5%KBen=yq#(c{K9bWwj31twSscK}`>cys>d43U9bP5E- z{xUbyoIK>UM|kKH2XmS&8ijEx-w-_~d<&P#vb=ENS%DJFVwS{+w6J*W;w{RG4r3g;1?f908Xd|J^Buy&vL7cHFS65UJoz+S* zq!T^hT|%2=$pLjj>nbtve=zdXat*w%_g3?^Y#9G+0~$Z{3(cEFMkw(46tS=0J2?~; zpDe+MF1nWgj(O|ee8xsoho5k)tBK9$5Um%CQ*&{NRU%vxQuK*)(J1nQ$y~hr2vD9ZFB~2a3bJmIL8g0h z(0$A3qwoQkCH76P%?7v9sPgHJX_GrSqLR*8ytWL>vf3Wax>{3;J#%_Wi}`kw;F)YU zERD@hctQEeeF;JMTCb#9Z7-(xWc!8E#(ZtwHdAu*ePnuDpX&Ru{IhlU>of1%PyX3I zD^HHS8ka?{eA=&k+~dBFld2Dg=P$XHWKvAkQz99AI`DJC`kA>c}W`{*{30ZNHf?ScU_?}2( z3#|o=R)Qru4WV)NjL4&iLo=s*2K%ZP&7S$(LG^m7iY4`4^}Zu!jnl*MUL#Vq6Kf~7 zZ*MjPf1xR@*f^u4#}MFm%iIZr)3?y@6WfBk!ozY=s?2YBuU+1^$qCbJxJlDQ#dvRt zUVi7lMxLO>e5}9f7hv6I@dLs7$9r9{zrgtmy#oW-W@yk_iiO3U{{Bl>K>hcuH-$4U-rr*G1fg7C9NXkvZ;CFdLS{!WFNF#fI2atb z-P{P1II(BzPnVY5yKmCQ@V$#aNY9(>cIX19l&#$%V&KQemSqT8YL$8Hh|s$x5>1Bj z7nl9uquU=sA$-PnSC{drk@B6}P5dW*t#c+-sZNlb8LonGic?;=y~?6d>SwEES!(W` z9SZ~MpPAu+dcBl-A#$oa;dxc9gRDC03|uOt56wnfPX6XVGl5Jc(D+BkPm)X?mz%rS zH)7w(Zs#)_=Zp%4NTD2g-bzgfqTrb=o&W>l}o!6RX70o3dEw-&S-+KQ-gZrP@MmP8_`B*@x z)wv|(tgOGn^)p#th7`jZ8*?el@U%6o@#CtfS*Y$q=%T=Au1F*q z4)6|tNL9M)BCl8RPOSbjN+&8si=Yk<-8qTsGS_j08mx@j6Y5OclRo3Cg_%>=wH==j zL)5mLtF>|YO1)gFsK}=jdxev<#>wbrVFp57C!)^VEEJ*$#rck%X)g$bVoBG4`l)kb zAG&oTBTD5^KNG}AqEvQnb>92L)8sG46j>Pw9!GM9YAWK7PpUpa?3YOljIo-y@Z8w{E zdSaHEID|lx?CDU*C~}eV@)lAnAsG-+6|4(I#(fldJHBwGc$IR&d^;lbAJ$*;x8zTD z0GAB`JilA43}&p>Em|YW092s|genfUJ9gTRxj~Gnfs&OCOqnuVnuD%uS~iF=sw))X z*Ha^}@PZ(By*lV1SLl&JL7qD%)zdymCyoakgz`QY?3>w>d)37vCQh>A&1&yPhI6lyWAzkk1LUk_k%)F zkJuvyRo~31iqspH(d-W)WD>Osen&*b*9u^iT;ZtKzuPU42a=|WtE4>_hu5j8t{@e~ z+8(JkwYpJC*t;{~oj&B9Zd@!%HO9G-QG|3-xHnOib>d0vOHm^FKX;n*Jo$+3fszg|IM9Z$&rbUTk_E3 zsnuT>Z92iusn(12TX|F@^JmESKJLCt&omO+I429#Rn(#E&R`qyxUv_0I_7qIhEVV& z{jO z;t2yniP^Rvv0~$T*KJPC`5dFEEd8?&SZRC3?WpW(^Z7r8w^TYhf``z+^k-|;iMVVZ zN)8Icp<*o1gxRh^rhqlvNJl1`#DV1}GW^{bpngR)y>vOmN1Zg05Rwlk0jpIK*)G)8>n-oBl!4>;mbF26A%~-hb8cVkc6g#4P;l0 ziyQ3TX%kzmGQuTfazx8fgjFoM?K2XzxX9Enw%Q!xInqa(&mQ~Mg+oyX@%2(3Xqv-| zj2Pm`#0#tB!gm8nEp-Eeo>aaD9^k&w)38a>i#^#KbGu(O?UFVW5wWj8S519LbS~ zi+|ERehJH-QLPt1k_!#cnbxx^6;(OhfnrQ)_!2z$`HRfJLcXAPa|@K~+CVGphbssehBX@3KIBA_$E08A+e-km_CW%*1j0u4H6$%-_pob!z3Q zDw~B^f$%mg*Iy;=yXJx5&_!rjw)uf=MO=Jp(djs4f7=E6*J~ZSg$ynMIQ2saG`BI8 zJyWb8H&;JGkrPY+itr*vw5PW0Kd`T^^O6isV_knxnsLe7^;5LKM_BqUP-St%TY<7p zP=mEOGKTA~yRm;Gmdj3yDBzCu6(E(p|n)3rD@P<$HI5sf-1Y!h_x`465-`&*?M?_U&0uGrsPvt-2qAVrW4vc`*5|$fljE_iXD|I%eeQ}&ql;77(=8hCDoFSi z8Mzqg&o0=TW;mzp>2^@UgKKO|=*abUypS;VmaO*CT%CUnHc~FL85M4ubPII6Xv0 ztCWB0mm?8pqn=LANfX?N4Yxd_iQZNQygZ zuQ2yZK__qfoWH8Ix!Lx~zb($J=LDYSwi>;xG`liO1W|`q%pt9HOfBID!$-UM_9v5i z#+J)oE2`Jznn)e>_56vh12-~v0Q6F2^X_6FIW_Ph0-4#=O*R`g!sJ1&JOMRyti zLlgtvGM1LLdS-m-Y3xu5G*DIY1UJqsuUWnOh4$)J$^{UU96yL=#t@A-Xcbamg@q~} zQVP*x&hal*rH0aEKf!Ph>bnMGI}m7hK9T8^Q#SncUlK(BKB0Do4WV!;Fls{mvo$Q$ z2WLC*J-j0|1C@9h>HFB0ctWsoW)dD;oIO!lXp+>dJTun5F@v-3-v5+Omz>+EK05{$ zHvRm=a>w51)hqoodFu`qW###2LSfHhY6a9CO>A@G2@jNHY0mrh+?(&1QhXvSb%oS- z*&>U%{?$y6NV^evYl32|RNHQ=-cfgQp)zm=u*8oGX5?R2r+1dQt~KPA&d5}9=|mq4 z;Pu88qe|4j7<&oNEZ6y}ZQIc$SUEi4LW-BU2{gyW8VQ7r1~**9Kifn!`E#f(j~~yG zU%i&6ei@ZmV^x9v(HG6aA+nb2zrOMnyi2r)N5k~ESq^=~moj18^|NWA5o zStZV3Mug`5Oyu&kX;#Ne;cK>x%(vvm^ax~5_-Z+?Ijv7ow(n2^Z85z%aHJ+0ANhn5pj3h3r7m9(He z!|SGre}B3CN_ubw5CaVCI5^9i*gJ@R={N)DdJ^AQwr>x0`U;LOsDB}I^q|DbD_Lp8 zvu3Y(XImm$c3<0{?$D?d&bPYmU2AqSpwph8*x>bvVKqpZ1w?tn4@bAY&S7(HbyAhT zD4V+nTWILQlE9*^lFW-kiTCu`QD%R-vjV6>ID9WI6BrmqO8?W^{^z*YeNVmK4SbUP z^HAfR)6X~g45#Nfk^iu7tXy@9b!0vL!PsnIAf6nGIL1L9|7e|)8UMP9XQ0kz-84(y zNL8t{NN4D_v7kt;A<@i1I@Z*nX7*0_ff>f0vnFqCHzYyuxM6_lo?o!&3vF`{k26=v zq(6j=#DsP&B`B94gZ*Co6muTDQEL+IKt-}E@TZ_MskyVda7^txdF~l$$>{@SX{G6d zLtAG~+Ue~exSY8Qp4zfM1K0T!|GF#ufC@?t>{&NF;bC$KXMg#Hk?qQaruCHr^$J)foszS^}ouWC&A(D>BPndWb)45c}=&!S=kVO;%X zU*(G>`8>R7J92T`QQ3@?(ZbB)m#WudN#Y6(5Fg)9y!RSEC?ANo_S@bU3Ze3uTz5Db zPfYP_9;5!!NLzn_K8QHxc=Sem<`aoydd!6J4^`Rx74aCAgE5v8CwBWLSueP***j9A zj(q+8M|1|c{MYGqkVdI=y1Ku|7xb?1VpTR`lIr@B* zfB#hzrsKHk?bT?Kc{MHbDSh!m*})T|Ho4Qsz0R_{S`3^S_lv zlC$8aO%>~ny{FG2>)S>JVzxDtZ<)P316e%ws(^_03p3x#g7!3W^dT ziIcPa#9^1jk|$^yh%@HapX%e?Yi(th>Kuz^x~c|>QIwRAJ_j@+O=(ok6?mUpFp%5e z)FQ`p@r48hV!V6wmGM$2tgRiL)fjo6PEbRnG2#b{aPI&+eA1e_LW($_aMG!0d}LK~ z+Pf@W2>8PmaLNdZ@_01`FehwyVV>c!sV)5lXt})7!_{^*1&2HD&4e(J3rbz{SZQfO zEnEW+>iJ+NyB}$nZ}U>}5m}Ya)$c|~Rhi>z6*(ag1yMP=jY&G6R-FgyJLaK=MylOH zHPN1YL3$ZRU1?a@w|5oR*iYEW!)0RVs^{k6^j|m&yz-yXkq9@+7(PjD8OKM^hz{zQ zm9pW70NMe}r6mdVe2LB{qAknxcnP8tzBp!XF?8{|wO^v&7OluzC7!!I@#nr@34)wI z8|U2|ZYL-%TO6XnL7&o)kUbD24no6R&5|@M}AX({dS8B-J*y)oCna^$Vaoy#PMK50G zRfR!77Sub$TMBS#3PwUESBd78isOZ7lTP(ahHL&@Yuwz;pe-~pS1;FXnWM*Y^2Ee{ zyGCOIGm{!Y-bqmCdj-2#{9NLqu_1a_v=F~rD75&Cg;*H709j&5*(gIRbJ1SWv?sg?e6D%Rn#hBbl2|A6I9Zb-3k_CsE zMojm&IXUUYN?f+Nhql0;gJDbjoIYk&j*!D)Z1wAF$wVUaF5_!7DNgR?UFu#X+PO=t zvVzz6rMVBG#s-M*loBTnpiq8OEE)~B2WwdFEn;b{^zyN~M*)IU$}9x){33{f=8;F4 zlNVC%p5{{25DyPP%q)nS+i-7Qo`%q?(&j8BL?rz@8vw!vm~_a5Z6-2&jM38`d+e!* zuUZzv_&OP@$&R)LSGH*{5<>5ub9C`RA6e3lYopsRhovZolNiAR_7IkB93WmZ#!lht z=-*nf!GZ3z@dHB3UKW*?Zmi6YadHwk%deQ2T=-g^Vxyh)oX2ZVi7o5!`;}$WS(gSV zVsj%@8{Isc@A(F2gNJbo^#l%|V}@tXDs)IWGDCR$eyh&ff4$7Aks z5+CeS2SFd;F=PW`TnWTZuUfjcdr)8}=j+30D~{m8@(o2i>gSX-Ux=7D@GGli5%+$C z8X%o)t=a5J(IOi^;4WU(3@V}b0o*Cp!j>L#nyb6p+j7|Riwa#RQ)9+MxY}cFyV|>~ z|G=rvIYZWs@O#1^!VO%c0hqDAUPNKj{|FxFxPEYJ4!RzBT$%rF>7bKJ-c&U{M3qU0 zt2h)wQ${`aqNc-x1^{jZuAcC`Df2_Cq^iuVdEndtaQbs2gbr`yy0PsvV2}dyj2p45 zbDT)(&^CR^ynxYzW2~x*8{l?VnG+ir0P;8&nVhe!Zd!mrmGPX5Jt-TH@sbGUyD4^& z7w)GrNAL6^v}f8AGf`%gG z%BGB5OFpu07$Z?kD3M$1JMK1lg*!!DxoGcG6O=CSvU!H_)#VKhF_>eV47#>1dMK`%K=;SosS)QPe(@x@vxZaiKHBCbv*i-;oORLe*wlr>< zU@>7nJVN9Tq#C?pFuJgoY-#JlG+qkfrYh9kJPvDNbV!n>-^fPOIAzxMiB7zMB-Tw3 z-q$&xw=VL-r!K%BeCyeF`gB!nt9#(&`NwF(wLNY9zD=A`h)6@0PR;3v+x9BuINy72 zxI9F@!i7n}$@a0;v@)@`Ty1#6C|ZIkjj;y}Ux-1R0=!O|7OR9li%;by)~EaiV4+*y!QiNBBfx;ByoBlHH}Ii0^sY;w8!< z{iC5#RC|pS7^*QQvAK)EaocGr1ge;NLjJ`e3CE+usY5;TM6m-AGRG?pR$P_xD9Y$Thf4;ajS@}NkD+tj|DG<+{RScg=5un4Gs4i z+H4*@o0!VJzV|iM5Lx1_-&=$qlF|@hTR_4ad)0cKh}ykV$Q;L!aR|ffy72{*C8sj- zoOhF+3%AGlk{O#N`O=OdIoL3XaJE>@nQ#6bF(CYnwzvIGG9-Rv7&zofmM<$PaCXn~ z;|e#@@W~Pg_Ee|%SXqZKWv#!qISu(l3J3&>t-Tn9q7QsrKL!gSqNXnWpFNv3&;v@2peA-LIQ%u?~Zy3jF<95!(7xnct`gQKaCMNhkYb5 zz7`dst=XMO#D(brN!H84l5mS8JoUQ8tY6xg05o{q9B6AXVz2e6;;f}rvF5yVb<}&s z>F(t#8J-jeX*yff#)<|yqK-A(F>Z|ZTNM(LG@TudN>&C?jYTdVZ)7(=ily10W4;wK2gK+Xu9)rS;y_;mrVoqAAJg`Zszd3z(t?wCe7H6W{SuE4 z#6IugZT4BeqE-xif33%{OWQ1UnC?vt2Flvzi|7t7kOiTgWb-wnw>FbLWYQgT_aJW| zHB-me^A;3(q^sBGlflWu89?Yo+{W|R*!EfGrjg3`byWjx+&$}pl&Qf_8B~7AW7>_2 zkan9k)7@04GFT`+sVpyr!0YsxU96?VULyvE`|17rMDUZFR-G52%d_MWZni}kl?lhG zw<|u&wL>dfn{BJ~0ju|i8%3U5X5TXPDw34}EiDtFn$gvzjCS<%bs6qK<8mKY>Y|Q!mzL)=6E!=P z$(G_43PFERve9?Cv=N2mM7Y=GeA^mM)-0=@oyMM7J57|3W4p>QVARAC%}98&f9lTu zPA_0VUvFWy17(=(lo_$@WRz=uZE0zf^FxXU^WW-v{UeR@zn8p8+YX;m)g-0>#=>;@ zqnA~i*dW1UUauIrdsPEmmaiZ6hdIP>$C}rvxJ*5N2ny4proohv>0#US3|}@1KTnOl zcTy$)?T(RD-ey%BnhFosz(0-l8A!UiH+5!+H9qv+1NL5K_=V^D(-5U%XhlX= z&cHQ1$zN%;t6rEb8v)mM9hZ$1WvW&%+_r%o>+1_=%3OQZnNCr7eyM+RIt#KQEh>@rTwE7ZJkm#nmuED%tJ(gDUfV&zc@4R*gE|u z@dOHt-`Gr2^a}i$67tjzU{*paw8cJbJaiEMfC+|jou2eepT|!yR^VL&e!b&T?Siqg zm($zd?^0t72t1@ra=S3rQ087+pKGN3TIV`$CgqDqv8!w1&`cYjB%x7aI>+Tp4N!H;apCz_D^Kc8!7?uN8il2h zZ>Kg$=G$I~4Nx-18JoD&Uu|noe{86ekf`&a4i68KNO#cH#>M$#1|a;6LjN!DXdpbb zk9%@(zsSoQi~D{F2p@kL6t(hT0@PxjUs@pU!QwJ_h+NQz>kqRJ+2iy~N})L)Z)3)i zU8L+iOAA6E`prxp^?4{V#qp)7_Yj$z)%Wl#?V#J>gyg37k}{17rg$gJge*|`NVXDs z8dE(GMQ&j*g0N{+?w6~;*eR@9X2*1EX%Zt&HvMx!tc!AqQFN_%8cD5cXd7NtA>DXzpVd=NdK^_~U}{ad zo5|*!Lr`Y8tYY*{|D3zNzV7F+s!R&=$stw0sMUHAOB&(?k!qa!IYt`>WvE^8J!x7_ zh$}YPnrx%n^lc7t0VbF`-HuSN4fdQlmK3IDg^mN*m7uQG7zb#8#$9b$!@G z7arB+khG7@LX~B2q%CcucMxF4iX|v zA_U`dXFY7J<4n3K!g00;0(z;a>#tFD72YQ!4D$aCRQ`J+ryMj7QVfOUD@r_1ISs&2 z>Siu#{TY&{w@9DrXb;IR&Mo>99X>`3o&_)B(Ypx7lErO=R1xdx<8p~;=eTgc?>lZD zG`sG(IH_zyrQkta|2HkQ{<;U#|?HnP*bB>C)WYLN8Q_ za1};`vrm?r=vGh;XdQB#`SEI6{8dgL?KXEyU1YOO32+rK6i&u=2YgffW>D}hmsm-` z>)A;q#DF%9bdX-~FzRIzqfZR+fC;MO%2b`%hU_s*#HTvg1c_C6Nk@1FVfu{GyW?+T z59jHk7*3M%l4?Aqwt9FF);$97A_z;^Gj1cajdq=35XFJ1EvOs~@ymN7$6310YXxTV zSz8PUcD&zpy0s=kQw@NmZMr0D>y94W2ddg2qGZ5=sX;&wsxa@m4JE)9`{$N+ny#kS#0JctB1GcuW}J)72F z&~2z~WcjS=z~4}~?Qpz9yBFZ*Tiz!#oMu>-jmDGZt$X-wpwo>W!p*%{>gBJInwbx= zpPScHR-#z+lciV!d4^wAP*Q*QJ>51UVFFL4!&47RHk;?vIa9pdVLp7xvUG^i;CG2h z#-^eZ#1GY{XORb187V-)6k=>4*i7n)b1S7I(vf0COrXUu|KS6{O3W19S;!EsMM*3J1F&_oxHMb(Ir3^*AgQpc08^XDtrqh~2tlWnfF&xfV{ve|0mxjIX)$FAe zV)AP6_L|lenu0lu;EtGjNFyC-{C0NCNvU+!b#-aJbQE3i9ltfB2bgeS5HQ(<25EW) z!7ycpMZI+^4XP&&as6*+#>Zyyk% zm_0nUjMCD=$@QZs(y$M_(Wv=tHm5zofXh8$i@Ih!G;DWcEv$ijza0kI2s=|tE63BA%LZ~L}h~F znFbB6TX%9j`bk}`X*rJ9DA7rWI1(|N@vi5io7I>P0)e);)J>Dc{+$Tc!C~s08Er73 z%~@X=VEmnq#-agX);cs4RPjeD_D}l!|7mQGn9NM>ZvgCnM4oiqKe%5E`W`u5ng4ES z5&!FoqJO`1{C5ZZ1-Sal^rAHR-yZXKj2;Srv#-ILiLStlgS_S;L2Y3zjPy^f{D8ps zXrhRVe7%Fr!)AL(X4ow8kS^Y+`<{Kzy=VWE=a)Ih zm}87N=IHP5eJ%2xRH5v41tigu_S{Dr`?ZX;&&L#T?dEKLOt0y@30j*AQL!z2X|c?X z;onsFNN2EgFC(KkPI14~gd;Tv*l+@!Hb8ATeH?_9yc5lwXPBOlWSR3x-H<48?!}L+ zO?twAx_2eBQWFwa8ap~R4HEU)Vg8~?Ul_G+v9_}Au_ zL}B&Tz46T!e4ot6kF_8`SQ;^c4cn;nG`>z6c*g^iby8EDv} zG3BaRMF)19UN1NQU001CLT^55JzPizj}@sdd{8!)?`_@Mv5l*${mt3?>A7QVOz0Vw zF>3{cb^>7x(NxaXO6m=kZp-vmu`CWEdFM|b-_~P(u1$FrCw*~3~NMY=JP^vuG_L2fDY?|J9kzAwTXv@bG*~7 zea=lS_wMe0QCs%%R*$W&?8-EHSS8PbJ&~4e{!XoR@#LW37ep$9X!84&yaHy0oE%?Q z9xO`^o^_-p?qE+$;93N9hl@dA;+7g~;Xi#ncJZ-F+AqaU| z@Dt}CE0;e%@|^5>Y{!qK#VpirOKNG&xW}p*brl zfrqteWa31`w|_v>YgU+Ivb!%h8rR;n_pw4<#9(qtm9b)ki-T%(Q_%-)G{0W*TBVM_ zl`BX`^udEwvJO+?Mk8?&OZ&jL*z0pch7lt!Jy_NKFgq_0x5YYhy-QaB6NNq>1`A40E_Dn|}EtpEV@|1Ap0} z#yWo)_qAu(@^)NAtNEmSu5j*( zBq0hJfN$qu1RqQzmcSu0Z zkNeh_agy?5Z!wQ*V1Cd)UW5QG@95Q-L5k z96-Ow9EUIPWI?jUxQ5#4XZ&%7l~f;lqkQHMwZxt z?s5eS=XmUS_}_H!{xPzwK(=89cuiSMO|3~1R+*T@yqmlc^Yy;h;XR5U@ZjLs?i%Ze zT<7vC$V#4*0uaK6TjH;)aM-p&k8iuZP^oL`hZw3u0QtKV`uzXKNb@^KPVsV*TEDSf zMBFcqm)|*Z)C6s`cjb+e{)D#1JYFyf%(~X{i^t}7k{Xhf_YI@89A|&y%=w+QCfVw9 z{#0oF!(TKuzZh~nIykNQtNt{D2znuI&m4Z$KOx9@)R&@KLhfezi!tXH8P9gef3{Hi zQeWzR;@n>>DVlZD+WLu8Ox#h&t1*I)H+Hc86K8YHwE5RN?BI0zuaW2f>J?%1%e${n zF89aBJN!!}Qt~*Os*UkKaXusj{Qjkoq*VPM{OSA?tHJYcE_nlSX;}Xc17Y)W@YB90 z!Hw@XuXfLWwXbBW!T<6N?w|P9{{3F02>Ca};u^vuaEindJX3PNgbptsvs4XVI3oWzy{3@_JV(b2UoAny>h(v zBfCuGFRhx~kg`gknmpMk9XA+d0*QMuK9zvZ_%M$*-Qy;N@ro!BAQQSoqdf6T>lUre z$IAsOZ};0;SErnpKYPwp&k{s5;Htc`xNi5-Wehyzo$Vw|A(>L%&1giQ5)q6mHH4?h zeBG~eQiwuWP58#e&Y6hOlbllQNoMrWL$ijaiJt!Gy+5-GVu(Ie1~Q69FuEz&75KzE zn{GQ;cay|)FE_e_#a~NXVP_*(B2RXDMyW$SRO_0$c!)O0#A@mDnw$Hy;b#i18Rzh? zOJyd^g`Ao`>*v{R?nZ=5JL(K-pLfs0%=4BWa+irImz1Ls^?H3Sk?ZfvGP*gxM-CBA zRP+O>ZR#C({d2}qH`OMo$qJGjULPg*+DkdzoN;#(=pJ9wvA?9!?{liuRW&7{oac%y zd$afCWK{4mkAIp61$emGN1L{UVSarh0p9BsIxPpE z3}HE$$Rj#D`8&~~t-<^c@d8Hh({b0ekEY*Tm)1G78aaKLHa2Wcmvs}hh zSP-&G|0S);uJ<9Qo*}4A1R%lDQ}`$}J0ZU5F((;k)h3J2jozKhdl=vpZ*})!xQ-H| zVCNK#T7O92eH#cHBcv``?V6ZWkCP)MEJ~Yq*Wp0K1yu*q1nF>|4@$o|g!ivD6>f!Z z1^x21CQ18um=MbuL?lCtt1vmx)60-)wWV3qI=OJ>{e%(N_23DC=$D3|!Y5209ZA_9 ztM7{FlZ!fJq)*biYx5`Vxzv2?FdRg0Yjj_^M2e(iS`yNSbheMD)Q;Sr{n_pJpVuFM z;QViSHzEGOC5yZTZJdDyjRbiB@BK51B zdv>J(lE>bGRO^v;o$J_L*@qmRSPBC$SUO_map?4!GGh}TS)ujIBs|_3qs`{M8F$88 zpKONqEVm8Zxb1dJu>$YAY3!)UiUIfPDQ&P5&5wf5T+uu#Zd1+6pJsjd`K9H&rU*G{ zG5i%p(U9b#?AqxuBOYHj2gyX~PL96&gR_1{GDpl;-t%tdzo~jozxJ{5iVm%XsFix& zH~SvfQ{vu6*cpBsXK%? z&UD?v=K?S z`a5J#!74Dm$hd{6v0gM#E;tK-e|KYP&8-xmUOXx!GkOHi$w&vSp3U@DyMUZYLmCUk zZeMP7HOFaO+6L3hGE{d}C+tc9kHAjUMgJCmJrNSOYMt3VC4KHKdcfh>Zc?(kP*E11oiwmv#- zfLogL2pY3fnwfGUBs2C&XtqW^*ew2)at}X2K*rar-rX~Q<=jzIdk!xG*rkN7 zo*u_nrm1~#oB*S9L{@ykm!aDZD0|z20;}?$IFk*WO-X?^qE%nsdR^zfYT7PMICg+5 z80%}1X3cwf>!~cC50U1_GF=zlVn4q%pXapV&@ojbh?vGcuA7KsfIUscPIG?)4`h(BGI`gzyh~GU8v`J5vV2V#gHuNVXJ%>IVJ}5h z>4S8q^v5Tae5kJO>h)E0OYGgu3KA4ccP2KR#*j}Pz8~0}`iT=Vs!+mvIGGx#ZG=P? z(ZA^Jl48w8y^I^+SG+^uRm*hMM;L1@Nrv!ke$qZMz#hjC7Ged1;XGd=&~y)Th$_|> zjSh%QaNJ04IzDS;HIf<)KFUBo_CB3gee3%uK&YB)n7Kg*9dqki+{y3WheT#9Smg8H z@Fc$mz`wcx|1*C63R3xp$^OH!xRNaRCr;$P*w=3U6(d~4!SRgCgqVuWTUF%;2_@2X z#y9U_?muO7xmBim&R;G)MWW>=d(iTZ{_!Ap6z07NZxl|LVS_zt%*C#1=bP;DkWdTzBEa{Q9QjJB* zzaGx@E4_FDnT0ruXy94I?@9lD*JAy#wuyM{+@Ga)E8_iyviHiOUDfa5eg@Y(K~MVZ7W#-?A|}(9TYlSn zSM#mea0sxa?Id6yqs&?ub?ySNCZR#Ur1FRY2GI~aqKuDun4kittayfAIkgpc$(CXV zwmj5x54oi78W>aUp}A7{{nGED1l&GwKV*dLyB;du>GsOISe;srKX{iV&=@>^D*J8T zSnBz3lG`Rm8J>6@P}-ndB?_)rE45qep9JhQW=<7$SX*E@(Zv7G!{VR#_b;oY+gOGU zaG|ri(OSdf{HiKl%_7$HDw$51s5XB5Kz>Ih^p+Aex&h%E3rV-9WJ|0;LW zQ@UDr5LIB=k@tGYT|R2)Y(0-WbBnji#oe2AVKtkS$see*e^fzK#Iv=Y`||XD#W)t` zC2`asxR*rQW<{~*yly}`pgw9!mQ^zTNLg{f345GAb5?&WDJEt48^3$l+*~&#k~IHe z3+5-z*G&wv!1Jp0u!BIM+?nZ)lUE(TCoPl8h7Ni+x3+hyQ2d#dho45|lTWa4yP;B{6f7eGvbZ*P4`Ud2N8q(PIUG=7|KNWZ4kj+$Z~}@swG#L!smC z!1an+RNLikd8`}9hezr{Oy1vBjamB~FSX8rAX9tl$dKF2%qrovAK&%n42{<)9>blP zL60Mp<_T#^XjlJ$3qAmID>d zv1;r4l-NAp?=6OxzTW9fx2l}xxq8Hl-M?P`N@@@x5&yJd(s3IDGL$J6tBZ0fDSWGs)Wqpp^RyuMusbpB

wvJ%6>nK;*`T71HC16n*2U8;Zzc}>n19@rH{&QHWcl#&ku0FGh;b_$k%2fk zQTN+A+vSG5*s_~}P)qdLN9EOb%>d6k*V2(9N~Ry8Yw2vpW#BJ+^v$tq>%F0&|E}_E zr`^O3D=XHE{GTzf{I93+*P&>jfoXieU|&I54bu>|FDS@qb>rMMmXYLmi8?eVL1ATp z(!SBsSh#4j_A#$lXx*3|qvOQmjoGIQLUWEJYgVvh)S$Tws@e`Cq~IFy8f8@-;~^jP zl#`D#`rvj4xy6Iz!`(q7imML0R>;t-*8!b0QA^`vJ!`Wl0bktT;>faXYiW6e)tpN# z^z(`gZj|!o+Qtcqv{&$KbK!*1v-`}FNVMTe8%WDqGl&^?5R^3R6m?eVPHN`!2|v>5 z_4U;jlS(L&a)O4jyQ~oF=OjjeB{42GMlGpJWu&+Av%l`d={_tm?~NsA@@yymd^$~UjP?}qZ`2z0LEQD|lFJj4 zKXX!Gvl>EUnJmZS2TqC}R1aFqbX8O7HOg>^skS7lJg|?!6Lywxjpu*pr6HDNWoAiC zAzuaV=AKNJ%DFi*C9(oF$y5(NQG3jO-lU$IrfQ{vdI;j9x&~*ewKttX>~}G1t{nni;~NsLoif zqzOo6C5bUFb~f@eg1fo*HzOt4ObSmy1242IqIsh{1rRD`*JkXt>@0HQxSUdU^NLo?femL)e2%tQ-p`yg1-00M*>#7+qeDE33k7 z$w$a<2lFzHb8}nmdZQg?H(mM@C*`3`z+)D9g%|Sj|8NDRQau7P<`+H@zT4n{dKX46BmdJA>((7*$UZ z>UkTd4fpMh7n2o#X%zbqKU-R0$#_oikwTNj1jC`V@Dt}VH#JC7()z_Z|3}Hn_PvDw zO`8lePun-MP2V#IJzbP_;jO1PH~9qRm59a!<3TU1N7kMHEF=$iv>NKqlgyXz;RNx6 zckzm(`3E=G&g_5XYg#+UGM*<1==pjwlh)?zv7hj-Kv1NXKwpAtVnf@`Fma{Ng-q(N zKq3=`$!q=j1IEAdDfuhVj;@-Uwf1`HpJtI$LJ;XTZNOx>?B()=t5V}vpoRoW#uVLp z=&#pQ@GFq9O4z>&_OBZI*QfZeHum4X^FUo4%E}np)o6kb-W6E^A9{F<)epC=vd~0+ zPluN1XFMgyd;yP&zl>*05w63yy|IUfgd?S$I>|TG;`9tH#y3H)jRg;bj?H}vA zrEWeq^_xsbiR>*s6KPqxC#1TXw!_V-Lqed1KK^fgBF!MkhwcM5xgQZQRrV z<7dBHjA`oZwtd~D+|G_oGxkL*QKJ?5j3PbkX7#Om)!!#4Y{H)xS)+>XkS+r#HRii= zN#}g*Nb!0ZHM!ReonxJc-qw;PiPgrt*Yzwix4=(6OzwL%8s?zNXj;8$qnZ4MNuxYL z#t2aAm9}5p*kn@X`|XybnXBPjpZ1-^#TLz0W9kZfdlD>4_4S` z`k(pfRLQPk5_U&X;iao18=LAbh)h)eL4?f%wugS@Y|3qbZ;8ztnhJd>L*uBM4JZ{&x3RI#Z`tn2rd2RH z7PCgibcevxR{hYli^0^zaEwcG?R#Sv+pT#0`&H_N9`jR0PBZ0I3B^U$^47!jcHTHN zw*Ayym5>gQIts;OFKGfGIexb3+GzB^(mnHjW#-1|EA1ZmB!jJreW=Ij!s{vu9c752 zsb-tvr@IUE83*haRDemuPaI&SKG+WE*{(YIU7(^NV?}^$#frbDX`aBlZVH8XD8RVC zN%O(bBDKI{nD;_`bqw$@8&T_AT|4>tk`RKj&x796*!GsI*mx^4JIiR6siAOB&qE=9 zoMCFxqAagV#vLyM(!M0G8leb@T4izR?begZEn$e)@K8rLjE=R0@5-~jtf|X?B>(Ld z37UVXudVxQE01E`SlI-IVmYWZE(^_BsfvgCO};`xw9myUk`OQW4NuL3Xq)XPHNc?YGWiyk)?_K7rPl_uJUI(%@{$pfT3|RDd&kB&o4n!1>^cD zA~Xd}BM>N)p{&SFWAeLFhwG6YbAy}=y%JLc^TStta3SdLw zrG;d%3WG`wa`&T^gWtBe2j3#YPv2W*dk=eXlBg0|R6^z47fwe%UJ7OU)YR=xN5nWnF97OHaxHHg)-En}M_PijKKpG|3W~iOALf2n3`qDTZ<+CKmUf zRih&qO|W{0OHZCWbA2c^E%QXFL-mgO_?L1q2SwLl```ve_)QAL`SUqSeI;S)cNL1F zN^%dp+F*E6m0jt}I(-GZd6DCk&u3UYj+Gwy)hUy_?jQq*;4-5)RI-#89T$B&Di^Q;cia@eaf{Sa1}T^Hhr{{VH^x5!c1RIAbZ2#I4wA5D0_5CL_dWepCaTt*P1NzkQ_dW|J$_)2^pe zBcQ1+2CW#S2WUXa2)y1l&r<=7HPHE`>#m6*ana|{GT~{Ou^Uq=(-Z*CKK2{TJ;9NF z8wW<)rG98s=z&>pc#k?-vbqphGX!|G-5(;`zK8WS5GPq>6CbA0H;5R_?zcft_Ew}h z$8Do)@^ZE@(YfOjnzf&7LzXfkEuq!J@BnF)j9z5x*lg68FKMb`dE669MJvmDhelf+ zHFM)w9)jm6&WBTH8!2Ix%nAwWBR_F;Wbw6!oyY~11nT2*IFkpO4~d8?nf=Pz&kDDo zsH`GHzJE)`qzLd~$b;SOHTO9N(|3UT;#k;l=rPAKkWYq2K`W=4MC3gcM#H0Gnu0q@ zIx;1W{P30EEoY?%LkC9Od?U3De$6r*-HQ*Rjvi+VgYV>?&Thc~_DfG=f zT_TUsw?v}BUISh=uh=7R2zqy~HF-{R9|L7Php32(%e;6KLPsO2*|szE@f^&dy&R*B z;$FCzu1;5w!yop>`l{cyS1sn+J^Ag8R?(pOmlCn9xjW1Eb)n?BIz=*Dl;5U5{?Ki$ z_uaGZY$kE>n1h>u`4iT{4cJ{{+ia~QqHSPnbHgJIV>14Ec~NByaU*ykt~)h&rxf*0 zY<{EV$?XG$HjYA0Po&t*4Nmr-y!?ryY(U%C%(V(k%T(Idg!^iCL&T(G#@NV6z!}sqGanV8MDnjKynP0h}4S5~`_!a;69AiZ< zo#s9tJZJnPJd|G|7sK1?(Lu5CLT)0Y_Wfjzf64ct49TS zWp5?q18c%lLrk`K@}Oj$!e48YnrG&5?4|t|*vq|P;j9l;+y4hSMDIygcQCS+7kFTA zmR&3`z$6cIMP%AA4bArU0^R3et={0nh zcCp};qrJmkAQu_VVehKJMoC#tZmsTY$@DFL5QusRRX3IF&Dnnz#4vTp{>qrG0v5O2 z=$8HVg^Bs=cO71JO2mMQnOW^GQ_)NGE1-xBDJcgGXi*ko&--4~U(3E;w?^rcGKlfe z(TtX+x-H%6bp~cqJEBS*aiBvRA?o2z%}*^NnaSJSzN_z8H#Q-stZ`0AH2-yu_QoC# z!T#)}ZpSF0#@I}$M@{POaN9|(E)tKDtO6@oe~-YBJA!PP1HbAJPUGE}nn1&v93{E4 zKj<#xv#S|mkM&A%zLM$QRi<7}iuf%@zk@fI>Px1WS&-4ue6O=~5$`B`M`}}kS3#a! zSM)ZN7ikUsGEK?E8(j083+{?_I-Vd(wwUo9Tdbs7xQ0?*IuV;RmK$(8O%136hfs4p z6D_6SlF$ulVIz9-kT`YNrr}^{s+BmFy|kXqRT{n zpS2V#Mrq`5i|+75B>2lvQ)wh3;GwH#>+Gdr<^DtOHEKI|*B1))B(j>Tva_RPhGr;W z7;T#YbxOTxCxr?BXkYlMU+wfgRK_n0Ar9p!;Ah==+#@4()QsMZnbi1YskvI~u6G(M z&1@C~h&B4dE|I@m(Ilw!x`@In#*@SDbC=R5AgN!Lz^4SABy!JtmYEsf7WPkjb_#x3 z2ysD_+X{c~p8I$!0Mk-;t^2#xLjck+`twXCFZCk_LK|Yrhc&*tcwMfZ>iljo(t{*m zv|48p+lx^Li$(z`uV0pB@PFf?J$W*}ZXqD`s>!IcZeR7ApwK#Q(KG1&eb-U=1uzMi zbbt=AA)C^3BcGQU?JWjTBxnimbdS<(Y{5n(%XAEL8jN?1T@dLubTflU#>GR%qnBYI zEfpR4$y~LZ?SQ`lZr}gH;2Qh|TMJwprWI!Wv)gKa0p?o$>+b&xSpL8IZMdI{p<#_L z^xVBJ^^jZ0k)h?R%@BPRp8d*nB`HN>o4V~rncJ;#nn7jfy;`JZNcVvQ(Fn2ACwa{eB4SJp7U zTAOUS#Dy$OlV-e2urE$xb=HYPpm?lAr)@KrH&|`JnzM7NA2DrOtG*v!G->kCH~=G7 zW7tEo`euiRzYOHv?0My}Fe}*%S~;EGANRBBArLpo`Lj4`u9p8Bq8Q8_kQsmHH%}_^;mPPYYdv!vg`7j$Miwr0n`9&RR$kc0=`8A3uMY{%$129lAf~od2IUAi+ro>2@+C z^LwP(hIa{fA@&X~4K7C(KXEeUu=?YvjZK#G2On;oxe2m9l*7`0{U-r1fB#vq{P9Wu z7>hadIxs3q=3@HC_HK0&)yW?ujLP*&ulNUc9&Q^R|JHy(?xTT8{0aN+9kSgF3t|*- z9KpxUv(H=eZTo5W7iOvZX~M`li-$Un(yh#bB*2O*5`lxtJwa}##`*j8;qxwH1;Z@0 z!}u=yH7s%WgTSH@a+UA)Tsr0^cd`3MFQ!c`>Q7}yGx3Ei&C?!VL7x;pNbuq<27wrF z)<`1yUTrpHmpEowx>urO>zw&Nb$>4cGC4J94a1R*pYZP>$@fH=-YrZ>#kM|JHRZLu z?!<0IY4GVS`a9+Q5Lv!l+$f+CZ=Qx47&Wlzp*;x-vWoH%)-nKQ;3R;*W5bbEjxp_9 zuLNDUs}jTPE=7|augpU9g*w>5XrSqHraqytBv*BIR<{@2nX!I-ZN4Raaddwv=RD9@ z$)!oztssB9u;k?Qge0u=MgVnoBRehQiZQyp?#-s_ly69;FN#3P!N~)3B7FZaL`jik zbYD90ZIJ5$@VoJ3tdR!?Vi{zXnSBcJvZ;O-(uB(ksQ|NM&^TbSJr~oYC}LT6WJ#e& z?QMr}R3R_PJDFEK?7&$pw?0u1Tmq7UIN#j%zBbvD2SMFVYy02tLI#clT35ul?e6%i|N3rkcKSM?`IkdQIua8$EmbUE)!>i${0i7e3F14QFIzS9y;OIEP${5~&FjA6D@UwmPjX8bj;g;y^bKE=6npVV6( zbOcF!_F(Mf>8X<^gtNFXDF5oAGs9LoBc9^W(u&~0VXTeA=Ps;3M7ISemv?BmD7Lv} zH3UMOOa+Rr*CktZX*GA9iZ(<7n+go(ybQ|ZQ&Gv>EFP0OO8CI@F|4Rv%=?5J7jT*@ zfwKIlgje-ZQ8~tmt@fX?_Hp1Y2M-4|Eej?@Q-D|jH1YYR{lZ@SyKq?H!MJOsy3Q=p z=A~=<)_|2a8aC_g^@CrUA25$-Re)#QLe81o06Exks7;$Gvh#MLAgbG;qoC;A}c@%NNu49ds~Vggq3`p!llfXP+Z zOVay7bmv{}H!8e7_oo7%1t2uNUcu(2sjd$yh$GIjY?kw=r{mb02B z3A>oxtM88Sm90@eSA~^d_>&Mrz3ztBl*g*g+j#UWt1v)#L5#d&|GCOsa+=0!ljsLZ z8rPT1pOT<{KCsH}+<`nEyREF~g-anR2Q$|=2Jz(?%Uk;&S|7?_QK~GreB(~Ptn?Zq zoq&jFcm4C)B;50YeKD(Lw0bv~kekKak9fTIfmi6vKIth%A5AC!z4L8S-H@y-H zGJZXGh(Vjnx1#w$Fhhv?i)oOK?kx_aKqQGk2h@^{joq0rL2t?~jOPJc{tgm28+fbz zsnOWEbW?K)8Eyd=;A=f(urIYS+m;N8$UNsDW+Mq#v7~>Gcv5qu*00a!*J_yj+xndbNcciLU|z$?K^nvm4Y-qZ$*xUt7ik?(KGKJ ziGS;70`g6OVkhST918MUPdTgrxW$ocUX4oZhkd;lRFMk1hLtbS_p~$#$<78Ii{dTE z26M6BPA;jRs?L;IJ`=1=5aJy~n2nqIzqySe{^;U*7_>kF)!XvN6ttp*PaDc7%`0J&ccOB{<0`j=(47wJzvQk7NT`!FuW#C3E9MpA>`jl2lkF#@+Sh>^r;Ea9xP z7w)Jl@PVqx5J=|^|j}kzZpWo~~iIi263*hy< zs%RT%id5Mz-k{5_L6XEtrh;fjZ23(G;nrJ2s}JRH@F8tBDSqODXrG@`Ih~#M{t)bW*Pk*ILI~*LhNx z3$_kuQIHIMq6_=&bp$zuxLAdnlM{*6)#w1mRL`>!jj_4!Fbz7T^)*R}jzCgkc%0IO zom}0GMyqf2!I(ah5yF`T-Y@|Dy%MS>NegnQ5{m1F)sq*iEMB+za@G78?USkt?WXRO zA$9z?eLF*fWO6S%HE&W>mefvxo^r?cki08 z<@%FKp{&if?G`Xejs)c;bKQIIR5VA1HT0BqIEGTrZ*devC&VCUVXq@?dY8V8R`@6{ zw(fvauv5foc%=ZPUD&Q>ZJB(AI&9o)z*;>uj$s=GrN@19F)#z(yxUIH5k0iG=0i<+ z$uoztjp^rGb4H>St{YO~Y!R`J#`GSU=Xv{L zk~NC`;SDzGY!>*!;*se$lzYaItXnQt*2XuLJt6ryA_Rh)wKdD>n@pwC0e$W@ektpQ zA|cZ^;|3HQ^E_gL;yBxTp3A~;%&cA!1iWFZY&9Ner3G$ph2}o{cPFJ2iyn(BT|aT8 z-~Lc_EKxsK|G{VawKs6BQXd}amodKlct}xRVGApC`&VU?|D~Vb{W|~Z-1#RzvhmP6 zZ|qwYM*?r%&ec!-UC(ohO|d}F=ijW)Rx2?OI=Jr0h{#JUZN93t&st?8 z!@uh)cGo-TqXOqcl$t4s_Ju=}dBb(Mi$#Vk>L_IQjJr9!St0%I5RsNAK~XoLYzA@0 zJ;6{$=iF+MHd8dAcGv99pT?2@MDS0K!qYwN5{|)J4Lg3m&1@BCNM_6yO`!2e{1xC8 z9j=;!MRF7kcPOox|I{MUcG;ljX56L@Po5yWBsEvhs!fh2XsU#3#gEHwQcr52U85f@-J<93K04v#<4E#nHwSk3{%{$pfeUI|vCUAJ+WpfbLnB783ORpMm-~-ff7R6ahdyEda2vb$Yt|nnc)Mi&sIkQdDry<1_!E_% ze~=#WAGQ^YS?e1QYQ8C{2RH;yb=glw{f8$Qs0~=_G3H9a;BSUaft}v;4zY2|wyJY+ zu@$IVd?|+|qd1*($;|3p7triKjltL3g=|^a=X=V1&>>!vAR}#?_47li52(#K!+jwc zP7mTL(ij0}p(_&fI7>_Cx;m$ti|sd34m|9LNLMY9VR!fD*&b+DQ_-!{Hx2Z*WZ}hKv_t^$NLRNO z(Ikl|iB%kCY0@6wGUvAu2n>BO(y2DzvS4YJh3vh^0StO&;g?+$`pLsH(zjt9-J%NFZY~kNgquq1M=52lnqgoxKoFE;u?b16D*T1~7F=qd|4+B-VBN4V`ZN=0b6-WhAQ9Mj$VobjSe z#Lv->r;;uCuIM+SCJpeax~!SpNXPERp#X?JNXaej{9tM3fEW#22oD9`+u zBXI88_2T)DIp5u*ovXs>L<1-fvQC-#(yLda`_mjBz5CO-UU5Pn97bmz|5lw5BZqs` zt#42yFC9JJ;j-cSDboYFa4hjNS)10!swzY)?i-piaXgQANQo0x96Nd|PMRLy?W&BE z$-$Y~p{Z`jp)P#-s6k17vpO0pf5HI9rCX6$h>d6tuK@n2ZIJ2Eg8r1<8?K7t1;7VQPtxA224Zj+5 zb9HXMyw3TALUNRDJ13Ty3H7PXW&pgH*l;;=@iUefoqytp+{gv@us@8($Vn$LGkp|I z)t-to8e4K3Q=-&Zkv&)r7_*yMl+jI+M6OvS2n{ll_np^#NdcIgFqOn9G1FG_N8})& zk)8=T{)G#DuOlT{+vL2Snz>MhN)YlWaz}k{!33V2d_F(j?-@PPEJhkC;O)#xSGwA$ z#B1V`B5=F%nrJDo&TW;QniO#&YBn_$X-It;l-}Fs<=Dh`?iGsnGQMFN*V`}Rm0n1S zcK7Y9Smp|7(4GCnnW$=Ndb?f_8Q)wd)gKQV_wekl>%Ew9KvNo5KtjIQ0^3+(-ZKWz z>tCm&%$UL>3gkuT+QRYBU>U`yAS!~ z7y?KuO1)4UdR?_9F$(~)2V;i5wsO-oV#yN8DTBnXzO(fq`Lv#Itv5sH*|0$6okHwv zBS-ivE1#G*xI_ue}Ck!|fPBG0wPchWjV zQ&rHv=~4*Rq#Bw%D&JpP=%x*+qh$=jT_Dol5drDyL)BR6)Y;3Q?aV%M2jusfIbV0M z1-N%pq15RWZaxYE_g^L|;cYKdJ|AzZUL~8w&9Y_8qy8!yQmN7Rc`ptehKJ|C2x*t6 z8=2Z;bUv?NS?yQkJsm`rUHW7k^)!~SO&*p!^z`x-mrTJ2QCG@zmG|Dl3a`5ltw<0& z)~0@(H$_ba5=gxrVabhoHrI>RWi*xGXERTBT~K;g9KKxuoOYPu;fHz51aT?$=Hq^* zXGyYTzH(h?;k$H>o|G1ByIAuOz6R30uiC4$tApV-+1_IX7oAQMJSekN7w~TCL6LyN zOVy?P%RI=HM2PdryEoFkipg-%=jj>W+G89ib#9AWms;*xArn4!F)@+6ySp;B|DCrs zYTnYV(K94vf)=bn;Y_x2-l7wmm{f&V*$AiQ*N+m-aMaB6IOlz1s?yI9sap> z4EAFBA!~eoe5D2fXdIL@PNzytRyAr@SBcTqCy?b^LIBFCiko&qHETHO={FCZCMJ@2 zz9H?9J8KU^)wV@(tjv-~q_|kt^DJ)$^dYt*r37?Aat~1cmRwPT=%|AsSYm7>wrQHw zKyPy7xC7Y`{EuoVYnI&b()V*47b#X$6oJ#b@P6#st;~wJybBhWR{yevWrBKAq`~KCe7wh{UMVSwVjHhcaF2`yr-y#Xy%z!I z_lyVWjVs?O6h0k#gGE_7%7dAw$p<1|HwN-tAjiI_YB|R-TwWS%F#t44_-#5|MFXqa zH56Bym9xq_@GI3{oNG!aI2YZaH-m=G;^7?PHr9SGg87{e?1!Uf%`qM8&Mnw|3SyVP zNYlS8Lj|^@{~{O+_KE-F6bfSfZ>Coc2S+hpe*eX1RKP%5d6bVNyOgR&@S7(@_Gs7T zMtu!BX3N>x<5h{(HN(AmE@T{0oKaRCVSM>uwaC-;-5@zslySo`Qao|( zu=^xR;>QmW&hxd|_wd^e{R|Fu)-JeO0PD!QRr^xObE)re`Exygr7Ri0+WADdHwNlYN0rwHU~KOK}*xxIWvp;{mGH0*c~57 zpuP8b3Fl)p(y6bz-mL=~}?L zNTsT=y+c+wr-Jt#SmZ|+7NU8A0MJE=uwG7!X7bY5q{o=HAZG`JICX~}=hGvVZl}ae zZ$d`7FpaIu#vd*E{+p%u>@Ukq7K(L+MUJ+0fTV^YqN(A__{E9pXtEgdnNOJX;;B9@ zS5$2Uq#57qvO;5me8P1(S1Nj;cPK#Nt*J1mzxJ6yv16T*j-jlUI$yO2zw0u-^FZBe zi38hRL%r;Bokg>79#r@@0HEeImRJSL8@G;0{)DL!oIg9nF{^omlsWg$=(1Sp6 zXEjfU8#*wYca8%VYXFg}R!mpj2UxX(eek#@2K8X6cHU4p;oV~diQ<=g01ZYrMO?zD zg1}h)`Kk>0xdD~=ZA8?BXed{RtaS9tVYC_aIXhEsqYu{;o(_~Rohg0Z7IMFO>e6qY z!%4S%$mGYJS0C&o>Su>sWmmeNWnf@c0r~LL@gxNQ8eyMP^Pwa?)>6 zZStB$pZUCa|8bLt zP#g*>Bf=zq7h<>f70s+H%{dX(=1upBe!=Y-GElA=q(9NEKWXqy%D)sbON(P|@A?u# z;#aX4&jNF^1j0AzX zZ9`*fJ`rG~$kAAwg*{^wJ6=o{H&Y_wTRb_r;-Bp=-5gx>tZkQse%1L=!yjveIfuMt zL$r!K*|n(J=^n4-4=}#U4@8{>rgU84x>6isc(3&ZG1-9fz*^GhfIs|H+$Cnm$UZEj8jS0^|KPk zR;%?17h^St&DSgOhi>#Kb7Iv#tF8x9K8rogZlRenp71g$+lG@bCn4nilc0;bF~zMq zS{>ccg4bnHdvTnH_d5?4Gg$;M+{`(3A61n#Ie6J$PT~*hv-OfhMT!H?#rIzZ6S{pi zcC3{2vGJsC8hpU2gr&az9?6*Q(rc;%DWO#QG^ixY{*sHh;#;!f;(0lid@R{E;K#v5md^+MG8|oh3gzNe23yN70xEy2a;_F0zngfa2js zP*qCa+L(1V*rcV&WF7NL?791bKr~wco z{sFJAk+#x4-G{MYWYf@(h6b%`1*#s~fQzpY0vSBJd1Crw#ycD@kI*^p$=jl@U@y~# z#AwZMp0Bp&f7~U0_mL^N&VEHer@V4)fGuMzuk-V1OaU0cXLe~kIW`>hzez-TSiD7btY!Y7_+&^e;(A`bx}8{O0C${ z#Fr6KR+-%af3u&PCVZ<)81l-?WC@pSXvj^}xY_EQI75MWHL3=+GX_a|{2nV@?q1`~ z+jo}cjFAT9JRp@$M6kV5ZO5JW)qX76+F*}rq%-RIo*-Z|rq@&3t}$x1Rt z)>tEJ&hPwuzu&ipk1vDy2w)>;r_{$c)z;e{O?JuIa%!M-G7pDI1^m>wE7=MR@U5r3jrvvibp&|?En;47S33EI@v`3Do5@`7fCq~%X!pvMrZIuJ z$EY|qC~`)4xMs(04Ei0T8&0>CEYC#p;Imu78^P%fs04nd57wmJ$YAiEEK5}ix+OC+ zmet@=7$(>F?pKBPVXo|sCJP<&6%K{1(j`g|BSlT~*_A~7ou|!cmrHe7HLMchaJy@> z0lY2hkC0Qn>fU~5sB}GXBw9fcr!c(A#s?taJoy^fp9Vq={A3z~tbjnV#D2alJd)_% zRKB9x8>ihpFMl)lQ5~6k9XE}P-1n}gj{EJ>_1=p79(e6Fn!S2C_^6?%i?dn-nWIzm zT!YZQ!qKI$r1U~x#bwID+o}%c%o6-lmPjg59D^=cN^yaSo6s@U>din-kBL(*cok6g z$rytMKtOuZ=OMu_7}DF3ymP|=Icc6QfY$`vGjFje)kl00l3aIT*>7o7t)d6m0DQ>- zd&9$pKr0C@QPrq;1uyr#$eEc-+{Fun;dU#}HUq2dEu0~9pRD@%r)p8jP{?^l=IT$k zveKeRtL)=5Um9A7yF(XQ1MKeou}!F6g-7kUi5Zp9CtBu2{dL(Y`p`n(%)2^YIPOx9 z-3bS$n^^71Qm7hgJ`_&uKETDmaD36(&{ZFarc&S+!q zrP$~6&dCh9|%8!$%EmsAFn#Ne|7-waDBr3pwuPMRbWOB1) zCCN@ejW*VNHNIP0uM0W89=TSDRRGl*h}0)d*nnNj3Yx47J`T;)z+hQ#-ALAu6a2Y0 zKle#u+P5#&A@*?jVG#FB!x%mMqt|o1`en5%Jp(s$vGpcS+t_5Q=Bjk|oK0=0(Y(s+ z;5myxSW*jO&#zBMcvECKQgEH;RBNK4o`c95EX02Zno=62$Hr!sT7mT#XwRPZXllp6 zW|7068gVjCab(f_0L+UsN|XFIXmm6@Wn2vu&NwOKFgiDfr1*_fST=I=WHyl%i-2o3 z?9a{fhGr59-qbHrc^LS;H`Xg+ryId2l}_rR9gA9Z@yHM1Kjio4eGJ5}oOfZV zslBwCSysZ1H$AOMIkH7ww$~2uAVP|20Phu8cHS<}0xmlC8DwrQ^S26eCYwt-+Dp5e zJL}08A9hVSMCpA`M#BfIbr_?>yu~A=di`bgb;3{Nn7HBx zHvTx~+TG@2F2oEhADO|+`)@}txL zkWj|&aV2(!(_{xLQt}$`!+*qeI!>{~CoS;@%ogV50dKUK)2jWqVo+^c5&9${X$c^1sHtvk)$_%eo0$apC9>0# z>~<$%O}oC{c!qV@Sg1%k7DgecBuGhxMgG|H0)5fnKS&OWt5|HV4ZYrs?6G_%?PY&J zPMey16faW7WjfTtL5+KC0aPV$ereJB)?Aae5*Pk}4b*tuWSfT1xe|={S;p%-v4r6K5A&=2Q(2_A<$l58Ebi+2{!80B&bYe1SmNIY@5fRoTh^rq5a# z7QCx}aocut&Hb+0panNg(B1W>!#^Z0ReXbMW~Sxlh}xR^BN^(|B{n&EO|0x^?}O70 z_0ooos^hr*md@(p=a3%lBt9YTj;3?6_cA*NHV-Ba1dLJ#G>n%4sR1r%JIU8}x;p$KQCnwE1?z(02 zy74-@e@NTC$+?!(M2C{!7aYp@mE`I1>ieEjr_mE5`mi z%dGvZU*??~ABa$~s!qaPE$=@)!h6akagx+siFTw4JK?w}q zQ?spRweX@|=;6RD?)VCZGwkW3%OyxSr4*pHFX z3n}b0U=Xe+ra^xs&7a~eS@+Y7-|YrxmSR)6oDAQie=LG&UZ;g` zJ>72qwC?r0%cx^2{FUym->3dP*LpKeE-MQPI1J~~(K2;m11K+~E0OdYDH@%7_gVwv zO5LC03D(ntyB}i!(3gIanXPZ=OOqbiOFerQy8M7`mF=2mJ3;WJMYXJh!-DBWVg=fF zY%;~9)9BPhY>D$@e)Mg zvf}oITPN-z9|#r9nxHNTwi^FYXQ;07yU(kzSm5KtOuAP<*Dwwcr+pq2JGN^Y8WxG6 zYnjmD0&?=vLNf>i{+!h_{gacB2E+M1|C>A6$|@|X0RjmwqgeJafEM4TsH`V+)cEFf zv1|_45LzdH3lgZOVXq*+~{krucUn@TJHQszte`zS+VEjUN z%3`Hq$|^^e)7R@T#?>)&_7aD?9gYi%T=Z&?u1@G>)cvX%HB4KthC?NEd?l!sSs1${ zIZLT*jEisqnBo&xpw9J5VKbij4}2kdQckFKUz z_*JG3I+q|UH`xu;4I6r8R8W3ds^rb9X-qKdavBvx(io8uwtBJXyp_%utCGK$3e!!} zK7X7xgYOKy6f-V5`(4rNAKoq#a--@GN%3dDT2*DQNHeq!mB5&@N;$&j>;63fRUgbb z94&Bu?Hr(%aub$X{t->hi7^`R`X;p)fR*2f^Ts1=&W9hqLUcsz8K9XHd~G*>;73wF zX#DsP)Ma~Pt6Z(2k)v6tcUxR$IkmKJpI7TOk34%9UjG}Z(T|;v;g>gGI90vkuCyyZ zDe|902bUH)DArBdxCje7*cI8W1)z1`H7Br>d?2}{ZvynJ^yfnLhm;{Q-NMQucevW_ z39mX>_}V-B*2=qQuQ(-;ABZ~j<;(0U`2c857jY&=F>@rTdSmohdMp+Tx+v0UCSJ{H zBImK#VP(&foMmm!Is0e6-2(v}i*j|t@i~{%CFwCR);}a?KR?Miilpb>KV4T&SD~n> zLOj`~G#Y#~)W6N{a+}2w9+p?j-~y1#CUUQC0h$A~5cUbOGRwzhdtpUM)Gng8)J0uf zih_N!pv%gv#Im?UpYo8LtMKjTnTnOoH)c3a73+pD)C1i?UIA8#1617V4#hGj)p`@d zI`)Ok^+!Wnxm~9q35CJEnEva8uZ5N~xs2x*t}i@WKOJltly2WDkpY4oa#y?%{au6d z)SMdZ*=(4A_9l8qEx=*6xA$6zpIBK* zKVU(dD*x0HE|fM`tJX{7sQ-$__on@)9Co_c`gW!*F~5W2VqZiYmvYi;Zz#?~;p~d$ ztHt!JuRp5{|A`#<-+D{^WdBRbAj>3tZTreUh7b_bVtqg!DdWw#e*wr?-ou7{I<5Kg z>Lv^Hu&C`s>ol%^_d%ZByUcOA&o7b^A+*an7KoS6=M9uK2E z?iki$nK@*n<8?zv7bJeXaTX zqkgel<$gLjRvZPPsfG?p3lCknSi#*-oo{ifEi0v81Qnif-Z$(%60?8|Km4DrE#mEv z()FyaGmQ6jF}{M28N?02gIt~^g=E-8vJrb@61yv%_mcvz zo{-m!(FjCnXfs3U?Pedky;>yiTVwi6xw5omTOoS zq1WQFv?=hrlN<#hl~uFb6%=|Csp0f z;IXfia2gu-VI2j|ESOoy3IN0Sr=JirL}-0w$DGz=I1`GLy&eAUPLPJ2bZ&66%YH_LOJ>h^ytCk|@%Ly(<^a>lj)r6R(l^uI^(x<} zNkc7zVm#TnO>Qtgirw+d?0C#pzIDrrZFmbOtqVP~%6@<0-8^o^){ifDabf#ji!l(j zqgUxpl6s=6egm*3lRSAdN7dy)9iJEhVzD{n}O43kgDoot7hXC|_VI*9WPr~xw zYX>x%8V;Hf(}+~Wf^nI`nd|bL!Cne9`wLzL%@2EVWn0@zs4;5t%Eab__w%zg)8Qzye4h0B1nnGy8{R*DdGrGqL;ANmSnUh9O#O zFhf9D+Q{M9Cvue?gz2qheYawr?K&Zr__wGp&knt z=h3hz&AM}NuQ`T(BB_-!7;n?pu3OPO3eGDlkL1gkI=Zs?vsP+y{Y>6oxXuM=0u_Dzkqd_=QlOs-|$qM!iO#oKX>@E=4-+~{$26LCL{dpDsc zTFE^Ako-f`jaf@`Z$8aCRP6n?$9T^ob}Syc!+pyHGIdfq#8ah|TUprX6vhG}Rp-z2!pE@^&TOP#4+8dZM;$F1$uDwpL@7oUDHyxs)gE-s?RyZK6;Aqi z?*KjOpQk{wZL%Oqh=y?lJeBq4)Ih(2mw_O{g~)y7TwuPGW#(=U35hyoCIR9NqdJT> zo_$^3#P7?Kcm=K=Sm-%aEm&d@h{)8u>f5LrJ(xYlCZ@zrcG0cWbD^!32&KmX-Hcd! zNK9UZ%DChkWO#k&E8;opFo)%K=oprM;!iT=uzHjD0by?Mt~-00Mej8S(xV5(p0rwv z0c2e_;TgOQ^?tQrsYu1+G?=?QtYrG>ZREWx;`BFY^=8?g10n}j`xC=B zf^^n`Bc--1*>3~cLp8h@{5+s#_|x-xi_vGMeF3yw*+%t}S6J+TGgyM~jx~ZT=6^ko$ zbL6XUU_4qhs1*pjNye{NA7}nUb}xWN6<2$3w7=@jztsc{tSR-U8{!DMaHWRlQaM2< zkc$I9R^6xq-L+5WC<7Vs?M2Pj&sztznYQ95P5Q_RL%GdK-=p}YJp&HEG7J;UKAO7u zbKNI1P}iNwNjl{_22bz=;8@9z5eb_0l@K2_IyXo9}xu zl~Pe`f8q$O$Yi%3O<%yOB)G{hCM_-py(agzKP=+@+%jb%6^}?&%FU5MC24U|j9u+< zdZy(Sta3V48)&up=@!NI<3P>Yb@%j4jbWIzB#bxcqI^Ab?x9ZIfC-gM3KI6-l$3CjA$^&b<`^l${exSVc^ zJ#Kl@rdx$1?Mn?0hGMto&m2;}P-tyjr+S9sAbhw>VUYHUBg25)Z|bm{jEonW7w^1G z;z7!%eh|X@KPMm!@&x&xHLu2Q6K&!+QR6W5t2owQN4L(zrU@(D8-70x>Jk$fL%47M zpWEI4;a5;M-u)D*{oOSI-~QkqL%re`FK@!8h*|-Tm+0*fJIG^DJ+FLKYW0{V4}o5O z+}w3q`FrQpzVataMpk_Ccv>C={nRW5r<7A#`Xd&g$8*P{zgVF)y@5cunbzS`l0& z937Tt(m1e?$vJQ3NBg8U2A>&-jHl#qN_;2K?3uULxC$=29kEcdRbKgmpy$J4vR@2~^{ur!u$J?ZPVVn(`c)3K3i1B#A?F*FTuww> zO5^(tX??yNHtdnJXv<|Yqx@!+(#A*oyDv6#jvA9Ud(u?>yy0%;!s}6va?NADp*AZ6 z^{D(!v=3`kpIyW}R-=6+0WOC>LuivPbsQ5BncwR3EhS|VcQ=UfIMw>b_?56MlP79( z4jzNB2e+7eTPB14kPQ5a%MFq7qfZ*<#I)byOvYuU8E77SqWb;)e%pc|+nGWm3flSP z_z~J5HUHDwOkrASBv*&9)ewg6_Y-gqyf#Fn#<`{QT`+ru&)qxDtIAn6)6P{c4X0mE ze-(u)RQLTlRqqVn+PrPU&l;o%=Cu+)kP}$?rVe>#M7dSJ1`p7(~v@}&zt>V4S2JArWgyn}FEuamamA#gN zCc8uW*)BHOZ#RqkMjlCjVR3-WZ}5Bis}>dJ`w!(M9}~K#+UPk5kxI_JKPWr!^wfl0 z)mot6T^!__A)3<5P@be|HP=XcKRGEJENp=Zw0tQ5C-|PZDFIUckQ^w})}Nr{O6|qN z>}wjY7;${lweUrFNm=3#*MgPSj3CIztvUAccgE58=9nD4w$jqO1)cto4Cx$EDRwQi zLLtmLCmTo4cZQd=%lI2>yZH_h3S)Wju#8Yk6cZ&ImXLiYbS{p_tX8-Bq;5>RETWePpNFhtASA(kZjhX)Wh&Jv+X@{%h+FCbsbwK|o< znNPHRDwv&D!^XWOJgG}8;M$)e#4sw^d?hq5p~-Ydrs5Vks6gj{DtemdX=)W z;Oj=wuJ$DfoNV1MVQxVh^?O_uT)pf95E-2vU;0!#4rQ|`=cX0^9!;}#=RWJvCHnEi zE`^A|LvIIjS7B$Dilx(JK}Y(qH99dla+$ijOL;^7I%P+I){1g!2*-C1rF;FH{!<5uhy9Ny0KJFe$N+i; z7$u{HkDz~>$_?K6N{8o}&?A>2jwk4s`K2i*BW~g6-L=23cMfdaTu}~YGxYOURo@?( z&nQayB3IIqdeeQ%kSruSMCqi@Ct)RbQ4wIE%r{*ZrTXMT83olJ{ecJ?4&300>&RTCH1~(TV<)4(BA>V zPj_0EDjVn=T2dn-(cUF_#qAiYl?XT-;aIOq#Z|KhJGE~m@y^-sGCUE20SF_bPxWUP zJl{R(6{F26en5XQD^BUm6d(EQfKt>szfOKWQLphfu52YIn`+KMP0Wdo=G8B?#@ppg zh1E6aW9=l4$HTsYsfi(Ep?1MREI(>HoXGeo#=iPq{*kjT9H zKtquDJ)63)^S(^Xm(o?o?~$uhs&$#Y+z)9Mzl(=wFRRu(elMPm?&Z7>4lb>muoTV$ zEY_QJP+RB;%;)UWxdeKk=6VsJX!2y(BYCks=A6S9ylAOue_2Uv34}$0`N=l~EQR@0 zQ>BnZv+Z^iq@Pc$SDS6w4AJDgS$_F02S#8#hykXvJDR?*!a zcv6$rPXqlYjW2Rmr2#;8l`qKe^+EltH%1M`pA(6?zQ62p{XeDW3|Rzh;fTo@6Qj=J z!qiV!Y_CKFXO6sHN|Su&eLZMmA|S3OvWjC{NM!42qXCFKv6bAR(4LcPWy^L;^2MEH zUf$^F*Kuq6ZfqMWL``Opf05+#Ts1Rmi9qJueFkP9w(LcW41|P!_f2AiJhWdZj$BRs zZxf%F?KoQBFE($oW$ZsCQcemXwu!BO-zL=xE2$;DUPz3vHx6^*)^! zz?>Lb6VwerK4N_zE0UF(-+*(o(6KV%%jmix$GO<0Pa69A_Ul~UW!BN~!iFc-S6RT? z_Lo&NL}p>MAabwm%FITx^Si0GM@!70B4jE?2hB3cwt}Svi233-xOrykZ)oq6v?&O~efLj(cWmZi7?P$%v9<8O{b@G1ntx^33#=EG6IE9ILF2lf2`7DA;f#+@8 z^I$-fm)4)0h{KG= zj{r>bY?EG`N8_p#!PXCqJXkFOVKV6HDdfP?97DhRqRoNEz##t-t*5>d|0!Uwsx+PKhGFwJ04>z<^qu+H)R1GeFus>kW|T z7avr3^sRv?+x>Ht$fCRzse;=2Ml{&*@*XSybG!3D^+EIU#1_xpr%hg;zSSJ^`X9qA z{jWcPTqO^P4Y|Zw&Xyi|1DMemjoiAEvJ`Kpp_8poa_jMaM#v7pUxA6=oxraOZthEj*4GC@<*iZ7 zUPfx>yPiC`y7Vd+UphT7vq1lGw5h7#RRz){*`lr_?}&TVl}6f-$k;MCjk5bJa0@BZ z_Tdag6#N&-9lSE?pBKMkg=4afHbUkjTV`@sSj1#rm|mHuw_r!8KIkQjzFO=Astu;R zvo>LK4MNdZxb!(wbI=SBQzD`09jwTo`!vPYVzs;oL0vuB%cV+4Bl*?PjHh^Yfh@q- zxKGnRXU)`dfX-pv_r`>}=ZhpGr$dX?q4^!Y8 zovnJkscDDi5`EdG&+pCC4`@OpTqjP2Zr#92B(cF$_dI0$eHtp47H*OeZuupC2&6so z7WydFAB0eIT`q>Sd~&Gt*BbD9n-H)swz6gv^fder34K$Aw|(6xGon%V7lO5~;rM#9 z&*Au~iJ{pTR}0KC_F4>W&2?)jYSi#IdMl!T4Y~iwOjByZ8S<1)Wjk@-xhsC8YvvQN zY0pvQbCb~sF3j2>*vWNso-2NXGH{>)teCU=b!q=u*wy2e#*v+G%jS@dvOC%1Z4~~tzq!j2C7Wz&=CsjBR_)O08UQb;&dSf;9xiwNX%jn%y{y@o0$;fxFVEjA9YsGa*P(lSYc#ALRn1Rqs+b#TY;5c$2kU63KB7oq z)*A_HG-97C9foFxi0GW$06JBRkR}r!LA4*jS^&9Z31#auO-j$zif)4t?@+N^;K>DT zGddvHUrbi|l{#&*Z1tD0|UyRR@Oe4f7Kt44CNK50yFEQwIU=aEBR;m9e1F^Vru?luc+9M?h25d`?d8 z>`GjM&q-;mo{g+}4+85{9Se_O+X$1hzrbbnG{1|FTx|`)KM;&@uea>$xO5A+>rrQG z1@W1l-w{iS7!ozl_|^*O_{~81!*YvqssLko!gd3FTrW9FS5$vEs>8SHo>wdH?CExQ zc|7#VzOC#RA>i>8g|BWurNQk~%??c!RN%*^WY`0RDBjdUk4EcoQ_N29Qn@hDjFe3d znQrdEjIvWo1j;bp+=D2qZP7%}ONAP?#uHu6U__aj>oslBN`hg|32g*)Es2SV+;g#Z zL-BJI!=C5DV5>cEBXQkxm$?4Po2=2(hGVgt>uwxd)&sdT^8*3d=9BVCs$P<9M?#iT zm9?08tZ;cA6F6g8mf83bM*2B)K*E{x+5QUQYi+#_G0VnJ)f~TviS`Gc{Wy0`rdu|h zxc8tpI*MXM?})^neSc9xghso#{z-3OgXvT^SCgtHfG2cBI_f^?^&aO#M{X|)g&wSP zv41@10ArOI^(5U*-Bg;68=!f0$jpZedp1c zD8Trtu4%LFsWInuh4AaL6?1rVDfA1ihzgEb>UvZ_?U+OECh)(Mx*4 zkeY0GupJP5h!xi_E-I0Vm6Ib@vG^E&n~dQIY(4_L59)1ojG$6>^UP0_n<$0vs%qf& znHzD_dgEG7<@Pt4zjD3ay)X8B`E~)>uQO9^17aM0Z$br-FDv}XaY`+1Ip zos-*Ni1mma>6n$_tg&vzk87d3FTwSWx3$}g-^S4af|0)DpM_?0 zZ4C5Z`SEo<>Sn|u1u22hZE-FPNPV$;L#cT$^)W6P!s0V!YJE$VpT013fqtCshDxQ2 zuLh}LK;TMzNrT+d)DD*#F}F^S&ZN33iNhkVBy`nfxK~c?HH0&ufQPHk-9*1F&VLzs z+-_fgd^}}FYTP?D2-B=698B3&t~lJ3_|@X!OoW^PFbd7Ew_qbwd||@Dzs=) zfHuk+nb_K#eRk96dHl#+yt`CGQDv|*mSly8dwuCdLapOx?yY+jrL2xyE=sxFmHdEO|050oYHxjge-OYq(C$qLKc(k|Dpayj)E5KL5eRQ3JTYyEm&)217Jntm`L z+KSXvcv?h6`prZHarX- zuQM`25*e@izrx44GM_8$`T2&1v~*D2y0CNpLlXF@6cS>zc|y0n1P08}DeKvBFE!Q6 zJ171jnOA?~M_BNG`Q5w0#kMFYoW)#Zm_Ln-Z)y1ps-$C zich1Z4GdSWk-3+rl*(bF@pGlvO&ebRzIl(Eo(vW&{ps_8WyBwn@nU1E>Kp2+nsi{X z1TmO#Uz7r4VkiG~P#k0nDC|BFq9i0sTPf>LA4v71t>J4cfBkjeAv2okic{}^dKa$U z+Q@6eP@B0%=fyAzT>d+<9QfN0TC03nU91{yWpJHo59-d^;M9Q6D9+6#ER zCc6#S^Ok;>Lg>PYv4tzOAQubz*sFa{kI6wCOta8;{M4$=bMY#z_?&v~2%5EBD8ZChSsCY9@GK3-t~ z-?N=u!bx7%C{m^+?9f;nAKOjVw>-{`%w5TxF_vR$G!SyrM^T?l&jNfUX8FlJg)H36GZAjQkK>7RQpV^C+ z8}wA6U4a`3irl9vT`k-bfnknm2rSTWSPYp6EzN*p-RXeKf*1WwO%swGB8&L`mtwNA z2F}>Q1@_1}1_l%T0GgT)goUSrN0q{c6XnKw0q#?}h;Fi0=aM2Kd*gJ+Ci{xU;qM&? z4tO3wG`^M~j1BmwnUEXY>A@0MWsf-&#cyRGi_Lf(Snhn=d{bEP8Bc5!WVJDxDT*{_ zUVT!e^Fs3##T{UCXX!!icK!SOi-!h+*XC9}e5J7N%}HbUe4|212%8nU8CW6|7m$6f z$ld*i#8(6TYUFDCq!*S?&u}&`v8SkFX&xv=Cm;oOwj%k5 z9e0$UH$QKvo!N@yq#f6F0ffKUMFd;Fp2zNfjHV=G5!Ji^%>YL5iw+$bH>`SVk^>zJfTU?yAE#?;Wy4@AT-QDH&E0(@Zr80i3kKt%d zuvO4Y-qg~)Q1Yo_H%J>BpL?qUiVUT-Lh~%&z}DvRb2r>XSw(|k*EuLoJW17n?}sxY zzrw3~HuV9%zxLsZuVk*RfQwIKZS9#$rqF&+WQVb^U!82_1-cRXa~4IiIoPbAIzS!R?2{Hh8BL815}evI}Iz?Ii@QK zs;O!@qsFnw0AJ|bGR-};&Zp_0CP(FWQqr$h0j6z<$brI!1M^t1{Xt^1(cpVjdtKRdw0Jxh zT7${9XnF^WVugA-;@iG}(R(opH|DR~Ysc?;U+jAJbF;qnG;Mq+Hri~+_QK0OfvM5q z-QgAArq5s0!Gl0z?Jl{2d*SUy^Bl-WzNDcQYE z9Cgo9>~9xrZEemq5pP!qyLU{QH5Bt+xqOWrl+hO#_ZTO8zCYN1G<2qvgc9vzZ<_oD zXL`bLjga%&OW$|(zM)PaYn+V-aczi-NOpslmp+@F!!8N9c{gM`38qory8V<0VGWvM zO-<2CMWeXuF_yMg@f%Kx$m=@)0+Mv3)AIJF{T9j7%G_#%fp z9Xc%u%uz+M@9p*RLrqqq%2ggKzZZ;F>Io(W@^udK@TXyh4nHtYa3+WSW;X|KU;LDJ z;sI@o&PUe5Rwy4&>u4Jqp=Qi`GnX0&{oc>H*sZ4M_{_kLp4!7!%HCjY23H+=pXFdG z_JuWToI|Ico-ah5_Di1yAp7T6pjap;hGeE0?*sAn91G;BVzMzoU4Eb6b56(am41$W zY}WM?``nj?h6=AC885CfWwIB$QnF$X@#V|a!Zk!Jl0%l2vm$>V%(NgPS1iDu?~V)d zQy&Km*nj--IrVTcyn3pc&u|KftIBuzsAZ$v-pQCuOQwLlT-=DGr2OzcVf&6qujCBW zJs%ST$*g)W7v=0+b?o=;TAnU8O>$yYfi#W&-ntnoYE#dhnE5z`&o7>}`zc4YjMOI; zO!&QcF9HGXaJ-*qt#9`>bH}5L=P1?gB!w^UxMr{z{}WF``@ZXK>wNqll61aJBjFgV zvEE7Ch1l3RSnj}QdLJeVaV#h(jHyBQiN(7;?BdaoP7wc<^Xrqyc2$&LjnO9VDfu|< z2ZUL!nF4f;*h60ybK0)UE^Z~DRw#2TJmBtK$xgucK4_oc@5u6!DD}DQ*>fNH2VEF7 zuLu2%-1=grm&(}kF^0Eptnl#x5r;<0ECDrSZgy*EPIJ-5<yg$(ovy2awCASc`eHHcV*W>a>gL z;@dH$g=G%f1;20OQjrn=u#rG=L;I+V@OWTBHXlv2^NKC?K>=^sr2mjCB$^z%x6ufy z(wu0_j3jlrWUNUAbe1F^OQ-|3vra9Bnj6HgtEm%~{<}pj#+x?(kplGZ%tZecf{>Bl zg4auHH#O{Sr426M>-0+03DBQauAvnk?~!;{rD^(k8-d ztugU6r+|9we*N;brm?HpsYo5UW-sslHqkrUw1y3dOBK$fmCjuxJ`w?#^C8hWtlg_Z zP2lfe>Ghvy`g^5<5OD#$S@jCYU{lhY+0|hX;8lNFJ{||S>zyfMhyqjnXqrMQG`SU| z2>RacF345PL{NMhw|crjWLDC2o>n#8y#{2k>V=rjsK;y-`ag_ry;Hd~x&&zQpbO@V z^0NJyd9SF3{-#LKs@qni%~L~g{XikZ{YejJLi6V^QINW4$L?aBMeNj^+Z+p0!KKo_ zemaFXlY3mdUb8FaJimx}7A1f0c%$XIc@^2?K}TFsz%<|T4JFNh1aXCD#9IVC=?Y$6 ztdto>XB9S^vZ6O*O^3RpNB#t(Ln;*!q?L($t)n5?@Zqj+6XzLgpJR5D30h8h9BBgy zBm3&%{) zWhyMNpRQ~#9NVS5Qb}{Z9Lqe(?AMlySP}}GpYLYw?tfWxDEpg;p!_NaJoYwr3WEkY zeDU~TbudF&TLaCF$a|e@Lzu3Bv|sZBRxNJNm}<;D9D(>10F~2S?ypk(AxU)dyTPUC zw++!(M-=rXHKKjbAqftc2H;qvvw4 zLOCUs@~*;_Cm3_*g@)QYuqVg?N^WWbVZhvf?2#WR-}k8nSl1!B(U~r0Km503>KW-f~Kz~nP04z`gUvWT~Z?Rux^j%M?HKiT>vhb3U zog^`S|LB>x>~i}$@BYWR_!iAaGZtc!rs|N7HF@Z4_eKR5TDCb4EfvhmxE}~xzm>m5aCczxfdXZmvK^&2Sxaph+p|Wj_->Q#p|KdM3|^6pkZvfhM=Cz#K7JKC z)ZrlB;<6KO^i{v0>H~eMN_lDa1U4JSGjo7l8%v`ZOI`^3Lvk9phLdh>t=tWWQukA8 zHj&LYpELc9dt358{zI;G^XQ<;bSifH_&2N|DT(0kpxx!}mv5TLEj>UO1)Od)Ew6z;W=5&I=-CLGh|4Qjd8aY>E`NH9e?TI0h5jz(FtYZN8ot}&IP+7? z{bEA#Wij+?ut}L#7O07OlZ&<{QPd&2@fp)4{9pj}D?ZFsjwnsl=B0{SeOE4!l@5$P z(>}`Oxu3b`TyR<0J{D#LRi>LcwF(aSX-)@}NcsE&b*@FWsWM&gdne2Ya}Ng>F1$MW zhoroe;8L7Uh#yx(b0nca8VfVKYfGka6eek`Yh&t{A;Wg zytB6Z&#Z;4{CR#qieU3{20q{McaO`30+K! z&DfUk$P2y7oSb%Ot_t2w(DGbQ#V;VX`ZIIqi4TFxXyB*DLHrcu25}y}0FzCabDut? zsYhD@FC}E;%ZfX8dgc9sy(D)xoL3WD+19icxO~ozU%004^e;6Tx>9Zd(7Puezv1|c zGiEl7r_xN2zf1IOsXhdJ^`_+Pq(t;wIwrKn`PCmjAzsj1>!|Gq+Zv!E+0PTCn0sY}pUWu$b+5MZDa8OJA%f>4}hnExL zuUgK42v?0^GjhE=Klhk-t(5QPKnS0p@9}4*4~zJw^bywioiX$pqe7qFEP2;-x<%|s z=8D^Hk8DZRfR@=^fts3m;(n&*-tPIZh=w0d=qVjesEgm)9!OwRagYR>*A!^hhn=(0 zR+nYIDZH59VoG%9*S(LKUAzdk4)y7-2gE}>kp>*ott~SPF0qhMe>cQAkdFm+X}MLh zo4Vwh8(US0vRhztHymRVbJL+FNo?igVSxlr_{%G-r;5_Jw3xzDGb7m@V#eIE?o7SA zzDz-i)E=BqCmVdgw}C(rI7?W#iz-G zB2sJ$BoeVJezJ++sVToS{XRaa4JB52ar^gObaSYOf`Fz;-XFjGe_E8ixM)JS09U1O%)fbtJg&A|BGPOXt}= zPps2e;kJr@&7rR!)HIaXf!Q%~O`lZ4LV$39U_jWKHuB#*rDR(tGfxyJ%6iHOkj(nO%RU0xYd0{ngwy zrp5*c#zt6`j~vak2$T2qG6YiMDB@RTm|ipRn6q%dojSyA3JDZ*3Fs*M?~Hby;tmkH1 zIge!$0H|q3R^6dh18ZsNraXfkhBh2>L~2vX-hjl|q{$>n;p!8BI6h^t}^ zjWx$gLznc3j5f7_=vbNmRYUYw-|)ZfX0Y_PbD2xK{}=yz6ZKyL!2ep!6b<{o;adj& zBUT{9cXO3!4jvKF`;U$Og*8FpF;V9&6kF*6{>OV6!@zr=i8<%Z4D@rm>8!8 ze7paLq)q)Xyb0`b2GD$Y=dtqgwQurvAGGoJZ25lcL>`Biv}^%J%s>JOK$B!$o*LLuPyk0aBs=5nl}^*6{HmR;za_*y)DJP zNQ#$IptuINA}vmkB1Kyqf-|5IZmb@?;48GbD6ub3(U^87$=n1xA{oC+m0gH> zQw|)sAGb%rz@VTIHeObn^>aPy4_g$T;ok+_)MatFtT}N>Qp74-lj%Ytlm|4>vkbtE z!j}-rlu2VG+;|IAJLvl+9*bsFK>W7GTANR5@qVVp$HK@^_AY=b-Pa{vn%U2&46BGm zc^t(>LU~zhjukGZ45`QG{9VE^wB3Q`bQXjIq(Yl=!X#q6sdP^MYQmqPPi*oX0Ia?S zcOTS?JaNGg#Q@^UYykFlJFk3kwN(Y9Kl;v89x?2rf5778qDx6N5K5dLVACCm7`6r> zSz^W4Io_qXeseECdm)~cTo>j80I2UZ^==(rnHp}BetUT|R6i8C+g;NaD^u)31&y=rZbZr+b^DpQP(~xs!LG$8~ zU@U@!*O;_%*9O6y3VH6<){^B7_JlFo8gg3t`VR+E7_5$^b#Y1+5s)9yb`6T`me1zS zwUXRgRGfn|jZFZc$nW@F5<8 z6-8&+(y^G`~u}<8AZBy#|Dx_|idrRc~cI6o9;yE352c zPbRJ6K#-(SX!q5)_h^~AE;&Oo*6UnbX!pYesqa$xL9NA=)+mlKe@FER*kg*Q@cJ zaNE2BH%V>rL%g5}kvgG0q4;VH^^xV{f={;a<8IK5PB=T*Ytg3YE4Af{NqlFU!@Ms? zl=Cx(8Dpiira4+zQUr9=@ngGvM&-Us(!kI5z$2GD39td?-E2>ACnax zOIYect5M~SMZUJ1B@lwJ5C@q!A^SD!J*a(j%=uz^-AUJ8i&33>+qOFctg7GoD>Y<; zJg_kXA@lU`KAkVCAU<8oFc4%{Kfb_u9Z1m3bA9-QN1x+qJv90bF%>r>)P}_IRhD(x zJVnrh?_pMNSFjlu(Jmjjg7V$)pE`AJOx?)qc)!=B+99DqGIzOFJ3LF59_-lQQ`%TG zO`+mjQZ@lp;Yt^@L0#v`4^}j{%wK5|7pH^BGvq^`8Jo(g8zLs_tnK&eg?n1R3U}Mr zgP-2)EWw~v^Gn-jO4m$a62YjJYic?|V`BZ=B&GaPSAkO!5-akG>F#cz<0xC!+6f8z z;5jz@rCyUTY^X~^v+q%%=cA&l1<$2&!HeomLWdV=)cKYcW#Iesf*BVE?{Cwg<2E-! ztQ{PC`%g-yrd5^B_|w=-^Fk2`qG^12KQcv?jm zgk!e0@6!sKO8iQfrztqM>%Ddn*V}7zc_YvRx1;c|safkuY7pzsCmYiyfNWCEQ=0}0 zEC#eWzQ%MN(B)+X!^ih9Lm^j!`tfz1*b2LyZ6hshPGR}dxtss#mZ4SdqovOU0t#y z3`dJ96-*+vDz)Y?>tu~OYQk3X$b|_>rB#IjMZ)80W0%5lMWgB!zVmVQ5X)K{5#ksD z<$2JN1|wA=6DWS2qlWqnDxyw+7NCdQPr3N{*OdA=nfr+ zU-y~J?8bKZlodWZf8JGMuS12y%m2#O6If$|0pdz?e(ox%b+pE1l5^(N^m&0v+&2e4 z&q$l=E3-&65GW=UM#X*m<0k_}b(LPriUcbfgW`fjM3{12O-;;}g^(!7^DrsFMp}di zP|P|%_zth`J9x4GS>RYdjk1e4hd06*7bQ2f_)flf?_^3y_ZU`|-~)fCL|wUTJbjnW zGiJVH4erw5r)ygRkhbhk_Svk?nWrSy?L_#a-{VV})KRUD(Bw?e6Mw8kS#zfvZ|`sp zqF6F12!g(!TC^r#_dEXt0n{zeCQAHj^kKj>11qq^s2Y#oo6k;!AcKPeq6gnx z_cj!>r)z08DKRKZj}z`U`Pk@tzX0rx`+C7O85yZig%AKoq1lAn3G}!E@8*t)Bo%cv3$75}AqGJs z=6Nwd{<8b0IPV|*BmdVOB7XsJlBsetRggBxPo*Q#quF79af4g%p7p*k%FN*se}T^~ zsm$SG0I2a@Z@gLQVQ$EGyW}xdVe&yqf!thE*{GpL6`$SGR7imWZqX@sbx&21DF z#i1V>JU8BA*yiwlem}DE=hgq_8DBfvRK)Wj53?=)HFWbft@I&!RCu%V z@1i0yGxIcJ0w@10VB>GuS;o14L)`K#6GO@PBOmOq#6rB+ego>Oa;bHGC0I57nh^$J zW-0o!&4q{G{S0e+?J-uShDle{^mX&|_3Bvkz2&~!XLiOlLlKlkbE{q8Ro8wJ_eoX#6Ihmj|2L? zt`?zfuWM{ZmeVs&qa||lKXe3TSTs?=WiC?Up(y!Eee4tc%L4(?OPO)GHor8>pSBEF}e6_^WmmCtX!sk?T3|7dkCwwrasU znwFes>(8<+!&oNTc$Rwq1>>1gVztU2AD0~e1JhI)NUp*+4;x_}l=&5F zMLAufn8OiF{$+1|72Uy0NW=| zx7-@r@LfmwOrBW|Gh({|V-wOe8V_IlyN?&Z4MRx~wTLNV}X`GpxevT8fY zU0qTHsm3#nFDC+t`c`q?abJ_mymIe(X+LimqBG|xbRq&#?Iw#Z`j{6!EswiO!paw5 zelLW*kBCZ4O7@}V?c_q}bCKel=01C&lQ>XCuQ@h`a2lzUWA7` z>~wa?)q+5%lcr8r)ZF5<=g1jDrilGQoVIdGr@-m7|336Zaq+CkW%R`46&ev@9_=NG z$!YTOB*+}Vk$=fEI5Z!cvn^wvKS9aW)D^;1GdSk3yv~k+0*2bhiQs7XI^+Ow2na=zk9m8tvREE*2(Gxo4Yr;%3UNm)kwlz#pNPCD5{05PKFX-gGqM=rKciccLhHDF7C6MO9~1#xo~s zv{C-4-+LQIR-5varm91cApgtf1nD6+UluD~B0`V(^gwa1M1XWat+sC%xiC|vdU>*K zGyI6fJgbvvrOjE&fE!1iv+&lG?o^4RCWMDa&Gn9uKedc7?(^DP zUe-J4j6ktaPdW|*V@@tkow%%|?HsiS@RG^e#so^RpR+2h+o=?H=b8qDv%_xW

zgsE-OqgN7elyTjPEIN%{nH2eT5hrakBMhfoM!yUR-c}B%e>RUEtd}=c>gDee5hP8A z9n{t%JsJc&UATM*`HUPZvK@f+3u06@Yr(}ZV^SLt?7NP`V|`13L|$OBn8O*7SFbqA z)gz;HW%Go|+;q_bs!R@K@l>j7R`{v!*GP>~409i&6I`+$q)4-v0#$F*+7?@4LDH0p z%>AWe3(a!~osPjgi_4m}%G3+N$-74{v*-AwR zf=!UiM+ZkmG2=7mCN7>jazv2G2VcJ`VGK{C_;;5Xj5qDK*bvsy(L`*{2e1h`vzOvP ze@>?_KJ1#Unaf@Po75SbEzaPmNF5Cs;&I04~Hi0MCH?nrpN z&&fr<7zGjOPkTrjvhv=bE_zL>US@-SH5Fa%LTql`Ed$&9!Z1 zKlPaY{pS@1V;YeNmZYw5zFX457+S4rwZ6>T=IxRIxL_8ug0AF7&aR269uPMk zD#t>0DDhyQ)FSK%-gp zCH{TCJ-GayadJG<`1DVrua>03f4~~>M3cY#wUm~beHZPP3muP)db3Iu6+&BI-+%}g z&Sm{@@Al~wD7SIkZK%~_h-l2_-W|gg_zlU9BXT`RQ3-nybjE1eK{t^cPfsT$l$u80 z&_j6vDj1)^^Rh)1Rm)~60B8=EMmyx|NOQLtpuu*{oi70!LKHW{J1(G+U zC&@NU<)I-1ClY_Q_%hvkz89v~U{~T$*?FluF;S^oo0VR`67yMU3x{ra&iMt4SC?4B zwd&GwQiN+sdFZ?{(9j{q+$w;!b8r(5SngJZ(#%REfcDEF9nl~XvL6u!|2p>bI*|S-t-Rm{i$%v5YFX95 z_T^#v%pb6{&(qH7gka>n!FnBZoj1M;+|C#8XcwazR%B!jQq4C~*0r^P7||<}Iw&zM zddbFPs?0r~F_PCEtQ|92w;+qNJc!?$N2lQpD~xi8b8Hx*dUh5YK0+)V$jG(uMa17T zjP5@mc2_R^255^rn4Z!rwAtb0IX<2Wbgm3xP!NUQrSTe}>V*D$e=^+9be6roYcpLtNL*iGF8xRa;b>Bk=t;>|6AK|NiDi%ZcG=s;GZ?1Dq zC{EqZr)OBgpCAsEaYZUr+@RX}t@ zmZ=2oi9q8Lc1gnnAh1uh3TW%6)AYj1Q7mmMmC7rKY6-QbRk1*9Y6~tmH+aevxrqEa zucO@FzcX=s|IPb3L^|Q06W?MMH^L2AEYRE`7bzqRf)~+k(VDY z2nN@yN&yp(V+L^@oU0n2pu4jsh4!iYGrotOh#=E!n}H8AdbGIB8jKh<&KYmxL=jk? z1Dx;S<6Ff#GXYT&EGRBZx5?T8lh*tbexS0jSZdFHOnw=zGD~_*wbDK8B$}miNSU6P zUFmeXbfa}nGJpHyFYoSkc=LL@u*6wexL(JwU>(JWwUzyVMZ6f^=swMz)b?guEU&D< zexxAJ{Egc%l81j|7?dI7c%%VJa`U0O>!9J#SuJL}GpEe5<4_R@ZOHF9gze)goECb| z>RbAM$1JW3{4WwvL*aQ?DUt`^cQ$hz9K762?{cKO!YoD&%gBz7cOCCah;6Xj1Ue5y zW=3uqFU<~L3snZdUYdJLds{B>a!Erg2JG32# zt*0wCLe=R>RM+muf(RH87xlrZ*k77<-9gfjO0JwG{LZ)KHL5lJ%#^39_Q3@hG(GOO z0S03Y@q8@s99`0@R77mS;9}udm z0k0J#3alfkSRr|SYMF1OQiG%d1;wb>*7S=fh5cFk9f^ntVen<5zL6V`sn*V#T1~k! zDQX)#fCgF`oH=Qb<@ukLOvv^Uj;mzewEesNY&^$IKMb8xpB;u z{1~S|r152RWhztbn^_Rfu;EI#Yz?BGoHB>I=i!h*pBQBAo(rSYsdg{Ta3W!Ic9>n);nA+H{b_ z^w^Ba3+8MnDRkv^09M!50J3Z1v<4nD#Juf}-g>CaI~A_LJ{_h4x9VpSRU2aoM3a8h zvD66sswVnj-Sqhn-!54Q&$fTS3dl+}5iBg9@v<&Hp*JIipH7H^n6v5>(@Hlh+;szmadUQ3Z4%7xMr6bw4hmcQ2W@~ zF4S{nrJeq(a!bsNh59EeEtcad@bZkTmzmoUmCLviNlw`0zaJ}b8|Efp(h+x~!sn|?%pk!U$=l1-6Q z6P#FMF19gDnWFos^9L-wBP~ZyuVRj3yRs8u<}@arY6X@qL(tXMHUI6^TUw>H_`L{C zr8yQyR5S=l2R}0wzt)rQg#UA0jiT3YzgMisPaCmCy#?pQ9GW2^pJ)$t zh&<1#`>es1{Y~(J5?lea!Dwix+BE@TTzOq`&hfJnWp0P~Ay#eOF%kW_+EWRIFyZ=P zrFE(eQ})(zCa}4lY=;s$`O%wK10&9K2b?y1#N|JAIunBeeEZ6@&rhT^q`>m+D!a4U zFke8g4dL0W`1;1a>qr3_NSzUD}n2!j~M02e7T2Oc8%>oBHyA0cU)!eb6y?E*j_-SmR@qUhHxlM9-i$zLMu!PqF=6Vh{jMIT-(L(>KbxLx zOnQImkwo@)%8Ryyl;0Y!lHa-h^1wg8^!(4iv39ZLp(6f~a#3b?*>8L&uUU7(zMAfQ zS26vqk;_p1U!m!MsL;drX93ztKRxypi2{+FJ^s-XL-i3DTDC`Y;|Hv6KJs5m0EN>2 ze_%>~6`D z&V((etoxY{A`_HZ-PA*~2ki#Z&%pQ9ON90 zsNhp$Snp;uVK; zbk_(44XEvtX<0d}Uc(3|=S93-#q#j1jlK@Ft*Y!5aPr%MquQ?;(@-AvqKn6MIf4bi zgOzbj!}A&lyw8tl@NqjSYVJetI-E-*(3d1 zFdQCWN$WuM;V+i2L`YSdLEzdf#t0_U+iSdmBu`3iO%-M7vOiuY3|rhX$DaRsc6o55 zdqywFSy(3Y<)&KDexxYAWyNcTqpJ)IY^#M|3Ag;ssH(^zo}I0hlcbN0Prs8?byXuQ z%Lo^s8hGs-7(gWED@Y}^SA@ESEfa_I`AKq5A1s@+EW|{sY zz8_M`6bTCb&dZj_Y}`elQlT=4JFWwSod~3|AQPkq!HU-&V|PW>KGfEmX=rTN$e03l z&5N(`#GvgkL5eZ)>@wGz^J1C%$9T;``7{f67W?F2fS{N(&(3MZdBQqJwvKtYxG4QM z-=r2WYS)rAUilHxS^u_b<^FSxx#33!Ts?O;KK?y3)lYddzs&A`ndkX`z-qe+u7ari z6XyBD-bV+XyWGN(Po#ky#CnP%izBKnBXe+%>hY!A7#-CDkF9xflM>W-60lw6X6o&B zT0UC1QeW>8PYl_nnn^@g!OqV8E-u@7jZN`ycfd^0!9m6Zk8sZxDinX_`SZQ;)f?-P z$;DM2_d%?7*+|Lj8?!b@lxOCa_&!h4-BSR8>x^B)1nOf+aat-GR3MK4J%TkLJ zhYu*;F{Pw`#Gix7>=r(%+zZ?!a7wKvZ9c;8>94j>-R_0*_X+KdtYl79McB&DJ@qk# z0bHnOX-$e3;Hs_ihYV?1q8dgn82CFli-#dS`{K>{3rUl#0~d?lx7iVON_S{1%LS6n zhHT6_ypl$U#9cU+NSe<*E5eUA`Zb6PAlvW>Rg`(e5Px6iO}wktSt}Ng{(&*x_hylG z8oH4U=JsO(Y5In9rX7@&StKJK!_QSU4x6`P^pW=Cqo{(C&A;zU9q}Z@8V_k$ys-4U(-KFZrAOnLBF_Ln!ywFq)jS{QX1-c* zWYQSo_VO)8avIKY(VfcEZpBo%*f1>=dw5c0WbjF3in|r&`^&}2y)+k7tHuDjU;r4i z%h`s8R}~&hMrOF{WV(DTNk|>>=VmuUX4LmufQD7WIXsqll@Sal8x(o`I`X78P1c|2 z<>)&-E%@f)QuT=Q;?@O_$&8|e?H<8n?Jx;tTq8gd7{s6;`y6|K2>WbymAk8$6ycVi zQ_NpAMQm>Pb=|(KD>FKHTxMfq-GFeySkon$nq5>;Ok-}{Za;zI8ukL|<7?7eERu4L z>%+F?p0khxA>q+6XA?lB3G_5&&=6f#*idH8dT3=8=Tf3k<(A3b_vMpOGrf-B__NM_ zy;?CwVZmGnWw)RZA`h&!5x&bJ5feTWP?4Xn)EzoOoa%{GmRDm|R0#I(fZd%~ZHa`& zT_F7fzOtn1K+{HnIl1?%OFdwDD~8JKx9d7{`F9?wM6j9fibO?^?O`y-+v&_*45IZt zcV89EHtZXSihZ?TXn_Be?{eH`aNoYKki*Y@q=%cevk61wt*~q^91t+UT}E zUYI%&Xy=@zXBal#Ub7<_9q@Q=QoRS}AP*x22rg+~dgu8?$HAsprQbH4 zY7B(PpusZjz5C~nbjK#~b)FfnC!o4+7KTccg&{hiP=`k^&=#bbU43sBGZ$QS1Q4!% zaSEKqjFNen)a?*uw}5YVH1@o;AqZ1dC-NG3szOQexl}O7Bh(1mu9_a-6GtIK)LM^V zwJh+Evn)#XdRYWw$r$K0>Or2n<{FU2$8fDfSEaxKKqN^*X~dUr8Qtee6P;ckSC+3+H&eC*v0Vwl>NCUi9_NqgXrDoP_;_2y%4yccEyz z*>*4Lt#^gxxx3?Ol#q19_pR~2btawWez~wR&-?z!ZfcE9N?X!qNK!F6jO0VHFSA7M zah?g{9O0vr&%FO=SaLj%IXU>#6(^<3cbCP)pa0+D8~=Ol-+Kp1+hl4{l7w)tK5;f5 zW_^l+%Yq-UDEQ9T9~~K4+AKAO*4}7jlvidA)RZ=&rv){KZapgd(KE3iS=ecu6&^Ku z_y_CyKa3&_=K6gSv+!Et#4vupna}TFVE+;_`nNx%|CY0f@tAi2%oBC!&gY0Pi~d~H zKbg*!>%x<$ul@Vg%tGjm zjeM)|_0LK)MLo+i<0KF*hTcsr?nPP;I>6Jg%rWuW2RZrf3{{n;RvA7pB zExj`_w6I(FYmaQn)E=0ZL^=K1`oyoQVYk?+_@{d6ntti@_OGf9-;xqg?X1o({L;GH zud2(QM1&Ij4}CDy6{CA%WkaA53oq5YrDXL(wFcYEGI%-KIjeC^i%s5me?CDkBZcw% z(f#mJIaxv7;hX{JYdLAG??wA!9Zbg@)uhN-d5yV*ZuPnou5UfO0)#FcPxgAp^cYzu>`rBWg0(A zJS&sK)OjaTF#d}ciJv75VWhlS1!~CjztfIdqfe^f|2Feq{L*3-9h?(2EV>; z_ql)3ddWJ2yrPTSJJ&xaFe3DI;)NeoZdhCY|Jb{2w*k@UH&gFOu0n2`k4!)hCO_u9 z$P(QC{1QxTn7W|FJ0EC`C0yo2`gj%Fn;9Tyz+9Z*AHXMql5&m1__~ zlPM<${EMyPU+_m}chat~2i9t~_-03VVimdc;NVGMq+u)n#%Wz)SjG5jt?~~P)8}D6 zq(w8DQFeY^Ew`?*m8>zCT5hlG9)I{dl_PAwB2wmjynL=WPH46d9h}~KW=q7leXXq< zlpOuY{1?^Fvl!ZxuM`^njEpwvKWXHeJOq?|Av(T)Be^2l+dt)hWWy8pr=#6G!>L(} z5w#1CXN0?ONtB6XZoU2OU{V?_F(4t){hRoezlJjVJ0ULr9U{28a)vS#PW!fDd9}{_ zlvWoexrhY>1;w2P`_oA@Usyw$Z6uV$a!OZdf4WxXnLM3~Iz7dN5v{Z8`=Q+68?5V@ z%Uel4UHP9N#cyA$snWBAWV^8CzAAY$ONf%*r=yQ{!D(^BpawDbyIX>%?DCPdGs;?0 z?nH%2`3V&Jblz@igpW>x_a6$oP-I0Q83UJ#d~z;8u6Lc`a=dmEe5U+=xxi{9X^ZH*?U=-45bE+|jk z?;ah~ol?1~6=bX82iqAx?i0UvN11xHGt6m1my)XNAm&6f!QkF@ornUoo7D^dz|mT4 z@xih&u`}D)Tjn9=iQ2}34xmc^=D6?_L1y)&!VMDp(@WobLiANl7%m4(Ut_lx$P&G! zY^n?7ZGv_!yDYa%_gIRPOKiZ6cC>gLXI%qG`!#8vrKioAcB`2avQ;|-wiVjseg?{*c zk2u@tWb3n01=}@duHYYy{seyn4O&GbED;_Kx$)-{p8nw(<4>ne{YfpsT+9GwPhd%- zUjBvUHwqD#Cb5017@22x=So)X^N+UZ`7@fgUvHz2%&#sS(ftMr+GfnwRq4DsW@VyrsUdoPT;H;bLxyAOR8S*SS z&h}yT6VZ&>ztq^iyp?f@e^?Pm!3vFG z#O8Z-p7DoTfec%BSAv4tda*82^2kq~8XK6>9c;tQnaT>lNNcu(NN#O;9ewkzIi%rgcKMP9-7PL$UxAjCy?cJ zUAKU<CK8=f$YVYTC%Uf5SF49%>&1@E{WvKpx)(#t7{h;FC@9 zVH>cO5VYQ``^7#7j`Y;S54wvs+go7nw>p+-3Q9Xcg5518N`%M}3i_V)TL6=^)`U=r z{&1WZ0mFwZs_9UHg@O<$3PYSK*xQU2X`F{WEv(aN#GoVG!#;Xf@6XvJn@T^vLeB#o zn*j=By;O@AvBHze5>RjsNZQ=FsB3(30STj~n`utHi3Is?OPSZv! zrx-sFaH5gQ7Sus`=XO=Frwf=LF1kUaS$v?U5;?oe(eP|Qk7~~1AambW(OE15EYNIM z04^l-Lmqju_Yu3Ft3-A~1ST#D5*BRo^HP&|`R|%kV%rRyHfXwV3mXf{tGr0I z^@JU7Dy`)N+J9DukG@-yTDQP|;RHVk%`xC@oD#jo9b+u;R8F5}P-*|h6NbHa@l>D? zuX7^7Hf)3KDotUe~5+OK;UjsOT221|(1 zHnOiVYt1+BqloykfWbLN{=>Vxd}p_8>+f@Z8ax1}#^Na>X|^b(ny7I1srS!xO8^%% zwB(jNRlPe^Q0sL^e(Lz9yH)}I`}|-aILF96`EtL%!Uvp;p`2oRi-u%8VH@PJcIv^isIfcqS5%_hw%sutUi!SqL)Abek!KGOknQOWIn%sfVgCF1l#3b zj?Tq*u{@fan`;+Cx%3wt-qG$i6TliDYhGCsTOAh6@Yd^E^<^f>^Lj@J sBkG0I&aK!te}^Q7`j5zTUJBW||EurK|KYg+?~jhK`v2lb*dONp4>@yxwEzGB literal 0 HcmV?d00001 diff --git a/docs/screenshots/a50/openrouter-wizard-result.png b/docs/screenshots/a50/openrouter-wizard-result.png new file mode 100644 index 0000000000000000000000000000000000000000..85fe20f71676467563a5ad35b2b59ef6db7dc205 GIT binary patch literal 101509 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�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 None: + self.enabled = False + self._next_check = 0.0 + self._states: dict[str, dict[str, Any]] = {} + self._lock = threading.Lock() + self._pool = ThreadPoolExecutor(max_workers=4, thread_name_prefix="account-probe") + + @classmethod + def get(cls) -> "AccountProbeService": + with cls._singleton_lock: + if cls._instance is None: + cls._instance = cls() + return cls._instance + + def state(self, profile_id: str) -> dict[str, Any]: + with self._lock: + return dict(self._states.get(profile_id, {"state": "never_checked"})) + + def schedule(self, provider: str, profile_id: str, *, force: bool = False) -> bool: + if not self.enabled: + return False + with self._lock: + current = self._states.get(profile_id, {}) + if current.get("state") == "checking": + return False + if not force and current.get("checked_at") and time.time() - current["checked_at"] < 30: + return False + self._states[profile_id] = { + **current, "state": "checking", "provider": provider, + "started_at": time.time(), "message": "Идёт опрос провайдера — это может занять до минуты", + } + self._pool.submit(self._run, provider, profile_id) + return True + + def tick(self, now: Optional[float] = None) -> int: + from .settings_service import get_hub_settings + now = time.monotonic() if now is None else now + if not self.enabled or now < self._next_check: + return 0 + self._next_check = now + get_hub_settings()["account_check_interval_seconds"] + return self.schedule_all(force=True) + + def schedule_all(self, *, force: bool = False) -> int: + from .profile_manager import ProfileAuthManager + from .router_config import load_router_config + count = 0 + for pid, pcfg in load_router_config().profiles.items(): + if pcfg.enabled and ProfileAuthManager.get_profile_status(pcfg.provider, pid).get("authenticated"): + count += int(self.schedule(pcfg.provider, pid, force=force)) + return count + + def _run(self, provider: str, profile_id: str) -> None: + from .action_handler import do_test_profile + from .model_discovery_service import ModelDiscoveryService + try: + from .state_store import HubStateStore + HubStateStore.get().refresh(force_scan=True) + models = ModelDiscoveryService.get().discover_models_sync(provider, timeout=20, profile_id=profile_id) + HubStateStore.get().refresh(force_scan=True) + if provider == "ollama": + cloud = ModelDiscoveryService.get().get_models_with_metadata("ollama-cloud-catalog") + if cloud.get("is_stale"): + ModelDiscoveryService.get().discover_ollama_cloud() + result = do_test_profile(provider, profile_id, timeout=60, discovered_models=models) + meta = ModelDiscoveryService.get().get_models_with_metadata(provider, profile_id) + success = bool(result.get("success")) + message = result.get("response") or result.get("error") or "Проверка завершена без пояснения" + state = "working" if success else "failed" + except Exception as exc: + models, meta, state, message = None, {}, "failed", str(exc) + with self._lock: + self._states[profile_id] = { + "state": state, "provider": provider, "checked_at": time.time(), + "message": message, "models": models, "model_error": meta.get("error"), + "models_discovered_at": meta.get("discovered_at"), + } + try: + from .state_store import HubStateStore + HubStateStore.get().refresh(force_scan=True) + except Exception: + pass diff --git a/src/antigravity_provider/router/action_handler.py b/src/antigravity_provider/router/action_handler.py index 37faa22..83b2f29 100644 --- a/src/antigravity_provider/router/action_handler.py +++ b/src/antigravity_provider/router/action_handler.py @@ -35,7 +35,10 @@ def do_set_orchestrator(profile_id: str) -> Tuple[bool, str]: ) return ok, msg -def do_test_profile(provider: str, profile_id: str) -> Dict[str, Any]: +def do_test_profile(provider: str, profile_id: str, timeout: float = 10.0, discovered_models: Optional[List[str]] = None) -> Dict[str, Any]: + valid, reason = AutoAssigner.validate_slot(provider, profile_id) + if not valid: + return {"success": False, "error": reason} config = load_router_config() pcfg = config.get_profile(profile_id) if not pcfg: @@ -52,7 +55,7 @@ def do_test_profile(provider: str, profile_id: str) -> Dict[str, Any]: if status.get('is_expired') or status.get('expired') or status.get('status') == 'EXPIRED': return {'success': False, 'error': 'Авторизация истекла, требуется повторный вход.'} - model = pcfg.preferred_models[0] if pcfg.preferred_models else 'default' + model = pcfg.preferred_models[0] if pcfg.preferred_models else (discovered_models or ['default'])[0] t0 = time.time() try: auth_data = ProfileAuthManager.load_profile_auth(pcfg.provider, profile_id) @@ -78,7 +81,7 @@ def do_test_profile(provider: str, profile_id: str) -> Dict[str, Any]: t = threading.Thread(target=_call_invoke, daemon=True) t.start() - t.join(timeout=10.0) + t.join(timeout=timeout) el = round(time.time() - t0, 2) @@ -86,7 +89,7 @@ def do_test_profile(provider: str, profile_id: str) -> Dict[str, Any]: return { 'success': False, 'duration_sec': el, - 'error': 'Превышено время ожидания ответа от провайдера (таймаут 10с)', + 'error': f'Превышено время ожидания ответа от провайдера ({timeout:g}с). Повторите проверку.', } if error_container: @@ -239,7 +242,7 @@ def do_set_model(profile_id: str, model: str, role_id: Optional[str] = None) -> from antigravity_provider.router.model_discovery_service import ModelDiscoveryService from antigravity_provider.router.model_registry import ModelRegistry - discovered = ModelDiscoveryService.get().get_models(provider) + discovered = ModelDiscoveryService.get().get_models_with_metadata(provider, profile_id).get("models") or ModelDiscoveryService.get().get_models(provider) if discovered is None: try: discovered = ModelDiscoveryService.get().discover_models_sync(provider, timeout=5.0) @@ -337,6 +340,8 @@ def _rescan_after_auth() -> None: from antigravity_provider.router.state_store import HubStateStore HubStateStore.get().refresh(force_scan=True) + from .account_probe_service import AccountProbeService + AccountProbeService.get().schedule_all() except Exception as exc: # пересбор не должен ронять сам вход logger.warning("Не удалось пересобрать снапшот после входа: %s", exc) @@ -533,8 +538,30 @@ def do_reset_router_config(actor: str = "user:web") -> Dict[str, Any]: class ActionExecutor: """Shared execution layer for Desktop and Web actions.""" + _connect_lock = threading.Lock() + _pending_connections: Dict[str, str] = {} + @classmethod def execute(cls, action: str, data: Dict[str, Any], async_runner: Optional[Callable] = None, actor: str = "user:web") -> Dict[str, Any]: + if action != "add_account": + return cls._execute(action, data, async_runner, actor) + import hashlib + from .account_probe_service import AccountProbeService + fingerprint = hashlib.sha256(json.dumps([ + data.get("provider"), data.get("token") or data.get("api_key"), data.get("base_url") + ]).encode()).hexdigest() + with cls._connect_lock: + cls._pending_connections = {key: pid for key, pid in cls._pending_connections.items() if AccountProbeService.get().state(pid).get("state") == "checking"} + previous = cls._pending_connections.get(fingerprint) + if previous and AccountProbeService.get().state(previous).get("state") == "checking": + return {"ok": False, "message": f"Аккаунт {previous} уже сохранён и проверяется. Дождитесь результата."} + result = cls._execute(action, data, async_runner, actor) + if result.get("ok"): + cls._pending_connections[fingerprint] = result["data"]["profile_id"] + return result + + @classmethod + def _execute(cls, action: str, data: Dict[str, Any], async_runner: Optional[Callable] = None, actor: str = "user:web") -> Dict[str, Any]: """ Execute the specified action. If async_runner is provided, long actions will be dispatched to it. @@ -602,6 +629,9 @@ class ActionExecutor: slot = data.get('profile_id') or AutoAssigner.find_free_slot(provider) if not slot: return {'ok': False, 'message': f'Нет свободного слота для провайдера {provider}'} + valid, reason = AutoAssigner.validate_slot(provider, slot) + if not valid: + return {'ok': False, 'message': reason} try: if provider == 'grok': from antigravity_provider.router.grok_oauth import start_grok_oauth @@ -697,7 +727,9 @@ class ActionExecutor: else: return {'ok': False, 'message': f'Провайдер {prov_norm} не поддерживается для прямого добавления учетных данных'} - slot = slot or AutoAssigner.find_free_slot(prov_norm) or f'{prov_norm}-1' + slot = slot or AutoAssigner.find_free_slot(prov_norm) + if not slot: + return {'ok': False, 'message': 'Нет свободного слота'} ok, def_msg = AutoAssigner.ensure_profile_definition(prov_norm, slot) if not ok: return {'ok': False, 'message': def_msg} @@ -716,7 +748,10 @@ class ActionExecutor: ProfileAuthManager.save_profile_auth(prov_norm, slot, auth_data) AutoAssigner.assign_profile_to_role(slot, target_role, is_primary=False) _rescan_after_auth() - return {'ok': True, 'message': f'Аккаунт {prov_norm} ({slot}) успешно подключен'} + from antigravity_provider.router.account_probe_service import AccountProbeService + AccountProbeService.get().schedule(prov_norm, slot, force=True) + check_note = 'проверка запускается в фоне' if AccountProbeService.get().enabled else 'проверка Н/Д: фоновая служба не запущена' + return {'ok': True, 'message': f'Аккаунт {prov_norm} ({slot}) сохранён; {check_note}', 'data': {'profile_id': slot}} except Exception as e: return {'ok': False, 'message': f'Ошибка при сохранении учетных данных {slot}: {e}'} @@ -740,6 +775,9 @@ class ActionExecutor: slot = data.get('profile_id') or AutoAssigner.find_free_slot(provider) if not slot: return {'ok': False, 'message': f'Нет свободного слота для провайдера {provider}'} + valid, reason = AutoAssigner.validate_slot(provider, slot) + if not valid: + return {'ok': False, 'message': reason} try: if provider == 'antigravity': from antigravity_provider.router.profile_oauth import ( @@ -857,8 +895,7 @@ class ActionExecutor: elif action == 'test': if async_runner: - async_runner(lambda: do_test_profile(prov, pid), 'TestProfile') - return {'ok': True, 'message': 'запущено'} + return cls._execute('check_account', {'provider': prov, 'profile_id': pid}, async_runner, actor) else: res = do_test_profile(prov, pid) return {'ok': res.get('success', False), 'message': res.get('response') or res.get('error'), 'data': res} @@ -931,6 +968,23 @@ class ActionExecutor: elif action == 'refresh_data': return {'ok': True, 'message': 'Обновление данных'} + elif action == 'check_account': + from antigravity_provider.router.account_probe_service import AccountProbeService + if not AccountProbeService.get().enabled: + return {"ok": False, "message": "Фоновая служба проверки не запущена. Перезапустите веб-сервер."} + valid, reason = AutoAssigner.validate_slot(prov, pid) + if not valid: + return {'ok': False, 'message': reason} + started = AccountProbeService.get().schedule(prov, pid, force=True) + return {'ok': True, 'message': 'Проверка запущена' if started else 'Проверка уже выполняется'} + + elif action == 'check_all_accounts': + from antigravity_provider.router.account_probe_service import AccountProbeService + if not AccountProbeService.get().enabled: + return {"ok": False, "message": "Фоновая служба проверки не запущена. Перезапустите веб-сервер."} + count = AccountProbeService.get().schedule_all(force=True) + return {'ok': True, 'message': f'Запущена проверка {count} аккаунтов'} + elif action == 'refresh_all': if async_runner: async_runner(lambda: HermesRefreshScheduler.get().trigger_refresh_all(), 'RefreshAll') diff --git a/src/antigravity_provider/router/auto_assigner.py b/src/antigravity_provider/router/auto_assigner.py index 8d02a07..85fbc9d 100644 --- a/src/antigravity_provider/router/auto_assigner.py +++ b/src/antigravity_provider/router/auto_assigner.py @@ -47,8 +47,8 @@ DEFAULT_SLOT_ROLES = { "opengo-1": ("Кодер (OpenCode)", "coder", "fallback_2"), "opengo-2": ("Исследователь (OpenCode)", "researcher", "fallback"), "opengo-3": ("Резервный роутер (OpenCode)", "orchestrator", "fallback_2"), - "local-1": ("Локальный сервер 1", "coder", "primary"), - "local-2": ("Локальный сервер 2", "fast", "primary"), + "local-1": ("llama.cpp 1", "coder", "primary"), + "local-2": ("llama.cpp 2", "fast", "primary"), "openrouter-1": ("Кодер (OpenRouter 1)", "coder", "primary"), "openrouter-2": ("Исследователь (OpenRouter 2)", "researcher", "fallback"), "nvidia-1": ("Кодер (NVIDIA NIM 1)", "coder", "primary"), @@ -80,7 +80,7 @@ class AutoAssigner: "opengo": "OpenCode", "claude": "Claude", "grok": "Grok", - "local": "Локальный сервер", + "local": "llama.cpp", "openrouter": "OpenRouter", "nvidia": "NVIDIA NIM", "ollama": "Ollama", @@ -181,6 +181,34 @@ class AutoAssigner: return None + @staticmethod + def validate_slot(provider: str, profile_id: str) -> Tuple[bool, str]: + """Reject foreign and unsafe slots before any auth/config mutation.""" + import re + aliases = { + "antigravity": "ag", "google-antigravity": "ag", "agy": "ag", + "openai-codex": "codex", "codex": "codex", "openai": "codex", + "opencode-go": "opengo", "opencode": "opengo", + "anthropic": "claude", "claude": "claude", "xai": "grok", "grok": "grok", + "local": "local", "local-llm": "local", "llama.cpp": "local", + "nvidia-nim": "nvidia", "nvidia": "nvidia", + "openrouter": "openrouter", "ollama": "ollama", "vllm": "vllm", + } + owner = aliases.get(provider.strip().lower()) + if not owner or not re.fullmatch(r"[a-zA-Z0-9][a-zA-Z0-9_-]{0,127}", profile_id): + return False, "Недопустимый провайдер или идентификатор слота" + reserved = profile_id.split("-", 1)[0] + if reserved in set(aliases.values()) and reserved != owner: + return False, f"Слот {profile_id} не принадлежит провайдеру {provider}" + existing = load_router_config().get_profile(profile_id) + if existing: + valid = aliases.get(existing.provider.lower()) == owner + else: + valid = profile_id.startswith(owner + "-") + if not valid: + return False, f"Слот {profile_id} не принадлежит провайдеру {provider}" + return True, "" + @staticmethod def ensure_profile_definition(provider: str, profile_id: str) -> Tuple[bool, str]: """Persist a router profile for provider slots introduced by the UI. @@ -189,6 +217,9 @@ class AutoAssigner: If discovery has not run yet, preferred_models remains empty [] instead of inventing unsupported model literals. """ + valid, reason = AutoAssigner.validate_slot(provider, profile_id) + if not valid: + return False, reason config = load_router_config() if profile_id in config.profiles: return True, "Профиль уже зарегистрирован" diff --git a/src/antigravity_provider/router/model_discovery_service.py b/src/antigravity_provider/router/model_discovery_service.py index 95b3a9b..b229c19 100644 --- a/src/antigravity_provider/router/model_discovery_service.py +++ b/src/antigravity_provider/router/model_discovery_service.py @@ -35,6 +35,7 @@ class ModelDiscoveryService: self._cache_path = cache_path self._cache_lock = threading.Lock() self._cache: Dict[str, Dict[str, Any]] = {} + self._probe_context = threading.local() self._ttl_seconds: int = 3600 # 1 hour self._load_cache_from_disk() @@ -82,10 +83,11 @@ class ModelDiscoveryService: return None return list(meta["models"]) - def get_models_with_metadata(self, provider: str) -> Dict[str, Any]: + def get_models_with_metadata(self, provider: str, profile_id: Optional[str] = None) -> Dict[str, Any]: """Return cached models and freshness status without blocking.""" with self._cache_lock: - entry = self._cache.get(provider.lower()) + key = f"{provider.lower()}:{profile_id}" if profile_id else provider.lower() + entry = self._cache.get(key) if not entry or "models" not in entry: return { "provider": provider, @@ -101,10 +103,10 @@ class ModelDiscoveryService: models = entry.get("models") return { "provider": provider, - "models": list(models) if models else None, + "models": list(models) if models is not None else None, "discovered_at": discovered_at, "is_stale": is_stale, - "has_cache": bool(models), + "has_cache": models is not None, "error": entry.get("error"), } @@ -188,13 +190,15 @@ class ModelDiscoveryService: threading.Thread(target=_worker, daemon=True).start() - def discover_models_sync(self, provider: str, timeout: float = 15.0) -> Optional[List[str]]: + def discover_models_sync(self, provider: str, timeout: float = 15.0, profile_id: Optional[str] = None) -> Optional[List[str]]: """Synchronously probe models with strict timeout without blocking indefinite hangs.""" + cache_key = f"{provider.lower()}:{profile_id}" if profile_id else provider.lower() result_holder: List[Optional[List[str]]] = [None] error_holder: List[Optional[str]] = [None] def _do_probe(): try: + self._probe_context.profile_id = profile_id models, err_msg = self._probe_provider(provider) result_holder[0] = models error_holder[0] = err_msg @@ -209,9 +213,9 @@ class ModelDiscoveryService: logger.warning("Model discovery for provider '%s' timed out (> %.1fs)", provider, timeout) timeout_msg = f"Превышено время ожидания ответа от сервера ({timeout:.1f}с)" with self._cache_lock: - entry = self._cache.get(provider.lower(), {}) + entry = self._cache.get(cache_key, {}) existing_models = entry.get("models") - self._cache[provider.lower()] = { + self._cache[cache_key] = { "models": existing_models, "discovered_at": entry.get("discovered_at"), "error": timeout_msg, @@ -222,9 +226,9 @@ class ModelDiscoveryService: models = result_holder[0] err_text = error_holder[0] - if models: + if models is not None and not err_text: with self._cache_lock: - self._cache[provider.lower()] = { + self._cache[cache_key] = { "models": models, "discovered_at": time.time(), "error": None, @@ -236,9 +240,9 @@ class ModelDiscoveryService: if err_text: logger.info("Model discovery probe for '%s' returned error: %s", provider, err_text) with self._cache_lock: - entry = self._cache.get(provider.lower(), {}) + entry = self._cache.get(cache_key, {}) existing_models = entry.get("models") - self._cache[provider.lower()] = { + self._cache[cache_key] = { "models": existing_models, "discovered_at": entry.get("discovered_at"), "error": err_text, @@ -247,9 +251,9 @@ class ModelDiscoveryService: return list(existing_models) if existing_models else None with self._cache_lock: - entry = self._cache.get(provider.lower(), {}) + entry = self._cache.get(cache_key, {}) existing_models = entry.get("models") - self._cache[provider.lower()] = { + self._cache[cache_key] = { "models": existing_models, "discovered_at": entry.get("discovered_at"), "error": entry.get("error") or "Модели не найдены", @@ -257,9 +261,37 @@ class ModelDiscoveryService: self._save_cache_to_disk() return list(existing_models) if existing_models else None - def _extract_http_error(self, http_err: urllib.error.HTTPError) -> str: + def discover_ollama_cloud(self) -> Dict[str, Any]: + """Public catalog documented at https://docs.ollama.com/cloud#listing-models. + + Catalog presence is not proof of an account's inference entitlement. + """ + key = "ollama-cloud-catalog" + error = None + models = None try: - raw_err = http_err.read().decode("utf-8", errors="replace") + req = urllib.request.Request("https://ollama.com/api/tags", headers={"Accept": "application/json"}) + with urllib.request.urlopen(req, timeout=10) as response: + data = json.loads(response.read().decode("utf-8")) + models = sorted({str(m.get("name") or m.get("model")) for m in data.get("models", []) if isinstance(m, dict) and (m.get("name") or m.get("model"))}) + except urllib.error.HTTPError as exc: + error = self._extract_http_error(exc) + except Exception as exc: + error = str(exc) + with self._cache_lock: + previous = self._cache.get(key, {}) + self._cache[key] = { + "models": models if models is not None else previous.get("models"), + "discovered_at": time.time() if models is not None else previous.get("discovered_at"), + "error": error, + } + self._save_cache_to_disk() + return self.get_models_with_metadata(key) + + def _extract_http_error(self, http_err: urllib.error.HTTPError) -> str: + raw_err = "" + try: + raw_err = http_err.read().decode("utf-8", errors="replace")[:2000] err_json = json.loads(raw_err) if isinstance(err_json, dict): if "error" in err_json: @@ -278,12 +310,16 @@ class ModelDiscoveryService: msg = raw_err return f"HTTP {http_err.code}: {msg}" except Exception: - return f"HTTP {http_err.code}: {http_err.reason}" + return f"HTTP {http_err.code}: {raw_err or http_err.reason}" def _get_provider_candidate_profiles(self, prov: str) -> List[Tuple[str, Optional[Any]]]: from antigravity_provider.router.router_config import load_router_config cfg = load_router_config() p_lower = prov.lower() + requested = getattr(self._probe_context, "profile_id", None) + if requested: + pcfg = cfg.get_profile(requested) + return [(requested, pcfg)] if pcfg else [] matched = [ (pid, pcfg) for pid, pcfg in cfg.profiles.items() @@ -326,7 +362,7 @@ class ModelDiscoveryService: if prov in ("antigravity", "google-antigravity"): from antigravity_provider.agy_subprocess import discover_models - main_p = ProfileAuthManager.get_main_profile("antigravity") or "ag-orch-fallback" + main_p = getattr(self._probe_context, "profile_id", None) or ProfileAuthManager.get_main_profile("antigravity") or "ag-orch-fallback" try: res = discover_models(profile_id=main_p) if res: @@ -614,8 +650,7 @@ class ModelDiscoveryService: name = m.get("name") or m.get("model") if isinstance(m, dict) else str(m) if name: models.append(str(name)) - if models: - return sorted(set(models)), None + return sorted(set(models)), None except urllib.error.HTTPError as http_err: last_err = self._extract_http_error(http_err) logger.debug("Ollama /api/tags HTTP error on %s: %s", pid, last_err) @@ -635,8 +670,7 @@ class ModelDiscoveryService: mid = m.get("id") or m.get("name") if isinstance(m, dict) else str(m) if mid: models.append(str(mid)) - if models: - return sorted(set(models)), None + return sorted(set(models)), None except urllib.error.HTTPError as http_err: last_err = self._extract_http_error(http_err) logger.debug("Ollama /v1/models HTTP error on %s: %s", pid, last_err) diff --git a/src/antigravity_provider/router/settings_service.py b/src/antigravity_provider/router/settings_service.py index e7f1e41..b2c457b 100644 --- a/src/antigravity_provider/router/settings_service.py +++ b/src/antigravity_provider/router/settings_service.py @@ -19,6 +19,7 @@ DEFAULT_SETTINGS: Dict[str, Any] = { "auto_update": True, "release_channel": "stable", "model_timeout_seconds": 60, + "account_check_interval_seconds": 300, "monitoring_interval_seconds": 30, "quota_threshold_percent": 10.0, "quota_threshold_action": "notify", @@ -75,6 +76,11 @@ def get_hub_settings() -> Dict[str, Any]: except Exception: pass + try: + merged["account_check_interval_seconds"] = max(60, int(merged.get("account_check_interval_seconds", 300))) + except (ValueError, TypeError): + merged["account_check_interval_seconds"] = 300 + # Normalize numeric types try: merged["failover_attempts"] = int(merged.get("failover_attempts", 3)) diff --git a/src/antigravity_provider/router/unified_health.py b/src/antigravity_provider/router/unified_health.py index 60de5c6..26c5fdc 100644 --- a/src/antigravity_provider/router/unified_health.py +++ b/src/antigravity_provider/router/unified_health.py @@ -97,6 +97,8 @@ class ProfileViewModel: plan_source: str = "unknown" quota_snapshot: Optional[Any] = None preferred_models: List[str] = field(default_factory=list) + connection_check: Dict[str, Any] = field(default_factory=dict) + model_discovery: Dict[str, Any] = field(default_factory=dict) active_leases: int = 0 request_options: dict[str, Any] = field(default_factory=dict) @@ -518,15 +520,30 @@ class UnifiedHealthService: "nvidia": "NVIDIA NIM", "nvidia-nim": "NVIDIA NIM", "ollama": "Ollama", - "local": "Local LLM", - "local-llm": "Local LLM", - "llama.cpp": "Local LLM (llama.cpp)", + "local": "llama.cpp", + "local-llm": "llama.cpp", + "llama.cpp": "llama.cpp", "vllm": "vLLM", }.get(prov.lower(), prov) last_success_str = datetime.datetime.fromtimestamp(precord.last_success).strftime("%H:%M:%S") if precord.last_success else None + from .account_probe_service import AccountProbeService + from .model_discovery_service import ModelDiscoveryService + check = AccountProbeService.get().state(pid) + model_meta = ModelDiscoveryService.get().get_models_with_metadata(prov, pid) + if prov == "ollama": + model_meta["cloud"] = ModelDiscoveryService.get().get_models_with_metadata("ollama-cloud-catalog") + if is_authenticated and pcfg.enabled: + if check.get("state") == "checking": + health_state, health_lbl = "checking", "Проверяется…" + elif check.get("state") == "failed": + health_state, health_lbl = STATUS_UNHEALTHY, "Проверен: не работает — " + check.get("message", "Причина Н/Д") + elif check.get("state") == "working" and health_state in (STATUS_NOT_TESTED, STATUS_HEALTHY): + health_state, health_lbl = STATUS_HEALTHY, "Проверен: работает" vm = ProfileViewModel( + connection_check=check, + model_discovery=model_meta, profile_id=pid, display_name=display_name, account_identity=ident.primary_identifier() if is_authenticated else identity, @@ -541,7 +558,7 @@ class UnifiedHealthService: health_label_ru=health_lbl, model_states=model_states, cooldown_remaining_sec=max_cd, - last_checked_at=now_str, + last_checked_at=datetime.datetime.fromtimestamp(check["checked_at"]).isoformat() if check.get("checked_at") else None, last_success_at=last_success_str, enabled=pcfg.enabled, is_cold_spare=is_cold, diff --git a/src/antigravity_provider/router/web/server.py b/src/antigravity_provider/router/web/server.py index eb8aca1..d57a10a 100644 --- a/src/antigravity_provider/router/web/server.py +++ b/src/antigravity_provider/router/web/server.py @@ -17,6 +17,7 @@ from fastapi.responses import FileResponse, JSONResponse from fastapi.staticfiles import StaticFiles from fastapi.middleware.cors import CORSMiddleware from fastapi.encoders import jsonable_encoder +from starlette.concurrency import run_in_threadpool from antigravity_provider.router.state_store import HubStateStore from antigravity_provider.router.action_handler import ActionExecutor @@ -225,7 +226,7 @@ async def handle_action(request: Request, authorized: bool = Depends(get_auth_to threading.Thread(target=func, name=name, daemon=True).start() actor = request.headers.get("X-Hub-Actor") or (f"web:{request.client.host}" if request.client else "user:web") - result = ActionExecutor.execute(action, data.get("data", {}), async_runner=_async_runner, actor=actor) + result = await run_in_threadpool(ActionExecutor.execute, action, data.get("data", {}), async_runner=_async_runner, actor=actor) if result.get("unknown"): raise HTTPException(status_code=404, detail="Неизвестное действие") @@ -412,6 +413,9 @@ _SNAPSHOT_REFRESH_SEC = 30 def _background_refresh_loop() -> None: from antigravity_provider.router.quota_collector import AccountQuotaService + from antigravity_provider.router.account_probe_service import AccountProbeService + AccountProbeService.get().enabled = True + AccountProbeService.get().tick() try: AccountQuotaService.get().fetch_all_configured(force=True) @@ -428,6 +432,7 @@ def _background_refresh_loop() -> None: while True: try: + AccountProbeService.get().tick() HubStateStore.get().refresh(force_scan=False) except Exception as exc: logger.warning("Snapshot refresh failed: %s", exc) diff --git a/src/antigravity_provider/router/web/static/app.js b/src/antigravity_provider/router/web/static/app.js index 12f1f8b..c70bcf6 100644 --- a/src/antigravity_provider/router/web/static/app.js +++ b/src/antigravity_provider/router/web/static/app.js @@ -637,9 +637,11 @@ function renderAccountsView() { 'opencode-go': 'OpenCode Go', claude: 'Claude (Anthropic)', grok: 'Grok (xAI)', - local: 'Local LLM', - 'local-llm': 'Local LLM', - 'llama.cpp': 'Local LLM (llama.cpp)', + nvidia: 'NVIDIA NIM', + openrouter: 'OpenRouter', + local: 'llama.cpp', + 'local-llm': 'llama.cpp', + 'llama.cpp': 'llama.cpp', ollama: 'Ollama', vllm: 'vLLM', }; @@ -647,7 +649,7 @@ function renderAccountsView() { const profilesByProv = currentSnapshot.profiles_by_provider || {}; let totalProfiles = 0; let visibleProfiles = 0; - let html = ''; + let html = '

'; for (const [providerId, profiles] of Object.entries(profilesByProv)) { if (providerFilter !== 'all' && providerFilter !== providerId) continue; @@ -695,7 +697,7 @@ function renderAccountsView() {
- + ${providerNames[providerId] || providerId}
${filtered.length} аккаунт(ов)
@@ -788,11 +790,33 @@ function renderAccountCard(profile) {
+ ${renderAccountCheck(profile)} ${quotaGridHtml}
`; } +function renderAccountCheck(profile) { + const check = profile.connection_check || {}; + const meta = profile.model_discovery || {}; + const checking = check.state === 'checking'; + const models = meta.models || []; + const timestamp = meta.discovered_at ? new Date(meta.discovered_at * 1000).toLocaleString('ru-RU') : ''; + const modelStatus = meta.error ? `Сервер отказал: ${meta.error}` : timestamp ? `Получено ${models.length} моделей · ${timestamp}` : 'Список моделей ещё не получен'; + return ``; +} + +async function handleAccountProbe(profileId) { + await executeAction('check_account', {profile_id: profileId}); + await fetchSnapshot(); +} + function renderQuotaCell(bucket, unavailableReason) { const remaining = bucket.remaining_percent; let formattedValue = 'Н/Д'; @@ -1474,6 +1498,7 @@ function renderSettingsView() { const quotaActionSel = document.getElementById('setting-quota-threshold-action'); const emailMaskingSel = document.getElementById('setting-email-masking-mode'); const monitorIntervalInput = document.getElementById('setting-monitoring-interval'); + const accountIntervalInput = document.getElementById('setting-account-check-interval'); if (quotaThresholdSel && s.quota_threshold_percent !== undefined) { quotaThresholdSel.value = String(Math.round(s.quota_threshold_percent)); @@ -1484,6 +1509,17 @@ function renderSettingsView() { if (emailMaskingSel && s.email_masking_mode) { emailMaskingSel.value = s.email_masking_mode; } + if (accountIntervalInput && !accountIntervalInput.dataset.loaded) { + accountIntervalInput.dataset.loaded = 'loading'; + fetch('/api/settings', {headers: authToken ? {'X-Hub-Token': authToken} : {}}) + .then(response => { if (!response.ok) throw new Error('Настройки недоступны'); return response.json(); }) + .then(settings => { + if (!Number.isFinite(Number(settings.account_check_interval_seconds))) throw new Error('Период не передан сервером'); + accountIntervalInput.value = settings.account_check_interval_seconds; + accountIntervalInput.disabled = false; + accountIntervalInput.dataset.loaded = 'yes'; + }).catch(error => { accountIntervalInput.placeholder = 'Н/Д: ' + error.message; accountIntervalInput.dataset.loaded = ''; }); + } if (monitorIntervalInput && s.monitoring_interval_seconds !== undefined) { monitorIntervalInput.value = s.monitoring_interval_seconds; } @@ -1494,8 +1530,10 @@ async function saveHubServerSettings() { const quotaActionSel = document.getElementById('setting-quota-threshold-action'); const emailMaskingSel = document.getElementById('setting-email-masking-mode'); const monitorIntervalInput = document.getElementById('setting-monitoring-interval'); + const accountIntervalInput = document.getElementById('setting-account-check-interval'); const newSettings = {}; + if (accountIntervalInput?.value) newSettings.account_check_interval_seconds = Math.max(60, Number(accountIntervalInput.value)); if (quotaThresholdSel?.value) newSettings.quota_threshold_percent = Number(quotaThresholdSel.value); if (quotaActionSel?.value) newSettings.quota_threshold_action = quotaActionSel.value; if (emailMaskingSel?.value) newSettings.email_masking_mode = emailMaskingSel.value; @@ -1673,7 +1711,7 @@ function openAccountDetailsModal(profileId, isRedraw = false) { if (!profile) return; const provSummary = (currentSnapshot.providers || []).find((p) => p.provider_id === profile.provider); - const discoveredModels = (provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []; + const discoveredModels = profile.model_discovery?.models || ((provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []); const currentModel = (profile.preferred_models && profile.preferred_models.length) ? profile.preferred_models[0] : ''; const qs = profile.quota_snapshot; const buckets = (qs && qs.buckets) ? qs.buckets : []; @@ -1695,13 +1733,15 @@ function openAccountDetailsModal(profileId, isRedraw = false) { modelBlockHtml = `
- ⚠ Список моделей ещё не получен от провайдера ${escapeHtml(profile.provider_display_name || profile.provider)}. + ${escapeHtml(profile.model_discovery?.error ? "Сервер отказал: " + profile.model_discovery.error : profile.connection_check?.state === "checking" ? "Идёт запрос списка моделей…" : "Список моделей ещё не получен от провайдера " + (profile.provider_display_name || profile.provider))}
- +
`; } + modelBlockHtml = renderAccountCheck(profile) + modelBlockHtml; + // Local request options section let requestOptionsHtml = ''; if (profile.provider === 'local') { @@ -1756,6 +1796,7 @@ function openAccountDetailsModal(profileId, isRedraw = false) { `; } + modelBlockHtml = renderAccountCheck(profile) + modelBlockHtml; elements.modalTitle.textContent = `Учетная запись: ${profile.display_name || profileId}`; elements.modalBody.innerHTML = ` @@ -2267,7 +2308,7 @@ async function handleNodeModelChange(roleId, profileId, newModel) { async function handleRefreshProviderModels(providerId, profileId = null) { showToast(`Запрос списка моделей для ${providerId}...`, 'info'); - const res = await executeAction('refresh_models', { provider: providerId }); + const res = await executeAction(profileId ? 'check_account' : 'refresh_models', { provider: providerId, profile_id: profileId || '' }); if (res && res.ok) { showToast('Запрос обновления моделей отправлен', 'success'); if (profileId) { @@ -2288,7 +2329,7 @@ function openAccountDetailsModal(profileId, isRefresh = false) { if (!profile) return; const provSummary = (currentSnapshot.providers || []).find((p) => p.provider_id === profile.provider); - const discoveredModels = (provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []; + const discoveredModels = profile.model_discovery?.models || ((provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []); const currentModel = (profile.preferred_models && profile.preferred_models.length) ? profile.preferred_models[0] : ''; const qs = profile.quota_snapshot; const buckets = (qs && qs.buckets) ? qs.buckets : []; @@ -2310,13 +2351,14 @@ function openAccountDetailsModal(profileId, isRefresh = false) { modelBlockHtml = `
- ⚠ Список моделей ещё не получен от провайдера ${escapeHtml(profile.provider_display_name || profile.provider)}. + ${escapeHtml(profile.model_discovery?.error ? "Сервер отказал: " + profile.model_discovery.error : profile.connection_check?.state === "checking" ? "Идёт запрос списка моделей…" : "Список моделей ещё не получен от провайдера " + (profile.provider_display_name || profile.provider))}
- +
`; } + modelBlockHtml = renderAccountCheck(profile) + modelBlockHtml; elements.modalTitle.textContent = `Учетная запись: ${profile.display_name || profileId}`; elements.modalBody.innerHTML = ` @@ -2400,7 +2442,7 @@ function openAgentModelModal(roleId, profileId) { if (!profile) return; const provSummary = (currentSnapshot.providers || []).find((p) => p.provider_id === profile.provider); - const discoveredModels = (provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []; + const discoveredModels = profile.model_discovery?.models || ((provSummary && provSummary.discovered_models) ? provSummary.discovered_models : []); const currentModel = (profile.preferred_models && profile.preferred_models.length) ? profile.preferred_models[0] : ''; const roleName = ((currentSnapshot.routing || {})[roleId]?.role_name_ru) || roleId; @@ -2420,7 +2462,7 @@ function openAgentModelModal(roleId, profileId) { ` : `
- ⚠ Список моделей ещё не получен от провайдера ${escapeHtml(profile.provider_display_name || profile.provider)}. + ${escapeHtml(profile.model_discovery?.error ? "Сервер отказал: " + profile.model_discovery.error : profile.connection_check?.state === "checking" ? "Идёт запрос списка моделей…" : "Список моделей ещё не получен от провайдера " + (profile.provider_display_name || profile.provider))}
@@ -2475,10 +2517,10 @@ async function handleTestProfile(profileId) { if (feedbackArea) { feedbackArea.innerHTML = ''; } - const res = await executeAction('test', { profile_id: profileId }); + const res = await executeAction('check_account', { profile_id: profileId }); if (feedbackArea) { if (res && res.ok) { - feedbackArea.innerHTML = ``; + feedbackArea.innerHTML = ``; } else { feedbackArea.innerHTML = ``; } @@ -2500,6 +2542,10 @@ function openAddAccountWizard() { } function showWizardStep1() { + stopDeviceAuthPolling(); + stopRedirectAuthPolling(); + for (const key of ['device_profile', 'device_session', 'redirect_session', 'redirect_provider', 'redirect_slot_id', 'base_url', 'token']) window['_wiz_' + key] = undefined; + window._wiz_provider = undefined; if (elements.modalTitle) elements.modalTitle.textContent = 'Мастер подключения учетной записи'; elements.modalBody.innerHTML = `
@@ -2577,6 +2623,12 @@ function showWizardStep1() { } function showWizardStep2(providerId) { + if (window._wiz_provider !== providerId) { + window._wiz_device_profile = undefined; + window._wiz_base_url = undefined; + window._wiz_token = undefined; + } + window._wiz_provider = providerId; let bodyHtml = ''; let footerHtml = ''; @@ -2752,14 +2804,10 @@ function proceedToWizardStep3(providerId) { const isRedirectAuthFlow = providerId === 'antigravity' || providerId === 'claude' || providerId === 'openrouter' || providerId === 'nvidia'; if (isDeviceAuthFlow) { const deviceSlot = document.getElementById('wiz-device-slot'); - if (deviceSlot && deviceSlot.value) { - window._wiz_device_profile = deviceSlot.value; - } + window._wiz_device_profile = deviceSlot?.value || ''; } else if (isRedirectAuthFlow) { const redirectSlot = document.getElementById('wiz-redirect-slot'); - if (redirectSlot && redirectSlot.value) { - window._wiz_device_profile = redirectSlot.value; - } + window._wiz_device_profile = redirectSlot?.value || ''; } // For local providers (local, local-llm, llama.cpp, ollama, vllm), do not read any slot elements showWizardStep3(providerId); @@ -2811,6 +2859,10 @@ function showWizardStep3(providerId) { } async function finishAddAccount(providerId) { + if (window._wiz_saving) return; + window._wiz_saving = true; + const finishButton = elements.modalFooter?.querySelector(".btn-primary"); + if (finishButton) finishButton.disabled = true; const roleSelect = document.getElementById('wiz-target-role'); const targetRole = roleSelect ? roleSelect.value : 'coder-primary'; @@ -2831,7 +2883,7 @@ async function finishAddAccount(providerId) { const feedbackArea = document.getElementById('modal-feedback-area'); if (feedbackArea) { - feedbackArea.innerHTML = ''; + feedbackArea.innerHTML = ``; } const payload = { @@ -2847,10 +2899,12 @@ async function finishAddAccount(providerId) { payload.token = window._wiz_token; } - const res = await executeAction('add_account', payload); + let res; + try { res = await executeAction('add_account', payload); } + finally { window._wiz_saving = false; if (finishButton) finishButton.disabled = false; } if (res && res.ok) { - showToast('Аккаунт успешно добавлен в маршрутизацию', 'success'); + showToast('Аккаунт сохранён. Идёт проверка подключения…', 'success'); closeModal(); fetchSnapshot(); } else { @@ -2888,6 +2942,7 @@ async function startDeviceAuth(providerId) { box.innerHTML = `
Запрашиваем код у провайдера…
`; // P0-1 BUG-2: send profile_id so server knows which slot the owner chose const res = await executeAction('start_device_auth', { provider: providerId, profile_id: selectedSlot }); + if (window._wiz_provider !== providerId) return; if (!res || !res.ok) { box.innerHTML = ``; return; @@ -2967,7 +3022,7 @@ function profilesInRouting() { function buildSlotOptions(providerId) { const profiles = ((currentSnapshot || {}).profiles_by_provider || {})[providerId] || []; if (!profiles.length) { - return ''; + return ''; } // Роль слота показываем прямо в списке. Без этого выбор вслепую: слоты // ag-spare-* и ag-cold-* не входят ни в одну цепочку, поэтому подключённый @@ -2992,7 +3047,7 @@ function buildSlotOptions(providerId) { else used.push(opt); }); // Свободные слоты с ролью — первыми: именно они дают работающий маршрут. - return free.concat(used, idle).join(''); + return '' + free.concat(used, idle).join(''); } let _redirectAuthTimer = null; @@ -3030,6 +3085,7 @@ async function startRedirectAuth(providerId) { provider: providerId, profile_id: chosen || undefined, }); + if (window._wiz_provider !== providerId) return; if (!res || !res.ok) { box.innerHTML = ``; return; diff --git a/src/antigravity_provider/router/web/static/index.html b/src/antigravity_provider/router/web/static/index.html index 1c75406..8173aa0 100644 --- a/src/antigravity_provider/router/web/static/index.html +++ b/src/antigravity_provider/router/web/static/index.html @@ -387,6 +387,13 @@
+
+
+ +
Каждые 300 секунд по умолчанию. Проверка отправляет короткий запрос модели и может расходовать квоту.
+
+
+
Интервал обновления квот
diff --git a/src/antigravity_provider/router/web/static/style.css b/src/antigravity_provider/router/web/static/style.css index 0f593bb..40fc448 100644 --- a/src/antigravity_provider/router/web/static/style.css +++ b/src/antigravity_provider/router/web/static/style.css @@ -1823,9 +1823,14 @@ body[data-theme="medium"] .nav-icon { stroke:var(--canvas-ink); } .account-summary strong { display:block; font-size:24px; font-weight:500; margin:6px 0; } .account-summary span,.account-summary small { color:var(--text-muted); font-size:11px; } .accounts-groups-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; } -.provider-group,.accounts-grid { display:contents; } -.provider-group-header { display:none; } -.account-card { min-width:0; padding:16px; } +.provider-group { grid-column:1 / -1; min-width:0; } +.provider-group-header { display:flex; justify-content:space-between; align-items:center; margin:12px 0; } +.accounts-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr)); gap:12px; } +.account-card { min-width:0; padding:16px; height:auto; min-height:164px; gap:10px; } +.account-card-header { flex-wrap:wrap; } +.account-badges { min-width:0; flex-wrap:wrap; } +.account-card .badge-status { white-space:normal; overflow-wrap:anywhere; } +.badge-status.unhealthy { color:var(--status-error); } .account-card-header { gap:8px; } .account-provider-tag { display:flex; align-items:center; gap:10px; } .account-provider-tag img { width:30px; height:30px; object-fit:contain; } @@ -1924,3 +1929,6 @@ body[data-theme="medium"] .nav-item.active .nav-icon { stroke:var(--text-accent) .route-model-with-logo { display:flex; align-items:center; gap:6px; min-width:0; } .route-model-with-logo select { min-width:0; } .agent-node-icon .brand-logo { width:27px; height:27px; } + +.account-check { font-size:12px; line-height:1.5; color:var(--text-secondary); overflow-wrap:anywhere; } +.badge-status.checking { color:var(--text-accent); } diff --git a/src/antigravity_provider/router/web/static/workspace.js b/src/antigravity_provider/router/web/static/workspace.js index 0e8514e..3111a51 100644 --- a/src/antigravity_provider/router/web/static/workspace.js +++ b/src/antigravity_provider/router/web/static/workspace.js @@ -200,7 +200,7 @@ function arrangeSettingsPanels() { const first = view.querySelector('.settings-card'); const groups = [ ['Общие настройки',['setting-theme']], - ['Управление квотами',['setting-quota-interval','setting-quota-threshold-percent','setting-quota-threshold-action']], + ['Управление квотами',['setting-account-check-interval','setting-quota-interval','setting-quota-threshold-percent','setting-quota-threshold-action']], ['Безопасность и API',['setting-server-host','setting-server-token-input','setting-email-masking-mode']], ]; for (const [title,ids] of groups) { diff --git a/tests/manual/a50_preview.py b/tests/manual/a50_preview.py new file mode 100644 index 0000000..d5d0b38 --- /dev/null +++ b/tests/manual/a50_preview.py @@ -0,0 +1,50 @@ +"""Isolated UI preview with synthetic accounts and a loopback HTTP provider. + +Run with PYTHONPATH=src python tests/manual/a50_preview.py. No owner data used. +""" +import json +import os +import tempfile +import threading +import time +from types import SimpleNamespace +from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer + +os.environ["HERMES_HOME"] = tempfile.mkdtemp(prefix="a50-ui-test-") + +from antigravity_provider.router.auto_assigner import AutoAssigner +from antigravity_provider.router.profile_manager import ProfileAuthManager +from antigravity_provider.router.router_config import RouterConfig, save_router_config +from antigravity_provider.router.quota_collector import AccountQuotaService +from antigravity_provider.router.web import server + + +class FixtureProvider(BaseHTTPRequestHandler): + def do_GET(self): + self.send_response(200) + self.end_headers() + self.wfile.write(b'{"data":[{"id":"qwen3:fixture"}]}') + + def do_POST(self): + time.sleep(20) + healthy = "/working/" in self.path + self.send_response(200 if healthy else 401) + self.end_headers() + data = {"choices": [{"message": {"content": "fixture OK"}}]} if healthy else {"error": {"message": "Invalid API key — A50 test fixture"}} + self.wfile.write(json.dumps(data).encode()) + + def log_message(self, *args): + pass + + +http = ThreadingHTTPServer(("127.0.0.1", 5813), FixtureProvider) +threading.Thread(target=http.serve_forever, daemon=True).start() +save_router_config(RouterConfig()) +for provider, pid, mode in [("nvidia", "nvidia-1", "failed"), ("nvidia", "nvidia-2", "working"), ("openrouter", "openrouter-1", "failed"), ("local", "local-1", "working")]: + AutoAssigner.ensure_profile_definition(provider, pid) + ProfileAuthManager.save_profile_auth(provider, pid, {"api_key": "intentionally-invalid-a50-fixture", "base_url": f"http://127.0.0.1:5813/{mode}/v1", "email": f"A50-TEST-{pid}"}) +# No quota/OAuth/update network in this isolated UI fixture. +AccountQuotaService.get().fetch_all_configured = lambda **kw: None +AccountQuotaService.get().start_background_scheduler = lambda: None +server.UpdateManager.check_for_updates = lambda self: SimpleNamespace(error=None, message="Обновления отключены на тестовом стенде A50", update_available=False, to_dict=lambda: {}) +server.run_web_server(host="127.0.0.1", port=5803) diff --git a/tests/test_a42_provider_connect.py b/tests/test_a42_provider_connect.py index 30edb4b..328e6b5 100644 --- a/tests/test_a42_provider_connect.py +++ b/tests/test_a42_provider_connect.py @@ -111,7 +111,7 @@ def test_p0_1_add_account_openrouter_default_base_url(): }, ) assert res["ok"] is True - assert "успешно подключен" in res["message"] + assert "сохранён" in res["message"] # Verify profile created and auth saved auth = ProfileAuthManager.load_profile_auth("openrouter", "openrouter-1") @@ -137,7 +137,7 @@ def test_p0_1_add_account_nvidia_default_base_url(): }, ) assert res["ok"] is True - assert "успешно подключен" in res["message"] + assert "сохранён" in res["message"] auth = ProfileAuthManager.load_profile_auth("nvidia", "nvidia-1") assert auth is not None diff --git a/tests/test_accounts_a50.py b/tests/test_accounts_a50.py new file mode 100644 index 0000000..9aec6ad --- /dev/null +++ b/tests/test_accounts_a50.py @@ -0,0 +1,199 @@ +"""A50 regressions: real local HTTP rejection and isolated account configuration.""" +import io +import json +import threading +import urllib.error +from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer + +import pytest + +from antigravity_provider.router.account_probe_service import AccountProbeService +from antigravity_provider.router.action_handler import ActionExecutor, do_test_profile +from antigravity_provider.router.auto_assigner import AutoAssigner +from antigravity_provider.router.model_discovery_service import ModelDiscoveryService +from antigravity_provider.router.router_config import RouterConfig, load_router_config, save_router_config + + +@pytest.fixture +def isolated(tmp_path, monkeypatch): + monkeypatch.setenv("HERMES_HOME", str(tmp_path)) + save_router_config(RouterConfig()) + service = AccountProbeService() + monkeypatch.setattr(AccountProbeService, "_instance", service) + discovery = ModelDiscoveryService(tmp_path / "test-model-cache.json") + monkeypatch.setattr(ModelDiscoveryService, "_instance", discovery) + monkeypatch.setattr("antigravity_provider.router.action_handler._rescan_after_auth", lambda: None) + monkeypatch.setattr("antigravity_provider.router.state_store.HubStateStore.refresh", lambda *a, **kw: None) + ActionExecutor._pending_connections.clear() + yield service, discovery + service._pool.shutdown(wait=True) + + +@pytest.mark.parametrize("provider", ["nvidia", "openrouter", "grok", "claude"]) +def test_foreign_slot_rejected_before_write(isolated, provider): + result = ActionExecutor.execute("add_account", {"provider": provider, "profile_id": "ag-w1", "token": "intentionally-invalid"}) + assert not result["ok"] + assert "не принадлежит" in result["message"] + assert not load_router_config().profiles + + +@pytest.mark.parametrize("slot", ["../ag-w1", "/tmp/slot", "nvidia-1/evil"]) +def test_unsafe_slot_rejected(isolated, slot): + assert not AutoAssigner.ensure_profile_definition("nvidia", slot)[0] + + +@pytest.mark.parametrize("provider", ["nvidia", "openrouter"]) +def test_invalid_key_real_http_correct_slot(isolated, provider): + class Reject(BaseHTTPRequestHandler): + def do_POST(self): + self.send_response(401) + self.send_header("Content-Type", "application/json") + self.end_headers() + self.wfile.write(json.dumps({"error": {"message": "Invalid API key (A50 fixture)"}}).encode()) + + def do_GET(self): + self.do_POST() + + def log_message(self, *args): + pass + + server = ThreadingHTTPServer(("127.0.0.1", 0), Reject) + thread = threading.Thread(target=server.serve_forever, daemon=True) + thread.start() + try: + result = ActionExecutor.execute("add_account", { + "provider": provider, "token": "intentionally-invalid", + "base_url": f"http://127.0.0.1:{server.server_port}/v1", + }) + assert result["ok"] + pid = result["data"]["profile_id"] + assert pid.startswith(provider + "-") + assert load_router_config().get_profile(pid).provider == provider + probe = do_test_profile(provider, pid) + assert not probe["success"] + assert "401" in probe["error"] and "Invalid API key" in probe["error"] + discovery = isolated[1] + assert discovery.discover_models_sync(provider, profile_id=pid) is None + assert "Invalid API key" in discovery.get_models_with_metadata(provider, pid)["error"] + finally: + server.shutdown() + server.server_close() + thread.join() + + +def test_parallel_probe_dedup_and_failure_state(isolated, monkeypatch): + service, discovery = isolated + service.enabled = True + entered = threading.Event() + release = threading.Event() + def probe(*args, **kwargs): + entered.set() + assert release.wait(2) + return {"success": False, "error": "HTTP 401: Invalid API key"} + monkeypatch.setattr("antigravity_provider.router.action_handler.do_test_profile", probe) + monkeypatch.setattr(discovery, "discover_models_sync", lambda *a, **kw: []) + assert service.state("nvidia-1")["state"] == "never_checked" + assert service.schedule("nvidia", "nvidia-1") + assert entered.wait(2) + assert service.state("nvidia-1")["state"] == "checking" + assert not service.schedule("nvidia", "nvidia-1", force=True) + release.set() + service._pool.shutdown(wait=True) + assert service.state("nvidia-1")["state"] == "failed" + assert "401" in service.state("nvidia-1")["message"] + assert service.state("nvidia-1")["checked_at"] + + +def test_model_caches_are_account_scoped(isolated, monkeypatch): + _, service = isolated + monkeypatch.setattr(service, "_probe_provider", lambda p: ([service._probe_context.profile_id], None)) + service.discover_models_sync("grok", profile_id="grok-1") + service.discover_models_sync("grok", profile_id="grok-2") + assert service.get_models_with_metadata("grok", "grok-1")["models"] == ["grok-1"] + assert service.get_models_with_metadata("grok", "grok-2")["models"] == ["grok-2"] + + +def test_model_error_retains_timestamped_cache(isolated, monkeypatch): + _, service = isolated + monkeypatch.setattr(service, "_probe_provider", lambda p: (["known-model"], None)) + service.discover_models_sync("grok", profile_id="grok-1") + timestamp = service.get_models_with_metadata("grok", "grok-1")["discovered_at"] + monkeypatch.setattr(service, "_probe_provider", lambda p: (None, "HTTP 403: account refused")) + service.discover_models_sync("grok", profile_id="grok-1") + cached = service.get_models_with_metadata("grok", "grok-1") + assert cached["discovered_at"] == timestamp + assert cached["models"] == ["known-model"] + assert "403" in cached["error"] + + +def test_cloud_catalog_documented_url_no_credentials(isolated, monkeypatch): + _, service = isolated + def urlopen(request, **kwargs): + assert request.full_url == "https://ollama.com/api/tags" + assert not request.has_header("Authorization") + return io.BytesIO(b'{"models":[{"name":"test-cloud"}]}') + monkeypatch.setattr("urllib.request.urlopen", urlopen) + result = service.discover_ollama_cloud() + assert result["models"] == ["test-cloud"] + assert result["discovered_at"] + + +def test_llama_cpp_label_does_not_rename_id(isolated): + assert AutoAssigner.ensure_profile_definition("local", "local-1")[0] + assert AutoAssigner.get_display_name_and_role("local-1")[0] == "llama.cpp 1" + assert load_router_config().get_profile("local-1").provider == "local" + + +def test_periodic_checks_start_automatically_and_respect_interval(isolated, monkeypatch): + service, _ = isolated + service.enabled = True + calls = [] + monkeypatch.setattr(service, "schedule_all", lambda **kw: calls.append(kw) or 1) + assert service.tick(now=1000) == 1 + assert service.tick(now=1001) == 0 + assert service.tick(now=1299) == 0 + assert service.tick(now=1300) == 1 + assert calls == [{"force": True}, {"force": True}] + + +def test_http_plaintext_error_preserved(isolated): + _, service = isolated + error = urllib.error.HTTPError("https://example.invalid/models", 403, "Forbidden", {}, io.BytesIO(b"Account disabled by provider")) + assert service._extract_http_error(error) == "HTTP 403: Account disabled by provider" + + +def test_slow_action_does_not_block_web_health(isolated, monkeypatch): + import asyncio + import httpx + from antigravity_provider.router.web.server import app + entered = threading.Event() + release = threading.Event() + def slow_action(*args, **kwargs): + entered.set() + release.wait(2) + return {"ok": True, "message": "test fixture"} + monkeypatch.setattr(ActionExecutor, "execute", slow_action) + async def exercise(): + async with httpx.AsyncClient(transport=httpx.ASGITransport(app=app), base_url="http://test") as client: + pending = asyncio.create_task(client.post("/api/action", json={"action": "add_account"})) + try: + assert await asyncio.to_thread(entered.wait, 1) + response = await client.get("/api/health") + assert response.status_code == 200 + assert not pending.done(), "A slow account action blocked the event loop" + finally: + release.set() + await pending + asyncio.run(exercise()) + + +def test_repeated_connection_rejected_while_checking(isolated, monkeypatch): + service, _ = isolated + service.enabled = True + monkeypatch.setattr(service._pool, "submit", lambda *args: None) + payload = {"provider": "nvidia", "token": "intentionally-invalid-repeated"} + first = ActionExecutor.execute("add_account", payload) + second = ActionExecutor.execute("add_account", payload) + assert first["ok"] and first["data"]["profile_id"] == "nvidia-1" + assert not second["ok"] and "проверяется" in second["message"] + assert list(load_router_config().profiles) == ["nvidia-1"] diff --git a/tests/test_memory_freshness_a47.py b/tests/test_memory_freshness_a47.py index 9a22a7e..a38fb28 100644 --- a/tests/test_memory_freshness_a47.py +++ b/tests/test_memory_freshness_a47.py @@ -32,7 +32,8 @@ def test_check_memory_freshness_real_repo(): ) assert is_fresh is True assert "FRESH" in summary - assert "80aab00" in summary + recorded = extract_recorded_commit(canonical_memory.read_text(encoding="utf-8")) + assert recorded and recorded[:7] in summary def test_check_memory_freshness_missing_file_strict_vs_non_strict(tmp_path): diff --git a/tests/test_web_handlers_dom_contract.js b/tests/test_web_handlers_dom_contract.js index 9efcbb0..00ad8c4 100644 --- a/tests/test_web_handlers_dom_contract.js +++ b/tests/test_web_handlers_dom_contract.js @@ -305,6 +305,24 @@ async function runTests() { const refreshModelsAction = executedActions.find(a => a.action === 'refresh_models'); assert(refreshModelsAction, 'handleRefreshProviderModels did not trigger refresh_models action'); + console.log('10. A50: abandoned Antigravity -> NVIDIA/OpenRouter does not retain its slot'); + for (const provider of ['nvidia', 'openrouter']) { + sandbox.openAddAccountWizard(); + sandbox.showWizardStep2('antigravity'); + getOrCreateElement('wiz-redirect-slot').value = 'ag-w1'; + sandbox.proceedToWizardStep3('antigravity'); + assert.strictEqual(sandbox.window._wiz_device_profile, 'ag-w1'); + sandbox.showWizardStep1(); + sandbox.showWizardStep2(provider); + getOrCreateElement('wiz-redirect-slot').value = ''; + getOrCreateElement('wiz-token-input').value = 'intentionally-invalid'; + sandbox.proceedToWizardStep3(provider); + await sandbox.finishAddAccount(provider); + const action = [...executedActions].reverse().find(a => a.action === 'add_account'); + assert.strictEqual(action.data.provider, provider); + assert.strictEqual(action.data.profile_id, ''); + } + console.log('\nAll targeted Node.js DOM and contract test assertions PASSED successfully!'); process.exit(0); }

XBwM&*57KpRAj3U^AB5i`#Xy_#RQZe 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