From d06197f663c550fe43814323a1b2665be5d463f9 Mon Sep 17 00:00:00 2001 From: Balaji Subramaniam Date: Tue, 27 Nov 2018 02:26:15 -0800 Subject: [PATCH] Add documentation on distributed Coach. (#158) * Added documentation on distributed Coach. --- docs/_images/horizontal-scale-out.png | Bin 0 -> 63835 bytes docs/_modules/index.html | 9 + .../rl_coach/agents/actor_critic_agent.html | 5 + docs/_modules/rl_coach/agents/agent.html | 174 ++++- docs/_modules/rl_coach/agents/bc_agent.html | 5 + .../agents/categorical_dqn_agent.html | 5 + docs/_modules/rl_coach/agents/cil_agent.html | 5 + .../rl_coach/agents/clipped_ppo_agent.html | 14 +- docs/_modules/rl_coach/agents/ddpg_agent.html | 5 + docs/_modules/rl_coach/agents/dfp_agent.html | 5 + docs/_modules/rl_coach/agents/dqn_agent.html | 5 + docs/_modules/rl_coach/agents/mmc_agent.html | 5 + .../rl_coach/agents/n_step_q_agent.html | 5 + docs/_modules/rl_coach/agents/naf_agent.html | 5 + docs/_modules/rl_coach/agents/nec_agent.html | 10 +- docs/_modules/rl_coach/agents/pal_agent.html | 5 + .../agents/policy_gradients_agent.html | 5 + docs/_modules/rl_coach/agents/ppo_agent.html | 14 +- .../rl_coach/agents/qr_dqn_agent.html | 5 + .../rl_coach/agents/rainbow_dqn_agent.html | 5 + .../agents/value_optimization_agent.html | 5 + .../rl_coach/architectures/architecture.html | 27 + .../architectures/network_wrapper.html | 120 ++-- docs/_modules/rl_coach/base_parameters.html | 62 +- docs/_modules/rl_coach/core_types.html | 9 + .../rl_coach/data_stores/nfs_data_store.html | 501 ++++++++++++++ .../rl_coach/data_stores/s3_data_store.html | 384 +++++++++++ .../environments/carla_environment.html | 5 + .../control_suite_environment.html | 5 + .../environments/doom_environment.html | 5 + .../rl_coach/environments/environment.html | 15 +- .../environments/gym_environment.html | 91 ++- .../environments/starcraft2_environment.html | 5 + .../exploration_policies/additive_noise.html | 5 + .../exploration_policies/boltzmann.html | 5 + .../exploration_policies/bootstrapped.html | 5 + .../exploration_policies/categorical.html | 5 + .../continuous_entropy.html | 5 + .../exploration_policies/e_greedy.html | 5 + .../exploration_policy.html | 5 + .../rl_coach/exploration_policies/greedy.html | 5 + .../exploration_policies/ou_process.html | 5 + .../exploration_policies/parameter_noise.html | 7 +- .../truncated_normal.html | 5 + .../rl_coach/exploration_policies/ucb.html | 5 + .../action/attention_discretization.html | 5 + .../filters/action/box_discretization.html | 5 + .../rl_coach/filters/action/box_masking.html | 5 + .../full_discrete_action_space_map.html | 5 + .../filters/action/linear_box_to_box_map.html | 5 + .../partial_discrete_action_space_map.html | 5 + .../observation_clipping_filter.html | 5 + .../observation/observation_crop_filter.html | 5 + .../observation_move_axis_filter.html | 5 + .../observation_normalization_filter.html | 31 +- ...on_reduction_by_sub_parts_name_filter.html | 5 + ...rvation_rescale_size_by_factor_filter.html | 5 + .../observation_rescale_to_size_filter.html | 5 + .../observation_rgb_to_y_filter.html | 5 + .../observation_squeeze_filter.html | 5 + .../observation_stacking_filter.html | 5 + .../observation_to_uint8_filter.html | 5 + .../reward/reward_clipping_filter.html | 5 + .../reward/reward_normalization_filter.html | 29 +- .../filters/reward/reward_rescale_filter.html | 5 + .../rl_coach/memories/backend/redis.html | 441 ++++++++++++ .../episodic/episodic_experience_replay.html | 5 + .../episodic_hindsight_experience_replay.html | 5 + ...sodic_hrl_hindsight_experience_replay.html | 5 + .../episodic/single_episode_buffer.html | 5 + .../balanced_experience_replay.html | 5 + .../differentiable_neural_dictionary.html | 24 +- .../non_episodic/experience_replay.html | 5 + .../prioritized_experience_replay.html | 5 + .../non_episodic/transition_collection.html | 5 + .../kubernetes_orchestrator.html | 627 ++++++++++++++++++ docs/_modules/rl_coach/spaces.html | 17 +- .../components/data_stores/index.rst.txt | 10 + .../components/memory_backends/index.rst.txt | 6 + .../components/orchestrators/index.rst.txt | 7 + .../design/horizontal_scaling.rst.txt | 167 +---- docs/_sources/dist_usage.rst.txt | 239 +++++++ docs/_sources/index.rst.txt | 5 + docs/_sources/usage.rst.txt | 20 +- docs/components/additional_parameters.html | 12 +- docs/components/agents/imitation/bc.html | 5 + docs/components/agents/imitation/cil.html | 5 + docs/components/agents/index.html | 62 +- docs/components/agents/other/dfp.html | 5 + .../agents/policy_optimization/ac.html | 5 + .../agents/policy_optimization/cppo.html | 5 + .../agents/policy_optimization/ddpg.html | 5 + .../agents/policy_optimization/hac.html | 5 + .../agents/policy_optimization/pg.html | 5 + .../agents/policy_optimization/ppo.html | 5 + .../agents/value_optimization/bs_dqn.html | 5 + .../value_optimization/categorical_dqn.html | 5 + .../agents/value_optimization/double_dqn.html | 5 + .../agents/value_optimization/dqn.html | 5 + .../value_optimization/dueling_dqn.html | 5 + .../agents/value_optimization/mmc.html | 5 + .../agents/value_optimization/n_step.html | 5 + .../agents/value_optimization/naf.html | 5 + .../agents/value_optimization/nec.html | 5 + .../agents/value_optimization/pal.html | 5 + .../agents/value_optimization/qr_dqn.html | 5 + .../agents/value_optimization/rainbow.html | 5 + docs/components/architectures/index.html | 70 +- docs/components/core_types.html | 9 +- docs/components/data_stores/index.html | 287 ++++++++ docs/components/environments/index.html | 28 +- .../exploration_policies/index.html | 5 + docs/components/filters/index.html | 5 + docs/components/filters/input_filters.html | 5 + docs/components/filters/output_filters.html | 5 + docs/components/memories/index.html | 9 +- docs/components/memory_backends/index.html | 268 ++++++++ docs/components/orchestrators/index.html | 269 ++++++++ docs/components/spaces.html | 7 +- docs/contributing/add_agent.html | 9 +- docs/contributing/add_env.html | 5 + docs/dashboard.html | 5 + docs/design/control_flow.html | 5 + docs/design/horizontal_scaling.html | 215 ++---- docs/design/network.html | 9 +- docs/dist_usage.html | 454 +++++++++++++ docs/features/algorithms.html | 5 + docs/features/benchmarks.html | 5 + docs/features/environments.html | 5 + docs/features/index.html | 9 +- docs/genindex.html | 72 +- docs/index.html | 10 + docs/objects.inv | Bin 3257 -> 3515 bytes docs/search.html | 5 + docs/searchindex.js | 2 +- docs/selecting_an_algorithm.html | 5 + docs/test.html | 62 +- docs/usage.html | 24 +- .../_static/img/horizontal-scale-out.png | Bin 0 -> 63835 bytes .../source/components/data_stores/index.rst | 10 + .../components/memory_backends/index.rst | 6 + .../source/components/orchestrators/index.rst | 7 + docs_raw/source/design/horizontal_scaling.rst | 167 +---- docs_raw/source/diagrams.xml | 2 +- docs_raw/source/dist_usage.rst | 239 +++++++ docs_raw/source/index.rst | 5 + docs_raw/source/usage.rst | 20 +- rl_coach/data_stores/nfs_data_store.py | 23 + rl_coach/data_stores/s3_data_store.py | 17 + rl_coach/memories/backend/redis.py | 29 +- .../orchestrators/kubernetes_orchestrator.py | 28 + 151 files changed, 5302 insertions(+), 643 deletions(-) create mode 100644 docs/_images/horizontal-scale-out.png create mode 100644 docs/_modules/rl_coach/data_stores/nfs_data_store.html create mode 100644 docs/_modules/rl_coach/data_stores/s3_data_store.html create mode 100644 docs/_modules/rl_coach/memories/backend/redis.html create mode 100644 docs/_modules/rl_coach/orchestrators/kubernetes_orchestrator.html create mode 100644 docs/_sources/components/data_stores/index.rst.txt create mode 100644 docs/_sources/components/memory_backends/index.rst.txt create mode 100644 docs/_sources/components/orchestrators/index.rst.txt create mode 100644 docs/_sources/dist_usage.rst.txt create mode 100644 docs/components/data_stores/index.html create mode 100644 docs/components/memory_backends/index.html create mode 100644 docs/components/orchestrators/index.html create mode 100644 docs/dist_usage.html create mode 100644 docs_raw/source/_static/img/horizontal-scale-out.png create mode 100644 docs_raw/source/components/data_stores/index.rst create mode 100644 docs_raw/source/components/memory_backends/index.rst create mode 100644 docs_raw/source/components/orchestrators/index.rst create mode 100644 docs_raw/source/dist_usage.rst diff --git a/docs/_images/horizontal-scale-out.png b/docs/_images/horizontal-scale-out.png new file mode 100644 index 0000000000000000000000000000000000000000..8291b4a49a998669443959bb37f46a5fece29596 GIT binary patch literal 63835 zcmd?RbySpH*e`q&BCP_Fiio5%C?Qe;O3DaImr^3#B`|`bbj(oFQUU_f9fEY{&|NZw z)DQ#AxdDBi_q^}-t#jVB&RXY>18W&`-}~CXz4z7EwZ|Xw^a%+eEg=8^B=T}HssL~a z{3lL5J|6hjn~6a;0DuDWGE&c7$JQpV*beO_V9-5E0#kNZju~$=czf>69z%O*86ItaDM&$0@AlPuZ+C2sPCpK04GK( zh@FYne9jBpt;U2vlb2re2M@CCc;a>~7`_{mt!P?@T+V$0*9l?I!p`K=I(dWXln&Ar z3lFDQOKs?jl?N)wLKB*(>6>u1O6$>&PDie};@q=K`g+z7#QNp8R!3tsEFzB$LdDCp z4S0~F=^gO{JCWvf{g=ho z>^3y1%ZwY;S7bs83_95Ldh|D|(MFO{u6tQ32$8S(Thka-PfJLsRLK7Ol*m5^@X3T6 zsN^ordyznAkuP325z=bUICe?%kqkiw6YjQ7yFB33Onj@3=V@SG<7!=@7eOqo@>^t8 zId}aNM~_oJxpLR%w_M2m%Yolt#nrPrXbBHf^LtMTj!vaQL`cM z)%c(JBd3r7xH5`rYjtX7ejiOkhz5rrhp>;WejES!G5OJ>9|JTfiAm0SRZ`huJu9+F zbB8I6qOe@r3YZ1s&o|jg-2du-fv-9i^$e0wqYs?MZAs|vzi}#>npzpPk z^&J}u-hTd%cUDj?4qG90vzJwM?=xplR}U+H-zQ&PR5g{_fQcMx0sU~TG3 z)J-r=Qgg!M9@t^LJsKP1G`QlGFXW$B)53^GY7^#l+jdW&PB!|U<#pKEbn?*$-!SqH z*ta$_79k)&zlw55v5eanFIRtOPd_o@`{KAA`y6PHk|0*{doi-?iYN`T;qsYZ-^6*O zLWv0JY7otrpp%v2TBu_2>0D$R1)u;7hbD7l>E#-oRb$Lk347=?KRQldD<%xF-TZrAeGD~pOvA0X7{SeC@ z6T{`|`6&0IcLqA=c%W-0gn&iYZ^~C>r}7pOv4f49?Y}DR1l>braq3xM#4BHNEAW(- z0El*|{7Ot7-PiXy;) ztQp3W3IWrEy~-&v8&9XBqImS{Kxv^2Be$qMwm1NSJ&nWH!NvQ_R}s-ZpiHUSlh1v@ zXwIPYk#ScHYgp^n+=Z=C(k^NPf^KJkp8tq0juJKFzYMk3t$dzaudC6oH)YfZe1B9{ z!qau6w?Fe7D><%{k^6f@m@0N_#J!eqcEFK5_ghG{N}p3DACZgu=IAIz3ky>C<|rt_ z6Uoazz4LXG>8Mx~pd4I+iZxDV|IDqko?rbj@(UdWkKc5?8jG69L2~8)#Hr6GUayYx-#W%==QquH=eea z>T-M+pHxqkFSgXlM}q>M(A)3bveZ&Nec zja_})eq)gu6}!;cxN)OGvUf9Me4*xvM|F!(%mOa0NhK+jWnQRd-I#}-iZR`GCAoVL zN41e7GPD~zUKwCp#>Cf7-#^j}v~J87Rjiq}fB7=F_Gwh^j0V;DY8XVhfglbt$tEXQ zBzLh{SFb!1(~1ROV`F~F)X{<+LHGnNZ6PVa8q?LWR}r&X8UFNXC5ASiJwrmSjTlE5 zkyb|872XdMwJ;B*#OZ>|eD{7~ZqwrQFi^!IrW1V;^MnRJ` zWrWXWlnl038~3Je4qK97Uw1}h{pNg1jMF;5bd`h|9Z-2B@Y*i~No9rgy0f={F;`oczZE_i(k7^Q{EihILJ}tjDMK z(<>9z1stR1zTTbuSQ*oz)7d-xPP|Md-F#RtAN{={E$I-UkvLbK>EY>5?`xUUCaQA% zs4^nPNGBzor3s~|`jCFzy-Kp@*+k`p$Fs;Ui9fAcx}2*Y8E8bz)#MK@F2qoox!yX* z^?&J)f<0?`}1!?gUYKcXOIl-NA7q(l#Z?cBGmOiKY_-X zSVv_EQ9PntWpN@ud$+!eU#Me{Zk6O~+@SK=2Y^t=1gDzKS0UX2wu?_@Ok?RZ&xQ@s z<(X4lOkrE3G;12`E?tvit@<_YY#2!B0}%G;>;oaJvkxXX9g37{Qmz(4gtE@x0IZ`b zv@)h3_*(yEuH^qTXv$VO6>?4nL`--A&N3r8VDOO4TKR&2DceX&laVD!I zAHqIV%3lnjXzALH+w?ScsXkUj7YSjWw3~Qsq3ZlPS_?M{qER*1#iQ~LI;yrCHM}j7 z#)`!_#d_+D(bFekaf^(kT3$}SJ<*f7Jbs(|0&z)YHJ+CTxG}@^EvOF~`d5%`Ka4U7 zz$LMFh_+mAtYmaThHosdc~76FUei-a^J;Ta$g{zPp6v+q3#t7Ao@S|z*N;xPP>;(r zMzcJK6G@*_w|&Y}p>W_HA#W$y=<%jqtS^NC;Ad(OeGm$J1FAF=5e%CHT^X?ny9`4Ov5jQts!%C$faAZ0TkK4SpHf52o>8Mc1^qKq09StpMCRDeHoCdC& zud^Z}A24C|^I0``YPsKTa6}u3aN@#S^6M%hFZ@?tC!G473}r={(ljFAiG3rtp5%Px zR#&W$gk=Re;?2jn#RejP`FCWPO2cINvfc<{Z*5qG9>$w#+CA}7?_T=#3ge&-> zx8};VxQ~I}OC0@|gonzZ+g=^$jYo#R`e`&I=6s|cMP=y-MNbvmkCd=&C|=4EAfr%_ zW83S~^Ihn`JFI)SbQ#JYl{_e4k;hf%p#D$bjbg0BW@&Pw8 zoYFrpv7=T_xZ?X3T~f7vRHpU0Cm_^8P6K4|_ z&+9Zv%GlKA>q2Ax`e{vHZ^XT4!G#Vgvu`thc;65krL(i5mZXbdGIl`Z#1@%;#6-8~ z0&EE8teoxg_YVEES^>AP6rw@no;=>Ug+p0{| zF8R@W@(7c^!u;?h=qao<_ik5VXA%L673E|JT00>g^wj(nzQtd{<93yb8pswXOaZo( z{9=|!Pgs~V_BER2XV^1JMQDW%Hk!t+*U?>X34;iSnOAGaga{;hYuS^ zzp(3HpG4iJR5G4WbgAj0_@wqn_bkR=hMp>aLlVYw1CB=KvWgjT+FFlG=e2JrjKJPN zynW&uh=CKv+;k?+a7wLh{SNVtpx$5lclM;TRpp6tUk9pU*JsfI?f37DQ$qVcJKlpq zTcasJS_nBB35fnCRmEf4{PdJ6=f`zGxK)Ka&+M1?{)KC=t6Kg+z;_u6uHEP+4n%u@ z{g*_%U3FetOfU@K-Iw*La)jNJ(+lI3c@$;Yg7tQ#ZS(poV8q0)G-&;9;WA6LwSsGu za?Mr?(D?#jGrH7nWG7o1%?<3bVucsrP9DN-MfEH+FNB5xxPbtAHwih7UIsG*aJ#(z zu7y?WpGCjMo&YfztmGUXiPJ+m_UJ8SDBT?{Ykpj}&K1s~Vj#`B{XH#9SJ0d_r6B>5 zNq0wQBv=qQp3SN2swB-I0#aWlJ6?7sf45M`%y40G@a+ppfs;5bA+Pb*IFbnEjVc|3 zAW!{DpU*LNMfmoF0svg=S+Mg^P+Yxq11UkY$=VYtKe?NMal}%Uwx)z{@qx^zlW_Ta zOd~Mp)7rF8I*%*oKeysC7!d#_!Z?Ry(v`pyWRdQGv6hgzYBm6A7LSDRAGr&Os8)WD z|A(nSt>AKrUJ+o^6JNyBew3IlluOL&6y{XHH@je0;U8r;2SSkm;EXR5`|JjoW+L}> z0^V0!lTi~8oIMb-b{@Lfw1!AEM45%W0srN3LM ztt#!hGyX^!d}99MF1d#>9dIkUz8kqGMWM}FF6-w0=+MrW$#(~hLa1c zm4dG7sbjBf#jw3|R~vCs%abKrl0^o-?PJJYonyHj@w=OgHDy;0^uAUmqOYH#j4P=0 z-NcNj4Bcw#JTZIyO)>v&PdJ@P#kHr1qo>$0E1k9dgr@gW5*%k?ln?DwId6v@D}|}O z#WHk68MxJ@%V|dBmB0os#~w%r6o<7V<{6FKLMz#wWL5(Pxy-|(%~5v0-f+yu>(-^w zx8Lt9X$|z+x+cU?p-YsW{xZ9gb5CrNbLDi8XJ8ZifLCS?jD#Qu*9@(7SS z``~}!O0a>Z@Q)Yt$JZI8`_F@H$}^t*>$9AB3VVK)@+p7SGX=Kfl;VHOyRa?l?Bd_^ zbI18FP8H%F;eT?o{`us;E|N`Cpj~1=$$jT>Y_dIQ+0C+q;8~hB|2RvJvpLu>97}$? zN)QDRF}aj*HK@F*$((dCMu;s(MC{DW13xW@+cD;3DM=G@7IV84SAZ$MV36_MyDc42G2r6FhKEqJHIh(?gcoWXGEE>+m1R zYa|LeDRe8(ck5yo$}RHkAB0KUi)p1Gs4BYG29Zxo5$xxf!|wF2DmK)4f|iNwsd67| z3v=vGb=r6p+h~o}w@^Bt6-{h#5mbh0=nBH_5scEJj{QUFai?wcD ziJ!XXIX#L_k`w>r8zk)ytXBd*7mvJIzGsMQeB4XgNOhLB1ptZ&Vv`=y1gO~g+=m56~E)B>1lp$+T zV!X#7clTlcrSjkb-t@L|FMi52Ty#HUaSLzWMI`bm?7QS69D*yPF+aaGT#t|PVffMW z^l2lUe0_{Z$`+PlA#pxyt7HRC>vXNS1>e)E9Vp!;O`atxemhQl^zuI z@iuFUhg&Ce2$RS%KX@7H*q6UteEt^HA7T+>a&KBrxaz|IaA~;IxWB+~t@;%K2Ol63T<<~t~jHf&&6Q=S-Afn&i{8gKqxDkFZ zp?~q`$bw^Ir8=V{%$uhdu_7C8UqOd)bH8kSlpQOq9Qsncpw|M9U%K%}>ez`>sT9zIC_g zRma*0zhY@|ds-96`G}Z)rf(6yRhsi*ytbM0?|qf%`5*LSe-9tvopmbbV)NAgXrgY} zTzxJez^7;CWRpHuE`cH__*q6s!C0jkSev^SRP~xeod%KL)EjX9oG61u2@BuLPmZbZ z4S0WUVZcDdGnjlQZ{XJLcg45^WDrG*4${VQuk&{SBbG__be%LU2}z^YeiaO>!rBY~F)2-)-dwzSQ=DmwjLyTj;tb->6 z&&R%#sq*!(((KNxwmhS#6APbPfa7N5FpU2i$^6lU6fCgErb%hnC-D2r(`LMixl_b` zMfG}rc5mfu^BxTN9x`ywJpe@5SXc5_cSQ$Nl|y@swOYDpX0e~H^Y>e zcSqTS0x$MqdRZGrP1GNZEE{HO4!AgUS!4!_#8&GsDF;8 zUKj=__^=VA88;Bbz9?r@*?&>ls!lm_80_2_mDj24XLoWA5a9j66c$0iYCK0kkd4Ai zA7aA(_V)Jeu>fq5BodasuF4peR~H8;86K9b0P1R%Yk2J=9*4Yixy4T>qFR=7$CxVB z70Xt!P9*-GHAB99v<|@(=>@O1(Us+ivpv~fJCE=D;eSgXbkUjqrOMcBs*iI_2Wi%mQwy-4sz|?#ck=jyi5LywReX#`S zE6RjL=W3ls`JBdJa@V*04bPglVSFbczc4v&;}__8ugkVH!U#ku7hUOsr9^nUTb^aK z^ljdJf@8yTK_!gBN`%$u^6-LTP5&IE8LQLD#mKy1gaSUv(iibe`<@^Yb@3vQcDo3# zW5g{}>C0YX=UrVszdiYm>ZbYcHvRSmo;fHMz=xLDHT&Q0lOtk-lMuSA`kVZp&0?Rd0QvtV6jzjCWnowgt{h8x1 znjoqz!9VlQ=l3&JUb;otE)R=YbdmbJ$lM9D0|ZKL1eFTI?M}3b|85-s%NS;2Ar8;0 z=$F-~Tvc!4borT<7^~4BO>m7_3C?#}^xs$Ao>ZrSPo?KzfR@fD~qirghsnQT<%u>v+;<;Q2a5X5xJ(#xu) zzRb0=R1r`0cI63}Y7w3Wy~=a2ysvPXwW5Tk(XC#Xrlj|`rwxR-ioBog$fC0%$aD@5 z1FcT36Ipe%kFQO;h`+w|c1^y@97&3v+ejLV_C|f4+^_OQt>4)+CA5TU{(y) z9CS|GruKikduX(Hmbx9@MK9)iPO9q)k9#c%q`ypdU5}t!12aNK-rqg)JuPO8rfv~p zF`T23^G{}ybz43#94X9qa(Y6IQce!eMa*Wb`1@XRG4)x*w^);U6}T|wxA7GiWh=*~+|53Uc^?IR zH<|WDCJ{H*`V${L)&}>`rF8z?6U+7L!_rs7mLB^jp&z&?-6RNrik}x^=R?NTA6a@B zrL+Ex$ZXtO6a7i-;qRCFAHA~L={Bp)Y%r*r(qo@kl+Jp>OU1`i2H2A4>)~~}249h( zkM4@I(U|t!eD8w1nQy;)(Bdq=WAD-Q#o{%I+#jaN;Pr_}zQ)n;@0`(4ee z*%!{;COd0Iab?%nj2Sj>Vn&=j%~ER)A{5t!q9(3(TX&+B{sQOrAtO_A7Eezey&9S0iJSlDw6oqNGX+A|66SqT>7F*DEs0ac(cU}G9$J&fwo5ZwRNbY~ zLY%}pgj01Jc2%<#TrUHEoH6q{`b6}cnJ3+UPkN)-boCo#-D;E+7+=nRE(sk$+Ek8u zrJo{E4pg1R%gP)@P6nshdQKiy>+a4u>+7PzOaCI6lZEj6LDw`cPoK-&`c(1cR1u1A ze7kFWJz{AQg(S)^^wts;y75s3TNH->s-F@}es&}-gbXd8JdED}95HC7( zL!V`Vy*&?n3B<(z3JTj>TxK-}hWUSwpGvBY>9TQufNe`hU9pPQn6)Uqd&87n56&zT zy@r8DLN1up)e$hut67OqY#e@Px5&ulu+()Wx-P?9>)@zr_@O1@;nDLEcSwj$aqeX> zqkYah$=|QRl_0>ulEqSyT5fSC=u~8=H8sj>fYu}eulCG7mdDx!7UXBQbOHIplKBSe<3H5vv=6qo`HE9^EjJ|q3%lC(vy!Mb2Q@IT5?*6&aU3-_CTR*rY$;nV$AD? zrf5oy(?b4gp$1t)ldJyGR zK=8k+gtWwe=*gVZGetxa2nO&0YaVDlQHNp6RRSyq;OvJDg3By|4=nEe2eq*G{!ilu z1-DPcjZ4rM(YkMvj=P(`5S)f!4ufi{cBDWy;l^UXVgMu+gn;+X$17{sL9TV+ zjx$S|tj;xL#c|s_XemXC(ycdvH0lZ#{A`_#{+(O*eB9)JTQN8|d$Hj{&!z?px39t% zgaOBN%;c5z0kQG*5(INYeTBhi8;wclkLzBgEgR^`AM$bcWExsQ9>24e_jbN3XN}5Y z*)L_fFiw4J)7q2Iaw{6SBmI||U?0z!sjk}LZEtPyCKq~SAZ~5jX3Cl;C+=4FjfcpF zQPj5IhnI>!&J^Dpwrl;0(;pCgnm0GmTtq&cFl&+d))Fp1lsu-2`E~Xe^T%G4m5t|_m5oi+`p$d(PpeXr1Y)v}S7*>?HJh@@ zxYBWtVR2KPTDK~_{^|)Y&)F9!9&i=&zvT_h$fTZ*G3FAR9FDo|G$ME`w9IWP)}MN8 zHmZ!62};;_AFSG}=U?&WWncdISEI6A0kr`hRBiDX@`r8f7jCn${|3wF*EU=aqfuGP z<5n%wDkGvBZVd51=T|NAi}p11O)Qo=OQ`hh%|{;a=IN%HbXOnFZX@n-5gB+RK7U;Q z{3MA`=SurlaOobyhd*4T1ac8J0Wke`^A7ri%A3sZt@mVc=c#NL)q19ag5}~ePwAcp zXE7ItO_BHXVY27%0@lVYjQ+&QfGwva4LPJ4uk*RrX&}Ew?i=Y*m zezQre!>`)%9}cPQe^){9`h)W@0G8U$sh+$3nSqQ4fl=3|D+MeGi z>eSO<8DVP%zHhF(taoY^WtrhZ&!7T^5#ZKI0c`ox#ZFJ2;Xy6vwQc@=cqV=FfTmMh zI;w5clJoP-=0Q@=NR{ZV;`U{J`oRz z0KH${`_gE~9%qkrCx2esjp(KE7iE(#tCH3W&|WUK{VXKmyxT*FDf}vqY1f^*=%%rX zmn&s!8IdS3*-xxWRV$VttuA#=Iv^-4t1S{Gw_VSO-t@afU-%P{+Yb0 zw(+jTwI!gFsNdd|$xtp$_ zO|72iehv9lu1j@$-~6p}wzwXcmvWy0ivgSk0H|?5l=whg)a2`1o^!vx;GcdmX)4^w?)p5ltrcyA#mA8 zwaw%_{)c86*+EXJ;h5`iD?h{Z*Vy&hU`VRsWoFce>)nER+dMUSn4B9c5DnN`Vi~$X zP?yt#IxbSYP0E$%Q${vSk{@=auc{5cdH@S>+;vO*y9Q@oLONgQ-o zr$xjyDX``wFmogx>(i$R3F1b6HNT=>IPahmUVe@0Ntp)qbYt(fO%yI#%+s&tbV}ezM$s+{J0%?OQB-D1$2Trw}rD4wZo!*sD?VRr@Nc4xQpz zX;xK(s+6G?-dEgN&mQ0SKG}mB@vIXSHi!AiQ6H{a*u0;Nw5fKBJbAS~!Mm&DJfLvi z)WLOX@9BjPNcUelfIx;FM9!nXWMO%#nNX!KbTb&Mi1~Nd;JE2!o5?j_SBX$5taTc2 zy-(>*^NQ%H!ceiAHg3$)I;ybpaJKVD5qG>5kBugEDMhvSWrK*^einramTp z@3HinI{iH~?YHd84<5e@PiDgI^9+WI7-F!Nv%3q_jFJL7<>YK_jiwe97_U zOuXC9dT`Fz+MUUs50mC61*^oMTWt9967&l*8>_EsmkHU~SZG7Z12!Bfc9kMxDS67K z;1t%`r1wxVJg*~xbmt{7f&jZt{{GCC-<1X_3Ak6efA!`#1~g9pN% z82e2dNtt)qyZMk|OP>7_oF4fWeo$mPf8kKsdM=&AU>{#!8UhwB!C$sCqThYVpo9~i zy&!oSVg0u1$pP)((NDCmc68Qrl*gZ^Pr|&1FE2uA4kb@Qs2X4llGf99snY+|a_{5r>fULmPp z$Qq{GO*hiKECt3bXB&JsL5c=nK_prSLbMOESX3NgdHcG>AZI3@MwwFBC#zF-R+_!Rp92o`ZE<1mgQCu#RuUYMm95}h9Vp(k<=ExSfgtwBuGCO?e;i&FHqD^O)BeV6RK)= zZ%ChkO+sip{EQtWt%+4jNWb|Gux;pIS>+-=#SR&b*0D{QU0Mw>g<+NG9$ z8sFnPshATA6A^aCuD9bn>y(y zK1u@0vc=!j6C^LP?H{lqA6IN7gvZUlwR!d|v!#ly1`;aX93`6o|S^04-ue)=en4_|uMJr}1L|gFws$0wI zUCef%03NhB#=f@I$VLwu&gr;3!I6YD)eeYJgV16ab?aY{JEYpFH!``2kNM>D2gXr9 z%jq}}dN(@36wCrlP}*HDx?vD9r>Ez+H?S|fs_ z&D%kw~Apu%EczJ)EBiV!A9Y<|H03~Zza*Womg*IMFS z=QRay!G#So=_r-09Hr_-S=4;*x#YO~N}RmtrNguSRg98yNnYs76BHu?V0qOcpM5UOvyeU)#-y6i0HO#z{MWpM)=oq{^s4P-Ei0dqM4K+D4Kt z5~;jRRFDwflU9HS9W6c9k2dwNo~|q+2KIwyYBmNOw7;NfPma&58U)(D+uTyJ0voo( z2{&0-#yP?y#>8Q{%s&$i0NXi3(0h*?c|2LX$Rf(=veirvMj-r}=r;n6YwTtDdwj_3 z(Dw!ZKu}hr+Y_=!TlepFhF>V?`ZO9!aP?Z~)C0rC12oW>H(0>2&m* zgNiuaYIVJ$_~q2xEGijnQ6VYyiILpP&9?!i{ST3GKXb%709)yR9&>`jkeC#Mh6*R4 zU&|+?r_aw|2Q+$-bSmtHo+P&Jh`BpF&k!Q)!)i+vq6e?lOj?Bg#C6TPxA@!d?ojO! zvRx2Z6OuNwP?GINnv)O*%ZC&^7i+I~uCMxa2Xt1L814X^aG+PuOy%>eo^uNsK!|9_ z9rv&-qcT3MyfZs`n}n$2&X1A2)@4Qi4Kx8P9=8MYt-}de@%#3PbdMnk=ZRAi2e`LL zHOs0=;>|fE3n2QXhik6q%qdG2cKj9mbB;ntF>lBh$vqL?2=oT?jXd;=YYU%%IAsVw z#t0)!X#mt}j~&jqVva;zdJ`qdv&D?97@7yD=cUG?o~Evnis$Z*oER4zfN=I2S}^@k z%>dJ2>PdY_%Y^+Ac~8qsFZK2NZCjX$lJOE5i8PEs&Me{?NdrnooVEK`t!1wTT8oFe zb8$JcuV>Q1y;ktGNJeN$`r(ZbIy2`~m$kxUQazOkTrTVWFr#CCTo5?L6{^9CQQK6b zlk&XhXr;GQUkboWK{ry%f6O9~g?l2^DfW7mbEe*oLJvtm&dq9&5o%1ECTl9G9eK^~ zV)4`@jz)YI|J)a%!7@y_1btP|W}V?8QQdyeYlg7K8f~EZVx{CD%qwvX0p&RoVda`7 zb?x{zU@~mpYQ~7z(bq#ktzDcb(Hbe}GWYk(3gT)LxXdlP7$U}wd&o+?j-Rqe4!g$+ zign_XE{MIddrfHAo45KPa^R8zHZ#Kh3r`cjCoOh!i7hplR~y%U6H!FJfx<50pG>-5 zS(8eGoga<|eJow<;11KwPFK4%zRVTP4sasqM%46QYvu^Ow-4&uN()&P?2bv9Co?t5 zt*x~rTfHnLPY+j#gpYuk6|%5v043N(*znaqrtQX^GIfdkY~i!M5lK6{T=Z~81x?tp zOAsI6I8Snz`@6mRYA?@6r6s%V$K*g%tg#Sp-C78)B`7^q2R8%1vA#f*c0XIo3H!dg zz%=y<^!}tO+_#+0lAHvs_&^{#K+)f@@hLW*M~D~xc2qq($%3qNV-|k4;HJz+jm7;G zJ<+Q>i+nwiNC#$iee#-uoW85MEK6IIBx9>jY#UXr{7739xkjf5x$c{H``^0JoRCUJ za%@}|*B{>)6$9{*3#o%X$1n+)jA8@Z@z-Tv7<|7Xb|{9;k6r(Y5cu$xX3&hq%N2(h z)9K(e7t~hkab5$jzmrRP`SJH^$3VI+%UE2f>_1^sscEQ|Ft9t##c ziK}+OTvu#Y&p24={RFljKl_T6T(#7;KsWi;@{9~X7(6l9Zp^|Ta};u|`l)HmL@aBI zBqSp9EcM=Khowg?Y&P}QV?J9DEw}G*UR5i@6K4U^C=|d@VyLJ%!g@LNyi*18dZK=H zG=h>Bt$Z5vQ5K>K$eQ9u^{O;T5MVJAAMcteoMj-_HMr{{fG|~jtmLpQO_LR0Q}GAq zIGPk#$ilTgaBRO$0y9+Qe^cbF7c&`?eSKb(bumvbt*`yq!gOaK7?T*^0DIMCU^GK2 zw5DIqn}jH?RkTG?@&vn;+x&fQ93~G-lXYaibq#DGLS*kPDJr;qUQ|%yWR(yKvL9cZ zdY~40sap1q7mwnTtuenC2Lm&fJVkx!#2Q428?6G+^e7L5!-A&qApqEMjd7uBw*d-0 zDG@_5^1EOKbzwJ@c)tZ=_IXj=wd3%|r{lM;;N#Z2!?D@BJCwl(HQ(r)EL76mu8_w5 z9Jx3DO9rGWN;HFq#rB-}2wi(SbU!@#Jv3+@>>XF)_dU{wNs!;c0-#`)X+KlTxAlzY^9?m5tlG77O4q&(T1+OPQtSew$f%o)84_d(u ztso6XA?sf7b->N>i@oEq>$#`=s__A}notX;nwz*#p!u~P*j{zKIrbRxNV0kB8t_!G z;wk;irZE77A$z|Lq;23$(83+`uigVyQ3ZFI$TV~B_P5ekCk6tWq(mhdu9~Y`z z*|kCq>%Zw4&0WX5YZ9Ka6^t5Ck6Va=ZiJQ@g+sUB`zeyeCk&em zH{U>d)ex*BymS3TwlS$k)!#Oin0Vjx?j;Uc?XF@}+&gj+dqcANW=>iXH!MOq$MeR; z(p&m6du|0!@a`i$?yn>S`o#dfUEkdlFcM>ct#6*ovxO7k^p@f$I7L|G64pkUF1lpR zH+vV|2XLWWN1ye1*f{%=a`PIeP0f__MstzEGgbmeiNi>v4YBnB#ErlShI?*KmYMWL zqAZUj8H(IbJhOPhPX3<#j%@B}ZUsCP^aaCmfZh)pUP3d3BoDM(!15sC^L)D-NRWt+ zHx1@S+!EoYy2~9*0L(W?q;AUYPPFfcIv!pMujGI2S32jo=aRZVa!oH!&{Tv@WSNx_ zU34#F3ZTwY%}?mMRNRBhEc;L14&H(~D?@|n))~)4TC8Nv=Y|GfKn?it3SiOsd-!?I zeFhG?7J&DK$TjfpWbij>pX%%Erwps1-x_Zs=UVMA-#fnRKk;3g>bucw5IB@r{4m#(q|pXBo(;LFT4{++E&?aiR~HV7Sqn%uDM! zOl`V?(;trX!(IPC2`2}0xPJ{);P%KyErze^czCF~M~xMr=rVns58i}>KD!KkY%_Rl zU2o0#Kp+ImFw{@5PxU%E;G9{}rkjnW7b@>OA4~+~2;hD=EvWe3S`sp0=2sTs081@i zDHLNFoh(z@PgO2+U?5|wv@SvSA4`p06WPo{A#NrihbKgR_8DJL&CrU`Bhm$FzYbZf zuwpII!`7nKP$fbg62+68Kl9R!@9A#Bgr2m>r4%H{p zm7PEW476Bbw-WNHNRtd))~|KZ*F4!rKAvZHKf3tj1DnALWBpkc#2dV{Hnp5}9SCqf z5lxE-1p{{8Vep0r-kP@h{ZI!$ID!wTQa$EdsN7PpxNlxl@(d%{{sO!!b?lwV z@yTg&fAcqYi90JVvNw9)^}Lu{;gUONMM%)}EuAEM25lEl<9^(6k}}wMyWj@i;K11! zl+3*sic{|niyui9l>ROh1_%?_Wg+VFQ8&Dh=M5_llmsQW|V znHT6(nOM$XRg5)by*UxNa+)OAsPjYCEMO{fsXXelu}~B_E&tJ8gUt`kH-$DsF;<}K zG+Is*QD$5&rJ3vvP1-@xN%p^~K}AxnoPzwNb-2|t{r#+T+tQ`u4rZ1+mzKeb+H|8L z0oSCLfwx1>h`H&BO4Fy}`NDBSvN{j*a-@Eui zzKn+;n_VT#NEplu+PttCu_fEzN1eJz5Vu@%Od0zR>DW=QGI!sc3&|98*62l|b0{y# z&PA!Gc?e#M?4Jt-dVe10_D9ccs)CaA4M&nHTUMtUywR+Jbg)Y|jR)t9nzDvjW@*lU zuoMIrxHUYQHGa3x$gybu=$LO_`xQ2Sok=>;sBTUr3s3Txsb8okxaBc-X1 zf;ThE&hBNNH>6dY53Efb8kBI@*j&*$X>)cB#RmjzVVt?ksbFmk)~|{KKnS zW#5dX7d)xKB5~fPQAS?<*af8iPj|Bgyp(>X7OBqNDIB#IA5QbiuKy^w3RjwCgjrPo zZb!beq5#+AhB(1m;Q<|+WfSW~9|q)^>E^oYia+mjxVm@$Q1s4IKv*I2 z$VHLkmK5mi!R$$t6z+s-q~n)-=}o9y|V*14Lm3R|ZyOkKMOClP+F zZaG127+R;%r5MjFg@WAGnEFyBMED!MU#kk)`^CdL23aoLYC}bWFybgICa=vjCu^7R z8&}S|L^atKY^Z;k7sP}zp83D^t`X`*HL{KmahWLyu?%mAzocTq)va#Ou>BcbXvzit z1N`A7)A8vyTT#aYK1i~>j+muYx4nDzIWYQK$bXcXMw1>Od}0N8dO1B@4V;;<`@G%O zPiu{(8199tzLMou4<9ln%awZr#)c4E%1b7_6tmyf!PLOP=*5llS7cHQ(5#jcdaa*X z0MuuQ46eq)7bptGkv|yVU>5}Msqyhwaw+pg5b+P#=r~O~I1dHIBN1##U_R#_8``(O z2^{#PFBRd;;sAoa^bQgNT&+JCyAGd>#{<|N)M$fvx9L-EU@<_q?&O}5#>j9;f?;a- zuy;S<_m5||w{KoNy*+=@R_+}MZV8(9 zLiQhr08NiqtKM!EeLA1~+WF)Yc6vX?M6Od`BIxOkH4a+}K(B=vR=gxePLsnEM5dOl zCxr;a-JMR*yTWPronPL8W=|elaYv*+TP_=;Qk#LA#eOZ zi4g*`_Pd^X(kWCy0^~R)8I!#)Y<0-HKbTDOfZ(ZjfDvv$6Cn&ANrM4n_l4`{+gef3 z#e`i?1}=mhG~eF_dcuPFdgN<#49U2{DAT@v`~~K`u2cO&7LicvI3-xICmQ7U@Sx}w zsQ?AYNHY3a)XVYvQdyyH)%~KEvksQC1KxbJ`!2}#r08o4xS8aB=jSuxWMB00Ml1N` zB$Cc7rm=fR<$D3e6poWNId^&vQxb5^J^6YRV-nc$E%|>*H}OxFT3}I6K8_aWei!e^ zERGao#Z15Q!;95B(yc0+5cJGb-5)imbG)yAV>HuLOz71939+7FxQ7_aHP@YV@OzG0 ziQe1eg2B>b7D-|Am=VATOm|SA_Z)tHaJb1r^M1%&49@+D%wGNz%k6kv+h7)&wKfdL z{g|+@wc^?gZA5``bk|^lp1!wCbR?kb(~2ih+>xLE?0>NJ-SJfY|KsOgn?z-lt)vht zD}-B;29cdDmA&`1ZiGsqA!H}n7lmujL}g}N^CB}_To>2)y^eanKcDaS`+Ge6aUSlu zukqab#wexldDTc5shz*}dg10#+-=@DqUjQ{R)PcDd_LU6mtt$f)+E2^_(k)>Ca+EG zYUveD`ESL_>sz_kV2p)3w<_ZI2>`KA0G&BqXVV^PKjZ@O(xLR^6Fr3Xu$E=Lt5|ZL znM_(9@%`?Hw?$Vk*X^EJFT0FC=1_I&lBHcsfJy~)liir^*ZP-SU!#em#!w&Yowkq^ zk>ioybH4_ci@&=aWB2^bsZ>y(nXYqbB9?Ob@PN}OaG)?>ubx(gXwBW%tF6mW!GOSJ`Cs*OhAUrd z4!Dh^_ zPrpNM-+aic8ozsxWVMlaXF^owZGTkypu0xPw4+K(^|J>%zso(w{UXYLZ#%`>pYk@tQDO0$(HBtKS>aIhV_Pz`%eJK|7fD9}{+t3NZ&}+@LBJ2s> zl?u|E8OtA{tC;K552bW2Jv%|Cb?euXL8@y_uvU538C-)A7X2DuzuR0Uf2i!1`*Vw( z{-RJG(K5y49<8LXrPQJnMVpTd%WsJisuB0|lRha3Zc=F%`qK?qepzp1hbF3ShZu-2 z_675!Jsu1jvmSGv83H^r&Be;7JkHTK>8#KePPb=HLFU#nn-%sVhF=eoB;%N!V- zvwlEkyMnlq%_38P?a_UX6+vqgk{qh=I zoG}X=xQn%#EMM&OV~f-W;bqa8&cM~eL9d}Q5KTz>K{}3hh;C0hu@$GKmY4Bq^CtsD zKahDj7xWtsn+Ces8L&wQoH$TC)ULI@#@iMT6@XfPxMpC%3s-$~F`n`@%>2t?pN7_S zT!qixlHqkhn5PrGle@O2%lGu+#t`vFyY4OONx8l?q)+kwGICE^<@~obLw8KTSgi0E zsu$A}Q$x@7XCjyI`7+VBvb+jp^!``>?@(SG+` z>cI++-mhu1>rc@%kcw5y!#72l5mf=;WsB1KQ(aDM`Ge@%eNUO$UWKh|#a z(9#!|ti>>Ur!?$ptYRPgpWBv(uFz0Uf z&Ml$tJY2w$xk38Ji-M4j$IL9*rCsMPQq5-#U>^69FA>~4dEI?StnVdi?>(;4SpThr zeftb?wTL8FcFSI(A9walm)&)9DrNY3x=oVwVl8@sYRsjTmhn(YolsmPiY54y( z?jn9~NWLErs`YW~y8isew|a>kuSPfzL)B8tE`3r4Z=&yS@4O=36j9yW1G8Toh=DtI zOEnzj;kgZmIgzLo=AIe#&v$Q8ed)Yfbt(MKbB>qM?@O<{z4C5ueN|L$_oK<{s^i_+ zwatL4>(Yi9q+ibm4-LO5QZr1=Z~qXj6};GR=oObhwanCq!I>@3UyAOk>*_qb9Us3R zaEj~8CBL>^-jc4`R7jn+j6cT1_GZqL>6dHR+O%snuVA0_&alY)F@fz4hniyq#!?;S zf?KaDATVj7+InUU%aDbv{X|%DPh6ZXYbFYmSM_Yg8Y|5bB?9w~DcWC_3xIxw=~r03 z86I6w&U5@U!tg%3YHm_URCLSxmFbDe!tCaAjJB~o@0;dARh{!TY_$`<>lmARYnh#z zQ)f4fl!RWBvWEqX5C><@>0E6~O^8w0`gC!+`kF1Nx8LUFL#tq(IXV9Y#1g5cO2f)s zfpcvYd%OMDp&ca!1&Afxg#iKu{5D{yM>gCuRi6xZRG4b*nAMwiR9&sVK-YIq4J1TC z7n9S`malu0=h)c-z(ktrO@ivWmD6tIav7+y;8i^JF!7OZq`MO7`q@*18^A56HH*Pg zr929ReYCONuZqKPlScWy!1v#mf%~>Qv2iaRv_kN2-&wzOS@{ky9b*rFBS!w{0d^%S z;7U-iP{J3BR)pp|-fd!g(cLuBlj zMJ}h8RJ_Zgfc0z5uTG-Vm#eNi)`ZxZsgUyNVmSmi0#ixxTF z#4GcH(*%QHsRD3IpG=~3J6wI;Wh{}>ZBgoQW!dD(XRq`;59eO570jbK+3c1_H)&=w ze2PE0CJ~f$3;N}OB3|d1EQSL62B*eTgHdc@=Wjoze0JFM+xX!F-{vM{H}6Dz4S8ru z3)!epva~T8CSPv@6&Wb(Yn#{~CVb?%Fvr9962s@oJQ9@*_F$r#wV)vM%+BYG#b6xE zpj&Den@Nn>kauX@mom49VAA2ZqhF^7!O}4?@7!GfQCUH{qFasgF|RGRDg)JA@)#$L z58k^F6L$@qc2B^0t>Wi5v`AN_)2(c%K(KL_r*ls~zT2dASWW=r_*l06*8Pbpm!^@I zcL#xaSL8-mtq2=3NM!*qxh@`be0O z14HI&!E4s-&Z>HeT}Kx|6YO$791h z-OJH>i!U$Qb?A(}xMM7ZGE6^B8|){dZ(w^RO&Y~)!Ko`oS#U#ICQnPs1nC-;_3SKj zxAV%6(^qbTH&Y7EYjjQ1z4Vpw#aDdmX?=Gw=hL*rD%mH%ZK{QLaCN$+g?!SV)px2z z)~ZeIqEg^CIjuwM;Rp1|0Kesj={%2fXrU1)cTt+Rbr$4s3XxqTWSiPVEo7eKBUgKfd%Eqr77v#O+u`jj?2z#zcJ(plZugb| zPnD#up7YZlWuK+i@+TY5<6TcK^`Bs^bi7pvb+GjJCOTz*_WcsbGs)&kU%4tw+y>>V zMU`)SWS$(07PP5czAiN;TZWDmbEV7dWxUHvPYC69TjO+y ziqVmPq|T1k)bbxgW3EUO&f!;~WZx-UTbcS4bO$W%!%i>Trx@7%o>Pch2p)t;SYjKjyzOAv_S>jR}BC`k>sz$Xhs%u7407Xy(fNHqTe zA|*&N~C`?Teiw_e!U$q(l3X2zdIQ+_ICB%YgIB%JD$rHSE$4o3Urk>~Bo&FOtbJp0^! z2TRF1;>rtae!A2M8TU;l3}cmClf-nmA79*aZ*fb) zxw;hT$eRzZRXyec zCQ)x3I|IauO2m=%Q6DrH+$Vh-(cy`Q-d`RqMnQzkB`@+fHBZojJKhha7X~0Y!pB z*o^P^(<-O@uT)t9r(@5TLCYVj0>}#_xxMOGymM!DD0;`FUAYE#KMQjHLhu^+%p^~Z z`Jf-u5iU#%^{g%heqwyR*9>s^NNkXHq%|FaB%>HoUar&J-EmRl?<#M$%5WUi9V;QL zJ6>Dlf5lk1u8NG=IhWix%b2nJ>(Q{4`<__eZCWWCQa)s@(c*FO@R8;B^P4k6VguvP zUYGF%dzww|TF_WH#m`&?y&p!O+&%YD+Vp`52zx7tY0fe>6BUg|a8xC9d)V{!iMD1kN$y)y0Lmz}tRfY6B zze^!!fwAeVT6GJ(p}Qy1RqTVK#ZTwBIZoaGIsKdx%4JS9wnU;-Uk#gLM=6+54!`n$ zyKRH~_cdCXzHX zR}^s*0bOI3k)lFe^JxX_>ls$B*m@@;HQ#YjDI`e2Vc8G_h)}`I-=q|wZhG^#%`r); zsGW3m&*Q%W0C({{WT6$}yL&t6hh*U3W1%Vzr5JWm%)SYMBCTbB4ct_#bel*|fn^&PsvBkH{rC~S$O*f9aX;eyrr7RFe@SVlG zS-QR^KrhgDmD4fLAWcb{W=FzHR4eznwNffbGUME<=;^O$ff7QoH2nfNay9#Nxak2?Ow)f+|9!z|Pr-V}axuyCE z^W4VtDYmpoM3E#oJQZf#LVbmwMkf*7XZw5YIeb9|&1J9SxfI|vbPXqHzb;y1lD%AZ z1FXC+@8S|Z=kXrlnd5A|{x09ke1aW|_tYq7UX+@Uaggh;`-F5UJqYq9aE?WFE zethARf%?jNZr|go2MX}@)Q!cg!zhCx?f-j~`R+o03 zwNIO#2P)E;!$EsKa^}>+PBASMx!jvGuypDqZZ)LWW9fV=2F~H<=X$K{VyaqsS&Q%!VYaghGLBB#(}?GxeGirE}Bl~L{RUnb0L?Ef2@31VolJZt#iwEadcx0@S z8-jKcRWF(63mt$=HuNLU#{YT&&X>ldxRd@-&#iQsKTNLxFa7L}Bn^b|qrcBmVDGdt z{VNO|{K5ICb8?kKc$Nudko%6zIB)k8w?rh~dBs@w&e(ej=ey?b-rWGKsWy+eZD-fS zuc2w5&NaDItrtB<_X{P&uP@?g()a0#U@IWB|Q_I+Wb}C zE3r)hrHn=3E~POVWG$3f3^xGcr?`;laj0Q8oI?GoeQ1v_mTy;t0V^HT_S z{0~t**Uv1;cdbvm4trF`+$|a8^jXwb+hL=$aA$#1QrGkgze{b68hs5LdQ3{asC~C0 zQ84iGh^=%1)|>pK_d4PHck~Wt@wWlnbo(@y$1#T>%+pM(n9!t>yZM{enbS-Zp5ZzN z*!oKh7rJ^VF}6!NVTqymTZ5iOyB!1vdgWs9Ppp6ScSS|4afRmCFJ0e@UajToV$EG8 z+Uu3vURal|kM=Slh|$Kw3td&~#T5^5c{Ee1G>~LM=s`7s3FS5^2phXW_a^a`AP#va zjlplIxYkkF$|1gfDV2*C4oixoxdF)w#jgj@eTKSQ1)*_8z649CjG$X{}82q)> z=*J9`EZ$nqmj0AMg!H2aYM}h@*5I|-h#|s#PX6+LrHJxhDWa1`?S*r&W{myK@a2H_ z^uRMj3btx0QTB5r6$I&BQMSX*S*W!UTZ`fW?wJio!0&L6TAsZ&~<#u|X=+*rww7ImRgd!Q~Zw zH*E^5p$W7sbxC2@F*i}H_n>j{^Nxf0E*y+wLuPvUS2#2{tL&WSS1)k*@PrG>c!iH# z)8;d#- zeOu_7DH$%w%PL8}x_jDN-hME6THPq)Dq{E#b-1!@fC_2GJMm zd5+=n4eiAz+XwwM-VPZD#2=qFx(->-k7N5s!fgAg?;QjwySp6HJ*HH4Qf^R0Y(1b4 zx0246k7^3C>s)>)>XTx=3k^O74R=7^;R_y1ql_~@)Hp}@GV<)Oy2V%de`7hQ(KnZv zk9Jv)A6lmI60;%i#F9$+^9zfGJ{0zhOC@0Y2gwUQEdvhgS2zs9ODwWN`}hY_!let0 zgB{MN?$La4u>2U#3zF`+H!>V})k~UJj}9NJlU%8%4^u~(tSd3vmy=~sRqjI6#Jd_s_RM_q+Gdtf}W=;n|*Wa63v8(+e z0Hp(2Lm_$J{O5?Ne!LgNs{gsp->(7pujo5}kH~*25KLx(OtMRsb zoQqVFdFV3gzhIUe-B$Q<@bzNeOqh@3Pb(^8g>^f|KYhT z?K@Aen=)1KkOTVL0t3OX>eTO~Iz-)kDBX0N4{+M;r2=;frHOZ`NlFL$)JrZJ+%vLq zhx%;tQ$z8#eR-i(nHk17p#wd7;MX|#i!0{G$A$0XbiL6%JnbeDKnZwl+xQY9O|lj6B-%&3Fi4vl#g@h}O3MOUVOSO;K_~yR$BL7EDk#mxWKu*OD4Lw}s5FNn3YZz2L31rn~ zkiRJBFa>G}bVfK6fYGlhZ_8`*`4W2!(&6##QxN9!?e@$SYX9cO5VYfrlX;C;ab8fS zogh2q)tv4d?n0loAWcN}Wocq&*E@cC!ohg^84to|(&L+|>$k5%r~e9(OpmtDB-A_+ zJND+9vN5i)b!RndyqwTS5H&^R=UWF#`oC{Ib=rI^Fs{^j+Hhnd=Slmb+WZn>9C;Uqi6C2YTpV|@epT28?Vyl&0BpA@|HYi^RjlCD@DUN zBZUjBZq;N|-cpvT`p}YR~qYc$CU*7FK=s4Iz5ST7Olr zCWgIZo~0!_V;q?KP|^F*p&FCaw<)(wyk$yByRCKl)msAi;2T%swp!Yon9U*7@hp8j zKd=#xOX8z;KgxdrrVkR8y&^^GmA^C_As?K-L`L9)ZDXJ)6%+(LdB54o);cR_Go^g+ zdWvjlQS4WN7$lgVku}kszqb)%zT<$S83`OabrV;$vVI&NdK{2tO4|dq$By zj-UAy`t=I}14Z31=9Ui-Ht?O>8lBWPW2jz^ZVKM(Sgjjv*}jiuQ~_(ExNXio>GEq% zeX?-AKl%mi^q`K#;(IV#AP) zwIXMOA*~$-co&oyo!`^Q?x(df1b4UP>NXP1FmGvyDTW2X2SFZh=;vGw5{Yu7WG92w z{B`BncbUC84BG}&;E0XUY|thlaLX*XVyR3sn&2>= z{<`9nhm07gfM023LssMDjzsJn3I>=E$8L^Atq>9=oRwY{yjT_J_F#h<9}H%;Ao#}U zRaSUT0(6*fu7^oo0)Q+`+8kquvk-N2s%jwaFBs(<^3FT*JPo*@ND+VTO$(3iG3AI* zT3r|J-F~N_MWbG72{$KK1#5F~SOMeI(}c7l4dAh-cUdsv&=g6wNm?@*x=2>!|9z$E zMZp6)C`;gVDA~4eiLk^yf$pfKhLEVIKNY?KLWHv4i{v&IplyL4tNcj#j^T`@`Rb|j z41vz@Zs7dj^!E>envCo@O@j)%zi%-qd_3W8K66QLJN+ReM2TT(^nDF(i{Us*J9iwx z*OQ6<$=OcnHR5LGJX>F3%*4?L0sP#q+#jrv`C`=~9h?b`pSam{K0IK1v9-qKzjg!0 z17vG`F*l1Npt+Mdm3}s(W=mOcTi$b<1s_Z;4ffGuS-L%N3WB-~a9_o!KVn%qmvw&M zP}uDq@$~&b!}q`63PVE?MSzGb&D4Kh})f`q9@mIv&h)F9?ODVYG+I9Uz7h z1C|?EEI4=w?3f9n;z!>vmP&Z)H5g~@F6AKV{@-uojV)MfWa9zwZ{ zl$dT?{p~7PPFZSPY$fsmY6S#x9J)t)7J}$LiRXS52B>JZZQ$75POHmMT)l&(Lh$V) z0>Kv!E)1rX7KnxQ+(`#KcE>?)T*F^}qtBm2lOb05{Xffr3^&A=8WC2U2t^q>DtIkN z!*a`NYHu73kJtjVc4&XfO_VYH-mM~KD7Jk37XDgF=9M@5V1+x~g`PrDvOo`JN;B^D zoE_C+1*q88)CsSKDT^8UQJrFK)}e@iQpy&X?B4ZrE=zU@am)bVFoTt~_C?5J+&+i> zp&~$-0AyyGMdGwj%vs8#P>0s7FsaIK;2ugWurLI)twIh`K|#>9Ou$O|oBXQdVF1kg z(6%;%&mE;{Vj&vZ111IhA@IM)fOkYfhFz%zo`CoO#UfE)wIcD;1MHNTV=V|;$Xb>H z{H8?<;@|J}POfChFS;vP3JJeRC!JmZh3SUvn*~4qFc=_xBnr)}#RC3sZLw5i(OSc? zJD`i7_1j}y5}26eWwHa%0fOX5Ej8daaGWBIqsRl8(4#$XYmB|ZJfw0x{$*9T-A#r3 z2wd#%=X1tiVDOSoBly5J0R8K9;HiT-%}@rqsPUh>0WcP6!1o8smLo<(3Zwzq{&PF9 z{KAnbfM$-nI&(X&c}!))7Tkc?{_w><0tZe3(Y3!Puc-nIHyGq!9A(q zXh;;4!hf~c6goZ2cmWKFxGh<*X-&BgtWHIEW*NLOXc2^o`On8No&iw(>$xxxO8J>> zo-C9&Zs7nLq)z`4YS6V##ZqsRZ*O{m94*W< z%z%>jnTHv`hqYTda^7H;diQ6yedhv?@6TW93jsS#HD~6IQp790@EMBv;>k8V6mfg&b3Y8CsY4P6ifV@pqRX?0EFQz~# z+=_G>2NCt$JNvQ(7AfGt_SHTEcQ6Bo(HjV3x^kyGobm@YU>W~_lO2hbgerIa6XQ}A zfu5#=a>)D{jVQK;S$+U;fW3Vh$&}uwzrGvD+LerI6ZfM9p?KkKx508~Icv#J#(Udt zq@{&v#%XV;PX9cvV!;^Nn7}2qZj)zXnuHHRr_AKo4g~IYw)k(6RP(nlE(LI_MpmtS zh?g*9pR?$r<~0qgAAm`V5}i`qG-3Iz!ob4f_2BV&oR zrObh~)+Tf56wa?ag(d~f9xz``mM~KdE(iTl-1$q`3JJ4{rmfYTU+3uex+^rzlvW$q z2Z#-Je7WI(O8y8M@X!b}atc2i=SQJ#?I?C`>h0e-`S%y`^i`dZrqo(TL)>7u#1c_y zPvHn#_O|ImkZ;O4*u+Q`L5-pR{mvqJZY5)|Mt&c3=19oIyB?jg@<_E@+n;PE2-2D$?;0O5lkg)w~7(&EeI}+8(WN-#r3)`7h zBzB0D&_3q2H*gBoTtXu2*yBSnwHupxW(M3v{rk{1?}-V3zz$udEPwv;d9F&M+-> zFmbB(T^dRFRhYqdD>Z3~;S4);b^j6}QLu@l(w>TNgKV!AprNgXKy8cXk32q82gS_e zPpns?{hQMpnrhnex)dX!@;47q^33Ijl0)hoT7Q^L3NIu2bve*HUrP3o{S#=xID3 zImKQ-aOJ;ugSQ2w+ue26T;{!gD!5JHR*urWsomA!3WX!>RwbLjius60QDQM5k;$9; z;=>C#AQDZT4sz^7>F$z!w_tQzY z=VmuN&DHHcK%hF@8Ff~UrL?cwor~%v{U!@78-rB$sz$16kT3M+hs8%_&mOm>Qbx-5 zP^m+`QM?nPmdRZf&ksX_f+<2q=t%u>Z!u;s#KnI(7=8e%U;-#Vlyk>D-|g0Z)N+wR zOwm^}zxS~gWH17PItD3Q)9uzv6%e2+QW*fuxARpVX{%ORFs}Y1Z=T&)6vrn@Z!p+r zdNoo9``)AsqCZr8c!e5Sdr!BFf8~$PEt21t>jh_k)`j&Gdp=n3C#N zl(IJqr~c(vnDX=!o9jrT}@}%dx?jF~-=i2~0Sp&wc>O+}i zMbD9)n{E`gsobq0KFc#|4-RpOK1*wKWU2HoAT`7}@a+Dy?v#ay`Gw*0Gb{A#L$X64 zIp*W$WZPG;p1;5%HhXm7YI=0pPSkmHl7`>-F^=Z#XGl~9&@_M`{gug-``T~rD6Jy{ zaAH;|F|F)Sc9Q(YjVWI|`IZ}vaDrPEVi+ms<-eAsX09&=%~#)dFpaDM{J~D?1+%!| zd^`~SPP$`E>54Cf@Le5DP>-c1!(P$v?1sO0{ZXB2Jp!92u%?~6f0Ebr$o@v_!yaCB z3mkWIs1)Df?CO{T0|8GnZa&A(<_!|P{ec7?37pK)VB=~C2{C*z$OIYr^ob*2BHmvS z_C;ZOmYyJ*O|8EbSw4?2U!}rupgFyg(E~#6u=r?gVf0?wiI=F_6Q+Yae1{5+p&6bG z|5@o8NqYm5!e*Y;Dv*q_ls0^zdpTto9*%YGkEIRcWk+$sGgL|)>hlA^_{r_9T?VDE z2im1P7Zn-t9{lD~6evcaUfD0vgER;}r8JPh16G>9a%VMcE&-KZ`z5g1=HzI&1tUOb zAe89?<=arw3$UNekO$&-bFb zj`O*-E`ue{@IvLzi*w|FD6a~(NoNs6MUS682PAy2o0L5C`&ZC{FaP#@@4HA-p7E1yGF(1h|B8%p(sxQH-9y2<4FYg5vU zqP@rY>5odSZG=kMozG!Tj;m3Fn%hr9FfZARX#R&}kq1JhM$Rm8B5S`*L4Na3GGgkh zi*eZYZE{w-pLCbJhM7jSyL}I+jXCDRp91FOIzL!c4~16$`)F_g0tWMC#fb;?948>P z2R50GS)*#CERxBPe~sUcM%-Afu>V3RV(uK)D&_J;|0VR?FEjuAK@o*FX!h*s1Y!){kS#0!<9UEr_sl^zSNgc&Ec}UC()M?7h^e4WG7T z)V{OzcPq$1p>-3-tf#c^zrk+Y--izLRdr9|$mjp_9rNgOu&4F$hJUjOt;qkdw9X)b zTY5z1bNEoTRIb}~huSXG2WyyY_YFT_Um#H+RYT&JVej?)Z?h7PcS+K(N^~zOJ6amV z)X&1sICvKfY;A>>fyI2pNW5mtaCuN7(4?n2kTf-No{R=QdAnbJAhF8PX>EEaGH`{g z7A?1A*`(1(*aMcuYf`12k=(69w^aWIVEto$*0E-<^2@OHwh73L0;#(%=3s8m`Mp|g zomaE4K1vqfzNbPCm&H zgFqDPwqV0R@*4F;fG&zSusT58=xn}f*7EhLJ&?w2EY^ZDO@js&3r{799VO%pCU5tC zDkO=}_AEpOF2qw}4j`zZ?n6omIf2|ga~f59=)WF@p(v!|B%}SH&#ufi16sxhZr^;s z8KSeh0HOi$#~zSjEi*&{wm3bSP7m<5JNchL%6bODr*o_rtu|C(x}a^5P=YU;wc{Sg zMiO3a8sZui#2FWQm`7$-w}7E^k0;*;TB@F|R@)@aak&S&w$;6J6vl?C17Ir>dA5dRauPA>8VZreK12XVsP~s&_3xfj z;nZ)+*=8?ISL-v$S%zIBr>1aTo(IvOC~YQ`|B~LF^<<;MWetU$HG?Wa7q??u(=!pP zzz_sR82**^s@zs2-t9?f0?-o=A-*R^k;cPJW!x66#WyIDps3>@Ot9~=m;TnpuwD`3 zbA6b^@X9?Iy~7%>-%e#c39_FFy;QmZWdujDgd7zplP7eb7YO}jL;rlJoAF4mlyiGe z>mH8eOS6hTAT0UJ=#YT|vWMKJln>OqmixilyJN}n5sRz7Eah(9=eAQ@J{ z%G{X)%_?T@D~E6nqDWM9D2H8XE(3QOe>_rx{U@l3+bwjz)#-yYv9Zo8@lx1%#{HI) z9hxl_*1q@fP-4a+e)Z`aQzhN9>3qBjDJ$kfL>2)fa%VVB7XwGkTSd8hH}!05!AU4F zf1_Pk`-7+uLof2QaJ>(`f|ylp)$XLCaeM8x;nffIP2oE9cj& zFO?rwKY5+kWI=CrR;WmOG=t1~_$mczVLy(bF!XbZ{h3j2TDM1s3rkS;JH&f5?X34e z82V7TraJy6x!dE8Ba}Hes;A>w_b!xgZbL4DjlqTCqcyOWbLRACFE}>dS1=|2a445{ zJX%uoP6EN_zz3o1W(#>;=iq43Kj5pKsdSlLu&NAEa*q#PDqn7mzAO^h2wQXvAB@En z^#}4p2ey>WSu4xf<@clZ9tVEObR`^v*FaPnI z`#ytGWeJ&<5`!$&eNDoK)+3n~@J9gYSrbNpj zH%|rb9skXy+h>pAYP6=ar?Zn@r1NM%%}XHg)l4lAW3DSXojkSc3&aqJvx4|8;P{$9 zUN7LnJg1AfaeDhU3kWKk{|RWqRtSVJm!G4xQ_Q^tY?hx2Hz+v4E%&XY2e8L*_%Uyr z2u>=uE2lEzk;s2VgO2k-kU%%^d-HxPM}QpBpRn`a{jQ~`3(9Zfg8y@r+{#`;Ibr9S zu}dfHjKHz!H(~s>A`;xaZNh%dhp?Kk8BwGQ_022L!jbfmbBGin&M4!c`*RF%T1|H& z>IBFxA^*nNPU`^;&kPB++%q_`(1FQ#sCEeYH?~ZPfgoh9XP3iAp!xrh4akA)$5~Y% z133F1h1zyDO#%Vnte+lm((2!3;b0UWzvT4DWdqKfjsIZzZyW{^_vQ{z3oW z4=``<(mGGJg%qbJB5Q#i?)9AV>5Y586mCGYAX4i52#Wft&<0y-=NYewT~Z0PhYS`# zAYax&2c+6w(dC*Zyq!cBT^~>6P2Bg=gr5GDp32IBs@ApIJu|xfD+CfXY~IvyI*Gfg z!vJ5W_-oJ7LPt>H0oERW9zZRcJY?PjPo%#{o(acwj0S;}pIOv`vV4Dy&{ETwM)m!mBk*1qI&Z{(zbRg?WqO|LErxNEOv*O|5_0~#%4Rwf7@=)(RMvxeq zC>p!Wx8%R%8_b<%##pkjabtOzUA0V%5(A;g5C4*mR3r1~&+__mE7EW8>vey=zk$!f4xw(;k~G|2%(s7V);GJ} z4+6hnOE(f=5(PxSoVOv*+Y2#zXZNNzdVBW1DUDR zH*A!50tXk)(EfY$znQo?HG^@GQLdWnpEkSupB4V3WOcZeF{{K757}JcNM;}M08aEB zX7~qN_5oX|8b`qlX$}Lv=WBn+8eo2ohEF&8EeHh6fcU^!kf}Fj`sYL|Jn0|@05ZuR zJ@#`!ASb&P#0UIM+P_x^h^kbDb91y{m~GX@!7fb3%L2aU0V6yOoFOmc`3FIN)3U&< zzT&nk`l!cjdhXhZFyV5(=3&whdnKIRhZDon&|E z9}NBhgHBz@ein%#NE7S>d=}XEivr6SGAd)9A3Hc_91Id^6Po`8zdxvV0H|*9ipizBU9`Z6z*HliH{z-iRPU-35?42wqFN?57?yT>W!xi!lk$jQ1-a8;a zd_O4rYfOZTLhQTuqgE_R9}v*>^ETm3vXbFX3J$s*17=7RU$E`H#PVfFXOaSm3JwEd zLBOJh69FAouiEX7&yE3azYu$s_{sIie(8iz_H8(%UI%<8(C`cW2F2WxFFd)+vwij= zeuFB8_pCYXanz#56yPfF2P$~>24sRk7?|rX3igF(97mMHMgnU>CVS6SP|WeZh>tcL z4{pq-(o+lvn3n4ZO#kLLX`xq+ss?VAYu0x`$qx^x69Gh_qcGc4v*8bm1@o=X`)7ty z=!z}dr5KaBrqWekbp`RMmK}h@8@G$GBT1Wf1-m7K!JtXWZU26jNa*clxm*TNu0d5w zb&0xczgXjTvGEECxJ?aDYbY__w~jSN+CZo@V5fZx<1&22Mk(uLzzj#lgtD&^YdeDL zrmN4^17@D^Isu`&Ix1}#EIa@R*y@A$_BWQwYD)5!JKDERr?-9b&s*BET)jNt%6I=+ zXqE^iPAd8HpPD_J|u%O;#%4~s2JNs78<}N28YkBe*lU*n{!^82= zzZ>Xj8qSP^G=D1$BHhh>5P`t$RX^|6_yMNp6L6u8Dc11UTljs?Q!1i4uwxSpf~K`k zYqk$IE?otI^;{vPO35?7C3#(~PrO}v30_SJ86Mhs7~1NW}2Wp^23iq2o9mN&5z_V_sqi|RFNG&XeVE?LkIi5Xeh9$ zjDlmlOUh?Izz_sM9azu)5|n=2!q6JOQRzJh(h1cR^FfRjSzMwl5*MZY82=rDP=jwJ z`#aAzUPcXLqnw}Jq=HbBU`1AFHa{*#eX|CQ%=@;(J2R;T)+><|Uw$UU#hS82Y^ql_ zKHd$%(EHO$u@yc|39jX4$b9eV{<2yfz?rvJGunJ)QO?{w<7Fv^z`WUoyB}hqg28*f zip1_!;&cskxLK68zETl_io~Bk?$jK;POf63%eohU!hqsN_4BRqt-ka7FNd^07pSZ6vQq4+8E)&*3z%kj}(l>;6@Ui4P~s}B|I=YsP`jP zpj?Btx_XJGj%2oR9ac81O1mxFlW_L;$o5ubpiLtfdK{q2!DS0dt{$YCA@@Ph+v}vX zBoa5R!4PcCktim{xiL%&32*T0hez4{PPeQBNm>^Ryq3vcb=zpCcqA1F$rvri^6vd4 z)x8=)d;apJ3PiVzn~@)Y+N?c&gT0Ec2lq^xz*P@Pty#gMyGWq;Nl%WGtoFF|!zj?g zVs*B_aKE`lS7B7kNom0guIQ*viu08?GF5d!iqp^adxivQ*mrL#h*=Y-wALKqNeAs1 zNmY(^QyU9FC*V*W$g39567iw@}~wVhWMd}On9qKtrk13QlMH-W;#2A!l$6HnhS5~IL4>27o$aNG`QqWU=NOF@cq~E6_a5A{ZCoZ*Svcwlu zOWnJCR+RZ&lzLrKwHYYRYr&Vdf`(i5%mPiENJ7`eAYmm+9q;MODj{h4LuHAzCoIv!P-~rhoYgMLW2EN!*hMLZ3&IG~U<@^t$vR9mS~-wNu6F4ZsX#*H02H_# zK4MkUb(Y{dtuG8c3w_9OaGnjB^*{rq4AJUnf0JI+1|^r!VJ9zx>6Tf&ZIcKGL3yrN zPbBD+(v^a`k8{wkvvk<(R+c(Qa^bJAL3h-lOxdj>gRoFY#CQ$oyErNm=TNg(uW^GK z11CxZUq4ga6*2Qa|7k}fkO*8FzWy4u{WE`+w$BFmbhXws&pSBOa1#hiE8XPrTNd%? zR+|gUK#)jZ0Et7vmUzEk1`k5axmO8f87sYCMBa>1O@2bS_NTZI1rUnT9r)4*-L4|J z$FHaH_{lNhgYylbOpEF-*faBb2a*8yyCo2D!=}s!fT#WBhXv=l^8OWVg1@$XmFY+s zx2vxE^dUfj3G`AXWP_GsQ^gP;!NBNrH4Oz~cDT_U{jtPB$M(;w-$C7bN0w@8km{cI zz#=Gn6_KYjh$KZWDVZui14jO}i><5sl35@UO)xoN=NsHUjxul)B!?*jm2pcQiPE1{ zAp!g5evk~YIh3$#JQd@Jv zQ?pPaK&IO7tM{{8T)ppjubcSbno8I`e`_J2|3}<=M>X|zi=rE(2@3jC0i~%Zh$x73 zkYd43QKWZK>AfeAAS$Q`h>9p3k)m|zH7FvWKQmoGf-Wk=c3 zJ>`IxcWy(VZg7!NyG^jq=X+d)otCC^Xpa>42fhMz=bhYKlU&e4e>ul5JYi?D`9Ruk zc97qJ7iEo$rez0#gCZgx6hHR5FEARkZYsU}Fn0&!GOrlngR~ok6^B~uKn3hF>CBK; zR$0%+9^NFd(3xNWwpV>!(X@O50-kJEE$kvrnkPOoJTWxE%FLi?zcrD(*^L=V3f93 z;d5Sofv~5y2$~yII z)`39J-^rdkoqx&RQ>$?pBwI&o(yJ;mTT_8m$pZd{icSI5_!ZcQj$R;`(uis{AFKMC z^9jn{{_wL6HGl)R^n@s;QB)62pC2JpV2$J5uA9FTV8ZT$fDP?7)fkq%#koW!()kjSv}>Wr5(uNm=LVawDCeQy+?E7DA~|W%a%JL zCpY4^?L=kWS{2{$mfw|VkNNs;31&>S$Xf9NiW+ER6YHalr(D%pd;dHspfF&xx|XQm z=5ZqkTuZzHh@~A>40FqY6TY2Agf9LNlp-I*sf0edty;pt{6G-he*}Dre4<;+rc?DG zKFI6;B3jlhHzi~MQ&@73e4ZlX`VBe*;w(iS@8>OB=X5_y8SW2^8YIgmjO-anE*DX> z_efQ&@^tM$p_>*8f8qVVg3GH(--?dZ6ps7TSIU!>?x)h7UW=e=2h<6oH6(Uqy-6)| zhZORKDt$1r-12IrY~BqCq24N=7&c=AUw>K^z&Cv$vQ#z3NujK&lkjh0flL)K;wE4Y$|Scf&? zSIw?}pfhKxtUq#(6$BDo)Ilb#-H6d^Qr9#-f_vCfMaAJph4e&E?Jt>|Z)E7}=aGr5 zC40%WdV$T|s+scxC@5#q{Ui_uYjt0F58o2g*N(SW%1I!f2?%Cdj?blYKXc~p)x7tC@VR{P4b36aCQH$OV zg3fNMf$hX;^ymkcu?rKZCl63XlNYKq?AjA8K{q!9>&C;uj(6jkH_Izh7kqwy2>)Rn zSsSrc7|9-LqU-*9_Z1D+=9@BsD^&UEWTvVG_o*9EY(q}obvyKjr$ahWg^>3MF5nY% z=0MdHlGeozWGUJ?&{>58-Yp5w!gwhXbIwcCX7NWFn&3Dcd+tDLm==5JWc1K?PzBqv z1^&y9UBQoA(KMhf(U2{FB>RgJe=YZppQTc}L|3fQ`@|p)iGdwmfz6|Ce*_4NJG3e8 zy=TUH{MDZzyfmP)RO#}lN=I)E0VIi3Cx=y*fnHequxf+7#c}K6TiEt&zZ>b4TJ`;q zDCGR`rBHuf>*G*{znd`R%tfTNl)KCEf(r)@eO4!h6s823kk+==XtYSApZkGPJ4IW$KUc{uN!?#{nVXZEIKTPWUCaFHg6lm3TPOrUx@kD2LuSBu ze(B47vscKeNH>N2d589s08rtPk(RRlL;e7J=x5mNWjWAQtl(jr2vSX#6qu>}4F-HF zlybwuO5Jji1IovYqk%JaOs{6^2t8?J55C8rNt~zSvYqXoqNcV6V{6*?vi{ zw5Y2vg$D04ne(N%HC(fstante;bKB7`>Prf6?v5IKaFhA9Eb`B-ZAKK>}9tdpy$Fz z@4C3l!!xRdC(reKuH&Zu`T4|m!z4XbY)pfaOr9c5ZRg<1oz^)(p#eWliG#z_rFn>$(+H5b5XliCJdd?HCowZp5dQ(-qgsNfI?@^nao}YDr3q7=8ey zs?);p?Qb_0wQ}%iSU&%J1j@65a(*|+`>XFZ!|?aN3m~|A;H;4th7sRD-I{+$$hkae z3Ea4W#5eO&x@l3f=lR5FMUj4XoMw+^1!6k58=u{5T}D?UhLHJk2_94}7pBJiX!f`; z_@9GVO%sFQOTZ41sX^0zT?;@RgmkY)UE7A?6@s^mSi8XmnTSHwFQv_8()tIu2Q2k5 z$r3{Es+vI~`3mX0eQQKVD5u$XXzN6q#cFgq4jWO{j3Tot32^Bl=zi1lh~3e+=>-JC zt%9z!rot0D-iC7<@rp)F7kYN?{-vL|>A9NFO4%fqPxt&nYXC_ywUzk-mLz3k#+#!Z znK^2#4RctQnec3BXoRRC;pYAIUHPp-O@Vr;UB1%hS9UaP;Wc@OaKY-N;uoV#$BA>( zwT0Nr9n-fb=nd)}vn?y#C|+dq(zKK?HF{i2U)3X(;NG~$7JMm7*$GzY3_|889}nM^ zjsGCQ1-YoRRhmL4xO?_5NU>QeRHcMp*59)axbPk7#yjaH4 z+|;GmR+&%DPeQ#(AziAg5_LFG`l|OsSdvt>0<6nE%~j;Fle>Bi{)}!8>;P(-^`Yty z>Bm9G7)blTd~vFD-nxZ)E;kmg#?vtoK*8G8z>$WF{)r&MePUOSfi06SCllmqrq?;g zWQaa$Tw7{fV>q*ic8$9}Q`M_(@!}wrBVMp-QQSwIs2McQ1BkOpK#RvYzLUOfuHn*+ zDpI;0qY)p=edw~!fjh5EmLm%~!QBufFZ=a?4GTiAw4(;OW%fg4%nBuj^bt{E}g45fq5XRJDK2kbhs~4t$I6tsf%Vfcx^n0_;lo>Ve%<^q^Pb?hH4B zdJ+zYDOrc>HqCA(*|1!yzU!q%QgV8|`@oGZ zn=$2~=8reMSsPF_%!RW!w<27e(B;w&>zav7U(_6N1qNMQa zS!_`9=m1a$GWmVodA8M>Um4gt`TMIQZroB zoY**TJB+XYbx-nC|A0fCy-ox~UMlCA_ZtyVEk`bJI|>{vY%XtMAm&wRg}4h7Wr}On zvTuVrto&^lD|OvzHXq@wU1XVHGJhgIy}((CGmVF`AKKsv69#puZ&|h7GMX_eiiuRe zs_~PTHbGXNf;X==5DG@p0+917t0!vQk2diRB@#m1QuAGpYlK|I&FRCx-6{z9tj_Bi zGq)v#{&7y_!TU=gakUy*YoD$mtvpRhqM;#cfeG|Zig{u&)+v%;P*#y#iuFpSCP~zi zx`7&H@F;eAmebJbHP3R^yx+lKia#8|uBuW(TsHPj% zC%#qpP4HKIze9yrIx%lF9(lSnN~?FRXq4$s4^|#@5q!6~GoAPZmY8wFE?WE4tM>aD z{Z|c;vWp2vx3$F&Sg>76k0a`4*|zdEDZT#&-Q4e;EI%ab+u>z#D`H-AH>jAhoHBg9m&BJKLZ2@6?xc8+@I9=gk3 zg}&yRK$S0k~hH&xe%2QsZSQ5%-O=$?ubLZrg(VO{@o>?7jNdSog9gje)32L zWSdTlX1pZBHD?}LaL{HbC1hBCRgi&#y$9MQQi_~o?nuJ37Lv@>+p=Z8vEFqYqkj(0 zEdhr}u3PApi_+|&+4db@DFwNpbw5J>MhGhleUp!qUD@269cZ{4PU z+@QnBx$dbJIQCNM1fsGbUd+~6T)!+`fA7SV11$@?6e9k{Do4QpSrDZ z$0(vl$^PIr@ehO33|%(jMfO*&upF`J?2!;^$Vu0*ea@Gje3q6T$9mz(m9Eyx(U-mE zY@x#yVOsh3Y9yzE4k2+j+w8482R*Q6E0p9D%RCX^iYGZjFG`^5HHU1)2>XH-KD`_G zru7y%`UlZG>z7hAebDOO_t_HqTp8Bv$jsY!)5xyxeA5Mzb^Nfp>Y1hc+p-}CaO7XG zCXHGAc`ltu@`=>@c+q71bU;@l%Kt+QWF(tIFR?hd~b6 z=aCP4-C15sOQ56ARoo?qx2)8 zDXZv)im(%``l-bBnQ!{}-)jY{co{CgSugF*sNNIA=Q~J56nrHUQQP|Ph=bS2In4h6 zB&+s-r+=h|%J`bn6PQc4|NPR^C9R-{3OPmcH)?6skn0_rWK=*!4P2vkI)Um~i zZ{Sru3M17qF0sVn6Z^vPqM%H}e-Mi{-qhvzHmrPL<&h>=PU z_o>O~{Myb=29RC{xiXNW)y59&hgLm$Xg{cOhEI9u4Ty)erdg}`$Yt6MBO8bJth|fz zPmIf(83KuP+P@BdX&y9vV*mET9yO!M5WR3kqX&tiWOMS#5>no%`{N4fgiwZ7@gEN) zoL&PPjX!T=U$O&+jVd2tux1SW`Ct;cw&vn5WHXGf7}0i)Y?Wbs{n-|`7x`lKWQ^JK zZ!INqSdX%)dBsx#uPSXsW#b0jJ8|x^9wx_kiY}=$Wh(6 ziD7lbM}ngz`pLxJ>9ib7~`&e!+HsThB58CM($w2!5COK3s8 z{)snb4qHBZBPEhY860;%RU%fAjI;)AcMmLnil4j}tF5CU!56QBc=aHIretO98{dK&?ftz(G((-`Fjz=u*#7dO!&mL^`~xi% zfd+VlY+V#IGxZ5189%xHsptpE&0TKS=mM)sK5Jboz5ush_+*P==f@P!9a({(MO!AS zW^^YKr$i2x-U%V+gDSV2n91cGIG;mhSRE|6w3WjZg)PsJ5V*cJ6jJHwt;#Z%^Gu8* zj~E0x`rPr2d0#gDah&{RdWJ7IU|{J>$QDQKz~v)jVRgJa@GDCft9IZOhizRjbtK0& z`pol?-BcV=?mqUD^74oTiPXk2yxG0B)$|-gasaF2L~2=jCqBC35N1=)$hQ4on-;J( z26{}*lwh>iyrt#}UV$#0%R5d`>p*jJa^1}HuSi#&n7CzkpLEMo0h?lwgL6-vVr=-- zucIda6}XCR-M0OSJx)Bv2rKdAO*4sFmvx5Cr@}_@7Y{Tr)V$sps!m$+Z%WD*IuzWo ze=TX$p<-09DtccmNiT8JI(gw8!^gWh`Lx$*&ZC8-g%ssJFx&rGmg}aHit)WD%E!T9gu%fB?{3*Pg(iJMSoNTJ;q?og$-s>VNS+S#v##JU0R=eQi* zkM7yXXR;6K7{*!ZU&i#}7M&+H%YO(@KQ;qB59B4#f{VsTv`1U{4qz7At_qKi`|EW0 z{}3{1}jkrwb=7Gd0Wpxrl~iQ;yb z_&0|3@sRJmce~MdDVAtDZ+>d)0@+B;XXOhkRNExDOXWw*a_f59qae zNh3-|ke}^SHmG2z=zNk0+=JXZv~Q)!yIy=4^g7X@K-xR+4fWmK^LL6NPn8F_orY$R ziW_KeedrK!NVL#&HfTYqZ#U!zt|zr6+1Skm#<~G5xy58&m>y}_>^(5b2i?$U)B~MX=2JL(;p2ShWFw zwoTEA--5myr~})U{TjFHR2>c$pLfov7#};fNVSTB&MefWAE_{@B_F6yj)J?)feOna zd3Vk0Ph#8$KPTd3+^;S>m25%=07CZP=7;S;UwpbQid-{;x>D;>n*e!Me)sXM+tYl# zw!B`IF6td41VHTRb}7*6_4Se(wg$$=={?@t#zxVdG!UT%U>)P*3F|c}1`@Axzjswi zFbZ2!3Je4*zS@~Z(oEQXbzPMH1-MMXHeY?pk{4OwG&A4Vf^2aU5P%j|+Sv6&paXa(&3ecGw~?XEstuq{3jz{!t8(lI zyT<2V5(00fCZ4S=+yMKns9DqcVJ{2lhK}NH%c=w2!SByaD%pEjxI=+oQ!*|zUtHVt z#i@~tfq?u*s+j&j(z^`0LS}rPsx@d#?s1}9t|sx5R#pV61ixVA5SsCAK*I~r?E2m3 zh2tGuSt_J43HVXS!iW%%VIyyM=<}tkm(n?ivmuV!$Mze(kk#RgJk6hTX(?*YBVLI? z+oq?_V_&FzI1-!tA~U)?@X@}6e_RZcUOql??Wwt+U?zf7Jup&SGs=+UmqM)LqgrPV zs8i8YkJK^*e`Fn&C&_2fAr0I`=>$iRulRT9(8t z6Kgb?DV)m#ZxtM`i0IanbMjoGTjChQyRW@2Dfqo)fUyzQ4dl;VyUaC^^Snp~71dcN zJTmG}4dA6Ekr|8ceVd0lt4B?is^q9Po2un8T1;2!HrJ|zpW-?j_@Nm$#c|-s?Oj{K zgkxM!-5$KPCbke(oKd8su92eXN!4$EsKusN*>0)>5T;U%6y?z&;PRNReX`%O>VkAm zC}w@73ry2hUy@ynXKUWJ|3Zu6I&x~!NCu;B=r>Qo{twFIuW9~!8&0=jdNxEm=!2W4 zpQYyue%grjMY=`$)GHIvtA{MR8-v;qD&)kH#t5@!)fmxO`toyvzDIZT5C4_q@pB=) zA9cHie@qOZJ{g{Gy+utEnu~+2yRjS)H5tCKOOmjluuIj8FWNJx&hY#b$N=X5t)t&q zdBPex4`>_|*FHIgPMUtROEqSKdY5_dV%)!md=Li~`>y-BUkYf)C=4OQT?SV0u6vWs zp}i0{m_Lp1J;{ro?P0pql<14}47t>atJ(HfpXs>YJ)g*%9VWpR3bX8t^4>$=N9=&7 zSx|WI$d8``^2yxQ;GS%t+h}8+r<{Nv1Qx&Y+06d+Pj;9n7sMV4R0VSR{p7}nEP{ed zsi$h3%Q`-#3H)oi01>n4m!-VfthU;&Kh>Be><9%!n>WtB>{A&6V?4cm z<9z9>w^n;5lw;HxmU@Lqd3&9U(Z=9SM@11cq72vBc@v#GKcA;w zypXp}56Z`Xo-nTKZ~lRJ*%MtTAJK4p!|{H8_2H*!m!w#1b1jT=<3R^4 zpxvEeYwIxgIKSuov)il<#!9k8%cX!?^aU_p@MQUe{IY+)@%#Xqkl(k9=?k8md2=(T zk8Vah#dY+=El^7S{6n+N>SoPPEja&TmyTSjQSQGVIp0lq9PeEALkq-xpj}4d&SkR1 zB;1_ozBeb1L#~PzUpi(1t{~g1k?iMr?=_DgD({MkG*)hg{O)J+Ai?l-HwX?ywzxO~tggsLeKPa=%bK9rqqL9llo2BNBPMW@Ogusm>v*4v za`@xW-F*4Q)p0bj$LYt=bmkKio7W82ru^A{b+R6xX04P)Jw>d0pB6%mwBEO{`X|?8 z)f7}H@K8u%^hC@JKG#j6?+Pim$K)*`iQlsR#1@{6){N2!vfNm2zS6&=DRK&RWOTWm z-fiPHnqoajO(A9sABQYonk@k|g(?|>t-mBF3Shfdx7^Q3NePLJmnn=0kxV+Hw)K@= zAgfRYQzhC>+H5xIW}xYZw}@!EXQwj(Q*Xn!pXuH6)_3%aP!BmZ#9D1(eVkawnbAB( zP1(qF$qsjhR5V}`SECOBv^y#nA8v`ZuSB1}mU%aa6klKi63V{KAh7ioCIl-!I*0rW z(M5x@TG+j8v2gV@_TAebDGD;9ixhRD2EUa)%h;YOzRNKfE++rFB&=ro-#NwQohKU1 zemtnjV3^$mC6(;ET)8?eO}>g;s~hc3w<$ra#SQe7+0@BJ(R!cF{`zIyi#%Ih&)UGx z@3U2x98>rpxh@&3+}1SmfE*|A{GGoh`er|diAz0~ zD6{ceOIPxRXtGR=_btRsS3AWZKkgz%gN`qVc#A$);XfkzLNDI3Sj7!jmi?P*$l74< zXpyf}(*#05+S7Zg-if)K;RkRj>}>G|p}*>Y#*Enyk?M^NQmM&r`K^4c%#qCS(s7fT zn4u3x_FmSctd>xI|BSaTJ`wU@`3+)5nfWERr$P)>iytpkCg|^kIL$V*f2^2I-+`&C z-TvIw6P|wc=wak!K3_MVf9=bKTIyF{nn0m$wtlj)jq3Wx*UgzF9jb+R!$o3l{ri56 zqGG)L;xjRgWPirE^lXy}VaAXAb$~IMys@@d<_F#W)+;U{5A&ca)e~Q&yWh)erfSkY z?d$Psj=64#Ci^&bmHp~Ypo{70FN}orZi6)V=dW1y1e)o~T#i7kuvZyeEvRyO)at01 z=IegVb;ph2pXxo|WUUinrVC-zuJn-gQf{Y4$gSf{}6BIszrO@M4@7B0{yC& z6No)g6@<72Ae~n+l^VV;N2~w}4Dyz5k7ny)pk) z5cVNCl|KLXl5nn$bDS>XL_U8UI(GpWkkTVR0NxLQ|KAdU1z09^ zy&s)}Wf$~e{V@`%(FgiMTnM2zGp5MhJA{~OqrvpK)woIJZ1#BB&!q7;3TqQylpr2) zgIdQ0f$r0UTG_3>e$sA%-M3g9GWHt^x)%0HRCof+%p}j8FYyW0v@kfU&0>2>_#X{A zzpRxtAN_77UaNBK+iKsW^1#Jv(_{CTn2<9$(p=3yoA#byOlF;)t-i0EMbM(x`i?9$ z49@vp8#m=16wlIuC&6iXEu-0lVNLB*+t#g!)lhx*9IT8DdJ-?!#B$Z}Eys}6%wc*xmo;&Ebfj4V>{7& zI9Z3S3Rsegu{H!UAMtrO|AH2?aK@7G$f(_B)9CA_@G%8#bg7y#Ps8ZUhCIIk0ab%3 zt9J{-R4}$|tL>Wdo&J23Vg*!`zu{6=Xly_77G^r8+s_S}@Gt;kx&)+>5sKZ?C}s4=WUi8i!sPWq{a zww#sP`9$cHGM58vN$5%pD@8p`V6P_E<{0ql^p0IPWkZV3vlw(y`m%K2#=vY1Tr{j$0PlxPGodL`Eemv#~ ztWnsPJ6?Sp3wl4ehEy(Rnw+|x`u<#|=tetcer}Z%Ay!CTCz4k(hCzzEb&%YAfD<1s zzlDlPTi#gTq#Qk*WJse;Y*JD#l*I<+81V`QOg^+kbB5N0FJkuDuaNDcF9ZHP0&>psw%$`s9dltW>xIy{1je_DPh5K(rJP?Y-d;D+?K|}Xo2`$U`wn(wMt3iP zZfWjI`cgW@i0FB(9>BLwyXCeI`k~=)r9XJaJ>zhpn$g!+n-sxs^jrB##;E#JOxnD} z!;u&6-|`k%8)9ilhX-}3T7G9(8*b6$bjfx#Txt%JILiL1@(c5y;h83%7N7V}URAnu}Pl zLWtXBveR#H{J^_T6OE_M21x3E!Zr##v=Y7GYti-VOnGWBP%`P$vbAbfLG6^;A2{-L zs>Z762Hp^JQ;V=NC8w(O*^RX!DhL|H;qQ5QAU-V*_usxM@O7BMp(V?=TZXlfJ;?Um zvfG3E5xgt~jN}u1yRF~*@k+~}_){_U0)&i0ma%VnxdHY=bDNYnTI#?A+WM{74KGXj zA-0DZ%Vhd3r<#D3khmtfAD#rs8@Tq?LwqdJW2DKSwC8q1eKg^5%A}czNBal=dl3;i zkt^dTJu1q+jDFu#F`QIS?HMb<7rIh|9|+0=4ZaPSB0|xNb>N5*gm~itGaZF2-$p2g zn1ux2INl}{%jp#ZJ|8DG{{6aRWyb3C@yt$Xe1#0(j$D?pymQ}APD#w?Jod0y9&@?N zI4GrFOa0x&5o#voS#y%Pq8b!v!qC%!0?!bIuZv9k`lIG=*-L-LUkM5nY}OQaITwsD z5lzsktX5(M*xh*qd0ueR;#nD(o)}QF7P0}?^C3uW74Kss5PhL#T$1{ZRu_)mw)s9D7Ad1A-=U$Uo1}0&*?Z23f`1q__oh}NSuVeR>xs|Q0D&2o z=&r9EGM<7Ue_cmi8AckEfolE7hWqI2^+#(H-!p?A_|Mda%6}sTY^=p>wG%Qq zl^A~2w6(rj>0cgtJTf+SaLrOq^R44^EBu$!0=q_JKU&lW*=*$IF=nId60s|UdhWcWZg|*}lsI$hFbxjRnM@^1JgkHpEZa=(x88?<*lJ zuZkt3ZYT$Dbs%DN++415hVE@?N^&7aFW2wC=%&?Djd-5#{?DQ=_Tqh% z1pLqgPnaQZL^MxTWJ5)Q!!@Ug=6kD#mSSe@p>;b3tzDCxB)$t8SUU=x>ug6kC_17` zR@SJ_{fZ8M0-3$QSXd2#&+dxbn_*h7oQF0`>Le->M~rh~=UI7Ch7 z{8|p#Qd9TUs}bJ~5l(NZUii30LrEH26W)tx5^T|Iq0%K61r|<#i~0ru+~F?7k^)h* z9fC2P9H*T(V^@huTr4qzDv!F1>??UE>t!gmqhax$sO4MiWX@)FeWDoBOGM1cTcpA$ zn*5o=?Ms*COR&uwjaRE@NdJO*x(%ZcGG2hh9bM1uH?pa($L}*x7di{H!aSGQr;O#> z{lVv-8LavutG;440K5IPL6+@r(0S*7hOh1DV~a$;-BKi{K%c!3>Yd+iJGVR7c-9)e z6|x2Ie7QqJfvW{uDCdf&ETcA~RrO>?JAQL;VEW-y#87%21tA1Qx5Ow<(k)-7R>Ul8 zd(8vZ7YXVNDDsV_PNk|AmJ%dau)&%HvN(+zSm7JoRQpNA=ey@6v{GZ4wOtx65BdXHp0?76Jl6}Ouscev zhSD2RlG8`J@#kuvYcG7Z7N!mci)r+21k(@bM*Cf0Y*b%|1gGs?qzqij2Y=RXzN1e6 zHVtle#x@ycj-RkdAlC@bN43OIXn8Im$z(o<-Q_;)%>OjH#&DYx%nVr2YZNO^iV*lwXaB{eK6cSG4 zym@0plhbl9~rM^D7Y4{Ut}F?~`Dn=eA$nbC9Hy=Xdn zS4L?icXx{Ese8|SfNiUdehzs$y-wYE-TV}E%6Y)WBO9rFE?RELwJgL6f@cpzb~{Mue~Lh@$kwQZ(0?}*H5eQ8%^VgU$lmMO zJ89oA+%bTKU2esPukK=Z2jzJH3p@VrX|Fr}fqwKtWQT~tUck`Mu3Iq^M#oPaWM#1} z*%(?-?hZh&-!!L>Wz4!rlW+210^Jg7#+FxUfL<8&pz9%`^<48`Iu7UHo?C|(Z%xQ& z^%1ntzx!r?x)kUu<54EnA!AWZ40=5G40;F|D$>k1qoGF8C#6kptPKNO}6C9`B@ zEpCxpbD~6zpmoeNhH)jIQMgHFT&g$^SkMs-wED1Dp!56x_kp%J!`dLopcB4y{Km*} zrX6Vj@1A*aE_Ek_I|?PqGrL!#Y8Kog#|q6<DQZeQi=H`Qq1-4saUhPgRZrup1T? z6!$^pI*{Ohb)c5^X!e&|A%EsVKs|sO-xYn_{a^hEt2uB#I`A+l?V~Ph!%kr6FEIKy z%6BsG8`MX$;Rh8I!lY_+Cl?YkVK7jIQ{ zLSuDi3X#+QGo1jGm4S=Dv{Ee87xrDwzENOmnc7%@>4@3RED-EqJ6=|8yVf+D!YSsK zEBd&`8mT^7^SjHpt0~!T>I#( zLDw}_6VXF`vp7C2Yx2?nVft?Xc$Y)iD|3x1p8&P{-#oH$3k*FA-XqcYD6PSz3)L%l z&Ynq|TBT%7Kl6~uvDbQ{@f~W@wFv#Mg@qdr%&84O5HVjRQLDbgw3xz=0yZHT19hA> z^!R`|+?7f}a*WQkqpr11lOmwbBR)&sAy_kH8L-cIv{+mg13%sU!6iOZk*Z~>McomC zV%tWvr^Ja?;xrO}6Ie%>`k6~?hBZ_SVaiSjcySau^hha(^#YUoq$zXwZXtNot@Vax0-|zdl@=hf_7sb!NK>` zmOgsTwv}`o03pL|j?(`1&l_PKFx`FNol4uLvEwaR4a_+U{@jjDLc2gb4E#K?%}T@X z(k_9YaKI3RCTIbSEwA=9XrXh(qzJo9j5ECsnG z!jeV?7rO%pqj#Qfh58Bx@C8^N)5i~Acf5NmV^w-=w0P~|>LU@^j{<9TlF;fFTPPUY z5DGlT7n-=g?%mK?7dT@3_#tL#DR%bz>mQl&ST&RXK-7-Q2Hv}f4mE_UgstE5|FM3- zGq8ZF1gQR-T&BzQzedzQ|A`*C|6lYd)edp}{&e-Hg&0@M-{>uf83WZMP3B#QSM~JQ zEA03FO(QbUL=8Z2AX)GIB5t<41|tqSD*vT2>i7w#Sojp~dEtZA-zTYi&1C_tLc%la zLvQ|zMWPeZJ~qwKwNOe{Dh{ZP??6+k{Z*g``-fm|2ARU!rFxLcQNU>V!1-sDDp16= zLo!+Jv{kj^wQ76Pj%^2=>^xE*%Gt)Vb`0C`i)nYCjB#xp-HhCG=34_{eZ2*aQFXs} zNS21~uxbNpq)DA`-BXZCLWze^Bd}ah++TjaZgBMQ%3peE!+hBiti^H|4BuwOvjos- z0sK)4kQ&-X1&yP@A2474@4wQ`K`GuV-YxAB()pG^f;|tZDt4vBQ-8VYW!lHxb74aQ z*+|jg($g5+ZX1le6(chfgs|Y8EtLy^6>=m47WA@ju9JLmqXef!@_vm&g&^1q^YbiV z9?#^zr@-ESz$vg5j7@aRse&V` z-}Q+r+>D7P^a6-raS7Yg2lZ>UzBLaL;Lvq@)x`4Z5H>mPNAR}iv^iUD>l-ruYa z^oDI#{JU#*TroKNLYjYI9r!OlMfmN7E~^NFl+t+HHrQj?fAE-}MOUP3d5otVUM&4? z9=>L?yk;)_?&?NldVNRD-*e3}?4L}wP(TNmLqIeh76h=UlVUjxe!-k_{cnN4zvAEg zh9*|N>z|I8k*j|J*$0&t-YPRU&W(5ROEb=O_Ir?TJm8GBUZV46!`d(u9(}M30Z!oF zxmNRbr!S+bWy7YqR2Ptge50hJ6DB|8C?{Uhh@?l!ZUx`$Ke(uP_Jc9cmyV({7aH@+ z65=s%qzn?iXjoEU9gHjK7%Pa4&XX6MZyn5&zZ$H`Y};Lyu%H0z5e;L{@TeQkl-v0z zt6ashgw96fg9pj!);2fWwA81#M-u(kP9}}5ZVzp6?8OyUH2T`(M6MK*x%MdEPrmp# z;6XCWM;fe-L1QOGu6bZC|B+Xs_AH&s>nqQb-!*bOcj*1!$7%Y}SrsH@LgeIKxi>~-!-;;p zR@R2O&k}$O4!9-rjgWMsrX(aXVn#K^I(IjX7WL%j+xt^IFt^!;`rS*mvw3`bFQe=> zz{`WlX4N-Mv}BXqe6xYzhdkz+wJ_1nJigSq|GdpEa+F=Y+(^Lk9@VvX79K7_R*~;y zJ)QawI{zpeG|lxpxvl;qoT&LK|=82?}3KOT`v?{^PEctV6P$R~x5Oy*3yW$}c|xs1ntxhAi(=mQx6J!$(`^_dPd{ z3NQzcq3GRpTM5J#wFt;(;=z3@FoAPd@rUKB*}%ktY{zCv10|;Oe}b~pZ7$)SFUnqM z;MxH?7ny*lC^Qp*pi^|c3TABNgjK@Xn-|Bp((Ef2?`^+2)}k}^6_eh=ER49xp{N9RvfY1 z{B#>zA3QQb3SjWhfvyZ^v;51dr?1?zLdhJo?6S76Z%8(C5EP7j+U5(dC-k?T2ZkZg zh>lm;-F)Yi@xCMT_&oXE=qD}`YM_=JYVb_2AT&H@*Pc?{ecB$8uhcs?n&;y;T^8$R}zP_1Q3+{2ifWq{5a_2$uQ;wtv@)}tnxokL3NGGPSJ#jrMsN= z;${2~<-CjYYZs^#_YfD~9_VO;pqCX|6-bUg?Uen75iuJWNg0NN>!mvZ3=x&}hRGa= zBjG!mi^c>+g&QCL2Q!9?g6HvE-fBr48z(M|Q-bKv*e@LwTor=_Q|GtUHKF=fh7Gp_ zZ{-e^4ZreZWPgP@uT20}oKD+c23YXyjrHR|PpX;b-qPEB<;bu;I1c17+24;ImH)d2 z75nO-t2S@_cya0mxkhHwBi6fQvAuK5cC|(fGt)Rm<@jpGPFmf44^*ldkeGTf*sH0Z zXcq&51U-Ooe<_KWI%k%vs@GFge#V1mFH|32!6(So<5HGxOzxkf<*jHP{z=V})7uNb zsJps|tTSfj8|ynD=v}65qiX~giXL9m_RR1|ZJtl{!@KnjF3uE8-<*XWe2T2%sU;nv zR$V1TWRK+4*+W$*`!O|^RXc;7)NWQhzSFyfd`{5 z_2Atr_9E|_v{cGbX1UB0qa}<1^DP0GqeEF%5}QSsHYJTFSB!R;ilbL5E6Rivg>g~k zpWJ}#^mP4b!laD7%uB6Z$Ib$k@gOJ=&{A+wc2+4Dax=sM{5LdyiMUU?ywj{y7leo* zi0_x^+cF^%$N%)S#!KID7=-sjBkuDRZ9o5^q3e_ghKs(9gI}-dQi>}F=jxc9*-j|V zKf}!#ei&%FR+Kk-;z;CQXvXY@8o&5wJU%s?1&@U%`!yWp|LA{uI$D`61p@-$S_UsW zDi3FM|3A%LXH=8vw*C+taz+7jrAbp^bR0q*sZvz}j*fyN5L##sJs>TV1cD7Dq0Ec| zDpeR%I?^E|fEZ9(2tp{K1|c9l0Ro0{zIe`B_nx!v`FYp6-`}kDy(RCvzi03LJbUYa zx5-ciCXm}7P<_3Czpw~|?IF{GaqkTNtiVYasrcz${gC&MVULpHXZZ{E0aKDF1QgQ7(~EJGzavy=SR3Qu-`G{(a5 zqxqOo5N%rp68L$|Z+-&~yAjwA`fe+my!>%dmEwCN&`sXd`LB!DV9p(oAf}!oq(308!wA*p zVRGd)dRHudye(#CM(NYwkeXkF7>}RyuETQ3m-m$vCyp;8_^8_yWJwG~FQ>Id0TX<8 zf9bgt9j9=5%JjR~^)-d^&4Rk*_*oArKyrFAsNUjHp3^mAwtH0-X z?%muw9itJK_C1gx9BcFlH@GN0)VR(0Mt8fxj51I8^vtB<>;AmH^pJj8cuxQ1nXxLaelWaq>Y-hnSDb$25 zDV!A3D@X;7QJGq0(Yn|zieg;fU30g3Tb5tCr#fw;f3J^>~^RWF?rn3@ufB`xgOk&dL4Cl(gf@pq zORo~9^WI+9#JxnH*IM-nx<2EuRXu)vvYutaFsrV~Ls{_flO29wfDv_O^mda1N@w)W zZGEA{wK9lAzDRp?k#{pc$9=#;Qzq|GV^&HIGSfBgw?yFlPfDOFBXC&cQD?LzXtmZV z45vbXc0vCQ{{-Q&?Hy)8m)OE{DX~K6TxuIRzRtfmP?m(i4=EbTaSD%%EiBs@9t#J{ zTACgg+nS}O#IG`^LA6S~fGZTNK%QS`ZMj@11DOBr7$8VN)7tS04sgex;-lBIA>oQk zFeHJBuO0Fhthe z%7iS*oG_&LS2E8vlIU#>-Jp<)A$5diK^i&V$l{9pv^}Tk7||Ws>e+g8<8ea#V#JzSv${gA ztjPJT3d0HkSDJOt@?}$x1mQP$9?Mto}JPk^#oS$8bffDLjYW=yOp|+xH4-XgC5< zO=7N^LeWwZTuOvdl(pSz5Zuz1%V(pBbqUf1HEa)(rqnN``2tcBBoufieJMPq*ZMI> z!|k;AHVFyRcHb@u~v0UG5i(USWX#Yfh zv5#)Ze&z5$`pU`!un_{~_7QvI-TG0-J|obtF$MHo z39;g04TBUJchUL?((8!`xRtok_Zg)sW6l6VBrz`?v0(^{lRg3ngG97iwr}K(>ioX} z1pTivo07|g?%sFhEYj3<`oY|tT{SE3wV(Esc;(Sji~}vB{$}7T``9|zyW9!JtuW{Z zG$eI9!8*29r64`aS6Z5Mi}1+wYt@gr{1bW#SkgK7)BRNTx2!O8NxxQ>{+0|Kr>ch^}EN!c12 zCfm^I*6ov!oLE zKog3kB{NNw@;ZFOZuCDZI#sJ0rL21dPw3X(ARp%Gn;p5voz0?=Ocuybpgo1a6~YMTbVCVs*mH51OB=A|O(L z0(hpBZ3mKKb<2K%Hp%$_(h{6{iE=mwkCt$|x|A$^O7cF z;4O%a5`3R#9MaYl$z7^x)dNKS`pdM$v_KFn}f@|4D?^_U}* zOlJTUV{|1`mAO9?sR^epBuEQtoOhFlWp%_b_eXOG^53u!$ORQ_c@y!t zm#t67Ym`AOD?5u?X~hM*Q!>r!aXin0N3!^MHh7B--$*f@!lI;f9I%%Fy=?*4hPqo1 zVL_!SXMsdNq)M(8X>OKsA#YjYa(I_SYcS1NRzx7#Lsc^EC*^l9AV1e+yu?`&{E#JT z$TA3FW>nX~z78AcKw5ce3>E{Lm@!cI%W3@-ZIk`_k@9*`UWb<<>A+G{4zz zE%s*kY|+3#o!p7n#LANm^vy^AsOA&!M(S+l`R+(ai zpN_f*)cq;LeDi`i(RYB1=ccmKRKymR7G8Allz#A`Z!r-v%eqm@=7Db`TsG*w;@|(x zK5olMb>#$YrmAj8Zxrz`ghnU&rPI(dr84r|%5BR(hh0D}Ed~MFfRP|GhU(~@e6HU= zQ6*qSr2Qwf2TGRy4X>WLL({3b4w^he6%2wNP%ZnfX!hUH>VL!8SvULtJkGzM%KshA zj_3YQsOzn};&YX6yVfd73_(ab3gYl;a9Xjo8sEZtxCrY9x523GM*L`!O!BfhV}K8B z|4*J54mQQkBEEj5^Z{S@2i#w&b?>O**wqnB77zwGaI5K;W8M!#*aE#!MdriI2ITn^sY zcEMJkryi7)-y3LhkT0>ZP_K3VbJc@>bEV24NRC&zFGk0Q3}-QUW~9*`^pUHK(i5Jj z5W9Vn*zGTEyPK@4dm;kio6HNMue5i#DGEd@Ezj(JzF7Un>J8_*IB=^Uu7fMgcCRgzDnbB zm=q9KXzvBoG)v`3yd3Y|t!mfVjwHS z=Jgy;&jGX!%m}6zgQy>8zteDHu#Nj-@GsR(Z6Na*jy{0&XV3^C#zmo|Mjp?atm84( z56&{SDEkn|MZJQr0YA+ZX3m+qXJv#h*q64OlHs7kfxoNl3U7KaK@ z9&dufL`hF^0XF)5_SX8@!F^h9Ti4Bjs2j5!MLh;`B)~cbO9FeV=^=Y$!~~IS*xH7M5oEzo+WTa-F9~S#-QNn5kb=KvLuo9-D91k(5JF6nQ8 z!PQAW=Y>7m1LZ?a;hdSoWe^JrX+UdJL7_cD@?KXbmWar`<3iUCbPmU_R=o<98+2=7 zRQ4V=?PN&WrjuC%yQIO8>{KM-u3sb>^|l#&NmhC@ximPds^4#sy=q(&Dz9rhN^8ZM zyrqilXeWn=U$m`}nn=U)R-#xE0>f~6qaKFcCQ~~*(QqsM2DUsQ8{=k9A1r=b1nE0#Tjo)tJ7*)(8x*vgfzh)VL_QmI za2kpEEoP#av@mCr{IVWBIPqYHQ(H~$N4|K3b93IeKQCLIo^q8{>75P@O~ZeQDBzrH&Cx6ju5a-;yzNKGW zNj)rLtQ%Drjrhvpql_a<50=)DUN>n^miDm3RQs8!ADdomssbuoj-vO{Je`eLMGUob z&M99s)jrC^SDly1B!tV#+3k##F1@=OLw#CT@s7Uo2bwrE-v_Fy)o z$#79dL9RJx3C$14YV~J;%+7!)n|+qO{Y-Yq?9RNRUPAVj85l$B2vGduaBNlMjwpqt za2<#^wMZVa4=RzZoICQuzw4_4U>h&6+THjr?@R5qsGvl@MtxRNFPuI#R=PT8V4G4n z64uQ|A2Z45Ya`1#mwV=%X!REIKWUS!9>s&NzGoZ8u6iY1rX?d+4)U8&7Uds(1Bny0 z=@YeGUm{T(;dy#1(47WVszk)8<^V}S{=V;92Oet48hJTAP*SpfNEDiE1{|Lr-Y@af zeCU2|##A^K)Izxn{8=>dU92!WN4uCE?lZ9Hi=lIY3d5s%aTRIt8Mbw*+z?CIMLO7RH z#7nu0y0MU1UhaRKb=O6G^xEc_4pH(`)r4^DBX2IWH(lyO;*`{zm^gQ#(9u!dXt3YiC!Q$;{j>WXy2;s_X!4}A>;)c(_1Lga#4i`-7zKAcQ z#mM}$L4?d@)a=^g7QA>z3Ga|WTBe>kW5*`V4u zFESaPLwV0m24Nm7(`|akGryZWO~ycnE$?FZfxSzhq;TFw{N+{cjc2LyGH?7l4-84{ z6O={yog9J&_^IBr(>?-le~a&xLOe8>J*E2YmGqYWt5$TvlF+VOSQ7~`(V zAng8x*wu0_Si6D5+44+k8!-pZr4oB_$8Exxu(s@q_D=bfCofeDlq)+Ehqnrr`libC zsEZky`N>ObFIy;An+6ZVJz3>}KEVM*qNF1SZ0H)?J6Y<~<^E{ax3BKJUlSXwl?Z73 zD$#nq3jh1-M)pF?-`kHYslw%3DxqzX3#$wVE3Cmhu*66Qd>*7MxSi8eKOXw(zUm5 zD6zRsnJy{I1v>So7ab^#QOjGitcu16^ZXDk#e)(s+6pRss`C4h?OV(-9R_t6YXUb& zL3wJ|r&)9Ss_F*5lWZ*I+Y^mp#UBXSe`I8S%Sd~lq&cca?Mht!PE*xlPt z(`(Z6HUAO-qu07eq)7+vD@5oGeh%;d_0#9Fk6ZJTIt27be9OfC0>5EacFFbr-vLF7 BpNs$i literal 0 HcmV?d00001 diff --git a/docs/_modules/index.html b/docs/_modules/index.html index c1cdbb1..f5c0c48 100644 --- a/docs/_modules/index.html +++ b/docs/_modules/index.html @@ -85,6 +85,7 @@

Intro