From 9beac7b56a2d39ba18132cc137cd9ce6df9c7ec3 Mon Sep 17 00:00:00 2001 From: Juan Linietsky Date: Mon, 15 Sep 2014 11:33:30 -0300 Subject: [PATCH] 3D Physics Rework, Other Stuff -=-=-=-=-=-=-=-=-=-=-=-=-=- 3D Physics: -Fixed "Bounce" parameter in 3D -Fixed bug affecting Area (sometims it would not detect properly) -Vehicle Body has seen heavy work -Added Query API for doing space queries in 3D. Needs some docs though. -Added JOINTS! Adapted Bullet Joints: and created easy gizmos for setting them up: -PinJoint -HingeJoint (with motor) -SliderJoint -ConeTwistJoint -Generic6DOFJoint -Added OBJECT PICKING! based on the new query API. Any physics object now (Area or Body) has the following signals and virtual functions: -input_event (mouse or multitouch input over the body) -mouse_enter (mouse entered the body area) -mouse_exit (mouse exited body area) For Area it needs to be activated manually, as it isn't by default (ray goes thru). Other: -Begun working on Windows 8 (RT) port. Compiles but does not work yet. -Added TheoraPlayer library for improved to-texture and portable video support. -Fixed a few bugs in the renderer, collada importer, collada exporter, etc. --- 3d/kinematic_char/level.scn | Bin 15257 -> 15248 bytes 3d/mousepick_test/engine.cfg | 5 +++++ 3d/mousepick_test/icon.png | Bin 0 -> 2451 bytes 3d/mousepick_test/mousepick.gd | 32 ++++++++++++++++++++++++++++++++ 3d/mousepick_test/mousepick.scn | Bin 0 -> 38194 bytes 5 files changed, 37 insertions(+) create mode 100644 3d/mousepick_test/engine.cfg create mode 100644 3d/mousepick_test/icon.png create mode 100644 3d/mousepick_test/mousepick.gd create mode 100644 3d/mousepick_test/mousepick.scn diff --git a/3d/kinematic_char/level.scn b/3d/kinematic_char/level.scn index 785db19adcb23d2cd704a65a4c4a7619901bce41..1d7e5a4a702c968362c99059b0ebdba0e138c83e 100644 GIT binary patch delta 518 zcmXYtOK1~O7=`~kb0rt9v?mH8jM6L(^|zR(`vaq89s6@{}fVzYp&5! zUdw4S`7ZtVdF0hnKFm5CIuc85!zuSMZbWgS!sgR<1*OZbyErA7VvXDu-`Q zI=ol;p?kR-Wi>cQCJM*y5iN&)98eB?BWgKVU=O({EZ|-S=(6{7{jd>dMp7`{uakkK z9NRK>grR^mXp0F|7Xk7$Ok*V8unRb0_5n&Su^0QKx-Ci?E=ezA_m;ZWk>+J_!Awa<9J+f1 z@r1(x`fb4P#%%bEN7R8dc9mYs4!WYDEnWbo@ zW~iW-vF!tg2-4en5tN=p!5nmmpr{uQUIOkQI7B?`pp%)&o`?7Ld)~wIEY=^?d(Uc$ z0z29V(5L~_mU{chnWxe{;iftWg~YI!ua>N$b*;EDm?bCD^trE8F{-5$?a>=>E`CG( zBtM~jG|JD^teJRKsGFvqit4T)$pu@g{B}uPJqgwPQX)<{sh!jOE@rq1#kv_IBxCemwi{qZk!`&W4Y8?k{)E?Grz!Y*O+$vipD z-X|x{uX7u?j33bIE>z~Gck6=vG`|jSgx#(#wh$DZ0-!vCA@u%9k8&@tfV#~2%N4_z z1L_$MyBwh80B*ADsbhh?Hju4tb)fSs)h2?vhQMYs5^H9<+5Jp19t`X(=jqQj&p`nG x(=G`iKoA8AKq%k&nh^xj?tB|=@&jF`Jot!rDgXyQF91PXBrxf5w~qJl{{Y@=pHKh* diff --git a/3d/mousepick_test/engine.cfg b/3d/mousepick_test/engine.cfg new file mode 100644 index 00000000..093999a8 --- /dev/null +++ b/3d/mousepick_test/engine.cfg @@ -0,0 +1,5 @@ +[application] + +name="3D Mouse Picking Test" +main_scene="res://mousepick.scn" +icon="res://icon.png" diff --git a/3d/mousepick_test/icon.png b/3d/mousepick_test/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..264f991e1526a2482723bdbf14287f37c30b7907 GIT binary patch literal 2451 zcmV;E32gR>P)%5N&uzQj|6~Ht?Ne|DrO?=i3KbIBA9wWeRY*EpT`8ju>qmFGG7iu z)-xF{TzZL&?_&-D!X77Rr8N>oNDvThZP6^`sekhgI+197@4ClkWCo}iVKr>BWrS&M zVJU@7oB>*+w8qrym>?i5S}V-w69(Unuzsg#Aak@i1e7> zBYSFPJq*L)C7?tww$0DJ_yW_YW2#k5t%kB4l<&8GNDib8YG~h%NBN{y+}z&bhcF^& zvrQc`6-Mm?ln9|xyi_b8mW6hmmd25IL8-Xmb=@l@6FF4R@r`*jP1gGLA>mBwqoJFeTrVSw&8AuYmYDh+D7&fw5bR>XcB!3r%$`;6hwAM;dHHP0$rO`vU zN1;#{XoULEGN?>zN)k_V`w);JpB-?&88Q<}sev*$5P(qYu35+k86EZ6Uf@Qn8;?wI zkP+^efKpf@{4hO(C8lcYMS92%e4V`Ksy_+4wWd82myN5Di;K7KDwW~XclG%Dv znbDe{u^13q7Mq<)aLjC|1NAQOMYXC$bI29pSRN2*O(l^;iD* zRv*xkz!X+wkoF;iOcIDaC9nJ4krB$tBoBY_G=-@tYN{3T_KdELi|5bt$JbxS{`JeO&dgBj_JkPP*IM)N;lo3h#r7ZxXk#92SjwZWL`Gbr z9}dK$9aSSjCY9n>FTRNDd3-T7#aI8l!MSodUio4|r^8wVD>7ZVQAY@b>{`AU!5D+* zdHm+(mq{cNYz8&*pM1ila+!aX%DZQRqgH@e3@D|19-KJAbhV1ndOr=+K5|S12xB6m zC_+SV9EXdSE|EKVlE07?p`8cu=VK->gIRfv>q-9wwE-v!wtFMwurFi$4 zeBp%`n4g~?crp|VfNC;H;JRprJL%b5DTV>Um}s{W^aG&t`ND+@%+AgdMG>y+^7-eV zbLPw$&YnFxF!)#iSVk!MDYg>{GPT-}%j0fI^k>9DU`YGSu-gPhWFH8YWpV1%DPDW+ zHGJPkDTVL*G@H$VOW{}mhypDw2^>YmILItJy6;?_z`KL$n4?mPTrS7b(h|vJk{dT} zP^naKU3XwN7^@6g#-K$ev?L~0>1_Q0#q6sB#u&8LJ&fq~glsm;*47rEefAmod>*g8 zg*Ju+3=gx@l>8K_ARwB^LVPd~BK!M*4g)%%D5WTu%T%k?-S3rBEG;cjC=^&*TN@t$ zB|@k*k=7HC!2lq-ur+%+!OrMt+jU){C}Meend{fD(`+`eZ5ypMT5C2oHfT1Rlj#Io z2NFm5FR=Zkvy=HwORSV42m(I%-~&9*{>u*oe+I}`ZWKZpXa#7*SBwTzWupct#b3`P5%1!+tfv%SmZBnzR927c!Q;- zC7ycfDc*YPE!Ni7$mMde%HPn7Av=n2V*KxJQo{~IXlMTY_uuE%#~-s(E;BtnO{rAk z>tc~02$-Ip=Iq(Ch)68W?=$(u#l=6z++A$#3m((8vAId3(ZKUOKK$@QzW@GvPR-5X zcphO}7TIhT-}lL6GUW4lwzsz_7K^)PI9ULWd6Y^e?%%)9%E}6kvQMGCx1hy?gig^wUpKN-;Y-%gK``d)V@S3qYs;pPQRwZf@>qHbozY@n7|$K5tF~ RB2?yZ7!UtQu{!!KO+zH-r#k0znd3 zFjWFkV~KX{LlreD!B}HU3koPIW;YN4H9lgcm0GGqqo76`D=OMldB11w-k9z4d*0vc z$LyUmGk5-+Ip@rG=FS{`QW^>|`fmbb-Cr>Frh~C7$1!#l{?2tV)^wWrw;IojoQ!Ql z+*bVg$1=7QalgdhXZX7w?;W-=hX0#w%+~BM7#qh^#$H`fSzEQRw6bbx6+gZILdJ5r z-zaA?A0yA2#l~~T_~lg%^(&TFR(Y3JEU98+_!*9>RgG0k8yk$Nj)uzRHOm^kDD8~# zi|Q(>8@wxP8fq5QRk1YgZ9YRLI^?KP{a7M3^f7`vjO zs=T6Z+2RT|h0pJIo;|LzzOH_GdByVO6{}f#|JV%svih2(jr?=@mMV5mzvEoT!kUK4 ziscJCey)Ap@tnM{X3-+P!p0`>*&Sy(8`hp*j8R zq6($o{=IgFHcfxGpG{l4zCYzyGs@|=Z?0(Dyq-<&x3}ugHc!^_n2V=N4H)@rZQj|& zOjqTKhQ|6OT z_!5?W8-?{7dydF+W;0*EYmz*Nt!?Hr@uK~F`2x262v6fIl<5rCuPR+!v8<}1tf;a1 zbz5_wN7i0ua|?f+a#clR)$$t8GKvd0zNi@$*$SLpuGJL6o3)xcHP#0w60Y%O5?PjgSx z+??@udSq0srD<}13e+_aJlWi0yDS*GyV)f-2i&aR))kVp9U2SW->lkLplE52yXe7Y zHxj3?<}HkI7=eB}>z|lvo64GNHJA%-@0rgsxJzr%m<|25xtYRUJ#OZ~ua~JJoGE^@ z#P2lmn@zv^N#vW+FS*%F5t)NuFFTLIL9cvORl{Oqg8rm7L6cKLD;89-^Z5*Y4v|4+ z(N}Uq{qja*7T9riFwBb`b84>O@3qvT>w|9u zw`i`Sxd;b~W`#~ecoxDlizXFKLwKx~TKIM0-wHp`T!nwb`?Gkx=Ic*oTDc=sv8-W5 zUDcfh+8>ygpRYY`-}iYzV0MQ~dg#Fik3Fk9j6*zd=c~Ux_MLvLRS%v#t#sMqs^wL) zX3w5;EI%B4F;o+L=a?R5K{fr%!%rQHX^jsA=DnSM!SA$ZVxK(lnBkHp?R(mAIevWe zJ>6#o-#65;J5zRc@7e5(=S{xbP^J4EDTZt8_-%)}V>>6sWB+b4+)~}aG{n7g;b8aK z-(|$VSa1X4&i!Nx;&yERwtG#68b9ma0>jPD;i~2u>)7~x_mkUK$7(#kH{6aB_kZ8L zasO7s#WwR?&E?4W!~Pemjx`$Um^c3x?Ecc{ipMhk-4uBDsYS8cgK1QF;O1kEF{&Je z26m#LmtCkCWd#0?HxBXa43r%B*_3$qBaL0ur@*hC9~)bw{6+M2*1fZ1MD+=T7-A#Ni$6D0fN^r0g`jY%h0W zirS!gF%3Ie9&dt%w@9lpI*lm19Wf_(JMw>z&_dp)McGn>p5>b~H=D(`v4=#c5ux!2 zMc4xfJt0E-5IUc4(sS%nF*LV`xYxxSr;u+SFJTw(7CncZ;Z=CiXzdG$QP zwu1Q)wj8Mklm;zg{}zn@iPDa^dSwfHM1=MtbcYCij?fGd`jF?#t1-x$*QtCmCH^)> z6Tx#K1`S*Gzld(`2NNUEQ7>DG3Kbqlr>63wtVQu5G)0-u-d5IVQEiBAHZ`k;KtwnGI-ykA)(kGW_NK|M|WVEeZe z$N7*vYvcD6oPq}R{bB!)P{}@YH0MZ=VpkwT>#;^Z`n8nz$@{mjMo^1mR8>TM$_J(9 zDRINg-cw5C-#$OqkDmQj*(Mj>JDY+_5d8ZiB@|qW;FnJ=qTn~mHmMKN2s7*nNLw4b z5L(7nDGLf2VfXR4^qlsL5z#|z9Usyn@??y(R;zV|!qS1N%Z*6LD_uUb*@)QxeJ~y? z;w_qL&w;dG!QEQBqX1(4D~OruXwK-2rMwY0TG&bMl~yT#fhgYu?NFiZEe_~>?ATMs zAk=R|c0W?8wHC*VumHC`@-M^d?0`nKJ5mCAj&maP;N{Iu1RZ2Mg4+%mUi&prgnq@T zMeS|Sxr2Ndp+7*ioI?06Y?Ve%fq}Ig_dg9W_rxqdcD(LuAU{i#x=PlA*uo@&Os+0|e zxmlQZX{ew5o)2h;F=XF)23R8mJeJwUURO>^nXph1*5S#OGQP_|=xa43eZ2i!@NXP! z(0(4(yz<=(j^=8ro}sy<+cQ*jaQ8)z( zs^Uae#Hmr6Kg6?x#q8fa!VZ8bEi4Dwe$P*6Euw2AyZ0+{=77;M?WisACND;h>bc53 zL51GTd=|)Thwd#=D%o?0*}=LIQXk*QK2lDy70M3u@jaf;9)_)rW^T0kFXg?6s^i0K z37F&78`vA#aa-d96;6ofK`oNG#uoSzl|-^+TVRhT7k2bq&u~^}Re(+Ql(Ma!knUvN zFm#ikbYw+4rCZOtxazp3N;iIKR2^rxdWNMphBqQKj)x@ogeXEg_yOsWn_8=mJGN@i z_%q(U9dSpLHkhs`iz{i;qP;&|6lQTg#6D0rKx}@)yQJ8KgNtCLY#X-Uc^E_3#okpn zU|1(1blVe$LoQp(-|jpd++>?^Gt$pdT5b2FATZgJYFqt$>l*f$l5cb0+qxzzo%s)} zVRgzz+iOoD{woBoKZd|fN{;Qp?U^kzRQ3YzIP-MWqf9;nEs}B-^l1n3P=SjMrqv8dHy(psSl^(ON&e?AT;Gt=2hDr+ zDFm*B#y!xuzJcAzeYOe(0Tm53cuO$b`2w`=3(S(igN}n>&grn8ee5v|*RLQ}s{Pxo zhYD(VL{lAc@X!rg)8e=flgotfGHz;cymSBe1^2+#>|l0?#{6TA6*-usqfpW`rt`jW z54_Tp_iEWwfm1un^5Q%`CiS#c@vk4hHt!rBmWt}HGh9IVQ0j>C)|i`{e!CX{eHa92C5_>-{I6E}4B~x*Gt+#hz3%9E9Sk9=^nI!%$Rmm;4!K`r=-#)~;ZRc^E2R z>sSku{~8Q)sr?cd=3RW37S_tIR5c&#g0-pRhqZxlr)`9|cjCbmJz*CLl~2p$v@ zZ=2#p%O2#;E2)KVD`hOzld5_3GFIgYK&5K96IDcOR2yL}&na6h7se*4wXZ`wi>*MPIKAfJ79#OFrM+ZVV0s=9O+RuNh!P1rMa_uS-iLxt@x|b zAm4mz9JnVKmxp892>?C8H_CHgc$|Wtc$%nr!S*YCpeCy!fTD;Nr)~h4MT^l9Es6po zK^NuIkIJ_aa*71g+4N~U@Z2Qt5O7EvqI8)2+TwaNb6EO?Ks@h-4U6}`Lu@x}P z5%y1|UbJbxiHW9_%5j28kx=y&hqP!(TJdpkCBjl>pi4z@iSSNj+%3R6DB2IXk6)Mp z7^Gv~gv7_ELUR8GGXqhNZ-jCH_V_C&K72|1P3X;k!;;V&4?_Y0)eNuWHi&mFp&aKN zs0~3M&708)g(5%{tiLWk9*77q$xq7qFn|)Ej(-C5F}@33alR4vLl@(DfRo+>ZCYY|8_}1>*W-Xkp&Wjo%|g)`%ccL@rUJBXj8In_g zs(Xg)DjPk~a^ggfRZE>|9rDe-Ts05uO`tf~ip1Y<>`-g|O)_ z(WJw6ptuKV(y@E?J?(D-YRb^&vkM+81`H_y=8r%(2>VdHQ(B+VS+SAb1yEDSn}WT7 zDFLzWx)?EUVR;i_FC%o6CLJI!Cz}cmL}0j`Ks=jZv<6rMJ<;23>}e6|MQEx>+oo-T zD2rbZ+H(#?Z4{N~fm~fqqod^bVP21yT6M2pd zM1(lj>=~8;lJd|WpZwElwFsb~J{dp=LA^xap!bxvP!syMk$1`WKtmBcSJ@~}hyI}t z=OT6$Gy-DQ#j4aJi0b8pi70e75;xGo6dYHaayQ95pqY{{Uk`;rK}#@+VYZ^+zm$-? z6)Gq)gk(4D0)oqwPI(n{9>FJ+PH7sfTSV^^f){aq28n(UI*7z>eptF6CdE$zT!FUrpM6iXMt^hFs%=rcfS zw*xCU0y~D=eh0wL9Lx+|Hvde|u+XlHAlz#SZaaFRMXy0wBaXLVyIfG^h+|Uleg8t( zl8EzW;H#)3C5~DrE7ejBR&Z`dS7VodD%M~T#~xU?f1N zo4;lu^6 zh&pSrLOubEq;Ipo4~%5+c72tjgy5c{%?P|vxQ5=CJ48=*YvvltUf33H)7&yGV~Gqm04kND=^;6e zO%=l@VNb=NwyfczEwpEcuOc$m!h~71bd*oqh2T-ujBxlQYVZb&=Mt~}2=P$76>YTi zL)q%w7OEcW92M+A0koe(bt*XqbUKB$0b@JY4$8EJNBMygU9fsCJ3-4wz)-J(#RR>9 zRgjAv<9JKoM)c*wMFDhT(svmFB0a4vFn1UQA2BF%FL$M?jIp4^m~-ug@#`+h3-IxB zbH_QUC}y7Fl6GG{4m+GxzN6iD4$k4Oae0B1pN@}x`Q5yD&96^4RH@>_s}0wgt3RF= zD{QNa*Pq$zM{&)M4pjp(e|pWuvCH1OCH{HWT+TE1URilt{L-B-7f{ZJ z9$am>c(yb4Zsz{j1!L-ra_PTcyHX3F>PvTChN>g6jP5JO?Zsxy2fuCazUap5jatX8 z0YLMu)ke9)#(H9>OSML+169W!UshoF9J97R(*4ZK&mwg7J?_|VCfoU8`@F!Lp84Fz zuzf!!FK~aTEjIg|LgVn5Z%R93HNXBWb{$vI$xX3mUY>-SZZ3E=_Q|w42$hZhEcQfu zA+W>R`{ejvJFiA4;|^E6yRj4@ups`?@C<~4#)sWguYVk&uc!Y!*06XEbo<}Gn-f2H zG8ZARHU8rT6A)@xd`9fa{cVO<-hKJqF|CPR$D@whdtQyL*O?J@q_wbkPU|Eis&z_o zPBvohuFH-WwtdQb+37rNpA-M4R5sk&QR)7W3nsQ#>MuDR=4}ZI0RRJRbYWbB{v(e{t47V&yNqBKqzh>yH0%%Jm4(3rxM<9>2Y3y@-EwC_8@a zjmJ>f^XC@DYhT9)YNh6|e(UDE5X)j@8%q&GcH z;#vCKZS<7Cc=M_lzZ9P$BGTtw`w|&ruf8D%or`LxKSDlj{N+zz)S5iC;Dwz#c-# zYu5!l&`g%MAmBM<-3s|9iS)Qf@fLcxf@gR79)!Im}ii8wG1N{sL&20s-(*?2!-JW(2FU) zk!M6HhMB51BFYvy201_=oFy|qMPT=+T|8rIF)tk}v<_0S*MGspF?9h_V2pU+x=ZE- z$f97>xhuo8C>Zwu)G0ug1S20HOG5Uev*?VK0T>WJ84k!(fD8vuO@%yP?uT&+kbNMr z@H)txkYJc05)Cs1;V`^oC>65dzko+YPRIvu5hf1uLCl85Awi4c`xa~N>5`#Yemo$S z^ngs_0r?O5GdsFu$Tvusr1S!G56B+EU9iXLfM6Fu6968d#(wA*Z-Jgc-~3>u&@394lbk<}|8Tjg~?^#f#Xy$&dU04k4hJS>yG zL)D=DP_@U6=orYN9|{jSk2;|KekeRDgZlf)EJYo#CVto%G!Zr@KnBkZEE#~IffmE) z1YoxSbn;=E4(SIRuwVg*64GG7{IFUG!Gif=v>KNw9ILO07Tr2ZODF%*1G0JapC5_UBJRWMp4*j1j(PDdQbVCf6Ar~_u-4^xk!gW31%UTA%e19qS6Ja^gi0u#4p z2M28h(0rQDf`gciFq`2S(KkqtGCU7L@FTXf?dyhN)G#Rph?X%0`SruWUI{Z$a1i#T zOWVN5+SsM4is2#KlSb2(ftg*x1O_@PVeTZu18apD6 zW&ko3gQ@9)J;4*-CRckJZ0Q8SFXde%SO`+8t^2yoP9$Nnis(+Lt7~n(B+U2Pd}^(} z@rPgA#I4u{g01F5`bG&dB$C%q1^PxG9ThY$OV0fVNR;WfVRc-YOP%9w8fsmVxu&(9;2{P3um^nZhag3 z9DAX#r~p9K#z5vSq^;2gG7pM8hh+jmo^6IZ3+NGBcJ3@M;Q1sY!fy7ouo_Q2G=i{E z5R2g~e51g&WF#xfx`Sm%AP5w!XMIYwOt{E%AOUSKt$AfaJK7=W1^^IG#ZY@?0!1hw zIxPn?(tH4&HqS{=^NkH!)JZ@HvVhOPT1b_RvS}MJsihn0v~6gqSKA>IqycNY^&E-J zUOql@oK(sgY>0jWlP;_ZCegSmV<7s1st2>09CahDqTWgnK zptU$62)yXS7@(8F>S8e`5Ka-GxDzv0+=MP#B{T_WM#9`#4SGctgH(^&V6 zd_&cpCbnTWsHHNdwYVAp$RNNHP`5Sz57@P&0OhFddkf#X>94 zOkfz22YP~vvPUzEB^XrkmAv8m2$~NR71S5V4p$NnR{U*eMSi&!Z03%(&00}`r zcLoD$akh)?6#&Lf*aScZ&)}iLQyP9*04CxHj2Gq*q{e_;@RR|Z&zNz%#b=V*CTR6G zUXNJ~PZr~XHe;b(n~bPHQU_TfAj>xG6tp}Qxx`cV8EOKz;0Y1QCOR|CW)J9{z$r1{ zl$IZ!x}b!5AT}5`ydD?pR)*;r1iOfv!TF$SK}9{ab!xEEQwueR1bb>T)7UsnKBUFO zBhOp4M}SeGrnM*7?|!?9I7C#PijAfw5%RIV%mV^wP@;{oyCDyPR+}(60c>QiX^xuM zBg(U9wNE;2ErJhniDC-f0^p0D>0KwWx5~NqpZR zRhm;*#^;BkIh$IBB>;*Uxwq%YF!2E$pF^^-p7k6>V`%25Kz3{G4m1|%pbj57FcnnS zfo<8XGjncl1NdG;fO>kg_JpRgN7W2a?V)Y-J3YeN?+6e)sA*-t^Yl(HXMV!d(@Xi9 zI|6n>1Xzq{JEnI*b-mNuF@sI2IzBxLh5p=g!uHC_yH#z+j2y#@CS!ttzUPo$<2UW{ zU5hY(^9=g+3@$p1{i%l@yc3Tx7{zW_`1qw~0%rhH#sE;esVV^pQqRPaIRIH81Pv%& z9RNB6Y(t*{K#YbvgK!a0WDHO>4vYxCua5z*#fdw>oUsf{F>wMy0HZXy#EDBZwNRym znzZ>^#6d`k)`?!MXFv19ULZt614xNMB3P$Y!wwQOGl7E>cnv5`j%&pN#6b{%D+$;^ zl%SQslo}SYT7b9N0|1%88c^;4u%gg%KV*Uec0UkhjM8A4ax^jkK$-$f$N^gYl4%H- zKq2W#K!E^+`GhC}F!&R|A@P(8XoVi(yI4R81F)1RWdJh-6Z%H*LxI2%E?Gdzs7%m% z1S$x~08EaVO4%j*33j_3v=jhtgdvN_K*HmIgbDA{?nJ~viV3*b5wWKiU^bD-+86UQCu7v@_iv%SmZr1D_uFw|jx41N&>A)ZG#hwI z*h@%-R3R0|@G$8F_>Fim2i7hZb4P|558aVnTwYhU4TTL&44LpM#X2OV}kP|#l*7P^S!2Qi`{7NFj==)3WdVN6*+ z9vrM@quvlQHKwuoGnU8PvksD4NG_P*VhTG(k-@)36Qd5<9(g0yeoH`9Ya# zkQBy@R4v`+Va-&bDl%GCWF}RSl|)TTqOt{Lb)p@W$+qdNSw)dEM3EVq;J$4pYfiS+aK;+wNS*VpoBCExfxn` zS@UhRBGFby6(*QuTSA0Y-_oS|>PJ)NK(l3nM>mV&Egmfw`7ACp2+HDEqo8)<8?H+` z0*Sel41Ajm>|F#_l#NVH=XD-y~7@3CiN!{bm}z01HVMW0Q^pI&Q(92Spv0%swRY z=Hr{V$-IX}s>QBHM5;wSnnZ09RI4UfV2;17!!#wEMIjcm9;4y0M!ZwJWwrEiL2Y5b z#S0i?_JnxR%G+h8j;bNu_N1vJzY`hL%_R1FkcAgGK8xBasH2H8 zwh1boJ}(M3J)Km;_R%%q^Bf6rFWZSc18DX$B5$Hf_N+*?s9l0eViS8#4EFQlEo-n} z5c#aG?@pp#6qLoZZZi!C&14!r^r1D0H^o5Y+j>kk?GZ`ow!J3VD@beTUlQe5+}M{y z?N6c(jHVJp{jxdKuZSY8p?;OPooJ`6PmDWz4LN9R|6Am=I{3OM(xMKIrpyZ18-huH z8eKknQ{=NW;!qOxXF*v^`iog2dn-}<;nB65Ok#iKCWLxhq^0898CwS|3vEX1b|MOKS5$IMjCoE49crV<13 zky*pXNi}>zH6-|C8x#YPDB@F5gvF-M5|#f0Z&T$%qLf7C2{wJ6VADTES~~jzPapE0 z5VXanFGWd~)PI#keJv=9g(n3ynoa5Kn?xPonssPqcmE}FS~Uy{%F@?=n`N@^@CNDN z_u@^fj#K|x2he&38;^@n440z-!N;NsC%~`y^dz3=C7u^0o|h(`g^A~n6VIO{o1=`K#oT4%cQM=}W3+@qd6>yknYf!J%6D|6;xxW9QT`ZEr;Si! zLAge#aiC5gp~iP$9%K_ZEu&Db5V#PQO=)8JbS5Xm7D|+wCfaE&rp_`coQ^UVQ`sY1MF^ppGWe z&KFcKmQJSHc^1gG$U7QL`Il`BfIIF*+~U6@2&Bq)n-`GVTb zE=Fm6W4u_R&%xit&`PYaWOfPuE))WGDH@cD^_J6Y3iCm1<^WRt2sthmISNFM3r2GI zkptJm68Qt5@440 z**wHj>a`-(5~81qREsK0qJAc*W|i&~L4 zpVc9jQkRHSi!=Y1#S~j6-W<)RbR2Lr6>+&JC0#RBw!y3;K{X1>s$qqoEVW!|rm+a# zA3$qXiE>8Qk&hGYW*xVPv~(<1%$EN`&{n^0O{&FQL|JvNNlI%L)aW{7wpNVBI#Hq} zwJjo_#pBxrg-eadLnC~r$ZL&NtC^~q{l9B8l^E||iW+d#Xp}^?jn2pJPNMD+lvVq$ z%rq8F)PC>i+C>fd?AHlC{g+5f$HK|v({BWA@##KMlEs<(lcFoJLFJ2JuS(>+7p^J)h-<^hr?WkXCC=;>by%hLioE&kCB#zdK9OqG@_$)D zv6szSP(Hv}V!U4woO)H1VR5QYjpoyPq8IOrGAup~n5{AMVIf6QVzu-`GYv;!O+FnLZ(4l%X!M&2K7A}| z_#~-@!O{8Hr%BXjNz^|CWz{}prs3ShXg>WDvBZflL>(5NPKdnu>`TN_>Q^Gw;>Fh@ z)uK)&QQrtEnNQz}Ui?dxVex5L=i{dcj46STRxE zY3`r6=nS+d$K0rJF>}kn#mwyhYhiA!kzM)@%B}C#QuR$(zNmD}nn|JzRd3a@^(~sY zn6hydd3I?gpHgTH*uN|`GJI*ss+$S7sCn|<%N)E0#9XUBF`BjPnvj-M$AVGE;g|v zl}*C%Peu;6$bnnRc^K^~5hJ;G z@=W8Ynu^>mmfexcrlZuEcw>fm14mVn<2=O8LfrWx4!58YHyd#mAa0I`Beb8Yhp}Ry z6KW_~FGik=cq+pR0c!`uU_~MF;CtJAGhI8ScVc8*IyQB+Q}{~b!xtNRm*{#{fX|ay zW1y7{B0V5JS0>W+!`d+Nx%4BH7L@0U{RHaPJAfL@F!fpQ(sT4& z=u`N5a~We}k54pM?!+ERp+D8TKwFpBbu$%cxaX*VnDC zu3swr@-X#U8}S9pOqs^QWm`Qbz*uvvBA_g#8lK*L>r6t}*^ zWqY~5-=^YAI=;BN`{l6dDyFAg^9kD9FL(9Jef@HjJ|>^+X9NARx2Lw>i72G)K-!t( z(WSZMi^_B$R8a>pI0Hg0d&(>BW5RzBlmq)1Yz((Ul^BHE-h;gfxLJZ^yMz|dmt8w} z^f5LSXj?+o$eoZccrh|g;8XB>24z1JiDz+nEYCaYe|p+!es~vBeog*^ex{LIq0}Dv z2e(3Ub6_It!N>9-JZ_D+6=IV`Q_kl0jvcnZIh@QngBsZXZ_b5+-}R7dp$QmBX5;KX zTnmK?dfY6NoCiTS5S)fzFI`ON`G4~(v{Rc9JnOU&{0fny8Ys&7`i0tL_!i0XlI&qrX1+Xv)_2jssp_Q7|HKd>*}Q?D@zXBm{R#F`np>2~4%0*}i%VWqTx zs_V3d#Wx2&8vY&5NrGam15SaoN`v)hxa3c!-5iHpq`Qot8<1A*R0rjeAAX4k_Bat; zvep@c#p!KSgg9?F~JM@Lq&t z8Vqhxtmx6A7ZCF+#H=e?T67y?ouPlyZ_)C?yrQ2LEkf!{E%hUJHSW2aj(<0!r4KtcWb;bY%?BYAL)fXQeMG|fTwQDd-cc1AXtVI=K|k#w6Q38AL3 zogsc_ir*aZd!G1B;jV<6C?@f7+60(!r_*c%26Qa!t*lMbWHuH@#(x;p*%-02p$=o5 zON8^SiaO&a?J8}SHiez8O&LeNqY{G)Q!oLUr)Zg@97x>-ML7ope3v=E(_Qb|7%Ok7 zi%%Hpjqw@I=J;7n@fY@m4VQhJzB2wCcR9`(3dO!TS#7A!!}nesJ7K>t4if|W!kYhf z$@uu3BlD0qaGNVW8|{4N+jqL}SU)HJC0EDn2%a9h;K)4Oz0P(}?inv#jYA%9oinY+ zZTK|YyM`jU`FyS1@Z#cosusr1LD!gxL+0(FlROHwbzu`f3j1AYrxN_UMRVcH3+|rt zKItX2(#y8uFi#Kioz45SL1yq`QCCq;kKvLpIrcy|AMc3QD38Ha6(7TW@Bzs34(toZ zCJps!O-2_?Tq>PN!Cqo9Zc?55VS4u!Jj^%Q0)7~{?Og2$*qT$gifYfmZQ+K3Y@^Td z*S7Vsl0~x7<#^+n>td_cU2pW+zqUUU`wBPqyRdyzf;*$BICpmL*Aq3I4a7jUu{Yq1 zBf{qLS^z&4ArB|>>V`X-KK3;a14@Lk#Z#+qWPd`Q)wrd43IHn~H#<9Vn5?*~uwtXM z@8ib|myT&cp5KD=u|7xBm`7uiT5yF>ny0>Es3>9{pD*_!OR!(gw%xF!?Et<)y1l-sDBBK zJcn40E-N@!&GswV>@Z@6?H58^?^jf`;e90+S1T#>3P$QK(Q#T7ncZH>%klmq96|dr z$NeCTTm%QahqQL)^K_!_Z*eYk&{KkT-s&mG4B*37Tt0h6nU6!bIau!2<1X`6XrD_v zOg+MzD*G7p0KPznA>duwK(G?BF`(5lhi4G+-{7Fv>1rxM3zRsUBtjpmPBsQ@8~}z_ z*?6>W0K?>FxAGwjN)SCDP#MO#j04iwFqP%(smyG)RgG(7x&_g zpFlKr3u_rv$wJrKgnbQfd*JsQ~_t8k-k6 z-ev#dKKaU_cX4+)s~Xof-^xQDzxEu|P%_+U>_@zI5E#XJUw4=BX2BE z%V1|Kxrlp~l5LrvAoyG!9O?xA%ugb`m!hY@t=*Fp*k`zH-y^`Y0bxYayGFTWSE2DU&9 z3W=W>6b(ZXJSf>xo~cL+9+w8%)>k;$%FHzB^^YH`a29z-4+g!#Zoy5Jn_50K(0l1d zvJ~v>%zPRMTna5)Bm>*AE7gc}$CyWr0XS;=G*)yQ4shoe`LLcIW`-I{>HQc7OfRY4 z!197+>>o-se386+&a{dQZD6h&OMa3(+D-t2Aa8d^W2c_aEE_TvsHp;j)v*S6jmO8E5;@f3ok zU4=$zxL7(L6H(alBTQLKz?5>i5oT21riW7cV9xW8)TD(r$?-4GnT89cFJM0V6U^=~ z?3c=D$Dka3*PtSL2qU?SmttKKfEj|{COs6~Af4MX31e{;W~Wz&XID6->rufd)sWV% zyWa4zFFn0kyK%twMR4^N^d`*S^&V5URIla%9)2bKek<8Y5448A-vZ^^2)KM@Jiv^Txj3#loGhY>(cY3 zH}Ac8L7Dwa`-Oomu=eLEyMqDg74XWX4Z~Su6Mj`}9Ke{OJ|9eRDMF7Ce}VzrYq|ur z4q!FY&c4CS@59O0=G>!~jHlHFV{haxgyMw};(2>`9E0s5wJ-*7Jg4V^tTo2r6vp~< zKipT<#Z#pTxtY+g!^myq{*}A+eB=U(4D0!Lzm&a)$uu8{_vTh%G95yqmaCE5JjSCe z&jUM-P&w3m2!8{bH|OAGxO$Ot7#3jt`n5SZ^#&#pjK=^bknc8UVCTxm3O8ricf)8r zt!#wAPgTi0M!ZV)|_mmqTEyZ~D=S!I|5P2x24H*@5+Ag}i+R6fEUx^%Z}03y#jO z8uO?>6w$&tsVs2bFe=vgAWmsCg-SCsn4eg!#BG7km3ByZkK)8mBUp{%j)Bom>=Hw= z^nCQGmUx>}Y4cwL>@$=Zx_p;0q(x_z8bj7{t9sG!$-doxj3iC59IgN$?CxDuO}LZ zu|b#5+`L-rb6$_mEyS#(JMHgcikk&v-~=2~F%oWrw*O4*as*;H#D2odff}+AYU*f_ zsTY7LT~LND`D~gfefBN-%0NF*G0+S&=5=6~Fw>M`DHc2(Mgkx|@Gb_($Fh)OYLSYO zRG}zgsQgJD267@T1CYj)iD?t?FRmZZb^`|mv?0gy7?<)7(;+DwIO=)`*brvZY-%k+ zXL7gvz`Ip>TB+8A`TmJK)IJG_V0QPBT&-LSBk_DBO5dJZ17Bvp$%CEjg-j)1-h^31Q>EK6Z=qDoo-bpT2Bte8--C$)a#(;&WIwgT>`Ayo83&`R z4e9yvc8C&^pGER3AK+T&fPE^sJQ1A+5LEI3326#F1Ha}J8YNp1jKhsi1o7V}+W;>C zVk8~*+l!gOEq!Kx#!%U6PqF+0W-W}v)t*YJ4-(^L%RNV=XJ8!$SlDw4V>5y=sc^Ou zBl8@_1lUE43^1mgf(Zpv`j_@+_znhx%dS;IY!Xy@!2UKwX{>1HS6sysmD>3_>aPV@ zC}lrW+tGH6hjY)zkNGdbl&Y081r9D01v+OxY@+a66xxePb-|PC$nTUu)!ot(B?7>P-@Gh zcre{@Ce-k&Q>Sp_c=*&Qza|DqT88Nr8;G_*h~@)F7%F=kM(;31y{fd0B|C7aZN2{! z`-R4U{bT6CW)IN0V>@8OYvAU9^Up}VkH&pK`hDD=rJGT~fLIus zBa{Jf;gv6j`QW{9Glz9zU>+aVeDZQw5xz_5l`afihMSl#!cYuI*AhN32Pk1HJUL+h zmB{cDBn_~oG)DSvxSZKVBkFh=R%{yNbinq;C0W~Sn0N>5Pr-)aQ<#20tW}-`Uk7li z(k)-HNG5gy(n}vhTEdRWm~}qGO1|9ghZ(s>34m*Mn5CD1AWH3dupNVhI3es*NGY3z zUtcg?^U=Uyi1wntE7o0Kk>>aZtWuKp&KzqX}u$GN6&;UEXQ)uTeHa z%N|!cF=aMrUTL3z3$*$nK&N8q2Pkc(7Fx^if1Rue!% zncV#OzsfXMTHvRTZq8F-^l2L;ai=$Q*x5`TOUQkN%k)^{Ajbpb&qNjeOcGvF!bj!* zCnqW7o@0&aBt?R21H+9QY_Or48yo?Rs^A_uu5Z%?VJ~bm zyyt0sbOmv4pV0@Z&q2;o=(4bvE~djt$_Kd9g{?R(O=B1r#u+ZYVTVK_hbmn%Zm7p- zr^EE9B9q4iRHxFPExySJ7%B=?>Dn}QIOr-du8d)a12@59K#NSGn!v=pVblti= zg?y{*zP!@uWWSmGlJL9|k;(H4%8lTUwl^>sF#2Kk8(xbm`JFwr`e1V{_Q%||ya0AK zaAOTS8+6-W>}=RgKP*1FV2W7>TN}a;3wd7&3-2rBk;NyIM-~8!8s!ig?bUbpc=c_N z+8SQEw$r{TMlM>0go_q($1)_`vEX)9#TwggAEyThbEgYg&vOdo)Y}ke+ zx_(wF9Jk;?5~{`BDB-vzJmR<|j9XTB8?Im~u?+g6;x;4JY~W?D?sU)vX1cjHEc~|M z>KpV0z81)*ONCQADcbF%H=!#~0Q~x}o*)}Z*PcVF)*#~w9i|nT+_X^BG`G0d?1RzS zBGD~9pYY~_i+ILRD5MYIuHq5l=>?a^P%T~7!o9svs_6#?6@`B2COQi*llUzMB+rFj zVdsKf=gGwinS8up8Qg~3UOO?(Iq1$bd5KZsIfuMh9AWE)_X^8P%z#8bERyCIJ)>+V||wXwp?-cVDhT{w(ElLn|+xZNGq+%kEC(Mp}xMQc4r z+eLTsv5xO7T9{pUN@lnP$4eQuEWn=2(NGwu8?ti1pHdWpiCQqS9GhFi&?(%QR;q9)=esmmpH+eq!|Z^kG7DQkxatd4om;Y?KC9X& z4VDob@h6y=kVT7yxC>s9hSBi~k2dZWmDIGt39~w4<#ByBY`%rkyoDK=CD<%zM`Be)U4P1(KV$|-(x0T!KZ_;w=2Ar%c< zZgXt&0vuP%$*T$C)f!_y3vjI-v1$su1f zkdiXl4~vXEWp?3_Ml0t{vL9wxbEd!}Rvujt=FTy~@eXwgi$qZFc))?CU8A-fU9 zSK(BOv6!9%xrR*~J^f1LRmLZ*Hfbq&j_DMxe8S>NKZdAB3=@Vg1at!Zh9hy|!-)Jt z3=1PqPHcvR11-AEJOp&q2K}R%bJThl zA_i0i;T^`G*j&)sgV}({N+N?XL~H z<$Wl#Pp!l|-X1q>Be;%V-<}LIc?EmmfjAoE^4bI9RzE-%eABun&AYc!A`@QS0>lmnL*5pb zOwNaTRS9>-llcidIG;Gm-oUezJ=*EUB;F4A*WMeY8Oi@rj*Q92A3BWX7jAwBLc@AG zc?2k$zaU*mPG!XrJHs3lD9phQCZ?c**<980(Fd~fFw^F)0RU}&Pc5!Q?~MTDHVg-7JxaOWUAF@fX z!Nq=;bzGwf9uP^z1@ja@2)HJ=Gfu9GGJR|llofELXb{3l0HqSDiItp^npMsGDvS(a z6@Zj!EhwcGQlMsSgVut>!EAymV8bAAJz*cr>{$c!8kQ(@pP!s=gb9mP3_v&O@_tqh zY>1Cs85ETmhn;kXAKK{0KfS|nH|2{;Is+l#8f4BU1v0#kzRu<;liWeqq@Od0OM z@*YpIxDOTU2MCAqQ!I>J$FYSpBs?d<5o0b10Q%}y&cUQvO3slgPH17_ED88m3v-Vl zz9M7vEmumVJ(!rFFCi^kyBJlK!}=9IzJYooTq?mbCR{4jcyjS?2j%tL-_8MHaEjKLQ2=I?S_VqnoH5i z0sKK&HXp?%*bP{T3e?20B+neiihH7G6RDS>28**YxVo;=bjh@?4AL|ZEW`LGCUfL$ zf~Bm_st5B1f?Kp&e$a#CO@;WR3Hmr)+&2c;Zq+6HH4Ow$WOh*saS*?53{feoQQK8) z$`e5`7Izw8B+p<03@p~ug&VPWh1z8m!=Vor(-4rMqDs;^0}~xIHWo}T zs^{rMVFxI6ru&Xo9w5p{7%yHgC}2VWbBKTR z#0V?%gAGPGnaXKhtj;L)MBuBT1kZB3mw-ijKHf967VU<5|B;t_j#i`zV_Htjn7cNp zsTEE&I_h4j!bS1LKWQO7eA1vSxrHR+`uY=YgVQc_wwP=%@%&N41dceAe8Arp)3lBAFLYqH($cG?`L-*THMwhJk#DUo!MNV2GWlVTThI@d_2=TIL`E}EUa zG*OI6`9@RJY>dwjUC3oW;y&83U$YQe!TM%v2)+Fi+ zQ4OHX-WH1b+7lFg-cQvnYObKRB+|l3X_qCXU7nP7g`h^Y+hUncrvY|axv&!_ z*pA&se47CMW0Ou)S3-r148zr>hHl~Y1%S1N`+T#2#sF0CyxK$Ks@$j}J3bQv_S!!!$ zYl)$2sThl)!XW~N%#@`Tk<+4XPf+Ga-;qS!DX7HY>i<)gS}_jP=DQMo_$8i1V@GII ztJ|oQkv`m=RKq<<)UT4LXcBd=pe$+nwV*6c{Fh15#U7F-+iz$bEMdA&B>wNhbbmsa zHi|~)vIp=a;dwAYKZNH7(Cvb@gy~@_bwrpRNunMVHCn>7X*6Z)pr%<#n@1-}j|t^T zq}e)0XM9{_93?+Vwly6a`#!A_ZG1wsFD6 zFev~VQ$4p*IU^k1CQ>Z{dP-1DnkigQC(=xD+MY-glx+uf>3{1)$hOlouFr@z=i+OF zX zaWQ%OnrN9NJpY|U;p-b3W2GHTqTWcN{xq7>|5K@R*_)6hn$!-NZDxPQljy&gbYdLd zqEgIpIIS0;>M;KPLTGCr0&f93{YhY_zXH>w;zE>@9Y$QQhNSh9^@FuIvS0zJH<9?dMM-}q1=Ff+@0nog zebJ#18^Dvm)CVSQ`%uWC?HG-c1*VSw&|TOUcvwgUf2>+QMlF9Cp+4#OLFxttuPurE zR8Sid9Q-Va`iG#J%ru?Q#;G5|dK3IG_y{BDX-LVXZ@pqnOb-mX_?Tsm(FxH7tI=Ol znIm2J%A|0x)XaO5@{S1eH==$EV0hoCGI=1ii-m=y50Y0$=s z&RbIiZa1JymO&erM4c`us}niMXN93US~VM=P#0XL0iBDbkICLM67-n~I!(~l(40l3 zjttF2QHLcalaeTR5;ZxAIy;FvCy7cYYP1j~hq0_O1xf&0tZqz!GOuRk(jrO-7*A@o zBFeP-;4vwtCh}(fpVF>AxQ(mY-_^=m+j64BUrFNQ)_UBP&Jt?7PsW8VU%R zm-$Y!xrVx;hPtwbx{6a5^?!{mI>;8^p^zxgY|+8t67whqmzI3!TE?a7QSatF1CP3{ zhU()~;88wm3aA_WG9=Xb9@Wp<;8+nF<2y>&wggLFbyJ12-yc47T27Nbg4dAv#IcP_ zjwd0(C><%6f7>{8$KYX?a`VNf4L%j*1oxIWa95a$3^jLp5@LxQ6oaQy`08 zBbg7Nf-;uW%Y4R{Gs&sSq(D-B88It;0qk^9U!-~IMbSu2WYR|_DjsE3v|!kYdC+8q zX4r|*3_C3awpqrt8s^$HRF1b8_`;nv)TIzqQ1em5h zyTgxgI+!zNxSRpSF;q3s{U~oCxQp-hDYmDaG6z0I#-|$SevFp}^TM$jDnL=br9NIM z^C=%iEw2TB2$RorvlT7w!#C4{;isjM={VzA9j8vzv~Yh7RY6e=_Y3$1c6??81Y!^3 zpZgI+-G$Es_#ENE)I+#gVn{cXke@JvV-!!I*_pf98NQ12aEa~LDv?KU%~5{MNnV5P zZs!kPpGJ*iRq9?)_f)C-N^E`VQ7FQk=`&m*m2W(E5;VhBtejyhR?e{1l6!rQD;xyE zmq1u#7VY>_egUn1vPwMx>UfnZfjUv8zKB5~aIY`%ZVRY6PAzYyQx!9PnM>Kh(G@e( zX-)_3^;Ir)Kyi#!b+$`lEViG5!ki80>LO=*noASlC?8`5)Hf?-zV1H8nyK`JkFl25 z;!H)0Z&$Qn_=;)4@YRxgovqP=qpa#M#8Fn2@=;bWM17x27EnIQ3U00+^0I*PQPwE% zm9KrdM*H);?()Oe1!%!M<~c5PA0UPAK@4HBu!|uqR{k?i2R`&X*D9cXUPE!9RrQQ{ z-hSX2|39R)oGtnQiu|eM#fsDnW3j1(VXUR8bC6arRbg=@OnD1!(}yw-e5I$Fw05m0d}Q2!lY8u9I;ytNLA4jX)sJflUaQ5cY3zRzme+EM@EM|>Hpyh@AX= zt3 zku$ZVUC8G3f9f&Ojb9tr>-FP$18w%megRLWj(ef@u$4}mjv>}%jKikm8ja$VoidB{ zA;Wd`A4ublmCRdqR=_Vbhb&j?T0S+#QW*_O$6ZR#!J^^ThSxq~YeZuKl5ueQ@lINBTv_ zOq%kGr4HhHbvJb1B&AJl%uHKZ;~7u5L0=m(vnj8xz59c8nK9dN@c&Mavg0t7XteuH z!7a#V63yM4LfDo;Zw$M+3DYUI5w+(j(J?TV{5qU-?2nk;{c>vPccF26+IW3zt-h)| zN^cXV4L2wE;sxqt!EwyFo6bk)LPJ+eW_H?g?CccnPOOU#S?CjHej{_sS|&7Mk2!OO zV@$bmGi!`x%oJJe3C)dT#-s@Yr%bZa6I$zVk2vYW`c1K%UGsET0G&hrm;-H(Q@!!+>VWMdn50GB)k;2)e89*!7*qP zX_A{tDgAZQ>V;wr#vv_b!F{qxFU)?bcT&u22Tg-|;;G`<(kYBv!vuSs)WdsR^aUQh zMzM?}^3hsqfahl`x7j*M%IiqB>rOAU4zbrddbVNOa4aL6cgcGBT7sv&O0-Orb9gzd zI7qxO@!DcSh!j7A`Aq^}kxpQ?lfs&2rmQYm(sG#s98l|ug!87WXGw z+vx}$q;L5a^dc|QHDT8-ILWR@=(FcnD&Gk^rn@!Xb*y_=BxfZjuSuu$o9QFMbwm1x z=zc0H+ZuA%2_vJqStF%R@hJJfLr-a`+H#mb~639vJ`2c5ExqMh<(VO)QN6^hdNU(Mw;K z&B%m}tw)T^V)%0P^K^aHTb0i%&p`g|bUKu?-Q;RdBwp)jG+v~18-3UlPQx^9{EN1E z|2pkGep-2Q$6FW9-CM6p&z+_35>w{5vGJ&&Wy}??hWsX>O>R1;uU4n%kohM46%+c^rnkdM$27AW-lp=ap*LUa%!q&a+DFUC zPa^ay__#_F{cX8Ly&HQze4>aqgmCUfs7U+hfEPOc8s7N20;eQuQgP=s^t~_=@j8DZ zeyjaB#hgdVd+1NR=wSUdKO8uNE_s&dL?{jxW1c|DgUYQaB1G;Z%poJiLHgoL+erx} zi7U&|9Vflckv zV|Ll-Ndt)!<$kIv4WFi#DSeqD?m^@b zRiZRnerou;h#NZPKH8$BX-w!MMF~-XM9(0ElXjn?a|qaCV6~|vkzRZ@<8uWszY?)T z48MJZW2K2La+r$rDLR4%jxy$0bL>@Yge4N~Wh&cPbX)~Zdl5g8vP%1vqva9o0;SRg zIzZ=?$CNz^eq)PvLbgu&eJbHIfI&lo=cxF^7uER$6k0qnPyf0o&X=E3eui;jR*5f0 zXO*kY&ngRwx)@tP_CKK`_($yn|A&-&l!xeyvVhFH1vn-3v#25!Q}S4<8fI%c&jVWbve z6P_nTkW_=S$mhXmF0!;5^e@{ZDg=t{5yf_kl3-Jeo0#$ZbQ)$Ui8P^j98s?l`gU!MsGL+*@$!h*LEkdjg&;sGTX6m z5zN`XLEL)sljI!$;U{qJp^61t6|rhTgpo~DloR9~Scuz@NOF@BFOQHuxXDp+J=|ds zdre7798tfd43K^_l_WPp4D2$c^pLGMc6#W;0nX|OSe@~rGs^Ad89J!AWSiVipTN?t zgzP1tgai`laK+IOB-AB_m`;!cPTYf?79`~{GK7jTvIEEG$W9yw$u1m|WEjWW$!;`z lGyaQXwN+AHAh)n1bo(!QGR!7IS1(8ee|tyws(VLO_20^}?l1rV literal 0 HcmV?d00001