!tpYiDyw4-@
zK2dA_z-EC;d_u15lH5|e>jt;nJe#eZtp9VjygH4&H<=!Qa7pyKX_9&bCDd1?m$nQ89G5*;|4d
zQHXn=Gg1&1b~B4oDFxw0squ9?rN%GqZw^V_C9piZJ(awn{fV_NQt{rv>B(
zmc9k#sZ-ts(yJF(oz5Y=XlCQ}qx#c)>k8+@x69aky+)X3W={PuiCW;XiMKw;Ue`wo
zkCd}Uz0z>vG4hzaeYkgOX)W-$G8?2BJ9JuRgH62r0Ln``!d&S)oh2exBeVpuAL5z9
zuu>TL7<<-W6uxq@_~wRY8SX3j$@FPhrP^X08Z|fx3aWb)1Yqw)3a%QM(wZQwRj@_Y6e0c*R%=}(G(OCJ
zwJsZy|FBm0lFtIx3yOqQG$l{PB0*e9Ui
zeG(9My#PEDpG;d9erTekzq(JrtVxo9nduV)dz!3d>(g%&zR^4`(;2F*u?2~
zv!)rN1;pdU84m~C?2!D&?w&rJZJRk$_;LgL=gchO(G5&>lQkp*=UoW(O%7B*MIQU^rU^soar`ICkF*3fVb<{I
z1~{TI9dSZOXPdo?lZs+g7ef-*vRR4Kr>LkA!Oqr=CC#EA$E^)eeeO=_2cm~B3aF>e
zb9;E1M=0uFPy1xo9KOAO{dq`z8xI{W3oDH}@u_j_(^(_+7eK8lsdvd{+eC4bBv##k
zla3ATBMM}8Dm_uL0;*}z;@MBR0-5-;o=vYNsi-x&b;*SroPckAB$TJn67byyG2wb%oD*^e#
zY)tR)t;Sl#rDNED%#nB|DKfFw8^dnS96^g5WoDG%j%O8_I$_{wb~sZt^+osq!kg}w
z`UZl>70CN!UL#hV7thhEvZ^8<2&wbLW0MdO%~g`$&`mg;46XPH2c*tz
zWH+Wp@h8~G!sf&WZ9;pb-5dfVWlnT&C_i;KyJL<<7!%K)n$tJyrryrpof9eCwSxV9
zj?z?jpJZ;&tXqBKtb6u0l$Y!bb4kr|mh5m9Rb%3q(Y^C=_}kuB0c9Q8eeVJ0
zUHc-y`J3}I6-;hGA8?iFyUIMusn!wao+zjn2@UpbuPxGOPL`=Ftgu|Y9jf^+0
zm(e~C0;s$_>CfugS6owd-3?WvP?gG0q`yE>>nVDnAV92`0J}=+obwxe`!J{D!_a9*
z%N~@@ae_QW&CYpYwjA*f3_LpG4KDk`Q<h)a**HD=Rr9cY?dIkGtN>-Avr`8=Os4
z;a5-LPU+Yu9Xds9^I9jKw&8H-!xQPdcyT{E!Z>sG7=vsi@c
z1$c=@M}Gpn$T*0HlIK2|szH6lehk$rD;9tc389RKO{3bXgZ)6j;#DejXg{
z!L-{7#a##P=-4j~LS30VaJ1|_tY*4gwPPU`)z<`j`|vE%S}_mO@rr0aA-49F;vJY?
zoQKJhvcvTJmb;_{$@Oux-;NS*DE%!C{5^q}?&J~6@2RT0!|MHv1v#GVc
z-=?P*FzrIE5OgRSsbc}l}Bm4ODDCwGktfmv`U-cI|hyW!;1Ip<#>}PE~CMS
z7fHo92RPV`?shi0rwu>|;VoV>218Xv7&N-1zqYDv;kfZcY+1C>vG;(-Q{E6-{s!Jk
zmzG3vMU$QL!z#`chLQ3U2fc+`QRtk%4`EO%3WuZyQJoTrTu;=z!(Pq;iFAlae>vhM
zEs#hUKDFZ6cfF)EkZ=wUFQxcA=5-b?zDQjzxq)Igp{!&NPIzivl9R9ptj)5)3-+Ep
z<$*AtXPJ4!#t@OVl#Az~ze`%MT%oRT&TqzZM%q4Ri4Wzm&3RhK;X9>>XdfYo
zm)K~{Q`@uCti=+R&WR3FFF_7ph8c?9;pByTQpY05W5-vQ%Ef|#(Z0$uRHng9d@dK|
zP?@zYj^+oltBcJ;FuzJl`q_L-6+C~4!?q;Sfif&soYE*jI|8IPuT>S%5aOzk!#+$~
zRZmBe!b@wYPqyQ@upEyO98pT;c6#w;d+rdNP$fCp(_D5e%H^WE2W2P|r{UyMGyW8abfu&-d(?SE$9w$;7%{V$gNYx*^o{RfLKhOp=Ihx765aQ=|~
zGz{c(@x4bp`yzj6&X^Wo-`r?j-F4ReK+_7nrMiQH*7w5Q-q2^=;X!@Y-5W@~cMI)$
z{;l_B-t*sDSC{_ZS+^tDClLc{^%Clm%vRU7s9RvCxWCyq*WPH|h3l;QVzAG;`3UM>
z>w-PKvH2?cw5RWu$;rA|%l^zd1FgTjvH8FB-S)Kq&bsQLUh90p_}W(p#?1dE8qc9S
zr2fi6H1}GR)@RX6=*J$57BkQ7hJxu!|I8xI%Kz4)t<(NHi#GTFpQG`Z)L)n>ZtSn?
zqtQh}jG|FSkH(&8T-|3~9{RDzy0CuKU%xK-GwZ&)`@gkr#?=4Lx|BelL_}lQvfgOC
zjiNF8qn>C?x_&0PJ{n7Ch>>-d(f2*pwfFN*cJ|snE7NGE^39lCGP3f^#eZfcj)MNn
zsGO2|t(Bp%2-5#BuZ+ZGz9~H%Gq#4uh{L1LLw4C4mV524tdLH3C!Xptd)9w4JDbKH
znf+n^KC^vm!1gfTitQAv7hmqr!ZuG1oQ($@c1Oqa*mHMg2>0c&AMczajLl${iT>y{Nq09Ja+k6H;GWtxw&<=A{?}R#Us6KIu%CR}FB-jR)efI=m>31w)#XE{lufN-$#|ZWc^K@p;J3y-ifjXK6H!pP1?p^$!VdF?1C)6
zlfDh}XjkfJe1SOa;Vq!r#Qf|Y_c>g-qszW-tD4r`J{TX_g=C2{y=Bf;`0aCNdUw@*
z;Z-xjTpD}>SkyI7EMcSXF$yEH*{$~s4g6#)CW#f>;IZ<1jQscP-Fwz04V?!YuwIiv
z+W0>ZL8W4h7b_7Y}IPL`ZK9qerweT=ZPNY
zc)L|hBxR2((hR7>YIkl#K`bO)OT9FA2)f+_J6n6aPMheXfI>(wRf|%
zMGCfd?NI(QbFCfC|Hj@}JK51?IuZJC<)6E~e?7)E_a9tbb*+mNBp0tMwu$Ytd%Qcq
zIlsHl!O_0>#J7xD;t4Q0=P&JsqkOK;yzETxsv25#Z@9Cl)9*@EYFN(PdE(D`2&v$d
zEPO`g3LcRqevNzZVZEq6c`LrNnuaKp9QD4q<}o-Zq`KEZ97yI*qPGs`?U*zYq*Y4K_&7}1=z2}Q_vLEhGy7LjtSuUB%
zIWHWa^Fr_GfU5bIO_$cmoR`|8oJT(qCpMWr=?TdIzoY-bU3!S>jmUA{h
zyLr9O!cW-U>un=jFwXicJR#k6^;p;~?$2h44<_=rv%r#QQ^9q-dAM_CUdZwL5GHnu
znYg{)M7(?b>S35z@(4`4y<{^#hjo^W;uG264O0f$Fg`s+;fNt<_iMD_quuNclZ1=d^c9u{YJ?UR%Xl`}+b%THg!YOAUW}tpfzJT|H(Rc5S
zyq#zHrS>2@_Vk581@auRlKs6@B|Iy#ppEl_rSD!!>gj``7g)i@M{f`Bz^Wj#LvUp_
zJ4-Im2L$umuyk+seL{e@S5vQGZ`pJHW$oFy*;_C-<)D_h1-mj-bxjvg6@&twKFsib
zK9JdL69u;Dp`r1uV3*|LXC(ikg$NGyJcSD+K6=^FEb6{x+aJ=7qKYTd4-v^zbf|zA
zzraVJcB<}W`{y_8$A_Nbr?5xMbo`U-cv&)^$Nb8fFwo7mmrqyjgW-)+6=Z+oR1Nxr
zb551H9*{Q*#YC!T#a30KT4jxCVX|DFg;qSp-^O04c#D69-S+T9`~&Qphu;t~A?}eQ
z{99~6<$Zkh-j6Hq6ohSVW^nH1N3ss*LSd+$oqjZm-MU%NuVXcv9l|$m7Ueq3>)Bb?
zo#3%NYT_At;L*AK7WUDjxx#l}uyKz)5O7#cfh}jXu958IW6}J$z282TDDW9<@Rrd+
z%=gT&Wjp^U`(#T>2({NqtyHw2l`;6uj-P@pX5)JL*04ZqW{Mz7@}X
z25-@K^Y$*5ytSH7VW+pI1W{+vyT}1zI*Zztm$kjshMuXUDfS@MqY=Pw4sQ*pVkv`CGTtY~b6N
zqsE0PIAr_%_$v01?VI?_y@USp1J5sE{8MKBV`h2Ez>Dm@r~csIX6tHW`M1=*A`|;^L{9|m#GqLdZ&LyPd#XRBj82XHE?~WIXc|W|4VZ(RD1Rlc=a`4&R#er<(t|2j}ymudAC5f{#
ze?z*b=z=pw!~@&jBCw)eDFWcFT_&MT*!%M?1Pu
zFaN~D7{Bw|=uml)GxHQ{uuQ;7+=eM(>SD%Sl=sgf>Op6b;y<^4CEZT!z>*J&7
z-uezxymoQOoNy8^b9TK$4DEqb{0_=AuRkPQ#Yd^HFA=UBW>I@a^j|NdVeC9B#xUz1
zlW^(C-jY3PemL3U%G}wQzE6s{^m=c&rSBA{vJc;g=HFrB8x#0j*x)x)$M=V?F@Esf
zO!?=|#Vti+obxZ>BWUleL-H}FhEDrXY-1&FrcHU8HgP2)Rao4DH%FlrCFpTy(S-s5
zvlQytOHl><&a;^6R_^V5a~VH+csJD!U3i@fRD%PmHaMNUmq(g!nq!O*~w?Kpto&)h+?+n
z?UBQ!Ias`kGjq(R?q}eaFKwh}esWmK4zm(V#zm-rxoLRPeZ1nqqR8V+Z*yjL_WU3aE7Fr>Obi;6BW{5JPf?qA26#%G
z&i;OUw%`e5<4&Z+UW7m~!k=^&;e8-h=W_2&e~hrJGFEY7+^Ays01h6D7#d~IKro4M
z)FL=6)SgSX1KH^lQwMwucb~%d5S8SfOKe2rWBh&WwZ_R)cKVTexmXKaxNr|I#Z6f<
zN%DYR6d-oM|Ls9u+2>eLQ-VLfD5%r3=}l!qlb(Ipw2N=qyY{4p_jjK_^VqHr#tpat
zHPWvROF=oszWm@HyngSyAJ*`Ah%ET1ARuFMD)&ytWY+Z2n1F1`XH$Muh_qyr{@8QQ
z?Hzr3qhAI+QElSBOVkJQ_r1T^bC1S$-TT8BcNDTxjp}M=cD&p*HQ2d{emOaYv!gye+{R%UxH4sb%1&;ln;Ah6Z8~
zF-7(;w783F*yPV6+4?hK{AA`j6EzeS@bcBIkg(OAAYr9Du7({sGj;;buG~330XUL!
z*TVq3`z~wa@!A2iLfIWHf8a6WZhnFd_;lPzV)ys5)dko;-}+K^wFoo9oVgVzqNCJFJ)U{qx+vyR*ndDw@6v~R?vM?
z%F=g7Ge)q}TlJWGTCvEKv1G
zbzBpLGf@J`IlYoINOC?&zQZfo`x4oGT(Y;;eG#V|)aLzkFTEFZpCgj=uFw6kl%*G0
z?qd>Tx%-fWt?qq5uThS^LD1DLsc*&p#cSAU*-YgcDu2;iPUA!VB(=KPZ9}V1v1Mlm2Q47BTw+_z9A_g2HDSbIP2~=g>^$bS
zPo@DgDwNooi7lb0J*Qlm9iB1eSRT4EMRzRw;_Q&fv-EQsN&PA0>TPON_@;{m{e5V<
zeT&EQKK=TvP3Rdr9apI>bEv?Tx!pY-nH#&i8kVjkQRO7+VRqNw$1Pu9N0MCi7-(hh
z$=x3{K&S66-2KnTsS^&N%-w?Q4e~ZoC5Y_$zNei(AXnc&!UMW|>}3A-$Jvszk*arl
z`Suf^Oas2tzxepPfd)6Ux^qb@(Dpd9v_=NqN6ZRhu4cEkMhuIRiqE^ld?@!J_c(hL
z?Bj?%pV+PJ_0|ZXshY^sexx4=NzVKRx%xU{_~XhA%3XUffZP>0QgXSrQ}zKVOEaT1d|GkR$y&2yPwt-!|hH{q97{(Z6os9z{9&w+Y-)l&hxP0Lsz7
zIN+91j{dy>_is4PlKy!BcPHgI{LI<{O>0{t6R`=o8#+ZY@kbF&
z3)6x_-fJRxbUXN6(l46bE-6c!9QQ+yvEXwEl*M&N|@it#5gavj8s
zV4s{Dd{f<@)SySz$KO#KX~Z5!u0D-wd~x}PUWB0rNppi+!6tn^WWpm-EqWZ5P_5Ne
z>j_^ia!VKa0@F|DV{8?M=Zs$VWMbb<>^Z&cEpE|8aTyURu~A$6iLK4o`p*YD>RkVB
z?{;cEorg#rbR4<*V5}9~U;KPy>zmy6KdHYP^&ji4UqST^RR5V9>f75M2*Fn(AqCNP
z>0jp9z*e76!v<;p`CEnGzG0F7Sc0RGqJK=0wOsIc_I@JBc}MMZo?C%rLsB6{B5_FH
zrt@4g(m|wsCZ2m3v^wDPxZi@b0cj1=Qlz;^Q;{@CBar$dT}k7)3rJ^>=sJ_abC;2x
zKw5z`0jbr(JGh@9v=!+I3(p0cdCrP-8`2J>xu6X~I-SgOn~*Y)WJniKb_|KG3uxF0
zq&-Mqe!{nIY@}~SEO1by7mB7NN16%eYBZCi!UDq!{k2WET37WI&=PJ
z<*p7!KFrGP0J83Xh6U8NSh*R0vpzmD!e||r%H5A!`{Got9;p)dd&0qsWKHPH-?l72
zZrO?z_uRg$@UDAS;d|GFy|=ZU<&|;VB5o45io1tf$Hhrl2)rHta?3K@-O1g7yLI@x
zhFist
z&wN#=~^;KLkny^y3wj|fbDaT%Y$3NHSO@(KuiRR5DV!hDU(rjhIgQ$ULd_51{BQ@TyRTvHsdTN*
zDDd=LH?ui}`#l<(!te}y`o(o>!YOiT9$!WstVF)Bs98BEKO5?Y`}H;Wv3Okc
zS5_R2csy_V@Gy`#D0b?JBQ}Klx{q|hOHy1z3afc823$*hBpd^AW{ITT0TNwxKpwcq
zcTY$<3CU&kK+*~4bJbGSh%O&%r>}?_d`v2ev0kv^hT~=ed7us0V-r`S9KpxNRQp)A
z`&f4PSP%i6wdURt{OHAPK9+VL%M~E$=fAOXq%0UnZ5sk4`Y2#O;3QxG(BPv_0|w%L
zHjr9DWrw6zq*Q}M*LEN^bO(?`z2d{YK70pAlfwJJ9ydfOrKz}WI4>W`
zhGuxn8>0EZ5x(M?K*=B1uvL25I!EzQp)dI8H~{0Cdd16X%rSgmnomZ%PsYza{2fT%
z==Yu18v}vV)My}iBOXXiBE5+7
z)_8{V5jD-Dd08MuLLKDrHOd%%@U)qzD+3cDd5aP?fhsmYfECzteNyJt69B?xpYTL=
zYEA5DK5{8Ul4y}c`znyE&THpE-lLCnk$$RU#je*1?77ZWdi9ZN`#xK``ozT8
zK&NXFkg6>A@dYDqs7W1-Rw9_>ckJ--z3k)L2c#w+0g`*0fYih@Kyv+gAVt%+Kxfjj@76*GwQaX`YXT)OATLL#ll&FZqh71&O-e;T7BF
zD;I$zqSMDmd3!Hk;DC-kwR)ayi6}OqjVJC
zE1t*-FByYBaKJ^cRwC#1lI6nci!~GC`Ch51Jgb_1EwPV*^?bTD6zvkg87x@f3(%*HoSjng+C%YiO%M3j?k5
z8d^1IiJ*zs(Dr~94_f&(v~Fxj8_?+5YZ{X7`{=bd)|J{xEGK9+izZ>rZ
z1qu9;;3sr^l%qqyRtKpLgQyG0`K5AiAs-A3N7{o~E*_YO^ak=~U>Z_W7Upl@Qp%sk
zI0BX;iB~ypGjJ=C8~Fqo>LO{73`ka_G^7k9n=IAA7BGUmZ
z1qRC@1T__enB%euA)%NMHERiR?IVoC6yv+^B(!259q27LONi-8LV>H6P{!?(P|meT
z7{)m|rHqw}?k`mo%wCi)1>${$ryADa-H4|Sh_iFgF<>X~0uZkYJY7H>-Fw3PQ#qVP
zdJ=(jm7_in+zNypTpf_+=>{M@Fq?sRU^=)qWT+pzfaIdEAa6e<0?GYWAoXJ&kWK>%
zfdhb>f%x#7+XEz*9s>>pwgLwOaaKjY?Bk+=v_&=m>6Bq65Z{Mz`M@aZ|4L+rgRm1A
z4Qv9&07c*kpe!Vniv`93Jun-X1S|%U^S1-j
zfct>cfz7}fz;577V0>6AHw$P0I&MbBhRkeWA(5->d6
zk;=V-j5!=W53m(T;oRXvSp=dR_t8KBr~vu_tw20Rxm=(>un^b}
zxEUA#+zAW>9`oUO2QqXla~T+dg78R0H!uwt3S8~O?Z7bH*8>LvTY!Ur9l*gr`4B`m
zFd7&E)Bq!a8NeaHd>|d4RRZIHJAosCjzh?dLZ%fs8rTht2Zl%CObuuNjs-3Sjsung
z6M#E`xQT3|L%2P_2Yfm?w%0^k~eU-Af#3&_w6(e1;iVQ?+(
zH9!HF4fF%92Fie2f&RdKz<$7HU;ywkkp2PM@ZoSVPyy@@%mxMlR|A8A)xZ$oZr}g`
z;n^%@u#f_Vp&&RKE(Rt72LWxs!NAqPa9|}c0$2--1U3MpfGt2;GIs&vfKf4UF;D{>
z1+)Q216Kp%ft!J29LVfMW-Ra+a2)VFFag*F91n~hfq4LE1}cHMKoxL3Pz|gFYJl~?
zjllE3hk#scDpv-K29^WOzzX0B;KRU5praC*9mrGz8-R}k+knpjyMZqNqv9~^fEwWQ
zz--_fz(QaHa0l?8zy=^q@@+sK*a;MX+(>jGFdRsSxd}jjpkXA&e?Me$K?ner0_DIu
zU?A`mus^U97zB(Og+2tDfg!+r-~eDHFci247zS(w4g|_ZqYHrvz#%|0FbZe`(gD)y
z(T-GZ7&4ndhym^fjsUg*V}bJcR4xu^295--2c`h`0ds+Ez*~W`F|-oG)CzO}&A?J%
zHt;cEA&{oPYC;)2Mu^Mo@Ru^Bxn8uc@M2u47sIxDQNG8EvL-JIq8G8bq52J6oP?#E
zK|(8+Az>VsFJTzBUP3vyRYDoJTS9>w-XvvkDDNX&_T7gENc+0ZR6goJoQAjZ2R5hj
z#WKG9fd6zphIix}?lP1ao-ouI4j4W#d}8>~5R-H%Np1`^MjNw@hm1|ezZriv2AHBv
zsiq85zNy$$V%lPQ-n7?r!SsXaR}*KBHcvFG%o*l+=6lTdn>U!5IXOAXl4G%3#;4?@
z*i*PTbSR9Qs(3(gP7$O`Rz9qJOL<)RlQLYj+o8Im@>eIQbJd&Gd(|HGHq9HFKQs~A
zBJHDErhQragLZ;$o^G9Pi*CDayneENn*IU(cKu2H$9k1vmf>l`^Jw<>hQUd?q`67C
zN$#W{lKhND3IDR!#H%(Y-5>etEt$0#Qbxz%(B!nBV~6AJ^2gK_($OE1Iodw0QF+^
zCiNM$TC-5&)I6_wTXRBlMiZo)uFKWEp>uqr%h2cQZ_{tpzo{=ZJdyNqQlN3CvDqjy
zRhd3C1)3G++s&_=Pnmx-_e+jRo{+3dHd@wMDlD&BzOcws2Bi#1c{Jrz3bzywc_{r-
z5vd%b%v5er)+ygq9#BqJtx#=LzokB|{!OjX*ff=zS2Q1L+BN;OW3`X!PUu=4IzPP?
z4&0|dtG}Q>l5_=DnT$^vcNkwZ?lsmM8;xzo{ichiaPtiFljehFxA}MTpyb%(iOJUF
zhmwyZPqsX2dEGKU)zaAHEQ)E048?7VI~98rPGz<7FUr@I`;=Fe#j2-NJ5(>J
z-c=n_g{YrZ?^M64cD%1{QV-O0z|FsD!n6_ECECxl-CADPUl*sFguoN@WAqdBYW+>{
z(qjF$hAzWZgOC)Jv^8mp>9FZm^Dpqr;N)@1YFg2i(%U?Id#HE{5q?z3s{&M!ssz<}
zl}Wuy{gnDk^|xx7W}qfcbDL(BW}Rk<_6disPB&Zc(*K}08D=7$zsCR!Ng9?k9-ieA~FpJkat8Sz0Xx4;P@kO?gTgs2Z+Xq8hALs%`2*jH8d#U#m^p
zC$x3iFSOriyR;#?65Sr%cRJoM0R#O-!wJK$hHv2K4C6ebV}fayNeAZ!SRyUsEVL@4
zmEl6=oyr2$8C8&4r%qR&REKGXYsxjxYTnW`X(nm)TC?^htxda1`wWCXt~;oEU)QEf
z(0Az*4atW44E0G$<1fa0%*+x&jopKZ9bi`6tGG|mfCgVshNzS(qpCnv>rlOp-k6|X
zpkAl0L`N7jM>O-a<=R+Xs&2jRfbQ=)x9)dckUmnc(WmMA8KMjZL#|i=deUjW}J#wxYSE6M`(OX~O3Eo!$~
zt{JKssj1MkXs&AVwU23cYG2a6ru|sk;?RDn9j=?IU!{Le--t1AQUA04SG`B?ZwN9B
zG>kQv3{w#ow;1vbrwpGN_@u!}X-VsoP9|MUy4SeQxY@W3BW0KIAg1Zl#uno_jFxYW
z7mb&VzZ(Tppef8W#1v~9XPRO%nbJ%*ndX=lnr=6(HI0OiKQ`5gpGINM|
z7)E-5d9C>ov&($I{15ZD<_@#R{9$r?^1qTJEb}dkEcKT6EGI0VSuR?BviPTrOtGXC
zq!gxK^d={s5C0ml(UpJWsWir
zVQW{eQWh#7a41XhIM}S*qTH^0M!8e@vT_fG&LIq*Cgo{mi}IYZP5G^|0}qQX26HP
zzb2W`Y0nv7G440MYdmTE)c6nMcg9P`n|?R?n?g-WQ@N?dG~B$%`~n^j!;=>!Kb8DO
z^1)eDSsAd&`d&I$zY(q|WB2ILH%L
z_+zOeUtw2dD|2D&Qe{5OU7=hJgNv2xVR5;#5;j*Wx5DaLlT<;@Fx}n^Kq3l+v8insOn9Q@|St4VfZX5w3_+q+wppR^-7qD-?x_^@?%?
z%2ve=MT4SA(ToRen?h7{D!LWX2p9!IB^SP10Z(m(m+CNav?$MG^5{@rR(2y6!c+>?
zQk7j*iip^us#6_OopPvJRc)#+6{ikU$6;AvR%c*oQLHY-w76TnPkjipy{PU~cd0o|
zuqF}HO|E9CW`$<6W~-)Fvs1H2)2unK>DI`!!P+Rya%tKOZMHT~o3CA=E!3{Z#I#wv
zRl7smpl#ANYtQ3JA=8EF6gq>>s>{%=(AkQyPT8T`hd4Zs-jnOYF>hJXf9v(7QqMK$
v&+FUtBKoXL->sJ!sOQ2B2?m8hgRZk-Zd+=w8`h)iHly>fDBEY_6a4-UiyQ|H
delta 25596
zcmeIadt6ji+c&=V24qkWRE}~+6janX&%hi}P&CoO17e=gJWOO}21efMpg@7+7`Zg4
zsIa_?ii%PT4HXXwCK(nPl_i^e-PGF!Umu`zDDUG?FV~iEdD2)`x4TsiBKfnHs05
zB53EDy&^ynOr;rfwV*x8MQipFBj?mki+P(ML{5ueC9gpEewH*3iuBD8=qAu}UnSk3
z*RjOcJ2KHjpsxiz<~70PAy7J~*=s$Ofa@^Lm>XG=*nJ{IK-$xx*-w)C4OKCqe0
z@Of$MT8EM8GiScFtGLV8mU)x^(BW{HBfx7tVdB%zFib0%=`+Ct++^lp&6+Qa%*uUm
zhB0mH%EutuCo-invUkhVyR#RVAb#cZv@lQ2Kh(f5*6#8{C4V>^dFnhSyE(m=7V%HK
zOXDK4p63rg1ePAqq0+Iy>hH+%wfYzLaQ?RY$q$1wEjKXWQOcs0?NIBV4oC6PPW%;F
zOD_TZrwBBEQc9qrv?<@5QGC{+IpIIKWp%N3)?!=WtbG5~6`G6rvx~puRu`u%F8F!;
z#S6a||L(}wIYroPRO)2SN&m@hMMtR^#y?%4jXzmlYN1+ep6ML)n{1w0rYycuu-(^X
zhixydZaw6*M!0cXb1Od^#@MFz*)wCJ&38tAfPXZjc`rYu*bak|C&HljF8o&fn-65@lcUC;C~oR4?up(Q
zj3C`GGTAZ*fBmp9r0t6kz&Tm`phJQm#Vrndj0Ys72IMgqw`Lmjc}wL8m!%X>IzsxJBk{aBNdd`!Y5H8RnSAtaF{GqrDPx_w75&;vI+LtY_xH*
zP;*3`5XExAT&q7scw*{W;K&NKDo(>h$ccq}0U-93QTs2VkxQHW_X?p96om@)1ZOu|
zP$k}3#Z7isDe$tbXRj{+L(>1uz+G3~CesyyGSol_jLTgiP$6?fO^Gf1c;scbP>Y5C
zWmNmy_I|%Rj_m_~r0zx_aaS}RAJwEwy8kRj^
z;a__UVm;7wuKTFIB3l;cADu?F4vW!FT!N+*X29a3Ef6PiN_7aW=|4qKVZG=$L<8**
z1}gt~25qI{(*dM&n1SnjgTxLWIqKmzK*Ym?-?|L*@og6-?mUOt?@N+1d=~fc5>h)n
zIbzyzp}o#{Mlsg|=VqNr?_jLw9R(e8`C<2vKZnb>v-J=gNR|Z-CZ-YIEGm!4;zlhZ
zuZ)-)t2zc<>0KB#va_qpeWzUy$(nN}y^C=abY)=#Exv~g4^(mWue&5H;)dTz8Uv%)
zD)M=tn5+AR7=pscn4l2uG|kQ$zxFj@kXUEN$6L=VTe?Wr%7=qA@LA~e;odJvLr}^@
z`c#xT$_v`c3$8Y&^THFnJiVPiiPcznK`%NO<*;S8d;G<}mP2BK!?;uXi6(d=_xuWS
zPw<_b{8ds^9YSi}@eKYH9k*YRQ_Z_ylAd63Xq6zOp?rQzb9$>wNdv!Y0WpSzQZIIe
zght%C0L`1(a9vgWJ6A9%&rjCWoQ|g&9<}fd43T483?A0Zc5@db=F#UB<=|hLLr#Tg
zhh3#==GV}Lo-MP3*DoOfp=$1pSICUeIl)U_5kf=7w$Mte%hMZ_7Q4V*Q=u|8lWZ6>G&8;O%!Zlp$E%Ide
zBns!kEkmgVwzT*}YQ^JSBqt&%v(|K*%ET9MQyK6pRF0nCr*b5+M{YXZ9g6&ID!X1F
z7a}IJ86+?=F3RofYuEqN*^FPwo{?K-&c03arGMY1IiG6&bZ(#K^T@h2pG5vP%{Bif
zkx^6Gda^RAU-Q!M{!?>3)x0^=ch+sHckaJU^(Csh98KYh^HyZtsy85in`+a3L3JoO
z7#$aB>~Xg6Q2TAFFVYqcB|k?W&D=cmHqE`y-KKda>hr&$MO>PHK-R7K3i7vUZhDUV
z88ec-OhRK5Z;gpq9_PgKQhMgqt{@bdJgz+)DdeW-U)<5Ka6X&N7cY8b5t-24YL8UDL^x
z`1#z&b3rwb!qI+%>s=*=>EzMT^L-Q1#&ii1IB0bRNgb^wiDP^RGcK7G8RWHmEq
z7qiHPgb6-R`ZG*cHgBsY>k=a9%)!wd9Ynx!n6Nk|pE9!uR)?uoHbA^{M=?sQmp@KDYWs^67*e&i6%9
zFAwu==;J<@Nv4cX32{#MCFSY(x2HM1incYMGKCCF3M94T{pgHOrR#N>ZJ)+!enfzB%=Oj^F1tGHODKZ)2Yw|GtCVJs~>bwA)V;{}B45
z%a0u#+B-6-+sK&P!Ql9aoRB7RS^KF=$-iPpW!*v_$X3kX^Ld0TPedc$ACiU{eWEt}
zh3y+HaS3_+c_A*^=l>R$Kc~Z;Q>G&pr|>2@CIamY_zC=Q8Ql%Opc(;Z~{1SykL%I_=s58GfOK{GyU`9%?dPJyM|NIZV7`BbluZ
z<`Rm?8nr~d+)6zaT@QE8Egg9dTV|6mar;lnY%=kCHlln>SAZ>jzjX_bH3?mam`^jL
zO?@xdxPusyQ@ElX1Eo^n#w6v4dChufRh$1CAxKQq#(i>_K<>I5K(eIff
zH6$-(78fWdM^d7>v5%9_Q^xqzp*(N4iT|1m*6idq>PVHQFfc-b$!Dm!1!Xo{3|8O#
z%Tlt>5Kl6+E4f@Pc}=?^&{qteKr`RZ^Q1)J$+2q#XZL^h74O`^of-#YkC6Paj2JZNFqD@`I
zt=LYUNL?P{*yhv_Xg2q2IGRL;O`bh?4=6M;C1*(9_(oG7MeaGN&~%k(U6>?ZQzbfe$54+*6^NkGk#l#<`WzhD2Xhbnc!OwUjHc{U~b=@
zM0U2EE}xH)V{I!J;zOSqzdQU(f5PD=IW{|fNDfp98#Xlg_p>AV
zI_dN^WQ0ks|2bMH9t3NIc{8)gZ2yx%09|t@oo9bs3WtQ5v%kaQ5q1=~non-d%n8bQ0Ku=^F3D0G?Kf$qha
zTmGPnaOt<3xY&a4xBJt<=P-3*vMv_3&U>n
z6R!o_e#*(^IlmED!6$(
z&dmWgea$OfrP!At2;8K_O3f${stO~>HP2CYem4Zreq*z(r?u%xOexI?mFs$mWl`vYMc~Q9
zD+qen!qLOuqC%X$ZS<5j;as={3d%|spb8lB5=?w%J?7#;#it{Rd)NY>yg}wpa9qba
zk1O!UT{rINNz0&M^24H3|LBKsaM*+~O=m)xgXkBBrEA6@a)+pSIPOD4kJ8CdWD~ry
zp7Wn_rubjNnamK!A?lcQZh&b4{{n`OwTDg)4oChhw`$i2}vdxb8zk=fM4HU?bneoc2F8@@M5wGdP^I-oVLLsT^+5h}XRiIph=+kU
zicuy4U|ow`nv1Ks)RKWLwx!?_s`5+_DhsTxiNa*Ph+QY&BCICpc@}F;uhR*SuyL-#
zqWC|JjCuVwysY4tqlK+4j-Wzpl#Vc1upj|DocuPHo
zQMFA75T^6$EE6JNcCWW9?G^^N)Ruw(T72`dlg=7;#;z4m!%B^IkfStPt%689i=k;rwD)tLn@PP
zayBk)ct=n*!i?UFv+^XzAzE!NJxdR&6UYIYQ~84&K_w(+xz}=9=m@G83h-*VxikXz
zREWuWfNP`o&80~$YICU=IoFt{Mf?i^bj+boc))^rE;gHu<^&1k>9yg}e4d-j6I{Z=
z1S)JcngbVUS{}g$kS~^NL(mTeX@g9z=^9TC${}76Y(bf|l=gFI^DZx)iOQJ4g_lX?
zr6%0jN_|mECzT6$5EgH#!l6ltHL?-j;p7B|HbS|Xz7H@tJ}N#PYO~P_M?68`>B){&
zcNLx1C1$b7@rkvCz8pE5KidE8RPx>mzfeH|Eur+Ld@p+Xj`sz=^4II2~KG^p5|@N!f>d*HjvFT2FZS!3=z(
z@}ARar}Z5?i}5N5#h&)4FtvQ*KM2bhexaRItO?Yug`vWRkPdlXfeAx6o^C`l)1ki^
zQ8btJJ9Bk-zcaOi1!s1y_$Oy9_x-odT*i*S&zaT2-2T7#bHkU)EfU#;wXkjPJR)A@
z%SMoA%prqmj~31GpHdn@j+?`>@BYNqIt3CT0)40Pb+`F^1??mFd^hcuZl6#0`~29j
zexK+22tFq-|0kc5u#oxh8gM5bV0}L09rgd>@V+4~p%^|*OK4+db}X^&rDKM_^^t4p
z{JV$zZ61DrMiV^DMrY{rFyODgF1i)1?e3zJMbyJ-V{-q=!?1h*TMr+aB6vtgQ%wJ8
z>fj$6+~SZrh+pj_ULWI+-Fa5NJ_gF)=t&3+@lNZ)S4evq!TxRW9y2!bB6CS;Z
z&mgfIECDTe;MwGcY)3)2qo9{ROzJm8v3tk|8{%0zxw*k)i5H%T*ri~>A7yREduyjD
zI-K%Y{2%!R0ljj#zT=;JMNlnXbMbS3T!J2OW$=$Z8
ztPZ@8^a3P#H0gvdPe$1?Mrm67AKuNx;#7v8JdZ}v6N>?hEoW5m*PZ24dasYbt)Gb>
zL%w|=ip?d1@>Ak_=L*p-j~-yBL-=NeKllV@<=Ic-2;!@)futaREc+gLHh*LC%{j0i
zD-chtKpwQEjw|ZQ**}u;o|=#+_4Q9^~~R*iX-U0sE!w+y76CG{9m)&
z0Uc(|>_JSe^Lt%kjdt3P;Np$)MeuMD
zfn~|eq8Po;ZLELHrxkl?geYSdZi`RHmusx2T%#(K;kVfko`_vSw;?YUiC3-{JPdYu
z*!%zAL+Z`nJsc`{c$w(8xjZ~hmToh}Hev4P7%h%2$(M3sY7U|s7G3+#bh<5Rc+X!;Kihj)FjR
z7wGqBHt~~4TJZ#~BaQs>!QB<5y<7BK1I^6(hB$
z_yh0qf}5J(&=-Dl_k}Y;U%0W+_jvy-73Fb8)8jw6$2QG96FCNq8Fyc}4q6uf0hv|e
ziqz|5U5UY;ZXSh>fbP)4A0dq;igAmuz``D)T-MjF0T}G`%elGP{2EliR3fl1BH^VG
zF?<
z6<%O(X`tT+oFaJ-@48Fgg$HY97iY_Cvu?RcUj)wY#9FS+^(qiY&~t8KONTG%e2f2b
zSQ
z3-HWki2shK*zM$%9dEJc$O`Lrwt#$NeS`ZG;&vWmFOmhe2U+WZ4{U2VF8wM|R~%qd
zNms=}E>MN?uiO^89D!iVF+z8`c`2m
zKc9p?xj3t#L)f+BWRQNjmlsS=8fZ>v-asK(6|URnQu^hdbI~I3@c(jF=Jut5u{@n$
zy)T0y?>^bYencLAO2t-_V^5{BckZs<%6?8P)iySh_&xm)3LklT2b*zV_%lDS>_WoU
zXxTQRuTkS0hX-r^Vh@sy`=YU!czjOS#}Ki1&J~h4OxW1v&Rt1p5}@-x|kmA|u{T9qWZy!xy{>FZtZMq`hFYb^cX++~}Nt
zsC>+`{!`BJ-DJz#X_Knx#%&8vD=cZpROVm01ubqZxSGddzCu0oPE-NE^&%#{EeE>a
zUe1ovG|;&X-;K1>N|+qcs2B4%H!B!_Bl(9X_zzi1BgfOo$?-v>5IGC^{P1j!J4}*}
z%;3I9XFSr0hy22KmT-!1Ny9tSSljN#iCBV9YMhDBNH;gmW_OX+#&KN1x1^_W3Lci)
zqZ7Hfw~4rMBzgF#gnf=Q9F6w;I0p+Me6q#PCPR*yJkX2D(qpmV!fed{8A2oCYkvl@
z+hV}?;x&;_~K!cTUJW=zu(};wJDU@!ged%>moHSJ|OFlwwCk1ANkYk#1cGX`VF_
zZxWb=3#|(El2oSjR>7A`Phs(zl_$c3`j2L*1vl6I90eji4Li++SVa2M8;R@Y+LBYn
zTSWMNq$Azou&+R806%5OM|R;7D(Y6ch|RX%XdaaGlaa|Eoac)tJ@yAsd1mR7lb%dA
z9w9feSLeS$6%!u@$^1vi;zMVgK3kYPwp`42;2a-;TUyeT|G?*0_}{QOG=KLgX40A1
z^YXPq%|-}W2n!3c_hOokK#Nr5ap~gKWpBH%XW^&(qW5R#K?qK149X{v`uAdj
z#zSK^Ujr^jK_}k{Y~|;XZ{C~5`3)wDbB5?YP>UbsMFkh&T@n`I!Ook(7&t?`2sxJ!
z_b?nq6vv=z#F=NJkMI+zT13U)oI`J;$)$6Xhkk*Ww&J~|iN?S|l3E{SOG#tv#7S>@
zQ1v4IW#Gbv^{mh*igi?y1M~uK{H2uj5r96~>dW_Y+6h_oKPdb(Yw>ey1ifl9g_4|m|3&tL0}q^+v!w2Wgb{U6C;afI6o$9jAH!er)dyd&+5^YiDp|yT!H0R?
z852^OcQPiBmJdgJn`qud^KpLe_eQO)=IoCTjQVJs$4vTb1{44K4H|XPDd%r!?4z*p
zbAH`!4@Fj}R#9P{7ca6+_ORq3ud1ZNJM0w#*4oP|Np{Crb|NY22nukOIThF16Uo0j5>WJhN4Vv28n76Q
za{G5ewgW!eFAG@_rM3%M`hk!AtdON&6WNdTGaTrr*7oy0Eo8eX?{=!)CJ1{F+1uNM
ztobyIokX^M8YrhVGHdNdp=Ke~tq@2Z_6aT=EntP+&*hI-B{}=)*oaApLz9K`{AU3c$~4HugjcHeD#{|f1-9FS?0TwkJF>SMXx%~2l+g`d_}<-V
zs*!6*6hq)4^m(v5-$c61t+wj~?M-&UT;TF(7pNOO&CPGW_zJ
z(*yM9!Y66a+U!l_)z3qQyhvGMBw%SGAABA(TrHHg+KU8JPum-0v~$NTqij`_tK~a1{WRJvZ%zYPVp9CQ`
zTO-Qs@&74r2dxB=8T9jdAw+sAyo?H8(Bo2%C7zw%O@{RdXUMou=m~+)X73}{pr*C1-E?Z8
zVKKY7b1TR(4A06wb{l2Sr|d8EvA5gRkJ5e_v`k>5w#=t&wUiCke>Gx4kMlI_wkf8H
zTHhx)h}LKqtfw_*HvB`4I@Gv)&29O|$Tcun4%mPA*%cd?$L7wBIGgaxi!cj6Uq4Tp
zzDi^NO}wrwQqMAtNK29ANI&UV
zrbfqFm?IEcgR~TccA!YZGUJfUNFzb}Ov^HlBh5hyL}~@S4rwP6z3O1tE~G*vdU;NT
z5m3;J6l`FbiAYAI8A$Vx@{r1qo!cA%kd7b)Om@
zf%Z7^JCI^fX*)%vbx13b=v4^(9lXx~b6m6l;2>AN6OOgHoD;Vjg*vHiM&{2E$Ojmi
z8X)QYCct~w2Sz5j&G=YsP>OL(DsvBR%}Y|52Bb3F*9U?Z$(YceU$J~;%<{Es@4IVx
z{@wSjW0SN;ZM4xcT!Eyf^&*6)3JVGT#6j
zaKC=1k*PpxLK5R%OpJ^PsRAirFBBqmBh@?(I#NI-(i7kXGEWaV(P*dV3i*WsE0Q@J5sw`^zdP
zjbwu=Ge)who?}y)_)6PIc9BQZ*i?k=@o+Y6WXM)Qz%sSGlqBMmURa4*JNI=TVzYsQe+E4Yz<=H-On)X`s$f@VGA;0^b4m
zlpYVog@2Dwz{1pNwF`r=xBtx{Le5(o8tHn+!rN
zTGoA0ITg6)U9=ovK2ihfw*o!KR{j;iMjH`edST1PV3)&m4KR(;8))oYBE-1Ieyop1
z%RDRZ4`)YsQI-xNoceZ1po-jzJqP5eM0&AESO2D|hiV#I`CcR&?ggVlmsG9`XM-)&
zr-A-b18Djuf2+Zp{V~J5{{_SNeaSF7q_m2W<&7wIee79=nV7$-FhBm@b?|_xftgL%^*U*VOfLWS_Gs3?TI8U)
z{$~~A7?$bg-1qStXgx7TSq0F^6aPS=^FLu>nm`Zjr*FJ(ZT`J0aZg9(TJ$p)|E5iw
zR<2kBdfEh52<5~L`FF)nPfZ1h$pFpbiHwtY=be-|b0Fh9C!+~8?694D^PGG+phZxJ
z1dHP75fGEFf)Wf{?j84&{pkHO0KV%c4fi9LtJ
zd66(WRyI$d(?Dfs94m^h`ND|ZzQggR3y%URAH*;X{e1q+m;LmseRLn+0px(n<#BAZ
zU#^QZ2okiE6e90^BU1i+Nou7d
zjt%lNU2!&c4v?*s#Iqx&(8^RFMGi=l2NJDUhWbXJ`?|5!sYr;aOZH93{&5r=oO{J7
zx(Z0^(u>Nfxzc~{HkR7x)<<l1v{>9-o_)?soMQypVm#f2^`a$%W^o$A=*l9m7^E;5ZuQ=bx1B=e0C6owfB
zq*a1}R2yBCFqLm4ItP(xmC40-r;BeTkQ%%WNM#lRX%w~tX)Ejm4gx+7^aj=dX=i;I
zNJr5@ASOcQ7|z7Z#(Zl;Im0Bnkmji&R7;h>5|ryIG6QK571$~iRThn5J$>A?
z9+#2GZ&tziHy2ec&6
z>IcvYL5l}%<^bC1be3s?(JKcS)18jzbjOXyVuSzRR`vgmt!nn5wGZTPSi5T70)`pQ
zOerC`H`RqOKKZkogzecv`sWz{SW1VSx6Y%0@>REq)S$)z&BNN*t@3XDOj_rzQT
zR3p8CdIBqLH9(o7^1QV!B$k5mh@
z5*ahndZc`$%}7N^br2ATQB&{224Dj28(nxB=#Bdp7q$WEJl*cXOF;T8=yV|ur1N%{
z3vUAH+d`&C$e;vD=>+fTLSGL@vSq{2&5rx0}caT1pv4oPK#fr&u6<4yz8
zoyk045O6&(l(zpKWbk85rXCmpYzIaHZvvx$0lukBG%yJm1Iz%%0#^d#fMvi@z&c<&
zumv~<*af5=R^*q;Bm$FwKkeLA752Tx@Cg3FCC7>AC1C#&*hNdz)
zU?PxitkQrgU@kBjSOTQM-w#X!HUXysF9D|kMgFNw22c!~0Zap0?m%WSGP8h1Kof8e
z5W|~k0nPz-1Lp!g18_J438aNEt2^0YU>a}?a4j$axD%KNtOt$-wgaWWn?M;bG&Gfw1JytUFc+u<76Dbj8X#SE
zwF1Awfdtcy44olFVNQ$(vbZ+_Ibbf(1GpLJ39JEn0h@q>fR}*YKxQQ74`2+?2dD)O
z2Ic~X05=1Dfz?1iU;}U{hwgbv$S_PVFaQOi;RrEM4IB*R63=9PB0R{nUfx*C5
zU?{K?NEhLr5eP9b9vBNW0^@*-fun$%f$_j9;Ajgn^~j6?wgD4>JTMXH8Ho@B6M-<+kw7OsZ2325m*Au0G0v^fe!=s04-(6)FD#=Yz00B
z>;mosilQ;BfbqZ@pb_{SFc4)6DR^61o{9wfP;a(z#+i+ShOK91Ly}_4;%{I1M~+r0t0|ofy00S
zacDxI92f%30EPk=1L={|<~U0#GZL995F&vMz$joRFd7&*3T+9@0LB8#fCgX_FbCKL
zTm}q?Pi1m}VxR?>0W1RM0v`ny0qGQ2P0kg-E<-w=tb){F-ZazF=+xCnH&LQnDqh%Fl7RYm>K~+nFawlCcIt9ung}aFj$Dt
zsV-)au%GXq#)i_>qL#%;-P=2-v4x&&(c4}#*+|y1M7=`2S^cQ`3H3ATcho109*A89p;GF&G&zB}IIX_-XMqaj;~xWR4_X;w#OTu9B8X
z8!XZ;=?K{}*)OtT@}=?u`N#4fKW<>)Q_v*R5z%nC(la0EBVRfQ_0toxfD^#6DiNY=_LSD44bkazCS9)XLEV0xm7%m7pIur>q6iq+ze#NUXw
zOZG^zq~A%OkSXPN${&zFBoBpI-HKa^O63>IAk`ez67^9vul7v#Nq#x`bn=>%ms37X
z3DE4-_-LQh9@HMuF4DcB`$HF^kJO*hM;KNcwj0W*9;5I|#sWna@ha&H(nHb!*&VVC
zvVY5N$cD-%%60NAL}ZQparuYxL5fht9>r0`S;cbYgQ`c==H%CszfQTC(xHjc&eg5d
zHR)c|`x?GA&?x6&MVjrJLmE~arA^i5Xz$Z*)|P2^>dxps*8QoQ
zsL#=_(67;d34fq17efLd5w8{(pq0;yd&Hc?Te4NsD7hdVBny>Ik!_N_E&D+hAdixN
ztO!;nDixReoeqb|}A9GOCYNermaTjrxfCGqq20c(OFvkbFmSZt`=>zt$%iju}oFS`Ald
zJTSWm{}{1&h$KJ~CYdCWOSVXQB;nE+=~$^jYDtsYq$1gPnOK%An=M-^yGzz3|4Z(n
z5GkS*PbwyH}!RkBe)?U!sfli2dMG
zz2sX7D;p^Ipra*<-DVysEht>%8sgPJCod{yhGlju@(dAe%d>$=mrary=NjrubEFoPP+0{QiLaslRw
zOT^KVRLN$GuI*b~jS|@uz_PXq#>kd9h04t{R}hG
z_$`HRw1<)<2{607o552zkd*;H?HZJKt5)}+nWE=I>SYu9P>wVSj>+K06}wY#-d+Gn);wJ&Sy
zwQp$~wI{VL+Vk3W?PuCf?KN$eMf;PsNBfu7Q#V)_s4LU$(*2-|)o1CgXfwHCtKl5&
zG@aNM0W9JhVwt2w!b#)NPacwMnJ3^4Mfq
za!T^#X*!8CqiKsy58lSJ8Ogs++1FRjXr7
z^SYb5Kz)qfsL#MmlcUeon=#+)(O2thF{ifaJM>reo(5k-pdrSPW|(Q1XIN}li5TP?
zHe>48Y1m_^F*ITNXft#eIt{#`+hFN6Fk+SwVJt+5Jc2dD498W@(AE
zLRv3vkTzi~wM%bG8Ci@h5kqL6Y_V*mY^|(NRwdgn!hmj-waYpye_X(ZSd4;@6
zzF&S?-YV~q_sAK{?|}-r!l=kqm=&89)r$R!dPSS!lA;&wl!&2}fp#)0%g{cx%6dE~
zo6t(F$~LspCA3nHvKNCYR28F2#IQ<3OU+X)R;^btCYCvfMRcf``ke^R [-pid product_id lead with '0x'] [-main main-ver, all version will be omitted if this was not given or be ZERO] [-cpu x86|x64] [-oem hw|lsc] [-only-twain change twain project only]\r\n";
+ std::wcout << L"Usage: " << pe.c_str() << L" [-pid product_id lead with '0x'] [-main main-ver, all version will be omitted if this was not given or be ZERO] [-cpu x86|x64] [-oem hw|lsc] [-only-twain change twain project only] [-nov not change version]\r\n";
cmd->release();
DWORD pid = process_util::get_parent_process(GetCurrentProcessId());
@@ -52,9 +52,21 @@ int main()
return -1;
}
+
+ {
+ wchar_t* buf = NULL;
+ int len = 0;
+
+ cmd->to_command_line(buf, &len);
+ buf = new wchar_t[len + 4];
+ cmd->to_command_line(buf, &len);
+ buf[len] = 0;
+ std::wcout << buf << std::endl;
+ delete[] buf;
+ }
oem vendor = OEM_NONE;
- bool x86 = true, twain_only = cmd->has(L"-only-twain");
+ bool x86 = true, twain_only = cmd->has(L"-only-twain"), nov = cmd->has(L"-nov");
int main = 0, pid = 0x100;
if (cmd->parameter(L"-main"))
@@ -85,7 +97,7 @@ int main()
std::wstring file(cmd->parameter(1));
STR_TO_ABSOLUTE_PATH(file);
- set_ver(file.c_str(), vendor, x86, pid, main, twain_only);
+ set_ver(file.c_str(), vendor, x86, pid, main, twain_only, nov);
cmd->release();
return 0;
@@ -312,7 +324,10 @@ namespace rc
{
oem o;
int product_id;
+ bool change_out_dir;
}CHGPARAM, *LPCHGPARAM;
+ bool __stdcall change_out_dir(std::wstring& cont, oem o);
+
static std::wstring load_file(const wchar_t* file, bom* bm)
{
std::string cont("");
@@ -778,6 +793,8 @@ namespace rc
pos = cont.find(L"OEM_", end);
}
+ change_out_dir(cont, o);
+
std::string bomstr("");
if (bm == BOM_UNICODE)
coding_util::bom::from_unicode(cont.c_str(), cont.length() * 2, got_str, &bomstr);
@@ -867,6 +884,34 @@ namespace rc
return true;
}
+ bool __stdcall change_out_dir(std::wstring& cont, oem o)
+ {
+ bool ok = false;
+ std::wstring first = L"", last(first), target(L"$(SolutionDir)..\\..\\release\\win\\$(PlatformTarget)\\OEM\\");
+ int bgn = 0, end = 0;
+
+ last.insert(1, L"/");
+ if (o == OEM_HANWANG)
+ target += L"hanvon\\";
+ else if (o == OEM_LISICHENG)
+ target += L"lanxum\\";
+ else
+ target += L"huagao\\";
+
+ while ((bgn = cont.find(first, bgn)) != std::wstring::npos)
+ {
+ bgn += first.length();
+ end = cont.find(last, bgn);
+ if (end != std::wstring::npos)
+ {
+ ok = true;
+ cont.replace(bgn, end - bgn, target);
+ bgn += target.length() + last.length();
+ }
+ }
+
+ return ok;
+ }
bool __stdcall change_output(std::wstring& cont, LPCHGPARAM param)
{
std::wstring target(L"huagao"), first(L""), last(L"");
@@ -893,11 +938,14 @@ namespace rc
}
}
+ if (ok && param->change_out_dir)
+ ok = change_out_dir(cont, param->o);
+
return ok;
}
};
-static bool set_ver(const wchar_t* file, oem vendor, bool x86, int pid, int main, bool twain_only)
+static bool set_ver(const wchar_t* file, oem vendor, bool x86, int pid, int main, bool twain_only, bool nov)
{
bool ret = false;
bom bm = BOM_UTF8;
@@ -925,17 +973,17 @@ static bool set_ver(const wchar_t* file, oem vendor, bool x86, int pid, int main
while (change_oem(unic, vendor))
{
- if (!twain_only)
+ if (!nov)
{
if (main && !change_main(unic, main))
break;
if (!change_sub(unic, sub, main))
break;
- if (!change_build(unic, build))
- break;
- if (!change_patch(unic, patch))
- break;
}
+ if (!change_build(unic, build))
+ break;
+ if (!change_patch(unic, patch))
+ break;
if (!change_product_id(unic, pid))
break;
@@ -1001,6 +1049,7 @@ static bool set_ver(const wchar_t* file, oem vendor, bool x86, int pid, int main
rcf = base + L"\\..\\twain\\twain.vcxproj";
STR_SIMPLIFY_PATH(rcf);
+ param.change_out_dir = !twain_only;
if (!rc::change_file(rcf.c_str(), ¶m, rc::change_output))
{
std::wcout << "change exporting-definition failed: " << rcf.c_str() << std::endl;
diff --git a/twain/brand.h b/twain/brand.h
index 2272393..6133be8 100644
--- a/twain/brand.h
+++ b/twain/brand.h
@@ -6,15 +6,15 @@
#define OEM_NONE
#define VERSION_MAIN 4
-#define VERSION_SUB 1026
+#define VERSION_SUB 1030
#define VERSION_BUILD 2022
-#define VERSION_PATCH 7261
+#define VERSION_PATCH 7271
#define TO_STR(a) #a
#define TO_VER_STR(vs) TO_STR(v##vs)
#define VERSION_STR(a, b, c, d) TO_VER_STR(a.b.c.d)
-#define PRODUCT_ID 402
+#define PRODUCT_ID 239
#define MAKE_PID(pid) 0x##pid
#define PASTE_DEF(a, b) a##b
#define FINAL_STR(a, b, c) TO_STR(a##b##c)
diff --git a/twain/twain.vcxproj b/twain/twain.vcxproj
index 86c1afc..c44c49e 100644
--- a/twain/twain.vcxproj
+++ b/twain/twain.vcxproj
@@ -46,18 +46,18 @@
true
$(SolutionDir)..\..\sdk\include\;$(IncludePath)
- $(SolutionDir)..\..\release\win\$(PlatformTarget)\$(Configuration)\
+ $(SolutionDir)..\..\release\win\$(PlatformTarget)\OEM\huagao\
$(SolutionDir)..\..\tmp\$(PlatformTarget)\$(Configuration)\$(ProjectName)\
$(LibraryPath)
- huagaotwain402.ds
+ huagaotwain239.ds
false
$(SolutionDir)..\..\sdk\include\;$(IncludePath)
- $(SolutionDir)..\..\release\win\$(PlatformTarget)\$(Configuration)\
+ $(SolutionDir)..\..\release\win\$(PlatformTarget)\OEM\huagao\
$(SolutionDir)..\..\tmp\$(PlatformTarget)\$(Configuration)\$(ProjectName)\
$(LibraryPath)
- huagaotwain402.ds
+ huagaotwain239.ds
|