From c27e5679eec1b98131d1ab16a12bfb145f42e921 Mon Sep 17 00:00:00 2001 From: norareidy Date: Mon, 9 Dec 2024 14:45:42 -0500 Subject: [PATCH 1/4] DOCSP-45173: Deployment & connection string --- source/get-started.txt | 24 ++++++++ .../create-a-connection-string.txt | 58 ++++++++++++++++++ source/get-started/create-a-deployment.txt | 29 +++++++++ .../atlas_connection_connect_cluster.png | Bin 0 -> 78638 bytes .../atlas_connection_copy_string_ruby.png | Bin 0 -> 286679 bytes source/index.txt | 4 +- 6 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 source/get-started.txt create mode 100644 source/get-started/create-a-connection-string.txt create mode 100644 source/get-started/create-a-deployment.txt create mode 100644 source/includes/figures/atlas_connection_connect_cluster.png create mode 100644 source/includes/figures/atlas_connection_copy_string_ruby.png diff --git a/source/get-started.txt b/source/get-started.txt new file mode 100644 index 000000000..ffa6898d3 --- /dev/null +++ b/source/get-started.txt @@ -0,0 +1,24 @@ +.. _ruby-get-started: + +================================ +Get Started with the Ruby Driver +================================ + +.. contents:: On this page + :local: + :backlinks: none + :depth: 2 + :class: singlecol + +.. facet:: + :name: genre + :values: tutorial + +.. meta:: + :description: Learn how to create an app to connect to MongoDB deployment by using the Ruby driver. + :keywords: quick start, tutorial, basics + +.. toctree:: + + Create a Deployment + Create a Connection String \ No newline at end of file diff --git a/source/get-started/create-a-connection-string.txt b/source/get-started/create-a-connection-string.txt new file mode 100644 index 000000000..457991ed2 --- /dev/null +++ b/source/get-started/create-a-connection-string.txt @@ -0,0 +1,58 @@ +.. _ruby-get-started-connection-string: + +========================== +Create a Connection String +========================== + +You can connect to your MongoDB deployment by providing a +**connection URI**, also called a *connection string*, which +instructs the driver how to connect to a MongoDB deployment +and how to behave while connected. + +The connection string includes the hostname or IP address and +port of your deployment, the authentication mechanism, user credentials +when applicable, and connection options. + +.. TODO: + To connect to an instance or deployment not hosted on Atlas, see + :ref:`ruby-connection-targets`. + +.. procedure:: + :style: connected + + .. step:: Find your MongoDB Atlas Connection String + + To retrieve your connection string for the deployment that + you created in the :ref:`previous step `, + log into your Atlas account and navigate to the + :guilabel:`Clusters` section and click the :guilabel:`Connect` button + for your new deployment. + + .. figure:: /includes/figures/atlas_connection_connect_cluster.png + :alt: The connect button in the clusters section of the Atlas UI + + Proceed to the :guilabel:`Connect your application` section and select + "Ruby" from the :guilabel:`Driver` selection menu and the version + that best matches the version you installed from the :guilabel:`Version` + selection menu. + + .. step:: Copy your Connection String + + Click the button on the right of the connection string to copy it to + your clipboard as shown in the following screenshot: + + .. figure:: /includes/figures/atlas_connection_copy_string_ruby.png + :alt: The connection string copy button in the Atlas UI + + .. step:: Update the Placeholders + + Paste this connection string into a file in your preferred text editor + and replace the ```` and ```` placeholders with + your database user's username and password. + + Save this file to a safe location for use in the next step. + +After completing these steps, you have a connection string that +contains your database username and password. + +.. include:: /includes/get-started/quickstart-troubleshoot.rst \ No newline at end of file diff --git a/source/get-started/create-a-deployment.txt b/source/get-started/create-a-deployment.txt new file mode 100644 index 000000000..21925b7ff --- /dev/null +++ b/source/get-started/create-a-deployment.txt @@ -0,0 +1,29 @@ +.. _ruby-get-started-create-deployment: + +=========================== +Create a MongoDB Deployment +=========================== + +You can create a free tier MongoDB deployment on MongoDB Atlas +to store and manage your data. MongoDB Atlas hosts and manages +your MongoDB database in the cloud. + +.. procedure:: + :style: connected + + .. step:: Create a free MongoDB deployment on Atlas + + Complete the :atlas:`Get Started with Atlas ` + guide to set up a new Atlas account and load sample data into a new free + tier MongoDB deployment. + + .. step:: Save your credentials + + After you create your database user, save that user's + username and password to a safe location for use in an upcoming step. + +After you complete these steps, you have a new free tier MongoDB +deployment on Atlas, database user credentials, and sample data loaded +in your database. + +.. include:: /includes/get-started/quickstart-troubleshoot.rst \ No newline at end of file diff --git a/source/includes/figures/atlas_connection_connect_cluster.png b/source/includes/figures/atlas_connection_connect_cluster.png new file mode 100644 index 0000000000000000000000000000000000000000..b8a7373141ea0d4ab1789a3df85d6c7efe5af688 GIT binary patch literal 78638 zcmeFYXIzs@6E_SfA|MKaARxsCQUZ$f-V{0X-g|GMh8_?Qr3k19NN>`6NhqO%fK(9@ zYUmJJ=nx>3C!TZe`S-f!=>C;XBu*Y0eYotd5a?<8DRS&oc^jsy=6k4*lBtU4av zWdt4`!Rgg2xF?(+1mSpi*QD%ZWK`v4WSCXmoUQE~t?=+(gvaR+>1uqXPBZxMPVy%6 z%aa6Q#TlwEa3Dp*eTxBah1L6}{PjX&$x=ZRI{KR}cVbi89)R#cl9xPM zF3b3wiV}+m3lp^Pd^>M!fZ>z-_`%gm4+hUK^s6toiHhUB;O(#r77gI)Ai`@YI=X2m zjwdVR{N$m@y{>Ws2DWSD^Pz4jnH^egDY+efRQx*?cft(tREKAGKGWiTAZ9HL0^O>nBd4e#FyUX^)1bsnos z;y?UG!qU5fgf97#i;#K;&5_ef-QgSvf2+Dw7>SA&`s@xs5kPR48L*cthZFbS=kzd*@k(jX<}XrfY9i+o?R(`RUP| zUH(S*faOQgR~stOGoJ_jY0Lci_XZDQj@3Go_&+%hm<|q}3rSd-;7x9)11dtt0ya23 zZ;He)w9?^GibV67myD?iF&Y}FP!&0}7!==2bIiYg@}@b6m1EE{&Ar6EW{<|oq{*f5 zlz~hz_QCMythassEc5{suM|r^ZSlTco!^)zd3lP>@&`ADtN9C%HzKyC8YJ+xg{Eg_ z0*^#!Jny`0WOTtYoeYdu&gRK5ymWta#A6rqp?!&lz+d6pobppVmKK7sw&PknuUWEF zDe|kA)R-9`gb+VIQLG)vF(vtgzZ`6?N)jIg&meHbOK$ZnC*8P2HhWc&c;IE^EKlwA z%{KTjvGGge?d$%}$zQ!vrMP1L^3y%-uuJp7<>V$0u7*pRzqfpF>#Jl(*tNu z-+Dn#hR^*VcJ#hdq1>Ralp zy`hJ;Li$mgvg<>!E6?_YCxV(Jv5#LCSonUTT@I^we4RQp$8_}*RdQ&Ysg*9D_8Y!d zl>e>u7T@w1K?<8$#VLx?SyfSd)I#iz-jR6&!A$h%0^msN^zL+I;C)r%=a-3sX@V4P z%XBj<-ld}KxoSX6M4UHgy!N2s{>^Y-S^6xZsmQM#obw*@=JUeyz^^j3J%0Ku(p+XIvqPiukvrScN8uj39147&!6`Q9e3r`*!%99p}(kuB-F{w3D7a&R*#tFIRQ1Kp~%RL}P?# zr#(SFQHX_7(OSl`3-~EON1VLJC#td+(N& z`o#gS5m!qdl^B+M(HE&6Z~)oGR+m6RstG6dAOa5QIK61OO?~Zp$l#~0u{Oc}m65w^ zV=FG8N{>H4o~zZX`)l^=^=m9^%J7mAvBJsBH>-Nht6%{iu_-N^fP}KJ0XeQlZ6sT1h-gwoEMM5wia7)bsd& z?^a?dj~MVIrJ&dHsr#p;K5FZ-#P@pniG7Z-ddcH9?(}mob1x)SQtXky_OK z)Q$1E@!0?yU4;I0#XW8=_6QJA_?C9lD z&W;zQBc&yAfB1ffYdBx{RxClR_5;vcT5;>;Pmy0=f6ZF#q*DLGya(~IsY1#^CkA~7 z#b4?@6}7{^kQXf>(dr^S@G6^fmC}b2lXp`+R^97!z}&N)LLac*RCQssvG|+j*B8>W z+`11}s86oyTuslxelB~l)wBIoH*qL+H9;?a{Qi6xyKGsdbQQm4<6v~pbUZRW_G6WZ z4nTkp^G??w1prL6=_>NS@-*safjWtuZ`bbRuQ5Poc)b0ny#O|ca9tH33xBY zxedtYJbL`lwdcG*U*n60LEgBE0WVt5%w^7bcxUx=wf||Kbzka^3ya@!u3mR>wO)S} zz#plw$1*IhGo>DJbNIWb@acZt(^ebhRI7BcfC1Fh`#odS4I@({ z+uD_YiY9o;!R!{WnaR=Jxu|*3wP2?bwUm3PhVCjoG7|FP+g?j_m~x;glQVX1e($n? z=yw$m0TKg2$bq`EHRaaSK`+$Q{V9&RGN0y+prMd8iH-9y zVCTWs*Mxy%l>(LCv_$cuRku~)?+jDmKxGmq=F?j&)#VN;7TE z$n`<=R>JmY(Jy6qS2&W=uD7f^;i<;ro3`xHS{3h}<~<7A?JJa=l`vbPRa2Y7&kwoS zdLp*HwakL&2W?rP8Oe*e#GFJT*}y6(7k#Jrk`3RNI(6f)?K|a9P8{@sbVmZue3nn| zZl)VB>wpL)YAy&8kp9jtO-E$7m?GXvSKeAl36C9DzKTbPe-rN#u7r>K!^5Y;BmA?B zhxZ3Q{eR2q_>cZ>Lx6|(#t!fD-);19-#=dOaBm#--`|%$yv8HK{dW`hew9J+pVpTV z8JGT3COE~_;Yn%8$jjrtH7wk$tbp#e&K|pKh&bE>VwV?s?s$0A4}ZMz<<%c-;{u{7 zJ55~=T_r_f3uh-TGfQW4D=u#*mmmG$iFym;icVG@X3XABjzD)|Z?SuSwh+dZe>~>C z$NXm#4+pV(x=O0dGR|&R%=}!BxgOsWCt+r07Im|<7FL&i{x>=9Ke2nZ9v&{j+}vJX zUR+*Jxt!f>xSt3K32{H>;pX81;93COeSjWj-TUrk$~=hFAKLo?jJSWPq-d)|BlSV&iemC_M_%6vOm}L z*KndgIuq7%w{nwlc5<=;dWiqSanV0V`k%^w=J^+)s-3r$qpqwSj?x{sCh;dcPX+%b z`?>13q^_E9Bvh}kgN=Er$@}e`_pDLW7B?HeB=9z7yc@{uVNFQejTx_-1G4#d+OffKH!rs zKktuWdlprCn-Kppxg_2%AL=(BDcd>lKmWA`*E&e@rD@a+0)nf|FY$iRm9P?-}d+JHD0Seo$W^OFKhlWw^q9JUzqqOW51I#>ndD|GWs2taa9XX zf8`;rKS?@*%MNxK6{J7&_fI}tcJROQ+x}k2yfg)n@p?-AZsE918~p9u3I5-v{lv{b zH;tgAFn8iGj;Z?f>(>vU)|9^ymmq2KNByYC;?j}|G}dzxAtvI4oi>7&9IF|F#!mJ( ztiV0K1~Zk${2ndL$xl2#DA9|x`g*LV#VHgP6hZQ+`yqbD{`b5~ONy#40tQ((ng{&+ zwAb=({%)vJz&o$jB!c2D>IPFUF>IJv&HgP1TSrCx+S=MNmZ;kns5{`w#)FUUj%)cl z@>@k@^vDWhqpH45pE*~*?IoLy*|}Y9EM^6f4fmV=orF`BN={#P;1DRQ5lQzO+XQ7I z&Ld>(kQ5-eVI#<5`v`gIqT0@aAB%RN%)7dY)j&d`S^s6h)gc)6h zwjVMIe_IaF7a9gpo)xZl`h2ezBCcsXs^@To#~%=nI($K2Y~}GgOfB-)m_7WBib$GW z^{|hG)N#;^2VR^%pR5a1`FyxRtbuNK_Lh4bF!AZ`{bB>V(^dOB{85dE=?Q7&lZT67YU!*(6zdZO^p-_i@*C$n4wf=qe=9;gwh_S>P=7;W}Joh&}%PZ#0+c zlVo1Cu0}$?$xMNLDz2}c+--sr{4lX3?CgPa~smUeM1f7 zf@8J>&qVzY{f~Svrt_q8y5v4S?;|j2eJtz*7e% z2czQCznM}VN~nj;67Z;65p$SG=7YE>{O|n_?IpJdzhPa-WjDrR zHr;SKoe~4P0`U4-0&1TJd${H_JasK|?n7T+#vIxwHL(S7W7=#f?pC5!+w^Z1$4Ij1 zul+4h;zHMwqe8(1qn*s_<~ShF0<++psfI2IYVpAVWj;Gel1fG;P7@F$|HhO(Ju=%s zz95Q`XR7lW?Hpr!i4BIa%qeBD2uXw)zYz0O`Cx#uu6o`1e6qs1#%a8LC4RSWk1@CHtB`N2Nm4b~ zNVo(xr>Li3{hPu>`>T^~GnzI9umq}K_|e@YIneBSv9L;XZ}7w^uSwj^2TF6^i~&zf z`z+Ik*!y8Pt8lVtjU|77z{kt`iN(>|zcupksEsCMR^~4J(hN+<4Qolm{z$(Xm?Ji~ z=I?k;Dkb=|TM2Jx`v$Or5n0b_pw#QB!j$eVf$gZK^Gk_u1s>1o`)%v==&%WM^;5K_N9f6&BxA5<}l~Y*q|kwnZp43i9ppNCCgJ( z*SV8KGxlPmJbC0U^cwx+ZgKC;XNRqOTz{+-gQ@z?(Bar%AXEgi6<(6N)VK+!j~3~l z1|Jf(ij6dW{^b~u^t|jwhZ7|AqLeWn-|ffAd_cF2`ILsO(W01C(X*A55e5UhXIeR8 zu>Ck@ML+u?(a2OzsgkzuY;-i6bvb2M4#ewhOYL~VT-eG)r>w71P9vI)>s_Oga}KEe z?7m1hKbmvTCJk9GHKY;^*sf_hJRBaV;x^iytBqH!UlvIR3z~@qgjy3f7Nw#`3OQ3v z(P}jO(`%g`$<5Y@5{AixNvij+N*Lh@+qCgwI|#Qb_YBG7{!r6B>@FHitZ(EpZZ5PM z&F)mG@Ja_s^RnGPe5Zd1S zJ%kYj@o~wclSBa?acpn@&>TT>$Hl)O@f7!HhnHB}X*mc$?A3KTDrDp)4jW;P;=UptJB?pKRX8on6gRIU)_x(ya@$fG1XC2k_w5qXLC;{cG1Z z1zJ4oH!~&=H>#hl>m&tpn(UvGHlH_v7o%t<;}ZON*)#~#W{!Ky^l6Vz4jF`3Os>Rw z`EPVx3_^uQEhFlOp2taudL*0;GSpP-=V-eor0r2B^SGsutx7z;T9r^YyFbG%YE9w? z*2A4eVC-OXxqFNle5B|7ug5|n@glFTMkFLZYx9+yz8a{1t{P@UuZh@Bru@sk)X(qB6h@J+F|tUIKgu(G6t*FTE&tR z2B1lEQ;rSVB3-D^IhNGrzWsn&+6&*eT_ep8}9!}dwU z;V}GAjpjotuaoj(lYPnIHb-erqQhKn#elz>Hw3%|#GcDFj{p@UAzTV0Zi*Ip1^K->T&m@&^1I$ap#oQ@@gP@CQ8^Q*T??pZsMXC6Uo81g07hi95YB3ygu$et#}Tl+C^>c&Mt)!9M#MYUt8gBIRF z@?apWKi=WY4`VmZdidphH<#LBv`*W+H;MI|>U!O}_`VO$nJJF%*KtPLGM(*=I?ZI} zGAnadyed|K0^_yum#=;H{Cfh%if4FIW{X&RpQ8fOJ|er3Aoh$5X!MaNorz$ zE6jd!&}cvCRc2C|f{}mo#->s2o$H_*WZWpeUtHDCEbppJov=;F_cmEiGNSjhp7bau zx+)^L-81NE6c#LU3`R_XO&2!D)O;h}&U3)T z$kpj_r$JFv(oBbEOf(t7d@D70Qg0zwR_j)cqQzW6P73$2%hqY#_AjEXL)~puzTBA~ z!A@t}NZu0`B;)3mNK$LA@cz~pt_c4!e6)pvk&Mhn)~hX>s6Z!{(Zf!#g06hLw&PeG zJYeLG{xQ1*?ws;WN>+M`%qm|?y5SFnZ{j?YTwvB$s?fAKU?MIMc`7lG!6K_V+9&%A zAS8E#cDk~jJr`!Z(K!6rlkPs(_|3G?no5=(+1p>PK~Pj*wW3?q8~g1*C92t8 znKDs&MV`lwl9QP(HQ&`o32VpbrY!8NZ!}F-lkZnvfXm+*H*{)r0vNzFRk_B-zm0Y@PQ~N&?41?JJDbxWyO9^hAs`6Z*%Px#L1o#ZaF$`D3O$5l2Tm zBh)xo2X{PihtL|__aXtL2%5hY+drF`v>3g(i+-{q4d1!>6N~UKr$`P2LntULg5(=Y zf@bUP*WD7dn{ecCH)65q{Z3YdMvoc;F@s=sPc7r7i&6I&sBqc$59-NJtksLG5*uj0 za|Z-R>1YEg!1AwR)ViYRXt?cR(D+m_Y)3cTOB`F?h{Bpwj(sJ&Ct!W|7bUgSV)km) z4{pVJF^wg_Ni%TK(rcLCO%eB;89$R_DcG8qz!+=biISh$F+sE7RvP`3C24>(UZ9(O zRL)L+rB*!9kU=M|Q^5cRcAwg{q_(s$Y~91TVIxSs!s4lh>1j*|2il+pX}Rv@7(VgJ z>K93VcPVHihvErqLVnzJ0Kz;&_z3;bCdGMAn+qD)ysf+VKHY?WW?yx*J*IKzrr*Mj zO?A>Lk6Ye#!~8*&4aZLoHBOc5=cfu9I&j5EYkF|2QJ|(grfRZCPEQlW#*JOZN?7y? zlvIp`U(!Dvq*{xTeOG_0Q8KH0ed_SQ)lG-6HYdEd> zVu*WOjZ5%HNK=wq%D*c*BDT*VaM8^>J=Qg|&jni-2m%Cp~JL)8=gB$(g6RoeGwax_6zp_;mamWglLp76&Dtj0Oa{KlAp{o&u^c=V>R*59n{#H%*m{D-3!9IyJrfb-`&U%Z-Jb_?wcjs%c=ns%M=sfesPKM#%_ z=XNp)oh6hnC0eBS*_BRdB)o;oRPgnTdbb8^u^L)t|sD9K7lt zloHS$kVikbUhvF)VPH2?C+(qbq{eCk;Tn5>SJnXsuD>a>nEpWVQqnRB7%INWKEco{ z6zOq%QI*ZAjENN4@KJ3(k}UJH6M)U5nKsJZyAv+iwY`o+4vtN#1cr$1uDQ218dRET zEv^>i%rP<6bKExB($O(=xP;x0oQe+pRi+yx2kL{@s0M_VE$Qio7(9-1Ay6O8;o=}q z2!Joy!UsM#tEQ!qDy1ZMUh2-GSd|`d;@~+5YKG!m`yjUR2zJ(oSTF8SS%WcU&C!Mly`lGsz7RR^3>~ZXDJSuFjod>g=orSjT!Z4kJ6kW& zJ#xce$ItvRe(I#ipufgr5!(%)>G{sk39l8&jrrnclUksULMj}>XVhe+F*17=6`xE@ z$a0Ozsm2J@2;S`@K5R{;gh6{|ag4oxrk9-6I^s+WXaVABfFwN0P)6me- zW>AQ&v_4Su%yd9{_=jVAcv2QH77uhh(~A%Zzr!tPXcVX3GMZ<@4Le^jsW7{Ar7Ly3 zGu5EvJ6!G;Fgs|U5QlcGjx_myl`EF3*>trz-lAcw!l8X%0D}kuvTCMH;eyubUf=yb z?E@#oFu>ful7ZssXQ-Zh-yekLy#ifCde5|}s;uT~bY^xfM7GvqCNSzNoqCIHkS+fs z()V$tVS?%1WL34>Z5qZjIzMn-w3z_gb7*f!Y45HWwp0lpOMHIy)(%G^{AEgm5jm0P&_G zheZypCab zxy+t6PyrGqTUCP?Sz1PM3Cf>`{2aaDU&SF^EL}C}o@tG!4bu4+IB(w(2Q(&`A_i*X zXgR<2#i?-m7if|F2p0~-6P%xuF*53$y=GV?a-fUZEK`}H*Rf$Ir5YGP@F@k9qh`-F zJ;|V{!oJc|;!nGjq7A5xGfI;y9u6~WRmB;5^wd?rCvbqXCwvR|qCVNdkT8?*&2^p2 zPtyx~EAWHvb7Ma`=znqA|0RHVqqwx%Bk zPK{_H;Y^8Vnr^#*-zDMi>sCK-Cv6G znwt22!UbJ=e;B^TNT)SAr7D;W1_th)=l9>_GN`Zu7lBBUU&~##nTw(-KG>MP-|)!$ zOjc0BvLr%iW(=J*Edg7+<#%zT z+1y^fAPZrfUbhWaOYQ^=3$0Ta(9tcxwmN~s2tUX+sn><3_otpQ&&k709!Lvmg5JU; z(C+qh{OB(xk{s|Yvo%RsO6p7MOv6{4IWwQ4Et#qK!c~9h20K5T8OOmp3y7K;N&L1^ z;914la6dV%7EWpq`_0;FTC_D>o`;sR>|J1f9C?Y!1{KWRJ1_B0y$$f87}sLBhBiS%6R zAC-GuJkd!5aT$@N+dAK**{Dn|wG-kdeA9f^1_EmLA2E+@(FX*W9S3&<^GViu*ht`( z^O4pbX9y>WnA5i>PHlsjelX7|;*SW0jZ0-)Q>7&(%3%UObIe06=!1jN>WcelUy8HP zF$ggVdgf=h)TWIuWdsI)6GoM(oOba>F2AD4R(eVg)#5!LQ}Vh<2cIF*$10;7ZUTMh z*ve`wSO?!4mbomwTTjbJDB}Rnyl!pvA|z+Tnz(>tiz$sVm4ThSyrogV+@hKV@&SIY z)7~aJKyAAi@%+MPm6%?{4sTOIINE*0%>!#>>5-5OGDVeg*cii4;C92+u-G#)fL~J2{ z0iC?nEL!;~MP4SEM zV>z@+%#@S;vm@MH5ibaS@C|SNR{(82mbWo{;w0q>9I)-iB z4YRjXh1wJ@ABDowV`B3LpFl1vX~x&5zbSIY*}B0o)Xcew=NudA!9?iN&pXHb?z7~3 zQl@!q>BBmAe*R&aiz49pdna3qPDMi3h1b#5uI*D6E01V^adp)4lgUhz!FZ)5z2B~V zNN8MYJj@hmXwT{-9tQdE=FPk%4VaR$}hNJ*9Nin{@2@8J7FRItE$`y9nk7`cUWTx|xq`vp_b)00RWFC=& zaBN|cJ!}SItloQ1!qmT))_PkyXy`}yl+cVm<1bff=69&a-7Kop#VP=zjnBRqIU!bc zfHO5Bwn}-_8U@r47T8>@4&hwVp%RNO_9Q3andf`WBFKg70_0hg1Zq$r^ZVj^3&Zv5 zUFKTNnsyf(R7HfRp{*cx5&K8$@ByClY*8k^m(sm?&KTuw`h513{b}V!J^%{I{%!FB9OPkxu)$ zqpHBOuOmnyHMLox2?*ZQ8gzVBzbdrdny_a}bWiCpM?u{2%ojAZQ5!xG_ls!VAtvyl zC=R^~uUs#+VIuBqQ1`0QjMNuToo`F8N%N0xoI4ukv@gHN7cM(m@Kpus z`(=~IdW+)6kfrpCA*FtnJQj@wSwld_hO&nB1y{h_O~wc2p_^!d^P?*M5Ha*&F6E%d z9MWcjOy>S|3QqNx$EdC?vP~ODj#^o4!|JQ2=t!EtZqOh@qHS#VlF1Pqqn@^^6>EEn z5^0tfZrCHz?rp~T*t45Ri`<>_4~_hg25eIDd#}zh`6l+XUoNJZNeO&tijN)CZ8Kb} zptX9^HE6hnPH%Qw)Hobgtn(PC2swci8SUvp7-lBxD z`(@%x*UFpSXBY*blXJ6lBaND|BDRW8K-fOe(90tQ7ZGG~{HCoMd*prsrTkDrvZ~JhhEa7~q z*4y5ET>csfcE}p}%}fUouGZRMqg7uaou8flT{ULs5Qu-re9AAe6|29+<4-&(`8k2U4;DSJ^bx{9F}lb9i%0)sP-bIX=FRl0hrbx|ALCSWNR}hGDCmDXA#!fXa%$(c-{pMZ zU!J(dtm}{vM)unYh0!qUMhch_|CW1b67ph*LdTWgPN;*Fy!cCU`Q<;^_0z}y+s^;D zoqs9A|6ke}^!?~ronEE)IEg`3K%>)4MQ;xWdvRvPT>+vj?Z1u4i$|)4nvP&!43wh% z&BP)xrQ>1WDshb!;lG8w8lXC|^2cPdB~&|TqKbO}60-D$rzouPZ#&PtPH=Xz4|%FA z6#f#hUa1-O=dyl$s9q%yB115O*J%B$=CWE`N5Uxh{W?A91*|_FY>f^^M6QPFUuAk+ zO7W*^H(#csquXd{4S~AuX&W^7hdLpf!~|OxV$v*7sbK4XR8E_JMbDCHq>G%oq;Kq< zMNuHnz70Je<<`}^f0`RrZvs+kZpfQ7Z=PD0Hb@)n!tlv|*CT07AY{j%yP4jUGXdkO zf2Rtl^6U6JOJh+{@?txu8P0w(S<*cBKM4;nl$lvulR7mu)D$4$3!N-pERLanuQT;t zMl<{*xn%z0wO3ELi|XI3{b9fAKS?4&_|6n+SlGXPviG>yFi*dtO!H&48K#8$0tSJw z1A!E62SV(V*|vX9O?9en-*Tw+*~u&wuNwY;uE*=6UtUb2FXFvYpQ051X-vLyC#aan zVbW`Zq*S&lQ2lQcma%^Is2O?g>@zClK0x)4?Fky7z;&)|tVUrde-UsdjEWFs|C=|T zAI@HQVw;!jwAz&aWzMMH;no0o-TC@uS*_r@7R@)OIrYDWU-8DjsF}O~Y#lwF4f_{` z2LS(jSt+Pl(BNOJ_>XA~5~X0)?Tw{xwfmi!#*qd?{y#_`^~dhLSmWh)LQ*?oP8)QB zQA(50iLv+Dj(z#>Td~6`qT&U^qGAwES<0d6K|~saOm}z(;8PmD&k5PUxCfhj6e+HmH0Ecrk39p9{=Tdj=Q-HlvL9jO4PRUr|LM6d!eDg8|UJ{OK2{k~mJSKieaHJxg|bfd|&cbVBAVFR%lObc+$6L)74iAxXp z-wZwm_IC-b`kF7O`8<=L8ZFCAA0pBGh1$+rbt@$d5p?2X(_n0Hyv>|dxbclUkD0F` z{`kWf1|UKFCg%)~;Fxt=KR8wnwQO^?pGS48&@L4UYxI%6)Ep(v57FFv_-QIb=;dCo z@IqaFez$L29K>g3ewq4@_Se@c)CujMS%(l^w|8gK_IxYp^9*NiD#U8JV>?w=K83j9 zwBJ_46t#)W)oum*VJhCYzp1GMaQsX0a2eW$R~L=SsXf*mulJr3vf|uA#l6MLB!m76 zd`?C0`kQqaNM<`d&5QU_Wnvh`Hjc7mhI&0CrE6P5u8vHEuCgTeYn*PGX)%WP(rjxolyn_c6yGFQ8fzHQ)OE{gGq!MMz@NJ ziZq(uw#UV3$8`pv8D3N+uBGtGm_s93*z*Pb1=04nUti3{_8?qO&q_*4$aK<29FEt; zKMTW(qYJcs?I|>4=Uw@{FEV%Cipt7V*6zfPKSHi=gVufb6ASuG4^@p~IIF}gimZ9z zb*pzoD!cbxtmf12U(_ia*yxHc-CBwtKxvI~+kgZ1g|hzFG8}Wg^D>eW=&IILpjNdg z61%8OoH40-1FW}ksDz>5o+rB!&gVs~LaAg|ZL1REFgP?c$!&6lqc+eS9Eiih45*s6 zEhV*O+~~M6dzasH-xhZqC88&rCA>@aRG^P;t2e?h8z3narE&v1JG;m3tFm5=Uq5ON zDz&zdat}IaL8No@OuU<{##IFvr{A(^7)-A}E9|m^xUVP;Zxkmh4vP1!u5J!*XSNea zfM}I9p>;d6P{$cy9G9Th&=HvKjeRv%Xs8xE*tBoHotP-*ZtXJDet^ql((|mTCVAd7 zb@cMYkc>|7af4m2L+IUgeqgm2cIwQvH7|lm$K@5aINGf$C0Ant7Jaxjg$m&3cbvF= zSx4M(gW4Z>GLAdugSjRuK#pEU0Xii{lyAem+n#jQ>-lpRsJ{R*|$$;|_y{nfy(W8~HF1EWD>*8ZIBwggvH99!-wxC49c@FInaDvP% zH>@I7N#zyNJ)7s?Cc;>Cj@Y$s#X{&2L=xHh*^gQ0>tEd;Fxib>$$i^uz)4<-X zH%;J^F%OIow}Ztp957ik4rLJ07k8IJZte+>fvq)bm}GbaGnX%34HhL7`Q^CZc=LAm z8{f)N)5dgFSA2>7>dciv*i@yFpE0&BMcD2GETGfSA+&@3-^$P(E;&u;Fb7PY+e|?l zH3ma44d}M`eshET)kdh0`X5eCsQ^PL?@?t5cQJ|h$nG<;7a%oUsHX7aD`rMroEJ+UZM9UDg13 znu%?hIUG8*IC%c<`?ZbLrdJ%yBgI7|X`OHHz}=?uY3hV)#w@JX1!0EX_0xpXBq1I# zRJM;ehh(}`SDv^hNq^WZQI^6_XwyO3m{{gu!7ZVJMA~<*NndZ~I@AkFlD>5dJ&KE> z%hNYoKiukdLhP@)QrbUq(O=$-aX!u;G{>lebJ;`unyr!bvy4i~yh1#N;bKIMgZsjo zU34^z&Y-!h2NHtOI#v|!q|%lcrBQDrWO*C$E86%o1)-)dXhY}%ZLbuk1QS~BM^ ztk$1`!%h+f7X!4RTNAW`k5q?+@(J@xD?ZnDbiSptQb2;^--~;lTwB3J3^+8AVw43B zYqh1CqYL7#dQ(GLC{$NB*Wf6v1A7x>$feENs$3-j!gjTsDR{Fla$?rKa8{!W0qXW? z{qV(ezc@RXT+H4i{(q0>RJI>^{Y{c5F8va$q$Aoc2t>W*`kdH>3%S)(Tv``ZhYYl+k;ieNYoOh?qQoub|zqKGgE{Sz>iDL!Xek5?&c=SUVdz1(wGM23%}c5io>O zY9PhdX6|?t!Y8hK#fE6vT`i6fa@p3nwyNpP@dO60jvRHk&Cr2(6@ zFGG@Tn@Mkn>w@D**n2=`TJRI0e7~nk~AwyZs|4>2IT?D{4i6EE=?qfQdbNEy<-uzl^F8L zEq=C73cNwDohypcr3h0ho?+QJMV9lk4cBXPvDJ2wq#8y@`WnaU0bVQh?SLk#6fS+7 zcAjO;8dA??t*hndN-CE0wo#U?xEIa{**oQ-ETWSbrXfoQ)&lrZ1VV(iXIMT$tkT?4 z1oOVm$}(%9+SxhEt;FFVFOdB9e7sV!XiiR3KEf5i;S==VkmZLHWvRxz)v3Gp6nx_F z*2!l%p$4gBR zZql&ys5ap;r1BmQ(g-<$TEioxpM>&=YYy{(iefVf%JZ}E`n?ve)y#jWk{-()oD7SP z*DjO^3JboSy0t<3)F9MezYJIuYvlbo%P+C7Rxi=`4S_Wiqq0lp#BG|#C)m8bZ#M3^ zPc^qcW1&9l+JI=zwa)zY-OMC@_1Z!_`4X7s2rlCd!9O*VSKa z$nXJf)CbiMrbgf#z5tCOzN7Tk`T49`EB!pD|MeIp<^FWm=wIg07w1e&07l17=7nur zTDs*1)5O%p8}#2i(!}M1jQW%2ZMQ6*sF!K$u%GO1HoxfFEaUE^a{$C;alIz7)U+|M zs8({3iWv}zt8^ILG~FBGQr!jknPYTRZ^F@9lS{i(ZK(I?1x1(40)pWDENV>>e@))$ zH16rb7swsK=^ zoJxSp&gsT5B0~!Kt|xQPZKlp4UIc)Td|F~wH^V0d9iAf#&u+30{ zq%j`XQ$c}FL`25)aU=~9e#{1+ZGbnP4>}K!-(VxQn_2Q#xwwysfGBjY@>y*juDA zzD^t)zyuiHc^-Y6!lMq+L1o{%Yy?m0ePd|xoR!h}8}9ZMJeQ@a5Sy`*luck13SqBD z*#l6417Pp6%?dhqF13QEUv4O`QBs!n=GfE~ zkUGP^rniuK{Eer5%N0TAu3&_zj$)+4IOMN4<;QzW=sfff9HHY#R9|O-+m>1S zGEC!4K<7Qh+!g&(&@q}4oO|jkhIR56__AF;HX0YFBoR^p=rpex_Pg-GV2_+el9Y^e z;L@5U7pEJ|^%CqPXpb9|x0vd?N-_9GSz;{Wx7qAd>ksTW`JJ-071xr+_ZwJmZ=1vlhQ8-I`sH0ZI9VPThadp}HNfaPlTw@M>$}fJEv@8;Aq>b<} zZi+M6INA1N8aW1^3WEr>5>%sf@^;Wv#RY_k)+d@f3+2aXi}c73+cC(z63j{B$5vcq zZiu^OD_z~ecD^~EV3|bS3N-u)pRc3n?lo0P@J%8ePfy+RCkm11d@+Ul`pun_a`DA#-YS z(57NCcXye`hQ`dpdzvnzQqb;xP96man-Ay(+s+;{VAg9{tBauAaJDuhtjBfilp9*) z?oc$aPCx4z=u#B&S!SyA9kG#nPIKQMN`+--I4y2dND0UW29D?#lwc_hybQLUHb%$$ z&0U$-F~$8XM9Tn`0U~MP4YAGAHYD-4DwvOb8Omg|saos)6rGCv1sw7l5A&@0@1i8yifjQ{7@ z0fZNElvsoQXExK}g+sqhvNQ{Wf>6xPWR3{2bZu$r>HlHxEu*69yZ>S779>PKT0&Aq zxFH?(P_3C;c-}nkeruh@8s^M7 zXYX(9{Oo;zOU&mf*DyQX`R|{fouob=$Zsz%dinfg6Z8Yy8{HNY=`KUK{ZztOdF&$Y z^M>U9`~1`9xs?{U;?IL#Ykh$=Cnh~NAHltw*Ml>F^s9Nx=bPwF&I(e zRqR*gv1{j^&fCq++!!c^9)@F^%2kX_|@FBj>m^nm76oSfOfrx5)%F5&=83%zpv7(H z^Qo**u^3#Jyl`Km)j>br>bZKR3&eBl4zr~5{e|agR$AXg$Ixj(@T!>0>zpLtwAtOL zsGYj9VZ|m^d82I$jT01059+Fa2UMyh<}g7*3a*!}2eoRLh7#Q@vvVNV+sJLyQliR{ zZparB7EHAGGNz%ji2E3vovj7HCnccCTJ10_y3^?%vCV<)pQiO^VfWoyq|b%U3BGc} zr3IAh%@W@^Tlpdq;}is8ANfXZ79vKequ3c7p0w?1yoTU5N^qDL_WY|Cz?0y9So86Q zHp~fn@yuvc1n{9fz07P=;D!#D(a5m=$%pYVZcXxU6jl99};1f_bX^biFGkwaB^kr`Wc>4TnkD(?YEZryU|b zIkcr_Xv?6)o@l}iARJq3xj3A%&9Dfzff>Y0&h;bbl3YtL%q8O@LvuOF{PLkU|M2Uw z3-_(5@dNLVjeTRmciCs!08ePCvaKI>x>E6DinHL(`DnPG%j~2#ZcosNl-c3_9cKS& zP{+#C*|!9~Rhx(@gBc|c*HlJ~d8e`ns=qtA0v*z#k3Tl>9-ijnn6S&S=HvnQYw52` zaSg5(Nhlhhj57`Td1{?~8-_@XCiiQFqh>mq_Mitu0^8Peyv8?r8uuuFV0P%RzTc8K z6>2}pS{%|di365DCi?a)%BmpA8rPnbP1#}bZ9A)6qD^`lw3&eF*%-uklB}NfWf?=% zZ6Vavmu*rYTKraFi3J^A=kO&i$va=7FZ6zDl+#AOg70Ax0>`vhD7iFSCJp#wjh-Dt zUkp8cjhRjz#7?Vzk#T(fVE06auISpO0=L=4AjDdzp=XSebR&*xCaXl{wCMY6mW)y| z=Bc#nIx^6_tqrh1`mCp+)~AB;o9Zjp3cPMdYjnDr4@yFZ+S=Q5m`KOn;#rjCCqj6e z0OUs2ul<{=+9@MFi@Ym`Gq`cXNpG0-#|+)#gjc=D*NQ{n19+?YC6^Q&ZiE;@?Zrmd zB1~*h?$qn?Mq(;KACEmjg?cbovf2ZFuCvHD4aOKyT&%PnqcS@j=#lqoF$K@`L;fcj z&SS&r(FOCy7i|sJ6+eXQ9&_nZKecJPoN0%}skARvZiunMP8PS>q_XroRC}}k9hB2R zHDu5o4ZCz0G!C}7)!H{LI=AdF+9k_&vS1KqTsp*`;@ zC+5NHwBllKT#5OVPL9u>n%YWq+*FeFz0EEN2YxSREvMS(!PCS`p8zm^88cj!N?Do_ zESsD4KEdpKC-o4+nljr+Qe#Al2?{rMc!!+V_Hy@40HsUa*nXgTRdYmfN3_jDIoB^r z6#;zEJIWP(K6@p0{@tN>@uV0-fHg8GJ>}~>fv;R5@NSp$1NO+UOCpxvoI2;&MT9}+ zt%)vZX1&o3K|$a&=||K`oyFxVG+elYM=39>n+G7DUivReix4!3_d~2T%bsK)Qvjoz zBaWmE)^C+v)c_7Z2q3Cinj!CSSxLwY>rjV`Dz(Q>GK2$%>jR}Y;k@i;2Zr<{GH5ks2`IYBBF>oW+2Q+aXr3w$OXBSSxT0$f;qmVLvk)JC#W*h+fYf#&rdNtO$@|1GaL?VW_t)Ydyq-=!qAeC*2vb{ z7@>b>}799)y)zvjr%kBf;Q+Q6}4b*Y&zP(|a*ex9fGgn;K zwZ#J~KfeVD$C){ z(3OiEeRvVA1_qfm#{IjPam{XmkG0f^@-NdBzwws3Cf)kfyH+fEjkC%3YUxhH?p!Z| zr@S-1xE9+{Y#bJIyyR(WFs}h4hO*0wzN!kWP9$mKNxdO|$+kA$HVn`}&Skrhk(Mr{ z>qEm~1Ae=dofy=-$0SSo+_Ky7djrdlKwv=KwRb_qVRD$5_XU{5+wWK}`huf>7A(Nv z7fnV4+Uk?yI6rZ3CE7)S|5Ix<;)-5-y8T40YO>KFLR2)wHbiVSRr$zVjNI7w_%mR3 zyq3CjJ)P`HiMbk-i3(B3y}pg1f|MPV8YU4OngrwZRaX#un~`kSZ8F0=;8q{B4MYGh zI2`lUkd*ak(K51hq85tAccr!lCq;*B#0GHGQIwV#xsH!FGf|aV(L(T#3}22Puw{j( zyWBeOBkA8v$O^13zD!%In*azH73To;d;V1i5#SNPD5g8gL{j;A-UDggNx;cQ&?(tA z!u!vR4Nt|KR)4i-MvgIXkvr9v!C>=(7Ep>f z%_hJXd^wSi3^S+b2wxh!j;X?Vib+UGnm&&VJ)7zr{#ULoI|xHj_{_u8QGm9xq+n{D zg(iy}@ks&6m@oF5Ks3>Vnm4a*zA?(KE|oa`nwdoYKoXbKth!LR!a;@b-@50otlT;_ zse#UjOY8*J-&wt1z$^i}KXa#_WmL4SIq3enfeZDYX-y%^p_E_XZX<%IdW5ixqaA94 zF9AVV!v9}Wr^w7YrVkarJtv(k7ug?F1XObWC)H|r8{UNaON`oyJ@)vO?Ljb3Ck3}r zJ42(T>h_;=8LRytqK2(kwBG)+g+Jb7{dom4X%DMXGoFTmTR3%FkFXyt#r-GWDsX`Q zXPVi-Z{T0m7$faJQ`6K3k(#Qw(N`lRYE#gtv?+1ChCg#g0jeY;^VZjcfPKGi;cYX4 zC%>q6L;0V{@SB3mvpfVk{_WLiTfM=i6fL&uAM9mUqmR8*@hj6lYD|M!hq&H01OH|* z;46AKrQw(I@K4_27h^mp{arGhn0d01)ssAh(@jtF%KbWg0S4*u%G~>3sxkkZvhtjq z&gYj!f8@|NZc1|1w_EFmU;Hb{`;rJ*F|Wc0P>pU+*xMu{px zru^%*HnDA^{|WXvfxs`r_t*B6U`9f( zQr2p?e|N4E2`nPpszCgL3-~LAj)MN|XAb>E4ESHh^Pi8!1t9TLuk1z1qyJeZe}9S% zLn5!3y|yC${^qZZf<$XnBgw(=-fVXG9Vg1jZcfj>nHvA@Tp$uY#Xg}w9P;l>?|=9- zV?cI~3ZuFFWhedpOww{BIh}J}To3;lv%f#lksz@E%10A_;3a<9v_F4) zi+>H~uMDLiTVR>z_O}1-90n332B>b##FP84TmJmF?*$TGMk0D5^P6+5x=3>VZz}(9 zD*ta+{{OKn)q&MIb3Thm;7f?=$K&4#l6-pg5l$HP`1i9<)xT@lCPC-$38Kr$u@wKm zWlBgu>OE9Btq5KzNc35s1O9KM7z)nAd&t|5ojv*8!(HknlJQ_pWVtJ)bJ6WN4+;Mk zQ~!vHY*TcoR&`R;9y^t*%h!s zPqF0?jI(T8on*s$znyk_dz6hv=@|zIqIUMG^?$0!k;JgR324QGP2u&v-UZ}t>tnp; zdNJzedVCC+&z1|~Z9=?#D~r@@*f6G2mJ^TG-w8hn2~_0m1Z&V2qkE{O^<<5lL|C;-mTgwE%ilCAS=vvWLpGv15G24M`l9ZT` z0JKsFOC%-NcXSN%Ce_o>sPS$>Oi+9Lj%R-f)BsgN*z4}viNi=BtzAmtHd*2L7@$SY zwrsY=eba8X#kJ0^z{};Lph1ZLxBb;zYytRvX=$=Q|I6O{w`1E(v^MgJlaE!&MY3jE2E#gWT-)v-;B9s|F&t7?E~mD+ zjtY4V{~Z5&q;=&_YaoJPAeW27Eo}nXz)6(7jJ;xRaHk}9C&OHHAW(v{RP4Vp(|=BP zEPKFR9N25Ly5a~NdlIVR67#9WQbqo^K$Yq;X4*AvScC*8Zk+k=bQ(27?BOfUhaY4N zHMYEHOEHG+u%hw`)d%h2MLPDIE5H(se@us8KCLMSq+^1_@Re3k!P$kj*PG#`-CVjL z>w-cB9MV!`uc$|w)YJbSoxf<+3`oZSZHHJd9*fBzR*Y?IB1<$6s>gX_3XtWIwERiH z;dCi=!Qa?5cTh{PmmeW9+AbOEw0yxqTAKxOr!+q;V0PTOecIn`ZuA2sy0T87fIvjs*F7QH ze2n3#5r}G;b!NVVJ+ELuk7nNQ8LdLq!-I8o>TP{~3x|-G9&>G)d;L2p^Oqp#vkWLl z2Q4meoV@Pd^eMh?vji+z2dfkpqykGyAe4W>IDZ*`q{rn$-Y1}ohh=GNSWY+|XxW&P z2?BvCa!a30s8oz$k53Vs{cn*X((Mt$Aw?XR`K+x<^ZIdcR#jEG=Kx1vVBn6e-K@L* zWxM`G*dN<<4HuQ7QCG?3eN9d(A^fV&;&zNL^*TNbm-un*Z;dZw45z8roK0)1HDgD} zY_s#M_$JjxMScF*#qoMt6<<2}ZzmTA;~6f@r>uTr>iU3A{*c}9<7#TL9c`s*G+(q2f&;4NtUO%?KPcjWo3be7bhF01qFheVU*s$ z-%BpKGE^%JkeG;)3p1xlDxbQJdgI4ycxh>AYOnUDow=wt^Hj$FROtLM;md6jz)oOp znKjM~X`xl#s%2YQMFk`kI`vA2nO*)--|ygb0hJ7~PSr5t%+Cfn#x&^Gi>@kzxjvT~g+L%o08nZM0yVI~|o2%jK8+p_b0WGP6*<_cy-BtaZ81PO&q+^&C4;0Aod2-aGa(U@Ton zztacL>(`%pys73&+hafr&V`<8AVBix{@F29}sh3#tcx?u5( z;r_8B@zdNc2yt;)70)1ge?G?fjmE+i@~VI#k~b3_@C_J8qt|J%en)?Z)n>Wf5+(d% zO9GLhbvMRftg$08I&Dj;Aq*g7QktloX;QGGA@WN7Zj9piuM-t(8;~E!OPd`+xRVS) zw+60v)xV|F1G&`s^G)P*uXJ)r&ya`w_>mv#j7R(SKXtuwA0&u!IgQ^y2JY+5hRXmN zz4S&dwy;~i)^o{K%qSLpt^dC6Tt5BPwA`iVTd=K_LM_QJ`%re`c30jdiynH#e6tIAY)r`SXs%0qq9<)$dz~ zl^RCO1p(*>pNZrSx?+!-8_M*gN{p%6Q})6B))&pfCf5JDHL<*~E@=JcapY=}_0AUv z092hi1%wmS_d}7k3fjeYf+OsUR)?Q~7YVwNH6Rnae3|csNtx#&4yarpSeXW!^mqp} zt0vm(mG0_GR8N+8+#gi;gY=ihCg6ne@-B?n6>Z$*xjV> zp%2?xY-B5$#bg4;>dMy_fzEo4VR{N-WW3^7aCM}7vHL;oJiMAY&Q?`Z`piSuHL(QG zM*3V5B;xXs@-DA9?Sv(Pw|h%(Ws+rC+4l3ele-4b+;We723idJ+-k@OAI!|Hmj7xL zBXQWon4orZ;8r_u2aWeu$OGndTI?F6s{_!%_mrgEW#$n(&C?!5*+{3DrvMQjEzKth_9V+|wCM&rZT(dH~mDdm3@%5uCvC`0@D6WHx6%dZ}~f+xKF zH5`ku?z_Thh0B2pdx`+3hv74~K(b@j&3fnl&jD1k;$q|WKzmn^j_x%y5zuHMvj;U9 z9x`~yRU)Kh`Ovm)?$~70aY#Q9;G?kpN%mJ6^$IDRB|pLvN-=U$=XA7ncpOn^IgqoR zjfY*FW;%ZDuDddC=T=eL;Ic+h7Gcqt(yO~3DG0N@NMF!16vAsRX1AI>kO8#3))+mk z#gI%Mjeh=^;^|aB*LD7}&!MnNJng@%uWZ|ZgdhlDR$~06%B^z%aPQ5V`tFNl4}LC{ zTQR$Avl}(f>5KB8;T$1JI_$BVV@u(y(|N3=K-W)?i+O>KrfLm#&Z_vB!`vB9#yRGp z4sPf#*m@oO^fzHu&s1nMTKYs+JItuZOI7GCt4@7qyxN!0&}~X)cpCl*5wQvcAbnRSdwku>&g+%5fH z>Bl|k)Is6D1RU4GQA?2R8^>GeU;5vxQgeg=uO!SIQ2^-o6g# zIAaxtRx7ucvvmGnKAR^Z`{~RYpE7TrUotFBbb{h|&4 z+4~M5+E+WWWv!Q0m3od~z_2C>;gQIx)aHIqqkf}auLZ=8Z6I1=`};ZIdSn)GJkd6p zb*B>|%k6!6S$@h=S)XgvR_EL`_KO=LK~5(BSoe@~JQbBUs__KaROmQfKZ6D8HmLq{ zoIL_4;hcLTYE^@F@Q=B#H+>KE?8+h*h#AIK>iW>@m9F#}!a#Vb||ie_nd z-i~d`SBFAxPOg7IV6(2b1%D{i|NK!eMpeK7;eOTn5y%SxI^SxNkI0_-!GbEY?G8}M z0wMkZw?BVK%{=0<=1+a`g%_|5MYAZ=I$kqpXQ5f4k<<6A@|`SA@)DBF9$pMW)=WvA z>b@3Dy9HP-J@;y|`v~qhvei`TQSP6+zO-H0fHXJ`+@Ef9uc8(+ptuS$WOl7ZMyAb} z)tBG8u8)^}eTz?Nwj>+VV5P}CnT>+>tnB$<+d1`n=7%lx>U5}A?LyCxFS?lR)q0_M z7Zw=HxrVtB*s#!Cf>&&Wj4DVCH~dtBC+OBQ%I`yc&*t^gww?Vt=o>tya2o7pT*|m# zGo)_KmJC&u9pIR-Q5}L$FVvYY1c8fpPj|8F1ZiZ^W7=%Y_M4=)p9rY zMk*)tfRxcfWYQ>W!UTn?gHdRa*;yVvnh3?$n3{sWHgDHd$hrh6lkj-mKdee{VvqVX z-LD5a$CHn|=FGVKDE5;oFH~1oz|AyO`9YQ+wl9B?&KHn(A`Lk1*khih{OA*pv3_3} zBOu#thsW(~xZ|n*f#NEB4cL&-w#f)XXzHXSCNXQzcQGk#=dfg2Tcz-UE}o|e_@)!k z@_j<4i)=4+l#sComrVbg4qs%M(e_01G_us{jgn3|zN)Nv8nS@VM);ywPf%3QS8h2W zx&NL(F8UeR)of;Hs6A$#tp@`Hjh*;`v@>U@wdw*f2Li+JQlUXKm6iBzMeJ|N8FrDo zGGGh$`PQU4R#jVeMQbAHg8uK z)94GonL%m-+qz2f)wb7a9V0Fx7}iCZF0IGgqeX*Y-LN~T8SD&>3B>KL|( z=%5;(Km4{@F7+0NOzNu>@^X{i%E%3_6tU@kG0%d;ht5v2$JK}L>D4Z>*PPJ1VJR9^YcTEeE^_?o%zi1K9M{h&g3^G^4f#oUV z<8TaiujFGdTQs9TDhA9{vNsl6wikGHbWK0!)NgVi6?lKUM^vKW4KGre3vGK%?Dr9m zSms=&&6_hVvFNYFVE_#D-or5X05lDyayPb2j7X)nOi{5h;-PTciV*L7CItaJZa*tH`ecUQh!XvKM91(xb)ON?!2@yxYNN{n2YgXnz zmQnKLcavDSt#fC-!>8@{@ODtl)J6f;_wpn^4qM}WaqOdf(u$<}3SqI26lJW=lV48d z)s89_BxuDky_7OjdSGFEgYfS0bly!nwb;?OSRMR&sx#a&Ac)AkY(AZBKK1tNn5Rb} zrVIFp^JvIZm6*BgAzKoiizdZAh=oBpcPEo$)F@(;DzBojKr#%$*M7tLT02o?Ri`9?*+w`C4jX zIuvPtIJcCaiaNdf=y^IeLFn@S=<**`B@At1RI=!LEr+YQ zPffUL$3qm=^&dS&dn>Q&5=qFbSO1*&qu|TU%+TdLC9MAW@r{e9I|z;;!zM^K$>+$M zuypI^NS1!6d_)q^(z7e9zQoI*9$2o1`e-5QPLt+aT9AsO^nTndPco;ia!nA9`+ZuoLb;z zc$HxDlg*!`*hz%1+f>JxRzF#0FZY}!;(cEArYZ2}Fa*j#8-v5t1mwDn{u)WGq$G+SIgu~%26Zoj3|CMS`{z# zbdWV-v9IcfaWyR!CWUE;G!P%E0Ir8XLBDIor?wZstQ7@+bg3BsbI~Qrd&Mby%4q=& zy%&!pP#?WwdR57}3N$rDY}Q+K*RO-XNvB!DBqfjC9nLmHX{vGc+B+m=-N|HA)#5Wh>E198T$h$q8YZ#w$P0_ z`qpYRw3LIA4yAkMVbGm4JVn>6U|#po=kc1HRnKiC*O{pP*g7v|=~fOuTW1Ga`pj+i z6=P6*_O*Ybota^#5>=oXPE^=7{qwabP|N2>E2PpnnV!!SxbtVDlYa!z5h`UDDr znIen2lUqgw9-5PqyLj<`%>RFuW2^-0J!}bG(=|(0YWb58B->{s@;7IU3VO|7i>L!) zYbq5$SsT?)a7al5&Zt5!IVual=Qa7hwb|LwPi{ZQ>F*<30tcP0oa{}KOgt^5sV*@jRV5RCrB~v zk4An=%7bdP30FK|Iix-nI*4R`X;)8KEU^N~eJ>$Ttd3wF(nv2;h^3P-;e2!#O;{4SM1eT@m4-}KRK8BFmn%Eq7YwCY8%-j3aS|HDADhFS zVI>9jS9;(5u6nE-|LZmkED|OaeS|2&$i<+Ziu0&lY;=F8*JX?ODK(d~K_-R*9Vzxg z`sZdO6>}b)|3k&UE=N*fKfN`f&slEc`PduY^gTTM((o(J!pvvEtxpS(q5~r3I(4dEXAWZ1)x*UMO5|+^h6d4dx2S57`yiF-Spim-qOr7(Gx& zhZ9VUlHMW^8q*;#uF?3Cyq(?AJ;q%tDdeA(_H%c#;;8E$2KdSX3d`rt>o}$kLdxei z&uzVqor?Na2)N^vHX9S2p6-j)@A!R7sOLEMRf29!WIYx>F;`Shknh%HJVHdK-Xk_@ zbz!)bJk#aTw9??_sKEn)r=)ccYjW;{(<=7GX;Y0J)m-w^Yceo)BRxHzu^% zl5abMsvCBOU39oNN};4M0|6;F26kSVmty*B#eVm+L5eA5_6|R3rqjY%csM7Hzz9JE0Z);3!5@_JK2L#JM5+yb_b0asHZcz zGlc3ngE=o6aWchk98EciS(Q<%T94be#69Hg586!{i@o=^l1I<3Rd45Q+FE5HY|r+l zj6xLn0-5ZKVd&hfZN($Typ(`+E;#BKP>c?CRCM58DE*ax~Wmo|CR- z_L;ml3IcR>uy$_y3Vk~F1`1Z{&4&IuA3F9$N66ZxR!Z{|y%Xx8ecjrI$yU335fQp* zsR%MfY~@?<6HVr}G}bcyBBdmu=u8eN4C~W3B%FF#!5~hk^v2Tmu@pY-sCr-|EIpW-u^i z4=oZ9481>uSA1=xI6j&AM+TE4Ztcdwdc}~l{0OFr}{;`PruBB47fIKjFr-hLfuYEBJh&^ zn32sRV6I-qlQN>&+J_~+lBB8vZU$T}Zm~ju-jzu`=jDMAd!+~q72MaFD2-vE2S0pn z(DCVlsm|VfVX1XK6>s)>kYm@rkpWN|vYAo09xu-XiIS7zqZpJq(AF4%eP>%`W~nSo zyu&UwGF(|A*es;W>Y&Lo` zztRA>e#F3W*3~!GtZ*>YpCEEs@9PaU;1QJUIp$^*O_Y~r2ci;vo4bD5hLV=Wp-^H( z3L!E4st#NaozJ)4cljvu)X9BV0B2x6pyG}DlbDLzeYLl?+g92PV}lX48YQU;ddDSs z*D^+>6LxR`HvJDFVn+Lr8PU~ylXdPL@WD)P08h%34b|pqmCm+Tdr-$pYz5Q~xS;0H zToW*N^x$SXWT*&ym@?c2G*FI=OgpHbJALBX*}Bl`d?fAU`^0y$T2EHw`K0!4sG9iq zQK~Vt%%_J7=Bp9ir_mj!O&-CaNOM|nrJx%FA-r(`FY}8H=$2Jro@q&3Jbj4UH5F~x z0x7m|dp(*YE(OqK-$BHf7!Y?@b{q!yoNu3c?obA=u`thYYpa!{TMAYlW!*u~`WBxV z+qla4b-eF~8eq-b(Xqyb+Ba+D5h0Zm6<@NBN}%o z=i$owtJwL-BxLD2_MQ&U1pQk~g%~-k&`)H(MS_Gc*rhLZ_*>YqpGh zc*ZZh{J07%k&?Dcu}zFb;_6Rqrt;d+!CiLQh;WC+>cS4XS{~_;(^dX(cR~b_I9ITL z#b8>$daP`hQ(J*CAeN})Wyrl3myeP4v39s4;jrcCfVEVwF)3f9H`8m8Oc3#7r}q3* zyu3^i*&zWgU_eXTbjTOL8b;30XfWS6R{JA5Uc%&Fb}x`7pOE>6MYF?8p@k8l!7;B* zYjdTW3J^4$8WR$puT{m9c;nazAYdqP&68Kqigsm(7fl8~UpApSmCbDhi_af5IkT6a z7l|n*K{^o2QasbzewX=n{73_>*p)cQVvFG*HI(%IU*{xPNNN={<&qa=h9(CcWI{KOl9Ri=f zmOvCpbtcbysQq|ty7K*oCY{5Ot+klYWdTfz?Nb}jDZK2I(MS5USmF(^Bn6C`~z)ggMLwDDGiF-hTM{oY$Y zup-2hI!?C|i~Hm~Ee-@?%yCUk6omb7gY-0PmNKWY9>;tw^cuzKC0@y6q8&gO`>|87 zxx7loB?rsnKt@@jIKwLwCu}Qqk28+iR=D6dlGq#HAn|m|#3hdywB);K{k9Vb?{ktT zgwVsyV^A8u9GqGTAG~nmH9}=cH(0XksOi9ODh$22Bxk{PEJXS(q#P)?AkRIp-io4d zsuM>H@sQ4-uBaRkCZL%+Hhm#M&^+F7WvgQdO{Zc~!ylsHFqufKaaxM+wNcpS-|CAE zlH)0G@-#9)6UA(Y8Q1X|uKH%^<9~jIb80}wzF%{K_3&Ylj<~{m{*G$6~UVjC0Ei}}snrWd>-2}^~xS77(47kD1A26N4M zk(9m>Gdyl_t=F9lvk*%oUqeJWbmKq?FRyGy7Mo;MTOci~p{egVvy?tty)7jLpp z;}u#JHu&~q5jlik;$VGIXl)oIn2*%ajS<2anI0s`YL!~2E{=Hr8zPEyUuFH z-a0wX>(k=X^w-#UR{*Ai`8^%kO7LL;;ogDNJU`pLdzUYX+@3#G@>Q3jIDj|PVyR6_ zW3PFvaK0f}ihK#3i0JO`pYU~Te!*LhvhS?5E0E%(xf3dgZ6{+z0bI5CKJfqrBm9((xlC?~tU^Ya9w+E4;3BGIkgmp%Gf#%cv zWmc=lawFFRxVZ6dheJm&2u3Jg1rN0H1uuIMW4odb?S7B~s|C(<#596ADfEVJM+7FX zUMJdb$9dVNlMdD?ui%=XF5;txK8?KVwXY}0Kd9>qOms-O%&r?5-uC7(3#Y_iM2I^D zS9~abB8WJ`rkHMwY&~$S^*OU0S|D&Ys3Z<6jj6F5>&vf8vh3LJedh7naGD<2)0$b_ zwi#LMA{&Lh4u2}^)i`h;^^`ThqPG9G!P+zx#=qt zZ<9zl0<#(+zLvyyrjWFjPyHAw2e;?0!rZ|2OHRY2+Yg7;H*Kl&&ElHYWlNi%fb-5T zM*K|idJ^NIb|Q3zCmC_C!u!6gbenxnz^(LDeyBF|-Sc{tl^fdK>onC3jqiW^<)doN z#)Pa=`j5LoeV#)OyMzx6d!|BSN`m@X?L}H79%8#kHhE3g3DOizAkGOBo+&zPYI((T!8-r>iZkUPLE?S4jcUtfE4zMuIM9)$I8+ zsD`ss5F1y1n>jW@v5WjyV=^-zI*Fj}fYF|3i#IL#Dg$-4D^G*I;a1T;d&wP&AfO3+ zJ0ors%P}*Pz-K!qkqNd*SB37(Nu&*UwaB7Ox9kh2h+Jck@d+4r+>_H=W@^q5A z#~renzKhzf)cvupRD4#8#9vNlw+HOuYgiNs^xyjfzs63k%Q6<37i;q0q_9?7iIP5o+y4&*Y;XoFXYV{PK}r7WocS-?qC1hDaxEGF$d~_G}s^GR?U$zuP`I zj~9I9-K%mRR4L*j#3?#^LKUF%y@h+YdRy(u#e9(*zvzdEd+fKmEmCYcLXY9D{a!aS z{3hY8&k=^RnFXs~DGrd&tsCD0sR455IB(KMaJrd9np+KjtM+h1MixZ>*N`0yn_oz+1uTFw(Rc{dt1ndD-kSVej3pRL!7| zO%`4laD+GSww9JNH0r89U~`)%2JeN6y9R;lt)|rU(YeC2qvj>aLl^vnmLjl}ofLMy zfQ5_|g?D-w#y!X;nK{4h^o{wF1^fy-F$Qx{MHQcaj<)S4kTPmd=Gu{bJk!TF$z|)C zamR7r#9w`bxJ<=ZpV;1&2vIM*3dK;5t}UVw?yC@mn!|2tKCRUUOjt?_l=v@P@8&`wRXNf zBElfzJz_Y%?Mk+xI>6P#KjguWh;uKRS9ItkJHZbvh~g{WVs(GcsvL<}&^YKGJ~eST1BE&$u++FkmFXE*K+!r;bU<-Q(c zD$U{g#D_oS=-H9B@+Q!I_;DSzFM|2bFk`FDQ&eJ+!dSGgX^Tv~1k$^sxvAb1%Q!8? z2v=xZhudoF3rWFcluz@Sc+eA=AHT98_D5#!Sm4o1(`3KIG3-&~<8ReKUa#!sp z9-U^Grk!G<*+!UpGQ0@^BPbf=&14mRG1YewBtuL{BfHm)oTR*)7a#tyVdJ5Uoix6DFy2!zlp>Ktfk9!qu3u3Tq{;epKRw2jX#ZL>8wrz6m zFN>ZheVI2eeEw47vX!6yOu?Hc5o;!3DKsCbH*8M>mK0t4u1j%i(O?-`a$2Y8A->$~ zQc~R73gida3#ZEUGjZlJ3B}~KS|~whZcE#!M>EgG%B2JeX@{>J-oU&sZnQ&OR?SJ~ z6cbWeLh-s@v{AH98X09WoHK38?KHJ=DB#%S87pZS=`MOXgtqoWtAdCGjyw%KkWv0j zIS*Eme6ff6b3G4pN&ww-B-j|7swdxTNvU6hws}tI4cZdx!c!ikFQ$YjIN4VTfHbm- zf;wlxd6zc>V_;`vBhtf^Tfvt07wNzvRw%+T4O`<0W(?%j0~&1PE1K7>OJ~m!iY+k2 zx&xs{0Qh8u|AP6ZS!e!dux&(e)*ytFL{?yPrY6J7droz}oW7Nikftdt=;QI=_hzHd zA7yC$xDr)M>G)5!IbE&c3A@vt5lXu^BTYeqiP%V=eo=ho ztI{acU|aF&-BvQ7ZvI>%VvI=o?On=O;qrNy$A+Vw8@HEuNgG%u9@pukttGx^*o22% zT}?u-Qgq9mJS17E9R{_X><%sZBU~F>&n~6|tA#yORnkw&zp7_~dK|!=Xo7Lg-44_N zp^NJqUWW+d7PFnMg60?cn#uFcI3K;w21$atUhM_i!>`u77G4zph$o@_YWSrV9q#qc zVNW8+QhO`xkchAXEp)ahgoISQ^XX@=iG{eYetx` zp_C43x>XI9<;|4&bPra!5fTki^Q%$aa#koLG}aGPpe<0sk7D55Pb1BEN$cd6##J|x zJU&b3RtAu z7=BsByWxXE^1#Ty?dr(%;>I%ULjT>pWqRDGjH`s92wNMb4=At&Z~% zZ$d4#>M?gzL@B-#EbL!{1Lb7?!#Mt)~+dS@)w)cFFd@Pse-Fl`tb;|!uJ)}ww}q_>6oPL zpi;ejAbR2(=k3ZVmSHIVGD1Nf8e{PKhEhss_~qh(P;Y$%`_1SMdl9UV2I(!R1Bg2d9n2Dd^bc z^Rr0poN|E1_E({M-}6-Ji8=FJK8MT~^gBnykE6M{31ffrIgU4*wd4p`ONcciCw#wK z*)+K^?-Wga;p;m6hWd5H`ubt~N(Gr<<;(!Q(8`3sq?UP^d`0YxS^K*4lU4)$SBP?C z3du@H${^E&8E4>NO6}Y3*VXS1%)4ypYXzC`eA(CqPj`n#0p0!6(rO~emr0wSG1?pq zEN}|V9Ha5hd}1u`d_Y5KzvT`|8J}<3Z&3&-TwEnSpM@ICi0M2iDRJ11O*5bAGqC`K zYVujn>O~l1=ghR4r=?Hk=YZN=8H9TW(!AuoIA}d=xgYB^l)tLRoCviJmMp7wLk1FE zTXgwdXIKqsMxTfj<8Q$Ag^YRBLx)r~7VkEh@R>Y|5x&x2os&~6S*>g zA(*d60{LS`k)ZiZKcCzgPlluW{3^1#!fiWN&(=HdO;T~$-IjLZJ)8_v=a4g>#f5-o zUxtd=-CPr9RN-clxzD@hm63L(Mk3JB@2TbFR(8=aUx^ZWu|6f8qZO!nPdZCU^UitB z8ZY6=yC>|Xc***-A6h!+ZL zuy0}e0pR*063%iNR+P?B`$r$Hd+qP%igg|LCr0tl?ypl3t{xhJRk`fud$f1cS5@kD z12CE}^+I^DZJW5d7gUailtyhC^P?XM>B4#Q9&ZF*^|GV54{LxVTgSqphuRT!T#c$r z51Z^KIG@Rexctzils;oY_jq9Bv*1NorESV8{;IF-0)?E$qEFNUQ^B7ObCCcOWsa?U z5hHqh54BV1EU+Z>nZ-xCtL-PAmwSz9QXJ*LM7M)05|U%Vx952{IA`B6s~#UZ<*IIL zny+*<9tQ~kULOrjW1ht8?|7=yaV^PwcCKorXAGT7H=G>k=qMc{>`CPl>Q=@)qQ