From c37bd480c07bcd3743656154d759b68b4070d8ef Mon Sep 17 00:00:00 2001
From: github-actions Specify data collection range
In control_data_collection_tool
, all courses collect velocity and acceleration data in a similar manner.
By appropriately adjusting the target_velocity
provided to the pure pursuit algorithm, speed and acceleration data are efficiently collected. Data collection consists of four phases: selection of target speed and acceleration, acceleration phase, constant speed phase, the deceleration phase. A general method for collecting speed and acceleration data is described below, though it does not strictly adhere to the outlined steps.
Selection of target speed and acceleration
+In the speed-acceleration heatmap, the speed and acceleration with fewer data points are set as the target speed and acceleration, which are then defined here as target_velocity_on_section
and target_acceleration_on_section
.
Acceleration phase
+ The vehicle accelerates by setting target_velocity
as follows until its speed exceeds target_velocity_on_section
.
# sine_curve is derived from appropriate amplitude and period, defined separately
+ target_velocity = current_velocity + abs(target_acceleration_on_section) / acc_kp + sine_curve
+
current_velocity
is a current velocity of vehicle and acc_kp
accel command proportional gain in pure pursuit algorithm. sine_curve
is a sine wave added to partially mitigate situations where the vehicle fails to achieve the target acceleration.
Constant speed phase
+ When the vehicle reaches target_velocity_on_section
, target_velocity
is defined as follows to allow the vehicle to run around the target speed for a certain period of time.
# sine_curve is derived from appropriate amplitude and period, defined separately
+ target_velocity = target_velocity_on_section + sine_curve + sine_curve
+
Deceleration phase
+ In the deceleration phase, similar to the acceleration phase, target_velocity
is defined as follows to ensure the vehicle decelerates.
# sine_curve is derived from appropriate amplitude and period, defined separately
+ target_velocity = current_velocity - abs(target_acceleration_on_section) / acc_kp + sine_curve
+
After decelerating to a sufficiently low speed, return to step i.
+reversal_loop_circle
#In the reversal_loop_circle
course, sections are sequentially added to the course while collecting various data on speed, acceleration, and steering angle.
reversal_loop_circle
#The reversal_loop_circle
aims to generate a trajectory with the largest possible radius of curvature within a radius trajectory_radius
, allowing data collection in a confined area without significantly reducing speed.
The reversal_loop_circle
is primarily generated by connecting the following three components, common tangent
, circumscribing_circle
and boundary
as shown in the following picture.
All the components listed below are available in both clockwise and counterclockwise versions. The rationale for having two versions is to ensure data collection for both right-hand drive and left-hand drive configurations.
+common tangent
The common tangent
is generated by drawing a common tangent to two inscribed circles. In this section, a sine curve is added in the normal direction to generate a trajectory for collecting data with larger steering angles.
+The amplitude of the sine curve is determined based on the desired steering angle data.
circumscribing_circle
The circumscribing_circle
part is created by drawing the common circumscribed circle of the circles.
+This section is generated to achieve nearly straight movement within the outer circle while minimizing the increase in curvature.
boundary
The boundary
part is used to connect the common tangent
and the circumscribing_circle
sections.
reversal_loop_circle
#Speed and steering angle data are gathered in the common tangent
section of the trajectory. The common tangent section is particularly effective for collecting steering angle data because a trajectory with minimal data is intentionally created by adding a sine wave of suitable amplitude to the curvature.
The following two steps are taken to obtain steering angle data.
+Starting from the ego vehicle's current position, the system examines a segment of the trajectory ahead, covering a distance defined by looking_ahead_distance, to identify the point of maximum curvature.
+This maximum curvature determines the steering angle the vehicle will use. The vehicle then adjusts its speed toward the speed associated with the sparsest steering angle data.
+ +There are parameters that are common to all trajectories and parameters that are specific to each trajectory.
max_lateral_accel
double
ABS_STEER_RATE_MIN
look_ahead_distance
double
|tcK&Ck1&f`R&7R4vH0)r@AqqXQqfTS zyRDSEsnJ50YF8n`RJ6Qw4R!q(@}&Fn;>^qDOU6Ene?8}ib5J77hiF}gJ*J1$L%HQe zm~Pq^&G`YpIWGSFk?lF>B;mJ1PsVnYZrS>+eun`3nhM;-xw*MpJtu4BkjC(OpN4F@ zK1`4NszxGEY;*793JeOO>;Lwc9jpD_CPj_+A=0dr8OLe>Ygd!Xi!Y64XNs3=3uoG@ zmlo&e5M>5S-8w*AG~|AV{?9u{@<$asy}WF{JWz?7$PlFut2(sHmwKW#>%?QXh4J#{ zT*qDYipz33a^ts}!%_oLl|KFW5ksS`rJQ_jQu{Dep=x&g_rS0GoTKzA#<56mS&x!^ zmg0cJ8sA(r#CoeKDfv3vvWHD@4+L)Fpy=kQ=-z|2EUFL&?RGtvJrG@eT*>qT?6^(1L0Hf}6ItRiDG;(T{j zgzd6YWev-=VK7P!+$wpABiZ}kUP?}@6C*0w1MkIudonh;hR4TO-CD;=0>n|8leADD z7=_0=ZZgMn9aHvBV^IpzNKZ*gsR@{N$^Yf nTWjOHLh5h0u1gX7^Yq9d?+0AM?IvFos+#MTpIDF(t^V`eYXIh<^k0nT2 z0_s?)ZkF*k=MX&eHke!9qoecq!QK}*vL8xIZCl |4QEn z52$S(gZtBuCHR$g?vRj(MCD{ cQzZ7p%%RIm*Vb z*y3pJl7H{(R|AwLjq2pi4*xfgIb@u6Cwoq;+u(omj9uPs`D@dU7Sz+s-kcuz@^B5s zxwqy%ik2sK{IsHO>J1WuD);37#9Vb^j~h%jYiu)aGopL>@}=C;>~FyO5~LJ%dvq49 z&h_$_+Kae+0kOoKd$laiovU5Hr)v+gjdAcVJ3e$6DBumUOlvrk{T;_H3x-%sJQ@3z z`JO57Dii8S*~gEazki>zvkBAG)zkYBBwSRHU9X^tCJ^l}5Th`DA&%= -m7P<<}X7$gVF*}zzD9t8+E1x x5!Ru~bJVqv4&~vrA)x)2FXr zzYa>o#+5m96Tld$g3{6){J*U1(8Mha+xs*|J5ddN(NR_6$I@Q^BtD+<-|4>hw(6FM zNYD7y#YqfTchn~TlPU`0O}TQqrnK~CMTOdml`D^F?RV rHXaTO>F1(y?yVOdf{uHdr|fR{p!`5czB*q z@STV^=Xia&WsAK%(n#<2({C?T0#nq4@am nU3Wm=PDJuC2X+GX3Gow5RBeJug+< zjCSl@IU(O=Bi-*cHrDVcIXCT|tg9GOEK24bEFYKx&QQ4tn)4xBmb@!S`fN3JInIDN zU?((2`41jj3T0-s*;n}aT(!B4L1S{tp!IbhLF}ZmipqeoqN65KISC5S*-n4T6uOd` zcAsP%h=_;)1G|3*G*VZvv9UQ$bXP75`)oa9{`>5zpCRUNuDz6>zwqpsZ^}s>vvo9J z^BWhwWo0e|v@oENSe$9^dz#bs0eR @2jn?09^K_JNVtdQm%cT}C9cmB!ph&wiAK$q-&kb*8*woxN z&z5niyMN}l?Z$KTB__kq-6Y-D%6ZYP-7v)`Cw96|CSW1phpEp!WGS> KP=bT$h~&wlEXoE zy 2mU^!LoTH5*>hCCh{}$dxSnaN*ezB*?TxIgr8npq36g1ksVqQWD;i)-2W-{d zeO^QR^7Y7`1*eWx-%2&B+wU9j2MiAi`q0tQ89X;R+oRJ>eFJt0$?3~0OHDm}eUeL2 zvczSh)zVT{@axqvFfyvEtMC0)FZF7@OTBLVH;TPZlOt!=iRUVRU6?5ww`@6j<#pW* zYn}mC$GSHD0KtUFS*w}3YtWS-4!b6%GI!~P;FV>r{xKN%7BFow+jB}zT#_<2xz05H zn{P>UsQLKRo`VPDU%U`G`<~w^4#{E`33jerap}4_$L7tOW4YAJdImU^!koe*B90(4 zQdHarjHKibKl&}==63jDIYqX6q&&OwCi>cr!NH4mW?=%KM3|xlPaOutn+l4mNJdHD zy9TKCytVbpyD=`YH78v4#cTZ5^AwzxXJ+|v uVKmQEI7S;E4?q4Oj8 zp?yi$LUMDZvwzcaH=}VhP7e+aZkVu^uJ|eA|KZKU%&k_tvMC!>TMbVy`TCA+EBpTF z@dTgVA;98tKy=&oB6 OigTN}1lR*SgEhtjKQ-Hv@EawET WKO^47qX#)=VP^F||2va6DE&TD^DB~^qlJ^ok50(%5 zf2N`7WBitNqO`ugzWX)R={}l^j}2*>Xa~)K5J92T52;bvK)`o1Bb@KX$1_ZCdX=-x z+%j%YW4iHhAZeAWdkpQuo0mp{2w|IUoz(Ek%F0e00_*wd;jhn4ldleb$5Nbg5e#Fv zzk+{4_Q}b80Ja=)vK5O1Dihh-o3=CXiM`KQ+^+n?W~~xBI-K!68Ej#iVQBCWg3?ai zYcKzN-3hje4~Tonh-#QvN4Hrf6iuD>J?UF7=T8LJ&V)suKE0&fcOz{?&3Y~&jlDeV(+bAwhSj~sK0ldWmRjx^>M}32RrK-P9A>L zHX%s?i}>bikQ&?P7v@Kb7N^fFEH0iZa1%vaDlQvd!IrVtEUX>)7mOg@hGX@@6y^Ld zrNrE~{KSmX@R_yD%zWTjTVGK1o{_)qt-Du^&J~>d0ojlWwlu85b~NDNL+I|#F7Ey# zb23t4W5cQm=2BCIUAtc$1a{byjsZxX9Kg`r2^W{Q*$Z543-_}ZER}yT>`%HLFU7KP z+YvXn+&EE{)D>tLx!t>2(0lI#!(_~|jczj?vLBMxW=f{N_indQ*4g=z^oVb^@?9(C z rL9W0M#6!MTh4t7-YFt-_s({yhS#?G*}DQF_pvECUgPEE-Ob1M z+d;ZQ=a=fzyKA&{eubG!yIZHWdM_PvyLOFr`}UxWjErVSJO!FZ5<94uI+#2F`e)b8 zM+vCtmvnvS+^{AyGZT+Flpz&SQ1E&o?fe ZUc_Mi!PsYHBomLYdZR!Q=+lUsu`DyP*pWA@q=y>ZZI)Sks*IZ%$WAzgXqXxiT)T zhq=Q*Qetpghk}%Eu%vuTcC;V@|FW8znu>{u)r9QQ69RK#SKjI1Fww1k>HFc}A$g;> z@@qdm@0*@Iij98%qdvK*$>{9(J}L!dnB!Q-A;2Fim(5{L_gR!2WkE4xNyo-4maAgk zJD4TT>FgYN?&jtJYV7F*A5|N(7t1PB7Z=HGieXh+^t!DYCMMiKFBDGWdBtsh+~sy9 z-peicn~n2^n1!GKi%C7A NyOlR*OMOdzceD6Ic{w{+FZ5#RnWijrM}X=*HXT^4Au-`n+cNcr^riEX5Cju(dI9^6l%1qL=~^H81M|M~W~eBbke6(#72 z30Zecd$*IL0VPdCoayH4*Ag$RN_1veN3U+wVH}bhsQxC;vr6N~e51P$)#>F((YzgD z3UJbMez|PNnII8iCg7`=*3;dsoA{DhGW2$$*X+FSFW-Zg{a2>VdmU9)j!o247T6W^ z@k9P-k*1rQG&slyDJdo7k+s;bt3{nayHI(r-E7E>;ga=YX{)2qZ22a3cK_$kpUcpx zq-sceO!4Dy8f41!G69FPQpNR)j~X!!J+*Q;I3vZp`umDyBXnsemXy0+eS3B`Uu!PA zWq40IOP&ZGjJKz^H`?UyU}t5~iALH6zhKXbNt%Df;Mnx^9znsHp;)TkZSXb@gHLlN zl9w0CQ7C*gTDa7r&gHaJR#mOoalnyl{o>n|4o!VWpB46clz=nRXgq*)_WikOeQTaG z8NW@p*po3C7Gv)0Ho8awK5=nY|I+K7FZ5pz%gD)_U321pYUf6wo@UX@4@&n|Np1Z* z+!CYU^^bH)ipz64!)$^=Wcwn4x+W$jD6^L1* )l+G-5;;l4;zFb_BHS03&2?hOw{-6#n6 zv6&euFg*rWK^v?h6cacCx#fjPt8x|@VK$}AO^NK@o0D$rpV5=b;_wY`@^ w|Hsv zx+9xrK=bvbq-)<}C;@}0cKmo)-gV`=BaDYMqX_J&%Um35T&a8I&oWQH9FOPWb&QOS zuY{?3=1ip>Xb~(xcwr7oP8KJ2aR9SBZO+! n6eo--(4%$dnoT;_;`4#um*uC+?M+*ToTc%R8&JVW%(1LQ;;@Q7GIeBs5 zgv+;UFGn53z8&6~O}Vj9xZ|}b(h2z2SnyG;O}=z1`+q#=$+oH$lMSRrFr*k<0RE&H zO^QD SwM}JIR4%)MUVN2VL#q0_9m>X-(HWdpQBkS$(V7vy7Om@Z zll4@Raijf;ubj$et#2?sirucK+}ifbwfz_%w~S-gDl~uT&5p_xJX=}a&`d&{N9@0% z7CJS?{B=CV6hZE!TdGGB*tM0r4U3A3 #zPU-kxbEH(V zcO%h&$!JCQXvI=WG=&S5QFZgKmkno9G}3-^F7A`2lTH3m&Z;4|!nVnLH)ZF}oo*f; z@i^qEPslV0nDY4Jllw6Rv~}ThbdKK@p~1IrA7fy)`Cw@W|5?Lo*>~&R+&VftQE4i8 z6tB~0>oD#(RpcpyL6@7G&4Nlznrn)I0Ggi%3zuf++7s2Z=a$z{PXk&n*-q&w8=vs> zEC6;~Rmhm8S6Nqe>ukM#Vo}hT=?~Yo7^d0si})RZJBaCYon&o0yJyYE%Z}MH7zx|~ z;$e6dz9U_H&CF1m`gwu!#`|_m8#g}xqR5gd;W5?!9`phQ{AOaMZ5bDc6M;LJlaJl` z!2Kocf_Da;+M6GrTFQBXOe2pjE2lPa9JsKV0vJ@<=@6TEv^5M{z<{(~P#{N{eiEmC zKIPC+1&OU=+l=LtQq0cI?W0DOgWW=${{~Gfc=~n4kaU+HHbJkVwiY8YCjXnCpM0cn zUNsK#F NA5qp#2Uqy%O^6D2E| z$<~>h@ANYV4bw{d_*qul*a$QapLU{em!OgBz9z=^va6mgZzG8ZW1iaem{ ZLA#w>>E;0ax=wDt_>f6w!`h;Kt^o{)sB4hNfYf2=NAuayV?Iyj%j0OTj56k zyRR=J%~UzHs=w*wE{dto;sFeH_GGZQqLUV?>~zqzd2{&Jan6HDei>_ar+et;c(aae zpb{`nqf&d)p}3H+YmG%3FIt$;#M*C1s}~cQoNW4T(%*dJ@mE~F1)qhCP8ZR5U+)CE z?_Ir_Wv?nA7D)Q_zCeua-4b0Ju* I)NKt^w zBBD|4L !%rG<^^A(S@Kuw&yfsW>i`Ea}Vid_o_Aq9P+#O;dvp z+ mkpP&UGJr&JLtqVK!T- zqoZ?dIgr-U-;yH?BG6crd?W&C=QH+ G)37{=d(U*qlSJbWEF{s^|FUYvvIgOSD;nXWxAt zlGdZglW6h_34Q8xpmZeUaQR*u{nWvAi}&s0Ek0XVavs{6<%N?d*t}&+^wN8i!-X_K z%HcmtY!raVVe$x23K+k(VFAJ2Eur_VU;l*hjckh5a7nqvnq-GRZ}|87#xJq4xPE eINe=CV`)n~{c(BGH+-b`KBNLS=M?F7dzK zsZpjn`Ip9_iS!0Ve+f!SV *M;HaIzL?HIrqep84v!#nJ3$-PI49hwZL=U!1IbO b5c)Fp%d!&wtqYqd+EzFG<(YASSTZqvr40UfE`^}v74Wsl0?e&YT+O#- `gdH47iEf9mN;n+0J#&-{)-diRsGi_0QSjN_z1O`_2TPUqO&iHTt+^Cx)^vU4in zoip)b@4F67S2jc>=yb2@JpNGl>sIu#)WZX(A3Z(&W`)Fh!5&q5T`hn}OpPdCL-@}! ze3E+SK5)}yiBx{JW6EV|{c=is?SHOQ*7|Ks*|zpI_o^ND-GwQho}RBMS+t7hb_L@{ zQN8;cGeWU6fiE}?J~Yq@kBU+`d2&lrkeTIZgRHDK!;&bODsSCtdqIJPB`gbCC5w3R z$3LxkmbfX~i#piXrwo|l2m27DTKal=@5Y>~Lh9+7k}usf&G0&b9jMYccFgi)AR8nm zB{(AVc)h($rHG%8r;M^gDY`}z%Rvek>1 sFN}YJZIywIdcU9bhGu*WoZTG zc2i-Mi79@0u5Z=VjLgi12UL{3A4A?o0ex29y<3m1U;m`mabshqw};jK1=3O)<_~*4 zH52}d8du@|h@#=Hhkb~Qj4Y|Vy}7%Gh0EB(RBNrS!{NT=09s;s+=^Ui8~V0oQDZdl z8pkd6-+IkcIhD7~cglF})Xc3LyTKyS5>+8T8=slUfYzeapE-d`RX_%DaJ$w{sd_oQ z@6;OK*DLI8CRZEDk-)1f1(EN!e*22})zQ_+hv_exhs|E<=6eh**el=Z-Du2XaqxFf z+WHI1%5@nKzL312;MJgU+gX|u?K@?Gb1Oyphv2W3O{JwIfi%7fpyj?oK5oR67{lcA zSfFlH_YX2LzH}Ayf919;OH=MF1<)3*Lva_+btr4?F*?oL^TXdR(r@*rRJh(+0V0M< zWjjQ#E0CB?`T2C#BYI>_;&G#QQ$ZL`RE%byev0G~8LIHF0{c`s(0EcH@t5729iyKu zZU~yWDqZnhiM*-Y9cuLSB ?C_`L` z*pbyV)zApUSrF65FInfb+?S3hc)dvJK6QQQ7a5CG@DM`l)29_s8C-JOmRUpIs(IK& z?Nr_KeeZS6=wJEJkriFiGBzH_T8FQy2D!ynXP5oH@?%|#3NI0Eb*})Ps=5h`#9u1n zaDJFRh%c!vt?%XL?Fx5&HU|}gCo1Iq_?Ju3I}r**-9nG6I0uiQt3*juME{SWpp-*8 z<-#gmA%BI-X@^1Dug#*r-2Onjut9$R;DLPZpG5)wyV|?2P<=)qaC>d{D;^UWan}*! z4cu}S+wBY9qsg`ble=~6Rx8y=fsvZcFOE`roNQ{>XX^Ty`&tiFBp3Tox{sW%?cHdw zh8cOTF<>F@+Grs=>9mB-{wdg&ee&t)*O!{ZvAW} w?l+S)i$>`2f|H*-j >AD(;(a^P{gpR3{s7Cv|3h;l=TUj~% zn;Kxy-a~bAoC?^-_9ut_g@_`nZ$yT(Z^PfG$^zNqyL>!^tD_>5lIn=O3POsS5NcE` zw&78`_MJKR=%r?15l+Zwa*Lp-fF!1=@Y;+!PkX+raA#*H20 jN^1D2A5}gu};DOR|AIa;}(h?f!(4rF*5D-IAutJk~KT*FVL#o5Q_t(sz zq{FrYEQTWXZE~dgK|hw$=CKdz6<%lqp{}DNqNcZ(nh!&Lk=qk}hNye+c2f8aOUz`@ zFvc!0q-NnnOqhwjHo0z)GBk8aOh2^r51rD$6$g*&Qej@jJ0+-on1?y93_OznS=Y@q z%nH_9W5kOSJ%Lb|wn mo8Ehm6EOMf51dRVIkSfSP9!r(7L&y{o83H8U=m} zjn&G!v*GL$j%_r?&~A z^AKnBzd@Z&Ybz4qY*&yl4b+*l4<<0LR|V$=i_7} 5H=lfFTv;t#4BqE*tcdxIX2;a< z1{wS<^artAhtP~R=h*XL68WK}rG?}Vw7dAgO)}X$Z{G4EAG0Wl9<#8Zo_Tv|r;tzx zm`7Acw0>&p>U29KCBLIW$B|IXw)sLuP5gxUA8;F0&lahhB< ugqTpDK#qmXsov`7;*8|R@kDwrF9n83; zf-(izh20+?`z#$|ysgl=Oo9yRRaIARqem0Vfv^ c)SUXC8m(2bs+# zd`Ik`8jH`Mqak>ROFXJvc9l!cZDal~Z3hPtXsv+BHMD_hdIkqI4 oAPL0k|U%YkD?fCfQgSN5NIyUGmn@jZO7 zi=2geuNxB30#MY**#d|#EdT)2Pv!1<_iNV@06-{b=>^j@Ax=d-!^yjgAv_d5&0+ZN zs<_Y#_vZO}RCf7Vyu;*_G_%ku1tljZgE>+*u0zWmaOY0X_cQhf(1Wp@UVGa31CCow z$PQ}PD=?!v7cK~3=1ji&Fvf0Fs*oLEKIKaP=l2M<6NoG04>;Iv@Hs%h(RG{MMC89s zJdRjO4^k@QB_cmO7bGP|OiYrVIkB?LodEDfRidP(r*Gooy6i;FWRRd26uOVG=B?Ye zfi7!c%D}Eetna-ru1eV^VUse!*Motb@r{ob_fcCYo{({&nP+k2ieHM_2dHIy6a!Jx zDu%UZoyy(=g=Yumby9ezok$SIpNKFSb^T6pvEr#yrwDY1`dB$tqX8u|7<3WwIlyi* znaGYw)m|UcIAV(U>)q8-XdKW1fdQb!j)3q%PKe_=lC=ZlXJ}&7cM1w>o%s+zqe!(n ztb~`M57LMqk`8*$2$E7Z*2QUo;s8hvwL=BcCvdzcXz9KmEdhM8ci}Uw0NL^5|7|Ss z)+gZk$xYNzn7aiz)npl~PAr#-a+yTC_xyf}*ZlNHi (s-S+l%gjao)6XqmqZmJE7nR zrwj~dWT4WyGSEQpi `bWnfs;Q}^Air9vB1eiW|NBw=$h262RC)-KNv}(s8wkBFcyusJ110|+YESf% zNkjnGKu$j`Xm<8@C{$#K%tPpD`LRB>kg38o)8_VjJy{=PM;^~HItm6J36<)pSvb(S zuOZmbeRy;|wi;4vJ_Us~3^S;PWsoP@e0e|*?K5VDtSl_%F1s^7{Ks{nOd(8>6CnhZ zM5I@+Ia^IVhgAnj?jvC(@^Mh<+^{&{2uOtP^}#M7UvU6E8ZhCh+<`Cl$jK!_6aA9x z90DscAE**yA$3eg{%aE*|MNUmPfkt}s|=;!@AotR^I1@G6WJn^u^d3NgqHfOvO{k# z(I4+Q7T+;2P>Igvswmc@!V+lEfB~bibd*6Lz?b&z3jcjs0>mNC&>3c*qa{EFVXzHh zZ1DKxdQbvnnIajH(!e8 R0P`BT9I}zFN+;zkBf`k%2KvDx{z>qg>;8D<0R$he= z#7g9{07RsrPlkRr2(B$ >lbw2_VS%*&o4;R{3of1Q49a|lHq^Z2jN&bE*h zk2#Ng2ip|`gdX_RC#N=K>Y^HH@Iqp@di^%DoEG=Fo*0r6oGNixSC`z~d4!1n2)9dw z6b(<$NCB0Ss6&`xo=vMz!CT$Oq1(*Pp6&SiC=}QiU3NQ)lTXcnK9mR@LGJa
O87xMmr83Q5dLY _)v{H*ur$H7WE!5o*1M zUs#8}iWC&`3&j`FNg%Q6JvWiZZdnrMp3GgI0(%2zI)mNAGn^++=?wMFWP_$Kod_Ix zsNk3%j-Y@E6vC;&3TMm9bLENq27_q1;Yje|(5->^nrmravcexfUCDo<6vI<;c-O95 z*NMc4lAnP5vWj0`B@F^v6x}gcxkS%bY{cxHjQjjpb{+i;WfQDpvC@tYNc~A9cn>@a zIc!qxp4nt*g4JhpvI;drFHUkMP<(C3Zt4nO2rhYfZ)510z@@T^#P&{r{4}&PO~WqS zUQ@?OY)eB!j|q_`7GA&-iniIgx#LiH!7qkSF1z#eY<{$Lve(JStTfFDF chJxHWKgRMyo=Vz!hE#&k1LWmAYyJxbA0J$^;BK&4%d_?3QLA_s?&5Dvn3sLy4` z VWmDp0{ p2(But}sdgHzVgx34!0cM<- -?N{Sv(%_^(0}?2ESIAbS5B-~+8^2M-Smi$0E8RslpfqBfs* zz_azda5^4qni>dN?1^b{8)A=L1rz%ZfShq+mJId<<9^M@@$)!2cQI&-x?%p4kPWP$ zN7_Yl;>CH~4rC01c^nHa3S|VM#F)s&TlNYHcH=yJGkH&SIt7g*(aFN3LX4BJkD!Ki z->}_j nlhbW%=?`#$KJC$v992CY|`}Su(1uES) z*tTrJRFE} s2-B0b`c@t$2UJrh-w$f zE)B*9GT;~dkD2l*vC1a>HySJzD3zOX9Uqb}#P(B*MSYe$myojKxsE6sR}f(Vrb=rW z7`h%mFVdTf5IDqmC}`nNU$T!C8gJN=0Cb`DCa^hns8L6;C(6)-t^?BchhWI&|j_?COBJr%Syx=^%ncB7bb#8Vpqt}Cg zL{)fuVikP=02Bz|SWMcj_jjw`dw{!oto`5i0t0vQW)SuK=ZUo{-x$U)hFm%h5VCR% z>(=n>tZW2pfU(SfzgE282NPs+PRb;xPHCQ)+t*FZ{CWI5Ye78 `0RN=a; zLvN0=pBNwSM8`@z6(mtTHWc=r>tToBtb&(e?OHM *}Z~#0c`B-k0Bra?^hT$Y_P(UytetW;_){PE30%ofA 03Hr=dS&AP$Kmk-T4gUKpLG8MBFCIYE|2VoTtJk>Mt^8=o`v`QVDML0Ox- z14j%26HsE3(G(_5`g5!~*de_QC>4j0dn+p{Qee-5X@DSt74T)
to&X~JBWf;^P<936GM!z80)^=rOi99!AMBx+ zdi`a?hD%6A(h?k`VTjHRLsx~`S(Zke=&4!bQ&Z=mm_q4$1s^BuF_)3(b6`KngCUeS zhUO5Txqu@`ab2(QHqR(17|@Zc;)yV$rhshH)zwXLzN`Gq7g9EOwD){}b~Xq@7BZny z-Q;MC&a0c@p#BmCk~5z#u!EuXyl6oU%Od> D2~ z9VRA%({3}eBkQMXKuWUm$5~e{a_Eq}o}9@E!O|x{_u2#GZ9o*VpaMUbE={llWAwKd zD+(9QQs1rC>~0_mUJOp*zQ~>ad68IXkX8=-C#-(#yU!Qy_|(+0AyUI8%hjBJWQJ zD9%j8_mI-Z{4KyMLmm;WsvM@#1JYO)@;{=e2X_EsA+ u!2(AIRo2$> z?%K7If>9|f7{c>1r5`@f?%YBDW<2d2keh|TB=$^*Lv{aYMnUe^HbZ4sH>5K?WL;(Y zKa$aZYc#4V>g)SJ3L+COzS{EW0MpGIH&) y)2Q2;YHDWata~Pm!B235(Zhd=c_?S1kGdsp zRg(h3A0-oydKeG_?07>|ch?rC(h@Svh2Rox6%5o=*tB<}HN;5bM3B&mFpc5pGj{iN zk`=7V%`ji@dAmC9qs30#JOPyst_M)Y>)`+h9lxUT3`b=1(s-!PXH)}jp9Mz>V2>tR zons(T50K{N00hx}9%fd7At6hpjNU?)+kUjSCqu7JZf8KVl{nLKNpg4x^@N`}hbOo& z3EPHSbCZ3Oz;I!4akkiH0Udf>A{eWT;3KjiOsZiVqc`;&zdbn)kYoPR$mpd7J<=K| zEnhs|3%I<*>WL$tOhl8Dd9d1GPWxSp`vCYkP*1?_p+txPtpY{#crKvYr(gW>jEpBY zZTbLIfvkAO*Ez$NPb; ub1YOOtDP3e&SQd~tmSFyiW!tC@B{r3 P`YSt!eSVcm{^1Vx)q*$% A!=-HZaWtVvKXINfuSp&zdG&zkB94wk zyA3v#ss+^vnK9%LSv)Oq56A$QH+5@ z7gpX6sLZn%G}(O1VuRDR16)X*^Gcm0xdAzAjnr2!nlIHP%0!??d4;{j1H^%fS6rIi z1w=1}3HUXU?m#FeBw#AKjNT?`l4C62)a&2WUgt|nN+qM**I;;zk&zS-_>*`}=qRYV zPDq7-Sc+;Ep`;dFn$9WSiXg;Ukf59cM5!xh7c#b?)cyDgOYXVZvCiUouM0n(UDk>d zBliTrO`8dR-4^cenz>nsIhjhDUfV{PbNG?lISNpw`n;aOI=CHCQ`ds2kQ79U!H{Y7 zc@eME7aSOJ{|6smIRu`P1fcc(261;3RDvV8zh%2#td-yKf6L?O$Q&x`UjotW+P%9B zwlD!_Elh)g0T8yMP#=)AZ@YxMF`Aq5oHN2AA}0MuWmpWIhMGi)KY$X9Lb4U!VA4Fa zd{Noa^%^8HnvS|t7w%*Jj7X2p8_g+BOK$cMJa8Zi0-Tp#^DdyPpE3SRBDoKKd?3U| zcT zx3sS)$&eQs>y6lzyjYwdY z+JemM*QbGq_KBUeFlpRs9XfKh#+kr5=;`le2WcUtfQ9&-_4pZ7{5P>$xaFe^VSz7f zv`NW*g4;dNyR27&{?Hwk^6|;Z-$~a--dAh#s8HFCEq{yKAuK%V$|HO2dZYNq9?!Zq zp&>}vVxk7M+`;m7%4iDx=kZ@`+1n(}xG{Nd-uf+X{zgCZL|3}s?QM$S2MD0tB4k|A z^)YCxqPHCJEyB;+=$|G+-X|v8%>v!DGCvxxH~VB1k}}_rN{J=@akSCn0yg3ECNp ze6{Wz@-NykyurHl>w5sB6BWGTKYTd6|L#5^J{WvJYh1^j5m7zWF^$OO6mIWXbIfsa zrS7e?xlvM5(!L1WQhvv|dZEpIvb`2ag{x3oLERh$BVFye=yGeMUc$aD5qde}u^Bm+ zAr5eQu5CHk&{x^nwyn7@CyO3Gdl!gwbr(=j48Y&2KFO<7ct{Fc ^CW!Iom#8>CpFZV zs!oS7m}8t_?imMzK(-1g)DEz7E{Y*Vntsh1;+LI-%~j00juUBw*iuoA$dv@_3v$?9 zYg|)A(g0+rBn<$_d$ygsHr0O! kKA+c1E&yJlR;3v_|v}1k|D+JHN00lBUT{j`bEnBT__;kYtZHa1VWBBv_NI zNDPWF`D 226DC+ zhg){^$}2T@> $(mezmiMXkg`OpcAB=T%&f)F2 zCWt8W!3328@?kD>K;}LzF%*N_VR)bJ;7WmT+){z >gHA9<;DO}+`7&H1{HJg`q3udbC!gX#Zm)o zlDnTQg`PdqK;uv5hse>);NbQ-|LuW;oLK$|vArj -FwzvEaP<}h zw$;~%;v$|=xqtl+0eOFQ-=aE+q7Cf&^ykNO9e54^2F{~z18NJxoekm9(N-=Jj-uew zEm49l{d~O+fQo!RkWLwb7G8q?F2j(TMly8 IsG6qcIlxo$F@PR%Tsm479IH{= z1haD&5MY@mg$L{9CYeAJ^n%iG99glO8Wjo+O#&m_uV51R(1UbD=qPmly!c$++K}b( zw<^?|V_JLJcJlH0!^r;`eiTexPFnpc0*Z3%u3*7UUzv=j1J#s`F$JVi()dQ(ovQbf zTbqazu$;>kS5BbgLPqHWd1M8F`%m*!223=FY=WR7jK_(Q5iQR;97<<}M;|R@tP@mN zG7Da_zo10|>Gi|q7B^2AF|=sN7397nxU~tpMy{bEaqoOXBabLzfeao_x*&t)q7-ih z!v^*Do;|E#`_wVzo5%oNwLFd+t|lQ9-nexuu`ZHc3fEwzVyyvdW4VqCl^~tCq1;pl zcesFi0V6@a1s7<&$1`q){JJVxjV;5{?AgZsEA_KLAP{v75kL>|pD_Z1J2i7eP zW-Z*6kPdE=Tw7CD-VTdB2}q>l#QY;PcOv{j2CaihqdCu+kAhn|I-mP2?xO(zLEuk3 zrdC=knPvzz=SXW?XgEyrlB7}(+bUp2g7HBa2Aa4fp%?K`SB}me^ @^3Q6DK7fg0;+Bg=GXNEWJFYfBU@#MqjsFp)ErI=QpcDFW@bxn9*61Q{ zBZX_@ND`KRv<*zIyFa=Hk`_TISX)@IIMRc_|AhX(4rMA%^71xZdWGf+hut4^Fj_u{ zjkci@l7x)UL0U)wOhLl>f-~i;(2);g5 7i7^rW*!gAg?*3wz~n z3`_aYAmBYQtW~kH>UGb)cPiu3-#_1opB G)J~ B>>3H5&lf%6h_L+DmM;ogXqkx9}U#=sU$Acc`m>BEN)Y8o03 z(8p=TORR$&7i7p0d^f2An8O_$oot7Yi`>9RUI9x#2~ye-*H4g=i~y2n=F?#mo2N zAxo>PgK&_cf2vQ|5BoGGi=Q)ec#!8@+HhYUn2&054<8yXP}L6JqcYCDW1&6^H_^Oc zng}r)xsL}NT;Gkipi8O1Ll^;>{Lwi>2n4bx@J{1>S0lQuFk+kP|5EB+12lGTe$yIk zH2@PSml(j}Mm%1$a8@5()xnUXfgw|T7Z;bfa@hK+5@&2*8pX=FJE^E{4%1Mke?e_# z>=0*F`0Cet-LQk6YumPMfw=tziguzDeBnB3LP>J(-HHr9ASWp%7LL|T+FmDKA^^24 zke+c1A|cl~NfyP2RHw+u?$(2Ua3@?ZEMn)tg%e*3xh@SkX%ZnOyKDm7a?eLWc6$j4 zd*BI}SPnv6gjp4?AW$cl8Isva-|e-qSS$7&!9{?6gf1lofkIliok#p0c}DJn#Q@_h zRrKstt;vAY*tk>qF8k3U5bA(eGg_Kw`G1=w3Q)?23vU{r6e}pm>Qy`gb001q0T^h; zWiCiEA25UfvrI`#8$rZkDhBU>Dw rz96-W (~Ks%Zhi&{CD5Fs@5y%SH>U%FgIAfsIE)Jdx*s?}f8vkGIX73! zZw*XeSzWzr@7_w8ZSF4KWMC5k>LdtLnMm9fLhv@kjzWLttJ4O+W ZL@*7usT`CAQs?pr{T5u3g1H^q;0&>rV7fY%oc0kphx?Er>o3){ zu8GWB9$L_SS3E!l3qW9m&|9}|9du>`55z0dCdbB7@YulctujuDVPVI6yLRHvD_CMc zQR7OJd!V>t+(Sr{IF6aNB{5^eS&QCVdRYn+bv!l>b)9?h|7qv^e`1c~IG!(~X}-mw zEo;Q2CY&!D#e6B2RbnJczBI>LzU15PnD0(0OG3maUlw-B!cIw9vQewE(`Iz12$gpE za=zRMr#xQakFfdSerdb*+50~4*X#BC@_NSPgO}C%1YR!*EP>@el9^e~h( yD*02!? zUX;{MM8ho7d~P)sBv{>1&Ew-+>^svZ{Kg<-5?|eOGe1Et!gOO&2X6qS2#4b3)t+>9 z2v ?32Ab3duB6Mf#`#PI*G6|kppSoY$Y@0t|bgZ-F;aa0r zxwBggoZ^6yf7ic%V_h48AaO>kc;pm&?&>qT12h``pe%!j5tPM|(QLCWn~ v5QE&& z^z<^=9xc~QlyT%&u*3l&u?9M}2@Z^j@r1wL5~~b7zNo%*hpqOeT?e{16^qUo=%}9A z`1*AQc|>$t0(yY1FPoYcYA(0RZ;fzgu3#U5K*(YADTBeF&dEf{^x{*0T(?KocB1bt z9rCnC{sMViS{&4dI-tt#>*I5dV}EdJLMq3THMlv$Hf4n5s=7@#sa6y$p)I*lkbRAZ zQvH})l|WsFgx4|`%AAEvfyofFyh(K(*Wau(&k%~XN1*naHPOr|$H}z7UH*U`yf9@I z7QvvZeN#U+rVJu8^X!@4YYGVj+uUtGVaeWqLnBpXexcr>^XEBY`ymZo?5x!*ivzB( zlMF}gZ@yh~Blu);veP5Gi&hUW?oK`mOt%Zot*P|qG1p^hPE|+#!2up2v9{$9V@F*4w|9ft!Isp{&)`QrD+Y zR`^mVG~M*8@GrYRw)f-z c%$kzM`kgs_BXv3;nwp(Q;qs+xw2t9tjsUFYTl vVo?y`Ibc=ekq l5likDT9Skm VsC)h z)km#|RQ{@)nkKbMsDIdmwG?5wWp+C<@_JZUSnCm;ch8^i^z`z=xADC?_woG*J)dPn zs;@?1RhC61m$)hA>eZ{XbaWEVKMu37vL?(ZY+5IHDDlAG`QMXMQ`nAcJ*9q5i?fqz zVNS^+8AXSh6Jx){DP7sqpt7vUzT?C;aq-(@9dENQbrq_exxlq5Qs_{sQO TK+4xmRq{G zrY1 _$m2UpYZ*-oi3g>@f^6t&_A3Q~t!Onu;Ur!x~mAuKl z`+WEK_#s?tqm13oUzc(HtJ68M(+;x}W=Y+ tfiN8VX4 zy&_~|w#V=D-*PVaWn_pw)C_sk-)ueJ`L5l4Fd<6p46m4&*wYg)K1}qKR@c?N`_Wt% zCli*ICXCfzLr kL-CmQ-NiKCe}A9EUdPE?av7WM3sW)A zGWgN-_)v1j#c!`fayvbqP5 Gt z-)d&X3CexXsWr?>zt(##{29QF7tHnsJvYveP+4A#%*@Q(;nC^PSMjmX>x%Nih}5U1 zCig$B*7-xJaV^=_%qO0)`v$NINjmhZj} bbmgZ Oynq#kSW+ z3O(Hio69OHBynsK-M?=z@%ekXy #~1Hh-GJid;h>d z&%nUt&WyO-7dZCaV(O{bc $$ZteRk4ytX&&{^~5+| za^oJ`EjxDxS5;{#Dk>VhaTa-TDtDFX(5FYUv$L7!zih{9O-@W~*}C;=f`aQ*@k(an zi7SbU?vkv62fA-^nj~3NhV~B*X1k7?=pQ|rurSj3F3x52+mW2}$2+|jE^a@TR{TIC z$gMwozm|@UISzXCulc|zn_K?IcP9HPH~LP__JwhNTl(F627mu@^2~-Se?}xI7PT=F zH~-B2o#|Rz%q3$N?{q5X{Fh)Vzh?ZjA|6>1q1|8b&b*vqrMSn;*y(dc ^*!mA5eVHiToB5!)MPaiojjqmT92 zza=In+R@U|a)l|+pGzLaWu)IY4>^_$&cEH~w{F9UXJ5D^&sNdRXlrXrczSx)yRQx9 zRXXqH?!MvrYGxO^g@s|)3V$kp@cA!K H6^$;+gc%4 zX}0@%#hiDrT}x&OB{;Xs`)%VNtlkEsfeNVx#iPQUraMo)9=X;vc++|G+ZXzE>-Mm) zu!!b0#LiR)vhQFj6=! K#%1(p!Rfay7yE`D-`~^T-X47X*@+FeCYP73 z{)~5xw~vo6^UnVny&!$5bMZljF0x$6hdVnq+Su6Ke68}UaUT|SMsD1YdNM`CG@K7B za$7C;Qqf G5YS^?hDQ9j`8R@%s4q;4+A`?&$^<6>A;#qzldI$c}8^IM%N( zKJD63jw7|#%1V$@6D?*vGuEMq8;V}^+GY5X_HBpvM`|f{?RG+fSN*WjBOP`;s>kt+ z3-^`1;`!6;$ArUx4;&9lUDpltWVO+Qq-$sm2<>qxwm<32UDAK!9@EeC2od@%p= z^mx1X!srb@zcW+KqiwliC^(Wxt7`lqC=2Z#!!K;x^TMA$e_rFgxIxOQ@vZA6%`o0N zBuc;BT-W4 M7{`?wCWZU*S zM8cvX^V~;1 E$~PXzA$*%E@h*T^=gQK8}cRU%n%JGTk`2%{q19Wp*}AeAwR^&%w4m*7ck0utVFA zKP@|X#;g3++KtFoQYbBaLPCS_87f^fD<_bZoaTSo6fVtQpmh2ydu>0NexS(vujt%@ zywl=Y00yzVu-J^@^0LZG3$9fIHPMx&r4Jh`QLP#bC4Z=8^p&Tiq?qQmiOtW)H>kX` zTIY8?Dk=&Kbg6J|)#lBcu|Of^=5m8eDCCiGaWx25! C>!ykdjW%%)54esiF9rku<$iP~{8)UM-=Ty(Owo?eAj_GIUk@r3Db_}z_3$3$DV z>3?=+O46bR1O+|Rf2332wkIy6zyB-(cW@_bR#w*FqM8!&Uvl4a!Mk@2SA4zn^*^!m z2)TXF@9XWYkDD7|-BLLJbI1A5X(c$4r+!4w-ds1U(k15Mi~DSPc2Z1vwtJ<=@1Nxb z?$a@{4(7?!93Mxk&qK45eaD{Y4-_oK|9!L6F=x{J>eVZ!KW{lKkxiL`%HQAHeWCtJ ze0x{!=^vL1Vj3F{KR+=nCq(@l>Els{qes7HO^JDy@z*||zrUMFRdoLOIiNg<6R=}i zZ6^0(8wXCrUD4AYfGmc-zSzhSbQ6m(`KRqtw)?ad($9PtU1LW_f>5H{HS*u*&&SAb z=Q;HKXw4R?4CUe9wvG1Lmk*g{rJ}MP#@KP)`9$>(lB8^hOFcYo?THf9V!H=*VI;nD z;pejqhEZ~5RE&MOb{+9;Pfupl{~2v#9L@DvUUI4*d3UV&jE_=hXXjx5DMW`{Q!Gai z-JwGbYB#ruijEan(=12s-|Q8IGb3eQM*sZ8j+u6+21~EMD4YIY&JR2cQ-0H}eB{Ux zl$H4DH@qs|@rb1R({IMQii!@$9@Nvb0w#>UGi=Mr%|6nWD|XAwzPD@*u-@hR{iu-X zvvLg+lat9v*Pcij(Z|h)zdYOjNas!r%H1t9*<5QYt0|xx`39!K_DbfpYb{a2NE#A7 z{U% #Y-$9TXa22k> zhz;Vzc~u%8UY_}Q8p)5UisXlbg?u&i@uA=J&Taq<2f(1dp`q$`Go3Y8#^3qH#ch1& z@!K(x&KTK<*JsgTu#aiup5Wwtev($TTz2n%p8%?O-(MXmHY}Twee=eRiO)w5O=24) zJ${|Ddpo)(lt-cB#v0c8*cD?~4X5w5W~hnv**DL)53uv`^UDF+St?x$<5fD>lDQSB z*YrnYGU twI zyHIs?^?`U<>ZMELYSvfQ;XcDumSS+PjyQ|A SHxU9E_0%nNJcfAotvX>+(^#2&8L)VjRxm;$Bw2R0P3(y0(1%HQMijA zv2NbnfH F2YUUrxl2f`z_;3z@(4f$B?#{bzKFfe=p=AFk z59|6BO9-#vIJ-C16Eib1D^{!sRv0g6@(&Ah9kb4D3(<}g+;DmL>u#W^;LJ>M3v5RP z;3|VsVrh>!S{~ca&kdU<{`}d4kha`;rf~6^HH{A<`DWo#t>JUvRk2?&mkK6t9YMU5 zHZ?V!`}XR|Bp_b=Ol^xymuFKN`V0U(OT={X?60On30-}yl)jSHn+twiAV3s_->%(l zO-BEm7w%tk`0I ! zVcI~-s#cs^`kW~mtBnNy6#o6w#+XRAh%H!%&sZG{tfp{j@cVb}hx^0!ye} CmA=4}q2{P$Wa*<2RLx*DEp32H*EtYCYHX`UP68iwL9*9d9m6eSLAtwKdG= zk72QOktk_b$PX9ihcoI&+g@LkqCC_~kiVJOm(y$_Md=F=N|YU(TlVIdXuDK&5oo%e zo{`b%dp^N@rGCtu^KW8exGX-W9nnPQU}9!w=2ui~Ki8a|Ku(^?H^v?M6^2ZG&*do8 zaK6u|)lM7~4k~rphQUBR@R)~(yn^f4*`>v~#mUOei`WCJ{Vde*BCrqPe816Wp!eWJ z-Kj)r$RD_Ss=l?-F4rlm+E2 CJY((yOICc|VlL#^xt?@txE=TFj?Ef+Xwxk?xMd z<)6;==GEzE(Z}N)PCi&DD=T9&dcR-2-w`B+R#qD#iLROB# D@?~u(pJ;J&b2QqB)0 tK8k)w+RZG=e9jL`gon4o&1}9>gu8g_ eS?G6E=*KvxbA}$!jJAD zivW^aRc=vKTzoJyI5^nX({tp24ZcAXyQc4N#&sZ3F&6c`x36zswpHD1kKg9_nGEB6 z7L nSvmWQ@Q^pyU#lL^oFfsL` ztP3eCce*dXzS#ByHHU_VhIZ8|$BxU*S(Y^%-R&aXU~wAJXIj hf=gOzhmVprtZ1H`_|uUV-X;e!x=@1GjmL(-FHvf zl{7SjA@7@Iw{l5YF}b!otln`loz}GK_ErKr@m=(QN60Q>^7mXOy7zi7%~^kMxPM4T zhXFWH0oYYA afiEy!Ui!NUPzZ(7 zVWdR@0VTn79c%j%WXfQn*t=i)K=jXya<-2bOovYY!GhM|iyPivvbPsUv2^GhYkJI# zMhWLD9!2N<`}g$B%#VRq!6*2kew*hQW&AnCNzLEB-B%E0tEk)S-IW>9V+=S6qHY4= z$enV!ENsDQ0s;c;-v%AO&ehk}p8XIdf&vu}YKe0G>+@<9>^W3wM)u-nlPh)ZS4LX0 zehoGGA#Ed~-A8kpxunmnXBE iRT6-fJ|CiT44DYeNiZaP)%Ytd(U1)kk345 zIQ ev82i%+4fMQ*LGf-A^mlMDEP^(9n=4PXqZb+*@T=*JdDalzA*$Wm{X@ zT&J7`7$xVi_6>1$-xsSI8ie@y`{GqJ!Mc)m@5jf7o0L3WHF|;YWZJCU?!JH~`#VYj zwxV+GNQQ}$nwnbrYz_-GpKZHu@2e{_c4&q1sr|{LNQj8Z2aT^&55~!>garrF621lX z=jG+$6F6>(x*qjPSN PTz0AHsLKjP;N>FeAwf=!x=2U$> ozOLM@6xbR`JgE `t1Dtr#F``e0ycH5Akd7+8kz2&6k`XGP_nICpvC4dPN!ds|-vv zDg?*9v3JJUG0WDMmhG3DPe=cXM`9jm$+D r zIT$+_`sLY4){Pra{ZN*XkpXER;O|c{o$9X!*?0#aIXeGY0y+Q6Uh{05`zENjo(ewVM;&iRl;7HrME3SaBA8v2m z7bAc9>GZbS$RVV >gu$8 zm0^{2b)yfCUW}erV*fJC!p>g4E4Tf9igqN91uuZr*^+B??T$6O1`miupREkrY>n*y z?@%ue&;K5tLovE~t#A6<>x;T*Du-IK_|e$jOr2O({&4audbxNfu3L~EfI%(MC1Lpk zu-LZ~6A24sfEM)G$qcKp_Wb(4%gQ05d{eI5ef6t$WE803-p~T9@>|ElCo3C+b(OSh z&(rk|u1`>yM&+AEM>m0BX5r$}!uK}3CHe+%=XVt7RFsgs{QSubpT9w9$(V&>SPr45 zM#chdqY$kpx1b(av)l3m+gQ=EH%LBRQ`0RCiqlNE&JO24zrXwo36KnQj2siFw^HXn z3uEh_98O-rqu`R_IX4ykyPzCB1i0Pu_I#%~6x{^fKc5kIAaGXN55LGoTX_IiLpxBX zapsDMEbT)O2lYoTVUO`Er1K8q*wu^McNx3#qjBr`=JbQeJcO-4YD+-}VdST;&XC0w z?Q}2A_$8`~xw$z?{VnhOJN6*Yk3BsWfWjR2cD%4{MD}Fu$c*uU158jFl${3acR4=@ zEH~c@-AAU=t?#97wsE0hwiUb4-BpC!zPfU?BxpE!aDU%ZKWX$&J)xNJTP;i8Wn2JY zXnE@@1}S7K;864#@7Oy#PO|Xu95gV9X`M_ra3~tI-LvuWq5Cd+yY0FPJMy20Km)K? 7fTprsQ~bVlwG{vCyVr7vhbDccrt%@FS6Pxrsq z=>POXbv-pdjo=;-km87ouj!|Q2)%J-=DXi!ZvtVq`#h>@9cU0|!iOtSDuVs|R-;ww zZ?(Sv$Z_C9@FuxW?o*-uQ3vO%ck$g!dGx4fe0 ~h zrS+r8n?&%z5{ChkK3%-Cck9-z!MsZMa0bDKtpc?CP|B<_QlKI)Pf)AL?=QF1Q~D3n zusJv=xQv*V`BTv#UMC0wkV6VY&){G7?Z>)7VKnZxIqi!xhvG#L=gqq#bAS)A(l#u+ zFMRDsXj_#BvM;;MsZ&K-p)woaHsc~d%H*BL$5%E-3m2z!5lq0e=I9~8=9G^3>t91O zT*vtUvs$z`#fWbF5xSS1r{5gYIGhso$*{QDzkbEtUKhD>xl(cT#=D^7Rn*mmAhF#c zup0<~^Qe(X$e*ze!aG%3-}ll)7e&FDI*X*qy_G}663f(l42m#Oy=p^yrht!;H3X%k zScPMLURjzObe||$-CE?M(&aUi@ZtXAL*%$=FbnoLro8U`)PjP7b6=kuCQm( 2`BG?}tg(G3{~A2jO8_l!9aZodv*t&u9T!A@C7#N66hK-Uz +|y+6k4Lo1qvO$L)KpHJ6IFBIvSDX-QgZQmLx>wzteovs*=Nx*8iB`F8kd z4AuTRZiwD!4={~JwCL$sWW&kdzb}i9^69goY$psbo1!R_OpCJA`1;~0un?9wdHE3k zMb7qDg+DjS3B-xy3@X2d4FvsFY@S89cd#)xaiTALecsbua{bqEbJ)~CO&`QtKvlyx z&Nj)F3kz)aSW%KJ0d?M^tH6!CL|Chx$+qi|N5gUhYAs@nR5}pf(^d-EJInE4=bBR2 znwXfNDU);=X;Bl%L82n6h2mrx>y4W?f&7?p$~3wPy%?2p>#T?*0jc?g)|uvBXP^es z0wJNyj^=jRySiE 0acXY%$YL;SYvky@_XeOtfhUnYIk@- z!bK=?Z2+cA%OUIh%=)d_mi 8jRgeDibSO=!C={lBq!@WmEu$cou3<>Zv~oQv1Ok( z)%68~yl&kzE5#{&p$cQ-pdU m856xr77 zZiVGupUyU^;*RkMm$eKG@0*%fv9ypcDQxj`t0$&v#G0^QgN2Yo9-_3=w`CO0Z&&&I zi*@>YT^~FK@`G8-yoy!G$a3C`vT!cYc0YNX*o%r~fp)N9X?~cH28hZ@6l?jS^dk>7 z>l>C6*D`z+ey0D3fz&ZnUmQHAsebK5uRn&Q+a4UqK$)xq`^snukj9H- q&MhwFDWuiZsm@VM-Mc5g87$ z2l>w(qYOlV1bx~#iu5a}7hknFH%%xdNGBsBwh$LQIy07`!=V`ks^s{V7#F7t){fHh z=JJl*4wp8|fp5^~3FcWR3%*uq!-fr{i$%;Q%BZjz5A;SJQtpYhPQ; cJS;C zDSkT;InfC<;=xY!d!(0K9T!^LmJ>Id0u>P^8bF&A1gxwcAeX4ZK8NhK(RfAoh}l`U zq;95eDFLIDZD?28-TFf6+whRV+`9vbAP9j&@Zdf5xv7DJ2ZVd?9is$AmOEA-&9a*M z^{dP-ce&3S`NRxa=ht}GX5rZq@2u (-uY0>icbC1nAuVsfWSZ>^mJ znaIdqf}WFg{rZWp<`=t8rf %yAJQ+fNixm`c!Tt_b3*ApaEpCUN zu(-4^PRI#i;ea4cF)J`%uWXubAu)chPY8PZc7ZM%cp?B`IMb#{5L90UIYS+;U3H9N z1@_uqmk_4`!NDnT0@X(z)!_>&SJTv7g#!%!lY5UXy1m=2S?cLpxNhq!8&>R&B>J#L z0Bh; DUN4Fcr<9+ -T0a&W#C>_T^-Kbu90s! z&l)8~1p-QYx{*ML#0b*EVY*Hxj^_!HxBz|Dp?4Z+=U`)V))4yOA9WV3CMnipuNIHm z+U^9k`6=h7Mmm*UHD3_Dv=&r*;?3cbwNGkws2{HVHAyfo7LFn0Rctl5Zir@ZGTlI! zi->3!(LSnGSh&}NMjA4Q)Y+=_$Zms*ZKu@(^{Qt>ge>dPbE$cFylIsXeTup+kZxdk z_Uw8%X6)=l58J=^g0)QG5fLpHXF{`F`u-*((PcoB&~ }z*xV9jDyx7O59_SlNQ=kcf$oHCnrt{a- z#RM}h!i%u6^&6MX-A^}~Is_`+ciCq=Ac`HqbY(2x52wN`%K$X?s(PR5{nUJEqtz4K zfgvFRyLaCKa|?~~_dXrpYXjC;0N7JXkP6{GGydY>4U-4l|?hh+zQV zv+y{0!e%9ZR;^zW~{8*?LaS{pZg=Z9S551J){V^YRT-YuBvVDlVR>#jAi;6v+Pv z^IC^B& *95E5;UmAVE54Jz2T9s-i@W z65ml^f0mM>Vy4jxjVS}ZN5qSe2goAp&`S$ (MJW1#Hdh3 z;Nfc^|JZ$Xb-a*9Kvg+(pnmQu*hE0VFAkqsmQ)DzuMuaut`WpRvP}Y$z!WpUwtg9` zP(x^JLBsTb=8#qh^{>e^*hxO(c(*7xn2F#%TifT=)#^ID?2wb$umM2O25(( Qm1&0V9>O5&1kU#a|6yp#xIRKiWE>xiRC83%! zOx_W18yZ>Cjv&{!k;lBo0Fwmj$7*y2+u#sHlw_W*W&sMYblFLb=G?eZ7rH<3-2uFu zB_Diosu>?lJxartuY(PJhz>C&H5D+M751r=nyi4REr3-dZ=q{BlB`CDmUJ&feB6ln zc0ARyvs|mfl>Tr*88$=112azykGA@fpoBy?;lq)Ba1Ukh7-an9Zs&WHKyDCF2FfpZ za0?eUYQAqu$~J6%8JZmp;H 7S7;!~TfccH((MV~rp*`F$NstRTVXz(hP;Cu!&a(r0 zT2-=y?|@145LsN%GN7lLV;6e$(bb6_!I?t(ISb%U3Ms1Vu _wP+IbyuAxa(UHT_` 0p)A&A%&$0zz zFcuD6gj8uwP0ffbUvm_W2pzFqe9ky?AIRsQ0+^y@BfGC(5shIfU;{){9%9`?sIy6d z@&SaeLtB2
+6L-_x+#G4Mknv*?4uP%kb(LU)Z{EMZxoCMwA%uIk zq(X#N_$MryAu67KV4yk3)K}-f1cFc|Z34no#0pRqy}(P)IY&Yt0GU7%lf+_&f5hjO z!H KZ|W$8iaUk3aK0h z74b`*ibxpeAT~-IfefXxG|LZ*U~PgzG?C(QHZ|Zer>&~4HbaG{c>ex!@*n0FVhN8( zLVMzgewtDMRcoh7K})|np9b&>Ewq0tAVygHf@xN+is9L>u5%kbpcJ@!bV~@2D8y*s z4ZRiAXe%yYiSiLHKK=It{r&3^7=0BXb)kIv+rXbbQi3xTB&!r8IS4Q~6nu}=jf}Vv zN%Jf9b#@)3397lL;-gG#7jUCkfLyn#q=xJFqOw1RFXSKbAk2620Nr8ZPtf%@$T@DK zfMF2^t0g0I+dqmM4w*r;UW!vy{F~$)%Mbx4)sGhUI*zy~;G|n3`4I&T==sO{aX!at z{4+TYIQbAqViDLq-%}^qL{9$-WsjbQuKp5w9&}E^njT+L?|*6V;sl{WK%^UhAXuJj z@Tm>m=GcnFDQXGghA1ouAYxZTT;WH2k3J)b)&hZr0V?_|%?S~Q0^(Mni9RVW3ONG$ z zEIP9x+xOz3Yx)A7YI22B|oK{c&Rvjs1)1D^*HU=_r zVPgZk$ZkY|x_bKiaQ^*iIA&jIqx3bP_kM?Q)GmL312JZeq$F}3ZO)0b#nw?5)+T>r zZtx4!MC?SN*dSp}`{c |gJk_`uCI$%**4F)O+7!{{Ae@h5OC)Sc{6>-==kbx)k4!TBiXg*{TmIK~HVr7Q> z{Bbrg>MS=+l;j0e3p6PVD2t#R_G0Vt@O+lW&d$;}SA3A`i6Dm4_60FK_=u`15($f` z+f=m>jT_JvwkPFZa{!iMl`j@O9+f_lH6Z>zLsFD>m(Q{i)F8M+ U}QruI-1;DaaZyJXizBFpTNXqKg5Iv;fsfG__1`BNOG{5#PMjStS6Hh;d}^p zViO19_vy>t6m@+(h$R3vI1&H@Gpso^oJF@1i_v2*3zm=zEuR$*D%P1w!=Skm1jEUx zsVP_xdQ(;iTUHR26xtuA9g-1@|9&g!Op!N%3@Bkp{AJp7hd yVBP|@c!&iVi6(qXuf4keM9}mOs;oz1Hp~r#@wLM jsJBU-(^h{;Etq_&}Vcwv-7 z6n%2Ha+R< w(oEuKk09Kil4n z(W5)8^MW+%c&v|b8jx-CkJ>)Zs;=`0Sc-`LMz7A50EUx{<7lXNU%75!yok6DkeNh3 zkQ{%~94a1c>-zbQmZ*PLE}N*~HJ_l^?78@jws;@2(pg7t2Mq+Oex+5m1X@c 6ocOnf@4Z9B#)10rSPMA$iJldLrvbK>}kOGG*IgamUk~2V6B4( z(GYkO#~6+a=R-vEaZsD!pJ}_ZDtV92v4-ncLsJ5bUhRt>^4>;G;|NX4qhp4ESs1t= zeieZJ^_w=?;uMDOaQyY-2=wlN4m<0GKcmt%pUSXMYGjjiQ1O9^`r)lOMy~n-sELV7 zoFXjCaX3X5C_;xPu8vSp*f9xU!m8tjMczvI3R7$;sSa=Mg|lt^H-;3+b*lu6o@Si? zvh_$=`8fsy9lBC+A|9Z}L!#i*s4&k;TMQ66h8rb#kccD5+Qfv@=kL#!4+13 G@~BK#PcIe1DU#w#G_*#! zb|mq@wS 0O&<1 zjfhLmq!q#f_sqBmAwwayJtMxo>L0ej2Lob-G7Hx1pdNp^Dstb0(e`}E9QV2h21rkW zVud}U<_m&sB7QuItmkazv{U#6u*>=nb{V~*_eFVsx)`7pdjg{baO1Bi#)-P<$SpFA z9U }~W=18j6 z#?Q~dmQDc&ckiS27X4mWy$)wv9fV`n!NCDJk0kgMgM`0Mp!33S-(H{1uf2i9wnP2S zrFKlp+)<%AXoEe2&a( dx=XL!*&KnyEeqiz1*inm zalN1F*^0qxpjE@hScZg>!8wtuC?ii!<%&Xs8$g5jIgnmI >6D(Cz 4r7=wd)@L+n^=mcZ| z>m_y17hy+}@TI;CNo>2Y{8UIPm|>wLfnEQ83s18bBRLde5HiZ!7Z`}=rw1t|ASC1m zfgUj1nj|HbhbTmOZ{M l34-(f7AQVZhA`Z@*lGt{iUW0H+xp4|35U~6txsG?@G0I0|^;i9G01=REsJFLw z7W_}^>x*&!;>#EfS&SVjG~vhoiJFL2ffG0zi0HoJt1HR6sL~xi;QD<^)4JY~l^X5@ zD{CmUqG=eoNc2(IRV6xN1x%5b%^cxGjCh8Spn!s|?BAx(fiEAbXH$jY+ut|_izSdi zw=-4VYhD^>j{*%&PKA>i{+@`eC^bO0XRWMy$HwejwuzMEgr&-R&Wcl#lase&B{+|~ zFxm|(UR6yEzo1|R9_<4r5}qKIu%L1G_Nk|&IN^`Uj?+!Wjyb@n$H+>7`|gA6BZGvf z6>zf1+Y3*Vp7@`T69C!!9_V+dF?l6IbGJfhl==UrHy^JLc%r;CYeD?ius7izNL8dd ztl_3%J4&~DHCzuB>8Ibq29r$ElFloXC(tAs=H`6xM4 Y7U&XIY}v7c5il^4RomuKwr{z#_1CQJX9^2|9;*cC>FMq77Ut#2MmA~LAbq6D zf!L%VSa#z`X$_&RN`oX$fr2IYIQ$bJ^nu8Th!v_J#}DWsFg?(gtw4Qy1}kQ&_Q8X6 z40<3p!ga~{Wgs^tMJK*(TUq-SzG%1xEZV(hIxx>eg%nIc6g=`ej*c%|KbFzOi};eu zBwwbKOA~iB;>1bM+CS=_Hvlp>(v9SmKel9Q0ZZXV`0zaYt(chjeDAK~!GyWkCs5J2 zjaF%@_e;XB9R$tgCFFQDUHh`~a^kDF#k{#5e*LrNY9hn0?K(c7@@pVJ!@G!FpAw~y z#E`EJN`epiIc#4cn7SK_Uw~|5Led@Z5qNRIZTKZ=_$d#7RqUF8+DqIn01n0xD_5^G z FR#x-KTlW96sSu{v7u*@QL^gm6AJ^b; xUU~+anT>a@p&W?p_W5^Z;oCv#y}jygC z034LZA26=QQsjZ4B-3U< zgO3pPF`6~SS~f?~CF5E|4AF9NaY 87o7yD3}$sg6@N4JLpA(8jy@c>qF!31k)ZdrQ_mzfd@&;ec*s-dUtI@t(3|> zjdUaxwjHJ7;!G sa@MqI0BCQe6KzdV38RXh`0N-*_5L1(lbV%m^Wt z#pROoUV`Z-Gp0*R7L&D6V_@mwKwVkuFWBo0z=OEE6&)R|lVmJ`b|dReOV*M3Q|h&6 zbKBg(?>8(cD`t-ZOzn{7*=c@Dit#o);6DdbjU{%i {B-Pz7AJ@nz-9S?90PGD|?Mdq54pMBej_oE6EFTZWI ziCl_cKYIG-<>QzC9+!xFd!?j>*et*lkW;2ZcQ~-?$-&H_rRAb`X0j=EQet8B>o;sL zOj!sp-T}H#wdBYB$B!RZ+oZfgsWrFEGT5?{!Et$6-%u|0@s<$}q`)UIf2fjCCb#&f z=nH^x!4D J{ &d?tAs_4HeKqG#DYrUP;ecg3n2^yvQ6D+K-f=lzuH@3*f!{7#29NyHSHEek`K zXgW(Vs`Bs1g<=Dar%`Sl^DR4f&6Bb77Lqn~jsR*4c&gmo+`t{_{0lWlC#UNpw3(J1 zo|KevzZL;m$ ``vQA3pPv1TKpZmCGK^e{bzDJT}hURwWxJ=75hfA0^lrR6q z>&Vg+&|;>JEFyLP-M!~aceZBoN@N*Q%2HeKx4ird+y?6Xo6pf64n)0WQ+W1;A$-}f z^UoyZ8uto 40=0^G?V;(>e7c#NjI4?u9zI)|{e7Z{-K>Xp1*# 1908!X7Dza7R1cB7NW`yGcm_{+y?vwZRlWf-gNKDvW=l7Z@mgOab}t(8H9 23!McNtH=Pk7V?=~*vhiU<|RJahgO)%j>uEh)%#Z< z#jaIFQ;y0;$k~|p9p dcjjbA+8R19=Lq`iN&{ogM&ZG0UnaB*3T zV!#v2^|q6?;qV~$NqGO3(WCo^hOPqeg?thyqNu2p{PW_CHwndds<)X_tXCEuCxKSa zFE7uHmQ_{N_bVmp8L7dT0PywKbDKZ8W$O#mQ@u9D3K0bbibu2IELXQq^#L~ P#4UP G_o{(`$l741F{D>` ^ zdWfeGhJ))d>>nVET5xlkxH%hef(*(I+2(7X9-SB(`s=Gn*5 nsjuOgpnu h@V^7rH zx{Ut7C=ni-DT|BSoElkPSs9rS{vp6U_lQWh^iXSelNAf^K-+paJjtsns9^Fwuwmne zK#`XG)F|I$QB{9kb+atnyVa_dG QC7zSB#`_N_K1Q;!EES zbsCdr*%n$GKq;k8L)JIX@+}Vu{4Kw-G4lZr#jiAZz*N1=QVA*-dNzp*Uw4uj83Oxo z-s@}L&wb5*VQTT=L?&lEB?4|7eM!s_0b;{AqyxefJ%$W`D&AP4&j-Sp&6DNuYQ<~C zi6Q)#6_9H9(rsY*MYpd1P!sU!oGDO{1&*rv#P8p`X3KgtZM~0EUT4fQ`L@Sz8gY4R z_)%T`fP~MICk46qsC`VZ7L_!eC8eb+;qRqH1mC0FaH2?t7H4hV%^=K2G*zPNv$3g$ zKfnnSxCKFA+r W7x!$Adsa1J z*!!_h?wBsGAzcVf#% )Pibf3O4eA^6X;c$h$QpE?#gi6Res4KLp*=L+ zgLDS%5PC3}zPy}ujSrFo2rm)19?;c_D+ERzdBYYTB@8a*tU%@M*S4~IJKbA&Zf}|p z<9m=;4nhZ$4%z(J!YB_=jV$HO&77VeSU-=@gbG~$vNm+nx3#J$a;aAl0)glfqlD{4 zIzPxnYHXqW=99d7?b)>--!OaimC)$K!+=(ZG*jZF%f(>g8T+r7J_)wW?=-!t=TyS4 ziVUZpngCM>nM$&kMFvYnvthMALQ)4*MX&6Bn$mB+*7T;T@45f|?rTuku%YZl#2#Df zzel!Va74;0 H4tc!5F+f!h(&rohY}WC{NOZk>ky#b@7@+TN5+9kXlB z@(L)pWT)eNTh_;ZEGqO`VBzLIPnZ)DK~ukfm)E`M9*y1HzRH*0V&k7(ht$40NJ>f7 z1q<=%ryw?AoZa;E!O$6zbtF20i55Kz%w|q~-W9FqqI`_$mXd_FX-zkDHLLxg!zIxq z;0+HPWH{#EMAd#{vgig&SN9$sU8gAJ>eTPkysEx>^^_D;@#cHJeEL=(x}^}T=sn?Q zfI6CoPF5rfX~LfQDb3nMzF8lkRWj*J+G~U;(g;^P25Yx^`fmKvM+{^nsh!*|{j;)~ zZQ_sbNdG$uPSww|>!~8Yu`lHinZQwqLY~o)hBS{CpM2)or)n=pc{(dly3BF?YlJwT z{ymWQV{e8 JGY*A_HiTV`F2)1~(#0-c$7Gn5-1T zkBuK=ytHWycG;Vk9-{y?#lmau>M(DhIz?Kprf*qldW%Pn#aG`UJ>O0?k zDP@(#;g`sXf23n (kNF-sbS3gf6ObB&)8-sYwvz-?-@1 zr>)C~hOu@ehL3Og2VOwZk0ux32j|N;3e4+gi2t*GUud7n 5i7fZ3ePb5YRaHT6sP{=`0fp8WM|XP#pG+s&`$nN4Z- zi#oJft>C6(3y&CrECo~7Rrp9HU<(7g6-4evL|8bjo3%?Peqv;WZ(Ddqbxk$xmfgF* zq@3mB8`RO&wfK~BZ8-K&j5rNQd?+l>$cL)s80e!e{HA~Wa;G}2Y)j$9 +=m{;ub6mC6mi2SW8C&G&k65aD4kNEbG?AU#ia8t1o}-yb?p$n}=xz zS$sscOylc)kC860ndDt1;Ix5V9z{91x{4WWnyj!0zN7A6l)+tGuj`m9B9)^ReyfQm_bgcmv9LO{#+uG3??^JzELx z5at`Smr?Mo`hvs3FZ-PD@x4P2t_{ddvE=p)t!t6mBE;)=hz`yj%mPa(JoV3`$5VjD ztAgrJCb#}^R1sQR0rMrdZrMU{9jBaIT9r7!y|m1;zi=f3hu_ziNE*iEMG!<)!)PCT zJtW&_Rb=;+6+YU=&>uE3+Cedy3*kWYjs z0tY51hC_Q4LxkX74BoA%etvA?damI)riG>1wZ5Rc;H8bFYNRlof^2ZcdrklrB6RzQ zgOqgx$QK6s`T0#VY|VLi>!nzZ;t3ghm5Fuk`K_`edm>mZ4(f^US%#Z&DgOR^ltL&; zICbOVwff& DenK ss2$kQ2pVPjN{qY|1u4F zAUijAVBA}UP4mI)RaVBWe0pc)RK(W4^*F$&3HNx8s_W!K=4}FL4y6x#bhs|LrMq9w zKQbN=Z2Y-WZF_F<-x1d a#7gZD3ck-S5NhUNf(McgMnCh42i-s=tL0Uyc#q&B} z(%d%x#b~E1y@_%y)6+mOFmKshJx9&AC6=Pi%A4ZqG%*c9r0CXgb ()QO z!Fc!0jFa%PJmntUh-ue%Fdi#Dg7~niU<=nj3q78^c#J|s7*tlWYg54dx)}Av`2S{K zO_{%O@2ZpYPL(WIy-i6BT#4aA8oyFAs{>RKI*d&b+4`0lne4DDoU_X24=~=tuIjLX z-1*zL*UQy%IyXCPuhDsAy87ev=87JBQ(Yx>ee(yc5*jHtKs@w-%1Z)GPIOWPX+ED3 zy^*nwp58hK2ReRlA=h0=i`70BImM};zrK1h{Q&5PD>WcJ9&KrL-+u3MoCk@~v) zzP IuyZ=`Cq83)9~yjkP{fa+5x)Bj$wQ0)G^X@1y+&2eOb}ynW}1xky648tb7R z!(@Nk;l_NOUAJ2xotW#yA4>1t>q=oaZqNc6w;sW5;w=r2Arro`ZH<7)5lh%cw4gOO zM_4e6-xC#%jx=}n)yp%yPh1nQk$B*?Z9C_sN-cp*iOC@VU~=mJ!PAJU<8VYp_v1Z0 z247O`JA9IUj@}$=dvkU>1${L7pt#$5>N*h+#0k_Vz6T7$IR|G(t-;jiOOWXFqMYk4 zZ}zpyh>RIpquRvq#P-Y-F9k`^Xq!>lO)u1_0=#^I;yGE)Nt)IF+DD9y@D2~8i}k!3 zvms})q`orBFn+F$+gDqEoI+lK1~r>3s6$)M1y1O2GL#18g`FgMBi#gs-n~kV#!D&! zLPE-|vdtQ5dVd`H`{amdSmYBsx6X+TX6)y?zkk=ni^Y=lA7Xj{J`)krE)Wak6V+lQQqbep`2=Usrf?A9i)OI x~p zABBJ@4Wo8L ;cW0hD8xcE>mu2~*mq4qY|#vrqwny$@9TS9&%P3*sar zqcfneT3*>iBCn^5u&ag_VOYPkt%miFm#Ws+Rf8_2zNJ3(G^aSQQ}y9$RFS`!xUB}h zp^1^SWI$BymJ6@Sd4xA(k<3tr3c3`YpSjFGG8b#mu| P0pM zR(&ymg&l7Qz?Mwn{e@FsPhEoc*ME-~?kGqlu;BiAu0Ha%OTcR8{P}3VCb{*Tb8MH> zhgYhC^G1afe9Ruc1Flw|#wSOGfZ#WPM22nhv$jbu3#b%P;`abahFUx)bl1VW?%6Ts z>z{XOJ(0W09il*kR{3eozJMr6LqkL2V ^4lD|3Eo>YyT{0NL2rM@l(Eykd}es zwe4G7BBZutm&6@=ank 28nIq7 _d?Nl0AMF%M)2t+^2=FQ{nzzgYGbcg#{KowItI9B=k rQh>o2Ct{Oeed4+^Czfs&8Ye01q*m#PB;8s;;^edAxm|=s7M9$ z@X9S|o~IQzDvcG0HLMa^il@te3 kiI!v+EujMjxS&fh)Yg@yq$$ za#{YvI4zJ-vf!_WTcr}7j>~rotCq=C1gzK4PDQxb+YUv3W~dSBTBk7Lb*^ qI^e0vo><%KZppp>^WSL;-s>GVg1^rF~M(QT_g8ND;em~?&(@v%*vGF>NYt+>@ zsD5{7S1brf`^E*zC6YBL>L6b90Y^~+JoiwHqRz<+Yo}nkV~*S e9v&WU=4c-N^8b`~u5mS{YaCuAj7n39B&SG9shldJ5G9RR zY>JrZ;G9~8X&iPMhoo6eTYg13=MW?3sW3{SLd2Mn5t5}a&Zjau%ynn>r~PSv-TQ+N zem`1ky*=;q-p_qs|7%%726Ng|VM7#NPu{|uEgKB2%-JOw!?8XRI?pL@%q`Pjv1VY1 zX -o~unV_yHv+=rbx?o#y8 zAK@5#MQy8`CvObcn10)3VkCv2okV(L aUfk>d*_p$#m6xpAgX{aQgpMk z L%C3KJ?F&-ZT>co5<1YL~mKx^5ONBrY(M3Q}@e} z_kQCJefvXsZHdXc*`)Q{85*};cV440uewxR{DAX%VA+wGLBYZFdyB4I830k5v6nr4 z7K|F~8zozZ1xKpSon2a?S)?%YR_GsGb71KG? Ahn}u^M}x0@S-Ckbw?j}>ex|S8RK3Rbj@P;=SUxAhPGlo{ zggF@`232zVe|H$0#-Rfe`*GO|+$sNhZgX*OIP23rv?Gefv`f*Z+J#wft0(9msHu-H zjXmIY&h$GLsHt93KROQyK-)*S^uK2 Wurd$n~pdRS97mrg?tMYkWTbsN>Bjg-cyCe!^`-hzo*vZg8_5KV#XKTv&;Q z1tG^p7D3slh`PPc`Q4q3H+7t%weyCgJu}sRIQ@0Y>c?My^G$a9yiH2L9Rj`=AXU7P zwQ!cjyOAWI% $Qqeh$u)dU)E|f`U@gDmyLW}hJ%qPAjLGUjUV+%6oia6c0OEC;LcNIYu5d5|FEUj z&H*jtLOD8Yj-5}d*UI8*7d@AVN)N877#PW2JJ8Aughu%@*xJGiMp4`ZP{lJDL!<1J zh=PO)G6Ij^zG@Z4Tw46fNDG>4=SD(uFJm9uJEHeqsv$w( GO_fz)z5%5Nsxgt&^esp4&$YwB_6!`K&CF=S*jsf#7Ea;4@Ed9p0Yl-$NP0 z(oY&LbS+F~C4SKYQagZ2*U@+}hrhrQC{bGm<9pJca`@wRl1&xxml6acY$&Pa$djgt zhMtA|lyIg+XWm@uvz(BTu;=s^i4KJ |xK31 _rbgxR>aqGq~qn9;xvq92w(GfR4a^UhfR zwxE`k`J!Z?vb=u%IxWbxkO87zZjy@kvS5J+3Wu3GXkk7XBT-JG#&uZybP`*x(vyc% z-@b&X0BjwQOrVF+jb^3*clr=Xu)SkiO1`}=3i2^v$e8Q~D^Ormfm3S8;Z+Mv%k5gV zwq4>u2mv}l)zyXE-dDKJwWR8^xt=s?`bK&O5DnuN>9sehQgj-~8r^sa+*R{;F8;)b zKMz}G6bC0jW|_!=2e(f-3*;fvQz`inE~xI+kWHA7p|lVQqiAAio2(zRr#E&PY%eAJ zetiVxz+qGN^D;-amo@5ECw*;Xbe%HEJx=82nyy3ZUY!><_v#(Wk$4k_nA0y#ZJ>PK zlH#2?`Lp*s@?IwC3;kiW-N+tV+S`{F1evRBId&FVh#g7Noj3$IFb>JeVujPjofo;k zT^YZ1;+GG|%16vlz9O=yA&5I0WJ9;};3Q<0bDTRgVVCB~6buO;-&RZYE$KX76%*9r zdyV{`(jWc$GwlC9HC5fuVH)(eu-k&MkmFI `GoARPG=Pp~E5cl!WX>_sg z6|6R&MF)Y=07aq;8c+$i@NtJ^eL|~FrbZMbr aJ@!jlkp5J5iVoj*Mj*EUAGIk2ZSe#s9>Z z;Rw_v_bdjShmg+UFCu_jU*m45eE$3^+yIYJFi4!s+FGXGM!#(EoGV =_mjN+qtrLlP%TaS@~MNa*kDXZ@`K08LN zWfFK99Lzrid48KqB%J?C?d`Amqn!G>gLRPDaA1XKrbz{`e7Oro0S&Lp`14 KC*oWraJvETv?4Diaah^}WQO) dcLDGqOk-P2bB}Rescra0 JUF`B@$L j|M6WR|NUqF=vw&m%8)i5@#FaZ7sZ%S bx1jPIWUcbk; literal 0 HcmV?d00001 diff --git a/latest/control_data_collecting_tool/resource/circumscribing_circle.png b/latest/control_data_collecting_tool/resource/circumscribing_circle.png new file mode 100644 index 0000000000000000000000000000000000000000..2c1996f92c68c04e9c9474b80f01ce152cd2f4ea GIT binary patch literal 41673 zcmeEu Gz2pDj ze |I7Ooy9&d<@5O
ogO}QK|>=pLB7z_rP8d?(2@lo$=%oV{INFS;j6KK(YCE~pc1=* zj>AiKRbJjHSXk}a{N3^!!)`tk-T}itHx6qI;TxkD&&p=qUbL)+MBr20Wt6?ItzQ{y z5w&|d_rB)~i?Sk$zjN`}a}T{!M7d7H{*#B~RH{0e{Cymz5E2=4Li kYC>Hc!)*@zX >yP+tBN z?|)*=PffTwloK%}Xx(>PA&Ne(Z`hWf+M+vtf-iE_;uDLqY2VLB6Yc@)24YNdQ)#Lm zS3*c69P?@pW_P=#EC z5h0p!C!bn znM7s}9nR%9hDzEezr%^Lrrl~oF72!m3cUfLBVWnC7JRQ>y&@wgcR%)jQc>zBf7cP? z<_DY^C(2Ll1Na=IGCzY|(eZm#&(3zce>nfSLq f|2cEwB3!1u&bXZ3%-@wK