From ee11a232f3c96ce8e944acb4e4372f08335b5dc1 Mon Sep 17 00:00:00 2001 From: Shital Shah Date: Tue, 20 Jun 2017 23:26:05 -0700 Subject: [PATCH] settings to hide debug messages, record button, initial view mode --- AirSim.sln | 2 -- .../FlyingCPP/Maps/FlyingExampleMap.umap | Bin 9551736 -> 9551736 bytes .../Content/Blueprints/BP_SimHUDWidget.uasset | Bin 236175 -> 249165 bytes .../Plugins/AirSim/Source/AirBlueprintLib.cpp | 6 +++++ .../Plugins/AirSim/Source/AirBlueprintLib.h | 12 ++++++++++ .../Plugins/AirSim/Source/AirSimGameMode.cpp | 2 ++ .../Plugins/AirSim/Source/CameraDirector.cpp | 22 +++++++++++------- Unreal/Plugins/AirSim/Source/CameraDirector.h | 2 +- .../Plugins/AirSim/Source/SimHUD/SimHUD.cpp | 1 + .../AirSim/Source/SimHUD/SimHUDWidget.h | 5 +++- .../AirSim/Source/SimMode/SimModeBase.cpp | 21 +++++++++++++++++ .../AirSim/Source/SimMode/SimModeBase.h | 5 ++++ .../Source/SimMode/SimModeWorldMultiRotor.cpp | 2 +- 13 files changed, 66 insertions(+), 14 deletions(-) diff --git a/AirSim.sln b/AirSim.sln index 13c94ea6fd..c33e889826 100644 --- a/AirSim.sln +++ b/AirSim.sln @@ -67,8 +67,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SimHUD", "SimHUD", "{95E2FE EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "SimMode", "SimMode", "{6175579D-2920-406D-A36B-2A0A56AA7892}" ProjectSection(SolutionItems) = preProject - Unreal\Plugins\AirSim\Source\AirSimGameMode.cpp = Unreal\Plugins\AirSim\Source\AirSimGameMode.cpp - Unreal\Plugins\AirSim\Source\AirSimGameMode.h = Unreal\Plugins\AirSim\Source\AirSimGameMode.h Unreal\Plugins\AirSim\Source\SimMode\SimModeBase.cpp = Unreal\Plugins\AirSim\Source\SimMode\SimModeBase.cpp Unreal\Plugins\AirSim\Source\SimMode\SimModeBase.h = Unreal\Plugins\AirSim\Source\SimMode\SimModeBase.h Unreal\Plugins\AirSim\Source\SimMode\SimModeWorldBase.cpp = Unreal\Plugins\AirSim\Source\SimMode\SimModeWorldBase.cpp diff --git a/Unreal/Environments/Blocks/Content/FlyingCPP/Maps/FlyingExampleMap.umap b/Unreal/Environments/Blocks/Content/FlyingCPP/Maps/FlyingExampleMap.umap index aa76465b0414a7e7c09c8a39b7285e241426225b..de781e68bff8cd8d870e64380a108948e3637aac 100644 GIT binary patch delta 740 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

&+u6$w`xf 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

=M#c}!E(%-TW`=xAe zBFPKjtFvB`EHq?Zn7owt(&&G<_s_VR){o!TV6@NG2>DKb#0Xh^w}WfZ`JQ75@7>;v z;GP}hFSR;ZkTNVg1>CeEfUkCY(Lkb)cpR?qd@fZkT&W?6bXDIg3gzr}>Ikf7V^!9( z;-A@Ow+L#rdzI&$L>?Gda1FtOlZ5Ztp zb3e=jP)E7vmTg)z#*2YCB!Uhg?pav8b7^LfFQd5i9l2fh=>!iHgF}#8pcQ5 z%~fwz@hvK5J-D~adC~6PnDSWJ7=;#y_L`Y7${u&y35%mJFF;$QGLEccq(+)BOTp;l zrj*Cx-X@{b{xO#0yt-f<%06=i-2qW~KJtT+I9t>^)Rg}Ke(J$X_JxMZn{vfWIMg5d zS@o?r(vtJ$r^>D{|3Q5tO>^|TZuT5Y@}Npn@}V!Kh}f$}5blx6EuQfA(LF>3?+-?oaCmM#SGv_U({Igxur)IVjJlFg^%3LR^KB$ zW;27wn2eT!l1<7{f2mQ-IZ%g~olv?;EoMA%hv!(bg16&p|3=N7o)D7H_AbxoMJAc6 zWfp~&fDsbqk{YcnH&>F(vnUI~ZwF9989mXGP>KWiahB9&lCn)nXEa97ObE0KDi231 zsbY6ZBG;*0qfuMdPC-1i8)n3)+6rJqU;_;w9-lD3ZiL&eC{#0Ndc5({O; z^Cuy)SMR?E@Ka@}@{bmWGQe1o^3C{*SCkSJzi|afJ3*Vow?>$+XDf4H-7(I?DUYRM zL5?MP1L~2oOWknhh)VP5HR&mo9Ft0{3E-#0yyjJ)d$b3q6U z=fw-r2l^P=Q~G0OR%kEy783XKX$jTaNR&VoK{MKAw8qsVIUm5!ek{(5J0b~;$!S~Y<7gx4 znW*v1z%eT9fHuZK^nbKFv=59@7$wnf2JnN1USl=WJ%oRPxmyeozz-sN!AqSE%ROO< z--&^i6?p4_ZyqqmNqdv%+sDs(LTzcAaRstFPPmCY+H;UNnZpt%Ie;Fsx2T*$% zTd420a({|mp59Hx70jfvHGm&f^`f(kMG2svWHiM1pJUP6Fg~NiFy5eyP=;tf811TP zhBX}P1wED;u{v)ItGF}K8^aQn`u*KFOJePkkVxBJOqr5gKdFp2v-2u4Q}0QTX7uQ4 zSDqTEA~RZGu2L)UpI-5# zj_3(BfD+IA2E8TMmb99Tlo*?F9Z9|5J@@0d4x~q=59W7O0{DSdFYd}p+QK#7AHL=Z zA^B`y_k3PvOU+j62}TW!mDR68aW%$FH07GVTfo?x*Nkf!KT?)e4Dp8NSX_Dzw%^g0sNYOoNto}0r{D`d=kKBBU`qoti-cxnY-M!@r)!nC9a1;5Iw>=>XM`>fY z1IPHE>r%=ub0oA>v|IAVqspR@mt0Y)9H)9W`kj==QtK_Qe;Iqwi?D_|!?g_cgwmy? zMXf!!I%if@WfBAU5pgd*$h@eHoCPCZ$|WV0>tmIhr!;a@u7J2ES1WPqBi|cPnfmuU z$Lghfq#~&n&%D<)srL=wXVVo$AztFPVvAoXNEX^BT&la95kLtjhUuze@3#89;JVy`8MGSF1e7k_gGd-77-+#1m%q z=&{-pUSr)utxN2?nO2T}jVBaYgLCD@b%-5~J^%ixCnVvISbJJfW)H|8#xH#Djnb*qu=1~AYKJPV_%!}Dj?n}}p zsNF=q;iujqrX+F(jNvGQ>g|5|3htM1g~i?6FZ5Vjiw28q*kwW}ZvWMbFRMXAN(A$f z{G$h@WoFJ*ymk*CF)nZCz@~c$rIMw*?iAWYWWL4c3nFJW3H#86Rik-@`NnX%&dg6fJ>4?|^aEr#zN=3zc%9@{i0Zarc3CM18ZJkZGeCz0o>z|BQBMmQqc|sJ4jh8J2Gm%{V?g>@oin~_o zHzOGDkqXQpC|+_UNjpG)OB&EFs!SRE2Km8E$%d52;!2j@g}eOf`&*PC`f`8)Y}ni9ZMdP*IYqzTxQQHwMwe!_td*doG)dBy#x67 zD5;L6-e=)XrP^1PY!gRkl*YobRn$UlrEIHrIyiCw|JKcGERlkExw7X(tNupm-=0w2 z?Up^GjEd>gxOU+#zvNdq9^ZAQl+$i8AI?vSM%2jmPZ>+a)s#>2SM6hSuTF85 z^WqqsDf1n)V2n2CO{q&+=18fJMF}DVM)15+T1$;p5uWnZlxxmh#eCc+UUhp; zPjlV@y#vgcZk&F**#4~ncWJ2W30>YhwXc2zzVn+F?qh84IfigXy;n*8Gh*SomH9Ch z$MEeBdKv1a%2d$9QER!PWW#IgBq2gj#1BWEaov^A6q za*3K>Uymg+wxwr^O6fisYlz$EBXla-3jUtGohp`xklTe za!dTqlGj+Wdbi^nFLC_e4PH>ZXT75*43SUDg?hi1pDJ5V8Kq>~x`D>M4_{vz6dS>5f1sK(yd0e(dn$`IsmcYV0|NP>XRaIl;9MqiWiC`UT!Iw?)43Ugc5frx*jN zU*DpS<8QEfQA@@mPgNd+F^7sp7$J~b>TPM-G4e&d1I2s}V`N%<@{K+!)v@UHl&-1l ziL!|FLQ3bTO=?$&wvk?xxg*km_ALuzHBEUe`atGxI3x9*rdn&ONRoO@n945F8uHyf z&YSe0hYaA~>9)ZxQya7$k6%+d3|AfW9a}n@*KP1j8?&vmzVD*%yPEg%qy=ZXhSg2C z+hKKgJZo?3q1!rWoQMtaQFsY9oU_ykMvNk*PGQAoIlg+9qxM9h_fd5nE61SLN}Y^B zA0u^YjN?sOxwUg-!nQvnIFL62N8vCY|KhpC{3a1GBmeodRXZIR+iB9t#8dT6HWGCr z-H|xER7MioP%G8kDckaFs`ES%->!Ggm2^`aQ_@7)6AIEw%4i}*^!}=DTao}b%81-r zy3x5(GAzn)^(7QcMj6^S>6c75XfK4XLVZilxxc8W&zM{Ksk+UjFBW$6zzREioqw81 zk0f(WHWEFK>SyT-V^(=KRef>lig3`HC*ui$D)XdYagOefwsx_}pJ=O_OmYRKFi5Vg ze#;~y3ZX`=Oe(uBQsE|(%nS&fttPd#1LD^|6MT#S9?a(_Z*%$!l1 z$}tq(-Jei0k*uw~hSSZYwsYPJD`~U(y3t7bsy3^yorZEPebqhtN{ynj8^(;xt8#$Z zGmA$~_^Qp)6pka2wvtUo;vAbJs;Aq4x}p(^;_-f&@A`<$i+sDq+{_S2KZOTlX@Sh# zvEu)>5p&!9XuM=AOCYo5N=mGQl3a^Bs%I*8j4NTGt?;0GrM<9XJLU zR$Jq`hi}LUZG{J1mrGqbJc!p2?p6y_8OhByr@xlte#oX8sjB8P&!|J2OSnFBxB$MUsBW^qtu=nYnleyPT^r z;{AiYebeg3KQ|IHZbAo{)25Vwcx&S}&rLb{i8>Z@i*gvFxy2!VM1m^rP?1n-ks$NI zeno<90gLfGBVgu47v}&^=5P3%Fwfi%w&HjuUi@n80q;9V)f1}{K z$B4D|s(Kk2_^2z)VtY zG_a*a11Fjhq|&7L)qy3wTw#i?*&|%PeN)v{E=QJik{T@@N4Ara%*R;kV7D9>TV;im ze5YdDSP65!w0kO3B`YB}?z!z2@M%7yo>uElD~?Q*{fdt*?3OOs_%+G1#g9a6B|5Es z2A)q_@m8vHttzXjX8Jgu<-?NsrrKOz^w0vw=_Ar@j`Mn>@ zk;PJTea#(%cw23^J<04r`kB~&ZlrYH5+JA2wXvkR_`l6(`Kl+Msd?dA`DBi!`hF?i zGyYrUGd`-V>Z_?Y5*@k6mG=ElvAC9nv-a&+C$Y!BBd)aK1#J?>FftqrW4_>gVu{Y1BSTM|j7CBJ?| z#I*eqWAnRkPTE`V&025gxJSg*_s$$!?NKq`p+@(6jlQYg!w}nG*;2bL7kS-uJM*;2 z5-ams@y%UkEKTzA>58*zy`^#oHF+P$k{M!FyN7il%cm(iR5#yC7?$M{39cRvVxN=CmGx$G z)sSwE}@`rSAMH*#17_KO4CbOG}^B*iKut z<#xyz1<#L zYvj~tN^SG@u@=`v21KvjeXfd4RfL<|=UVG}lCdFJ9Qc2`Sw0>ziZDGFz50 zndP&j$8II;--1-QS(Z&mxrInQKm*7v-W z6?5ymt$lwi-uIE7l=gUAZjTBqYh~A)xzkozzChM~?(u^9u30Mjk!rkPty7clvRSK6_gKO1m*XXi*jm2& z-;!HMKmOsblBo#6+C8vVR2D_8467A=`Sa^Esqg+OJLIQarXI)E?*H1qXDDm)e@JWQkD}EtpQIvp+e)@)%Z;K%^0ZBWU+urL*+*-@Th`#cp1a)V8v|_@{Hj)ro4Y zESYG5`;JL%RJ*zI!nIMYpLyZx>?GTN?J~J`q#Dyo7-zl?xC)S%6{(rkjjhWaU+SkCzBsl#Q z_&+yN^=&*o3^RoM9ulvu{Vw$mn)h3FRpmq8>D(NC#=bizT=h#EoHO0r-=m`biCwg4 z%`CFT0nvW9><*u|dZx;6x4gKuVz+F9dtTiBE1cqmsi`s#`&!rjYr+aU|NfH!|ASJ^ zGvl14Si$N)Y? zX~?F1|4RLKp?AdYZdi(Ol?p{bdq_sP{_5Jrf;!YZR>#{$qgjC=B`{cFRUCYNPKB{kmShf7d3-!_N zc}QW2b1bcJi_O?mqJQu8+NSh8#6-TaY{j+qRaEk*cH8zmqz-ktHa4RcNc>gv*o^cP zzv8VS);dLe(&kvb5NGjAHPH}j#@piRh16jrP^%&SXh`ZgKTGy%>Gk$w<-qWgX|b6&!ytR?!e}cVsGlF&&%Y{x+>$t2nbnzulGoj=`3@Ub8Ihzl9T9 z>i!zFLiEd<7qz~Y*;ug+HMRd%hRAMv#Wq>r2eUGwwZ68dwBC|^t>u9?jjxUO`P6ig zT(1?X@_LK|yluj!++QQkvJyyDSCpkyJJH+v3Y9CR+7+r=q5F};p}eX5wwH!j?>KmC z$fnJ5rW#LL-o&mU+j^E$MJ%;BoSNovyw_{WE)#xg>opbMDBqHNy=FyP-a2M^HhIUx z?m1)}OTSb9_G7C0Wno*>ScN#r-eYoa$DWp7tj_v7J|;+ght2xE+kXcy+}|{|?|(|n z=FeUyr7Tt7WBs0l7cVyD_a}(4wPs0{$#C;L+xEADNgG=BgMa<{jI zN%vH<8L57IBGup3u}4zM6FM`MscDNJe&nATsrs1=EB3631&Egl%O@rGmX>8r-7~wr z1L5W^6G@>Jk4RKRTP-Vo>;2SJrH~mQN__{<*r$r5zi%e zPf9FhHsVQZ$|vs_)#8$HL#%`v+o`G6?{8b{KxX19Nk)uD6BjttkBs5DyEPoJh%f%~rSu4BM7yWR{H>B>h ziKj#dN&=k!57>$xs;@Qa{{l3MO97PnREY+f%;%OM`ovQh3{-0qo03&<7G3~OaUiy|uq>n#?)yf|?d?W?{$+Sa`| zsY8y`dhvhWi(CI8#LHUMdhx_>pKUrXZpH6nzr>EXdvPmIWZ6b{FK&0ZXhjCe z;x}t`<(6}CkJD0J-P9z{myQ>=`;%>xI-A#vGe4K=4vrP;d)cT>>&1z)L>{$XT)efi zL(H?*en)Ea{0bIj(X!CVtyQfT-#lJiR?Na3FE4JbA(OAgt=~oWwvCpIY)xL=>8Gq2 zC%3^hjmhH2OFesE`~Q@<$FnK3_xAsiBwAsQ)8v;w_|BC0X>YCAv~T2E{~;u~w7O^S zxAix2)qlv4NJ3d9w{I2K{s%_oH|)PVFx||T*nfARQ{`K3*4ocKcW?hsBjS~xpezg z?nH8F#VG#BW$JrM)^ClwXDY0$u|-FF_Cn}ragk$ljjO(0q4a_ozSLy zZ{tU@ep@d2T>X@p6U|*m<=2mQ{Z$q9n`oq<$VT!g+U+;C-E(27|L2&0Tj>~g`vm=*i&pB@W z1pS=jHb~IVIc~!Q{hZ_Okf5J)Ty!(}!7~p#uk6=sBj0B50*AD{3;OM3yJuS?6t}+e z4EyZJ4;(wAgivx(MvWZRGQfu2QF!e6qdKc@&8sy3B+VQV%_HmXSZEmA5g+rg56B84 zC5OGue$Dpk^pm~)Qrp%kO! zqkw!P>-WQjSvzu6V-9PMy`O%i z3mnq+C8iFk8*Z;eM}Yfslzsb3IMf zE;47fAJTkNN((u=2T-w-Wl!9@P1s4ky%O|u5@zoN{o={oDnYN09ZYM9emwR;IUS`C z1roLA=Qx`OhcgJxAcD)HsB| z&VFss#(uK`22E>azr_xC`|5r(*a?TgTjJ=KVYV8^emGA=>5T&N?DZ=8H6Pj7qy;}( zX557uT3_Dn^$eRwH6}KF`C-k3Blm1S z1jTz+he|I#frG0O!!eFbiQ~3I@g@pcYxd$JI0QmGQQD&A6%eHZ&Td3uy*VI>Le;5C6ry7ig(G6k zY7&Ll)h0?jYMlVWdzu~5>upS+GtT`{M56h$!k7}xyGn^>SF;Ap6S;_{ewyeNC#eqgfAZc@1o{c48e5VXC@Ig5L}@TY@+1fi17o#P&#l@W%EC^m-W>9EGzhwhhr> zur)wo$aqSyC3v$Q*z(#FTlVK6beA*hdZC!OCbhu5r5DaT1cIDdcQnfLz%di&*(gI% zMvZLD0nAZaW;~77UG?2w&*8>kU+O3auhh}XfSHe)($pIl2Vu56W46yFl_c~r55X;7 zKN)a&&o>Lb-U5O-INSA;Pqz$^F=PqvD)p0H%^Kjz>uPf)9?v|0@WwM2z1{$xeQ>tp z$){VI%1JzVSBWRPnl-?a*Jp4U-WttcpihZ9Zx>pGC;K?p1iBXlU>ak;K}Q1 zrH)q9qb3iIWeOy;6 z!cT1BL3B(-;D`nv08w~dZKA}ZHW(nhr#T3{UdIH6;B03epH>)?dAzG+9=n<~z?0W; zc=pmd{m77BAcFdK!(K`7swSBAl`@GE`Y5$DtOHKUks z^)+LJZ}c@i@Ynj9-s=Z_P3u2HU(>?Q($}-D+H>3{hQH)iyzcy0v(q#3>b z(mh0l1XVFHCI`l#6Z087GR#lwBVhcgZ{(3mbtp#zrIJU6`DuLwj6wQFEQ=U#V^=if zgvw(RhZlz?XNSvT!Q!$|q|!(5F~&DMQl9pK6Hmr7GxT#adR3clYCQFM$6oIrof6%G z=%0`}5j3Vwoo0dnIh@y_Z>XevXlP0-t0Y`>avW(=LToI6)PSL}nxi}U@tJVWmuBBZ$Qd~2Ra8;B#N2I5> z2YMQCc~lAVhoh29Kps^Zxu%q*3Ogi(ax5AXLir3KIX)Q_uFO+{azZjFf2RuN#AHx@O%=+hWKfv1NNGl+lR;s2!472!?s-%Z&l^#h zQb)?Iy`wXR%s@L28NpySlFMI)=w&EeIWaioqA!XfikE?F`%%@0NhofXFRFqRue8=co0OcWT^rh<7oQJ-QKRv2%<$=@mJ-Ot1 zT&HVER33HJiJz@t*;5H=HDuk|?1Z%1{=_pYY1LTIKp0DL<019x z&h~kizLp2XK_<(enQOe8Yxhbvf|Mz4^E|^+YMAns7bA^=L9$)vhNfDV0mn zEoeQFl&zz;Ahy=7C*bWw$K;$a@Jz~9CiMgY#d0&oAx7y1?dmn^BKz*At9dg&A_LnR%YO<*>DOJ>ef)Pjs;LW2!6;*|VvuZVlr- zynyTt`JS5e^SN3?!QKzb(FAiODc*cnX z`z>Dmp8@k*EqGhxmpzlB$yX(LWSF1!k80!a<_B$qm+n!JJNv$y$9}co_`OrY;V&0b ziIuG+6$yJU3bpZVl=&#tMz6=iV}4nAR%Z51XT0+ICyhU;e9aoL5|b!p^cDlkGbrz% zEI_F?dPCmN+2z+3ALU+uc(ma3V@l`vOT8sPX*tTfD3{j+y*eL_8u-rHKj+SS{DiN+ zd*YP?{Y8%}@n=!qL%E_R=pEhhjh8R4H$U_C-G6xM)X!Gz>@Rxv0j1|q-bcBzCg@#$ z-$SF{{`S!9M^0$8tj@bF%KSy|exUR`$_FS{)danH(VtrX)#}Oo#a(mXie$~ZIVJSm zjGU|H(h|Oaat+GWH9_yG{O*OBJG|Cs-r&6R`z-DIu)pXL+M6hhy{<#4w&q^a@Rc>~ zZ|swG!HzR#oSswKqQ>a8!00?G?cVmdc?gAHG`Sw-29ys`s*PfU$4`54^bW5MnBQ~x zk4G*4^qrJYbhCY~C_W67UPAc@gd6iLz* zC<{^O4_Bg88^sF;Ua@}4%QqKXe$JYH7ks(mnlSCv zzs~4)$&4Fbx&8OA&i5C^$AHo+D7T=jMp=VWZ4`GMde`K=>aOoU@BYF|mQH`TQA#ML zY-}C}O1GlihVs9fpttyjZr@$EzP#X``ajKX+<4NiDWR9Lsw@LaucCa4ay!Z$DAlIm z;dyr+`E08mx%byU_4bUT_ubB46rTV}uc3T~awiI3rKmQFvkrOsw>$eCHQ=IMK0NP< zJ%+FG7sV%m((5Q|QSL@rgi>u3cRBm2`Xl%Fvi~iIOq}`F4bN5XdI6UCLk&Dj{GG`g z9KWkm)z6xIUn|QnF3J?b{HbAz?Pthq9^d10H+`L<&vL5zu9s}tnZJ)@zJQ)z8k`V{ zOEMg$AD79E()WH&u6Z`F&gRmFN0mt}Le%d$^C+I&F<=5P8tC&hb!(^}W!V>Z$9M14 zJuk0A$IhL*w9n1U%oHUfg>B0>52roO=yRYlFkp&<$A#)-RK_0}@Vrbg@Tk&Qj>@HG zlNBp9(f0{+m4_Tz@W_n0D{~%LcG@59cDT5{-4|}BA7+N{zQZOJG(YO-yz`H4()87p zw@h`b+aCR*p_1`x%Jp&Auj7F5xRCk!{Lo-zLMUdxG@-Lsc$f%4cjiT%rLcK6%Zn9v&SZEQu=Mgi|@Y zr*U&~&tq2SkJzct_3y9xb)P@Jq(MkJyRBXcuEPZH=PYqlQ39?$s;vaC3>njH_Qukz z%isO>#X1MK|HIA^QGx{ky!(D<<<0&2>Vh+dU%UL`%=Yu#>b68Bcn7%O_v~RC7GzE6 zcloR@dNn`p`65&$6%)2|ev?+8eB6bB!F?`x`Q61&-*wBrZgrbi37!F#dpvt`-t_O@ zJ7(S`x|a>C-!% z?N(P!C1?S#YNfElvBl%CV8|E}8Xt;;%8EjUxpvr;YlZhQ_?{iUS~U9B6Ed$}->})m zcigiARY}E%?VR`jW_y{4fmDe<;?-OEU(d)Hz1)z-ba)9>E(^uvDYKkLu_ zz2@}Y{W~|^y9$7pf4l#@F)a?sxh0g-@z&p8@9b7rP2B_3O|N4gV2r;hd!Bg_|37VXyPnG1@?WIi_L*o{S#cKOq-j;XZJlu%Jc4Bh~TN)?f@ ztTn5Web|Ri){kwKDV7Itb61DQpFQ>9PJJ)GrN#Fbcf0!=cJLBd;=lH@<9nU;_~L?D zs~1HduIOmKaO12a_OS3}gsCQEn(IwBp%*aD_7nTfTRdgYevcir;LAM&Q@Ey2X+mFo zy0N0;P22Up?(f5oZ?!(yhLd#GaYAWk0r?xLM9J-_783sQ?JKWx8}?_@VmZyy}rZlZgq*h3iH=dL~1&J&Hr3N4BU=XW+2a1njdQG z%F@xFbU$aOf#>%r=+?aL_oi4Tni&E3C%61BH3{YR3yrMIE1}#D0Na2XV~-4{*re=gKkd}yB^zs_9x z(n|xc+xMJRv3{qThCY=!&)U7uuLnPIMfQL1nmA?1sA0!*&dxf%(@+qMg(Ahl5)%W3 zzGG*M|5(awb@{0Aw7whH;=88xU&>t2YQ&UA^-kd%k4ag%rCFBpWR~Uonpl>P#@xE| zvi$QhXFcEf=u-}Pu%n%{Vp*;Ol}?Y{e%kfT>h-<$_yNBbk9fPMTixceEVr&Lskigb zowF8YG-%s!`EBO|-K1P)`*kQi7W_P9;oW;@o_kKOUK4kG@=Le6EzYtK$p&wa`RJDp zZTc)YvDvrNKECV^x4Lb~vT%OwcNqT4u0LOx{osmu2X=dO$u(|u|FC5NR_2k+Fgh(r z&0nYBYgRncSnVcFow8BZlvTEwImNN&@K7z@;25P&_@5-W$c;phj~hA>8N0D~FQ7b9 zTo%hXi0h(*Gf-C+j%5ThREqO3X80nZ@!?1)7+{lrCSMKqQ%F*qrNjz!_JGQ1*D z94&+hnf@3|+mfBv|~o;=yD zZgZHl8-Uvhw+(!AV#EG@?s@!*7u&9RH>H#j@o&`V*B_R>y7ZX;eKPxxy7gCl=T`TR znX~{9;=yl_6x=g-yMBQ>1$TEWnBBMWYERG0=ZO4KxA!~d<%<{PTzman-yC)8XMecW z`C#gNe-GzF;Qm7Jt<&xtIVR_SAGa)h|Azm($2pNELKogU56-XgZHqq+K3!ID^X}q<;63;Ys*9CmvEuB3W=A5 z3$+?$|Nc0(Wp4O^RejEUdCc6CkKV0VP#`)IPEo(V?tE#p;d{K__v+k*E9PF*^IW&O z&0%}U)q9rCX;j#vIPb>!L;w5mhVWIyJsDTo?q;*x>i%)tL)~#2dLo?4gq|s%dguJz z+a7b)o`+m_Ym=RVoRG852irqgCQ5FHU4Go!?RAx^SyS7?`E9>w#O-ZcFX=tE@4I*2 z{N0hIZgpI#<(KjQx0u6QRwpJ^cC?(=HJTFTa@L7Q?0agHZhbGEGJTKy7YCn6z{%L? zv^JYH^qK)=6PlVPkbr9EggU*x;kq^#j_>{OVQZ!|n|5Z@PFFECH)7NUw>>fJs56)M zzOG->ZzuMe(aEiDbC{Zkf!nFe?=udVHMQ@>M}D{b;_Oc^KvhzfvYq(9v~-UK-PiA& zcT3+N=B!>5y~C~UA2&5G0kLJjfBN*f-#n9b_4EOE1P}Op8LCp6&6>qp_gIZmhAyZtOAY|GmAPP?dIv0rGgY|yMml7m{$*e?)qof0+W3qh8KY8n~3RL(i3e&0n+517qyV`H4ooQX7N%a^S4XblS<2|Q^ z)_X!g5r|qgIX~wgkXR=-K(K0G*3WIv;DGsKhQrLb>vCNDS}8S454dW z38OHd{#&)A=a$AU`^ue&>hoh}7LA6cOJ|SHIcG*Aa%e>ywo2HWbZtAA09(apy?cR4@QeocYI<+cC4u!cs<>-Gf;TmR70!R~u|IIf!% zoN~+An_ca$iG1}ook_UXx|rjnaSa|eEd8J{%EzZ!08Q2}En9dEkMx|&^|9BRkW$R` zh6N(_Oz}8SV{G;LlSkFX)HRW;S8Uxiiw0VHZ=d+6$?z`&uA^jpS}C9fO5v`xYuFf!9@#quU_%Z$3AHu*F)a&n@1WgFPg{w zz+3MQ7MDX~ciE2%d3Ixsr#bsQq7K){KfigT(F#L2qc)E?fDwJ|vCo;Shg}!lN;_Pp zxOqn)sV%6;JimFQ(NLiO$>tG-;Wv*oS{^o!w}Hi5Cr=)^G~%k;yoghEk6-yU07x3; z9lv=*(fG8yZXU6)rS3_2AO9rIE%n01=_TAF4`?bMzbQod__Vxh9`67*$5%{m8*g^S zXd=V)VS2~n?jU~PcvfkcsTzyk1wIt7wjFf(xrJER@kS_;606e(@%)bFYBAO zLecOi&0`AWH@|tL(ek2s#Nzq*?HK8xatG{py|BF1V9i8JAgQg9kbi#jNTV6Oc{~e@ zjU4y7;8M%oPMf;aUF+5_;4e)D;x~^d5TEux+dQH${N|BH%fsgJ97dE)rTKJnSUYnxSK8rVu6L(~Q_W9@3|IbV8xQY2Ue;3zO{1sA}C_ z>e4sr_MljB#;rGAi=SJrX!?1i{G0$3u@L@%+W^-QAImK#)^~ATc{{l8q?z4T(`b3o zx?wgPx*tF3zGbR=n$7NWp?;AgkY{xtf5`v+3wGB1j<@kyaq8;E#+3ql(r89&-H>T? znlOIjZ^_)tr+;-CxA*Fssg`e+A>(|So~;PehMK2Sc zVnUk8yszfn8l8@Q@mTp!*}mgzNPD2nd>S@vc{*_oyXEUXK3;Tq@#pqQ_w05Q+Ov8A zkW>oDwhs`7!GH=b|BUDk1gQmW_Do%D_Qaq;{jU$Z@10yCvUh@y^F&3Pos8&WUR|3| z;PHS(Ke?>gp7wBc=(G_unw|wo{<=ceD*aXDPsx)<(5TN7-$7xj{MNSl)=JMD*WT?F zb0lfHD~(nR!sX?NF4hX2J^fxxF4oIu^6gRKw-n9ceUqEsD9t zZeF9+c9`9*{#bfC| zE^AjjyJHr9?jen4#1B{Ch;{PGP?&cQ(}(vT*{iMRl(oOT*jjdSB!*Cxcl@>`Z$D^( zS;3|uL6@dsf9X#tJ(qbnELn86NW;bFzd6r|e9&%&R3BG0a}<5dc37CQENfo-tRgg; zQqzEKi@6KCKMGbUhTB*q6Jj5}dGCTl$x%L=Pj2sX)w|(HAgRn)^hYVOH!l2lfNh-1 z`e{vD&$75Mmqz=xfyfcd!26|S1ACp%&8xh5*C~(1pR3m!l{F>?*;a*D^hXg~3U%&N zvQoO^viZWP&EK|L73`RiU8~}s|6J^bvTCA>g^!1Z zK8eWo*i+=)&6$!tk5LzV8vSFqE`;=mWO8OWn!EUi!-Dx70^<@H7XgbkAfVw_dToJJ zE?GEjdR)lSeeS-h1H?XOkVBP9sEh%?G3;;7PyYE}#x)&+wdQTmh}Kgi&-E$sYSEY4 zUK!=yAFLTYV}hbBL_U}?uO>_4Z#oqp>M*;D!|J1>tKOl}v@C=;7{zT<=nqSJ1vV*^ zM+%_@og&wQfjAG1EjSdhW6e4HF7!C)HSMciWaTx7KGJAPb`DNL;S3+L5g}Ks^xerE z>ua?Wr86OrgI}kt_}FUaBl16`6Q`ERzZbn7dPhLwv^XLy~11n<^Qud}tr8sF`)UAOpu zjJX6PjRbOgzw1!^@<{tBC#_FBp1%473dE<$YfH`SAWYieJHpAgRn$lP%L(l`WI4 z%aG>fkV6TnPkdY#Jiq=+n#IiJinSfFWiYSo+MEtt75=Z^yt9XfPTqH54vnT~L6X0Y zI1qA*{0W62bd9YR6voWDV^y)|Yv*Zgj%ELxxo8HBrew9SDIwp+S6M2fBT- zn|$0}bPLMX29Bt9CksK7L#H14MSc4H@-e!z%k&z@4jfq;v{@14#N^lptc|K)uVKKn zsty^Km-a2$_s_31T3(nOhk>_3#hq6b`clv-rQ+g?V~76G9yO^Bm&pHzi|K_w>NGh|j zG6n$0u)jG!xw$LvV^vj+J(niQ#9iETB6lYhf=Fe@#y|+I^{3B(Fb zODI;e{%#RIwfY{mUsd$)?6<>`aX(j;a7KR=fnN-0Gz$nPe59P=_LQO37Ra|ycA?*D z`~k-V!BBpqD5>K z33PJWax)T`ZLILi(JL$_LK5pA6e@`jvu7?kOG3nP;j!QRKf%3LnvB&PsNZA80v%dlq%z{-EKAj)0++>@f!n_)G$ktmDFn8j?T!y9Y-gN|RT- zNGCi-a)Fd;XZWJ%$IkhM07??p;@-kB6?6>yoAXmZBwXvmS6=Q~pN;{cBOE#ed2X-# zdg9E#x{oEIAv;`w5v9X_@6`-r-)@E1Za*_7WY*SNG#aASsFvCVNHEN`-8295?;J9o zzHEK@bpwr#*+k}h4u7=SX7S%%(+0k6>e_Ty3>y*{EW15Xm;YVK2 zqfDnOyKG`Qe)8KpXWZP+Go(E*92Oi>c<@=#AzhJIw%X8_LpHIuTrx@@OaR2Mf(ReW zy(Ng_BzRkE10~7Zd$UD!P4A@*mIpTdl5tWIszfutK+1cvBCLv+f8)0|@=3gH)k8CA zG^0Z`3m6;Otly_IE1P-GT)pJbZ_W2SLoFfWgn4}CJKZuMfs00K9S0{>o$#dVAfJ>r z!)yn>jC@JcF;-|lhaL0wa2Vh;`LN~9{=dy`Poo)K$47y&g^_jzkCph~bil&C%)}!9 z-A6?jM#tkYYH(WXxJo87qso(0t`iSBuDi9R&0Ly}cR<8@w*{VWWHrez{hj&39i7&g z(P&23@iAbm!|qd!e7b*joG|_TuXBFcjtgB4q~q}zH8`zxTb{Ido_gH4;_*S&sL3S2?DCe=Zt)tu2Hcd|b zxaH(58qMgr^BXYs^Xdh?D!Wn3DLq2V&A76 zT8#_`a-PJ@bw?sPXZR!AP25QwiTj2}4UwTJ#YkL+L6yX&#iqd*U^`C$OrJO*0TjcKuo?+~-{(Bd=8`^HmUuGrqSjSXHfr6< z`$JAUmAE^@-N{Ww$BD{TlF_BSx4qq9h8k{aQtt!h(r+&ZY=gxXuSlG`c{bsVK-@&S4geq~wvZ9@sL8BSHrd?* z@9Sv0azdwXdP+%yPdmVZMl*WJUjzE$pZb9+R9EtmdH%NTG#Z-cVKD*2!eYV#!zCEA z=xe!eX!5lbxi@501QL*~r@-{keI*%j3LaXtd)lXm_iX!JC(=IJ?-)`Q1FVIMzg<4k z)#*Vuls>_z!3p-44FqFfu)hpFu?rX-87fvg%0F~-K%*fOTi7ot``~L-cE%OO_K7G5 ziyD7pavII(C|w7P@%Q6H>DA>9GSA=qnMRYNG%Q9Lr7X?3C_N2)ufOf|G_~p}&nXMH z`c(Vf>@&)Xdf;!HhIDm$&<&+eF=}vHW9_dSQ5~ziY3lOp?6kh?X8iethBX|I;qUTG zqZu7*>wz&{u!hX@cT%O%zBjC)yfjRm0lG)^sE-x@{=+BZXpt|Wo2SkLl7XlfVSv}fJ(Dbw8}QfMf}&RhOwn>3oyQJMmb>4H*Zp1+|X zjrP5v6y>F%6uT16of|rS+qBwVbFHTb2iM($m84pf>h{I?9HR!O!xv{6RU=@GF8HlH zDSnUpyl!qYl6svOI(K9XMf@Tj(H(?~zcCGsW_0}G;s^fDJ;<=SmJFHaZ#hS!;fD$R zL=AqY&`r=irc85+Dy8`=(&Qap8-U8+y$=IwA{u|+EEJ7TQ|#cucv#dkh0%Hu5)!LAoZg@;9kLS@|@6M;XQ~lNUc{bD_%&BUE(qTtvzE8~tEFO(f%Q z;ewL!X{CUcSKXE<8-FVtAgPoMM+=k+6)zKXElQ|U15FL&1Bl15u08uK$I4mAi(Rii zQQd6z7pO{bf_9XZs&+`Hc`_Rt%=SNB<(9|nPQ!mIS8$ws-Z8R4zAQ80KY#xl8qMhK z&}LwazjY9hR2BvF&xDJ=8v~6dx1)IdA09EX$tB?u<9=Cg0lxXWUjRvz4c7?sTCWZb z>EM;PYp&zNKUO?My1MF4H`1=yjXhuhADlo?1%mMYME_aZ5{%TwrO$enqJ$J@M={ewgO>nz8-9m#Mwx2IG zY2)Z|*ik9k3KxGBG}6`SK{u4X!l=OsqEuyF+F2Ky{#ErNGpE$7=CHA9R)^*5LNjP6 zJq#@Im$K4mMn~y3V2r>17xkwucaVAhqA?nc6^IO5e8rX>hmXv;MQ&u0i^0~mr9p!H zrFTG5E8aT{1WsvYSS=Y{m#@hr(5YZ=$Ut3?=PK%YIbd|Ced=Eu$2m@pDosP)5oEZ5 ze~I@_ZQawy6lA7UyXs7%;TH<-9upTUVMSyuc6JA{+}~5ij7O!Q(SlV1I|&Ttm5no2I-t72L~fx&5hygF|jw z&}dk7=1ddCm}MU*M%r-gBBbZPCh1X?dLw<;C)Tn3$_enXJ{_x zA7Nkq?Y#&nHCO&L)y}$x->#w0-)9{0!ciNwa_fe@1dJM-U^AZpy4D(drLrv-U#!b` zZEyVGUBgl{LTT7L3aRp!0?}xBfjw-k`0J-oOX{$P{8u?X#C7zGtDXzyhSYp4UN(b9 z`(ClP82BG{cSx_q0$to@p1HC;Yimj!P2|=Md*d)_aDv!FeQS+9vmxawm2Ka{eO>JW zOMCZT^@fJMV~{F;i4={N7udrVjK8i7wWJPv$bapwpY9izKJb`!xxtZg^B3Ku(Y{yg zEdl;7TGndSd;2G!aqTXJ-m$63ekrSyTQ}^DN0ovT#9kR)+T6I1#GzrQb~$dC(Cd8D zJ3|Z8uy-6%Gr#7)PV!1@=%I{MCf0C3VB*Tuy(a5e>d&z{945zfbOO=H)l@McJUI&3##9s1sZ_@J)o&(B&@pHn*`jn^;!l zb@2AJfEP3BT%%Qdw3TNxT3&z;yA$}!^-xRd@&NfSxabFqiuZ>5?0X)1ugu>1X|(51W^8 zr@VvT+()UeW6LdwpcR^vzNerY}d)Xw*W(rce}q71kvFlH0QwRzm#! zJ~|g^vwVZ|(q$_G0qN4Y6t8a0IOces4gyO?APoWw7kG{GVoTiGuuU`R=`#EvQ0u z8HD`v=f2Zu77$LMWx%LKU%!Kvnzp_Gc~d91ZoqtkQG*i%=0Iq31%Y{67hoQdJ{nWc zQZ;D zTfcz6XtcZlW(x483owy?{9WR!-b|Pw%LBW zlbudH%iOb(hCTec;2)4jqvZwmHUn?`vjtI0>M951pFdTQMx$b{0=%5py^Wc`1Ap!& zkkksUTdnvKqXs7kzBEv{pdD$iORd(RG zfc%}wF^DDt4t0H0Y0NffzvL#T&Au%A+ye#V)7X?lC6TgC6tM@HI~`umlKc;wEI#G_ z%uQoTJM;caAB3_|f3#aY)xh+Muk8`?tD8+wXW5^Yowe6c?11Ph+_c zkC7-zTLc2rjs<1c`Wa5%N0983o^MvAZ949rXmlURjt$qXNyPdmZsb(EH^#(gq(2?}Z z$R0(Lxx3Phf9egXV+8G-&LE*+H8&9A*Sebf?{3jPdya{mS6)3MjylIU5*CnGPMxBQ z@Si`wpGGSU;d1oF9+HF6uq!WeXG1bnIhz8vjT1(XPHq((fd~GI2@IgBQsBeJ310vw z2pd5lM9E$hHRtXOcPF<3@^z_#IgDdAf;l`JBGNjCul$^L`iChS9QKz#_U8a+r<;m7 zO#00)LBu0Vtb4o1&E9kJw5KOpeRwmMMk@i~T&>+D;nCgXYoJg#{(c6xKnkSOoMQSk ze?^)+Ul##&SCe5rmK{2}&gfX?hwNJ^BQT(Th0mt2W<$diRzC|GVRTP*HybvzH;_UB{dJyV!A%*OKv%I$8EQ5k#YvgK*B0 z=-AL6VUl?Hw)(8pvYH9ASYa23N4bq%Y=$bP1-v(i6BIjsJn zw9UDga<~zxTI`}QYa*+=mhaxgXGOx4Q?7qB%%IWoFLocG8o}vN@4i%p-86_>YwTLZ zt_(|#o9no&n@j6Lwo&J4*u4r7ciU-GaPYE64$01Uo^5?y?U2IUoUaV>$x zfPLnz>OXbZI^K41;Tiw1n{2A9by1Y_12Q9;E#B|-^P<^9i;4@ErP1;)a&cA+Iz5n^ zscLHtD~MZbo}{pR*ujg z!gZAdMM;Al<6>hKyEplEuC816Kmy-5xt)uP5N^G!Uu0b&k!Skl49lHa7E>{#I@F>V zJq{I}}C3e)EUC6Y)cC@La43@6ctz$|)3*2NvrgG&_7qYAKY&7B?9EmXopOQWJC z(%2C&`#vTrC`=p+FS3VD!7To7PPSqoVugwPAyILW!P*z*3e6{rX?lPX!*BXw?Q?6)1zE>R@EBm zG#q;MreN*y+Pd7hb*=DaHT;?oWr?tjA6SHpEQdPM4?icLMI zRBe>Bp^SwX>FVH&@qA>kjrkiCy+Uzj1S7oz09sMiOX!#er*ubFE1G_4F2XE_w z-HD~r)^~ig&?iAOG&*JV*wM85_BJqm>*UEJmquK5n-_7a?(r+X2GD4E-m{I%adg2h z3bWrQ=#1~!V~!Jj_CDLVW?lmtE&pN{zfaK_3cHyQx7PKpt?!9_;mfAk&s%nEQr&9J zey3sg4n%x>#q_rEW>=iXbt!H(rTos0G#c6p?5K>fZ3V=vF17*+@#^L9wu$}CoENVC z$E8Wi>HRcX{>AKF&=5L3Fw4N}g0_NA_U)Nh7I)tCIqI|ja?;D)&1_?7m_^20o;d!o zPkgrT+9p|-GnPo-(P+gX9E`>o8?iVgN*BbU2*a)v?A|%CjO#Cd9}0i>Wc|-HTK+|B zE{q>CpkzVBX6s@hygqT*vEpr!LvrX|vuCrc?$Qu@4^sWzD?NB%*Y*zSUK{5peUNmd z(eilw5Rt2keSo5PSHIYNuy?B0veo++m405QB#oATk(&$ShgPaazM~-rw6+hr&K-0- zr0zbyZD*f)7JAg4dNko*5V2*b`P+7@f*mumYgPR7pNrjSv^*R?+zc$b6zbfkWTkY+ zW&8K17p&}56-a8o$WRQg$GdJeZ8oYAoE{cJrYh9p#LpmE z63YD$1;8Va^E8bgYCOL>>c!??rrulTJz;tCg=wqmPop(Q_d%`v@k1J|41~+O@xxR| z-R=FZL-ETa?WdfyKJj?^>Jx|u1O{G04kh7_AJS-rAzc2P|BCA)(dkjH8Fl4a>(=P* z^D1Y1^lj&y=GOL2;&G2)8gS77tU2Rl%^GXHy|%W!zTv~Y=MQPL9N^-dZO8DapdqZl zU-6eeq2(5c!unEv6q%rSe?yW_XxRqjz5~k5y6~*F%k;!nt^NAhCSXW)z(q-7RLe%o<}`kAkVgAo2kv521~|dR2H2vbBh`Kd*<+rsQ4#!bum=cf4S4$jgW5c- za?NX9fs`AcUwmk$h_ynT#1G-lUjs>_;UW=Zo%})S-V2Z>e+4PBtq$hMKmWuK8Vz9{ zi;L0F$x1Gg47ULD2qwfkW(7%_2o!%jxTst9K)?NSZ$u@1dAkz@;?qh4O=zu`KMoiZHP3|af9XYyaWo=anv_NUPdU#-d3U5AH@ zqhln&sB5{C8*ZB9&Va@&!jgvwi8A2ZCggg!jdEh4{HE}fds2;cx zA=P8QkVlq~$1g%2r-VHA3VC1;BbBRtLLO&@JPrtX;CCZ6jl)77$Avu5TBb&IOvq!0 zkjGIWkL^MpUf^K{mn~fA*y*N?8#5j_<1|DZBoW~!96C$5WYf%>E6z4=7RnX~edBO} z*!7LWF&E}SA$IU32t!-oXB#eSqj5)A%AOSjacgnnSd>J3pATzz%+r!0Uv&Sa=yZgT)1yP;88% zSsOJ>B9(>(vx^x*;v$1^p^@RH}Lv2d5QZ z#mPaGCEKc^Ksgknz|<9XDp2)mQQoUc!#Ap4F2Z{`r?)LVhyGEDr%jw*jQB*zricimJ8@~5B&I|zJZ)5a`VlE1ywv?Y>F>Z z$Bk7*0PnLAkTANmfZt0T*}w=@y_rHD$T_~DWbL8{>h=GFT5?MkQ=_g?qn=ypHo?!i zXIStcNi5jdM5o#|>f}A$8g>5LS~TkXS9NIA`B7-msPkXds!`{^oYN?4)~E}=uUVtc ze_xA6o&Ty1jXFOHjay>=i(0qDogoH&%e;Rs#DVSMVUz}3Ex7Dj*txn|+q7)i%F4yn z!NuCfwWVuoTRSVKR?c=d&aN#*pV^?YF**E;)+jpcZ(tq9_!6%FWRG$WGPWfe2p(i; zkKqE5TLBR&1|1m$L<^sFXsfW6vVV{`T;dotT)x8?dTYeiD+nmaRuFjV$QEl#>dw|b zs@TGgPtDoF;>$YR_ZTL@>dw?_h(J(R67bZVsoc!MH>%jerb9=z^vuGys@MwCiY<+@ z5W5!9ky0lwT#tc>{W|EBJQIPa*aa*Y%M%DF7|R?@V|l77mbse7@=R4M^E8d+xvE$e zXd254Rk1AO#iCJ_^Z{NHEM|e=sX3m@Lul3^f@Jfz{DY)X;o&;fl^-DzLBFg9R6TEIb4++2o<3XG9Rp^KRd+Kv`9LL3YL4rh9aA=cxEdrfEke0=l)C zxacNKFc6f3_iV!WW3XtHTG`v73FD03BgCMFt~q>gDh!qc#tp(lZ$Zx`&8?LD#o^(w z#ZO?cBPKj7Qc}{~Q5-ZRCK{iau96s-&H@7i(h-1-$U!3G)FxpYLp!lWL`7|aW-dCx z+9XcquWUVBhG`)sxx%=e3q-7c5vjBU>mqEONb!Edy-jL3wN>R$<)3#XSGRlXI_gkI zi6Ko(j(hx%j&P55BkRyoL#KIVR$BIgh#gT-=!GYuqBp-LYfau^)5qGnyN???<|zMW z=Ef=5qoUcU(FexBa7L>!utYe-yKu{tS6IUF7ouPtpnw?FJckjutjjU0?Vsr_^T!aRBN&rSbV89 z&~i|S|Nh@u3?D%#&6_KYErw29kyYxbD*zsroKA6Q0i6T)flkV|s6G%$AVRd@0(r8p zP=5AuG)w{AH@tS1Mh%j}&Wny>X@HG&8_`Kw7?F~-kF)jA{Up072O!oN_Nt&$ieb8p zF8adVi2z9)U;Q|`((NyfLevt^y+9&hM^#85LUiN;^;e3HBbadklyagQ1lYg@QW9b) z=aItQNphsPOy=lnZ}Yei3@>EPDJp^t!bjOxK?aGIjldwualMmT&gnqR-Pw;M_>Vck zx*pt}q^L2ZTUfO;B&26>e3>APiZB$UiI(-onR*5Z!1PYakdSU=NJ!5#L7LNmAt6n) ztT)d7mmpnAXc7dTuMXG^mkD^bG(tZi+CVNJTzbT>X4ajm_nrZyz3iIz>U&Vh9c zL&CbT3D%@ifxG(3P&b>JXxRko99XNctM#v~o0wp21XvR-=POu~?h_G?Fz}5KE8)6& zDwiR;n;^|hpf&=iiIz>ECUvzz?ds+xP#Xc%M9U^n6Hpt}sRH)kZ)y z(Xt8E1l2YM9fV;_s5SzsiIz>MmZRFBc6ECbs*QkZqGc1R<)}93AWR1ns*QkZqGc1R z<)}93AWTOSs*QkZqGc1R<)}93+AdoYs*QkZqGc1R<)}93;x0QAs*QkZqGc1R<)}93 zfO#7es*QkZqGc1R<)}93fO%UJs*QkZqGc1R<)}93*kTJ4s*QkZqGc1R<)}93*kVf) zs*QkZqGc1R394HdbZoJe3DrhGHPNyO)pArDbZoJ;3DrhGHPLduLbb|?s0OX7$sV1i z&Das!hFXhDw4AR%P0k1sl?2Upl>|jegB{~yW1}L4SK%JyDj30?eGfnYtcC?oHX^5n z@bOGu(D-DdOB^fYR3SE5{>etkT%cS&*@#G~HC&E(*!eq{pL1K##dU_;PWQb+c+NS% zljuw9q&UgtH?^m%bmxMS6pwPx`?x!v#LBuaaHdizuB{~)BF7Msz-(@ehTtQ)mqR)LJqxa}aE*g20WLiCW;|SW zaG@iKk>k6z%g7@3^ead1fgBuOgL_sw9~@8AUdefq7_W1J%29{xlR$*Ho(t56ds*q$ zm!l9R$W@CPyUcl#*obN?a4J`dty;$_S)!y?Sywn8DR-C0s(9p_VA7~>t&<*}5s)Ri zEz&b-%;r2w8quX&(n6g(bj))Shj_8-ySeCR-dbnN5ED=*y&%DMWtV7af zSt9#)dPABJB=pVJcdoWF{FTw*gh7rM-j1FSZiu95Qo5pmJ2%KDK|dw zV9IK&mq^5L_ncc*0iOb*>YNWTgVdfHYWKC*jkX`xxzB&KxJ`$D(|w2?i}9f8L_Qdl zI1C3*`~*TrWObK4%Ee(lFklb39>ay!VsE&fz%>W1f8pu{*E_iWg9~lHr*O@Mt0!Ea z;F=AWB3FVOML6of#i7Dy*RCCUg(^P*5&K_35bRhG z>?l|e3!q{HMZvCsB6dI#8;bnjcW2)1+-C3gl3PG9o6p?t&dk1f^ZLBmyR5$Ath@f) zzkmPe>YDbCOVf{P^tq#8=~v$+&E0d{C-L_tu1q`Uc&huV<3~&D47jHGGyi+%k$d~> z>r#vAetOWQ9Zl!{-VzU;j?&TyNL>ktDzrUR_MM?=gXr9%xu#9M0=0CWEy@ja9E_7Nxs6R zO!v}2L6)Z^*W(-P_7Uh&neKp=_4CecZ7ut!m5x_?E6?owXLR2<%V&I^9Ir38-I%gK zz+0l7^j(cN+FSO^_T(3PN&@acp|?aGL`SJ+>Zi-=;<4-;UtwuL(nve&-mK!2lLMv_CT1U7$itEy*t=8JgAW%8UleBiTjnfCtZM z3GT^LYAY>6GSjs#m+X#HdsAI%ZehUd(;gX_vHdveomf;P*x}b+KJCQ$dR0kIf!CMf z4!E^H3pz}M7$@pge(k5+qA_|GpU*uhgV-`rJKeWp6r?{9RRewAQjae%Ny}Ketq>iP z+&P!#`@Cf(xmx<`dwO6(V`xb4gcOodP*U6f^YK3%t5=r=yxE15J=(g26Hf(I#-vUx zb<-HR86_zme_?)!$EVGEZPb8c0JpFtx3DDNubr0r%b#`7Im4gqE%67^%1Uyy?!PX7 z6{Mg_OxHc8$fKP&>(8mOZeW?uqxbvhl>t}Ex}k1gq2BMKo!f_;hG+YE^4&R;(mgaR zkvKQG$nE!M_!G+lL>z({C>-z60(X?TPcb_8_jqy#dkK8LC;L)QQI;pquig0Q#pi-P z2J6cTbG3JBHW>oJ2-ap#@&`P{Lp?q}h%!BJ%-JCi4W3l$(Q4P9vjuZa@_LJcl&*Kw z(rfF>%E8{Dh5o`Zg++zL0$=vmeQN3rK2jg8a7WG*og*ad9$$8mH=x~^d&>u+2Z?^M zw*Q&Q_v?@b#*sG18R|TKL!%}20Li506Q6%?AEe7vKPp*UmXX!2k>0{|B@XJEf!SSt z;_0nNP>J7>N)X?k7 z`~})Mzc$Jh57Aw+w}@nX)PM&kfQn;$R7HlvLo6=R=B-;IBqrNalt(fX@JtM7W4^fT z37xc)0-hjgzwX~|6+|J~T~q{l83n?tG#;gpJMHxB<6-lHoeA{#QP}~qkokkXgK3aa zS)M?duVkp345!wj#>`o#s@;2&s26#1LpuFEt!54K2?opzzdmA-C#2h#tM@GeagyC7 zrl7nG?19{~RzF#zp4=@%Wz1E?+_?~@eBmKUvAWhH^aVh=aZ`s9kcpg$=d za=97BVD??}F7GSgS$W~!`K|{cAo>H@Iqo7)l6RsucI&q{ArjGRhZcG!fSYdeTt4ml zzDXT)oD2P>Mea%c++#>i7ydE+5y)AS@P%QrJv?X))i z_Ca7$bA^*W%Dem$3@`5o7LxbR^Y}a^6uIMav)N(I|wb#_jHr`SEJ zZ%6If)eGu?I^c{aH^rM%hL9qoB+sj@998cxeI|O73<8p#c5mhWULT{V&-~-B?{GDd zphBBuprY+NZQMZp;eLgANIa$g69Wl-^qE9GlMsi`Gp#oEx9uk`AO z&<&5M4f^oTUQpgtpU>;d^yh1Lj@(rWx2;#`lMbBPVXsanJtRqj%>@JXwm~hD_CO(0 z%eVFD0kNrBa@OBEPh>np_9QznsfY|wCd7Sd&$r$O9aPDu%k*Lo53?4Z<=Sdh{R=Meb5RJ-jV7kgC%FI^UGn};w{`rrP@mNCbT0(wl0~jdf>l|b(xOS)(g~jr(W@o~eD1U&Hw7@y z4@zr^skb4N z_1EIf`*d(clZbc&-4jZ*0lRDc3ht(nCTeGHExlK7ryD6`k9w=?9w3dPND-^)wA2RP zGUstfSoom&f{nxWfJ|w=LWEP$Xv^J6et zyZJ9qTi7+~GB9JHv{b>kXGbP>cp_k zBeXNxJp3W-Mn;K_OV+xapJ2Q*N(=#9w6RMcur;GZp-fS`#TP>A3jL$T7Z&;vkKgpq z%`XJ2i1<{sq<)W%sLJpM#d%`u)2iw794`QEOd1Xk;ADlcPb108s|=%TReId@~JE#eL`ZoU*x zPLbQ^$z|jbFy~^0HlfRn*JI-S-2OnQSMh7Ln^oHYdiHZq@|Fek1>NWlPu2zk{XBUA zt^KU4e*pW0oCu|FnCwr3n)UPMxQlpJel7npe;Y79lUCt{CEA{UhBSm!27~GyOLxa( zE?hwp;qm2RaX}g1m z=rxe0PPXfR-%ULac2QIsrs022ujq++i2CdtT7zompE>6>9YeXY(7u|s{AS1vFE#Y_ zs+N`4;6oj|!V(?3dQ)Z>f_LO~C}yQZioVX%9d2pM>)bk)-ZH;OH}hKh(4Td4o=M9@ zX@1r>cw8iW+!V-kKegM(m<6U36zLheYxM!P{XG+yo7y+SCLaa1=&{|T8|%~u>bTMA z^X?-@Jl81! z8&~QF`(Q!_l$crs%^J)Ya~+JNw`8z4KOZy(Eb>(XL~>CfdAc0~+UYC60TW87MW@P; zp7$;QIs+-AfZ)`he)WlfBky&2Eu5@d1I$WfmKp>mT@8tmotXF9oo(;;fGAS1&i!HI z^FQ5KVNi_KAy)%E+C*azir4|keK4Xj9hJ}Kj%bnmi$N1$ZKnldH7Sk5=&N( zPs}%U{yl>rcT88|^*{ACds6Qz6DB$%w3Gk15xUG>A$AZ$#R{~6Ewkqw~J&yy7 z$`EbVN56judxwxi+D9Yu^S*S|^?*Z-{k;flAcI=X+c(VtolI_vv}kW%qn>hG6d@s8 z`(xZ7ec>ni!xxAM<;0ym#zBZc^x`T-^96fhHEfabmTyYR2ECAiBCLzAw=7 zS`ay_Fux$69rs(CBFJi%*Bg+T#oC@#-GNZHd%PzX%L^f$+GVf*m=dfX;q?|L7E{tG zpp9yD!yC|);QHj`$D7UsDqNv2il_bD`g#ncJA2_+hi|{CJLsfWac6DnwDX$7Jjkd( zUEOrw+T;z0lnC~<{VT7VAjUyHkkSBUl+){b;>@ez%?v{J|8}<~hLNPz@oE0h^kq8M zo_vAL#NQtn0b!4rgY3|6PJ8(jRuz7&*>#CqKw)|+ID?b7eEJu{Vm)$E@o&BI{Zu$Y za#MQjPSK#^z#H89KV7DRtv+ut+j{M$-?smzPr?%r(XbvI+&5xSX9QwoJi-NHIiI^) zU`*;_5s1}#=Kh*St2q$cF!T6Fp)BHAeLBGq?yJGq%##QaTzwi8UhMp+VN(#1o-oO| zGSS9Q-E<)y4R+G!@}+mx3or)RA`77HYjo#zascJo z8O1Xf>4=LePVsskteK@(^O8%9_*jqGH|s(d2(DMPb65LX>$)M-U~Y>aAJCuFZ`s;u z9ke_C#*-pzF9iRwU*8-FOaoXKt?qt)1Kj8=S>3%?A#@2h!uZ@b;nuC78ES$+U+EEe zhPx5XJEmy=?CbR|csZDod4a-G?Wyngd-#5^eqZxN9StP=3dM?S&YSD+K1zS4RNFgh z{!`E(ENl_sfT}vr$~vsuf@uw*xF#R@{ek4C{92P%_jb~&DJJTY5JYTb>BU8QH8wZ& z#hSiS{{7g88UY&$y>#C{Gyaun2&_01Goqefu1l#Sd+Njgb6Jged9OoCKcnBVFb6|v zH^J+pi4W;ebPQOlNNkOHty%&JqiV3HxK!(O;Q*Ho3fW}RoaOH>$OlO-bO$JvkxMSn zuRV9(!wKN2G|YR`7Cj3*#ckpk3gIbbNEFw0f0?oxrrDeW8!+;XTbq@yH?8l+uUps{ z(S+$~PLR14jZFs6MKjr~9M3Rq=aumnm@0>B!xs!5ZmJxiO?&aV-wdqNOZ|x?5`i)# z*q++-x6z$iQfa^D{w`%pOqJuc&6yux9Ri~t1tB_&j@M1^0&gLZBN+X>w27lPwHwmx z!H}k*9$Mm4?sS;8CHcJ9A`DL_HF{ZO->B_y4dJNaf9^HIrq#h%* zN3QG85w>28lIfeN9n>_5ttE}6GYwJ_5*=pT3LTi|lKfn;nOfTt3R%vku zt@E0zo0hMS*JfUO*h#x??olfYAz%$8nbro(^{s^;5ZDa%`o@)!qD=Vt^hM^{ z;o7Pnlh>GQM`(@Te6$$WLqhO*JldsgZrBSmfun~wX)n-DaX?;Mwfz;Q?Rk1`M1;0m zBDBqq(6%5#+pQ7WZi~=%dziMBG>5ndZ5<-Cjfv1UIYQf`5!#-Q(Dq`4wxi|y31KQY$#j^TTtUMU!P)mk4dwL}=R_ zp>0cqw(SwxzK+m#To^uJe$6AawT#f#DneUon6_tVycQAK+MC+ka!$arP+lW~!BHko z+8Sz0l-JBZ){lRvZCZr3=@HsyL}EZ`@gW=Dlf;Zyq4(>sqg0T1*GyHF4 z1H(W0A%2>lD1YW2(ZK)G1izQV@VA=a7dQ<60~7q49EQKi1pirw;lFEwztv&*r6%~b z9%ku~4HhTv5smx|Fv0KOF#LWd_`@8A-`xa%T8!|2RdgC@ffFS$ae{qV5+nRQ3VdW~ zZlZz%@Y_<^5F`8@Ciwpc;B)|fYbt-o2>%xaKJ4dCDmVat9F@37a25IB9t5hK{Z#3X zw1}DhvmJzwWwjapiWuRm{KcBSshliM;O`d>!#~9Yzs{pfT^cOR!9A?#|C_=S;D4$D z|8%FkM#TtU^}l#K=^O<<^mkK?@KyQ%zL`FM#|Ynye=UXnz`x~V zvO>cl;)_-m&Bj}idWzfX+tRsB7MV4L;pr5NF>`V~j;;}!g&U*E(CU!_0bo8{+( z$CizL~%0#t2`PPvCEs&zuPMespS zlp-n{VuY{CKlqtI1qa~6f1URPa}TxF2luezuNl6|U%(#|BYe>3Jt?DzuVzXVfz!oQ zu8tADYM+t6HQVQ}VuY{S=XM0&Y@cgC$<(FBFbDUrqd(xA>EF#^_;VzVzzO^v86$k~ zcb&pt&fx(*;-8r@!dLm*p5U4J`)7>sRsMD)_-6jLSjOC=#xMu>u;VY_oB5mRFnlwA z{V~D^e>W)n<(x3{_tqHUtM;ce(Z_7xj$h8y4MTjY<{ozR2YfUA6Jmr9`h1|!XPQJ4 zIKjS+h!MU@pKb)tjQ`UP!=J6-5Bu<0jPOC9^$LA|p9?JL)8J{Qt{m9n#69fj5BO&K zbc+!_=<|+3AKrIj`izVbzM5Z3BK%>aaR5H@ORHjpuhJjz&GPwGjPQ3!+7M_B@Q;zq zV*HPNMpmFhn1g#*@fY-eOQHX-5(b``M&+Cs;j8pXA$T8A!2$TNKaa%-ANT_v4#b~N zQ2}g}9#l5P2w%k?`!(hK*RvQY^1(f<=x>H^mY;+e;e$T!EBu`7g z`fO6@Geb^{>GM#G@INQmcxQs?b%wmaKC6p1xNAJe)a4%K&)kE+1mSQm*aY=RmN)Tq z9!sU>3;eX&%lg_1{TCjze$0= zjINulau)uV3VhJ#U5DZG{y6A!6T#0};~f5b2&S38zq~Bq%V}AjxQ88o0pHBuD_`ZO zEkWy*+#?$JX8tZ*%TGH4-^}0a*PMlK=I{2`V}t*VqQ3))1g)sx{TRqk8kMp)1$=zk zjbufC75*TC0r-H!@K-trKTE=|roeZ-y%`rqIn{2>Y*}=y$4+-GLcLY=?;a4XFL4Ux1=w0XG zv-|`8^o`ELuOadOnLrPF-+A~o75Zdg5_I5GT z!`hga9sUeomCsh6IS*fz&%K{J4_}qfcegkXUzN`#UpNn6mCswZIS*fz&(iI&!T&+A zpYUHTq~>6Z#Z=P25%BS8HF^#ecd9e*N#9g+Idt zf2qUpuQ0(M@V&G6gQqwkKcN3khv9R674Y$$w;O(N7XMWQ6A&5y);~H6pWh#2_%AyQ ze<$IN1Mu&oGG>Rf`1AfO!#{ebv+#NUh2bx882-;74jl}??=ENYhYiKS@OL^4A2B)( zz=wX#{>fSV5u@W^{5v3sqXVDfO24)Ih{pc^DxYNd8)Jlz?_e=9piMso{^xW(es^s6 zo8iB!z(;;B`xj^7Z&ly}|80Amh5wBL|5LhN^{aF6Avbil{?SCArL~-c|33*Iv;h9o2>w&YIS;?Pg#R9a?p)V7_?JukM@aZ1 zDA8B5f%EWlB>W_T?{4HA{Am*Z^#l_1uS1G(UlZryzb)aH5dKS>I|qNd#2;6I7r zH*4)Y{H_vyLxMm5Oy}UwkocEK_|0jd{cv07;9p?@|IJR$!JlaX|GOT}!M{?%_e%P> ziT<^coQGd3;e)@0Y0kqRC*faAiJGZ>oP$40(x;! z{(uPhg9v`!aOdIUN1OqFG5MEgE{P5PUrKy3o?v3l-k1vDk0tv#((N34#6N(~{&zY# z%GdLpgOB(J@Hu~&OYk!aoP&?}2k=1~6u^J9&^h>se*mA%W)Ob;OPzy{_y_Pgerrnd zQ&!|0{HYQ?iM@{h83cN^*E#rzuYmta68=ww|Fh$qgOB(J@bL}@%m0!x=ipD1@Xwa; zVSgG-aSlG>2bDe#5a`n{cMkpx3BSF>AMn>rcMd-MJMeES;X^ciGo6D!Q^M!?3ixlH za7KKu*dpDW=%N1#U|Sw@Ew^nrf?{Q6WtpN~k8n!M{A z{AmOe@Nc35`0o(t-J6_)KV8CCsy4 zzW|@}KX6@_VG%$_W$nZ7icN+8x}8dMDv+P&$iH;{*?IVJ68^^of7h?E!QZXmPhhpR z_@Dz&lgQA$zBe}b+Z6cNf9LNzfj(I49a|gTxbpNj!~a5uCg>0N_c#pydjg57{*1zcWVoUnuee`|~~(9N;h30txkFqrVCt`elZ{Uc#rQuty~NZ&mRBmLPmh zMU~II2C?CXeU(noBM51>OlYQvIFRk{g>S_;%|nJy+<5?|0elI zf5X`5V}}2M4qd>FV&8XbJm96_agVWZpdI@-IG-iY*jEG0GpS$?3H9iYdK~C`jyz)z3-=wU;2FG=7f*%v zwos1)eL7JA9v!J9$b0Y&2im((!8o0%bftni@Z)8g587~`4z>mTx>4yt1v~}ZSEwJ` z9rQbo3i=_Bay}Kv2IS&Z>W4NQ=+{%8d(j#FFQAf01@&vGFXq*Y3J&0tL?szFbl~|^ zDi}Y7N}9aKSUAw$n+n>~sbt7|)Z@UpFBP=+p@R2HagRAc-eBu8sX+c9Tab@9DyLBa ze?V{06Ep)oFjwFY9DxtU1l-+J22cV1(BEY=FI%^iM+mq&X>yT zk#sJU*Q4k>PF|0uvtM4j>0BnS$I#g)uXE@OyN$61Qu$0?52Eu9d7VY)Z{>A1oj;e? zgXz3kUJs%37I{6C&OgcP3+eowydFm9t@3&}oxh+0THh|uE9hL43g(Wv6;Q!^F*nel zmK>=^ zI+giU7EpoSEv2%G%B@sxqw)?F)IULGHI)riz|%XZp#DiJYpC2wBTeNaY?X_fkRMr>VS3QMsQA>Yt&qmdZy| z7EyVC3S{j|Dwy|^q-&5T)NPaJujF|yk2;PB*@E5>mAr!{^KpXmix2$`(WldzBuW-%!glpC#T(kb*8vFwvF(&w=>J9J(AHWar0)3d)tLd6~0D6P&YpCEE&=|CS zS>A)LpzkYG00VTpm&!sapd;#-Ca==<{Zs&l=gu@S+Z^OVzPpF`d^#(cxJ;F1vyPyf+L9aoB{_-Ar4I1!0 z^cpnad+0T2!1r&{HE4i)j0e5LT)}(pvw^NLXTFDSVa|LHeN*o@(miOv?VC*Z@6$bK z!tEcJ?mwh^(1_bVqHEBI??E5XifI5^@jYGYH2RXxBjoiqI$t8MzoPRNSIg_q>3prc-c0A~()s`7^%r!$QC@#f=Zod_4|I0R z>u>42Q(k{Z=bx##s1(S$56Ko>q+A0I+PzBMXyqEP8&Ua%3g|U~$}}qDsa#IwN-F=O zav7CbRHjpzNM$CKE2zw%aut=SR3=fGLS-_QTq+(aCs4_wGLQ<>CY!FAHb2sJ78Rb? zV7g{n4WjEERIZ`&IL!3^B(IEIozUk~@E ze}X&Sqx9E*JtqpPok)WPQBU#sbpjW9OQ>3`(sdYVMecmRzIco8*e#)Ze3x$e3O>W1 zLjPfPKuOUgJ%C7a7x_IR-CdZ37HxN6|NiQvZ1~e$o%C}pnxLo=pT`96PL@~cv?TD7 zs`R1HWLgG{Cv_P|AwO!%NF~S6c?_v{9@V)hwIJXOqPtS+huSjgn@0--yH>^|RvcOSX7&2fCeKakwC(u*ih0)ibv~}yzz%`1GZYnSj0LW(<7bq&Px==EHNu+Q=~Q?x4xXWn7#U0SGEkM zS(H&~M92{IWe8nQqB<8Phr|=%p>T_U(jo*-3k4G6%6PfR=nB{svo8!MMc0D>(SbF= zpodi(+a<VOubpUW1SOInMdtSV~!>1GU#8v zg)K<<`LvYt=}alX6q-jWrNuhYxih5|yHHIJN-3sN+OadG#*(Nll`Kgzox4)$NLR^v z-*ke)k`n7YnFp$+Gq@MIm32S-d{2<`9j4O`{z$cm>XsH#Z z25MacIUbK&Uiuo#9)=B1BMBHwb0{TgYfs$Cqp)%eNd_$4Xq``!=oy}MtTSOA8(0sf zaVFDfdE}WuOG6GK^=W83Q`Q=Fe#TfXO6oep8g^a)=Tv8<>BI9&NyexhR4Zls4D1W#-vyE|yMy zqO#VT{rw=4Y~jPo*EDfx)@&g|HRnRoArZs6XpJJ~AHK&a4&lNwFXo*>IFyl273i|4 zdXjMMO(h=8k@EI~=?KrAM{$A?LB`56e!dU++9a|?h)02QxcX)e(+uNg)130D_^BWY z%A+xurs3L~OFY8U%$R|fwh4`>C(iasrZ%`JBBd6#&#;BXI;sVw01(ZOr4`Cpl1JEi z(3E|4c$|6U9O{qJU9_|m(!jH+tZp(r2NF(~5@f`hMkHm>J6wBfTMDojOe2qiRSfXA zro(CF=EU)|8l4$d9P&{{zR^##q>E2SE@^spNQC!skJlp>Pk^rclu1GIu~ttnk@l) z&!LpiGWck{cElQjJ)Iggohv=QHE%c)5XRKXcse(pPbqtvy{4 z?RKOBs)4qhiIUxj)+u`Yi`cd!-6v3cJYAy}z}?Uq z$VK~dbLm66CDzAnZN~|XGvWzaN5V9oaPLG##2KjVLQ;`Hr3aOEG$X6%BV3%(PGS+O z1>uMbF+J9)$V(XUJ=+(x723#olXGlo!4_0Vp0(UDy~0ZgTaqC(vR}_zAr|UjJ32pC zs_2!AIAJF#{G6&`F5;rybIc86o`}U=#CP$e@yVJLtmU(M|F*F9B$Bp>Tz7t!91BD|hcXEvI=Hgsn! zeddtt#^YqqL-GntP^FeJ|TNaU>0y2;Jp?C4s~vL(ejwL0EY79I%&U zb&{T$A4@$D%e&}xIXija)hB3QLVASN%^-agk%@H?m+fG%PgP+c(1 zeYOh0uu&dniVPrwmY@g@d98e4y%gCc~Z+Mg5QTGNdGNSH{Irp*c%`%Xq z``u#F9OPn+L3QnxCJOrbkEgW8*B@+h7lVM-Qh&|L* zYNjnL_8JVU14Q%eF}!D}SwF$S{T zX;j~x`nV|Gw3Ch+vPX`jgNs&D;u*Fq;ru;EddZ~8*cFAfF#3kp4zk6AEo`Xg?L#s$ zMBgWb)hQ-^!;fd#LSqVIH=sLF4XY!pGU0PUn*^#s3syqd2}q(dDAtj#vDQq{`ylqr zwjGP}hv9PBDkY3e_F!AM9GwXr5!rFE8|EUK*zuKf^~j<#-GNqO^op5QxZO3A(Z>`@W z)J zTU~Xof@k0=vJTjDL;eSRO`)r9)PfrDK27H{K9P}d(aTbAL)KG*P3>?m6-IG(ZMxX9!Ro{zSL6rJq2ZQ(Glv8Rf)417*E z;ye5i?$T-gNpzP+G{9afEU;MFBJ&5{L&u@LV{FG#?I7|^cs~Sw0DeA4J}vlI5#2pB ztJLV|kNph%G2eN1#+m8gg(w?O^h_gKg7V0kLJpBtO{O;NZX>sVb)~SOov3F#-9us# zJA#V%GrT?fvx>c`z|WiCPYG8K--5sJbL4Eaut4yl8?F$7u=T_AGCHDbgh8l^;zB}T+2 zXI7%kIP(6bL08T+8Z=8MT48_MJbM>?#Y>EAEurEm_sZwOYZTK6REgJV1c^je zGL>eZE@cyT0kR6}AS#Zh0;*w;0lNwbG)}4QSiI9xUVFpMdz>vy&PSD>yU+Gno;xya z&^7q$RQeO^D9`{h1AWCF6*Ly>gHCh}O7x&l#4O0f`EADvjQ|IcRt{3^mB?!cY@x88 zu^d>#LG}fI_FRV^bfZ74C$VBgE*h&LVS&2qGseCOv;}uqXTp+U?qcTSZO3A(Byi=` z{TRv;;mt%)Zh|cg=9E|qKx=V@ys3Cc3$hB?M79)OERFuaE3D~&FJefn>Rj|<&%#|)WTj3n%~Sb4+OLUW)YF3O16ja5FD6uw%-jmF*<_)|WX z6#IAFH(W*(yXyF3uUpyNBWKzMlh4f|S_oTH{tb?B?Ne;2!7I%G$ptb&F4_^WqaaHL zVj6f%>|{b#5p^O864C%U!A=V95%)kkVEooYK4M<3x<^~RgV#+n{`82AgX zi>+jjfus+k_4hoGz4TKQmQ0i`)AL4X=})zYcJe~%Q>k{M{v;&satSN^Xs0WqwFnul zMF?DY6CTgp!eh1|8oKDKD0VYs9wFw$AL9NVx<)}KaR=?}PJdYM!Joh$V}BZJePp(< zT7dRWw;hY6v_HKa(n8;rfk(yOjCf;phAjlnVFmPO##6KbdwPZKbL@$*iU=KZrtPx^ z)&|WDX>!q5eC%j!SlLqDvWjR)g)z$(2J;El3myPFkGO&^!6#ym3h@$RRPY1)lkfzv zhuF`=+7>q1MPE0H7T?e}Q?M@Qchj!6g~2%-W0ru1?+3uGhTV1CgCZy**M!IoR_p(4$7&{f zU^haY6=aMpw3w4RBXvGE+K$0mJD6xtLXtC-=A}xTi@peIM-#>qE4(t@qK_jU;5$d< zV=e0y@@(5NTF4$ELn8RfqkxBE$Hs{1!mXF**p9>;Mr4Kchj`yhte4>j;Kxyi%rEQ@ z@*3bS?2*s~_>*)R=Vsfn8ps}a58LqR>U;8|Y1gO|^_pu7i}A*rSHKB!hiC+ni3knW z6B>#<7`&N?8^twN6o{@dV;6l*S#X>`|Lt#Cu>BIYH=N|T=&RRulFT$jUKqUO_tM~h zu=kI+8rBcr)$~;;i9i$ z+tGldk5C+LvwbdFF5E65v2<13D>CI&J9RFtX9MNdv+SSIrdkBC+P%YePAm_IE3k&c zJ^`W;_&@L*Z^^*QBTf``$nc201H9je{0>(2F8V6F9o;#jY&DO&Y@cQujOe^_Hu!Ga zFz=pwIA@_qk0CW_4ZppeuL%fK%5RoJ7 z<~_D!MV66!ZJ%dck+ zf^Gy+cs}q0kvLk!JJgVW7yZnFo$NCWg*U~D8E~LK@U!AuaiAsUjZcwXLH+~!2AZbG zc|Bk|7Uw~Qreu)56jQ`rK7z20R2JL9Z!UYVmhcEx_Bfn|EU_JhDJIsbpa)`5a0t2q zjlk{;bOx(fygvX+39aB&EwT_U`hk;Zxg+*%umg@r0+IkOAw~j3$RFYG>s!8y)N zA&cpvA5Rfu@#nuivS8Z)@6UY1ZnpTo$-_}o4iteuKsFm0Jj7(M6p(CC4*Cm?Le2p? zgzSXSRcJBdiAQY5;uXA#tNM+aM{OZQp6z3{&$CP-SBoqPECC`U$R#vdSZ=H&k!KMW z1m6yTgd%!^C4m&X=*NSimr2MrBpuNhJToA`E{HrFtfYwDA&FS0VvPoE!4t_e&Qja4 z*kXwF4a-5a7UKz9_-rwFZNno}#9};YJBq;_SO?f{yz#&}NW?Z+C5UgnfPUZ;RuJfg zSQoM@GT6(a9t--9EC8e)mI4`bksE*xU=@P*#1J>b!w3mU)5iwSI?_1HqaF*n3HUaV zgNN6JKY}+z&J~#B9S_(iXdmu`AA`)`O#v7ElvK1*2T20{SnES;Mb2GlGJF`kEMfsz zJPu?*cxhK#6kIsOlM8h@3rU&!oZ(=ZT)Rh01b;eGure zcvB7h6)`h1AVNQd9N_I5=p<|%{D+8BB7VaP5OxAK32%)cUyoMgz`D^mE2ADu#DW-$^9Il(VVAnn86yhKgV%(o z5ONGEp~gi&GiEohOxdFY!5d2}N0H6xAoDp%L?as7Xpc=ah}9Qw}2YTKv7(`$`< z_Hf}m=N1GVum;GZ-L3Mz-bFvkXU83u1jOX9E%0%$k?>5=cx2!Z6~Bbw}s4n6W@0eo&oxcH~~HY+Kbpie76<*Q}FWeZX&KgCKatN z`cXwYI`deN0QgBnLx}$|7Q7AOGe`{L4af*&2=)Wfu83w(gR$O}V~G*}{cjx_601r= zIBk0?YD!}LBr@K}&Wp%Qye9#g!J~^^d1#=B%wU1BUJ>gr7yWFl9oHJk9)=VPX#@7w z8n@mSX2t07wuE=MaGN7HgJPs|9MqG>d5wa{|h>f;mVKsukXky27%9KseclfL#MeC@s;?KC~$FS{qWaU%Dx30?Q zJyq-6-TSsst$m6CH=IxTz!oxd6gCDsaESl0E`|IeM*>R)yTxxjiYyvTt<9?>=F2ih*j)_L%JZb*nbhf`++vtU>E(cubnKh-8FCx zwY#6&LWn%u&GPxfg?Ahg81&$%-fBIv#g;nEOJt%DXJT!EyoT^9*wscXD{_9=uM#{) z1`ym7ZzqfF)mGcFI6^XTw~LUzu!UJMdVFaMudeJN)+Oq0rjg^{W($Sa;8=NK9iqZf z^Y35TLSp`~wTA^o_5l1r{DSx1V9oLF5!M5U1w`Zn-XIDRJ7O+vyX{ytWDjGeU)w&z zZw83>62+TGF6|rJ=XhSohGJh5HbLwr;tfCX4lyJVGe8Un85D2#!&hLx1S>4;=6);3 zI$SiEWkZz-rnvg67vEKYhL8y4Bk>0h3d@X~t9ZW{Yg6Q1;p?#q!v3k)55cYrV!iKe z$2vjwP_Z^78Sl^WZ`HW8A8esTOM@S6A+a1Gq8HH%q#yANvT9h>A@hz%20jOwe#jJb z1Zx9C#{5l@9day|ql&+Sa+-vo{`M4e*8D!Eu+|gk4Ql*aiTKs-0{x9Xe!_S=8}IpX zEq>ug)wQ!|%$*gWl6WHtF`xMMJ+ke{FN<&E3ps+OAtpoi0X9awQviy(=x6c;eVBs= zwfKr9C7K!jWDAXRkbNjG)FOmdF8UV+cDS%LA3%0^BFRDMZw8Mh*>KT6oU((`ME2ml zIFVIqL6pOLy;xg>TLb)J3%j1|Auw!F4oC4e`yN|3tOr>6iuZ2CekwcyJcD?5TEzK? z@UhndFOPPtg%OuykHMw=8ueJPA&?D7lh|iPj3-v!Sc_vcBIdaSiSh%#mZO7srRaL%3zT8^2_Sr&Yi4B!40W+Lj{bLK2bWK{#RzJ+d{Rr zTWU_yT56B7h0L^pU4ZR?L?NbxMuXp=0`4Jw;0^Q|@&r0@6a~%1Z{OL`hR1?*3Cp-Ok{j1AM z=wF+*q+a3N*C;z-o}|cnrt_*NHJM(rIPYj*$UdeTH!W zR~e4LA&>r1R+0XGJuri0;%TFHDq*bBq?3-P=o@Jy=u)gBVRq4s#I%7%in&9l_}OUZ zc?o^z)I3+vO>j&|6J(Dm2o2@YSc>3%Mct7k0alb@xixenAt)IJW#G}6f{`eLn34NM z(hb-O<||X*kaJ|+1@&RaxSyyyRQh6IhuoFGPOWoJGm$&uIY$}^5ryby=nJ9=el}Wt zG3yF*(3mGY3Pa_2!q%HdcSc(~EAq$MY9*8KN&eq8RS4Iyy+Sn4b!@M!yaggq?kBKn zNzia5a5Ba)w2a44EsT|{bqVTz@9x`-$6y$RzQobEySJs)M2Jh~r7 z4}p1T@2SC7VdKoLpbes2z~dMQejT-9R@P7Oj1h;o42~h_ZvBLiiAZf7B%H1~waxPu zSaF-t*NR5mSF{;@RT}a&_Z9c(%Qb?^Rv07JFV6w2NDLmC;fppyQ!oxk+CnxFiDPVx zD4uRf)Mbqj6c6>w$l$TevwT~{+*p}&KY<5gX@-pTxZwYh5p%14G*q&MCE(d2Tfx>r zNUp&h(K8x5hAbJ=mU+-EXfKS|4p{{57l{YRjBr1J)#14A!FwZ2Tjl|FAGt0T9)xNL zvd0XSN3ycbv9INjV>(bHmDhZ%@x^Gyn!#!{g)9~KizHV^hHfJpZsvii?<`jbE^bEd zkLk_&-rYjqk>})ok@$k#7Wa#!@Az&w&z!x3D(7O1Q2(H|A6VTucq1X}#&qC09Y_fX zwKi7sJdmSbB4aVDCX2_nnuR3zArV2Stpu;zph?Hr8Cgw9z< zWuguJu|n!VPXQ~e0yw6#qGM=VI~ot`VC;k748PGe_`J|O>(NCUqG{xF;qPIayVJ8g zg5Z|*)1u9YK=>J<*VfO7HuV`X7J9Rdh~8cq{zkyHjuETuRmC#ER`v?=!8Xikk5y%_ zs_fO_Y_IT65ywLuUs>gau%FER4wb#K((S5f0GXt!XyD%x4P2r}kV2C}R|kglVui`N zrbf6<`=;`%T#U@?Br#ejj%WuZk&iLf!B#mgwDJlm@=nE(u@c67VfRF)idRBb+_Ty( zz|(j}JT2CpMjRO~`xP2nsFp6$_?5}Cg^mPlIXbO)1|Clv@m92REibFlX8JIm;lm>N zrm9?D#bW6rHP;7;F`^l^#8$hpuzYA2_ArucIlUi?k=asXeT^N1P+P6qo=El}_Dt-- z8!48z1i-0SZ7gWc{_oIPzKY3bbY8ehK9QrTxL*qOjQ>^n42^2b`)cS7M@QCirMmyg z7T2(F#=afuIQIB&#Fa*TTycvN`zYAsrXEtvF`tdxEBAtf+GsngmAG(baAcI zw!P~8MDc!x8utjR){?9o`;a5+{Y0yGTf#}DA-_&U#IXGwW8?b;X4)I?%^Gj#SVzPa z_s$qw>`@`#Ax3w4jeels!(iKB*izM&v%DU-oq1Sfj+JpO_+~9Lh9=qhbirA%-V(Wk z%Dj(b$P6&6T1Odg8w%-W=`gIB)0zOfA6jp(Y6Gv24~#Bit{k%(+Gxl;e!+vaqrCUP z(_CAzH+=1*a)AwaE-(nqAb{tLH?R;mT1Vx^+R09Xc`n$GXNc@E4wvr{fimUos})Dl zlV@i{1o+mK;nM^iDw^*F48wA<1Xm0Pw$G8}%6PN6{K_uc_u_zUbeRZay>oa=h~T!c zr4xPsy#N=$kERf+Gg)#4X&{auwGmHToId! z2sg6NHP+#(&o$_9_f$a)Ed@M&>!muqvzoqlUP|ury|<& zoB%D^W*e5!>fIppG;F3FFVt^BGB=$1<`}ZfhGmRo`3&h%t%Uk5NP(MS`Glv(Jk@XD zv4uDszC8x&AVz}?$BIDA(CS@Ryp4-_Mrt#@=OwI|Ro^4+`(vTL5A=kzhuU&ADln{- zsyC4}#PC#+<72Emj5P+2WcXt>2V#7y)2Ymvp*4n;h~BfB>1buyjF}kg=gPd>5}g+} zzR$|siR{Gyon2t{t7$fq+CWH$5!qCs^2r@wfVu58T(wA_-zwN2gg^DqiFHnF(FNC53QqU z@yjRC$lZ~W?fLgc(JXmb#qbVaRo)H19>bK0ekE*`cN5u{P_0n&2fWsYq;m$qju*!I z*2pRtYgl7n)>y4tMG4js0r04N)~zzXq$MoT;gNI0uiIDU+{CKmU`Ej5SEHiw7*!E; z?6JCG|BZM=T`BO2(kk!%--@7x4mc^7RS|UPo(yPf|69R_;W}^~J%?4Ob+pHL_%^1=c$zRZ;Ds$_rOTwNB=RE3%WU z{@P_^?T9w6jXr(=o`~dxhZUoTzQvzwLUq<+^aKcKjRPONluCjU+$_YfU ztThHNtar+c--)&7h4bGo5@Uw9hw2(Qk_5-T0zY^oRouqI!yrS5?;+vZ*zXeWpxM7= zS6)8&oz6qyXVl#}=BiWLV4mrr{vH+dkL{vCYh;lP4zTuHWq0tr(KA|pTjj-#6}w>* ztn=dPuW+&#hNkj7)U~eqYr+CM=l+uc{)1BGGvk;gTfvG%DX>O|M{ZpFx~a$wSG|ua zB-QGT9L}2?c5$0V`DR_eFus&alJlNZ@nR^|Mnw|b$`6#N6r?7_0T zmd%Xw+RPwe+@YEN+4QY5tdf$ zL?7uZRIHS$R;Xfy?nDj;@+R`zb{b;5<6y5L2R6$YZ9Hjs6IDZw^em@{SgLY3mCfPU zuh)cK2K?yOYa+f8z9sT{&4{$@b8ZU|ZQ(1vv5EV`OiK zo`zqn$oe}pCWwBA&G^0B{{}Ct-!xYDKRIS|X0H=c7On3weow-V7YFkD6TsM5vqZ{d zSb3f!`&+@F4Xk06->IzM3AIyd1jV-8>TO}rJ=$zWwBMeH_IGvENJ@A@bEYynZE?bn z9ITNlp2;v`&&pVUP^mC{QeT(b70z>;Ufp0u)jvX4;>E-^Q-E?|Ev#y4xL z${Dsf#@>Y3br89G!$PS3*sw!9KQ;eyI7O-Db-_v#tiDMDDud!8+GpCU8Rx^DHqpqs zlTl+dvd)sn^yd3;a*q0F)?-E-r^>mNRr_yBI$PZ%l{yDo)?H4PS0r+QE*}ox4*_*xqpDU(;8^VWYsib?Z8>H! zVjneTQKg>!1a!sl1?-vCIEeMbDz_GWgbF-)93cVb|9x%X5jnEA(wf+RZ7BMPwX(S% zdoOPMp9AJjWG`-53d1&9N2|uV%icB`tC&cfH|#Pry8Ih0Vg}~;Iy$>pnbmMC@v5pp zOnGa)I9y|#P_Jq&>rO_j=JBHa4jVL|W!_#=ReQ#=>Xa9UwPQ>wZjX+1FAnO!npb)8 zL*d2QkJ@QSl@~AXmpH;XkY1cUDEkt&BVuf`Pc$r+y%*;Uo*m~8S3ebt7dL)e`ADUX z*{h0GBP@{Np$?oEM=m%Bk|= z2g8fQ^Jv;iD(c~)o1@~iX{h72Z};!t&)29&AFF;}nfg@=)6WdAdYFD@ct?flx5YH> z(P8?T$E^{jpLyJxVfvZJtre!9dE8^d^fQlpY?yxLajBcm51etRyi%{x2EI+h1s&Y> z5z()km5saQ?Jopk$&8lVSpg@2?pN-UIPhpn(WMN=v&X!_XO@sXB^zu z<>D*U*2M=M4XG4T$)G~y8&R__UFfwVM%Kl!`q-^Cx&z?e_|U6H)X1YNwU28=jW$%J zlQ8LG^uwVJihImp8ZPMIw(n>fe2w}>RIK`iP614|>SdPX69JNrlc|JEH5s*lLUN(E z>XW1Urf(2JIu?!OG(|hhoZfy`qXQ`|;A|5@MJ3BAbZ<3bGx?f^>1QU)sbTtslDS!! zUYku!YfSxcG^cVom24^`QK$S!XZ^r%8lY)Fu+fN9THqRoUWwT?B1Yi(p#BCGRBx>e z!IzuR#GpD6VW{a~0-O7_q&D=M;nHAQgZ-W|!D}V^O+zO-7~a#SesOxMrnRPX0hL}< zh&)Z-rGAY@)YWN$kH&FJsRq^;cTHbI^T@iurZ+zH+7UGjC5+piiak-lTD=z@p@SiW5~UrrY#^e<)7gqB zsMiMsQJ^~Ii2`(VqF_W?4pdAZSmMuBy>T+{@Hgrz$$? z^@J_13EQOFsKdcb6?f6lt2=eI$F>{wdYdrlL1#;B5opslu?ZGJ>9|)ITY%T=30qvp zi0ydPuSwx7F+bk!F1;{>UvVqagAt! zdvPy1<6sDUM%@Ke-Xa_m={%FlU@9X=)Wrb$D2?ORQtJuwuIZa}qoFT!6oUtK^f$WE z4?L<%Q!lzWlV*!E&Gz-kl7#8d!MKI$XOd{t5O^WBMC?uy-LN+*Xbc43ktLP->4!D^ zRBE%QXA1Rtp9qjfXI204bYmA750>LDsQ>7y*AN|WU16?=(xEqju*Wl6^Oh)#6CT&x?E*}0}X>-cgfuJp-9;9z;YAZw479T~d563z1DczwA^ zWr2XVM0;EITrSUWaQd-Yo-dQa zU1F)@JJv8YZJBHci)TIA;YN85vVm9~T&=Ml-XS}Uk!L2$V0o_%kr(^`pSk@X0-DJ; zbjDZXvI+nEO#)W5w}{ypE&uDk>oEX;fxX!Eq*)J^GcVA#&LzuMq@Hlh<&x zyX7_9*w6C%Tsr?GuVG++mDez1Pf@{GDO9FY!2yN6Lch{9D8&qUjd|6pH&gqW<~Ul` z@p!mZX)%EAC&)g`%XoSJk35$AUQu2C^PvoQ!D&6qUSCgsdsS>=*a49`AO+GiRXNBp8QTceJ=_eONMYoIa zL^$dcQCsxXX~=_v!)fuoJw>I1Jre^-Mc$lCLr4=9ViyyTN-(sf@+fC{O1-{-H8+nW z{mM>?yCCQGJ-Tj1tzVZ^jvbd)h#evNm7U`$@r2i}BZ(t>{=7_A{oY^f)h%CC3No^C z94V|2M_BuHH=gau|8MZ4QXXhj<@hnKLi`BPkR!tbjV1zw^+5g#QO8*i>56y$Eh;__3pP%exF1(}toI6W*9l&#T186FAB7bYlA(>;zC#Yqb;P;aLS z73r`YSC~4QW5_rOnMcrSQU#X32+<3uVC9715R1NIDy(>MbgdrcjV6cUdKx&{T{7P7 zALuUe6piW-f_hXKAsm9q_EIUM0%L(7AV9@&j20459K1$uam>l>gY?Z4AKgj zNgO=8$>KKnc8$C>PLIn=et;chr2JV=thN_d_CaO_pDV{!*nEZnOcvsU4xY!sWUKai z(viScqF&|Lsz1og;B)2JiV%k((B&az>y(pUIRe; zProg^5!SS=Nnwrf{MxI-JFJEMx~1?854;i1%d0_b)wBv5VSbQNxq0K zN7(hmE*n}M%)qm1JwaxX1((lZBb112MV5mh(B&buY*p(C$JjdLU&Pj`^@L+=MP~C~ zqODcy37AV}2A?ajo``6kkydBe7;hmy=r{y{XVrQFQ7bcp&z1AKHxLUM0@%3_A9Nf7 zwpOhtoMS7tuT-{f)0t|qEA%nFfcl(ltS`?^O`WwGRI!)}MC@5AA5+2N?hPteQo+Fj zQ%~G#v*fwl>8-)b&xyNaK;LCw{;&W1W(z)u8qE_VsJL<=qGT$Px7{}u1N_eI?=g0EH+ zEG;Z2qekyRf&!MmMP)XX3Zs|xNlN|SPyRgho^$+}m-i{2;wZ{C!hfn(X<;mOEAMY%B zj}S^PPrk)|`ui4i3hVM?A=PZiL z2&I>)Y^1V@%3V|{jN<0+^QUascSYYh)9!ue;Xl8>-dPlv6H2d8xtq%SR6d|mVH8go z{Mdx1NA2l1@0sj5PfcA}Cn^-JY@nsFK`wV86}-`budY-Wy=C`y-L-H}Y336(f0w+lrX{3x>DsMBa_5w89aGX0F40<0x8#IQsolGDj!)>Gkkq+b7wVXh+BGF9v2%P% zN|z2D67?Ua$PT!Df%g7@w=~YDf5Wq|BtOoZ7Z>o+x3X}Z>khapzztqdmH*CYaPowj znIDN%hr>yJXweDVHX62)!lu9CY%gqwaB^Q&XmWMH0vyLsq3^5wtEaY|aI7TX4s#tP7#KV&D{qwNVEhs163HyomuoDgN(5s#7~6W{ zHhco`tn)ITpEh?(%CoC3`>Xx2vumopu$p}MCOSXec6?@|^Djud{(^c9Hf&iu$*S&X z>gV?q<%ucRq`STy`+IXe`a9`^-M)NJK)uA;P}ClKVPP&c#$|c(JU&lJj)x{djovY1 zJvp!`nuZ@U(=RMORFo~6L#p-@0rdmvz{$rg`t`Z=UVUa=`{Ns(|JZ~4mWFojgM0IV zc{jgn%GKTCn+*96Q#}d=V9$u-CnX zG(k)pM>*YFN|hDXy?3%kcb&PvIO*1pcDz-+O^3f!j-U7JsS;sBZsOYiVxZ`@9|$=I_yT*p!6Hw{%F}N zk1cLxRd+<|9ySY_ymo2Y)LkFt6A_(X!P}E8T-b`0Ss1{_lyuyovWVsN3;f{|V1o)g4Z{w~prIz3`S-ug_SzW8z~ox-K~S`rW5k)g4Z{x1Q!S_^FQ7$KL*J;yo!}?0D>#(|)3=h~k5G%==CM z)Q#?8i&B?lw`}``CdkNpI1s>v#o=56V~vC!Ljq%TB!Moa z#tIAc^q(7?zqb0#eHT=}eB075n=DWTy1GPo9-Wt-Sm)In3P&ftIQqiU< zjc1}Kr!3&npA;zvh&gKYsz@K|(2@F~Ex4A(+YXP#zx3MVHl2Fky7=UuW_Nx3M|7|g zSm6Kl_KSL6_0qD;8DB2-uPp1Rzb#>|1NM|vC;?1OpO7x82W~=ehH<=LhGixu2(vMx=wgiS3zBs-Mb!uyOS6gKa8m3)e47B;)MDw1;6BPbPC&iwV` zvs&D{z2Aa;!`5b&HY#NlfDvan@S4vRZQ8$j%}1>=S59bn^t11sQO&B(0ltGw7~1Mk zQL}1C9e(*A=OB=9d`CSF%;VxeQ)+a-V@b-aGj{cE`rff8S=EL2D#(NSDLW|hp!hEc z0Bm(cGXs7uXntOznk~hnzUX#M?E%-PXLfDW?x)MpDcsD^X7(tRms|YDi?DLL17p#_ z^9n1s0}0u%QBnsQqQY`}>6&Bq%=&tN=Cm1S|NQda+1D`&K!=m@^XdAJ4<6XDdw9d7 zCx*Q7+HYw$lv&js3a9cq;dX4T6?JYt?Ss@A%R218>)Jc^0{2K(&ie*y@_CfxeSi*YxaJaNL^jtm^)C zmIX-G`e5|uzs0vqUvNpo9aA>n@|RWJkz`pgzYfO^edmNMJY>#GQ%V_cn17m&7?tSaIB(|`NW`VeO=WvAMcnsvv=JuZ9OlZ1M=rT+_%r$vzMmaeb4(p zp1)-KUsiPvm^#Pb=Xi&3f7AW`Wsi;+o$}D;#>Jo9`@fGdr%1K}?U-NP2bXPjzfzKU zXVa{qS7ojL#i|Z37iE;_FJu%J6$U2ZS-B1bImS$qDI@&LGri5?LsblOGX!70?h(=y zj1uvN!RN0&^4JSWt@__^!N(m2Z}wsDJK_Y*#<21WwJkKQunV={B*r|yXXSl4tG1OA zFDt?|Rx11V*M*H!z0YnX8IIgXz%0$yekzam*5@@}HgF+qtt1TC``>0gxln`Piv>onACgrdArumPX6i!%rX*7 z(GL9AJ=LUEw>`(FE$;pEtS`6uAF--C=%!{hA-3wzuU@(K$5)f?oZ9~p_vzoPqN=DS z^y#+uh8KRis`u5cj%#x9w0|aHLgqRLOpW7V&IZD>GOw*-et9Fuw0Jl3vR;p#J!01W zK`8^R>JE9B1MfFr`_u{hoBq&y#r^)i-fxTAQ&mK!Hbw_J;`C4Bqav?$&y}l1qX+q>TGhprpvrH_@NvYVbc7^%E||AL|DsIY#U zzZo2Zeh;M0((w9CtEvj?_pPrHL^DqkZs(u#?6gijhNrA}v{8J$vUuG>+lf5z@3vt;zbWnB?epA* zzKdt39QUVH9gNOFeQg3S*Q9UWmrxe}Yrh+w^<_Q%^DF04m8}i~`P5P8_W3=pUfL6@ zmOS}=w{e@S>Vj4j+|s{Z6Y8)lnN^Oy;k@@4ofIN6t=t z{)9KYBhFm)id7v#mw_1rjeqoqp~NVrtuDu-viE4Dx}E2AxV8H+y{_*5;a~5}{!Cv+ zL?et-+h3kC=)G~h?sMIEN6Wn%@59v0b%)x&K-n%SSfAT_<SLQC>lG3j}RYfJ6 zr#$&vT*c2_mGNS; z%TJv<>$27uJsQpp3$(s({^&;imd*UO?ZkgZeu|ly>yD?oF}^Z?!GYg^#lJuY>QO1y zRP>~SgVn>^J@$&^9tTz?{C)J-Y4bk5ab@ByFU`MY#l3fiEcV$w-bM5?yGN_KL*X8m z5pKiJul->`;OSn|^LBi8U!P<31c#km1Anu7w5mJk?(tvwQsi_O1giisSnq*ikI8_qE3kSO6=%7ZrOy;V23m9w1_j zVmCJIT>*O+V+r<-vBnZx>>69_(HKpl{@>f%InKS=D|_7G@9)j$v$wZzW@p}e^PQQu zQ)#rkXdbr#Z-4wXLJ?7VpUaLHjFg9$|>wF8#?Q~z) zvGxk@-u-^pS0H}#hyw9x|Fg{_3d3(6X|z0S9xnllC;hjC_3zZib&LPn+3D|OdR4M0 z2EQq!(ek=^#KKn8>P?}&BfkwAb+TbwYaTBGhs}>4d*3tZ zY|x5EM=obAP_T0$^pT9;6ryB&ni-qN!^Sj^c{osm_=VdfnUbJq@fVYG9lg8aIx6vol zVduHX;Mim!>9n_z|N9r5?0X+`4qS5T>e_}C26Us*%+|UAKdjSLp3))I^~bWAmrwuX zK5F;XHxtXfSwy25*@_`Ax!!lU9U`67`JhXKYTbet%&$0I@-pQqCZvzdd#c~9*8b>6 z-=%++>NUEWqH8+5$EW4_h;9ZjRr`-)g@zV+?vj4bXsv!Ar=YFqM98)pS#ZXKpL*c8@=tKG};#%WInn zYlRMe!7s)a?jAV)cJX45V#@YHne>s5U)WGSJ}r+&bkl()enkZ&t>Wcgmo;0zLTYO; zNpPeST;~)p{?6^jjOaoU7A)V>#gy;DI~G>?y5Ze`!P)g-PoZKJdcus;=AY z=3NO4+nY(F<=uxJVsT;c)F&P1JNb^Q@iO^^&wDmk^~t(<38@WE$7i@L?l`%2zw>(w zpk#d7|7!DsvRwKQyuo+jpPnn0JiB8ZeeNNRX2uU!;D~jq$xxVg54Q~MGpu_nzX>aT zezB?4_*e{~E${ekOP+qvrU0{oO@pYZ%Yh}2mvCw19<-{|`R{zPPn}n98uFuVz%7Ss znpNwFz|Ms|*DP*br|7PrpJ=qaXc~3^Z_cOtXI*f=5e1x0@l)+Oib=k^hd; z;U``0_4mve7qZ^5!mUp&Oy#L;DFllkD z%Y+m5$N!kT>^KU*?nb{ikpIQ&=tO^L^{BeO2O0Fu^BwS4H}^bEn;?yQ*ZyUXDRQ#L*c^qTYh+K-vV zrY=^m?ebxUfWy3Uay~sEE&89}S-%_{Jbur<88n)a1xfWfo2bB#I)4H|RAjwBbWs>< z`*xM3ey=?yIcJ~!;lR8pG+JI;B3QLI%GmhL)VPKoTS`4i@)=Y59!jgLYDZc4g^fnb z;}2b0MWstTzA@s3FMwOGylMUlZVPn_%9h}|1$LwYA|vn% zW$!z@Fmydh1-Z}9iLesx!|T?m-)~Z7*R0D6d)fB7@rg#u3zGvUROc_^k(U2sKKIq- z=U*H-_?tG!wk}*E|L-ntDe!Jjc+kQ-$@v=%w@#wb3P3os&M(e}1cO>#J$a|;ewX<* z^WQF4ToM2zy#(sjxAe3N&uV&3PHoXLxVK{p3dEm6atMxOqTm8?{JIgW zhx$Vd2CsAIJEBuo-#O>J)=yab%JaoZd%^;;LyQ5`Y31&%E--OB-1bHO(%2z7-yRw* z7a)#m!lY?Voi&<2(z3btRgnlm8R_Uyj^bgne+n+U*mYXu2p0 zXxN3MaSR7Wz%E@%FxmQPT5Z85i%H`jibGog9Xqui?h)4PqpEwFeUStrebx?Kpl_97 zHGeB`$>A&vbl8}(t_tT-j=Pf>b@qZ^`0nt{@THyoCZDXe;qRd#^(yir@Z=Kc!QC}( zSdNU|Fe90Zmh6sGh9rah=PXuZI?H0>By1H4baHZC6B3x!27WpEN5#j;5<)^FWie7# zM;@|pX<~H3Xa7%gua)5>R_T&^X3yfpFdE7xg#%ZLptDonRJqZQdzQ52{%qpz1Pm>> zXOc_oBMI~w5q#=%fi-Tv9EB*2SYj-h@F?d3rE+(*K-Rtg;fNX%*5EuUaCe5glbaQL zSUEmv#9I=+@&s#rQP!thzsO|QwxNDoE505(_4h6#iD;NSS76vP)B~0=j7#e!{yT%M zneb_wYODr-J`K@oR!i*|BpBt@`dP^Nx2{=FU$(sby53A6>8ulx`EElWt#_FJ*nd+0 zzZ!T>eSDclL)5BoHN&%bIu1*(JmyKKh``m(Lmd0RjD1PdF@7ii5S1O^>)O|S{GoC; z`}{n;4UJ}Y9q$6h=EgeZ%P#uPeP1z`l4A@0cOMmD8Xb?usKFVm<4OmZDV3g_@*2C} zZRM>E&NFE`#*T{Jn+Ke4U^gy!%Uhed+uAR;rqRrkZlj&DTZp6Q{h%C5;ql8JOY7NZ6ySXpD&vY^p{He?w4KE+%?P=s=x z#E|kqB03NFquiU(T^ftKFv^F>6pE-Y*m^M}D#oXahjLHGR;}Q?!%ng|xgx<`9-API zij^sHjMjRLG=X8f*%J{l2%`$aMvc3UI~J63o&8dAtiscA=V&yu!vyWs zKdc6(#SVPtw|M1|+Qr(oL&I8U6)G;@4sbDx$hXW7S}IpNF=lew`y0=`U2@B9^_hRB zZM-q&vpM;_@2m>JKef{%c5uCiYzW?udVR_B(sxXk-KJw2A0g_hPu$ko}4{NPlz#9t@^*qKRYxLfEY^<7E=J706w`}Zk;1gY{ z@}`>F0FTzf7V&c~w3wP!n`I@+B5r!_7vBqWdwXuVnc)|_zp_-lrX`kDCNRw3rkX}G zdri9#7~}8ljmpK$VKWFHC=QwD?{7?_Ay)V!{3aecM3MNrLZbxwh{WF@9!28QY=K7K z$v$_sb3|U%ooWnV0Z{o{?PEY~f?>O(mIo}pj2*OPaiO6Fw#G4bD@!)&_b3!N!$ucg zC|?rpuu9if@VIkuT&Zh&GV@EenX<-qXtCF@J-35(x1_6++Z+DCXH3jB`~_R!W0U^rQGcm zpU{0G8F3IEnzeq~vunU~mmSA5-@9xZR2c){ey#jHYLTu>58_bz5~Bu}rMzjjd;P)K z->J>h;7;$s>-#krG`5+`f>IAY$kV z92Qo4*GeGiM5(wh&es?KX>i9)GqQgNW z{%UX<&FuJH28{8S&?CdTS~6swzt0Peh94&MZLIm7LN`J8m@>_&tCZ%iPE&oLr300} zjSdFXM>PIs6(|~?rryDW@v_{TXyO^M3^O1d{)QizHfAG#RW{P~k(IwP9A)Lx_#I^! zw^CkS_fxKQ(IV&QP%{4NdZgafP@$mlOYHda1>cpQs`4I8&+7V=^jn{jOH;%xRen2+ED?I?-1 zxd5Wtq0r(Z+s&wz8nDmp+S-{9Y>TK@nxy`~^@;qY=QNtx+o9#a7=OJ!>JPJk%?5m+ zIAor`;F3mD*->9e|Ho0_dwE#v8J#1;T(_PtK5p&zqfiCxN?!g#SETFGgE*A_g;9eO zM5&!Nly(qfExoE*aO#BWRb1CrKGJsa%E&AlO7TONzgm$-GdoIG0%QCoo~S=vxr5B} z*9FmNtU#ng_!HKdxTeR3TgOD^KbUO!5^W`wKH>?^m8yYngA-w=r-M!fzcc%bL7tbS z)8&5ON4jkMeeEc>@$wQhzUP#fu-COx=8Ig~fQ01xzjfRb+Y^W?Wkvk_>X}Mzd zAr(c|>eQ3g8W22HU8YyzVO`rXrC0pf$8G7V#;MijRGEY?{|48vjgOKhZaCvUrR~MA z(OFB_zIt7tM7hEmuYPeVth@hWms4{GhTkkkqhZyVGfxv9IP*w?;u^j1N!{FF6VQdwQ)@J;-Hhl25e(@=h zH0y{kS>}+qfxO}7G72YlIbdq zPL$;Z_+|hPL+%dho@&+6d+M1hTaRp7T?f6Y$+-Y=qf;5+GZy~Cwv&$~&Z zeX-!12?AU!SEEIbt^Wp&YJDm4jzf8N6jqnu;=nfsbqY?f<|`?t)lCdf9UOIPhufMl z-Oo3^Gq?a|0CA+%rL7O5(eeU(>w#JRqAKKHR~{h$&TmWBJUsKP`}8H7Y(KQWxQ|Br zV!?+4XD8ynzaZ_t(sNBn%|;iiwJD*G;Nrl?u6cpz1;Hn(=3DPv?3dJ1694_Tf9v;R zO0C~$;M)tS@)zLHXn6s?4Zs_J)sjAWfc)p1_f4_#_l5@Uc^-MMsjRrrb}$3 z@}Y_0MsJa*St)nQxCYOBwDEO9={Yg9Lbe~cFA(WJXY0_){`0p?-FqY-s{A9^oZHuY%!*@@+8z&r#jdEfld zJkkEIfT>xEPCH&5X-%W$1u&NYZ~W6YF++4^5c1ETluV<2slcR7{MJWqalj;#rv-r- zrwy1LfH8ynCZozaG;E&#lIP~*yN}GNl0Ak7%)<~d{{V0rEiZt%6nGN@Oyr+GQ<+Bl zQh`aEB@QC#ERf=WsdJ{aOFk_%rl`3WCv5k|*J*q`IP+o2R>v;Q+(ZNB5fGSv^e&B- z7r;yd-oyYC`R7kgrqRAsU}Dz~f3i4`Oa#m~7&SP-8Z#4GD8Z)OMNCufTxWP<$k>fR zONvkJ9(-?OQU^h*hAUS=_*@-)fWRblwkFhE~fgb``0Aj`R#o?r!KoWz~SfZ z)zl%BU&*cH7~J{W;L>P$0io5v8-Jf*WLuYtk$?U+xHOs#go8c*!lDwQZd`n+ghm4h7`zC5&`^1RU)3sKSWN9>E!nPFsIm^r0&X$fvO>N6KQAgENI7 zgug?OJWR&+?XxU>#v8jxB=;u@5^1kO`d7c5d}7AYMSj~y6gl*0VB9Dm=_PIGk@9;t zdB(YHdlvun&n>GxQCdC?Wsyb4%QU1d2p-Dy-Z}q(q+C&MI(dJCB%XA8la{&em`|$p z{d+?mrVM10#ia2M#R*mbFQNa<;5KCQ&&h-C_@w)1g^k?VbAR*7vqoA3ejkJUICzh{EeCP70{;ePTN^^E_sgLYWHdBq{aWBfPC7Q zRRPQc4&Pl`_3Y0cW!$!OIezS|*VIIPrCswNx?u6Yn!9B(g&P;iUONS)<*f%Ri@r)G>l~P6v=su$t=+$s1hF{dc!e&t2IPkEK`7Nag1k zH^KsnLMmF?bZr`~1iX`@FZNgqjD{VS%blHj3X>GL{Z24?bgDr+)Es{TJO+xaZ zjxT@{gpD8&a1I8#rplXy;qK&SrP`-fFo&_*Trh{HLqrDW@Rc7jPk%FEjqBbr**E%n zxU*9W2}9Q0pA&E&R&?cGyS!ce#!q^Byv4gWGifxOfbV7RBa4pftXk57QScZ3-U2C* zPIKxAqxq}TRQZaM?`Sk6uw2`AUQ^nY{O0Vf)yWu8TfU+{3Q=o#&BCke7Y&-)EY`bJ z<@o9}8diTso(&d+=?OT4WF~P4$%gdY!)!2@oDrDK)P~u!5Wm5g{kiI!*PW}(cA4Cz zdH?_J1ngJWAHnQNhyI*wIC|Qzfn{rlaWzB@P zz1j|ek8&HkI5)d|?FnA9pDYO+(={!7hN~UUn$U?|6vkcem@#e3zjD`Q-;{7T7hif8kaS`fg;^e3)vHXG zMuAIGCYU#}E%R_#^ZtBuOkT)ZW?6$Dl;m2yZ87Ux-t*fyZSbXOlhRXZw6C{ZJ9DZsqFi^- zwzq_+ZdljLvj;bt?-{V?>Vo1kT792Q1MV-t_zCI7;TwDQ_gHtcV$5&LMqH)QibFVe zIK4rp2$aRgOCw~gz*N}Y%B_z8(rPY%wA!xs_d7Eq(<3e8;?uTk?*EI)FNEu8T=K?w zfPE|ZEQ!QeZ6pwLp6eHs=P@U?oMuc zbjGA>gL6rMh`|Qd{g34e3C#&roM1$oyh&cXQeXE#V6MXko8(DSs_~Er_G=wGF-{KpiwTczHKNu&t>Za-= z#L2gH)}2ZDtz}`iaii)ztY6|mLky*>Dn%hC{d%`<_Sv%DOWIVcdg)l%NE+?yg=H|R z5u9#V3ifN4gx3Wzi}kF*n0@@L?2HBJ+g#Uqw%E|Le-_m;I1j0oXfe}nfpZa;iO!e* z{bk1W@ibbV_Yop?|NSp*LAMPJJ@=G8F7Ns60i4aK6T2u(Z_mlrXCJM1o!Y&kb**+G z6=<}t7rVL8N2s-*<+d2?jxChU~OUYNgXT_YV zeeB9l{b)4AZl3lL;@omE*hOLX28Nyq8ky}jHgNZ|waaJKqtU)z?A`_qp);c1)r#E% z5Vyhgu4B;gJ<*FMxy)LWJ+5|@CMRjw#V(>_OD4BUvcBRzs$&uB31zmoqtVb-V6kg% zTLCdE##TTfUcDUJDz%Tb$J}LqdNx{pdM}Ok^i z9u3@kIsN6%CXNX-%wB|4n;$>+zGu?epcRddT+UjccuS)dfpE~TZEnP-L9${Hiy{oU zlCMjL)RJC5K0X-z_Q|RrXtb{vu}?rl=uCy!vtlfS*T)aJmA@@<&4}D>{cM`uT^eF9 z0n;b_w}kcY)W&s-|JvEB+E#QJT^fZ6)S^5o!l6Sk-u2~&(EIyW<|?j%~l zz6^QFABmyS@S{5KMq+S?iGl%`jnT|tE~v|-_+{bns@h} zKcvxefQ$18-J<28gIIPL^4>5)wxb z8|?C3z{GM57R_k*U_XuazYg5_s0?uHl{d}b4IGIKz?UUK(9+1mdDDU)4K8BFYFzq8 zI6tiPoBv9y)z?3~c-KT7@MH}-7aGK#{dVaG~vVnSSELO+;#f-y@z;ouVNcczGv z4Uxq&kaI942DU3^7DDQQX8F%lzaaOh2hh_ zl8Q~eP<8}01aT^?4tI1cNO4_sCOn{SeUJ)H<*^zbs2*6=P(8K_d2AN)*e~RrjDj6O^MbKY(f(T=Y1>K4Tm|)J1QP0i-$tM z1UXD1x50B68L-Y{nI!nGVmBg=mC3@ue}F7hiY7Uj;$31DGHEn3I5A2w2n=^=0uvSf zS+q6~E$(3q7Cx|pUuf_;;VuDQM$TZ?Iwq75uWsebhsYF)s4#Yxe0XAPDDLeMkI1n= zr;A6osIVO9*ks&_pBKLl!Pgj8=ZgsaHH~Rq)xAX7U!cVf=Oq z6H|X1Yg@IcdWO7;wJl{;r6EyZ>T2^>4SCfTUhO0cl`F#B5)%?&0~$kKHneqzv_8{X z&inecy!`hKXyf>=ifH5bQRv;q@n1B!jl*L^sEt0xO!ZhV{FHQ!b5=*uE%LbGN%tG~7MU+MSVpER-Q`fU5z@X}{8de2;!@X^2 z#rG}u9x3QzY@o)u5Qjr9#L*%b;&94^I9fv-78^(}8>n3_sM{?U;_%LeIQ()Uj=)@q z!vo^LN?osSAPk6|2k2_R<i#(Y%xlb>eourf%{L!z_4Ot9o9^2RT>g1 zjh4B|hpIMxL2td-y2pmZpB#QwZ1n-6NVeE7Yw>LTj{FE|tFJ+9p$)~lV(<%J&f=N6 zkI@J*)ernc>dMG0e4vf30pi&*G7BGSV=L4kw)D!vW0)Q|jly*ui0xP}iswY|Q11a1 zjOB*5SSINk%S~;uOx8D+TiRloqHip>wZ$?`-&pQwiv@>~)U~TumGlR^Bv{OPgP;Dz ztPDnlF6TokBvb*z2cqiACm54Z`Imy92^bT^<0D8<5Y^AYQ(fTu7WRPXWr{Kq|O zjAOch2Z?nK7s!sglXiO$_biF#{#4@b4DsOZAf6B$A|Z(WaQLi6|9sszVHT6L;ZiHc z-M3kDjIf;7f`?wZjFmo0lg6vLlXEjW$L0<#9a}oIbZXw*(Y2YEo4vb}or8x%b9+fY zh`F0A8aA4MZaq2U8l`|v-Ws+xwl@B<bX}wl-e&3~`<15fQNS zMM5NW4MxK5ZMHVOh!?|zz`hf3rWwTO)uAi&JIj)6ZTir>Ylg#-Y3wEyF|wM>5H?_M zTEGYe?oz?X2gJ)1(51))ZA}XrBaKaj-po+glS3he36`-5P!rhNK1%s0kqqSi=wF%PBmmZ7_l;Vw zD-jj__%&He_67K1)5i~xE`i?c7?Y~wlk1me4^Wg~)aV0a9yp=X99SY8;{D6Rk_~W0 z6f6P?XmjbG!xXbhl}#!xP*3K_m;WyogWRAjuviRi!;@oBSS$t^W3d>p(#dh6zCSD$ zgYZ{Pf6%SPVqgKL(?H9CA^!V+XE9)BhzTqPPtG3Q$Ei=%7yTLtIOhl*>1cQ5zSN1) zEU62gBoHAM;{y4yuTp+++8;X7z5bbX(?KDRP{0;$Zc;@*2YY9BZ$AvY4S&E9ds%W^ z`79aE-8BLb>nxwp_rhfEO=~Uy5g?s=#@=|U!%iG@L@i0Y2-q=H5{Sg=#s%uDd{^_g zAQwO*CxRgCS}weXlnTyc4RWC*qwBoQ;zBUIkU4v)2{H&DWuF8YBw98DgCxg| zPHHiy1O7)^XQG>~+#iyn-jHr)*W8ql#=dBD7D%HOOa*D8WutMXn?V9Fqmwcvq+6I0 z(o-=f!C4@UTF{LcakVtjve7ux&ES^<=?bV(bYu4ZG3I*V1YHk zG~7)EYog_^3f83iM1ms>d?Un8xUQbaWr%naq`3vuW&kzOvIW$nt~RM%-NFKDGk}_C z*#c?;YLi;kEiIrn1E`6XEubc#HmObRXaThuKuxr40W|@&mfmXPKNOuTpf&@jiIy#( zCZKL9{Gn((s2f;7Z3a*iEn7fMK<#KsP&c%I+6Nyir3SWs;SR1+cP9d%~=e*~1^qS(m-DkHDo^uZHB>FNqDNb_LP3I{qUAUkm#h%Cad3@*3n7LlM2&)L zC|qOV8Uxp8xF*2$JzU9fVFJV8a)JvTNeB{l(C}*9v&Pxr*5HxG zd6F3K7g7>bh{J=dNFYMYtv<|rC!MQvT@JV|Ust(7=+Ys6NiU8N(E^cF{M za6a+eU3FHP`f+oDNu#a}PI_oozax^{5+jqwEY72(5n1ArPB&I+1hm0Pzl=M6SdwCQ z*topLa%6DQL!E4oNSIPa<~0^y5lLGgk+{4yQfjO<3{JYQV;d-3#^yCvXa*#0-{ts8fAVc$$$4 z$F|Vmq6+7O$U6V(?c=$9`|;2f z={wu*<|4q#0-Z)Gc*tiJ)=MH`xO>j6vVf13q$=m5H)l?tx?gYgex=XsSM#0Q{<9^J zaE9@qVy|%#YH)}e#E%$sB%i2;CI;*P7eZztTp@5_b2k(Yf;ldL&Z^DJA zgm#4M8C*ZWrOuTgM-dQEFOD!ETHd$d!owR81h?Uu2G camel_case typedef common_utils::Utils Utils; +bool UAirBlueprintLib::log_messages_hidden = false; + void UAirBlueprintLib::LogMessageString(const std::string &prefix, const std::string &suffix, LogDebugLevel level, float persist_sec) { LogMessage(FString(prefix.c_str()), FString(suffix.c_str()), level, persist_sec); @@ -23,8 +25,12 @@ void UAirBlueprintLib::LogMessageString(const std::string &prefix, const std::st void UAirBlueprintLib::LogMessage(const FString &prefix, const FString &suffix, LogDebugLevel level, float persist_sec) { + if (log_messages_hidden) + return; + static TMap loggingKeys; static int counter = 1; + int key = loggingKeys.FindOrAdd(prefix); if (key == 0) { key = counter++; diff --git a/Unreal/Plugins/AirSim/Source/AirBlueprintLib.h b/Unreal/Plugins/AirSim/Source/AirBlueprintLib.h index 68c0a5c245..92a20ae2e1 100644 --- a/Unreal/Plugins/AirSim/Source/AirBlueprintLib.h +++ b/Unreal/Plugins/AirSim/Source/AirBlueprintLib.h @@ -60,5 +60,17 @@ class UAirBlueprintLib : public UBlueprintFunctionLibrary typename FInputAxisHandlerSignature::TUObjectMethodDelegate::FMethodPtr func); static void EnableInput(AActor* actor); + + static bool getLogMessagesHidden() + { + return log_messages_hidden; + } + static void setLogMessagesHidden(bool is_hidden) + { + log_messages_hidden = is_hidden; + } + +private: + static bool log_messages_hidden; }; diff --git a/Unreal/Plugins/AirSim/Source/AirSimGameMode.cpp b/Unreal/Plugins/AirSim/Source/AirSimGameMode.cpp index e755e74df5..09a3a2b21c 100644 --- a/Unreal/Plugins/AirSim/Source/AirSimGameMode.cpp +++ b/Unreal/Plugins/AirSim/Source/AirSimGameMode.cpp @@ -64,6 +64,8 @@ void AAirSimGameMode::initializeSettings() Settings& settings = Settings::loadJSonFile("settings.json"); auto settings_filename = Settings::singleton().getFileName(); if (settings.isLoadSuccess()) { + UAirBlueprintLib::setLogMessagesHidden(! settings.getBool("LogMessagesVisible", true)); + std::string msg = "Loaded settings from " + settings_filename; UAirBlueprintLib::LogMessage(FString(msg.c_str()), TEXT(""), LogDebugLevel::Informational); } diff --git a/Unreal/Plugins/AirSim/Source/CameraDirector.cpp b/Unreal/Plugins/AirSim/Source/CameraDirector.cpp index 378cca0162..f3dfc1341c 100644 --- a/Unreal/Plugins/AirSim/Source/CameraDirector.cpp +++ b/Unreal/Plugins/AirSim/Source/CameraDirector.cpp @@ -33,7 +33,7 @@ ECameraDirectorMode ACameraDirector::getMode() return mode_; } -void ACameraDirector::initializeForBeginPlay() +void ACameraDirector::initializeForBeginPlay(ECameraDirectorMode view_mode) { setupInputBindings(); @@ -42,10 +42,14 @@ void ACameraDirector::initializeForBeginPlay() initial_ground_obs_offset_ = camera_start_location_ - TargetPawn->GetActorLocation(); //set initial view mode - setMode(ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FLY_WITH_ME); - this->getCamera()->setToPIPView(); - ExternalCamera->setToMainView(); - ext_obs_fixed_z_ = false; + switch (view_mode) { + case ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FLY_WITH_ME: inputEventFlyWithView(); break; + case ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FPV: inputEventFpvView(); break; + case ECameraDirectorMode::CAMERA_DIRECTOR_MODE_GROUND_OBSERVER: inputEventGroundView(); break; + case ECameraDirectorMode::CAMERA_DIRECTOR_MODE_MANUAL: inputEventManualView(); break; + default: + throw std::out_of_range("Unknown view mode specified in CameraDirector::initializeForBeginPlay"); + } } void ACameraDirector::setMode(ECameraDirectorMode mode) @@ -120,23 +124,23 @@ void ACameraDirector::inputEventFlyWithView() void ACameraDirector::inputManualLeft(float val) { if (!FMath::IsNearlyEqual(val, 0.f)) { - camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(0,-val*10,0)); + camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(0,-val*10,0)); } } void ACameraDirector::inputManualRight(float val) { if (!FMath::IsNearlyEqual(val, 0.f)) - camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(0, val * 10, 0)); + camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(0, val * 10, 0)); } void ACameraDirector::inputManualForward(float val) { if (!FMath::IsNearlyEqual(val, 0.f)) - camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(val * 10, 0, 0)); + camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(val * 10, 0, 0)); } void ACameraDirector::inputManualBackward(float val) { if (!FMath::IsNearlyEqual(val, 0.f)) - camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(-val * 10, 0, 0)); + camera_location_manual_ += camera_rotation_manual_.RotateVector(FVector(-val * 10, 0, 0)); } void ACameraDirector::inputManualMoveUp(float val) { diff --git a/Unreal/Plugins/AirSim/Source/CameraDirector.h b/Unreal/Plugins/AirSim/Source/CameraDirector.h index f5bf6e02a7..432e908b12 100644 --- a/Unreal/Plugins/AirSim/Source/CameraDirector.h +++ b/Unreal/Plugins/AirSim/Source/CameraDirector.h @@ -54,7 +54,7 @@ class AIRSIM_API ACameraDirector : public AActor UFUNCTION(BlueprintCallable, Category = "Modes") void setMode(ECameraDirectorMode mode); - void initializeForBeginPlay(); + void initializeForBeginPlay(ECameraDirectorMode view_mode = ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FLY_WITH_ME); private: void setupInputBindings(); diff --git a/Unreal/Plugins/AirSim/Source/SimHUD/SimHUD.cpp b/Unreal/Plugins/AirSim/Source/SimHUD/SimHUD.cpp index 447225d289..0ecc3a3ed3 100644 --- a/Unreal/Plugins/AirSim/Source/SimHUD/SimHUD.cpp +++ b/Unreal/Plugins/AirSim/Source/SimHUD/SimHUD.cpp @@ -41,6 +41,7 @@ void ASimHUD::BeginPlay() widget_->setReportVisible(simmode_->EnableReport); widget_->refreshPIPVisibility(simmode_->CameraDirector->getCamera()); widget_->setOnToggleRecordingHandler(std::bind(&ASimHUD::toggleRecordHandler, this)); + widget_->setRecordButtonVisibility(simmode_->isRecordUIVisible()); } void ASimHUD::Tick( float DeltaSeconds ) diff --git a/Unreal/Plugins/AirSim/Source/SimHUD/SimHUDWidget.h b/Unreal/Plugins/AirSim/Source/SimHUD/SimHUDWidget.h index 23e9c31ff1..615f3bc5c3 100644 --- a/Unreal/Plugins/AirSim/Source/SimHUD/SimHUDWidget.h +++ b/Unreal/Plugins/AirSim/Source/SimHUD/SimHUDWidget.h @@ -46,7 +46,10 @@ class AIRSIM_API USimHUDWidget : public UUserWidget bool setPIPSegVisibility(bool is_viisble); UFUNCTION(BlueprintImplementableEvent, Category = "C++ Interface") bool getPIPSegVisibility(); - + UFUNCTION(BlueprintImplementableEvent, Category = "C++ Interface") + bool setRecordButtonVisibility(bool is_visible); + UFUNCTION(BlueprintImplementableEvent, Category = "C++ Interface") + bool getRecordButtonVisibility(); protected: UFUNCTION(BlueprintImplementableEvent, Category = "C++ Interface") bool setReportContainerVisibility(bool is_visible); diff --git a/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.cpp b/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.cpp index b7cdb4c8be..ea6a05d3ed 100644 --- a/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.cpp +++ b/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.cpp @@ -34,6 +34,17 @@ void ASimModeBase::BeginPlay() Settings& settings = Settings::singleton(); enable_rpc = settings.getBool("RpcEnabled", true); api_server_address = settings.getString("LocalHostIp", "127.0.0.1"); + is_record_ui_visible = settings.getBool("RecordUIVisible", true); + + std::string view_mode_string = settings.getString("ViewMode", "FlyWithMe"); + if (view_mode_string == "FlyWithMe") + initial_view_mode = ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FLY_WITH_ME; + else if (view_mode_string == "Fpv") + initial_view_mode = ECameraDirectorMode::CAMERA_DIRECTOR_MODE_FPV; + else if (view_mode_string == "Manual") + initial_view_mode = ECameraDirectorMode::CAMERA_DIRECTOR_MODE_MANUAL; + else if (view_mode_string == "GroundObserver") + initial_view_mode = ECameraDirectorMode::CAMERA_DIRECTOR_MODE_GROUND_OBSERVER; //do not save this default in json as this will change in near future fpv_vehicle_name = settings.getString("FpvVehicleName", "Pixhawk"); @@ -70,6 +81,16 @@ bool ASimModeBase::isRecording() return is_recording; } +bool ASimModeBase::isRecordUIVisible() +{ + return is_record_ui_visible; +} + +ECameraDirectorMode ASimModeBase::getInitialViewMode() +{ + return initial_view_mode; +} + void ASimModeBase::startRecording() { if (record_file.is_open()) { diff --git a/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.h b/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.h index 3f36ad173a..739d28b275 100644 --- a/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.h +++ b/Unreal/Plugins/AirSim/Source/SimMode/SimModeBase.h @@ -32,6 +32,9 @@ class AIRSIM_API ASimModeBase : public AActor virtual void startRecording(); virtual void stopRecording(); virtual bool isRecording(); + virtual bool isRecordUIVisible(); + virtual ECameraDirectorMode getInitialViewMode(); + FString getRecordingPath(); std::ofstream record_file; @@ -39,6 +42,8 @@ class AIRSIM_API ASimModeBase : public AActor protected: virtual void setupInputBindings(); bool is_recording; + bool is_record_ui_visible; + ECameraDirectorMode initial_view_mode; int record_tick_count; bool enable_rpc; std::string api_server_address; diff --git a/Unreal/Plugins/AirSim/Source/SimMode/SimModeWorldMultiRotor.cpp b/Unreal/Plugins/AirSim/Source/SimMode/SimModeWorldMultiRotor.cpp index 8399eff17b..b9c557ab75 100644 --- a/Unreal/Plugins/AirSim/Source/SimMode/SimModeWorldMultiRotor.cpp +++ b/Unreal/Plugins/AirSim/Source/SimMode/SimModeWorldMultiRotor.cpp @@ -78,7 +78,7 @@ void ASimModeWorldMultiRotor::setupVehiclesAndCamera() } CameraDirector->TargetPawn->initializeForBeginPlay(); - CameraDirector->initializeForBeginPlay(); + CameraDirector->initializeForBeginPlay(getInitialViewMode()); } void ASimModeWorldMultiRotor::Tick(float DeltaSeconds)