From 17f992a0adf85eb278de5cb0cfa596ad25e444ba Mon Sep 17 00:00:00 2001 From: Adam Sawicki Date: Fri, 25 Mar 2022 11:33:00 +0100 Subject: [PATCH] Updated version number and CHANGELOG.md Regenerated documentation and executable. --- CHANGELOG.md | 13 +- bin/D3D12Sample_Release_vs2019.exe | Bin 169984 -> 276992 bytes docs/html/_d3_d12_mem_alloc_8h.html | 7 +- docs/html/configuration.html | 10 +- docs/html/defragmentation.html | 20 +- .../dir_68267d1309a1af8e8297ef4c3efbcdba.html | 84 ----- docs/html/index.html | 2 +- docs/html/namespace_d3_d12_m_a.html | 16 +- docs/html/namespacemembers.html | 2 + docs/html/namespacemembers_eval.html | 2 + docs/html/namespacemembers_vars.html | 74 ----- docs/html/quick_start.html | 14 +- docs/html/resource_aliasing.html | 8 +- docs/html/search/all_0.js | 10 +- docs/html/search/all_d.js | 15 +- docs/html/search/enumvalues_0.js | 5 +- docs/html/search/enumvalues_2.js | 3 +- docs/html/search/variables_0.js | 4 +- docs/html/statistics.html | 6 +- ...ruct_d3_d12_m_a_1_1_stat_info-members.html | 92 ------ .../html/struct_d3_d12_m_a_1_1_stat_info.html | 287 ------------------ .../struct_d3_d12_m_a_1_1_stats-members.html | 83 ----- docs/html/struct_d3_d12_m_a_1_1_stats.html | 132 -------- docs/html/virtual_allocator.html | 20 +- include/D3D12MemAlloc.h | 4 +- 25 files changed, 96 insertions(+), 817 deletions(-) delete mode 100644 docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html delete mode 100644 docs/html/namespacemembers_vars.html delete mode 100644 docs/html/struct_d3_d12_m_a_1_1_stat_info-members.html delete mode 100644 docs/html/struct_d3_d12_m_a_1_1_stat_info.html delete mode 100644 docs/html/struct_d3_d12_m_a_1_1_stats-members.html delete mode 100644 docs/html/struct_d3_d12_m_a_1_1_stats.html diff --git a/CHANGELOG.md b/CHANGELOG.md index 21c20af..e188f0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ -# 1.0.0 (2019-09-02) +# 2.0.0 (2022-03-25) + +So much has changed since the first release that it doesn’t make much sense to compare the differences. Here are the most important features that the library now provides: + +- Powerful custom pools, which give an opportunity to not only keep certain resources together, reserve some minimum or limit the maximum amount of memory they can take, but also to pass additional allocation parameters unavailable to simple allocations. Among them, probably the most interesting is `POOL_DESC::HeapProperties`, which allows you to specify parameters of a custom memory type, which may be useful on UMA platforms. Committed allocations can now also be created in custom pools. +- The API for statistics and budget has been redesigned - see structures `Statistics`, `Budget`, `DetailedStatistics`, `TotalStatistics`. +- The library exposes its core allocation algorithm via the “virtual allocator” interface. This can be used to allocate pieces of custom memory or whatever you like, even something completely unrelated to graphics. +- The allocation algorithm has been replaced with the new, more efficient TLSF. +- Added support for defragmentation. +- Objects of the library can be used with smart pointers designed for COM objects. + +# 1.0.0 (2019-09-02) First published version. diff --git a/bin/D3D12Sample_Release_vs2019.exe b/bin/D3D12Sample_Release_vs2019.exe index 5b0b991419ff2d94471f9419e8b4de1d9d201054..a515894359688e7120549c88be6cf9bca8202caf 100644 GIT binary patch literal 276992 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 z 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 z z=Ev8{2fX%^kp^1e^YizMG6KzqE9HX;GL zza1w^Y3w-*8}XZviVrAHjYsl7-;53iVfrZ?9ULPV=@VD>u3~T~)bLni>ZIx>TPNod z^9I~XMD5Wef}iFqR11A=Y_|j+J@{WtVB>U~z+Ot=K%0Q-IVc4Ym+lbzW&djIKk{RL zfjn=}Y(-wJ0+9W7jbS6Ly);IpsO<$D#JFn1 zt?00q{JNip8DjB%{7`OAXDMEdq1R3F@^3LF$gG$D!P$-1)wfisLEl;%_N_eiEgjbw zJI`v6(zpCqqe05R&+X=%ER7=@aXN6mcbpN;xMo^IM1vk-x$= zi5m94ZHYK};}->XIN?CDnnn^zg;=-BW^X!J2Tz)LqmT~ zD0Ej8+CjIx(&(a~SU&Y7li>7)(oY)C5k?Y+QEsa{Xy<1mRBzaScpE0z=nQ;G$HKI) z**&=(^pakeUW@dS@=4C=y11rftrcMA(&oQWfT8J)>?5gyJ;NarjA(NAMRW_j&wtlS zCSOS^lE>Z_aAN?t4S?n&0|US(=$P_;NdWl154bo;VzmXF9000(z{`94NzAu^eFMNT zKA|a;%2pQGGwDJ+x)fC;@K2?Sg|s?v}w&JRka*vXr3Q7x1PU^_|N5U9)All zM8xtE_saXqwly*L?>fa<8+ZR6=UOd#;l#@HfftL45BJHB73+VM`&O0vd4>CVC%2uf zKru4WrPZCKwXC5hk$sQ~dnW9G8s*p}&T3D3t&6?gok?w*;7~eK-PCq42dXzA*mVRM ziiUF>2DmYH$`cG~l^WEZf>v!z!sb#GdZYurrdfJ@)kjq$Zh79%HR;LJ?OrirS>%?Z z_tJLGrpmnW9frYH<~8)!Mb`}1PHJzPUiNkIy5o*)uy~T{<4Y)6*Tw6rI46QJw8~b# z*J;OnzavIcCsBv5Bw%D1yKbd${tAIV4Kp%Jlo}-8X6ZoZZ!_a;tx^rosXK(#5Se+C zS>zfWW$H1W_WadiR49P;AoEJFVDqcbz%^C2jP4UvYWxnu;x(oW*bFJ9#LipUKRB z3FC*iXf)-|x|VxSr+pL~`(XjU>8RI4WhBWSi8+~_sK`87(e!nXsl9b_I(<&=hKXpP z8bO+|Q!f!qe&o;;bWqEB^O&*EcfrCt?()-=k=Jaxg#1?wJ3) z{;<&cEF)EiCaY8<`fxkp(Gd8!qJN9P?blcW|58*m-1@%R+Y$I}Y0mwZI!A-^zb7#2 zEPsc<;_h5px`jcigZh> z+#?p(!M30CW}zu!?g-z?QO`OqYGfmh@dCzqhR-)ACegE4r)XDJNU>Gp4KdZX zhW&Nt^>tIP9qLPRbE$F|9wjj&tP!C5v7e`1gIcL1{$Eu}){!-hn(v&RT`B+BsJVM& zW^aZMOjww~Px?lk`6364A&eO_;HthZ!ybwh-`eqf1kCo~cfM#;2^ zS&YpV9E?#B2@aL1Lv|D#^fgOx*p6whi)WL-bPS(eD^xdj9cdoykCQ&j-f$T2Blpbd z*%*6N3_Fs1&*)sj^}i_&8DAXNwSy}OA&>-g)Y_dqATa^+FyDAy-Wm8NHdeZX0W8~f z7Y49p>)l^PeWWklWHzF-Nm7}*a)&Vk6ESAkQTrun^it|)>A-NpmZb`tLGJX@3iqoC zt;_}Ak2S8(Wm#+K=C%8;XnLy<(YCuhy5lLs|H7Cuf|=BIW6C#lp-@Qem~30nte|GR zKQOnD?%tjlqK!0NNM}bv=_E0!4#^nSlkp*2-@7~YRLcVX2+@o3u3;Vh8l0u zsO)A(3cGB1-CKt5)?A&I4pKgs@7#zRFhVSvpwyUttO>W7)Oy?^X?R!0)r=0IZcg z@vrwqb;M`scCgUWD)%eN+blNkr2qZ*YbhaS%5pU74#*piuA zQ|C>xHT5hIQL)yTW8kY z$Wopf2>A=0!S8xf5HNTa`byj5 zb0y#eB4(C+*}cA>?Xg3BYYy{Gz4E)?wRQbKSl4lv)d2C>n^|^nn1$KCI>NT9?v*K8 znaUiluiICqtU-q}e=~r0Rp!Cp&aO<;%EI~9c9jxo-pdT&Va06d!TTn2;>a9|G3B%bOI%uVe^$b7D1;AW@k zy-nPt;mp_;9DrPg;p%I#Kh@1P6j!f0rwwP{I4Y7eb z`w6@LsI|6Ttv}xVT^a%%r@{NnIgpF{kK$U}lgDwZ?F!@`69P!9g?wHfKzjL*?~b>S z8t-ZgdC`Z|cwUE%Woa18nHKVwFqS8M$e$(!2_0!6ts&%BK4jZf0VLl-t_~qL`;fCH z2avaz1yG_hL&z8(GAD#QW+6w0kl{Y0{^}r>pIb_q>IS3?XL& zQ3ae8LjGhS`-PBW1ljK2zrMb`$E8pvT;G;`7S@CtSl~|4D!hA#u)rN}sW`nLhoOc( z?C{5d=ILYj8^<4)G)}L>Hpq?b_F6~Ibh6ex9iOOJb$I_n)F`RUzQA(mr;(eOl4--) z*c@5TiuPLm%>9QbRAT!JT>+x*V2nUV9Cftm>u{o11w&6wM`>p|21Tc{ux)NhYSZd& zEs-q@CVJQ%*rE(f)U}5!$ksr^n>iKj&&LB;RJ=ZF{*`i_9KI3LcD#3*w4s8;U}lD9V2S!tf>wG{{`y+iz`~|?){?SalJf_an$B)B z!)kBYNm?L~(x)i_{2QZC+v-nq{Dr-6l-X{YXexmM{|J5eNOQ42;zTX`-SCMoJOndD zbGXVf=0L|++4AAslVhy8$;_?RfKiBv+;TkShlJFV_F6+tSmz`lQNqdyYw|#pI zrz2fWathi8TBJD%LDn|O#0)jbP5+%HIe2LICYe!_+)|Hiehe#htvc+`rXtPzZr2QV z_XVGSxf#k*M|D>l>`Q@TtTCJU<9|-S6UJKloujqRo%CYE9+36bA^x*ooC6Qd>czXF zl9lzMw%KOd&6S*oK&M^ywbEmQzBa%}xnEi<7X!C(GgiK{`s2Ex>|bZM<$tn%Ut`zr z1ClZpnA_)!#<^*d@kTTC5>2{9@vauR?h;GUMJRxXq6`FvFE)g;CsZX3MTuIoCj@Sy zge~@B+D6>Wow%qxWQxYVWP?9-s`mbLLU(c+J0WGbtmm?ePWl= zat*Tt*1uhhS^I)(V<5O{WW>*0{z;C+G+U)9fZG_K8yc>+|2yKf%o`$J8Qe;cwhCTm4(hSvJf68SisK%z#n|T?|n(A+AFq*>kL9OZr6wO^u^++_o0?N z(>fj4k3s7kT*35Uttgs zvR-in|8^y>nez?Y$E^nK7F>)9w3XKwVi{14zU5Fvwa<^HU!;#+!^B*RsHNDrJAx!1 zE@e>UlJXCz&P`tJUn!g6CV}c@po(ZzFp;3p%B)(*A0k=RS{-efFLBH>x|qmURtjuG z7F(Xvh@{84%l7#5{waai2#=|Es&?!qhPTM4p}ZBG*A^?Vlfd*;rk#7L>0*QD+rB5m zD0}~6GALY@`3%Ol$g!|Xm+GbqEr)rAqWPi*i}3M> zb4r8rqN&0RhNrk88y(5|PokUKb2*B_4z-)h>DWxd-t=C|rErm%EW}|B{F&}_oU=e< zY+6;IdF(R}+HR&g+SNREJQbyBh~sshW?IAfI{R%rCNNu84>)&709kG!-wGk41hN0r zUQkk~8&ItCA^k_k%z3f<(X}Gl85`%@wsPFLL0gf6k1QT@pXq4Y$}?p~Z)J$lM@PF{ z61E*<8ma8y<{+;5SxU1u)j(@%AwLhZH>%cDOlz9!9ZIp;WZ8^CW2$^^mc3mvmC(3B zMQYH-HAJo&WqG1u_q^3EDkC;;$e*F5%xXl6S?i1R;TS$kWRX5jG0hJY?Jru|i49^d zC(%eGa%qxMX7s8nx#SZ&yo|Af*9=~fDftyTl)^>LVWX!=py`G}_C@}HOGPZBji8kS zAkwFo*0G-`ZpxHKW}ZnkKVB-3&SPa(p;Wba9XF_to$KVSRTOpCdewizV$G;RUu~i| zFLD&ouxF)q=MCj!vaSAmhK_m3O#R=g+*RpBF&D9y8fuOEi)k~aDrhr5rPyN4sw>(| zDThQjICsOK@X%bQ&Ucu&Zwe>?CK z|2*L$8pkG(Fp@s9Kdp&h91B>oT2%dYZjSetBaF0x$efCAp)F+ii|}`_Siu&tg5$$O zcIMz=eNPwwDh2qP!qKEI+uE#ZyIW<>R!`!HsQ0CKck1MwzElX zrwo(jb_CJlZ=o4MI7(rRcSDI()dBns(3Cwrb{HebGaEI6&>x-j4O_cxrUmPh;iY`R zpaRC|=SFi_G{xE$4{#`grU?>>2Ip zJ)+nd?%eD8J9!{_dB2y>h^^PM3EIoM+k9sD@jvhBx%P8p)*r+kYgUo~rxQ~r(+3c( zF=p35WpT9&2XLp;fP;wvC;txZq&)DaK>>F!Gbb0r`%nz|tz}vi9UnQ{R>7x?OaEGq z$%M&oBTGl*cbLg`U-240r(}!^2etTw3VVH7kl|`=&rUQsW;se(HXBF7{JfemN&85e z%#^3k)~PB#t7Nmp&*t64D^a_~=M~yC_t&yzMFR%Hu_|+6WWYfh<*B2Aja@)HcMy>I zf&tR64y9uUvW4wer*MkIag9M5F`8@cw~VF@Qte8%NYR1qNOarDhTCjCR@_EI(;n!G zirxH%!-3XkvW2`5LS&mq;>V|-1&|60`Ev+a>O&G#nvLZM3%MEkA>(nKm5*{r_qQw7L9 zFC1)7$g(b|YN!bsNo_eShq{7A&EaoeYI;j*`mIiSw&m`OH)r*s&;*HU>5apFu}7#5 z7{=!MB2Hx7Mc{cGUX@SNw%qzj#ETsvF<9T65RVS~wvI=6>b?hgv?rJI+s2>T*2J)F zvD~NDq3wEPrP+$cSS`Dd!?9ZGNh1MBpqs@=98^%IPV=IJ!)=}~%tqZm`utI34a zk88-^5dL&@JCT!9W)j<>AuF*OI3(f+rTs8!Q###GsRn6)LslOXrC}}}L=uOmcrp`R ztc6=n!;=bYYSXup5?LswoZ|~|_cqf5!&k_-xlU3UoTE}l!%|26jslT~G4`DHA#yNd z5Bx;J9Iovc$|iC<$K>`0XW87IYg&MfGtykHx2EebPv1Nor#Jlj^doU+^@wABpqF)8 zo;X|!c_t0JAE@vtWCShvm{StewmpJG4$by$t#=?&61(G#rYYFfRw^RW{Fb4-Ets!# zX(O`C!Y|r)H~uR{L(pJ)Us3F}o@tABXt(0^?JC~xD&EBuPvck8++k=6c?R0##_Lz~ zgq;=D5H@euMLps0?4pXnw#Vn_5!T-Js?38|NIF*?-qg91f}+YD4hp6Y!@c_7R@j1; zn`Nw^9-00G^*9ixcgBDWlbTrz8G^ z)k+lGmo!^*O4C%8@n=X8+qF}D+OCYU{%zXo6ApEvPFq4j`su4#H(OXl4n(;nCHSR(eC@h*eG}qN)zsIU{ShS{g3^Xp&!qs(-jv)16RiDFD zb&QhoysC4z*rTdq!^YyZFt0|v^)W|0dCcX_vMfsCM9MWVrbpL$cl2j|G`%j8Tt{d# zf$HlFw_%gN$E$q!)wPkNZdy_bDs;I!zNI|xeHcZHJN?#J-q&Kgl6JP`P3<{2vtjlZ z8XIQYITDO%X)ml)r0a+)miP4V^bjZ#NzPVkX|}6!@>UH`50c-^dj)aXvRKERkI6>f z$Vt?|@7Ieuh}P#dbo)yP{?IKAeu(hhZ@5n)kUg8)If#S3UjJ?q&i?#^@(}SqJ^Pb* zK|?Joc+-BZp^%&yZfvqq;|m6sx|*0MbN+yUP@pkQLcy4Otx%vrZ&yOWy}7hbv%YXW z%ccyw?;LK00>}FY^Hq)bZ%L`fKrXb9wh*$$huoB*(Hh7Q3%NUl{LzQ}ZCe28ViEu?hXfLJkNa$N7*Sh9zpXkk1bb3f;?x%nGS{wS~MGLcBlP zLVp&L?o12$O9**Vkl^30-LY_vT0^xi0mx$gz?4hy33HvT&JTPJyEq2!%S{-S6b zNiIjOG5Yc;t^(q+Fn>jKJ%ZE5xc0^*^rwp^ujiIh_YHsA+(IOCFjP>tulT(Kc20Zz z)@S&K%?Ld@^HT9!-FOSe3wCQ-o|}rduxfHG&K@|kZU|t!&61PM)c|(Eq>UoAnDU)@ z8Y?vJroo$&ZPCb2msw3~NnerKOGbQR4ZMpRVr>8Gy2G4Q#IQ&!ok@COwN@jt*d83I zp_4TMi4QJEfMig|?WghO>PA~o!(Ay?UPWf<;5PCcxuXr`)+AFDX55<_`ca_0z2A<5 zO9#< z9d{qRc#~93{hN_N&FQKF)&Fc^Z4+402M>y8j&u!tQ5VU&>2l>X?BU)}UlMXFHE3a(I(;}2YO0t;{D3+J{3uPU#| zdm5|)3Hvgh6^qyJ!6~*x4m2GJ-0L#q{lO5d8N~r~bhx zoiIYZaF;(q1)H?=LSIaGSv@BUj71%H+p$O;eph2rOT;puKw4qT=lYOZZ=Qwp@gcR|VLl`iCX}?0k93OLB$VSrCWnwKEM#Q} zc^#ucN@!AXke5>}WL^k)7>I_5-E>IL#Cw2+BtyuZKIGRSMEf&@xgvzr`H+M;8Y?oq zXd$PDkaK*<>mlSX7IHucIZlur*L$<($D1TW&DdCM=5hu5ogDDv9O}#NAN}EASn;Cb zZheTcBFEeCJJTuTHY;cG9;)hNzke*9-QQzca#Yv)1$#{CHp%F_tKFE+$8w7-d`x5! zW(={=BeC?M*(BRb^ZA3TR&|J@&J#yn=X2Egc9C!)oU~0#%c;2d>(f3{eV*{InQf-K zmy;Ung!ipw+c#5CU(m#I49DlEGR@n5Zz=2_;bNh=wP~F8D0WyZoUhF$Yt*C9NITBF zOZLrvfwqOF{J4wVR7JhT7zWqiVTe?ki;S9VBxl2u8iXP$Be0JA=sI3h_{c17Mvw>FTGnHxj5oN+DBiw!J#$~|Mk9vy+BM6OF@cO?zXkyN&3*1a33X(g3uuu$Ag9 zq@B<*iuo($br7p^#pJ^?1ipvuKPHWvoZ&1n&+4nJ41bhTK-8moF&Ou|%4j|7vhjq$ zC0RLFD2KOAk>nZXZFDI&@bs@3(Gi)Y62Xy09w*N*W@p6eNOHXO)=Z>~4De9$Iqk!LhLdy`3ihB86JtnTzdSn2ZU?HnQ z$XoYW$fH=1vVlff$o(PYF(2|n7F#W()Iw4rB_ZT_AJP^=PPCAFLdc(d z$Vi#}GmUI-3%N0b{K$v=K7?#yDT0(Q3L)R~Ax91fVtK|wP7EQA54rvD0P=ea**kCID>LSp!_#ZP#)1Y`onnYGm1V z$L+ef`&rC=4YA$_}z!l=6_w6E^M%`xqzO<(RY;<^0!U z7(Vm$Q!CxQwU1VoL+zT%sdR50seBRMac>`KDuV0kGv_kPy}8uE5PtniiAYgZgGT>f z+@tXOF4L=u1>WF1a|z}^+aC6@`FTi5~R@vad>M_o-d%PAXzP!36j9&2dTkH zkhwOeh-Nb^r_naSC~DV>*A>t|OknM*XLX18pil$sD3Za> zg{-;shK8bkV7(OA{X}FMN_v0V=)8~I8*-i3?VaNO9 z0cHU0Uu?%U$2*$omIm|F{qf%MZncnqL;^@pA2P}xKpk(Ag{%o7>oJ{U$3iBBkQ)T){;z92arA}Qn)J2VYSgY~Y@7>0 z9k-x{?H@bRwo-4_?(zK>Fw$mnWg&)Pia~=`GEa>SRYe-he1J>`F^LBcn&+KPH_;Bu z2$7!krcy0`HEZ2MVI8&5>KrA8qlTw(BywmtW;IRgU9v9bJqznlJla?EXD&t)f;Bl7 z#TsNzENbHS>e$k9X0TqSj6|9SnuK+tb$Glnl04Oat>LwWX#=luB4BeSj9}^{wT|wQ z9;`^4rnhjqVw7Saw`4ME947yE?T5m;##kF8TV3Frm;foPG8Hu+$MB;3M(U{ z-eiXAu^ShO%$y2`anc9G-zIov`aG^@UHKS#c93Y~5!|F{1%g1|{H%2Te!5g`_0~x9 z$poCxH2hH1Pns6@&<0=U2lf)*N_R!oz*Pzvd8o&P*zo*5^%r1evquG(`i&I>S30Xd zcbY!WM4GiwTdBL{ZMI&jOkY9`)Ouczr|qR?P2MoOK$y0x7K|lvioWB$pYOyji(MKUa~bzA zq)YyMiJcymc@x=t!DIFAc8n{P77`C37y6J<=LQKavXDbV$PgdW8ba={kPORXnvIrueSFC4 zA!MqBycR+}y4@D~BS!yB2hLBTz$OzQ9ZC-w9A$x?71AItJ2)W5Z-tQUE<@5isg?=}L zTw)4AaIQY(58Q=h{9FuPJ5BnCrC+w9-po1VzSh zv*9^WW;z&<8Y*Ng2i1kZ-c)M*Lef~?{mw9NX!Bos#b!MDy({-UG3GwActg*@%NIU_ zB(~+P#UJFS^MA5GJ>C-U*uyyxod!bZ;>S^vG@y1B` zV&p8+>Cay&f6U%TqkFRgsiHrl>_W@B?)iU~N4gA+8r;hm^ZVOR=SRhywR<^&t$>-Q zgV3ZERWHnIrK$#1vbA*py951Wkv_ZWraqqEDduz(sZm<#WwCzCfhfBBMDGH~Z8jhc zDXbm|rcgfCO!{$#ZnirZyTxyJb@X3w7%Y-jJVfJ-6|b=-Yy&OcyVz)4?#fs|#H z1D8mh`3q3u*XXWp*0* z_lcGc)zD$9E$orMvviontSg{Hwf*#(Y7b(SZC)HfiUuGu&Tsm&^G^r38@$c8##3wr#Vb8Uf{_L$li)d_^V>2o%`^Eq@c zIrfhxq)}ec8o|{!S-DPQ&aQTUlD_zn@LVk7A*X$ovBP1)+YLnpNp6RRW9UQ+S?xoR z|6D5-93P5^aSQoF2x;>nw}v9(p%&tXkh^`zhH#k8^fGyw7(%Z1A*Y9s*DNF+LN4?n zf2j_}^FFZ3q7n=Iu0uY<<$dCC_01z!M9c$Zkn(h%~ZAmP7V$wTY@ zur0H&^jwY)O`yR$1J^~4dT>B7??^{x-_S@$Ip@gZWhA47B%`x7Z41_H5C>SVDIYK_ z?moTfs@qSj#(y#nKWYblW@nhIeCkX>Tmpn4?m3* z4?UGYl02{%kDbD2;>{n{9jUt=_R~*M6IY8I6njkTOP%|~9*YuD=bo|0G^n8s`xxGI zZ3LO3M%uHt@+0VT0><^4@rR8^{<G`fLgcw z?nV`oVHO=Mjj^to|M~;z6TkFjJMwR4x#)+@_|nk*Z{7iZ`g?YzzkG-E(+3nf1K;pA zO;cXCdT;AV#xj+Y)@_H)ROYRFTv4+jqvn*gAL688!GUOY_7I|w{I$XRnIG$|L9EWC z?Q@W!7BOxjiCS&p)5xXEP(F}*CGKY>B%oK-55m{&4*%?dT3Kf?j$Apo(ySy$ie?wD zja-p#uiKI46E zyMNUCB5Aw-i6LZ+g*+KTUJ|71UswOnUZ2&b4KpD-`WCd61T!Ix!S=NAWR$49%P5jo z#&mBWWH$OgWm$_ZzA&I|$1=2ll5^GIr6I=wlIgWZ`?J2mX-_udqd3Y_k80S*N7vCv zDX22_==2-Rh*isv|;% zVm8fkmO!&;rTrj3QTie(l`r+Pi87{;Xpz^4ws77Dv<28z4O7}VUb3g!H&eGQv2j!^ zXB>{<*KnF(Z7Vo*C(jz|X)~B^jWu; z>L7XG>G%m!$Y}RMqL3ql%f$JbmLBc3U-=|i(`wwm_XF0JF%6 zic`wYyxLS-Y1m5v`>ALn;bi8`mYg?*ko6h$ zlai_sa+x5O9)+VX&|aW_j(zfg4u+aRGy{k;T6>8iPMm8&-m2h+5BC#H*ZG|6-odY? z#y;2{ze~)sJwCV1JmwHI$LDKk+teB-*3C4uRcqFLxU*2agnvCNN3=y|eUJWG;dUtN zHQpuu%2c(iP&rtk%5z3+y0$b7axkxvS>HBY+N?%7UN!uXE0-EmV{e6Xx2kh1tp@)9 zwYRoJ9eQg;`jpLBac7|+(tNln9_PR-$|_wpE=PN@Od`=V-DA@G1=$~Lj@H4S?D@Kb z9)z+qkU`mJBxx1l`8tLPosqo1cV z4Us-QSZw2X!kHLEgUy$AM%2t00z`|C*HdXUBh2BVBwNR>yvA7SSgeyP-Pl7nOw?TI zM)NJ~JjC)jqT;2mX|amR@t&7x5HOU3#1^9_D$53J%iBP587K3s-w-#vz-xuu)0otk zrO{PZ+ki_2WA5wd#7CN?of&h#&XNx+un%YZhKMSf4uhnP;FQ;do%gehXX^Ed$SuF3 zM5IxrV0~Yya-(#sb6GPXtrkDfMCH3in_!E#Vgrpp7%9zh%OibL<&pl1c1J`UL^}x6 z7PKeS&N=>NbgwreGcTgy?W93w@Y<&$ejwYUk@-;6ZN?nPGlX!(qF9hynmV*0jl z;vJzH#0{ox1>b!#RC0@sSVP=h8gpL|gE)@MFvTOHTD}X%)0o?4*hT&iBS}_sb23ZZ zrz%FQnDV|@hP~;aD{aF(x;RH9c_~G+SvQ5?a_QzKQE|kZb%$H~ZC$4q2KqyQ&voAO z%gyGSGZ2Lj`dzy3lLUq!PXyOq9cK3iFWD+cQ`=Tnst>+)Pwc1M4SzqOZG%WFZIazM zIvNNMjkV;c5c4&cM~&sI|^vhS>c^tqP)E97f$UQ{oc!)82ybi4&rt3|Cx1 z;qBG*DDId(wg^NEC@LvZCv9!k})EbmZk?1QJf!y6I zbc*@|joIIF+zW~WqWKi-U+KoEfh9*)3`EA3bL+v=PONa3d$X>hNU7tT#qSq5d0#t= z-{JAPle($U!CE4x*Dqz@*S$|np`#2brI$UCDLG7fD|S5Sul$r=Xp}=tcJ{4sH&nS> z;r%jT!;vEHsx%VGHR@4y$C?#B=3QpI3{J-!mfgPIsHc4$tX%=R)`cXm-~*pCx2grj zaoka+IL^Sea3Gvt9z5*?1UWUR1(Q_gV+JJ7O6PB@Or3;5$-;_sJ}bRyTd6bPo=Z#B z3RINpEVUOFaqBKLlPXJE^3BQnt%El^?ki?LSQmIhU@S<;PL>slY!RHS13twXn4eR& zp&GWcEY+ab|55yox~KswaR@~>l3n&hxQ`_yQzRnFS~TZ(M+XD z$p5FT?<74ZJ3a3t($f7b62U6nm6dLrbwj5 z&e@$(dEN#XP$lAv&Ask}Cu_)gTn-C^u1xjdd;=>Qh#9FKm8o2^Sjb|1ApkBkG-RxB z*NBYjiI-lo;kvJ~2pB!ja)fgj=w5c3z9^gmD`0t~FH59ie_xo@@tv}QgH`SuCooZN ze-B*QiNfR5fsQMY^Jpi+s)S6pl|7>2tSM zrS^65R>Q|ssvZ?GBe~z1>HI#G_+wlWPZ}3*{V8U#0)VcNb3{k|<17k_?*;!TT^Vz^ z`+ml%X8HIXvh%e6{Xm9%@91y(9*UC)MbpmXl9YmgFvoFk+L6wPr>-68ok(b1B7^|S zG5oe8ou+l`oRqT_Vw8#h-AUqVX1yKMZ}8htKmbUm&)y3!Gi2zW$xo0TvS`P&3)u^L z!HknLJ~x%|EtoNBF1~go$$5{D+hwx%-(iyFJfTVR$Do5WFISq~(!1G~FWq}Dsb;aD zNn^-P>%3j3744qZ;aO?@V{K4A`YW|Jc|d4SnTFOwn`u673P` zecCZ+r%yq4`@AxB9ZdM^!YK$o!>jVz&P?~7=JjS$IT(ekRQ}Bywy6C*PS@4Hn^8ED zMSESuB6VHK2#K@P$Lxks(jq69zemPz=zn%P|3qVcWO-G32s0+Kbg|=d7VRZ(+7y_8yUbh-{;W5N zH)x&id$qdKgi)#d9|X;Y&UQ8p13jpL95XlrCqpYYPJAx4r=zZ9J#s*%zNv|H4rG$!W;=D35(z zY$)xdR3)ptUoll&mVZ*t29)F=vmvs`%w%VlR1DcSx2p(EDsaM=YC0 zL)(CL4AY*EIxBqusa;bn3)Jp2-cT}4vrgp?-0)ip?))ui)!g_HnWY&6MYGL#rJ6B= zb}%#^J9F>!YP=f{`-Z^pOaGR1fEH^%qx=5M@- z@A#d^N8Zqjv~!(H z_#wP4Q~V%S1z&Ir#b2Lu^Lbgr3qdJ{f(*+F!akZJE1qQX0d%nqSA2P21un#gvfIG8 zNlB>{Uvq$x%pzWOM@UkI>m4b3NmPQ0qMe{`>izW~$bc>~f(XKrW;NvQb1wDrQh*qu zfRv#6WjVI`F?8yM0#~o~1Dgtc3lGxkb8%lk^k%_S;_9!+_T{!FBGq53$YnuhsQj)x zD9hVa#AB2Z$kOL}3R`?#smYQlMX@4%-3AI8Ll!xd$c{y_;Vt|>DpE)?zce%{TiA2U zR5TibE!MEA^#01=W(WgcG6aC0VLP{_Q>(h3A{JjaX#0YdN6Kiv|7P)QELp|d8jqBX zT23sc+SZT(JkFb^>~!L~WDcK#x?4q(^b$TT<C3F|qk?1* zJBz+=!N+HTFUgL1&usAJ7W{=Ce$3y=24AOS{0~=WCpi}s_NH%PpmB>n%|gAOjoK?K z-rd4@AMejl;l3HpU(a-J9o%0P)6{9!efB&v_2A&rpr(rTc@Fhw$)UG-d=tj_k~i?&yk(ILsT1vdL>1c_~ZJtg?LhMHZ27(Th)t>$5+6m|fzD`jQ&@ zvL8!d+@nLVub)gNPHIs8nm!K8ds1U|_D>p?m3{jXWd9`7g#D7)7u!rQy8RpSze-vR ztdw*9!ZxeNjE7xBD>@{r5G7&02v(Ez;ry%*Tl*SZ*)-v>xzbqbt2^3%vv%8scKFZ9?ZG_dD*vbfGvSb%$~rNej^yf9 zqJC%?dqWZ9&75x&1%2cab&>tYDh>@~xwc$ay%2cZ$Q(J$xbL8R)n@mP4OGGve6<-g zl}(E&sP)}UPYOQM-ah`r6nB|dfbwZ8X;x>KRZ;r$X~u4iHQbL7?jzqnAn^~l99m1g zRN{g?{!Wah^UUR(F*-bpHz}i|HIDq1l)V{DfN2wBivn%9}FI5we5j#97Fk!8m5 zNXy6gvjb@sj7$?}_3*dc{N{a;(4!Jy}&4GlxI>`&m+p8+h{mYH;>|`$19%M`tD!b z(bq&YUC<6cb(Zr?vZ;~M&!A{6{N3IjZc`ke0oWecIoTNwjtg02|Gh;^7jn7FX8x)OL;{fOX~r$b`|V(`EV>q z`^=?u$y9;#M9A{O0wuBFK_0QkNJlU8d4U4+iOJ|sm;~oT&9lcDYU;Z$cJ;N13i{M1 z+b6nEK5o(OChgpq`y!|CQw8st*P@@Bk5WaL3*U&l9A6#zvHa2{gVOA#hUYs>J1#oF zMxthnP`JcIrg5WXRzEUpcCW2L4!_KmsZ&Y%M>Y|ZndTx?veJ}kol6;~UgeLXizq))K5b&A z8MFQTz&ul__uXqMRc(_>oy!Y3xY6cdx*mQGt_gzD(|awNHRA}4 zY(aE4vellf<)PL`<{j%JD>$bAC983nE|?sHOIn%j$r@ZruQGMtIGp9F2PX4?4yTC8 z`UM*#w?9%B9Htk`;0sov$SyZDE^t+PGa#f*Dda}ah0O+tkTluDcq5r5@>L(hbuMPb zSq<+;)H;4E@goshPmG(aGKoR@_EWWp)B}$Y30YgpqdhsFUz_CxoS7%g$W10_(cgm@ zm>jA8+|1f6X%fb8MLMbAFhYk%q}UigqA~Rc z@-RL*so7;XQ|UqcO1Mf?xTtF-huJ6`^LQX(-~0%b^bQe9i7GXFBEJ(NKPY;)QEm3- z^m1uqwI|nV^N@d(Vja%*r0096eOKIU+xJHNsAQeXPtD%SF9C~bD0VQouT*WOJvoTS zfkfq`lPV_pKx0;KCaF}ij5jl?*i&YuG52{VomMdd9xTo=G0=_P16^NslI&5e5Tu*#qFVsiO+;L^n+7W zxqEUR4tgpSJ22?-woq)FOvRPYL&O6qK~?%Tj}Baw?!B5S_|mZ>S5(!%H@S*sICuLb zr2mQog=y_ArVCEIN{zuJr3?15VK(tb0Bv#- z;42B5I%hVWl7B`DOC_J@mn^O4!N;xk zt&oDJlEwVuS85-Fc(f{j1*u3r13=b6WBl}s@#*XvQ~4)d73&iCD<*FNd3 z<}q6a*o5uR6Ktt@%$9k4`9}5HC+(QW>}ub4B2PwvO*|-1!T9S{uA7r{_0HJHL&pyu zc+kRBRNfxZSJ3@#u;@147s5oTf)1RT?bOgC5QocX*|`@}Pu8TrFA~qftcl~+m(dxY zr;TNCHq$E$Gjzr&0EorZMahVZK}=7Ap32o{T8*~ z9bM3b#8|Qrc?Opq=&3@ZrzjfGe zi)@_h?6+R_+a~+%^#)r$X26v1ahqPTc`LfyhAXw-rrK|V?6((exTxODl{a(6Gcc~r zgNAW054uhRyog>k&psM?(4|{=th2CI>vKB~dzj~eyKpMJKBVJ=B|@EQ-v zL=Bv)MnzJ3)uw>9Wbx(M#j*#Gl1htWDKBLIqxBT)y7jhLclMT_Zl*PZ)(NO2A>P7J zYiYaiG>tmyor|tDvXdFLh~qR!LkPFza~w#C2%@WqHr$$sw2W88$kv2cjs}%8yW!47 zsBKOGD%);Jo{6UDGv%n?KtqsLvDo(HJRW41L<-*ED><3NTYK_eesf?8?a8?~#D2-m zgF=W!7^8itB3qsA_GE&lrFc>c&c}tVI)3wbN274(B11IV#$J8ckvw$ou7#8TBBLaJ#HhE&piqX}(N?Y1Yk>OokV z2&IruJ`W=gwI_QUr}@}dAKju&Z$mRXhdO+{+`+uyCB0;|sDdL5{dedq$_R~0nIyWO z63QF!wrx}@8h&XTExlqTy@FP68*7GG!CVS`S;QVb5~q4aExn>my`na|4Dq&|^a`a(0hApwyY?*#aOGRJ0GnZK>J_!NSB$Z} zLc&y@ik3DFE30?7Q?q))%5wk;ya&Z=+@iZ|>{Q?t{y60ehfKzXX+b0^7BEadgY?6+P2-LG3?mdV zD}hYwAWCmb6SbvD@X&++T9qqph6%s1Lbev1JZjXi+&GCOC*q{=werEJDG$Gi-)NlX zV>3>rJyD!!qNRa9K0DbZ_nWQKBY(;drTot8l>B98Vd6J$i71qEqHVZ849czZyLNE( zXOhs+HFb(vQ}q6m2}8|YjK9QKau!LEVx3aF^DyOkJgeRDiH&LlZox77oQhYs$Hy5a z6tD3)&?pm594HZTAgEMsNlOn&CQKWP^4r2PnQK}WZI^dD!%1Q`Mr5qyfpM71^x>J; zkRq-9=d;}2D7+6{fR8D5Fc)@Qy6kR)*Dwucm08D5@}4F8X^W!?DSnDohexJWl0-#Q zdm%Pb`cJvP3&*6IvNbADDjuc3&La_u5>-(W3AgBQkz)?yFyDZh^)i{Y3|z~ttJT&^ zaz*SBQp&O0fD^-S_V_CCk6x!UF8};c(6t-~dD@$MQgF)1av3`e(Y?$rqXr~akxkMK z>U73e!khIqi~r_38q4f16+3Qvu7)g*7)^jW=E`Wct~d+}DW?wO%IN6!NB{Rc2g>L~ zY?7@P`r1c}{P*0`$sitA(_;)^oCQ1+0M^AVU~;7Z#zw6dwV2--jP+XN!|uz1?Q3B( zvtU2*VIO6|K6%n)>5?qi_k7rQtGW_hX<7VKgl_Tsr+`F+^J4$FcK2G&Xu-aM}h_CFT()k9rgz5Uo4&hPS@Y+)~C!QLHZ z36fjg1&dqQAF^PN`LOG=U`*_^OUHD zMo<5_#pD|d@BRFEJ~eFvkLxYqodte?%`r=a69T|R7O*4$yZ}JOe=Fb>!z|#J0pLN! z5bWP;b-x<@*xLS1sv+B6;=Bf}RnFK5by#|-h4U8NxtctfEq9GBC>>W``4$N^j!@Q$ zj^ap^cg#GjpctDtRU_Vu{ODS6T$@&zzPZ?6-%gjL1$TSDnJM|>II{rXe4=9W<1ruZ z@IM@AKTHclO!q&0sZo-9Nx~1~{10#24`ag*XPFOmSAtH2o+nz*@5IvAN+ul@emKy6 zD8cjO(6i8Z)?XMK@!9lqS^dqFeE$k2wgrg}Oq#fx(ZbVM*Ll5S6Xt;mw_k-dAKco_ zesIwdgz#3ZVkxdG*eKF^@8p0acU>ux)F}fmhn};HXZ=~r3SL~*BPX}Bcv->I#?fESIQh)kusgp}Qel!ib`F2@P=>Eb@P+3%hIc-WZGAZB zW~ob}7i9<(ZwWo>tVbigX~T0=Ix>0#@_GrPzuZWzBX=Jr|LJq3DN~avxt2r{KiuU1ireqGG+0YxBPvZ*qQ3As%Gve-Sj>McPdz_sM&_0_HD4m3MTVnSQm48E#4v681UY0EJS**Fd^D76k52` z;fZF>Od~l6vkx(ZKL0Sov)*~fa+z4W!*v1TVaR}29A{-f@l#(0ME<)0L!CRZ0Tovp zkbcgMkC>6>-9P&8TSs*9?m%Cv*r-aGeX`L`dh&qZ!L`j=o?GzlO2Ua_$Is9yuXIs4 zOvRh^D-&rcJrA$T-HY`EEQB=Pg6O4c#oV7ck_n(V!3~8-ABlswC;0pciuSTi&5tgL7y34+|o#37KID; z)rTu_43pzx9CuRc&U2I)IjDLQI4#Y8E@I!-e`{KA( zK5D~b)k57lc%V)Cj*~?-gqRhqkXuZ^URekL3 zCz-yf!RkN4pW68N-m@kZgFo8fNB1;`Ylnv?Yu&1k|AmRjhhwN-)??MkOXiqZN%FT^ z6WcDy8*GvrmFb7(DvSSNlGmFg?>*Wid2Ep6kewu1Y?EA}B+LIdN%k~Je#<0T^a@PG zJA4x*Vsy?eHCE$Hy`%DCeczb*1xy%#q%S@s4M4-4m^cO`zsIb z=#S~p5${zkICQT|eJScCZmw5H(gVN;?;N$GB_ zMr}tu)%BA~Y5v{+G4*ud+M9bMhXSn;tpda#Dp`71@#9nRQyJ5KB~}WPU!+xC+R^ch zbzfx?6VVZ^AP2uz4vr%SwA;}q**5x;DZlSG!uq`|Z5)%_=T8Pf!`CL@uA zZPs4{IYVQ}LC`|$2;%OHA)M{J0lkx{s9C==mIJDPtVZ(Bl+5Gtbf)B&_VF`4X!Co~ zi3|;o`YU8gm;B^+{`-AHvxb!JqX=x6G8f$QBv3PooDCuV{*)nvReExlrwVGJjCbB% z$ZtjCangHsOK#)ljOJ(U(Un`DHAe!pP-3(q2C`sAJl7Eq-ODW*WGTxTmlp-}Hc^r8x-o4RX2u`-oEy;3(^$!)4D$xj77heu z?rg9T)DVgWb}Bo%RZNIUfj<2ZEsLF!L>@%*4b|UQgrTEQ zm|vOK17GE%3U1Hx*n(G^nwCA0%$>}Ol&=SYDPFha6~a+fs!{$*6=PzeTX3F@?$%vI zmu?gp!zeHJqf|^bLPh45Tt`eM${ZZfVhhO+1*=S@>bLM0$?6Q5_INM#gZ4P48nsnR zxjQUTatLIy=QytI6tV}W?j$ov>RuWa+YPwjxn(A?RV1cx_PjwV&bwNITQb!|RPfVx`}P%Qf$*~iR!2chxC(c>IXoA_E>)g zO*&p~dHOW!50mk%LmY=5PAbzJI#gz?dd9x88OFecAm83|0suuC(@UnGf| zOP0=;Nu-tDuOCyR+Ru6@p# znZyLW{_dX-ne*Cvuf5k=d+oK?UVCjZ4|t2jZm5l9dju-#S?l>YncX|UU z{z8s_vlF*fw&Z>+UpJ6;nr!Z#_MzOhkU;G*UdR4(?%93Kwrmn}!!Br%^X&dUYhABe zU2oOuD(pZQS7`ZYg#tqPa({t!Pj})WA`e`rDa?nop~TVx&MN??;icTZE#O{~pR}~& zpjP@SXu7aO@KL&v`n1XJXYGpDNc)B)`v*9iRZ=Fm#2%iuPodby*Nsx>tdf9yVI%y| zSP4V=&}&QB(LHUKygVR{6%@(CdcI97QQMMtl0cEW{1TxN716HPC6(F5hc|_2r>YOr z{z{%mNr*D0?UwI+y8;ql@g4cdGR@>2Iv%&=iQ2 zK6y0DS*2a-{wQ_7mDC_qo66Ssp&VRSI`BoIssOEnN4(TR8%clTOq#|DvdPzu)!ZR&ZK zDGuU+Y*yDO6Eg8VB>3i6osy_J5B2z9vW)83;^>1ASalys6hZBq4Ibq?18f)71nR)w z(O_x;^ke-%<*koLZ~D1sMM!Ug5mu0~EB#03S$4FgrmRT+f)^H>Oqor2E7EuI0yKMw zG~p$zg^wT?hZQD+R+g_EQ zw=$&3?3Wpwj8MWNA2E&dGL0*yo7PKTy$xP29k-pIi7otGx`Ll;mhtn11oW2tiZMm( zUb$QzE%xMbW}`ex4OXI&6!7L5aT-u_Lq|P%!P$>&2j_jXL@cH;*cvmz^l$!=tYP?bN zh3x*GpcyD65+SF!MBR07i9I(Nen5L{oopGY!BifiP0K}t(}Sj{#g=gzr9`(kXk%K3 z*|X(wB!i(nHo|aU-9_xTi4pU<2MqHA%3og2qR)HFFs#ezLE2+eyYW@k-7lxlJp;vt z?HTU(IfKd-e@%i~vIP(DY8#3vbr5()W<$hH2&pvT@nmPDfK|1On-WpCLBcW3R{P!A zj@M}UPOUFA5-pGg?9*^o_()=4EmNq7BspHZ`QM^3nF}9gm&yto-P9H`4nkA6amtyc zHLmzM=J+9OGl`m0EG2%*QVFg`HJHJ2AR59%og!^2I(FQT^eNwL?p9=AH3aU8FP*WB zng-y27R@^uI!q~W6UG_k6*0t_rZUr2vF)R;%jE9Qs&J~Ic?XlomyEt85Zl8t%Z2IU zsFmSvD2($=+!9p?B{p(3@`}(HoM+9N1{~x6>zpOJRj*E>sp`4y-7lV?v`XRrT+CNC zc<1`drRv-StGg_EtA*m|CU-w+cax?PYkt~PBHbZsrbG7ZMFM|;lDdew-___R47w)VMr!A>t!OnDN{6pC!%u6X2+&C_)auo8CPeEm1CuP-e$01NPtP*{lNsn zPOGkjF*5`oq>6M5;u7Jwx$ntqk%c6HRH6((LcDkcV<#Riwz!!j~)=rYkjHSk@zP>)@KB5KRh@tN; zf3=t{q_P3s{IOq6J^kzIM>(GeZt_1XA(W&5w+&xo4*MHktVZOql-0^gyL1`}TNbz) zb}72!YclG=Y3YH#R&%_Y?sHx=o@!0<9vd&;7aKxLTDdIxc(_7H2=kVjBtey zZMAGErVFqpTG_+q(uWj|QbXS}j{=@W^(NMd$*iMJ}!28c!w!>s?fllk1PXBPjbSLj*CH{d5b5)9y3@H$&16YMCcFFIwl3Si|i0?=v%?H z9zl2O{z6WH2xf*x%y~YR(9OxE5xTjEN;*nuG&RFTS)(KV{d4b-PQ>c(XhYxew&6c$ zXjKOz{x=M5{9C%eBX*_U{B{if9Z$D>(JnV)2D}+>#2oJrN;M78l7 zq}3#yT8vyE++Jb&g%QH+l6`WqZdQ9U)gC>0GhUi^@F*l;G{i&7!rk8M-U9dg$qU|?5m2yCm zMT4n89NQ&W{TQ*Y4Mm+q7aSV!2|p2N(IT|{tD@W~{!yG{1yfP-AYxwOGt3X8=040S zhPggUfVuAxH`jpB5eV)0|4#Tg+Kb+uM23dmd!Y9&o8F@$Gh6GT?g8O)T!RaO$+1IN zly4c22{6h3YHu{D`#L5&EO3lk<(1fzvk=lVHz6i1Ho*TCyDkLR&6z&R(#?rIC>}}0 zT_G3*lE14hUaGp}1%|a|yyKvr$ar+E>LX4RfbO5_{tsidIwy;MmHI-sZ9;d4=;OfX zzRp2W^8f-i>TiSSZ8p&_h3GFRqVL3i#>zXe0ZJVD z>u$nf)B}LFK>4&V2=4Cf5FZQUiXzI0e(nb662-%m|><%XN+TfzvYYRSRef=)A&T)A6 z$uBMXdx2HEuQUiR1TLMSqbI za?))2(K1eCSh`MM$S_IKRj_yEmlgzC(i?39$DNv?0 zA1`-_h7y;yMDR0%`{Ag}AJdSqSp&|ugefv?Ru`wgxrM2U*&>Pu{@%E1ZAm|}r=Wn- zM1}>$lRmM|9psdOAW`Uph!K|LJ+UhFdmg{u*y;TGByD#_~a0D};M63*EzMOnj>PG(YEd*<(e{zc5Zh|JG-*S)x3oLJPu+2tLT41CC zMC1NQ0xHW14~g#5+i%s0BFBTAkkWdfFp?UhQYv-QaK9tYI~-V%Djb}~j*iIK#{EUc zC@hXo(Ghp1f67}U74Md3W7Hud6{UfH;e^$0W7M|v0=~)@iTo>ps$NWgUzNfT)~OkZ z7SgJ>m+=;_LqgXdte=**--U6mJCd45vTx<1e3DSe!Q-wu1nV6v5wh}V*eiv{Fh4c? z@635D>i?vEYHmDK)I3trXr~l?q!dSqHzCE&c_L~aj+h6c{txQE@AyxBZpGjhc$j403glzC0d8JSZsVUWY-z^6Lt5%U%24N#S@_whK`de*8zGV zuS7+U^M8WlohikkQo-9%^w_u1b>F5QZ_T++sU=bej`DpY{w?aJHKnMQU3*|iHY3T9 zG)Nj?7b8uP7PWag@a4@Ii4EOkjekc#M*Ih2KEWXOhB>6fNEVjpQUK7Uq>dj+4md;- zWXtckO}(X~7Lo&4Z9o`O(s3=Xg{y0&qc!MB2LA@CkFb|$-1g}qs%u@E?NMm*^tJ^u zFMQWX=^QS+KZ0MD%npqmfNoI{;NGN%8UCFMBXVBv=o=aO7#j-TG0fOIFm6w@^1>1n z-Suug^P)>XlLeuium7Nz>&y;AM&X2&PKqM>+RRC^?GgVcOrj^Lra-+Dg7>s zC?!(^EPPp_hgi^E1laG6AbP;pg<^Em?pEVG=LX&V5g1bPLl(lAvx*!!m074#VZ_cN zBeH?WX#H@2K8g_VZ1&oR;CfdH896tnO&>*|`2F3)*2mv%6@CyJ>Ay!p37fa<}QJ$)5CpVT@17vpZhllU)%dbN9*Y zqRiOwaTN2H!VA&XX$8Yihq2?6WfRQMfo_9y0Fq55jnsz?KvDDksQ->j@>OZis0{%7&59XN6Fs12vAWo3)Rso;D-B!K@&reE@VGa!>8u>#}J+-HP zUh)8iN6bfUbrviz91YO!YT@-7LA?wr`Y52`KYW*!3M2?6)nGC>GOFDGhf4F)lY^Er zFs3g=57iUzc$f~Jr6`@~_AXr0c{5&LfhfaBuc0`v=H=G>LxdAjCTjjuvS8suuCO|O ziqZ>Y^v-3O^Rl2waaMA4i9HBt&9ADXL@l2m`jBY4S?Th^3rx4s#*;y2b1WhEJPSj* znDj5N%u|Zh&`vB$IiICWshXk&x4T4V5jWFS-Y#5t@# zOhpqIT7}E%&?-4sy{b-o%6({ii7U9Ys=;*cNUOW~rn@!mR<{I?9EY%6+$iWz{?TgN zA62(C$NBgmG~>f^E;3OOb6p`*a$O5=GLm;cEMHU4t>B`02cgWd&vKHNO_r0r!Q>w| zsjt5jOL}UGIGCgpG=@n{b^ExQ0(>91t<{q=>-fWzHnV}EwoBsaXfWF{Mf)+?agY}x zyVDha+eqEr#Yg5To0WIE%!5e4d4yD8uS zzNFhE8JNOmq77ZF<}F;klr7Ib`&!18_A7&Sa4;dn_SUy@6N=QyOGZHcHf9F`-eQ`uvW(?6{GmuK2s^dwF! zGIzHJ3qgng@@9%wu`n<8N=}&Ik9NweS*Cft%W}%|+Wie%sOofiCtq<8SHNSmwpd-P?<9B8=R~fBL~6-+pA=81|&_wDs_~eoTP`B{z=fFBBTZzB7|PziAQ6$ zks9U^>BoS`3@CkFHx{;ARvyLIRl*{P)fMp304+-G&~xSn^wgcgta=h@V1BAS#m)jX zeqg0At90EQvPs++OWPKy)nZO9>;aAA5L`C2E$I&rgN%0n?GW*bLTBc#W{$V1Sq-O?_UPs@Zx;Nrhw=Bd1`G{(^^ z<9wK4B3igzEHRpxV6cc3mv2r_lG&s(;)vB?VzIKm!A8PT=C)3fVW1J-veSrF!QwG7 zy5%z(!W-_xqfiPmJSt%#FQ9Dhyo5w+b^17AGv{Q5nHT_^`D^xkxNLk?b!Zn>k)%jx z+3q6|m_-y|r}?G4Ln5fY)Z>G^;lpw+J#)w#M~3vsp(MU7X?lEUBu8+qa9lL?JCSaR zpMn|Yhu4-c(4v<%ABz2lZeFGAHWk+R`hQ`)xvvGF%7Amynpzf4 zjn4}AD?XuF)<{8$2dxyvq$o^ZWPMr=%ck$+1Ienn7cy20XV!>CNQ7r@e$cTC#WkNh z8Lt(68H+6fi=B2Ed9o3MbM#FOY@kod=x-Vof_!WULM~X&Q@*+K2O)sRkB4uua1Tn{ z=5=+tMIXAi6(%dy5AW*Iwbsz{#a)@m4?JC&v5L#EpQ&RuwB`xaOys2X48vzmZyiZ! z;=JeItLM+*N4vlE$#1%O4$EZb_c_`Y#@qV1E37@W9~(n@aE0LQ6qX&@s!C}ec7fZx zay(P|7v1uO^E~ih#)p5^snBaia!3Q&(?7c1$(5gDrkz72ecUC9DHPs3F5NYzpdfH) zqbv4(=K7BVXKOn3EvJm$kWb4&F6|BZ#6BUvd)TULwvqxDc%D3XU+Wj%6LxM|y6^m6 zEq!RAQ_K98F6sxKFAv^-pYP=C-M(=-c*}dk`&OUuhV}(dTm6QoK8Mc>`-S)NAqzXS zueLY5_61HY^V|0;J4X+E0`I6icrTvkHsyy^YI`_~8A z_I01vi+%@gb84C2zE(R&@Ae&&2k&iIw(p*i$idsx8{WJ=;a%Jhydin;7WND8_#C_k zdczysC%padTNvrlKKesp9)BL&FT7vdxrJYP!@K`h2P^sbyrmy_fjoG>D0g!9=9lsu zJYR2kXZ8ut)hE2Bx98`&!&&`;+wd<7IW+G>w4N-EL@2GC?^H6sdH-qW$R-u>vgnPk z?8{_gCo;p7dF+<-v*$|QW6W35>rP;3Yr-d{8l^C3PWCcnoG&}4PL`chqa`3us_0mn znqEo--ZdgwJ8!ez?xaTPIoY?@WyR%Hs`S1D_51H-+j9%KRdKXsMsjpRI^ED$d)C=G zB#AVIDh{EFVX5NT@^g~Zlk;e$o?)ryzIWJ(c_;O>-n}cee1UhJw^%Qh%Zq2^MQygm zkDlYe?oIHqxf-8IMyIm=J}X<)tFqbh7rgD1pHHiQzUyFPk|+4=bWt)m?=6(XY-qA! zHuHRXOqVpn9)$+?TghK!3o5#^H(Gx*uP@Lu?HuJVIfymPiwyH>pIEqlSteOD_Nt{% zE6S_DV)ec+x(?4(U}PSaiu#0okVeU9%_4LT_zCGrm_JTkYh zW;WT0^P72G`nYeRO|o)+jA3HLdog|c<#~{IboNz{KMQq|rx%fqsLIvDXXr~={p`>> zSM2E3b&xu(E1YpuPxe%^oX*#4K4KkXn;Q7aNL#hz5KQJKCke5F?~5{je+xy5{o?+W z+$;+mYIDVoU0tkRZb|=5)gCQPEkpL2I|$U=eBFFiEU9LYX_J~u5F1-29pjl^$n)ef zdB%!I=}PaX26w2^+pW^A*>7HXtX$$1Gw@uz{*_jm6qhK-kB>#(j45Txq%<9S51*01 zp>`>Lwo11p?aQycRs3h>D`G$wB(axyV0Ebt=?d!0VV$hz#(@`LVjVlGtx-+*JHH|O zNGs-^X4|**rk?@U9t1k{TVD6yJ9EkE7{3Z;1R&j z?cz?jxbuvaX>L=qt2>9U+^6mWonKigpHs8TIz215t2>|W-dMh;VtNCn!d*gnaj?o1 zovu6{Cev6Is#!M|EtAsmT)_Tur`$8yPGZY7f22N`i!6#;-{qcDVUnSsh+OdtBxwMlW(z-FAL`P?QLn78d~h$$Aq$?FBbz_o;dVTMhK>b2iw%iDssq>hP3zJ@{WWe zcxbhF5&=vZAno?%>^WC>wWr@xB_bj&b){#j0>^u1B*)bBAr^b%D|db?o$B4kUFq9K z3h=&$!l9~UH5dI$3A<<3o~p>Xm2v%ohO~ROlMf_j=dXY3khkMJDvfA4X0#Unip2iG zF|~{R8=~k8mmjsCy_~V{Rm$!>m77&^a}qZX$PMT!x<4P;AiWn{G`vKvYr z@V)h%@7h%$+x=EHtHPJu?BvL=@Mt@=5+d1JbE-~p`g;llOSmtm|2f2g8|fGB-_usp zfqQm7+*fbv3+|J4>Yi}T>9wt$0~h@RW-3VUKT|Ru2lxZW$Qn+(EDAHn?DngVeUa_E zxq3W(nnIi1{yyt5y3cx~ud`sYP?&zx0$w4&zi$B_-!JgL9mpc#l6>H=+}IZq95V_7R*7cy_C z3pc+VG3R?$)$lrOPMT%5YN3r(JpbIoXN+a`Mwr9Z1`WUKVyP<0WKbRuIwAgnyOcK zZ(=<%QCSeL*E8#|{rgBY=becEmHIP+nLsg1z*z6gj8V_CNUUq)TXAA5Gb;58ob~ug z>J<_56{+&tY9$D$DV|}osonss`9IaGD8|LN>zyz4U><^%U3D|Jy_`C-SNyiaqPQ`pwtW+viN?WK~Y1F*f6Lk-zHQJq@vZ~c_ z37yEm!NmWU`Z-c7E%Y(*mUIwv{v>la4kQXOMrxu$OxFJd{AkTvr8O3g$S~(kDa6Ln z*3ZS!Uj#>jmG~{n{Ufs}>fc#^9d%eGh>K{U{jA((Vr7%f;bX*I2(%a}1|#4I4Q>y$3eQZfq6_f-6? zfJd(k_+nqrjHL%m0JEC_u}M!(D2r5%t%zvj`ALqg=sYbmwlLxvi_S2Cj^iZqk*HJ> z;c7gVsYO6aj{n|pAQ>K+9gI+gk9GK5PjXv1p@R1Flbn#};oV!F$b3Nj(Zqu6V(}_K zG_7E5dB)ruZjxo>U6P?pbd94$nJF5Ab0kc3dqct8)0IA=TtA0&i(j2uS0RA;1B$!a zb^q-RbM{JBOWSMxifDU1_@`g}+|fr^NWlZLg83V>qjw!$)hch1D(`ZpM=!-L%JwgF zLb2|e3^^uyGlMhZSsEJebZgc%eR}2OQqaOrl0Wm3YS~c!e6Eti?Mfo^`k4J4Nq>)s z{*DV~diMxtFu%js-=I>oU%n{a=aJ#P%sWS2@8rr?B>u6_%3%#GSsTwO>8~mvGNSlc zbG1gZLHz>$xm^regaKfb9%WLxcSc_@Z|)1GVP54)|CTn22PROzk%hWUz3fY8I3owO z^W+@V5q(1aaBrV2y{a&MwgnZS=dr$JHTC3vf&R%Zho;__2lSEa`f6%ZUqET9H@*6l zY*W9Jh5B3dvahE4b5H|$P{;HM^|-#E2FIjBF)gL+Y)P>cJ4 zTAH4egZeUplx7$AX!cqCR$#;5vds?WRbb6EeKq@jJ8|!3m!)4Eo^AFeRKRNXO7*g@ zW>3mN{TEv(o!&IQPpDt-2WmxnY7XjOvm~CgtFNm6l>{O%IY@)DZ8CuzT~2@TgYY<6FvRgp&ivi!4Qdc`1GVyJBjKFxkWv{P#lc z1Y4bCzyy9B@KX!2@T)EOy1>V@w9a@&z{x+UiNI%big9?K{yE?!W`+a*sV)nCwZI=~ z!LL*B)jqB+tu^S$w5avjtp8007bpf9mN7Xfw%8>j2lCl99@KIjHO|L9gR_i=c~&Jg z|5a83mER2d$nP3UW=AEkToNZzjAR|PNk*nz2@&?YCa=WDYbJgI^~DBG4A#Nsx=DR- z`kUiX%E-7~Z2DmvP5r)Ta$=foX_jk>Y&;Mk6JL<>eZkA1(9& zewvB-vkKzwWN;SC|G31oz^Q6>|Ke_8rz*CShj6xO{l`EF7$BQg+-!q)dpj3IM&9D< zyj6-+rKxhY5L1a3-F;B@Qpx$SVkbzblER+OCqDyUB|a=50j?5Xeq^xi<7HEGL1g4S zu-S9@Up#QZo}5Rmctr5;lM|vXMdsT$1TzZDwgPx*4tvWM$Y$V=bpI;R%wkYsXS(}o z${zJCt?6FD95bSTZr<$GD{u70!dNBIs9uU)Ky}k+|B8gJIGL#W6py(p{Wacj403T~ zq`bweb!++&DNQAMrL#QZnp@U+o}Ri}8EGHe1RExWYqsmjFvh+*rg9C%k>qSL<9&?- z4s#C5xcp(&T2I8qyn*_#zCa4`e^u3|F}i=f*1SmS>wivKqBXNxhHH`qs7e7^EFWZ! z$KEtkJqQ#x5n;2>$p$K8eM(lNk2<&1qL16s?A!5F{tjP9V;;WFkKImDP?bLG zAz@b>>DXF_l3vB^1$PiOE?LX~N2vbT+rE04ZIuGAIFO~SQ^F1Z_WIfg+qa}qY({td zP4RzITbU*Yls`ym1P@ey%bagUOr&h83dNDm2OF7H_&INrV}bCclAu-ep!6Ch_028w zM-oj~_y29qpU!QO>edQT>qMiZ>;)`ZIc})a@b13KXQU>nJ}KSk(Lc*Hyo&vkL$1`k zRmF70P2#m#iq~dj6A&lO*4@ViGmE9xK~r6f_}lBN0oyhNZ#5qUF!0fS`*z_E*<4z|T`^qZ39 zT=6B2O_T{S@0Uq7^XInbA%1*O^TnuGJYOcpKzgZ$Q(Br$y+hcyFB|O*|HpHXZx%SG z+?-C{IEd)BZ_ghkD>=h(DC4LmX5L%VUThY;i@!A~RfyqEcpr+Szxhv!$A#VUXwKr= z-cXRmjCIqCUqq76W>=)R%gX{!2eN>(uPK`a53Ok@Hxcu@9`;IVP0#bd3<8NZ7GK15 zTJtJigv?`bEtFg%anh8KAl261Vcgo*iF>8^a5CJMF+i|sQ@pI%;ah5$FUvy!S8iX> zY-P`w`}BfS1exTPjRtcocwIA*5tqgM_H6f|~Rj^@l(C;-feKI z2eNlTrKM~5ObBsvLTzHdJ60^#;A3R%o9W7TYdXQ#SY0=3=)*sh%79uu)nu_OWmd2- zHknDTln;@bN;cWRO1W?0-Xe#!4WDohYA}77pb6rUEbtr7XA^tLK2pjW8G-MtZJ0{4 z_;CqJT|vex>F}D&eG)f8q$k|_2kK3S$6kB7SQ^h6do9Jh#$C8+bIfO6Lc6!67yeo{Cqfk= zdPfUiZ7hV%s^P&!`}`QSdLaZ?)qxkutXPnPX!0EqGfselh`H5BUG4!dEHbLzt}T`Q zzxlX1D-Qt#AaHPlWSD<^-Y0O=!EOz*-h=>tS~&$GaGALul0Dj6)4N_$5%-!kX-;ZV zwQSnww!jfOJJW{<;wC%C$pIR+rXM8-J`Taeb+sQGN%j>ar|bODfh=?z$uM%iNrhSn znx5AE1A^sIxM{dtf=T|ckzw{MZ#`X5U)~x_hUMMpV0qX=fAE~}wNjd}Dy1n-+Rl9> zNnd{j*y+drfLrj|5ZEC;3zYL>*BQ)=$KyB}uJ6i(9%SvmU3nVr#nW(ng}m~1MYPrh zdrRfn+$dePmM#lvW(Mf8I$btrmNPe{+jivpNa`3*)p-SVjLNfn^xxUp{wqDT#;ba1 ztsp)bXsNj3R@G1Y>!h{PN%yG++MTq8hioUUu{-HPj0ILF{hs@acG5;E)#{`&-Y7nV zCm(^_Syq&8B@fa`1rNz**%I%$`DrIS_)x2dv4{r_=^q_R6Hi;&q*xlTGL zh3CwJxh|^mewi-XK`2huK~JEAruROW-#deRqIWK(GGgPa{cIPtz{;?Z8u+v0`s$*6 z>ukvZl8@SJdL+mvP9b--o_frZ2jU;h3I$8CFQzwPUS}L=K82LBHG)*ptWdya ztTd6G>HW`%P-wBrAulW7FQ)&Kyb=zGQ3df(E8;;%Jk%f_YLs}8nqU@38b=G1T+l7K zz`lFgdvAt&$%TNtLoNgyxe!otp~WgjA#We|5#l5edjYxdQ*_+_XSvWh@VNnuyJnj+ zqL=k29v*rzUp(~IpQqZ&Hh(p;~!98qu3pyi&)*-%Hxu{9jlEbLJiEk_lBs>8MjOB~ByGpkf$ zC&?DG)w(zxr~yp^gEa!@2pWtv-}dF}!HeFKCSjE5o@pB;no5@QMn%SuJzlaYt{7e_ z<&ts<)0cOtyHb@Yd|OVaL(9Z<0ZL*_P2jSl-JRg_7?KffU@|&H zC1nEP0c`|L75>PMsaH*3&!{>Z?O)BWuoZku#*lMm%g{GjJM-wj&t#s<#J|q2)`DO` z>?FfPez(MiYEQSw+6{{r1_}*DDwR7sbL}x7Vf{nMjj4d0y;Gb;Upbs&Gd)u31N#vh zi`YWvW(X%Z0`!f*^`BcU89f;_d};Jd0%3TgBMi1Kncrou5#Giz+!}EQCGNgjmq9tb z(u;X3pn1pPXH*aJ!w1cA!;|3y?8QljJ4v`xubfy)r4#F`I}jD1Wp~F$uI7Y7B2CDS zh$VM{CG%Dfdmf287JVieeR_sgzkA3G?e^$_%jqvc!93^UzE3SLKjw-X8QA=r!HcTbCbG8ukM_h0POmOO^Gg1eftIWL$B2y@K) zmTY(-0K6?N!)sx&y~2y>ub9G2(Y=KEiI`I!Q%BKEf!m@xBih)H4hY5i{A!Hs$yv(&2&xp9QBVx`FIZgPRfSVx} z^hW$s1BL{!8NG`UY+gW}P_UOu5eKLZP6|-BwK6_Q9o4{uY$aIhL8ZVl$(A|zHzCAB z(kj6^`{glEU8^Y06ieLteCgB2D&d&?C0#=*ET>Bmxa3%?rSYdbE>jb&>mF)c_+Ww7 zG)LqNKE>sS0u}Qr;H82g+U>6y_gSt(z2xispNc1XMhDWBJ$mBO4JMM=R|#eB*Q-Cv$Y#s zdrH&^!f2V@s}QpVPH3pqz;Apk6N|wSGa)%L_egSL+KC>9ZwU*O z#s(ST#YU)>%&~VHN%qn$pvnoXvrf%&_{*~&IrY26tLlXx!fx6BdMKc~VuM!>U}Tn9 z0q0v)gMMg&i(9CGRQx`x;uEtK$6r_PRrwqLZC769va&?vCiEl;ynQQ+asE@r@l#89S zvO2wk;2@^LcTqpAI8|^E%9bKo(3@DW?0qOK?hdIj%S7!6#4pAy+kI$|D;CkslX|i9 z6)kpizHK!}F|dSG%5nVpP7)tUAD&?yl6 zFa2#2(m%tdVyU}gIK_tfT&M6cm~t)lQ}dhReCXd1dX@I5*8vK%W( zv&<~R=02kHu9V=tgnQLfs}$2E7p_20T~>aGAgT}Wx17I+5o;2470pcPLAw|XmnFk# z`W~0J=!3-|H{8WdsoZqq+s%g-GdPUP244H*HC!1ilbh{&<)4;QajogU`89(T%M#tE zXo(~b_{0Rv*8&x{WWBdh@o>($8C{&Iu^u(U#mkJ;kb>x_a9zaRqBFGlqjmTlwNS7m zso{#m30ITU=Omq-O*-37x{D;WB;BVppPvY5fphpB%pVNj1?gj#GrpxbqdqkyEgM8G zT*ROeL%Mek^aBpkkw!<)?MZe;`}_arxydYB4G77S_NHn5&rL z4=Q%G4J7#7se-oR)~E!_>Y=^`y%4#rR=qw){`u%PU`4p|7H^u!~lLLOKszibYv zB8N(uEoA#vPvLMW!eMe>wb_Ek`nkODJ13D3OiPtJ&bAq1b3c@dIXRBR5R;umPO-VB zY?E?(i3xfERn5`Y=~f=Q7`2bU>ARL+OP~FBm!MS1he_||(aVt!ee%O^RGu%!4-MJ! z-(iHx%AX^OhLBypB^fNi;1T6h35N4A1@+bPkwZR87(aH&S&XU=j1pNFN|{%ImPC9VOJl#u%RDb`1pUUCiLQkWhB=|gnDApkq?_x z9vLq#I+#ZW{4l}+V#|la4nLew**8DD^LQ_QFjDt!m!6}fitjP`>L?PI z_b)KcWbim`^|vJ>PMN;+VBE!43tg{GwFO~KXdxjKl`8t-YR{v)3!hMON|G~B8bYz ztutOept1>mj-$C*{pN`DxVAq~Uw|H^S$MxZkO!{^Jzn3T=rJ7y+@i<0M-)Aji6ATE z{ulH(4Z~g@J%;hvA3eJ94$4c~!DFs>{BP*-9V|8d^o}FZ!=thZJ#PPJ9)6BUk3T=! z52!Cdj|WsU1U(v5Ho?z3uYXZ`g!%*Z1?b_)!n-{mp3sBiPb_&A+N$W0Lcz7@ zaT<#@(1R8HFGmk|OAmUyzqWsR?BZJ<={EED<>)bjKK&)=k^a486M9_rk1tA(Csm#= zH-0o^;l1>K4 z`t+BeM~%uR^w_#T4?jngSK?mRC#WybKhm(eP5*p&J?K%gMbTpo3b{oOH-m04u_gdL z3e+j_qWFHgoRU&SYqP2T_G^_&S*Ek8c3G)@l}+`ul}hhX*5fLbl-h8mD)lGX^h-#u zr|w;*vu`aluiEef5Db=C{Oz{fdXzTRSqr0ab5R%rG9QZ=V?|IOR_oFk<+Q-AZlS} zjok7dapSDC&+c{7UXlmz zzJExvqJxM#EA@GK@aAXXJy@du{&q}^j(KoWCuYkE6jJ&TfToldL@E$%o7}<$av{mmS=UKzEtlJb;3 zeyvO_Q$@`v>^6Q#D62}=(;Lh#_&hiJxkP=oSXkln8qwNPMb~Ci49J62W!3gX+~Mu= z(8rvnjI=)9iLAFiZsMcUlp)!soNG1ZU#QGhvR{!b$F~0vEk)Jj1}ov;|K=oY$OHDQ zB3@BZ7TA?}z#iP|l(F%0)!xNfU}F@pdlfAel=>{Z4^>(r8WF{1dgn> zvOitqh#78_!*NEn>Zzqx!0hPKl>%K%?z2-3Bk*g$IgDLpvMbEo7gZ;xIFqRXiiPdP zD$d+l%Go4|J6LP$Z4vq4sUD;6KY8p}0~EY)=H^*Lw)RZ6mdD)4o03}fu!h7Ju9oSm z#o_;{63g-c{#;jQ=dY=ve7v|-^BtQR%y!=Ks|JrPR znfBFW#&@fjN@_jJQ6!I{7zwp=tT;3&PWp)~m6~iCdWjeh>dg|~IO+FLrZQDH4D!)y zIpPi@z>*O5@`rMWh)wK;1b<#5Qc^?erjYP8X>066NWFNsgMyErbWot0uzFz@f0wAN zmytE|yjri7HP{Q`I<gAvC-x#PQGykVR)SSqDuktA$?A3et|Tw^ZUC5 zqQxh%i+j~Lm{;RHQX!|trK-lK=J{h$?q*e#(C<6h%IDSlr>cNn^=`K0*`e%!a@o&v zUGRawf#GxC4lN}dyBfPQ;<{8rGa4hQKXuVhWW(WX%O0LuvRyikn-gC4HqLJ-uy*cE zUn(7{&0qd$t^z0SA#!))C+?v3;|;;o zRY!+YH~H-KIfo10|0`%o6}>2gQ#^AI`5lC6P5;X83q4n|PRAJe^*m$btxo_9_G4>?ea@G&<;!6wC>qEappcFV-BRQ8Zm(MdZUX8Yme z!fXdsf3s{+-*R%kE}w8IQ8~Y!JD-X+@BWLEe{wdz=%Qd$^)%JzobK~;l4Ole8RlGu zYOp9lu;lTQ{(1H5p`xr}mDHzf8-DJ~aP)iF26RTA+Vm!HdZ zs~c|nbq+Cj?(~#J7dTBjD!*xGNc&?xoCTYtNC^xga?2S0iI{JgwmqhXJJ z_&Qc35t`jho*{tPdQdq zN2vOXe9yz@ttwwHd|sz`!4^+dS*%%5&(DK;K|a)+Ks_%D^AC>+&U(Qd)ECTmA3#J% zQ%kJ~rtA^0LYj(?%#i7Y3gh7wa)Rb+1PD8%I6H4;=2I~QbNo1wdL|PLiP))A9!UR! znLbN+3;YBz2(RR9FD{fVfl;FmSf!@Ky-GYUlRpfD9D%OPL{3L>KANtOVVv%E>#kduIyJWunY<{ib+=8V?#9u0U#2A5E(-h7-B zgHc@{#Qi|`cf~FjAMX=&PDV=&VMAyZWf8Nh(=BI`P+r8pk;qOP#no4fikH?@T(Y*N zzo*O(gDq@LmLn?k)EiKoEP<-?(24r*~A- zOzX%jt$BFHV$IpPUNB~}AblDh3*s%;<47diQ_i~dicg{TN2{Qe_-PtAdQN<}{B43) ztl)1Ye=SC8+{0{z*~FLamP4HErAp3B2N=z8k1%}fT49gOrp&VCU>}~q*~Z~F6+)M7 z&8m52=xd0h$phqYSPm#sr^4=v-~>#IVbM+L3Tz5QFB+jIaXu8qR`C~VfiRe}@dR<^;zL8J39im#f~(LR3xrae6RRvGn4^eW z*Q@BOUsu1H#9)nomGd^yG75w1$EFISk}2qJT|bV~kJqd7m3wXPQ2v={FCEgG1jE9l zJ$56p#bYIK?eNq$R%{NqyfFN#6LF>`T&< zw|bMe7IVa@j|TGfR`wE%Ewk?{cnYNUq)`5AApE<6>t|TW`8@Z@T48 za&>{I?8((0>mnwKf!$>mgi1FC*)&Ld zN@q$}RjZqOn>O1j;16@M?{aqREVH7vovoJ7a^ro^_-&{v{l;%|Q3%IDigt}>_bm2U zucZd4)D6_U<7sY#Yotzco_DFEPsoEWPhb9G_5Iz3|AYEoOd(R=yt>94oywOoT@Z{% zQ#X0oSRZsPE`WqMV-|8-$St0)1%_*}N8J+Y!?oCJB`79Av3h&APcHsRKD=f5Nm|e5 z-KAEZQZ`#K91!MmvGwNeGAn(Vq%R}AdNx%E7aaa8a_K8b7+h)9XnSx~fJd~bC5dO0 zxsTACI}G<?olZzWD#j06 zmaUkClf>hf&>}=7Bt-)$BzPb{L?*PMhB;b`(-ZBOBS9C)THGW=cS-C_b&!}?p95F^G<7#(Oa^Znw{Gic}g^9Uia>`-Z{*a8yEkQM;3@{ni zbn^~IvcXnY9A8_$C)*R-r6-P5+UEBf`cMOrp3I9VKS#i1U-$E_6@CbXq5Us4u1;Ry3ep;}3DY112F}Dx7iUAP; zM8pCC1PS|MSP*m|L?|BA@MF4GOIFX?D|*Yq1F(1~c^!SK#p+Yx!x$ElQ#b|{HVF?_U0X9av$}jwumU5n z9i*O(cX092=cEtC;rfMW$y4Y;;lm;Gx`VpvM$_3)Hido^-Kn+^gT)DXU)Ekb)n>xJ-S=u1PsanbmLp7#9>|b)m3emYB>zrDhz5>;$LgNSS7&fV-5S?eelCLAJ0BMm)bFSd4!&AdS!i? zd@kczaVck%EfqeE53Y=`MUivK60L>ooET)dw}xCtg|z59 z5(kx|)V1;aB>7{@Nfug=(6P6O^yepeONGp_Gp(`>8LDHeT_0da>|==!-P)bLPsMU$ z4V8zZfkcdxL%$xxchXT7|8rS(ll(_B7z33M4#fo|72WIfrn)_J0yOXXrNuC|_* zNfL8$ja+)yx|WwY=*uO8>D0O|`%N@~p0%Ex{l<7`H^r%SL-w2GlUgGcPLv6A4VGq^ zFqg`^MH{x$_xhc|$^61TU(~#UU2b|(g*jw%3PZa$iH4A!FQ5x#=L?Md=0rWcRqVQK z>nB))Oco*k2H({kH4o>aAX8$t0QT_biWSuY1#}o5VKfGN(Z95&q809uFZ&r@;)O)OWY95RX?74{~ixGA-q}m(uFA{9T zrWxi$q#Babpa^rJ&arMv^tu9bB$(^_bEHE|m~iGA*uP_j4UvqF3pZ7;bI}nIEn$}?so~$wR9CQ**w0+hidr^qsn}$BK*XibR}ZffGV_>NA+R|>VdAU@PxBzUaY%n+@i_gV+>V}M1OXk|v62t!i#uBU~@62N) z?uuR2iG}_Hv6l>&ljO~<2(f_#NfN6`h7u-wmC=M_wsk*IC9s)PwaQ$JPs(5-ZA*`a zrN~WckC*|l02mleq8LpKWiFwmG@v;u8XU1LYAw@<9ofzFHwCJDGqCvFi znQV)eG|H{AP9U&Tx6r6AZSg$yeKcmExAnv)Vg`Cg_kSQQOIs~_N8-{9*E#rI zf3aF7Mdez?4&}CN%j677OhKw;moVW|xg~_Cb!uvICX8PXKh7b3SGGcp2l=_f4^{$u2|^kJY?|-f={0{3>@5 zuiQqy>Ls<2X*Ck-eNq35bAC<#R>8lvrKd1+ikcgo4lXQN8mYX-8!wc;9<3bjjbD=$ z4W%SjDM=8EB<`5yidX5TMMe6Vk`8>Ddj@KxVg6Yd80H;N952!{(! z=j=<&t8;x;npomEd;XT3pt@VcCAC1YC}p$luM!|KHBndfO5ej%c}sHKEc6k?#JC1M znP?PLGelgO6Oq~TyvjEtR@GRTL_&*{O-?LJPDIB55mpu4)W2iS z@e-C-Hb1xiz0h#);LLzIgUJ`))#+n9ZZJ6@Itl^ZZXAA7Z~X|?%|pO$$az6bzy= zMNEV(Au;|!Sf*;jWS8|ZiSN~Zk}ztCi4qJ%k~ipb3KJoE7_1-;dZVe8w^S}tO6l?D zR4>t(nKh|+b|1;CiQsjMyj>id8*3$aU9bYqQWj{{WhID#GD8#072B?tItj`Gm$HL> z(OaT0z>r|XG{#8ym~-UkL^%ZGD>MNuNKyo^y0XJRkn5i?(dWOcf<$`qQ56tHH@^?B zTJan83_+xxEomWdgsVb;e`d9|ct3AgHJY&uYshR4u1@PFhk_yH%t4vzIt&GBGcSJ4 z;B*jnZfOcC(pDLCIaC~*b}+N7kA14S+seFiMiAt6tb}o@wFZ52qop`}f@(&5 zN48T#FR4(bn(C|CHeZ7Llm<%!mz3~uZc8p!tAzw7dZSLns})lFEMA=+9a_pvKx*%u za;bz}ws{t-^?t~dCJ&6yGR2$Bpyn~xGk5p2H%81~3%f+!`y@n1fY_AQW(6a$pv1#u zlrf>eNM2A9F%KKCE&~%Q`U_ds=5TSdJz}=cy-F46*cX}73w^pc01M=9L(w95H--o2 z-iP7AxhD=tVTqn;W1G7Qt`$x4=pK)T5F*%>Ki)9sPlWgyB?{T$L;R@ML>4+sRY-~c zXqa($hnPs2trAa4f(s?XL?ww|ulws^n;7%4p6!+T(FWZt>>}y5h&ekT1G{1)+*K4C zNrX(NJyDyTkmIByi-bsdFw0Eghms5LC#uu^IYyeYgyn!A5@czK6WWRUhsedT>NRCr z)8oSXITjjbvygV@Px!FH)q!Um-*59pQqjGlgCL817Bj8*onodv)Yhs_rn-T-HVRZa zXja!I{_f_etv6k9PD>5whFJ{(Y*AIFv&=PsS-k%?pVoYuK#(mWvL8Yf23wXgTi>hu z+qFAo#)#RaJ>u`KKPlo**Q1ey=qmn-xku~%29LJn?=Xef$k?O5gw7`Yrc~n2skl+!uDuQEDGE3F&iw&RAVD)(-LCDq*-X?VYJWa z&G>YIQkh>!G@oe<%pyb6mwY7Qm>RASTp?Mlh|L_S{n4#bebESq+yUkf69phT*b3V$ z5u4F?=)F_+X4L3tA8?nvbhdw-M@uYZ2Ce&#*Ag+gG2_=qC9d*~H^YWGoWnngPn!3M zp(X=U*zC4M&QBK$ABcx1{o{P`5seG)D2Sg#bLNH5-5gpPy~6+<9y)ubV-dC*=1+?@ zNH5Jz7<rA{kv!PmPIKM2@w&W=0^sC1bOVg0j@tMkAE$DWuf$o>w7V~B{SLc zmLIPv$M2YHgx?8J7S81OeQLCM^9RB90eHTh98Yr((j{7%@cgZc zrLtl($MfIg13bS-eXkduf13DN$`)qv{Ij@FAVBxPAUjPffUq1V7eCR88hl9)9`A<7 zp*$xM9ASz8y4yKLa!!`%w zHk9Mw1B!!T`Gq%Yi6sg`_c45GYvct*_Pp@ zc2^`>hpD+?Q!3sTN?rGID7EmUkoNS!Aa=z>_hs4=wVCAs?Wv{#cYR|(fqB=RbzB%~ zGy6Xq#OIp%3Pb8lTTb60fv6bfZC*Wv5D42}Rj`E{+(M+@QJ_veVgZHO0!BABnM9Zb*01Xg+E z#&Sy0wW@b>PAOW`Z{-t)mTP6sj$?}QygmnV?&ln3T4CUPU9ug#oo;fX? zT2K;~{;W3WiZ=*OEbA~na)WR{7_{SlCIX`QIEFkqL&IlHuo)`ROk%jMG35xzek6IB@&5t7HlPXHBIAJOSW7wVXf zdZg;9Gf|f5iCEd+i*vPyrmKQ-dW86*1=O*;5m<*l+!Zl*7|BaLY8LYv`8a0Bg~b8O z9L932 z0n6ZGWTuC1vyCc_DahQCe(eBy>kDx1Dv^sTef%`u<}J{|o0N0JPY!>mU$aSHlo2Y= z9ieM$+E-;r!*}he&54eIYj|Ivzx)Pg6?LAVvdB&XfA<;}ALbS6snL~cCGy&mS~%D{BL%3H7p#2+JH~yQKd*m2bin zQ#6Qj@{@eFornHuC4F-s)x}(VUe?~&Bcm!?)n%idVU=VsZ!9HK{LfO^IyLRzlD_P8 z!FG$(@7zdgQpPyE!?Fjbs#sqsFiva5gU%S`(K#=*QkSU+?T(rOMV?oKEb5x~h=nWc z|ENB~?y-pZGqH2gy$V^SCj_cpD4xifh`S(q8vf^-bXA_N%6m$5Gs+`zT*{*i%9^uQ zcuwRlJSXSiSVkW?!6%v=WF&8AGG65sk?vREIdX+^46&GqG<#k>P^eniVV&Dr*a`S} z;fp3~nV1cGg@yn*Z$*c6&WcVUD>|x9TGQ>6#mNRfrUT!n|3h=HmblKQxr4@IOR{M6 z<6lJ|+un12FKCFmJ(1HkvBaN`Py9x6_;h%t2Q@#-1_#+@CLHq*^uK)0TXLGTDD7~Z z)-;W=(6)c(Gggj2eruQX6H3bRN5|<(LAM8yBx-U4-h+A%bW1qqEV{2$5C1pl)+ozH z_rFp9LHBW5A}HuKZ!4aV8nRKy7R4)8#rh0pPDB~e&6$wStRt12ZztoPlFnigmh|Eu zQ+bJx$o-YKdgcsP*1Tb9btVr(!RuJMO0@*u#Y{MJ_LX7p7@W1BFZxIcjf)T(>w+tl z)Oe~Tq_L^8F+DhTW>9--Q=)Z%{_>lN_k7yZ&*Ny{5=4rI+^r&k;=W*_<#obKrzS9O zZ^cSHNGE8p5>BB_Ofp*4Amd0j&cqXmpt0eN$>kV5vr*OU&YNJo9tl6o6MNX5#zJA? z6Ryqy=VFSP>P3ADW~O?UX-}>1SRo2do{XCQb;T(Tzd0Ne8{@RU2M6Z(C9a@o%{M4i zJMtu-w?135pq=MDA!45B+3gdeis;dro**E#Eh#L1l}^-${HfP$*`qZzN(}2={YV2* zaRP?09d39u!@8ZSJSHFtuK z`KE7Ds_+x)1hZO;0_HFei_^lwYK~(#i6sW* z)v>ag^JkU6Er)v(D>sC85i#+5-;s*fq^4JgQa4tFQsJ`0?Q||Q-+QS>xOtD+X1;I1ZoO4T#I>)}js7?xRd^~ZZ1dO@DC$Gd3-(YST&NE-aVa{cvrs@JGOqY{ ztzy@z;_R|ToU0lVew`i4*&5E08qV_UGt3FIIkF_9yI(O5Z#PccE@g1QVKh}ZY=VEt z3GtGszkTlc)(`{QQTJ?hA1%kRc&)GBYgK)(4dD2QztA=Bd8fvxDRzxlK^e9Fka&xQ z#`i>>kwNHQ=_6`UN^TPKJq22mGAJeH`?#GeZ)KH-QSwAR(bA=_ItWQb!pPd=5*4RO z?1d0{wh*~NmLMAWERvvFlvF*E`lh=`UQq8y>cRuV1Y%2!r9}@`nSghOuHC*3vkXQ` zwdyH4I%6QbV)!{DO^Hx!xhbL~?-VqYc8<0#CyG}i$pkK18fM0~1z@SlA<2vWg^?74 zV|zem7)&S!{@}mZ_~}>EsDMhgO5*g3MLh1w6m1~6xEZ!(cFNul<`h10&EGgf`cVij zX4Ndo!epexo31`bil&Wn&cuAcpCan~*CVD|+1`R!?vav)|7|Hap$f(rmU+dn4lR>8 z9BTkNa|ywgG`vAtC3CnMmVVY-D!lz*_bTa6bR}6|vkw8Jeyk3?s+yusJR-7vV+#eQ zCdi=~+=R{h)G%XqaUKg8sQ#TeyIwv#%+`Q#@^1AlIfxJA`Jg8!d6*o@*&S7QyiO`k zPV%wVnVeL?UjW-c^70Zrc~xmBd3l+h927~;)fr1BMWQ(BQmCH(sGMD1X%OOLDM=&n=>~ZrxpPMYidEfnsT}xXHD0Oj!saPPZj^SdsfinN>}VMADF4_} z?amm_;yx_h_E_ch(cG#vU&UM5!x6MS))$WANN#gS>zjkkR))z#FST|IX#BhD(Dp++ zN?aUoH(>jK9gQF1j(xhoF&9ar6>((2P8u$Yb&Xu5do&2Q&W2HC9IF#nt_@~>Bt)}V z^8ra`ro~&TfHS#R>mB&h2jO3$9!s6<;_WPAOTpdO+!tYgQcADYyqJ&!9?d(M>91a_ zdB-#P4V3Z>|hY{;E@o}88VZc!5N4NXjCwXBq5QI#AE`&XCTBfo=!{ewJp8BdwXf^ZT>4XC{*n4ro9B_8(==Yd_asd+oK?YXibh z5ygP%vODq(>YSoJD9@)l!d>&I;Lk5`Qy}xQY?6*1H*-Vh@_8_#rHDkxLFX#iZ#VjS9-h@FOpL00_DcV4k+3mINq|vNBNp zh(sw>G_93Ds21!P#v>4#i4fAb$FTTROq0@yWB~2ntiZ3KbSX~l#6G!2Q3`H#uDy)y znQvf|0+d}1-i42WTujG67T)V@{XOl!A4Y%GLE0d0!(Bj~g99YgmUNOR+(|#H>1R2~ z76Quleo*T)0?<C*LCCg6R-bweWh7Hph^fXAjd_7d%-4G;2Ohpo=;aGtG7!Rb zyM_|N9i@X8Z9l|!uEBG+Q>o#O?7_6{WK|ySa45;U@^2-p@&iP>&@$Mg9)Wrv2Xo>C z*~Yo)?dd#1N@(I-Kz(ld;Kk5p&Bc^g!Dq}me2fA7l9k@FehX>j{3&k6lzYj3=m(hzb8W4D^AA(Vn#C}*($fF@AVG9ca3P?Pfc>uNJ-h~GUjPURj{?QxQH`5}C zC;RkeHXJYWN*dIEybkWQPY*aKQ#Rg!7GeKHODxckkdBckf~RJCx$?($a#({5u=J z>A`9Ebx_*lE_?Sjl<;^uemrXL;B;{ZpT@yU9(Tx>lf_-w?HD}Ez1@YkZnZyezZ(aT zCifo00TgP#J6sfTC-=CI9kKtozw1Q$x&Ty8E_6N3hN4+oyX+8=dQ5j{JOi+D=%Ggk zVe%FSkX+etk49JipAK5lYZu2C z5t`xK2on{hLf8)|()mZUl_7H9!PLav`_345=b!i#q*ZhZ z(rwU1ccLjc69*gz3^s@az&Ze$JTH?27jCxD%Y4*Rg=;ocmLMu52vlK@9A37S9vs?N zL!_&;hjvo;7<*Q16{rNo!xE~-uRa4!_W_8!m}|y@MLDSgt|?!yDO=X$)N68RkD^fU zT&tr61FLSOLzbZ5_jXbvxc$@-DpR43pjhgMtYX+cun^9bAv*EwX5&OA5*#w{1hNw& zOEivz;s^M>pm4B3Xdwag9hLaDVJA^!_i|lJ&+=#V5G?E?JP|Q26Sj}RK`CJFTqIqF zWSTUqyxQQwI8ch%$0}{G8>=p#^Y$Xc^>gG)Sc+RrK3aE#&ihhedHV&4blzB3dI+O> zAZAe%Z2K|B=K=EUXit64$7wtG297Fq9Aq!_Dw~$%PEP825=g|kKX<=dJ>uHjzSkR8U@GeE2c-vh z9O%c#?H(Lfg6jd$L(t>EaolUfV_ggXHw?=<(Bu*q?QqckA(lv)8hkw#?`GZiJmCeg5h+-vRode@?a>iB}$Bspa|5xg^G1&?G9$s zPbU3jxC?iW_DH!!;rUK*00%q;6WUWjeFrBVEy_l~6P*UbeBn9m1;ki_ATV$z7O*NJ z#eDkQqrW1TTpUy6@E0B;QrrV*VS^1)ydC|p;jR6#{Y;7B>gGOH!XD=YLQq=v{_pXs z*ShK4xpD5!d+69X=u7YnV%&!$$K|G@c*S7X7oZt*Hd?ZSSVfzrk)N$h+ zx}Vdz-EKaIE)s0mv_DwO^cyGu1On27g29>th!dcbf0-1+atD}&*^VV#kl`9!i3~H* z0vQJVRCNmW%ojm04iF(m5HC!z+BDEiaKF$gR`Cl2WWp6+$p7xwR4z(js_D?~*`QOK zekAd!=aFN9id}FGlNv?c+KKmcO!sgU2YHy{Q1hAM_-TqK!*U0Wh5aN#Ms52BQ5J-& z0Ojmt(t`&lXh;pN4rXj<%BaV=8=Jq1ds;_YXfA`3K!Na(pf{LYI<1+`@9CLN=02Nf z4ftq!!dz2d?~Zibs`l}Lh-e_ex1OjA+z-Pk-6-D{J*Ha?keJDQO1J9um=Edh8z9r2 zA$1Ut8Q7RwRXCln%0^2Q@z!T-WRK8NfRSB)mbycp8VCrM(%SQ31z@ycClM-LZdQ3K ztwGRFLmWv;P$7QAnNkpm%>**CNNgJ2K==hsGyWm)LZ}Tq;cO_-vCq0o3xrl5^5(q_ ztuqj)Cpa6l3i2$XQ& zDkRwYRpezV1!#1@eh$?qszH4&AVzVT0`EOHjxl{BDR?6`rR`&HEgD!`F(IS(1- z09F6vpGaa<0h7Xd?7ZtS0V}WMT@MLUeZFUN{d`a8VJFfeJF#j?Xlp($eVs1+rc=8@TNUxSR9q^=g(q|9 zVH$Fj29ZF$LkXdK6&br+=~xBosjC13#Nn{ zBpjYs&=I*f)DMJKWSXt0W1yd@a;vZBSJ0Ln{tU~}1aNxL$YbB0zlqY^=u*1w>_}QW ziFukAv_qa4(6xDPrZFXdn=13C~OOFbgYFDabJu-X$f|Sep|Xfv_2coRDm$) zX5o#F);}4W`kpQjpAv^Vl#)q1MOy5zMq+MwGSirJ4jjTOuX@Z=us(n7Z({75-Re7N zqN1o15A#g>H_i;#mfk7^{7T%fD%3}ryd(%;=TOwihh-Om&eWgp@8vFnD~fh81zp5O zsz)hY=V;4>8g(sPB$5%oh#a_7{}{l$0sY&hgv-#sb?Bd$G?kwxsX22>06DcF7Hx(|}(-*fy zzTAoCz~nIyt|PzsiViH{zcpa;>IM>GHFc1)nq;mg5OWRt{DlhaM*$a?OHn&m2qf@w zE3!~>!e8|nUVz5Nl#C$-`flKo>p&;ID?x&n%kgp$zADCR=x%&jI~DtnkJARgiI$48 zC|XF27%N9qn?6D-akw#%)?rMcx6yghNe*qQsrWhE-2F%zP}gE8(aitB1MPo$Y{;MW z30g-=iDa~o6$AsBfIB4)Wc|r+|8WiU8p(eZU&iB0BKR*s8^mHg1kPmyX9(88K#&I> z9Dknm7rqhvJWVvEpft_CiTF0CYSN*gX@46;BAa9zFp2qC3Ez|CEBx4gKVV}+oXIt~ z*nG*a;RIBr>!UQL%rLThMJfD9v6sB=D|{_@GudPvpaL;3V9LISsw5eyJF*N+k_i8# z6uyh}?~<*@xp1F^S>LaOiM_TGyFMHSjJ4%iWB|OEXI2H&KM`A1s;KYM7*+(5BfPSa zzu8|s5{%eD(H0`2BR6ZTDql29Bv;!FNB95wxgf5dS@ zc(nyfBTXqqo!<``?2y!9Vj56;&4ogff1g}mKXkl z@%Bx$pb57&xNY>e4i1#yg-@*n(C$O(B~FNioJyz!|E_bYMKyUPHPdWkY_^<|8kD7A z>SD&hP-_QK|Hu|vts&%hL4JhpVe@j%b@*;dhs~s(j%=I5i^W9eB_-N}_wR{L^pU2J zd7}RqSx!28Kz=b{9^}&H>{*8gXi_mh+$Q zpxs!E`FIgJ8x^J>&`s0&kuB7@UF3zna1pTy3Co|Gu>5adC(B2_Mp6FneOx}t&R3m? zYU#N?Y|f#0cmJGqy3&y3axx_Gs(Y}8!iuEd-8nEWcrG@NyQ5YlgBQUiBWf@*0D}=N z+1+_3o3p9=)Mt>m_X(_*5s&(``^7`v%RL)i?O9Yrr1!<&yDu-xZ3-V{gT-HF;}PZryWCG!;O>|C`0^{D-U8F>#a`5p`Y};@eTBPQ zUt#y)@MzLE-PZo19xGyH%{&&?UDZXw7i$?i1t8kQw_@Uz+D!4?DI71F^7AzBHx z7!f1`5EM`r%=3TwCFyDa4s~^7*o#Bulh*pM;&fwI07P_S%=dy-1*$9^bErLtE%F$R zIC&~a5DrZ%rj&5jV3ipjN>nai zQQKO`+Lj^+C=~w)QkFn?7P$KzbP9PEeELrS;dcjT2z#jO!jqGfeTUi8_z>Yc#4xa& zu@^xXT!f{t$5+@(_>OPMy8?x~f)@vXZyD>(qx*Bb09}AU7b)r(AjLB+#k+9zBWgl` z*0=irpZ7##j&*&U)V_%7&Nl4fP=8uX{Sc@OS3hj|cLi5d{dMbVB)$)6zsz5Z_7}&s zpYvxS|GFz$GpVdgjrMnSqSdg?1WDRMW2ZgzBmtJJw(;YN8#@Cd4f;=TfY;O``fm#w*Am$XE}FM9^fxIpqWo z2*w&??6Ip9HTA+jN?|hz!qvlcUOg5X#F>5*aZA$NVHalBm~~e(qetQxC;j9T%Lgex z2i!bMt2~RUr8foO1l{(3-U;XtPv?sbJqQv(Yy@Jhfpgg(q*#7xJ48$5Er2kaV)wJm zH3+MIm?x2y3^;e#2{Zwy@+lu{*WwB&QkypIhJbd{o55Rsg-y=26@K*-Hg2Jv^j8>X z5Vo!$CwMj)5p?yYK@rya?qCNQAcpJVocD3tWPes4$oj92V`)Wzi!^QQQeOXI)=kDV z+IknbsS@|D;)sE)RqP4WURF-%6P3sETXq1fZKh_apJsm;oiNEzA8ubTivQ7WNz z_uzR(#zja(p?0vJ8*gxHx3q!%gscz&DK0@E6x#2+5H%vAdp05>sU{2fCVN37!q{8* z)LUE-v?)II56s2I?a4_-3Q-727>1IwVN5q z7gvBlg7g3*MjQ&*JFI+`pHN!c&VapVB$r^1Ne5Oz~u;{R(@=M&&Y+< zAYv{7^_w4`1yk>&<#FeS)O2L;+UYbWpca~+BfGm!+y))dN*w4g<*8Mr|EBXVSzqngPCM8gXlUJ*523;T2>+6he;ocz!oTzJ?{oNf zDgM!468^@-{3Q?fmty)$<-c+G8#{Kacn~-AivPq*0xkc!%1Jh!PwG2ZjKT_CD9tY* zET^qI;uHYlM}wC_gtR3z212JTp@k{fjAd-Wl*WLTIOzsyU>T{FOx)rQL3TJ97Z;^+ zY!Sm=l1(>&_EX!acSP_@?VGN^dZd=*Z|ORIiM{K8@gC;F(6m&cFcO+WrVHInAY7jT z7a@Fs$VGiE5N>hc@k4+3P7v**{_t&Bb4pxz^)deaF~2g-*l9vD(U~`cm!mb1l%d_e z@I;$GtE3)b6%@!93zyVWR68;dC5cTH5v6fRT;U6iV_&=ggdX5wOF&LaO7+|=l)G>V zg(1~^p*3J&&|X@#DQlGvhLf1dPISb+N!SB0JBO8wVA{1a|JGX|DXxUKD6OmOE+q~K z1cO#tVjaxs2EGZv__jYM2aE;-c47cMf}wRiMdZj91hxCh5n9}nze0kIK{SGIz)3%c z?_dXDApM5Ydl<|94ZPNYZNv%=U4ULhO5WR)?Z;e9c;egf*~-!V*oN^m0sb%zB@ZeL znTrLVCkPt^#w0Vw6zLd)It9iM%feVSaZ6|{Axx-P;0yNplqMTkRUE|^`=(=Pk3^ML z(Bv1iqD#=vZwQ1@2oZoQrT*|*2jNMDKU_yh^C6*x5{6C(7!|%NLw${KMG+r99)c^c zH;OfBDjF~{t}td)P!||gl+akhv6EoQ3`Q^|9!p9YOJF_>Twp8_3jkxt0<_3H_OH^| z#}3@7j6DVsO~%**#-ZX-k3CQZW3M;MOdd`04CZHP6dXdwAus_3V~|Fl2c)FC;CKo` zZtot;izwlU8{(VK~=gQ-$saN-vpJZO?5M=Xj=!P@Nlab(>pWN z-@%lZ=KoRr`y~IS`1!wDjOnE#%-|!w&|LGV@POP#^NAS3$8U$rp;lr1y0 zF%V7-ETBX*$!BqDIV&F*v(k=$BH@W2QU?ZD^rHSm&Mxt85Fe14pun`%EorM;r>$;D zTcc1Q37HOsx>JEdD*8Z#ji8W0*saqsrh zMA{E5qE>sOL`ZfQh!~0^LLnBjN+P5fG)$*OL{y?uGTIdo)#QD&TQWe*AEerVF9Pip z5rH*|gZPg1++Z5i>p9K~2gn~!@)C%1-4!6MZUxJIJ}tnKkctZ=G`ee5VPe;+OmOz( zT7^rGaIeDV79Li~z3$HSkWyU&$0|4yNWZFqWb&=zFLqBq{HkKBgH;)^rk$M_Nd5vK zf)awA)b%~XF*Z8+m+2=k2ZWuSD=nr^=)Yg>rBF8+)O)DR++dYUT~dY&-Y`1`1k@fF z+*H`l8AF=wdI-rEnb%@3VZmY`;YF0eSBupm}kcH zcf!m$85LmHF_w?LLgO~=hn0#xM5L%lXPyJB#d}O67D3}auw zg;yl)MuMWh4EeG}d^sO;OV6{FUwwVAET+_jZP(@xcy8+D5iZdTPQu9v^AQ}2QtXdO zF`uXt7PFQo@EUhdW_IFAYAbFFB=N+)AiJH&9rWQqTojb|HcS%`8|6nd`@4S0r!e@# zKY9dtu}k%bzei>`3>5cM*qB0n8944yKZNzBCo@y`ca!=x!d2ff7T%?4T zRE0oHLN_{a!UxRuO8B$@*XCvfQ7v&%(?iXQXLE@kpG)x?-UqkVQps>N2zy~&-CPgl zD?Ya1UxyO2z@&~Zs=uojrtdD+vV6JggCfg9z0~A z3DF}08g~jXl~b_XBzo&G-a3t2hwl2FL$2RLy*MuhjoBMsGzP*w<;8cqj=_<$FTCiD z}l=*Ibo5Bp=~>Fig&X}_DD%(0mRA?g`}pxc{^=DW9R1jH^UAvB`;Aq?X4MOZUb zdLgubZD#UG%s*Z&&x8$dl5Oxp_4-UQ2X@)ir}@pa z9<+Ww1hHNiVH2C<&nyMOs9^JYd{WfSJO!~aha1*8O1LQBAD-0NK}IS-Z4&%s!%XuL zG=Fe9WVrV3PVUL(PGt6nuS4q8GD=MeiDqm$gb%{J^cGH8j-h?7;0H8?+dl_T!5e&R z*InrpN&Prt0%Ffxgnhi{fi&LJKZ8B|!hEn)Yr8&4YQKZp9KJ!A(?};R;h_cd6O_9b zxJA@Jfo+OwbA7rHwWYe7sritQEOIKL+w<|yg?k0pQv5^TZ?D3?di=vgp;&-F=tLm{ z4^T;{(6F|Ns}icRNnfL~36iOz;@eU2?Wh=b%MiwdZg-+WyqO>R0b@+)2R!njjWh-N zHqsGzYb(EZ7}tzF);Uq;*IQw zxzX^vAfqi;9?I<6*>bB%2?qzEG(=X$8s?LVs`)3sBriqboc{Aut~0Lc&I+si+yFMTlI9hJof+Gi-?nMRmrDB z^v(XCz3vbm_4HAi#PSFdF=c=Yus_%Xc*Mvb^!2wZ--fR{p6%*=qU*%P>n;-li7$Ue z2qYeCVS&V#aAAQ2fu8^@~@*brSmT~s4_t3LKqrM0ZC+KCV zAk0!8uFK5>~eMKFB1Nna^1=JJRV`?+jh?B0K*Y@KMvO`ESA;@$>n2o)Y zjBd4RrkEOF8=hPZU&tq?qN^x{V@+u{;ebPt(VQnw<{?3(NJz!nwAEYo zgdezS+LNoPW0x{kl*D4i^|Cp@3K|a`D_#&-QN#xyQbsdYTrBgjc$yQsca=D8h@X|F zUC&iP^7^9o(h>oQ7qt1q*S`-PVp<%Y@)(bWtaeheA)bSO(wn|Sugy^>#75v!TgWD5U;E}20;dVDy0J!}|OY-Y*`^M#o z$Xk*uVwB_!oHQw{DhCR#h;q}alpVf4UbDB4q4Z+C*6o$R&|&H1?e#J}0EZH8%!GJ@jyvod_fc~YXg3__BeOq0X@k+!koR3v zn9>*FZ+i@x^k}6>g0^~JmZ3_+Tq+_5KaXIdeIit8+g;ECH^b57YTnwwl>zR7kn8)^ zJpmjO09}PcJNz9EQF=Yr1Z+SSi#WUGN!mXFX&`8&&DJdd#ibCh1ggO!w5du%s)n2}T&~Fis!k=H8O+Q`=lV^{%Ks6oKDX z>_GUER|ScZ^hvj8gHjVNx;S){!h@Uu8w|e&-G1)iGBmjBKDeKrO$T^l6Ys<@*al$} z3f)JDj3VjUQmRBsuv3Adb~NjkDJ$<6v6AP5yL0IJOQA3PIhlzavG?ATMkl+%df=Q$ znF9(BB#hsmlNIv;)LRbD*g+vo0B>y7e9)!rhSFSUWBZCQ_W-r)stD`zNlo8O5|Ino z5u(>y8_@x7!Xej2SbtB7Bw zy1rqkh+ifZ@i(N37)K8P0vI`{PJ|XXvSmAUtgk2^7xWlsfo#}S3f7(ULChVtw^NwA-nVexz`gZ$aUMa*5hZ-z5$HsHg$G*gWGTM7zuuP&PnLrSQ3Z|Q zZwF_==z~ONdql(&W&5ud|9L02VCsGqW;5k62Bm*z9 z#c-?r+8^**uAut<0%zf(f`j(-PC{(qUxSApZhI1>lGtIOcIn!(l-B1xaIrhU{x`I1 zDuqJr5cKXyYa}wr<*j!})XVIvr zg+fdrL;4f#3$&l=DRe}_2X>q6>;>5XT81Vs#1wQp6ctiaynq4zLd-?CbKv_7DI-vr zkY*3rHdCN5xosB0Y&NyTUicO4nlp@Dvmwwn>^|kL`5-JgVfo}lEJ^hNAumYT=j-YK z;h09HyH)>2?16uJ&>g}J3?l4qbrIRe^xA)lUGSoO1lho;MlPPhz6b(=K#1*|zA&3s zG(j&28)08?=}RPl!@wDI!Vj-CvGNH3(S9{*>alGzfFJ=UFNP^Ei<_}s@agji>c!Z3 zR4nEZ)FiNpM|cdOY9I=l9ko}i>$^Podu^Oc`@lQ0rzlx+Gw;Etms%E z`$0PMwfWhUfN?Q~LYmum2O5M1ez}th!{8zc2uLLxeCSi17YlsG_ek(YKNvhyBiRwh zO8dA}?VDF8XdfqY6ynC+a2A9$<6UIF z3E}zr4knRIx>yXtK7sUuW1``i^*IXh3V|#jgwTjETEsaeE$Wf(x7Vk@q5M7yCGjxT z5?%tQu%mG8cSEyDPGHdvSXkiPxtl=sQK`KUYrj9A@xS!`MPv33<^J= zx0?V0z>w&N0Auf-MCO6&rC7D$Dua8h?p2g_k-9j>Zt(_}@FpV8mbuy;_U?T`!<(iQ z6yv0=9eDCf&qqFFQaC{lqWY3F^9!Ft3>(Gf*&#OxNMT;p)0CqxNg8b9@-?93uz_yGOHaXfGdoc@M=X4t2pD<>?T$ni`b6FcvHek0 zRQs+&_ULtl6lHJMwqeocCAP{f^dZFY#%FL(eh2$eG*HLhy&X3aeb$4YCi8TlPYb0v z2V+agG6dbM&L01cy84W1I9*T60s%2*5=_;0+UEqN4K5yU8yOM?!BOFJ)dX@sos zl7!oaoQ7n~1mQeR9S*1DN8@>rA^vXE5h(l~!PDN|M*%cp4uf-4?O%L?9i;1NePTm8u2lkbMT{7wGvwyK1L+Tg7V99cs!vlNZGmDrB>K#}i-vNya z-Y(-5NBIj5o-+|4i+2Z$!P@}Id+nRj2xW+sho&321B(Y(419t4cMkLk=d(?3(x<|G z_U>0XO+PFHC|UdO+>st{;nS_(^A)VeT>k~W2Ea2x?jZKtfdWL1>;4|UKEG~D0EV1C zHEmHiX5op1*?Gu&~Pn#?y z_9yS<5VV(cJ^kh&++%zgbyCN$rG$(?3tbGu<@y$oj6$TdaUQ&46YF$h?^4^ESDRbsTVe zFgc)}PY0%b%U5`;{hK-~1G{FeU8Qq@+PnRQZBBdlT}TYPSc?nrf(0%laY&0>2rFPY z2~Ae7>eCHyp+deJ>PfXX^d;WCd)2DOC-Mo5o~N<4?aMprOWsT6A$B|k7o*AOQGd5s zoo`d$@vB#cZzv^G1B6Xoj2L=<#R~I!GDy*GoR+C7Eu;sQYZlOMauVb`G;RL}NeV=L zIN0-~8i{WJWDv}uiP^ci+-hC}H$z%ACx^*y6_)1%{64^mP zZ?+*(Kz#)^B`q+;1Yh$qb<5>uf~BaRP};Hr5rK~>8R#(Fr~0Gg@p9W0Ts!uQR67*t z*lQN#*t`8)E0cC#;mfUq{z9$c+^KDoWRhNN`3#g~~#97rF<4nY#Hou5h=~b=X14+7DBy)K5hf;S2rYiB}Ul zB>KG5pS4K@c*JT0HrAn4z7>gd-P4%F4ZtGz2%2E;{w97QdIjUcZNg|`Qe%v1bQCoO z!lTS2vK9<>gDm_7hSb8hg@7rT&Kp-#a#X|d9>tVf7 zzQPaMAQ2F)Icv%Dmv~Mz^_RTf*gfz2 z3SV!V?NcYujBQC2KX?`1U~bRrt%s?!$y7hi?|AF)c zlR!}~R3eC+daUifE&(>N>gl{GBNHKXGR`^@IH%i3b$t{G!a*BbC1&4rK*hFi9=8wC z{|7L#A4S>+s4DnXe1ZlBz~7Of?Q@z74b*EC!ucOfqM?h|V`ZF6ZI5;IH0!Y_f-4^d zD7emnigZfP=(b3mjQBcY_AF98HsThPB#B0mUVr$abW9lg##OwkiJrP2&jzp%xQ@_C zpJ#;s;2n^x8z+bLis^=!KVVf&(;iWgIa2088?Tu>#SjD;O*qJiEt}A1G~sD9A&r{Q z^)JXWu!8gHO~6q!y0#1HO zPNRN|fkx*6AQhH>45XM~Z~?=r2>T;}&AcPfUVDRhgmtKUhmt%OXlCEIpX$qG<}0qg z&!ZmTUI1HeJ_}N-G-~1Vc|`@Z)zCI^!E?D>oViN{vq9(L;R}ArD0r;7V4NXqDmY6o zc#o1y1s}6_ZRIk>;0_exA&#GbJqF@~kR-rioKV>HXBaiT?Bv1!Yu%!6qZbOfsl-hV7i zwNa~rlZxL?;`DQa->6PYZkd5t$VGE*wMTFK9?Zq}o1T@_i68 zjl<541(*jwXX(BS(ClHg3FP^p33#V{iH5K6!?tTAy$Pr(kn<2vM4y>486Qw>S_%#< z7(9o>V2r5rD(7`%1@WhEfzMBr6fW$_*A$H<3OZB zoLyYFKdmy=o&MzV{>{AyL$RV4-QV&ZchWK4TxVALNP1H8Pe|7ry@fb-QUzBoh zK)n|cS+Qj$2Tg1)V88t+?s%gr8onA0UjrMTGt%%6MriohQ8ZjlJ?>4iq2W#3*6y3Z zn9(Yi4;=Vx!CZ0CD8Rfz2Qz|VXDAV@Ma5w9kFUMcG}-jwKPba=D1`@tH`9!}fVL{6 zPy#Ojb_h6-g5o0S2qDcFSJ;PH$NcYP%sLkg`VgM;2F$YOw4cLvopbZ7TP#i-zZHj& zG^OJhlZ?0-xrKb~O5tmV>9`um+otILb|hLc31DgJX2gnsS|CbW0iB|>7OIlLj)+`g zmjp?fs{=}?DxRXRAu11Rp-@admF1#tf?0#z{q==##H7vOvl{jSv{me&x#ko{h%Y-tj^2S_w?&DI?FjC1T#K1L0nW zdFQ894M)9ipGpW(gn7r(JXOi|sWUR6Q-|54KOD?l?(2GI3|r10djtME_Mbgnhf(!} zQ_}0a$vt)Mtp2*L-t0Pe=xp^FC~Nj9eY-FLB2j)Qva8PBHGi$GolmU)0>ZSV!_aLm z+qpcaEjWwpB2&Onc?qvNK<2cso=*TB3L_AxD2#LrHJ#RWI)J(aRgNA|JdCj6reVFP zgfIgux>OTmk%?^C29SzTe+?|YPo0JFzE_Sn=rYE8w8R!s^J9puG3doZ2mJ=D63=U8 z8Pu1tV$c_hLBAJ+zLp1lEe5?QefvH7p!;Cn0y6Ln#={5saGG}ESY!vcgUyeVOro;w z8=cHQV1l@xqI{xf$=ovM>4`5^a`@u784h(lNh22C|%cI+aH61 z6uSA;_hIeI-=SZz25AE^^PB|-VE(pqu!lPz22L-C-Hl# zomjYdPsKAK1j=I=2J)ctXhl7uF%g7Y(5(Z10lhaEXyOqadK3kBhW#;$6u|4kzo1@P z1W7}D!Q}KH%q~SVqIkR4X0Ey@&CMrGVhx$qLDKaJux27QuqvcyG~>}cnMqC%fLvrG zkdp;0HQYt0&n+eBVZVZ-exy>6<|CAX8N#`s@Wfi2F_q$@9rpL2;acgC$9bE&}%P- zEeZs>+PdHjUr+wiJv>(975csgF?OS`P7zBbpfKPB93V#@`F#K0V;SV)4?J21J zW0;>DbtkX|cuu?R92$&M8Uz!-bmU-z)j|BK|#_e{KBxKFkOr)86FYm+%|4=}-?2qQQH#ZnPA$ z8Lo+YwEJ*Rl=Ll{owq>13F+Qg?W1wXrhPm3apc(ndm58_@{@qx0@Rw63>xHgw(ZzQ z6WhS{Ag*$+iU|)n@gI)Er_+7Z1`c~4LW;q*B(SnH<=6p#@;+r{zyI=mzLhuxY%)f_ zC>PMUZ;-grg$tQ#d-VO+kY0|Y2+MKT-7AI;$ z$!G-NIpw#6gZl?x7L}4cz^w=by@UBQv2L-lM(SD;A?|mD#X^2EoKaf%Vmn%fynr1spX8TI^FYhOoIvj{ z1MN$hhK2!13jC~;!v5goydIb>{$$d>;uN&@ci1GtN#>x(fH}gp%KljD7xA%s_s?nm z;M}^+sq65pT?t-T`vrI&ocNfM+cP*>dqg~(mA6~_58MtOen7_*y{yg!^O4o29&BF) z%gc4QYhMM@p=D0!(GZk((iK$jwPP}v=mSbaB*$g%SeYhC!&ek zzoT63%NP-4d<`!!+GW~pNT7X9VCqDqoQlG<$0>QmUq6Xx<@9qlRnV`!M{gG*DN0V& zzD-Xb{0yld0^Cs6SUKbvY@1euY5)uF&xObWlNjm0av`7B*2@U5mKoFUhxi%ebPt~R%Mc)3OBx$Xv7jgB^M~Xa= zq7Y&H9X6z)vy`B20~vA=30DBz?8+UF^LYFe+lMXU_F>#&O+SJ6TW~!_S00y#P#zCR zE3k*gt{N_w;nY&>j}+Qhhf}-B&nkpfg5o70kD@>r;?VXJ!iJ~V??OU;F@O<%cHl*n zY|ID919nHI+(f3#;K%+a&PuTnf;cGLj)UHjsvZ^OKMsio(p`ji7{76k z)95@m9eBFvTbM=vmj)7IrF>AI9E=?u9D^N156~#J7YQKZyntSZQdO+Jl+uO!ui#5x zYAxPSwSB3TxFekDOKp&M90f{Q-Gc%rRa4Hslq9Ozc&|>n?CVspKgFTH1Xw1e=r57c zIUg;I(9(_d4e*jNcwC?ekts!2P|JUM9EIjZXq$@#rwWWoWJ+inzM!uKN>@#0J_EF# zy{r6~E+n0WVveBPLJv;h9j1*VGUaAui}c}S)w_R!`dqx4ia90LQ`!fn=k?_6wtoi) zfx#BeqwaBUIMNiXZFFyVucWrA-J|YTkKh2Pa8Z(XLcjex?hWrZG}ThTCGUi1P)Uk< zf<^_psfq2SO4p>hII%P`?Z~we`+}aaNw%PKK@|eV1TS0ALYE6tA35-$GjcwH>#;OAaz%NT3@OcH<&TDP-+qG+(&mfg85zj zj=t0xc*KmshbwUhGmzxHp34t-3J(AVn@UA@_tQsUW~mbDrfR4m{L;OBE7i*L zvU@YN^AKi}o&(B)DmeR;P636-btz57$dp_(3Qk5eqfs7B+_3kE{Xswkp3PM009A_G zT#+d+;T8+fL@e8BVI^7nCG*SwnzSo}nnUdub={Sb(te&=?g(!@^q0mz!H;F_6gbekzL`Wm0@zysIY0(0cWA!_ z7?cn&sWMG_N!)9{##NNXCjKrw^xk`AYnPfN}WZawr#-@B%+BgRs0# zrhy$BnG(!Io4aU60S2%DFY_9D-YND~{;lWV+xgcItcgrJn}5^!_gwz{fWQ8Tf47PB{JxQYoA{UT zI5O>@_&3PEzvGl0e19|lzR7QH<$I0q5A*Mz`FHIw@899CqW$yuUer4W_XLIbKVv^d zK0ZVLOy8%yf;x>9M1Rwl3516HG*GI|s{ul&{W$)q0*-$5+P~mAZ$I`pVNC8VG3k*8 zE99~c3I(g}|H>yKT`i^4YZyNL7(M;$A?eGhK~9cp>&4}3M7b0-+=+{J-Tj|HecjD; zOaqRrug#cmt}9hagy>-76YI~ zyWU*bGPFC;qWwZIrc@R)q&-IdI}+r7PS2k{Tz;4A&lUpCOi_gB$k!egVB;^F^n&`p z!kgg}e!zuf1Do!FFbRK3_<+bNNf%u#`iSZQ*+tK$@#gY&8sE3m_wO3zZKLN0jpr(QHnoTQpJ}v*`jUXXj9DT_3_D+{V~_qgFeLK7vsZk22J%LKeyl1 z-xgF79Zz$4EnFUi7g2oe0rG0y=JL$xT|?3n8?G%IE`9ot^qpgne%f&94*}+}@a#!O z`VSAs_Rm56`E^GWKMv6Io5piJJ*TXXe&0*an~d?SqUT`T^LO?1aqFQ=yK;rT9x5QU zrP|@ma%H&ZSp0ejlJC;~vOG5Z_>fE=;Pl}KoK*j0y}fbuVL5=yU>XI(3Qrn`!>hH! zsDF#H9hvw~uy-_d`48hwL}p;;y4e2y8nsdae18P_1~wVb8a+R#r#IKnoBYU>y=-mL z55dB>&PM}$zxf0VL7+4;N zAr&}Hv9Gv4@#SMZk1hXPbNRo*VxnzE`LWG5N{!)9^!{fMyTSdZ?7kt{1u0M5-{=79 z{oN=^6aAe{1s;EKg!ZTplwy1k35^`p2Nn#7VdT2#CpsT#M3CwTQeo+trhTH522^L$ zdSQ7Vhbf|n`21Tj!;t@vZ&7~S+t?Id+b~>yMSZ|U?Sl*2Kqo2%er4l%;LXEPe2agk z{tP^7e6OJA?;6i8dVbJ&-V&GILC+sZK%l-VdJY=tJLtK_cy`2nchU2sMt-IbvyAll z^gYvfZlUMN#&Z=to9gHOq!`~7`W^%T3BqWfgPz|s>dU6*rN(y`JyUz4W6^mJ#E3W+ zHP8Z%8WUz2IB#&`_1Ka@KuFs;W89-@JCGLYmu2-xTcyo6r;YNvN(g7ghXR-*Ui^b_ zj;5p6xgno6#leYvUI*Gjd(XkC+MDkKWoW*J(nRtK?0@MUq}sp6m0H5{2F->6vznB* zdqY0xKccers=ekW;+ujvsA<~kGMjn6sFP0Ij~ye_{pTuusROvDKgtrRf&zy%^gzfD zAZ`T(d>h~43;fZ*kvD}|xc>du;`<-gXplp z^nH5#cfGzEQQs7N=k`?T^&!8hKhxv;gYq|+zTc7H`%R|rzWDEY{cqmE@R)?}T>qgz z2za3UpL84j`!?=l`lsjruE;-4&%e#cPi@x6OUvGezfmo z-$!ge^5>Y!r?O)Dhwnbq_k#HELVq*p)-5nXsSi+h2}5CtGUd6?2~rQC#X0OWGlpZ@ zMy5Q94}wdBr2ZR+Xlh(s%7A*c{iif1Z`r{O`Tu`T4FcbqMf)QtSmd=yUMuAF8hO1p zPo&!_ul-kw=e_d!J9#}UuSexIElZ@kL|$jgt4m&&%4@y6Zj{%5k=IA%^@n=B^7)rC&D6iY(b(XxIE3Y@p>njotW90KY^0`<(>-B7zDcbuTdHtch zJ|?fv%j=u+dbhl`%4@N_&XCv1@_N6#>h&y-d%iha)T@90vV7hsuZp~8^|*N2dRad|oS`FOgSGzSsM;SeE-+dEF+{Jt3c~DQ{Cj1kXq zSG~O*-xuGPpKIfEj&sBnaeVnXTfTopK0D;|UYV{`zTc*&m+yPzHC?7JmDd)%eEqwA zmH9j6bB}y>$$VSnv)*p~`pEZ0`|D*t^!KNH)sjVjr-*)UIZs@dHLY%HUf1NP?O0jc z5^QL0k_C4Rlm7TH?{BNFaa6aqRYnT^Vd{HNNx51V5fUPfl*Y?O0md7Hq@!;w5D_y30Jah3=y3_y+IF z+>1R+0wQzgK;r(=*J&%U2ZF}6y47Y|>Mt**cMEORwnqGGvaN)Hd=0(gzhb;=vjz1> zTQLmi8}Xn1=RxW^q@lM)D*Y=oqw|)RmMvN2Em~T>ocrJi)UIi6UGH!=Ha4%UM&Fm0 zc}tfpZ);t-oclI&WlM`QXU?qY^Bl!)pWo|oI;tt@Ro9f%2Fq&On%i4f);gzObxokU z#hE?BaYbu&)2dorTY|0A9n+1P#hu0a3-V3%uMBp~ zwvrlC+a~U~ua#xq@+Hg4ioBKOOWjMol_lQA-ZEbiUb{Ur98K+wjc7D-wYM}jSJyB^ zW;lF4Pvzoeet$GUOs}l?A4F=Cs z9jtaT?2WdRH{1!ln&D`xt*rsb9SasX>Z%*tB*E74%3}WuvQ7OzWB63Gr1YjrkGFhj z6jy*uH6UlBMkkB&GcTvW)E@(e(MjJQh2Te=o^qDs{)CB7j4DwRY zF`{!0+ag=JZHa9$Q)jF6Yj$3q2|fwOyR^Bv(RoD+ekJLk+nA}&C}$1dX3sU#&xG|y z!IPMNwFNOv%xJ}fd@|}}8D9Bj`t<*S_MY~9{*2*UV4kmW@O6uoxK=F8&KP{)QTH{~ zHG{D5eLRL*!_PU{C!HT>7(dHxip^^)wJo!i**ut8i!jHp!<#Zm*!5XoiLZJ1mt)Jd z&9vPPn$QfM2q%LttZA6}{hM4*uD@mZ))f1H$!s=*ZmdMgHTbUqR3ykelmqUDL{*x> z9knuF)du=PJXXyRI#U*xay&S#X8bn^bclE}uxk7lpUz>MYWsri3fp|!HMVPQm)l&n z%kXrSZGo-QmSwxew!(Io?H*g9ZJuog`g65yx!!PjwK#rr%UdwWAobDh)2{FaV0SjAgwSJpPHt@U=aG&Zbk zh%%0jYaPzD%?&kIUO7FsRJ{tvJO@=8MRSYrnJd;Olj?f#Du0wP4VhjUs?bFeDmAPQ9eA zuB|pG(r3rCFcx7gwl|;nd8cFD%C?njTAWPD7FVyK1rEP79^B9b6G5y6lRp7F1^4vf{3L3g^w3xqSK6_=c~;^?2%OwQp{=pa;OeMC}{C+L-mF zojFumWgND8U`@5H1$TA4Z(oIPBu}sgzq!m$>-+6EdOi|=0FuU^C5wPZ6MZHkYPCJY z9}xXAmp2+hVX?m1qvt;@tY?A1lEpKa0Dz5(?UUfBOG|I4beENsJNYY8FrAzpU4?jR z@Q>C0(R!T_o^fP4oych!B91@~%t`34wfgh3qxj%6P1x88mPONV$Y&uYam;6SX3?;j@4lOI5C5GD zAM!b-@F7)4c?1)ZTI_#L4$p@+to{V&VlYWH3Aql7<>!rl|9#5%Jd{5U)^-HjTS+8o z8jpC&VoIc=T>=7QvA--|8)p4D-TgqBcd^G?R=E@e(hEsfbOJZk)V40IZe7J<;SoCC zS{s`(ruQFJytA_Y+}X$S2BoM@w$za<|@w*U;nbo|*q#aI9JP^@itNj)GmH7H3D~i2;w9>deo7MWn{$cp~7OoG9 zP5hauFITKT@%1r0MO9Zh;y)Ulk2WSgiD^8p10Jxj1|7zce6LPcFXi*_6YRq z6z5mm6gv65G;ybv+t2b%uw-x!Z5c{U}F z??im+p*@LDk+3^f*VlY8KP5*|PnHw3f)7=ATZ30lb~Y_=I>S=m3Q3Uovs|7~;GeX? zR?C+g!gzvZLMMPHjy6({EY~Ll#PRhRgC3pKvtowEa(#&x9HYJ{(#{%@AX~0K@q)nc zJw<{%3vI{Fzpc= z26tmabsKEcqKs2D>4B+ku|JyOVC$+=W}sqsa_C>oHqO{D>3b@(PLyoW8nM?}iCtC@ zyKBiQTrbtFj88xo4O@#TYQ00eV*;=4<(~q9U)?11mV9(NHDwAVqJO z>5dLyA|h@PJ~`QfVf@?GFX#n#H&!eOIvlqLlS>OJ1*T96Yvy!-(VitipFz;`N;?swTVYD1Q-G|CNq_x5T~hrlmu+ey25` zX9;|Z=dWVD#5 zGi>K|0iEUc3;wHG@Wc%(VtJ5hj(~4*rQ7c-Ssd^#UP@c%IG*I>crnyo(7OFbPHr~M z-x1;csg8GU?&u9DPGP)@mI!^7)cNsfm~D{tQD#zdI`kwr*EHTd)&@UBm7HmQBvEw$J^!^Fq*mDco_k8RMyz+hGSbIqIQsSQ>)G}hLXgHvc| z3pT8z{qpc*V!8cd{7>5coRQj3AOBYE7yR5w+n+m9`|0D~s{M%t;8E1bTQO>}{>k%X zB~-Wq1mCy9q!e zz;ifEFgNlPaNta=r!n$HFv%wW*V^iuGT{Rob!}Kv-O^H9Q)=>v9gZK>?TGcAhei12 zvAj@U?@jVgqh7M65xy@Z&8>kyiUV?9!^%cH$NSLGTeIb<-cB8+R@)onz!)d5KNW)- ztM$wMYplEo1XK7XVB~be`#7Pl<@y9YtnFxl!+Cl8%9XWk?2{7PfT7!TtM$zl^Nrav z^k&p7wblA~emI33<;=-jxcN-z+h!8u0IRV$5Ls@o*l&zVeleWTWheVjJ7|zutI%AtZds%qjk~ciBre$0mG)w5}J+?VNW!`GW-QUJgWAK z<-j}&BlT97C7t?MoK}Bg<(;HXq-ikhQ0RhDN=PG;IH9mg;E_xyEj|tS#~SDi*WM`T zPu5-?>XgpZ-eIxdSeHoW*npL(jpcN!u-=d~ZVhygt+w?;BytwYCO z4h19PgO&Ld=PH!Y%|+-E75)@fQ3?TEbOl zieAk=`T81#?QJ;&qg#!SBqL z@<~yjQ4{Sl0}V~&9-8n|bw}I=+G>9}z>(bV&s^5j-c~DwVB7%IlCZPZ`McS3P5Z?m z^_e@Ipe?51HTjDPc~}tC-pr#|gvXq0!oShc)4zxLJ|{=Wm*Co2&e8_6Xx1b@#-{zY z+EpVaF^`UA{(nx6kmn?9k1;)>l8}Uricgp2SV_TKVrGn0{E+sBCuyG`M_98?(ms8+ zE!xMM>@zE0nj`HK+^k1j-clw*H3f?u=-T$7yNp({;0$$N0+Y+ zgXJS8jK%fSp#O6uzcWJnjIk0}Z=Q-n8yTNE5$>N(du71DQMFfK_h{QY`nhmg?H3NC z3EOYL?&Pz=D*a&l9;ah8^^Z6!EY~mXrK467-aFc>8=X-)6~!nrz!=&}cBn|?;bgfz zf*+ujMObYN*B-Jt7}}m(a_~5l?UC|4(n~ikY_CC3gyFf+p@|anqNjted2#eJIzEXs z|5$M1%;%_T{PWQLCrKCWuqmBskS&j|;6D@MXZ$#zpTm)FtMartvxPh(Vg06_4yoE| zf7##el=sieIB>fN>c(QNQ?*@>N~%Oj@$pS#<<|)k>#t5%o;^3lUpt{bu1pWGVUizs zgsa%-05H^eS8qK`{@LYhl-)O_)=N13{u92P^7xm*_Ug9km8(x10D3{Agn&7DEC?*( z|6Jbh>iyS?Y%{P@e>FNOsmo6OD0ciz0Bu;_)bSd+s(DD%?Y+XhCW1ZgV1-8UYD#hNXtuK z;x)P!;X5}bAlazt-D%T%jHD=Igm`sE8hxyz)XlPda&Cdy-+gEe1~!eP903Yggm?bQ z{gcWPtS>s&Tcxk&iBlal+K$&rnN!7s+-iSko8dib{5tjZRGcppjf#k_$TCJoFg;Ox zcR>j#x?#K(E>VipoBz_@BVqfly5`1erVGBNhF}A<^mo?Q47Id8z4}k#K#bGkZ$6Fj zSd8&#g{=!wK?h>|6V28~#3Ftc{4MmuBcLSkFuJmtsGVhcQxLBYj+Q=ZN_SfLR$y&? z86BM)PXGQ{!Z+ps6!Yjs;VbMc;yDs)_?nxYL-IVGAJVB-+by{BA-ZeFilO71xPF7r zSi@WqaTgTVl`L_p*>)_}3d3r9^Wy!lMVL{X9#&twa&<9I5JSM;^7fXN=GLH7nlBc6 z-Ak91c`I>X+EN^t=JlA)5A&9n`<5)OEMHbyx}*$IaIa_+d3A?2hkVuzT8w@Y=hVc# zqsX;HLyQPJL|0;YJgfbUIp8bddiQDiAH)55^!o1@|6?pjSTX7BwuC06H+ajIdMhe% zuwG@+lEpa1ZSm4d5v|aCHWH5fTZnSVLf2&W9?xc&Q&IBT))-26I`jtp7xJ10;W~=w z+s%BS2J9eOT5H!1A5_Kac=G{yy8VUFubad&SH)PmB#;-8nf8#tip-&vx33vqn`?DF z$jxSZH))@xS0Qz`BUWe;J_vvZdKC*F0}O^4fQ~h737t!T5?1TaA$-v3Wy1Mbrt{l> zkMjWm5g7iT)qKb~dAzm1Z+P>1hyDF$M1OKlzTW(O!&?Tp{mkG!m-K`G!1P2O=mgJJ zs2seNOO`ENQXKFGmXzHTE6lP;uX9H_fJfM4|6Sv=9uGxwE%QxW%QCn!BYtcmV+rf) zV{Wd{FX>#;0#k+l=5@nYXmxz^guSA{jEP!K+EJ_Zor3)7?{WRlmHsZD89woW9nL7% z{i)-V^gsEm@F`E)+nzE!N52mxze{n7cmwvSx5-`V>NB%H&6{;ndF-dUKh29d(EJ~d zAJ1d{!O6bpyiJxHo@?S`YFngtd2+tfzEbQ)O?%SlcI%AA@6OH37wg9e^}z)qL4*~H z{hP)6$$wn_YgV>^H;HRL4g8rEqyPTLo1e2}{JRnG8GP@Vn?JLdANmKzXSrV<8Qux# zM*tGsCajY}j=LT!We~DmadQ1=B)wMY&m7`kM;xzGkls%#o@nl@Q?Sqad*o+lvAlIe z`2St+4`*9FF#hjEzCSxg|MiczKFwx-uzz6u{|A>3&7N~o`QxX${>+{`f_?Dle z!#b_Rp?g^2XK_8A6BBPQjviQPk9SQ=a6MYIxH;&kmG{&@2maiRtD0LIg7s?_Olx!C z|Kir#+9j0wt7c4FMH=UY;98mx<)WVL zT3T(ZrEYo^+qwvy{F*r5XlhSUb4~4xr44IpXGB{ygWEoXTIFb_X5kar<ip`>jpNVy*9C_B z!e{f?^6)RmmW$t7+gj+=>BQGrF%k+RO{J~a=0&`ZrM6|ZGTc?#N^xC+XD=+Q=+}dH z^rakcDNPZlD(5%lHXq(DMv8KLE5(0HkYXvIM3xF7b_i+p$*QvnFmnJ_?Hosfbovwv zr;Z^>@j}Sfleol{{7X5gj5fTb2qe@8%1v)51{R&UGc($!>yd`6Mc1P}@n_u{bqo(1 z2cY0aUO)HOD3`{P{)W#v4>nFk+)@$Crxf?G{V0p;MR`mg64zV|&ba}yB>_1)-<4vm z2tJKntV51Nl=IRP?JdFSG<_CBW7BSxBz;b_tKbBq@ zg$~p245-(UWd|L*%)(*K^E zzU4=00nJy7?aLn`ztZiYu5YhxUGHlO*0$DFCprf@KNe%H)<1gwF?YxbvM2NGiJO4c zwE7_CDUMGY;=hv}+Z*ffl<^6ob(seoXixZ`P-kWpej}Z47ptEhX3P^>_i2R{G8nU_A~uo>%@*t9%jXyA`yBz`8yZ@J@Ofu5E9Vur z0m)X2RYBYf3St!=Y%dG>Je6uj9INHAzl`2~F7>Kwn9x-RYhx!E4*}*%;)q;U>t}hD zwD-zpiSZI)5I0}+aX1?@%k>HWY0(+3k88kGKDPtr#sslnu0CC*2>`Y1ma`M>q$&J#*^b0XvvwyuYBRZ z&;8H&4Dd_Fw;ozwmV*v#jh>+ft&?d?B+kPebm+@0M}DG=F`bD+meZhTQeP%1!pR2= zF-r9Ti{aU<&KI^GrI!;3RPHVlA_P~s0dVOaaHT81MSZQ&53gr2wZHV6@s5M6sV?1CH!Eicb z%k>%Y<4pA}q~$hRRRVR7)$uRjcyPl0*i@gQ!I%3xs;Z}A z?{Az9;lZw*PLG(%eor}~X{Up)1v0)^Td;K|LTuMK{Zp4uEoyHIHm{-ebNSSHj-06+ z{JJezGjHBHq{C6k^X4_RG`E@ABeZDvcIKjmR`Esh_an3~cU0}OT7Qf^^U3K~8ywf+ zlp@T7qQvVo`kyEK8AO4OX(nz4aluzLt*J#^JW%dfVvYJn$EOQFm_)KhtMKCUE_8l3 zdbrmqFz$@a*6}6gyv37`SB$HezR=Q<<5v4$AmlMj{{_LJ^CsY7!Ec6Te=XLRmmQ-I z`ON!^`c3@zXVKpn`?bG8e`S1oV|*oRIn9wXC*edqEqumtLZ2}{$@6cyf6M@YqB(H- z)Cw_EWN&qR)>FiOjXARA%3#_&ImX|H#4V!jX#?Zv<_w=1093=l=dv6~YRdpu* zpShU~LkJKeFX7b*uh9Y~As{Mf0!aYnWlRF1wN652LZTrVCj&&QHd@=oE_G8^`^B#7 zMv4elD79K~i~CJo+OJycrWX6fuC1v{{jyzcv##5ASv1 zlX1S2m}I$XIMXM6&N%&#b$++NoOc{Fzgs5r$<+DP&|UA@@jGpPSCM$-CgQb*J0L~y z8fC*udpWM|xw~ZGjQMTm2Z{M*TKe3`oFRQ&KeF_VK4K#M+O+k9sRZdSQhC7H!<0N^ zdJlT49mb(&F1kAH_qFy6Y3Z!i)~z4K`Q8Po=dC{W`OSioMIvv`{3`SKXC_qf+u`CF%4_K${Uzu9hskxYm6spkgbEkk zbX0d^(KYScA~Lz2AFb?&*KINHj`Z;3+Og&k_~}M416k2|OxDBt*mH|>`Ifvq3tX1@ z7Q$T7TYYUmrvH^m@TbPqbj?UAio?xuuPZX<`kVWqGHC zya*{32N}h*$ckloyfeY(GnAhNwm!Kz&sQ6&u2@}LmC`Yr?(|H@rv)YM^ClU;hbiAG zYT`{&17H1+FOG?Jh3s+|4Ghu9aK3L8alL^()AH)|w8QT-eIdIG`V;E!E?AJ#e*O&g zZQnm+qzM7C#Vy#-(Sg!3zj|U&8(McosuY|lzwPgPn)K2q2OZL@ht0AH#R+#HJ#P?I zrc-zi9b5YF4p;2-*$(3$e?g=zrsYfY#*O5)qTwSau*|n;jCM>rxb_v3G03yaB3U8f8)?kpY|li#N_*w51X&biL^{_R1&1L;SA+rp}z0rl=2-s<@{CVJr#p; z7*J+blhoWg)BIf|^>xbpC8h!&%X}t;?s&Ue18if4r_du$nx!H_S_9wch)2-(zMlD@ zXnvKIP?d#pAgd4q-WQ$6z-mBdRpJ; ze~^4tvl5V-1ZDp+lN6nPztLnaE( z-d{>P4aGu(~T|fm1Q*^vG2^D&l!*=Qcm_8=`G0NPf`j(TH;QhFDqE5txsER zo$>tp!Vm91&!m4!>I~b{h59_P zb3fmpnVft*l7*7&?sv?0Es+L)Rq~9}H}8*43a(}Q;FQgBesIc$3#ZG^W$?2hV~^zK zrdxmF)HP&oXE!HjlDk)OKk+8gk-e)%ExTvPpT#NfyEE=reLV7druje9`{`n*oQnVH z+MC=FJGeHb4LY@XdTsJd`DN=XI^*d_Jzg)i@Beh@4;rtXR&a*-zevB|`SbNBZhgj% z`5!}nays&II(^QW@>|QxM?N1qz3YBYHNc(z_@0@A&X?b#%w8g@^P?L7FFMov;6Cd9 z=uGQ-(Vt{}_3`(ojjXb^u&-`v_rv?tGvilTv3{VDW~{)0pRBkoVjiuLyi z{%rjz=_mDh{;d6Jy1bmKPu^tX^uFnJvS-f)m$kUA>Ci zzY3p9+pnc<8z15b2ew5T+~K>?Jz9_}vMV1J3i9 zZ72tmJ$2N!|A9x04!){A)*9Z>64@S%wO_BATH71qWu0Z}YgsBwdHEaa`FlLpv^2)r zJKCG#fufr80xMV7t`5{TH*m2*V0rtNXiF=GlH&Qr^SNZaq-1`{q6Le~)T-JQYgZFj z^5h2=1I_~r^)qakVqKMd#9hjmg(0}Ec2yl;7*JeyzkJ=gno9MxudRb-5dU3rf(0@wFR5naF;vc4gJZ0*C}jy_z`J`<3Tvs=NB`fXAk}r*7+95W)2be2hqv<} zA;f?B5dM;m_%9p6Uw9_|cMRb#e3Cpld9Sw1cPUlEX9nu-#b4@C(ve4a;+7i6U3;F! zkEHieJkowUrxw4rbK-_)%ZlDy^Itc<@~-41N&-&%-G##dFcT&m1El?4i(SG!0Z3j< z`=!m?PFuy}!`klyc05qZBQyp64iKJ89)wR$I~2c>z-}PZB(!_Iqe}~~r+kcR_k{5UT zmuxw8KV(}az))>f`hdC65IRCP0634EF7fLsYF1R$QAlau`v@fYIUjJhZ;30ku90lj z8;)))fFV(1UcX+cO?k9wyFEzzcG`Qh-M*`o`pajP>RP^joO;Ku6{r1F-)87IwCM-^ zPJDM8mwd?MZf{Z^$(uaFN5?F7w^{7&=Tv^~aA#sp-Y2t$zHSTsxAXm$T2|)HOj7z_ z=Wdz+JN*(;?tu}Vj${ncE)v%OvjKP9dD3&*&pb6xtt5Ucb5wce=@D1(JnnF5VP_|9 zyVDbE|9Q+QWT#TXv}m_fceyu4_L4fa-@HWpd5N<+iAWg!nE9?&L#=Jt5^aslZ;VEZ zN-uOPVQdanN7@=uoI7Xx^o@k$BZMw9D4D$ynMNkxPP#?4TPOTG5bqho2j; zy>uMW(>SaArF;}>bBG*l;S4G_U~G+$Gn97uqJ5@pn~PHtnHikVqy~xg%kNEI^y_ui z|2wzvg^PYM{tIW5-?B3IM?{R4SmnkQtE$myZjaqmQj~f#$# zuR<2(z9Z4Ytw1J3*GTs3MIxPVn$1GO1e~`3XO;hymnJFMn|End+tw`=;f5#|k93q2 ztq88KjkGe?MI7d9S&@xwZMb+Ltc< z>klf`M!lAh6>KFCByUyZDWthjOBqXeSK`#7qK3_1B_-$}w=w#P!P;fXdUwKaAiVS+ z(r>K-n>V(_^d_^&fk>A~%Xx{EoOqIsb3@nQc!Tp*3m-R8w>LrUbi&KsQ$pXlF)KA+ zgXv3t!h~<6wxnLe)OQQN5lWWYUz<15HJqd|dJ1L7; zH;UX!Ek^k>cc7WKeW`kj4!z}2X{Yu&$d9`xs=;+T{A=KixKNQ6*GY}ZO=*!og1*Ry z`-U|cQ>DL?_lTy)lYF`PF!(08m9!{nSs`MrvRhY4LedSto$~yt(kr#oOSbnb8SAB` zUroMDpH)SlCi(?cfZS3iKC;VDjm_N$NRE?qQp3xwcPlgvmY~F60Ufy&PfEWU({eZ= zz2=$3UrT(sNzYBkaPREq8;eptnr@F43+7#_ue93G5{|U5iELq@l#?7q+;Fow*1k2$ zxYB~%8L^%ElU~ftE63fz%aFh@BY@of=V+}Yd+79D!YQ3fv>%6#oK}x%S(fo-J*kTR zx!ika+R2B}bm%y^f?m+vsMkRMDQ&S@w;LmmBI)9vu0=d_Dh^!-r{?!esV4d1ZgJ`N zGbZ~d8C{n%4_<{Vn%f%99gfK{&B@<-WVV8uGc%aM{r+-FFSlGqpx3T(471^VrkD=h zRl4_R)x48_Yz=?wGoj>@v?<||e_eb>O8$~&t1_eP%^b=#+=uip9oCm-$KHva9Y zEB^cL)`nH&i_ttIlSAwn$$p#-%J~o|US2Z&%sb(Ra^Z?Nqc{wrD$+6wTfosxV25-L%NF zN>3}rIxnU4>cpNjN4B+ax1Cc^XF9*;>JWiK&SyVYS8b?TJ?PAoj_S;&&$7Qtxx_u~ z5TC6B(H@f{H~O#*+%bnb+ieYXk?ynNPs$~jn?selYuIH@spQ41G&QD2ScI?|@@;bO^b}YV444K%9S8C{wM&2$= zQBvO=O0Yrm*X*S*j(OvlO#ZCo?Lw^t=(NXl{@AsbkntkjAo$Gdnlq2!`2dhGrt7`ZfZ+bRuQA|X)^L$qIsV^b;ko>N0>4?i@;=^*A5YI#oJ3d+bDMw7r zDVS8oCt^qvP8FP0c^0|*-*o<`N*ujT$B^T$>AOISp~hBIx9PAAdr$U0Qk-OcI(Rx`3%6ulq0 z5jnt|Cw0vd&^v*$YDqq4$6vQneWsl1{kgSl*Kr?{uJQ})IuAI!3`id~-Bq58ujO;u zm(xINuhkq5m^n9>mdnuwdcSLHs)FmT?d7)(BMq+_N?=-FD-QXv(y9c zsrjcrOUaLGfC#p8e`F*kC)S4wB6mxOe`<}Suq074XH_2;xexWG%S(EH);z>uyE(Lm z`9o@G4*1(SJe&Mol=9K%Q})Z6YCmZT0o{TE) zmujx0^a*c$aad~2WsV{ZKglPjN0L=l8*3%AJ0xpkSt&R1XLecE(|gJH?i*M`olXyT zR{T%7B>9x3NS+3*S`)0hI#g4!c7==p>5(eJ;aH?YE`YF`W#Wap&49$~dfR?h`A@mT zEVaF^h&4o;TN*opEzwA8OIt*aG}G@yJKBv*q}E{69ctaC>)BZU2;{q@IAwu#Y60IC ziNzzGW&m^xw%h$Q#5$vf*yhlNbn04`)4L#dT5`_U)wRmLw%j5uyNl^Ed#Z8xZ0fh9 zIOSB`hw#s^&edE^MbCB@%J`lJ8;9y0wz*T07C!XMW>8Sg&QtO6k8S&BJKmKPr<`h+ zwya<9$$Wa=rEn<{=k;Ftx})Qhyz)!FqIA#DUGn1ecV|`qC20$y#2m?)^Efrh1eZ%O zGc_NVvlI9fgTfH4N55cmHO-8TXLHCEEYWn5Z-6? zfLt6r>*kY^$f=vpprD4OL-X@YTF+VY*L};*pd7nb2U<1)hQ|TJ$Bb))vuZD;T8q}1 zz@ECk8#e_bF*DQ+?lT8@o<`dls>`GYNlz-Z=4G~!J`xQPNlz?NdYQB1SDE|N=PA-W z#q=jxwn1~Bv+kcu^(m0kt4}5mvO03NT-)i7@9*kdw1(*G>>!DLZZq$zQr|tAKJ2XO zhiiCTr<6}E&vs!4%W{gxS;%n;ouP;Qlwb+=*fS^Ry{x;hO7`_;wYoRCQ^?%xYVqw|_N=p8gx3+h%EKlq_eFXBmP~W;ch#x~JP-UD}+3Hoc z3ROxFoz=6dFLSFxGJmcO?_iASUt7E=$Od55S~g{_Ub{TBYHeLr&4vnI`V>2SI=l22 zq$b)MER5DkDD`<-VqYkYbCw4OKlR{-nKCR@wONi-2mIP-PMeeUWCffT) zIe(Y^iY@#ZU6ufQ6D{mtm@n|%q~8lSup$&q0MW{vO9|Z?nda@Vd@2PI0w^_e8?_Jfc(kH_7!Meh<1R)-;BLBLBsfni=iT4-IMqJ z@^wKcUO;Q-NZ#b@graL|zN{yEHL_D9xfd{$C5;wBu1!m06(K}JN><2H*YcM+HKCOZ zDfHqAS~7~7l1cm;c8A))vho&J;ha+!l9GIRGWix?x#UaU@k@?GpFy}K`$>-0okJmW zZ93l$Y|sDf#imt7ml~Xh`msERF8$}x&tLk37he>+eWpg-gP6N6`^x>VUUt#l|AM)` zTwImvE+>4sHtL_^iXXffuSnYaY;$zkAO7%}&k+BAC;i;?#kI?oULsVQTS^%5OVIOR z5fFW8c~%;f!2ROM<6vXczfKy09S{$p?Y4{AaT9<0N#w~6o3Ptq6Lvd(!mi_wc=^R= zY(frg!SdMQO&R?-IAwIOl+`gy1bG}cF*|29+~+mKvD{%&vV5ea^CfB8Aodiu|1C6A z-BQAcr-Tt8uKN+$x!;a2?wYRp!HcVHSu=L=S&@~XDOR2?)Kc>R)s+f~IFc5$6Y*@j z63nB+;cxipvWuq^7XL(iSJ*^(#7#fZSF_56=gmJcxYNcvY}{kxfC}jFJKi$kiaRYG zFL>0Wao(qmec~@O_V)@V$0;^&$BQ95UgH?eNXN zIyL?16DGX6&E!XPkL63N>(O$ng9D;DC;D!pohy%M7m9fqzsngxoo6{A<$T~e^o!(a z(!HB}4c0t$Xv9Vnw)F8=L2o_jiY8T!jv)F{8=>duOPSQ=UJ19md_mWt?{*ihQ1jH% z!`_^duA`}D{4;%ZMSRwhe;I9@XEpYl7}K`WugkNHzPp`%`v$F#C1XLl`!d3t(Lute zo}Msw&d3<<#LVRHrm&tAOg$xMGA7JA{ccD2 zY3i+7OExEh>?hA|$K7^&>bb#g?{^s7eVxJen+@)>?Oh>bFOC}AZ@YKTwe5EQ(S4P% zM<*LxZpTZI<_(Unb26N0{7N5o6>;QbM6K@A z%;}0u;g>^m9ieIopL!}GGkueb%EY;pOke1B|EhzAP?Z6_>S;XiOXZaXCXG=eT7IkmvN{U!(J|j$f&j zOz{k5(e8Hl`a|b48D73zE_En1lR6TZ*gC8F=hW#sn%o~wFIBr-PTj0SmO}JD?)4*Q zEh%qOYdslmwJO&68QQ-@`!Cn)B#|7E?c`V9gPNOlS{FV&&17l$p8aXWcWSr-eS7mQ z^$Kc0zNmhB@!hg1=al5ckLc&0N&NKrgRDj6CNFuLDW)*Aoe|aNz%cTmMAv%9Pd>(Gc22{q3O@+a$Zxu0Fm zV97ZQIrmjbo~4|!+LhT#fOAgroj0>87XS2eWj^O)Qpps4sM9wl#_62Xk&x-{kkikf zIO(T{Tc+n4QZq7BaZan4`|o6xFSD3bEwK()sARZh@XeX^m=j#WO9As3y?K$}Q|re& z`Ap6~jEnosl&s2S=R+Q+-MY_9h^6U$@G04?@T#Jd z@Ks=lN5Yr8{DUsDjsgwmk$M($IiTr^#eUrB9xwN*9_VzY({ciXE#R=rzYp`Ev0XX1mGh=g^jXHoN?~FsIX$ zu+bs%8Fa;!a86mo+(Vo`{F&Q}HRB`cpLF~G8|ee-kI-^xyZI#a-A~^T{F^a%yX;P2q2zYz+iP*T{8!=)DZ~w|9h4S;Fh!2 zqhVX%hTIz?uabVnamYM<-0<(a*Knd__ zy`^3U-UNOPd;oYGER_q414@7gf#bl4MoWzW3V=f30$?Gq1gHY81zrGt4_pwz4_E?J z0oMXw0Twn{>JnfXa0Rdl=mAb_vDCi;13+D;r6zycQZE8O0*(WVZ?V*6KqaseSO?Sr zJMXa6eZYf2_ctun3k(2($1N2FdI9xKOO*pXhb`3yi)8V4H!FD^(bvj%ZZe95vH9sbN!jt)EE=)1@nR;o;d|$omNw{rm zZ;fx!OlD0aYa=`C%{Sj1-UM4!;6JkrUt{scnX4*v+C?dD*XXp1-EMUz+~O2B6RsS$ zy!oWlY4RAH;Z>_8KiWQ1Z|^@a)2o`r&D3`(*-+luUNshMyDbp60^D43Q6_H9=R=Pd z+;%vwpyOdKy$>|sW{b?N6L#1lb5okQ@t+yfOXx%Ncg@3b+tgu})Fkx&IP6iINR&82 zGselQnZI=+5fvBzgAU#V5>$?>Y3GM~yR^+i2i z`p7$&4+>tU)WkfW$}7zs$m#b-ht>OvYYtgz2RvPTA3wW*M*y!skK$N87%fkibOFAD z>P71}3EiM)yjP8{$&Zey&nx!i`&E8jj><0^uJTJq4dg~g)E8!3D*J?AbzMq- z3LJ%2A@Nh~q>>iKGd@R+ugg{A%SNd2rTGJS{iAvl^o~(6OFe2kkoOxy&u#Y<DYn%{=BH>ON~`L(dLho`4-~W-_DP9v6?u|r$&eK)abI&YV_kHq8lHg zzaXz;&K<7K4bM^Mmd#e@dZw#$`o~1`@R0aNh+6breqIK=IptJVv@{Q~D)-N_yys3Ao4yF@#=-iH>+op4up(Ep*^)7K|4ObI91!}~=@cv=F*->wOROT*RRH+3{Pb%1=`Pju@+&OwMV4<(miNFg>u27V)Hd%-A9LM_i$|(C@ug}`c!`=* zc8QwfDN_XlMjT zXWpfj|BIHj&;MiVYRlh{<$Wc~dPCi0`Ih+&FYieyiI%NiNNd^p0fyHAsgqX(d%9$9 z;Cr6=fVEIh@J=V+V}EDodn$$*fHkV`35L-Urc9Q#%BSw3j!hd5PCS3Oni4NmQ^Emw zeJ;G7q7vmN>dR6`5eyxGH%IQx9k^J2zhjLWXIYo3sh0OE>dW3`)}3CHw+eV#4o@$G zr;7*i^blko7oI+i;roDZRPj?5*Eb5`Qu#eJ_D%JBYoyQn1IxF~yTPha_xP%<5{o*U zKSBlKvs55FQw7RqsDNjh(mj)1U%CICrQVSIj>Av{__R#*7)j8--FdfXd8-kCBCANX zftUG^Q!NYMAm4|`_t(kyzCrnJhFobjv~R?47vR^l4=oBlN$y1idase+zS%FT-PXT* zz0Y`kF>l=WJ*2|F%{$jBRbTK`d#kNgS>6UOrV`6vok;s>(mqVuPm%VaL1~{LxtOH= zHU{7OPTGCCL`K^CZE5#dzBl~0o@2H7kN9f5N36N33Avj)LQM;oscB^k)HKgrl^6|d zzEwi9M(Sh@hN}UuE?d{40AlZEW zUD-M(rp~?z-yVl=)Sc(iL42F?0r?TW&BCx4F!Io?`v;q2<0;;Q-k)2(i?X~=d##tK zrJZE1ni``2k+wk@!*eO?Cn#%CqO6^eE0wa|j^W+}?Jgr_`nPBN@GSL$)#csgyUkl5 zM1Ehv@CIPlgP}QUUY6DDz1teEnssY) zsQE%gQb3@^VAofn|KNqV>N`aTQ~0p3vq@cR59{lY*l z6PcaXLs@E*HPaig+;ga2f;K0wURtGni|{Jqwz zS>AumvYzyLKj*W)hdh`KKwMEfzw-66D}#BdDA(fv$=b#b5c zpQXKws$ES|{4a>HCwR4GeaGwDYI$$U@_*SoFUwbDdB2n8E6MV%x8(Q7{%5^=eZTbf z`aWlQn`p8}{Ga!>WcePpyw7C$zG0EmoQJZ!H(59z&0(a9Sk^Dq=cRR9)xKA%kNMQ=fHPNf+f5reb@_IB?DE}*;UHkfi2hP3-XT-GO;WOf044Ke`Q};PhGD+9 zE$=u>O7Ohphr2b_@92c?q!W6^^6#XnC?o&-kpD-J|DM6}&)E2m^pztq1OU^|_33nb zOuG5^s2p*5zs=(ph6Y;0w~p=e(4=DQB*KuJ7`kooZR`PL@HYkDoywKb=0Fc@T4o#QcY( z-XMQP5e#<%MqYbOf2@B^x+W(*lXhDRE#F%Ibvc*%i+n|TjuEAZ%Y1j{m^xfS9bQ5m zmJO=I=OBNNl<|icUI$FyUtU^{>@;NMzF<}4c<;-WSzs5#u-(@#r@bwsy)ozVTs)|~ zP4RlwvqEzghEl+x8HHwF?i$Pb1)_J3^<{O)jK|fZ)xze&ar5G9&Yu@veg3?%E6$(i zsXRY@UL1#%#e|{gRt$HFMax6E|8h0bXRY_CH=VhAnVBEBS0VOTcbI6GOWwYN;m3fP zyZ4vM3b4?K)a_Q@mn`q~zKK5X2Yx0Y%-xqUWwXm(McFGUJ3R0#8C3RyY_Ix>&@aTW z78s@TXjAUf!fLAR&?cF;9lA$;E36mvB(9S7xzO_d*sAmG@zd9|cylhba&zAFU1|BJ zX88_ybDzxe-ER5M%kqsGKI(a|?^?@asn7eXbC^0HaCeHyzjM^f{_0#k(W@3+f76GY zy3YE@s;;wFF%0uL`5w@7mL4N{n?xo&*%u3XC@Us8hHu(3^A(G}nPteB5&n|wobUPf z=Kf&VsBh)6Dw*qjSbD!EKRmQ@{mXLI#7jo2^P4BD+3^ZBJ6x`2GiRTjVa^^V8@q*< zTQJ-QhE&G~%UH3@(w_7?-w`XbO$(rQx!o$cgACs*0UjGMKIXiL><#@a-0@qk( z@@>YX3mKCZF(xf!OqxHaE>Do;^^*SE7(By7R`Td;DvXqLT`vsi%Ac3*eZhKlxbGs% zV*Rp1NUNeNF@zIobZd@xnKI@d@Os~r3H*JQ zb!9d}K}WjAVnUaw+f%P6AA{^yB#kFA{20hdEr%4!RPpUzy|(Ns`nlKp8g1TtBl4K- zd(FSq%6Z!IS9o(GmcP!b^xx)tPIgFES>9?tqL;IiodY!{mnvcpCiiiFRQ5Fje%=S3 z$4@a}+G;;*O6x&YZk^7YAWSqpCy;sl7O`Bfwq#lT-rY=UXZgJ7Wt;wEB5RG(aRcno z^o{OK?w#}yMbB9dU^oI$Db|yMJzcUN?z@Y;<4^9zu>Vs(Q>j~lT%s2e&TSuRzvNoN>b$pL=(N+lQLv{= z_V0b~skdZLL&wjM?+2Xt`!O80>2hIDfN5cHAqX@+;;a|b1r+D^(FjR z`N~7s;icIFS@l*>&w)AUNtIOQfeQ#Ine`POXKjdcSrPnBY0=v*pCt%ay&4 z82gy>au}Z$s*wXD`iJ)=cc^5(-%UG}{i}1>ztU^dK3}glniUlOi~l}&Q0Qj?6rP}Z z|C0A%J3Xq7>G{Tq39Ku}Gv63T`uU0Z#*4(igD`qreFcmE zyV>e(pY_EY)hPmE#*f=PbHcZJ=9Jyynd8~!N$zeK zJu}RAqs5f&f!wvD*5*9m`yTsA^^;Zody~}_C#R_8$ET`Go|~o?9X?l;>57(>Rhm;=IMd6TbePI!?aCP`btQ1f4xeg=r-V~!;q3P)X1|>@IX9)cf%j}0 zZoBTI)7}LL56aoMZ(haE)qqd0zvs&;RR7RHdjr1l!Z)W}#a))#4mjm<+dbp_Y8+$F zxH>TJ0>+h&v1QSx`hLng_Mdsw4w4amq}a2iuka0r|?sQ{8-Am!g>lw-ZMt=cBiceWc1cHj4KeqqX0Ni>WuA9-PKc!YADrt6ela!?M({O^jN_sGW&F#g ztskoAoi*^5&^gzy&V84u%86_>@|cfwa0r0N4k$$S3vJh8jCE^jrO@E@ENAW(3 z{K-2lk+ar(L=x;#r&F0pD#;3qHoJ=C+q`m=lC!}MG={oNcj`55m2=h*FKDF*LO?|9f@=8ehnYCG-Ney3M&#uT3#c*3L3 zeUkB>sFI%BKJgsJlsn8AwirKcf7aM(a&{UCnx@~XgXZ5^>f#=Fq)iNTs?x&8di*RQgV@)=7=I1FGL0$9Czm9kQj9rPjB{Jce#JID2 z{J_}${Jy;2QPGk0xxo?AKiPF&jJ)0qICbu}d#2>-x}HLsQ%G}48FDo+slT8P{>s{B z6Kk7Zdu=21kh>llYOt-t^PSo>$qr)M6 z(A)`5{bS($LJ{%DXkCfX=t_(dU5tdTgoMAAU_}vrwg5hV-Zbf?e3fe9IA4K?zh|UR zjVv3XMwXgA(?aGQqv)rysb9`UszpF2Q4OE`+TMWM4sj#C_`B_c;>4K~OlB;cVyV^t zX>MZXL8={@C9cp+#3PJ59e1DiJ~Zk*6QwUy?se{1oa!fv`=x5) zZ9a8doblpiG!SULvc8}QYN)XxNHksUt0n#pYs}aj#aC;f z1J4lN70A3GWfxe=a)h9pq%7aX@M0of7yEeG@(oENFFw`(058%0Hrcnh?GxwF7kVaS zT*LQ3!z1%e=B^X!&QTM}^3{ZQn4jqOPFtr=?e^X$@A;%0tI-21TF=k5fR%Fy-uC)x z)V(6}MqdYAoig?XjJ{62&STuK$`|vhoH=TkXu?moeazGxHI;pusdZrDPA#1{Frj~( z=GzfT@4NhbU(y@Z`)#K36SJ(RX$5w_G+2jA^7*dB`+y(s6h{Vn{LfnVu#&WPO56$P z-n?o~F(#o1)HReKB=la{t7>3BBWj@Jo-YqZwC6F|LlJEilfSw$SUj zF<0IAZoX=X7pUvlL#e4_ZQ?mc$*k8iJqNv>sVZf(DIO8@6!IRpEWrDd@hWAPk+jB0 zJ=f(@$IK6Fk~(5jrc%~f{44}~qXO`Ee!2W~@#8-)+gi)3C?D%1-H+0j)``v$`$DCu z{b-ozdVRG8gTG!?S=Jr8?-X6B-NWidSE{f$R~5hOSD&EopMH$B+R-t3?k@B8Knvp) z&`ETW54YXO@VtyN9Q4p1OwU$h*$-ok)cR9;FA4X;IX*S#-C{K^zJPtGOH}<*>I!&G z(qN5~ccMi3kCke-H!nkG?6lqCOdV2x;i(zx(CA>zVxMYKMjfoKX}qtXJVke5cmVL} zJ}`Q*^n`t-^4srUm1BKisk=t_*i7Tmdo}bQ{!(_-Sj82xMKY4TN6~Q`*kq|28!h!1 zq_hmaJ3`ySPk_bP{tAd)+)Rv3LYJiQCXgY|U7< zYtN;xr6VtjVE8PMqt`6FcaTL(xh`DqgEE-DBtLl{@FQki}=cf-aea<1@`|78|tx7vC`-FAGV=S5Scxv4DC2lsI zeJ)_)_V^-}n(9aUfoI|;WWHEPA35Haw zUd2C$LndQbGkIBmb^4%Um}27U2& z+ud;{@&?1lx>xA0Bj<=v!B>NoyiNW`{HQzfP zJqeoRJw}#UByoVw015^7a_f728`o%##j+Bn>AK5pecX-raFPfG{ z)){koL39rAm`e+pk`e(um{te*YpR{{qPj(aK=arB@W@N#v=h?epy)im}MAS1bo4uC5SK~Z~ z^**yl`W?pOk)nsKxncNc8&w{9=JG^mFx5(XWPaC;`(dCzgTDk9{dRerb2_^7V;jx= z5o&sAbYUskMP`&d#18E@pcRm zFP$ev=O^iZ9&;Y&JXX5g_F^u^EjlL|?g(xhe~7HkPP)DL3Cw-$ySlAWEx{}Tl_NNTyEv1gu|`-ykxjdxOM)B{JGM- z12nP%hpHZHeuosFAq ze20y{V&f-l{Fsxjjo-BK?`(X%jYrw}J>SMUaehwDGx_+5jbF0yw`{!I#&_8GIvc-? ztjP1OjcaW8@iv}o<4POr!2BGt%kS8y+wt$Q@hvuPwQ-M)%WRx)<7;gE6Ppi~ZU2>R zueR+@I^D>zJiBfDn2o<>&%Q<9qQB-?$1?fxe1Rh~O+d$)~u+4!K1 zkJ$JH8y~ZAksW`RP4@{K_u2SoHeO_h|DA2$X4|LP_@wRblxwX`_ca^$*x~-(w%6PE zkd2FMzO>r*9X8%;V~6hCv~=FF{qt;hZ<_zHwD=K2sH@4wa!$+rbf?)5r^(+ab&Bsp zsqlhuN$LD>Ype1q^C3gm*A02W9PZrQqP^8RPi;KL|EjCFGiBxKt15!4w8!6O*S1C? zQFWKn_d2iSyY;ORbxl^{>UnjYHdk|>uTuYLakp?V*51gsYb1nH?`6yN!`1Dv+LpG> ztr2rkJ}VTHo2qTxjZBJ@vxryM(s;x2_N{I4MP5X%gzDtW|9-aq}Il z+M26Yw>RFPp7qx7{q}~Ai0x3-+1R?Zqh(t}{bQO>ZF55`5*FT8G~T$iB{nz)@7+^; zoETSB)vT>ry}&S1eLbr#*3j0`%6D+qP)t4>$!thfwsb@r;*HI=6S;lV3PvI~B<%;S zV0%YAX@5jjMw+hTs}Swmg=56{x(;#W))ps}`l(eD+00i&BC+MI4ILd-orKzE^Ug#S zrzfG*5s$UsWSpq$itzPYJL1M#!$)|kI+eQGTFtkfmT!%9w8ySepVYQheD3KgwZ68h z#wlIBTHc=IvQq7>5!>r->$1?s)=1mtcylNci?zqfJL2K;@~bO02CJ4;mUG(iuOvkK z)_ADBDFll)M+SxH&JO91B!{ArSW~D`DmxNWUrKRpibZbR%2(BHQcq@w>Y8KW(Di%@ zOsOYqTMKo#HaoPuEgTBBhc?A1RAWO&Jk$^m#hdw}XgCz6wimD~`$eS2tmG@6#< zm1OtM?9iHcXQ%~{;wRM665pzBH*R6W&V;l2oN;dziMz{~x3+0pJef*{G}hE^SRO1X zD>iMcP=!M9jQln76+u4Y2M3}zDK&kNyPW}62%+Vjow^hVwuvMX91>^!@fg!MVzihg zYD;8GqtII_rY-HXflI~2=V#cHx6^>%TUz)4Ttro??TsCXjZ&BBm|JMAexV%dh(;P) znpzq|&APP{VlwWHTVpX=Yclt0N+wszM5T7d)rRFY>(|z;T2qxMzuP5LVt8_qg3H_Z zv|Tt9ZIG|wkik$J72ebiibePqgFYi23NLJ zJ84tyw$Qew?a>&YkE2sPXOLfq?MFmzcxq~t>*|&If@<0xYk@5)Yfy|Po7iN9R3m-2 zDJSL4D#_28DuhHdwDJ|l$f7c#Uaeqnli1nMRUzY{#;VXJ8g-iy)(9>0a>~-!(b6b2 zK;6QO&25ozh=vdm32^LN8syW4+&C869&c|^Us8?j9a2J12i#JeTnb|85T@n*UXc0q{W-qzHznJ;aG zw)4gGP(y6oS_4I%GsRC+SivA)Pe!D=BNim7EkPUG1tN+A?oT$Gq(=ZS&y!ycj(tax|~C zWM0WU)19P+pkrxiKZXC+cuQ+b{H9ZcNKYU=4+t}3xSK$Fh-QZTQ~6Wp@)a?6khD^W zgt)!aQ!rdi3GuqOCf>TdAu3;OS#I|||4-ajx3}N0HCk;;a8+A8M&I}=@!8N4i*Idc zUEcWkU6k@%3_g)&QFNR^J!p7yB6vg@2a)^SqzWv%M4 zE$y*tzIshw?Jq;9yYZ`xY}&ecb0p@tebTFkNxm%9)K0766Qg=!#8^3faEhzKy!21z zgVBOP5J%o8;#zwX(}yi}2v0=^g^Gwtb-HI#@|goBYee|}pO1_KD}QX2%O2K78`s;o z)y9W^ZTy`CoxLH)o{rHDNO^wnsldxk$Nun#(%rAmyZ;l+c6OQlB}r3u9xe#j!QV63 z*-x`w_1>eH>)%Yh=WhOG6&p4&hiZt$8gA0vl$r9GsoW{T%h==u8iHI1<$9U4rb5EXld0TmrLDE{UEIbS(t~FVZ@xHu z`r(7^?WdIw`=dzAu#=h2l;7mXlUxB!@iOLD=X6aZ-XK?XgjVx4&jxoAL-HjhURqL_ z^2NF)*05PdY<>Bp-6^L=%oNY=mNPOmQ}~p8h3Zz_NW|h~5d) zNVNnIv+OzVw#{1Xd4d}OjxUBkWT$}kg}#+`Dw=YhX=E_84| z1irYCd=R%B{H+;E?cs`rUhvz%lpOR$W+u;v+=_Vsm_l5^S+kf^V|Jf&aG!yYvk~70 z>YyX|6`&Qf;N5e0?}7Oc_#aU?+KJhHK10rJl%J1&CiDeY1G$6=f^VIt)KT2kd{&{w zO5H1E2Oj~1=e^)zCG4zl7m6I~dl3+KIdZzVlzmE61?5QH1Aw^qfc*=MyPP*V49w*| zkzVloKr3{Zw5uh6n9IQ%0I9Ef@DCSquM#x-!80!;pTd7|@nzVV*9xAqinJ}v;K1dk z-UWXE+$r?0;KLki$dk|qPhHQs6%YC<;B!97dlfHc@RtFdXYl?{DfJjf;tzrQ>ftkH z!M_i)_e(u;jjn2FL3TN!6a_!UjCe8EOZ0-XSjQ`H7L`5P0(i`Q@Cb7N{MiSHJB+<{aO)$;8|EnZXHQXg z19`|I47l}K%NN=u{#7w?sjmU>(nTJ13^|N~e-9KOKkmC{-1pMR z{WP0^*9ar{)4%{`!OsHuD%g}oxEx|7UZ($bv zL*RYPg8#4WF8HUmdq3D)L7t(R2d)8hn+5N-&4uvUg5djr!?joE3NFK_;KLqA72K9pr*LhSK;fuldw|UeF+TMmVuAn zhg@Oq1AqC;$Ta#SJz&v0xR>y5{R7cUxEJWfUGT)efzOx&;Oidrs9P|1fnVz(KDtKz z;QJmzPhR8-{Bzqp0PgxK@`L(XH~8{Bv|sde6peN5W4q-yBghN5da*B_R3dyCdo)pp3Noz+0X`CJDp$k+lAQ0qMHW0m%7)H9#15 z!Jh&;G1r6t7O2GB1OBhWrp@xb7In`N+|g+cJ_Bu_8I{NZ@SXo)!gqt${v&b)VTaFd9b>otaRdIp0eawx;4%M){s^<+qUVqm z%*EgfpGOW*9V`c5`2uEmQV+iK`;<|53tsV0^kc|U5Zv@5>KbztTzw3lQ}03W-~Jdg zvNr&}=2eecjDA-=`1aSROUm92KL4l42IVaV9|aDLp}b({9F^c0@Bnoocn5F@b2qr? zbraWpmO#!JEa)c;GzDJ_yeRwxTRuybkPwIxx9+)HFJ1K2t0$qGNBs)^ci=tDf?Fn|%K~rt){lA$5Se%Dc#H1$ z{{oH?M)32%NzDD=52m8i4nNg26ztCB>>Tyd4UWv^{#WXTbgiSd!<}xP>zb8!-#M8;E0epHqApqhLHM~GU!v50r0JhEcF09ai2kQpHFh1Uy^f84_=5K6ZInapMd~o!E@2Y zEygVPBA^npTOU{SbT0%t;hW&AfSs7#XUyE^&*U6h-zDf=P+q}fm!ivwS?~_O<=kiU9#3)?LCEuaT?x8A5*&s6kH-vN$McY=$;v_Z^*mjdr$7JLH8r4JbZU$L3< z7nt3;zM=!X^9J~;g$Prt(>|27NF>R1wRFh#q2)6D(71N8|cMd@cY0q%zRr= ztpJ2(`DZNkNkEVLVCVd>;KD9=CwT+U1$rbu;O#&cX2C~+Ff;}K6VQpd4?N~}!`lG( z>ww6-TL;yxpDKE)Uk7%;XTd)P9>6U4*T7>kW`SS%3;IL&&o|W6+jkkB^Sw1StDC+R z`7Z{)c`vdd{Tq1I{frs3-yrx6K=LpEZu%SKiN4o;c1_N-6+M8A;V!rg;3`2?4*nS+ z;oavTAp2K1BL})UW93ZUscPJHbB!PB3Q^ zz2w^6v`NfS@ZEraIx-CYHXw12faiXdwuZal{{<|@ybJtWpdNGH9!p&Z?800Rz8{dZ z9svIW5IQHp9q6KpIS$U<3-1UoxEK(3!B^YnYr$W(&AY%~2Xuc0ZhFLoZw7Y)x?JEd z+2(t}dHWeVByZs9fP|?8hXGkbwSs#9Nmp>}QQFiDuZn|z0r)YW1mE=-?F;ih@P8bz z)J)9pgV!E3H0#0N24sG6MBKiP3=w80_z^(TJqqUPCmlxc65Cw=4elfX$_d{E{yeY} zvs_@@3mhV@;FGpl?rQlxnmxzAKHp|6?2W+!kF8EX1EO!i!JZ!?t zRf9`yvvc>lluPdNRZp9;$dwN(ZL?g?@FUwS7d9;XdprN&zqHMAt;6$xrURb*Z95G3 zMnLi`$4VS+M9u??g@ni_UW|X2HJ&BuuoIv+jV%$>4{1HI6`6 zsvmc;;82{wUA7oS_g?PKzEuLHJxea@+|nB0ZE6Q^=aC^`IpYQDbg|LvP(ziEJ2SbvSm~2O#ukBbu68Og2lxhjm?oQ4IT5g zv^2)rJKCG#^LQbBaYM(J`P)k71b6}2(u7LP26t+Z3IvwKW9S*JVk_OIHvL1WEtsz3 z5wjzLLJ2RVZ96Vn?}wL_;b5#~8*eH%M>-OoZttp2qKZ<&>d3Z8YoJwrm(FSESk<e=kT81JkC13d@!9XNF0@PXa~&mHJHaQs03 zfs+RY4!n0j9rPc}J6LcqaIolL@xjFh%MY$R7(BS~VEw`7gVBSX2fGgLIM{t~*TJ5H z`wkvDc=%xN!RHS49Xx)p|KQ1kWVD}aKqbFl4SsdwS2ymh-`l-+*WQ9hiXU10Nbe)Z zAL)POooEBH{9X9>4wFN@2vLTc#F5HX0i9S#onT+GrV`)dGjro3>h-e zXH|XR?=zSE^0g~{_WvV)`IGMfJn#PF)uSI3*Zk2Bi|aL`>%_HS^e=F2Y`%K*uf?@s z^v`hp4TfWvX~ef=Ht21d&5JUxz4 zjzMWd&vo1lL`UHte=ppKt6SXqMGD=gIUM~&QtayJLLw0rf9a0$HFhDZEK1QPRFbG!}CFU z&W=5I)3Yb`e1e``vF8Cx@!UJrDjzzMx7h_!F+FpAm&2jzLpI^Uv?8Aubq8)sa}?=? zUmM<_6Iq5FMO`ekHLtrlMfq~G{PMW+FIHIPyHrtrmtDTrE^oEJ!hVixkK3$oOk8~p zc707|eJ|SeW!vQ~`gmf`f+%pwEHW^I1f%4*NN-eUv$(m)~fXf5$G*Qk3sO9|pe$#Fam4m#;L-N9p6T z%Uks61wZ5E$1wSuPq@Bqy))luKD98-(MI?5$28UFV%kifTZM>tR6KfT%$~zSM{*cH z!Srfh*(U0mk*v*ipa4H$Y>q@Cf!rNTtM++S-p=@IjJqOPf1%f*tvS~(xGq{b>i5q; zRbIvqGQI`!cFVm^hcu^!=`#Ry5Yw4U8kQExdKa3D@ivtACX`0|_%s(pc_qrRhJ8#5 zY>BU(+CR_dqUJ)nGy796v|4lWH(96^teDk@*C2=HqzYJM^kmc^C}sWt$^e4WE{oBEX)-l$w^f9V6j}jii_|lg?0aTQNJ}<2VNImmb0VX}3Qhn%~nY#QcvwVbjq$QL``?A58Aj(Cu z9$S%sD`6a0{{Ysoqxwq5XSmtey==`%8X~GZDwlg%Xv;;)*bb)CZSTls=P10xxVqTs z$Za8T+C(sWqTA$dB*E)@OkCg#7dRl<$}nlV=rYdgKG4*nsLPq zmc2-$Asai0@x5&CVK#OPE9j8!`#Ujr(}noOUmb~Nj&W}Q$TqY{^_!5!^h&hwQx^KT zOXb^g_f66VU(U4RUgL}z$i+`*e7DLcy40~-jM)n*We_2I@ee_EJ|R1efbm5>Khy6M zE!1)a+Iq$njH5M-ukbNJ1c+W9Q9@qO#`FmTS;4nUhA{r^ri*}AcOfuk`qYb9!Jegq zyT=paSzCxH#?#+MB1AMu@->aT#Mb zwL&)U?2bgFXY13xI>X`M_uuSdQuUGt1A82bP^Q5hr2A#It zmbQgWe?Ymv;QuN7KZpMp@xKHAZTR1VfBJLcFD>CO{ZxM$aetZOuRs3!_3LLom^YLp z{>;P#`GROI@_9+J{ETP*q6{4{cPnZ5Jjf?B-1vpKA72Co#k*PP)3oMYC@vrGYCW7T zJ-20HYgd{+*u5})$HJnqtqbK)OU}X~tsk;C?5pWy?QO)Rh0@4+fftLkEeuUq;HWvq z8s4hDgoL_`@m-9sbTfVUNMpq+QbPfks%MzZ75FHd2pRfA6N>;F_$jA8{yEUW)FnxFe;m zCg7iK>s9|8n4e;JlAgO#16fz!4RX*{Xi=!yiW? zDh*jh`qC>GE{yU^dhRnl&>QNVDXl#dRwr9mhz^jweuTpz^ZOfC;HsqWiX2k-NXB4Q%*1JtK2@^zIFDke~4|HLWV0-~2V21N5 z*l3PrlJVand$DVwHlZwBZT#AP1aHgwK)u(lxyGuwNWbgBCWT+Y-)RjGM%|$gq}Goz z7++<|*mSF|(ANW(^jjEe%L!-TS6--%s8vFrI%~GcFU>jxfrfDfa6e=e(KE_H)VHdMblU4 z+bev2>cC9Z$2ak!rrsK5gR?ro_*wBC^W5boYd2kK5t;Gx;@^K;YrXec@4GJ~a8MF? zWGXz1)IK%tv`dUjUE^Qu_jZkp7kdOE?NpgQ*pCEv-HOI<98$y6qW**y-ENm37_EOX z${&^L*CL@Qq5WybRU-Ff7tj39)lP?&v7CjDI&0nxFOch2edDN^)2H!6Pf>aGCDHLJ zo<3>DJIjawRDVHy{WJ{a$&un-k}5`H6|f@qz>u*=CX=aRs5PxPVyg7)Vb$X6V?YO^ z9tz6t!nzf8M2`^B!{qZ>q_gvgSH$V4rd36QCb~A+S0VTjxgQ> zdRLDX}z(76B{MD2tO#x~0~^dR;_DYPHWZN1iQ4 zA1~vFA+W|(=xJcl_Tp@3yqG<@l*kCPSI_zy)~@{WC_R(3LP`6X6f55z{z5!3w<3lH$Qo~8JUgMc>Qnq6#RjX(1M;p3- zZDswB)LB1(T0+)`ku|&&O*L*zo$q-w-%QFkh4NjQI^RQPz7dq~Ldthq>U_7G`96dZ zD=20Y>Ga+tBKaw+IqFWRB_dI^&wrf~^Wj!rp!B(@+M@jn$CIk(;z7&FpcmU&EvyN&(S0%{Muk>h1y-X? zq)*YT1P$Rd&atvZCFyvetSb^3SzSZa(o@&{@e+#!de#T`5F;#VJ&;`g^LEy_CiD4a zt>MfyAHWcH7(WsqhJt8yUqvFv1M?!#u+>!rT}lnT!md)!s)>j0PKJJ!oizdaJb(re z<4Mu62y`YuhgN1gsuvO5$IK1~>L&Ek9vBH$FC7vOcilgesJhM0ngBQ3xGD zJW^exOrT(Br1fH?T@deLVA?d7ZOf8=vF6u$CPzmhH;Lvvw#8XJaI+UeW}Lj7665_M ze3};uv=$Rzvlcu=ZR5E5P?4V5K~-u%c}<;=ShA?KM%)UcTA!R}EVv64&@&~GF`e4m z$NduXulRE#)OMzAS}!U?OMkWjckQwlqz9a7+3=X;k@glpUUDjB(_@bD$!a2W2h(a@ zEdQR`nqf>so{1H#eImKJ9bwGBCsvB4(uKkAGO?CvlPj4%F-LM2!F7oljaPE3z8q~(IHPxl7u->S(9Hth3D&u)`>hxBl3L95j82C^V;4JL?_ zJc?fIRMQX15qPUkxD}~zyUKgQS5V1IWIm}ZbSS-g5C(*rehM$l3#Ti*g%z|*4T3nl z(4*uRdZdPX1&t=b$eQkA>7NrkYIs8sT~_6sG6xHG*DOHkARHg#8GneVx3Ecar!AD0 z9B?gU(yG?b@@z*9JV1&^Dd?!Wlto(L`2ixWNwcw`g znt??H_jqeEHaf#;m$mfmA!62RbrX3WM4IuRiIz9)s~!%)HCeci@uJRN#{C|0Fp!u> z{}?#rtQinm?se9rZ*;a@*7rS^E66&yP#ReWgd8lt)LlIgRk@H_^Evz@%%f$hKP_9j_d}|JKV>!%L&58K4&=T?hAHUq6g5}n|4>@r z&yabW(t0uj%&opAZoV1RGt!j327E>=eTOW$Gj_+w%kt-f-OS0Pi5)>{VkaZQzEbrn z8C`DH+Lggtdox(U_9Zu{ypv!^Bhi=#38=zn4s->zx%BT2XmhiL=x7T1+qIsm(W)MZ zsOg26SOg>N_+Isb)}ZF3HjJI*X6ZXw!6eVpkzl6+b^<`vpG;0cT;Mn%U6y@)o0`9N zJs>SRUC{@7SiyrE=%Jtdyy*StT^^PW_S*T)Hi)(X$<~cd86DSiy`XP`JvCFFW%V{c zs zRcC5byu39C0%t~Akfx4V2&d2)jNi8&_)O6=MyUlYOJ}M40g^kl;FYBcE9hL76)fmj zhW`3DO2vgThkwlYD{O2B-ow+yq~cx5*p^@c?j~-7w|MCQraem8!~IoF)J{sNl0>(b z@uz)tctwK*jok8lnkPq<4Q}9{V(@e42ns`uU>u`S2O1{N^skYA!EgrsV!fz2g4$S{ zlntp>b^H*MA%&|+ieF3^SSJfZoY7T_GTplcIX+gO9`F7>_Vb*#Q3kO?Rt8ooW@6@IZ4)WK64R6)_ z+%%o30opwk_^-r&Eu>Od0iaXN9sr??x5b34<9}ibJWreveI<8aA5&nD@!?NF23QMN z;$i%HcOUk^V`FTg9J~a>-&>**7y}20^JNJZfyy;f?il7}-bq8@HI~g}jUSTR8B-vk zT8xM1)3}6X4|mm>NQF*BggSUq{3q29V ztMGw%f*RUU-H+Cn!Wjx|C52ByrZh^;gbopjl|kY(*!)wA&5B^N-x2d~{xE)5j|u-H z#_wiZkW#T-iA=7IN^A1`7?KMwv^1vL=T~4H@xwvt3jCn|vWP4e5+!#(S@UNrn%^6d zfh%a|l(R3}L0UatH-jc*LFU0sfqip#wnKUr<7Lqf$$dH1?o|sWR=~f`t=^Z(xFbA( z9=+g)pEv^}2i*tnQS5}2jWYGHzq&|>&=+$=H-yb1dSZ?-13gi450%`lV9Y^b@9ap$ zBH0s}oPtGU&L*)4iIt)=fjKP^qmY z{j(qeU;*S89+FV4$1UCaIci{`P1LWTs>taAeT6aisX8RoWC@=tT&vVc&%M>*=oT8D z&vxa$McTtp9#JebD=>f*7(gWN!FaQ@MTHG#`?C~%xQ7-7p{dea$iCVV$HaW*VR|9i zS8b{^5z9RXsK>s_T0h93c>|`3to7>*V;$Vrtl+&R=drP0)ABZSBTJv{Vy&NK(1N!< z$!%OZi6&;EamA)aA?g4tTdN4y*!(tYey8$lsS_xndx#!y0d3W^b8}mQ7^{SiPysk~r?~VjP%YybL!_~1ZOrPc!dMoLgC<6?3K|{HIfebLLJ!2LlULi*$W+4W6DGN1Wv^D4!RZ&& z!$36_W1$8smW!*0R+kGQOofcK7kX(K4%a+!wV+OKB1M3;Bu|Z3DJacTIAe-bf*Y+g zkC8Y?C1n3I7CsN}(XUw!y~kXj)EoaE;|kOm2F54j8%y>;U;kjtp3TA9l$blbVw{16 zRmKa%-~@9;pY1f3+(_gq!9w5?*Ctqw7;=u13F<9sT;$8f%0s2XcPsW{z(+Te(Fak} z2e1A@3}0VB(i$;zHwq2NcY;R7lZF7Z9hPuBD3=8azOdj=;f;J@6u^<@E7E+G#-Be- zYTN!B%(mHiiW+H!ZnevpA^>3VeZR2;-X6R+3R1&-*scQpx7$cgENBywq1|R>Rrns! zA`@Ew2sprd3B-X<2$X>O?fWLwZ6c|lFQ(_kp#En()a|0N3H1N6+{7^nss|te*tjtU zb*%+;YHFw(tg1lYtKy-SCPQ6mXSL`-xXOIB*Z2zSlfV&#opi`V@qLk!gkphRgPzq> z5l7e$L>m)ObX!>kRe==&Gq_o8ynGnfo21xuodY+RLkN#fN;#YlQTiS^gb*tHPIP!I zUv#FE|A6@CNd{SCgCxlpV!s^&wX?6-e+qtn4>(j#V&D7`Q7nm4!z>tJ%g49IQEHPQ zZ~~=1UXU#Cv}AA07gY<*;2zGC%kk1)NmiSE7P;SyCn{;oD6rdoi$Dz zjBc}w^p)*GJFlK~Q9L?_MY|HvIn&M>U+vFRR~w#hp{{3j#JBdL`Q%#aIgi@ajoDdgx5417nWhRd*iW7gtHuH_GQEg*8=TE?Ijv*3FI^K;OW z==$CwQ4s5U7I;Kc>{hq{Z&{nRsR=8S)~(GsdH3r8L?#BT&1^Uz;l#d@v?09Rq2+mw z>bZQHJ9OAtokKr9`tgKLI^n$8jP^NP_z$1G*-MwxMPy)j@MbqXWty?GT*+p~4`OoS z>S0prU_{KYJjR`oQg;)Y5$|vppWc?H2ZHO`0Z9I&Artqs7H_Z=p4CC{;7U#hN!Lz99CtVD^y9(Cw z9H*jBaT&Le#KHD}GKTpwyfJEnq>=dnB^>0dJ;FV;36(uh%q-Gx|8Ajx?Ma4RW5I?5 zkE>L*n|)rP{}W(-PNMOBFcrR^P@4;(|2w>yyN%V*uzipmYy;9pz@VD#fmjQK9!BM8 zGov;)%!!b;0QJmj@{+6BR%X#ECf~8T80u;wnxngc=F6uOzklhg0}&F0b^+!CLSD$I zcbh`<7O^o8F$`ajkD0g_t!Ip=XNn*31I%^?uy6*`N?@W)VMzAd$$pXSW$nd&0L2(y z%)~V^H9J<{-f7e>vF1(FuaJm+rS`yE0)MxVF>~D`N8#N;j>Ue2SA7n-$9hH6I;vNf zOLHUqy+A!h;tGK)kIC9{)Q|E0X&=pF2t}{TcLgzVehr=Crq!Mv+KhLq^<^nxIZm2v^9^{8qEr97Hc=0(anC6w%mcfYOic4v4hloVr zt_=02No!9Kg8XU(>S9*hiT^IKK7S=}qow%)Vrl**k!h+M$`!8hR=ABj8K0Vi$2{}# z01Lg`f=mvnejk2$37kmhEvdw;SH}$HH-g{^0zrEMRKAwTtMUiyaAAB-xyomCPR5iF zA+4v8ds9-z?p4NiD(U-}HmfV_V(o!0WJTT*XorA7WItaBYA0go!*H?gG5%PDD)m5T z?ml|zy_f(5S{M%+0k|L$YCCpT7t0TJsZ!xd`B;W8O=>tQs+?WH3TEd>q4)3<#Io1D z|G`Fs6>3FP~OK6Q4}KDX@q}HgOEw263p@-T^4n! zmspgUb85;A1tuVF8Cne@ dRda!~mOHXHGUs2LKm=^3p^%dRUe20!6qen$|m=b{U zA0`T)AJb=bcApSw54x!7=?~I|l-BRD*d9O0Oww!p#23fh)rqFBvActl6m2?Fz-Y;QM~=ayzcC@zOU zR1J=_!zIZNhEAqebpiVh%BK{(w`>?#-XY@mcN^oeyb#W89_r{{SGOw9QFBE@%knF* zz7&e2FB!}BhLwVMt1gJNQ?abLV&4ipYY&D8iK5}ohL+lkfH2VneD4tS2%^8Lf;^zj z7UL}RW7KW}gN*f1MCj9Jno5%zhwfY%9qCDF#{H4LN*E7Ce=cP_bIUlpKSObygyPCQ zR>VIJTy_-w*Y3D2V29aj51`i?7%N1_eH%by9hb~l2$LHUV|CmEi5(YR;kgzRk?JX? z$&$`$>a~o&o2uj9iOns^9e1)m*on@20K$rn+nU&M4btc}hSh1Y%KVm8e+$2}AE zbsOSok8#*9`tAX zcg?5zg+W&u=cFt?8^EbHJJfKn3V?$R%I`}R^^|-^r?Uc$PB|$_>^*M zy(hnVD2r@|spnz^JyoBDtI#o3y*8p094DXIcC1}(Lo5?Kt z25J<^+l!eqd{zC9>U;qz7gfWPTwD%cT1RiJWoVR#T7i;?LlEY<8x>G-#Fs&2p?_CZ zELmU1Cue2Q7DP@>A$a$)Em!D5{ktSM1Khx;vau^fU=dev)5Y9!!N%UTQ>2>enS%675u^|I-|espm%xMi0kJMRZxQw**;l6J zSPn&;f03n#i?AlhG4Fg+Osa%Ii8cJXEKu}D)VZe%{YHa8OB#Ul{L8N`CGo_W`` zPDc?~iAdimdHN(LyyFvOZA$GX1S5kt{ZwtXix&1>c%c$}tdkeJWrW>g-5BK`pNl3)Bo=!~CS=~C&CVI!0(eDQv2Oy#qXpO$kog&MDq23~gnow zWh6{M{Xf>DB#BH@7jC!#Ezo!YBnk7>l#@)f)ShGtzJ*WUV`pwgy|$Qa~nx^R&rKO+*s*vEQd3tQ7Fo-}x^5su(*ti?<$^TRoW0=(85 zgHs#cZLP5mWw6+!XbxGcg(tf2oX7#>0q?mg_U>=1Gn)c(z zM?aoWFHQTKk;74n|M1z(esC^)dUFpw4Q^gfm&|5*r|RRN9G%h8rKB|XEqic*lu=W} zbjqAs|DuS7n9%A9hjd>*RGIr0sa}Pblrui~0D`3aB>c3z7AdVLq6L_MbG#4JmGQE3 zkuQT*N@V8>A6Prn=MOq*2PSj^3p%k4Qz7l3Vt!Mq6tuzEYf~V`URuRL<=d5fREAWj zJW5Bugp4y(17my(Ry4LyYMu(x!kf|>%vXK1=z+Q^odujV4%vA}hU{GF3OZ-GgU$fp z1+YG1LBef*4b_hy4gWll7p*st7t9Z`pj3h%Ey!TjDh1b9NcU!n0iTEzRfAO%iKF-X z>Off<0rm|sIow6hYqk;>Qw##4KgZA4un|@GI}U-Gn1|MpXwp0s6BC(cqAm7Jw3cbs zoEuFrS#%uRsG4Z%_~@P_$H142qzHbmdr%?yy(nBpcp)4?eK91QHf+KB!FL%IlL;g_ zKLQjik?i~+2AH-1#q6uxczzVF!akr^<&*fhUTTJfW?;b1My&~+m|Ly3U~fkyp9P8! zHHvm5wOEeJMYW*$K|iR1fZ#}Jr5L)ut$L7V#kGWi>C0HunN-h-5)1Q{7Ul|{MfL=t zx^hy2E8}knd!(VP5jmriY>J7ATIEUoQ(xpe$fBL};`42z{7gnh`3bSg^&?gLDdMeu ziny(xV$1PQp;>;KgMV!B_$gD`w?mk)S*yy6f5`P+__s|y#QT@Z{2jYj&VMdu@(n~= zn}Yl!HGgr1bl?4g0e-X|_75N27446++R+_(pxxP@2X;D3GI(H*6V@>g>}Sprm@k3% zaP`3Mf<+Yk1icAA8XkDyILj}|K>~g>{PU^k76_+94j8_8-~kCa80BEd!Ia2WwO}DS zM=f=ZXur4?`p2Auv||pkAOFYk-(SJ>LE-PflkOK19nF6k@+-msuQ{&rmHUhMEjx?& z9qr`%8Qp{lp+}BvlL0He7omHA-lG(3$3(pcC^KZLc{>LC-D@zkI)7Zmr)C7wUoFz6 zTId&{BdC0iJD9#-)#k)ep#*ASJ5<4TAcO_cWrRO|H2m`*(49)?;zygx5V2Z4MCLn4 z-EU#XKM$vopQZ!>ur1XRO-@QY%JCkg_{k?x;s=Ako#2_I8=f8TLv(|18Ne9$D0T-FY%dk>p`DxO7o@c`lC|z?>|j31w<&9jU3{0ac1pIQEv^;MZt)BK__sP#CmuZF7lZKM zsJDm*ulV&NiL@OGW8__ok#{jh-o=%Co4mG|NzbMq>-0J0#`{RK@$|ihcz7HS6j`O1 zA!?{%gQ((f8_gG9yr4l1FIvnLH(4DSn4v&?Iuz}J4tlG<)QO7--{=pY?G!hbji)}=no3Vhb z&&Vm#C#C~LGs+nuszey~h#I}m3#fF>v95mWT8b;EP)?89eK<%$Dj_54 z!S%SoGf4z8?7;C3RCnAPAtZWM#4IY_h!*IN^-vjVm7k2*XMl99J|Z-ARA-SsX#%t) z<#;F|2OS(k8ozQgQH#16MqMjp5>133zZ7L9bDti@Q$K3SJqBk_f2KWmGYW@Z#_nrJ znyNo11v4175FidjtIYN{R_5U!nlGpBPGjT1YZb2FK20Dm;>W{uAiVc>0aX+Zr)1 zRQMYVv9Q2$k2!VM18eCfn^I8>j6sEKjibfFkJ>m8Yzpui$IEjZ{p;k`Pt)YOkFnIZ za;>9!X59*3siQhbGwKSoaxKj%Dg)B9yUC&hG1~|iKe-d~1T5s6X@UwoCm%JdUEoRK(0q+*!G!QtV=H1B_yOu6rn~SA7&Z#e@KG#7 z8MbApylFis9dkXYVs}Q6raaUAbO1;hqB&JPh$hgce|^Z$;j*Ip9BO|Ba-p^Gn&M$5 zu3m+|5@{l>%@2sCHa6m(804q?i1%%$HkV_uMd$)*+w#%kmFVtJ4nr|;O7$P1n3 zN|3n6rV`i9hpQcw;9obqRhxmxB^+QJcqmq$fMD*=d=I{VF{mL^B;VqwsX} z?k3SG%ur&y-ALYLvwQ4}G?6lAYgVqK>@|a=>_8KOUjysIxvEyvtZ<#!g*tjDusGYU zW0qM5{Bn4;o+Mb*gFe5W>MrutnyRY~iVUi&T!cL0iaOC4G5y{}S_}GJ=&yiCh5AC0 zadDxkzy2hsaK-b9>T89s!cqMb^o?>y^(6$5>4A-66eYg_DnxKCDKgB=Oht8`i~2u0 z!8~*UEIIF>O;Yf%trM6*5N~`w4T8u*aW&WcpqjUm3Z$CT5UId}F6v(1?}(gRsef2u z7Yjt^3T#lJwmFDJ+R&hQDpMt`C;D=z!X2s>Y)aUiW~;weQ~jawU?&(ynr~eos`)Tf zOoty7dXL5<7?{D0ktQh#$VcHLQEs=w=r4!btP%Px8t>6d-pD}UTA99d&Ru~Zi4Hs zL<-i?es`_I@i+YU`J-cS#Gje|D)xH4Jv+MpumZyS7r-K4NfWNkLLm9b z)-XK$ki)tUAWan3jDclb-3z|;)UN7LaJ=lK0UdP-7q*{8B_#gFp4~bYzhxLLbsHCgVk@C67zxCd`1H>ZUSh1 zy=cA6U9E@Ga)VeT8-ZUfSSE9SPHR_YZtG|o?sHqU040sf4Ok<70J^8%*9F&N#>67!;ME zg2<$wNI&E0XEcm^&_j$O5Ijd*Bv-ar0@0^+VYtb|E4mvlmOAKepjh4z=Dot($=jYW zv?o%`dQ_=(!WlB(Zm)5`NpO1});J*CVvQqt^B3#~k{*a&bbn|n`NPajv-*N<8B73I zNh-aNO0wc-`QiohJmNVQJ1R*&f9b0O7I7jfWV2qRl1TcQ{*#+A&7dBT7h?v=Dq5F~ z|GvUW5@`wNlei`3cLD?n=Z~U3S{g|HVT&dlESBq5sM2oQr_J=|OzC{u><~DG0|L4` zl6A!;F#){}_Ylx2@dCQv_z1d32UQKlH@TV{>}`(%Nk%! zwqQt$VfzcQzx($>E#l83g~PQ3&4(#fv5RbO zEcRj{m=?Q4JQ;ipNEm?xcok@UD(aXM!2y`~94-L4#WI~(-7PYgcOkwI1VjWx2V`Nr zm;-VN$ZSUh+>ZOW0a>L9{y&U=UTF!IJs|s#P0_~rXqnE71s)8{--Uu@u)5*~XKfZ7 zBjbFuI+SWm^*}xS569Fu5cnWt9hpYbV*0t9el9e})XiRWTpCjq8r8*J_(z-lxW!Sy zUEz_NX;2ln!#C&Hw*xk3Tek|Au+K~ktY?UUbrM3R`^iKI73Lcz68kaXB%7`SC1B2- zGPp~OukhOU^=Tc#EPWl7r6r_pOd6Y;z#bY$=R|OAFY&^TgYT`x-2ByEQfWSmP)X~y z1?8>V1F>5->akKu_glB+v0EDVC{;md2%Ls;=tbecT;Y9*T!;vGg70HL;y8>Mm<2KY zI{3J8z*IP#FTY3`RPByC1N@({{kRJMr&VAS6$rIi1;mkV2)DiC)}a1O5A-6Ym#c&N zi>0VV)mAQ(Uw~H`cegx|`<9&dE24%XVXaD=|0Mq7mci0-pjnf`FUJ{KQavIm9PD}I z6>Hz*j~8=@fW7kc37l+V^$Am77?Qh??Wf?_$<(?wvY8PCE z`&H+ySf#$>J=F=54h9@N4xixc4=fNNz7_TypLLveUgpnwWu`m%ndlR`-5kt`fJP<>%o-Uc2N^vQ2j>s=^R_A9F zIalPnROik4Zq>OcA8jkj$I6w}Fx<2JnfcTv`qk(M8S%)osFjoT21yGnQy}57YEie)d>k9yiCbm3zHSi*F z9?1Wb^}yYTVxjdw=dBrh)*j~^kZ?5^8~}r94K#7}4^uyL0T7FySO5j@!Npe9Tmv+h zJTdoPR^+^`x5#R|D;uo9k9JqKnoqG@CHT=OV4~($ z7TS*L>DpQf<+zN6?zj`Ktk*$9UXlT=JA~XuXq!83jS;Fo?u{q*#?MP;#=R+zy{Y9T zWpQsRqHoqVf$x0n@9~TGZWG$tjU){AqUKssWL&Jj#ARtt$kHXUe1+e*Eb!;W)#AYu zU)!6Q#g&i+(>P>7q)B`&r3qOoL>6XdIn!!xnVE%YYwK_q9>m(k4M34chqOn6!<1G| z%|9`#runCJ6myU^@ndj4VaFH4=!d#5!5q9FF5n@i`ba~d&r~oPQj^}Q(5q;qyMi3{ z8i!QB7og3k(<;Ph>@mijf#&_0hUOd*go>F}9@bpnNfkz$eLh4VurQx4DN}hrMIY=? z$ClKp=`9SSO~KS!XqXnXh#FFXD|VzDtIlV9Z5`o_Sb0pc8gYv_GgZ%U1raf?j_p*( z?p4$G;UE!|K8%G~DvhwHVsrpH8Ya3B|6g9}dDi|3KlvsY1~WRyS&7B20^nFcNeFPo zDGtSMI+v+$VC!trz>SPQ=7z>c4mzp^D?n!DiZ;cKA{0pvp%IbtiiTY$Cd??mPU#QH zF;~2e$Nx$pAPI*~9)nX^tS)135A7j(@gBe+$0K$h-;CYI*p*YO@CDfagFX4TVW3Ay z7q#WO=)RxW-eUx|XxN0AYeEs>EzsK04PM*=g@wwEnDd!OA)*Xm;3&k4Hzc*~TDxsl zor+g_1s&pHEyyqy zMuEKmw>SZtc?w{EwQ2x*ay+n^$-vg61csR4Kiim1wSavhQj#&dCI+lJ9@r;>A_*KG zo&p#hv|w-(8Xao5(E?X{3UHklnA8Do=f;DpO$PS|E2~XxVj94Cj1e(#vITCyDZt$j z1GgR1Yr86AKr**F{zq}F( zNvH^G)1L7GSc$rgoo2^MqRa)crnX=Ly$RS;SRd5bZlhhGnLwSdye4Mx`G_IL?a3Xt z!^(?@*HcPSk!W6$lEg662$w7Tq`PtIjmsEviq_v^fk0O~Omlc~M1x66U#-zUx&7nq zHVMt;t0j6sl`Y6K{w%tSkfuHVWwQ4%vj-*7>@!TO#qmvg)(V=RT6GzZ{Whs5ZMCx6 zd2D!on(T}CBQS!OvjjDtd7AO9uM!LWOy@A0goB4h@K_z`)s`}PYuajJI$^E zTuYFo#~~@E6i!Vp_4autNr>0+rD)(UCxf7Z2I$z1LkfoMEk_xIMR{dUj#`V);x{jW&!NINJ>kxZI=9iNGfJ0Cm z*lU3ew(%9S)yN`?ZZX=Z@JGoA0|w1#a))hrC1mOZpe_P5`!kx+VS&<^fUZfh;k6AO zlJmz#P(|3(PG%J;A>vXg#-1`H&x1_~vx_HJmq3$y7` z7W&RB-FpwbFXp>WsF&14xG=s#pkF-NM*r1cr9l7q*~#b=Gw%d|Bm%!;Wq#=%!OZcs zFqp*}J(OR4~54`WWE;#ib5=xLoW$er*uCB z#mW3D;jhBV_+02;l~2G4q(sUBv?H}>{p?JOo`fhxszEDQz5McDq@e!|@%iI0J(x=F z$6J}BD)y8d`!mVF_o8beQUx%n5$S-Bg4DUKT#b=7#}+@H0*}Yzvs-uwr~mzzlMC56 zYnM1kMNn^7DlV2;6`Z1<93&<~MM6D#q2cUBG9cwt+!>-06)CHS?->7Kv~b6KvK(x zBP5H2U?C;KA(Bwf&*JMTBJ0G=JU}RxKACT}GTZ#Dq{xv{Dg_lw$I;RGe1Mg0yh)tL zZk&HLWd0VtDK&zd*^QOZ-1hCkn+ReoB-=D;`ZD@lV8Ory4B)BU5$ryRFPNr)%lhnNp0c z4wOtXkdBaCd~fen)@-LJeuaMppM0Y^bBe9EKve&9TD-pE=(4GiK6F|XY3!g%&{y|8 zk^<|e;`3Wri+;Y_C~ii6Va33iExKtntQebX2U3ycCaboW#LO4^JCSQ2f~j`-b*ai< zV7Dfz=%3<>&QDd;7-k`!RCF}|Gl$~o5S=W(9e@;AnG?X7scAtTaO<-hgXX5vG@jSYY!l0wjV|xq$w3vlQ9DlE4!Ehi9Hlr3nU9sqO>;b#W5MUA~XhKF)W_2UNmw4`=(27uZAbk3TX1}onWeSX+k^I6eae2p*ab3Rv8 zFR_1O@x@+E)n2EjVnaY|U-k#sk!_xQW6=kpal(l|i$%}J_-(gEq(Bd7Bo602f#pB* z_?pA`yi6BbMY|*hV3!2GA3#G2W{VgJ#B7lq`r-(i5;0q}HZ36OfK>krlr)|COO_!( z+2IKge6sKUMKE6h({}KSjTyO~L?EXkR?J>H(rJ0L;ip^!8U|@Vj zyb{OIbpJ}+i}`S;m=A|GwIB&o@W25ag&~XMcf=txa%tY<>*!6w@jHLQ(hSx$u=3FN zkQrKSh#oX!o`gY3)r;2%~1_Z zPP%kJXOd!`OzQ&Ym=KbDPfIK?Fyg&f z2J^R|%L8?uvFRboD;z@aK0vp-jX#Q{WC!|pG$R6T0NN(p7MA<; zj}In+d(Fz)2iyXep~T=Vw%}cU3V091;4O)VcX=|rn@$1GZ5;f06u<9u6Tj^uDH*@> zV(`w1hqqm{Gr!p_rJL1q{|x(1tt;rS@Y{FojF_C#dt zgLL83A4)rQSVwajJuZUOxh~pqh}Fnpk?Ed<@95ZV z5PM?&jIl->$3`QDSc>Edg8g>jWEV4#91$h}PXu`2oIQAghWwojhpDBBl?iKyPtKq?haVJ;Gj6jVKtu@6`LSr6Gh)#=gG4lr zEIz^tcvt~HNHIBx#L4JKkvW6U=st=X@XD`Z=^O{h;NWo@a8jI*=tV{s{&7O0pDw2h zh&UlJhn_M8Brz%+KhUE9fV)S=Q6xZG;X90Z&qC|ohm1IdKb{a7PhtIjGS1JQDz@tV zpT}CE^BQf8Rl=BJk$`XxNg$SS5lx0xgDXv4XkMi005!6`gpi`fy4jkxO2`3)w8F`F zb9yYqs}cA3FwKlgI-zSZ&Zed#u+{X56^OS8a@G^n{XMjQzTiaFaD+-jy9~w$6%J)8 z={p$G@Y#@kHT%Oqfhl?+rc%)UOzY2LhwP7avE$wNyaGP`Xn$S-wG7t!%UUVE3yH>j zl19a7OIyKog&61@SzyDf=z}LxF@+~ z?4yBaoVFP%Fx!fJmAD-?`GD~uG##HzM?3Mo)iPm!2_5ix0Y1h9PUlk35)tEw6?i(f z)1mubz)|^irQu=Fedr2h2u8xkTl%3G24`&Ls@{Va2vLE#wrneHWrvTLX0Bl2Gj{Bt zp7}AR6l7oJk;zyp0uZf`Y6{gx2yC{(U!%bi8v{&wn2o?eBeday@%v43!R&n=CW;l3 zaXmi1CBDK=HMnU>z%_$*uUCi&3>clD=uMdFKxZPf3pc#bhv1R{1%+^vPQo*G3?oVr z+wgHf22LDkl^Vt)Rppc2a%huq=BymcCk^L&TMzf=t*u7CWBahLtL}a0vCd(>%eT}YQ9YZ5R=gEX9CzQ*CqlFeA=pcNWr6Y8Q&N49%s}bLLuu1@b`pS(y z7xUF7wuY?hT(*Ncd?ggWjNr; zpS>NsY}@@sWJe>3MY4|4RweEFGDZJy5@+0&i%-m7Um?GY=L{rNVskGp`2S5EWx*;4 zUo{*%@LMNRpwdDcH4k3d6_6aLifN`?g^6 zFg30Y`Gfp&d_kO7x~WGkq@OwTgKv=`?2a`v$d`+%efaLmsk8tyk8TA67BF|-;&*l z*qHo9SG#N6!UAC0;H%LMuXcye##HNSSgLZZb<cB z8w@Ce!mC(tU7OiW&HH%uXYM~DTfr}8mvh~cJKa*6?#Xnz0&U>cGjEYdK{yGRACFf< z5#nPYUdBV~sWoB>%s1dxOoH{vWyWiyA@$7qA$HCgWI#k_xSD7_jX?~GNzB8^unOTD zb}Z6`mI?b_*e>Q*%JfWe&JIAI;;VmC^9+g@1E{kEsQ$;=oYg}%ZxqeiV>E83=3x$> zasVy;vab`3Q=%`n{JukIo31g~O$kdG8PuBG%Tbd;-kN8acJN%bjiV-GBF zhzF)%qIpw1rc1>NQOirl-sGPr?wiX9?K_AMWl8t_g-Ah)+&r92pWtVEKZE(gq~a5- zVE?kSa6lm0<;cM_l1=QQBLE9vYkWteLk{geLk75n2Vb)p+JH2roA_?vD43%xe+g_( z986O@(M|h~5JWh`6-;koe3$Xghs3gU`tY!gC>@qwD>^9pI4=ci|3mgc zpV6*P(kif0K^_V{74rGCzz?Er$>#|0FU$%K0>6W-;5EYU0P&B6UmRf+RT?-Vl=vqi zIdS$p)-kZ&j!lok4c7-tnzijlm560Uw*wOq60K(_Koe)=>@vo`PfSE_oEj6<>(NR9 z^iCnDkRGZe2AyOy?vaeRCJUE1#|*K~3b{31Gx!){1*wV47&HQ%uE!@FVEhv5WEkT5 zlTzJ7o$HYK76IyZv-!KwQjcHYMF*}IW>_WoGyq5-u zM8{D=`_QSnq3;inLrhCk`6PD$aV9~2sZ2-i6^q}?#qWhUVt}@7#tem*qK3kSrWH^b zwE`-mRzPLc3aDJKq;ID!4+(|9 zYxDx=DAy88>5FQ$;mk=|(d9VRTdu_`hte+c)9s{)dO28cALah*uZXso8}eLAglU8C z(?UR?zaUAEcA*3u-H}HH>Dwn(QWf;28tbS=J|oWUL@eiH85?~zv74= z$Gf06lro-q2quE%<@PI~S{HDFM1U8cOAYhEF`46Z2xrYG1$HP}U>+h-2VIew3{~?yeoN0| z6MP_dADOC^SjWKnhBn+sHYa-AK|1BJ0v`eM(Iga_=yM4lNk)$_aO^53CD?&-CNAX0 zpX8Psg)wot>DHf?hv_vm5WSaObc`I1LgVrXT(Gz)`_=quUTiVKVUo`7|3Vx2qzv;I z?WF^Sb=*x~e$@v1%uqAcmqF7&KQ#pho*W!3YF#Kxs}v7>c~mJXps7O+{rKp|Lz4)c z&DjWZKL-@R*_;ehI-Jc(hic($PC9%GQ)XJ;!(6~To|sbLM$iuiRIn`wF&82esz7X1tg6ueh6 zRMtz=!f4I@FpBK6f+tpc55zUHC7e!=CvnsQJU{&Y z?X+aiG+0K{aQNWirI}z}co+_4=|^9*D>y7mCGEsRex^7p3aT2Qp^9)K?wJbT$J009 zOUOlek3No8+KC&|=me)>P_^Gs8eY+?C-H?yF_+*HU$mGd znv+V16!RRk#1iX~_4xsmUw@9oritlGd+CG^{lQM88Y_G8UHG<0je(=)<)O zrrgGr&r`_xxO za_68EV#u8%6uh743}Vw)Qmt90*F4iA)qDZ{KV}380~TN0HqE+%6HCuVfF%Z^<7}@X zj%6*z*ZF#3vh;*qI1RP>7J60idG-9L%?g_irZqlom}Ju>nykPN_ zII&Bs%7F*=oE;b|!Pxp_YjiGmJD)=-DdoEdpc5Q7DTs9A*IycE-{wE~pH9{OzyO;`j(u96E~g z>hN(od<_{h4yC+cTh&(pbO*42GTcR=3fnX2!xU7H7k(YowF91{S9)LwXhpApj+xKG z&4hEH$#Z}mO@0p!f)=C+Y87xERoY~cIV+Rbl*bW<6ih9s1JcMEUTXMaD{nbx2MXnw z^pOX!L;{)Pm)~SN+*Gm`am@;SM7O2-HsRVfnVmS_wfGJ9x!^bHsUuia1ixFr?-q;S z<1p%3EQi3jO@8w&h?13t6~a4M=moFxWRp!ni%rC&QsNb2hy#8_!{P+4Dbpk zS$pBIb0@JX%Bi11THtOXP6-YXyGrr#MZuTE_HdUr=^JSneDHptnttzcMMBr7*eFEby86OL)n4{cOwtjd^wMO0OTss!(# zS*R98(jDqBV}*>QkLf8z`^WYbVG@AVPA|{ zVo2GqQA%kJlJ3et(me;hl*&5swA>w##!T#xvbT$}?k@v4b8Q0BCO6|}#s>Ucw+=ry zH5N%@7Gd8TeN@0)+s{NjQrWkJp)b}dqP$dgoVe^IxE?8cKjnAh zp$fRV?;2;;x|>p2P84$~`&~+To9c}5W!$

@DWvH398y^kFHSQLVPK*fS=7oPBS1hFN`NU>DyR-y^jnI>0W9C>`7WLtx)yMOpHe4!rEyaMBIwk{7k+DpX>4D zBFyz>SXSv5Nl)Tf2|AIM4@C?8bdTk`A|I1^$#7Z(C8sqGY@xI=GICfEhm&K4uQcxa zH}5IZlMCER`gxcxVQCGYixZ)uuy6Qb`abRcAU;tiJxRW?-7NhzqjWb~iZ5NI|C7N6 zt9h4(X?*pLN|teI1;N2-`)YcZf(&H%m5NheYaXKT#X2;JsNRSx10{%*Hbp=H*n$?` z41^;pV$j8xVP-jM@FC!m!Q!-Ba6@<}FeF>&+t4>-;N#lXO`&$w0>Q3zc)%C|XQj1r z%Jh0)2NK1g4eJ7X!0LT}r6QnEHmm~V?oU;>o2S3w4PL$AgMh*8sQ1y_1&>?J3ys2* zlV(n6C~}%dxJbk97pwfhoEEt2@Cr>6=e=WLn}m;?An$`Y;?Ng*MmRbyDdIW(Vy-|z zX={#bBp5vNL`zhV2|<zE(}3zs1k8M`A{Qx2J8)Pc~LaX5zzkNAuXx};S9 zCgnkc1rl)nfM8`_!gW1f;2Tm*zsH3cnh@!Js*Z32bi!iz`$S?M`Erml6LLkOXZn3e znIICKDg*90L`WzM7+Trl)0wCkaV5l4v$Q$!1+&EIyx3jO@Tmr>!w;5I4e%9)G|1(7N`}#4*xig61n?;2a4MSi&cY$g>lf0 z*;tbdHdJD`PD~*_{|t;*^^JhSOVi|?2n5;Fjmf=p_Bq#$Gu1?6CIlOmxReJMfDdJPWug>VNF zC#5<2YWrjL>__{;9-21rSMc4zP?wVp>Y&uUUr1&97D_+Pnz7PqLDe~5NOQBkT0xIl zI@P4$IAo*14{zHl%6UF=nwj>SnQEh%&Y(wEW0B zjSsFO8iGGGK7l)5{t?e>w$?cuj@WF-?0-4=!|?y>H+P78e>i zP!`KwbiP#{y%UVAd72WjXk`WgKGUVv&uvOeTRO2|P1J|DB@q!a3T+4Abe zYfe6c%@)gws`L4li__fj3gVkcL#t1}3PYTurUv8iGl--Xfzi0%LH9qy8{9ua_YLNK zEAGQ9)|{L;4HXPqbMn4A6h`DzW+T102{%vB&9%7cM>o?57+Qd^EUX6Q($8r6Ig^%x z1|XOB3*;J$n~{`#lwIyD+;Z86^rSxGs2=TXi_8i6hgope>@!__bg zE+Ei72-~BTtvN}{0#zeeXv;-#p7*k`tt`~ii-7TwOZ!K%yziiE8B_j11!ge;?-A1G zec<8Ekog3!@!y2E@oj?l?(YRWhy(B&odO;S%2fo<^KZiQ3wVnKyv)!Rh$}CHIvA2e zl|O%7B$B%?{~-o~Nso~G;5JJBy_H-VP5vz<>qzFDLeXdeU?>&t)bOL$83FJX*sz`5p+v@reL zF1&4sC{oe8u#d3yp;8*w09i(zLib_B3RaSuhTShUzCrcFccKqjeheU9zm{ZVRwdJg zJ~o~vBfSrU@p8z`l=%sf`4Q;rB!M!uc}%9xN+DCyS~@P)`1ZHdf?3#TV}g`ZfW*ro z`2=$OzYCJIk?|h_mNx zt{Vt5gzFv1PvcE!y=e^)-(U@R6n>94$d|y(`CxuqBG?;ZK?V?4F2g^)xV>0*%Y*I{u|ls`6kDVvJB3|fJj`a<_$5C?4kuDby z7*p8+gW{TJ?4hg$#sif1VoJdI*hUSu^#iSyh+x7Z(Vf_VEItHAi%(?BfrNv)X*ESh z3o)Ta*fW{mWO{i7HU2kg?*boHasK}Y!a@Y%1~rOR>RM4^sT#!#G@`qb)f3&-sG#ve zO)DZ+loS%6Dm9R7VLfh5TdCA~Nv#*O+R~~uVAVj7#4DgyQBjAXRYU-^&x+AAnnRzN+9Hf@yH%E0#{nx+&FW7B|7@4`a$CNwfnPK1iBJa z521$BS}^yw@)g2$QgRKd3Gaj z14_BY&zkID)Z+2ImCH&_#YvuKP}$-vB?+zF7jP$VbpGuCq9sS&teg&cu)LqysvWt7 zPxcyS;(R|!{TH||qQg$)(Ic-*AWtwW&epQ?HZlQOTav14pze!HwZJOD>jS{zt2It; zp<>l}y>`xcNbGU4!)}&PLd(>!C#%G}m}9ZxiC+#CaJ4r=EuSmiS5*J-1k-ECOe{j1 zXD{of{Ld=5?kwWUaK?MIHzXr}f4cvHiD;srg??4BtZ7;%JM04jYeJ2*OpBQL9vS3$ zejK*QbIQIHP@dJ5Na)p0XJ$43gZRx znQCg3Eno=+{Eni67J3R;WNL>gi>|C7x@@E`v61&h69xSrE@;{@(YNH{79VNjNa)VM+1bd0CM(6Oj3@J| z3G2{kVX&0Z@;gH2NQ3*$P7a z!={7j$aM_Nm;=bSv{Fnra)|QLC%G=6o0L0>5>4BYyi2bp?ddt2opA(ZFGZ04R6i!o z`KS!-Ak@%pvhZZ-H)Ww$^wZhSKkOhAOYup1kk?|mYlV&2TpvLmibv|3$x%7)$B>Gd zwJH}e`te`bNkTzUQPKa>BsmOigsw%1+)>Q)6Bz?ChgkD2RXRi;EM0i!_UF* zgP>3k3bW!Y-xTp0DuZ5R!=X1bQp%B}7K~Y<;B2Og-_DHQ%cxm&#*w?H_2D@rBMY(% zGVT1bWkVa4VRUpR^`Y}ISlY;W#U&y-*&pJ)r9d$y7nx3%yh(G4&Sa}1#j5G;mD$Vg zrI?wvo_zmY@3s@?B2)E2^hoECwl`F5%%gZusc^ir!{205@3Dm0_`}i7MxW;t4>NI9 zm3aGd@>*ndIc-XMr8W&{<3dJDu5gxLgW5ZL*?97FerM9LS!_sAyC)iW@kv3b2_7Vp za(7R;Z0k!pj$69&A!Yh0)L4rt8KlM?jJ@q81oZZW!CB3NbR#hursz#`vKYEE-B?*k z(*-T{=OX(b2bXlOEi}qzwQX2A1MoqoYJ5`JdkdwO?oFE4ps6!tHR_3c>B-VZW+O8w zgV~dk&8?wfQrSCRFpv9Q zxufZQMnO$Shoy2M!c!a~)YLJT+~$*T#nY6sjTd1$5L~0oFN39&mn;i!3Q&p$j0~^3fsYFz}aQehjlyvf> z5099v29jv~(zT2Ve~_*<-0S>zuEqfQHy@1*?Y1@Xzhk1-7$_#eCW4gPQY%|DrHD@7LQ^ z^2krg9a(87HWaJ$sV?4V_NRID=f5*UENs>ki?{<}R@pq!hUw;u0G=E>Gn&7kmLR~# z{Q3d5@k*Q0qq`^}k9GFp*~d2f(4q5D?US>a+Y0GinU(yKr5AV*Lc8wx+Ge~o2;f#? zA2A+@M|_f8BU~=iPKv<0^yNm**TPmd(@HvIaS4xh1B;xw+Q1fDk9Hnrw_7eU@Ok4Q z64M?mvhymB&df%BCFpf#`jKjxN#(&JUOO{7GoP(BiJ2S03Fzudw5{q8KcW0)Z-y&7GjNutEz6|QluE!;}P)+Mgxfks!OhXwA?gv_}>|t43b`K;eq8?M#*9dF}YV*TdYaP8Kw!^XMB`W@((&-xu>52loN?>dVdJc}ei56OT76lSM=%0ZqN_$6oYRPuw}gMg z^1EsC%Iutw=i`qAI0vSmEZ4Y!Hu$LLUQ!>_dKTxL>G)=dG)p9jrQ#yJ+4ymP@!9xT z*NS(?4K|ci4kfLS-wu?t#GqNREB)jn!B`P0|4Oc>{@-&=sn+lhG0WbDa&NPp+#%09 z4?Wl1=jS`x8uWa2T9c%DK5@xv3ww9u8Fj4ezOLzOL znKvLqPQ?l1T5J6tb(P{Y({dtU@1!h^lrAyBivP&Nd-_d{3m4Tg`p%|N$Ux-R^3Eow zbSCRn&z(to`-NLvXTmWHPqMv`sTSf6ox6@Umw>_4mp2#UduOJFw?W43dfo;X6yvstw_SPf%-qCV)VQ_sR#Gqo zx7&H!jrY#XV%~Pg?a@6mhiSG@12Ek$+K~;o!c~^bl;1u+l@c z4%psA3+8rJnIT;0OiN?X8I!&P|DpF_>T(H%mThTGuQKLDAlYtYapkxI!rVWYo-z3kY4fmoAoggT;y1i$sTnAznzgI z`4wjZ^FMd{4TzK%=`y}g@;ip8IwSw&O~mkjt$y{6Zz3G+9mySXB1?F7zbCh~)UcT- zRrpDdSk4w9BkxiaBjm12}#=Sk=tQJ~a#Gb`CM>SEjh?Ppak zU6@!V1*GP|%$Jhx%Ea7H8*xZ-fy?C1M7|)Oa97U#Oir9hSg|1SW#xjzc23mx%dcRq zj3$|mCTBUJ%=^Qp;$cxs5MCTu6ptGFn8E|$D!D{*&1^n=5l|=ux@sN}lE8`y$uE4H z#GBDcWE6)4MSxR{qX}BitKZ;8?1%c|I3fCIRt3p?Z!uKi_y0Zh9`yfR^r4Q$HD+JJ zGwmh~>>#RHdNrF!7;;rs{W%x0PP$7m(RLR$+irF=gE;OF76dVBlP%$u8t>e6yJaN5wZ&uNZnOjbY>WK6rt#SFKhSRqc#MHi zr5fo7U-~N(ckx3!yf@byUean?wv9)lUfswg0%bFc`C@qBR}I0C!HdsJW|?TjOImRZ zc?kq{BvfQOKqhVos+`{iDA8O)M%hdm-*zUTEB-_-$MQ(KU!-yemJ{tM?%)wj7XNdH zDuL!SwZeSSap{U2bvL_*W><3IGIqM$;>RtHoG4;ScrOn5mKL&Qtvlw2PM03d$C-#C zZ3<+r$i&>2#P4JrC8WB0wOjm>>gJ%A#52>LPqX1-NePb17qjga(J#OJ{gkV5bKG1z!?~8PR%X2(rYz`E?u>N8Zw-#`nPsTtNC@}H7?(`kUxcxLwv{wYzecF0T$92LI(PfL(LRN z32j_s5}Fu7-u;ada!Z@+LYXMnTm7U+^pHB^RQl^M@Le`=EDU^)37jkaZwP6&kT2&4 z1)1+d&U-b;<&Q1ol@Kz?hinTW$63fjAtd2L?g*=69}BrYgnZYBoDo*)HjX7wsXq%L zpR)@@>x3IZ$iFP))DW`HhwS@Cklnvq$jA`#AdnVfIrz;0a-D?~g^=I)v8)OqQ!V7} zUk3Fu&4--%P7q6#g{%l6DIc;XgdAicw}y~|{k;6=-5{1i3%M$U^!H=={-yxZ{j8~% zb3({l^jp=-T_NNV3pqN3v;$G0SDF(JqNE!wWcLtqvmZ+zMsQ1yvn*swCMfh3ek{lR zSCE_`wlgf~DFd=jXZoXs{!shgXMf`kys%;iN>@{o^ zQ<}4S!Ct@4may+e!BoOF3p(6@wsA97PjKhrH_b8}D$4SqsZ zAr+oxAzdNl48^j;pA)QC&n{uF)#Am{xy^mAnjw-kY7h1DQLFx_Df4Xh`EzLDoX8)} zLfDHQ9Pi@CY2&AQF+Vkn_^H*|kj1kZRCq3#VxMg+(C58lZj-LMCXyz!J8T?LI=Qjs z2j%l9P^U6d9j~?3IxRZZGQzVD_ngRXKviEc$8Fvqr6HN=imrO%4gX1Q_%4f_3l3+q zLQ@+ZQiRrImYfbwH}X35Y`rS(vPff%ac;%=BIBHF!Sx;kX2A;Q%MAkcH12Qu?$rt& z_kQ~{qM$j*@kz97Id9$`w12d$n-bJ($cV0L-<6@KTyP4(k_VBzHo+Ex*oNUDD zNhMwOLiFs?m{MEyY9BmWS#ZKaDZk@~&*t}{7Jeo!BJQgccW2Vf0ni}p%NsymC_VEQ zevtz~+8RJ@8QGQ!jeS%pf6ft@9J>R=Qyd2 zdLNl~m)6z15_8-Ti_Wzd7-`qCI)EsOk!C=}fY zup^X`5_nS~M?}lkDlk54`zVN9+sEi_d!-J4ms6MJsy!+;HGFjR?BYKv{Z$*sM2Ex_ z!x&(b*lG;!Sm6|#+*q2$>3k8X3ChWg;#Fs=6PR;nG=id!87Ya@J5paM%Jdu<3b6(F z*<_m%(Cm??DJdaq36w4&zVYnAj}Dn#j&}^ouVZ)G7HOhyN|$6qEb;#52|3&}TpgEc!3Y><;!3JxoWv>*D1u!t9P%oA1F>N!&krcz8xwf> zl$Q_giI#Qo{1h7JTnoL7VscbP?M;00`h*65g=e1UXM(H(@``+)jIP>pk6u2BuKMhr zgd~z^*?S5i$V&NaRe%wAUD=J3@iXoBbaYkM1OZ5I)tbDTOL6;z5MA|(@q7!j90nWzi!UmaCn9d(bkI- zG`ION*fskJ$Wug{!*Ln8$+PbHH>C1n4~MFJ^RtS9z|Yp1lRJu6s*1P`HUCDVPIF6_ z**Hn^MFD-KS_LRKatnUY7(2>~&j#;gA27!XbnvqQ)0NGu+7xw`J5@WA?-QaRcUGTl z!{*K;c7#Q~Y=Zvh@S)U&RiqJ3%kRYuC){8JUPQwwq!9gU=}{&V#m~vNu*AtucnHvA z7DT95Y^cZlRpjJDtW1)WsmwZ4)x|f25f8gpucYl(FgJiX3|oI19WHmGId(u-c#26| znd6q|_Mce(hS@fPnS`RO$J0SiIYV{xgyT+lh(39|;vz^a-_mHIrWxCq<+wu9N_nW zkn;B=kjWnNUfU^jq^yKIs8=G_;v4zkcP5e5B=TMG%kWkI;#(BpmKK|G75Bw2?KZz? zc!UcA2U9?BTtRd;Q3O_Z|~?!Fvy)I&J%@y|i9RBMrgP=e^JVSuTE9xA=mEw4}~>T;CJ- zY=zW1WpHQ3^k(8X1f*oeY6!U6HW+$aLAMCX+EUFJeCl@t+Xt-K75k9uBiKKT9L_VWLGZ}4Rnd`mCzxxHg<=nby5 z;2-w_r+b5ED;Yn@slAh24Ju!Hx6Wg^#UJ)Uz0(^tL~;4SBVoLc4TYNB4QixnF^s0o z?3I-T>g)p}EeElcaP7!ODV696y#lc%K-8!}|}eJ#2|7@B3kS4>Kci zkjKN!knfkweuQ4Z)+*J~VIkREK?47#8M>U{iW| zoZrhsyMob>PvHb|9J6_Lf1;Vvc@I8n7{{SANlvtrEM!m!S?EK? zJQ6^rS%}vV#4=rw9sZEV7Cg#wCcVw=zh!V91o;yJW|3vp`-9Cf>?OWM*gSS&-!P_1O1#hp62;RDxe-QWDy@>mPgNd6= z9jQ$5EbC{VKY+LBTZ0{74i(xoHXdO%dQY=oM;{Z!`6_c2>()0Oyp0|gyghqz@HYO8 z;BDDC!P}AxgSSBDa5^kM@*yrygqO!yn5&AHb(}F z&J?S4S2TItl0jn?n3tP)ks03tOjtn>vLAZuT~h0A+oygCzbA9wRnxZd4Kq9kCB){b zs+|~cQwuT3Y|M3}tEGaj9QkmKDKecmSqt;^CY9laovWj0$P$3EQ&?q9mm>%ztoicI zdm%2sLOF~e_UO>y`O+iE#O6_(5BJt`fTBe^2+MF`>{KQ@HviYj7Vihp`yPtHeCfw` zkfChkGF$?P;~#)Cc#Sv4bZMME&iO#2p)NjEIbuT2isSjitCyL!Ri~_WBgYUEg&1C{ zx;^%BGx`)_9d_TxP5&%>nT$qN@;pl6KL3}a_CGiEMC^`#)P4#M{y=r0vQO2?Zf_h@ zo!pnVOf{@7xc|eZd2gIXeSpJV%E*U|v8ooEO%D}?kBr1xK_PpV_oogM3a{$V!F zN_VVfU<=MaNHL`;l384k9mfkPdFc`sFQ}4F@1|X^MMw0o>Z>w$X`iZ!4bj{&d?mCI zaApbnn}I(fxI6gueCfqB9Ajtm=Z0!*JjUZx-{Vc|aaS1PDBq*qdi*Z**w^>qp)_)# zN1^ek=M+|HW9azbJC$(5k%@}@9Oi6$R#}oDfBsR(6UqvNH5dXF(94q&k$Os(zY#y*GGE6U_m#XdB z=c)b1vHkEUz?5#T_<6L1-k}HP^KGi#P47zF$Q2**2ChSK<^69$3>Jc*`Av_5Ft$X! zn#)w-+t~A%!gvqMl7LS+K`h?d#T*m{!m~buW^)`b1Cey3|DhF`<(P-wx{Rl zbG2hvdze$1WuQzs5wGD5^Mf@*@Yt>d$qdX@uY6#o1tN=!-T6xh_QgT7)@Qih6glnBa z4QMEu%@FmE&&Uk#3`N7Pcu*BIu~nV4HeY%kAv7i1eVo~0kn}7|qZdC}f{^azOAiN8 z=}!2#a^!^f-1L@_)F9HOM!WZ2n?$u79R0*A*_%CD3+&{#jO;f0T(^;J8^p-+`1h2) z`@FKB|D&=JDIprB)<;#x*;N3OrV2C~w0_r!v$_{QO!g+nYv^MIy1*p3pZ@B^a1D;$5f0D3Ft{ zE%6g^Iw_hQeaqTGdZ!Q7VRfC>JzU{~1H1l7UAAc_IG(#=gzg~D>2=$Fv-ZQHiMRL? zGZu!&z3m}ylb?L)*)(LYvguU=9H-xc`;#<-iTQREjE&+;hNj&u#=6R=N74CtDgpjMc&F)!0ZzqJGy7NNPTRiu6vzFSj-g{9awLWTy_vf>oy!$+^Wp5W z{=O=yqRWY%u+A~fr}&)QDSdE^&PTz9hUy82Z5kzP*+4Q&jL@O8UoJ8=-sK%X1psva z3ny1M!fAS^+sU4|ZS!u1VR_$^r@LiyVU_G-U%&yx7bx)2Da;@H1@2FQZD~~_v{RIJ zx(w3fpu9a%{k83coYUnMDE90zo5bexrH|f9!+6zb7@zj;iSZl$NsCtUHTKY6@$I2~ z>J8jaya$~Mrd1McF{SSF1hW5AHb03nGU(iB+ zMSht&yj9W*-AmF7D`IVM)Hzqe1B{Xv-Qvp(ZpX4{?!7cjCgm6%MWURFfF$;dmZ0ND zOU3S;*}C^Yw(KBke&`{aN3tAtI?ZMJ3j@Fe^A1ba{iAfLa)J>;i!d>2&9Dfr6Uo1X zkwo7{A))sB3q+sAppXSDT|?vLX|i=@x)U8jEJJ3OIGypKcwmXAj*CIcQDwyu2qI73 zD+(GHtIW=br?N8~Cwm^^>UlMt<7yj41ljYZ;LJETV|FTgznpk1u#Xn|F#RC=hgSQw z*glrn2V<-PwA)7)56ou{rEkUHBP88YmAwGMWVMARw$~5VD%&K;b?)dY8!;vwlRczb z#=1t1lNN}HD|~gl8KG}_fAx55`!p?&!4s_o8c<+0kE%72xGWmZ6>sPhZJI;?($abj zOg{`LIXw=g=c`A{!f{*?L^J0CcABvMjoqf7?Ua()P-H^XenUJ8*f*Lv&!+gbrQ0E- zEo9s;q+h_xBi~TKc&`F#&OKN1F9nP$&$*_80ss}AGZ7Ewo7$-8h|b^h|1B#)eVg?O zTUE{N)N<5pD!1o2zp356rewXMQ`02|d_&0^!;)#MU2WCeFKx;GuBymob}m^}#pBWW zOYt+!%IfZrWGnw{qf64v$u+%lf?(LfdGw|^*V8U{6QpTQ3#D1Xn=^M#t4SvFlD^#J zVx929?$lW8x{)svlT5&fI@$ZhHg5gUkC2B%w$N@0L(~4=L5R4aaaD2wB(z+_=@VpK zi#^M1Zll01ij2>vMTs1^Wo>U?N`DIXg(gatX%H}$QW-lL9Hkb3>Hlk<88D6%Nkp73+E<{I0f^Q6E#1<*pj-JH+mZr;gtG}xj$Fd#b#GE zeNmK-j(bsAt3x~}j?UBBHZqxfhhZR{JGXBYCT()1=e?$;>9>z;eyrUVZ9W0i2?GuHe3%=tF%cC&u&}(tx^lMc*pm*f$-Ct(;G} zLWiU9AN2#StOXfL<<28z>}U*|OH3`NU+lYTXED(UHolXH7qq-Lq&s!@M< zK2Rc5+MUUUFplN=22V=zrH8>7Ta<@Q6G<7d#5=u~y5r85U8~F$Ytq&-c`52mpyEK{ zg%EBx|6BMk;J<|b7zd#e?yK5wn##?HoR&Ls=3_-<#cBF{7tD2F$+n@}$sPGRDMXtQ zD!2iQmqsCSC!r?kY?$SA_9rXUg2Y9IOGT5NU+KX#Jjpfo%9dfknB_7&ss7+zK9=F8 zsg01^nr_gay|36N-?d;sW3K~fZ&P(jwtk3?0rq#cZj~kN%%A0)$42Vs1Ecd0T=EYO zB!9imQ**mRuQcfiuXR&R2-6L3_j0dt|AlJ{#^7WTShbrj*Q&=aekAHa-lx>a`^Y9U z;-S26R;PCs`oDNVl_vE_-+LIIbEQ{eo69;x*tnwA5ObfXfo!>R8c{+rge z3z-u_2KbPX2z<5;-nh#Y`rHt*k-3u!z2M~l@~DLz6GD~)X#w(fn9v_AWRDPXiyzDP zLda|j`QS%Ep|A8~nHIL&1PggKgw!Y&{)~Q7;{DLx_U+bK(X8S}q1x zfhlw*uN9}0q*Nne`h%s0YjC}>oTf0z%BC0SRfC@M=s>VqDrO8qoMR*K*$Wjo*{YGK z260LsOMuq$Y?tFC?M&Cc_BBYTj8=-LUO!XKg}Gd+;jWrL*CXE4n5FGJ>LcFwGR8DC zQVsH&ITS0&4Xwr`jhzz~XcR89Ct{^F7Q(<{-ZuEZR8M^j7vN&F+=ND>Se`bE7Ifz{ zTBc*{Q&+Nzo{Rj77F<>U>u0_n^M-z;hMvGcj{TG-wn0|B-oQK_LFQLv4cm060w?D? znm*rSdb{qQ+1nOkbuXQ?uaK76mN@bNEGoaMY5N}0d4u73C@56%Vpz|dV;PoOriWp@ zW#_!shTV;Zy4W@J<2wxfy>hO;)_Ijaz%v~oUF7X&0gEi4 z$U8uQ9shdh$4pgv>38ql$x7l+E)S?kvjbgAM0?gSMLLK4cn_2)vyp|$TQ=$O`gi-f z#Y~(y1fGkO-C;Z_O(dhbr$Lzj6raO;BFD9SxfAAEPCf#>Zxy#64!%!5F z!&*tZ>5INI_HuGR+UBcoP#2=0P$Oz`|2o!JHRInUmF4CTxjGW*n8a~hL9;&6G!kQY zGD^c_Zo(o%g6E%UX>$f0&LqTw1_`mq*nFqPMuy6YnpiaRd-Gv;j2AU+D~x6)^>QJ} z82s=N(x$w@-(E4It8Cj_6eX0kUe)NcU~VZ#5wkYf(Fd*?>mv05cC=q z(g?9E#`wD;vL}@z%VN_+lI)<_l5baX@+RgV0Pi;g+e0XOHvJNf28MA^15X$_nIWBx zEpc+yUe6i+KB? znLsPR9wu<5v$L$yZ92ME>dyM3DaYy>u>v`q!&09ae?!P93%NIh9PLA{@W(=H_Z}Z|OPJke z3;FWw05ac)oac|faqq_#@=6GqbH(Urrpoxx$DXue^M308fhnfWllqS|`m1RQvQSG^sPt%U&6yXPJXE-&I%7r3ZMCTMV85VuHwz?_FxG z+&0V*C=MHMHh_r%z`MZqgKGmohXouP06GD*z%hm*;hk=j%mgfvF4H4L{;ik_0Y=)mITLlbNNlW2S!{X=Bbmjw1l)B(Kr=0N4% z;p6R)Y6uYZVbb%*)mM3sX*7-Nr`imz8dK40YKUbBjUx_fpmQ{oR{P^>jXn@7$RdzQ zMzl+y2hUC9DExt)ix3I-Yb4v$?v>km)(wvjTFrDSMpU~ikaj|9BMnAWNqh7uMpUgd z_y$m!gR+}ZVofZ?N#z=8cHjq-TjhWvYnt$Rpn;I?0L{9lDg1a zva3>yl3FxFlR$6d7>oHeDVoGOa89@iP~R(SX#tA`M1Uk~th1%uJrnK;HBH@x?i!%M z_)fi?T)lZPzrDyiyC>MFtE81J ze7>q;&CFwrFB%wbP4<2L+zp~Aisnp3!x_GlhgKDKITcSv=Xdp`4Ow|+Aa|Pb)Y#_? z-&GoVI~jVnN22qd#6j(_OR{-mw7CJi;SJwTS5Qw}tcT^C9?}xO(S(AhZIFP*c-D&l zNW6pAt{OhomkyV}YT7NUVWDv18lT-P@!8E$$Ni4n6Q~>>)Yijpf+Os`$?E7odd#Foua&F7`9uVl(gOdQnfVD|4sy zv&!tCE94!U=NpI_Hn}L^go}c1mTr;LAoyjAb>e|Z6Wln2I;Sm!EeT*td>CTPn`jMp zWFq^XretzvXhV$YleS`v_|>oj7 zeOdsS21Jt1MHv%NwKxhjP8_w(}8FqZBc zOm@!+A#a_tlXT&)kFqjmEz3_G&T8U&YfN*n^QCw@gMs(^LVxV1ON?Ore~kat{BIDS z9ih3)`ypn6sS?FqME(%) zKfB4hnm+H7h*qx3%CX^U{->E4OD;Lhkd~dbqgMAo|ETfzF?j40fNc9yPW1IFRfC!nvs9=(O`Ud3y~{iGccw);)1r>_UEUcrmVRC|ZHB`k z7I0?(INS$BUJ(rf7;FKV08j#;x4igm^Wi!fnV$Pz3;fApe}^f;Dc5ZF|)iia=Q6v>du$P7=3RfspAdtm3M6)q7{M zv7lfH!q$So7-qw@AQ#gLi#5fWqBy;$eqozRR#zYfNMQ^A1^k!r&(NMMM+HKF30p)3 z-YH}A`7sS!qM3OFs2p?A$I;9mcuS4BhuIuxcT!zw8%>jGJd85WXEy-FY+-hqdUDyia#@NXnu+dXwIw?i#}xBCTE@D zc0O8Nhiaw+7)$u#iN+4$LzO49f>2SZ^|r~Xd9&*9>F)JIq7U^u8J~VmG?T_-^9!=% z7}rlqTv?~QoM-ssS*d5h)fZ7GOZZn^p`R*AE>a)t#>^YF+eWpw7Zg-e?OnV+ZA6^T zx2xliZIEW6d_oiRyT{6ZXhNH@2J(s~~wI$G*o zsBe>lv(UJ?$x3GDV=}6mXeLESHyO{jkI4uX&HP9yxyfp+wY3&FV=~>w`KLIu)PZS< z+fc4eZgD%duG{Ac+EkLJDxjuUO_+h3A=NM{d4>XE@9Ow8VX7m0phOiEa5X!#m+3be z%5ZWI)=^_SC6bHmO-5|3qi_6Q(&7f#ytEB7%1|IIcuOtI0vdTnjyC!Qc4C`LX3-89 z1yV7%Y|hk${LvfiVtNq*u1~Y zwv=3D@}6#0{$y97)gLSnL)O3YHNERMCyMX)GON(22#`rGtE7RM0E$O{n@lo6svSg- zDc z2KkVg@=!u*MatPdd<`H;Iq$nh4^7D7(&^Rg#P=Qg|hTFAl>vY!tr3`_LswWiS1L&z7W z_Q*uvEDu>(*9dHGBzYDEG5e;l4)Xz$&?Iu;-MVeNZ*D31yuBtn{VtNNCPJObx7vBY zEw;)?mak)o2lJcN(g=9(H(2(tkf8&Udk^vdnB6&;ooE-gk$Uq|R5*;_*YSU=#`CH*2zNm`5; z;B7qt3NWgTIb6hX;Q3dO>2M#kug_3sB~=INi>tn(zHnge51FC!6h>u@9j)YsEA{NG zpGmu><)|xsRRznmeF_?WO7gBKld`JkHT z+xXx_Ln!Ih-pAJ%BDf4qBE??qZA)2_y~+?94$oUaDge9$KpbPeq3QHP-rp@?qy;?W z{X;Preb-Pk$LPI2xy4G-C1zZV6pi;tU2QX=Pt;B#yYN*+wv)TRthJpWIvQAJbE5~@L zalWtw*9GaUVWPY)5FHU2Nl8CFnzDAQDKjF5;`a4qY$=sfkD^R+2Z>J_K9yJ-RUAVy zlK(Pf*NA<&WTP+Z80D8VAwiEozroC*7{Ndp)RB{(D$3RI>78;)P)iH-ZSeP>#F4py59_zEQ5BZUmC!T2lYQ^s_js?d-r7~|jr6_gLl})3&aY&? z2k?q!78|#i@3zFaJ;;~in*I6`1xq9fwi};+3Z2}j;G94rIKnm#-EvR?q8Uls$dFsY zfQ`oa9pO&w*W{trp4gbESUD^1xHDo@>jM65qv-;*^a7?zUD}VrUYt17)k#FQptC^t zRR5klU)gr@T<}3~v$VH8qZE2?~^yVPi zX#fLBPP6@T0BON2v<%XiK;=xYu49mC>D5o5Y?h_~f+ z3xzbj_}!CeAMqx-F{F;*oH;}z7T2T)oGC`|9VWF>;3vB)jS*WkeUi$_8{gry7CHL` z{$EYH?_;HX0R(XM3{B3qZZ7V*?}9ooNf^eb;#4QGp0-yo!8Q|XIIWpzZ;puLRWc!p zvlVVYQ&%7G@uuy4X7b)w@5*vb59?#^I$TLp2|UZ>>1(2v^vo^xIZ~{-yVBj3*!ogp z`TP5g!j^-bN<|kgudMhqnwbVW(J+`yRiIg|-?J+F-JmNM=}Z<{vjv;KYvwGvfHIeE z^d3A)Rhu-r);g75rHVLtcE5~jC&$s>wI?b%qnQt2HOb7z*`*X{2&=r_wU^Qq;-1I( ziS|tAwBrK?!j4@_F;wWG(`n{;I&YQ8Kb~m%vhR%Ds8Bpg@t~$Rwc^!_Hey8TH6;Vu z*g_K)@L$5e8o1mi48aUxJeyR<^))*`8>tO6?C9hwi;*un%Rei0bJvT63ZH~gD+p&B zGFqMHEPIvg5W2Zm{H5w2lPd=ho%a`f-Q30?RDBRit3|-Kgz!cKe_Zf%rLm=_WRf47 zG}a2e{LO(*;e={u%mm_nQ!dour4GlyDn6;Ffs7tx$CENTN?*n1n>X#QR5o2M-&V+( ziN{Hnzj+Sr|@NY6MyWWzE(s*coD4y_ba?#_4 zv58@?pKEyI_%Q(oe|?-~jz@%$HVZjCgggwSg;u`KGT27%cNP&f2*~e7A7J^XlBu_d z|BMcjndL+FF$_|W(=Fu55HjA+$)XT)sD<1WLJs#KrG|?tmO&QM971;WA-9DPuhA6w z$020%3AV_GbyJIG7<=48jte1OKIGmIa+`(h6GHAV5Y!|kk_QnA>F#E|yc?yega(wV zU$S0p=Mg2^VU#QWg800%-`k$I7cvxz5V)rWNdl1xro}xicDZ_y)?FSZ7N!YLoR@!WGt&L1@`l_w%`TV2#s5wzvHFq0qqafNm%5tMLote?HBuphP%JIkP*0PB1lE5GigKqXJ><`cc8&YM8^lyeiQCufElSmQQP@}ag8lClpLC83|DU10)biq6@?rM!T@nr=u z6QGJ&pOU&`guvgOnIH96LvE>v6rB75~EWU?a_IQDFq>%RK<$u z{6FXeV6{%!UCwSNN6T=HCX?Dbzv>E;%i~QZ`oAGtW=mv={bPgjHR4DY9-RQ6S+XOruCI-1_Nb)_V^PQv_xptIHZXAw>Rnj&RA zJ*!Tgjd?VM;Oi3mSxW)idM%Kt>;|a%S$4^V~Ucl|MS)tbWXu>X@&2 zy2;1QR8ylU8>rUkytj?Zcw7{1W~FibNKs&y8&^MO_dzo>R&0sR`&6EDAL#~ZlaMhm z9JT}w^M>KzChNvz3Wy+@xsG2qSwAMz&wMtT&)H)#MdtHo{5tL1x*175v%hs)WZlXPuGqSnt~@3)+PHmc$TQPs zagK3&+qx~WZgJzb7B@Fj!ta<&t8p2n;$`+QF1H(({f)~|K`?JM4)@_|} zyTQ8ESU1nOHCeZ6>(*`DrpZlv{5O6kj>S#U>&;89ow9qY?Yj!?b@0ykM?dT4e~Y;y zFwNvE%_gigJ1>*O<7*$+jU_IZP3|uC$#qHTF{H(bOcqpm;jrBCI$oZ+SgvlG(F}P{ zd#Nz=+E@?$fEDJSzSq#%S`<3nB#A(JfRwUI$)FZLl7-9dR07P2ga zRQixbA>_LjazhB&--krr2x9r%ZV|5!A=^<6sL=C5$T|x-J%p_HA^8yUpoJV7LfU-D z`ELdZ{l-EDg^-0l?2Sxh;hJz=xE- z9VFD>Laq)WyZDe?2zhI|p@s89$U8`gs+aG)6U5SPA!9;FhYy(*7W!rj*)xQ+3exNE z+s5ZL>Yj7oE9Ypl<3`@BpjM208-wKSew(vir00%#eLHkL?1<+;Gl$Z++n@K|9jF^N z;2lDbLE&Q&8!>_38&NABFsL_T#ZCw@MQ>AC&)5w|$R z6n@krGX!bm9+_giKL3A6O_OeEtBo|joJu`?WCij{_%qO_}RL=}z$N9r2 z9cKEV(Ejv+qp+PZPQy;W({YPeYpu-1@@ZezULo5H_y*VOJ}f&P4!aYND)$R>5>Kj4 zXsWEBks35|rhDyJ5xDdd?)76$GjW`y8g22_Y});ApN6L;fthhuL*W5tijpz7Y_hB~ zd8DeRGda4TNRM)+HC&W;5v9&Fs$H{5lqKUWrp98beM~KwR*RVuUcWWlV(KjB4zfuh zt@xJx$_+@8Uku(zJbsW?8>HLBoRK)w`=S$xGB$_=7(YlmucT5S(%>>izBO&`h8I6bH?IVV*&rTY_9jUiWE~_iumd@0+J0P!N>-YMBxXC z*&wwxh=d~UH5E{GZUh}0M52)&ByNK=+8~m9Iy2+LAd-1(5J@@;0!1L7#Byh$(e+Pb z1;m09^lPZ4mViFBv?`IEs6~42et+}NYUiI~jX*lLqJZGySS(oH9f9+hz=d#~UfmOO2iMo|-r(E%hjnwkvFEZwKn%=DK8%A*iqmbzA@y|e) zEDF>_$)WZ#QZ8Y_xEWS-8n!@A^sl}wM{y{T5meJwmTm|0zlRaRr7z90R?AGbFXXQE zv~a6DyPOw0Ixv#6>o+=aG69|}W>}8nA`QE&CiR-7>Od+NF&M`G~6JHh}6<6U6k3q(q%jd(v6$C`_)iecLz`sNa6T*AcbWwNc>_D zhrnlh=gWsP23r&7)4r&x_rZZCZ=-(g3A82J((Y}S54tfU0Vi);c7w@)y>>N=np@zxzny=X66 z>Oay4INq8oeo5tCfoU#L75Wbq{6b30kp9IF{UQCZWBsvw{J+>NUoCATYu`YIy$r+@ z-(P|-J4k7@w$9{A!`N*bS+2f>+q*)p9x`*P*3fqf!ZnOs*|1z3-tGKZV}h?y|KIC` zPS#WH`Oc<1`|%e_wd||wcdEfaQ{Stu={)JOpjpd;s!qrJ?VJrU>m-;xqeAf)g)nwo zSb|U=G&I7jR#i23rMQkc8$U5|zJC_rlxy)Z^Vx(JFLI^JhFL}#_bSUQKX%|y7V=#S zxgmt?52S@aM|B5~&)Im3LwyL@KElS*_l*Fu&O%NPA?txCmJ342gBEgV2x;>nKkzv+ z`#&vYPzYJ*C$#rlK|<3k#M?J0(R4v}_=}%qxN_5bb&eZZeJDUpiD*IgjukN??mHUd zazB&$-z}cT2jt-z}?*pOVH&Hi*a<^v3nCM8)NKD%H1oGKVvqZ-gAq!{Cpyr!1|;-t0mu8Yx@nS z;`&=_0XUcQZ5lc*+xd!9ed9Ks3N6p&oBE0*_SCX+x!cin?7V`8Fg!9CsgUGmb3olU7p( z_IgSJIDRMvYFb$*5;F#^|C_ZI;MTF7W`xrO}Dhm7`C z`VhzHQ@E7IyTwBG3L$?Kr1zgHsz?(uW@S1*Y{%SthgaLR9ck2P=y#+kF>~KmTFZ{Z zx4jJ$8oPSCu3WMbJO>A~!75~tI}D+yfLoW?O(QYrq?z|zbxCC|9z&LC^-8`2Ni#Yd zo$_jRBV&CBlT9REKkuVi7=gAO1~=bqIEgX6~uBlu6Q?*n6rN^xMxSfsQaYdggJUXRTU{)&FB9*{%@d3=X-N^)gF`oNj$uTx=H5J$Ty{jOjL-A zZs17Jb;0>DBPql+r>xfKn{Wp#?=Bg%O6{GvPiWR_Q=J6s~0r#(n?nnpJ`5S5ai1_ge6RxgQfnJ}DPlNq+^s^wl^ zo$*Mx&!kxr8-^{aUiPaJ*?zyyx969;YdK*%{e#L&K2jwm=B`pLv2l>Vi~DFT&ZY*F z)#9U5Rq;jr8L8}Hwj>qXxa&cSkPgNkDMH-IoyMktgXQa>Ew;WC5gU(FrN1CsPWGe{ zWh+a)GT%cFb#J|6lAK(rN568uLIj9EZc8s7S6`*z9SN|lx2i3 za>tct$CcQF&mA#RZ1^n|-EB68Sb^niJB|@cl-(&NxzI8;&9P}W*uXdTAlS`L9S@4T zIN|o8^Cbp7uHIMWCTu55d_yN&s-Eo}u>61RX}(sH-o^n>dRy<#mQB-B(^z3UolYj> z7`Bs*?dfD}QU0GAx+8fiwt6{&h)5Z$kOD&V}*ZuXZktTBdV3S`-002e0|k-zKSHcSF_44bJkd;kPq|y+^4QCBax=T(U>8dfYxvj2y(?5Avtx8Cs8{ZBw!S6P$hm%JFg=hRMHxrn zY?=)j(OD z%hfa4+V{^B85=RNjQu}vBaBV5T#br4ccn(bohAuKzk*LL{gOBATqDN)ZivJ(geR{hnxA{oz9$YMfnjw`7ten166kSlE(4;7YV+JAl$*n^N@ zy*E~F=i(3s4)%mv}bG&s*h{=JXu=;ZjUPPXF zLsdIr9aoG|NKza@ihC%ODRo}D^@2E`Ze_n= zk+ML}y|z=WzT!qQ!hr|4mFat}q=90`CvV z)9Pf`**>(un`r^>7yE!K0N5T9pKvB-$1$q3oKDeZ7~;#2%ON7>_zJTv)YvD0>4?IN zeS#udN~9cJa3KVy_C7edmHz?!@5TR!Hk>&MrVHQDVkQS@)|5>~dEMPoN^&3S{Q#-V z-pwZ8(w&H*Aq8X4$QV+H(*VYXLOJPfrSdlzdGp31Tl-oaK+L{cbK|qLV}J~q#e$}b zHf$%pm-vT=oA@qPJ1RaL8Dw{e?_@u|&rIPbN*m<$xAE0qM3Y=>n#4wCn}n_Kz0b0I zoe>5&Hjn}Kd<%_;R3w>(SZ4V=d+tir_60vW&sbn+FjLy}2JdMmTC`kpuxY6c-WujY zhF@B4x54|f1q=@WfAs+e*tXu_U1I@-0pM2v#4n!<0GC+6n=BGQk{i6s{22D9&5eU& z0m}nGN-_9<{(L&Pui$LcEqNrHDTC`!3|r7E7UKfNk9P8zCo?qt|p^|n;DZ&k%} z^}AHL(Col;wr?t1P*t&94!bznqI4D|Q5AYjFQjI<*usIcIDM-lhLM4Hd&$U#N&1@kTM9DWSSW$;vg>!f^IU`V0HSppxKwr~)Oa~jPDQ5!4O#_QzVxiGG+-R|n^60eu~U@% ze(1QIgL$3HHmclh9M6b2BVVa%V{q0VHx+zZ#b(lG2gyUs(81C-bycmx*Q9c_eKe`7 za@!qut!A>d_Sy~&mdJzL$g!uw<@yawyB}9otV~76ZAr5gZ$4*XQ37!J$A6sVZ$yIo zI+#5B_jPPAthUR$ju9Vn;?ls}6z=PIyIUjZ=DqW!zc`k5G#t*mR2bKjMX>)k5Sml? zS}HqIO~hnzfRimWvvQb1?rbv!uXs`(ea+na`^HWQvqF>+*>T)_asisnXjR2W4Hs5b zJQZ!;Px)XdPvsItzWuXQ?&NLh?7^uDI~lFg6#n2;_WNiHM63`=-*gu3QJh1*%OTbi zAXaWVgG#d}K&;retaz$n*`~)uPt0-8?TKC_rcU$!Gk#)iSY}F6@lpMco!nXE{>-va z|5ru)soV*4xPz;hH`^@tAJTA9Zs=Q5E@jZN3xa-}FBsP#OMV`Bj>k zox9R;|0O~GuS|c;MF8C3B08@TK~~F1J^L0`mL)D=`04O|&oD2*De@e-qK78$H;vkF zV3qp}_YpYJaa~kIbUtTHXzL$HFUch2OEY;vVZ-t3if5v~`~|+A7QhU5lNgfX3Yn^= zcVKK>Ayevb+zge^Gv2H6(k(LRUZJIQZus`9?BL;|Rdf^#M{q#t=AS^h!Qrl|iggV? zpg8rj0{Y4hbVN$hgJ%b(vXIdV{@Xc6)!y*t=4z*+qyBrTZvx@l@TL+V-umHH$b-=Q zF5Ir82n!9(V?(w>v?)l#n~ay=g~8R=I_@tFUpv4*$i)VJ?XuVK30{{?iC{Nix1Ipv zUWRe?8iu5$F^mgwPCSeYijLP5hcQ#SBkcbF7lXU@nh1BLrH<^WMOC@MhxVe9EbDn8 zrQ}P0H=2I#P5D#=GjFK~#=l%?;4&$wH{HWeM>sa=CA9zP{pR0ru+rwE)n@DKi%kIK zW+q|SSp%2sxwWR}e56xRTvf_Z{Ss&S@{-A0m*?{heb^rHM9HQ*3D+zB%~3^mf3apf zTwuWaeY}fXy=&t}Y{=L5_trB8KkYrvnZc(wy|4E$j$CBx7(!4-**>4F=uB`q}L2BPIAcFZt3I_TFKfciAre3T%0}vhiBENxckqE~e=y7+8-$pPeoBd*eBX=&NM9i^P#zl}&oF>!9!vTdzSg_ovPe9Ah;X__>AG&wL+ zRdZ8Dm#PJm#@v74Pm{`|%x3#wzI0cDnU&J3{ziInu_@Y#yM|KOwMu28aZ`I z@#r)hNJH|6tKwbcyprF4sj*Sttzcm z9{SXizOtFes>p-<_F19^hRc{GBTtJEM!x2fu;p#(b2*(fCh`mih8t!(7Zw-%QM(UH zAK{yWw{yo-CkqN1E@&G>$C*4PF|=WPYUGOOLy0|{-07JAT*GUBCpWk;l^cviw#V?Q zinaAa-IE7nPIUS}2JXV;90HmS6IfBUc?0V9%yYJ$nywgLFh?~ukb3UVv#+W4p&gdb zT=TM*r)oz%M~e+=Uf(dlnP2**Sb-^r#Waq6373LvUas%g{9MCe?@^fAHBWgD@dyeW zwx829_V0kGl@NR)Ih;8ap*qdWw5#jFbOL?|-Fw-F4o*ycI3Zo%=Ib#CzwVX-n=+sqy`dP>8|osk24P7Fa+id8b74Aq&pwiL3N{zT|Ix>!Mf1MOVv#q1GH5c=G`c`1zPr3baitzO z1katl)tIwI%E*^?A5L6vQN93+p}{V%uf@V52YDZ>zO_oqHKpEq^Bn3u!!w1A1^0Qk z$QzGwCz|s$YLEmbu=3v!@h${0>bbx5@um}(+p&3X5D!~KMdMY&V+CM-3kD_(JBo`P zIaF@>1szLGd+1z8i+%k8uZ-Czfo|cM)YG)nNSeen$aJVjZTDkLoa7?6Q$J3Y8B;Ej zHLna&$+z(E==<ti11GgNXkB)8c->0CyY;0}+z6JIBkFC?=JCP-yevxn57MsPww8m=n zA1C^!I?Hx@A9-HB1Sh(BckF<;r~7N-e=~{Gn0T5x}W{+r%!U9b6?Iq_uO;OJ@@6g&od}x z_ip^SCS;cCMw}R%eu8%$}z`s zzlGn&@p}%xPvG}lem{rb>-l{Wzgziz3cm~bg3l68Q{d;rPkjNuCRlN!ar`)6*{95eA5IOQRfgTB<*iQBX9sFh_Exp-s+qdCy7kwW zZqC7mAojMZFyxk}e_CNkF^5N+e-3za|6onZu9~?h=J_iRXMBW#4r?8(4KVX)w`jku z$`?C0L$DeQ9p#II!(a=`tm@65*W6KV8t8;}Y<8IP+de(O`E;DySN7R~ij=;JTgpx0 z?3&Fl)343Z7i?Y}sOOd-cC#ECpfo&N%dSSJmDkOS_u>Gf(R{}bGcZTF8X~}96y-b$ ze%E?WoB7~))ALvlTsXb}AUM9w{NeLRcmY2@J!TdqNq+wPS7o#j_-4uXFic1Kp2M};D0o~4}N%H^@Znw z{2jsrn^0TeLxjo-0Vm9XYa*qwqsh;3JWk-~@Bd+Gwhx7XhVi@@lRWn-_?=Hie zKsUeJXSNiS;e!tq=KAN#%&P|+X4@Wc?L(Bg;kel{-ct@=<6*Py6LZsH^XmO==HRFJ z&D!&BM|_33303`Xvt`UWWQP=xlGSHB1f_d7V|Ui^&S8*sZ&%o}YL<_}*r zKRxCaaFJ$S{X4VsDRbla5?~@g+zx`^?LL=nK5G8qTfuYbbL6J$kMZH2279Z+Y-uPxd<8TYyJO$S z%f0pAFCF*=4j>%aSN30w^?nOdq*tpd%-Q%FE}G++3iH#?ur`O;ccct!l5deW@GgF< z(|oYMt;`(UcQ)?+uh1T!;fIyXC%Dgu_g_SNth8vDk z_;qtOHYX7D6=&1ECfh{$nzGX$2UCoqa)`XI$-omlhIDMwL*!=Xp0;IXpUFVzi!zA0 zqr_s%b0B+gu+7|Zlu|k~(&^0wYn$2kbX&REhx|m?2Bgm4fNsmX@c9PX%z-`z!YQ1@ zo5<;>N(TNy^*u2NZ*ZT52tW66h51{ad?#VNM-iWqZ-8#E0xPuNO7~Z+6mbGx|52G2 zyw(^@{AYhJK@=FnZy=2M4Guoj7Gp2)j~z$+u}?s><;6C0=u`0A@>_&DpC>v`QDHAr z>6olQ=zA>i`%~$AIar_XLjHrtk!!CNct?22hY9(K{Our51U@B}z5vR8D?hIl!2S08 zEtG0LMm6+5jjYE$N9b7!y#&-js?9Mf9})$JyW#76hl0CM=swt^KN8h9+ssFHA=dv4 zZlT|S@ng>*_dcGR(2pGf$FEo@V;?fUfy850V(;PnUd{l|bmSQ#_5l&1Org)HF2~-7 z_sC};$qA8=kG+B0L0H4k$0X;2Xg!bv52S7W&q)9ui1LsKMnj(vp@aCrcJqn%QT(ff z0TBoHTDTxVMGZ z32+ZmXYoA+jKD4iYLxW^DYLJi4m+a&{}D=jlMzjbGPs|5+J~=$z!6G82S+dY0(t%W z%XZS^Ez;&c6A7;Qnz`2GRTQdH4c{ zc;(^>rlPGsdW_-FAfkLn9%q*4OLtzk{yV<_3$Rq&p3O5izUDAD z?KL-jRAIIqC1##Sfd?qZmqh;{4IiHgp32Nke+JgOlsM=xH~s+;AHd9GwDG-9$j`FJ zY3~5o{^MolMiMxFRFv+AVT$TMz_9Qal=iN}y!uFmdG)J+&%nJ2TF=7$4s?hG-Zp_h zBTM7c7$^Ec?;uqx@E#->JZgg3?Ke06(P4i2O#{sD?~Udrm{pikuyE8!sqo$KQJJ~^ zoeJ}+L*Vc^SgtP&U;)w$ypn?9b03J_um`!0Q*B@wVR?$lO17M!h%gK+*;!#uXLH-? zF=SEPqHIua`G_ZH^O$f(78%V>p5B5!(y|+D9|HUYSe++P9Qf;e303|a)y07OM|0!n zl%*c@$!ceqfK0<}&c{H03GO!-l2=}g_c_dsFGFmvKx{Pj()&h;I*uVTbqDv`4uj;= zs3Tbf3=HYOd=bIa%aM#m_`OJ8jR{NRSMZa---A1f#`_8!y$$yqXTpH2jbvSY;f!=q zp>%FssUBdT|Aaj#{uVm$8X)S^fI$$xmqGh5vSeim% zI0k$)e-L4slr$q;gCj(KV5V*^krOD}Jhqr*S5GsWk09Z_X4{woM4_pkGTY9Z0&$^2 zPn&Jiu7KCv_>uYP)Z39e&1^e??qPP~ZG?jBkpvz5?0oa;w=l0+{hoO>xAC$unP;QL|3x0?Ij5g8iyIm}n= zQRh!KQBiOWRz>AePazF>A~MpXX4B+o(Vj` z;(d^;=?M`w$~lt5e8Vp2Lp|&;`u`_HVBv%pXmWLsjLE_Y&(oA@;e=f&)W_=$>0HCJ zIk+C(9Fbzyv~Ws&Mmm+Ua7x%9J=Yuf)M?=qbWuKsGG$W+7z78*R;`s~my-ke2M&pS8OK8n&7Cu|!Gc(|H4v0AoQvXDV`z>6i(6A>dhvcFC;7$?T?=vWKO_!%tn>*%jE zwM46elc$I($@buLVtfYCeVphZAISfJQjR=@bjND>C5Sly!vg!c`c=Sphd z^&5;JM7=(nQzt_Mt3@*C#9XZrBWdG);tS{)Qf$KTmE`O@e2@-8#9p*#gwOwO#;+%p z8R-pW z5w5!NsQ`Au5C1gxPRec8f zFfB3|cm~?*e%y}Rz)vF?qSdAPRUz?kj>gX&x9y;?DH`VWIkq)YKO%Nm3Aa-?AB=;R zmHeB&Cvd44EzZNg5Oo`;)d;`Ff|gz(;}FIUFFRZ;@JTj@ZNg8}w!;&Je-Fi5gnt+L zO~T(u{;l7oXW6&)k^h5Wv@FgKbkw2<7<=Y)D5`4n9_&hwS^+UFyq8{6*on;i5+c^v z#q&|*uOkAss?F3w*qjsu4#>AO|B!>`#9OF%2zbZ%|6C4=TW6fqQM6sfk6b9M$jm}Q&he`xeR3VsiSlx(-+J(a20-V1yHWUw zxx+Q^>*Vnukts&J%1b`NvTo@}N8OrX3I|?)L#rEzlkg6IiFe2}|A)fAo#NktU+_~( z!F>p-^q)aEmOh!7fejJ*l1Y%}^1D}%?j>5A1Zj?;rH7UDo;^{PniO2h0Q`2MQ6cbo z6-tD^nc`>b@Kv6-+)O-Y0_|}tZji|!z`(PwYcc_S6~8$Szm#P7ouTmUarpg&?~UNA z#8cvsn=x(;lq5uc^(H;%+c8cJjE*34SxWhEwR!+KAS*rwY!&_;sO;g}g`dl<7k-r` zhW=5ulSK2l1vkiNJHWt?4ruZLK~8)I&OFKz5!DQ&!={&bd8OpHi88o|Ru>tgZe3oA_tY>(INX4#8FHyN@B#Yo~<=H8Fdb~wL0uIjne zr{Jdx31baKm1WN|LgF_)F1TsD(O!pNFTO*t$r09Tz=m{el8y->!+pXi}b%}>HYge z{k3$HNFM|KdHz0`4*qUc_}dW2AD_sLpNGy@b@LbL!FkAFp}-wE4X|IBn18{K;^WX{ z8BUcyJ)?ToF1#lKFAkVbug1BuALHN^_C-=_AEX0zbP}`wkJzHVHT8J_>MwX7YXyw7 zb`JDN8J$R=*Tim3z2SYJK$Y=|#>w$BM^j)I9ag|AF&4ZC@i<0EoS(KJL0B-H6kCAe z@X@CV%88SsKcoJB<*#|8{O!ir``1#dG3Jx-goNWdMf@BI@0W0?g#3G3$oCa}cMI19 zkAQXwt0Zieuv5aDB)nU~2PAw%!Y3u%BjF(lH_39FB-}0e+#%sM32%}xDDgORxb?IN z{+^IXB7cqyYjpR>`fK5h67K;Cua@vq2_Khmp@cyR@0IWi zS>G%fK1ago5^CjKLtnSXwMoM568>DmB@)h-Fh{~KB>(j?yi>~QX-%#YUMkbI@($_h z{q1&9zLwr7!}}y`m+*#b1m4vW?$YI}lJOcHXNSOlRo8yoWxhKld`rSFB%C1gvZ8wQm@(sLa$ds4S$DD?+)nn!?K8#k~NIL>kT|?*FlY5zFVX>jT8A`#6^AytrFTL zES1nH;T8$^NZ2o-HCxcJOIRwQQ^IBm0}}R1*e4;A{FF-Q)cDgFm$0c>@Sh{=p-Vnx zuuouA>JfYA8Mz$tuN3r4Ln7QSAs*buT*oDT=~<%QRtfja7y0z@EpCt1-P!4Hb%#6r zKE`Yd65}=auJ!rX`>fucR&PL{a#nf%V9>q6>hrF*c6xnl!|jw13I{uUYpr3w-`eT- zt!2|#2*2FG*g9`(*dL6>b0WAM_`ay$774dYxI@BS5^jA!-~}YCXk1$U(wJNSGw8dy zCHK~Q2LJTQ{YedAua3*x^e8ksQI4beLkr7@e96`JwiVP=CvKz7D zfVZ}yu#n<%;jC~rxO})QIJ%kyh`AFT&6WFop|IN*UfSK(<_#8dd`jC0R|=hP|22L0Etwobo0T-;O4@Y@I}%!I$8E<7Y+%R5?w{*b>d zY_-+Sv{u#B)mZD=-5zhyTJG-(bacW~XrE)BQ)ssr7S1W0KewcqRo5+Bf&ClKQ#xRY zQUFBAuTePjU8aktI;H@@xw5XhzIx>fR_|ymU%9fjf<5%mO3vjkIau1SWN$YtorvHJZEfPAkt#(s6-Q&|-m4_>15tx@&=V z6vl-v3d7E&6d_FhcCbotJ~Si91Wx5R0V(b#8D}U366?Jr8`T;oX;qGu_>u?0p!6w2 zq*FPRzI2Fmk{PAnG(P z(RYz>s{Xu9<^zbih$gvzhNCth9!PFlzofJ=aQDL{y0rWuI}6)ctW~h1Pf$L>*$pQ& zMo>8>0FR?`O@xF?D_4W9{!V{T+5?b#h+cUx#I&r)r`^ARCs}*oL|)?MYxi9=$WVQk zY{G2Nr0Nk}E1Y&|Iz~1D`RmJSm*G3~5Apu~AmWIh3*glLjv%MChSZ>0NVG8*0tpCz zLjz+i7W8r1Kd8TJ{l8uIcL%mto@T7KykR^$DqBVCPn9+5f;nJA%UA=eVf7%`04dk7m58a}m{-wB=Gwhkm zs~nhh$gz^)83ZmX{^+V_8(4s>s=ON53glV=yen{LpwoczDnYfDW7Nafh+GW_J6K_4 zEQpOS8X|sfB)*Pyup0Qo@xO`Q5PoA<0(_LK~Q$b+a&!DQ7`oyAkR@tPdOp zC538)JV@)2{Q8082DPQgA4a^O*Z{0<_`4C~(WOzwGUVt4lh#U^+?5_b|pRc>U2=8 zmx{l_&e0`tZCVQ{K|*SCv#_g@>H{kC`D&;RmyW(jDSEnt6<49^v?Pr@gcdOGI(WOeBi8?J2H zYBK+{Pm|APfmbS_Q^LTVBL0E3t37w0Whwv3*5108mfZ7~0~d>W?2z>+*)HVil(1dG zO$(*`hoIjp~vSJ-16DDzxze&7ni@hxI6Q}Gk0C~(@&pV z)BO6Hbsyzz&Hed#S6udFeeUGB-@D~A^Oy-&p8N1EWt$)T*}pCQ(E|;}_kVNl{0~=F z{wizo3m3gR;kF+Kc8$H^swp+Me|6=*_OF}pr(bNUD6VY3Y}sSC4$i2!$&k4X_i@9Aqhl?TF1=Kr07% z6|e$U1&W>ADlmjPc?!kXp!bJBgRTN@{RkE?&BhcUUAv<3vEz?tVUx3V<)x1D`nsly zxfO*)*5%$Ve{h4fOf2gC!KPY=b7fN~*ecTN++BfA@0`{^z*e-tK69b9vaGtsQDL*L zbya$Ot=`a;Z9#XJx7z3N_FPr4q|O_5tn>Q9D}A(9?DW#o-zHI4xjVaK@n>sPc%GTo znQTP-l@!MC2M)U2KF{Ud-fk~A>sae^cWS)Eusvs)H*A|3VJ4nW;!Ip4;jg&3Na3$M z=yiv^6^+ZPE8Vomv7yjbU0vaFI#;@3t_6t2X`a|LvZW<45j z#928tCYqkn=i&fxg6>3)vco}N422RX2X#87=KIY)F%QA-5y1bSn zt`2zG<>Ygf8ZC&F<;cfChf1h`6S&kXNJgS};d5c=%WEN1FJ@SDkz{FRdO76h23D&a ze<{rlH;v7KO=yE;>oHQQ;bpq;a$Wc`8K(JMH}X?%vLB7;$JN+(pxJU6>Pa)$T7;?A zb*O(K+L3m|#6|OE`lES62;2qH_o>yz?9<8?BTd^wqZ}IkD&W(6l#{>Y-V=(R*KjJ-!=f|o)2C1R5dsC8p_2~M7)f@n9$X7cNA0Xi zi!38qN|IJN{4V67wWt$5l8@+Jg%M2`^499}*D9|_mKW{smxDv%Wi|K`Hp&66U67dr zZlz4Ah6SrcNVNgPagDRQuZeHamvvpuanSaijxbZG_g^kF1y~D=l7w>Uu`g z>8M54TM4apEMiABI^|p=sh`t$5?wu=E=`S&25DU@R)=n^R;e#m@_r-qku;ss^>%(} z&NaFkjO903s!@5UJ&tx|65A&lP0P{$s-cSx_%s_99n&=a8lbafXgM)+iMRXZsC_GJ zs~1%K97biID5plZnp+Rr!x46DIm&5BP|ir^L-UK~V?JcFO3k&-v@Tw3ZF6^qqT5*` z>mS8x|KPKCIf?YH>uB{x3f88x%U8RA#E>&D_9~JP*(%C>8;@%Zp z3+7UPi>^l_V&L)>Pf~3idW{cyL($?#q;Cu6orbud9m_J*gtAILSY(QPsMFSJtG{3uC!mJsp*P_nmAJv z$w5VEO)#SR%pa~ku^I=f6B<%KNwovv_PQ`OG&(wCGir>=A#X(dUQ`^TuMx>0bW(u$Gg|f}9nk=nk!=^;*GZKDE>=(tfcWi&- zyJyj!R_R!QR;#QjTjpA^as^r|c4TU!y*8aLlGH}T-vYJ&aQ&(C20PrH(2iQaKg@T` z!rehHjJq0)=$or{<;r?jUG=gRVurEGQCo*I9IiqrREW0QDD%=ze~U95oNe`WcXkHC z!KiFU%zueG-w-pINLNxBCMn18qYMyEe+NE|7^LmLp-}1|4@!@1kr5;t72ha{Au_z^W!UEgvv5UHoFL>B7!Q8{TAiB=gt ztR2K|Nf=g)R*u>;L@U-1^aQ|4A`6=tOMa3#eEtTdu*z@)^+YLVL^tYj_1;=M9FvJz@Y<6BK6{ zQHS}Tw2!=%R_Up8UDhkIS{6)f#0a6SXrEW?+4aQf>~LB-lJ+gMFHj$FoI-v=bV_#> z4Lx10lt?`dF%D%N)~TgX44GJY5}sm3CfTy0 z{$S`zJbsHlqElz+u|qNM;UnU&P`4n8@Q`4D=%5FN@!dy>K8aM7Is`7MZ@01PWXRkJyw>_3VGN8Ein)Ix^uK5?i*q(jRyncg$P z{!X||vriH69;Cl)bQW`y#J-H=MiD3v+P^e0-kxVaB?;F0ln(Sn!--*D}T$pfv9 z)SfG&hM5EpVeje{T0_`6i4w7MYw`Rh_F0^;VI!*l+_`hVZvEqRSxRBVwkw8?Y>5OL z8Zl@Q@$j9C=yOWdRtY(2_Yujfcy8Se8e2p3Z>&&MS(YzsmB4I6#zeS`~ZLDF%hJI->TPR}?#5C>!3+Af|u5 zu+52OvttD|Wmc~!cU7;bchs&b!%nPSlheq`pQ~Shst2sDaCgxBQ=SUzi0lQ&iX^hq zJQM9TH&#CsdEfy{CH9-}h{Egj$;D(_XttF$rb!m`#GRgq*UD#r?O5Z}^QYMJ=2iu7 z4o@GE{N^u+9Uo%!`OM7UwR6JaY=;$l6CK#U@L~-Z!dV=8Mos6X>B%^qI-HGo^~9lg zTI$5gk#f;)2kqq2sY5G|Y2(kLyZBR7angwBbVlfCClur95FfOQLZ_$c)RZ{0NHQNORuQ=HVd0)zHy#OZ1u=T}gsGCF{{LRW@5 zH(fDoX(SCgTSRN=6UZ)hz?uq@#I1|0oDte>P59`Xmzr#O)bV6_bbMq^h)TiZ`AAjgBrZ4E@@S%} zmKSIUd4m=1usgQUXmp~(0?EsF9vSK(%eSrbcX%$CY3s(;H+JM*;h9B4Nj%B=&sQfl zr`E5+Gp%3qX&{&Nm&E_7`Zb>>Qo8bHS&OX~SeHANl`UOe@31bC%BHFN_1DL$|14`s zB6N-WGpiqbC)TDtJ3n;;70CvI1&BS=lB9mbJb60(;;p*V4N2P{J`l_Hl6Cv5>c;}b z9%$vA8U4_x>Domz(Mh&XiLf7dB|Xf|Wm)8v|8jq~FHAa+*kmMI9!+d*)<}6vX-J9` zRjAiGt#(Pbe+fOwQp$sM_AK2H_J*itTptq;2g#0iC1U)E)UUzU9Vu~EwA!a;V+ucG zNPGL*n|D+A47N~;BuV*Sq{%-xrwtp3cs$-TMH{i2rYy7;;*t2|#bDI4aN&CKt%ijQ zeF1++-!en-S2RNYwDuZ;zoOISFFE-X6{-uLQ`;+HEu&A>Myjtxh06RTLfkq{nZA^D z;(>b?mVl(ec73x%7)Y}I^VE&E)^N`pK5ug4@K=JZ{m7gOkFu~V z#1vHQGKv^&;U;S`1?NA5m@7xm!X|p-R`d;e2S&S+tp9vkXxgmnTSHKO8+GGQ9sgp< zY-aogzp*ZiY*}!DCo3PJzo2TJJ{`>PaZW2k zR}FqRrdB)3p_}m~S$>gN?*+YWd{8fI!;u^8zmu(+8`EQwr7y;Z;c7$=F|b{zbsHfD zZkrO-Ul>_|KeRPXcK$JUuCV9m->qE%8#kDAEDeVMa3_8^qX`O5Qa=1(gDpZmB89kF zHDa(n@fNA+YuThGZj~qxUCGK@%=e}J9;$xUrlzJTGo~+Ea>>-v z${gwB4!_oeWvZJB-@i8 zY_XByROoR-c?v_3TzSPYZw~0{FJ5QR`UuVnf6e(8oj_l?LTrV{$w>cTmud{h?PT=n zSfslpDbHfNSYIZPr_N044ODb~L+9@3T_AeHGSSRN?2#rZ|GDaepffE0g!5fZ#=5a6 zL32chEG>`PF3Hwc*kg^Njtj2nvSF|a9M1kGS-#w_METW2cCcC0{o;~oosMA|yK6|j zbjZxuZ5uY76OYRtLp-kNNY_`CG|Bq&H>a>4fzhAjT!~Ev2iaFHs-#o?(5C zpC8L->a{V}Qm@Ji5?W>`1Cv~R=h@Wl-t`Lo?^c4sC`oVHQdJYxlarCVqvVGAfK|({4l-Ee?-7rggZK#PJ zZRKN?ULpa!6X$N}9O?TF(fPx?m^Z^T^4yGxmoRjn+7M@vRXaMe{x(m}?*(0PV_!litPBO8okL*GxSdAqwU$H)jmKU@0 zo3Nx2^>4X^KtnO335uXE;L+5)Li~xg#FLaa|8fl9PowoOmCidSe>DrcB`eC7 zI})#elPr(#Zx6Aa(9Ngy)9GQ%Tf&(fw{SFpnr$6=JBX%Gyt5=%AMvGx|GEA#-!7h~ zM%5%i|48^iDB1dn{m*E5G5wKEv!zRg3q1Z25i+AVT!UC3e2ZM9!{b6_KoCLC05SMz_4uLmI;aE>Y&$l*$B+I|h z7lkc_f5pVW^e8w{))f?$YbAOJhLh!2=$pce!f&*7hhjI1p>i9I9fDa1IZ1wt#Qu%6 zXzlb;CCx9|Vm~&KJpE#I{@fnK#)-U=pUJu|7PSF-)# z4DA=X>6in3#~?D1O|rfCd5>Y|8+cyp4q?X|Yel~H6%PT_Zz#~)n^+ru&G|>{i;~D6 zyQ(?W`hmV)Nvq7*uU3k)o)p)C)0#f)_=@ix=~tgg+p|;8&zzVe{?*nS3kucqkO|j2 zk#;(R^FwMY@knum^T7pjz999NUVy;?=*a%mH0$!}6|S-xyr{n%hr?;47;1@;oW3uJ z886P5{Ni_(cm+>uVm+eqN_^SHX6^EJ(fVY%eqKO(boCnoURVlrQYDpUFfoZCY)|5O zFn=6OA48(mEIph+uT0nqNy>kom~Wku-@@VerNsX!e#Lz2l>8PA$1f%RPw^|(2TDux z`C+7~=U#Ohv-07vXIT>;a!Xbp#C&KtewBe6ny6sL=rAg#AjWf(MPDGrSDHPwZr@s*&4`@T>2e1G zUJre7A+j(UYF?#17uRM=N%D7*dY)cgk44L+-DCBOuJk^Qx<@R+`d<;CSoKM&#;4Ze z$?;oar~Wpie6F09oX{>Y%SOx5X;wMuidi@(SzrETH5-2I zEPzju)OEMwyXgFgRV)Ju*67KWC;Ahg4xu*c16tIQDwb&RiAGJbJh^|&4?a44o*_1v zP&CIF&g5~H`Af8Tz?Y~b-&@#H5~qRGlLc7IvpFDfXAQqNg5F^;F9B^VtK#9N4NJXNIi zJiQ4?tM)EDSES#i(CmD2^|^?j=N!VmONk~tpM{qT+?^bOM1ZxEn|55H!)TKFdJ%td zTfWbunRYtq%E_zN@f62bk}W^xMgD~A-?;rA!JGCu9%Zu!U(ZYUEl2HPy4W#@+vh3d z8$C(3Cx8CW&$ksu#22gh)H!h_Nk8VpS|gNCQF8Jr8i{=PFL!YH6eX5VwBOO&zVyv} z(d)E+CZw0N{9@*(3FQ~rpZeP80TVvO#2h$!(2Vz@gdY}(LDK^2j$@Mg67wN3jV?cx zrUjxi^w=-l>E`Cim5*OG6$YCIK(bWIFhMhdvUO{%a_~!#y1c_jwr7~UIIT8B>T-9_ z8JG`&f3YA;P>LAUmJG22n5?`C#Q+>BPdqQ+3#UW^(t&|(wdCzp zp`E`_qP`%=p9e?kLkuSrVbbyw8#Y79kE)okyr|s~>%TC@d)4M7%TMts7jU)OgNy%F z1}EA2$_-Q;&8y?*jpDXN(A`_SYllcoI8<^qOqw6jpLG22nG-j}kyA-Jrt}!ItgZZo z-Jv*4nm=J5b^JxAtXRb8IE$ufJn>nqeu1TSUig#dPxL1pe^KdBvDArSR`3Gf&`cy< zzS!U#zI^J`f35O`{g0F%S)LWfZ0M?5Jp@Xu<|Hi-v0;&rpJ=Pdu}RS#l_@=*rbjA= z$?_);U?=1+s<}gnD~h49&7asnNXTDQE~nP&q{|l@0;f~{uv(pT`NH0i{pE}2 zZ*=3g{2~@6q9yb^E}lpJJYU&lQfy4p{0RGUDt_n@RXjgMbiUxs@*@vat_^fA?e^dZ zx-wxE-!*`tizf2zei5(ZBUyRy4|?E7ONJ~T146tYu=^G5Iyz27BPGp`d|(sdN2&6u zS(!Biugamogxn@SUhyx#+N`Y+exsc_(tgoIr7}7`l9d<#GU{;UClne6lW6-T5?Yap zpktLcaMJt=dz4Tl$+1dxQQG&EwHXRQp^>1%N!GWpknGJ68*aJ-%*uRRd_+^6BjU^X zuX&g#`cAr_q<`N%ZWBuE8AOq_)p}%0AldpC(R}!8*T2Hs=I-tcpPm5XPn&4m;|vz3 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  enum  D3D12MA::POOL_FLAGS { D3D12MA::POOL_FLAG_NONE = 0 , D3D12MA::POOL_FLAG_ALGORITHM_LINEAR = 0x1 +, D3D12MA::POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED = 0x2 , D3D12MA::POOL_FLAG_ALGORITHM_MASK = POOL_FLAG_ALGORITHM_LINEAR }  Bit flags to be used with POOL_DESC::Flags. More...
  -enum  D3D12MA::ALLOCATOR_FLAGS { D3D12MA::ALLOCATOR_FLAG_NONE = 0 +enum  D3D12MA::ALLOCATOR_FLAGS {
+  D3D12MA::ALLOCATOR_FLAG_NONE = 0 , D3D12MA::ALLOCATOR_FLAG_SINGLETHREADED = 0x1 , D3D12MA::ALLOCATOR_FLAG_ALWAYS_COMMITTED = 0x2 , D3D12MA::ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED = 0x4 +,
+  D3D12MA::ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED = 0x8 +
}  Bit flags to be used with ALLOCATOR_DESC::Flags. More...
  diff --git a/docs/html/configuration.html b/docs/html/configuration.html index a914bfc..c9a759a 100644 --- a/docs/html/configuration.html +++ b/docs/html/configuration.html @@ -101,15 +101,15 @@

D3D12MA::Allocator* allocator;
HRESULT hr = D3D12MA::CreateAllocator(&allocatorDesc, &allocator);
-
Represents main object of this library initialized for particular ID3D12Device.
Definition: D3D12MemAlloc.h:1055
+
Represents main object of this library initialized for particular ID3D12Device.
Definition: D3D12MemAlloc.h:1067
D3D12MA_API HRESULT CreateAllocator(const ALLOCATOR_DESC *pDesc, Allocator **ppAllocator)
Creates new main D3D12MA::Allocator object and returns it through ppAllocator.
Custom callbacks to CPU memory allocation functions.
Definition: D3D12MemAlloc.h:187
FREE_FUNC_PTR pFree
Dellocation function.
Definition: D3D12MemAlloc.h:191
ALLOCATE_FUNC_PTR pAllocate
Allocation function.
Definition: D3D12MemAlloc.h:189
-
Parameters of created Allocator object. To be used with CreateAllocator().
Definition: D3D12MemAlloc.h:1016
-
const ALLOCATION_CALLBACKS * pAllocationCallbacks
Custom CPU memory allocation callbacks. Optional.
Definition: D3D12MemAlloc.h:1036
-
IDXGIAdapter * pAdapter
Definition: D3D12MemAlloc.h:1042
-
ID3D12Device * pDevice
Definition: D3D12MemAlloc.h:1024
+
Parameters of created Allocator object. To be used with CreateAllocator().
Definition: D3D12MemAlloc.h:1028
+
const ALLOCATION_CALLBACKS * pAllocationCallbacks
Custom CPU memory allocation callbacks. Optional.
Definition: D3D12MemAlloc.h:1048
+
IDXGIAdapter * pAdapter
Definition: D3D12MemAlloc.h:1054
+
ID3D12Device * pDevice
Definition: D3D12MemAlloc.h:1036

Debug margins

By default, allocations are laid out in memory blocks next to each other if possible (considering required alignment returned by ID3D12Device::GetResourceAllocationInfo).

diff --git a/docs/html/defragmentation.html b/docs/html/defragmentation.html index 2855492..1909bf0 100644 --- a/docs/html/defragmentation.html +++ b/docs/html/defragmentation.html @@ -127,19 +127,19 @@
defragCtx->Release();
void SetResource(ID3D12Resource *pResource)
Releases the resource currently pointed by the allocation (if any), sets it to new one,...
UINT64 GetOffset() const
Returns offset in bytes from the start of memory heap.
-
ID3D12Resource * GetResource() const
Returns D3D12 resource associated with this object.
Definition: D3D12MemAlloc.h:493
+
ID3D12Resource * GetResource() const
Returns D3D12 resource associated with this object.
Definition: D3D12MemAlloc.h:490
ID3D12Heap * GetHeap() const
Returns memory heap that the resource is created in.
-
Represents defragmentation process in progress.
Definition: D3D12MemAlloc.h:773
+
Represents defragmentation process in progress.
Definition: D3D12MemAlloc.h:769
HRESULT BeginPass(DEFRAGMENTATION_PASS_MOVE_INFO *pPassInfo)
Starts single defragmentation pass.
HRESULT EndPass(DEFRAGMENTATION_PASS_MOVE_INFO *pPassInfo)
Ends single defragmentation pass.
-
@ DEFRAGMENTATION_FLAG_ALGORITHM_FAST
Definition: D3D12MemAlloc.h:653
-
Parameters for defragmentation.
Definition: D3D12MemAlloc.h:675
-
DEFRAGMENTATION_FLAGS Flags
Flags.
Definition: D3D12MemAlloc.h:677
-
Allocation * pSrcAllocation
Allocation that should be moved.
Definition: D3D12MemAlloc.h:711
-
Allocation * pDstTmpAllocation
Temporary allocation pointing to destination memory that will replace pSrcAllocation.
Definition: D3D12MemAlloc.h:719
-
Parameters for incremental defragmentation steps.
Definition: D3D12MemAlloc.h:727
-
DEFRAGMENTATION_MOVE * pMoves
Array of moves to be performed by the user in the current defragmentation pass.
Definition: D3D12MemAlloc.h:751
-
UINT32 MoveCount
Number of elements in the pMoves array.
Definition: D3D12MemAlloc.h:729
+
@ DEFRAGMENTATION_FLAG_ALGORITHM_FAST
Definition: D3D12MemAlloc.h:649
+
Parameters for defragmentation.
Definition: D3D12MemAlloc.h:671
+
DEFRAGMENTATION_FLAGS Flags
Flags.
Definition: D3D12MemAlloc.h:673
+
Allocation * pSrcAllocation
Allocation that should be moved.
Definition: D3D12MemAlloc.h:707
+
Allocation * pDstTmpAllocation
Temporary allocation pointing to destination memory that will replace pSrcAllocation.
Definition: D3D12MemAlloc.h:715
+
Parameters for incremental defragmentation steps.
Definition: D3D12MemAlloc.h:723
+
DEFRAGMENTATION_MOVE * pMoves
Array of moves to be performed by the user in the current defragmentation pass.
Definition: D3D12MemAlloc.h:747
+
UINT32 MoveCount
Number of elements in the pMoves array.
Definition: D3D12MemAlloc.h:725

Although functions like D3D12MA::Allocator::CreateResource() create an allocation and a buffer/texture at once, these are just a shortcut for allocating memory and creating a placed resource. Defragmentation works on memory allocations only. You must handle the rest manually. Defragmentation is an iterative process that should repreat "passes" as long as related functions return S_FALSE not S_OK. In each pass:

  1. D3D12MA::DefragmentationContext::BeginPass() function call:
      diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html deleted file mode 100644 index 70e1338..0000000 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: D:/PROJECTS/D3D12 Memory Allocator/REPO/src Directory Reference - - - - - - - - - -
      -
      - - - - - - -
      -
      Direct3D 12 Memory Allocator -
      -
      -
      - - - - - - - - -
      -
      - - -
      - -
      - - -
      -
      -
      src Directory Reference
      -
      -
      - - - - -

      -Files

      file  D3D12MemAlloc.h
       
      -
      - - - - diff --git a/docs/html/index.html b/docs/html/index.html index 07c1149..7577405 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -65,7 +65,7 @@
      D3D12 Memory Allocator
      -

      Version 2.0.0-development (2021-07-26)

      +

      Version 2.0.0 (2022-03-25)

      Copyright (c) 2019-2022 Advanced Micro Devices, Inc. All rights reserved.
      License: MIT

      Documentation of all members: D3D12MemAlloc.h

      diff --git a/docs/html/namespace_d3_d12_m_a.html b/docs/html/namespace_d3_d12_m_a.html index 3ef2b16..1f72f2f 100644 --- a/docs/html/namespace_d3_d12_m_a.html +++ b/docs/html/namespace_d3_d12_m_a.html @@ -185,14 +185,19 @@   enum  POOL_FLAGS { POOL_FLAG_NONE = 0 , POOL_FLAG_ALGORITHM_LINEAR = 0x1 +, POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED = 0x2 , POOL_FLAG_ALGORITHM_MASK = POOL_FLAG_ALGORITHM_LINEAR }  Bit flags to be used with POOL_DESC::Flags. More...
        -enum  ALLOCATOR_FLAGS { ALLOCATOR_FLAG_NONE = 0 +enum  ALLOCATOR_FLAGS {
      +  ALLOCATOR_FLAG_NONE = 0 , ALLOCATOR_FLAG_SINGLETHREADED = 0x1 , ALLOCATOR_FLAG_ALWAYS_COMMITTED = 0x2 , ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED = 0x4 +,
      +  ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED = 0x8 +
      }  Bit flags to be used with ALLOCATOR_DESC::Flags. More...
        @@ -302,8 +307,7 @@

      D3D12MA::ALLOCATION_FLAG_COMMITTED and D3D12MA::ALLOCATION_FLAG_NEVER_ALLOCATE at the same time. It makes no sense.

      -ALLOCATION_FLAG_WITHIN_BUDGET 

      Create allocation only if additional memory required for it, if any, won't exceed memory budget. Otherwise return E_OUTOFMEMORY.

      -
      Warning
      Currently this feature is not fully implemented yet.
      +ALLOCATION_FLAG_WITHIN_BUDGET 

      Create allocation only if additional memory required for it, if any, won't exceed memory budget. Otherwise return E_OUTOFMEMORY.

      ALLOCATION_FLAG_UPPER_ADDRESS 

      Allocation will be created from upper stack in a double stack pool.

      This flag is only allowed for custom pools created with POOL_FLAG_ALGORITHM_LINEAR flag.

      @@ -353,6 +357,9 @@

      poolDesc.heapFlags |= D3D12_HEAP_FLAG_CREATE_NOT_ZEROED;

      Only avaiable if ID3D12Device8 is present. Otherwise, the flag is ignored.

      +ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED 

      Optimization, allocate MSAA textures as committed resources always.

      +

      Specify this flag to create MSAA textures with implicit heaps, as if they were created with flag ALLOCATION_FLAG_COMMITTED. Usage of this flags enables all default pools to create its heaps on smaller alignment not suitable for MSAA textures.

      +
      @@ -427,6 +434,9 @@

      Linear allocation algorithm.

      +POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED 

      Optimization, allocate MSAA textures as committed resources always.

      +

      Specify this flag to create MSAA textures with implicit heaps, as if they were created with flag ALLOCATION_FLAG_COMMITTED. Usage of this flags enables pool to create its heaps on smaller alignment not suitable for MSAA textures.

      + POOL_FLAG_ALGORITHM_MASK  diff --git a/docs/html/namespacemembers.html b/docs/html/namespacemembers.html index 1a98292..7c0836c 100644 --- a/docs/html/namespacemembers.html +++ b/docs/html/namespacemembers.html @@ -81,6 +81,7 @@

      - a -

      • ALLOCATION_FLAGS : D3D12MA
      • ALLOCATOR_FLAG_ALWAYS_COMMITTED : D3D12MA
      • ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED : D3D12MA
      • +
      • ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED : D3D12MA
      • ALLOCATOR_FLAG_NONE : D3D12MA
      • ALLOCATOR_FLAG_SINGLETHREADED : D3D12MA
      • ALLOCATOR_FLAGS : D3D12MA
      • @@ -115,6 +116,7 @@

        - f -

          - p -

          • POOL_FLAG_ALGORITHM_LINEAR : D3D12MA
          • POOL_FLAG_ALGORITHM_MASK : D3D12MA
          • +
          • POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED : D3D12MA
          • POOL_FLAG_NONE : D3D12MA
          • POOL_FLAGS : D3D12MA
          diff --git a/docs/html/namespacemembers_eval.html b/docs/html/namespacemembers_eval.html index 9447ea3..976b856 100644 --- a/docs/html/namespacemembers_eval.html +++ b/docs/html/namespacemembers_eval.html @@ -79,6 +79,7 @@

          - a -

          • ALLOCATION_FLAG_WITHIN_BUDGET : D3D12MA
          • ALLOCATOR_FLAG_ALWAYS_COMMITTED : D3D12MA
          • ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED : D3D12MA
          • +
          • ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED : D3D12MA
          • ALLOCATOR_FLAG_NONE : D3D12MA
          • ALLOCATOR_FLAG_SINGLETHREADED : D3D12MA
          @@ -98,6 +99,7 @@

          - d -

            - p -

            • POOL_FLAG_ALGORITHM_LINEAR : D3D12MA
            • POOL_FLAG_ALGORITHM_MASK : D3D12MA
            • +
            • POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED : D3D12MA
            • POOL_FLAG_NONE : D3D12MA
            diff --git a/docs/html/namespacemembers_vars.html b/docs/html/namespacemembers_vars.html deleted file mode 100644 index b789fa4..0000000 --- a/docs/html/namespacemembers_vars.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: Namespace Members - - - - - - - - - -
            -
            - - - - - - -
            -
            Direct3D 12 Memory Allocator -
            -
            -
            - - - - - - - -
            - -
            -
            - - -
            - -
            - -
            -
            - - - - diff --git a/docs/html/quick_start.html b/docs/html/quick_start.html index 6aec9de..e9a2ce8 100644 --- a/docs/html/quick_start.html +++ b/docs/html/quick_start.html @@ -90,11 +90,11 @@
            D3D12MA::Allocator* allocator;
            HRESULT hr = D3D12MA::CreateAllocator(&allocatorDesc, &allocator);
            -
            Represents main object of this library initialized for particular ID3D12Device.
            Definition: D3D12MemAlloc.h:1055
            +
            Represents main object of this library initialized for particular ID3D12Device.
            Definition: D3D12MemAlloc.h:1067
            D3D12MA_API HRESULT CreateAllocator(const ALLOCATOR_DESC *pDesc, Allocator **ppAllocator)
            Creates new main D3D12MA::Allocator object and returns it through ppAllocator.
            -
            Parameters of created Allocator object. To be used with CreateAllocator().
            Definition: D3D12MemAlloc.h:1016
            -
            IDXGIAdapter * pAdapter
            Definition: D3D12MemAlloc.h:1042
            -
            ID3D12Device * pDevice
            Definition: D3D12MemAlloc.h:1024
            +
            Parameters of created Allocator object. To be used with CreateAllocator().
            Definition: D3D12MemAlloc.h:1028
            +
            IDXGIAdapter * pAdapter
            Definition: D3D12MemAlloc.h:1054
            +
            ID3D12Device * pDevice
            Definition: D3D12MemAlloc.h:1036

      (5.) Right before destroying the D3D12 device, destroy the allocator object.

      Objects of this library must be destroyed by calling Release method. They are somewhat compatible with COM: they implement IUnknown interface with its virtual methods: AddRef, Release, QueryInterface, and they are reference-counted internally. You can use smart pointers designed for COM with objects of this library - e.g. CComPtr or Microsoft::WRL::ComPtr. The reference counter is thread-safe. QueryInterface method supports only IUnknown, as classes of this library don't define their own GUIDs.

      allocator->Release();
      @@ -128,10 +128,10 @@
      NULL,
      &allocation,
      IID_PPV_ARGS(&resource));
      -
      Represents single memory allocation.
      Definition: D3D12MemAlloc.h:464
      +
      Represents single memory allocation.
      Definition: D3D12MemAlloc.h:461
      HRESULT CreateResource(const ALLOCATION_DESC *pAllocDesc, const D3D12_RESOURCE_DESC *pResourceDesc, D3D12_RESOURCE_STATES InitialResourceState, const D3D12_CLEAR_VALUE *pOptimizedClearValue, Allocation **ppAllocation, REFIID riidResource, void **ppvResource)
      Allocates memory and creates a D3D12 resource (buffer or texture). This is the main allocation functi...
      -
      Parameters of created D3D12MA::Allocation object. To be used with Allocator::CreateResource.
      Definition: D3D12MemAlloc.h:280
      -
      D3D12_HEAP_TYPE HeapType
      The type of memory heap where the new allocation should be placed.
      Definition: D3D12MemAlloc.h:289
      +
      Parameters of created D3D12MA::Allocation object. To be used with Allocator::CreateResource.
      Definition: D3D12MemAlloc.h:277
      +
      D3D12_HEAP_TYPE HeapType
      The type of memory heap where the new allocation should be placed.
      Definition: D3D12MemAlloc.h:286

      You need to remember both resource and allocation objects and destroy them separately when no longer needed.

      allocation->Release();
      resource->Release();
      diff --git a/docs/html/resource_aliasing.html b/docs/html/resource_aliasing.html index 9a30e55..9b6d9ec 100644 --- a/docs/html/resource_aliasing.html +++ b/docs/html/resource_aliasing.html @@ -144,11 +144,11 @@
      res2->Release();
      res1->Release();
      alloc->Release();
      -
      Represents single memory allocation.
      Definition: D3D12MemAlloc.h:464
      +
      Represents single memory allocation.
      Definition: D3D12MemAlloc.h:461
      ID3D12Heap * GetHeap() const
      Returns memory heap that the resource is created in.
      -
      Parameters of created D3D12MA::Allocation object. To be used with Allocator::CreateResource.
      Definition: D3D12MemAlloc.h:280
      -
      D3D12_HEAP_FLAGS ExtraHeapFlags
      Additional heap flags to be used when allocating memory.
      Definition: D3D12MemAlloc.h:305
      -
      D3D12_HEAP_TYPE HeapType
      The type of memory heap where the new allocation should be placed.
      Definition: D3D12MemAlloc.h:289
      +
      Parameters of created D3D12MA::Allocation object. To be used with Allocator::CreateResource.
      Definition: D3D12MemAlloc.h:277
      +
      D3D12_HEAP_FLAGS ExtraHeapFlags
      Additional heap flags to be used when allocating memory.
      Definition: D3D12MemAlloc.h:302
      +
      D3D12_HEAP_TYPE HeapType
      The type of memory heap where the new allocation should be placed.
      Definition: D3D12MemAlloc.h:286

      Remember that using resouces that alias in memory requires proper synchronization. You need to issue a special barrier of type D3D12_RESOURCE_BARRIER_TYPE_ALIASING. You also need to treat a resource after aliasing as uninitialized - containing garbage data. For example, if you use res1 and then want to use res2, you need to first initialize res2 using either Clear, Discard, or Copy to the entire resource.

      Additional considerations:

        diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js index e8cd098..91fcc20 100644 --- a/docs/html/search/all_0.js +++ b/docs/html/search/all_0.js @@ -29,10 +29,10 @@ var searchData= ['allocator_5fdesc_26',['ALLOCATOR_DESC',['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_o_r___d_e_s_c.html',1,'D3D12MA']]], ['allocator_5fflag_5falways_5fcommitted_27',['ALLOCATOR_FLAG_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a068863dc0538ff4ea153b046b31e94fb',1,'D3D12MA']]], ['allocator_5fflag_5fdefault_5fpools_5fnot_5fzeroed_28',['ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916ae7dc7ab9168148281ebfe1586f554335',1,'D3D12MA']]], - ['allocator_5fflag_5fnone_29',['ALLOCATOR_FLAG_NONE',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a2fb30967b492c27823a80b5de3aea26f',1,'D3D12MA']]], - ['allocator_5fflag_5fsinglethreaded_30',['ALLOCATOR_FLAG_SINGLETHREADED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a1b06bb21df006f76a9ed1bc41838bc52',1,'D3D12MA']]], - ['allocator_5fflags_31',['ALLOCATOR_FLAGS',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916',1,'D3D12MA']]], - ['allochandle_32',['AllocHandle',['../struct_d3_d12_m_a_1_1_virtual_allocation.html#a5d3166cf1f284fbbea4d0b169c4dba13',1,'D3D12MA::VirtualAllocation']]], + ['allocator_5fflag_5fmsaa_5ftextures_5falways_5fcommitted_29',['ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916adfbfd20d716f2a46f74d6226056fef1e',1,'D3D12MA']]], + ['allocator_5fflag_5fnone_30',['ALLOCATOR_FLAG_NONE',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a2fb30967b492c27823a80b5de3aea26f',1,'D3D12MA']]], + ['allocator_5fflag_5fsinglethreaded_31',['ALLOCATOR_FLAG_SINGLETHREADED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a1b06bb21df006f76a9ed1bc41838bc52',1,'D3D12MA']]], + ['allocator_5fflags_32',['ALLOCATOR_FLAGS',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916',1,'D3D12MA']]], ['allochandle_33',['allocHandle',['../class_d3_d12_m_a_1_1_allocation.html#a5c38846905b1ca0ff228c6081f2fc20c',1,'D3D12MA::Allocation']]], - ['allochandle_34',['AllocHandle',['../namespace_d3_d12_m_a.html#a15e349adce86a40e0417d405aef1af80',1,'D3D12MA']]] + ['allochandle_34',['AllocHandle',['../struct_d3_d12_m_a_1_1_virtual_allocation.html#a5d3166cf1f284fbbea4d0b169c4dba13',1,'D3D12MA::VirtualAllocation::AllocHandle()'],['../namespace_d3_d12_m_a.html#a15e349adce86a40e0417d405aef1af80',1,'D3D12MA::AllocHandle()']]] ]; diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js index d93dac8..18811cb 100644 --- a/docs/html/search/all_d.js +++ b/docs/html/search/all_d.js @@ -11,11 +11,12 @@ var searchData= ['pool_5fdesc_8',['POOL_DESC',['../struct_d3_d12_m_a_1_1_p_o_o_l___d_e_s_c.html',1,'D3D12MA']]], ['pool_5fflag_5falgorithm_5flinear_9',['POOL_FLAG_ALGORITHM_LINEAR',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1aa37a0103f511954ea42a1d0bba286b6a',1,'D3D12MA']]], ['pool_5fflag_5falgorithm_5fmask_10',['POOL_FLAG_ALGORITHM_MASK',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1aec9d4939b8cc5438545b9df840b5f5f7',1,'D3D12MA']]], - ['pool_5fflag_5fnone_11',['POOL_FLAG_NONE',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1a5d8dc91add3423140809a550c7224d02',1,'D3D12MA']]], - ['pool_5fflags_12',['POOL_FLAGS',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1',1,'D3D12MA']]], - ['pprivatedata_13',['pPrivateData',['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_i_o_n___c_a_l_l_b_a_c_k_s.html#a98173cc9e239a84c2ce369854966e1e3',1,'D3D12MA::ALLOCATION_CALLBACKS::pPrivateData()'],['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_i_o_n___d_e_s_c.html#ac638dd987f1326e2fdab91892d994d35',1,'D3D12MA::ALLOCATION_DESC::pPrivateData()'],['../struct_d3_d12_m_a_1_1_v_i_r_t_u_a_l___a_l_l_o_c_a_t_i_o_n___d_e_s_c.html#aa1281297154e3823e98a7cc7e23b5d6b',1,'D3D12MA::VIRTUAL_ALLOCATION_DESC::pPrivateData()'],['../struct_d3_d12_m_a_1_1_v_i_r_t_u_a_l___a_l_l_o_c_a_t_i_o_n___i_n_f_o.html#a05c258ea40ea47667ddcc395b13a47a5',1,'D3D12MA::VIRTUAL_ALLOCATION_INFO::pPrivateData()']]], - ['pprotectedsession_14',['pProtectedSession',['../struct_d3_d12_m_a_1_1_p_o_o_l___d_e_s_c.html#a475840ec05c19732c8d5aa8bb27270f4',1,'D3D12MA::POOL_DESC']]], - ['preferredblocksize_15',['PreferredBlockSize',['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_o_r___d_e_s_c.html#a97149c9559deae943c2cfa49aeeff8a6',1,'D3D12MA::ALLOCATOR_DESC']]], - ['prev_16',['prev',['../class_d3_d12_m_a_1_1_allocation.html#adc3ac89758a915a409e047f9b89aa160',1,'D3D12MA::Allocation']]], - ['psrcallocation_17',['pSrcAllocation',['../struct_d3_d12_m_a_1_1_d_e_f_r_a_g_m_e_n_t_a_t_i_o_n___m_o_v_e.html#a4946b874c958a71c21fac25b515cf5f7',1,'D3D12MA::DEFRAGMENTATION_MOVE']]] + ['pool_5fflag_5fmsaa_5ftextures_5falways_5fcommitted_11',['POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1acc379a89755438c0f76667783b778baa',1,'D3D12MA']]], + ['pool_5fflag_5fnone_12',['POOL_FLAG_NONE',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1a5d8dc91add3423140809a550c7224d02',1,'D3D12MA']]], + ['pool_5fflags_13',['POOL_FLAGS',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1',1,'D3D12MA']]], + ['pprivatedata_14',['pPrivateData',['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_i_o_n___c_a_l_l_b_a_c_k_s.html#a98173cc9e239a84c2ce369854966e1e3',1,'D3D12MA::ALLOCATION_CALLBACKS::pPrivateData()'],['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_i_o_n___d_e_s_c.html#ac638dd987f1326e2fdab91892d994d35',1,'D3D12MA::ALLOCATION_DESC::pPrivateData()'],['../struct_d3_d12_m_a_1_1_v_i_r_t_u_a_l___a_l_l_o_c_a_t_i_o_n___d_e_s_c.html#aa1281297154e3823e98a7cc7e23b5d6b',1,'D3D12MA::VIRTUAL_ALLOCATION_DESC::pPrivateData()'],['../struct_d3_d12_m_a_1_1_v_i_r_t_u_a_l___a_l_l_o_c_a_t_i_o_n___i_n_f_o.html#a05c258ea40ea47667ddcc395b13a47a5',1,'D3D12MA::VIRTUAL_ALLOCATION_INFO::pPrivateData()']]], + ['pprotectedsession_15',['pProtectedSession',['../struct_d3_d12_m_a_1_1_p_o_o_l___d_e_s_c.html#a475840ec05c19732c8d5aa8bb27270f4',1,'D3D12MA::POOL_DESC']]], + ['preferredblocksize_16',['PreferredBlockSize',['../struct_d3_d12_m_a_1_1_a_l_l_o_c_a_t_o_r___d_e_s_c.html#a97149c9559deae943c2cfa49aeeff8a6',1,'D3D12MA::ALLOCATOR_DESC']]], + ['prev_17',['prev',['../class_d3_d12_m_a_1_1_allocation.html#adc3ac89758a915a409e047f9b89aa160',1,'D3D12MA::Allocation']]], + ['psrcallocation_18',['pSrcAllocation',['../struct_d3_d12_m_a_1_1_d_e_f_r_a_g_m_e_n_t_a_t_i_o_n___m_o_v_e.html#a4946b874c958a71c21fac25b515cf5f7',1,'D3D12MA::DEFRAGMENTATION_MOVE']]] ]; diff --git a/docs/html/search/enumvalues_0.js b/docs/html/search/enumvalues_0.js index ac4038d..8b1ee43 100644 --- a/docs/html/search/enumvalues_0.js +++ b/docs/html/search/enumvalues_0.js @@ -14,6 +14,7 @@ var searchData= ['allocation_5fflag_5fwithin_5fbudget_11',['ALLOCATION_FLAG_WITHIN_BUDGET',['../namespace_d3_d12_m_a.html#abbad31a7e0b3d09d77f3fb704b77645eab374417c1f22a833ead268a6c21424e6',1,'D3D12MA']]], ['allocator_5fflag_5falways_5fcommitted_12',['ALLOCATOR_FLAG_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a068863dc0538ff4ea153b046b31e94fb',1,'D3D12MA']]], ['allocator_5fflag_5fdefault_5fpools_5fnot_5fzeroed_13',['ALLOCATOR_FLAG_DEFAULT_POOLS_NOT_ZEROED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916ae7dc7ab9168148281ebfe1586f554335',1,'D3D12MA']]], - ['allocator_5fflag_5fnone_14',['ALLOCATOR_FLAG_NONE',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a2fb30967b492c27823a80b5de3aea26f',1,'D3D12MA']]], - ['allocator_5fflag_5fsinglethreaded_15',['ALLOCATOR_FLAG_SINGLETHREADED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a1b06bb21df006f76a9ed1bc41838bc52',1,'D3D12MA']]] + ['allocator_5fflag_5fmsaa_5ftextures_5falways_5fcommitted_14',['ALLOCATOR_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916adfbfd20d716f2a46f74d6226056fef1e',1,'D3D12MA']]], + ['allocator_5fflag_5fnone_15',['ALLOCATOR_FLAG_NONE',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a2fb30967b492c27823a80b5de3aea26f',1,'D3D12MA']]], + ['allocator_5fflag_5fsinglethreaded_16',['ALLOCATOR_FLAG_SINGLETHREADED',['../namespace_d3_d12_m_a.html#ad5ae5a5e42b878f2e18ab5d1fbfb9916a1b06bb21df006f76a9ed1bc41838bc52',1,'D3D12MA']]] ]; diff --git a/docs/html/search/enumvalues_2.js b/docs/html/search/enumvalues_2.js index 6e3a53d..10b4213 100644 --- a/docs/html/search/enumvalues_2.js +++ b/docs/html/search/enumvalues_2.js @@ -2,5 +2,6 @@ var searchData= [ ['pool_5fflag_5falgorithm_5flinear_0',['POOL_FLAG_ALGORITHM_LINEAR',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1aa37a0103f511954ea42a1d0bba286b6a',1,'D3D12MA']]], ['pool_5fflag_5falgorithm_5fmask_1',['POOL_FLAG_ALGORITHM_MASK',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1aec9d4939b8cc5438545b9df840b5f5f7',1,'D3D12MA']]], - ['pool_5fflag_5fnone_2',['POOL_FLAG_NONE',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1a5d8dc91add3423140809a550c7224d02',1,'D3D12MA']]] + ['pool_5fflag_5fmsaa_5ftextures_5falways_5fcommitted_2',['POOL_FLAG_MSAA_TEXTURES_ALWAYS_COMMITTED',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1acc379a89755438c0f76667783b778baa',1,'D3D12MA']]], + ['pool_5fflag_5fnone_3',['POOL_FLAG_NONE',['../namespace_d3_d12_m_a.html#a919d8545365d6b7209a964f2b99936d1a5d8dc91add3423140809a550c7224d02',1,'D3D12MA']]] ]; diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js index 733f671..6a95675 100644 --- a/docs/html/search/variables_0.js +++ b/docs/html/search/variables_0.js @@ -6,6 +6,6 @@ var searchData= ['allocationsizemax_3',['AllocationSizeMax',['../struct_d3_d12_m_a_1_1_detailed_statistics.html#a2f47015bebf9a30ce221aef88fe11991',1,'D3D12MA::DetailedStatistics']]], ['allocationsizemin_4',['AllocationSizeMin',['../struct_d3_d12_m_a_1_1_detailed_statistics.html#a187e5562265c3daa87c15d54f1396a6a',1,'D3D12MA::DetailedStatistics']]], ['allocationsmoved_5',['AllocationsMoved',['../struct_d3_d12_m_a_1_1_d_e_f_r_a_g_m_e_n_t_a_t_i_o_n___s_t_a_t_s.html#a708fa1b14c35da8d5d6abd4a457ef0c2',1,'D3D12MA::DEFRAGMENTATION_STATS']]], - ['allochandle_6',['AllocHandle',['../struct_d3_d12_m_a_1_1_virtual_allocation.html#a5d3166cf1f284fbbea4d0b169c4dba13',1,'D3D12MA::VirtualAllocation']]], - ['allochandle_7',['allocHandle',['../class_d3_d12_m_a_1_1_allocation.html#a5c38846905b1ca0ff228c6081f2fc20c',1,'D3D12MA::Allocation']]] + ['allochandle_6',['allocHandle',['../class_d3_d12_m_a_1_1_allocation.html#a5c38846905b1ca0ff228c6081f2fc20c',1,'D3D12MA::Allocation']]], + ['allochandle_7',['AllocHandle',['../struct_d3_d12_m_a_1_1_virtual_allocation.html#a5d3166cf1f284fbbea4d0b169c4dba13',1,'D3D12MA::VirtualAllocation']]] ]; diff --git a/docs/html/statistics.html b/docs/html/statistics.html index cece1fb..b88f1ba 100644 --- a/docs/html/statistics.html +++ b/docs/html/statistics.html @@ -85,9 +85,9 @@

        printf("D3D12 reports total usage %llu B with budget %llu B.\n",
        localBudget.UsageBytes,
        localBudget.BudgetBytes);
        -
        Statistics of current memory usage and available budget for a specific memory segment group.
        Definition: D3D12MemAlloc.h:415
        -
        UINT64 BudgetBytes
        Estimated amount of memory available to the program.
        Definition: D3D12MemAlloc.h:438
        -
        UINT64 UsageBytes
        Estimated current memory usage of the program.
        Definition: D3D12MemAlloc.h:427
        +
        Statistics of current memory usage and available budget for a specific memory segment group.
        Definition: D3D12MemAlloc.h:412
        +
        UINT64 BudgetBytes
        Estimated amount of memory available to the program.
        Definition: D3D12MemAlloc.h:435
        +
        UINT64 UsageBytes
        Estimated current memory usage of the program.
        Definition: D3D12MemAlloc.h:424

        You can query for more detailed statistics per heap type, memory segment group, and totals, including minimum and maximum allocation size and unused range size, by calling function D3D12MA::Allocator::CalculateStatistics() and inspecting structure D3D12MA::TotalStatistics. This function is slower though, as it has to traverse all the internal data structures, so it should be used only for debugging purposes.

        You can query for statistics of a custom pool using function D3D12MA::Pool::GetStatistics() or D3D12MA::Pool::CalculateStatistics().

        You can query for information about a specific allocation using functions of the D3D12MA::Allocation class, e.g. GetSize(), GetOffset(), GetHeap().

        diff --git a/docs/html/struct_d3_d12_m_a_1_1_stat_info-members.html b/docs/html/struct_d3_d12_m_a_1_1_stat_info-members.html deleted file mode 100644 index e59ab58..0000000 --- a/docs/html/struct_d3_d12_m_a_1_1_stat_info-members.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: Member List - - - - - - - - - -
        -
        - - - - - - -
        -
        Direct3D 12 Memory Allocator -
        -
        -
        - - - - - - - - -
        -
        - - -
        - -
        - - -
        -
        -
        D3D12MA::StatInfo Member List
        -
        - - - - - diff --git a/docs/html/struct_d3_d12_m_a_1_1_stat_info.html b/docs/html/struct_d3_d12_m_a_1_1_stat_info.html deleted file mode 100644 index c410c75..0000000 --- a/docs/html/struct_d3_d12_m_a_1_1_stat_info.html +++ /dev/null @@ -1,287 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: D3D12MA::StatInfo Struct Reference - - - - - - - - - -
        -
        - - - - - - -
        -
        Direct3D 12 Memory Allocator -
        -
        -
        - - - - - - - - -
        -
        - - -
        - -
        - - -
        -
        - -
        D3D12MA::StatInfo Struct Reference
        -
        -
        - -

        Calculated statistics of memory usage in entire allocator. - More...

        - -

        #include <D3D12MemAlloc.h>

        - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

        -Public Attributes

        UINT BlockCount
         Number of memory blocks (heaps) allocated. More...
         
        UINT AllocationCount
         Number of D3D12MA::Allocation objects allocated. More...
         
        UINT UnusedRangeCount
         Number of free ranges of memory between allocations. More...
         
        UINT64 UsedBytes
         Total number of bytes occupied by all allocations. More...
         
        UINT64 UnusedBytes
         Total number of bytes occupied by unused ranges. More...
         
        UINT64 AllocationSizeMin
         
        UINT64 AllocationSizeAvg
         
        UINT64 AllocationSizeMax
         
        UINT64 UnusedRangeSizeMin
         
        UINT64 UnusedRangeSizeAvg
         
        UINT64 UnusedRangeSizeMax
         
        -

        Detailed Description

        -

        Calculated statistics of memory usage in entire allocator.

        -

        Member Data Documentation

        - -

        ◆ AllocationCount

        - -
        -
        - - - - -
        UINT D3D12MA::StatInfo::AllocationCount
        -
        - -

        Number of D3D12MA::Allocation objects allocated.

        - -
        -
        - -

        ◆ AllocationSizeAvg

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::AllocationSizeAvg
        -
        - -
        -
        - -

        ◆ AllocationSizeMax

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::AllocationSizeMax
        -
        - -
        -
        - -

        ◆ AllocationSizeMin

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::AllocationSizeMin
        -
        - -
        -
        - -

        ◆ BlockCount

        - -
        -
        - - - - -
        UINT D3D12MA::StatInfo::BlockCount
        -
        - -

        Number of memory blocks (heaps) allocated.

        - -
        -
        - -

        ◆ UnusedBytes

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::UnusedBytes
        -
        - -

        Total number of bytes occupied by unused ranges.

        - -
        -
        - -

        ◆ UnusedRangeCount

        - -
        -
        - - - - -
        UINT D3D12MA::StatInfo::UnusedRangeCount
        -
        - -

        Number of free ranges of memory between allocations.

        - -
        -
        - -

        ◆ UnusedRangeSizeAvg

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::UnusedRangeSizeAvg
        -
        - -
        -
        - -

        ◆ UnusedRangeSizeMax

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::UnusedRangeSizeMax
        -
        - -
        -
        - -

        ◆ UnusedRangeSizeMin

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::UnusedRangeSizeMin
        -
        - -
        -
        - -

        ◆ UsedBytes

        - -
        -
        - - - - -
        UINT64 D3D12MA::StatInfo::UsedBytes
        -
        - -

        Total number of bytes occupied by all allocations.

        - -
        -
        -
        The documentation for this struct was generated from the following file: -
        - - - - diff --git a/docs/html/struct_d3_d12_m_a_1_1_stats-members.html b/docs/html/struct_d3_d12_m_a_1_1_stats-members.html deleted file mode 100644 index 7bdab15..0000000 --- a/docs/html/struct_d3_d12_m_a_1_1_stats-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: Member List - - - - - - - - - -
        -
        - - - - - - -
        -
        Direct3D 12 Memory Allocator -
        -
        -
        - - - - - - - - -
        -
        - - -
        - -
        - - -
        -
        -
        D3D12MA::Stats Member List
        -
        -
        - -

        This is the complete list of members for D3D12MA::Stats, including all inherited members.

        - - - -
        HeapTypeD3D12MA::Stats
        TotalD3D12MA::Stats
        - - - - diff --git a/docs/html/struct_d3_d12_m_a_1_1_stats.html b/docs/html/struct_d3_d12_m_a_1_1_stats.html deleted file mode 100644 index 6b0c2d6..0000000 --- a/docs/html/struct_d3_d12_m_a_1_1_stats.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - -Direct3D 12 Memory Allocator: D3D12MA::Stats Struct Reference - - - - - - - - - -
        -
        - - - - - - -
        -
        Direct3D 12 Memory Allocator -
        -
        -
        - - - - - - - - -
        -
        - - -
        - -
        - - -
        -
        - -
        D3D12MA::Stats Struct Reference
        -
        -
        - -

        General statistics from the current state of the allocator. - More...

        - -

        #include <D3D12MemAlloc.h>

        - - - - - - - -

        -Public Attributes

        StatInfo Total
         Total statistics from all heap types. More...
         
        StatInfo HeapType [HEAP_TYPE_COUNT]
         
        -

        Detailed Description

        -

        General statistics from the current state of the allocator.

        -

        Member Data Documentation

        - -

        ◆ HeapType

        - -
        -
        - - - - -
        StatInfo D3D12MA::Stats::HeapType[HEAP_TYPE_COUNT]
        -
        -

        One StatInfo for each type of heap located at the following indices: 0 - DEFAULT, 1 - UPLOAD, 2 - READBACK, 3 - CUSTOM.

        - -
        -
        - -

        ◆ Total

        - -
        -
        - - - - -
        StatInfo D3D12MA::Stats::Total
        -
        - -

        Total statistics from all heap types.

        - -
        -
        -
        The documentation for this struct was generated from the following file: -
        - - - - diff --git a/docs/html/virtual_allocator.html b/docs/html/virtual_allocator.html index f3c4a59..237e283 100644 --- a/docs/html/virtual_allocator.html +++ b/docs/html/virtual_allocator.html @@ -83,10 +83,10 @@

        HRESULT hr = CreateVirtualBlock(&blockDesc, &block);
        -
        Represents pure allocation algorithm and a data structure with allocations in some memory block,...
        Definition: D3D12MemAlloc.h:1405
        +
        Represents pure allocation algorithm and a data structure with allocations in some memory block,...
        Definition: D3D12MemAlloc.h:1418
        D3D12MA_API HRESULT CreateVirtualBlock(const VIRTUAL_BLOCK_DESC *pDesc, VirtualBlock **ppVirtualBlock)
        Creates new D3D12MA::VirtualBlock object and returns it through ppVirtualBlock.
        -
        Parameters of created D3D12MA::VirtualBlock object to be passed to CreateVirtualBlock().
        Definition: D3D12MemAlloc.h:1311
        -
        UINT64 Size
        Total size of the block.
        Definition: D3D12MemAlloc.h:1319
        +
        Parameters of created D3D12MA::VirtualBlock object to be passed to CreateVirtualBlock().
        Definition: D3D12MemAlloc.h:1324
        +
        UINT64 Size
        Total size of the block.
        Definition: D3D12MemAlloc.h:1332

        Making virtual allocations

        D3D12MA::VirtualBlock object contains internal data structure that keeps track of free and occupied regions using the same code as the main D3D12 memory allocator. A single allocation is identified by a lightweight structure D3D12MA::VirtualAllocation. You will also likely want to know the offset at which the allocation was made in the block.

        @@ -111,9 +111,9 @@

        // Allocation failed - no space for it could be found. Handle this error!
        }
        HRESULT Allocate(const VIRTUAL_ALLOCATION_DESC *pDesc, VirtualAllocation *pAllocation, UINT64 *pOffset)
        Creates new allocation.
        -
        Parameters of created virtual allocation to be passed to VirtualBlock::Allocate().
        Definition: D3D12MemAlloc.h:1356
        -
        UINT64 Size
        Size of the allocation.
        Definition: D3D12MemAlloc.h:1363
        -
        Represents single memory allocation done inside VirtualBlock.
        Definition: D3D12MemAlloc.h:444
        +
        Parameters of created virtual allocation to be passed to VirtualBlock::Allocate().
        Definition: D3D12MemAlloc.h:1369
        +
        UINT64 Size
        Size of the allocation.
        Definition: D3D12MemAlloc.h:1376
        +
        Represents single memory allocation done inside VirtualBlock.
        Definition: D3D12MemAlloc.h:441

        Deallocation

        When no longer needed, an allocation can be freed by calling D3D12MA::VirtualBlock::FreeAllocation.

        @@ -150,7 +150,7 @@

        UINT64 allocOffset;
        hr = block->Allocate(&allocDesc, &alloc, &allocOffset);
        -
        UINT64 Alignment
        Required alignment of the allocation.
        Definition: D3D12MemAlloc.h:1368
        +
        UINT64 Alignment
        Required alignment of the allocation.
        Definition: D3D12MemAlloc.h:1381

        Alignments of different allocations made from one block may vary. However, if all alignments and sizes are always multiply of some size e.g. 4 B or sizeof(MyDataStruct), you can express all sizes, alignments, and offsets in multiples of that size instead of individual bytes. It might be more convenient, but you need to make sure to use this new unit consistently in all the places:

        • D3D12MA::VIRTUAL_BLOCK_DESC::Size
        • @@ -165,9 +165,9 @@

          printf("My virtual block has %llu bytes used by %u virtual allocations\n",
          void GetStatistics(Statistics *pStats) const
          Retrieves basic statistics of the virtual block that are fast to calculate.
          -
          Calculated statistics of memory usage e.g. in a specific memory heap type, memory segment group,...
          Definition: D3D12MemAlloc.h:323
          -
          UINT64 AllocationBytes
          Total number of bytes occupied by all D3D12MA::Allocation objects.
          Definition: D3D12MemAlloc.h:341
          -
          UINT AllocationCount
          Number of D3D12MA::Allocation objects allocated.
          Definition: D3D12MemAlloc.h:331
          +
          Calculated statistics of memory usage e.g. in a specific memory heap type, memory segment group,...
          Definition: D3D12MemAlloc.h:320
          +
          UINT64 AllocationBytes
          Total number of bytes occupied by all D3D12MA::Allocation objects.
          Definition: D3D12MemAlloc.h:338
          +
          UINT AllocationCount
          Number of D3D12MA::Allocation objects allocated.
          Definition: D3D12MemAlloc.h:328

          More detailed statistics can be obtained using function D3D12MA::VirtualBlock::CalculateStatistics(), but they are slower to calculate.

          You can also request a full list of allocations and free regions as a string in JSON format by calling D3D12MA::VirtualBlock::BuildStatsString. Returned string must be later freed using D3D12MA::VirtualBlock::FreeStatsString. The format of this string may differ from the one returned by the main D3D12 allocator, but it is similar.

          diff --git a/include/D3D12MemAlloc.h b/include/D3D12MemAlloc.h index 95c5cc2..7640a11 100644 --- a/include/D3D12MemAlloc.h +++ b/include/D3D12MemAlloc.h @@ -24,7 +24,7 @@ /** \mainpage D3D12 Memory Allocator -Version 2.0.0-development (2021-07-26) +Version 2.0.0 (2022-03-25) Copyright (c) 2019-2022 Advanced Micro Devices, Inc. All rights reserved. \n License: MIT @@ -226,8 +226,6 @@ enum ALLOCATION_FLAGS /** Create allocation only if additional memory required for it, if any, won't exceed memory budget. Otherwise return `E_OUTOFMEMORY`. - - \warning Currently this feature is not fully implemented yet. */ ALLOCATION_FLAG_WITHIN_BUDGET = 0x4,