From ec938ce6b2fad208d68c131812d9e481238751bb Mon Sep 17 00:00:00 2001 From: LJY <1465473751@qq.com> Date: Mon, 4 May 2026 09:21:06 +0800 Subject: [PATCH 1/6] Add personal enhanced ApkClaw features --- .gitattributes | 18 + .vscode/settings.json | 3 + .vscode/tasks.json | 18 + AGENTS.md | 178 +++++ ATTRIBUTION.md | 26 + README.md | 339 +++------ README_CN.md | 288 +------- Screenshots/session-chat.jpg | Bin 0 -> 303936 bytes Screenshots/session-condensed-memory.jpg | Bin 0 -> 169481 bytes Screenshots/session-memory.jpg | Bin 0 -> 363415 bytes Screenshots/settings-new.jpg | Bin 0 -> 282491 bytes Screenshots/wait-timing.jpg | Bin 0 -> 461113 bytes app/build.gradle.kts | 8 +- app/src/main/AndroidManifest.xml | 26 + .../java/com/apk/claw/android/AppViewModel.kt | 37 +- .../com/apk/claw/android/TaskOrchestrator.kt | 291 +++++++- .../com/apk/claw/android/agent/AgentConfig.kt | 23 +- .../apk/claw/android/agent/AgentService.kt | 4 + .../claw/android/agent/DefaultAgentService.kt | 89 ++- .../apk/claw/android/agent/llm/LlmResponse.kt | 1 + .../claw/android/agent/llm/OpenAiLlmClient.kt | 28 + .../apk/claw/android/channel/ChannelSetup.kt | 7 + .../android/floating/FloatingCircleManager.kt | 76 +- .../session/SessionMemoryCommandHandler.kt | 124 ++++ .../android/session/SessionMemoryManager.kt | 673 ++++++++++++++++++ .../ui/floating/FloatingTaskInputActivity.kt | 71 ++ .../apk/claw/android/ui/home/HomeActivity.kt | 6 + .../android/ui/settings/LlmConfigActivity.kt | 9 + .../ui/settings/SessionChatActivity.kt | 195 +++++ .../android/ui/settings/SessionChatAdapter.kt | 76 ++ .../android/ui/settings/SessionListAdapter.kt | 64 ++ .../ui/settings/SessionMemoryActivity.kt | 125 ++++ .../settings/SessionMemoryDetailActivity.kt | 111 +++ .../SessionMemoryTextEditorActivity.kt | 100 +++ .../ui/settings/SessionMemoryUiFormatter.kt | 73 ++ .../android/ui/settings/SettingsActivity.kt | 32 +- .../android/ui/settings/SettingsViewModel.kt | 7 +- .../ui/settings/WaitTimingSettingsActivity.kt | 91 +++ .../com/apk/claw/android/utils/KVUtils.kt | 44 ++ .../main/res/color/session_switch_thumb.xml | 5 + .../main/res/color/session_switch_track.xml | 5 + .../main/res/drawable/bg_session_input.xml | 6 + .../res/drawable/bg_session_message_list.xml | 6 + app/src/main/res/drawable/bg_session_page.xml | 8 + .../main/res/drawable/bg_session_panel.xml | 7 + app/src/main/res/drawable/bg_session_tag.xml | 5 + .../layout/activity_floating_task_input.xml | 89 +++ app/src/main/res/layout/activity_home.xml | 13 + .../main/res/layout/activity_llm_config.xml | 33 + .../main/res/layout/activity_session_chat.xml | 158 ++++ .../res/layout/activity_session_memory.xml | 162 +++++ .../layout/activity_session_memory_detail.xml | 242 +++++++ .../layout/activity_session_memory_editor.xml | 49 ++ .../layout/activity_wait_timing_settings.xml | 155 ++++ .../res/layout/item_session_chat_message.xml | 40 ++ .../main/res/layout/item_session_entry.xml | 87 +++ app/src/main/res/values-zh/strings.xml | 96 +++ app/src/main/res/values/strings.xml | 100 +++ app/src/main/res/values/themes.xml | 10 + build-debug.bat | 7 + build-debug.ps1 | 61 ++ docs/RELEASE_CHECKLIST.md | 64 ++ 62 files changed, 4098 insertions(+), 571 deletions(-) create mode 100644 .gitattributes create mode 100644 .vscode/settings.json create mode 100644 .vscode/tasks.json create mode 100644 AGENTS.md create mode 100644 ATTRIBUTION.md create mode 100644 Screenshots/session-chat.jpg create mode 100644 Screenshots/session-condensed-memory.jpg create mode 100644 Screenshots/session-memory.jpg create mode 100644 Screenshots/settings-new.jpg create mode 100644 Screenshots/wait-timing.jpg create mode 100644 app/src/main/java/com/apk/claw/android/session/SessionMemoryCommandHandler.kt create mode 100644 app/src/main/java/com/apk/claw/android/session/SessionMemoryManager.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/floating/FloatingTaskInputActivity.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionChatActivity.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionChatAdapter.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionListAdapter.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionMemoryActivity.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionMemoryDetailActivity.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionMemoryTextEditorActivity.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/SessionMemoryUiFormatter.kt create mode 100644 app/src/main/java/com/apk/claw/android/ui/settings/WaitTimingSettingsActivity.kt create mode 100644 app/src/main/res/color/session_switch_thumb.xml create mode 100644 app/src/main/res/color/session_switch_track.xml create mode 100644 app/src/main/res/drawable/bg_session_input.xml create mode 100644 app/src/main/res/drawable/bg_session_message_list.xml create mode 100644 app/src/main/res/drawable/bg_session_page.xml create mode 100644 app/src/main/res/drawable/bg_session_panel.xml create mode 100644 app/src/main/res/drawable/bg_session_tag.xml create mode 100644 app/src/main/res/layout/activity_floating_task_input.xml create mode 100644 app/src/main/res/layout/activity_session_chat.xml create mode 100644 app/src/main/res/layout/activity_session_memory.xml create mode 100644 app/src/main/res/layout/activity_session_memory_detail.xml create mode 100644 app/src/main/res/layout/activity_session_memory_editor.xml create mode 100644 app/src/main/res/layout/activity_wait_timing_settings.xml create mode 100644 app/src/main/res/layout/item_session_chat_message.xml create mode 100644 app/src/main/res/layout/item_session_entry.xml create mode 100644 build-debug.bat create mode 100644 build-debug.ps1 create mode 100644 docs/RELEASE_CHECKLIST.md diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..821d8a6 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,18 @@ +* text=auto + +.gitattributes text eol=lf +*.md text eol=lf +*.kt text eol=lf +*.java text eol=lf +*.xml text eol=lf +*.kts text eol=lf +*.ps1 text eol=crlf +*.bat text eol=crlf + +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.apk binary +*.jar binary +*.ttf binary diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..c5f3f6b --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "java.configuration.updateBuildConfiguration": "interactive" +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..bd1fa09 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,18 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Build Debug APK", + "type": "shell", + "command": ".\\build-debug.bat", + "options": { + "cwd": "${workspaceFolder}" + }, + "group": { + "kind": "build", + "isDefault": true + }, + "problemMatcher": [] + } + ] +} \ No newline at end of file diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..5db7743 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,178 @@ +# ApkClaw Project Guide + +## Project Introduction + +ApkClaw is an Android-native AI automation application. It accepts natural-language instructions from messaging channels such as DingTalk, Feishu, QQ, Discord, Telegram, and WeChat, then uses an LLM-driven agent plus Android accessibility APIs to operate the device. + +The current project goal is no longer just to prove that an Android agent can click around. The practical goal is to make the app usable in repeated real workflows: configurable, debuggable, recoverable after interruption, and able to preserve the right amount of local memory without letting stale context corrupt new tasks. + +## Core Architecture + +The current execution chain is: + +1. `ChannelManager` receives user messages from external channels. +2. `TaskOrchestrator` serializes task execution and manages lifecycle transitions. +3. `AgentService` / `DefaultAgentService` runs the observe-think-act loop. +4. `ToolRegistry` dispatches tool calls to device-facing tool implementations. +5. `ClawAccessibilityService` performs actual gestures, node traversal, key injection, and screenshots. +6. `SessionMemoryManager` manages persisted session context, condensed memory, global memory, and global prompt injection. +7. `AppViewModel` builds the effective `AgentConfig` from current user settings and pushes updates into the running agent service. + +## Current Product Position + +This project already supports: + +1. Local LLM configuration. +2. Configurable maximum iteration count. +3. Multi-session conversation and local memory persistence. +4. Session-specific and global prompt injection. +5. Floating pause / resume / follow-up interaction. +6. Wait timing configuration with global scaling. +7. Reproducible Windows debug builds via project scripts. + +The active work direction is incremental hardening rather than foundational rewrites. + +## Development Journey + +The recent development path can be understood as a sequence of practical bottlenecks that were fixed one by one. + +### Phase 1: Build Reproducibility + +The first major issue was that debug builds on Windows were fragile and environment-dependent. The project now includes repo-owned build scripts so that Gradle always runs with a valid Android Studio JBR instead of relying on ad hoc local shell commands. + +### Phase 2: Runtime Configuration Instead of Hard-Coding + +Early runtime behavior such as iteration count and wait suggestions was overly static. The project moved these settings into the application UI so the effective agent configuration can be changed without editing code every time. + +### Phase 3: Session and Memory Foundation + +The next bottleneck was continuity. Tasks could run, but there was no strong structure for preserving useful conversational state across runs. The project introduced: + +1. Session context. +2. Condensed session memory. +3. Global memory. +4. Global prompt. +5. Multi-session switching and editing. + +This phase also clarified the boundary between persisted session context and transient in-flight runtime state. + +### Phase 4: Pause and Mid-Task Correction + +Users needed a way to correct a running task without always killing it. The project added pause/follow-up behavior and later replaced the earlier activity-based pause UI with a floating overlay so the original device page can remain visible. + +### Phase 5: Wait Timing Strategy Cleanup + +Wait timing started as advice embedded in prompt text. That was not enough. It is now backed by stored settings, injected dynamically into the system prompt, and partially sanitized out of old session records so outdated timing advice does not keep leaking into future runs. + +### Phase 6: Long-Use UX Corrections + +Several issues that looked minor in isolation turned out to matter in repeated daily usage: + +1. Chat auto-scroll behavior. +2. Button order and wording. +3. Mixed Chinese/English strings. +4. Pause overlay layout and feedback. +5. Missing summary writes on cancellation. + +These were treated as functional usability issues, not just polish. + +## Main Problems and Solution Routes + +### Problem 1: Builds were not reliably reproducible + +Route: + +1. Detect JBR automatically. +2. Pin Gradle to that runtime. +3. Keep build entry points inside the repo. + +### Problem 2: Agent runtime behavior was too rigid + +Route: + +1. Move runtime knobs into settings. +2. Regenerate `AgentConfig` dynamically. +3. Push updates through `AppViewModel -> TaskOrchestrator -> AgentService`. + +### Problem 3: Session continuity and memory were underpowered + +Route: + +1. Persist session messages locally. +2. Derive transcript and condensed memory. +3. Separate session context from global memory and global prompt. +4. Support edit, preview, delete, and session switching flows. + +### Problem 4: Old memory polluted new tasks + +Route: + +1. Keep current wait strategy in system prompt, not in historical notes. +2. Sanitize injected session content before appending it to the task prompt. +3. Treat historical timing guidance as stale and lower its authority. + +### Problem 5: Mid-task correction was too expensive + +Route: + +1. Support pause instead of only cancellation. +2. Allow follow-up instructions to enqueue into the running agent. +3. Distinguish pause-and-continue from stop-and-restart semantics. + +### Problem 6: Users needed clearer task feedback + +Route: + +1. Improve floating feedback and button wording. +2. Write cancellation outcomes into condensed memory. +3. Tighten chat and settings page behavior around repeated use. + +## Important Behavioral Decisions + +### Persisted Context vs Runtime State + +Persisted session context can be injected into future tasks. In-flight runtime state cannot. This is intentional. A new task should inherit saved conversation context, but it should not silently resume a half-finished tool chain from the middle. + +### New Task vs Follow-Up During a Running Task + +If a task is already running, follow-up instructions are enqueued into the current agent run. If the task is stopped first, the next message becomes a new task and only reads persisted context. + +### Home Reset Before New Task + +The current task startup path still resets device state with a Home press before running a new task. This improves predictability but can be revisited later if a more contextual start policy is needed. + +## Key Files + +Use these as primary anchors when changing behavior: + +1. `app/src/main/java/com/apk/claw/android/TaskOrchestrator.kt` +2. `app/src/main/java/com/apk/claw/android/AppViewModel.kt` +3. `app/src/main/java/com/apk/claw/android/agent/AgentConfig.kt` +4. `app/src/main/java/com/apk/claw/android/agent/DefaultAgentService.kt` +5. `app/src/main/java/com/apk/claw/android/session/SessionMemoryManager.kt` +6. `app/src/main/java/com/apk/claw/android/service/ClawAccessibilityService.java` +7. `app/src/main/java/com/apk/claw/android/ui/settings/SessionChatActivity.kt` +8. `app/src/main/java/com/apk/claw/android/ui/settings/WaitTimingSettingsActivity.kt` +9. `app/src/main/java/com/apk/claw/android/floating/FloatingCircleManager.kt` +10. `app/build.gradle.kts` + +## Working Principles for Future Changes + +1. Prefer changing root behavior instead of stacking more prompt wording on top of broken logic. +2. Treat persisted memory contamination as a systems problem, not just a prompt-writing problem. +3. Keep session features and memory features independently controllable. +4. When a user reports a UX issue in chat, first trace the controlling lifecycle path before redesigning UI text. +5. Preserve reproducible build entry points whenever Android build configuration changes. +6. Validate changes with at least file-level diagnostics and preferably a full build. + +## Build and Verification + +Preferred local validation path: + +1. Use `build-debug.bat` on Windows. +2. Confirm the generated APK name includes the expected version. +3. For UI-only resource changes, still run at least one full Android build. + +## Current State Summary + +The project is beyond the prototype stage but still in active product hardening. The most important theme is reducing the gap between “the agent can do something once” and “the user can trust it repeatedly, interrupt it safely, and continue from sensible context”. diff --git a/ATTRIBUTION.md b/ATTRIBUTION.md new file mode 100644 index 0000000..25386db --- /dev/null +++ b/ATTRIBUTION.md @@ -0,0 +1,26 @@ +# Attribution + +This repository is a modified, unofficial derivative of: + +- Project: ApkClaw +- Upstream repository: https://github.com/apkclaw-team/ApkClaw +- Upstream license: Apache License 2.0 + +The original project provides the core Android automation concept, project structure, accessibility-service based execution layer, messaging channel integrations, LLM client architecture, tool system, and configuration server foundation. + +The current repository adds or changes, among other things: + +- Windows debug build scripts +- version `0.0.4` +- configurable max iterations +- configurable wait timing +- local session and memory management +- global memory and global prompt controls +- floating pause, resume, stop, and follow-up interactions +- Feishu session/memory text commands +- DeepSeek V4 thinking-mode compatibility +- additional UI and documentation updates + +This repository is not the official ApkClaw project and is not endorsed by the upstream maintainers unless they explicitly say otherwise. + +Thank you to the ApkClaw authors and contributors for making the original project available under Apache-2.0. diff --git a/README.md b/README.md index 521c388..acca0dd 100644 --- a/README.md +++ b/README.md @@ -1,287 +1,172 @@ -# ApkClaw +# ApkClaw Personal Enhanced Edition -[中文文档](README_CN.md) +> 基于 [apkclaw-team/ApkClaw](https://github.com/apkclaw-team/ApkClaw) 的个人增强版。向原项目作者和社区致敬,感谢他们把 Android 端 AI 自动化这个方向做成了可以运行、可以学习、可以继续改造的开源项目。 -An AI-powered Android automation app that lets an LLM Agent control Android devices (phones) via natural language. Users send instructions through messaging channels (DingTalk, Feishu, QQ, Discord, Telegram), and the AI Agent autonomously executes device operations. +## 下载 APK -## Screenshots +当前推荐版本:`v0.0.4` -
-
-
-
+
+
+
+
+
+
+
+
-
-
-
aiYBI(dT!g9YbTRT35zX^vcQtyJ)_`6 zGg7g^euAw@(43ne^X&BKm&3SbeHI?2pSyR5O@wdQmWc^wxz%Gx=SkVU=vbss9W7a} zCrdv=hL3cKYUQvW%aIQe|8Z2fk%^_qu30+tQ6!QCnF8XM=5Y98;bKm*Xv-C$j7vxBCzR%S5e)BUX4lK!KuXBF`RXw0?vxj7?3d)xu+1=w6U?Djn4Qfk)9 z0f}qS;;9XMYL@Tgf+RWY3V$~r&&O4khu{QPD{IQm_ZHjN1Z{iR(Di@phn3u1_ z3(L|exS4ij#82np9g89zbk y_bhG@esme$j$ah&U0kV$8>%J8$k7d z+XLfi-Xufp@?Xb#8(fQn{55**4njQE@*&vZ6Mb+sbhFm)4oX5qg54SJo|QTNPYXsy zyD;Imo_#d>AYyo7v8hL!dNRkD_DifG#w9`29jQex`n?$+8oa`8IV>h`oZNh*$%53u zt|Iy?3-=PdPQ)Wu5j j^5_H)l3rj5$4x4%Lvp*fF;o0uf z@>a7T_u@fguQVj5inJXZ=9%EZ?eJFiTF{sCjJ#%{RAO5?b%VIc+MMWOU<4#j){GJr zCsd=(?Lj8!wP) SytCWuC$A%2m4Vk4UN zgX$tjP&*p%YDO+!!0a*$!>bd_xUnGPO#imDpYB>Sr-x;G-$fK)n>Gneskzg2$76w^ zv9_DqR_Xd8>IKXA+81+*3m#6St>k7MGN(vpCvB1_3T<1FI$?f_$H98QpRDXqS^@g^ zMVlQKR>n8@=gj(ezO=Yif!97ZG>f;hCa rI2c#yY{K-MFhlBiG~*!F3~XIt|9FK!u}?pdE_`wRW(Ql zvVJbvred2T2ivYzP3scxz3i$Wn4HVfOCnnHj!-Au?xx|aPsX>NdpQs`a~}Sw&II@& zYJ`R;lzl|JO6WjnN|bWBfgOTG^g5#Ai#+3w<^8QS2CD%PB~(NR3DCvKVfO^{QmkL{ zoX*7Sz6Ce G%O|{Wr)^6tWDeJ84{s`tPvP4^5v_)D Qwuoa{&ST8M+ zu2}+U?^#UF?sT5%@o87XSa(1UOASl)Jqvuuu71s6RKFS)*zJEloxPZ~L`n~MK4w#> zT2${g0RNox$K5gcP8l`fu@fCuklx8*G<*k2$^IUsfUp3Xr+v@Pcw0%Z8EsPHQ3&4r ziC+6I`qHH&yy+>QD8>BVXHK c<0H?4Hv9kjC#08i klRz%WeHjFW3G!Z|Dsw>iINw`DgYnav~Yd#IZrM z2!2)JG+Q5e8Fg2t0Fd8spHEkT*kdWKpqGAS;)VVSg}m$8&HUGC3dQYa6w>zzk{W69YlTcHLVTJugrKoo zdN%ZkePrEBJ `9_geOu~^A8&hH zIqtYJUvnU2?xL>IfVF32MRtjdGI*-3KgYK;Jhg_@cmOhOldyuOYeGeSs(1^CYF}i- ziD#f^b{psjMUP)}J`MI)6e@PY<9)1C=A}2hlDE^a0@Yv# %%y-kDj@+8&4KpfD5514n!y50$SZ^E z($kx?2*zjniT0IXKx y@o~DWx^3gT}4M>IWi+-FO`=$>24pa-EEiM#NcS?6$2VnDBPf zd52vaPFfHyi&tgeY&x8gTa-3<<)P|r>4ySlJ{jEJDbehj@M>kVtdB|KnCH>)S_n-t zMy2*@c>}6)I>)aw(bPgUSd6mi1HD?t4cx{|P)&pLAJ=TF=20}j6b}b2p#6S+-(1J^ z_tDc0pNNLd2zrS`yI*tztOY2J(qhP_`r=tC%@hrZ2kwbWAwm5xc)_Y({oTq%R%$$D z0&zF84h(2ss>m!F9S@HA#j}47jD3uMOt#2rv$A3=HQrWSK>W)`(QF|)fki+UM-Ges zD$H)LOl(>S`f*oR;=)FVUPA5maRh*hpBTWWm_EFl^CKx-)%=*-XorihuV k@r+v3+llLSeyUNu*uc9)P zYmfFyaIdY8*D0=v5puH#1sO-~_gNVZZik$tU&v&%E(tDye|jo(>A)wW;Uo>h&F?>E zJ?q$Qs0|>wxeoVjYFXUFhwMa4mDPAN<(C&Q!TsknZSNAkXJSJ77H+QS-(GoVH Zok?a9);HbJl=B4@Z0O^G~U<}d1Zyo#=j3*GP% I8LY?^AnK>)w)siJ*IV|A?xfwb;DUhv#e69e59Ja+n4uhYDG;4$$*2|Wt%3&=X zNZH}179z}T)6$0;U6W<^P~#a_b WIY2T1I}ZwR)VMDft+3d|UVI4aeRQVd zmiDmw=Is_Ip9Fn%#-A_#Paf!h^F;rrf5$STAHI>;L&VX^&FAOIps^e#a%n-w$#nZ1 zHj#SscYZq6c7249IF3+|*aL%Khi^t+spTbxjn=EWcn?})%WR8#C6)o?k}Mi6_vE0Z zo-HP9G}`Mos~_@l p$Q{b)`ol)PR1tre;s*it#G~gxLx!jUeJ7`b}d%+T(nJ$Z664zur$y9B)!0|g` zt}$ST2;elXXl6aI3466QOLz{GzZK|7yn2ao`npD`=0Goko^CFFAkDK22axUL6%P6{ zl1-KD>?02dnoIhE7bXb|-TE~d uj4z9+w_Ve$Hq!aYbt5Du6I93Az1^+oF33PTe4Aef{N~J+5lRMub%}Y#co1p zMgaGt*#srQA{-bh;f{HouBE@MqVTK}%D+r{MXLC}7fwfx-zf=FBSdQZ&NP~x=;tx( z`^nThZ`bT!vlo8RJk3PHM{>#-Xl0TGx%sGU=M?)@T>L{GWETi2Z}K%f0REQ7UShbg z%%k5TRlDsY2b|r&Lidz`6$DyYS)QePO+D{59p^vJ1E&K$8e~67TL~(i`Nq;mc2Pij ztAVks6}(>|StUfbR;q&CI@=Pb9Bc=h5NI&eU3e_?S=Wt%&Njx5vgV!L)gAYXM`E96 zRI2a|ZD`*|zkLhl(*r-g7>i 9{ja#~qiL@hj2TN2<&iS36UL7V*x_Ga<<2`&QPF&D>UcZBx zhX9S(617eULo$a<#vb91^rj8La+s1t9VlyKWtB`Y^@CZI__W+IOv&+qS-n=09u9eG zpeKpU-HJOlMG@|j!;@g8*m~_#t(NOJ~vDs#~ f%9KikWisW i?oKGzJ8ji7%o` oa68*yj;u3^#^7TOPEW5i6DAEC)%Yd`@S7`ktipBHTR(Az?~ zQ!yv}mKN_@Nru&t_f80|7hej6l}dzZM50Y+3;wgiaO(`0zjkTnP(3(N5%iK!c|sWf zDx>jnHn${Rpyj8AfVbY*Q;e Yox3!y%-B91)Z2=kwFm((PRZmDN3Z z!2O78H22ZkN)4ZiLW7c^9OtUkqsJ}AP#B$GrUB(w>l^~37}YmD`>!D%`LaP1MTu4@ zr(O1Vq9@5 Ija~Kh!-v& zuGRYWA(MQ94IHfmce=#MVVr{e)k3RmDj~R^yVyyI_w+f#PH)gJId^W1K=$sn+~#Y7 z-$<~+wi?YxZe-PUl?3}(F0?N|hFxIXzo~wJzB(Ld^Yh0HVwBuMStGe1-Yo00L3Nnu z+dyk_p1g{*8LKM}zTXz`(oeC4m0uN5?roRIzBEX~icO+joa$;kLUE Elub8K zy9Qn^Y~h~i%BwFfFVE>MW<8u+cvUmSJ};Y}e6sO&^sR{!hX-ChgT`Z ?sh#i z^tz$@_3PKoX_+XyKCKMzqWd|nm+wFRdNc6mE?4BZvBY3d4%_!Z4y*qthp{~>dHo_! zFaZdJR<#OH(n+SFn%%8MNucIa@Wrr9tEaiq#aHMOPw5~j3|yeN4Rd?#964-t(7H_* znL@+b4hywo1e=ALSq~vqbme~GL0%Ltu%#O7V^Gw2FEe{fv_?jBxQB!|KQ( UdwxXx{u|p0zz;I#{VkW01 z 4?ZS;KP<&DbGG;%M|8w=gB zZMHuJW3TtitFC$gzEC{Vm%P35dT?g+NyvXR33|U|zXW+-02%4`rXYFezawscP`Cf* zKOkNtk~Wgyq&G~(kS0T-Q$vEMFr-?PXU@%Tb+i3Uh2+tIkhFQ%dL{2?eGV05wA;2kQhE$raUY@ rQYCv#D!d4 JTInh5x!t5eXl>OU`_Z}{ z(H4z#8EUY7;=VGl)pKak-)g`j#nx>0E7sT7+oJYr!CB5-$BjpI_LaHiU;mc!0K 1*ar~N$VweGM+Xv@|2$GTRnujYqsfChDz5A&U==IEoE{ZvUQQcsF8Y^ zvWw7Irqm^5^5z)A>XuT>1lHHx(OamUDDlHVK${wfY`xiJ*}EW633f1gO*sw7GAjsv zAy?__HC?heJax?Ht`Zq@{rdB0V{st4S*^)Paz^^h4kbP%dyk-3rpOeD&ccZ?H(r@3 z{;V*sLFDBn9BqGY4aGvBwP%gcIh`y1OwBOoOkE8LliDA)T5>MDP%wg7(yaW11l$GS zR_8deI@CuXf0@vlN0q}m%~&hivvg}R5s4I3eSa8Sb%c;M$Mz7~FH{XKsQUT~wNvaI zqf~a6@TfjNhrFtCz7Lu1-hr>2tEkxfy(#M@;??~xqwc2d4PNWq> o@ zQu}c0h6ays-cvRYM4s! x`xmm`d2SNnjFm&Rh9&ao?d0x7rMO5SSjlS@8e1|Y3m-on04okc-K8-J))*X(! zSl!echOtOonb}UA_PRelwa)$eGe1&5Fa-#4;VV>t?-zO7>czOp$n5lR_&Qf!7kk4w zf?m6|gCV8uSFl-`TLpxdrt+A&j|Lw3x8F?N`02~Ct;ga{7$4Td`sZvyLduMj0^zRu z5h6WsJrBN4;*qx9!G;)C3&kUecHxD-Uz{Rv95Q^;GrP6LU?ujE+o(U*$9rgj>e9AY zbMoEAaNHSMicaP1ye|&zA ; zgs4+;*xgSRNu^Nm=vahR^hJTLb^$zJ`|rcYbK0c&L#zqhJL&HfVxY+8`5J1(p (BNSSHfL>piT{*tcWT*)&$N$cSy8a(tC3)vkfIX*cKbXTg&b%n%C51#=8nCE zwHO-yt83*eXLg4i#{VW>M#MvNaa@A$Cx-|=n|KWEa#(j3yDB>BKnlO^3tFXcNMPE3 z0x(OvYC!%IA4$BBBlCP~kAXn!*s2BE7{Y6SYUhIC!nJ3}BUF-_Y!D5cK`D_wpn(&) zl#x@Sq&|yiw8#&<58#`va=tU73s}Kej+q8n^Q&EC)83P8F+_Wf)*$W|8Yled3u9|e zc?~Vabv(qYPv87&?6Z4W5GyJC3p}^sI)^-xB3rv!`lt}h1X%8H&LaOK5ak$qe1JCQ z9G)R|X}lk@`yvo{?^_MS7Xrs6Izrsi_!ok4$B^h$u)o?saYK&YKKcgY1&-AB_ge5N z(8|+pMko630#6CiEs=~nvMmI}nQUjsP+LCFvi<1r)6#oO){X#-X}G@G33`UAi}O&} z)Etc(c(jf-FkfF^rdM|BE9BgVn0=1m$zc+8Md&+${71o}kn7KVAu7GDr4NPRAZ0^5 z^$b*W6&|a}R^_5KO&h saJ5xH|0@-&cuEkbx00tXRadpk{ApF zB_X}>0W141eMcpvs!g2{8wg0xZ|$f4nb0|f&&kC<3}W3Jyj6x9nqxhC6kP>rRx4>a z(NBC*)_(IZqSGMWQh<=G7vg@j;LvS8MPIV(7)fDns)k2~?F^~Y5$ZaDwT*u2XHyQ; zG3#DuEuL!lw41KN9RG5wU-oYJm$@9aYKmaSGi&Z*jxssM?PQhdrq#m5Rs=$#PgVon zeA4y_EE*mCdYiVeR37E;xXfVoTlyl``k*ISgRx&QHscSCic6lc{YTC@ZI?ZM0rZC! zX&c`%X`he8kr*|LHBX4O;$R6}Xv{Yfn@I4WK36~RIPje*Gq*K4=(08+2rDrnToJb{4L#-B`^}rJ_h$KDy&hUL zeKey}1Nf+M(n33HG4is+WH+VkEE|*Ubu&~BvxuMo_#S?sK|(ZO)hbioQ{E~zA7i(d zl3VI=W;|WYp%KA%CY~nQ*H83SyuDkn+sto4Wf ZysIe=u1?*Lr*UIieEH=MYO=Vm0dy2Eu>=k2~z z1QwpA)r?{_`QwG Tg)n6a4LtkUvH^ec))!?=U8Mz)TS z;F0aY1Uf~GHsp%w?ByP7RMytxfyFj08A52uZ+u8^Fe|gqiZ>%B4vY7`w{$wL47x 2WdPQLe@>Uo&d*=Un+;@0<+cq&dHprP+9WhfCD) zG9^4PAyXPDCJdje5q_r%117ZF%4|*GIs~!Dt8B-Y?t9 h}mmDhE?|jn7mF-q<#CErqY|yETuYQJcI5HUSXMN1t zAaJDPX*4$Q$8TRdwlRNi=l9?KS4mesj@q@2rOxEm46pNRV`zo8hOhXUIeIknFlW(w z%N1t>ZYo(B4P37%D)p1Gmz*gPrNP=hH!}fs?qnZrCS~+-xkXhJ6&&KtPYs 7V5=2KfLok(qwJq|+=lITXoi+9h#I zeLeQtkr(a0iqI*kzdkS0l;t6+zqF8VlUE9cP9Z5kI+y UDURW z4$%0=AzQEC_atF*SjLR-pG9;EQ_V^oA`DCnO|Q6BIX^4?$3t;;3iwL_Ms9fm2EJJY zod1FUICs`c;KOe`-?V6<$RSHK++<3(#0O-3YzCD3ZnBmbOP@$q00jsQ(97-9{Kw-+ zEo{C4*vhFlTQM1V&qh|sg~Nk>VOW%uO?!gfa3+%uoBQ%d#n^X4zNr3Vj6UL&*h+Fh zT21EUl7TbmICd4H9mz6mW6~;HdQwHYdhW(a5*HqRozHKFy)@yzUZPW>H=(-C->3;d zCWTSfgCvWA@>$C$sjVjj;FZ$Q@`S%>NR&=WevPz%L_}pv+*r$~uLUH9*cT9&;sgAoCYC$zQjdRqp zU?O|g2$KAeVbUs6Z-9s)Era0d#t2a!xLD|D0{VzgW}d61^)5t7tpqNVHlHB|FV)Rs zSmOSi^+(s$DbQOmOE>TJ>phE^``LB;HEk|fmglt~y;ZjC_ZZZ%aKM7S5(;O@av09k znD>AcO-Z&p^Fr2_g@EV!652aTqImFRe=Q+7Hq#M%yWOmkr1p7+6?f0$?JIqw;+Spc z^UsY9OEd){sQe(NPS!y}3KKfgS4%=aHE4@X2~3`UItL!hvQLO}SVf?mtHM$g{IFDo zg^GHh$5XiX;Pp^0Q^UWeune0WvBzzf){dGnT-6dpvw|+vp&bYp4GQP7g^S$bHmV~> zo3HbPg~_S{*{J@n1M_ILZ7~&LdZ|~s-!C2=3}dQIrqz6!9N*KsfMA?GJKBm3FP<)F zb&S^IBH<8`%ShG|FJWaI9XXmUnuMaB&dOB;=NZ0dzGe*chqPs|f?ATl!z_%7>>#Vr z%aR~?`$bX1ju$;o3FH$^wW*q>#jo@V0M#CYgA_mVaUZyx4 zp3<+{Slcidj$ea`Sc>aq(2`Zos vU5tm6HzxvCi1Esk(FX3)El)hPze1*7a+Td6b!~{IxBWjDT%&bm6b0bmv+4sRB z#>1 9kEGj%1#`yzRgEn6GD0aOz2S)!ygZ8!cx zQD%LWJ$$#u%Qi!F^IJc!Q9z!nctd;$xjXG&J}?nT%;=`CzV1Lo%W#IXjeR>MmCIm2 zhWs3FVE1h~tRf-*i5zyBF1ZYitBUgT8k^Q5z5i# S+bnVGrx-&gC51VOid z_dsG)*sw>umDG)fVx=ImwzumG3|f_F6>f{u(z}B(OSC)qob5g7uL=D0-w>jZE)pcs z-HnfCNU0TCEhe>Qy5r%u+vKqC*^pZ|NZtU&S?J`YKTcw*gV})O6fgD4H213MwmOP< zMe~ySIXBCMyAu6ES~}(l0e{rn8&|&TzR!2=T)5wHtn`W;<}nZgDP07(FY0uDt4yiC z{A`lnE;}b-3O6L-#TN6;IivigtZFs$9k88#L7$FUuUdYj@Y;%kmr$9^tsDL3>pLd8 zLubI@-S)K75qgn(9`kRNw;xV#%y&i^SCYG#Zn8h6G+UUQ0t8Jl-a-!3Bic!G7r=%c zWxn3yQ#PGx5)=m&zkYg1Tc|TjSKZyoGfuWMFAKK8eb5Vx^?23)qbf^jbCzv<8sV`7 zD^nW90xe?Eg!Ey#%=}=%7m4L-u$MC_al`Rk`M3t#8*2;JrsH`^f_&Qz^E(!VMNZ|p zLs|*$QAM??O5w;6ibN|=^cs@xyQKGkL fZY3mZxhblRX>>MN78>qztx z*MiX?|8=r1TGhZV3tN3>mE4&^ds+6boRUn{tcT%2LpCw~w?0Q$^YJ@^`@C>+m{tAn ziYH`E3JpJt7o$k;bSo&&NWJJ)4Sqm}yT99Wnjh+Pa_1?ayWS`%(XTj`CxH7;%e01A zBO#{w+_1)reE!gPxP8E_<-?9*TUj%i&gNsejpTMpHKo~}%*#%Y?4gz F7oDlT@$K#;5 zXpRA3TS=Rl0B*p=4ZlWmy>4Ls4kxj}`We Ko+0j6$mMz#lUZ;D_*pMCdP~3Fs$0 zE@zMWI)S1da62aVq5uWWYL&)q1Vwx%ozT~ z3MD8=Pi6wAO*>_K5FH8s1j^JX@f69ZS2KB|Oi^-Hn$u*2MXV-S6U 2d=G-AZI+RD#W7@{{1T=27Q z&M{*dZ1`5!PwOJD17jsnsso2&G1}QRY`&S$7&5q(3G;ZR>2Zg;z9-c{cdXH@$Oe(n zU|l#uh-i%r%g+AgW-lvTl~O#S>UH9DHG?^jI{2+7ujHW3**8`6D~*(0EKm?AQ}Jip z65mK6)IP=#Oz{JLB$M_BN3Nni4_aIzfC0Axt_Otg+BSOPits13&$;BC+0H|zb3;eQ zZATB_Li(a^1R%dy&x(aunHJ==P#4PHW{kGkxHtDUxZ~GsQ#tseRU=fTOapWILSQt; zvaxT+#h30|MbAH&b|d51pdrGB!C#inP2l<>E_^3Ce`l7EM;1ki Gz z7CICLSQT6tXli|q*-=9MdJ64*K*ZP+tWa2Y*Zry>=sJF#@7?hu{5M{CPCG-1-Aenq zs5O|Tn!d4!`tzh7k7LPBIs3jjK6t3+ ?p;4m6atM7wz)y-Sz;#bDzDf=`xHV8qz%y7S~I#QF}m?o?r*b%y8$&e z5YE_x9xzSId?s^}{7KnC7<{ukRO+LQ*a$6=)w}Ev7s}5%JwFTjLJ-S3J6jHW12$`K zv%<$mxvkle&+yOO_nx!rf^Tqr>No1T@m&Nic+`%)vr+gx4;Ypy&y-3IOA8ewOD?g@ zkko)SwEB-B{_b# W+BTIKeQC80Jk4AY-7sf>{STfe9RAj;e`U$PDBx zGpdjvhq({TTATs1E1aIA30)iw-G#bCvK@Vrogs9%G9kS+GA>sKo+2?;1GDUP1!o*| zhb?FH-dX5X3bNgs`spUB=H7kbD(+rKhAd`G(MJbp;>3z_{5=2A%G&CB+Uq;t;-jJx zx4Lf0* bM2V!|%d@o?86}fi7U9k-Uar}Vy;ufa*0)LgS$t0gn zb!=OV%+KU>Nssq=d-|bThPtAk`%jHNws=hR_-ecD>9!&)PP$gs?r#b @H zGSX={smYAsD>@*=CzEt0v+uh;cjxK#z`=mFx`bw`5l%_%i|_Q3Q~F&T|7!1`&-k3} z+2ziLr+btL-Oqe+&oY~8zTpFVZO8CYk~h*b_O4TznG1^x6UmAfSj+?pXrw67z>4HB zuoBXe%Rm b8X9WxA6$MjPYgu+Nud6=a-XG?&vks{_1(C$Tqd9X4A 2X&94(g3+vD?y>4g{gtHK}&X}r!*OZcr4J *4Dkg?mhk~WnGxpui2NQe(hWMo=Sx* z{U!(KDKRHW 0P;B+g4s9KmXi{bdMV^L6Sae(lTki5Ur*r>IR?EuQ)^=8MVS z-ghba*X%F%ojzEtrNOvo!&;u6i)yl`u)p@{D_%gq50vOixvHerW@e37`tHq-iH1Bg zHR2}VW{Rzjdqci4kd-b}@f5D~SZ+tL8EWm!*SOVCW4>Vy*EV|k5c&Z$ASilnzPPC# zttIPVz8X%>^3}|mX+;~5wi8J6N@inQtyt_9fnu=dM0n#r*L1EnKp-^ca>|LUTSW5< zn%#L?wMIi4MJM}Gog& _XKPExvB)*M zEI|u)Qj<9_;~vJ=mY@TlcdpIlkXN@~RyjBApxkRoxc|M0kwIv<#oHVxeT {X*q`ke{H Kr8>+c3dUVZs2UxA_Rr5%IP7 Ex;BY#9>9AzX?|7&BA`fx zPVP2G&ix`U4q!p^N CW#?;w4q z07u|)WLSd&2g%Bmt)40;4I=evX5djW*9Kg`iixC8Ooj6hmIqanIhBKfUEpO-5Ta!q z3i0ovn;~4eL6<#pm0W{vrSeq11lv$QZ_LGB8I8dBzVh?&Q%36E-pcX%ld(2|GS-b! z2x=IUK9j>1?vot6x)2O&{(fjQ-5?tfw2%y>Nleb89LlV{aD}VzpUC0lrY-)m&um?0 z(4@qhv(Rga)do(2r+An4V087|%EvK20?Ag-HR0Rku&Ve+&vD^;Stu%*^O m>w_a>$G+ulB?=$_3 zy*H~vY%t^`JhsyQjU48kyuG0D>};d<*MHxhVsiFhnR6L)Sh5bvmB0LdX~RVorA>y; zSn(AXA^IlGA?_ES1fxWI28j{jc=2JdxW&}%FmM2%q!iUORKEtssl57IipiUMw*oY$ z`Dk6ycPGl(l(%O;glg1AMPcuyv!I$3Rq-~`TiIVgL@T61DC$K}5)bm$gYiU5j$kdp zv4gzM&Vzh)5t#B^%QC(brcV-mr01Q)&q|dnS61769BiDm!PI8F{}v$gA#+|(Xb|pr z84j9?;=~6)mln@)TcOu&2W`;F&YJ7im0OSX^YRl0w)CijW=E}8wG7QIO`E6))-^wG z$_~` FWmT@=-9QHOD%w zoJz$JZMjjjbmu{0AlFaXJs*{5x2N2~e@&FaOL{ekDd^$WM=P(!hgV-OK7y!27?3$- z LqQGI@G?qKn+ajT0m~Wj-TcJ}z@0 z J0={EhaoEx= z%GNh!hVh9{gix}zs*!GPdbV9N^?tf;;(9kdx0IRZn`uek5nVqdnms(!?LRed%{U8$ zzQi503=|&(_1pkFR966Ro|&iT!1aph+|;Op^jB`ad_zAvv$1Nx(!?~ty}!8MSU0P% zm~~d^D(frS_m=S+wl;AcxB!`)YtTAD0j*rGc*v$x43vP1Mu6#sUQUQT)6~CJ$WA8i z=RL+h>AQ+6r@5QC_7UBLM@?qTmYogCRw N7rHGK%v`SV6K4eG7S4=5A$;f9J|RUfANx z^7%4$&hCVxVcOywk~#3Bji~@4d1iONHPiu&bh|xIp?Zi2pR|WBf+7}u;7JzsxPT+I z^}X~mH&wLT>-?6V TnBqNYHjNv5;Ur&5o_67~@1zOv)18pF2 z?voix4)`80%IQ2jxbT>$UxMBB;{E1?R@wSKndvm6_w~c?F>bC;4`+<;3H6n!D2nm2 zK4x`#r(mR7bQ;_tbQl)7g60#*)swo}iO3+OhQ0ZQ)r`9{tj_q|7KhVi>w7e&vvRy{ zhkZmi4O9-dT3y3lwR5>zmp7n$ru`Z9nT>>b0$IHB#1q_xw>q7~wQ|_w60fg;61Dnv z1YM9EhEE buvYotkYH?8jbhT(jI@P1kvRp4< zZ6}+Ig`Wozs9rlKi wEsrOS2nOm^m+sEseINQ5mc1&7_yl8e0 zDsOT_-jhN6j)6SRX8Q)G@LRyDpVR$k>uP#KiiOATb5sr6&3(>U#}QB0EM}IZ%9ep+ z#;;->heOQ%Q|kHipVV{I?=O(a)9XOYn-J0=o8?mi6}S)2t3b_E=m8JGGS0qOk+ZZM z%E=+1v5)U_t6VebLrIjFloFB=aeKkP-vvY!2G?k3S*Mf{4TZ{VKi`?9HAC4iC-?fJ zo{#uAJdCKA8ctVDY%D$9=jyXJ($5I!62H4D>+2P>*O8AxJ|AMVUPP8Mp>0W$^MF?R zQ-bwGn~nBeXy4Ano1ZGy!u&*{y>;U51~a|sGSx;1z9Q*Eo@b)OJBs6n>z@Uzs;QsP zjZWqKoY4(KKa*m?S5hb~b0Pf?t6Z6Bk;W2@6{1x`mRjIC);;T`;>Q JEPqB3j5BNV}+o1ij{nPgu3C(!8TGKNBZ+ly`N12+^MFDby-kxr9!D zCoe>=x8yr3U8R-Oy>`@(c0#xO=oElPUi?m>V1k_P@R#JYw3vKx49hcy9H7w3;K+Mq zn$yPy8 7S#C?NEt_kqHl1GLSOggpmRfMjCl~i27@B)MO zX n$BvnFDEm+t7+y}oaCQ4>rN0-B54q|po+v}y2F(_<=W5RGW?<5hR_9(-auuV%rMA7N4PCLf{RiIQ%(b7-?7Q1u?2c{#Xk()b1_2#x18>u zLppssFHWrPe-O}JOkpuhj#{HtnkvRD50FnGfOAaN@I>}(s@McnZ(~=>VJX>f@-2jd zjy%0)-GpSrK8w77Q!jz9Bo!euS-|Tv95%I7wd(sRT5OHHOdEdn`P_#r_$}2cMoxHb z3MU=h1XYZii)y4Vpil>qiiUvBp!5`NvIb4nm@|)9N8GnGeuo=v?eWRdRIy`RANbgZ z86MZ|rJ0-7P;nDMqo)#1xgX5;GjY%8b3^W)^b;#eHok%&*-NO~l@JWcI`r}N)Gy*@ zu$W9GU4+yHG-5M;l`wZ>AQVt&U1!U7Q<~#tMA`CM65TU2?Zu9FyU%Q>H(AUGk&X># z9Jo~}+2{xPxGJ%-w`Q$qsV$+8c@xQjl*Vrtx TH#fkd(C~08!`O}(e|Sg^?Nr{mpoe`agoCY zs@p7OdF<+RNp9tv9`RPh8s>sh|BR%~!RBuV8%a=)RFj sHZTF&GU}5z zSNj}9p6;cqhG_Om^a^}2Lq2)!gB1_D$PT%h vCYAZfk?2S2;aUTRF>D{$7DcS`QP zg-nwEh9$50r_ij~k>9P7K1R+~5}>0V*kIXJGUqY+=ifb_`(@qgZ;(q5sAN|*5ZWpE z8$XgMd%u`WUeKzk(6t>{K>u_5x1vlHG76dTkn)>N0?BgNDgIt&waz|ghd~Kc$oYTG z)CCxS!52k*5|c#&*%w8QK(g@)a^hTsaUC%f^nA0l9?RoWKHLF^0pmOWZ~})L$xnwR z+GTGd8EH@^AE8y;x2tI23INqU>l1!X_pL6 29tJ`bDc z;w4N-*4ke38p>^R^Bg98gqmab%tMmsZn?JTS*n5C^RNBfAxnMxg=HetU)CZOaVR9G zK7Zi<=B>L)8nU {{ocf4>b_tQ}h$n$n6dqe;>OQ89IF1yiC(2ex4u1;ksI9N71xU=$-6c=GXCe>O zH`YFKDj5TFT6UD=|2i;GUSYPNl2WnS);2=&<_8lCj~|D0MGTAFY!wD2XSlc@X%70} z47VwDg1rIs<<2p9W5*|2tx20f((rY#zQt!TK^Kc!J?#@;6o|2K&;(;I7f -fFzdcVi}&+m^>j>Ft@&9ynN^ZcBj z^K-6Z7rGp=h>6a@ElA$9c>XGq&qU(mmFNU~Kz0=E6 MY tguZo@27W?O{Q~X7oa+K=y#JoCFy=(!Y)prhIo29 zy{+CNDctH5Jo={mmx79aP#<#*wzC+CIG0@|%42JfCa)jdi5PQ7wR_5PlpO8IuX->i zeGhul@p~VemHFQ|nCdSDd>IKqBF(rKnj^DdcJoy*9U-XKVVrx}wF;xr79L;^j-=@o zWf>&pF?OQttq;$Kij??@R!Ub%G0TsSgg8bumK5}l^pw9icOXo+>d1+TzFLl1_MpR; z*YZ68o)y%Xv&w@d_Ciiys;FXYLcm{ydWqm(;E*W097JsSu>l#~`K8K%^^~XdHm7dW zx2BRn$L^^|n$kB^nY*%PYschRTX6O}O7Kos{5P;Q>Ci<&46&FjN%i@quq^pdG0X|K z*~PFaMhpA}a)a(IrKF|Q8JqQpVRW_qQ(xz+o83QAw6q3^j@O%ymK`ka=ybIRyLH^v zy}zF;pT{unfdn^MMa1|r8ZT8aQ{NWZ1Ke2ui*%;Rat!e88^~(D+o;miZGLIA2! &UtE!r4!x>yyE*w=%xxuA1DmnNAgpqiPwj0Xp6#$ z-$M*o0+T2`?V6Vk33f-}WAQ=HJZ%FDstFsOAu2U_ej%y1gZ{n@N>Dos&1~EAC(M*Q zw(1@l%U#uKY)?Madrg+pIqS67rV4D*ZO~gUX`HkZ*HD`tKy=dNpWnUKjlPOb<7ZHC zRWAJfm%^VMi6%6n3+FQ(5gju*6NK(6RwO8$p4{X%9`EyPWZP&;8Wdf~mSj}ot(Bbx z;;MTitvY|Dtbdg7eX-C>eO<=wtUFpNzkf^L)G+!%lq~Vt5S)`%JNPJaYS+8#t~|pT zWB*?KXRP8>p6T1(3+t|Zdd``7yI}UzXusQ2+07HSD;53|uX!j)pe+I@Z^Q ynyx6Ws@daq6!2@rN=+vu)=Z23rKc{=uUvb^%?_&}>HZ`Hz z^vu<@-*rS=|7ek4IVU_4U(yR68iUfeRxcGeDN})MmXDvD0$iO0*d|I)RaSMUE@*=^ z`8jalxfZwXdc0=jMzzH#wWw`(SnctiRO@!`?#H`mPhigKk#W|fLFcIdDR=T-(x049 z6}WO8GD7DZL@Fe?qNHWRgG!xS3#K37D;SntTZ246+Ue@i3grxxRiE9%x9=!jy8ezq zj$-u1o@w1nJ)#kwwb#Bsn;1}`k&%+}=GHccj{Jhs0h6Pp6`iF67VlR{#>Tb)9%iV6 z<=J&gYqq&_wQbk gd|?= rEk!kA{v0FR+~PI2bO^ze!jA}+w@g>31WB)+jpVGAX&sx z8adTJ&~(0l61Z~}5E*ec@3}WX2`RXb-wzA*CUpoE8EGEz!?P?TZvpCumI0oO9Ov^F zRC@)pnICMnx7%zSwg~HQ6DIi7@l^|KR2YX6TOG3`08ZARGIc-Z=Uj +eC;g@2viZ7`nC^3bfUnuo1{>dpD^an|fo#(c0flXHJ5OzM*X1E ^ zbH-|9UJOuMiKxf~WB4*ONE9mZs#m24H@Splml$U?MVAd2m=?XLg1;tIPwG56vPP>a z=B-EXG7r&N*6eIXYKemnEfrHWO0@Lq|4rPlABkQawq5D`JJSWK^8!9!S|th7u#_4g zF=NA;RZjtc^*EeO0rAs3w7*^vl=|GFaamec#yO)Fo)2iEu8&76 bC#ZSpA;5|292x29_aKUPMzR?xfxhdz<*{hzsc@apjXznsrd zHs>1k ?iFSD1V3G+(>YBP zJD&eX`(Ek}r=R{H`$BrVxZPHxtJMDb;rVeJ=PLQn)R8^=Lw+fcS${5CdBW{KYjyu4 zmKt#JUVzU!I}aOSc*}3w?8Xj(%{`83$+HWY%g>=KX#kv(DpaZoYzlb>e{G8f1{pmi ztcY!ly`JVjp3N(rjgAuEurj-m<+(4D^C_r`8v4mQVd|HHHDgpdERP`hvHE84WojT) zkpj+R1jN`?i8QpuPUo>zF?aOF6TeF5$VE-JlRgz#QM{kq=lRWE2Kf>3u~>*cbLCTA zXjm5gxpk j8O87F9JgCkQQ _N{~NpE{4aHxCy=Y^3pO vNIDfqB6+9mGwNM~GP1`btQ=g)fBhJOR6J^bE3a_GtOw+Fi4@9PT3{ z=k|h9$*JR&6=mI4n?O0~MB+lXr`q1Ub7 (sUpYFGM`02TI$!F%NiTNXQur zhjpag^7~^`jwhXn3?qb@^wf`}R>1JlKm6xNPp{{1)$zwa7L< }5G*`;z!!0#gf> z>dCWh2mp=N<@f@~j<}?0tOyQmVybpkZwE%VZ@St&P(=O4azzXxMb>(*gA*sar`KlD zS2O_+vEQAo-bTp>X=D9Lyt%ld(;2ylr%3<$>2%`MO~v25D%L=o-Ch{AJ8#-%t@ve= z>EmJ2Y1TKz$td6qtd+k2)~ygK4sNWu&@VK6Lx=&Ke8^`Y$g8VX2W{i>6`5=4jlUF* zytr>)38y9nSdl~xkw=kZ3G}TOD$?Akp(NGs8C;jn2U~T{bX=olg2$z>K)NN1T>5Az zwstM^6H&RE2&W2lvy*gl!b^kDU=c?FlzRooeeK#3Ky+~+te}@1@4hy%lwxtt+_~*4 z^yCxtW?yK&Tgwx_fHZ?_BWcxwkIelM^H%A{4W(!s4@yTX+y`e(7wgre`{JA0gUAGW z^5IUi8YPcT_O%4BL*4npZqpj~BV7eq#a*Q>C%GrJQYsT!khfJ&YKqHUM{1BiDELxy zq?xwc|16VfLv E4N}f znexsn{HA*NZJYk?w^MJ2$=nGE1^B1R@{DUNo|LeV*`l|)%j$q^55uu1y@z3r%*Ve5 zOtnSwob#R?#@E6_Nj_Cw#|n1P^-Om8YmY3M2qJ2tbc!Y~WJGVHIjAlF?6}e;Bk$0r z=KBo;mSnrivYuJ$7sWbFe$n;&a0$M&9nq4mLD%`;s$`9|A&}7SRvAI QtH094w +rRaC2Sa8-4fshQFA~QgIs%F~7Z`eX7Mzm*CiGT&C>A?d285 zY)v-}S(92~m+hApRjTH(Pp$HX^IlGYsVd<(p{MFz>1kT2KXkuP5jH|N_!1hJ_3hoY zmY8!j-22+myq>AiYqODFb-LZkCkJyu9VnT8+L|>Y%K- z>Q&*Ft}_dk ;`%MLN0eT7+*J }k L;{Q)^Ggn-XUsL#*54YpC$*-eI7RveyuQ~{d_coS%iDWZ7jS=N@+v40%6Eg z(ndKb;-Vx)leK;+_z-}KlsaR37PjmozJ|K%BPx5Xr`lr*snQ`4p`N^=dBayuJ#htk ztX1sT1;E!el-Qil6c^rK0E#K usl|jmtsH%#;>ozpJin~F24y0I0 z4C@_3@ui`8%(rO=(~O52Oy!AImhh2*hRFj@Jb^7ID_ 5d}7Urar`A#d&{qT>b%1H!z_AjVW%W3Cy`OJ &mr`mJB*leb=XvJ`>TcF=LLhgE)`1pjLI5TmnS`-$xHk74qw=T4?9sdVC{15f!w0 z%0JN7!jC*$F=*U%&1125adkzUWnSnb&kkYKz^k%E!Ou9>tE|)0$C*!vLnr?B^17F) zpT01{=5KwCZRzhmbd7)ML5iJe&jGjDB51+SJg~fT`F0D4O86uenKyB66HD3LDk$2y z))+RA##ReG44kx3{RU7Nc9nQrr7G9Y#wWbmLF8_vWNc%kMD<9WQT6a}3US-$Z1l$@ zWZx0iID5KrgS7)IuL!@C{5DC>mJM?nD>vmRjcSDk-Q)dI_#F0nh~X$4AT;2_o@yhJ z|7NZSJP~Uec3^++HII`#qXBd0_GzkpzL~N4@sdZLN_j@3mazqe1>fuveZA=eM~XBs z4`x3Z4hU{aT87HV2zl&$U?z4FJzwZ&o|bYS?yqMWv@=W)!t31N9j#U*l_F7mjm{g~ z_@k+KOFPA)diL8RAU`omzdUVi?$RX;qq^XIwQXu6Ae9nMM4t5T56Rs YvVLp^Y%FQkH5dq}A`b+%cy9_5XU585T3?zFOpM^Beoo_+pKB_{`M z96ItU(RN;Y!G!ml;@J5%U(NwOCqS524zW-!JJw1}LiV6ge-74ahTn(0V~X!ik>q|h zEm|@%>z9JtOZ*woU;P5XtLNdMYJCWxNAFgVihAqs?NA|=*Am70yGcLx1g+jZ^)3tS zJ1ek+$2i|x@ePn*^feLdbD2F8mS!U5knl3%rFc0TI9vsG-9!va!WaBTYB>$n>5&9E zc3+7_{Q9hg(jH7 !Nbrh^w}@qs;S2+hFPdBKVS5w0 zlJCSErw=XWbeN2_LuEe!gDKax^gt2m6mGj)=ms?;RLY7M{3L-nIt(7Rb}q#qaX{o* zBeV16*}b8X)(p@Ob@X#vL?$X|UPE3s-L?8iuX&x-+UN90Zcj^YlB%u7tzfs0FUzRz zuW0#QPc>(tuAwM~Sq5sizthU{Nncjt-7NQlvV`LBm*JE4!GD~dx8dvOsGP@#R&N~( zOpY49r55?9RQ@kyp@4E;eC%Auy+`He3S4J+E|@|zFq(q@FRs#-{{%wyABmOzjeo1L zB4OHn8sy#tII}7ogzVSDSfA$vO}5BLuRt8Ak$)zo_6bnOJr07kz5k0Z*WG4J&fnmV zPx W1y0OnHxyr`?mb{soCP8b@kK4RWY>kbCU)z8^+aL6z1`@i+X zPX`vZ0nB9Q6EOXIdVNr6?%>*4i~%{y$vKJfArF=ipF6y3MoTc#-09AIbRCNMId@wB z&$rH<@Wh}#ocL{??aC9aRU|GpXHouJAJ)}*y?1UnXZ{O}gGMWO(Eqa7<$vMdo(Xi| z%yDT?|356FM!t8Lo}37wBvv7^k$;AB=3guP%2wlk;b^5{)Rd!F{h&dQDZrg++)C&4 zLO?gv9#5w{^-a@^ed^};%&)Ss==q2`$Ze%LKR8dj8v4vnt3uVy)oq_y%ZK&@>Xn@o zgMo6Ii~pT5a8}bwU62GM5Lc;zTcczlbXpx}2~#WSHuPd5h8=({5<9Kzr}X9`p(4+M zTtDaQL!un6vc-=Hr}Cn9hNT(14^XHJuJicEk-@vq`~YSAhEU?*3=gnxaf%c4f&S&x zBNMk`hwu5o+iX5vnslmT+L3TFvHy5^-1x#SQ;&eQV?CvzU*ayh*O<6;j+r^y2<$1( zTzLcBElWQXov1n)X&>ZBs(Xf?zf|GKNYLJxk#*)yxs%fd{E`r?{w4#-Gq9ac{}(RG z|J(@9Mfaydr^5cPn{@8_f(%GyY)se4Teb~Q!-*VkiMdn}X=*5N5SZ6{1isdeiMKLC zDtYhu=fX50L)qEyR~UM|g{G&gPHsqS72)s`OJ)aZP?YD=_lK feLWp@Iq-DDk%tLSzP1D**2c8)THJk}yy)bgc8Za>Rj&p-)2JkFTR=Bz zWc9UxWagXmLc(%-J|*c7lVgtnXs8$Om9K0yn6KG<{c>%;^irieT{BSauLG)AwLx_* zpy&bV ?-=<~*L -+U@o+fK?X`IE&5GlW#)Q1 z^#}q*Fg()Fh2=Q(R+9?cvIY_)RjT*622DR`TM9EGekmNQi4$>;mzUL)zpO}FCH88e zbpCZ_ERDgBN|qHWhS_Rh$Dq15B-okNPm%%}N5oxh8R`z767yqibg(5|HuD&uG87Q3 z-GK12?x<5i%QMUut;wJ_N|hbz2i3cSP?I31rKr1OhbWHg_99N*dwCD*V%0rrYDc!g zHYp?T!D)Zm`|f|vjCFDvzP=##>#jWEv2?(2z;GsS&bYnaSg0fNsc!>l>f%}=S|!S9 zaMJSioR0 UPRBy8tA-yp+w2wL7j_nb*DYy@Q9y~{%->Q54#|Vl!pp=|V7LQ7k*Mos{ zsZ&!@)PQPe{U4-pI|)tZ&usps@FM5tHBv0d2h$oXX}4+@A|`R?;bSrE0Tjp}86_P@ z92@WEQ9t^&pG65=n@!#NuO1%$I34 W%o^!IW`TX7wtC?aqtqEk+tKg%8B zqXB$TSGn->=C>DKRQ L=S%=`MnF{UH=rUs^*O#uQ4)c^oEZ5nu{qe;gsE6Fk zo^cS>f>hUcV)p6dORVCI3NBXyU+2HgSNWgU;{W(p0~Eijez#fiF^Ihq&2j6fHW#v# zhh1hTfaXLYpEvBbH6~-&xtQ-4QeKeDcUbh8l|3xI;ustn8f@we2psmN9qWBRDD`_t z*aOd0dZ*<|Zz?s*L`f^DZcfqIPGOB9P=B!%8AB&Z+NX>a_qUII>k0~^x^+*lE|`*o z3XLgQXuQPkMD5Fn*2dPQg#nl1mOSdkzL5l#fWGZ9v4T0Ew-(q6Z(`qp(>+s8eOmTC z!p@+YV5jIAC&Wc!CUUfy{7}T P0wL$D(y19H(6J!RFgOe@}{rKOA%H=!G&5q zBHR=?4D8Ky;0RP}&q$gJM>)m(v8uw6+BNc|>OIe&0!EQChi6*gB~9!#4Q)v2b?N!- zuJN>vNtBys`sE5-4ZbgknwE`*nrNbL8m--$_kUy<&XU32Rs^=}7_)^`^1*YZyd3i9 z$CDOpwXycxkaL^4jG=~*lByR3Q{W??@7g>PL%Ob>=>6ZJJ4b~9*Af !#4K0@&d;1oT-! 0h_q%9L#zWYJ0?(?&I>=KEWyA3z4S8cSxJNl$)|wG%3hmhdg{h9@ zL^JH3xep^P%GIfzecwaMvjUYf&Yg3AJ+sqRx3cBxLdT6aPPo&56qJRLrz>(s9@quh zZd$e5nnUcmYVY2-t9#-nR5usn{96=VuMUK;=c1*8*G3p(#@7Y4d5bxMryTeS)R^>% zTF-Nd27*&-i#X_gk)^*~U8Q+~52E;HKuJ__D;rJq&KTx>3D(?YQOgpR1d8^UnG`z( z$z#(;Edu_Lrj=)%4+V W <2b$O< )gYm z2s1})y{_X2_Za-%y#;1Bwe{yT0nNMP QKo{;AXjH)tedhX3kl^qdU)5_uV{Udt9P0H{x7mVms2|9u_882HNNOIQej%o; zvrye$i0afIDD9BP*{sI7EKslnii=lrypwM6m*LyLbF`|rd%?* nv zSA;ilVrx~go$sbWS>NQF47SrnY__U@Gr`>W;(UHd6=J$#IM%EW}iy2ZjinA%6i0 z?s8zz#lu8g)7HT53zXKrLJi>q4di7cpWT=a+%YLFlxO1V&BA!L3bU2J3^Nq(4!|@7 zAWbpynAlFEVPQ|u%rmbvD-1$=Yw`BlgEdtzHL!dp7*jDzGKsJN`vFmuddMHy>>6RJ z%L@yvP9Xgtt)a@?eirjZ_>sT$nBc^b+3ukRT`w0jODOXa`-eIq!LirOUuvDA1Zy!j zbWbZ=0) ZMyp=LyJhJZn}GW>V-UwJ?t 7wN$oYaXt+h}e7i?scJkdj?AT)F%hgkCp^FsQ> -(4 W0t&OoJFKG3BgyQ$kM$D_Ku3SogArsm(ZCQkG(Ec&=oNSIUrG*8*MrhBWQZ zyrx25bMsxu=TClr4!hMp_z7;9#T|Gf@JpaioP+YLT2*FGInU=7=m!I-prfwsKz{jv zM^``@UzLwJbeKg_L~K3G;8ldsR8A6b;xFHG&mA}M7Xw09PW=fUb$0QioS(JpUv@!D z7yxckw1w&@OifoxFJGN>iE|TRO2%alv6rW0Y(4w~(EYYrO@)FN?xz&wZ>_dPf{#T= zziqso;t=X{@2p5Jes+v169P|bJ6a-*k|%I3wk3I5#2hX~avFhzu)qaOuvQ=XN6!eC z+f%z4O@%Ao)b2! *{byYTDz>K>v#`8my;3zj2Sf(S6qW-mNFO z?~cI1mC5c+Lg#Otm0=SXxx* ^?)$bdqGAYzy8>T2ngu_qc?)6;nZ7k(G`*n)SE|AO;tD zx;Izuet(YV>DfjJR s0) zmK?}8LFzUefof79+kO$x5m`K_1SRSj!F43+93yX8?Ml!7zVD>P)vLZ8FL%)%41Y2# zZ3))PO-G6KyLyX9H17MgrkWU=pL&=k^>^zTd^Z6Z-<;(09HfA(6A=mQ%?DCx_I=qF zP>eXQ7uRCG9n|W*Y}RsWf0xO8l*+X@Q}X$MKjI_3ja+A~)O34XwlVIT(_+S+&hhaJ z(Ni`Lgbt37M@20H0; 6xxg~0Mp?CM#{$P zY*cFH|8Ooss6HzkBfv>@o@;xq^&jelydmD?xt?mDAn#DK40>DR;AYZ_Lpfsd%F*jr z-9Cfjpp(@c%9+g47x(xMWhEsQpf%j>3S5bgk>Mk(W#bc7(tYxxKy*m76WTe=-kO G-tZ!jzbG_#v)}G6i LWY+qLeYgPqjeU`JiyR@HHHpSYWc;vS8+ntM@ zXy$v#h8bU(&11jenAyc0^9e_AFlmA)k|s$|&H)DavJpu98n#KIghWk0;zH&shDEQH zkH|P!JbpKKbap6`VdQOAo+LCx&5-DhaSs!b4G6AQ`tdv;j7)me=v)otQ)4Mm> zK~J}`Gj+NdR|0IQML`IJt#GL$Dp-+)oQO)r##FRTMAQAQ)f2*x4 r-Fmmnt&Z#WXk(@0tgitryB=4$hW`Yh!J! zPYbYX2qZ}dPyvXCB7Ud9^qnGdJuQA#xwoN)WZxrU5Oc6?Xj%aOY^gl++UR5vr~o~c z@_uAUWLBF%4Sm)kIy=TLB`H(WSn<=V{GkjoF9%;bJSSg8kZotIM%83Nd{1nDkJZvV zx|YZ(zWM~5CY1?O9*M|zw6$(x2ZY2Ger}HG4?VlCB`x!-U~WTfa)>dc(((0W)P4=~ z@yjA(6ioF(V4@-)*=%HjfmRS+v- QQXM$X<)03hNRqPY=ZfX zo|XV5`#6Ek%kKBoiDxU-o!{*6%>D25s+5b#A7V9X;&CN!xD!{J5YvD%upA(CD>%o| zhyF5~erDU_mBq*{=5nxYwCX}mpznzFN%87vwEa|DoTu?ev!7)P1P_y9;dGOdJoC^?FuWyr}XZE3;GRIx8~ZgrlW(DiL}Mu zT$^T16;CwAU%ar}GAYK2^5k&vytjlG>i5s=G5l$Oy2w 2?f9q-4NJsw;Pe+9A_ zF8H$BpnYee*EL|TE#n)F5N#(#zuL9PN_~;pM0~O^ZSSCBnDc-@Z?ng|Qs8Fv8!09^ z23T}=yKWfkwsBdXCUc>_yWSaw0~qf#3#f%1qkSR>4}KiL%;oVA=!VI!D{1b&MhGV^ z_YYzXOs)<)kD2VsFY_Djn59K*u0Dca8Q-YTrj;S>u`R=}=0uN>Y!A8!RK zNkl7ecfoH&lliMum#gep1hI0kjV#oPg#(-vY;Hs!@^ZpMG-P|g&e@Mr!FC^kX%ZvE z@)X$Td1S`nN>ukMZ0`I5)~2_KIIl^%!_9~%nMj{6cB1+l37zgRYzui{uf198FIK3G zlK*3I^vY^U)+_hsyp7q_)-DdL8D Uo$BRgxR zY^vYs0|EIB2=6jH;L(P`jX-FTuzZxMg!D#Cx7cw#jp5YTYyCCEdc8HhQ=zZMf;@;W z9TOSR %PUDD>lG_*S+GyCum756|1!fBq)+Us$CDtVFwc^ zg{TWCFhIqb9 WV}JFB3xEISEAiaY{$*7`|e^J}J6&7XBXUScDi z-TE(32(VHQiz^Z>$%^Qk@AT8YY5Z`~-6V892h+$DPhcwu;)&ZJso?`pBm^)Qd`5dl zxd0|uNRRHBIEH`=Pm40+W!D3&w=(hUu43QErXL5p`q3C}@BG%LhLl~@>=8#wuAA>{ zW3oWB@l2+BivN#Rmph$|;*+%Td%bBUXQ-o^Pq`m|DTp*DP$P5s63$`{3=fmA{7igp z0Qhnx(8qWf>~Mlg@-Kz=fX;4DjO46h>M=hOm8w@GEWyy7DKZf=L&G!rM+Y^KW08Aa z0*O)|9gp>PKgKTyDH;8h)^xgq_N1a~D(ukUkVALDmLPYBejT#iz*RYz8Ab)#(_Z zy}YE`5U!}?OornZ!4Xpm#xx${x5$xXlzxqcJG)Hy{HuC!Ax#bn5(SUQWiAc;cu*A) zQ@u1DHE$#<1cBzk#{65=!8!EjxRbgEV?RuYTU++>Mf7{ah*p0?u6D(P8 zY #>j^EY0uDY@Dlyb;P;6nySJ46*^}g>EBzer}@vJ4QIc__9-p8yDFO4Xoy)az*Sht z#zp|lFDyjuGKN;k?CNN7Zh8dhr!I+tF5WZ3%;~8f^Y EG F1>OO7t9NI5 zPpuAP5$fb$2q3obr~J{!YvpkT#uGtdegaoY$gT%e5h30p&% zWVMASSDhtTcRQMm^*rxq;|B?2r;Z^W M|EizG0Jqv&)3Zy*6SEr9RH_O&oDC75q z4?+F^_1ZIEKeH~zJG^xGek<6e Yx|MZ-X-9N4HHl|=7-2=2Dk;6YlwfXal2A>3a&BqgS|igdM+T2OFOVGvi&V<& z )@$pKuikOCVfu%WiaL}*7FNYS_0^9TpDE+onFcS?9`<`U zjk(Y9e7lX0RK_IS|9JEL_X9>o%kwrZjCNiVv17@eVOvIyY!Tj5yF~s9x=08I@(SSr z#x~8!fjWzTT#?7Rr6*mhw~J* WA>9N#JOFH{^^N%JhkC zQV0zrw*+H)7YW!-+L#|`wa3@kXEP-H#!6~a{K0-)9R`37Wh$|xX)Fr7u~;5Q`W+lH zErNuQ34-+(Dai=yWcySbdgNr=@ebx{hLIMlq$0dD&&dBY8Y!|%G$^MnMaxCJ_dhXR z+H)sim5x0l*z7wT{Rg?`i3BKXtn06s$r%5ou#Hp|=6 dQ+yVofk zx`|uipET_^+)Wcrym_pHFp~` QAnkx(-kdwO %pG9Ex(KF`*C0z5!2EawT;anC&y>@%9C+p zG=iWw!mB}FruE`0D-vj1%lP3$&GB)X=Qrs$D8}OP6VoJZa!ZiWaL8q7<%MXY_)nr} zrz!uU+LEp@iJ7j=$e{Gi?4VASQM2pGP->q0?Vht+jfY~>_N1p7f}TOUE?)cneZ4BR z@~>A 7<{1E)v5g z0&s!}BwzL|vYO3ehHHBkqQxc0F*Um|9kGXsuEXi}tgb0#PvW}S4r>?N>dtAZ;@#cu z1s1a% HFF^uiGbpAO&yGEQEw0`t| z^1H5_ r3dnaV8Lv;r+B@sl#+gYj?ijZSv zf&oJid|K%~!E`zb3zk>XZf4rd>z=afwQ^bLVna&|a*#W@bgt`J7jqcqalNxXj|~1M zpuaTeeUX^R2h8~|3UcsmZvR69{lKOIYuAGL4v{|rN;jW6W3V+KVp{k+xk~1QCNNng ze92-`Dt9wBhpLn@n*c1bw+-E(bq5r#D>d?8&_LfdOLvr;yRX2H7afW8iW{SZwB-!r zPP3p+D@x&ad_%XDAJ69wb|Yi`pXd59QpdOO%<`%im5AOe;in*vB~&7ts0axLK;91& zQv6bgs$GP3!jM2(BW6bf*ly2x5$F}cJ|s`aEt}8h`||F1XWT!4{xm4BthnzDN^N8> zpVW4m=}-$S@WDZ84_%*pE=IlpJZU}|yGhIj+LDHtMx+#YG7+~?R^y DjhUPU>eCRG?dRFH- z1=#py{Ua%wX?Hfd-ZFn-cU8N5<@TlPUaaQLYkD#ihYibPNP>I(7XTH{Yw+BSq>iy* zjt5M*ZKLn&MvlhZgYy{nXq5QxGG+ZkT`ZSQi4df2W6he~SFf$T{?}($+l4 zQ-?bB_`>1!(`z|@K9AOCJ=nNk=eqwO&PqK_YU8}|djSH0ugWVouZy)YLHkyi&O5P! z^eMT1+3n}Mm&GX@-@PCXpR_T?Tw#;fv?$^VrWxkc;|_9cHY-qK15vFyxG 1tlIV! zPMGP;?N=cDO%9bm;r#sMg0uidsf~7HkFub;rky~aVw$Yucb!z6if!fVpmmHOtw@IJ zja(vu&sc#F!lznnt959Z&>J^RS$(kcpJ8d%dhX4ks~fQL2CtO$v;DX-0Q@5CnOrh_ z0=mgBr6odsz-0h#LlVOdo)CdPwuVB77NUrh#86XCjD3dgvc53B)Zc0?`@3|e*pcz= z#MRI>lZV1DB((1!Oo61aYAskD9n$v!%pW9~Wn$Vd1#^uS3%_Gqr6n|f>7>WafjN^0 z3F4utKk!YUCSDN;@=unr`}tA8sZv5pgic&q0%>`feNbBrq=_jDiLrVMdxpT>v(AHD zH@N%bmTCuK%@Gen*RrDS(s#7dgd?qA$AHeF_5Sv!yJoI`bXs$l{qqYL#yfCo?fIXQ z@TE;~lJq z&rR(dVBX>+h}lXbjOfumkY7wd=uz1>faMSId)0 zGa|j+(W#O|{6^_^G^(-S%w?XR0vO?cuoUGG8~qKiL*{tAbKKznwwDG5I?V<`f@se< zur&^~JC4fX#oPk`JSY;>D4*;Z=5^Y^pz2;xDA)UF=Pe-VdA|L Oj1_=#^ z)?e*!(q%_t=dW39Hg%-EX0<=k2-?(Hf9gtFWhkj^DP(%R#Bpmm)s9~NH}tn5w!#Qs zRx<}#uVa#^ Zr*WwvmvVe4&(3~cYRooHf4oPZ9LER(hJON7X|7}T)Gm}) zFwVmcZz|g)8sNLz0?QzFxP4J|(6i4h0wp(8j^8562p&jp_+^PfCqrGVd-BbYCoGTZ zQga(zZDlQ7T5TzPVtJ_hEqPzlf}A6h=a+S@89sgNYQiJ1*G)a90{Zi)n#u7Yo+`_g zrgcc?e}Yr;Q*O~@8&nq{nFQ`Ph<-~!q`L9n^fG#~WNTqTzJH+!E#UW(l9C8&UR70Y zW<_~fc|}6j<8LC7^Wi5EOYVM6qj-45nfY8lbJ7l(0W+j6e**cE(2a(YQ2@dC$g?My zyD^U{`NN0K-B$W=q_7^hK|&d(aCcihf7M8^&C)q>5#8YD?}P;=4TH*PFg()Q0d$Ky zF4GFmBS$;`T%21>8Z{SHa9d176I{Y=*0P`$_j)Sj41GZxgIimXF$ (pEnKdzs0ZygKPym*^8kJe!4N#k*3!G z!UL7hocK~m7dzg=+%QsWgx sIfq?VQ@W~1nAh9L+7=c1#c{Z 1YJ`rl)m>K3r4KP=5a_ zn(Ps+ME9zEX_sC|*AdgOmG1bG)!^}Bc_zsH4rqBGWJxgiorm^maR)4MHS%Wv3q&Ql zdi^#^<>e0nTTQ1sj4@-OWT!wY(ahNWq(QSij6V?hpE?1J$$1a(dI B4#Vzb5(iU&rm@1SL z4|f(C2R$e#l=wt%JYj7!DK(crNCL-I4D#y1T+U(}J%%-^h3tG&y8(vcaU#P6PKv>` zeJc}FMFXpREe77kzXsPK&-%io)8Q447x#2Mz1PEY-RgN*E#{%c)tdX=6}46U;}stW z0w3w0s00B`At+#a9|Im_Neow_ UDngF7Y_ WpI^>Mn@Nvm?HIC7TUa&O9ip)|A3#mDIsW zqM2J?;lXrK!l}sfPje!%{U7^vbv%ne2w>|T`j9&6OS}9nQPlHo H55c8AZK?G?}SRolJlUi#nN2Harwib%x4t* z$eT(-AUDuxDL?RLPy@Z|UE~c2e2Qp?sIAdr{fTq^dtOGK_&C9v*xwsuw296M*84x$d+)HOwtZa~yNHNNM R|Ox&8s-%*>dh{N@7YBii2QIeqsaEYewN~Ox)(`LcJVjpvGd}`b%-_99w5HQiWDeK zhaDUj>c} lYNNfG41K=Jn`*{BnfrLU?ts2z#N2>D4_#F6IvB?qR~7{{KdU)b?MS*-c# z?*;eCA?bRa#&*u*4&&P$c`*K~!kCg(%}|A3!cJ>agQ6uRw^>RDUG$^3C8IwnBCIT| zPPz<6OS<%Mv$#k`6JDHWDRt>lvO9e3c@_s>vx8;~wF_P}R5v+nG`04EdXRhsukaSX zfpu-@xFiH=K%VQtjl2$eFCrnYv3_eOwz($PRBj}?BHvoac+sOa!_nT`+g^O*dXnXc zSiIw4N%{z4WOYy*QERkjF}MfUTgrrV#*oiz0a1>t0dwew?2v@BBk8`|cmq74j&0fK zJS?4CN{B60fGq7cT}6P@JIV^QUoNtJ`jG%@_+m-YR>N@vIu$$SRJRF|Rw=m*I1O!~ zQ)Okq(82ql>cjvyS^`WT&a$wfxKA;R(?=g!-g`B h!?~i6#C?S{a*Kn0vnXS z$5uV;@SYc9Do=-`U;=6I*P)K*Y=F#2;P%`WCmNAl_fw61{D=_jc y1fx$zwVM5Dv3cJf`Jwp$=Fv%O==Gw^F!2|m!UafBx^CvOs#O*GnT z(i@$WGf#)+d0pFgKGsQM%zn^}LYt}V#1Mcx-dRga#7skv5gp(FE_~ eddfNw|caIb{1P3f4*{`!N7)dSwu+X zS~tT6aMAflP{#qSx!pGyPNRsVi~I&XiLwIeZ`;}Gn)k|yPra@K7G2r-2DG2HX*<^h zaY4fF9B^sK-NeBIE8AQ7%7$#o*KMq@bk~FYdmr_eRLubt?gce{u(aSUHkSs+VIlMp z2=4@LxerSgdE%39t1wiQ5K1c-kIy6odmoS>#iW3dGDD{#Wkq4z@NXj9E=gub4D|5o zwUviXIiSiO^(!(qs~k?88Or{igjcfzubSV4%qH~Pp>2tx%78MM2XLcl)&;HHlKMiK zk=hIM$zPp%H$4|Cqi^u} hVHgTb 8QpIN*!*xr%H8Z;n=t2=*nEQI6qQgB>IJ8bSG$t0g$y zUseL=jmWgTBX%JD!;S(MQ6<;9;K|B%60OY}<4Ki|;yqpVQ#BroCY}uo=ioM_9HX-_ z>+P$knPZEqVfo(^x%$Lw92;Vr-vhQilU}D4SH&SGqa}nUY|zQua9G4?Tt}_{=}c_z zUj1J0{d|P*N_sTiYo5^i32!44RHqbJK?MY09`>(2Nz?) sT$ zTP3BJERS8eG%i$35pA_}U*(j3c;ivxA`Z8@_&9oT9fw=AN{^`Je(^@s` P|1Y-Nq($a*bi#6wE|0hzErL1Q9wjlDZd+;#UF*keWOzhadzs zLg|sra6r!N+#!Wi$jXE^d;wT(C2~SGc83)%^=1s@ejq57 |8Sv_hKH1Tq zv(a40*#<)FbHyzQct63O2ZYQg!|M@obb55$d^?gz0oV43J0ILev6KGJMmCecUq|mG zsOhI5Kse&>AF`6uCTBH0Ds;n`-nFTnuRC{e5y4omW&AA!)|kjkjq^G{I)H40p9D}M zU4fIOyf13$+!SvBrAX57!F_ nAyAx&*qo%Gq3CmE($q*X7AvCf*{75vdQ&?dpLS1?p?G$U3o*(Po z*QZOF>1Eis4aU!hs&jHe6S>j#Vf$vj-Ef=^ah|uyj+5xw!cy6pKzKNbUH{&22S1D_ z?^!e_K^ww2BqrZI^jj7DwmJp4O|CFJsZ~{nt{9M&?Xk~AQB#Quz=hTrUqZFqMlzH9 z!JKA-=dgRxf!|Mv*KtFBa*8;SBgp=duqF}4?;LAn9);^fMyv>fO(F!C0O@L$2yBjL z`{Zf2?e!gX&(WYft%t0olJ|_qjo)pq$>KcUqYUDLJV}3aivLN)(lqc#- zRbba!R}_)%5E*D^QzaO@2|X|M#5jIu3e~V8vTfO4dpOB=LY$x(Wb5p$h#OC8)Ek1m z77r0o3)1wfAH~l5a`(l4TUfh3*5T;DefId^xM~dadjc3jF#y&E`*z)R%yKj85r(3z zK!*+hTp-|Gy|v~8!RtVdkvZ{Q{&IR?PKFKc0e%^fUe*gxNOnGBXx)PJ2 B)( zF^V @FOGYhEA zLLT?xCtf=il-?Vo7}tm=3*${groLAz3crr^%LX7Vy;gLYD(RPVvV?p!5Yg0SWnN^i zY++802h3?m#r4ow-)dOPZmjb!Y&0I)gAU_+zqvv3_KT5ioEI_sb;|pAcmFP|!GGm_ ziYlw<#s7k;)W4MB{KNkP#N>Cp2i*ack4Z`2!IKTHe5i;{&`UB+8vFn}LQW)!wparf zgG$4N{ZIAJX3RPduVT z5LrUx!?hXW4YnsZj*3w;QAaq{zfci0ZU2!AH8sY9HL@${hjlKG48ZB4>W zP**Qh)S#jy1NryA1so9k!$RRV{^X;QUac|MFXh($FLF-&S2;cYSGOxDo1lRD0OZ#Y z)Oq~`rug^gfSEDKrR)X}+Fali{qTSC58a={{$E|RI<9E+cT|1I($XFT|KXUH`a~@T zsBtHxe!Kkqf|8WS9@U@B_s3-#XQuJrZcY9D@`3)J4g8z~GT+ZR_-`@?hhMaQJj@wM zQ~V#qYYb9y|4x@Vd+c(|u~{~#qzh>}kA_E>_B(Cv3QVWCclzwam$xn9Ct@1EDogua z)omMFKa@T}D=lXMQ>ek6r$5m@Jj{87vc4jZzxC!Nr~jdqUmqc9i=#$WTy5Lees#(S zt#+Lc#Za?5Dh9>dB@fQ+4XBJqsrY_Lvv2rdobPZgq;cx`DFHqzM2?8C)354RcIf$h zfoneViyIAnivnD$w~8M6naWbEw7yyV_(t^@&VV KmuioL1j91nq zSByjuBUm*1dr@ZJlQxg`VelvVe$a&I+pwc{UACxu>(sR^%h_ieP~zQvzx_UcE6o~e z7Y-v|R^a?Wlhgp{t6ec 6-^H 7I&>t9;|NQO0E{f$gXTT4d8;I**hV!7r0mwgh z*4vJn0439-)}aGQQ4L=~x$i%%DFpwH=t)H}P!CM}pjof25&O&hhy7Dm6@V{JBZ+zx zvkO`5YQxT<{`uQse_3qP_Z0sWRQEXzuvUVaR0-H$yK3} 0gyjL= zA|OUD&{Wu7(R#Ui(qF_4lw|%{c!tvdvX+18?@!_TDSZF-R`pZ(e(rq#IOcxtd_Rxf zpU3Y1*gAh6yFYclf2gNFb-tel$4`Uf4|`ebr@`^l+Wm*p`2W>6^3&k>FE%(Bf~%n; z%LU5{EuLLeot6#ezj}iF6?;5{gEAg%{-C*4L@oGNSCCX#lkDM)x!Tk7FKRfh?ERoY z-`RyI_I(>HmfG{~RA_OE`6cv3VX5o}>BEFSh-oi5i@Dh-M>2a0w;otKc;z-HbbgFi z(@wRag6Nqt#_#s1s#qa_OVoE|E}GkAYVK7a+^Rf(d(H$JrSOC1-5Hl-1vB=+q3=^F zmXhd+Ny?8A3bPWP65P9t;K_9HG_)6+2O#U6H!#amHw`BnRnGg+D^E;o#$CLVz*etu z<4Xil`Ps1v&RjvaftOLc(N)&KpK@sKn4S{d2F;Bx3cwe2fSj4PAEl)E&wqm7w&7u_ zG-AHK-yVf}oGJ-G<({YbD#Od**A8@%cg?f7Fi<#J6`gJE2>&YX{fn6OsXAL;n%!sV z&)gxxE13Dd68xG!VpGk#k=8E#K)x;8!R7hr1C`UzdFC!tOu_7qOhrZQkWd8z5mD*7 zKDv5Rp0%#`ZYwJ9%MfG1#HEL-T$Ue &Oye~zE1@rE4(TS+&PIV9`5EHaO=#s08^82>@_53&*6 z^XFb1d+R$oQIdJ=d?2IE Uf-1-ZC+MdX1e_epIxa zkHV9%m7jL7%kI*uS@?T4Ti?()Hp@t^1)r w z3*ngmYPE!uv-}nDO5LtnPp4MNTn&|b*Vdo8FU#!hU<>$5G(4m%*i9EH34<}i^4|K< zgQB%z$S@2U(lzA0eq37ajEdGxzC^Y(og`7|nWb>4OtU17THn~n)9%dQ?F!8PGXVMr zvH2e=y~|NT>9P9!hmYT??xcCh^v3-_ L^olobF3fr71Nh$lSXcq-s!t%_Z$sao7LXC~+tBwX z3@p)aLm&Fzd3#0?-0ioH@zWm4N=x6I)HH#LMn2k70c^CONC^z%^!^#BE%$6piKnK1 z%|}mQ(VflAw`CV(m8OJ!W?)O4n6IzBEXjJMBXv ;|gLx4vQ2E9_qB=Pv*8|#zmkg@hfDd$3@}*R^fjNEtFF&_L zk8h=={00YdFfrM!(mSD}&*^lv`C>zvgE!55-v|gSZnhNkaJ{eFKnp*re%wqa$XI-) z-y3&xCts~8Exov~Ao#*gOaW|to=5SZhbO0f#0%3VOWV@z?b0@y(}qfr3vJmxC`Kw* z-ZKE+sy9*z2s$KdXbJ`cZ(O~$u%u>c*7^I(WXexinqF(b4EKFDm{1@F< B$So(`4}X%`wf<%1}3v zDeWy;UXEHF?GY^PRZn&NmcJ(SR4Bc=rrfW$cS152H-}U5JO1!yO!x!iY~?_i$B$`F zrPng;lQ >r)FwG9JV3YFa3FfhT;knOqkc _y#L(V=s+&-?shprg zTG zr5`BNrbaI9f-MUt;0a(m$ z#4V6iP6e5<8~*72F8&%L>K>E3`r_nHcWRQr51M2N2wC_mYWJh~GIfgzn@u9iS#G}r zNW)LPJbut%KqW6~w*iFD8Q3Z5(1mjlP7Da2H$te-w)WotKH#w5+jN|TZ(dFX1? 05TB?^?e%8tRopec6w~SAj9iz3D3=4edgrQFwrM zW=?%uKv<#zkhhzFZjAx Vih&I*5EV92cU$x8D$l=r`*zlCILt#paI3pL;j}6@T^1~k21<8-ye&s zpa<+iYbenK%=*S1t6|C#IjkM}ck7q>uY$9*CDvvKa?5L9asJ-ud>iJwIt%~^7eT02 z^w*&^sJFY8f3tj>sK4nhGW`$9_@mA9KLzf;pTMC<%rRs}^XYEL7J+aGNTJfdwXDJb z=Fxt7oK~r;G3;B+wCjt_wOuQhjy&Ucc+uIIMhFA>B4Yg@gH)jVZfP*%8j2P`r=tpE znq10?IHfCyu6do*dp%TMt4VwicsV_qW-eEju~J#WT@$ALCi-oHJRR2g0ta3{OR~&f zInU|szQ41W+RQTqfubI% eEb2SDozb<1Ltat&~4 B9zG z0MBI|{XlMyv5~QI#7+A{xt}_io{Oq6y;fB@mvzKMMgQ0@Z*>fCl37z>BN0^E{`scK zlM>^W(>u!p8DH|yZglWym95F+3k`?IKMUd3i{D`_6CHD(+=HduTH>MBU}yZ85}-P@ z2fdI)dy+EoXiLlFDG5}m;T`=^!=C(lqooO!!GlN3L5Wj_ze`cg%he|dhH7d{cEa1u zINacqSp}Etg3+9DO=dPQ_U9S`deiK;(m8e1>!Sr?suwynMDNAL6lGbo^IlILbtO8N z%~GCvnlNdZ-m>~Qn6>y4C=ein9vuqGKF}kh4Hz0k@f!UChjF49F$<@7Uf~>GIpIpU z@x`i$FNOUj_D5K}|vTrKHaMx=PF8C6Z%WMp$o#gr=e=|#>xn3Ih*i84zRVKho` zs8?0!igJ{VvJlkCxOGN5%6dTHmbkWtN|qFa5sEus vb9IZMoFpfdCcJ9jbJ#2WY)8!3%DXD=CSkJu*Jp1L+~GG6^G z`Qfwdu8Ob|Yy>z1afy23I^bb8^xxKeX- 4{+7_mWiahy|pUQ)gXWgn7OL)lw=tCXKezYa* zWgHvLjuXPdA!%KNY*6gUA_5yJ*8Db)3(ZQ0UNy~|e;w3zE&iQ2sGZB^t2@kG@#cJ@ z+ngrRwkrg+`3S=TU0VwQ=rx@N-xWS<%(co*bK{}F(KkQrB9gI)YK|mpeUQcuCQ|J#7?pHkv9Y!I6q#$e P0xe8b5%B#~F4z+lBzDS%wKo^bMgpk>rbf$qw{$WoTgm_1Q= z5M*bk865EQf}32wHTmRQZBiD<`-A?aWym*Uu#dp510|u+(;vD!hV%r-u!|Q++e_sk z768S^%MNHm4q<;YSISMB6is4Jfj1yQ6-VV(UjV}#1qu @lxLO+#nP($|>t=BuJ zP#fj{lauiT6e_u0r-qb*L*9Qv2n-XCGP9qjoZr_S&a46;nR)wNpi$8e6VTM)7+ed5 zLI6saOdIrXCJ3H h m5UBczknO?o4ps)jr~#7qalkgnTO@*9 z$<=VEJnC c4PO&VTF2T z0o!~x2}Z#*bx!go43is)sL*gb>LsKVFiTVH{9 (o;$Io07aS&9Xdi8Gb3U@5INVQ3 m;^%fy zo=R>0u3C9jpiTADFK^*oUiy>(>T$A~&)l>|w;9nBXT_dTO5pW1lXc7+CiPB!@9AO* z$>eUKcTh@8+kB jL&fCZMmFcLkHlwnQxH{L-N5QA)}s3^5F!b1y;2NhGjRL%2j< zcI4{H!9~VmMCQb - @pEaGxlcTr z;${7!vaL3P;;t_VMo!W Q;Q^agka|UW=|OBSR{~tJPsS)*U$$9XWYP`+mqq zCat$` %`)w?-Ce7^(O=|Cy8tyZOiNq$CUP3 z8E}Ngh>E*bre|EluSU6?t-n1e@xbVA$!;eP&a3DZ9&Ys2T1qziS>3Oh$PGwXW4_)A zHaXGa?9y3MYZi|x!9iV>utRk9+fcaNtXpr ?4imLReU&o4?K+BVPo*90xb;E`3c1vU`HNpDIaKt>$;kGPW5S>LWTd&(DwA*)YQM zlXIJB6z<99G-VVY h7F-$c>gbx2=FH$Ovffu|Z2F94nxhQ}tk-NuO5Qx1O-e{K z9>F{wud3;kO2n%n(5FQE(J5Xxo9IV7hl>rynX04P*Bhvu>?Ba8(5rw1=l;}E3zUol z&KrL}WDj®Y;@lqGZlcTzS*^AGh#@;7}gX|JLgwQ27NAzytq|AXfGD@s)zbko+M ziwq@b{-BZXYG)w2S+0O!?VVj>8NfzB11(}B5I6_^<#9P%(0|sS20B66L23}t#IU~m z`VwTc8nmN451dF1KWKn%y)j1q^ml!PVzEiZniQ^i+$8l>wIfif1TZ?=zxDSI-H&2C z4c(Kj2&1w|gO3yHe)jt3T>q4iKfnC{x4(_i5F(#zOViUy>Sq*d-Y@5i3l ty{Saf 2E&_Ww}ne{@_0UB{>5aj^PB+wMn1Rit}=}IO@!konP`gWAd%GEAx|{eKbEiJPDJp znvQ1;c)eIIH#8s91P6dFFO@$g%2VRyZf21ghyfYKd0Vf$(dZO>-dEiH8MldE!K9T7 zzZlc>v{fR8`?$+2i_3d5O5eV5cWfkvH3Z-U2O9_pv??-KYG&bBr+C(ql)sz%;Afn5 zzfQ50MkxF^Ny4LWzF2k~!cY{m%x~ssdb+7!KUHsz?s{vQwz~4S*8>e$$1BWi#c8si z(C<4 B_y1D5CBF$NOr@GZo5(P#UrM=0_d(5bbGnlGp8qDF&xDa#T=H2 zPxGew5cykKJwtZ~HWwHb`&a9FV@H(+w9lPe>pvO%c43HsuEZj*v`eGuO-m2xr5PL( za4IO5Q sm*mMUDhzkSaH`4Gjvl(}#HO*JmflS} JckHI`r7SDtv2icAXKU0}-19%w8iPaIyxpxkSR-132MF=y3mRW9|`uA?_<{h3V zjo&{M`iup44>~!Y$e?l7xFiMhUYfkedJLUS#poyp9{BR*yE~IXzV)Ai-hU31|AvBa zOeV(+&;ZmQHC3B8TPZb?_NU6rQrXcKH#g>c4u&;ArUaWyAiL~dJb Z`1lNde9*F5jl1=&}?qj zN?M~z7@AEkd!l?Mjt-*bpm=j^2`*{5LwCX8&X6ldM-@$MbYhH}jVF#Z Ig9B@S|C(DPK9 zlRD{|5&>K;&s;4Jzqv+axVf;_Gun!%spw*Bh4ghhQ6sW_M7>GVWN34FUfWpu*etKR z$`ZfIlFP*4F!u`cqug*6<{p s#bepE zQlt5`9);c?SFLv7^2rbVn8S52_oL5oZi8vf7KTGMNqEh!kXXAFCA{5TSK_&8Z_} K2GMs`uO&~QTW tRyB6NOtc!KvUTSk+EPEZD)oV>?xQiRRc7182{-e`N|E4dnPj)3hL|2} z!(#zXarBPL{TF%LtNWa zcr%0Ouja#ZKlR3B zcF8mjk3JHZb5lY ^o9GWm6e@LB9r%;nGJ_d1Djv?oVjUnA_~bhi~)ONi#CM`!Dr3iu{M*&@?ctR6m# z%&t|{PKGuv^!Y;woKjLP{RzgtuN*mc^>046*RG#-JSlal<*~D&y`K54T(es*dD*3P zU#Te7KIx4A_NBpr;c5IyCmNT7&$DZ2*fX@?^sQ_Qk5;OzOlsGvydUftsu n?;wIC z=cHHV98{H>)vw*|rIwD(R$ET3og!{DR3^QuHb^sE;$T5r2_ 8d*JM- z$!J@ay`{S?VQhF@iGHBCK=Y)7$UGoqW3qu4Otu^#$rIPK`bDTrWLUrYWP`}r$-9?J zdeE!-E=Fou(Y?|_M)xokWxZS1>0JB-y_JL{%JY8tG-&xAs+ltb88ye=Cr0264EnEd zy>Uy$F4&zTddz(*G!@x4h#qN**S>gG+%?u9v3^2Qk%y9>AdMKzJhxm9yOu25hxO_U zcNaNbDJ`&`Wiv~}*sx6%84E@PTRpt$EKvJ+CRzLCQeTdnO6o@FwN^oFGN*7`0khTP z;Ujt>x>Fw)rau)XNKZdw`_inT_vGQ#o_I**EN!L+T`WJqsyp^p$!nS<=%oi`L!NLG zYuYiOwa<%_aYCKBldP{I(Q($QxN0eDS~FUzKP1Jv2MsTr9Azv|Sle{=x@;AVbMWfA z5cP0s`gJ=&;!{*frSqpPYpu+bt+|k?H1^5K;D|z~UTcxDf_v1I<5NM?hN}$?j2iqI z?I&XFgKRV`9;Y!o)ABO&^L%aN%Z}L@j5T?+nvtmyUCMz->!57)e|(*nyK>PpC@$d6 z;n!F{skdJaztX-TF<-%#!CPp63|d_`TJ2eAa#T^W<3%t}=2Z^ctV3l0>1EQ$xyHTo z6YP}u+LNtwWHVy%sra42_2U`%7(evHb@vj6;sUL-acg^_y@s3@yxR&<=}R7Qtrp@e zI%So}c1YoxFXnL)%{L-SwY0RF@M^1?l~auH;AI-MAp2F+BRzXL+y%)akqsFOgw~ni z&vZ$Wd${e@`RSx@u$vXcX##5603>r|uJRx}8+Q`viQZP8>{l14kRm_2ApcTjhX9`1 z& obm}4wO_SM`F-(u8S7kb%G^gYlF}}naN?e*f z$*Hc$8rT4XC^PI>=i8hRUus5+l!UOGsNAa3+(Pm