From d46ab77004404152d717f7ce61ed4b17e423147a Mon Sep 17 00:00:00 2001 From: Erik Thorelli Date: Thu, 15 Oct 2026 18:00:05 -0700 Subject: [PATCH 1/2] feat(audio): play an original stage-clear stinger on the platformer results Finishing Bay Area Blitz, Orbital Ops or The Enchanted Repo now plays a 4.7 s chiptune stage-clear jingle in F major over the MERGE SUCCESSFUL results. It is by Erik Thorelli, made with Suno v6. The results pause the tree and the level music with it, so the stinger has its own Music-bus player that keeps processing. A knockout keeps #71's ducked level music and never plays it. level.gd gains one preload, one player and one play() call. A new suite covers all three levels, the paused tree, the silent level music and the knockout path. Part of #44. --- ASSETS_LICENSES.md | 1 + docs/bay-area-blitz.md | 2 +- docs/soundtrack.md | 1 + .../Assets/Audio/Platformer/PROMPTS.md | 21 ++++++++ .../Audio/Platformer/stinger_stage_clear.ogg | Bin 0 -> 100946 bytes .../Platformer/stinger_stage_clear.ogg.import | 19 +++++++ .../modes/platformer/level.gd | 11 ++++ .../tests/platformer_stage_clear.gd | 50 ++++++++++++++++++ .../tests/platformer_stage_clear.gd.uid | 1 + 9 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 hoppys-adventure-arcade/Assets/Audio/Platformer/PROMPTS.md create mode 100644 hoppys-adventure-arcade/Assets/Audio/Platformer/stinger_stage_clear.ogg create mode 100644 hoppys-adventure-arcade/Assets/Audio/Platformer/stinger_stage_clear.ogg.import create mode 100644 hoppys-adventure-arcade/tests/platformer_stage_clear.gd create mode 100644 hoppys-adventure-arcade/tests/platformer_stage_clear.gd.uid diff --git a/ASSETS_LICENSES.md b/ASSETS_LICENSES.md index 4a5f81ba..f5f49bc0 100644 --- a/ASSETS_LICENSES.md +++ b/ASSETS_LICENSES.md @@ -53,6 +53,7 @@ These assets were made for this project, either by hand, by procedure, or with i | Bay Area Blitz music | `Audio/Platformer/Bay Area Blitz/` | Music by Erik Thorelli, made with Suno v6 for this game. Erik holds the rights and grants their use in the game and in this repository. Prompts, Suno song IDs, loop points and delivery steps in `PROMPTS.md`. | ✅ | | Orbital Ops music | `Audio/Platformer/Obital Ops/` | Music by Erik Thorelli, made with Suno v6 for this game. Erik holds the rights and grants their use in the game and in this repository. Prompts, Suno song IDs, loop points and delivery steps in `PROMPTS.md`. | ✅ | | Hoppy 3D mascot | `runner/hoppy/` | Built by `tools/blender/build_hoppy.py` | ⚠️ brand sign-off | +| Platformer stage-clear stinger | `Audio/Platformer/stinger_stage_clear.ogg` | Music by Erik Thorelli, made with Suno v6 for this game. Erik holds the rights and grants their use in the game and in this repository. Prompt, Suno song ID and edit in `Audio/Platformer/PROMPTS.md`. | ✅ | | Runner props, previews and procedural assets | `runner/` | See [`runner/LICENSES.md`](hoppys-adventure-arcade/Assets/runner/LICENSES.md) | ✅ | | Bay Area Blitz pack | `bay-area-blitz-assets-only/` | Image generation | ⚠️ confirm the generator's terms allow redistribution | | Orbital Ops pack | `orbital-ops-assets-only/` | Image generation | ⚠️ same | diff --git a/docs/bay-area-blitz.md b/docs/bay-area-blitz.md index 02746ea0..8f511c6a 100644 --- a/docs/bay-area-blitz.md +++ b/docs/bay-area-blitz.md @@ -11,7 +11,7 @@ Run the project normally: **Platformer Game → Level Select → Play Bay Area B - Swipe: J/X, controller X/Square. Landing on an enemy also deals damage and bounces Hoppy. - Pause/resume: Escape or controller Start. Focus loss pauses the game. - Defeat the Merge Conflict Monster, then swipe or land on the MERGE button to finish. -- Pause and results provide fresh retry, platformer menu, and arcade return. +- Pause and results provide fresh retry, platformer menu, and arcade return. Finishing a level (any of the three) plays a short stage-clear stinger (`Assets/Audio/Platformer/stinger_stage_clear.ogg`) over the MERGE SUCCESSFUL results while the paused level music stays silent; a knockout keeps its ducked level music instead. ## Implemented diff --git a/docs/soundtrack.md b/docs/soundtrack.md index 0c45449a..409f174a 100644 --- a/docs/soundtrack.md +++ b/docs/soundtrack.md @@ -122,6 +122,7 @@ Shared settings: Instrumental on, Variety Off. The lyrics field holds section ta | **Villain boss theme** (shared, as the GDD specifies) | All Heroes vs. Villains bosses | 1:00+ loop, strong hit in the first second | `Saturday-morning cartoon villain battle, 16-bit FM chiptune, 232 BPM double-time feel, minor key, campy menace, orchestra-hit stabs, chromatic runs, motif in minor, huge downbeat in the first second, loopable` | | **Opening fanfare** | Heroes vs. Villains intro | 10–15 s, hard stop | Not 8-bit: the theme's chorus and gang shout, cut from track A. | | **MERGE SUCCESSFUL** | Code City finale, ending and results | 3.5 s one-shot, then a 16.552 s loop | Delivered: original F-major square-wave synthesis at 116 BPM; rising F-A-C motif resolving to F. See the reproducible build below. | +| **Platformer stage clear** | Platformer MERGE SUCCESSFUL results | 4.7 s, one-shot | Delivered: `Assets/Audio/Platformer/stinger_stage_clear.ogg`, a Suno Sounds one-shot in F major; see that folder's `PROMPTS.md`. Plays on the Music bus while the results pause the level music. | | **BUILD FAILED** | Lose results | 2–3 s, one-shot | Sounds, One-Shot: `8-bit comic fail sting, three-note motif descending in minor, wobbly square lead` | | **Capability unlocked** (×4) | REVIEW / TRIAGE / CHANGE STACK / SECURITY cards | 1–2 s, one-shot | Sounds, One-Shot: `chiptune power-up chime, three-note glockenspiel-like square arpeggio` (one take per capability, rising in pitch) | | **BOSS DOWN!** | Boss defeat | about 2 s | Keep Juhani Junkala's CC0 `fanfare3`, or a Sounds one-shot of the motif. | diff --git a/hoppys-adventure-arcade/Assets/Audio/Platformer/PROMPTS.md b/hoppys-adventure-arcade/Assets/Audio/Platformer/PROMPTS.md new file mode 100644 index 00000000..535b8958 --- /dev/null +++ b/hoppys-adventure-arcade/Assets/Audio/Platformer/PROMPTS.md @@ -0,0 +1,21 @@ +# Platformer stage-clear stinger + +Music by Erik Thorelli, made with Suno v6 on his Premier plan for Hoppy's Adventure Arcade. Erik holds the rights and grants their use in the game and in this repository. The soundtrack plan is [`docs/soundtrack.md`](../../../../docs/soundtrack.md); level music has its own `PROMPTS.md` in each level's folder. + +| File | Plays | Suno song | Measured | Length | +|---|---|---|---|---| +| `stinger_stage_clear.ogg` | Once, when any platformer level finishes and the MERGE SUCCESSFUL results open (`modes/platformer/level.gd`, `_finish(true)`) | [`73fc8220-4010-43da-b82f-95e63862062e`](https://suno.com/song/73fc8220-4010-43da-b82f-95e63862062e) | F major, the theme's key, at 116 BPM | 4.74 s, one-shot | + +## Prompt + +Suno Sounds, One-Shot, BPM 116, key F major: + +```text +chiptune level-clear jingle, bouncy two-bar fanfare, three-note rising motif F A C then a held tonic chord hit, square-wave lead with triangle bass and a noise-channel drum fill, cheerful arcade stage clear, ends cleanly, about 4 seconds +``` + +Generated and downloaded as WAV on October 15, 2026. Takes compared: this one and `4cc54a58-bf2a-44a4-8e24-ae2010b2de84`. This one is clearly in F major (Krumhansl fit 0.94; the other reads as C major) and scored higher on Meta's audiobox-aesthetics model (content enjoyment 6.38 against 6.08, production quality 7.59 against 7.12). + +## Delivery + +Suno returned an 8.2 s phrase. It was raised 1.5 dB to −14 LUFS and cut to its closing phrase, the two bars before the final decay (3.415–8.154 s in the take), keeping the natural decay. A 4 ms fade-in and a 30 ms fade-out were applied, then the cut was encoded with `oggenc -q 6`, keeping Suno's embedded comment with the song ID. The `.import` leaves `loop` off. diff --git a/hoppys-adventure-arcade/Assets/Audio/Platformer/stinger_stage_clear.ogg b/hoppys-adventure-arcade/Assets/Audio/Platformer/stinger_stage_clear.ogg new file mode 100644 index 0000000000000000000000000000000000000000..df859e596cd84dd22f39ecf8a549467176f5178c GIT binary patch literal 100946 zcmbTe2UJtf_9%Q3LI@BrK!nf(1PIjxkPe2>W9S`0=~d}P5j8;Qp%(!G=}kaEx}r!2 zk&Y;ef)%i!f(_d{_`CQ1%eU5hYkjjOli7Rr%$eC`_RO3~EPQ=!04VUUV4O&G+|NE+ z9p8e8K%#=fJp9A=5m1BX{Vy=Q|A)8-VzFQIKViQn1cdUtgU+C8|NM^-%Jfe|Dqy*z ze~6!=MVK%4q`!y#-{!HVSS5lIfuKfE!Q!pGy&^sRgM6`uK~er;!9l0IgCb=1+jRv$ zp24T~VVzU%Uf$Sf{|G;9cw|tp7S=P&+dabDO9yO5Re?xQAgbCD2%0KNnks6}T3CNC z9W`YiPjw|Ff`SSGELKtWa#!$BSMpKNIP9&etgfm=P*w7VF#pp@IkLVz1VDg~BT}&= zwApMs06+nN8%~BZ&&O1zHop>orYPTJKQ}^1Ey_4ku=izW~WZED>$JpLnE* zC1JoMStx8=tiCjiO}3#To=s^Sn?P0CtjROi+-#`M)ZD^%%#zs^I_4=<;*z~*Yd_pI zHhfy+b?Ltn*1zMxf_)*w`MpqN#D4QBGId2^U{n7L3k%S|VFJcEXwx?I-8P|nb2y7n z@>V>D=ada?Y|ZSz5b5d=<-Hsgxg2%QsVMPS&pD@_#A6QTbLI-FD<( z5&!~{?1u{flDhv-^l>Wm{(nc3-?%J50(m(WDl`^~GqlEyg~_x0b+g+fqx5OU+e%tA_|R!3Qd6AuvSE6boOMfMJa+?1+C`*~i;*pBt*^=;SQ)Ef)Ke;p9msnaF=Rq9*>r&29es_@0f4+pJ z@u4GF*J-xoRYNZt%%$dElJ4xa{inTusYT=Q(&;-I>tK!4l}mxWtgc}0yI1M^d#wAo z|E)eGP;TxIFr#Jh*mIe1542dFSe{5k7H3`saa^WGBqP&^(wJar%`aUW5&w7OSOB1- z{%Y~RlfSC`j~3VDrpZp?uTLr6mETXAho&{(TpL2^BZ;6E%O3`{IHU7bd3dXaNnmZ~ zeP_Aad~1qK?LQU;3Ki>>tq14-Ya~fUVUsfTpjG^L!F|BZa0$=-w>a}r$ckGMjB`o~ zHp)77wssCtr<^WEKI%?%eGvI{`P|dxj1zoG|68&CV>tk5H1xkVneV|Mj+G{ulUe@} z@V_l56g`$BG?9Zl+Kw}um%sN(#bQTgj>phS#mwfQ>)gS}1zv9(Ro8{X-V1i#OHtkr zyS$HepL6Q^m%;pFHcyu$|C{CPn~1nZ=5v!=*ne401wQkcdZvVFF3u@e>P(?;YDr^p z`DSAk+yAm0zqIfcK#Wo&K$_l2t&UAE&u=+$VMLhJC9gdD=b+bUb0rOv(@>(TMSsbq++(9 z0y4G$0QkYFP-dirZkelRPI+tSKZ<2(fxncYWAYxPZx)fqtt@4|ko+%56N|(o)Q*Q| zJ(@g~{;@Wkp?7Gs$C`}4g8-*J7+?hea8q$poarZ(DwAE@J&81JE*dUIJL|P+`S{Lh z5x^9EMr0<>Am{Z*ZP2?wIKdAuxl&9HN>hgb>9{i@rk}KPUz|}fLyM*5)}@NiD4Ui0 zq)~0`Dx3ZVmPnWU1w|N5zzPv=W=}N7VEypbIN1BYf!5H}WoGAH95AW0T;M(4{x7f*1Uo?x z0B8^vfClhPl0X(hXm|ife&$#RvTdwQ-i*gA)6=QMCkqagW?0cc8j&m9Y2r&i%Xx6mXDwm9?Gz!q%n z3Tyq#rPHeXN}8IQW>x+{gX#n}yieNH)Tao_4^%A>=gL>|>dZdnR$nW-wguYE#?Ey) za(`j*KLR)}3#o&19!5`^-;US4nw3w4_HTuv5mSgGMOJKN8A%n29;;+N8`;0HCg0Sg zrSra$Od~j9N!E50I^V6Rx$hiUOb3$|0Jz4)0)E&l|Bg!p0OA?e42{=9hmB-LOT#k- zs?na)8pZ|IlNztFHTkk5rQw{`6#o5r7+(w0m4@eA|8?k;#(WSbRBKBC!AxseNwAtU z05l9h0PKKK&OKJ6cs33vR-gt7V1&lnLB>(%R1{3-Rjkm4Aft}v?lZ#buw8+-|2}g- z&VXzIS-Y>eTW9JTo4^Ue)?pV^Xjg~A|KbV+SYzb`NX)9unIYCHypDe36aWh<6%j7x zg(Qz-=x8!RrWVBw0E9JgmE=a|$E$cr0@-Y!v#ZVrU6yGrIfeKdn?G-zi1M7)!`Id} z5J$23xz>SJo(w&_WbOT`Krs-cv=}av_d(}$>n2-DK+6cG*0wPp1c{W!a0&=|=39Tw zcTR7+kFSkT0#{ot_cUI6f$J`3c7Ws;0svaq+#~6ERc!;HxS+rp(A$$K`>QgPSS`kL zikO^jy}wAaO(Tv9d2)hX2iI&YVqgQWOA}E0?M>?;%EB|jzS3tk#)`sGAelG~i`)HnG>(2u`wWqb)*%r7|2vF>O4} zsVO4{`Y+iL5M-^)&v%wnOtPlnYiky*bBJ`%v4NvaBi7NgttpM2_6%Yr-4;Z4c`!0S z5>R&zdY+V*EZEl~u&;qKoxGmSAQxPYHr8SSOAe;#S zXq0QANd-062j|xQ@}U=8$?o%^2-KH-MKZ0$>?;?RzP}#Kr+`BXpVng$13~=0*8RhRu~* zwV}pnB`PT~sTl@XgWA8}ACT-Y!|LxN(uDqL_ixqxWWOi>H1r?T|345iu*%0t)8+Xe z_62Sq2uYyG!lpH9K^p?~E8j#0)Gu?2jLyD1%INtqe+4BY^BJR$7Xz8|rY*@_6H(i- z7(BU5VM&=+3pKD)0hs z-0J|X$8Bf}A#Lax2eJSPc!0*Ek0hJ?GsgeyZ2oJHLxcb{a9#i)_SfXDcLY@TH0Ish zNEncg820fRueF_eVK6Ikc+o@hLFK{6Ys_x@J^@eyfMKiV!=uOLJTUa!0C^5QhF)r~ z_bC1)?$v$pNqLSomR@6n4W_tRp|X#T;|X{no@vv14uFIbS2hs$AevAc;Av@_fLmysm?)s6 zqB^grSaBENiwIqgL&c-$SY8%O5|q=tXFXL-dmS#lfiBPl_j+JJ0H;CMt4d4p^LeGN zsjW*Q8yJ~TsOFZ|wxEvy0}9XufZT&v@seVVOwOzW*{B?@T<$!cd^EUx6Xf8-h! z{bPc0lUIY6g}a~CB(Bc95Ixep_v>lD*jHm|^HNRkvS=hkeruK!X2<$| zb%w9AP8)`MuX+E~4k`KDjPLbK;a>~JSGFI&zF9j_w)|x3b)v=c*%@(L<=li(KhH-U zUmDc5Zg!yfgKn(+IT-nKAWQ#p{fhHy-j&818tOM=TSkU=Jo+w1Ps(YAzWJlA`t>fS z@>6q>Ti>ULzKKY8QvvK>GKMX-io;6X4fnr-E&U!vI=*RoV;wb z-EB&nYyDei(T8_y?4BCwq#I{U2E5Jn*UUWVoi-Tvy`;;>Ib(e(q55}CY=iImT$8b3 z?~m=L)uzF9Kjel^op@drF7xd~@ov+s*24>Yr;@@Z8eF-h>&DoIMs07NTc&R26)yyR z`+ofjzjxhvtyo@SM4EP^qD$CYrp37^0R@dh<~ED2yEN*Hc&7{7@3ZdMqo(rt6Am5n z31?AwIb7-IVxgT*K$m|I}GUq%J8kl|9?po(f;NPp3r!Y?FOU}fvt9Cz7UVZq; zNqefbFJ7vDi(i+y^Fz0uESoYlLr@cHw)_Nw`|al~|DhQjOl%-B6*a;B^k|uGaHazI}H;?p-AzAs2+lFTyZuA4xz5IB+i&}`G} zCb>zHGJKu4Otbgcg;=R~Qf`x9%`Zj8e)xFwaVmf5UisFdtwr&`A42rC8wth8I?=Lt z8^ZF)$CsM2FrZXc!b){wkydoOVk(mlK*i z-EiM@{pD0;t*_Ko|1O(rk%JeRPQrZ;EPQ;Z`A&Ic*SMuFjRgQo75UYq_`FOG)tZkp z4DGf&jvl%)TGgzmY@NcZOl;@psje}22QSutQ7?|d-O%gD(1BvQ+azu2z0kKNv= z_9f}*nM#AluVr(tYChH9ILKA+ZR}!ctN!xdoZ$w!2G2tvedP3h`6LbCXfn~;vpzOd zsop`nXF6mrRKiKUZKmJ0b1{QyXqs^9gL>IFPNYjgL;# z8wAD33SVnvjY9k4zo6TtIjs2Dc_Mnd#bt*_dIvF5^z5oy!)qqYQDdW(OvO4}_E*-1 zRkD;gv;>>G?2YT(JI6$%ZMc@=<{SY{SxFkKiAiZ!gG~~Fv}N-0`)%oDpQ2=7R7nreR2}N4g%Hp8m zH)y3()Ye^;@ae$W)}AWoq%>NA%Qf_|Z`|X(DD>@Te-yDT=GEUdp3Eg1uqd0BeZi zV~wVVk!%$Kx&e*W$C%ez z6jbMD-4%meO-@fN5+rl?OIN;tzNalXMm(H9BbsELW+^OWeHv=St}4N_w~G}{_e89a zFsl_awam2Wc!(doErVCH%A7}s$at@oBd+}w?!J4BqmoCjTZ@x%SY%BIZT|te5jAGO zZY_QoSZm6wVypOohn=>7UxQ-_6mURAAR?s|rlypt?u*OiueAk!RA2k3pjWsAA+4Fn!$WY0bkm#cORVicGHhV& zGu4%8s5dR$K+U7X6G|E$DV7o^N2jnCNezm<9FYEea-J3KAuayfP zuH(5@6;_Cf7ppr#~X(XW+hawMrNPW)J2b0=-C3wjI1*MqEtrPEzE}HL18A?NX zhRV1P`l4inDE3h_AiOEb%G;JkWnj}DEe?OJH*P6(QBV1Moko@S`AgYH&j+uVH@h35LETN2_SK$dJKB+1>4 zyM2WC^rmivtuZEo6)mhk_)^O`U3~2mV?BI+>()94VaSscaV-ft;kx}9=%+Ic&Wbv# z#iMQv&6fDlAM6zY$e|DS(zr_TjNj}RzhZ|mVkuVH89=ts4!FwE?@dLSV|-*urKcz7 zkqnh=2zJoMnG54tgpz{t+^mjz#wkX{Y!M(LBBUFgPudZPikzB6{6aRMyJAoSS@8lk zC>H@s!a)__U50gMyQPVhd!MPcaS%_o;k&o^D{OckrJ`3Qe6-$$h|KijlO}0iMo`+x z906;=dv;pde3IQoV%>@tFKN3KDTPJ3c`PYV#uoCL+D+HJxPeqxd;1HgLj&)$pA9z) zUDbYW-`oS+Y5!vT)6~9#=Q!|(>yWc@CgSwy^ZbLJy%;iiP+ESIUGV-OC*+AI98KAp^#^d1CK4^;bW zAJ6YO9*!HB7eY#Rj-(-64e_6G7^YKf`O|FjFQKnGCcM^S2wn&#vBv&@8Rx}qp1zG} z4A1=!UJ;rNERn8md6xYd$1Q+k2ElV~8YIi;6&g~*o>`JHZK9j_)UsYBpR~#31?4ff2!Q-KEpPN$P4ld^cwyG z4;~OyOL|{)*Zt%c5}GsWtP`Ry+QLt`jIK+xJU;j=VguFXM^I;N%bn$MH3?9QfWmg+ z&s`UlU50Awf!G?|?Xuw>>PDJ$f>_AC&oS~mhzMW_2xV&Yf}aP)Zydt4bVU zDHsV!MK)z$V2A@4ietk^mG*_|D1$qG9IhF>330$Gzr1G_uQ3m^I_ny;TKdDHpyzjc1;8&62DYXORVg#F-mIZ5cB5&)Mp=Fj$LA2uz8_f0UiYAA=a+!Eu0hW2X zA+h4=%$29v5dPLP#;rLubLWDhjf+nuyd9sw+w@BDVj!7uH;`T6AtzyrBIs^EThHZv`I>WxdJu+@Dz`z`fVH-P=1{%Ra~ z9Z}CyupYnhTv9&sM|OvKg_%#v*C*bX_=*g548-2j;;U@+RYRV0VjD#b;u6@+!mU(J z5-uqfqnS9zWwtmc6^{UFSCKF_nh{ zVuYwlfkU%NnKVRs$)XZeo>V&}z zt7ov3LvG2(7~#a=7*4;M^6RwF0O{$McMTzJA3NEZVb7{>kykDeuv5>dg$g;D?H_3K zii^em2iv+Fs&DK;;%G!sG=Il(CwcmNJ}gzPuh_5Qs-l*kz#t>$W=Cn?XkX9;ciaMd zM%D9<8A5c#NTqFAP}NRwNQ0*1$IL;alSM9%E9*0pN0xL->uQ|%utIoNlQh5`Yi{I$ zchkGgZM2z>mwlcFX@=9=xZOVYVAey4^~mK=6G@3h=q5|LJFNLeW`(RROFhpz3&QWg zP#70iu7K0An<|&$%{{3RrG=UvB_z!5Vn(4w4uNh-&>Va+*GE>n8TC^vG9P0kbR=z9 z(_C+$@&s(i))x{nWR4`utbLAA7sv1F4Xg>Xq$XIdq##5kcB#`*%b(So&dvTNEDK=? zb91L!?gRk8&kPSRsQ??~EDVMQ(B9)R6@7&0$x2mx`1dQUbfM zQj-p`uxNT&lg1sWo;0hcNbjiiFDC_Z>gDG=hq~;O0yxC~L@((iMD?;-1GS zoL#mQv`nsm%P3o^7oNhNnW9U4I6O$2Awy;!^G(EWO?_!RBJ}x}-1=rsi0utIy@W%` zX43Z;;}eD(6F30_!YzPHk>=oop*Rg)Qi9q+2$gbH!SFChvtuOYYRKnnOPbkn%m%=}4ot{@&rALun1H9x0K~a3 ziT6*|pN2nIOeiL1=_!A1|5^UC@@M-`w{9AG05TVcFm}arLz!$Lr0Dc1ze@+jl$4cH z)$h5M4P?iu13NC)-vl@m6cuGiwmIT}LeAS$(Ux9mdy3wl=sTAAIa}xWM?$rc@8d^5 zB+zq8t@mdW7QCPKB+Zu`4PTkMs<#m4bJmb_rxfqr^ef-UP%IKXIQZ$Op2cmsvau7@ zHIAhRo!FLR$3K#+8$OsxjvrboLs-Qx8_F7N7QGlW<{`(@{cb8TF|j_Scn!*$=^>$;TvoHPHs(3$pkUOM5INHiG zdpzIqPQ|5|V4&$l0mXtrzUo6AHX`gXDYzXHF|tsEFrFl}e$C{nH%tY_H@+C| z8dm_Q(OJhiVb`Pw;)6wgL?x-dX!^jDRG9%fkxKv`yvF~TbmBI@nHqNjC$w(}?f!6% zC*m5jGO)pPJk3izVEioh*%jzSq`>AJuwKi)@| zWW-0OUJLTuifdLkfSl7&n6quSRX8`ya90X;64bq~j*vS!FURm>wvB36^;E)YjBLY_zHzwvV*tX!{4G`+n^6)eGjNtQCFV$PPds_F@@@=6Hj zFe*QsgN2AOZddS}qHND%SukZ%=suKI(A&8>?cNIXu;i0(o5_M6DdcqF>Kz!FUGKyI zDH*j%K8t%rh9Zz~4!}MYX9ev@VB1y95{e)gt&cZU|DaDWD27r>J1DL<1;kHo6??z$ ziHp;nM&*nDVBNR2T%qr{`IMClsl0_aU}vwlAeyLUJC*wUm;QsipkyD!N8KSO>sN#; zU(Z|AdiUr)KO6b#g?D_fKj!mQ+mn z*P-L^;EO7{0l3D=4Vi3A< z(LG}BS*MkU$aR(VJwq7>VUF=bhpXg@@1*6*SU+i^5e(3)5^XLXbHiuCa(A?pTP){UA!}$cz9< z+{TkoDKU(Rzq=`cw8NYupWG{DCr5r)lpHYV;#z`XqWYTOF4;SN>a6vr52vg=9 zD1l(0I?aSnQ7!z=h~Me*X92ia0b6K#m2FKXgbGbBgQ&BH*xz5q7OD79Hm~2is-eae zoQy6n8to(G?9?Qrym>@zNp95fOSX*irJ9KD2|K^Vc!~#{a6bM{=6T!eEwoD`h}Y5@GB;j+hdAUaLY1LWD#^L;T*+|n@K#Pi&QRC{GF+59~b zE?xCW^pVfiI7{_syVkE)Iz$gJ%ZF)hz=W^aZmh`AnpM#UYlZs4voOV<7dup)eTj4; z6i(%4-hl85=TC^6olVN$rWkX!XWBb>8FJP3*T2*(-8!b!^qbf#OZT{1 z&_B1;^8=OdD%^vm7V79)1xmTDvNpZ<@g4bUbmy&D^7*6nbBUzps^-C*BWjx3 zo{xI}l!;3D-ll5oz>dP?`km8b08P_-P^ND%w$dM}8uuWO(@bm|JJMEO4b2Q|`yg?d z7sFh#x0)c?tSBC)2TX*Rh5Yi#+PQ)a!BdVUnAwqC zaBD%?aUZO(x3l#fmTc54vLWY_#mDF$)W=Os)k$tW?+$TH0NL(2gEx+>x?R1WxWJ@% zjo}+O9Kv;i8_0F@!ZL1154uI;Ob5;ei}M@xUx5;R{g*W2*N0! zoUNmR>1_qLJMcSK-Dz~_#F4G9#RH`#NE15>;HF7^ok4JRBVa1CEG;sCBxDD$2>|Dv zUY>zmW8&EDHGK(z#m47j=3>iCjB}lQIIL#2khD*`Zt)huOewN@#a=D%R+!X3LoM}< zgJ_Yo={7wYS5Nj*4hg>SB5CE|Y61TZN-i7wKxO%>+%%Q9&-hh&`afFua^-m|R4pbB zl_VQ+^KU+C^GOf$a1iQnIs)<;i~jbH7@tzQQyqbMr{j>xXgo#2!sqyjc% z8GU0#NqGCPfn#PuOwMpXZmDYUcAH8DauySd;of30P`q_W_mV(wYw_59aamiB)12}t zoU0X^KWJzGF$F=cdlX4;g^mv()Hyy*5(!x+U8V?h&sT0fnHLQX50fzlyh+ILfESYq z#E$dqi0AWKoSv5Jh+>I=W&0}P5OLcL%c$SGgMhM0Cun83MQ-?kFX<&=Vwt@8Qp2iJ zP};nKo1TSGAKrzlf)|6>83!Qb)Z#`H zJ^f>IOg3be)vbibIzkf7)$I5Nk_-frm9de2Bc-T#j(6^i# z7L^Ohn_#%u5|{AeAH|f&rSwl4pVpi7AkX4O5rYL}l>Av91Wj4B7`VQ}8vS89`7HP4 z)2`LFtkM|CuX;=$Ae6iM!nC1a8o%---qZYYnWWTNZn`b8b|t-vdWWueloaLJ`WQY- zI0`XhoQzcu^Rq!weF__p{Ndq6UB&jIh%~&lk9!^>oh_L!P1V zXiE-csUO8E3iIkKIXIGReK{d^Xao|-dec|rl4ZThkrWQ&21HDEGgSLZc-+N}lkN;2 zOk0mnbt3?YTt+E2J*UC|y|?TU9D99cfn~>_hb!DoHaH^$^>Fei=*f< zEbdsQeiRf?=PgR492*cYd9DZ%RjnWn2sU}hP+#Pl03w;H->E9->RMu+r9Z_1Gs5pA zan1bZgnfy4=yZEU1y0SG0#)GpC@rSvn7em^&*XGS=v<2Gz;Q7e@-$r5Q9dGcurqNxmvfpcGLyvSJ`C@WIpk-f z5@f#LjO2)i$&5X}ByWm@RUFPeprOkiIOYXj^dL80L;3R6shKCEbF@v+MTB_P_`1)X zL2r$P1x8w251eF5&bRGP$0l(?@&&XaO-kc~Xppr6CK}fqmnX~+#k@s#X6q3SPuI{wFKWsN=J?Pu%qW!>z>-bY$Yg(_rsqx zTw@^fy3`1M7kZ04TW3@)Qyb=`a;7oOOYl*;7FzPw3stww0qak^V>er?2+87wNSm%j zxb-`;>LRuEiAUA2{5P1Q7`VBW9zwsC5kLcA71X}I*tyGMU)(~HMO+jZU-}QeSR+3rA2@TIz#Tl^dkuP42oUhB^;! z>@L3f9OFaitE@jcrLy@wJfm0I~Fuu<7K{Xa{l}?DfBn76yF(>u6#BVn-uMRrDZu zurTsx=Fh^PJAdxbPoMqM0-i5C)EyJ*AkOk)^*N4oDX1Y(8oH2!0UJ?13XXf?A8$L~>{fx; z(Wv6)))Oh$a#UeXl`RhZ*>NGtQL~tcng^Tf&>M-#%+bxCl$8k@==M zSxpX+z z*GRG4Y%r+7n^`(o=!hdIV^ zo3ebP6hrNn$D!}n(?w(>u4NZI{g$6X@icGkCh8-*NcqgK=iw#0kGS<~o-f>y6JqQ8 zUC8ZL=h);)yUq;_aC|;xn{)r$`}<5%ZGJBwq^Qm--}6ZG@JlVSPmf_b>3mddk4EJIV+dwoqGEZ-e+^~+G<;WUmT~^F?&`?36+}4`fZ0XYxD=ZLr@euG zX%%js-O)Ft0CTB4i57$eua03jIkb`5tepr{k-8CrxU%58E4Tq0{OE|K=zmWj09CCZ4#`vdvf+i^dgs*!gH_JyE6eSDS?Iw7FEA{ zRDl@_;S}mD^LaS-tN-A_&7+vHc*vu5jjPs$b2x__Tq;0X)DW|NR`~Y#;j`0HF(;av zm^;NHmyfd@8e8!SDh`(mEr4&N79AqIJRe?hPlB1nI8kP7{_eW#O)?}pYrLS;%f1uV z-%}*bZ5giM({&xxyoo-#M|@l1oH)Rwy(IQ>SO-9B0W zb&goR;F!Dzw2OnN@tM^HRx|A{mfCKG-{`qvp z1GGJKDohqgi-KBA8Eljg_9}fHFusOTFbJ13pR>`4BMkS*!p)6LLX~c%gr7S?GYP;L zkjT2f?SyoxK`U2a)kH%xq zx_>fQX@j??IQGI>aX`q7L3i1eLyf>aZWVs_6qz4i#aU{TqVLV#VNyNk>QgQuk=oRK zVQ(rTg{m1DkkV{U!Dmx#F6*(GNOfx@tRLWfiIW%g! zy`s_T;r@a%l5BkRto&~(#n*GwJzM8PRFF=ryf>&-XHBn?&fs@f;H zdDSxuSid_KxiMzBR2>f{uKBve9X7gUa|^1?jQ2(y;vvg;SGcf^3lC^?SX7^ePo?h7fa^O63^S2<_$ zi&)(WK>>T4F>>b$=a>OEERv=xk@A5LHtR`GnjPjkmhQS&`FU=m2$OIcm^OhMAu5Nk z!w_A2p~8zK@Eysm+yp0h3af0??lhcrWu4@i9R&jd)YMpvBeK-+mN>KHJ$*oAv_-UxHGnk zjC38t@vXvK(wIve*dAE^`1Io4u%3Ty^yC!Q0~Sx5>-+fp6BK{4^J)YSuS47ob;d>Y zUABkNl7WgO%1D-+ewQo^i+Y%7=72m&%5jW<#q>oP77Zf0uWdFvCFyck58?X`9{2Rb z{~`}kcHR0!ATt#g)n)FMyG0BeHipi+B)|yYBZvcxv^PwIw9?e!xr87_1Xje|L`-#f z7Rn59sVwJIsL}0EuaZWFgdW%swl2!95J^Jo&*KfO0u|o)ogxVhVcdu3ysfpugbu;8 z^(Qv~j?Z+IK}$v^7RK{S74qb40E&p3BmHO-gzfQVOsEz<_LG91f|58^pB0^%p6luZ z2CI^0E{v4u7N+=(bo?$gnqPK)q*?sw`(B9@WWe#o<*^w^mztX#_FlgQw1Bs5Uf-i_ z!+IEeJ*N14;&kS&N3Y$HS&v(O9qC7S&pfrWZ6-`33g;u@FI>FK!=3kL{>rlPm(whl ze#X3y>EyIz;=1jUxk+o`RnGzb1j`hoxM5Pa5z;dAsWPr;R{czk!-u^Ot1OG%nU_C` zgSb`_V@laxSYH?8j`t0%8^459Gl33$ZCAeTJ{5jSFm*LYxUuhii%-^^Fjei%o6Wi5 z`KjKCQsVgWa3jDG-ku_%e1dBt(vE^w!d=U)Og~hg&+oeYX^p*9vc|2?yWRIfibQ7W z&H7Fe9f4mcXE~0Nrdlxt!maDpixNl)%b{;J15r^qZ6wc09goi5jVrB~Hh!E&5PF>@ zykAk=XHfPy(tw~dBbwgCuSYl*#I|0k&p+q4k@Z@W=pFNVj`gw3noV`aB5|;JPJ?-umbpei{an;-w9s*$jt8t^^9-QBc`x^To)ucMw}IKRv6^a$GB_tY5WT>-x&- zi^-04Qfu@Cmbw4Lw}PWD^{;+Ol9^D;Dhu0Y_;1&F3^tj6;q3i{F^fy#5$jwfv~d2a zF)ZDEbi20O;yv1)cdh`UVdA)UF(vnFlAWVXaxJJB;#0^y)DMKH=26t9AmbYzMfa zlM%2Q@g`P%D(l&5GWNapFaJxM!f$MpSJfX`Y`?BbYvgPWATANLBK;iY12hM&T|au| zb&mqo*Z5d60IAW`P_~|W3&Gf2W?=jkIn+ZxH#Il~+{p855vx~voMQVh;=|A4?+$4c ztC>%Od8cg)%+x#1&{KSg(HTMcq>YQ2PsDEAZ9f{tYJ-0rm#hw zX|joymrs-8WZ?8_F+=|XK0HA=C*-J`;HW9tE zdh?cpj*sfvv=X)&pR`^iW^a0`HeEfHUFT|>CyqcE(;K9OH$P+JyBLI7SYi#fFOkr; z$7DL7Ycyp06`}gAqO$7e=}6`0{erBC)AtP57L^B*m*__G5d`kc+NoYh32l6>t+Coi#OGlk=QAQ@D3SfiwbK%A2u%Yb z3=$!&DdnetaTlMWvnm+nq>7Cqq>xwTP^5I>bMyxze9RbG0r1jbJ{-yg%nGp=fG0q} zY-~xHdoAh|_s*A=l%I<@X!b$ugzCFa=HXDNDtJmdBz4m5i7G81AX&sg=2g*fs602R zI7GhMG>x1uey-JEl4;I?N70P)oWl@RyYp~>uq{G)O}k9nF4iE|lPODh07i6vF+ z8AyF7N%Smmukz1Ej8PL>Xwv6oOHv~70>NmUSp)XFKM9w9d zx|N3}8oH4c(J|ayydJ(7@p%8307QUCQMLsSJRd#?P<3gDvah(@dPTm^yeaxv@*t3X z^Vb}Qu#^;jLox^aaT5Jw3IR#b#UQt<38Q2LIa_F}RFg7jN#Te!#&8ko z*sUnS+{zlm(I_ydYh_kAloYLedcc%5A|+%)Py29+0c87A4!$yk<7o&QN=S+OO-~^V z18^)L4grtIy`j)58nncsEuTzMtcZJ+TyjcT0{kfw`Z}-ky8~9wPgp^{ys=`^z=y}8 zF8m~N*9w%j(~bZ>vvo037m2I3>4HjC)e8#5Wp3c%>j#(6WS~ib+;p|{k{iFo(;}x3 zykEsY*v0S7VNS&pm>X*4V|@eux8{c)>H*Awn}9#7^JO-yZ*Co#pdY56cXegBQd_Sy z#6PxKyVR9`~?1^Z*ZJo^KeU&3K>7Lx_9xLj_T7wJK*>z_pbqg4r5jK31&x-uA<&8?Etb z;-9-L|2}ic`mZw=@UIVmx>(0Q`<0OeUbVl(%xDF0&q`v89T5g~lFsd;H^S0R(pvcm$d5QAa87~MG!T_x{;4`Lg628+^FfDEqvAZw>7JwX!&CO-sg;%neIT-s%A!^d;W>@ubqD{Vwf~55Xw+Vd1SSRshzN|($bNv*E1j;)Z&+=&+(`eJc(Urr!V4XjH0!TBte^Vv@pM-|G87 zbW*2j+3z9ay`U9eMOpp^HVDRsKBMg@+)-X=7|V{h5Pjj>``zFt&eqeA@fujhJoWO6 zRR~n}TeU^kIVpOo7-t!COE4=uGX#f$g}($!A-mfeRc*sUv(3%2!CBui-X5%7H;nq) zm65{IAtxohTQw{jB&74fb-lLS$#){_Kgt!hUp+YbNcHs^c@38WeY+G zZziyl?2l=3q}XyqM#J8Hga03*-aVe_KYssz?O-;BZBBEZne(AJ=2+Vd!(vY5+#GXA zAtIfInUTXBDhkc{5TaBlHOEv-j)h9313Ibb_%2_c-|h3eeg1p?`}*T~d%hmmj~)R-Ru3scB>84tW&W^z*wCT3}Af12WdzxbP}5&JQNbD7*ZU zPPimq>}n_gV=c#FR6@kV_~)OpJ3#-PLjH!c(>u>Os`4>eDiV=)ML__R1d+zJB^qZh`#&lqZ}|G2OR9z zC?0cOgb+nWbR4?I5WucdM4I;Xx)2c=;4zS*GT-ca&(1`7;y<>rT!9&ydq+Q3_AaO-66); z__QmtqonPEl_^M>M9_;UnFQd>Q~MT03>+@=4ZrN*H`t3$wsAe@TdEFlLKRP$S`th3 zPs`H3?yWE(BJL*~^!mWrp||XPSzIThiQ@EPutv#w=1C0)-jeJ4(bh7u03p;Tnr6KR z4FWr|(qD@;u@Lu{<;vo9AGIw$*hwO=?!W%BoIvIvv@ysNA-=a=cM9`aKSaQRLSc9w z5nF5J2Vk8>t#VQ9avmA=YC{WC4})vhhp|!fO}iECx^fN}i`hpdATvpi7a=mz z$NiCtII#NCDwF+0ejYl33wA<*%zLXHY6pnFF9+xmS8gyE>;%l`m*suN6Mn%yJ9JnQ7O#|a1C9T(H6S#@hp$@OD&+Qu22X!EUM;|Rj))1MGc1!&5oOq zchAZ=9TYiMXS|1H@e0a%??t0AU#+}HA($I-%~`YRmzzQA6vA)JWlQ}_PksKbk;M0C=?D^OLvEEd=t z#J4ib1)yml(l=*E`L{xpD*LKx&Bt3DB+5iRDzxwtV8Kd|hrM<6p7saRMp}+)HMrJX zBp4k4^Vs8*boidBHwK=?2Jaq&wPoxd;D1?n;sHhJ>cjxP#uHZ(Z{c$H^+Yh|(an^= zY$?WlVT`a*AGl0_Gd-wtb^FNunrES9EM|TknFwB~Ryz8<+oZW>;Q5^VyJvVJ(!g<# zf=f8eYXUyJ^5&Ri09h$aY+?bb<8~qS&95JM4V&K?Z`PUNjZfF+*t=cWa!tK*8pZj` zTD`ShKR*q_5xm+I4&g;w_rup^?%Bg4SDq@Tq2-+Jtl>l6hHFN9a*iQ;+Lu}PGd1X9 zmmH=(Ct3yHGZqRvQ1P{w04$vHEl2CON}lb6|3Sx>;}4{QZUmlML52x|CcEt|d|1kV z1{ej3v^7aw!{UXr1`Zm=g^xrhVHXh)BC+@QO4XAk1bi`c1w|Z>7Z!G~GMVSG5ENkn5Yq5>HVn1%BhyZBxZ1Th) zfciRbvf_j(Xb9QbcIK>XmRZyWUa!IO>@_+ZHUHL3V~~+XglIJ+ZG9V`@>J0`S)BW2 z;Shn6lK2A^WJcwTq4i%HySC^H`~(r?d_-qzU)eE%Z}{6}6%Q?mN<6W)nJ;U9Cd5Qu zIJ{4cVBf9}hg{j|HkHY)*id3G^Noq$fW^8Hjv_8&06`Qu-&Q9gq=Rv7;Ix>g6hki; z`sd1bUBSOQe?7LQAhlzXJXDMqs2uX+s3}MQK4WCuz_ERP`>z`6D0iiC`kZGw_ ztMO=M?Gr87fN1vy4vr9XM?F)rsktGqg&BAUMX?I7sOu9K1jnE#34o>iT2^c7n#RZk zFl0$}6qFbhejrF*SdC3Y#wLN&jc5lRxde+vd|0v*O)htTNau~wC$jUTvp8dk zp0nS2om+W$(6*^nX-n^WOd)_G>1Y7m-w=~^6G%Wje9Y5 zlQ<3{Q}@PpoC)o3`R5TqU~uYEy@&QIe13-#`z1+sXC8%&hf$oJ1WDPRf`~xLetQFpi{g{UjsJY|E?@d!I@G-vWFOU7w3z>8Wg6w5%w$QTY(irtstcYt zmY>ub(<8%V{4ve!fvFuUcutE@B*#w!krlYqdt9M`{}7K-j-BU2+(p zGyfm;A;6c^U?M3J=_$sE0tk%g6ue)O0F}0us2C5y)l?#@6wiVo1`MiA^rc1*A&$BS zSouaMEPBtPWh<3`luU{F)wKh#a>On9-m=Dhx^cu$3c#luV%o=y(qAABmLLL0T!eY` zrCIr^ML=;q>U{2G1jRV*In3?mnS1-E-`=g;sESO){mR>cTqu8t+wGaLH3oj*Lh{%} z1ArR}M#p{7quz*h*>xjT7bOb{`W5^2rccD%=Y&DciEFH^Uo6#sae0Iz7(VjEn-p3& z7!^iYZ2fqcH_p}w#TIBj-1;V(B*CupCnD#D?N8pgc(YDfxwQWHX4$V>JHqpMN*+21 zy0+&YK(XRpAUdN_X6 z4o=rW{0L*5LeWx#v2mS(#8w4)A)jwWAEY8s*vEDPo$=<UNU^)a;fD2GyS#S+6p?N)9m$P z{6SbjPs{y!dB?FsB_(>xXpuyeh9IPJB;QsXDDvqM*CfCi$e<)vOBudP4?pr0 z&dAPN23dGsPpUSx%#<^_$*NL>U8Wrx4sVBOnTmdxhI=rEb8FB@3peo`%k3?Sh^ zA--?HCX|on0CHjKDkWhiI}%Z(e39N}JcqUII^}O)UGcN3Jxi;3?Z` z0N`t?Z|E9;*~M^`rYS-rf5KrWV6eh8g8hzJfgOKgJpo%usqT^ss7)F0ZxDtO(ESrHo`D62Vo_6$8xIjjUAy_ejLxhkKyvM+P~pjMkx3bClzj&sba=fv6g z(U6~4Z{JHd<5?MOK41kKQG+jEP$-*wU$<}ngG3S)W~w2s3+9n6b-&M5iz{7Hbp@?{ zu`cN`!M`7@=$J}%a%Fen|(oL(d z3fNl`fGE57y5;OR{8gCgH~=inwPzmRmx_g89|Kqhdw_Qb6=t6`AF^0^KZyX$OFT!} zM|FxAj}XxX6Fs%J;PWy39QyxaM+DdYPj>kqvR9^B=NY-Jnr*X7_13kmEwQaF1*@4(lv2#+>VcW z>2zkrz2;liayR0=M=;lDfbJM3zDLH$XcLv*A=4aO8;kmAI~me!Y;Sol3cV+gV?c}5 zyyO;xoR8Y8=>SHC|97cyG=7rWwD;I|D>(<_=skyj|7i`jBOs)ucUJwPc??_ei7s6; zsO7Dh+yafb5$`jxdwW`{{Ik(cgD(>JpJ794(rB6Ii5};H=f(x^mTB#*K2| z>AMvMh%kL3{He10s|&5r^@l>RXswPWQMoa+_-S$(vjCdviiE@i&Jiv@gGQj(XKk%` zQocBHY@88>-2{vq!tyL8_@t(VHw5oOUTHe}SFMu59{EWQh!2C;UW6KLeZYrq$gFn& zu$ZK@D@q~r)RhsMM$!1GfQ3w(zD%~K-R&HH)du(P#62pp>Lv=rD;Gk_(miXWAcAfr zYOPC)j`H8Xd;F;}pylxxYS_)~gyB!_$x{h6fyM!^P)1<3)=@-8Qp{pTVI1Y4Bu^Po zU4za7y(GEnV_nV+1X=`mw6Cbh93Jt={~-!d6ydGZGzc#%`vo0A7mHng3$&H#&I%^~8NbLXzm*5_+KJvl$TL@u z9)2{N^#?A-yz033*4I=hHmX0?pL(EXZ-X=lYVWb5;PQw5_)2h3ameD?t0M6;>X_)3h*aHu90^;zQ1v5yrwU##-26NuMs+@Q>)SCn6vY@ z5}@+sdjZQbBL{`ryfw0d(yLBZnBe}K9k zmn{KRt58M;&ql-$-%@?#8^TybSnc8D7-;`as$6}VmxG~9dpkOPd49C&^y2y7+NEA^FZ-5+L|XLbDBF2%C41UdJX!2TEVka^ ziyV3O)YJE=!c6fn1Oi#UA6i3RDlMajXUFMH*LkUV*N=8kLeWFhX$cX$(PR&J9%XUu zh!({;R9f*J*C429;HDNGX7bE?6uf4BYG+TCrH%>Wk-h76gFs@VL5=5y9ikuCt$a^@ zI`KVkOoP2o5&^UejKjrUObZbTrtl+r#S*a8K%8NO$$JwRLB127Df{v)X+;AKz>G-; zYF3J??P7lib%n6yoWeFl{;IlWSKk%o-TFBO z>O@w*RE8x36_9Ch3LD4X1s_;IrxF1icK~|Pc2RCpI)wC|)1g3Iq<@@V*>gHWB)wqU zR^LpZiMF3{F3z90Or5Xm@A5mivUrzLO7^H!@bl9`MQhCm72etRD_PXpQ=bQXTiNrC zn%v&9l4NRHzI}@TCLC>}eiK(JhZMWo8z=YXihY1dtmQ-bd6mkRJj~Dh^9RwZH*cKl zJ0!2usp{_LYTnm)@Wp-3h3-qn&68j|ooU_?51+c#FLzF@rVfG+sNFr<*X#eS(v0Jb zGiWTYvG!{NGG^PZN0;a*%8qbP~1-o~j>Jg#_cIh{be`m@&r z#8Pyj0gvsK;HZMzAi*xCq4=z3JX|2f+$jhFU1VzaQ&^cGq~$Ci_kmV+Kwc|RsO$s= zTtW{io~cO-$cg-Lz<$54yZGklkzSuinj?KZ0V(W5f*V+ugAdgMk_>8FzvA@`Hk)** zwb;>S!fBUExF>mQ5i~+0w*BS)Jc*l_i|?xFOY6Kyg#cnOi&tJ7u2R#TIOa0)SfqX; z0GJZ5))p#@_n9r4n$qfWdLe9b8NfeD`EyxIp2^Yy=1mC>QE_DufO{!ei#d)%h61aa zAX5rJ0RgUm9LV-CV4#&o(Z;g-7z09TSEzL$PM8Cjh-DGTU?CgiGAf5Rlfc)(zi*vB zbTy&gvj}_h_|B6r_q5d=u}-Opp{EQ~mvLf>;4#YXVf#vqSgcT<+sXfm4;srjC=R9H z1sS6->cdG@9wM??@HU>tV?-v~#JQ$LW%dRO6%;k{yfP-2&j;h~oH)aYBE%2aK=Z8N z^ZF!~@le3V`ir{DAyA_KM@hx&*vruMR}*-CZWt3zjJ+_cg*oV3KP8<>B+IPW@xa3E zJi99V_JNwuQc%fCHx|s;Oz?qdv5nun69N-pt;a>j+Zt)5mO*)4$hxYmnKxF8N#`SA z8X&X;u<#B!1O5q48sD^nxPsd$!hhECdEnkk;}9au4`Oj?yq~ zVJe8lu^0gFE9gWREJk~a0^^cEMFr3%1=yN>#DfH1Fxy+;4um9zw}=BF-d2j(U?Q(9 z7l)qjpaBHF);}ZF?#PJd){@iz<~*}xnA`_jC->+4+fh?9Etv3o6TQ1jwszOhvqcew zXj)U5_Sn7C7c&E%3O-d0)MT33i?Tx8bHD(>_|~nLAILdZrFIO8U$m(*chU+OpjmXv zT*xp#!!;}Td?hV|abK>?3o6bej+PJ>b*m%HMIBi*ss&KelUFht==CxrkqAUL53bFr zVsWBK)<)5B4P>N1yMkJGQ=2S*T?%T9&pwJd6b(ZH>N*&Vr)Ysb2FJX&>PoYShj}sT zWlGtY`%I#!I+!>&feC?;GMXOWiRYKO(x;&6AN?C|>S#23WbkiDN;tTRC{U;p+GRrr zXVB(&YMBR(mW$fAx7@?g5hKD={xAB9&xDbB!jIob17m3%^n0;RGaU8xkpKzIuMWJ= zP+|6cWiv)p3;m@*q=TCFq01h-jG z7*IfhCl!5K;j&~$#7Os6LX}}O?=)rk5&%FP2oD1R18&Nzq)j5n4;ar%qc9z@Z4jaz zadrDfBNRy`poK=|4m*?tbjJU=xcA#QL@JB#U)Lup8KD|Y{RDAp`TX5SME^BBq0apl zzXsra18*uqQ19aK>UxA()|3hB{`IFH^2*wCeCJpnY=X9bF#ko7w3dFJSa$WJlNe9$) zDN5$+s_Ah#G2(By%N6+}S@>lgjf18A9V}ggTi<0cl}TesiZSk=&)6p%(tqmg?j`T# zy!W^Hs#PjDB=1vHXz?;vUCg*}0tB?}A{Yan0{Zl+oy(gzxMtQ+&1+Jx$K6fp1XL_0 zeQ?}5gZ>#$`M@Qq*auUGP6ucZDefc?8+(im(qY)Z_F(rwSE)@>Fnrv2t(F2`jd-^}MiT+Do}Q1{EwFQ^eY{c%SWEIny6;Fyu@GfaI6(3=C>x6H z5NL_|0-d0@JOFW9#h_1usrsUcJq8AX9&`1dr43s5JTb>B4R5@9sGUC#PWz%7@-e-> zHZMT%ulx+gRaSb@^O!J&`)5;?&~=SRY0SL7xmSumwg#!e-(TkucCp&fq;w*U6-~*A zWZPq*xV~qsDmCvO{V02xb+UkPM#Qx|^g#v%3v4Hk->;2hRczW2@Ja7pJzYKWrE>hz zn|TkE*Q=woxzJcJbiECg+<2mf>bA${MiAfwmz=zxe;oPTBM z#(9d#>_Fb=^bSZjKM#iCOI{hngW&xVS*kpBAyObw(kuN}<9f8=cg=O2$|i~6j|84H zJQwH*4zg5ZR+bEV(DfN{pj?sdBu3xNnbuanqN6fv1Z8Nb z6_w?vOa<(E?y+v0<4u(f&BfMH?6hb^8n?d&IXpn?7qLEN7nL9Pf=>gierLO$D`n|G z3kL<&r}EN}ji-paJE{lWOCIDA3vL zH}n}7Tnqx`8~wYlfSB?!@9(_&A&6wg&H%3nPG{PT>^c@rx;v&XEj&*h3~P%H}e z-`A&A4aH!YA%mCyx*W&F4H@Lxr5#>*AuE07i`LRp^iTPd?}hnTQ(RW3J~!3lmFqeT z^i)M&u+qyP!9NQOzG>7Q^1PGfuM?F=e5!M@9P|&|FlXwYmE*YoN|8aj`Hjoph)%~v znAV4;;}#v|Z5t&7@`yXXdGw36uQ#@~5t9iw!MDx1@9GeYS1Q(IM>>K-i;WXxa=ri= z9*ymfS1&#bJsnjvajXW?1W?+NkpRYXRO$Rfl>0W8{qJPTQ^{YYE-YJ6P~F3D2csEPERL_8uCF?n%sZwV7C&-tU_4)o^g0maG1Ju{`8%g6)5& zU)|AvM*l>=^svysuOc<&?!Yrl|J?G66Gv0r{W~siHy?C!<4^2lyItFS*m-~B@VgHm zraMeu_iX*NHZ->MxilXkzq{bq#K(rdHs6B=d!MamznlsI*hU^BgtJBKCP$jzaqvRM zG2Sm5?@t(of(y3-!os|+;P#xvjrf%Z@4ES6*uvt-mv%FCKciz`ZlV*~+Eecb6yAI4 znr2FN_Zg4HqiP>!RZN!W%B&m>+s9cx>h|yD(2Jd3%D#~u$SKLJ|~jx(Mf9L3@1tl+5H&NRI-l@FQND9U6^Vf)BEItFCD~RUs?CG zE;ZP%bjD1l>D^-1hGq?m559R-e~K<+(j%)UnRP{FEW~1MTGoEgs724>gB=ZwOjkHR z%o~az7M0)6YnCY2O_2-55gGPtRDJJ^n(1A|OtgoC0*fR9j2I+3%UhA%+YCc`%GKtm@uz z)=?Ccla0zPvOoASud|u;H2d|$gp4mBtq^RjSw_M&+^qwednO^rI`-YLgTM`Gk>a| zyC+NBD~H>}CAyXTCr}*yFPw2JSmw0VMQ2ad6Cs0brH})+?%g(Hb-n+0e;VttonaP}$=Z7oF8vv~0xsTfB+mN#*ReoFjB4(ApGmhp4qo%@BxHY=vSb9{(X^gxQ z5+|d2IW$szhfgX2k0qs^R(U1qvYj1#JD^Ewyy~U!+39VE9$YKQ+s>IH#yowLP+MU= z7m36(9-IF?V=e}Hpx~~OkB)s@FiI<4N>*+_GrTtEE6yExyzXLp(ZJR`o%k>B4-MCM zzMb3Tu5eY0^F?uaYnRe-dj~oM{It0y^~A6EH?R;c_(~$&a6kySeuKosdva!2EtCO% zu#x`FJJ^ zptDYl!;A~$!XAW{kq+g{;B`(+UjzZ^JzrlLyFq@&a)36Q#cCxqd+mN!XLXu2`HaLM zb%pyVpo7T`ZlugYxRO8>;(9t{0MuuA@>!rB31}fTkDoYOUTtl1AHoO^y=~q6QzplL zQ-&w&FhTiwHidubCPtw5taBf*3)%1&`ko|?E88*L2?Z8jPi6FY>S}8_Cep#9JCeQ! zsIL{+>nGdSHk-`u2$-R8YdlSc!YS?lbukjEQlHj{JiYp1!-mt!-?2lW0Nwr3Y}Y|6 z_4KR!e27kKoDx81Pc$-3ygo^4xU{m<)8rJd8Wi@mk#KbdBDg=!CcRaIq*v6t-)4j6}Le!&Sa3Vc=oWE41Qp?5}vVSXT4{R7aVo- zEEo_YzWIqJ1CE6BW@Aw5Os42C4&=Om5n`o}QL<;G^06zm{ov}~ude=ZI)En<@2}$k z*3*8)6GqwgE!T_7DEUnUW(Pe}4UBOR-{vGPv_nPT(t4ajMFu zO4yOQiNLd^*-n;%*Wv1SP`)Mt-ZTIn0s4ZD-7t%s*Y2oE@gk#Lp@TAKU!z=W9H-1c zQ5{P5CvrN}IusWuIJaW0vk z>=ZaJ8tbP!LHN*apF_TfQZ0O@4uT@Vi{EFoC7@Y*q4Y~ZZ(+J*^!@JVj6IhWP87W)NomotpKj1L*S9T{<>gPWZ|1{waALVFmWO=2jTuuL9%p9P z%o1AQFm6s0*s>Y?DlzR!Z98x1U|)gEARbun-r7_-yMO?^7hCR4JKAtZO!xU2v&9nsGUnS}$ljR(fH()be+Nsva#T^LPZ z0}g3i6?;4}A%LPR`y4J(oT?a%0akla603m8T4%@R#M7`a%j9*E;H{7(?e{+yng#QR zw2ogq0jmI7Kzmn$ns0jkp?b9-$u~sL4w{|)yhidE1PO}!gOb4vKLoSkBuIR5LB2`2 z5P0b8NUpK5y5hc0VCA2a<{!-NbN>ZiIQ8DVUFDX%zqb)rBJ=PTrTFH)`xcs@&YD$k zSC=FO;;rRi!1L})zio5V4QD=r`}?|m9+_{tG!-0EKmcJ8EY`LL0}t!iZ({0)-D^rC zmp?l^YAh)6A~Eb@NNiJTDT~)&_O${I6*}S{f%mKGI}GDQFkdD%mLGPGZ(diy3`Xmh-uW=;g%MF~418j59UTG(MH#;?Sw)I?d;1rSD8E$M`xbsd>U9lA#cPh!pr5Qu|}Et$XW-naTPdmNESmn2%-X2 zzmTaCeLKfDBGW3}&rUP?((86k*pyp2!mk&)PCpKN+x+5yqE5ki7Eh1o=jz_A+$=)+ znC71(P?^EgP=fD^vryoMT-n6Mk$(6I^tw3WQ;ze2C**+{RERLad{NcO zc>nSD)RI8s#zHAnD&}g5J_@=T05~iY4gk=#uqkhmE!#d?`~|I?Q?l|NV0Jjc8=)@L zdZ{)}$4<9gR7c<%&wWNQwD37V6v^-3hl!$ik36u#z$YAhVuJ?3TnbRGFbnMx>V(4E zXfj?`CYm(U*AuV3$uHUIe${-ns(ES)MsAyNNw-#;AbFnr08lt~x) z@BX3$;c}+gXGalphL3FL%>mi%ULcvYH5EmM7zVbkdQTL71f+b=xLVGxK99Hrx&Iy> zuj1w40PQgKAP*4L3VLX%ftb0KAQ|F8S(J@5ls!Jd!D2bbK;gw9fiU9lQRA-J&u+t5 zl-CGVON_LkHp-+~h8Pe56BJ;g#>#$p3(MwA?5yUG2q4=CnR_6B zCXtZ)Qm#kPL{newk#7sK-dAv>kp7-q2iS3p-{$9eSfmCw@vxoI40f%@g-VxZWk~gVFjKD)|~Z^_ouRMS&K@-fP=(C?(4*} zJHJlHk|zBk(H_qa5&%-yWVu-{h4SY89l{q>80xqPclg$)U8e60{`)qZ`}v)tX*ILH zKzlm!^@kNT6e-bMpQH- zSZB-z$q|qEn{#h)+EIw+b9K3kprbj#U8MKkbS`JRcM zrV`fe+}2STL1J*Y>7!E0{G-a_$M=abTZO`r8VUGqISx!%G2kb?w%`_s{#j!X9~4u& z?$hl%lkELu1X5?0a`8q;o}8BewR>`Mbsmv!d}HwLp09EkE<*gk_rqc}bo}^q*VBjK z8yF_;NJMA^CrU{mY2 zd3o3=Zv-ll4lGE+)*PT(NH!@_RUI@yPf3C%TiSKbYF~>8n zu&*b|=K_bPTx)tqT7U;l<60ixPoU?20l0b2FwnRFItgj8$K4bOy99k39e}%6(_4MD zX|_yO8v}4HH9wfskEf`l!GgLETO`~z8%m>ie>?R2p2Y?N&TJ>2$$#Chjitu~N&-Ny z&v>-xVM9wYhSsw2BXu}%Om!!gNjfEzA#(HSu=_SzYu6G%0{iE7FQhb44T{_d-8Jd% zOYmwWi!A6n-=$OE&=|+y{d+#puS0y4k(z4-)_cMnfi8Myuj!6_qVRB3%RV2&&*g{K zw_opJld_=|K898kIFPKn`Q?3NFavL2_TFPjrl2D<0%Q5Mg(<2NeH7lpJ+Gp`wC(I5 z5~NrPxN6}-1d3DSX&+61PA&M6eH>)e6fJ_n<hkLeMvfbaf#2I?_18vHXcvuZNT9 zE@DVA5MQxzA**|_`X*nS6+4=k%SjLO7EO(34@_c{9Hjp~>D}{`IQRpEM9H56)cf?{;+#f@z!lRJDmfv)+mvakqIT%jb;A?h2TCMaP48iiJXdOcMpX2!CH4KP4} z@^f0Yxm1!`V`@)|W#E>{<;bcTjglGrb7i>>pFC3EB}-oE{AXyj9H7+{AumemSFm<^ zG=1vXRR$73X%Cw0agH{{6j>El?azlYdfO|OOcyUOG)efymRn=0J)X{2`DF@=H5^Ed z!L!Vrx+uxw(3)KjaO)-@bu^8B%LVMo2qY?D)j&sf6FI04i8o5h+QlgHG*%&+Gg-rv za|-G4K9TVU1(Kl87S8D%FhOZ5cvH{d8!j&FYte~HKZkho;-NLE!0V}xwA({ux`Gc8 zKnk7m*>eJH?&v~x;Q)9MkzPW*L1OjOcJ;BIgUpH_%F3;XXxVeTgESDgX06q3uxMv(kGP!~98eW=V1XvK<&9c5uqR*4+raEntL0Utc8eFeqwVmj zy?oAvY>=^gGS~j?_PR*Yg=NVr5J?43rAEsGsNT0G=hdxW6ql74Y{wTvF$Uy;0h7*C zA6x{_GJP(eP&sGdeBh%^+sl;md5NKlMuE6kb%Vr?LhbFzjqi5o^<3*u%6=_CIqM+* z_tUe4qIGA~z~`rw9$EBHDQ^p2tV5bT|HyKOn_G?78z6}B;^pR|@8>g)(SBa&&SxL$5cgAHk#(LjB41|W&Z;cJqmXVg!FoAzi2K5l{gZxC zY(6yO;<;uRCT5J;8SV^Yswy-^FL^)8iA8brgC0EZPW~%j9hZ1%Z$LQ12S z!r9Co_Ki1ITn2Z*cYnbFQ_$h4TRG!Ha^}L!bOcDN&FkWLS^fG2puE3JW@?DaVz_fV z`G*f+jd$`SmCdH(-LZLNgSVKAdrN*5-Wc>b<;oF(SB~e*j5>pzEM? z*>xvb?C}r@J$s*|bLE|RZ6W|`aXhJ2@HH{9=-sPRhu8oi)ifJQyuH=^Fm-QI z)HPXy*G=ZiCkq`wNT68(YDS7uJR zlJ^X&ZyxFS`Z!yjkYQTfVSgmI+lnbQz=xmbDC}8M5wzRSy*M1FSd+en3-OnhY`B0$ z!UoGe-IGN*G+EBK2U}TKfA{`%70ftSseZFNG1K&`56}&du-q$?l}>vqSibq&*jCMJ z*auHV4kmoj%~R08=Z$4&kmZkh_jl*z$L8tJ&9Uur;m(0+ zLB4^+5WCS+74|I`l+K-3IRC$5>v|Am=C)C;41SgG^r%nQ%q_JY{ zs;y2ZO<0C=;}ZECOMI<_I_Dp1!-rYNPDQCiRcqY%M}4`NJcJ`~KSgX1L#5#|+!JxN zNY=M%SZMU-J`!{7ERyGE7=~^ovMlI((;Y#let82Tx6_-hjoZ#4X<{Z~=*s1W9}tg9 z@))rlRfPX}(DJzzV$_2Q`^wYfeuHF#Rvaw#06Ufj0uX)1nhFNI9*v>x-Ra62SG%cT zo|W5}b%8~2%AIndeMG^l=REUrn{ORWh_<9fb;z)vq3v7&gYmTcL62#U$7x{xu3kS) z+xM@{c*ueLs2qkfSBfF=`q@H=w~jiS71USjsioEGLKLu#pk{oi$ElS>wbDR6@oW}C zq~l#4=Cr;v5JLR3LYg$S@)H_C%57!3FBAHUUNz`xdOZ}|j?UUVCu;qD?5$bkC@-$B zOr42_3|^1t_(kzU!)s2#T7IkBoNWE~h_Z)apTsMRA1G6&4<57^yx+Ivrc>r*a@$Bt zS$dq|KCrfEUgVrABymDs=xk))Q3$rhL;@tyeKh_h0YVLy7EcP6+ICyLk9r}OY2>N{ z2UenK?tw6+lhrarRUCYIGv0HMRyj5ya?&xIA6*4G*{hhu;lU}~l2lATjpO#Y5~qGl zr((fg?T;b50MQF#fmChV0k|PdD^x z26t6U{Z2r#A;7;CZ#d9n!1uX*GB%uJ3$tbIt$wV=J3H)cp#Kx;O%2!GeT3&JcAk%zU|G+X*`A&KEen?%ShwgL zZo-~fkVa`s7C5y7bl~Sd$qnB_{&#mzu&9(o4BKLaFX4YW$x3Av)VEUx`A|kCo?JM3 zk_e1Tu-1U_4p_oCI!7ZD)a|Gyc^FAa0}n+ZAyjsx8JJCZCz1Iu04gB$FCu_GCmnko z{?GcVmYf*y8X6%}iY*D1Phi1=@4vQ$MS-kW>`dasGt1n+GAlbC&0rk9$IP2Lz z`dUWu*Si&u=WCvTR%u;5q)h`vUp&@RTG9^=2#Q|Vh}w8KYo7meuv60cD!yXdFC_Qd z`j<|TizfX9u`%6)SM?_aMGOJxZ*OS=7-lX2Ba~dLgPW;I?||fZEQ~oH9Ia_SemcQ} zRqH|lsg53ftf^rjMqIlaL%$#gVRYROK<5wAUCC^|j2bb2)i49E0@l2f9_=#?HYHN| z)R}8Pf2Ln$EQ@Y_|A!$9$vp4JuUd_VzeMlSpbR&`{|$x8W%0;B#8O_^>KFJuYI^lY z;JWWLshB5M7-nEDVF*QvVT<;vhGQ+q(bZbWdQ$cRRvQo8pMNhKw^vEbveFD+_fUGD zjXL~SBpeEAm}Cb^VM$EQdNqZz913ts-V~ydIe_aF%>jR>{W_LXAGUJvdK{DND0 zWJWT=a<*GFzzmc(kkutcIh_=?LHMeyI_@v+0~N$f!?25m;~r-O01&s=e6N6Xm;}gY zYRKo%LjtR;YYKdkSp|TJa3=u>44E;uYFo^fgs$U?w%HzZdngb*+694fVZWb{eR?{| zABS?EL{0ClWVd{k@*MGqRH(Vt1}o2^eR&$9wx4B5;9K_}%^3XV1_g$8Y&UC5x&ilZ ztFcr>r-OVPc_91>*gL^Gsr)|Ixrq+oKD~OARq`_w+p+H-lr zG1PJo=fee80%;}WObZ7^qbI#Ha?+(bJPCvHJEDF(>CW9~AMb~xEVG56ip zMABWb$S9L9eTJpwEe|zc!%(RyUez&B=BI7sNM1D_5&uBIUm{5F$q0-op1eHd6Q0;# z#V5%xPkwzN3x022yFU|6Ygk-Nxt?G#{LL7JVoi8N|N34rr;ql}H<=x~Z0=-}oVk89 zA0K5dE0t*2t$EO3GI#%Ih0jcQ1MiNBjD0OE0F(Fr3-A`e58gt4k?stuIh=%Ennuf$ z**lHS;1*ezpF!F|quV~kT>@Dc&V3l^{u2SL-2SY%v{YklsxT_P&3`tYNYc>C2m!a% zI;1{+#a91KM#3DR+$nn}q{fH*m8edQl}Z1VaR{J1N%XjY<4oYiOaz;jst{r*|3o-L ztWnff1Aq)s?C8)6&ID@NPF)wBLj)}gU{bUaSEYbIYkTe;WX^T zQ2Bn7p#0u0L2ZY9bf4!z?_@Wy*)dl=>Gt6n|NhN8I3W+nkTN*joWxYw9=XlZWIGex z!LTr7ds;gi@j@I2g$=uF_B7>Mq<7tt1Gvlpq?NwM1wPabOPcJ-Rn-bUOJ-ExqND@p z$n~Swt7ZY5;)RGX=~GTVck{7TRzKBJc6VdyO-M}{HBP6>RU1+fx|6v6xtGv#5Nve6 z|8I+vNVONTWyLi$CuTl7(JI3g69Na z4$Ss;V_urO=&SLar|Gvwj{SUwr+1NY;8$w{W~T0|A;#G zcqacp?q55YjbUS$W1BOf4dq-jbDr}dIn*3OCyJ6(!^|8*)CkR4jwz>fnzN*u93vtU zNvSC5TkicH_x*U>`(xW5pZ~7MbzPs&`~7-9pOW1`8GVy}(BU?f5Q(Ns7G5n&#Mvqt zBkaMqf8MPUQdb&#znK?( zzaRbYEigZErtFBZ9N6CLLdXFW>BdQwhzK<~5Nd8eLVy+2lHNt**dL&GjSUpLFtDn4 zLje#d?ArG|ZU;UORp1k7s9cUcuCLP>0)^TZe%BPjAauF7=)T<7>s8os(TP-uD?AP90NN?MmHLSQPvn7T{z5D82ZaKPBt$>HWY%OQr8;@P z(0w62alNe6!0A-C^i*jrU?Ji;L=YUPJ!?kuR+a`V#zcLft|aCLJBUtzhLVr!A2#ah z+G>>VTZSl#cEncN1AmxR@K3|?8_ zsB^+*Q#pHRdK)+i8op)9haJfSdWVue$$(H{eC6LV=E)l@ok+@fZQJSJBHz`;Dh*%} zvjBU|Bz;eHw@+9JS7|@b_=}l*!nXCh(l|iz*`*U8X;S!CfsJ^7CI&>hDh=V9F!umE$M4^b z3Rk!!58}Q}5#U)=cXX@jHb<=}fpE_sha7d4x>4oW3z?CuDk&M<_vGO&kvFJdx5@}(J_cS8FGRl41?#tK8v2}g`%*lf#!+=o_Xe`N9iET zMMof@x+%d0j(Dj-_yfISc6MC&z010a@t}{CgpY|mGMiQi=*>QFitasyiPKBuPKl>2 znY*BQ#jQmeX94HEkM=yIj|WLNv$C|nfPosznVus3tHthUkitjOYs*im1BlB z6(hVVGKS%m_Z(YJwRU-1u2=qdV!`D$SjkN+Y;V^U`kMKGfGx0KEXWrIqXhVoRV3{w=Wl4{#;OD8mUq-_Ce%f?UU+|sa$3kpaEL|57A&2G5HlK9$I8oE~APoI)=|3 z*LA)CtP-vthv07?6>fL^1-k))$dIeC8}sleI$t3)=(3V5SUI;h1V*l8rOC%tE5hP}YRkJO62s(#G|Kc|jIB~Z9u`>H zT4g$E51%1UQZfm|^r|uOqrNCfSB_&=LA%1h8XN-Y=3YZ`lC|z~#GYCfEAsG2c(VG> zAl3-V89Se>OqMC8&#_n9STgfF0KpPqf~)*9m{-cP1Drj&a&_@sUmJxTrjc)gQa==9)?d8ox}4Q;%F z_6V8+gUlV=d768#6SC?I!b=c&qUxq81!X_7nZR@1tjR=CihSPpeA)6f4lI6A1f{PC(EzZ-EZgy@O z=!sMtUUNoT@`rXJYK)@YTwPs2RCkwwlPC)k7GVF*CXkNWVCgEBqVqyD0Uyk>6Li$6 z(8Qci0UF4c)wq60uY@ypqmTDjA*qoU&2WQoQL`ulhBRJwJ_3vd^1INg7#wQ@2>`_s z^em?Mr(hgMu^uW4`obUktnYJDXXQuTghuVQ=LG z8VcU>rZrPU!;vc zVl=vs{Gj&ZsWWp~;=g>QlBJ(~y#$`HmZ?B6OhiQY(l@2uUXLcaCy0wiub?64RcmYO zn=Hn{Kb)V=k$FbAcJ<=2wBhXwC*RK`TbsCURZ=lUS+~}WJY_%|hrJT@Yke8rZKP5P{ywAmMcR$a_-v9^u%lh zwx{A&rA!U)?Q4gEqJC^$hiqe6iQJUY7wK#_oc3Nl?aRTTh(zxE3^b-sz7*JM9Bf% zfHq3wq^V1s)7Z-|C}BNt1=nWv+NDM$|8yS3TS+7f8YNbbSsqV_CE$>#EAS^$>d=gj z3Dqz{_T*ZJC_%SrPf4K*U#g2cgX_gdLv=C+eZ&McA1OY83Sl8bGYVa7r}zxnbZUM) z*d?G|K-?HO`kXOsnGe_h=Ylpte;V1;xsf z@Bzon+~DyuPPbNnyLk!#9J=-@C~XH@DWKuZtQYX_R@<%2(at|Xcej7TqXbb_-TI#g z8W+cXt&vgo&o?v-3DoIlBjGyBMkQMsBDqICY)z}SO5J+!5D7nbs!Qy79Xs}5w1xpP zu=wZGfuPeXxq6Q6zYET|hj4f0Q#(4PMj6=yHJKKT>ZJhc%F%#M znV`#SV&G?X7%QNgGMP#IPd5S^E#c#bB%?^cl{8g`Al@X-O_I8A%idNDZxXH=@^;oa zgh_>Kqfv7g%LcaTdg`EZ#YRW{G{GC}_(S4UxyTo>u&GlJ!V81!j__%E@iOaffpMw^ zFn@1U==Q5SgLg&ouEi;m@dtA@AN-Ds`fNRWa^P^sa8_X7!m{T_%&+0AYo5DLK1`a1 z4SB^~4Us*i1Q^u|Fvo!8-1zOLR~$MWTPqOyYaT2DAqft_jbv0b3AuDBG~AnSod*Is z#y=WKj$*R>FDGAxsriz(gX~Po98Sphydb=AeHO9XSS@SuZ2YOei>6h_?0?4+xhKC? z^}B4xzS~kUZ}%Emkls3X;_AIsJ7&}(zC%+I=63zbuQ`l?+HN7W;`Ev7)d8_?6tlGE zy^K@Qcbx=1^gj{E&g1vdz3^hEl(Nj@lFL>vl~M$NlyX^igpd?SpxS3Jhq{~t%JUwJ zYSlt{UA$Zf0$~T0`OjTj#UJy7V~ojR6kO#xqT4~jGy^o&LGBr%1dt0)f7Q$B7A-_R zLIj2V&)f=200BZAqfmiVYrT$U3M=5XQ9v}6YnLH_5}XN(Vo2GFp%MK;>=pT_iwa6f zAQ~8fG|P%f#o`mE*7sQ_9Uu|`$g*W(a}F1f?M3h}Zr_x}b_H*>bdP;AD{f`lPC9O7 zrb$~%1q_!#<%~=m{f9dt!MVYB;90Jc()HQJR2-WXb|pjraQI3;X8;^Z87p=m9n4T0 zm0|FcU$*Ql0FXEcpH@$32W6Fw7T7j*U;@;EgU@u|hXa$;nwNor6GC{RkcxZ5-KBgP zlSz1YO3__q5Ai{*o2?k?o#%%hEG&f4b|oQ5iw)GxxI_7vt6@bT8 z;A;VFFM|W3(?ivScu)WoR@nLR>TOxA+MQk93?j>CAb4a9)4H$~0FSuto`AHN5fY4$K?lw+;QXsokOn^1_ z$MrBLy$cqs717MrNQ443j3WP~T?3{8NA3Hj`RQxrAzsl%Pr6_klX?5Mchqc=t(94%}_3QRsRrqOdEg97 zr4w3)8=GN*WK|VFd+5t_<1JgA>+>PPE;7iwMi9l7F6bQxj72pxdm&&iBt*YP7 z+N)04)m^_Q?iyeHq*qgEMC!@uxu%!{we%##QLWOnnqV{-I9DuAKVxD5`m;QOSe-PjhsgdhcCId-2tVeKxu7zfAvIo5+ zWd;xJ`v0OMT>j?%f1m#qT7>w&&o%c4Nbk<>F7PEY{kv`a?}tt0NP5%GELmXq zqxMNop?)W@)*5UAam+h*S3;sSo9;6vyEmXJrI_dn1uDQwk~;S&p0VMYcW;ISRVhV1 zF?W+zeF8%7y(;7&U@B7ofDyFByg_Jl0_y2;5!#rm?w80iwgiYi?!7;r{)?hn{?rz1?;sQp|s0OL@Vd^6sNeuUBv8^>$qNf%~^ecTpm^RzK90G4;WL+;HOGxzJ-~(hvXY3CUshUWJ{W zJ1`c&xh7ZTqk0ZYAgG$W>ZOTsehh19hAFk_Q<=5_x`e$Fx?UaOeTgs8v`)7HofuIE zUL9@v&hrWaD=;x9R^c!gXOEu&;ZQ7A;&zaF7BWGi#3B|o$OwQl!2$a@b4uDKWh!~# z-kwXA2yOAEUpHf8%_Rd#2D;UPgCgeO4A_bWS%=@a2tM_lUa(@glQb^yl_B8-v#gPz zZ5}a0b&*^KLG;8f00Iy$79chOtI3r&d+JQpz)tTVqM5(oiPrj0rTH3-Zd8k|4p`}b zMs}tJLQwqei)xz{gLf(&C)%I z9fp9c3vkefVF!5P0v*4$44Mg05*W!}3QI95%E6%*=tO}%s4Dj#=Q@<1MwZ}2e$M~8ijK|fyFU2~Gcq~C zr>{vZ$M_Xqx^gz#WAcGk9cdwPBp^yYhARzonK%^s4kxryj8c~pl; zSQ-cDi5mrHWXHxowxM+W-+u0YYAN}6%aoCOEBf-jwTcAYGeQXk%A>Z_x4X+GY8;uF zCr!;G-?g~e$b{5E_g5F^#;VU;vO2u}Cu%KKTZWxFib!4muyC`E} zEbW@0dJceBfgMQPc^U&naPBgSGwi?8~&_$5Zd)BieUB@Y_z|*6u>wiwxd`z4&C_xTQXnezbDy?m!Y3)rs@yuX&^d>T-SEO; zCJb)(D&_t3)~Mb4;^TK?(=4NSIA{IaDLro3^})x|yr+HO0Wgi|_`_h*BV>~;=}IB` zTZ1`$$taW$wW3J8=)jYQ4KJ@37JOcP{oj-0A5S&EcI}+L=Fmo!G7oe9a$6jNg!Om$ z{gV3U+}Ds9*%5#WjkyHImSIw?c)szu{A=GC4 z%J7ZMG(LUnaLSd|qlF&#D=wcl_-GMxAdP_i8Eft%pR~VU7T|JM%jWI_olFD? zz=6IyQKKK0mnNs$w(mbRHUY9dow>MWl9&Z;P^Lzs!dw9Y-xZ*%BnUuAia|B;w0gMQ#31e3dPyp8Vh;+G+1S)?<4Wvrnk)W(^jm0WH_G z6Ao<1*Fspe`N~`gZVCOdK!*9Rv0lRCjDp6y!TfaI>ZQ0FHV01j5Nqk$)O2wVPm^-Z%d2|$Kt4ZeW_!D`cfV4xz2Vtv=#P*4ARG0x zP+V@`ZBONJ6bh=OeDqh-uQ9AL0=D+KNzu&T`0|%ni_y&wi)NZi74|!qopiZ_ok^t0 zyes;!B(FyvjtWnXiA;CO6+E$XH}FpxNIYO!l<#7BUPvB z)H$bw0=Ep$=0ADJ2Hz!Ap9l1X{3gG(a32j)^@dG$Y74vs+&qz?wS_h1wn+X^LTC}) z#!wW=*@&dD0Q`VwP%Ni!3Z1gJAL$3BrS;m95b$`$K$=B-XslFg7IyK6g&0nJESXd~ za)Q5!;R*Escc)fXXl!wHu$t^oLZJ&pqU%$pjmG>UDV<myD0f1Eh_^xVnm2Yv|5d^K1w}o~}k7 zTzXCsY1JyX$TjIawhn+!D3LU7emp*ND!wh&s3WCNGTZKsUsUpom!NcC{Qiuh`V#dw zzPELjF4h`2-YP1YGo>4ddze4O$jJXH^pKj`RMwpo-*T~PW@Ph;A(qTqGBaPzMa2GO{q&{gD$%u9N0DVtW^X}d8a zEA1CwIBa;GOUzhNFgB0c87!FxJ3+ph2W%bGnm&F(+|%Y&3kEhOSMvf>E_aEU!;nNR@6;z3CIK1J9T)D9USZ6ftrECpd| zvQs^*k>pV?#whw*pbfUc6bvuF_WG;k0JNNFl7^r*O5;HUOKC9Psn}8)_!?vA25{!U zfCwPPmsRrpV4OOG+zbmL!BX;r$Ni=9pCYYd`WG~&TMhHWk3rt(QdrL9(KbNHRhgVQ zpyz({NeL*jMennuxYu3)I7*W@q(Jt2Hrt2hrXJBo&@;5V_dM8a*o>U`d3iMkBzu3T zU9N(y_z)T9x7#DsYBF=ah>0|(Cf1|LYmtV}Y*B*-5f{G2Lb~(okUm*0*rsFB!buV3h4e!;lkgRz-QN>m{`GNVd|A04sqC6NDYa3b zCQ#C)Z<}!)8dvNDY+peRwYkr>eeBfzJlFp^QfXRkwzlAIrTtz5Sb09@qp51)T*!zb z)!NgQu$~?7{7CmSyP)9C<`mGnH2*v*^;%@9tht&D$;#z@A>4Vswlg(#ikRp~ACWUB zlp!{)dV3jw3S^+#bqEgLKAlo(YW+EkNkoe5B{E(k@Ky?BkU5^y(6=H-H2|4Elz`gxR5Qr=O( z^sYV=SarhYOj%yooPh@#bXv=I1(OIAz-%Y&fdX@Yq*7&bjM&~YL>#oG#(GdfDYaz0fO{Wa`!*DepCR za5k^@T@708+Jj>pQ~@O^HjWyfM@_Go5cQzZLVt_2wKDMY?kkIw=UiaOc@Q5$8HeiY zzSv!Dy<@zqcutymtNC9>?NAmuTADI4YHKZwM8;7Vvd5pMs(2jloeKP{EDrKeat+gW z>>nK_=Ge$i>wnUKJ^Z`8c<-?Fn?L)laz@+(GV(%-G_7)a`nOVUCj8p&`?BZfulYBZ zYfoNo_0cLuMJa!_^F*Eb;`RCD+vwqmh&A@US94z4RShPmgIa4-7ihItg-ta7y^xv7 z38=C39jGsB^SU%Z9o;PFuuG)?hLUR_7iEmAxnrA_G#o8>K_PcN{lJmov((!6!<{Gl zJq9S;zcwi%&mU@GUTOZaw9A`vaH|c>PD6Mz!j<0NOl67VOT$aqVRqn?_s{MACwe(` zpQ&KrLto!k!>Tmm_)UpG^yow+t;XuJmHhmkx`ja$_1RjEO)NhNMiS;|d^1{;8(bl~YhcjLd z>**8sg6V`i?wYnaWus3oh1lksY3852!SYCL_6nD#7UZ1~T!>2XNo;&gsJ~R@vvH`G zAf)#9v9luzRjs}F{^QlE(GA(V53!&7zg|Fv>JUU)A9w|A=@4L^yEXpqbpgYkTM(q% za>XP^DtJ1~Z=>II6{o-;pcfi~ATZ(Ire18L)H~&9Cub1UQGDdJX>X_YxkqY6ar` zXY2_GD9b_wHXA7wE_SY-;t`kZJoY7SE0?MPt|}yfjCkCke?&T3u@qSFP*bh319-M0v>V(H zSJkuc_gR+aX{Gw8ggL=Twl%ESGjIX58kAecU2TW-IL!{y@Y{0ZfH#XJ2Peywto-ERq4+6V&z&A}# zx?L#u7MP*Uctq`ll0LHMRmzmK5-ZZKvFvh$!GL#ymU~$WpLSzzb>N=vlms zCtMQQP@`xTO8H1p(MH;I4_|-~fct6Bvi)KyKpd*t>iyY^LZ4*LFcP4&3_)pNG*Je3 z5qaXhVcq)yEE%ku@u$A24t?zNH?P*2duY zB=-#xPb6X429FZv3jE(Z4fpu}FY^fV%RKLzZfS_`w(v_lFL$T;shV#7oY3ptp@Tar zIDzmqN}&XTBr2%ZV`TW7p`o@x~$aVvYlEv7Jv7GyR6BLY<+t>Hj$LBv_d98nO#-LRMHXQcS zqdY~t?u%|BJ1EQIeP`}9G=K0h(0br?`)do}Q)KX!>E@DGW%s*vhQoc&_^2>{qsYqV zg!$P~s>}>s>Qa)cV3RtNrJ-ws0xLw+h7<;fo7a{tvLA`E-BF6?AQ@wbp_SmJ{Q=!u zCgPo^!lYTn7S2e%GUgMU@3iO%!?zr;eg_JhgxD(HrufeyM*4zs!6=%OO+}o!Dv!to ztVefzIPYtyR2(3^A4kHTiixI7V}lxaW=0ZtP6^;NWJ~IptNwC@h*fBib2h9Gx4?D= zBud>fO2jj>(y@i7^#S@lAUYaAE)jw5k#h_;)Z$F}jaWFHL7Pfv)yB1uo|=~ORv(%J z`0QH(G$_CiryGmdm-9lC=RUZr3c%AS({EVIp4Z`y+P4U-uWwo^`#>x*_qCjRw=dYALnsL ziuc`2ZUuof+2c z98TS&l*YdAJdfAU?+eVj=?|{tr8Ir+CndloJ`t(71jHoK*Y6mvAUnMdb`fN6;|(kb z##n*M1yGWsAj;yQf!IJgkx)8^ z;(DZr?CG&>NlnFtl_5d89u;oOGVF%^wwRXV(30(7_A{J1aFpF*37aYlpfC3XO$5>f z1w=$23sNfUG3$I}&sU2hV?~T_Bb&dLP`Ofn!%*IhAcKhk18R|;Rxy~T|dhf+-tA|KDfr%#MAmB*DT^>4XumNBLn6Kn)Ilg_W~ z4XhKmcc+(PRrOu(l&*B)?D_76b@J#7AHz0_bQCCZ0}JaW8!$^VMfqkj$0Zdf+38X* z43(pcjmSV}0$gy>n7Xrx8=xa$(`^SF3>*HY=mQPU@dy)D3Dtq!FKPjAHsXBC;*NVZ z3=yQx&ffIuI+R@24%*oZY>8gHqXn?$fenrMZPf%uu;9VbkPfss=VPH?oJRB_HeE6Y zc%A#u&^7LF?)37+@x!M&R_qNGAMDodMD#nYS3{;O1}vReAL6~5Dry~;PU}Zee~H;4 zar>ooj_gY2bu;Y+lyUdJ9^Lwzm4+K>UGcdjJ_?LC*VDfmd=Qh}pOH$d8V$usj_Ghi zY1}{73#-=e*;RKQe7_K-r+GU@Qlzwp_r~sze>tVx{>RSZh5NDeo2vtDx{GsOqWy#* zO8>=C<@?6e+3d3=O~3Kgt1DOk3Y^FW*y&-ZR2SF)NK9OojDwcP_a5iY|Mq<*OJ%DRVE{QHs7);UzR1{`&Vcr zcB+RFTF3>voTadU^MfH^Xp^RlYII(0vW63sf{U}s1y%LYjYh0#&`!$JgiqLcsLZRC ze)L~nrUFy6V}k?JJ*+VTfsclD@qu?GVaRL{+6p%)D|A^+4T9^6b>+>k&j`Zt<>A-G zFn>i;%xYDK3g6!x{3(pe0gu7zf4nE~RL*UeBXk#0DBvMbb?z;QW5~^Lk19~=q!>75 zKyjBz@ICVG*YEBok#($31SR?%0==BP4ORTTFz~xb$qfRtD)AKz$623pxvgu#B(Ftt zOJZ)GwjT1bwkkTP4JRa!&fdm9$^R zQ!8$fn)){5a-i$i$~t~0H}w%Sh(*OALfW}pj7L$^4b|kyR&RMBms*Ze9z5@bg9>&NDUoI)bw0(I`Kg(V$c|r6LZPE&3a!hJoI> zeUH+uD)jYy5&Ej7D9|fEhUauf|E$zS|9EGa8I_Qt*_LTp##{(k^k_O`oBN|Maa(_f zrosIdo`<-@2C1AdFI}gMSqR-#EX#v;#}5CJT(&uDt=fB~H(tE(Sr_^Enn>%`%*0o9~q1*+)hU zZz7eo3EndrX`A7%47#);-WRoVwCyL`TkX`Og|0qa(-4uTc6+}i#dy7RseWFjY@Rx* z-gZ{?dNwN7ao&X7oj;F=1eINo^#ehWNT7~Si0P>nVPD)*HwoKWn3NIXZu+vZk4Ya> zt67ARm0#-CygjqP28Y{+6-@<^gfqS6*v^1H@SY*Il_wqqys|}nqgxCTdo@~k=)jBw z9vwyA<^n7eS!;|593rvP402*ra2j2pU291h1lTM-Y>`RuDdHuf$fVJJ00&%QxA1pB z#~U#nKSgu!)mEH`|GdkCzJ%slKS&eNE&B5q%L2Y3+o$$A3zwkjMBk zM2f2Amhr=Rah-c=k;f81xFcncac>u+qLS{tQn5XEw^g;`DtO!NGwiu!APC1bb2{x1 zfg2PoH!^&!ekJI};?6r%SbnIB%vCxo)1g23LBzXZ4#9I{XD(pf_f%?vB*osPf2zmV z{{5TqJ%I%%*HYN$V{)&jI)v+o|I`8r1jE6Iu<@UfuQ$Or>v{qYzIfYpXZv2Z)S>(5 z++2eVWCH*|=XUeypKLSN9>)sGoTeroEv4X^n5}#8MNlk})F^0y`MBn7R}s-u6nIe zAb`7jCs-@J;TvKXwL;d$|Df85mKO3qRi7V^Va){W9UHdCtaCny!&J}=%)Wg9mk3^lv3{N zJb{|c9-`Z2hI;7t`9LFjKxm@C;iO5DJJA}_g>fy#+%d<(EsabPt;Iq!VB91hAar?4 zA-h0Myf>ViI3Z#W`HSXUK}nNEG|s2D&Xh(2y-$W$Kx98DBqwtMbcPJR`wfN@qmgMv zy$n9k0f=@Ix&Mp(sxEHE{^Bdz(%$P-@xpoms1n!YUmR0jj|^0ToUXxrOD?@p=d z6&x`%M}dRE$`bDi^TLce-GiRk-!O5{RlX~m5guBnm6rHu?Ly^5=7pWxU8rtzMYv1_ zdI6KT6F~6qOj3KRZUe!I7r6GwZ8p`H5pJ!{pS^#2c74Xd7kEFsc1~GIUA)cM|H5&R zHy`Rp!|kL*mM`Q7upgfb^TG6P6^$Eo?=gJ*xk5ZjOZILrh8(fA(nBMBRW+$1 zYeb1T5~h590-RZZDDXRUmf&VePFL!pODxJ4iQ;?t1p&W23;D#e8fK?Ja^e!wuPmo6pjR_r$M9W5_+H+E(0MSQO$-3N^MJE;V*_y`k9-r zj;sA<_5SMq;<%6fUa~VbZ<%^&1`p2QUZI^QtXk0=pE+!ubPq?Zn_S zfAC7dytX=ue()=k6zUP{<%u+asA!uo9^-#q^0Bpr`Tl^}Nl*5F_hj*hsZIMI=cG{w z*Cv&aH=VKUS5#Ea|92-PoG*oRG_@ zw|jajly%t4!{8p}*#n~~M@FB9poj4{0Wb^U*NasPz4u{p>=gsoCZ#?$L_c=mfK=4m zz^?-nISpMa4DWHLJ$e=45(<3k<(9R*TXxp7KY5=rg6kc8AYUFY!d(^?+t_KWuoQZw6i~PDOWZFjI31s#dE!9nNR_Z6t;75PL{Lx`Nun|=Nqe? zio$ELRmJ0TrQTx+Y2hcZS-#p;-VLKCb=sDZ5$PdSqXqvIYS)bRqOu;s0TX-vRz$+d zJ7iq@Lb->pEMdW$Qhem}p|UcjUOLImdP33h)~D%k8{<0hGr_Q6EBc$hG5^Nbcr}j$ z*I8A)d~oBBC%Pmfp0SSyR$NBz;eU>Y9G)jP8Sn8JN|J?XHkY+7k(y6lvGW+4jZzWP z^f_N8V_Q~YnJy<}A+h{6Hu(WFfq1%)7#Z0er7{-d0At7Nzl)cGvE3w|>nyJN43%gl z4p(G5&==~od&*+W`DmxdeU~?Wgmc7#-3L>CM;Gh*qeK@5qL9KG(b3Az@*_9!cHbj| zCExgsUJZS5sc3PO84-M zwv?Z9J(cBhK9eiFP6mQmb%;1J{=SznRhk^xsa<|3ksvs{l*2{BRbi3IsUz#o6l_4R z+RDHIv_?@W9bt803%8L6q6>;W6a{G1L_t~rU6k1JL_AU8IP`=nNg{v_x^ih80a2tQ zFHd-dV@O7v?yH6R*Yih)Y6^z+v%J11C~@jV@4AGx9O`mFP{EHvfbz*%UB_ysYT%T& zH3q?bEAL|;@5605=6qA74gWmHf7qdu+H~=7#I^mVc?GGz{XQbpO;h|AU_+foPBC`I zr&am=??J>12^bt}!A7YiMh#JI#x`!(8tnJHR#{{IAybSLqLz@T6-e0m5m13+9++>F zdc(m5u5rumYGwqAEd*t$oc(~CbW*61Dy>S(x{_g6cPF>eX8FLlmXg%P!*cb0z^Dc( zmqeGgSvK+7A1Sr4zcw&uEk>x^x;yx&;fvu0H>9m->hTQv1L&}s-hi7b7GC#~u?0&p zz&eQai*T+yWdNv9;GjQNJ>}e2g({~MqH19R)EtUJD69@xrlcnJ`3HmCaEvDWlzaW-^ zb&7>8%A6z;MKrPi_tRgnEcjOWfIt!t8cjvHTuToyAwSwZjHq(Nv8 z;Gao|EFG@u$LVgj7Z8Uyg66M=x#xWfNz*xzVsx}LH!k#&z#dAD3mTEAt(2tzxu7U8 zq6<1t6PyT#c#9lrSy?!&7An;dMgCPLy ze?ENy4Og)eM}eb&LJc@OnH-`;nunHu?FWiuV|pGOmnMOZsTN2+S-={de%vkp=>EY| zan&VXcf4b$`I8CXqNSs~{ryE+wCT{iSo6^RFb{u~h@{#8StF@h($2;-#2lK=xa43*h}jA^n^fSV)g8m&PKNDw9y*u28H9V5vdyX%8sd zlfg9V^r4j{=*2Riv@U={0=K|Xz)>Gn4FL+|q35E<6d;w`p}~87RqQdsq`*^pszp|PjD#GPz zypYE6_FSILD&4Y_4%m-o8kH)Gs$H{&hjUfvTyBoDP@1hG37+tVmvz|0rCL{rQa!W& zYo-^jpi~Ny{V4>eV^M?-wDdO;_I;^7#~+~#04ns2k)5(Z782|_)&uTS^pwMAp*gD} z-Z3-}H4+6n7ybc&m;vaB?Qh>}Yr*8C1WYM&&mp(sdKl5I&QZQd0hJR~kvqwQ@#Q%$ zzIW`MUttTe-3j}4W!dKs(T|em_i?wD%xcReLJOLw^}&G8S~I(9JpJpEvcau!VVbY@y>z@Z zGax~QlahW5B9l9o)IbMS*Q#QAGpV@GpGP_3o6-qFO+{oFQTj`>4Nf9KS@O-3kZR5 z8ZVVa2yJoUIb)ssu>O5FwS}_A~_?=^WASGuK2L z5_WxBhww1(BICs)tV5cdu=fYP>R#gc9loVpC@Z)LY z$d5-k>Ga97T{r}=y8XIO1xz#524LY{5?}2f_VqrwVQNj%;{stqbUg{zG{&cw%`IZ@ z8&)I$Z3#N=$lIu!5<;lWk{fxTv}8AwRHe%0oV!1IUz~z5jqs(F8jK>a#rXRfRHa9S zs`5Adxtz6cCK(XTfq4XwrnT+b(;K*U?a-4911h+8$F~%Y&8*56GWbC2j;l9OU)a_A8h_IOJqb!Lvmy zQ=^84mIwaUJD1mniPIk|0lgjFLQ3ZmI^x#WH#u|U)$~q@5dpuYq3ndifP@E0QvDk} z<#?1^)9C6}f8t9B0Fks7*5UOM^f!_N3*1GJAr_Lm3gSf?@NZ>ej{+VnXm{j*(;+6*JM*xVY zr-NHL8+|UzGVd8R4d9O7IM&hncAe#~x3jHWUyX`rC3P=-cx%}i<>b{fl=95tTW220 zwbs%gpseLef_!AuPhy*vAm`46xyS<(;0#or1F|(d{2|EzV~vgk5U8hrqr4JjkSH(P z&2Yb9IMAgfc3}ORsH%K16iW@>L-;>Ly?Hp4ZQTEV&0@?jn6ZwvF~+_$)=)Gv#xB{n z&{#vVMM-iG27@7M5o)a2qbQUb`;s)4&?X{TDk|LF+P?D~zvp*6|6Tu|$9Z1o^}gPp z*NdU(17gEf(J;6onV&~g8Fw?elIEE!gDtQ#_RFY`RmiVS5FaF%oFkpFJKXgd4=TcG zmt)LCT~3K!o$t>M`i!eiiIfw{m5lHwo+a6K!>Y3YW7h5bSOO(Y=&@MZv^qg@4l4r2 zUmdY?FpQ23p_0wHgcESZMO6{3~7NIx=dWDoqcC>~>BhxIdTmB8MgiX>TD9Vw_x zSm8LV$XWm#>Feh^79ycQAeH)UBd1z{9_;mLWJ=jVnO)DDws4E{`Kp!x3|&4;0P1p7 z*a$-fK#al=aa{En0DcpurYN!9$@w%ej3QA0XfaiUt5Kjos){J6X03~ud2EG~oFk{M zh;KYrD8IIGV)xJ#N23#r?v3R!9$gAki5EIV%BmKiv7>JGZ^JLIM!8#a= z>8UTyN3ReQ6I$Vc$~Pkkvp~n-j{DD6gzb}MeFcAt{p)`|HkA1@Guyp7r_I&dU-i^S z;*o`6r#&wiJia^^8*m)j0_k5otqN1~hrieU-j!QA7WM4*%a>kugdtH^bKu@|c8*aV z_s9=Wcw~?LkDwMziWK7({(|A_!T8~$evIgJsg+pA$UZaPZJeNh3<$6?wG%HmDRYNS zpqKJuRLg<-W$Xa`m@moFGF-%#J_&)>4$Ck3Q&hAMNRmttRi?lX%C^EztfYb&&@L5R zInuQM zFw`Y^JVXVwhlH!gZN^1l7ZqmBk%|BRNJ{(v#S8-6m?882xs#&YL6m{N&;K_6?fTpE zw~gCZ82J0}@z^Q=5>ZYE#&^`?|0y?S|AFCo=soxqgm= z7P9s7VJRNrFQQoWUJm@k1XW#UpX63hp33IK9yf0&D#S@Y#!`mK0>WJt+QjZ(~d zNI*w!`d9!snf(UtfZ{Vrm!H?y^;^piBZ`UDIj7~pg;3QvF1ewCk1ajEjsPB#>b13c z7gN;x4I6Ie!QXQ!#{D6VOa5Abp6L`i&W`3=A;Jhx2G7#lt*YlNPyzqM=3th&6<*ucWi7@ODSQ^Z=Th97h@(^d0IJxI%`=i}2Mu z4Ezbq8wrA1+rL`T3b~aSRgYBJj)yU-nBO3aowDnowkK@CK)Ex#_b(a{WDhVj!Pv-6 zdf78ZaIjJ)6etxBuCm?!Zg*@Rr{$&n@CV1{@uJfh>&}@U&LOipPHtVa&V`Vpjc_K> zr_(^cx?}reuk!fqm4*)0Jt$DWH7;^|wZeq}v6~8`-u~9LOP{MY3Q7Z6o#xNf{p;DD z(EsB6ClG{~_41yq`e>g6V4cTDwragDcvL$T*g0j6yT$0$O zsmn!vXxom7pN~9UDK#PgeWSGTtfH@7eQt;R!l`hc&PHcQdq)bqZYcS*DYBbNOHK_A zikM9W!MzEsr||Tx%s?SYbN(ExwReLOg4>YSk{K6JUKUCM;8~?6V?_@Cz`H~ z1H4U&0LWAzB@;8eNytT3Vzq(vQp_1t?7EJ9*i_nRl79ljE4*Ex2M54L*^gq-C01Ij zoZL0f;~vl#$tek@TuYjTG7`x+Pyi|`2?UYq>VR~BFIG2R_@_K90IGq!tA$ePNLQjq zC=lrjP$cl@<*GI$GM8bl|KQ%3AF|3wEkSHwsItn@EFlzsLAxW&M*U6K zY9rY%l%rA8P&FLQ+rG#4sV+7%%xKoo;Cobx_ulx=G-+&44I=#8F4!#Cn5Gb+dNBZi zeu@%;SZAAhy;>1ot5!r*io}qU-Fmhx-s+pw@L-@I!@N?GN|wvRHx7I1F>2JU?71X) zv!lUl$R{VWE$&pMnZY0F!2Mjw=Y4dduUx(XLYP`WY7SpbWu`2SEh(6;tveZ-_|};} zlM=mF)2sM<`agU+-}^VAHYuw6`vyObn77=_&>IN-z<)?d-4>Az3dA5!aI?e4d**K( z9UlF%Et4USNvj`9Q3w8z>i%yo6n;+QR9Yon4Zeleo$eJ(PQBDLkd&) zWI*?@jx1|nNI$3F<*X09V34N`8p7&Fp-$28b_L4`<_Hx95Vgb!ORMO^~R6mLac z8!Co;yFr)aUgGIe6<-H0gJt_Eb+qU-`d1`OKP8?Z34lv4Qidhc0PHU~16YP|@4Bw} z&>XIAB|WmtK}-h==8yz#9Uo_SpZly})fV$~H00f|bR$s|QL}2&ErJ9DOL`#_SmNz6 zU-JhB=HcN50M{53nM=93d13~rG)S~~^g`ln-}cpx>-5d3V2h8S z%tGs%e?){YEo{3DN^wWl1t0(yKwy_0Y%sNZ0d8K z=NH~j$#3l?W7V8QR^)EgC=rKs7AI_j#_v~ju>8kcG&>f?C9xu5>?Yrpd5_q!BU_m# zI6AKLAsMo#FWNr5a?DV#WDD+TJlFcjboIsvTF^AiSs^Ou2MSh#Ku(;E6ZJSiXKwt4 z9R+Dtl0OG`zv-}vxrj!U1jfilAp?DHpD`dLLnX9w9dGI^gvKDX!rr~?|IjnGx zJ+PC%C$|_cDp@ucqIW>cm{M0>A;1#eGtFj(i5c>P*xfyd1wV;@{Uqw(H|HQd6O|FM z1uTxOazBlDG&sjzQH0G9mgYjwjwe^)Af=!>-qAmOj~tIj_tSwtV^4q95doz`RNeyh zI~ngAhm`C~f;7MY{aSiye{0CPH7eR~irdDd{(S-6gudvG-&bXf|9Gc#+JP%fu+euO z-hynt@&9NZnAbEuNujIRqdmQt+|_YOI=!Fi!~&5^@&FMOFnGcQ>U4=X{c-HbKfM?9 zDp|BfU6ixkzd!L#X?J3g%h!0EKjzF`zn_wwc}+F!_Mf}%&Z5aB;+h4fCcp&M_v+S> zaYFrvAJ4p{M<$+quT)E%ER#&OlhfxwuJm&p9h-_gXXYfjy;KM`>fd~uOr*3mVlXcF<{2^y}b?$00kajYKX+< z3R=vjYw2`abxmDlW~v+k+ZERja-~L;g2KujG$K@?Z087|8noZ+nWs5&78N#q3tcUOoa- zB}i03^UA}#delO3lVOvTzwqLxu7G!?cypWXggsM*i&vt3%9tn+I)wiA_b%QrckANj zG;+$LM_$*pPrm`ATa+t-hN|#&UcDE;dQ{M?^YyJk)yuK)fiDF(CxW8*E=ci*7tfb&`#*qh-$gd)9 z5vH+;QWdT?KPg#0NxP_`LPhF89$8s|EuIrIvu`ZlEdXhx!;_C(N6qgq0@w4z<9^DD z1Pm@rZHLIdMV-n{6)|l zjb!u+@7YUz^K3WN58RR`@8z;wn?loam&5Li=FP^Rgq+m{$L7Cm$qDqanakDA*hvH1 zRzjh6a0Zx0yl~yW?r4+4?>9qx=u{{57UK3Na0-nf| zll2)aXwUn^$Sb?@JZp9M{h=%ZoXu80pNzrr0+0IwZfafkxTd3|s?vl~?yt~OPriHc+|@7xuC;DGfS~^9 zCgFyLWAONPII?ZPPO4S?$EP3f{*FmaohiqKlqd^Oq6HkZUz_Xg!Jc3f&0iuE0v00C z-^-|Yr3hbynkzoJ{oNW8SiE;&hY5Hg!zJN8Z^s-@ znk+>tK-Ph&ZhzU96K~}z578F{L}c4fbcAp*K@sbRGc{mdOcJ&YoD5Hpf*vE`Z4`(C zJl=lLmH;~fm~}JZwjdS12t60eWtaa(yN9c44S;VpxB#$#@{~Er%!E?gn{3pus?aXy zGWMQRPDX3}=;*pl#C7;r(}mTeqawVbGXm_ztBRu(8+gg(3oi4M-S~V@51C*DP%k3f zhOLoNdZ+XAC_62<*roas3k1JjG~OS!dK@i}(-&){lsl+In57kA^x zY?ZRo(^YmIfILN*51n9p>xS*q_kjpEbK#bD=JVN^yP>uX`wQo;?|N-@<>o+d!bJ-( zN2WBFZ7+Q7lX9eIMX%5PC#T>&h}F3A{pVWB1g`MJFQ=o~|DJp$YjT_El=GNmy5v!y{U9)?vZ4L{yj;J$ zr=Pux;<5*q|8ySFYO6A#CW%z2-Mk>tAGXnW)A6HV;rp>m*c7_(N-yt=RBdAYMV)#I*p()n4pHPA1tL;b02zd_I_m`JX9c2w(NZ9=;$FcMTi?qaL?1upkMUth+ zw5MD32w74%3k~Sgk|TOC@auO5*f6PU@8D4%5evjjR~$|Au^dnl--mC z?PslDI7-+h)d+DfK^-bkh4K!T^NDSzP-i4rWrv4f{^cb=zk3bz~F3wr92fL)*taRDBR>cWt`~Pwl9nEr|5Fy)s2O0k8C++PSxLynVe1O~zpk*A2cv$k zce9-b{C(t7Q_gNd{N<; zR%P2%;!s`ewHxjJ;?1v0Ks0m0?Rm8Oc3iGZZCUGtvT5`+{W&!Y55UbU=ZN;;dj}r| zU$pMl(p#Lp^lRJSB9~)p9KRlI)sSU7@(Oq1MoxKUx>p=cI2GP*W|+j&PhdAsC2z_= zGh;_6=g>^8MhQANf9Zji3#K2qG$F=H?<)-9%NF0&`^CB;7`@JE7R&~sK4|OeLJ!&Z zDx2C7Lw<0l2r;s$*-G2X;M8pHRK)-g@JO(1fB|9F9a;g*NGBK#0P??Oj~D-!!U%Fx7>I0Ef-u)7 zbDx{M%>KRox1Ea!`SSOJZ>9?mbSnjH5?ee9kU0Q{^l$3KPqhoUe4P~Jzpvj|cRb)6 zTTn_a@(%0f%_CmE=iWNwDrQ@19qcU(l!l(-KXq^M-(S8yWk;^A?v=Uo-m>p+#qv6s1TuHmv zi(r8hHHn+|Ke5@c6AgbB1TrHYMgyW=$)F)l+xbnQ*$_tL%vE@1k^P^%aMyZw*vm%E zrH{i!6ReM_m(RVkoS*Q%wDp2=q>U29$=^(S&B}kXtA0M{eoTXL1;eS+jVZs{L;Ic* zx8O8NU=CIBon{|>ThYpn;jK8R&R5D7E^J+_oX+InCI}uFGpp8Y`CAF`|5PfAv%URV zlM#2!^Gr`lnxxXlj+F$K__g&EvbO*NK#zcg$>J zCqq5bz*;|oGN3>l9G8oVWB@!%fmr&Nb$AX9I~Y+zw}Q9a$wco^_w2==!9%H=>StTYnAp|6k!LAC*~dhnG@5Mq4n!=R9ra-Kzt`?u#`n#{6cAY8{&YZRIUt!#!| zZlgH>AS6 z|LwUe`a4v5#Ux(eavySUsDj!}9~PTjy~D@2*J7ze4ISpd^N@kpx*Hi(iKB<~QWP!Ro-s+}3QNb6=h+X)d z;Bm-y>xNdzIku`kYtHVJ>u&6g`MnVx@$8@lt0(gryZMsU?jCO`Q1Q@Kp?k1FM$)D3 z%kgn9+ShB8htK`%f`)nEAgiKKdvZVVOnrdg89idH08mrI_&ufFzO3MQMn%5Wfsfpq z%f?s)pq3d90g`t!M$^~f)mqJ31M9PCCchRTB_QgOq)_CWqxfneC=GA92C^r68*h)I zt*i_|PgnI=!{9WtNNSt)kz5QHpaZSCC|^^#qX(8tqT~^Q&&KyH?1a!;DS8*b(-)$?+MvPm^Li6 z$c`oDJ?P_~iwgTzI0SO!!4MGCT>$5ypyZ}-c%$XRk+i`?Uj;)f{@7 zBNc`h_B8GvaQ9-|tGRBSYv&lF8Hmj(t?0c<&QJJhiSf|VW8^E=6yA7sa^izY?&+(w z9+yizF@f8ATE83{B9uDU-LyAwKDjx+);d1NMmpH7EKnS_i6e;6L`?e?m!sAnysqrV zs0Lw+{YxFHFFJ579NHGo+Y=trTPIsW6$ELl2WR8L)8{anSv_>!KkEmmCOX9jz@weg}6R#Tc1T6(7O5lpGv=})B8zPbL<7_4IERo+z z_EF)5Lac5z%Dhbwk?|RW$`8+^Z%yehN8C}1<-ccLKmh|P(eijyFQYAGKPqFOW-w1u zv%>w5w3JDgx-?&$i${zKOcC!iws=xAtM0a?+SH!Xxg3?LFkWPE-D?%iWA(3W74D%G zcoI&^ul_6{1b+7TJra19He?lwsou`}KBV?2P|Q>~C*~2_ zdLJOxi zy|Tx!^BSM@N54AhBC5S&Czy(q`i<3xuWQ;-CuHmnms*xz%bd;?m5jQ#=<+i&roFN| zPR*M42|y7X|70~k-xgF++8y^83y~ZM#&@I`XUq&fa;mL-1Kv+8D`&0wkR(zL7kQ5tY?@ z=hQiX4Hc#P!k=AjZXQ=DLRh<5+!t#Ry*Kh>%6KXPz-HPgSw#UX@KH|b>&~Xl8skBjA_ zZGEmE#9~NPTKfJ0gJ@$UqvK5F;UOZf?A}D2dLT6!s2XMU(&O=c8HMRholi?fx{C&? zGrzRFeOwv|^aOt-_?W}fm!|V)A5}u=9__W5= z^WdRPb!vl}m5pUTuY&HGoqF~r;d~M0l>B5KV(?yk;(7J8NmekY+q~*+If^g$&iG|#ym0n!m$<3f8-(&AkVR0jhzA!#KwcaA3J$o zd9cVmG#B4_2F!+6lvbBuZYgX+P6wK$*dhM7Tt0{h>g5)*pEfHzt-VIY4SZ9jI@1K4 zqZ|z5+f1Pa77&Fw#}-RMf0!us`C@Zz`Fp%x<#glC z>~N7lz2Qe=CMmLw3uUiC&Mt8en`+_ft@mh>B#W;YHRzXA$wvs^!~CuJKt^8U=?p@VL-&W!FEQD zIP(3v5X{2+8XTz|8}I_5?F0g2JRwf3-HQ6A5$4Nun&J&qL+<%Ze< z2=^cD0{WP!uMKFqO*|B6%Bt6EC70Zv86!cR#PTiN?0%}>rRal-R8NKkl9H9{+wV$c z>42)v1%H-;+8^fyrhIYBK#D=%PUScX2W^853#!?DtoH&IZbQmll_WkgV%ux1fZ3V0 z(TVmB4%Jrb^Xkbs@%x{C_CHjL8vK!PcEc;R5jeI5Jy=p-Iy!FIH` zfe@^o*@&^$qJiMWp!kh%{lo-gL?3{K%QQZ@IysN&Lg!JM%{^nlDDkWNWb1bL*@mQ~ zCJ*P0#7kY}UMs{;1rifFf-sH)+Q4{FsJ+jZ7FzE5uKz7l9; z8X#?QQE8$*BTUH+&f5Cgc;T4EhVDoE3(V=|^9hcSgH^za5EzFN-{>CB7))nV{Hzl@Aw}l>c9P1hy~(}s(B@adat%Q zJ0?TV1v_@QYuYxx-jT|M@X(kyjQ(+fcr2jHX_QOlK;D4Z3j`WbP6E3;GYa8A^-9-l z)IJDbAGPC};PaGbaB>d`@3RHrMaE8VoTu$Qz4!gKo90Ht3Cfxb&zUs8aDFA*r9Wmw zG#d(v!QC2*PQwVKTHsYs!G@Q;ZihZQAqCjj(x-C*^KLwW0Z_j2dLouC-sASg^>Ip7 z&%v{cTq_Z+*39-`q)C?Zbi@%}nb`(N*E*GQ66Z6dv1vd>9q&${znF5ClnWT*%#ICeyT`qtyR}1rg-RS zVXaEStS|v?YySBbpiSW$NZBhpmpFGiulp^-OH=k z@b@fpuOsF4dzRAG?_N%D@P?OzPW?(M+_? z&J*1!^0LG_F(CiZwLC+oFN1e#{IKR|Iy2JdoKpx*HJ`uTW#1ijhcKl* zfSrAx9IQf;A0V9DD!an#nu@EwhIbAT<80Xd9ofWX84@bZ#1uP80@%@e64Yp8}o4>VlTmr%5SA1IV zpoL;^uQrn)WuZG<7J(`kPYD@JLIr6~r_?KC(jl=-vMA&CW4}NJjBGy^mXM8RqD8{s z)nBiG0%?A5iNckK+1UZvfx`$0R&?K>9S!<3MgdazNIiMQp_73zGB8V&oUj`C+3~tc zgTf*KzL#2oaK%HbgP=4h<9_kfAEWqjAi9l*R&N2-FkpigZ2iE}oNmsn;xJELL&ezy zWow+|Q){4niu12wQuPr2HvXJRpw(Wc^FL3byabR()JY9|*Sk*OziFkIb*0 zkO$p$~NBzCROi}*bSox^nh3oZnl@yE(}w{8uvP`rV(mM z;CFMW@PU4tK-d#68wZQzK1)B?c&1EqzY-iWfvkG3w=)h7b{GtDLmS>&qv;p0L;m3{ z$s36O9oG5|q-+TTZF}nhWT{)Rr*}Q8P4^O7py*s< z2mbewcj-w#>o8H}JvG~q@*i-u$D>dxE}CrgWBwKkEm#unApnPgEF zh&DQR>)ConkNcBDr=;7Nf_wu@-=JMfZepg2^Vy}K>ch}Hr1 za6@pY{knte%rC-oa$F9&n54Y7LjsOE6^`vo-hIKdEPQfZ_E zdGS696#*HHP96So;F?&32EZ1$$D)49G0e$=%>!?xe<3S+a`osb-KbIQI79}R(| z9iOS5mu?gpP13~Eu}bhfEWo23ka7X@gk*1G%TIKqfdA-p1li0j@(2)$Z@!_V1N5ph z(hV|pbS+?qpcQh%sziyeet^_D5kDTCA35m&kX~HP`O(!F(a;?Hc~HG=x2g(~`p@sf# z!dZgZZne)r95v};6BFaB`sm>aZPMG|wVz?yBkjX^lHX7m)hA7NfxJ_x{i5j)ZQAOY zmBlC__Q2rAm&z?(zo4k&Gg9nR$bm zXvWp>AeA@}piqvofXn*_LbXMQ2LU+o+j6ub1P~x%xani6dHijKP12~>aSKR7?;-^* zq5CU6dkmGlfB|kAeE?up$#|)%^vP#xAS_nNp~^38eK}kv(9T61&H{@T95RnXj02;% zsu0L?2o8ISA24^dhH*DG(M4;}h7DuBB|J4oFHC^;L0w;@DkSfXWj)Qu1Io%z-&{^= zyW8z{#wds2SRg%fJnmwpr$M!QeV3WYw1*nwTW{*i2?3QQJsT+RHT40Aq>pg!f~AOu zb~YXZ!J;RdA{-U`rnYL*)uwU8sV3WPhORkymIr>!5x{z1cv39fbM>?r+jFAkAdN3g zuama2{M>H2M2M9J{qm+Ekh`MB{K<9$w@GLMLk49-ba?ouqPzEqOJ9hdQcH-%C~s^_ zyBu%YO~as1exz|ONSb8-qu{sq)nou&YTzhLylKB}L4B>t0NO!It~_WY(T`S+z&^3ovFTFs%ro{9 zaQ*9sdaoUeR3E*hf#yPTvf<*wU$8N}p(Uu0c$8XBVOGmtXJ6E@zoM`U5;FE({<2Hg zAIJ+zBAJ!*;?lAt8Ar_Tq>P9XBB@*Hrc=?y7#>5xFUKetl;WlhvQZNuXBKX-YN2aO@=~Cuhh}o^< zC^4J}MNQ2%bLMMWxClUFxD-?Mcg_Nh^2;!q=iVBk+#vbYRWApC`B0wV6Ga8s3JJwy zp3dDKO6nj$QKmI-C*1TjqA34)Sa7-iz1(BG=8_w9%h}s$IIOLr~lsv zSyjm;XYIaxq0VME-jPpGs-{e(yED^(MxE3KsrOw4!*={Np0%G`&;$NiG{ehK`Auc2 zX|n(nJ0_r^_&taCp=Oz>j+<=#c!?-){X>b6sP1j8!Mw0mCDeWgeyXy?^CLOTg$u3(@hAqJ@g}0Kig`5AlCQW`zSg=xdvyx?J3$I!whN*!{1F( zw~K}ix-%J#dNvzsBN@8Zw^Xf5l}zE5I#wGQhIi*rp^h_P00H!V{rNx><$W^>0Q%|I zYAihkD3yI?e1BSv{^*TaTeV?dtvdvlh~e=>Y7GY2;d17Jn?O{f%g+|^G)F)eE!Tb|=mH8n%Z6X$|&zC84-NM`!z{SAw}n?oXv z{J8mG9f?~?0bgJ0w~mV9Ma7JDojk6e^MEltRPR;Bt{N(pBBM-N&%~p6UP44i$?Ft3sCKO6NjgI@Z1eB)Z_RAEq%2PP<>xl9djHrvL;d2y#qC%3_2*N}vb{ z4MvDo%py!O+h~Fc)95gwhL;rN2OM_25HuJMXt5<8s9o#``>R3JAOD=;=m#Sym^TU^|D|=~35O#yBb| zjB{(XeK~2aacBjPl;1)tRl4FnPfFNYzSKHDkCc+kuKw(gLN|bK!!@VdPCgTg!{oy; z8PCo6j=Mqz+zSjIgz2kRly875Z-V0=mw(zxv~fWra`9$s&UNqSLonEMsM^}@A0J2a zD!t+s)yG$ULPj$qcC^M9l$|QoZe&DSTt!0uZqA_(yKK8uYeo#kgT60p&70Shm>9plFyY_CWCZPok zU(agb&8|a)Jzm<>{ZnfZ?p|)|`GG45S!opYxsnytAe+d~lOF%Rdge?=ZX_+c%8s;N zFpcGccEAcqtwak{<@tqBL1DtRrmT%EwOc`a&pz~FQzCDC9gmvCcfv_iphR` ze^YmY59F|)lbt;7E)x~m{`U{KhXj4?eB?y1S!usYSoM0FS5tqu&8pH|gvauW#;4j@ zv2M9qaNa`eq6*jHMHhQV?F)V22Cwoo%W3hZR7NZi}=--av^Y}cJ7l=LFW&ioY>-GJS zSt1-M|J@%3E0JK+D|PNKK;U{-(O0xR#lQ#)OLX5s!P#BY-L=eWF*{keGblFmz}Ipt2z zifAqvAThdnpdN~ zunw&94hyc)KnIW2)H^fG1$V>FlG1SO`J7xyhfFf|+vj~%7N0`frrr%ZwU~&B>!r!? zk-cl;0`-d-7J_?7drAx+l0LSFD-1}0(GtksMY|}s02PHqL07eR8I-e@+G+JnA@EDMe9_?EYlL$E z0mv(gr6Maww@*NNf1T$|!HWoE^G=`C#}NC5j|Hk>sJhcl$4{r*5wVaWvw|+8h(Di{ z-gHw!(9|DDRWY&HBi9hKYTsesKfgE`=hG34epPwI`;!6K->xX=pR>I7%(_r<+0>Qy z&spa5)Mxom?r(c_wlwNg6&cYhIuIW$*D)DBJpN{L(IxY>tEPqHHLHMnO|4wl9e3=tM} z^9mB0>Q|eXHs#NBmEd-bd<=@?g*VC24AVW=AtF*+8X&WKDJIY?nmMM#J8X^_MD(a_T!7wN^fgK7rgYL<&fJc>4#vNAPT3KOS zx#8SrP7?SwiJs|=5r!Vj5q63s0X9JSG7i9MML8$G*Z{Bb5(3~~yGzOAubRdPktvcr z#u*pSg&v=5&_dg_3ioXL#h9j|f}^d_`vq|g|0;r0ugWIhD_c3YH;=h2o%{#*^tF|I z&N&6F>ecmnXaQs-#<_KU{`Mcbo@=m6?yYv;XG8P`qpCN;SE)|gZ`C!$`)eId#m)YU zd4ADt`u>BY5*&6i=3q4fv`JLJuf96begntUKoEubsN4?ce#CZy6=jvRH_970-5;G zT5M4mbe44DVeie?4^Tt6#-n#GU%6j{dZay*{aom@0!aBL=6OiZv39LEqxN4Or>W+R z`0uqZv)=slymOS{b@%LUq8KPGWn1h>EYb&(o)7x8+}ds-?IKF?uiU<1E{VR|Nyi>B zvUe;t@u0XAPkodd_#88~Yp-eS2Y)^E*(WwW(zNvO56a_!o26e@KWasCYU0a4JLB2EE4lEgyM3}Qs^X@1)YU)q z80nrev6Q@en)K%J_r<=L^Y8zj>o&dD|4_@MvPTj{Q2kY^P>j)kKwf@7ZdL5t(BLAIYUim73??8KI>g# z^2ND2uEnHEPJTPyo6$LW|AARex|C!5)8P71QsP=DMiFy#V6x6)x4CJOXXf2{VejNyerf3%b@e_ zb|?SWZg+xftSg&Pj~mP>K6BESLS15er` zu!dIbzamm00u4uvz17|va@8MW)WB!W?^Kkw73DkrDz;{c5r0C7Z4W%+zt2W&;_lun zvX(KpX2rFYdbA6G9p9E+HVUm0dGe$A$v@#qCa~YZ_8&v_gVbSaCk|_>iiCJyP@C(; z73Gqd_V3&t|ESjGQnqRdsg_D>X`0k2?#Bi%ggmZ@s$wAJ+>_ zxi9D@8XWbz#lgpF&SU*N2W;6WZ4O$4X{ID$F;V z+mBze+h#liDv|l*3X7Af^5WjK!1Vu47-Hhm$Y(+0@lG(H*}>yi0gdziWIDLOSQp4s{nO2U6v7FN-iS!|Zi18x0{c)l#S| zT+dP_Oa$DOveUZ8-aYfV?YD48i7&B$7s}QAB3GK zOuT;rAe;l2H2I|Y7M?XOW5mcH0JK%xk)WF&K8Sg%Rbr>lH?wEamWPMaKCT*OJp<_$r^kJyuRm`1_c?5`WZkb0g|Wq~MQwsrLug)9+{X9Y2=^c>%w+JY6N(3F%E)je5(T zY7uB3k;mgb=wwLw3yQ<+PGD5zEpWAqjU&>%0QGIzaf1?LY%*n8=lTd+*zhbh zN^t-tA$5rns8TJLD`Vs(>1#%=g4yva6}~vj#>gx#_5PcB;}l(c_T>XJAI@b9Z%J5s z^2u9z`CJg=T`s0eP)P*9oj0UF%`3Q)fq7jh_f`3*KTi9#Xw^yeHmwKYRanuN^X_cdiyw zQo~8>E~vf?&-}YyY>TQ5jM*fKJQ0iz+B52(E`RJa4QHwW7H)1>D(!`9R8plVE#=b} zy?P}eSOL}4(lCQuZ{c8=TZdSYwLJz1asB9`Hh7V3#r`=EWy^BL$|>MiGi1I>prc2S z5s1nCv8jSZXl2U))DV2>Rz~PQ;b|9@Mb4(A&VC*JqUtz@kM(5(stiB23LO&|O5-cx z1b2CV@(orIEV@pvP8tE!bh&lIXh9a-YCnbRbEIf8CKAZ9UwtCkj!c0jXha4+osp#- zx9r9Pd!`nPVEH742{%iLH93N5KqzbhPiO)u3rA~J0*Ln&gKd4ZAQRJ|+`{ZGY#e>N zTG7_#YN1+@SYb>K?Zg)c!;uGBUnJRd^#__1ki;V*bOz^u9%VZMN|BW_Zc;ALBS)Ez z7@ne`A?07A1jFaUP#!`Du#eue=uR`#fG-cu*k0gpIZBk@Gn#{VR2Lph3<9G85^RhB z!~_UDdZU4fLXsk>H!;s%+|D?DI>n=AlX_Lx1eG=*P9<4n1mb!uzygpXY$Jpx6amc3 z>t$g=T?vmiz!ET~!>DPViIrGaCV=JnD~!?jIHz0(!!isBSav&kiIpL3{zgBp7URS zXEaDME0jkkjHQUcOoh9=ww*G(=Sm!npP8>JT+0et>cqXRkf4Qzfy|ow>J&qC5?I4X zV{mL$v!g{s!ki4&@7*k6N?1UGItk^sy_PUn=`D>cGyI)yo>wqnStfIreu^10`l^yi zRr38EXL=zKwP&O! zh5>zP4rmh-FW}SA4((cd63Unl&$x)g5%u_r!b;KwRkDhbaQ1?GlRF{`%esf2y8l3`(t_zbs^&}8LTTlEd@f%JG4j?Z=%nG2UU@UW+mW$z@y%H!fE@&veliezV0;AsCc zmDe(P6UmMZP!2`d#OCV%64`o#3^V!;tBigIVi%La2rvsXHs-+zQ?^IILipHW!uds> z(X^|>vE506++6k;_1`yjE1we*AnYZ?!9&Gy^f2EmX6qwAW(7FyuB|Jx=W^HASZM4N zRP(PIz(NOkRQ(ZwZ;Or@IJrC3U1V`EAlr#(8dhqLv(DcrTcC9XpUTZ~X8CG{K+gUO z@LsP;z~PqWzKYwRu%;XI0GJG!!k$2KPJN|mpnJ+_w46{nt^X%&Nc>O5Ab3*`UJLU%#Q-MM>nfyjD{noVOCm zDcTijs2(5of@x=<6=4=YIwG?nlrbPw2!rR}bQB;6N-TA$xvWUDu=nA!r<+v+4jAz^ zdhagVYx3n;jbC3f(M9!~ChtM_BE(F~*0&~T4MbMpT8FV3_g`n0o^02l7#|32@zvkA zGGQZDIAML&3ITr7K!7Ul@F5?ME`-9AAo<(UA38FIu)z_8cB+9H7A*E7mhf=!$G6C; zi#299edKph4!*JX1E~B;4{2$PHwN<*IMda8iAPs{c5*V+Y&xQms^xs*PAMDu|j1dkMv6#>B&^6?hZ;=+q)IkC}@h5Q7wDF`MH1XwMyKTLvUmO_OtY5GH{ zEFi2P_Jir#<{dna)X58!$f?2_iFv;QBys~K!d>dIK(ulIKR}MbTlS_4fIcfArT>zP zy1tVLiuk7>-lq-v`x^uy2L7?`hk;B$PE9i%x-8*@>r{@|SGP2Dc$q22ml0o!gbfa8 zjb-lC_;m+?Ur$01fXS~rpW7+09QdXRzy#9W2!$EInBNFHi>QEr9&|s#Z#eJ-iJS>y z(zF#HLMh+$7ypE^uTAGK{my^H{nd;{)v*r}@s{wPY7~(RyzYL&Z(WO4dGbUh{l#~A z65%t#y4yp8?QeR}91KE{Knq&*9r*gSvkX+KC^6iL4m5@dJYu4XfNP9I>4@JF(rG@T zHtIBJfaVN)J$GW{&yhG2j{mX~RI####15983wH$4**#~uPbSa+#?r@|whD4&wpq>gc zVNlV?hIcT5ehidiYg-yK)SeMOUu-20r?Ps10XO`%}CApz|Ej=cvXBtd@|8a-%M&>G1Q z>y(&*B`H_DHiAv6Pcs03j^yzx^=kF`&V+K;?J`AHicHyHq>S9F^VGqBM-ZdP1=8h; zCP_>*K3zAONDu>d)e6G=Ct8Tc!!(>dBfX&L!CyvK#3BQA5D?m30N3{+!=MVWR&jF z(qn>cRc$8>@ROLe8Fa?IScq2U>DP?53hNdW&fTPd1bTBN2C7mA5z_57HVgFMY7|Y3 z48!wDi0X5U>l;VRxJcF7s=y`A@PF+}@6>AO)I@(*%#j#@x2sL!crffAh1=?yimmnv zW;Uy;34NtyCeComp;Iq&_){A=N9*ips3+Ea88ANyFgaA^VsNJ}=|7N=Ywee(!<=SWNDNHoe1N<*Q`fr~1Oi7hl^ zQI8csFr3IiEr5m~8VtY>ieYeg_U!=R2@8QNb3p)4#{sR2wd`>K83#r}EJWnBq^`io z107aObUiLKD#t#emtO;urv&>_7ik_#p30zM1vIr7z?Ux~sMm)>P|Q?nWU%Qr-P#*u zWE+-N58jc+>@s}2*~rM62%zaZpClnk&VDMocKrMFCP9a^8>%qXB}z0qM&9%Uml42< zIV?1G(K|^7m7mLZS;PQV5hQ#{;i!;6AuEk9y;A#&dzD7F8Q=C2*v)6d#C|#^{6BCqv7Zc_Kw;p_I5h6)(QX zq~PE%x1#&xea*~7W=u;|b(xaj>Tiz|7W0^_eKyk1pRP?bKW&Lwz0ezN*Vyo^(&$DOD$Ri9PlV=x+Eka6Sy3KZh~2zCRxxfz}m)_*#l)1zsp6SqG zQ$)`c)WVQy`>b#8U{jo>gN$!zC!-1LbOYkkCyNOI;am`EH~kD97;Fcrxo`n}Oj4Rw z)VuLys=Hb^KwhTYhe6Z*9S~*^G`cow(}bU;(cAikX6pVu-nAN$a`ED0GoKE+-wZCJ zkS_TAM^R6QPs-;$X6k!OA!ORk%gX;120}rC*19!7Xp;y36j@wZT#Ug9ejLXl0&v0rGy+Z(T`^5D&2YesmP{Uh zGtuY)OeQoOnGUs9I!<=~b^@o;4wb@%6fZ!otgK7$?@4i+$P%R<;i5}Cv&HbHQc)js z?!@R_!V(8h5p#^h@1t<;=rTN3F(5=F%1Ekq6p0l~QAa2x)rL7f(=ou?($W-50}=lF z$4d~+v49F%CGcSj#DDzo(TIqC=Uveuh^YUA&NHh;Z7cA_DT&Qw{d z#nbw}E2xS^Z-u28?^s!{rSnsqo{;i=lvLyZf{73&?20DXQXq&;D@>{N*pAq-N{Ev8 z!o(RP@RL#IejJ7&q_z5z*Rf(apwH=t*D>fcN=oQT@TNsJ3DME%bsUWq#>aUzU-5SG zj5%})$0~7au0Cxj$1&3c=J0fz`_8@XQQklPaK7w`<~A+Hv6Qf@-Yy@s&b~c>cBn73 z6AWhPz}IlPv@u^ER756OjFJd2;Dhdr6#e##KRMv4g(GtzC6uqv=Zqn}^WlGWpM zd&vl0i4se5<36D&noBA@PPJJ{G*K)xIgR5U#ty5#3ZDwA_!Tycrk5I43^7hH>3CL} z94CC_*H>ADwv%E$i(~K&3W_eckET7cj~Iu+Y~D+hZBh+CYjsCrU63JJ+F=8!69PCu zLj>j24+J>QYR1Db%w&cP-};eT#=sq6EFB2&`>VVfM(7Vgif&aFqOR$h+39E$c+r`D ztMQYKqfsBx#xm5Vq<9wuuKJ+#^hp+#zKyH7x`L5ff`WW?7y_$lQ(Fh?52_WFq9yzS z=?--D>Ti?<=A2BpzZ*}gq(pzuw6=Sv%U=ihLIN66h zK&#iF%V!#w%aO>Wj#4#!*dZ9R!g{DEZ&do1-|Nyao*bL>?%vBKf&CE+>p5i*S|Xmv z_?oGeZ`&iS;-l{ri2IJR(HQMaZ=LYDcG=h8jmNC?c||kYGU}0-0?81)<)oQz`YTgP z8c0s$G7KXRzo8ThU0(eO9aa$^o-}CAqY0h{f#ew?SHYy0wKnF`8HwHbR*NAT>?#)H{?1g)w8wg={*`=k7~~x8x+|prf!M zDLrRsjdr?|)HZafBJwf%H&K_85o}P!LB_K3UoLNoX+Ur| ze_!x2K*<8?Nu>JV&Ph@NQ)vAd;BRBHU|_ypuU^pb0oo!DUF4KtJVhdpCNExd|3SaeJjSgy$=1u^q%^9f7K#sG3hk?O|SEFHe_jxz<*5}l0R4Qjw zCx#HG_Dac(y~z64@%vI$BRmJLY184h%WwnkAg#v(u-Y(bI5tCKvJP7;m9Zs zgKRsu-#{{HczYQ{yr~Ez@{4K36AfuJNM);t0xL0bpUC3k?&11gYT&C}r3K@n!<qp1p`dFI7Ynm|ZNMq|lK527??S0H#5>mrr8Bz)B)f@yI+Q zIvlISrYs`Fl7h%4JT8tC2OF{|%4+3UdfbN&4`gK^PeRi95XyjfkQL|vwaQlzIu_t4 znZSmS0s$KnQ={cYRUKb^)2CcrHnFzXF##XVMRO89>;%TFOejDzM^wV9T9w+{a76pO zSh8M8Q+0_<;YYq*CeH$eN&*EN-74 zYZYK1Y-#?HJ9s4EE)K4Y7EBkYVf~?qsJM#KwwYK(pE(Gl$ANh#j(Av%m3)#KCmHf# zsi6TU9dG~IgOb(nkVpMpvrt#Y;f-da8+!S)v)-^&fuUV(u_KfJ6VfGnO0{p0Tj~IY z*r``zZ4)y8^wE{4^ocFDq6_64n>0Iu3jQ!5j&8}peQ}=eINXTlEJBr;-dK%-Xak3g z5_+trHVo`Lt;nW1-(yWQbq`v#vKej+D>>RkSoKDyPrVFP*mQ|}rNEsao%&WMa5Mz1 zi<*^Lw}}jaI^NsU!P#~q9bmGKb+}$f3Qf3a+;<#wYDaSfJ+u1*j)~N*c*T=K+2l6E z3PSBHCr7ay!z*xU7xhHXS1}g&V62!5QDOp-xwL>iFoCDP))RQRJrw7^9tivYsRx9Q z>OmH=V4e7(_VH?eECl%vr}NXJ17iGPQ$mFSfPeu<**FFS5(1n(uICC%AoZ_gS zI(;-k6{8*-Y}BiD5b`|!omo1=l&iIJI)GF%7?ADtHaKb$tlsR9)O(9<^_EaQ)D&b& zBnR;#Qga8Bz{tqbIi2?3`cYTwXcyzevZaF$Q}_VKJW$cW8O|Q@!S6)E$hvy*Ol<}B z@Y;qBO}->wjgi0G6q^&nS=7k*n_aV)MXGPI_pbyW>#`0F!QW#E%fdDO&2@zs9Hc_42Nb=8jPWs>+X`YsZ20{;JHFelVAb> zX~mAUPgZC~Xyt*zqAa3A0i{pq`8kg8`Ct(tuDI&Mru>hAI~y7b`b5Di=2ad+n>_ng z+V`_5(dE82ra0zqk&Zr?GB_JE1CFkW!=w`&7;Z8EH5LOBO$9*Ru<9W}-C&fzBePAc zQ}(tny%ci(tMBKHjRpA2D0QBuCNv<^bj&@Sn$6<4N%d6&{tHn~s@=}l!Jqec(yvHc z2<>LEgoL2ANs(M9s5&IOMxs`^^UmV@r{O}6>7>P+(Ft~Fb+8FhIN`EZ{{y4RRBQUL znkfhOm8Ve0N$6Qmzfds_sTE_5A@67yMhm-Zm*A2XrtM;r-gxzMoC>Y8p%gZbq>tGo zCu_2zFe(*>#p>~Z@*=nQcsnbx40_5g^Sv*-HWMs}so3rg($h)@9g!th8T1qAs)Qc7 z#oc+zFG-w@XT8;LZHTm;o^L4Aa)RC+4RH~4tE79Bf9yM9Lcj?eyp*`@-Gg}x+ znf}zxTM!c$;?mt+GD|?Dqgf@`9RVan5AMSPaIBJZfVbTxLd6Bq3fJ0bd87L~;-J!g zNtuLu*mf%b1|tK=<{m*}PiV22jvj5<9~zJZ#I2h6PZ5Z;LHS;6?P5_3=w0;LGc@yI zns$~!asUG;E{a8Ro5fiGDB@s1QrZYG-2WUFMUr z&S8bE!8yDDOC9rJ*gjYTmSTYS-Ha=y@n@} zH(kczB3b=gy`vcsROXhDNf}O0(HTpdhI_N{yU9mw2b>(oT`!EuI0bcq`HL)3O`E1X zwg~_;1fM8JTj0C6xWAHN1KYCs8k%Z}Jbu~G05o{=BSMN#cb7G;EJY9jV}NAl1a5+(Aqs7ScaHtT)TKRwUPFGWkEU zrIgwo+J@-Ar}5)O8L!8SnCi3ST~RQfYNt21FT=btW*cy0s3W^-!M|dUK1`EZEJ{618=97EAqcpD_MA80$M%FGs`drq?9I_=@SPcxoE)U&tyiW3tzMXN!tJHOAI$~@XRb>*%XP%*PjIt`_q%#ZkQBc~5R zdn@#UO(TN2HyYqE%n~Ua=#SAE5fKHnQliZuA35LbZkN`QV_?g%xVF|e8%nhci&~17 zHbz2)XL&|x{G!~)j^5GnHxY<-GaV5o3FD0Nfh5=>$E8yM^xuj}IB+Bw`M}VekZKpb zXMIMRGeBSiPFQH{K-L+e7V4eV*y2>J?bD|oX*ymF3`ADwM@`_C#oX!$^I(7R;SXHB zW!7!h4X)N~GHVBCdL`~L$vYEX|6(iaGZf)qFv%BmT2&g4Ltj;fjc_^jy%px&M&zc` z$H25Tr1lRD!9io9l9_P86Lf}G{#QbwYudj@EqoJ+DWizOK#Fr$* zV$|dWF=$Y9{l>JcnpxIduED<>E|0%pG_O5OD$F2N)sSi$i$78m)*7rY<1qd>1SrLA_6 zsnK7K-izt_9$$&b1qAm@9{~|H{!!ne>mjmIQfs1t;nzyGj`w&r?+5qMZibWGVW2@6 zMD{3lmj?P6371Kb9mG_mAgWu-g_Ve|9>G63BE9C4Imu&-xA3(IAk09<>|GEY3jz*M zI}fuAI-^&8PogICL<(*rA7EcFbIzKE#qhJ}Vw6%p0`@K@_YG%1{TZ{pA$#A{-+}NT z0YDF?mVQ1%UbZq*8la{nEf&SAu5D*W()vgJqIsbuwUa)8Bu!POnG(Kv+)w~CPa4vL z`MCdhj(%vbAW$+jeX2G1sXFMB8Jg7K@iw#a*B>>6WW451xluOLPe%a)9U5oW{pIJc zA&wX<0+*6xu4ZQQiKHiA7U>SmX1>7bQ#{wb*<+%A+e?UK)hou*RqH_dO^>$Q7Z-g5 zIF=smeAA;RH_3{<-IGexX@XrP)z@jsBi*+QsRz zE{oVc+Y=tdDMhl=i73ox(*}z5L)GE9@7o1`j^t4z*#sgO1w=td(W;^eZhdQ4#ms+(albSBFsZSu1#93urq2ZfmPl6u=Cl-HTPJjxb@ zdJ#oI#G%oe{4Y!4LX#Hz{`*E7L-^m=;K-vqfkEwgaxp|D|xi5|DJG9qkXg|v|aQ82xY z01)&jdvZj{{4q%dvvr0tAwZhhWT?iVE2k#c>TrV0w!Qy1Br$f_yRmvrxACw(ZdrPy zIi08OSP_)4x8`Y60E(_}`iu67>P6cm!}$9FkuS=0I!p^O#DR{+aU#$dZ6Up{h0@gG z#m1zNk?acfMo$S0hXX`M!BF85>`DmiqoctabOU zKV)x6t5W8xujbTAE)U&pN?cqWD^>Yy5rqGEqZ4rvQ^~`|rtGlXd>t6Og0udn{95u* zr$hnVpi|xvVm%I{KqP(yT2=^h+CldsO(_ zxkegWaokN76C&jH7{%(+2jwRQO@$+A+CQDuyb~SB4kk3R-bQ1*nQ@apQzlB>XJQ}T ze5Uvu=o^kB`xLY}oD3k{ncz;>u>esTw?gUG1%5bT5=^wD3R4gg5<|I7Uql4c{^Msz*-WQJ#7}VNr%#$Xa^kRc z8udE*sM<;*aH|7};YpDH)NGTgQK~*{O)SX;xeDx#`mm}PQ4)dE##mHi8t=QKiSw-_?I~Mj>U_4ciSW0A^y8!cr~d3gLZ1>(o2Y{7xW>j-_f*=c zh;);?9}-|+U%KT?A;Thje{NJ%kQW(0O?yXYH*X@Oj`dtKICL?0#Kp;aliTvrUiB$W z?a72+YR)_Ls5!BTlbx%^^llY(_pXYTDu!htc3Z@U>1d!zumGt2GaDJfurIu}qT6*% zh3z4jpWV_r5*xa^Qh3Z|;hv}3bFvkj@JH+nbeB{Xl{c#DY%u&jy^LxdeoaACvFk8t zhPl$YaNAH2D}_}uwH{)3nlsPvbVs;fEsl@3E0kl8&J4xpmiwf9;9gTRU7S7G$~>1A zaui>J8Ow5EvsK>nRPpG-b@fiYKTCSrzd-{uM9@#)>jxFQ#sYu^#{YM6#Q#r=A$rte)J!Kv2p{$z zwjPNae;+xWSC840gGX8?>AE8mxCEJ59PMt0O8QJ%M9xxdQhxiyHqzy7PjU4;ky_#B zmek8wd)Z-r2^)_qj%Q0PU!I0Fi97ec$WYxKl(T0gB?MYk$cV4rZmM00)~s(lSUbpZQ;tQ&54SF3U90|Y2R?&`7b0;({EWi=kEHyf_+h*vpY#I z$T+b3cCW)~-nS^n5qLCo7w{n6MeB5|`lC6pL&o$JnQjK>J#F=S@{eP|w_nT5W}{YI zkSc|C&y#fvFZ5$F3^rUje7Dsi`&sd|`Bis~zCOvQ3h4KZtW!F1%?s2Xe&qrIgaBSwXS|BpZm#q;Z(q6Ft z-r$YSK=cLYk}=^*8J8MtL6A!&#q)JBlJfh_Iz|~7*@FHLef{^$5RHgqX|5wDw!84x z0bdZuV`v+pS(joJ2$#!Pm;LIpl|uiAt|AuBFP*#m4DkTz?yL9KuOH;(nP31(0h(-V zRL)+(d|QG)VobAwAeIFeyor`P7h4u1U(QW={$Z+o99--<#_kgoEU2XQO5U$rR?4iC z85?C$ZMX`r$E50ikC~OQa{bA^;D@h~y+BFe{U}GG3t7HT#9uZ=zurWQ&(qASQ8*c? z>{l(s!F^)BM&G~9>H3&i*4Yg@WdyUDBnklUt>rY+=a<$${Dy9ov9p?D7#jwEj$!bQ z`*v@1u2IrXE7;c8`Jg%d>*_(|rQz*f+aEX9x80WB*{wp8wH*f?1zF8qS7UBM6OKfI zsf+KF*AF*7_w=AotlU%g4-nxwRXZX+;#V}{l-<1z`B9#?|NHD+iLYI(G84T@;jdTZ zE+l?ht}P{U*w+1~G=@vB7E>e7N=j8Fa)#zQopvI!1b=KiM+83FrMq^vsz={MRgi4X zDWLw&F=6<3&E9NX(L(8qyjK3*Rf)UkAE&-Q(QP*?c-!WET|lmGN6M(v+!&KUuu7Q;hE%!G)*O7y|8VsCSk1 ze&(E*qP5v-YG9P^$Wk6Qp`ZNuQ%(FAr!3+jlWVJ~pR#9t-0_)SPd{BPmG?PxbJ!~2 zjCu26$gO5=Y1U}BPjYwMWX=5T4i~0AiCAYI)4A_?gHZlb@Q~yFXV+8;GnT!*KmPV^ z@Rc)rs?+2*Rg^Eazup{~-gtHTmtFtEFqYuDSaJDuypHeQ<$knppMlQ0@hwhFGz8Bk zE$9=8=tH>6=)5|PHt$WJ582QfvQyLIqeu|%g{pV3Q1hzjySO=#)0YVcy(}LGv-6m7 z@>lGPEJ9~7?Od3bNFx^fC-J(u?&okby&pifX#>75L&6sKGI{cQe&jKZ(*z#e9EK2B zT~^cuohQ(IaHZv>jth0=pW$%r>T0-c{5qx|Q6wTbSu$35E7OTS@Z#FciLuA$n; z#9K6X)*muizX;6k?e?1ccmui?Q7GJRH&VUs+nO zcK3}38KfkmX<;C0rgfusu*87YW3A*+;d~eI= zOM05(aQAsyVKDb>m$5Zqep82s65^R-N1tcS%RMfl}A78;+>PXa3W zK`kubsLK*WZhzESWq~z&RCie5DOW$+MyV{WPll?O87wTD<+99m0eE1@3xn@OoymG;A-8?JyeJ`aP z!@oih(<|}*LS2x4tfy@BUa)Iaf)yFR1<^<#nA3Xpo<(8|7XN{&kK?c+i~QZY3pKaIvXv>&hoc&^45CqwgKC(vWI zG=y>eNDKTGTTjS z7k%N8O8bu4Q-qdxz#HU#Ur2Lz5&g*%T_j5q6J&?UD^uY&e;Sf7)tKDlBIcr_!%3FU zK9)e?AO6?xCCc{Dj}@3{jrxr$KQ*8FVS4>0NWnOiS2$N(;IcnE*?06$x6w5$xJpmm z`u;W6@~_LbjV{Zs4ABz$j~$2e%|`k#sdy__0+RaY*yq{$CdMDR47-ftYA)^War`ZZ z7_e!+jv4+tyi7>KzDcY*w&caVTxlHX494j1#pcC=hUbYVY&~_rJ9+I@^(izY)5RBd z&l&oq&4g62sIJ_A=I_s+;!kFA?{+r7uUf~Ri`#W55)@oF3vPa#SGE6WoQE+cv`N~i zlcs)IDOPdDEMDMLdFvqfw>YVPxFzmddR04X z__3*{l9!!xuc<2hGm1hr@LU*d)+j9BNs-rn^+PfK1vzBHpbiek$mN#jC8bM_oTFEA zl=L8)64_E#3sM6P(|>>L$evCfH4`V<;@7?j4f}(=ITwC!|7}m){aeFEq|KVbb<>sT z!R0~*SIZ~V(4kAUQ_^?zS7+JLB2whvHSX~6B*;QPoj1_nzO2Oi18t7IQ!mSIuYY>V z*W{2__li*D8D7h2P6_r*sj7pyw2qc?A2^=)emwtEt?9?JW8wbRB;(X$t3UMxRjup~^W#aG6*dQD zaVNf4*n&0m*Xqh%6Jb1e&&;WZ-#PSWhMIHqU`Jw=ZdwvE2~8PVbA6!nx=7UFy`vh* zC>~D~o0@i{pPG+!PX&9&Z6V4lHhzme<;v}P&)o6WwB^BPd7XXRHeYA0G{ZgND^t+H zl;3<`;~yoH%MKyVy^F?IdSeo|!I#YsQwP(*?{7Xc=!G^RMF$uNK)3Z=#+(^~zgRZy z#7FfM-gV52kT&>djBhb2^eVl;q&Yj(K%B0(-dA2+2Tb%_O2y8pA{qZ~_@aA1;t1vd z%k&Om|bBcvGDG%G-maf&3#h0Y{{yXYe*(|!pg`VUyWOe_( z3Gw7b*T<(YSE~zjE}MG{SBNkv@aVvt2X7uga#iXWMs{P3!9XUPHAQ~=pY8^)(C4>1 zq;4Fc{kFm8IxmwhG~;vFqPJ|qhB@8yYXdH<-mHWjckqXB5I+Pv;E``w<`ye>AgJ~4S+x(98gL>*K z^7JDS9{Y;ZHQtLugUi2#FKP&FGmDSb8o0llSSEa%Y2&rZFtQF;s+k0qaawLU-i&Mb zbG^B-I{WCur`PQgtH6QsdUuk3X{#w1l(l7<`QjXx%1St;2rC4(|I-pt)fu@o;^?vc z)~SR!x1m79KI*-5ikGf8#jGsZFYyvB;>o`f2We=!QH5drl7I_ZAr6}c;Rk@pvu-Q z75C2h1o-^%F-QNPHDiKjAm^v&;6_kKFhuwUIulmy2psm}xnd$*o%8m1jTw{yfG7+v zeD1gEn#rr4PXVEJR*$*F1c@7lWlZzs(6p29;V-fIZ!IPxgC0KUm#BS2ejd0#2>dZR zyU=!4Q_Lf)o!X7jG1@Qr&m%gbaL7CIS&#}ba2S+TAnz~0W<$?WO!#f_ZxZ+{@8o5h zrLDNnjMF;-Hkkt5zU$nmLkXV8ez`=^A09p9t$KU6!cx`fm|N%A z+bn8LTFT62d3&<@G0p%j_U>yjV+gGG&oNu}XOF+j{_6RbN%Ad8?%nRYm4}Y}t;_>M z|6D7VUe^_do&3qQNs4B$OnG550Bi2$-ow%5W>kHys*_e0dU|d6_wtiu)q8=8*%K>= zs zz!9(9@f!|SUx2>G;#=hlJUutrHEpY?(>o0G(ah4N$>FrRSjVRwNjh9`l-hC0aMS4V z`1?6SqiKCJS+JXid=~Cy))p-`TalDy?J_uQvF)d&V&#= zUrVxRVCw7fH2y?}!P;aIfvkU&HQNNZjybr=VMfhPHj)Dn>mN=sLRK_RCV=I?(|3`x z<3}SOF9%3`Koec9+nxd}# z1UWq~>6&lJiTQrKCz=;~$JhS3>s>i%FG@d58CSwQIXC(RcW55|@4TdwcnOGc8u&W}8gW(kmqquTr~CKUl4eJs%`If0C( zy5Qz(YqbCRTk8L(sSrPEDr7nZUW5;451S7wk5rHS#}<^2kBzhw79{IOQcqq#vE>tJ zs@@*OP0~73c%xH^K5tHBKpI_`=yg?h{71k5I}Pu%*Hx$WQjq1*XLJU2K4V2m6s{2@ zKzF$n6A>>YI6It`&VUKjdrxNg`}T8&)RYC@oZTd95-9jPD#wVic6Xb@CyJYNRWSpX z=Ik$ej{eOA;GOOI;%i9-xm)pk&J88WL0R*?KEW=e-Yks!t8Q@kxBQfe9Ho9uVP1GO zUTU}x16lbrT_JwuG=rAFL@z-EDmEee`^h^^ss9< z+19vCWO9u4?en+yx6N$q^#o}}3%v+S61#u2hVLy8>S}GBY{g&PEzckx{-hJlkDSsY zG!srg2pXECMOoO(jF|Bxq{*;_6m9pX>y3GET zR3tTTbpBcVGZi6!8+5(dB7b3;GdX7-{I@1AzdIh)3I7j6{@6FctcU-J>|fG4g*ucR%t zu8hJIZGOfsx1ewzksT5w>z!c)u~d((SpnvQxR*rYcX;X0zEH?xQtb1SyP=Q6Sp{Qn zt(#hvrX*)@;4hN;;s&$<;P6%m;f(A`p(p~{y29dB2}nlhl<7c-^7l~RD3gS`zXyUn z)z7?TUN)PRl%3-5J{o%-T>jM5pB17wGSBr!7M~e@Ou!R29D|u$&f2LXX9`V(eD{}} zONG)l&l{8gDPkHNYgSJQme2E4WX->Sg)z05)+Esszxq(;5>?`43;fjmM>H(;6jOI) zR^6sX?#$4U?edM}+xGm7xQ)D9$>0nPzc@W51A{+qQyHEKkT{>e0`@qS&;;N0wMg|B z#_1;YHpOxI1lSu5(=XZkW$!}g7me;t4G^jJw=Y+2Y5R@%7}!(~chdG8H{`AdyEhQE z=&B8e2VsY9xV4`hudrB)2$Rnqi{f(5yT~VJ8_K%MiNd+4xR{>bC=ve|*VVZm5nSwa z=Mxh6{>|-=mxrX-#nG)CcwivQ{q+Uqhwd8+uepU5aRTM-3hp&F4&-y&y3La%caPJY zXC^hzX6m#058EU1y`5;l3B0}00S8xW-|%19xWp+huqH9eg;oFjls`fAgSA}@Edc~Y zG8NTMwvtEl!aoqe(`J}x6#hYj1U@4`7L4nNBG5muNEK~Ap?mfP@hQ4o741Jz)5P>E zK1tqYzLchqmCc-j)IDE*KZLFTN3$!CMoW+pG2-Si-{vY*)U%gvO~lNk%#wa+{lLV+HZIx{zUCmN*#6zbxT;e1rF|ExSa`iOaLVF#AuEa*Lxop6@W-<6tm;aM^bFN(PgvJ!GiKcP8}&-SmU0SPoT}ZO)f! zQ^SlZGE)mPegDI>m)`??#oG{Vk{j@n@XY?Gnm%0nUe4LADk;X_O}?c zm-jw)|MoyE<^?`M=1qT?=ONs%m$M-|o-flGmD|1JYH%%-dlsxEw%i(8o$>Bv-RI0_ z8nB>(%sIyA`%Zgaho1z&>q2cav)0jJV1lW^dlt*pn8s%yv?xcTbBUYPnEE=BUw`^^ zw-yRwi{rr%3?6cWj-OElQfHUTqC#Tc#5Frhfwjjx=T?)(!PUSn_jRlofAw<%{-`@?`97^2R;=5XGtqGKNJG4nszXwfAy%; zZace>X2&jsqI$6Odb8V;tX^RC*rOl2@iPaVQW z&VGH{WpmmVwp}}2AH0ietenMr#7mToekJ=oFhGi1!)y@hy4I_>)*ErrPI|JmrD59f zOMYxAmk~qw-}qqhCUZr0_ww1DkM<0t%F(6Go`{&ZoRTgG@B6bF12(5umCWzYU%TKp zXkxV7p1VDZ>2>#K-T(Z&@?fV0ug$wX;6A5gW~`P;^FuJ!D*{&i<(OA&GKfbG!AALmrg_X(RzRdCr@U!N6XjE#B z%iTW3X!_@#80^!a=au z25i@XYBCsjY%-L=z&GbY*_yDix}(+7IxpQaM9cc_Y2;H`%FWQ5r9fT3EU#HUMMKS) z7&=~wPz2Wu+fR-cxQyN%WONBDg^vQx&el5M_Zqh(>%=ne+cotP{lAbN3MB7IBO0sw z+O*ne?+n$Z+Be}){dFV?UD5mR@^(_9Znt%BeFMdv>7G!P2|71A>9UNK0XU*F5u?L0^R6gxh}p(+Bm#&sU-4 z&7o@d51QVekAaZ?BkG)jEbD@8y^CG8ZFJeTtuEWPjV{}^?JnE4ZQHI}f1GpU#Clk7 z`z2%M&h^caV|>qQaYGu~mY#cPaM6x?r25a=v)ktwRKY=~ZZW+3pd_b-+PD3_GxvPE zwwIXyJG9iu$B-0gQRS!C;W}%u-%Aw#SmMkXcD&8R^mqu%;X_`2E{;apI(0G>;(RlT zo1bU?Zk*WZu(7xd7ksm0Y`aipt~&9?Q;3)N^2|WLl_5Y4(3lDfLaDI5P;lo9UO3F zzfJ-R(4+Bp$1A}GO!6rK1(u65FuDB5luP~O8#{N$8uf4=&GSadZ5Xz#6%dw(G=ra_ zl5!5q??sDr=cwX_*kF(>MB7)rq7Au<4f9^l^Byd<1?={YNca$N;PUm4ZcbO z?G8K>`bj4zc4ec-f_5E{68KCxXAZK*V-Yb0h#KCf$Ans_8&kzV%wDF%R=UsDr7i8=A0f8(pMaczSBQH->H39ryE+JFx=2X}MzPMjRZSijvVP ztni#n2j+3`gp;@WZ@ury`5dK8rdkK$^Vcz{_L3v^WL_3}bj`YR*&cq>mQ=-yo>#4B z;Wf8g<-{s}MC8>KLy^a?rpZ#O1cn&ILB7Y}OY&wpY;V0JBpSTsxQm-oo6Holv+-3D zSG8-i-KPP0_l<2TYB_G7uXK@U&VYb^k(g(wWoZ;(vvCO`HsXv4f~zy$oAw1&xtZWOz- zG4ZPEMj%&;yk-yFW0{R)zsJuz+H$aGe zREf|A%~-wOtZ7En@K5b{!w6xNU&H15`T{58{M)6^yCixk(MiDsvRY-(*L|~p!ZF5* za&U4HAV^-D_v%UWq2aOJ6jf_sC0YPg!VarjNO(q=P^99tdOx` z-WJ^4zVu9e?oX7l@I}-js#gi6CQtIRB6*muGNq{1+h>k7vIm0h!S(FMIVCiZ6A|ey zWC;}Lrb*cSY)DeR&RGGO;+({56kz}i{V9+jp!pwIHYpASIoa)h{kNGEXJmr=1iBCh zi)8^7=3Osm*~TF&>-O~2JTCjTHG)&0e_Ho9GlI0~@e9kJ8v{QPpk$yIfKsbDNGQ{O zsuAN)+eJZoi|>9U{OY{J^)j{T{f9v@mi3cm+Mmj{U)T2ZCyH(`>z&VKvFmgojotdL zd#*$3Fyk$czrZ3XC5OfcJxr9O5nwQ&Yeq4uP7)w|D@_9(HD&kEDBF1f<0@v)X_RG?8?Of`_-Pcs@}s5m^8wfTq3|z z{Z~!h&b5w(6*9f!siz9Yr1jUZYNAyyL$g8piAObKO3qig(V7y=-?my~?2o1V6I<8X zi$I&>w3$VgS&#%J{f>{(&-*=Bv(3>8Cf45@Tq@)(5syT%XT@Uz>8QWbQ7gy0&WF@+ zJ;^#{uP+|V9>gxqIBi*Kj4uf?I0>_wHR2rStLKFxwRG#YH{Q9Zp#KgryNO@`aNmC$5TH4=k{HXWtm4XD%{Do`H%F;a7^mz5L4BGaFL-Ovrvp=@olX zt7rW8#dOnUBpMCOox{oGI9t~)?Y$#isLAta^%33G#e44U)noJ9rTi#MA+wNXv4iZU4eC|jLTZLskMkl$({MzsOzzBKkwauBpfiE6LXt{RaY{^*U6lFoIsg|`ju(i~%OyCMQ8=`=*Mo7X-*k>Tt zBf^RWgJK?rIKp@W{$Fmf^ncs}^@m%0*HkT`d=LFNd31l*{5-YaRo_|Pso&{8Wv@r$ zd<6VvHii5Z5GKN%TL!T>Q%!)IX{uD{gVh1g(PbH$_Yz}jVFt=1`-^`Y2bSBO!|xJ^ zJsV6OOccLIW)%=RX>T4D@93Xu!4)_>9?aOUD1XoO2(15=!lh<*6 zex+c`9hk2fG*y{j@t=dUJyaIA9pj~$Og`CmTjr0ttvL3UtxJQ?g<3zQ>RqvESM9T# zv$SqCqlFFVl?^FB##ou5tO*)65v(sK5NHus`XO>zI8g2)fZo;Mojs{%zeM&`rcqpn zteI9Wx2SurIU$YduB58D=gkc*a$c)4_7$Hi9jTI%YC@rl{ff+J+&$T_geG#VCuF|W zXpUZ+Nj3JMXaGm0`K3N%UmIVOk%^oIn;M6CY@(6XWhy-tMOr)<4@pG%TShv?k=0== zWFp0o8d%>V>Y;EU=oC*vTn@3-Y&u8CPc7S*x1<<8B%VKB?IbTPyZo@@s!=w>|CWr! z4VWPmoT{VxTDp?0>Q^4=&pFX{K-f-KaG==e3=PRh2;zr!BrKXjLP(lDU{-8z>l67* zN;DD5Y(ssYwH}}dp|E|_D(2IaBly_;$=9Crhvx(S`AZ#{oIryo5c+AvwW=3pNG#TrMTZdmJd^M&GpmL6nzsl-Lz)0@d7gSXY#}_BF*L}ctHozc}9Gg>QaWV!| z2gxJ=etK_yqV2`?GcoM9cV$^mWnLN|Pr17`Iq?-?Shkx+HuK3|{{W5mo!H~!Tpmt0 z^@*nZ$Pf|dxSiwSQqb0XY}GIxkCL+(`H%nR{C3?LFg8x%QTP7x*PMdgQ{3IC2n)b~ z&x5L@1b@DL9S*IwQf~&wCvSG4pWtqf&IByeR&6M1K!!c368RZHS&Gu>icP-C43PCW z>S--ER_ADLsS3}Ce6XzLz$NDe)+uy}lNRkrJDs-#&_8lmA8q7~Q~VL*Cyo7#`}Ihq|Fpa<0Q zf)ATP0GwtP5o+e@yM*<8uF$uBOGHlOfc*x6HNx*VStxW#y{`7DPAO7w@o9ndu zm0{!Q-t_*MaCd^mU-XfL#iI*qY*%zs>E^g==mFM zf|0dAB}xBn3rgm9f48P!M!QXK5)xy8b%rD+W~L=|a2bu~r8nU!PvE^MTWc!Sdxpmn zY4H$M460s$8^a8 zP4u-t6URQf=;isYG^i@PdaronY~arRuQQyWIu_gz&<%YH^d=4+W{MHH{#elc%wG>n zJs{a&o5e+M+Mr!rrL+lxexiUNvY@INGHJ0HMyIge<(adqhiFkuKsmW=aa39@Y+)fU zd`meYt|Smko(towpgXJn80aPQ5>rTafZpm~@S)%Fb}_C@A$Xf6IBU)`o@!E%FnQ(v z3jYL#37Qx<2T*xpWBd?*c~}H2^%7`m5CZ@|)m!I^XaVAJ((KFhsFia0L!GB`qEg4> zb)5TcGVl;ft>9y!=3qF>^?Q3&;BE*}+{^D0_N%Spca|hlS|9a)a0tN;{c-BqPdxH| zv1)a0&DL?6sHz=SAP3KL7w!SSX`@8;A1|2ajiv9K@23-nh>N+8x?7&f%4eO(89U0g zcI0IhoH@ObS2nztNt!|V)$uy`Gb#x#+B+DQPG{^H;!d*7Wd~MXCS?pJM1w&p{qUJB zH>=Xi?{x=$XqJclC!>W|kLvsS=jeAn_rJ8^lUrk9yzloQ)=vHuB*%4&7 zhPkSQg4b7!1fLhHbk?3n!oRSB>uW@&C0FUghz#qlt(RRHIb>1t(HP^lPUo^{1p=LS z`86o=W~Kt`A_s`TyY9!!nZ|Xqjp-X z(dw60cLZb4goHn(_kal2=&EGsc^B7shR*J5w;w_YG8t+Cb2S4wWC40!#|g*)j_r*_ z+U$%f6F)a`H#ohm&F5uykImr1*Pq^P?3DgZi#MOgOwUJoq4*bFUC%wvvOMi8ECUe3 znfWAk&G$ZV)Ox|mJCeeeJ$pe7P~d)xC>d9iSJZ8AT|PlZ4%E>s`y2P2E#XbUd+lbe%Q-?sRmPtg8PpRtP zKaPHT$Jh=;f;jPp;HI6}I$>U~G}=VTj3x6j>Jj~= zBng#*M}HtF#PFZJ9Kx$|4ksMo&!Io1!65dcUps@Qe;J*-DisDr;B4bW`19@F0~b(p z(i?CJArC^G9eIC_h)A4tJk6{e0MOb8A~(BvQc zlYNj)I#I?I;sL;2s8#KY?5xMOaXL{ptAYG8O%z#;s@1jpJS)id>6N;K@>h6k3qTn9 zvs9eoY_Z^cl1g^0D52bk)F2WM0oVZ&CT*;D9kBK=c34(*C>r(QHThKbxG*KZZ*e;k zT_iQt4%m3senW327yQ<*iF^oVBy%zO(WxPUFd7Tg8I89%s-xqcx=&YW)u0bfc5ZqOet%!Pc^&ik2UbNb z4vc;XyT*MaFzNlSs=GmdWmFoF5+Hb%;?>^eKk(Z~ZO~YhgJ1fVPQME!bC2t->mv6| zs6zn>mo)ivEL>+ptFTeX173_1s;6I}u21e%@5f}o-a?!r@PHC#F8B}U04`LFOr-fW zH*G>>!ps2yzeHfRS}-NbQX_o7c=`=4;u)EKt6v9bTN#=mw34XRH0P6(l?b5)?&lXx z!C>{3nSDZTK`vb0FKIRjRXSl{2n*nEUv2$~Rv1LB~0h(90m6XjfNx4<5yknMq(md6oK`2|k;(4~;7b#X+=pVw?5 zb$Saqa&O*URc&gk((^g2%p@uadvHB00KeIcHm&mb)U?qFk}v>(43LHqQ}ngixh1zX z?Minw&!$QbEdT-(C{R%%yG6ruEY{?q~lWFFw++KJ?Vn$EUheuG?TH zQfZEvXYtC+!S%;rL)b`PVcUr?B0i;WsIU3~W}ESK+YHn*Q7i`L*(zkyntE)BRrzA$ zIyc5PYd+n4bfOwM<^A0tCbtS)GJv96*O<_bk@K#wO(VEUx7ROLFe|awATWU-QT)vQ zF!=6ibufP)mYQ|zaG^inKVnr1%Ou2uy_10|yN%kdBmrA2@Wlq^O=bZTgGV0*c9VVf z4bixeQwj7<5ZW50hONgx7$u!oafTVUj;aum(?6cRk6k|$w<-pwP9Jv$5}EjB;I!W_ zwwl&p`wT*`n;{gDAi~gprWaJ`mm!wueI*3K3!sY>CNT-!7vQb75U4Gfq50C_0pwj; z3Ry#MKDGu^m$CDnM~OeOVoxI$-A!|z{06rVOwd~eatsStvF*{?)Y01O3sW(A`LQ=LfpE6T2po%j89P{ zhc|#XDv$2ufdLiB*&YSV{}_cJl=&(yu^{1V5DEYQgGMgFrkm$N?+frpg_gFqanZ}} z&j$CZ5hC^Vf==#W3D2~JVv)f9BnE-F{>Vle6N6&h0NO95yKR9@Z4iD7ASZ$%u+8C7 zU7+vnyfKtm_igKuEX|d3sbGAlYOE}Bl|XI#f|Yja3>gDIQ#(Mk*O0k_?3;H}e1q#Z z+2x*)2pW&)T=|81Ypo!I6`AgV+}+&ISXna-LSg6K%_^babCQj*e$RKdxLjy%P4^ObZjAGeW1+CCwTJ2-U%CLE752>oR(69JT1Fq_$>6iiW5fA~5ViHnXX)M&H>}v*HsQhj7~t z#{2g(404+Y!?EQx~|QhOdfV=9f|oxoh@&oBZ? zJV5xACToQVPTj`{GdA#37MRh$Ic);i-Y>{3S}8L}DnRny%SA!6A>mjyiw+Qv^q;*~ z3?kQFWYWOv!R$6G2!<#5*YdTZu$z}{`v&@HY79R(g#PTbPR=tsg->FmA1`Ez_o#QN zqVrz@<{hCg4;QgWb)49DD&emiV8X_&@-Hms)9c$+Q-&$$qsVgU9Cm&7>Q zA2st_S@mF;hI~%QeQMwbXT7|a3-067CS<1-sNuT#K`HKm603^XymPZPqP|D?F(P7^ zHCJgOT*hQL14*1L_WM)0tIHNJ9=%Jb`{0cHc!Vzhh*ohzxhP@~jLznEB58~hObmfA zxJisp8x%ySGV&l!kU&mt#PK?8vdiQVFepJmthzJ|zDC6MAp~A{Lp`UeCd5wUd|rLQ z(5J{wqB`9kgz|O*GFg5Q8;}$>Y5MyehQ;;<)_i zydK(p{2ZWu3qVeJ`K|%-pJ#?&wKy_}Lde8p$9CEeja9d+mHW-JfqM0dncq$`7obZ3 zL)S5_-=uXUB18y~0BIbLc^UCdoVv01)RvAxOV&oW&4o5sJPi!#^#yKkE&r1n&#Y-1 zuIa~qXdRoE@Og#C&uv9RhZF)1dp@U;(3a8RczSuX2W>yO-v}!&Z}k)*en!g6FAT`5 zqNzu4`6C}Lq0E}iQrMTza-Op=yV{e9pQ?Um79yko|+{q zG#l@j6}auV^lQQKS|r)i)y5}u{qDvm{~C&}5snPqy*}&gIhu5CwSJkTauuRWBOV${ zM#95(^D;-e#`d~(?CT+=TFFz~dR+4?iUmvoXs;LAJLV0H+%cFA290)e*$_Rj1e^-+ z+cptGW*7(~PeLHIKWFxYp~-|xgs`{3FtE{u7A_HFKtY<2cH$XG)dX4kC$ zB9a?)Yete;e6kbMV~N>e)|4Qk*tMoX%Km!WWsk_s>kV1z5d-M{OnqCVe?~Fq&%=M+zbsEQ|2rxGCH=8Cb_VV zbCf84_8H0y)%G;x`799ytW=F14DaHkWmlx6!b{Tv1G-j2o9^- z-gnt)xD~n^q3ri7N-jnIozxl|y)?)$8E^>AIJ1`Z&+B~t`|j98`^q=ZgaZ;~*;I!m zofARx;-o*tO2w2l&54e(sJ5>SiBa5 zwFM(|K?%-)Okg9@PXZZIc!sfJzJ^lpy62@o_(F8zXhc^__B$dCsEiX0qeSM~uB*p>!OQRzh5 zPmjRrS%qF9EK;k6CBwTlAU4TI{u;7s(wTF&s{I23%ZGfy4zn!Sk;_^Mo=Wyx~*)5P^FBfMOu#o*(nwEz*OqB;BECRH;(s)9S#cdZ->o zmj|`P6BULS_kiUh^G=Z2f#Y_cHTg7XaWKdq;V2b{=xPFP`X!^+ir7B3t(F zBf0O@HQ(D_>hq#w@m?_fW2(Mw_%mN{qChR=l;+HRu*I0DBT%qhQ<+AG&f*_+@wG*e zZ;ti{d?IxQGIr10bQ&@Q0VVoP2;?lj)YLv9Mo?CX7B#&k`@mRfpqNjenxtLw$#JM+ z4>TeBlrtYyhj46`)|H1!^hYV2kZqamfpe!{yMV~UdE-45l~eT_A4gZxT>rc+C(4lg zmO=eU8ZphhjI>oCk^#Zy0`Vy@jKOW8omvu9?5WNPpPDvIAieD{Wi8yPms+dbq)?yO zuGerAW=z;b%l_?LnH|P~GmCNIw##~ooUME}JRmr#E0!=Sgbxu*-|0c9a#K8XssZpc z6Eo8XBM1pY%+KQ-U_ZbKf&N<%s4btpH?`-)HCNOyl^$Fu^8{RphP#MWG!$3pXGI${ZJmTjyL^OIdR5bz5v%@k`1 zuEw?+s(_h4G@$(xkugjheD6^sCwdo4`r!Th%$nOVI97R8wW?`TN0H~y_!Asmqt`{g zK^~t8PKe!K(_uxk#_(%GtU_6VNg!k~#C6S`8!@ghd;QOje+HC=9irBDRXIr zXBMU~7h6OTKVd%(d0Iz{qAQ48ZP*?4=8lFNs)(Nn478z$5JzU5IfbC%P!IisLis#c z5G(`y^4WqgLf>N^JsV_Dm$-K!3~{Wq8EV?ea5SWaf!@qMxDv+dd1fMT|2brz8S-Y` zJfcCUfmz9*01i+uH}}y11ZYsen_lG7wZQ>FIJJV+TYmMd=rCij=?tk51O@`HE;G#A zlBg3A3eZOjWREV&vL*k` zlr@~yN(QBJ(e?YVrOMlN(0L9MUQ;8CgFFaf+Hz?9r4mEN0;Y@fe-sn8GS4$l4U-o% z2Nz6J{|F1P(#`waUo}{0K<bK4%?AA$}hQBoQ^oGthh zrJkj|kTadVHm=LvUeqnnvLDS< z1AhHg)|jX2w=i?qr@O$>BluJDSLWT=EPRVT__V#c5+yqTh*{JCp3G=01g7nZ&tj=$ zk=vi0t&NLY^IK(`a~BAt#puBh^#l6_|3?-MlGFiE-R97S3dNI18g_{Mr|=X-A>UAh zImASB9t&YYy7v;1BVXO<2uH$>5&*q-;yQ0X+L)U^VNz;{4bt)AfE_2D)H9^4fSk>g zCDz>um+zXTZsv|plku!T6UU(~m-jLj!k=H9+&J|plj$@hn&Y_aYQB`t#;lay^Y_S9E}8jmwZRTrLUi!%nuOE#C7+RS-2f=iW2YV7l2gwZA%$rssms{{x9Az4v!7SfnJ`ftL-rtxHcbd#-VT^?J1rH!qhQ?J?B!dU&PYssB1uT3N&^lZJ+Jz4}jZ zmhU-Q_=(l>O2P#5?$$}aAuF}g(eru}mQH@9@rt2-S9-j?<^i8JTJh$kR_WHfAZ~Sr zwIrS0_m^+BL(>b5z54yR< z7iP-9LAm}pawR4FSmPyRYGr_a^6a((x@erC9uVej2qu9{qJd2o*ZA{ zsXrMO2m}MyJ}5I{l&Ll2Pq;SepWfd92HV&N@E`0dh!h2ka0{^Ze}W<$isjYW#;<=@ z6gH@QJB|UxOa$lF1Vl` zvgSKvgsM)D^%F0b*LJ^*G6laF+TKGYu9vpxA{A6?dF|{LXPT>QgA|^bC>8z|So_)% zh_ktpNNr*0Mzc-bJ={Mah=)*fk!*7hEdEd!k8`08F{r@oNPKwZ6u!M z^HydVmU+C{CbI4f&()UCgOy@g6@CCDL_=m0L#aqJshj>WYuEY^m8N~*dX_~3u``^5 z_67*bD7H@l4pcGIwR#6PsgOB5&z*Sza#j>%1U<-&{0Yz}UVI!iXmq9zf0s z?`<}JK6uvz;4)>U7ayPtEK&jqo*ghprY9swrAGvvN$7RDMfk5lo{#`meLy%*ssl+l zAo&;I)N%}KNs-j22j%hDMRrbKbe}j$ukzovH$xoSgx%1gGN2-JCVv`U@5BbI&1bbFO}Kgkb4*a#HVL-tbg;GtDIjHA4&`*O@A;%B4}!`V|Up z7TnOJHBnaPWrbZRuYtK$_Tyc8Fo6RKxB!*lc!#`Zhk|rZa}86Fhnj+EsZ8Xb{Oe;x zQNPls_>NmVo5euh2K z1Yp&~0-3$MkH=Kkd7pw$-Iiqh%k0j|P+^v=$;A|yfdy+TrGJUuNZ&(l!qR&$}X(fz;i!Z4rWD-9}iHZ5pHrtCO9>Audp9 z9-vTg(&^OZyVRk%WWjy269^l5R)d4t?-u+ycF@R!hR;-;5>O+Ir@8|z{gsE3LNDTv zfTak39n6b-2}?{i6u)2SBG}rS7ze{J+bK_uKZMGJNM<%>mu`v0Cc1q<(r9t^DvXkj zX}Hl2S^1m0!4<5-bQ+HVbWoSasmPT>H7;QBtz$4wT3$?!=phV?2!eoK1r%f^oxuC& z;)-OJ!Vl?(SzJq&&PV`E@c4gqQc+Wd;BX9CW6ESlAw}GMcZz_l(mR3ytiZzR+7i@U z`{Ia#NPik<(BVc>C7eQlam6qsrhThA$lINjgbw}WmsZH=C(H1*r%LkhDjZ?7@fQ*} zY`bj@nL`zHB05Y1qAoXIz}~??R`@^bj0 zr~RYLxCxx}OqcJRHi}3j1I1~h#qyDhi`d85+=mR$%?6}Jk4;ln;b-mqUR`97muXUK zr#@U;Qv7n&JR{${AV==Wn@g8X#-*k=%pl7G2x1UtnM!bV_V@g_hEkv2CQSo_a_l+x zX%LN&CAbis>4^Dda36d?}kiz+BBbc91xlQ6c~E zy6{B_B29@tb*!LRycZOTPP59gjwlp743#a7MIWxMctg$&x-q`^&K-P#4F&>sbfbQ5 zvIuUXfjC1&@HtLTd+!oYm=RSuQ}^$|`@ymYb<2~U-2+gldQLWh4q~n>w6A%uQ4T4e z)?^d~2>#*TwEQQR+}K1+vJ%S&iwysKO*3Q`SA3f3zWJYpz#kqVH&K-}Wmu}Cd^2TD zGABHSXiy52;IR%Ot&{>#RmiAU!FxF`I8XDrM>)p|Auv+vFP@&R!k4WSS%b!n55tWn zBJHP5+m;@@mKf3_)HvQ#H^b;T*&CU2N07-=Bay?AG+C=>vf7k>L4DSviloFWZKsil z#&sr0WucIXy$m6oMd%L%;_>?iQVj6Wo*+WOle+954afyAXyT=+LIj0SVv5Rzis2xG zg7^c4_WJ=+fUd%8Q^5NO0RJ5+eq{bd*A5C?Cso1tC}8@!zXtv`sFp%lul3^|{4ZYa zb34YTFKr-Z^+l@yG`}a#Xslxcg;dfX+qfP8t&`Y6j^lmT%wg|+w?4=`9~BgbX~}n7 z#nH{dg6#fl7ty$H#n`j!mU<@21^mKSaI;(bz11yM1xqm>TQRuhq!|m-4xJf~^xQ#^ zy|&L%eI-1mk|#~_V=;Aoi&jkaIeN7mXeR8{lmKD#_nv+Ws!eKMrRl-!#0GwJ#zd}2geJ7TWAoE|u+9`JRq929_eezN}Oz zVir#_3mC+LYE^v`>B!#H?2H+?XtY7HUm6jV(X$wO149@h>;VEs5TU?75*d;fTE9JL z=1xKnRY9Y2fZ3;>2z)11?BSA8C^k_tH|5Me#})Fddd($fKYKOEjOP?bd_ zTjUk(vOTUxDrrM13BYfCPg0oT&W&Rc{Wv}s?XdAa-m_}e$srEV!#M?>21B+{l!e3k_%5&EHpgx2=u4$UY?%f<%+}~dZWZY% znHi4x7^>Ouukgk1$gctrx_O_>#wms@MpZP0D@Ml|denffkg(BJ`W$iTdmf}0BgfVV zCdVTTds*}~ct$;pbDrNSYP64i2rA=q9iT^B$GjX$))D@kqT$&TvQ`{k-_r@E+eU~l zxX=J?%_2+7Qr8+hYsbcbG3^|sKDxeba1WIjyo7ch&uh_SQ9q*xYA)8x(peVqh*kOE z&bl_9fHKhx*6Yfzb{6?7AB$`ne^&;f9qab9#CQj*9iD zsovh^PZVSQtlYu^U_N($lQOwAg~O;3QzylmwK=oKr(u*N2nF~L5$<&7mUc|3)yJ?)^5Mpfsx-GPDl(4pL zyUQ33R7^i#{nAOR>uR~>YBXp2Z|ssL&!=q@t!1iVixO^9tbZ!U)^cI1(kF--^Ot`v z>gW_qGkH!f^Xh15Y%6UV{|4zYY$he$zsmQ;Y_!Z}^VI$8o_d(YMg+Bh=55AimA}mV zeHh};wi$SI!^Y9diU1S`R?|R<_z(snBC-ER><>ASQ<#S)atJ|r9Z${-;Ya6?S)Dmu zE|8cV?gnywH^$E)lt=U{`vrr$a8n&P!Ui<56csKKl)myC?qdVQy5tBV*Oylg*kr&E z)~}N_+t(>J^qHc`SQ zdZ^XCE=Y8878Cto{V8a(JEKgrLF8Mx8fBIPnL~nYP*;joQ>C^ZNE!~-hiQr1cGP-r zZC^QCOB#1Qrgo$SQ1{&jE9knC+t7?V0yIo)X>N3h86^(A-`;z*Y6+thIQKTI6>)v% zzV|V@bZ%Y@wg?!t4PX{ue)cjzpMU$hHj??_n;UXLzsrc}TO=0_=Y@ioCS(Lev%jeI zTFifzL3z=YuKTA!P@CPQ81p(k+b0>4W)QhQwYRv)iFFM~yag8;QB^}`#ijVFG@QD| zTm|36@7|vAzEheCv~H}MU%8(?4vn9-q=HwA+VQE9nS34NVXc3rP8w-OggP67j)6WP zZ$#i+@K4k@nRD7?_Q;>}6v&-PJ?ZpwuGkpr1ue^GU-NSJQ?s3!^reKG#MCkFY&>k; z8SY4+T2f_p;@Y0skpdtGr(>rUyzi7ol5Fr!8coC9?jSQbMe3qV>zv=S*4dfcAPPqH zXL_9w!GXUM?0=-AB*KV*uwQ0W3wEl4I}w1yWmvV`V9i0rcKV@tte%$*gjk@f>#!lv z0`;lyNL~hia7&xoU@RZlpX6hAN1V8*entsU5&#BFQ9R$Jw%0NG4Lp5uNJzyZ6599L zw|DB-rPbC7X-dz5&9@~k!L|iC3tzXgw%kqnxgFln+Q-H@COA?U+e#Xrk zAwHpJA=8<5vw$J*c8{G@HaB5dHlG!1(EB2O_Nu~?`ge-Mh~(P%=LUIuMgIK+spHbu zcW&!GpW5&*N4|Qd?yte%V`sXA*PKkxAr!~tr}TG{U{8F{X+_@`;&m~vIEWZ>MYE*4 z{$di3dQLMU#dnq_%|)kYwL|@`Hd4AGL=IkA%38x~yw%rve!d4a>afF%iHpQbZs#lK zF&!fs3j$r4v+tBv6uoJuTCKY#)alk5{ky+=7b%<#Eb7J!rKjsavl@10!iW!)w8DRiEDWYQKqg4nCe_LHffsOe7L&2;@F4g zZ9O|MY6sZbC4*G7Fq6LA&e*ocA2U?gINIf%K+JhAJ6^GzWbgJ&mc*+M1YOk%dhqrHoLf^?4H3 z4W&-+S~-~x;qDxE8Lugs5-n{@ugA-X$yhJpku$F@c%OMgUUlclYP@~+ku0EuZ#A8@ z8<;r>>Blp+;mAGTLR&s*yt}+85RuZ_&>JFn)QzDwzY!!vKe?Swu)fnCeQhW@K26W)mI^6$Zd8QuBaq`@K5CmT(Pv*U~zz=DWH(_LXabrA)uA^ zlAhoci_!T!_#qaEg8r1ZQ5wMWVR;dLEk z|AphGi)Al+zdv~o{iC%npm_F|-9I2F1xu$SlCYl?lw1%(?aw>fqu9^w-OqkSStR|7 z-4K`0o4SF^*ARzG{}jz}<&0O31E9HV!VCm{rM(5G^tIDv^&-6 zKMS$WWn+4w9u7e)hi`3v#Hv(Bb-k6(z?asR`D7c6(sKURGmZ;k*?5kNiEom#K9nG+ zn02{h(lQ-;M#ABnS^+aW!EbEN^Z0U1OByB~=hN9AdSCG;qA%{9L|-d+ZTI%8%Z1B` zKU4VR;BHPhnfUCYGjMouxCGUqy?x}p(oY+PxchWfTqs7wz=b>#>)0jFeV$BTkv*Zh zQ5(MBY2ph$%LtAd;C!_VIV93j(GX%sZ^=lF3szM``DT5og-u7oR$XM#nC*OUnw=;N z`(k83cku0_Z{V(jYzvAb$@#j?U2UU`o)ExknZq;0*+Kfuy_ zXd=n;-+(a3ej+uSf3v@eYn}AWe=O^?gNmT8vGP&{S=0{m8cnYYxzO?aE9pQ^Z+UvS zBM*bcEkkU{DoKHlj;uN$g(g2jjWAD#nhPyc^B2jhq504dFQfPde9 zZ+v%Wqc+B)``uH3Q_q;H$Ulk#hCtveXPT+>=C>P$m^>=`U9}7RzgGKO)@KhR#eDrG zj_(<@hp=mzYk@8RI_;|!XAa5=efo9c00@2$O%D}_^TiH370w&4ML~=#?=k#n%SGA? zU%3*7Bae<+2_Cu9POs6b@%NUmv~L-MoXcE3shCv;?8y5XQgF-M(sqN{Ta3+yytVQW|u1afx%Eh(HlG_k#~IXXi5(dMcE zLzHKN><;PRkcB3q5sp_<`-xrThsE_z5Xi)9M|&hk2R~Qb-D|#)2v@oBqYok z!NNdLv}`!LL0(av%PO8?`yDU=PXvEP6leDh9Tesdv5Q9mh;jZh*RReSrXn;g1O!^C z-N+Y{;oFvofq)AjyP{U%NAZ3K4zW(xOzH39)M>=Kx)erDGiy@eu#Q1 zqib;W?`nC@0Y0h^1yKRl(|_-ih1DHH4A+(^)_5#=c9lq^-!=|qjFO)3L478=F%yNz z!}n_kaAq`z#VeURn6q9n|8grKK%1i+vd*pUdma;*YPI%rTNfn7j~IPpfXTCy&Ig&6 zibN$f?rxJ?WB$N*cKwD=gwi267s#Sqc5wdm#iq7VU$k>coPC$H`_@@Vc&@LE)1SJY zJmHAzZ}nouoY}t4I&eJgr^fs0E>ajJRhobOW#7$_B6j;(e_~{3Upix0$rqe zXqt@5&#Oz>d7YW#?LC>c?J6R7-0@ZZ^yuvFd-v%X+Mnz;*o@?B2bCxlzI)qh4uxM& zalg>Gi&4vG_KNFTaaV69RU~$#d%U?8^0Uam(+6240;zX$j&K@1o;DVk-1<+y1tl9T05Up@4e*=`7Mcc3iWhJ5_!Mh=AlyPqj+2GerE5SU*Fp?PQ)e`RzKZ zF{K4k?&`v0I%?SuDH%y-d4JMOa7(P7)QRAruWNP)uA@Fzk>Opf-HV$7>{8MOoDplnEZdi=%m za?VQ5@^bc(@Y(C2!#mG;(9oIpBi-?1Qp*)M&NHy%x9&ea{Xn3mj(8SDiQ-&G+m*6z z=I-j0(#Qt*OmQA-p8hIKqlY$<#SLHIw(A_u04W=F<|>t7)F& zu90nns}visH%qO5e1i@;Dc+RlY2T_^D{I4TWbvop`ro3)Bc0y$K5!)Z=}zfz&excA zNJ6;BXY4D(QY!hyay5Qu$qi?8oj%}W_mw?=&ZECHeSj^HWbZSczp void: overlay_detail.text = "%06d POINTS / %02d:%02d\n%s" % [score, int(elapsed) / 60, int(elapsed) % 60, level_title + " complete." if won else "Fresh branch. Another try."] resume_button.hide() if won: + stage_clear.play() _reveal_results(0.35) else: _start_knockout() @@ -506,5 +510,12 @@ func _setup_session() -> void: sfx_players[clip] = sound for child in get_children(): if not child is CanvasLayer: child.process_mode = Node.PROCESS_MODE_PAUSABLE + # The results pause the tree, so the stage-clear stinger has to keep processing. + stage_clear = AudioStreamPlayer.new() + stage_clear.bus = "Music" + stage_clear.stream = STAGE_CLEAR + stage_clear.volume_db = -13 + stage_clear.process_mode = Node.PROCESS_MODE_ALWAYS + add_child(stage_clear) # Everything above was placed, not moved: start interpolation from those positions. reset_physics_interpolation() diff --git a/hoppys-adventure-arcade/tests/platformer_stage_clear.gd b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd new file mode 100644 index 00000000..0fe85f63 --- /dev/null +++ b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd @@ -0,0 +1,50 @@ +extends SceneTree +## Finishing any platformer level plays the stage-clear stinger once over the MERGE SUCCESSFUL +## results: it keeps playing while the results pause the tree, the paused level music stays +## silent under it, and a knockout never plays it. Run headless with +## --script res://tests/platformer_stage_clear.gd. +const LEVELS := ["bay_area_blitz", "enchanted_repo", "orbital_ops"] +const STINGER := "res://Assets/Audio/Platformer/stinger_stage_clear.ogg" +var failures := 0 +var game: Node + +func _initialize() -> void: + run.call_deferred() + +func check(ok: bool, message: String) -> void: + print("PASS: " if ok else "FAIL: ", message) + if not ok: failures += 1 + +func open_level(route: String) -> void: + change_scene_to_file("res://scenes/platformer/" + route + ".tscn") + await process_frame + await process_frame + game = current_scene + game._resume() + await create_timer(0.2).timeout + +func run() -> void: + var stream := load(STINGER) as AudioStreamOggVorbis + check(stream != null and not stream.loop and stream.get_length() > 2.0 and stream.get_length() < 6.0, + "The stage-clear stinger is a short one-shot") + for route in LEVELS: + await open_level(route) + check(game.stage_clear.stream == stream and not game.stage_clear.playing, route + ": the stinger waits for the finish") + game._finish(true) + await create_timer(0.5, true, false, true).timeout + check(paused and game.stage_clear.playing and game.stage_clear.bus == &"Music", + route + ": MERGE SUCCESSFUL plays the stinger on the Music bus while the results pause the tree") + check(game.music.process_mode != Node.PROCESS_MODE_ALWAYS and game.music.can_process() == false, + route + ": the level music stays paused under the stinger") + paused = false + await open_level(route) + game.player.position.y = 900 + game.player._physics_process(0.0) + await create_timer(0.5, true, false, true).timeout + check(not game.stage_clear.playing, route + ": a knockout does not play the stage-clear stinger") + paused = false + print("PLATFORMER STAGE CLEAR: %s (%d failures)" % ["PASS" if failures == 0 else "FAIL", failures]) + change_scene_to_file("res://scenes/main_menu/main_menu.tscn") + await process_frame + await root.get_node("AudioService").settle() + quit(1 if failures else 0) diff --git a/hoppys-adventure-arcade/tests/platformer_stage_clear.gd.uid b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd.uid new file mode 100644 index 00000000..091ceb05 --- /dev/null +++ b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd.uid @@ -0,0 +1 @@ +uid://cd5vqgnbgwu5e From a94932e9626e9499ec6fad578f5460f3945628fe Mon Sep 17 00:00:00 2001 From: Erik Thorelli Date: Thu, 15 Oct 2026 18:21:17 -0700 Subject: [PATCH 2/2] fix(audio): stop the stage-clear stinger when the player leaves the results --- hoppys-adventure-arcade/modes/platformer/level.gd | 2 ++ hoppys-adventure-arcade/tests/platformer_stage_clear.gd | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/hoppys-adventure-arcade/modes/platformer/level.gd b/hoppys-adventure-arcade/modes/platformer/level.gd index c64d9d86..1224760d 100644 --- a/hoppys-adventure-arcade/modes/platformer/level.gd +++ b/hoppys-adventure-arcade/modes/platformer/level.gd @@ -225,6 +225,8 @@ func _hud() -> void: var button := Style.button(entry[0]) col.add_child(button) button.pressed.connect(func(): + # Leaving the results unpauses the level music; end the stinger before they overlap. + stage_clear.stop() get_tree().paused = false AppRouter.go(entry[1])) overlay.hide() diff --git a/hoppys-adventure-arcade/tests/platformer_stage_clear.gd b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd index 0fe85f63..ac182c09 100644 --- a/hoppys-adventure-arcade/tests/platformer_stage_clear.gd +++ b/hoppys-adventure-arcade/tests/platformer_stage_clear.gd @@ -36,6 +36,12 @@ func run() -> void: route + ": MERGE SUCCESSFUL plays the stinger on the Music bus while the results pause the tree") check(game.music.process_mode != Node.PROCESS_MODE_ALWAYS and game.music.can_process() == false, route + ": the level music stays paused under the stinger") + var leave := game.find_children("*", "Button", true, false).filter(func(b: Button) -> bool: return b.text == "Return to Platformer Menu") + check(not leave.is_empty(), route + ": the results offer a way out") + if not leave.is_empty(): + (leave[0] as Button).pressed.emit() + check(not game.stage_clear.playing, route + ": leaving the results stops the stinger before the level music resumes") + await create_timer(0.6, true, false, true).timeout paused = false await open_level(route) game.player.position.y = 900