From bee7dee25614c28a51ba244d81368cb501a3c6f3 Mon Sep 17 00:00:00 2001
From: chylex <contact@chylex.com>
Date: Thu, 15 Oct 2020 12:13:18 +0200
Subject: [PATCH] Add core files w/ config serialization, options screen, and
 keybind registration

---
 logo.afdesign                                 | Bin 0 -> 91709 bytes
 .../bettercontrols/BetterControlsMod.java     |  11 ++
 .../config/BetterControlsConfig.java          |  26 ++++
 .../config/ConfigSerializer.java              |  62 +++++++++
 .../chylex/bettercontrols/config/Json.java    |  54 ++++++++
 .../gui/BetterControlsScreen.java             | 104 +++++++++++++++
 .../gui/ControlsScreenPatcher.java            |  36 +++++
 .../bettercontrols/gui/OptionListWidget.java  | 126 ++++++++++++++++++
 .../gui/elements/BooleanValueWidget.java      |  27 ++++
 .../gui/elements/CycleButtonWidget.java       |  36 +++++
 .../elements/DiscreteValueSliderWidget.java   |  41 ++++++
 .../gui/elements/KeyBindingWidget.java        |  89 +++++++++++++
 .../bettercontrols/gui/elements/Option.java   |  26 ++++
 .../gui/elements/TextWidget.java              |  73 ++++++++++
 .../input/KeyBindingWithModifier.java         |  33 +++++
 .../bettercontrols/input/ModifierKey.java     |  42 ++++++
 .../mixin/AccessKeyBindingFields.java         |  13 ++
 .../mixin/AccessScreenButtons.java            |  16 +++
 .../mixin/HookLoadGameOptions.java            |  34 +++++
 .../bettercontrols/mixin/HookOpenScreen.java  |  22 +++
 .../resources/assets/bettercontrols/icon.png  | Bin 0 -> 21941 bytes
 .../assets/bettercontrols/lang/en_us.json     |   3 +
 src/main/resources/fabric.mod.json            |  36 +++++
 src/main/resources/mixins.json                |  15 +++
 24 files changed, 925 insertions(+)
 create mode 100644 logo.afdesign
 create mode 100644 src/main/java/chylex/bettercontrols/BetterControlsMod.java
 create mode 100644 src/main/java/chylex/bettercontrols/config/BetterControlsConfig.java
 create mode 100644 src/main/java/chylex/bettercontrols/config/ConfigSerializer.java
 create mode 100644 src/main/java/chylex/bettercontrols/config/Json.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/ControlsScreenPatcher.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/OptionListWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/BooleanValueWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/CycleButtonWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/DiscreteValueSliderWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/Option.java
 create mode 100644 src/main/java/chylex/bettercontrols/gui/elements/TextWidget.java
 create mode 100644 src/main/java/chylex/bettercontrols/input/KeyBindingWithModifier.java
 create mode 100644 src/main/java/chylex/bettercontrols/input/ModifierKey.java
 create mode 100644 src/main/java/chylex/bettercontrols/mixin/AccessKeyBindingFields.java
 create mode 100644 src/main/java/chylex/bettercontrols/mixin/AccessScreenButtons.java
 create mode 100644 src/main/java/chylex/bettercontrols/mixin/HookLoadGameOptions.java
 create mode 100644 src/main/java/chylex/bettercontrols/mixin/HookOpenScreen.java
 create mode 100644 src/main/resources/assets/bettercontrols/icon.png
 create mode 100644 src/main/resources/assets/bettercontrols/lang/en_us.json
 create mode 100644 src/main/resources/fabric.mod.json
 create mode 100644 src/main/resources/mixins.json

diff --git a/logo.afdesign b/logo.afdesign
new file mode 100644
index 0000000000000000000000000000000000000000..268a6ad451113e57d5e1ce8eebab5ae5362b64b1
GIT binary patch
literal 91709
zcmZ^KWmq1u(&&r3ySuv=cXusN+@0cD+}+(BN^ysx#odY**Wv|=ys(#^bH1N<o@Y0c
z*<_Q<%w{t)2?$UWM*@LBPHwJhRPs(%zXabi@1P{~-!$QW`TyoXAiA|k<9|5h|1LFG
zXLqP~oJz*lfxeaP6(q;9387GsIU$EGHUke@??VhqR5Jp%-Imt4xvSqaAfq>jXXo7j
z4Y$!4Z@p{z&5&);ET|^D^&G)!PEUmkq*VxO&>DjxNlc_a#R^w@jv+>nSy8xAOf4?|
zz;?$e+yvr00?w3`kA>TOP4z@?iI7Aq6^+(H>h5hUZ!Ys|uCIO3nA$p$OvWyVRXR^v
zziKe+y(M=M4-o33w1qs*_{#Mmg1skMuo8SS@A4nsjN?VRi{6Y4q1+@qKEbOn3QQH~
zKUXF<Cp9avMY^O=5f7%k2y;k<gR+Fq*4=gYMK7ChSc5{%rx5tD7=mU$2vQw*trgHZ
ztG9_H<pzr*@WpY2?6vFRF%c$_TPAMC@bs0_@TSc=dJg3wX9V@9xZRisTV`8H1qiN<
zAnTK(<r2s7#k$Lj?esezmrAl9R2dx<JcGh@2UdMAxmu(Y8H5HXWvRN#)k-*LuYLw2
zjA&u2xN7MA!eSl#FnCoplbo&~{5S^T;vEiZhP>a@;E<(sZ8%8UPhQRrUV+E~t7rz0
z4_SCnd>n!%AyVO&0;>>F(}qP5%Dd|5{On0eHVZoT+~{$Ka-|)=kE=3SWkgTjUL=#7
z38ROI$Xm=Uz~jK@z4k+_j$k3NwmQLAlcRQ?Q}A|b#i9tqpztmAu(2(Mgyw=hY+v7S
zk55#Xc;H~)8$yRB1{>L{OOWzGNunSx%EaeNoOZ6%f(F<ZsKiyn+3lg=6d|6bBNp?d
zFm|L=%W1M9C(n2IHr#E+@iw59c?QtgOs|IBn!lOAB0+ofyK7U^m>5|n+;+$7BE*v8
zGv22o6ONs@aKZF#(C-AH!e8d0az5Y7=*sw9w(+tzUH7-z@F>EPJ8?FoY&(8ICoug}
zR?=AD-4HcEjU3RvEWT^ITq<Xc!ue^#tod%!(L%*W&rP;2UTda|UaFO@Z=)97ZW~3e
zD|R%-ut<S1pgkNxLS;wlqLf%Ch9w1lcB^7Yxfl<0YD<yY8!#eiew!OVUqWfYpnq}@
z2`fXc4hsvmk`#j_Ywf_k2#<ut%RWpvw)&&49t^!N9qM@9zXb1IaPT)LmjT;AMpjr#
zJ`<i@j{Whw=T9j5ZB)k}*#ikS#Sfh;63nh{9^rCy*^D3rlrZWsXCAb(19c3VFdfQW
za#)f`gPnFlXptsr(B26Lon0;AK>GEj9b8f)sQacO)AQF)iy(B#fUlkA2KYvLwnvn>
zNxdJ|`ki?w`7+4dlXIA%$p|E$b$y&#sgNBR!ji-?4;%VzLuA?emZL(9f?Qz~a{2Le
zLnam8s}v_8*T`krS>toi^*p}%IPu^LiMV%~M2J9XNhXPyDIK&E%IxA=K>f7Q((x~<
zntpseo5w5*t%dIzc1`g`Lb};xOM`C%xhfQI2w1R66@^V)tvJM$5K+pV{frR8OT%D-
z=rbnoWnuN7JF!L<CELU*5&DaCPXnD*kNG-fW~_ztG;zf@LM@~gcW^?dG4~UW5B}!G
z^485G>~C?QMVbK~y`#@1UaWU=7zp8cP3NIf9@6O65AigNU#srmS>7rJvDXk49N=Nv
zAGZTqP?h)G`G8}4vssU*Aiyd|N%UM2N~?={ICk|nvIIk4dWvvD8m0M1A^|vHz*EYc
z+*CvMn}zy*(3<dHrv2DO6n2}r1$3hdsomy`ZMKL-37GA<g&GNd{GtJ@09D}~i4b@W
zdX@`_%uuP>Ave`}b{`~ac75Li^R^*HroKu!og`hXAr-}3B}kGd3Yfmi8Js!&vH8-{
zpc-`Y9lcrM_>!~cW0n@JU`p<FC9b|oH6?FQ=TKR>M!;|<hEu=uU!}Y8ISLH@n21p0
zY--Dbjqp@cC|Vb%7HlX%l@KGF<n1~bMQQbjT75)33k@~YsBKo1HhD9LJpJck1qbDX
zX}50f0Dg9el!XQ6IBfN;If;O7&KccPaykXYS!9BNB9sy5_S&#4Qe|%zl9o`%VNCDK
z7D(!~9jwao@<7H%2#>HsuN;tVP7(QIQMv!#hcz*J<i2t?be?Nhq_#UacnO;{ct5Ap
zf^t;U&owp-KXGxR=a$BtZLzrQ7X@kcW2lp0?G(mBw&w-O;LVy$98OaSK7)35=iFo+
z=jKL7$cz=;xaXI2^1u-V*SljVBN!yoViBbLD(wBvHd(T>*o0zd$C>;1yqt&yM7{>%
zKVDPHiy5A$f{qcBzyS&+!D0N`n-O-q(+r_v16RiwC50FYN_O=5vNR6Cn1gQZzCw>C
z((vICHFHN#lyf;?nct99vzSvq)$!a!=r9oj3Mq0Ru@4#4WDO5sA-yGTH&ukru<Q^}
zP#pEC22$9i0|Y6^n+D>=*`E>MReZytxxt>O*O81Vc*L&;#h{#eG!>!t<}h+%BWj3l
zn&OL4BK;b$XD<>$EmBsOFlI|hMd{7P6i-vNly#`gr)^4YfiX8h0J!3+z)CGZ{!G`G
zFT`kd0-|ZfnnHL`K*77-@PSxLM3cB{$<B-97tzwX-n1qysY%m)UbIq6(A9@;PTjWF
zp%22Abh76nmNKFDjoRbW&-^Cs5MyD>MX%zDPHuVD`3b{<dUZjfVmiYvX=ra;KcJoZ
z$M+|f;)^DFUR`TV5wOz`cQDp?LYWh3FyeQqiQ7$8>NGe=7BQ|3K~tKnr<83~K~+6m
z?+f4RNQX%jbsTU6?)A|LDzS*L3`{s-$DW*!mwPk@gdUvD+=PNUHyvRVMPGS8CTmfI
zjQ|3ch_O75{UZyG#IS<FngN|DC02NY%$S?v>5>?CDNJKLI}c__Y^X#)W%4R$hKg{W
zbZ<EX7fpNaTJU00YJ&zN;h||a8l6A-v~#h**O&2Ciu)^6thR+D=!pfVbdLbEq-s5Y
zz^FO64++j-4Ug-U^0%!e*Mz|rkQ4sv<`hI$gdk@_X1vMHaLdp)KY?8YB`g1%I27B~
z)Px4MZ+<hb28RFh-BOVtg}+)=;l|Tp5FW4lK!ROLKP)!BZQ8a~Y+L`Xd8zs${U>wE
z0}O}&u3RUxu{~ECROCppvbkCT(!Z|wbo_%9%={!Dn`-5x(mk+%?7XK-Q6mAP^m>i6
z$Evz-x*jVPz56{~4u+o%8C~`E1K}v#ZDH@XA?`gk%I%f=V!8>$YeL4Lf9~YKr6uV~
z?gFX(b}b%$($<rE0M%y~M_j*QkFFm86n&e^s0>T-+Du2&L<P~x(Y)9G1gjTc-O$nH
zDD$L(SC*w7O*de@#zKqTjbkbCD*Ba|H!k-b6lGd}Rx}Tm{Zt9>VqQvK@ajMk(Gd7#
zsG~W)WcuJS@A=6_Ugxi<b1_YOQ7@0Q;=|`_meaHvnO3^5{>@7{wfI(<6AfUbVoS$4
zB?g|O`P6dv>|tWnlxK<rjI8uEth_&1bTP^7gwKZk)WwKK&<wWZ!G#~x6Q;|C#Uhcq
zYH+^?^~a)yu_HDWQR`NXp%4jGNl@E_%tWR^V!4ZpkT=XfC25#If(8)NhzBJ?L*&t8
zQY3Y4)Yxs)=u``Yd~TufTy_V;k?>dtaL4`wAxz+azU?bKZt9cStG_R=LE;!4pWllp
zW||PO8oZ+mG&1lw&jLJ+3%D^rY`?_M>ay(cNtz`u>ZMM17_G)R$>6VF2qdzFx8hZ*
zx?hC-88)iZ0KM>D73HVV+LrJ)QBYQT+uW}eT&?hDVEIB3f%5U8-f4~v9hfuR`rH`b
z^fZGw5Y-*Z6YX$iGM(8W$VBXfvhj_62@Thvt3ku^Es?m(4&cD#cLzkFNxSS8jRGG5
zvf8Qh<u44!MP&e}cH(0+6|g$i>m=Y{kUL`Z*65PYD!v1(R#}FP5VUG}od#ZCpgHA>
zV+kpIc}n66LZF_s={_Q}Zj{-DtCjiGo(bUPJHC+N<+Hp1${iiNvERY_djf`UeQ;nh
zwAf+ZOCVBu+3;+uucKrNc&zHOC#l%1$X$5c4&8*~#~hITx3rGn&>v}yQ^*#2Z&z^`
zGvg@{FvkQMV}|nzvKj08(rZ56z4}U!Hp+SocQfJ!_ta3Rj}ak$tE;Q2`U!Bg<>}jF
zza@Ten+UVK&iF)292zc3>He4XRPe$@I$IfRu5-o-1R?;VHF}eAFM-P^N)o{+r93Gn
z=Sah>#Y$Y#Ue7sCHU8<sJ<|T8o>^n>H^A5(b9^tvIj~W&3mU`!rMql`1|EEvC*Y;Z
zIJxv|J&(0CVTjOr%k)z`-PYd9rF^^hyHz3o5kCCcnewz|t^!=hG~w{p_dc$Bvif<N
z6~MYjCUfjpxxa=8o$+k7lJcYIj~f46^<J_igonPNM(tj8CoKJ=Jl>CV?JEc#Dai;x
z=7%nItEIwY@?8753V<YHCS&am7|Osp<9!|dG{My_Pyd>;2jIJX;o182@o*#V88H9q
zU-|}|$YiTOjY^!Z+;#l^diwCjM?#i+d6$jC`B${ixw?G`3Nlc%kPQ_W{WQKgDNKI-
z_s`QF`-svf`OS@m!T;sO8tR*l4}jJz$L}4~ymsQ_Id5E!{N<n2ydB#Hw+cs*3m0lD
zL?a1A%1xBtc~!`!^>%Z{>;DGek_v2Fvz?_qMCA2e0z~CCF<QM}NpUc2qz_QOh)_7!
zz(L<u)I@yjVXP@RBYFs9IVy`mB*@dlOfFU>%EPuQwGFoWg9@3pE#;kN5`xcZCEJbM
z$(!`!$5jKYl8vyqSY<hThh?KWhQAYsgcdkVU9ECU+8!}TLpNnxvTU>G)#Q(u>hzRc
zQ0Y88n05gc9?^pD`q{FMBRPl+yeXXp))l8G`kk4WT~3%r{`4g*bAMH;I!GtguTC+C
z_4;KD@-rm;ghb^srFs{+x`^whe2xK0n!QZ@S}+H5P#mHmI=Q}{x19DpmJULshPH<A
zuf!PdVJsbW2p@^o%G;VcEf2$Qy?Lui9Q}v^45ym1VPxcYYeaOP)^Vo~|KbsFbHUdT
z+qQ6`GczP9?6%{T(X)YT`%g2HlG%;UxP6`21ay_=iaZu)1w&P^Uk}Ee*=S%@wiZ-n
zmy6n_*b!p39pG^iFl$)zVNav!c1-5o$QIG(xS=+YFMQQGPLRS;p1v!jNDiw&sJy~f
z-%8IRVO$H^!{eBfr=%6wU6(eGgk5!fU1bSGw=uM7rLZS)&>a_x)TXXGOJ7#SF+vFc
zVV3yO;EM$5XL^_eoUakuLQIT|HD9-#C&Jos^=;D9p`})-sXu^Ec|_G>99q~jwxx+1
zU4rtcR_tR$lpuo;u>t}Q8_Z=gX>fewL&?n~)U<q^9>V1nb(1(tSMaOI5ym1*!K{O}
z#R#ZS8sBOA(K#h6(0BOI@f|WK&izk#=$RtJdX)JuYxugY3k|b$6!++ZghptT&(u~)
z{5Aayn3E)u5g>HvAsl)Ko-E=0c4VRK%|b-qu-0UkXJa07A&nru1@#m^ckev~F(&<`
z!u0DQb(vTpGJ5?b?_lX|phP=_2OXcIdWnd%ps#~6;oK}@rGhRFEu9b%jYDp6@ENwR
zur5k6K>>b&$}H+&I0=$K$V)30n~U*7Qbm2(Bd$q4|3SMuIxeTWe%DA$%5ItR1Rhvr
zao`7C3beTZd=4Rt7SY2dYc{tOt!~C?9ihL!TF>lNH7;fsp{;}sg^{b!iSEK)yS^rV
zrGouuq(&2F1RRdof|q>ky>KFlCF9g2X|*5-`o3*h=Awoa$onKR6_8Y?{Lt0PYLt>c
z$bpKqDJv^Q^02d#vcpZXc9n2EiRr`jT>iN8N+_NZQ!1QqEfjkYy|~tn7a<m}qvMj9
z4Q+fQk**A(a69*GbEF`?O;aaMP*Hew>bAxKLL{eNByVim2#IT2*tP~?Ampjf-kgmD
z4r7vp#C~U~rNkVB{BuR2i9PBM{^peJc?u^30c>v+7EYT<v{Q6&LP69I2!sVD5=Y8X
z4bD--Srn4V2@|#++f%1dT;3&NN6!xwH5}rKU&A1zAfX{2w`gzCA*eg4Skf0q95lwJ
zT}q{0DMS8NtSu1eYsHXXAjgslc^YVc`@U@V9TN3xgaqkw(nL(<b4`%Yc3RRHmXW;P
zH>uXux<i5>;a}@8=G>W5^O&ayw&y7*OEY%tDJN>{8j7kNL9)=cO9y;}+DP1)=9T5N
zVp|IS#lq@Ta#L%c6xG>%efG@#om%(_z#~Eia~jf9HH4t5i7UFb_2HGh6Yf?R+^=|V
zJAC@ZxT3lkd+T2Yl*zu~UUtmJjT~kP%z75C;#irKiKS}eET`eP)F_k_)_nZI$XK9t
z<uy$75Fkc+-Hz%bR%4uw_5qxaLU3b+f<UzHX!3PDjP`_jh;oV}Iy>P^FSQvtd(7E7
zH5LjgN@#8YH>rRvOW@rLa~+yPi~nOzgB@R6Moj*8bLK!B!P%_p-B^lxW6pLtYHuc?
zh!hO(Z_&b7Nvvf<f4uM?AkmW5K*{F?!I8<GeE73z&0RuVxoYZ}qnC(N;PZLxii@I$
z!7~yn9~U-Kz5g6Jps@4x!8+WsQu%ft1`^_3`y8s^e@C0Iu+BwBa~jg$zA$&+h?hs@
zc%pf$bh;5fUi`4zk)e=uT|eaXFAWG5Y0oD7b%&ZIc|n`hk18*nbGs3zq>-)g#q$EU
zUmB$pN@=Hk4Mbko09v?^IW8lqff#nlM38`@YND}ghezP~mJtPgef;~WDo96^LOVT)
z-oWQ~+I5UI3^Sz9*Q?6gFl}v#Z7rNR2XDD`GYGqn(bTjyo5&1Ei>>aZ!4fPiW@R5v
zq~gJ>njy#W?Z;osDU>3~(`$paE#rLg1x(MY7oBuFH4$Qpj(Oemi(^aKttypGG5g`^
zYHv5DA|o47KI5Np^UvTJl#yI-Ff%iSA{0@2td}uO3sB>FJ2jIaU7{0Atq+@;A*RKL
zfLULH@b+W~c`tnB?><pNV)c#Z(1V_8sFv#>_0uyx6yI$si+s)bwJy;uPGD~|HFn_j
zXZ#PWvvR4YUKW0HtqXi#t{peM%_raAEx4$~F3qx&E_{nd5;5`2`4tc#h#&~bkhBEi
zp08g$&MIr{)W1RA)<kH1>@i)&PCEXL5ZkluyjrRsEy_vDAz@na=AJ_)`_VQ{*;fgA
zMS-RjHwWINRowj($rcAOxoR5WZTEQEPJ7uf97%lWfJAy$|CLo1au_m!$*Kmnq6lm<
z^z0Tg1jDl5kb^BcOHz+FdGfXenSm5VtB@^24ijgH4&e@8b{cL0K1fM09)^&V8=jsb
zLA8KW{&x#cJ+XdV(I7l7rhJJ0S&IzMi3=wb6I=v?j7YiwibfXlpc!<bAA$KS_m6my
z{I(+r7<_D}gTGlhIG|#a^86!8gk>!J4`5QiAqjaL9y!I#9#crag}shZd~FH|OK4FR
z920bS_G?=VzRw5rRU{QD8rtM8XCHZ_@ApxH2boCcym;<zYODOuo{11=733f=D84T&
zz}03&r_V_k=AznzN2fQrq`pdF@owF!eOIFJ`;&V*#2lu8*zfUsKqFjYMC5T=sF?O!
z>5!}_NsyV{U~tB<(VKkpQ81AseIo|0Cp2weX1y9JsgSxrjFyGf8Hndm*b@@LyDLLZ
z|19)$Ko=W&_S=tU2-INYbQ=aN1hbu86S}^1a<KzSLKzkoD0v7*ob&!GYOV=gkVTul
zEiQ{DWFy1frY!tTlprX-)xGm56ssWQNx7^>Y6-WRSfFM!660G23>X)w<wV&Hwmg6`
z=-rgXMG@jl7KE*pu}PL;qQWghNwf*TlQ*dw&c|iFTSK0g5HF)1bf)5{MWB|7lP|=m
zCZ{y9TX3Ta4uXZkY{+>aNPyS5-ce)gOAU(d5HQs#orNvB<$>_*cc#IC7t~>mnzwc+
z;zA}q`Lj8J*r2<16C@@05uJNn5sK^JuP&SbYRk>Sq6(eGIGq=B|5f8QEH87ignctk
zz#duw>#Q)W;n0qmzoS(K1e7|X#@H1HCbbx}_+s58WfUzFIXOyS<}0oxBGTuasiZiZ
zFo8Qaw%0Tt4BDt%hlyb-60OGrFE<%(J0xUlu1WO09TjT&N5i&3N0=hII-?wQ?h8oM
z0k_<5%rtltAI=(StkXI1RRRQ!P41(yWI|LV1`#cD7M9*8$rAjq2wkhYWPB}Zc#QH<
zx585gFhod1IPKuR`pLu+Ti<K~Eq--M%-p!Rajdrx#h^164MLFkcE_}bMIs^;>4&?`
zX*oi73KNv%k+U1x87yJX_fMx}1_zb)^C?dlIVFgaYv_umK-5gYMse{18iGP-iq+f6
zvWVNoSGsMzW*TaU#!c&>y(t#1oWD^-`TmIeB`BT*EYl=Jt^|YT<et!6Ln9eY{^62B
zg#~|Ls2__TGp>emE*x|S8|yzLGxHdTg3WD}HO84x(;Web`lyvUt^lL`09l31)>bao
z+bkt8YuA!L0)s*zAX7Pqc$?U0K=TJMHDUfZe*PM`pu8S7A#ELd53s@a>pC@FyjmwO
z+x&ib>wD~yFMcyO{mmR|W{h_M!1X(}@HzBO=-5>ZjmnlbpNonR=4<l2qnc6iGhSzc
zOpZ0*kqXW25?5*C&q5+}ZQZJoL|jvnPs3(8D(moYLhe%`;1ZqOGcaxv6Rj*I@g7CH
z20j0t=qj|H0`2|pwjmJs&mg31jF12q!swKK+ZYlrQsj9~I}4j@(vg+nU4HF6afp5#
zt<6q(0w8xpC#&1OH(S|lATe_OPC0wC{^`&G<H2&W-i^c>6D;X^h#=;WYu_~!l7)XA
zyDMAu<7w&Dn2>iRM@_U#y@_-UX?b^<-^1(T4iMECcRwQ>1^|1_=d&5sjXJ}*a7sRh
z>mr3@)@s-4mu=HkiS{CuFvd~O9{``gWE61I&?y53a31?2jm#Z6!Yq~U@E!0(aHW0D
zOf6O5Lv8SjXEU>ksA$btO`?-&7FepkF*MMTDOD~m=J6#I_>1LRPIFYYN4IGyY=j60
zFjG4G?vObotDpRK4~*_;Z|VC1zH44y`^jIt*jN)4ICaM30ORf?dGxE4-o*l#&XC0T
zR%JiMLXp0_?$bYyGmpS2*C}jx;##Hqv#4s}LUj(H;-h<1Biv@FvY#~RH5~1zKeq+Y
zc@DP3NV8?wVAq^u396o>w}%->X-|%cH2w(;D!t{2?b3fadn?pVaSxpcq-|@Q1S&yT
z8>^OROdCL!VVfoo(D<dY+mB?UJu=WikLIZ_(mdBa^cmP))$y13vdWv?4dC;CQ7G;$
z_unR^6>0xPLMzgm&~0CR)|i=0o{Zj|Aopf&wt~S3i?z{J_8n|)mivqx3heLw$sai+
zi>$V=1VkZFHOD7>pGF<Jg%pC;Jblhz0o@IYpHV^5D#l<kWEsZFUedN(bEd1g-*d4q
ziP-@TFrRMJ-tESvcdKy^FutC967d^5{f$|yco5hVp4SU-#J=CIV5rhH+q`tnXuU3u
zj!^C0Z3oL`4Ju=FYCe-d`bd||#n5SeBu|`xqrQ##D7Bm3fLBgFQryASuj40%nHwP&
z1x`qbN^yaNhJ9Y<sEDBX5wShTAnl}(*WY4qV^=nd1(Wd7X(m;K7sWnjt38z^Hpg!g
ziwhsZaY;M}Q9u-8Xnr;|%{026#}qCh#ga4_TU4sxs_!62br}2=M_2m%o1F{d$-d!J
zn2t~l0~5Kk-RjFtomR0O4NRGxwLbg-Y#8%rPJ~-(Ma={wCK<YpW-W;T!QiD+)1&d=
zfHh>-)Dn>B;{`SZCZs*tm~V`EwJPK|=IBM<9nI9j_>wJ#kVaW$WDZO$)OThaNc3ED
z@>Ss&bFY1qe7AD1a$G+NW9=ISn%gjq9~AYn_fWS#nf4O-EXy%t?UFmff*`S<(G?!L
zgVy16KZpl#4ToKazU+#rZb7fDhEgF0@EylNOg8F>ciYE_A@5-vbxg{Pf#6V^H7XgR
z?Ng3su$Z)~3^0N<YLojH^7wgHF%+)DG#Kz@!r3t>F`6*k!z7(@7mI5lwh_x1>jo)r
z&J+&ipL8fx>3bk=V|tfkR&t;3t7-!z*oi-1j}$<kaL_t>l37SS8A?GBw6vh_D{;NR
zpp-ECJm!amqN&B!_PRGOz?wUN!~`!7W81d$*Wy?;7YDN8MOu)Rk{9|KLCedt6O{@G
zD-?61xsY`d1qvQ82g(T1k_Bn?XDeSd0`=o;*c%5`(Qf)<F`32HZv7an5Dn1L>};s@
zRIDca2ST@}IOaVGttAqp9}hcYO7}W)?Ut74cjP0j>RzYFzq4nfjv@9OLgz?j|B<^K
z1*n38HMN-L?P4ZmwQKkE5F#ahF}^c7sK17RwDFNhqxwuMS9^XC^p%3$ZO3tHY`N-t
zfL(GWHu00=gB2_qg@T=O*>S&J6-3;&mD36I0y$KxN{VGCPY4Xl=!F)A8AH{D3>(oH
zM@uk5<mpr(`CJrBlqD#WoG>3v?HWQgPiXu*K~Sg?oYpIVhT&=m!#$u>lf|y<x)&<#
zcHk>!_!*?Cl1aV^@7Y8gjV?B)j^bg$K0g>sLmFexbv|+x1~3iiKK2ng4gLE;m@;Rs
z4dW__!$*NAityxU7Ng6xa`yoH$AR7fiT6qT2J3T`DbISBFweT@F2ME%^o<R->Yd|M
z;!m=)2@5^q`QJ1>Vn8Os;URspCeRA(m#T7g80}>xd@GCqxYXrK=Spx~NK_DlhZxL~
zE9?51e$7t69iY^g1@u%?HpHAX>*qRZiS>t@EUKEKaP5KCBtD6$BQk>42qn3~zM8>S
zY(VDde^gEc8`W^A{}B?a`NYYc_Zf|2mrpZXL#_$3A)wb|egGbXJ3C!VfeHs>9{0>J
zY%Wi<g7mc2viOS}Ml8fh541BGEMRfn?Q^K0imWU~c!8j<hy*_B%(j#oyLBg8w9ybN
z0<{Def{l1{FsW72+U9HH^zNe$Kmly&@Ca)~gV0;B>cLWrVbd;&%j%`?3tHoLd&fmc
z&0p3pK%k7Eo7wjZj-VLbg*hTYMicg?U6gVVsyKp0#Mh|b`W`$ymX^!EZ_1+H-CXeR
zAHmOeC*@cDU@^uWHAeZ;ZWmKky>^BW(~AB%H(U=>Sk825T(nq=F^HP^yxu8qzb4AQ
zc+lUmM{~$18Oh%t<XnuvBDVt+@CgD0Td0*q?$}wkoAO~jCQwP}bxshETu|hU#<!oI
zmd!hwW9+y^<6{)*<F@5Vzt4w+<kyRYYFJLFPKtP?fZ}E`4i>F#SqH<c*TEuY4;893
zm?~d9EgTf$A7H?|8uwJ<$k}G4ySmu-N#dI>Sf)klMLcN@-0N{1xY#Jki}^mRR8$af
z?_dqfmo1es1g3*hP*Xcdq9Yc|QRAkxk&HpX{cJj_gP;A<!;uj<K^?rFgn*d+>4s_w
zMoBKggz5){wz{r|hjveizEAHjwXr`K+T^Ns3img4wJ{Pk1vm|Iw`!m83}dXi2O}y}
zmm_&&hCerl9j(n7u46}K@{#ooF!!774`n7rK#FH^mIiORh34B7A^YqFM_i^|Uqir9
z^z{+@FzlrLtSshX2YsR>hwAII=#UUY=je#IJ!Pb~;n?l$BkhcK;fM~2DA+kx12Ou)
zd*evyQ0vfn^kbB-ldHmsz;9g~r*kt7b>;e>our$f3N~Wr(z(rqvgS1q<f_D~>Er_Z
z5Gd@S{tjlV{2r*7l&3_$-uSA_?0{K>kskpaA|e!JQ6R{GfQFY*S!IZALS@FDle|67
zX--*pjX%$dEfL*&KnGT-NTLXx{`g7NuMDDJ37>s-x+zr4W(bs9ppT9aj8?%t?rebv
zgPEmiE7#X09Xn<OKj=(hX=w`XSDtg8MaChOrxb2SCx}GfRZ|!5Bc=D{kPgMVeW8b|
zhAtq_&{+(zl7gd6z4lX_V1|@(X7`;|fRg1uhrit%VS>nNz=iv^(o{=c8KS^&D;QOf
z?><ZXVfv`}3<gIGwEH(>aTyia8{dw%f>IE}zu)Jwjs>@KJ{B`)8itfM&a8jj`5={?
z1B;B_hL^%vgqWIS;OYQ%5_LvD%Zf;{7y^sd&ij&0aEw869(Vd@+h~NGn)EGEEeiJ8
z;?9bLvui{Vd&!<xG8=ZCgc!MOGyk;(9FfGO8=gEN<8EBpv?mOTBXm(7nD*8hfg3(!
z*+I-(#~zm-OdB#p*~Y^+YDJWCyeg%JI;%_#1z|%!P|TZ)`tCKEnxpHB-i#`e%5A0o
z?pXz;p-MpcD13m5s^ooQ;>Q9_5CdbPHsFS)SImq_1I6*(>IV#-h@J7RATyFC5fhI|
z%ewx2P!+2P81-dHJdZ$)(597*`7R4xY8IvK2-z{Dti_mbMmjEpJ!#wc2W)_m5~Xj=
z@Dq)E9&SJ&0R||lh{kh0J!O9cgtT5jbUu!lxFZv_w4e}ua-J-hylu*Yoxc;LQj|g4
z2s)8dMS3K8kl9ZzrLre+l(^|fT$pi*Tr>R>LUzBRMrtUu!yZ9w{h9qYYC(}UoMQm;
zHH;DlrFRr-?Ca+Pxd`$E+Z^&mB-kY8(u<s7!tlpHeEhfD!G2=Sq7Lzj@Mfm3EHIGd
zJMy?b+S)Y4MkwJ-b9OO*Q%kz`)T^b)>uYp-_LLC<2eq}sB{jg0m^eQq3n2*Y2Yz5P
z(h<pEwD5;E1l8{0x)`2vRg2lnjmeKYKfsdcP}dI6&G028h~x4PUX>wRDGU-9&#UkR
zT96k_W*$E%K!vV>NO&$B_CXL~aZyRzCXBiqpUjlj2?jqBVmEL-vRGv_rx7PFT0?%=
z9e0TeIwlQ~fQ9>xka4$0O3Iet&v5h?9kQ;$rD$5NFdx(ttO!Q|#?{0gu7J%X|1tt+
zhZItE-8l^2G;ukCWdAZUs$K|(x;*aOh}3)V?CpKVC2FZ;_Qm^=MF)hXVBzHad_IeB
z3u8_%+^)MYk%k>`a>6CXf#{<r{w|9EJDbK2`geLo?6kyY5+U2Bvc@qiM*h!nXtxP?
zbb19u4rql;3S&Yi&4QoSbGU;iof~SI_$_LFoO1Cq!h@oVkOKneIk1oAdhgb95FUjf
zBnI6AUyGm+!g$QS=nNz<Qjm6}ZW}qNkZG8he4&-5g9&A~c+8LEY6`7}M0%cLPEI4~
zCQisLKRCe89FZ^7&SwXKm@*J4WH*;p`IP2^pg%6tpRtpv4Fn^y`YSp3MGI<Ad*r^k
zxh}wvJ^7kxsHk)S#|LFdB8Y$Z`A<U<2Yufu#uMZ6k%{3|4B5a<<EhFrF<CAvwunl(
zTCdCmPIqr!iR0Jb^?c^o`W5d<>8-~Z>9>iG42M7pp<|^okeQ_3X1jQkaqBo_GIsL2
z8&B)(A;F0o;hrp_i$~i2`A^n+lt;k$8;-Lmseti83{-Gm;p}noaWNe9TY!jhq){X(
z`s2%!zmjmpJAwoxpRYc=0dg74?*_&`$0_VRusTs6e!$83I;uZbig@oaZgr91pt7A$
z$oCGFFqUmRhT3jxzkp`7a_-9!o6MHKZU_Te-Cs3vyN2}Vn2%V25BwJ0Z~HiOdhK7m
zgu*L#-eIY@Aym|Vhcp{*MB5vVxOY&e1JRrjykC8wdowHwYu0ou$V>_Bld0eqj{S<A
zZ@a(GlaV_eQ-_W3Vtd(!LX*{sxV^Y`-tpp0%FN7M$wUF~5~#$}5DHgvR;5-uSiQn=
zgi1A9s^or7Hq7NLsF<l<P<p0*1JH-!2^_zf^X~%haj?Y?U~~M{cmm~r8v$>Sz`(Ix
z+jsS0n++N1(*aq?&jp*m^?`i|sg8b7OFtml&@TXS9hxXs+fSyo^Eb;t6A}FLHmGC>
zffh@Vh7$n{ba@Pmk_MCcyKi;9jY4ooUxUOV(UrPr(4U~*06vm%eWo`Ttp8%a1J5A<
zpuX4989SxQoa&`(wL>LSq{kum@^TevLh3EBvD$yRcKX2(*heMJ5@6=A<X8L<7MBPZ
zt6X|~djyEz0D;bxR-HlSa(d5KfH>>3ZWo2>pz?bYYzTa|-vBasXlgJS=shA4MCM;s
zx;uod%<1jDG=QOrtjK;K^C*hC;4ZlkMq}_148VYYYP8vP0cih7Exa3e0KQ^J9WV<I
z1g4rz=JDc`&aJfnBX^F~O#{YZfa<qtPr^)~e){1xartB&94P(HP3Nmxy)?(aqI6qj
z%2h{N{NULiX%@!qfENVdY-Zff%L?$1_nrgoL8<4ze+rJ68UF?Js&%pn!J_jV(f&7q
zxYzUPHNxO>v+9e6^`-@qH?#7KOXrs}vu9)CHr?@xK$K6lTYV{x!&`j~21l31Lm8bz
z#-9|tBKsPa@&v&&4jWtXx^^=pq@>Hom!dyIdey2V4+A6=MPbs8j(+U0^I3;4B$l7n
ziw|w)A(FgNfF6OXmt<u((2d*YJ<*s)uB=@;s!1R-txjY8XojrhhqFg%{AGR2%Q47@
z>s{4HM~zQ{gcz>_{VBM?z!kR?^LgQ!{8QfN16_&Myqs@ZjPAbE6M1#H+%<2&#!vr1
z(O;)dAA7&wEeiGp1OfD*$HYv#i)IJp(LjDMSGtvAC4jYKEKO^O4G{DL=#32=*uciM
zs1$Q8@^B#STVzytC%w_>B<;Q^D!8xCo#9?I5}342t==d(qC|C1$C6UzP+7|W{i4nh
z$z-{j1@<#Rr{36aflXsh@|B8*%c2H9pgJzYbMhjh!ue4elP;0Iyjj1Ob)*6V9rN$e
z@*c1`i?;9^fQTQ>BlK`R&r&1k@2>3;sonaxX-cVSv-ypw34VD1>6!NC*#Da>Oa97D
zRr#do!?Q*)kO=ShrF!mHAcqeNX1A}gI<Q@C=OO)i{3qlxLEFpm6)5#{Uj};{#$GJ@
zKmU9Tlu+Tt-Drz!tzcTKGwcNVw9ecYI;T!!07W2Ew=%^l2B15@x&@3^C5DSyiWb`=
zh`0pY?b^&I4g$B5zigGfO^!=jZ#<w9FqT0Ekfz1Xv|Z4QMo5E2VZi%f+Av7oruvO|
z@s1OR4Wl;~R|j2ip!mC!sCY7O<omarl-kZW=RFOP-1n&ZI7jOvK(_;sFSY%1e$b7^
zTmiX3spiAhXw3$)-?kcm&O2U)BxX$L`~@TrTiyfq=S|AIyL<0ctEeyVmJ!iBucL#w
zgg@P<ToID94h1N`0D{D^67)-jfy_1I<-csxQ5rpG&-C5ARu~mSE}mntRB)4P(%SJy
zH2en2?(izV&f_XgH0ld6Hs&yseo?K_9mI?o{smxg-qK4gOpb{?1r~w}Ro_%4-s<U&
zORvA&0GQXl*tmXx_!v`0!|F@weEBs1wM+JO)^y_%NFF-bxD%yHwsc+uXe>Ax9iI!6
zWt!R%Cj9NenW?FDnCmZ%2$p`C)Ta?ZU`7`WF7zCkfkE!D(LCDwW)c~?w2N0D!!_n-
zSmMgjtvAopsJ$D(D<JY{z4CDJDmq#2FY`q<&IHvw_59wkHMn}P<oY#G<Ppeh%9&|D
zl{(Swo)k4Q)P4r2cZk^e_#z!t;{W}Urfo6L;F9+PAAHAaO9}w<R;LAE)#isC5Qz4c
z*r?xbODr;CwzePGbLe1Rv#a6P)EkQaC*njjbw$w%$0KgImzA`pwf1U7fpOH`QS+^F
zo*(C}j}&bF5U&6feks*>@2C7B{tMu99f)RVZoT+{_Q50Hs$s53&6S?%(FOzW-`<_m
z1#?%1pH=HwY2d!l=zVx^VZ`LSx4tU>F6md%CipL3L^Wslt!dFHZUeWnHa6T{{k0@Y
zAFIM--X$8upKYbQ;+uYPIjYm2W9h6JS#o=do4#q6uJZA*?-W13SABGt{%+VF<N5hb
z`-#!-X;hCT=Nh=#5nZ+Nl9a>Cc-{_elz%w;(VsF1DET8ZblpabO%PH30xEW>-nqHF
zJ2r5LGM~XG#oOOQ@q8O`aw>{Y`%{@PJh8iMknMedh8o4!fONm;r2_66V4cgRrTpfy
z!sHJCs2QoDNwiTxQy@~`^ROUba-8pM2k5G6Y_=s{1hCJ43rx4@fb6v#l_oaxaPRVI
zlYlrH|7`#cqFz^m`a2MK^Q5x>)`$PYkuWo`2RGIb03eKFhnI)YCoT5?(w)7zsO6W<
zyv=uiwEpYp*h9R;JuWseF>xM&PL09YOz-8_ZoG`i%|kM@MuQ_@ap3n{6c06J<cg`w
z#cO72tkluYJv|&=>Ts(yC92VTlDXUC61q~H{H{;Qu`-?)Fl4We0{vf;4d0ped!70v
zkoSF_aGb5R93jZHU;ID~e6O%nCIRYwZNK&Jo2SG+0mLR2+|Lhh)~sybJQ#q-EU8|g
z54L`|?E>b@+%D$b4r~}2KUCJLSZKw$`6MpuKrtLS7~KR3kH^J(#s)cN9Ohaw%-|!e
z?KMFA1Vn9O(?r8U#qA@*T2Ji&CQqWtVB<*UHb>&$55%!A^;0$T(---UkrKXrxY(zg
zuOF>S7p5;>`+mOUy-yg;(``?{XI;x&$16aCmNVJ;%Ii5%k3vsZ%Y7X&KS%iifXi@1
zEd7UIPV(letMI>Bd&=SBhQA9Npz(a9EG_7v7`!QrCh65zS5X1Dn5Y$H@>gk5HcXjM
zF*=9z)p+e!epVa+De4F;v4kbJ6_WtTYSoL(YhY$>+Q@65M%TY?*o$X7S~lROt^Iu2
zcu<*cnQN-f2Jf43B0m9mJ7!HNYl3fPf^`7k;a_R@1{h3ObDfDE5i)ft1GByQQ{~`&
zo-PZZ5cw_fV_Rq3i{4Vp`?`v|=63Vwg*Q^VV(LUE`Lx@iKzhqOndB_6@}G}7B!j<F
znKqkKwuO294Nu*nvp^l-=&tBh7VSM>e-3yIq(*>mD(?FI0<mTg>XeMKwfe0%w-F(~
zP93Np_QWWS&~sWSSudx25<rceKh(kAu*1Q63^c_UPk6%ccP;d1FIL_{BN28Nb-(-U
z>bmeccXM~JuN|Af;FZK-NN2P3q>z8<x^9r4m**~8V4+mp!+VJ2k$XFq#X5VuxSP7*
z;^DEpsD32l23~b-Xly*4Ym|KMwNe!s%W`s&z9cvA63+Wi)iPJ5!z@?3F7@Tp4xEPr
zsEc%w4bK*S;ZwEV>Ei?jcUd>)2`!N)n+=Zewpm`f!wr9hLPx=M-;)67!mN*q+%%Ka
znV4;-jN`63Jj-E1Rho-D3@Ja<qQvD0LZZaS@M9)mAr|pXu%lDh$4i*A{IU9BO6Q)$
z@S{S@C{Xw4L1ynk()aT&=n(Aa5EfYyo;sk>4>Yn-q~xG16Hc_)vTuxuc{$0jIYLE~
zlKrVlX$4;jg0FvPyvH<WIV@&w%nLgqvos>$@?Uo%)GmA$`0rU`iC?8YB)g2-<Eq^s
z<CsOpUb!7@<OX`7675ARjv?5Gd>+jeS%ojzQ7GAE&+8&9<oMu9LDA(~{He?x&SJq^
zPSB&qf1mVtbLpDKJs<|d8*})gz~$@<IGmhID<~&)=#5P=Sm^udAwhaq)QpO>6%8SS
zIxE&6sP6(4hi~$&*wC(^?8xK_pS3(iEumEi^d$r6XTN@x2Z2(VR=zs|%9<z+hrAzf
zLs11V7)Fklx#TN(mtWSPbrLw<t}Y<Y<M=p*%;ife>&2G8@j0zSXbWY27M^1wtlNbQ
z4O8l#jWMQClYuU7%gl3$z~c{-CG*Y^T3Cmz?VyTXa?|Uu$=l3`rh5{nhZMz6c9R;&
zK^_$+pY-w2_)sP(z<RXhGh7L&5W<gLWi7`c`#WQnOlzyu4RMZfZum*VKQ_k4R(j~9
zlhk+a8llFZ;kIJF*}!0@ANk^?6ZHjaphc;&xamuMxA-)+S8ixvQvWBVwOr{gC6jj5
z*IF|8iTuk<OFA$V7w{vRdwiE9Dm*g)C%m`78eK+~qXkwnp4PRNqIs?kHB&0J600Ph
z+YTpKM_+Ns#hEw$dcYWZB#$U#4W({DPciyi$O65bBtO>~<M@(gG@HsBx$_2QuB7C;
zSiMIadY4y95~VNS=0fpe-fRpCLmPznL4BMXS<Q}<r_ikZ-C<k~f35RhliHrn`7^%A
zI7{=;nJ(!bIi5aFKH-jhiOy@^D{d=_C?V&b7Z~-s7TJdR_o$jCcIHBH{%m{BBOQiK
zslbHRP+QSO%hcf{HKMW-7KEL>;`U&|mxAvyC8gnQ!DBOFAII9^8C2VO;dq^qP^Uql
zAIgyY5fJNELbzsDLt4lS-me-D2=*Rl1ynZKmU+H6(CRdRFs@mybaEGdP~>@wdDU&I
z)?wn}sEL|m5Hv=i?Izoqh-AHy464m?u*=`H;08>wu%A`*Ffrk!MIKsg8{%G~%pX3p
z1|U@T8vWh!IM7*uY7ky)s_(x%=lF%VnZbymSe3~w!FM8)`bpjFr_-#H7C}hm&4sZl
z6N&@15W3N~cu8n#bOJ*Elu@Ce3=)+2XiVC0p<FX$UT0@3sh3|#%i1!BPV8Vwl%nuf
z=j|cq&Ex<r=y+f}=O9alDKU`hvN_Zx_pw6*Rcx?O--yz-D)X$Y`DijxUT1OTo@T=0
zOwH_6S3yR6b2c-d>y*@Es)LS0Qq%<UkOL>y45dFV!=@MHk(>^c5vB67cVomfW$CBW
zQxPE|vBY~|T)2IlAahmy#vKuaT%^cc9hBAeiIVo<82eNH@J}XN+00JoC^dPdFA9|W
zrsAZ@cEVyYhzZD$W_Cgx=Idjr&1fjZTrJ^DJfRd3icuLQ9VS;sgn19*GjT~$Y@MVU
z)F|#as+6P;=19C|x=0^}lG=nTjqItAmB*R(80<mgPMdQLH|M53FB_0o+O;|yB%zJT
z3|hr^V=MA<@Ix3mnCqc5#g^hadLkP1H`fzd)yZP3VbY0q?nY}xSKh>u35w2q!RuE~
z*PfCMQAb)B5`WS4;-xK@iBafEto{=Cf146TXzU!R68^}+JaP(7Im*6#Qsu?p{4;w0
zrEnZ|0OTA(v@}e|j*`(;JezJhSPt!n%xL0k?8@xCaP1E7TeE8vDjDW2iu1-Pw4M_r
z!Of|XT0e-X*-C8@DetC`yKy*yTGaQ+EG^oF>ZW)`E{Z?Sdfz`t0-Jg-JzsiJCfOJA
z=Eq|y(}<p78LG8dyEgO~5(F`^SOcDGFyET}`Cx2IG-M<3_fJAk@{3;s?+}}DepWFx
z6chHj#&VA1ef>${ff{3ILk(r#4HeD>>gLWi|F}1!%shW<!n{v{-!hiiI#n?-5Krr2
z;z-oH_2e_n(#`%-FomH=LpG2~`Nzs=hQcY{;jLJQTTrZ<L=(sGVUu>c0BoimSDHvI
z#}g8qLxCjZszhnKLC8P?6XvKR;DnB`onB!g<)5=0O^+u%f}J_(G^t~KFV%KoNo4>P
zZOni3M0@zbpJRA=C13O@k+Pmv9Ni#_p?Lr$nD`1Iy|mrC?2o2J@te{}MZWNc&S>{p
zbL)ytp&z@Ybmc>m18(Xd)J#CvuN_w;T1}Tx?guVqr9fa$y|=bqMY;@2YEq$!P#V4#
z5BjSoN&MxS<pl0Lk0k`-gR=H%Buu5(>S(0VUg{h3-ugkZLJ(bXd*W2*x(f=IX4z#5
zW(_15rw6sHf2Blp+?qcKlEX1|Nve!p?w2<v#{Ef1s2h}V+AKw}{d&imu|+J3u_7l!
zsp18T)0*9nd$1MNAI)c#8Meu2FI;c#g~M631n)($Z5Wd#eyrQh<W}ktqj+(rj0(8T
zKS#WZo`LkPnyu*C!dzj!_2|JkYq5@+Q|O~v6y6-BzK>-KIp;zq8D;GOvOjx&qzG|r
zY;G%+{i%H2qqK$~CU8myAnxg!kju@|AzTXfR<Xt7pk?B_zs?n=D(rwLY8pBXACNTz
zG|@ZvVn_}W?Kdf9W(Z+wz3(Q!qK{BW&u;D*mth^i$9*s(NUADp01{d6?O+}aN@uFf
zEcbn4Mt^*PDQAqFi75FvpgV?)Nh`oJto237uRt`Eg@-j3ZEs7jM+OZYb3#G$FV+;x
zC_4$iH+v!K9POV|7A@y;eSbQ?fQ;c7C<~99iLe0HRgoz_>`gjR^tbRFml7oILN&??
zY?VZ(Go66MurS#PX`~PARCQp4-4s|>U8Ity?}_lpPfN}5zg(5O*{D-~bEI%=9Y#}`
z2tDe}E2hyK;*;#yn2yDtLF-Y%`3ojg%pm0WAI-iQ#=CmrhB!~C>TGaq81WaqyQctv
zN=A$OeX;T%_`j38|G$&H5dSO3_22YAS-JnwsJj1){NHKdZT3I}NVs=ej(8FY9LU1i
zoYlhA{a=e(HjZZhs_rsCfJpvVd+8mAh*ndPML{G)e5awv%Smbc-w|SX*mugE_tNuw
zg78^R&kY1Z{qgUDNM}MN0)fau@>1ej-g)O+KA&?}zMQ;Xg?^!s`@D^pyiOm3X(^xJ
zFqwfRsE$QfXHKJX;hy5Ye&AT?xNci{W%#0U`R<UmcDh_}&*|)R)DX1o8A)iS*CC#a
zW&V`Xs*gl-`2vdx9d*A}_!kYnfnM#Wj6#~fNcN~$kmL@8(jRbvTfngw^<)z>v^YAn
z_@kW5<~i0of*$rsIWSQ4s^<^t%fkg#y2AYC=G08S;98p_5$fo-`PN^A)(r3=<nWV0
zwmElqch{4~Zz)^dUT){B91Ex19v&W3Gc#uRu!5fF9cz_7(o!Juf2BW)sbka9(LJrr
z28=AKicVK+R=UojAR}MjPO_P|Z>)8BFd5b3$)`B&tr-<uSQQ5StHtb<VadVIKkhaw
zJnGf=vgMN>`1A4c!&M(35*iw6ljDgsb9)vA68qO}*8Qn$E}^G`RPes&8x<E9SEd7>
zh{%j0+jl7;(!OA8FUSA&glzBeW?u*Z{{i1sidwq6-$~YAR#sH3Hd~`<YHCgfV2eS6
z-a8!90Mgdx_j_Pw>wTnT>jQIEsuuR1&r)L|%oGSuMq|-s<>!Bgu=ct5-)r&IvBP(F
zO#{IDWXCjM%QXkyJeA{~_ajS`=?XU!O!e&C+&^4dTd5#H|JdCTWU2R$d4a$ca99XD
z6%vq=8Z{W2no``~->*9S>DJKJ_PJmFczSVR_;V3N3Hpy@{xDDO%@s@j8)eV+Ad(a%
z2J+CDeY?|^K<{mO{WV_T4c?=FuaDxJ(xQc@XGW=PqU+^mCy~$dN9q5LNvvW&;OhHd
z@7-{`$L0Ef;hh~5qhsghH5*4q%auAqp_?CA=c|pO2??l>!Tmj+U3G5PJK_msqVKUG
zzFTtx4h+ygS(5pjy63nZ&)nQCs{Z*?2;|k()%Ea_CPr3N(2{<+Q}2BoW^+Bx_tG#l
zoR&lrmeSMHGkTesQF(t+uR|(?^nWzMzwESYroSHqT%!T~T(d%w#>U1*MBQ5|%E~Cl
z&kLE4i=wZZ>l+)%)X^m+l>c69XJ>co3Q;mopP!#k%<pQUM++76AK5>SH8IEj{pFV!
z2p$bQs1$u=NS3o0@cjMr+rGW=3t`~faiGYR-S(mD{Oao1(R6P0*RPW=otKwR59e#m
zCZq$?wEq#xF4cGw^DqBD%5N9jZ}A_Ee8Sh(^xO?+?c06+Sdj*TU3#y>+0+aTg`H0e
zspUJioIKB02i9Bd{{--2Bf7k+zptO4eC49zvrk<HJm}w-lt`?X!S8)dJ}dl}*ze)o
z)W(LsK7Qk(;`{e}Hve5DA@KE3OIw@K?R}fW+Tip3Zw6-OyuaQ8`BpYIQ7cA%@iyFD
zCx!dI|JCqEIeFStcMp%7z_(doH?t2+0|f=;<0wRm#-vlb^EVLq`?QeREA{EqMr5y*
zp&`k|#YIa?%YiUnw3PR0d1h8tmadK_#D6tOgi~qp;O=x0+zvc!dp{j!X1_me*qTUZ
zdU{^zo8jxdK_Mg}VteUIp>A~9m$~c%-g=HPqoH5^UR73BM(Q$qekU`X|G$2*BZqFk
zJ+%8@`EBptuNc#1E3szf2d)@;-9!dHM*82x8dIagA6Wi1R!~$#^7`dNXK88q|7f}n
zaID)eOo__ON(jl$-diQ|n%QI}D`jso8b%0tt?ZDUUABbmRo;Z`O*Yx<e}47-zw4{7
z?{fA2#&e!??)yIXdEUX5ossESi!^KMqWTl@(b3V+9nZqJf3Iyg!9t%Zu;EEjT}xT7
zbmvl0eb1jiE@KY0OsEl`-BIsFC6g(E)O`ZjDqG^4ofmM<d@!s+uMAgAZ+mT}_#LiP
zEG{qKQIB3aQ4YQJH}D&6A<v=PneIl=&9=&%@D+VN;K<0x@Lchhre7K;nh$18nQ%@$
zq|MhY`uuwr%@q9W*L^zQJ<}Hr6SbRPu%x7<lEhsfH|*A5`M29g%C)pJ;YHM+9@fvt
z=o*`PdrKCDVHV$KW(L^%ZY4_Y44Mgwh?s00#>B;KeK|`EVFL@FvYS-6lqBl-;w2t2
zcWC3ye~V$K6l>u)({}0e;pkea`<n6G+#ID%h3k^e=lyQ`&1N3oNHiL~<fR6CgO|#D
zz9;#|z`(qe-{uTz%ya&#mUi9Zt!MwexNr;o<?;Gds}#>bWJSJCZ=9PyqW74<{(R71
zRO&ph8WIvx__)XK8k%Wx+iM>ZpbF%?F~Kh*BeX_FMzrEC3t97L{;g|efqBp`6YmW<
zc%E@yVc}T!Pb+RU&KLYr4}N4**50qzAqslAy)=ON`BNSibgYVyh^W-6Hzm>d%Dw+y
zx~w{RU|`^0yP9t!kKeu$?2oNqd*0GNKj=3N)StN0c`aN^NJyaEre#8<7Z<;gSgUnz
zICDEHDr$MOCT?-jT2RH{$L?q9|6UW#_3PIqw|{6JE!>s4U))IlB~LqlZ%(AXeO~6&
zGcP|sZrO0PdWjqM5_;EzBj(|Q2hXNkBTSsO(rEr41(QgPIR1k{GUy$~$a7K4<+j5u
z^hXW!>rj{|>&H_??$*DB&$52<#BAl)C(pGg#mvFFry^!%W=cCJasRUSWb8nHe{-+z
zj({<|9(j3r?yCIpLZh0!E-PtS3yWD-)+3|v;T6m6-~A&{x;(L;rL!T+a&mH#7>m#F
zFWJOqT2sTP9!*`YpO}p^nVV^k^0XbX6XD|GTK@GZG>FdYm3F?)Xz|t)8=IN2r)$mg
zTirL<lT>geo#(n<e7azV^Dh}!Fg5YMjgOy%D4aAo-8K>P`t!(`CaCF_tu0sm?$i2K
zGBwGKG=l@~fRK=j;^N|uY;3x25SZ&z1`%DI`jM+ClF9O4^ceKb%rHTknj9WK5%%%%
z!7sOd{P-c1g`-)M6Xs8!K8frRG+36Y-@o5+Jwo!fwYBxwRuC~ga_9J}`keb!qwDVE
zNZMNx<mYeX@!i1xyj!=%CoLVGm*;7#Q*gf-c}Kr>>lLl7*@=RtS(4bvFJIoO>h%fV
z+}x~9K6gFxJOm-^wBLcL|D^(hKns0kW#!_hyLKslC!SD2Qrx#~Du%5eJ(`#dqMw86
zBMEulpwH&CbHhXO<EKyGfBj0(eXKX&T3uc30Y%7e&olUMm8fK1sP0)_<}9k)p_bWi
zSMz{8vDI-Xo~+u@(Xp32zJJwsZPz!Vz@TF6M-M$eHtN<b?A;M(B)hgf^>uJ~a~6;2
zjRMoAbgu>}HUdu^lwLJItcALBG&+8K6_1Ekuegi=_odDF=VYX;OC<{1cF;K0$0KFp
zcYprY8MK3_vXvDpl&`i@@1`EBeQyB-XgFL*yZ1`h#3$x-o&Mx(Q&ZF1toVVf>gt4E
z?>PbQC4=$w>S`~2*AuMn?rta-8k(9>yCYp)1Uz+r`UndMDr-Mq{R=4+*vO}lC<u}{
zx(3&Hk6Em>aE^(Ik^J*b)_XhO!~z1ka&$FO`i~!9(SXv^rxI7MUiIviW4r`)uxVyy
zhH#kvANFZ1HBVsq{wTWc>F(yyR&Sa8xU`^3;=um!id#r%=unk2YlPGe74mY3g3N|o
zPxO&e+as~|b=Ij{qSZxQMOXJStmK`H?=()_|8{TeRg9ps^U3(>$?i~%J5NY@*Asw!
z7jR#WxDFT{ZP1_c?T)(BbH^>QByYq(+@)t^yo6-ssYwn+B98;&%o3nlU{dJ6OlQGL
z7vcP8LH%U3{?Hu(0}ZYxLtO6lTghw1j?*m`<NLB%{H8uWQpD1G48}$7W6qFcA!7mr
zwQsBXm*DhtN}EogZ2GCGsr9~aK4E5NULL86s^3qnPs`1{P&80u6Lid@qpsc{wL4Pw
zz<Q$0s+XUS&rz1+Kir`wY-wc$Ioh{L&3BV*%xBj~Blkz`Yd;j4jf3MMBx=c%y=j}_
za>9sK=T4WCH@O6rrcJmP@$t9Zn3Ce-P0h{y<KyF*Wr+XnWRc{;r8^nwV_r*Ke-Vh(
z)15bpnR7<_!#2VfFJ2t{>>~kN8HZSM{R@}tZ0hW`7XX=z!a{C)YK9u6i7#Kipi_hX
zy`IF5QqG4ZRCmK^C+klJPCN38J}Yv>Bn-%-nT~vAo(vSu%AB;Gwy{cYTsZPQRS}<F
zx{e|R04K3pY1Tma0v8u|VR2D^bBp9(plez@IXp#@06dd{!`0gHwfVxD)hPsspbQLX
z=pyD>k`|{NYesE`N-Y|&-qqKi2I63eSUq7v0+T@#&u@2iRPu1S4B(3?mArAI2?NPQ
z10MYha0h<aCXGwm+%+72x}CF5CDxd%+V1BJQFsVohV9z$z@c4wso<FKBJ7ol_sfR6
zNM=cSx++FQEBdT($<z5HARxediY#?P$>e|(S#RI^)7Z76Yh|>>xw%LshnF`e6{ngV
zpOo}IJKG8+f>*s=F9)|a8JnKRK}JS)v>8`FgD10x4fv*aX<^w-LQYQ3X0$p+W<N@1
zGA)QMJtt=Y0&}W!P7unvrjb$d?h(NE7Y0{(SpHkQAA^Hbz0!xAe!K2|t?>d@n}J8y
z1eX0E18pKpFa;^R&VuZO+X||Jps?_ql(c|A)5dgboQnxo<XK1q3?sa(s!0=>amG`N
z*{PQBPs6p<-@hMAZ|ACQgxPz)1YBTXmwei<S7u45qN3s%5!7U=nk+8I5tIJz-2+sX
z)IV&(Db`sk>b=J+b2!wCfPA^Xz#4_lDJYmNOFibSaa(z~HP`K#I5%PkAP+L>m+1|L
zPN!8z{aEA;)z_!Kc=4iE@_92u)?XCM9HW>i>T@87JRRg5QXoP-Po|x!ataIQ5EzC8
zC9plcSST{(Q&SIr|NfnmmzS_xX`%mKgB=0=<~9G{G5mRXedFW3GDl4^>%bl`qoc_K
zEp`=}u*ra9?l0A!JX!sGXb03uMRb@(4b23gU$5TRXUw^j(-|-lV`Lk;w&GuqGn-Q3
z;t|u$)SvF2_Js0$_GmxYL7;F+E8R3w!jN~gy<zVzBqRiNVOEN}a}yno^@<iDV5Z-J
zeE?FUG4_}|XZ&<U2mxJPJLAQsXCovx&%--P&&ryMrP~zY#BcuiiU!xQiK)=aP6(6!
z&D1KUS0!yUd?h_X4+u`R>(ZvN8b%QI3@}1D%ttwTic5dDP4OdT3{$cyl08#A=dO%-
zOcS=Wwr>5ZGUWbQXw-T6^ZGgI-KyU2V`ILZt|yf5-m;j5wA{RJs-S)$7niSz!7kwr
z;Y+cmJA7P<SKU_EJ@uB{%UYH)o0l3{PzpEI)h`he65_nPHMIewL;ltYUmx;8c8gC;
z%=qxZM!nbM9|lY3Rf(#q5`#EtmN~}AI0Bz*oOCdjfC8YYi9iD!lfA~vkF2e$E?7NX
z5$t5lqPgSpl26~lkF!1Ex?}Ye`#tVDyHow3t7nWq8&S`E-(<-5wo5|$V-}gH2>L)9
zsB)g)6uwPOP0dJt@n5CYOCgt=T%T+@0v^Sct(wf3tjaT32+&yOWLjnpVJbj$Y8$LP
zeK;T7$9UKZ_e2S(kG)lSmeq6yL*wakmhr-gaHa!q{G5qyzxrwi!P23(^sisPsHmws
z@Ua4eg5nbr?mHw*{6~x`?KV7;;!J$w>5mugy12Qevnd+WpwN|TpAS8bHd;ORCWF}7
z*eWdokDC&D4ub`G0_OL8IfDxyz55-ndaNjZik~Z9GmownihFQZ9eb9W)we#iyj&R8
zE39@-R#sM7MTM)6b^kw<^u&@17fNHCu~+bA6Yt2TAmS(h1;2pr(;+w;sP87=U8jbF
z-Oeym{X2p$n}V4R=QWmtnZ;riUZ%hBj7dHT;KV17SySomn{ZQ~bDG-PhY*)CE)ps7
z6vis%e4>8#zoat2L>D0-D%$q^ES|^j+-y<LO>^UU9u(>Go6mN3+z`(1aC*F}sjKTA
z)w9=;lO=a&U{U2plEQmWOW_s?XVjbi=BH$snJ|YWXNz0+edub9d7k|I(7xjKD8aID
z@y{PY03KQ#pK_iu{s;LvvaHd{EMl<P|7MSQpw6B{OZr1s*MN!d_nz*{l-Ujo11nMy
zUm~`Otm0Lp#??&dIjO=qefl_d*J}E~+qmQXCtk8D^X9iLm2PJA&u68jJ%^-#h#~Cc
zkYQ3%EFV7(f$b(IaqeI0)a@$e1a66t<X)LmNzf<gg6}*Wqj(aFS)7@sKNa;m$oA`~
z+Z_vSorWm&wovY5%%hRK9I`pOsKAn8A`+XmRsV&iT~NY2-qn}btwySX^ufc24~=Vp
zLg3=z{nHypJc94M0M4J{dtkk@GJID}jkrXQvnZJf<snJuw(_glEJCUUkmSa`x5(sc
z9-b_kB&GIRsW|gp!z2;3qGgT=#=h;4Ug`a!YOY>p{8|CTGw`xnEC%w6e7wBHIcr@1
zfW0hp6bh~?=C({_U$;$(P)*=iIgd}0DuEzYR=x$W5cMB22!l^Zbod#^lE`vRd)`K4
zPD^p_9%HlGw6(%})8~<|nKK{%X}f5uo&D7`1FqNC*H>#fbm>_$)89*7i!h~nkFma;
zMgjyCAs7hfLpU5-M)Tgin}B`{%55flPnLT@-(e;>Kk}vQvtVdfzptJMm3ZpN?vG{K
zwcgB|buJqz%vNt*Iyii+1Nv@{GoO7HAAbdi8!y4x#O`voeC&UPr7KEhbLsc*sod<8
zhfvQ6h>3Ybds8j`sz<XMt@QItCa2=ksl<sZb88}2k@4dLT%k=ROub!q_Dw}`QTvvu
z_j`szI)cqZA}IE)?d*&lzA{mV@dL9oxbTk@nW}epb*=9V+XK>~L+}(lnzOTW-13pF
zFpYF-1dzy1L^QD(tMwdmISH}uOVk;n3EtB32sg8yeK`fX+=mTg#_rRzIA^dqI5^n2
zxl<|#i!JoOPCG(*ac}p+)>ZnO7wH{KIR%7;TPB-=#9S6g-~gWYH8qJPB_-$F*E=~l
zIn4npAFZyPaPN-$$rKb608ttLB9N-ar(!9XeDYCI?f#sh;_RLKa~168G@Mv6P9Nv*
zjGj;EF<_6+u_GxS&Mhp=%F41d#=?p>d<{=i>NKnPFWLv>2VCK?fcg;-5I7wCu|`OI
z_*DtF_JXHnNvf<MYPh(#tWUfo-dxCt(9qB*T^Q~+R&=}k+24*-M1{1v;dPck?&Ck1
z+TmG!wMpn}nZ};UCyDL6i<&Ogn*2-0#!xbI^79cnbSr_G^n$pA#Qu+L=}&C-H;}0D
zk9cMC(1bCPftF|sFi8mr4ltFh;OBQ5<aPkEfK%0ZoHJV5+9jYC(0R^Wf^xjde03G-
zVE@N^%49LiKA~4sthCe@)$)^~D14(8GFWGcN5ky(F@$3&N_{h~>PAL&4?cah!D8qP
zjjI2<uy9R~(g3f0Ns)RAX;tKHLIM<p4C`M(ZYNlF6^Su7bdjgsY`Y%uZE#S5fkbb!
z$4>{dsN9jHkR_H9Jrsw&qL3f&d1Pb!!otU4B+upLsIwy-`;GsYm=9E1(BOXmV25XE
z1928g#X~12G{iCJBg@+L152|AVm&!rn>V9Bqyi?TrK>x=;X(OnYk)KKk=u!J?4n|>
zOUK2v8yr3fo}W2VH*U51NhNM@-VJQ0ab}-$c^NZ1`{T!t2^aD2ABp7!U5r?1i3Eg%
z<YZ-=TrcbXy^ls)CIb<KDSrMeU0qWn=Dtb`dWeOGhp2tget;+~5ria?=>hQ~2n?1P
z9`;q|?EN2GVN19^r5z<6Xfjm1v7AMH`X$|uT@EKsor5MESr<a&>py(c(z@yCDW<Kh
z{W>CIen*d2g-lMJii+w%cY@GginYfkK=4wFLyn2m6tv%s4M*e_e2+vy^Rj?@GUxXk
z8YmgE0o}5rvop7#pqqJb)bI3|oPxr%V)*h(lFALuFndEdz9`F6C}ASCk?)m>v}jd<
zK4ms3Kh2T!iw1@px`pNtTw^RsS=N2S!<~T6;dTbL-Tq#`viWURuqhQ);4Q|;cc6_`
zjCqBMjC)6c219l+pm6UKz-qUetM%h*piB@;{UITiIpPHds-#grUd%Za*nac=<YAQQ
zXZnyAAIvolWi~m(GcBYutpVcb6d89nyu_RT1Yjm5C8d`6#lY>q+qi<HiI?iimC3;p
zGg?WHH)gHje3FvNl5`+JqE)kt_CDDN)7aYDB9t89cO2;2z$w`{IStXthXkEd$yH3f
zy?6Gr<EyshJYBx;Tj{UoM|X+1Bquz01LDi1L)ThX+4X<wdu5n@Y=9}%>##6BLBZ%m
z3_UHaxsA<hc+arW6<DI;x~F<K_q~7g_kaKX{np*Pc%UU(HiuAvSf{C@Q_jY0$&;l|
zX{s{cyvQb#9JXP}88hU#rqlDwgu^<<T06Tq=T(2c?z~Ff+pP9)-$*7MsEh`-&iLnF
z`@3l^8vhcyNr$&k)3UO&0RcUPxQhERfWb7uI#m144)<4&+Hu^tVQpiB$dEsO>ImEZ
z`q~mk!_LiZ+;>L$lFGcHqNTlH!+2o&8)ZKi(!;`lJb_GVJvrasOG_Z4f?8-u2Ym@>
zD?oxO(Oa%|yHAcF*+!K&b=7Lwn5yeFD|R4Y00Ec-@i<AsJ={h7IE`k*kh8`cPAEf)
zj)es?Qgp~t_i*69Y31c^?N7F!!~!xABURd%US#VH4{G3Vb~v5Yqs+)t#GwJ!{p06P
z(%?G^Or%vTS=PX?8@_(^{|oW$gtDwjiGn-<<RG%vDgv;zwF#QO2&yP!YNsZB_TD`-
z0UZN07#>7Ea368RgU^GVw(NF@c0b8FcTIabh^*|$FYP>&M#XsbG4qd%M+BW5w%nH?
zsS^+qcEj<&0LnrBepgVik}!VvZ&)dD*7(*`RKx+d1{G;xb=4B6x&qT}PRh=!x*9QS
z57A7}6;p;Q!&XiQH9sMN8bl;0H(ABS>(z51MbW1E1nksL8~J>B$!7I5aOEhHPqhyU
z(l`C{O50~2_UCCsy_PBJ1`?@Vu%q|t@8eR&7cMEQsR=;aYGL8gDiu9_?^O^(K}N}^
z{#AcZU;hde2hjAt0qPE+xS?0_@EmX)2r$sS<CxOcG;qyhu9q-9ohSA7<Hp`_vD}rK
z{LL;dTN;8fxe3y{FI*ADM*h&t>!5l}{_m3xwDA&<%Uy%*qRfI~A_WcslExJ(Dr5r#
zSOUfN3N3Bz@5v)hP!vHBYk2VH0k49iBOl0=K&p`D03bt<aYSY~WR%J{=LBC`8?nBB
zR7<0@F*?K+<;)&A<6fr~hAk&sD)H#?<NLf=ZQ)pYv98_EQ~o|P_jL*SRIblaQlQQQ
z8a+AjJvcmETwH8tUS}o^e)74xVt57C6AB|y&~;sM7K7N`aEaA-P+Qe^{OhR$Ez<NU
z6Ra=wxs0j3AG#X6(d58c_Cd{XgNJDJfkOWqTVZNynvKI_1+*ZKM^_>Fcfpl}PJvKF
z5S%3C?7ThT3Y^JVX#>!XQw1miRh~~(F!!`6w6)dAXA>m+vN0&2Nzfv&Y6>K@87zJt
z8%wFEsJQMSSv4(hydpan;-}azN~N@^$kan@hI;d9*xflLk<<LG@*>L(CB^f&FF|qh
ztihrVYygQJ78CM=k><l}<k|PyG__;&I9q=FAcr4p*+CQXZDQheP*cM7IOQejdTleG
zN<pp$hW=J0&O}>V4k92kGc!6S=F)i_N*}V6PIcv|S9aeLH5OthdYCN2vnh5u6tkuW
zTpXM0{l!(H__WP3dsVcxDVm#`K}DTO>HYbd>gv_Z^75U8F<B%4Ms_$mJ6t#MuYP~z
zV!V-zA7Rt{=}CM|{o8@1%#R<VJ3160qvYn~yeljW4-CXb^a4mP<>i#Ay%jS`+uYHk
zNmlnU@mfMzT49cIRtoJl?T4Ws&sYnUNu=hCxtlG-ccYc@K~QJs;!3^@o~(y_pqCE<
zX%@2m`4`37;Rl+&v!)J7f5)b1$7ZZf4ozeL=DO1E&{J{ugA@xI*^OU(YmWzQ$_@GG
z>c=B`=QHy1LLgfrtq0JbU@J#QM{`;;e-6D88}RV{dzGk<*6D94`9>Mu|4veEr$uFX
z3P-+(M(6hPjL-(Q=X@}Yynsc?u}2o#Ohrfcd2aD9-*Pa3G!Dg8fR`7vG%V;aR}Du-
zUIMzj%5kDm5h{mff@T{?on}zHM?B|~5rqf>$MCl9PGzJrzNJtywtl7nv$OcMGMSjU
zdm254lLnLzf*<>IK95A<2y%u(nt&GAR)YE2XHSlgDUjSM5^bH}gUJ~9zZby&_O)<Y
zu|~j23rkC~7(s-0<<}qFfMuBPb~lKX<Bw+|4dw;y2ozup22*tiyCyjJ0%PR)c5_nw
zSatGq`mxSI>1?{%5~qs5O5v740D-WZ4ctmhNO)vtm-YU=e`DkAGtaTkojd0tnL@+=
z(f&TkcUO7xFl_xanS#C>H)>OLMBgpGON`%tx^-l`^SRiYip7e8;w<Poq}P$K`33Tn
z2c+Dg3VV8_901sa%r##w8rC|EBqX<*5>9-KASzP>8s<Rm+Rf2$rJ7U)rdO@gUEST+
zI-TsAqMPToy&!i$K+j%<yd9m?`-2;DC~%~{J`H$Nj^fEmUNQE1l%T%6x13v*y>Ged
ztI_}Vn`?_!vU5VuD@$|qj+PYWd#LBpY_Fi_U3EUrB{cR;{&;f$e=g!aDh-*)PSbPB
zvS#e$N0k3w$t?oJ*FYWC^F#m?Mq=Ofvyi$SL}{zKozU$wu3Y&w8jxx#JbRk&LY||b
zpa7%@iXXC#`uqE}baY4waEsWnmz<RGwL0$zD{I7}eibXwu&{5vY@MoZ|7gj}mj8$C
z;$4ccOZuJB<3a>{(SA1sRK5{tWXZ{?vsC`s_kORDYe=Sof!%KA<wXq<4a7FD;;-1M
zq#A4C<>j@v>R#U&dHt@m%OXhqUFhVyZURa8_GNb&NZx(^oC1);P=D0MdKCDhoKc_^
zc9w;yUVOgC%Pt>G>9=BDE`>x&brq{AZ~2p)bpD*jE;l&v$fYptp_v{PMO{1>H1p)+
zdu36m3-EXZL_|GLvhp~NkB{NukdC_ltQEYzHSc+eKik_}?S@CQ3TXdPyKHDlR9A}w
zSb&W54ru+sffs0fY&<-@6oXZJddr?qyFb377B?$xd7H;qnDZJ+&t<pugp&sCS_>au
z8+-lzhzk|0oe%G*>rXnWYiQht>Sc`ej_o2`+GeCOa%yTS-^&xBNyYCQCwW^V=;y;k
z#u%u>xV>6@V!JIfa&lgkmhuCN&dJGXEBI6dzf=5Z=kBaoU*GqJL@T$nz{QY8)3tz`
zwzc$IU}=d^UNB5u+ssg8K}2~f3pKZSn(i;D>9S7mnbrL2LnP5#;B`RGqXzC^1Ysx7
zX<w+-K)|diN<~%G3Hl2xEG&ij!oF@Q$G4sTfb0TR1n7V`qdYIugG3BXY&oS40nSi=
zQ__Ay#_C(jm|$vL^-+erM1P^=D@Im^m@D60#s<2&wCl3`?n&#CNWZq=<IHc%k^}h;
zS~H$1f+}V<Hp)mU=9GadkR;~JvgU|_P7!TYm>aimA?#JiyGg26#+1IEp8K_jv$L~W
zT3QoO@onOhE%o0ML{*xSNQ^hA<x#&Z?Rb;-JwInzThK+WQ>%*%<<YoZ%2}-y^U+j8
zPfx+q)6<yDXaK;@P4(z}-~Zk;7%CvudCHy&Cx&fqI;DSKsO_?BV_LEW(0saSa)J+6
zg!DS$R%7omnKYs$0U$P8fW3?-VWL^@1*SwWCvRaUAk$30mO1~ua#Y{V2MrHzCS-wc
zhaG{gv8f<G%HO@abq0BPCm6p2HKY>&aNS|71IuXOLQoSB;ctC?FFI$d(~|2=^_8uu
zt;jC6lCqDfy!R0E`7BsyY8kjrsOfUj*jLIqRT^mXmYkfNlM2h+J^wF0?F>(6`}(k?
zwsq7_#C_aH1Umc5s;Ye$Ow`k!Qcl3Kh^`Lp2E)GJo|Gg5gtsAceBfuh0UWxTJVrA_
zUe`^*q-z*oB*Ef&-X#&0k#h*!;f}*s!8l=mvQDVFt)G`?-0!6QFEo`gh7OCVupeM;
zY=_Go5B@BAVq=;A#-^2UBY@<)y;Y>`#%3a{qA?%3*tLjzNySQD<gJz~u6clSNJo*z
z{L)l@bz9?QJ8t}Mgb%Bqo0d)P9<p<AFp>t(oFtZV;u{SF-(dvl{O{#z70}Tl=iYE_
z*Z3ZL0TButwM*6Q5TOnOYmXQ(0RZj@#E^k3nP8EY%9CSeVJxUAbB?!7nia57sVRTP
zqVkjY$DUSw7wb`3S5O`F(QOp|7Hsc-e<dKR7)J6MbWVA4h=Q6xCIM}aqQ3BN($pAY
zl)QY}05_x`i*)2lN+O|bFh(k@?k|6v`<`)^ot-_t0;l66L;981Y#c8`IzHy5>Bpau
z2(h>{KqxPiY^*(fRSr+3le4~)=-d~)02dfLCW%eEpu(C?12hy+0f5UcgB=kG2_?qJ
z%DjQU6;X+!#(!;!v>vE{m>3G&KnUmssOfil;%N)u02-|m2m~xGMZd|~_+^u1a_3<Z
zT1cF5`X!_Io2$5@Ci2@aUWgAF+^Rem;F4TvcW=T;9mdj|BF9~=?qU@N{(Cs6eXx&6
zh=S%-&O&1tY-Io=piBa!ZK=h&8EXOJh*XNl)CGdhhYSUq1JfAgmcID+wGjs~HB8S(
zafN9Hxohpu)_lE)YP63kKC6mq<a$nap@wPl&6nr?TQ7cGOjfQtyM2_V$6!Ed-N|UJ
zuWUK5t1O^7|E2PsR~oa99A`|99Rm$Z=6p65HwD(KOUP!4xyf)776fF2<lV}@Y%@|Z
zGbcAUt*-8BVz+P++nc;RXrl4K8@t~bjY%dj8P)FLQaZzAkfqt{wp>L-muEv7BTS=B
zB$4SRajPbbu_l=@DEZl_YMN}LRoP_e5ck4zS@J2~t!J9(;$*dAEiU}-kN3F9M!RP8
z+UA|Pv@mysxX7cFn`Kq3T6o|7BxDgxR&O$As_AzSR%i?V{EA_+`VJx4P^pt9mTI;@
zQ5Y3Aq{|@?*xx~I;JLKkh=r7fPfrG*FY(4g>@v>VER-ajm8E5%IU_1dx3*iM%Fn!T
zq3m?P@@!nxw)ACpuh9?NmHLa$m}N)JS*LrCDyB<@DUaj<nEDJ19bTr36T33;awUw%
z*ykFm??sSJ!dHTqSNb2w_rL9P!L^8SE^TaxzHL<={=)MXiG!(hpabd>=1z&U!Wr_v
zP=&PgI@V>3tJGzzK^tKJJ-}T4?CgL%F#qW)Jv}R3e6xvR$|93}98r_y*$OgARl3be
z{Ux{WGmhUETs0P5NL@r7elZ!6Rx;CY8_aQxSwyuR@uU_mf$|Ee6XeOQ@JE7*{PB0R
zwI^Qo95o)|OT~(5({RUy!fpYsz{bUeKxrs$T?a0SVH$T?c&#@prKyC9Ie%<jNVo)5
zqMs^O`@lQ~Q`$&leXfr>CvJ@KAfs@cS6!L!4A5^b78)!=Z|2-3anN}IK{KJCVG3Gs
zV_TboF%~Z$-z{@DN?nwkCDjP8eKNxryR+G64OM?u(tdCh%W)UWbrWZE|HUpnZcQn+
zOfJ5RL+f_NjmEczaQ@tQJZEQ@+#D4&qhW!-o*+og9I5aIxFAau05^?X@>0$WHpQ`P
zo%{(|v#|!oduuaJyJh)ehTNCIu30nyl6?CpG0qusO3FDqp4!wpTOwTRji)Gzy;qC4
z&Omzh8I?0iTlDoOp|QnK;9H#f;^s*48x=@A?(LVJEpuRXmKIi8{<kNgkqbMJiwX<0
zWkg%!kN>)~jYy}U>b>2io}QleZ!$fTpQ&v1n7fG@&eS*u4kT5YPec-*RPnS`S%tXq
zVz}`rR9Pvw@hph&npGusw#GyMisYn`Y?uwv;|<Xbd}O&mB!dSAEd_7}EMXNE!_!2F
zh<?q=OE$s=cDgOZ_-6osIwy)kl~&ijuV`S+UU>7FKNDZ{Pmen~3o7}4I4&B6v`FOP
z=0#q)wwJ@=o4`_vt(qML$hFqk-gxviNO6*McVjJTjn^pZKKz$au^33slY}-q`F#Y%
zk~H|+z(6a|KajRT0iB~bdfs*ZrYLQe9-9B^2M$L~Ml4i^`LI$SUi|L7y@8}^x##Fd
zuaS=)MjzHI^(S4`mmRul&>{q9fvsv>u;i{3S7V6+w8$$i-Z40+w<`P;JWeCuj-AXB
zSW5I>1JxWH9Aq9wp}~=P<)4|P@7J#murPv=;5rq7#?nS{-_mT^^V<YLFHxg2=8Vl7
z{#^#a<o4Oo%2IeuM-SrX?_Q(hRW`?bwJZYz85FHXuzb+4cmC`KFiVCIn$DM<v*{l`
zyaufeRPC0Lk&)VY2?>eCwKXfCPM}^)Y<O%Mn|XUDfh25*#!-Dbwk6_!$5M2BeiA!1
zv0IwhR$3&#jxNE6yB19t#ANaC460FnZl}?axU<x$=DM4!t0PoCM3-4yG<9)_*5U}T
zP5{eHezeErN&ysnpe7&`&4MO4xZ(x^Aehq-e_$AmNGZq_hy@BbP!+??jMiq^Ov=+D
zL_HvCjXDxem<Wo*c|W7f>rf+6e-VrSmKF%E(y2W5d7PA?mxzKccU9?wQsZxM+q*ns
zZ-m6j`;3?r;h@7)rFDv*Waovacpl$G$J#YfO&&o1VYOyW8gaaxc_v`hgDf<3u#}XP
zI$vDJ8oFk$G_e1+sV6OS<jOttmszZe&>BhAUy^n@UWS5|$y%bxIJCk?ZW7Wpg!M*^
zH-^@SY`4UpVg!TbGyVyXU)R?iR^1?k^*Cb_D|+cd(nr?Q4ilkRgF43hdW7f=h#A1M
zzK@P}1D6Cp3iPuBU6+1>zk)^BZbZRVh0xVbBwz<C5&y_Lqcqx7ZuXAGT)`c*`xHOh
z@0BYgRJfb_F?>U|AAO|hCmlSD%RD5dixTE$p;M?=E-0kRD1OJ|i0%8gD;mLkf}WJx
z!Hm}?9Vn(YV<(A!Xy}zElqN{9v)MH+UL0B0yv$8{9;XsiI?s*f%U7;kiQgT8`!D=x
z4T#jPwG2O~#zLQkH2BS{ZuOO7zhcAH`{o0f`MD+Akx7Sp(;qb_i#1mq?yWlATXnhT
zb>f?gxmD7n`W#yDjg4Z}s{HW}9(X0(WBUpXP0ajSP}Agy_i@*`;HSA-j~lupDMOi1
zpddl-Q##dt%vRX3chO~ztFzW)XrehHF)KLBdW)2ZhrqZnD9gGk=HgKA#O|S(>u+-K
z$ED}yvI{UeoFGbDSU|wX11THM^^%OX-Y@$j&jm^wZ&;tx;8-|VQOE8RL?y=ia5JGg
zX0Z)9lT}Un6|n%mb)q@$2K%cDjO}um)yc3XO9p!e*T<u;dY=fB=F??nS+Fw4tcZ>V
zi0t?W5YKMy4}$*yC>a9iuEN%#1&8mS-Q6;94FN|5j<a<J@+JRORl$yne(jlOpM~C-
zHqw%`3h0*4Xi^Qs+=71t1TYP{qF1BEu141+X^CC+1Qyf;a3-tQzJ?l%NLvM<8oYk}
zx=W&^r3DOZTOrg&JU}?aldFiNhI4C1?I5?SW|PHr26WCgPH&K$$C<l2#3ThQb$F%c
z9M)yGqoLsdIuWG(;M946r&fiDlr03^Zd*CA(|EY(LaiTL^eFoJ;aUwyh$$&_VC_s#
ze<AebXE8j5u+892GqdZEQ-Sk4npm?F<KVyTCp_rms83WzI(OecHXeqgw9~ZB5sids
zvRhhGJo7yn2@MIMq-Bq?h=(RdGY_<}Oo#YXlGkSr2~vCmC!NQ8rBaR)Q;vu2Q^q@+
z1sSeL$o7^9w6&9zhZm{eFFTjm-D9gSI!8I<APQs^G2kH5^~T1AXYcOLPO0Ci@6RF=
zHDJS#haU-w7loy>4U)%)E2>#C-*n5-W!zG_h8^DJRC72=q~mEQSe^8vCizFTp;nDR
z{GM-+kFmyBfHLMQ2&pRFqap+^?=Uuid|N2{dv!Gnnu=*@*FaOfyz&&ybRn@jaMZ51
zJHpBys0t8BK|w*J-z6)17Um{^eb4=zx(tj|OUr*?sjhG(swmJpp{-O|l(r|#&Cpvy
zNT~ViR~)dxGDV>Xnr;rbx)`<czV4h8(Ti<{G6GC?dANc&v0EO*UV{od3lKVx)<<3*
z2e`frj_k@Q_V;mlvvLrJfB<^Jud7*LSaPXlUxuzi=S-TD?_H$|CiQ#wiYLnJL(;)}
zR=6hw&2vrx%Caa{D#<O{>EqrxI#=;)dRj{Qj$G$H-~M9GeaTFiU)9`>cKYb|yNwg8
z@1K}#-H(OjED8p%?yHwNY$3!R`ZBZUu)sVv4YpsQ)YGGRP<HSs#lH&@78Pz(^)aTL
z2{b26#Q9{$+CLxnlR|vC(nfe09UzN#a$PH9c37Dw`$L&-O%1+_w6rwX-5}3_K^3AH
zYUw>~*Rhhfvirh`;Ioqj<2$@ckf3^N3i9&OD=S5Jk42MJX^HM~>$Txt6i!?T1gGHE
zj#nKb>lhoS;3sfPmL~f^)dj)7r>AEG+B+`&6w5F|0WN$<06VLrq2p^-p!p%A5l9;e
zOwVRzLpg3@7jRd+IVYxhK3oj!yNLG?<x3j8;VT#)&sZt<;@L-Qbh)zR{Mly#Cp3{3
z`Z!pP1z<wY3LIyl77s7%F)h3Gyy#6}^|n^D&h+lSK>Z%2*5ix89pbkqFB}9BrRBZL
zcfNCb?YrNmwT|5Z^|=NL(Ink+CV4$C`oqE2LD1cxvDa<TGy)AE7^qPZPc~kUNX*My
zC{>PZYRFc+h)SWyULUsgu#IoBHmDRgj?J>}lFz8hZ@<SDT_YnUr6Ne3T(Kh!4igcP
zyZrH8%pZ(+K;#F333MKC%^_`MARh2PrKP1K4#&+wz4M*jqdX!*wJ!rM{xAeBFa#7J
zsHaeEEuiHHpQ{uLM=>Csbog`Jq;H80Nh}u=MMUf3>grs-u8GBLM-24t<5d!cVH885
zsu%BOZj)+3YjgQ+8K0PocS)^3(<`O3&RCcP-xKCS2g;R5MbTfA$MPQzN$Y(7(9HiX
z@tcrTIrNv67g>RXf<J|)@yRXbuzQ>}p2^%(cwUdiNku24%AcE_RUJ=zBsA9em|90h
z`Q7_j7GI9Z+t9vz53W*h>|ln66Q4>-d_8Q$=ecKSSo^>#KaZo7(=6&;M+`l~0+f`P
zsxuvQLrkA+?$U+HZ=ttJD<TzUN|Sr~+hRqCK(UODhQF6o!^Ojs4X*(<7$TGB<#jOM
z<ZdPME&11EWd~(Uilx)3@T8%w4UY8i0jZ5&QnG7dfej=IXtxnxwJqVi5%+9pXb8ni
zHS;x?>|;d*1|S(Y+mV_B-Bm$PNkLCT8$NFv_H{@1FRdjW2`?7~*WPO>-00-jWw1zi
zPe9f_Npc;lapkTiS=VcN7D}<u!k$T&o9d=y`8pq(CpWl~_AK0|h{?<Bw&lr%y5IVe
z>Ia%n5i}+DYUtIH+P{;3eTI_^w5^)e>QI>K;S&`VU5oHyjGS2bo&iop($MBjU*Tj`
z0V%0&NHV|!u0mlo#-k?+0__I$YUrRqO}|Ed(a62!pt*Ewi!OpymwI4&V`6I`Ooy3Z
z!lbyNGZPLm1+t28qF(vMuEd?ea$5s#DoGfyLOkT)7K3gapMXFV4Z!VfwC7n+kl=#I
z><5i~?JZCW?Y#cd{_^rzG@2AlwANcs^-Lya%QA86tOM#IMS0|>X%+M7wdf34Ixk{k
z<@$KvFlD!4li0~*6~1{D_JArrpSQl=|KN9ws9_<o$&N*t>8^*h^<z1VR$yz-^9v<I
zyXV7dU&;(Bpk@PU{;>OZf|(T`vFIPo%dmo8+!<ZL84CI5+-W5^hLOoA5Zytu^SsMR
zDU117yS$CR#^c6!6^d!isGyM0Y~HU=<>jT8-PAgThQZ@&t#%bWl~v)zyePEO_3Pl6
zgf`~E!GS3FPmmcH#4H31M^}sDdnxC?p5z0t*?>q<>~rWQ4Q@`vScV1{|ME^39YNw5
zY4MBRNBXv6cc<8WFQrUN2spn{;0gWy%-=dvn*O!nV;nGZH*$3fYH55oRlZ*Kx_QxI
zdTU?cX}ZbtsdSCsc?k-g&dNcoSX3*XlqjbO7YY(K<L7!54qH{Dc3^~Rg%Kl*6z|RU
zTGvh(D?dCughoum(l%ITAqM823#rJ$jCnz9Tyljys6&t`<AO~L;2SX1zrT30YVUG;
zY=w!26FLykGy<h)67gTCoy@2~Ut<~~omSfWZ4|2-G=91F*G?Ll!(e2u_T*rx_VncN
zsI&eEA8|<_1q|{9$lYC!!n<2q&hUiMU5<#kjEPa*x-ZzS`5lL8R(XFik-;>9Nrh}t
zRtNhPJJw{Z#eMOF*e|90TlMJf=S`C{AriLPQ6Za;$+fRVCf(GzsY=8rwIe*%NUig6
zwQ-iK!Lm0ZDS)Qcvh4e}Z(o{-Wx5jWKcm1PR?2CzGhe!Opu}7=Yy|iKdK6p21xP!r
zwpOy@oE?ln6vE8j<O^N1#;JDIqUg9dGkr?LCUJbQjZ|JRf*{j^i<oQ}<g>7}oRiJQ
zE7g<*SO?LL*j13J2;g5ZZjw<@5C-BlwWQtSQPqSxZk?x6l2m`3Ida!k`CT>hh<Xwz
zbGNXc!PkKydtDB_EDGPj$G#P6OU;p&XV|}<I86Vpx-|BY_t}hTR&{NKI}!Y2(@oPi
zGQFD5dU#tXZC~=g0kQNoOC@pdE35P^PD-;!j}`*!+}$LGZQSa{*Lo2ik6;keEl}o=
zWY#^*<I>MOqBo@I0c}S}O;M`ZNG6BPN-N_FQ-9nLrdOa#-A}9cD$5!n?U3ETtO#|(
zv@@0q+~5HK{J#D8aR+2PczGlG3s%lwT3LmXBUm-STQ@a&CqzV3k%i=5Tw$r%&sWyy
zwnFc!uN*LW>3oPXM1=<f+p=h~a|d!oR*LrwWzMW9N}8UPN4Kn7iT#>sk{HL@sOq_%
zO<>!IXmtV;|1ou4tI$Oyo#{=SlA*6fC*4ec&5}jlvo`=oLk6p3)7`yH*;7^dR@JTB
z8-+q~ixq*c+0r5pgGi5{tpTGJV@Y+zwJ5Ydv>BmXgolTZXnaAY@sJS>=ug9@FXi-m
zw3*G>37?4pH#0s@Ei#J)gcC3I<WDxF4W+_Ljm*yWwP^B^viGmB^=G>kUi-y|J3Zh&
z7g+K!A5U3<+HzH(#*o`ac(|698d}ce=Zpr59<}G}-C*OSA#%sg6iU1z9+x|ts(M2?
z09S8xByiX+wE|~dc4%b}KSU4H*Dz!p<zP-KiwRa<V;0;bvQvBWVv0g(59NPj(nVY!
zY(^%BzXrfCGg{+rGO#qX;&$fwO}lt~K%J{OA3nT?E)p~rpqa7ZRafP@G<2PY>3jt@
zxO2eO01-TM!({&=cy}L;fA&GPC2ZHdkbEK{0s>yJClvV|gOOA}N{QOW*0vkx)y<6I
zb~B1*@6z|L%Gw2G62jM`93;zRCpARt2}t;#tGV5unfjtX;5xM-+VFtn(1JVZt9?ze
zjcAhZi<l*LHe)66p`gN^NadgfI?<*)iludOLpdM6n&iBW`{^5039*c^uS~D-dK|P4
zuGmrklzg52&S_ElwS)d&zZx<a0lWhv=s6ps%RTh@-8+Uj|2VFvPbXIbf<1<0!Y^}o
zZ|!?mrD>MntnHYW4LKcN1HEc$+Y40fDa2q3`;k`4D;hxt7);rO2Id2PTx`p<BUCoe
z<Lv=!dwVM+6G6KdoU9jtOA6Cq*Q7p<iyG(Rp1H@_eEN!oA;oZn78}!{f{j%*z7={F
zO9ca+PPhy-)GA#EZHPw3G&p{*U8A5ex0^H4B9w1c)6gP$-(uG~xot8OiXwH3h^YSU
zMJ^QffmW`cU+F9>p3cOL4{3J&vPy@~{cmW1Lmu=LC)sT%mn^hIz4@0IP^8H0A|~}j
z5Ijy*gmzFA=WX4l9Ynvb*I}9aT0yl1zXmuKU?lD~EGuHnfr(cacXt3loq$5XX4?>n
z4YES>L-0-afkuI3s^#Sw*x?|#!zh&^xF6)C=^M`Q+^FUL1t(jRdx(<kmPkZeGO@o*
zH#+_C%z7@*<V;lz%jM2+EW>trtsQ$G7+I?RTt@2Od>s`Z`OL*BP|F6#C^Ric{6W*w
zj^+fh;l38u#KwVx0%@>Th&e}De@<4{HI%d>hscD({+mLF__Sgdq`?2{GMe*?*;}VJ
zO}>N5f0y1TTIL`_=HYO;El5fCOia`up6z^fx<>KioF=9J77ak^$j|ij-qP?D53j(O
zczZa8mjJ|C7&8TXEL%m;^S=Y8r@dpzEecL4cqyl?J~KXAKVfER`7m7}IGU}!R-VzK
zJ=%&htVPe0@~|N^z>4_GAhCen0|J^d0V<wi-s19-nz9sZo3@|#Z^V<{CAIC4MZN!8
zleqkHxu#}Splq|}wZx9Bn{L^NWL{gLbl&**<ri1<hb|fQQ>fLhIk%O*E?6RXiyK5H
zoQfKv<rTD%n=7EY`TI(!<d^?@0nTC53z6KTAo|5(!ex%-0nrT(@EO;p9I(K9{`r0v
zd^&sIev^aFP;upgfcouz8}Hr>b<eZUET2+ne`?EgdK6d{91&Gah>ua=ulI;$3;beF
zf<uS4d9yeik#0A&<<AAmAP7asxay3P*zaxe{QP|Q!^ytP>Ad&K6BD!E6sd{>!2pSo
zex_=$x*>+p&wny`9QW2uU5u<uO|e@YrT;97oj(Jj+ukgXUpq3e3(f=>5I5w$%NThR
z&5*{itfnU!sj{(cLmKdQz^H!U?nK5{tkNz!gZZUqPAp_57e)v<d3cJR4o^%lq#lmU
zgGuH1TOI}SWXw$+*reMrTYIZ#90^iPm|u|};J?&uskd9URzq93KuewU<1c|dX`GWY
zqw<6|#9o+QzW0gHj_bUEDn<|_4v(40yL&AnpBqH#_f?RYUhtpXsjG8nvQCiq^OHer
zV`@^{<S;7LAgDqe)`B;8;U<siw_P6~?TB3EiA+Z)CpVYdI#n6+RB55xaxd;?lO9DG
zhVWq~=D*h2KJR|RB+vPBoMRSC)Nu+2nvIoqrIxu`Q^<r93@SD7N_$Y}K_weTr&G0s
zDAKn7=&&aZGJ3(lMBpRX%#^Hf-8NnDp1KxV=Y<aI7st2_sr6(1+VIdA+7{(M!7<N<
z{W&`a%T?0u>CwE6YB&GdZ8AuzYb9pRe+9f!&_XkZ8BN6g{r$W8JCW?E<BszgZ0W-*
zrPb9PeSM^$3Oo_R?Y1Pt@Uoc;m<z@D8d(Hcuj@6=r1&?NGHPD9{z|x%i9!9Ni*Jn#
z@t5`}R>U<5Xl!ZBRS0Xa#=Qt`T_P_17nM%9su@Lg&Fu-13ys1?t;|sz4;JTI4$rpn
zCzz&xB{gDwhbbTp_-37S3xijz@p3RXt)Py<RI{-B1;yb(V>cs;6v6_c2pDxI=orlp
z9Sd9p!_9uJ>>S3DRu^_|Zt_FpYj&i{nUkAaqd>=6IMLr!p|5nILd9*EC5Vir#w7-w
zRhrkK#k{YWIJt|D`%qbFzJ9G2hSyltk|w%E#?8SyF<PUTNs1UuVVdhQ_A`fhGzDRI
z+k;G8Yi+B=@?KJ0KBMgCd3sFCI4y@N7rg0n?<9O9wl3FkC?X(ptkEXOPqkTO2w@bj
zv(?J)PdDT)`}pze@81A=N6WW<pEE5ZXnOGA!81HMk7vk$Cg`!(P^9pB<<wuLzhVm+
z6QFuE{noOqeW=U|Il%#$0|=jfkYHIf?#~$|L_oxBOV`7+7xTXR6~|T?+e4$JEx+~e
zdAVCM+w<y7!6M_5EhT2Hg$CGEw6rrY;%W(75G)C+Hl^tgS%Yq(9VCd7Tg0ZQ5(+#y
z^KY`m-_{Xv#Kc<IV9qG(aA<zz!!f?{kVZu<ihXss^vRGNavsGNGKPP&<ab;I-+a0u
zgUpyiL!M8iB!<z3r`%Qm9G68$9YyP~f8)KS>to;lKBTXWqsPIHQ4D}HBsMGj4l9zR
zeG){&;gpINK@|eIG?M`jUfZo2A2DBMThrW&_PE~<D4R&hZK6&~WFk0Fv=Uy?@HhD-
zBx+WBY2ZO3@6wq9nL!@Jg%tha!H|!Kap>G{<}>y&Y`EiV>1>o$%BGt6Sb6E`>=#X$
zzT5DS$xT#INVZ;!ydo<i(Dsmd!beX1D`XZp<HD~2PI@rwnB`Aa4ceOT)np?Vb-MG~
zn6ezs4*~BUMzGzSAADR}h=)E{&HIHRcPp%4;nL@|k>_k7>prP&HQlf=0NqSAUp9e|
zq1IMcV2v`jp)pWrv*x&qrmT-etp~fHZ$`yOn;(#})Ejhd?%R;+qdnk!18|})xT2nc
zXF~E|Ap>T$m9((W55LS~#a^$rrH&aW(mMAs*euvT@{8(wVLF^P{=hu51>9{*!g2e_
zr?%b|sEK{1vgt?i_mv5~>2Hz1IUYRgT>`x@3b6QT0MtKZ9wBwV%j!;JN->uaA&yfO
zEhv77><?`n*fs!G7OKOiMO|t}caIK4!xvq|A$JPEF)9BXhH(6fM$rHt!AnENhG!Q1
zj~7PF7MFzx>C_Uux#FhMl+nIMvS*CzNwGLNIX@f<Ahl$<q;;^$8BB@(E3*CQoIF$=
zfACs23GM`5KF)JRlX7CYeqm$k9Jawg6_VT8nyp(`Z`aFbc+pCH3cB<7{Ah>m2E}N6
zBkxSre9AO(8Upa5(Gs7-oe~&*1BPq&edt0XSibnd1qM?Xo3Jk6^1UUU+A7%nDW3Ee
z$%my!`*ycTife1T;9MAFFdL|*KFxjdz-!fceR0J@7KtNqrDAW2*%k*9c0V8d&Ih>m
zr`qo&3`@f~8YU0Cy$ylu?xa1Ytd40?CQvt$l%3$3Je=_8eCzc*I{D5|;W*-ZZFANi
ze|`LgkAwYH{TU`NvTKFKXppNK=W`HSh$wjV5dsdqz@_lqJVoKeS<TdgXa!vIRcbK%
z0?0p0Ecpc)5du@z`4`U~e^RU&#ohZdce_9*6uz=~Ju3CcA2~AQenGkL;P2x+Q)AzK
zi*PzAFQe=4z(j}~9r8;4X5&r<8;ee9D%<%*w>*#0bLr=Q7wDJfUPEWq<$iBa;4inE
zI!F4+YmFYg)|<|8Or?`@$IBeQXs(A`?h<k$kA3Y%i|Yl2F!{4hyvS@@^S7&$h3}Wd
zGc|(M{0=ZrhW1RU_(eo2(oT-xzF_WTb1IYv`PH}R(q>u46xHt9<YVl$$P9O;SY>Fu
zyN#Tw0H?mtJWgUhgEbk>h~f`<{D4K#CGmz!LKKcK{y1^)!wa3tcHHzg(Y!)uFI;JL
zepIpa_0pbQs3;m`F8{6jgWd&?IEM3ki)wxyAlLYgVp{vfW?*g(wxHi5%2Ea!5nWc&
zER1zXGb0cxq);8M)u-N0D;6$TJ0`_#;)O}|dj&fBhK4hJnM%m<813yS?{U_+PB<L|
z88~eXznY<u`{D2a3LJtyK%oWesOe!O(-jOi$(~Vl_r;Z#D_FD@uhW?nhS*)U4%qeA
z;F~zLDD?YsezIQ3pz77Xw(euz%n&mgoUYG!zOr%G=ks=fz2nr^3kltG)n>YQ86GLE
zRx*eB8oAMW=SWuXCuBu-&VmDbexl(e_>=B&#QbzRN89Q-j(ta0f}p3j*BP3Szz^WA
z-y3pc9tk32EuzkI1pSX)M+d^f!Zwg>`uzFxPlo=xaBRdR5px=ibz@t0`6f}C$#sGT
z;$Lm0C_aN_6~d7T#b@a>gVnbN!WLaFUyxlN(H9TX*4USN8!WBWJvQ~E`Z&N;A>;c*
z#OYo{mB+@^Qx;LN@TQKAi^!;IrUvT6ne*;-`741%vBYD@L`P`zC%QAbXXlCUQ?SK#
z!g&fI2rY%iu*3eQg^rHSPbY#x5M`zjiU)rk**TfNQ3N-FvMkwoB=6EbpRd|`uEZb7
zY|1PmB(A3|bWrN^;e(Fj2(|io(_-Zc_3JVYsgEcKJ`UTerb>5Lz^hz}JuM2Ee#;gD
zE`D$te;Xh7i|W-Nu`_`_Lbs(Dj3b*I|JEG{B#!BvU5ecr@9anUZ*6UTykD>s9s#NP
zho+i3CnYo+Y)sHhX*t4qk?*QqF7+BQT|C?PPA+@tUR&%pSF`C`&)|m~fe-r}X@4b)
zf4x*_&{EvWOXfqRWBP>Ww=fuqV4{51Wb=1^5k&mhu8%r-2_zMm9RbtZ-ZvZbTa}66
zWlU##lpvpWZ{o}Iv)-%Dsnf``LPFMe8{zS-Ip6-nPYi*^SnDu49RoqiZM|LxJ<rOF
z_7FFVkkr>0yU8ky|1JNe{x|P&P!hp*Zxa<Sek3H5Iq#T69lk^wK=gb*<Ix4u+-ri@
zKV=TM)Hu-wk+G_-v-)ka0<1AMI2mxE8pTe*Z}`OAZCQrmjsqR$k!@ZA!}$TYHR}ZO
zi{~IG4}q8f65#`AnmoB-we962+kaMf1&${`&iG(W>;_sncw#PhJ(8})-9U7OMb#>n
z?S-m)uz$?BiyxMLKQDO<L-eDMbFUZ|%2|SMQ;c%FX?xAs`P)c$9vM8}>XqrOs6SqL
za@@;&fnR^GG46|N8V0vs#C-8Fsit)5JTO4U%Qs1+pXKEN&U9NF>rRsmf-{5|qS_xM
zz?eoM^MJ1&FL+NH20rfy^(}rxiiaB7T=05;>E*?8-5gzG=J1E!GK}ZX5{$AWci28Q
zer7tf5F%eTnuRI2)H>mkeV#VLX8e|mz*F5%7sIFDn!r&gN82W+Ldf~pZZ|QeHmq<w
z(OEW*4?5uWa;r4tHX9ZONN45Yu~&$nfHRo^;s#^{<P;girv+GeLo(uifjm{<SI46i
z1FVqrVn8}4Lo$a}gXPC*6rzAW$_cv_G7|M)Mg531!T#b(^A#;G9@$V#ns^|ogeigf
z=UF8jQw7>{d%iT;Mj7^dw*;@(QN%eKJQk#u-0BhlOYC@q>*y1_z#uplU@|K8c^_7E
z+{BdU`66vR(eRh^p2%rON8ebXs1;V-mnuev=zwz|zW|g1yFwzK<x=?T*Xzi<8-%^>
z!gvC_J6qY<m`{mLw)=w5EACL;BKdLtcG!tGJ^F*q<413DtrbdDYBU>Mr5ba>=Rcz6
z+)M|39v#fR2$ASVPDAkBYod2L+S_=dMpsI3NYoJLSLePZ!sSqXFTbJj6J<l;5-AS$
z)7@3()ZWkntXqTr`M19G|NH`Kv-f6HsyQG`SYz+;yV}~wj2^O}zSAPUW=&!u$Sb3e
z6N<D5`?9+z7<c{!|7ZHiLlpw9{!YAmB9$&YsJ7DEeTv^!t3_8CKjYoH$FieMQ1dLF
z%?NdSBxOp}_z9e|w$)o?FL8h2C7v{4s$Xpd#XGilOB06<J1b)xH)+Xmuv6wI52c~q
z&iLQ$F`>|Kq!ehU$XG6j9x&kr2P`Eat+!Tsza)6#P~^yurW>~OhD>bd-5G8OecfyD
zQ>^&ZwyBJlEhSfjndxd4Q5duiIY%fgUZ@kxhqjgva+~rZTAjMmNHWLcM>ERtE>Y~F
zZ0c?Ga;ta)5*$EHo4=kEIqq-HZsWPH1k?q6@zQ<y{^Xjd3(o4$F#Z`sJSh4d$kBCC
zYSQh{fE=>fVKEM1u;D4?EYc<bh0$bxA=UY8FN(wtKhH9<XU%ee^@N5$;1K(~Y)-#!
zm84JXeIHj$sy;Q9g^NRyIb+q%uf`eTc(Fr*(K%Yj+713>2~>Xn)Lof_OTgKdc4?Te
z5YawA4jS-#&e`;h%6m5TOU+5)3x;=w+*`|Ky-ola6J2&*FnE&yPaZ~p$T3&Kqmucf
zg6rn(v$DNE8`Z_tGgVHVcz6?)UT^<ubecFluTJpHc)Ypi+`OUm{?+t_IxFAt_H?#%
zo&1gCHNVvT{rx9+=2v#EKD#P$ZJRFmO*=WQ<QY7oT}7Pn+5P#{c{nd<iR{9;Tb0Z(
z5^SSMnvjz2_vf0T1YLvj*x6^(UmE-L=P0un7FN{lqwSa%cnC|){*XPQzH{j#jeW7?
zmOx%;>qgz~+Q|QCI_q${-?)$KnHbZIsUwEzVY)eTx)~GG-QB}<P1i7OOgGc*%ydr2
z^fb?Xe$Vq<mp^yyeCxjNPrN^`w<|-bIupF)1}j#sI+815ba)JA=R`Z2wo=!iP7NOy
zK@0BLe+DE<CtDfzPGGv=wXnAs5KqGw%BUQ+3i%B|VLV&zN2Uanx;_jpOk&2=R4@0F
z=mfKb2&@*j1G-dFDK+YIWU}doFJ9X%+-0fg$QJvoTl5)#lmwzwy)q%R%Ed)YhbuqE
zl;y`L4eY<(2yP1H3mC_Ov7lRhG9}MuTiTKa<}<*UQiv^^+TwUj@CsG(ElW))Uf8<|
zMdyF(j*E8Q&SC*Y@uR6E6w4A!8sZ6^`>alDSC4&Dzc5|&qV(LUdE>V|^;<pSx3j&U
zjh|Ig$U?kt9|{CI9|G`Xb;5j}|D!l)yEK5)8HU+96k3*u!~&=m#o?<?XjC@-NTmDW
zi9fM`D;q*K&gS%)e!6h%!raDG8w(dlbJW8+%2tcqyv5i9c5*1M{c73@e=4iNIw(T}
z;ZFsn3RrRd*#SS%wyDV<B-zkC00E^3H1I$)rAMg`utREq)-d}I0+r^iJ&*Q_p?J~`
zExOWKZzM)h7$di6Y8BmZ;k`_2?wUP*7KRp6j{U+$)98cc9_rAUy-k<KqCOa!-T*Da
z8MFt{qX>VGAF22DcGZ_+kGKbm*vP@wY`u;nAj<*)TmlHAL-b@poM9lAqERkMN!#L=
zygso#F@mRp5^bKido5pH&T4PRESfN2j)8^qS!E!a3X1DtJLJs9?*3qJIaB<1b|`=^
zrpaLq2~-FS{NKMv|3?{Q1AuXj&x=qcdf2~P7(D4qP9}s$-TYZ&w=r)BQH-s@4K|jU
zM&2?;`^M<6Sp4?8N!1+VXkmx8=&US;Tatz9iwMYEejsbJJu<%_IU|1LI!n#&Kdi))
zSqt|cvn`so;sDkv>+2!|79?|%%ts40#2xJqhI6Ye?UjaA&Y*vjl9KY13A{2IcxKD*
zTY$sSe96oHc{#D=sAqlZ6{}MAoVpHGK(;I=C%3f!3gS8QDC)w+4Bz8cj;fL0Z45K^
z=RaRS>kRxql`A<%%w4lTw?uwu2QA&M86*yNvwxklaRS&PtGfAqL2IxAFu+oGr|21i
z@!pXBTfA)f=Jh-v2EY1;Q+(5|{Lkerxohs8_0{Fu0keLUq-7=X;_GMID>usAOxyMA
zc=Zb8{XqF*=R5AdGkrlExxesWmsBLtjv&z2)tDmSP&evO47>JVc#YmILjywAO4?zj
zh;x$QmhAVYm-fbV?)Xv@Hd=flo(W!Uzpe3ps6;AoW__?RWxGB=cf?YeDCB(P(%dpC
zp8m1~N)H&!%*;O)4lme<Zm4P_+8*5#Hw{@kJJA#TY|X_<!bZl&;bVAq&*67e2<TXS
zI1g%^zB!VU>OPd9k}<-fFlF_I=Q{;eU^)9Qk#14TCr|ZgW4aE<YFw_5bkZJBvz@nD
zoZb1e_P0JK%K85&ek@a`xVed_yFl#h?nYYryT!x~K${$3r&_Edn9k+C(UB|2p^bka
zn9ys_$@EO#Onz%(?>uPPoYjhla$vOZ*D&2LeYaL5x7lYehLmLE_TgsUe@9W-r>ef=
zMPX?hInw<+fi$?>?h1IWRLR@A4+VQI;_lF%+f3l@_1Va4JHK7w3^oqo=5QCzS|St>
zWSHHYujs$RY`vFXUgko0_sbRPlTpN|RgYVVil7ya9bqmS<X{btFZbt4o`=!5cg|+7
zAbK%BPS0aGN2OX;R@!(Oin3<?>C6tVR=|cL%`_>Ptq~TD3r53AY$i2qzPq*XLU#)y
zKR7hw8ey^kC}zBDu3u&{D)?A9;g42Gqjun&(qt!_;k)W>TvAy@5F6)P@AwJV_xQt?
zk;a_w$jm>kqSw<s51+8he1E!O^u5^ut3hw6yX^W3gjCSN2eGo1Q_f%38LWx=_+b-P
zq7JVS;vf+=JW&soKSjlG?OuYPL3*!?dWtMVLjDNWw>?e=%rPxZWKh*J{v+2lLd|FM
zd4<o1^f?PrMgN*nSjUBX4z4XqQpa)88Z6ELss+wo1=Ya&z*Eko)ZE+WT>p9ytoF;8
z!DMRcFj&O@`;~MPnwta&<=h<&;0T78f5z>d*md)`T`c>xSEp!?Y8rKqb$LXU_)^!~
z^X4F@+Tn!3Mej_{0hJQKI^jvDYDviX-x&XFO!+8w-up>mzT@|1PX{~dSJ;MYfI4@L
z2tLEFpZ5)I@ZcH!vwQlcsba)W;@@~v($ZT*3p5|%lpB`^R!Itaynh#=NsD!^|5E<a
zcHF>w`pf<ss4xu-3|y2U9A$>&Jbt|-=t!$TSP7rj`0B3I*<$rzrc>0>K{;GwH<5-J
zR82~Q&{$}K)FI!{B>Le(FnaooZ)u2PPQ*_j4nivRW)ORM{5ZR6iuaDt#A{&&Q{Li>
zQ8vTu2416yF4j3V2hZs%NQwK3&F>h{;l@i2EeKgVOhv3JWomIhG6(IteVp=?wGBs)
z-R-uoozbN%J#+4#GO*XH8&E;VsNVKJ93>-x-Rc~;6qTW)#|Q9NAso>X4Xc>=mRT%#
zNw(Rf^=iCb+H8$vx-gNu48-$9j#*5O1o?YV2=u2VZ(`}(j(Ix!X-Ne+1BPB>HV(&5
zx)gub(v>JVwELZ_i$?Ke`P#K&Hx(6@Z$1@$+CpFvL;U6fGrnPp8E7(qgQHcmh&W7E
ziJ0udP%YQAW@hau_<=Rk&VF+>^bx6crXB}K&*6g}@X{lY4$D07(S?CX2LhfPbe)d|
zLum0IM)LJcn(!Gnam=HULe8x+%lKW$(B1gAk;l)4B^Ejcf?_Q^G9=9(b@5D5bta{#
z9PoF|p9Q$t#=GrvI}-fyat*?jyY^F8T=BroW&DyJQ@X>QZYH?W>paA5UHo0Gr8<F*
zTgX?>*FUP4CIRC3aOX)xL{xc!daVDo_w6^$&UQSM0jH`lqlC))EJ>B4EfLqJhF*w<
zeu&F;k0JmqqNXg=D{>?Ah`#VZLV<<~#(gCb91<n-<ZHdsU{w#4`hq8v+G*Zlov%AA
zjJ|X-!^*RAIUn&h=RU~Rgk_OSa!v6*{yZ`%P3crP|IX>1G{J@+hKo|h_cG~}&eZnL
zpmhRBtv4*W^;}wpuf(uaQr!wZXT9u|!_Kvec-@*l8gG{7!aoWERRGpmys`6j{H$&m
z7G+^<hh~ZjJe?*eb=sZI+*h;kkJ~!Ly>_=}G;rXWjFs!G6(FltKSu;4Xh}eEgBI5f
zq|H2pY^HVeTV~N<c;m>Yqt%<mDVTC#CsMh1U2Aasj1S%(ozl)KQfc}GdsV>5Z=Qdo
zX*6aarsBda6q;XXIYWGs8M@pyTJc^_3a_Z{gi16)GzGdtWWZ1~XGkAOg--NziDZc>
z;nl(1Jmx&aU<S+|gcuJT930$yZ*#<|#7rh^bRaVHero7na=BvkfR%ka-d6lDOq>fd
zOy%YS1H16joc+U=y@}568!Ke6E0H}%SVUR+$H~ma=6LecKX<_|oDT^WqI&YOPX>o;
zu_NQ5o#LEO`ju%oNc(W{P$+_^x}Ax3>$i8fiFSF2PZsGXhIO^n|NJ&w<Z*lRYC<9D
zIEzQAIBc8cIm&ZC+_-8Oq++8;cY~}skf5KhQl>?XA%;e<A<QmGcGIoWR%r2=sZL)F
z3)n&@xue}$6r1$vn{}UgUO+qQF@~e6e;}OI%GRo}b4_DD)8B5+c!aBM+8-{eYJnWp
z@r?Mtcu9{XhE|g}mh1Z8qrB_MQ3P%E>onCBzrS<eb514=z>fEo%X4Z@Fw`f)g(j+K
zPPPWI5hYJ%r(vg_6;}ST*g)^6yPjlxECk9}8eRS^;L6Oa09q4dy!nnBvq7yu!#|Pn
z^Nx%4$5O>^ITP&+?dDW71;udfqTh`QxZ*p!5g(8><m1MU#5I2{&{Kl3BtSI+4FJHe
zA&W+vwo0Z#|FmL&LDG+V)uw?s-d1T5R9d=m<_RQ2(ErG_$2~Yvh5llVy^;vkz1^M0
zYp2SM$G;!t$S*X5WYBPGF0&;Fo=8{bRIx&Lill^%^4YY+HEf%eq8ayWu|oot8(h=C
zde%1Zd9iY6Ligm|1*GPyzGpsOU}toSY%DGc1z9rb;uw}AmVw1nDX8jDa^<72AA%Gw
zI|1QLs%1TqH_p_dJYNM`(}VY9g<zzU_nZD#L{b0OC<8TyfIoac9YIJmqlvN{oX-fr
zCEv9-;6TyGJ)?W(mp;d0lXo(>cE~gcvnJ8gm@LZeqGoHv2w(A@y2Vfcy6kyyY7E^|
zjp>2nT5$4ovpb;#M*XS(t*I{IA0d4~p=lnw?oHvs6;)asxAMkOu~7v=&>J9Y;`xsO
zA;egL<jFvd7*FDghXz8fHQ6fxMKf2@aeI6z+%SsfQH`50k!ZUmVLe1Gz^MbBdS&5j
z2)tD}XOp5-EK#Vc(?RAC3W0)B+kbTgz@SX@KVf@71u6YbGi%BN>KYH#@74M*FrBVl
zma2Py{x_oCO11|PDk<?U`0}thYUMcjZEYO`bH{7E=^G?5gm|^Q-Hy(4foIc&_~+3+
zVN(MZgBO&`-DS-JIwi(v^e+owHwNZok96&|3I$D_BbiX@42I;Pi>+n*ko<T#^I0xO
z5ewFrg}Qq5=P4yDt>AdX#CpZ==H+3{_A&84#DvKLPl<XYpjsYpBr0<PEi>r%E!h#z
zxSse@N~z4&SrfwxUO;r))g=a+v~gxSi+A8YsF4C*Z?#|}Rek^Wn360#!*d<NI!H1|
z;G3ezpG=o5TdPl+tD8|cXV`U?`~8NjqR;xre(J{=^Brz;=oWo7tmmWGDVovr5_Fnn
zDpcq*<sI6^>B6s}@jsr3Wz)m@*{n6z+lUA1=6{$GONS;p(d+t{+O>-3+#Cg9BboQY
z>GAnS-YBr<`{s?o8U-UGN}%H;=W__qER!l!?Q%8HpP@rXGSx8$1qucF;QF~7cd+?@
zFx{q(Pq#sk33^(T5;>zn@YytdQZn+Po!Xo@iiO3XNH?R~)wdhhYM5=Jl%i1ZQXZ|Z
zL)Nl?8@l~hjEjo~w-J$Bh^R@Y<Nvh)Qhuw#a<n=9&O<+}`W=KCxi9$B)U%%}%6#XU
zos~{_r;st3=cqrExBrp>{k`YbEs5Lnr6DykPjsp2CWAA6ZbjPE;rQVtKRqIFjIzfg
zSNCQrrFm_VM-QnW;Auwc7vTt`-NaShA%N=W{)Uqj8ioX<TsS?8%x{7^k_y8&^B*Mn
zdRxc9<4J>>6c;CilXkI^H$fl*G6<O}a7mZ{u}6#^{LC1=a-p|=>MLhP3u(F=-rE>U
zo_&{0A_OIiY(DkDlxKh_uu#MVCd>~dP!RN3&IP!c!T)(chlnN?s&DQBgMK&yEj;z)
zq^$S3_Mav5Wyxh4?R+aRhA)XfP8We+kJ?*b2nh@>Vvy46iWN(MsE<ld+90vzs=P%D
zIO2^b#9yf9I2^602j_W_E=wvKUN3IgYw;C^b7WBKX+A7P0vW+s1j75M!5Zn7xBYul
z9NoE4l0cUIFX^FKvP*GPqN;CPhUv}bA^18r%(0NbZQf7aUpmXy+*o0juO}<VVU}Zm
zT+65icg!^f4g64Q%JWHInM(B^y6yfLdmf65q8O(TndVc)+k@880Xnwd$c(>ET8-nQ
z;D#}W7%CJU;Wno|SIhxdkq6%u38sHurn~H6{@5#y_;B3DDVF<wpD3)9W^kw<2W4kE
zl_8PTsRXOpxPXbMh6ca?br1qlm0XKsnC1o2VIPuTgEYalq)GsbHDjqKa^=<EJS(2&
zcxg=qP-cnfCd=N&4|`b@Pm?7ZRMW-%0xGVij^~!3TM)gi@$~K+@w=aBnpU_=BN2GY
z;EN@JAD1<d=e_TAe4-hx{@hOdWl^)QtNsjW&d(coe4joqLkDF{SE5&Y|II!mB$+-E
z+owZX!9HJam3N1GOvUi-Rq}NM`XXzoc|p3RsCWXQN@<-~dc1T))GsX{M^1fuPvkdI
zG;KGfMbbAB9o>MDVul3^VlP@coN`SM5ewg&lGiR-g1~4=H2tjEWN|}Uz)+walA^LP
zo%}bs6ir{EmDl*a6RvwK<(Y+(2l)e>Q0BlNlMH>)aiHh}LGBg1xpm7gg_64yilF~S
zdv^W689kIyJ_2Yb=g$%#ABxd>tvcxkYJ#%J%w10il)O)e;&O;o$`j;FClsy!P|`z9
z@hzKUl*@z`GRV-cVuF*&=(YHNNNG`{cP{~04zHN~x6e{ET#@DU#}vfH&KJ^%m0Cs1
zHmYSa)Ss)dKd9aIQyxDFE~jE<Dl(2!GG*M5fzo5hCVbwXj;K<{zIvchvQCrUq^aA4
zxd;pon4GSL$<|E0Sf_pEVGwS&uUe&1-4bF(B&+i@N%8YD=@br)WcFX*eiM5wNIzhN
zy_KWk3bQ0`_-g__9gr`s(#M+-E)5yaOQ{QCt44NO<D$6+A&?hKwY16hpE&5_bR!t3
z@VNi+5Ya+H9A$?>RKFfT>XZ9wPQR7P5xhYU{?chbVQW-0%@+<UU;Ux!kfqVxDFMT$
zd3xxppGEfZ%iBezQ1e3@d*;q?z8DUdC>KubQ?zYV*{S4`K)eb!{C-=!P{f+d?&_$G
z+gO`J)TcoXTDXXvisss=33FMqyT<wNkOq+;`QOA=`+v;8(JX_x7*Lv!8l<Su?S|1|
z&_KV1L7B1&MU1++6J={$3x!0(*(0AKgC{{#cPjrYW$aIjEkuVphIXA#Tm_rMWk+a7
zGlpts%2s2y-s?k7ixM_;Y5-E3kxlk(kW+<4tx~}tjc`J0`V{NP3-8384ZXXc4k<uS
zbectV&JnGTk{0HU@DzW=@i_BsE-$ohuCzwKNwTmxD33vwgr~*}xgNDL0rHL@p@b#)
zzTn*KHhu%8VvJnnSH@p58IJ5)S=U`UB8Hp-m3FWtL0|>4a`w4VvPAmI4Nl)mrEITh
z+B;+kg0{7eeM7qfCl!4k)$6p#_=MaOj)!L7_W)AZ<IGVh!oiZ-lRtb!BJM#B!QdSd
zB|u1fh7ylN6e?ZViiDI_J+B@F9SQLJSG`^jmBGq?lSvxOiu2l!)OX(CcTHe9r3v-~
z-^$LSuJiR>?uTfRVf3mzDdtjky(Vxbeux=bd;vZ;yKR*^?E3aL%z?;d>mR0D-&k9v
zNVw4pzEB<HGxNL>2>fdIBS~32l7=W{dxjoOH^T9z|E2VFLYqdO?bv^+r)yxK^5NlJ
z`7w#u&;xOyes_N#pEeYA?E@ZS=W8ISjm$3~wZtkDrQwnT`&qiM0>Mv@Wfo(EY|8aU
zv-vEZQMd4c%kSJ2o6-;rL%Lzc^cdrLh+>8UlMLrvY!MlXSm7lKS>u%*X#*Fup-#3%
zSh?0I!p)gTXY!rvi)+>+Z3fVUHaFJxL}KgQtz3U=);&?U&u6OYY11=5%Pk9~!SE?E
zXZv@GKvS*OLNa$xs7@Q|LyUs3>6GSwX8(XKax)nVgmREnHY1=)3wuK869<YFt&@22
zpeaL(1mslt>0cu7($-&Mwcv~n&<vxR5D41Gvj-?ONYx4{w=DGH(0nrChDuNVc+vbO
zcMmPXG+m!5*tTf$g1p(BdYD6Hu?-K4`y=nzl(vvqi*W1__emRC;EI&EIG1o=d9Xkx
zOW8+rw4NcO-BynncJv*7Z0^y%`UH}q`?Zx?zCL#fR>ho7XM=STytMlRzGLOdA3y7l
zR!LA0!7#zyu>Un1fTZ?0l7lE4sIcI?OE5QLqLab+odCs{0_@Xnkb_@TO;g64p+bx`
zp|DCksb?w&xM&l9xwT6aCU<`zqN;JdD~x?>dE5+(i_?gfWKt~QR-iVJgxRcX(_vZ5
zswybhYjj#FtLS(H4s~<zN7GSBH(*HS^)Jn9%O;o}oU<?e!^^tiw6j19aPvlljU>vO
z#f#W5Q=xyGDbvsPOr%0E9oYE$VLR^;Lq}!y?^}cmuPn7<rIWTJUz~o&--fAXX+Y=!
zH=MY+kxVP4@=*tgyW(JEr153^zKDY3Rjp)u$U+642VrjN*BQsXBrUe@`i4~Kba+M4
zrMtYW=pMwQ?1L6(Sjp0_2pQr`UyPT57LissMYvzG=KX6;b0f30b!7)#Gj-YsWAmeV
zJn^0(d@lpdRDUJ%-jL@gfw84Krp}Z;XI4C=nK^<zR<;q0NU&uw<KtSaqjrH(1XhFQ
z|Ij~%z84xkD@NW12@v3j0+0`8pyAqZjD@;3Mi0J}ln}_^KxB-u8I<^6-2N?!rW3IW
zWUYxy(pZ5YaJ#{>KIK)F=Env-#sD*I-lDqW`CWZWrmt4BVPZVV1==LES$}0z2=uGw
z%U*t>!pH!tBx{Sa?95&z+dJ6JmuzV$-|DI9HJY11>u5=OX#N~7LrGQZl=U7yx1&DJ
ztIq@UwKLnuKRHIN(gx?EMp#=TjxNQ^*C&Wc7A|AK6)graH(e`b@^u;A^%?;rl!S|G
zD_vVD2u*w8YL#~1+jr9~+uNWa1p!~p76iKIx=|aYT|#{@f<8FHm(KGUqJv_b*tx&%
zDST*`tkfXhvVT$kq#Hp|)83{g7ZRBNFC9Y%Iu!wVDj>l$7i&o$hmPL8tQmTgvRltO
zWtUk5(=LMP=fg4?u*eCdWTts}IWLtU!%U^wlDw)e=^BC-5uNTQcW7C5FUDh!Gg$+-
zS6d8pqnVOV@nC0(ER~tX(|=$4?*GP>z&A28y{uX$ye0%yW4O1G&t=O>;ld$a|4H+o
zCA(Ch8U!{9VkPR$Qow!6od?{H7zm!^{v{qR#Adw|<8mHwO5jV0pv__5TWu1KHcy+L
zCy0507s`Rhfw4F%ir|%u+$=_uocDz-z8?0`3s35MTp_N5SM4D(WdoOl>#iADGG=4e
zGC?<A<R@Aj9gg~oBms@uiBXpH?4P#04ohZ8<9Yi(N`4o8{GrP&@Om$rNq$quoOtY=
zAuw8SjfcFu!19$aGWD2A9RMPXGPdm^xFF<e4aa|gxvJG^X_V5d40NP{j)c!?<I^`Z
zz+naBIqp=@gzpLW1mVI^<5j<rp9t;S&l@S$tI<SB#0zwc9XIi&bwk-xpn6aOouC(K
zEFOnn*~?Kv#YJd+d%h;p<!kqz?T4r|{^MDBt;R-a=DGED$hrTiAP$#`B+Og6E`g<%
z;<7<wltz#L6Qr#1kU#66&ic1Y-#wR%Uwgyln#7je%#D@u1df|qMi8SLLi)e=Rj*=v
z$TSutdAkIXj&AR!jqV9oZkI1Va+4k1wmUT`0M!K0@^!I)Zeg8N#}#G;FJeu7ls=8Z
z!r_jCvsZ%A>gkH}@e*BbD$CCGYpaV_=EU@t?grdCy;Gyn)A{}=plVfZBNr-mBai<z
z!MAOVPs#RB$Z_LO6YLlBws!Un-E=QLir)*aN&mv><9|N+wQ97GsUAkTcsuV1_HS+5
zx2A*`$VMhd$d6p!e;;i*3z2uE%@-cp^a=YpL>{llfqTRC3*ezp;p+YP_>Mpd;75SO
z0+dA=_0G>&&=-;kI%aOt9c1?EwLpewsXnHf?H_!45cMOYAN?L-M@WU<CfLR4i%orO
z`yE2B4`r#bt&jP=IVxf$EN|Lw;v)~E7IBGsv1J`NfQive*()e!ON1b`_>i;9cjR6H
z`nyy`ZTCa1i+`C8Z?H!9q|%cyT^8gUmk9Ga#kep@G}~tgN~=>{jBzxr5TNr9yu2%y
zC7NY-%SZPwMIKIKf$*)#&A}8alI~d0WBcd)Fpze^o8EBMd%iYHWJsqi9X-6z6j;je
zjv)H5k>7(E<TEc$+vuZ*Kx?iFXy23yoYFP#3EK70yaEF(MOj-C+q)UB6|!BJqAVAx
zHM~z8v5aNwbc<B=@^tm`=9pkMuUD_zuAgY>l=u>$iO4(dAaaJbL23l56N10Z|FgQm
zlc7HRjb!JITBS#it`ABY#+%<0f=M(}T6T$-L5~ma4Dk4{^5_k!Dxw~A;z<OdS5X~k
zPo9Z+lD6M(<6hzR57dkR?c(F#m3x7g-Ul3!QXEXzV}$sjh=(@>ph{;~9JH@~(nge?
zBFfA4(fk=~C~@F(-mbfhz(ED19-*FEilbUB7_1Yi=Ef(Z1J6TGldq9jRSxigsApQ6
zRe5sn*HiHc0z!?1I66C@>;On0%LlrIjWasACcKn1NDOuyO)l((D1pRkvZea+*P3Id
zi&MIMMo|?PQz)7Vfrf>^A_*Pngig(th^aPt4-ou|8~JQZe^ZGf;QsK&PQ77a6S&6R
zE%@KsH@WQMRqi8Ey<&3ALs9m{e(8bEjjWUtqVys^jxXkEP=Itn7aa9aqK@}8&^?#k
z;e?+sy>56U>z0GdBHMg##E8@P=F!-4ub)N#Mi`XZKdQ4%S&kI!JXN1Qpu=5}GVA39
zijexZOC#~j6h;1bDm9_OSJ|;MwzxMl|FT<@>{lncPf62lDGlCKyZGWuSo6Sh=4coG
z{^JQg-)m}@*Wr|nd`i}bwkoq-mPTJWFWp(jTa`Yz;^|C6H~%)36|F5{FZ<ov!VRZR
zLEoS9zs_{=+Dyl@oEt0xxwck9jlihw+y&ImGeP)C$slqK1yXuhNWFjlh8yf#rp4*u
zk;7f@V`$;-(bTsrNMntOr^f0G$bnVZIwZ{=ASzfzOW|p=ehVSIz_F$NEp)GLT|)z(
zc2Wk^F;0<lx_`K>Hc=qipUfw^lfZUaRSXUCT6Oyle@sG1|5&Nzz3?`%E<*}4kAs>s
z5{A7Zlu>yT%wGQIc5S{X^Z_sHH(p&~gHHO*+pH~`(_}-WAp_xn9VIQ+RL`w6i>ot{
zM`ukftr^2qRm)j_l7|!CTyFGIjPz$sf|<go(PV8e2g{=|UcP*34utdhG^@{W!(M{2
zmqLzb`fzdk==!hP#=}}k<Db+2@@ufdy5^4%*9~jGQ)z!S$m(|&&@K^EXsJHLH*E+)
zNBE1E04cB{GSA21ngr(%by~|4=I<}q(SzuXC#cao9r;~a%ygHCD%>)Z%A_{DKh}KC
zU+(OZ&>G~7to)$MV<`abmP=H6_I`oXRO)Y*-mEv0LksK&S+RpIc5{VUckaTA4(qSI
zZ1)21$omC>;m&^^YoO_F{pK+tAMa=$+31Feyp{Nzx#BA!Dhp=1qPAhsd|g1EVHKQW
z`FE)W7}7PYJB45$XYxl6c@i=BkBy`q)pB1LeXG2~11BGOaGnIUz{qN+5Ejl~lSY5G
z-fqS@g{O*Kj*Cnx=-DknN3QV`1K5jE<vZ){o%9h1tE^wGh}^8=fOJds`YAVUbm^AL
zFBVxQM{ONUl)Y%P(hF#_T>xdsPn8gY{*N_NnB(>i*#TcmwId*NHrX~z;bxF`Ns!V~
zM1y=r8mteQW89;Aj*FW35K`v10r@)ay`L5jX|N<fujQ&%<d)0t29`5r!&5~;P9CD{
z|1$gP4f|skMiNAV3Dudanr}rO9cBKI2e87x?LOS!+MiCNQ$k`SkUAusFOW8`d9@qQ
zFGsQ;h2^;(DV40#`J5)WWs6VGiQPGPTB9gvFWLDTgZ01XnB?V%HwT!}qf3yEGhfc<
zdSjy4$@;DOxo|OSBJ%=?q&o*RfukHLwCi^F#XU<}d$8=s#uy0#*LVjnJ!C}g^fH!I
z2AvXx_3K<~v~-$FyGCB8t<L$u!H;23dOg#R??2mc#+E~lkz=WBB(PLSCM>gyHHCxi
zE)r$23-+KV1P)KY)Bw<>11CiIIR9vG6!A<9G!i4nAM2$*UYK;%<6Ht{U?W#Iun<+d
zqMQN<(mtm50Vz@h@PxEj<H41o&R)p<?v-6@f0v^#c<m3~F)}FH{nSdib_HsHSzbp<
zZ+8la9=Ryji1p?mDD&-pO&~?PMJwUa<x@Hmql-Z@eJfVf_+)8hY0A0{271y6qAIQ<
zk`dh#_gIQ|OeKrdCJ7!(8u`^T(G|p4SKMT0BWzg(s@AKwh$-f|yL~AN)F`3})e2GV
z`Vn32DpR{+K%?n5QAYkLi0NWTiZe90Eg4~YG5riwn^rEtLAQqUu!;kmWzOq<ia>$n
zVfBQqEB;o@GY88a8YGD{|Jq}FV}7`D-$aK9jNcWgGv!$>H1wWl<!iK!oHtQA+$29{
zO>gG>dF#CY?@GSc(QV}n;nsagUf4+dCO4ueA*7t~Ta9$tQvQ-99*hPHa^o%-nM~g3
zNnDQ&zq>|G&vz2jcsu4q0&hi&JOa8WEI2A0O<aKBl*9#{_V^xsreeZML#Lu@%H|g}
z7F<re5M;)uBdx08vIH@k|Eh}G{jU3D2t};QC5|sJjU1A;<oM^&XDzJR=bCfndd%J9
z-<(AWAbGU;L-+1aA1~}X?{P$V9=j+_zD(?%*CXv|eEMVk7A4_lFpe-I6Ovs#9|q`(
zv-_XCEgJX936&Qq(zvHHo(Lsz!9Hygb31I!If-9Nio7R@FlAf4t$y+p+V>k<)4Gg1
zUH+%a=OYc$%qu20FKruSyCB9~0=Rrb(+ZvWjb!B`ddZ@Y=`D_$(ObnfpGdDwluE9M
z{lI;V65g_M&2hD|qoTOi@q+}i3|zAj>TH(#XgE}=hbYKlP?9i@_MY`qh$9yBnMi^C
zx$}9fuaYUsN*~Bh;aEjrRaB%|W?+43&G5<nC|r3F$M>G{K`iX4K;K%sa@YB0ot-L3
z%yaG!Ebe~W-xI+HH3^u-d83Z%9CV|&HQA~K@8y{=t6=36{rjv)=l`w~eK(wGlQ01I
z20Jh9Uy(pOQ&DuD9;2Lnw)E=s(>5ZNoe04IMF2}Z4kVbS5^-R=4)k`^l}{p$;dEcK
z2d8`9LUxb41$rybp^`$2b4>51^VbAAG&uoMmgt1)#4ll!-Zd@p*t!Ivs*VBXEnRYE
z3G67vuFo6V#7P<#Dy>)DoOY+^fX2|s0RTVhW*}13tQS4_MuCCxhD|HdNoe4{Xzx=y
zf~BMRz?>VuezQviFtrQ^oEJ2-pEbvtk$*lho;wH-?v)X1XL)D!?t&8cjX*xto+7SR
zCpS0eE{F6Jcg|Un$oM;tWU>U73h(+)Aar=P@`xF-4?fIUb}k(gkVud;Z$~`lwDDpl
z{AtAz^!NN_U?8LAdZFWsyz~*57YM~(sS4VvgbO9e7>Bn_%|9>rbn(-!oYHNk1xJ7b
z=O4_2(#?ea_kMI-+kR96U19=b1kF=Ch-?tTr`sKTUw5q;Un9>02~7?6S}{B-G8x{}
zen#`HOEYs{gHWIfxK}>i1?>N2Q{%hspTz#ZWjFOSsN!|0(+rK*`(BB6QMkB2o0ue%
zcH-l86(lOg?C1y5G)el@HyD)3s!5p41BNiH<J{9p8OoEs7xv}$F3oxFxY?eFb_|Hg
z!`MQ;J3X;f`ocJK-0!bQ;KN10Yc3tB(?A+VaGLhEZ|rUb^z#$Mw>YiwN1|xBn=(ib
z1Vr6s*oeaS$LfNbV~VVHtW`fnC7`NsYdtmuXUY`<f{}K`))R|UDRgNQYO$Ylzo6q2
z4d|h<@yd?@n=g*=^n7ykZv?ICK2^Tx?vw-V8n?ibIb1}40g4KPt5!eBg{|@lDHZ7y
zgMjDaMWtp*R+egiZELQ9C0nIY#~8qe{jS@Wpgmr+Crx}jRC@O83AqP>ubovEg2UDb
zDZJxp_j^LoPMnoX+4P2DOXe}z<&GwK-Q&Y4F$y|Q18lNB_}@DQyVMthRx3$^A{mkK
zqs8Bt>KKu>pV`ESzE*4;tf0vO!w<k_5Kt+PF0~cvaT9DLoEl7=>sJ4Pv0isv3=t(J
zuVm8=!ID`^xn5Ex!f)yr8&R+g%&4!N96s4pe)b3*4Wt%{mwz>AxII@JJx*vqNr?a>
zbXq!x((NE5Z^_8csrv2vOGA%at!R1;4N?jUGfT?|)e_SiL>rps%6NIj#27=`c8`?V
z^>9dmJs8Gnwu9K%I6bk%{x><bC|xTOur&SSZHKdgOjS~vUM6*-f%uGA&5fm<KT<}|
z<2&`yMTHG8C=Zw~5_)<Wq?{j|7SMw}^=?s5_;q@?3d)&y;(YHl`1)sNu(*$Lt14HM
zu%-!PZjtZ%72iu`hS!01x_7S|^%eOjSRrMH|6byi$`$Gs=|g$aA#;JIZ-hE1)!{$|
zxG<p4p(^j;(sz)=E(*2T>+?6nGD0Ro(C2y?iyt8ghFyvfs-H4W(<GY&`IyHHEJD}M
zC=(*H@{)28KjUF5S>OwUpX++oJnvO4U=W7fX`Wk}6zQ4&osKA_{}n+kI@0Vxmdm+N
z?DPq$3N8JMxD{a20#`=^l1tvZ9lzLq)2KhEVUC_XE`P7cc6Z)v_4_HA{xfjewPu`V
zEY<z0ANbKGP}?W)74whKmw9Cs8SirmGe*smAnl<W;>oIk>hxl)_UbYCQq^<5vlM~e
zC&lSLPb&@Ez{uv*O<!Qv#M14iJyYbWi<mt6qT)Utav{u;GY#wYYxAxzY~eALmg;41
zok~beFez*KPUKDGJ0vT}dcR0ce!0t7v~_XEnw*}Cg8f<eNxhS+Ik<hsBE8kf@0Kao
zi+&SVVJP@u;Bqb!J9@XY!sAq@yLs5K0t8AqRlbMTm)?T(3n(f{$7tb>*Uh`W8!cZy
z%;=Cj(#1FNzS^!Tu<Sc()(^Zc9G1*ab!?iq#JreXnv_pmuqZze#x$^aRnvJoWQF!N
z^$7QwGDA(T{-Mw(fL8^r-ZTYsUm16{A8w1+FZc|~-XL2g$rVal8YeFF57fUMkCuP@
zd3v5<3QJW<Cgd(a!_P-&O$}~8rtUrzYFttbL+H@i;nywv8QlaWB4U7k{jBiSRRr08
z=he-nA5K(H?E7>)`xgK)0N2tkw|RT6M=%_FwOx8E&@Uh%s?@wsZjIg$XSL^D%d?Nu
z=2!OF{eZ_zsrveLKBF{?y@pP{ehhxp_@9d(c<15hJmJ+Xi)BTKiiP?t>@5z#*S$}t
z=4Ag+EO`6B@ZWhp!r6rbh<kB^rr<MEFO&Z3hth?9X?@ylF8OKp@C8bM$#>ZjQ~ppt
zQn@Dd$xyYC*vACZjSm=2QQtH^Y!Razdj|igJBR(A3Z41WyEQB6+EJ<YYU7h6v5tNk
zU9w@(JK1+7_po@#$HRMx=5YVi_cI@46Hw3G{ci^lhKGmYdg3TzHu&(s(h*0R4VR=!
z-_}R?AMv6Ygb3r1o<vBF(<@D3owIk*HA$|0i-BF9pG%%;NrHv6d(-7Z?JO=zpi`Yf
zdmL>IrxcI9DPj@}=fec%j|<`8;ThkKNBzVMK;;IsEvKf|^eY+M&O@Hot4+mEvP3Aj
z=dOy=R)mF`oU<F66R%8(1|h|=(yX{yLSinviofKh92yflHy!Xk{$(Kf$ncB2`_Oh-
zU1nKMSe`SBDqWkNEQ2;)S5(8YwPUm{>U}@V<<KYX{q~31tRm0tVVYnS`CH(F4X29$
z6?U2wx58htAjZjGf}(0?2#5FM_(l&Q0|&QXQ^w*Iqg6+g^EF`v^6ywiaU;g4BHuSe
zpa)6T>Drbfbyg$Z1jWLD|Lv9TrAb{HS^1OaiZI4xxw1qN>1M+vtKd<&C0!O0p29cU
z6`HW7YoZD6P^-7{91W5#4-zz7NAaJ0WH|)T0w81&#2Jgm;$3!L%{LBBtr@h9q{yOG
znv4WzlKD|1uN85X$5ge5phTo)zPPEyv0J|-&OZZ%=av|Y=H*uFqlDa_g^cv{bx;r}
zc*h9LgW`GQlRuc8lFHUZznl3J()_acivbPiC88R!zbvO$&G&VLp1I<8zYuJfE`ksq
zCbVWfcb>RlwT7tjDqsA+7JxC`v*M*Xkb06}(Nv|eyC?>`U@)0|@N_SZiW#VJ?05s9
zOn~E@wdB4~pvFoc@jBDw{M?_OP+-#G82OL2BcDx(z_W>!Hsl8X#I{3Mib8!;y5^C(
z2-sK7=f9b3Q4m{4jq+?)8+H!-<G1R4Gj1PnIHHX{6sj6KI>y82xC9^X&aUpwb)*u#
z!$(QKwjJpp*#gNi(WmhontGowAFCjr8+{29T(j!8VUFHUEO&hp-i_m5NqCPSQQ`0r
zMTG(;1>mhzYqNw=22@Hkp){3$uk#<=cvp&XUCwcxs&#k|{t>XaQ$x5yN{AmGiM`Lf
zKJll^X$vVT_qr4~<TRjovSYK~wSQvreXf1gt|73pKx>$VWwfSRP(tvn;&*k?3bV81
z3fA<y*vZLDy%4XQ?!$eqH$E8(5(pEnSwJZcPb{4P!$}Q+y{Y(90%}H2?C4tm<gbXb
zlB|?U+9Y|XTqwz=DxMhZ`>fEc0d+YKo02`TlDh!WLe?e$Z__Q90-d&^Bfwa5Yk|^R
zH@)D--YTZ9K^H<c`ny#~lPQ8(Vp>2I2Y~{cC%{k~AqO4glC8nwZCOdMTJGa!r*1bA
zEM5fF_a8!l-%3Rxen%B*L)q?Gfs@@61DRKZpXl->O`?7#Mw!-PCRufn1tBc2a)=u!
z!|?pbl^qyZl^b+c{;*anS)>n|dH{zU&@?Inu1+k4mQF@-ub&A9W_ch9AW|r*y&_Hw
zh_P`@ck6hq;O@@r*Ws^$fY9hf+I$;LBihi?txoW%s?*!PD(W#660x>soSu=P=wIZz
zLvY5SI>{_)*DB$&OR#%ITDnOR^nOF-)EisCU*;R8k@N7D=Raht5>fh8>J)A28cum`
zVW<X2l2|@EkvDJqDz&b6PGQ~cE1%c2pAtUruKBxbGa&pLMX(sl%quPq@9OHheZz{M
zNEW1$J!|H5WA_Azes&HHz&v*I8ZM)L+edYz1IiGGobOYu$xuBF>g0fZt+hXwc^|)3
zqKb8{IULV^h)o+Dwc2S8D@`g%QI*^lF>yODW>L87i1vdbg)fDT!-gk1?T|)aqyJW%
z%G}}q#w1raayo>^g;`Mklm45!=8E1Alxl(7lkjI8)km?%p>7#_58j=?-a!#|1^4v@
zEffXB&YwR`)!-<Iw*XcK#t&?NAx~(aj`^WXW86JlM*r%p*ZbnbX?b;p>~Sdbj_FNJ
z57<-Sz8$|C+NJF6j|^`0>ha|0WPDCoxMuvsZFV7{2TjsBjN+Y?MIGM6O9sB^HK-w@
znENm$LX#6h>0;J6Ib~JW;Cgyp*r9jk@9gcJ9slgDf5@^m1@(KpO$#<xNv;Olch_h7
z9e!D0%zpjM)<jMQA3rfX{XP2ta2)RkbMnCKLbt$Rz<h$u&xG%kLKsbgRys`7|9u-z
zuI`($G_r6QWoO|TI%ci3q*yet`hk0O1IBIiuPGdkO_QLXQ#wQpE0E`JWvB(D>$ro9
z$nZP*4-3ma@Y=r4@(@}c)w?K=s1r9eizrM+HHq-7xi;Ht&q?SFT&T@?cSR~Lq`Zoa
zW$ax4<w5Y0q-pT5lSW>hux^qhwjWHenn<97$w7`eEEXb6F!yBwwiWqQRxoP;d`osp
zF-jofTjXA>*dMg=+K`c`C0<ZP=9au;6lFn*!eoCNh8vY{T{d31wPg-BdxK*=e1umd
ztRH7wll85_b{4}~6gw1c*7yorRf6VZSD5i_UVeQ&tH?MT16%s>w%*S`rc7P7@Q)-u
zv*e#Mh#IezackY8@&hu;d<@<Jznt^FVfx+u)=&SOIQNTsd;>%Jl%dM~MlgCp>3_!o
z=sP^lNMI1sh78bR;CA$2GXDfjohAUBaparZwn|I(x5lk3L=Meeo80upr6!PD9sK<c
zo}(P#nhdw51qQ!xQ+1rpjjB>Yrb2@2Um&$+(8;_aESc4dCTQnjZd|erL0WQg|3|9i
zmq945R}#mz1ua@1VOx3cxyh6~WEJ^jaIbi<W&GVGj-YbxecbM<drrLn?Vymta^rU~
zghsCmCh(ntX+PMnU+3>0z5tov-)F$nc76QuZXCEFwVn<!gUcpONAMj@GOQ5iw`>)D
z0!C%ES-@Of$bY8Cz>?mNF-NPpQguv5C)+bM;>=%y->+5WhYarLWPf>wxUTG_AN6jw
zhD0I;PZVj%jEt?^k_rblrN#ShZgp)8u5@35_An*x4&Ucd<FGUl^Z_<O;qGxi=Y+Dv
zsQnRmvmQJ!;hP;=xHoRO=Dsg^QAEU`n|J~Q>_69CIDY?m1p?*`a8&gZ<H@*Rj}mds
z0aWSs$NQtR(_uEi8oQgAzgJ_{N^8HNC8GC}<M6NJxE|*85VAekS(2B}#V&@mdFBDI
zWQ2O=V44bE$y<z2l<7A*clzzfKU{<r^~SY6+KB{=l8UDA<{c*v7Ev{zwjNOY-P((m
zqBqwfqiC+IZEPHX6H(j_zPv(!zjc6#gaaCZxLXPk8wcWP^_!eR!4xVm3i%{m@B-r+
z919RAz?1{wFA&Rafe~Y13-K9%a5Klkt({a#rB2gyQtZhY+C9P~H@HJbHpAwZwohR5
zoU-2E63zW_=eA}uyM?BiPE3<zUE;M(0@c0Joq7j)AVV~)moL*7VxMDB_E37E6c@u-
z=Fbpl^vXG7W6mA^-i+`gB2eK)IDo07nmHEW=5US*7TKH&pg@6<uMdE}0rxig4-HNN
zMz2k4b+{F+H?Y7VeB}eDH0%IE_kZHcuJ9=Z9aef-sVclQztqr(nE?wCu?nV7`NsS9
z|1Kwq_6pkyksH_?w(E!xN;PVlxFbwIZ|)#{|H;?n(=>VbaXv!C<I~ny4~oFco|ziV
zj1P&{Pr!2F?9A?B4fC46s&gTgGI)awMos~R1e5{cX6p?LBc0|ZCN<Z;6p;XmXAL}9
z#z=9V47!)GymB{t%`t%gR8W8%-V@juLHDr%qq#D#gpjEh<z&;D<@000^`O7#s~3KF
zH7L)*69YOjvXF0&y^%8#yS3C*n9WpoQMk_3;Kj-xMPZ4I!?P3;KmN7KdTjH4-1S3(
z*1YGx5}F-ASUMcV3X?$bWli~$CS6>)546mnxh@9M*#BPrB0dmwZ=bDQkj<^`jRgi#
zaU0^$ma5WcWSSm~JW9Dd@P*zHp3kQ%;&yIZ7xM~si(V@ATy;RjRXK7#c-aN*Hq~yN
zO1ap+L6S%^^Xamfb3A?$(i~&rUPtq#x2Yb5lf>{xTb9_f==0O4OV&z(ymyQacUO+>
zH`7(=I(6_ROp0?R>CY88N0*OD$t7@81xXRfRVR_qijG(@4_!W{=GSdGxkYNoR=Pf$
zaQ)>JKi5l|LIZ=SaS_OGdbQDIW*cxf2q`i8eBP=LZfrF!=c#&oZBI?+NCkfOrT16=
zV1#$9sc-!s1i|NVu-tZ==UfAJX^y6jov$B0fEH2@7<Kt1vn=tdDtEu{=h4}}iMe?h
zy>G!q^eaW*?xs}(O_|1=Tq0y`(iO}j<m!mV?HwnkE?$eTF&sDi?O6~ESXv6Jj@S)W
z{ELl^m`l6!Vf-DjBI}b-6Vf{RtyhuVAW595GO~DlxCg#NOATG=U%o8rxfm4dRwRsX
z51QA47lILrlwS1a*Qxb~OIHIK0x5uZXH6|TapKP!$RKooh|4V{EbWCfjgSwk+1K)2
z$R{u#A=KIUDZL2XLTsMD+1cCSP=9c**{kY3BR<tJIYGx9hOt!W7wf)hmeTpTM%Fds
z^l5qNF-5fBxK?(CsQ4tx#%XT%@T2j!s%Y!PsEw#iSB7i=j|L#JUjzsW3iYp=D+?@j
zdv=vHG?<bx0N@08ae-DD*ec!wB(7W`(8NbuyBOHFf-40uw!lC{_{Km&0_<0TYhOI%
zsZI*mcC}fE)OsIDKc<Uwv<wU#K#QvGXa{GXFm9UCevj#4ot(L6Y%@USYs-jJmzl}a
zr863F@?FP}k00K^>>Dw1KXvwg2Ae-455DaPhb=@y((=~yvRrAJ#{aB_7PRPmg7Bat
z<oKLE1?q5k=)M*E`={v(Rn}A;ZS7Uy+yxIKz-0r<<|j#-q+v5~Bf#=~Exv=*+9<ji
zO*G+aAH@E<HYl)x!~$*!2pl)z3`k)gl7@x*cV1`y&r6b-M+|RYan1P477B(}{_dfo
zo)zpo?lin>4|qP)@syy}(wx}hOZIJuIERGLeGp?%Pg_PM#Yz##9a`%++sy0Q54)P}
zCy(4t?k1o6-Tc-`$=`Kl0B&Hw1ZEI?7>9?4mo9N&mvw&vjI%&S)g6kNDde3poXS>P
zQzH&s(Xx~hN6mr2pEv8k9vo(AIXM<UlMQE}fcoPEpd^F#&|8mVDnKR)5zkY+DXZt?
zmxmp3irjF~)Y_{KjU)6)E*{ty6u1V&{AL%9eH^2>w^H(xkC#f(G>>4g7~JB-W)P8q
zu~)2Ze?0UhGjc#FZon)XZF%ZnFc{p;kJ!0eU2Tz@`1har77g??RJEW=n+1OLz^G0U
z1d*ng1*J^DgBrk105-G9X%mB(&2VD~Jh-v3<>bp>+|fS5%ECDoo}OveGnK%T6}}Qd
ztPJNS0a_?v&?p-jtw@xRzAKfg8HAcwJz#>845N8JE=u(R70E1A=3B<^6eaR(0k+A?
zRQa!*P|fw{M6_yOr<~QTu5WF}>=u^|Py}M8IId_OehUo{F$BH$y0qv0{S=`FvUbKl
z*HD`=*hEM_gN}dz=Fj0ZS&JOs-`vRH)Dt_s7R1EFgk#frmpy_TR{SzHH_hY<r-+SO
zBLFWM3{HS>G*iU?Wo&;BV7S3u*5F>=Am#wB@Iu@wGR>7LL$A4<H)U89A2Xed$)G4L
z5=9keAzj%9S9haSD|t%>Y9&dLKND5Vw-~hb+avQySP>FX+-B^MD3m9E-*Ugsl5x0I
z%&9sYL6eA~LMLCE8BZ(Y{gN3~xergU57M~4l}19KMY!)xYI+;N)Ac{&_3tUGYL{an
zx>eA7XroUYbO6j2AW`TPxrd3I{0GJAqP#-{y``2Fi57-$a`7%cpT8?V&|Xya?EaWq
za*dM-duFG^19sT~4!;jcX-!-Nks81KE@Fy&v4n0!rkeg(&t@T>T|eMDs3ERS#tS#=
zA<O2^qCY|D!Kwz4!}ZzrT$?xVv;Hl<T(Bc73YAVXfya1v)i1JjF=Mp7H(dryK&1Wd
z*~D>C=8;}D&m*7LKiRRwSv}*c{zZh?H_WFDb2;tBh?<0)4MVqRo)YCl6L!0aG04ES
zQ_2J?G#!t(9oy@@QLR_&QU7VC3JXz(=@o-;Xy$$rFxMXO(wnBj#4Q$t-Tp<}$jup6
z=$kuw#-xRUXb37t*LGqUQ<N3boLy|)KZEWf95%Yf`{9NXj|T%m)Y=(8Sg69K{^pB;
z9QO?<tk%?Yw;Z+0D=Wvs&qKl0^73-Hf3@HJzL7Hk>43F4uzi-}9X<ZXl!`pRqc-$k
zZfc4-j#y4cz_?=PcK+OcpK$|K1WnMhPj3)Ki6<sX)YYe&kOmd9O^ZZnvS{PS@D<I|
zzUUddc%_9VLy{w%V3$>xfFPU#(serp#gj$namSrWnccm;X3U(a`{FNpG!!jUeE&R~
zEv<Ju_pF+0Uuczmg*_$G+R`y>5@Tu;EhL&@(`);2;gbPsXxt5d`|)QZM!!F$4yD%%
z%ZN-NiW+e+V(z)8*hfJKFy$N+=#M?Cu=kC6&;GGALP6oBD7b5)C^&-vU^4DP;Eu-X
zOc!a}Em>~jql)0s%#l9(Zr_+;fK1`i@MH)5=DXf&BmRokQcLiir2Kiss?6f_cMmI-
zf%r=lL_3lm`V}*2zjlgj&pZ&2J2|)nhNn(Bjjo5ZfD7fa`LiH?ka*ebc@^~TKV3gV
z`@5RLKW&mN$vM`2iWL=q2KM>{qnZIeeedIjm-+VNlv9h%GnrSEs={gw+`neVKzQYM
z)|Kp9+Tz0BTN11M9qfyI<bCF~ONoK-qm=AFrV$)b__*0|M=T74r5UBSAeE+(_t1Y9
z=C$B)x~k-NTOxF@@VsbnQxun{pH~!5DqWu^UBBXB$8Ph5@{t8~!fH=cV(Up4;h14t
z*PUFX_;-cEW<%!Oeg07KcsM2(erI5~C+B`H2iTO>M?-;6!B8Qj_ux(ErvvACgIRK;
zZp50DQRR}PF9w-geItYkyPMJ<b8IfAHbi8-k1)^wJ_zZz8%j=o-u2hM9<gulp#53-
z@GR5qMW|{MHOjYAY1Y(jIL8zqOJOkQaWrcalha;c$0Yo4_2J=^?J)uDpT0#ED>U*4
zlo)6CE1n5e<nvJP&hQ?)E|Yj(+tUux8VHD8MtHOB)<X+uN2C(&_U`3dPcvZpjSq9i
zpLp#Q&I+^)sgpkgDGA#nb6Z=R?9^`@MSPU!P&X=_d&W&j^Rv>*u2jb{b+CdtK+296
z6|2hBGhfwVztK@(z4PKqoOXbSIA5o6J5Ty%<?&qL5z)2aMlnG$VVC?5*Dy=p)c#8v
zq=^kD_Eu|Rz$LwOXaox=2Ou+70UY~3-5r2A0L7ObpG*n_twrzpenq%D=Pskz<Fr$$
zy8=;P>BXr~<lpB~h-FgUmJRFHPPleB)nyG?x#No5$#h0c1(y2^qM+!RBFFOjb>inL
zTr4z8Tk8cPaZw%)D3eo~oaNI1b0cQISjs`KeX`%;{DbFr1c@-MPYm?0lCep}>%C6u
zd_ue0{N-jQW=_z;KbQIjeLCUh_0+yrzz$$UcM0(!U+4%{t{hc0C`ea(6AiN%V+U3O
zU@FS$jk9>hmqmNfuQ+PEeEE2c^9bik0-f6n!6Rfp-f*{z<Ab&5*#gZ`GHA`!x<^MS
zRt-9&J63sha}rt^Ib)iXM>!PR>sREM%=`C5d%KZF-iH>l36f3vTPGisZLTfirhkX@
zEGhC_KSd}}_$<k(v_Sk8agX1tP=STi>=oy@lS`xv{cr6HZzP$gKPU_7e3DYeX!#Zo
zWos<!-*8+hU?Y&!3n<Q9T|CiZOkw&(N!MJNsAK_PmpDBV0+y#9f0sTfDk#_urEytY
zwRGGH7<wPpVMq8vRDN#$IGL6Szh36e*;rr`l=IiZOgLZVgXz5Hq<Ag-562aD;H;vd
zo-l{hB<`6-Re+pk6Vo)OBezMj_Sa5VR~J{xahRV@i}`J26J0`lV&C@!NrEL5K|jbf
zm+Au(MxjZ}N1wFsC7_mRM4!Wk&{w*$Ij49zb~Mp)yE3(W$)edZ{^K&E{Ess#Ld$5-
zG}GA`KC$d}B;#HwDOhKB%k<6j3nYtgeX9E4tK!uj;q}8h+e6Tdk^g<s@&jvlben*{
zb*%qQi{RM~F6;l$bd^z6E^QkL5fA~TTR^0xySuwfLAtv;q@<fo2nfigq`OO`TUxqH
zy1&`yUEdGa@`vkq9Ojw1=gR)zX4D#86Y%YOnn>Z<g+)(l*(tZl{QAV1YHsHBWiFiv
zXmRC0%_Sod3AvuZi*N?{N46cpNcdz~c!~HI9uRw7pZ5?MRvxyI&GGf`6Ef=47WID+
zuJy7_u1}tXJ$8uLIj&aL+xtvPP8#7sJCu3}9a=n9^&kps<Hco<(_1AyJw7GB&0R)%
zPe_`LD;V#|e9y5!&e_wijg5`xMMAL)1LLg^_nZDtByJb3e}CFWv$ilbCzscmf%|eR
z<xP(okKiG$RvF!f6B2Y2{^0@P`d*JMQvusld?3=q_I+xmWHFVpMzW1xpftN|TU=4n
zX#8NIOktk9yrHqx*6Z;<G|8yZqXmtJJhxZ(d~T$-&)UZ9O3hTs5=U3TBEum*i;`Fy
zO18w!-`B$JRZSOW?#Pysw0M=q^9(%6kbzwJztAcWCOQA})}8OrXY;S(<F$LvT5&L+
z19xe--iAA!+-tj{;7i;OZYA>6AB|~K49#DSu}7;8v;1stj|D~T`b<~8#22aE;fO!i
z9qLt>Ola`lsQ-4vMv~op*=zjOg<6K6;9a~vb$ljy>Zn>-5L3|fvWVXC@tDB9E$?l1
z?;CvKx`v^Fl?~?`(crixy0abW4-c!D`D}yxHE;z^p%D>|irL(XPaTRqj7Q<l?&IU^
zI0kBCt~d&6V;s{KlNw{{>}8RLe1-yAdXwe3`&Ng~eo#)4hUgwX!UdJ*m(AIq&x{!O
zdhA6rQ<7v&bA$wthu5YCkpJ2V3J4Eaw!jmC6Nw|lNV{ztulK@O_X`^T5J|2ZhlnCh
zppt|sj-rx;g*f*ovJl7y;|4duBm|3Ur6P^B-&tY%Gcc%hyk5{x)@irk)vgr9FtIY%
zbu8%rOIo3P-^a<+%OLWfQ{&LI_3X`@bp`0&^}J25u#+hgmZ@7uKcM2j=aWuI-s$q*
znAlb+kzk#p_-TkhA9?ZHxBFV`&hps*mH&btF;jJE)j-*4D0~1_1mc4NG2!mk{1gRV
z|JKaK=*Y;w89n>c!{bLRg{l@)TL<@`a_b+m1RAutmKr}4W^`>6W?aE?sZ6s%RmC-a
zTgVbf(6X1SB~wJIN|s<-Z6_-yQCQU~^R<WPfqrqyI&%&DF{^$nTL!CjZK<%nI={!F
z5izk@bzuYpG0b;}<AF4~SntsCEF>^Z5LF}-Y+mH`I#9hf6(3iH^f1=?5{T5WQ@g6v
zkWbZDA<0xx4!TiAA%JT~?;yOY+ai%fx{5@mZaO5awktH;@D1G_JW^0V2cd{W%~T)#
zDKiQtY)%I<0?=*ud($c30Q05ZZB#$$>P<dng8@eQ@RR1wvCS%9`vtyYQC6>XP_lRm
zG_Ra*+g#|02bO;gI&PNR%B-$%EslK&&DDsGw)}A4>;5V%&!<IVZ-sAq9uz~<^pl78
z<oOjik2L1*a=NXqAc}s}^}UQw)}G*UV$#o9AcqrQryVgM{cL5Gkh^M>sW@AR@lQmm
z7&m-4hoaIcUf(!DRZz4xK|}+UW|}`TK}2nTqS;J-eu~tvDWH5-fmya}l$-N1IyvSW
zkvG@i=s(YQ21ismQEg_VIQErg%U;gY`2{mflrK^^f=iSxDc~vc4kS~ue&J#O2%4ce
zj)93P>WvOqw9MKb+P=2lz0Td;o^`U0t(SuAMv6`4FdR(D@8272)7HdHD%pbr%k{s~
zTmpx~SC%0VIjN3rXQ?kb5$4wwPxrWkr$bGTKDj*={x`hOKE8RHe7Yp7tC5*lC+peV
zrRG0pTth1wFx~pG@tH;zFwJY{F5?rPA=Lh4c_tD`rG-r^8+DDQ&ptKOXT=99>fYPs
z4d~|^OtL3La0@-nlC3`3KP};=wAkm^7zh1YL>4z&E{MzKv~ioph9*c&s_rxyGn8u8
z9=Z=5E^oywyAAhpy<we#)Rbj=R@2)V-fvF6fG1bgTUx-Bzzd?GeBmZ0_EsAc2}Pua
zBAfzjvV<k=Qaj=!MW5WInvmF4^q02QM&$9*02*{u>lcD(Y`NzM{EEru+^~(KK^DfA
z;MMc-*$$Pu*_da4KdOK!XG-({mWxMVaG`%?v$DIwabsZH!A`^<4o)N~P69c>rl8;s
z|IrG|pzPZ|9Xx!(LC2njWL+B4oO~O9Jp-J_qN3Y{`%ibNw0gm|y7CW+11C|l{=?ND
ze6z|Oxc*TmRrth>yC%Dw^PVNP8+-1dCyaBACyjn6)1B0%j3l3_>#H=qc&Cji(WwkU
z`x32>jU+BoUOX)!E>c>S*_)BKz+GP9irB+J=#YymsIQltPgLjK)3>Mhqhfu3c4x|}
z$9iX{<j%{N%mv%UKzlZ<oM0<N67qA4H-GfR`$wLo27Bw*!eWbzc&PfM<-tDhx1gBk
z*eY{r!$;L|wtlLW0w!ypL&E%#{Vhi87+pYHNm@=0NG2__uGe7<S%7%no-mV$tN<_1
zQl~T__D1sulDAp(C!IF~t``XZLMgP$4YvD*9<iD)`6Ih`=O;42LHUyp{?o`AwR@mm
zb}^EO`Hza^_ZUYTS=IR#88h0`xN`4C3|hMW?BI)ubt49MHghcB#XvP_wzSfS9tfP*
zg{UFiQRD#(fzx!xwd`*PUWpr(v1NtOgoo!L$-KsTM<A0FCr%)f5GO$(k}z`+^{ZBJ
zo%oqbQnWP^frvgONG~d?BcFOK;d*gl+uD99jE$JPjOu!kTb{d1*i=ZQXCP&L%`$bx
z!EUR;t-Yib?PojenlWCu$D2|34GOA8@INSssNrBMh-h%AYZUWH(Cz3B3yI7U9yi|V
z?qgbVE73u*_{x$JziTSS$+W~mlRk+TG(M1PHeW42P&P_|sN(9DmX_S5^{Uff!gzd5
zdX`Re$KAh<n5q~~7nF{Sj5)iyWFt@0e>FW?@Q*<3bN;s9JmQ10(SF=%z`HEk+F2Jb
zuMn(N3Oslia8BH?LUpg0!(?lJBa>x<#x4szG`M8Z%-)EPEUugOG@H~|a56#E?r}3I
zg1Q+CC+wa-e`%V?NG6!XnYOtwPTzI-YT=jAHK|HyXkcrIs6c6CZ9kUf(R_i+rO|*w
zMH^Kq5~CAkSH9_wzf=gyV{txgC-lS46W1G6v*FtA01s1;r^;F54ao#gjrE_lu~wcr
zl9-76c6=*7mvE;pF;DzgGfh7NWF?F&-*pbGw*xq2y#6z|?#m(uf(LC;;Ba-mmrReM
z^<VxgNlcYCN87(u%JfJDte(^PX@9*fyRcw$N6$@rp>8H(hh5lA3YHrNiP6FR|7!tA
zy6mb6wlGu-6_#{nA0UgodEuXG-|q9WHmyb}V^~gwN}dOen_7^mYZT}UcHOVN1YvnH
z=I9G26Vd*iTQB~iy)<$U`=cl-O!d0481AprpPgf?PKp(Gm80@1N*fC*CBwA8i__^B
zxq->3LjDivuSg&0e1j>s?8kaGs267#7+=8W287uQR+CkD=UX}Y`Nh*~Rj`7h6`ghO
zZ!{*j(hNC8ae~p%plM_I$8H2~M{l2Bukb))i>xrV7WxBqeLrs)%D^?hDS-*SHp8b{
z3hl!eoP2r1fhO+8t{meVXk!Zkzdjx3dt?xYQ>YIDMp{lBPjFco-<&>wpBGGDpyCwW
zmnkf{tsIwOVG*z2E|K8Kdi#cw^4GsxsdQD11{d1|Yb~bNu?&kvSQ%;je-<xUm$u!U
zOzeePv)*Rr{C;l;!pB{9S&Ni%mTR5~N^h{8QBmR%@zgJs!<BWuY6%=mQ9ZTS6UUND
zOpUp;o7a>2@gV>$oz^(2sIfaO9QnDyEI=JWE$_tcd6S?DrUTz$$U;VZedBYuZ`Hm1
ziO6o4=Uioz9u`fC49S~`N+YbiUKfHfVEsBb>&zKTB=RVCHh)q2)*y57Y8n7G38clw
zjc#*=P}{ox?&ZEYcUk|leb}*$o>p>?j3Uyp>i`5-vC~#!nBUYhDH8Fe)Nty8F~R#A
zRJ^Lw)iT{+1WePdyYiuMaJ`jVcv>l_ALw-OC%XI6#iiipay#_i$LZ+)3qK66`6vnp
zqP)^mvpquE%A-g8VB(?%hd{u^+In!?x<WT!7TiO5$9HYKXx@+soB*b%b(s5rF`VMZ
zG{xpUYqD_*HKL6zD1vZvbL-wC`!=`!U0_GTE1X?bus+IO=!vE*5W*ncXXkLbcdbBA
z1y=vShv%7a2!hzs!4cPMgffX)*R8EBShEFCQsp>?l|_KD(ZqcHPx$8*LtW7CSyY`j
ztwwH-%&zbmSb62Ct8**nX2qo}yn7%0vFwVnwn-Nxl)T{}uD%<=c|X8Im&NO0ukPP7
z7`fb*1V{b?UNAPXpLExJbmZjABWS=qUGHynTz?)ax=QW-CqtV-vGh`-OsY|T*$w=4
zL50OXtSaM6L@}wv=PDT|3am2vc6N3YqMi_2n0R&T%-8ZqMN=erb$t%zunO}{^H1JH
zNfHo|a3I0GNmO!_QtA$F_U68o7JAj}YT%%etNh8yDFKvREl<gLmKZx;J2dbS_Rr}j
z$#a^1uVC|ZP^L3+CV);8H`yU#X_u0kMCEJRI_&5Dm*)+D?Ke@qoagn|kR2P}21GbY
zys%$wSw>Cvs#oN=QEY;OcBpUwF<6Vq{t~>3i7e^0YiBKqIm<_!JZK7Rt<#V#+7;*@
zl4tsl%U`<v`5QZ&T(Yf-f8K}+w+09^4j);K=%cf{UKA|vmUt!3DvVgSY!~%cQTrd8
zw;sJ~QUw3=UPcK{wO`AFdzZr&gaT-E{_J_e0d4@Gj)3q?7}$XAb_)!z-NToQMdM2!
zpLa2aWN_U+qk8Q~T{rIhtH-3eAz#=?1@q6`<nP&><<X}b413jaO_EXogMzPZ>)+<!
z!BTUovc>-F54XEpi$lMJ%>i?n-W3rIc8c+R{RV0l)&{(y1@s9LvyW^Oe{!c;SBf*f
zKsBvtT{P4+#3t3PXdSE??}`ui@pqlr5e<H9ZWmSl8+UEh%uC}ac}r>Eu35oL^FlgE
z#T{gh=n4d7pc-J#)S?AxmuQgBM4pu%R@fq8iIi?iG$2b@CaDG{@4&O26&24!GH~9I
z<(6HQ*jx;dktfTZf+B{5!A;Im3rMS76Cb>bUG@D_z3fM+xS6d&^ut}3FLRAZAgG@-
z7TFSlEyc>xsCLAyChe{lU><w0mi#ftm?y<@YNx!PE{ESU!Jyd<7BISW`stV}&!lq~
zWwLU8AKNK0DTyGmfKF}@k2dumqR-pR5$aM+q6C^eD?;7F0t?h8Xs(5%3UPO!a&gvY
z`6Ed^#^W}_(cX&kfx(ZXf$dER<GGr#^_Pva?|DdsAG+3EXO%zTQ@tgpcyZy|YQ~p}
z8FJg^G3lE>rrdfIpi%)=grh6ut-f@g%7I1gWuVCvFQzF~rQrt={j$K5-N*S#@)sZ`
z8{B}9LCgq7tO!LlI)b41>G8mJS0To%Slit^=1=#9pjHR8*WD_Rz`0-4k57{J7|$)E
z1PG$#^h;QG1dpy$CF@)WsB%QxaKbu203pzI$Y~8Yg%0W$a0*OB-2%2S6bTH6iVT&H
zoi3LLI+uqF{cn``D;fPf+`@7$+qQqbD-0iM6=C6%%>AK47o9jVWL(enx$;lEI2yD(
zuY?Y&nX@=(0TN&E#%oYBpm}>l9J>q2wJ48NmDvpAK~%hiND1O9lGtT^h%1=*CgL)s
zBvG|{5flj)*m@J}$+ETLOgR+E+3!9wr#$Ap47@bA*yW8}TJp+yy5%$X^UDTb@ITPy
z0y~t?kHLpuw7#nT6da#Vg?%zcdS3Phu7g=dQAr6@fwePci&0ZUI!Vyrg2=}XTu-y`
zUOD=DrHj)=6_$+{gLWyvkz~UvP>xsHH?@qadP9Y3AdkNOA>_Zs&ECm|s<2B?LOvu8
zgU#Xn0)7g2;ziI)ZA?V^pieBC)96Z<8hA0&Rc+Qwyff!$w_iB-=r1|&c`iBj3ZGf^
zOPUIXewh)j$SIm)e?2|z#*RqB{v(~p>Z<(Eny{1wm!o`%UHqqZ5c|y)*76NHJV~tG
z(ZlgufC`UpNAw!ET+Hafm<cm*m@n}Jk$<ZGeK0pC!F}$)1Lv1v78`Z>EzDXiYJVO_
z;w@>cTAAIyc8)iRj6;Pxs7p-XJ=tUU_=rcwCio^-Ssy)m(lra9u&^-fAW#Hh>-h}s
zrMHLNwh?hTZVO}gV#9g8$r{=6>0Ybg>7Wzl+?rG!m}QwvqD~VS6vYPu)vwroBolH9
zsu{U{{Bb-xecILJtTlZJ-$X<HHa7}B$Smn#8o(E2umQd{sIa6@6Z{s(ML|M~zT`pI
z_G3w2$#h0x{!Dqw*c3c8Ls;u5`b|nN;kU-al9yzUSAYuWwOVQ7JXJ03d7tCch2eiK
z7DFb~X7msF^X9_j@(?9LRtS9d9rJHwWQazeQMH}LEC6hPs24sXt<*>j5l#j3r(PMq
zy9-_vy^LTRe{H!xxS!ltd{c!U*M$lJ2@_??mqd#LPW&B$TM}K~*f^z8)gcL*&HN-e
zlq9QXGF5K}>gHzxEh^v2a#9UMGVo!V@+FwqW>WsrgdqXnH>Xkb<1nrEj+&yE@I_kJ
z{_dp(D52=|p?<8Wjo@+&(ew6OsvL5_Rk!YUH5ZH4*zV?7=;QI~7Rp^lE)hfr0tq@(
zm)a1hy7DwD@I2&Ut0aR_S+pcYWxrn*OM@|&?j3u9y7h-VsDye!02F(yhAz*fe|4|t
z$f|#RC9vWG3%nS)7j3l}^puu}qIw(L4hdlmz5sZK36OhxCBVF+AT}2y$o2Gi_3>K~
zWdkGP0iQ@h4+K|a!ZpjO(dNs4i#6F2Dvs6WWD)K>YsM|aD_772-C)E<l~+)J8ADEL
zD|~HXIfH#YhjzVNsB4#3xk=9I^g2maqzYve;Z-cTQL4jsjFhrfERAw~mE-2N2lip&
z964cyv^yE9lcY3#jtY=ZHS`<`!4npfv&7cX>+@~pZzEZ8t>09Yp)|9FFD*qbo&H_u
z;(%pfVMT~*>+72U#aU=55~z4ehd@39qW<Q_)41}FdAa_AUW?Dg36mjz9pu}nyd0z4
zYurJ}4^Li?h-wIcS^Qntgm!#jXS$-yb?nR9cRgeUPi`<9(Z7DbBPC=ElnaRPfwnl2
zlrLUuLhwp#KfkOR@Df*ft|DptnP>O#YoR4}ltjV+70?N|@G8(HQ@oA<xeeVwt_O~W
z#RkV<X)4hI)tfHwI^<TL%`xWos|h2o1q2L<i}nv-@F?ZFA!b*|*Jpyj2MjPOPg>2?
zWPWK+%;kZ8nAkI$EgLCBh0~1c>0GtT=KUEQF_-MRS0_*1t!Llbd)5Br3#j|ko4Rs?
znVt<zWsTZ+CSC{-%>L{EG-V@jtZ7vkn!31vVs4x%FW+4~VN67Zs*nYv^+rm{`_4fr
z&(qT-jMlw&MFHN8Nx=Em>T)Q+VNl(AsjU~ue=T|V#Qna4g{PcNiSP=#RO$Ak!rtEJ
zp%%qAdSH@!#%fEJQeAIWvp$HNLKc^5&WzhU>NN#?6ZuSORTp#=rwbZKJ~dR^HSe~*
zvIBieF#@Mdgg33WjaSFXQJ`YBpG%tm?X;!rChB|!6*#g(VKlS@_t1F06xUsuf;=fc
zm=FPT&SpO10P>O*a~{*i$5}u{(6m+UX;an!S%+mk>z~QrS8aY@w_{?M@$FdNKXD}e
z#&PO}%x?ct)a^eEjwz(G_VJ}F5frvU(V)$zHN`GaK0~7`JH?>m^7)cvRcXdrIzxRx
zmr>3+6ggGb)Mgbl#ZkN3VN*k7CPDeHm`U1Z3Lhm1F<iO|LC1}9K(V`Du8wlR4LDb*
z=Hg7H4*$ehRB~OuoBP7RN7VK)&qk_>`=>6%f!&o{HpSZvb=l=v$6-xnby2c828Q$f
zf$P7}3#@0b+Lu^?OMK9L&~NA8Fx5f50P)}->FME4WitE=7-V@x1z>p5*3o&38?^)s
zo4D-|gk~>~+cD;_t8<n=I22O{09t+Zsum(eq49~fu2Q}V=$46JfeP!R?jLo8U*;E1
z##!?GU1}qtnqyN=w$|cs#jZ~zwZ`%@^BHahU!fY~Q>;x@UcUM5ZZ=e0YGXBCRctuy
zz2Tft66*{r`H3c$#(nD;j<PDRtn#U;t9`N5eWSr9!)MTF2UCL;e5g;!lye68?-xO6
zA^-@6U{x{7z6dHvc{?3R9vL3(*4??l{ZSl~@kLMwl@2B&(_*$Af9Kl_y{lEU!{z%5
zcXS97oOFV;mR^9ppm%_CJ|N+fU9CVx5Wz?mUq9&M0kqArS$k{5fB<FAXm!<VBR8{*
zxpaa;^X;_EG|&x{IZ#Y%TzPF<akAf#<)({3+GXq4l?&%<AaZ&1vf7?oK4<svDP3HR
z09W%h(fpwsAE;R3CXTsdh9YAaXaUI{YPx6S4Gy$`eOh)zJJdRPp00_rkq)&<Q)C*t
zvj=4>FHD&|m=z7#x3#jBC`-}m4kEhqWUqzOjsI|S_GfW)joS9&yD2>SaI0f^TibaA
z6dnq1gU#E{;HHIPcg&<puLW#s<BN4<5VmkC`?eD=EvGMa*BRG)`Q7)n=Hcpf(tgph
z<+^1~U^)UBH3Fa)A(UZot9!^~5ESPCi?_HIg}l<J!^IxXNTy(KV>PHW&@WVGSeki2
z>@chTTeaZ8TiQU(x%i5R<gHM*?;$b%k=c_&TDdZtVt?PYTcQS?MzS{DsH|~op#&x(
z@hfD|ZdEvg^+VGs$!XAJZM`Q|@NFV~L0o#iy7o8KY$>(K`r6lRYBOo0T=GrUv04gy
z7n#(xjQF&J)>dbIEVY{gRh6;o&C7qd67prprxJ5#7kVVo-{faU<X+C^QZHIqG)+hY
zXKzrYM6g$r+mx=i0$X5Ec~r^nqGbbDDYbM73U<LgczwPs{u9=dsyN<!cV)Tn`Mikh
zE0ygL+u!mRaJW&@)?<TFQc~gX*uE-$sMr?*a+y_!w3WNol?6AfXVeRC3}!*}DtPnV
z9k=$cJf1wQu1}gr^sUvqlC7^&O_5r_C(ukxl79N$9_-84eL%2hJQ~A%C_<*#T)f;)
zvbIY+;1Z+i>02lCU!gOQbe7J9>4i_YM!TF7a+Tk+so_0Mk}Szt+#ip`S-Eym=?JGB
zNavyH)RD`j=)S^1OQ52Z178!d9u@fQ^gI=njBXhZMfiSHBFe>@>4mZBm-Q?v*^;LF
zFN#mNW3Juuxj$$kgC=NZG|LWW>rtV)1-koMR{fEx3!E|ZNhOvbeMPMMoB9M5rG31N
zPe|dz`!2q=n8``cZL({^Bi(6Ch{hUZl=SaZ0d1c-<^BYMR*43z01>94UA}6QQk(2U
zHKeA-K+Pz0T<t<y_B!KgalR)hkB!EPk{H-V`{;98v}1Et?forL>N)S+_(GqsR(QZ{
z=z?jtW$oHeJ;y(c+9uBb+6|bLhS-{GR345myg&nZG|HNh+0kvuP|Rb}pRUtU0VPbU
z3*PVZ8w}ha&RV8w2GvC;UR*B!OBmIFbaa<NZG>)8JXNt~gS9Qohek&RnTZVf0?~XA
z{G7@UQ>}ZmrrgukC=*|&n@^E_`urYZ@A6>sn3oIf8ePVf#^cevr8}awmLKH`%B^da
zMQ1{AW{k1VFYcg)%CvyH)=D!V22`2ov~by0dh_F(gArUW{->>(eh;)opgMUi@w`ct
zcy4mEM?a)eX%i_80$Hz}HCzYf7DestPr0c>3Zx8sB@f{BeFm(nj=O6T<%Z3_&(GP@
zhsyZQkgVQ$xx3V}PEE=xna7oD3Y9(kz-Y+jS3y)F(Y6^HHX!L@AgqC-m`S=hAKi=o
z02(ZSlu=+Rv0arhAtIKA>yj-G&0d9;iQ>gy7wr?yP{(GUKZlAYjhYrEDS_DIG#G8V
z^LoPAAsK2AM@3%_+nQOeg_4qEuep<3*?YON1~T!PkQ;*1SrfFJdB3+!F>;d*yau3M
zcFRVAfgv{6GA;(tE9dx~F=7oZ0uWZ8hA0^8+CZ$C&0mvPnf@a2Ohw(5<2yx`qBGb6
zg4cf$_(?HHNJ!kRX{f2|#SMmqgoH+c)wKbHoWT0=9<G)tUq>j@t?;+lFurO|4w#j&
z9+R`~5Cc!&ECJiEFI|3?v<H8iy%<Z`Z`D(W;!tmY&TL}s)u(FAZEtP$U6^`%<Fu0$
z>1bB|nD%FlPdzf~7b|;XuuIJm`Ct3a^~=9M`LGxz^U4==(IGakf<XM}@L}$xG55Xc
z8OuaEqU<{bYQJccjej$kaC`i`6NA$O63hIqq0&CJ>Oaf(fr#1Aa}x&y6I<Haa`--z
zKSI0UKb^CwQ*k{8ZC(TbWuQ)9<jyUXz?LY*B`E3+nlyX2I5R{UoJG9E^$Re|A$kZ6
z^4qP=vb=g5wd>mrEM)ojw0G@GcIFNaaR7xCtbq?uWsFynXLY@K0(%Mz(ZcD5U}w2o
zcm-2?XzUj<`nVb87;#>{Epp>MEjE(VE^R`*9B{RHPA+ekqrm}W5~173khd=E=@^f!
z^b84@&|1z$_*(A&4Z>7?^Gz4lbr2f?b&X9R1#AJ;cK?;110)XguwqNxbXg17AyYos
z@_T#WDG@IYj4W%ylXBteh^H`0>uGm4;wWoGC!3`B-%m?%ML&`KPnqfB>MBqJFU-W#
zI}u&4lElCB_otZkAUOg;voLF|%9D`yF$r<M?|UylUipz{_#47-L!Yn{#Uo|wY;?xy
z2mQQ{v#!dt%BvoZ>W(fo4iB65?5>s`Ppw)t-0SP_M)nsH535>IO!Wq2zgtA+iL1Wu
z&4dg3<!Hvt6L!=l^c)W5nK}hZfQdgeLtyd&lKwGx^6cTU&9T^+L$COh%c1xf0WLC>
zyixu{&G6!;VfE<_yp_k*yS3ci{{7~AFJtP&RvxgMJPXV>7PhvV0D5T~pBx`g&sC>m
z0VyAHA6k3(j$67z(eOY`Y=JtRuko;l3bsY@S+%nmvb&v)xve*Xh9R<FJwkKukJ*in
z!c6C}X9w1xoFGb-CS@yg<$p=T4P|9fy`l;7PTy5eo}V<NV4chcen-w=vZO*u9N=D$
zR{8x_ws+%w`<8PR`Cd-HWr4G&z?GfOKxb@I1l2_K2pN#|yYA0af?s-tYTrgCBvh~g
zrpoPgP6JD>?+8SIB?HJ)pG8zS^OV-i-07^0|GLFNx6z#*icHak`i>xFG>#;n$Arvz
zUo%v+IVZ?72@N*U$h>A`{I5FQ6jZ3MG2rDmu}BEAaV9R<*YZ04xfm)bh>e7fxNrz#
z+JvtuC?o$}2g6a>=rEa3P1f=%=BbODrtn`784c^z1xYdd=VM~^WyOlyeTmXkuuf4R
zt%r#PiTOR^^qJhJPZMa?+_Z~}ohqveQb_g}t|wwRYPd9wICt9~dW9$1MJuuIVlvmS
zjx#qzSFSTzs1qY#^?g9px^ijRC)+4oiJ9ZcH2B;k_;JZ#kEVciSKdp~F)`Xt-fYzM
z;VY6eTq7}VTU|-w_La}CG4T)&C%0D@Kn!$qXzxGhd$klcU?SR*J}KssLJWnff_OBL
z+$i+0s|4##jSw$4>;Woo6PX?(F6Y_XS8W&5Ws9}B!CyKqTA#TJl0iXBU+Q)D-L~iD
zG$k?55})~3Dj5%cQdkE0{QNwwQHmUxIWa4KkQYG-p?UQZhI;^UrS1}w_oj?4q#KIa
zw|@JP83{afzCKUyKU$JzPWbz`GOBt+iUJE%B>t}OyPzlaJy*H+dlFSp*v18EexRG}
z1~^hWVaie^C5(ZMX<y4A@}GGHU%cx}H|X8VOgF1|@0s{CqevNB(=0MN9GJW8uZTD2
zW|y}oP7YGmCqc9JY1Xk%*vN<?sDGyza<P0%beLwFI$6p#hdAIu95q=RUOjO`HRTgC
zARRt_I?09#l=Ct5W|OWDnMml*a1aBVIb9vjZG_CdB_pUm-02T)vI12zte~u>zP{S?
z%<N%ny3q{0Gs*m}-@+OcVYO+WKK+GK`zMYI`_@7#j`aKMModdBOY&>mP>YsIn+tFO
zNY!6iE^<lCJD4qIzC(aILVJTYw!Azdh9S@c@VGz_WKtIVRLG+D(BMOl@=85&s`m{-
z2=xOZbf4bz(JtlqQhwaW6<Sci>ph9h?%LF}JY_gZ$GFR33$<(K^#0toK15KIN71D|
z+a@cs`kVSK>c6S=V%8qxf}WF27BvXD1}d3?{h2`yG$CAx6_?n^CNEaB(&>+lbsvd#
zShLlI>q8=w$1Ca2wPDSiZVqksU+ZHsA+Ai|E<4{*G4y|MU9{uM%F4RMs2IT$Rlx?c
z4>u?ttZ2KXgH?NW{=KJV&!bV@cb{l%iErj~IjJ?+x3DhlvzykskBWeba(?_~PV=ks
z41xIm2SluhiG`V$=lFVW&+4f4$`IBt$IHu$>rp3%S1k}w;r7Pt&gtJ=)P~bL(Zt}d
zF<w8)p}n8#4D}@1EIUhSldT#uIH%7gOAsp+Q2q?YYN#uSsTEzSbu~Jb{+mx<XZx&<
zZL9kS4E}zb|NLU$zZvGj>C<jZ4|-2E_M6$J5<R@Ic#&r$+c2osWtf3=n~L)cVImo|
zYsxVD^?icFjdp=*9vm1KL5U~TYm7HB=W()H8LTMq*H*{5(92gtGyB#AA01#DyRO3e
zGXwGV^^J&e@qzsB<U-3N*>~CgkDkD0Wocv6vp()y&YP39J2e3;0I+7}QNK$zP`V~r
zsh!ED2`~U^1P(vEX0D2jfe-dugM2gO;cFK=j(N`L8~@%>uUmS332r%=k!m?zw){e!
zS55Iyge8GhGX2}YeR*I#R;UlW(eRA=z@qhry&sEcKOzkhvy5zHF^*svaWU1&wdp=S
z{mhwOv{sIorYn%|*ckJ0&XT4!XsCgMtx?9_tum;l;E4U(ia<g|#XKgNeqqYl)#@uW
zNo8t6o{dBT*!MlLIl`b8Ny(9{*C^?YTqJC*xIMD8&lQ558mkO=Bsu4q7g8pF-di^y
zWX<}LMyVp@mH+N7S0LecTanCOaZYl%bVAcmm;^^7tO$>to&Dq&Wh_G<wyT{gxRimk
z`hMfR&?+cPWCU3nG+LItcI?unddt7AvYS%9>&vPBI`4HB$-!xaI=ANEZ<WP*_>CeX
zQqsy6IGMiV!q6;9CRwOI&3O!a>X|89IDhK)WX=#^ukgwAxJK+<#E*m@aLIgQe)*~1
z%i#~gpHf9CnQW{n(*hSA3;K7zWsPK|w`u5aXpM#sW;*9fmx{=8cs**5y3yuRJl>A8
z)6fUNi&{SJrz%W)Si4m_on4(wmG+x7K1Lad@H}Noo+h5<*n=}A`^{4DeXr1cM){+o
z)6E=x4HQZT+tIM%K-G^QEAIZe2qpuh2x8whP~rbz{fdNFoCZ6iJ|l-JvW5%U<9<1s
zzot5IbC|<JKY7oWHwut#JqbD^`h=?;VFo@9<+0^$j?@$=vIRFd4VF|gUF&X>6BDAg
z1|%998UPYYFKcW}2lv_1OtK`0My|Frv)8V|^U<e_lRxwpYW|u!&{ENNDy8SG?Rn+`
zYQB3F2YNzFgMMCm%;Mk;q2ly5@)gxw5KVeK)!EcCz{+0)@tYdriLlFaP_hP)lSe*B
z6oHyZhO@rFS@GF)r3j)?;t+tg#1z|oNtP5s)ouKmhpn6hZ`Bw8V9=r*`rhL8o8r%&
zQ%-GFT23^ws0EqAYEC&8!#|s6*HLWpp^nHJu6jRtiJ0*ZU#wlE21XUa0VaeYee=ot
zlw8Pv6Vu>fy}C^v9Q$sEx{n)5ZNrmF{&>wx<^2ddLvo<$1Bk{!1?fLP@;F|f7*W69
zzIwxFgIniX_b<75=3hrlZK*|hr^Q(EV5sCIyR2#Q_@|`hc;?hEV&|{Ic8Fd%m)j>*
zDrd?cO+r5S5+@FXbgy=7I;}c2Iy5g`KlttK?O9k_=GN9Gn+`trxOw^iT7VRlk01T@
zn(&;9S%SolS!SA3PyRgnH)q(OIob3pNogUFMh8>kO^}5Mc64|`ZWW$Fc!Hzsi6R*r
zxio9nkh7;%i_zYn&21bJeIDxYe^Y72pA){)sK;n6x*JRUjH1X;RzVa;WY1l5uc*Pp
zHAmd55hYjN)ek4vT$cLLqP6)a$y!_kpv_QKXb&CDJN2@)K4Hdu=sWdVm)?f8&3-FO
zIuA!LeS)Ol-XJBBCLI%9a%jfNrrazuTazJ%Xo1Rp990A@C}7fVE4IxA8LY8<pK8eG
zRC+|K3`tPD(Ec!NKiB4q437AEUlEL~M&Jhn4nmlx=jpcM={Km3-YVNMk9+51N3<|g
zcN+a+rSoAyb06m(7Zd29=?QmjvbE{NsItw#c_@0!{k}Pj+t)Geaa<;{K<T*sL<Tgk
zqK0-6BaK<Gs~Q*#H@WV^?C8@_jhdR8zgKs~Wo5m)E);|Heg-~K`7up(A3oR3eyW^J
zP<*M(L`9oAK_g45phh2PIZ1CSB92*zSVFFZR5m~^tG4}4d?0{I1M&Xc@3xYP0Lw(p
z^s9|z2Jd@W93<f+1-5>s_PT$5K_=n}FL63)2nsdV>iZ~^CzE9V=BZXvya@mG94*1d
z_-%#bI0Ky4zb-PtwRF7Y&&To3G-TD$4F*ivw_9pHPj^C}4(Dr|=!MO{s1}R+`wM}#
z=;!`d?*38?xRBWu`?z;jK8i;RO&LN@7$1!_th3to+5>;+7L3X3Oe-hJx;R&=Q^yZD
zIXVQbZ-3!-freoyT_yf9*+xHT9tVzg5ZD0g=!g}(r6J<7>p8yq%(|qQPDUu(C{4{H
z&dVbI_KhelUYv=Vg!Z7B_*@VbQM@Tyf<BgVl}+&ryScA48rVo#ki>Vn|CZ}bIlAAl
zj9kXB@?&MWGNsF&-UHUExR@ZSw+oQMc$O)=a?$I+i~$@UFxLlGRPUDUU&=@dB2A97
z6@i+pij{VhcD<{M6=`gVcj+T6%%rOm%Hi3$<f+et&!fNKqxaIL{N6w_bqb|u6tz?d
z5mIN60=*r;01K<vfwkFkwVk5Fx}@JmuGy~HVaJ(Jx@n<lN+D$Eii(K||417^!uqjD
zKWTOnsiXgm)r8ktc-zcWh6YYCEEL>@pFAjj3q3lKL7^k!5>TitfBav7AoLrvoE<+d
zk*VqFHUBu9*5NNylejvV>qh&~(g9v9V$ArNYFLV(Ym}Pu<I>!~`jy=VxQC`R8toIw
zE{UXcRDNwmimzExM7&Hq#g6y*B2Ce2!Y@XZLXq$*PTE|i@T^Bo=XEhdgnahF_W7>f
zkfhZ;(>zfL79tIOvO1f_w6Z#mMyRpQTTpuuT@+DJl`|I#BwM}4@gR?eH;X!F6j-K*
zR=dMIH{zwVD~*v9w-5hPyr$c79e~ru^=9Qo8%j`y6BqfGPurp8=H|4a{=wW!atjd-
zM0uxxZgZsi!C|$Pduq)R4W+BbVP))4Wttw?f9|Mpn;VqYudh23b>f?#R1E(1U6?tU
zO0BQ@yu=D^@w)%DovW-a{hbvtpO$)^HX)sO7kGZCl~}XhW&C<AXGV9Yo}pd!k3VH7
zVF0IX?6)B%;>+jhUjiU~0jZ|w8l@J+`L)Yo<S*Ec5H(6%Wavu>H>*V3l&MmNUMrYM
z7o1VC@u)WP7rSIDv&(R&P$xHfb-$NT0gppdAin@fIiPI5bIE;WIE7IUs5!>`&0Xwt
zQp8_&uy+nneIViP6cV~ZW<p1z#WuG-!>vv))2shi4=gf29oHp^Uxl^hH7kG`ZLoKo
zL0rh=Zq8!_Xe|X^!|ktZ1g3k?#RKixzNhoUil0@D&r2kZeJ;U-Wm<Lfy4WV$g-MA!
z#q1N+(41WU`OD`7Szq5|$}<xvjmpfm;v$N4n6a$Zq&xDIs(X{z=uG~ubG0q~IR2~3
z>&d*WUv86i+$2SrYCxNNM4MYgYXu+gwr__lDsE&;+6>jiIaH|z`$bR(iTh&bZ2O~Y
zw$~ml80jwlP-f{RyeoiRSe5Eq6;G!~hJJV44`)gDF5JYW2Gw84p04{#bz2F8JAb}l
zo7S=DT4nw(H#yb+1`jYq+qUosW4g!N5qDf?TK>0~Okp@O6I%8;UkWY1hQ7%>AYEJf
zjOY0z|6%Fjjri+bdb%!^;(Ip|q527O`L!4h#zpUbx}&+K1Y7G=BX&*M0!`JQf=}-a
z%eCKs%S{-;#m9$i{FPd2IUAP{<Xst+W_FuC9y?#u)z$SlAD6mWXn)YlR4i)yGuF7N
zt%?e#Znu2YiTQNcD0I^7+n<*9b(Hsm%<ETS!SAy@GK+E^nHK8pXYGgd(!dr6Cmt+8
zc@C5bK0G{ZoZWc#+kKqvQ^T-ZwQioBRNWU#pb`+@eM6Iq^SqC;#q9(eS*S_+>Mxj&
zQh)=kT=~2H;|4tc#}LAt#6n%6LBbN9Y2Cp-jp!*2&y&W31`^E!&NpkWZ8<m^1<Evu
z^4sC&RbbFlbj3KGZ!YpU_84tZ2>qt2_6^KBMLB*MfLKldy`KBLA4sx#&18Du^drb$
z)NtM2+#)~*@FMTMMpalFyS~<y)4+Vg^~>{8<jTRl#zx&=(4+XRvxr342{$(e5@C+r
zgN6E7kS{1(&?q$X3KH7PS$B4E$5nk7gTqi#(pI=kUC%qGAOBb>6O-B26IOJ`z04uL
zBAq5~RW7#~MJ`978I?}ho)|DH)3HzS*BSGq@x=S!dg&EZ;1#^zd-Q3;A?kJXho=N_
ztdidFY2)vOzk920t#tSAYo;_R+w$Y<h4u=~9fH)&>Wp=0uwfv=%H!e6i3dOb_1|DH
zF)ubm?Cmfx%PBsCi+dMQW~~eUd0#`<h`DDJ+LSX?;MFxuO-w?72ZaPO{AG5(AU9V8
zW2R98cpxe(SzsU}thUwA=M+XM6DO9@pdz*?)|DFc`Fm_A9xYD=uH+-%`MzGYhy-J7
z%YzZ#olrx^Zg%{rhL04cFt#{@8Kq`5R>@pIuT7U3r*S3z&kTh>jAkuNMA00EdkCb2
z)-CMM`N2cV@ceGdBF+MOp{liMtl-TUT`TyC_;78i*XUNNtGW*t6$zH64*;f+mE)qq
z!mT<Q{O``*KTX;PG^654_UGfp<2xf>_)@O&6gGh~fO3$PG&aoMcV7>blRs>=45(-%
zTd@Cz4bj!3f`fqw$Xg`uBPj$^lke)v*SuF+Qp>DUcOM^>L?+o^<?OBYxASz6Ew?il
z?acH8AD2!7Goi`L=UBm1pW`IJ9Z{>nv<Ky%(rPZ^{NVbG>%tFX+7KDg(#cf}ay1<4
zXAkzvgIPrLo=4FbH?w%lZ-Ex$W&yTSHV0FyKli_amXzRG_VM!0roLljB;iDZXw{$0
zu6U-AJ=`mRO*>5B4CtiCQ?jRcAHh-BeF$!NT%$tXS@3d_2R<}d5jBwZz)FQP+%w5v
zcw}*AKi)3!UnG|?*uUE8dQwX(Z+)sxedT;@a$JP!57#^`>aE5B(c-AAYYm)v?%(_I
zxbkxx)ysqsstD=4aE1u!1m?4QGtt))ybDA>`R&BT*0n0gjEq@%tYNwG=ev`zVy&WV
zFROSnXuh+r&ID=zP0*yF&L(<{lyHEWL3J{SR{J$Jh6(c*17B!AsW%LQW1RTv+C~Gu
zA@DOfo6LDkx?1**U0q%E41QpsrW|$^d_351_V{#1I8TI-_SK8}S5YnvU4(jy1HbDu
zHJ@a#eC=$f0a5DYoQjmSFV3@ewD!T6LAzcfw$CgCECdC5OeZs7*OZ-|k&!LPa3`2N
zh2i0&eS9T6!yfItJyHoK3Ru7Ukl9&YGpmbBdGfn5IJjR4!X3vO;M_?Z+K?`+a-Kjq
zyW!s+&DnNuzas&e?!eO07foc}NLH+u4D>)T#5`Tc{!iX8G#e=ET5NqD?2z|0*-uWE
zh&&G3qNlVPnRl3SMnlM7fEzZpJF?d%QzLoQgndkX-&9PB5;DVH?dghk82t?DtH@Be
zAk|ovhF)q_wt9NU$wC;zBAA|r;||VEn5P`r&P{qFakLq{Hu<w45Xjc7v#lOU?17;Y
zMb@Ufy{|Y!dO_(B=jUu**GOPVXG-lhs~(@22pYGT!U+U{>iQsetP1?2VITqk4CE@g
z{o~UEMhEIfI7!?6->i5!5J`3)s#ZMQlFLvqg@y8Q)nUn*?vlI$tNyAvy^!#OyWP%T
zdOp5JXWs?&SC5AgG?9zW{iv_94p!A?na4Lav3J1^<R;$Aj}^=-E|$@PbFuTXBm57|
zD6{T1s*Y2{^EezMSQ}s`tJoZ0T2i2hC&xxT<pP#(c23T{z(6@n4GkHp*Zg+})%OSH
zLir^n*2|7T%BS=~Ro((Ce&<YXrS`K(Pk7>(h<+!-$QET4TV<5yGT;9#Hs(enAMbt7
zr~T$Go!PZs<=CI0spx|4^w;95)Hz-L3rI>r4IQ1G6_zrmbyAa&1PVy&A6pgKe)ts&
zeI>|B<5!h6BmvS?T_A%Hu#d-nSIss{O*r`~ACQ~XX>g-5f&R}t+w%($MX>-p>6lw5
z<wu3vS!>bJsvIA0QAQW|u5^FuMEiL56V{dKeaVAz51D1Yidueq`k8(97W`$|`EY>t
z0I}@f>EU?m5xJ7#;c$cuyww8ypMGU&Gf*1}c|@`aP*(Q=oJTYl6S&*OQcTxQxj}k3
zhFi05yjdBW0@dr)EcfNrWGzD@pjiQ<&FKEI`#htK{#?)O@ybvz-|U3)VQbm_I2Wo6
z_Gy!ihe2I$_V0wk!rv0UwdNzI`b<(Fi$KFbgO``<4ObRCTyjT;0zCv1=~*H}z7-)D
zRLn1ewKQNm8-~kG?6QNUBjIxcL1@hBDSk2k%7BOW^QTV%-C-E8ET1#LYQu(n5~35H
zxh6M)*yZN<emDD$^{V~k2NzuI)Zw57%Pi*>bvp2;l#}*9QtL>W=Qh&f!2P&p<0`l5
z0^e$N+I7+PCDvD}ZFLT`=fSXyBbb=^*!S3b(fhcSoeM|?wOyS5!GmZ+&_f7B&Zk{y
zA5OsYf(2Y*#~42tWEx1!+*T?Rp02MI-Run`27cTXxZ;xPB*bmrw0r0MK>oJ3NVr&o
z+QDAt>i76CTet3}dn1&yB&YRsotaPx2JP~4rpLXC$4C$ll4S3Hx3CBRZZG`~c+3cK
zkHgwo50Fj|!?zptkDw(*;6@hmvp`<)J5bc!hq4fwG?YJVySNAv-H2K)*Y#I1th?}D
z5dQZwZiNS*l3;9b#o>YYq<XgZ8N#x_a<G#`<Tn844VnU^7yOthu~8j?A0LK&1BBq5
zA#fk2H$p`MU``Kcmmh+e_wDUJ?7Da@pGpP~&5USf`+P$CIM<lc7hrF-S%LPX_e|l<
zFTBW?VR_h*reB|<gw2I4S#{d6G07MaDw&5<Z*fW`m=b^x9;)3G+AK(pp6EXUllXZn
zu8)l+Z$vPe3D8@-Tf%(W!f#ouL24S}u1f|;y8r{`$H#xEI`wuWh80>|`v%BBGb$h;
z;B&ni)^c~$>~qqI{52+Kq<Ifd;#ul&*AhhQ<V1j|!GE7FW8Wu=8H_>_I^zvvLcas^
z4fJ=2KoB_P;A`AOtf;y0S<8Zgwn*?uV4uA{X-buJSQ`^hdK_;gkfctOv48R1dC)=5
zH;Tx*g}=ocfwTx+<~5JAV~8@lL@sx8gfef|7BE|%UtY2TI~c4%c54^{Uis4qi0yDt
zXo6x9Ea?OUq`<BvnBb_gveI+m3SN7ddaq>3MtiQOo~$(y%mv%%O%sicC=!VWd`>Y>
zcUpJ&gt0@=g}12iZjkhm7_TGkrQd}b!{8y4o7)#PYiUsPdel@Rx7k0a{PC1$8$`pD
zXqHX*zjv`iv7<$T`_{L;5x+##@Y$73=ys0ul9XrguXf14e$8({t0_$d3&iS#F(@Ek
zt``=6Mo37=jQ>(@f}wG0j2&G<MVdMhmec_|W*+XY*x1?YEhpJ0-&rnXKyPM(^==aT
z-Bma1_J@7!R21DX{vDl?KJTY+9x2X{WX)P1i;yGcbwq(o_xzsGZM)kLSZp>$ihf2`
z#X!OI)08QG$g#~mDZ4X*XB#lbeC|g*W_rYOp};}~Rh_d=UCIn1H(VCSvRlxN;mrxt
zQ+yUcn<|_f_O!`|QR!++-#+J^R4>RaRm|>xq66p?kVp131dD40d%*MlwBORwa$L^W
z4>eag{A$HN2P6q62P0#Ei>qR9JEw4d{qMLp=SdF&WUi))Aa*eF2iUVI@^#Wjbi-kS
zicB9je2(#-?qWY~fn1Z*<g6_IDsKc=jdCQlUm7@mtyf|(S!CapGqY4onDJkzYgL;L
z;+D>Y)@xb<@Sj7{VaFgLamgfsGHFo9Bp9cp^%ZEbbiW|fZ^KDrSVqdp85!<pEQSLC
zU*qKCm?sWTm($n$ob!+p&r^*4Z3Ud6?K5za0+uZ;Gjjv9h1jgLWr1gZB03T0Cr-%4
zH5^^-*yl=o*bo4A9qeoZmkBt>d#<k!cwdqgP0Tk&R2=G#jwlT3jOzyv=F)4|^D?>$
z5?Z%P=Uo>whHGe0rhZ^e_>eG+LjaL?I9Mciw?Fy|AO!a3K3p~Wj?`M;y+38nF7x#E
z=KjsR&TVSqopEzpb8E(16ixejiAg9Z>T%7yd;Jczk-T7y3Ys96#DM=&@Fn#JYCUvL
zDN4mBC!bn~qZc1@h5;I{Ru&{oPxV<t!mSmTU0Cv$0KC-U-+cW|+$($|Cj1=MnT3`n
ztS||d6bO|B&QU-*J8oyWR{=;AM!jwJeY63!ufS=@&fWuBsKEyhi<ALcYF2J;X}aXw
zo>{&_+ze}9aOn)Cx|MEaGt#46XL1>gdSrd*tNH>SkyQ!f4w;>mFN)=3d~&7Bm8rF8
z@}OttUgC)a#&}gOSFz5P9zofwm=LYnpLra@)&>`@_A;6B+dSTuAs<^$pY=C?k^XLG
z4)?37XTH`NB(YotnZbc3A@%dup9Sn$=kEx|PyEvIrQXqO6)xf!#l2+Z?574>zyp5Y
z(PQB!&t7F?hRapJ2*dZMLu92#^xyY^y7j1%!QvhJ8zbl>X<u23^+7y`T$^@=8XFv)
zi0x!?5LwHUV6h7!z-&7|2`5m!e2x%AzF4LCOhW?%Sb->Uka5ZFc7P8f<=VlA{9no>
z@T8!GifS>2(M2Z9e+?MrQ5(5ZYHy43KGF`IG&6L_DIZxg;vgz6ahe<_?l7&#JmE#T
zUb;5mEH$H~&VTuW2Fh8%s!T`!GFs~9#70OUSfuKPg0ln#Jx&5erl}4;P?lIUI}tC;
z!)S%&F=u;)nk{yaLRq7CHpe6Aefuf4S@jK?|MGSQM3o|yF#q`c1HsNM(!h=iqHs!w
z34HZH$ec-+1v|MMYS52d%Wrgap^G$?V|U{3V-h2xm6`CE@ohot(-@{Wfyh|$$pXoL
z%md5WE~PydfVR(k^8r7^;&%^05Kl~3VmAN?Z|A3ueaC9=D*^tSjl{*L4g~J35j{>k
zZpg6H!5@}O0GWX!VfW|=KvwxQzs>0at*X;3?4etu*$oh6x6;DKnJ^K~olPHmHTE)!
z#lgs+LQ9Jb;YxKg*7&u*<93Fg+t^a07c8WTK5KX2;W19LUZ-<2f8@%4v&m><FnJql
zAOlX)4@sVz9VmV`dsvSS=kPaO_ffe*fZ86&x!-kfI6Fedl|NN_FNNQHPHm3y6zB9d
zq%ctAd1`e`->n<8g(K~&S!4mlfO_WN4VqQy54-YiZmH^6R5Fq&)<5iSQ7;ZLRF-~{
zMCH4Ql#7|~IxWz`btL(-^rc6AZgJgUxQjLX^vNYb^=7Y2A>|#v9Y$aVp_P@DcC#5e
z5tpq=_m^l88@pKZEI6Z(g@;E5px<~*`hP*@6-;{#+&5sbi<b_Or)H}t*jVQV)Ph^x
z$>yQ;pGHfbXbwRiCO)%C#$(Hgn@j)$6_>u2`;H>1mbpi;dWbP{I^U_*qjtli!#DXt
zJ<?yplXyzK(X#BUy09!}WHTC2Tf)A{$R(S5ID$Yio&B4I9c%NxKxLWNDP}TN5}z;%
zQ{j7su9sEsKTfx!#opE{fsQ)c1q&OSmet~b&RnrfzWa~q#Qr!6&mhyn3ZKwP7)yTY
zmg2vp#*`StPI5{INDXJ|yX<hx$gfy2E-Eyd@I=oLpMBkWJ~SiAFk-gYrlHQY6k22^
zU{><<#V~4QVxvwS?wgaEi4)SuRkYK67kU54g>$KO_*v^`n#kJ-c%=lYz5V|f5mz1h
zva&%7d;6lYvS^U20BHM!+E;)k03!$`CFR$zUzq^{3NXM@M*No`Q%-1{l{LE8=KIXC
z@n)6o45R%<%=9o=0BLLAWV^lD8+ov+xU=(0{J&z1o}WJM3WApaD=StrlmZSX(5yP6
z_^cU#3FGSPMU69Z-+qTqTJ>45f8vzIM}N-FZXChzc@_WjD&m_}ZpvI5bML<JqUt0e
zksD-Y$S@-OGXQzPKv>|2F$VdJ>>M0M%=%AWNR9I0x#g+c?$=>SsEN|A*=NekZmJad
zAB8v9w#8IvaGa>r9A6J0o|=Ssu*$OvbS0B~1<7^B2BDMfr1k#jichGS%WnFQIN=E@
z?ih>Ii*=|S$$+UHxr#l#48!xdv%q`EH|i4wf#&x`<vtQB9Y*dytuE*|ZT<+GZ}WoK
zS`<X6W8>nVL$^{*db4WJPWTt})LO~^Jp?Hs!wIql;r;7~!JuvT4kWo!fan?*clS5Z
zl0wejY9g3%MVg<c1>X<X`f1irSNa;zLo{nu4_ztbn*Pq--2VWW<PV1v4=$i6+3v1>
zIFAi|p-5e{h@A6CN}8G+FdEu#+HJ;a%t62ciMAj_q;&KO6O->_bB+x5C8d&qtrM&c
zbJ73lq13STwuuWb>ML3P(~$Fd_9HSJ@hdd?1@}sux!)ydPqFz>6IB$7am-bVI1@T?
zCN7ya<!}0J`WAYeo(@f1Yb8sP8tZQIGjuj1yz(<vCf&o9b5l1qJE$Ev*m9_=+L7DK
z_W>(p+?~7GDo!^P1x`0?57)x)v>Mvl06AV)ZS){HKfeIRmE6L@=Oxo1c`Q6HoJxjm
z0dJRylW_w_BE4D*J5-;k|N5F6Y`vE+Uye;r_f~%H-#I#ZoYH@|i4(^P7U{BqCfT>T
z56Y6Zlq8l}>sgkLJIA<|gVQ8%9Wb_T$5JhiN3?(tX!Q9%n!Ylss<!L;&>`L3B_bf*
zNJ@vaq;P1YK|s1Yr4ghX1e8wcmJ*Tfk~oCYeAl_3_ZtI;e{{3=6)WbNYc3e?GsGuB
zi$^<vmblFYL|yd1*%8-sm<lqRRRu`im*!a(?Uq8m@>LfXdhoAQaP2keDHUm9gb$)-
zqJt?z@vn8+(|$aA%ngR9t>RGV-r;*x<F1_okpNVt;WBHyrC|7{+hl=+vuGM6JXjMa
z@6USw{h&91HLXovpa*M|dpOojKyk>hP(i%P&(9A|?9|edik8;Qn69B=%(&I<7zv{4
zj6yM(E~>))pU&v7s{5;}E0vG_Ek-5U?3x@TU=RUOO#dYG_oLABOaI1N;{kC)y?P5j
zG?R4f(z)0LCev^4D&i+d<v{NwN0NdiImV#Zc}D}BT%hJY{``kq2VU9Nn>jOfeb`J@
z0K?qe+@IgyV&EERr8PCjtsZ352R@mdGm@-A7YvYRzXfN0wi86`KDjyI$L1rhHY(6y
z!&4t1!^Pnx5mDyU+fq`GVG4p)_1c++&orS1+>=yL9QPeNN(*qrnP7{|qZuPKV}_YW
zY4Cx7imtRRLU@6{Z$B6RM*e$I!}a97e=^hCZ*S@rkA$djsBi|W21#NpOL~Sba3==?
z0!sou0`)L(VTPerjqW1i=fJyx7D5TFwUs%LD9!4&=r8I{?f`q^P+eHOqHdg;O_4{a
zn2aCFTu(I9VhO+lY0bAnWch%Tk{Q!WB|J9@esyrtmQLYcNv=5))<Zpkv$gnd`YQ7B
z(l1(X2KQ;mO5Y2q)M@Ab^G~+S%*vvGGnf2NLukLaZjT&p9Ap<lzAj4{j=ECiR@nPH
zfd$cL${tOeD2akAjT825+(YZr!2v;**CHe_<Rvkr7SQ7bF`-z{Wpkx2J!RD%Nl-SW
zxY#XwMl348R6*ft-=Wfav%-q=B5sP83~I*l-I;sDhFgg*saX5rf;g&xt?2dB*X2Z;
zn+@5q3dx}yqYB9vQQrf6B$rpN-XPzlf>?Ulu4Kf5b<GX`RHPi%250dVd`p|yzMQ>T
zqK(;^4+E1|UcpOdneinM5DfqH;Hz(~&VACc35*AMW+VW&cuArO)h#7nq*zmcuB?o>
zt0mx{aqQYTb-(`nQr!>-!l<AH8#6J2-D&4YWf>_>?C?Em?3rcBi635}XT;S5fIdY?
zNC+pzIV?5fH!Z3f8!z*lHuc!Z3H-LswRW?`3}cA5_qTqDhp%Ggz``q#PMR<pF@MBJ
zQ_Gx&l`<kb3}s;>%1@*&NTg<<K@AyBSpJr_*Y{Lx?vwtfOMPk&eX2`+2Y+|VwH=uz
zh%XMGDqZUE6fe<M2yX|KxM+8O4~Fy<6Nqx5CC+oH-(O3oF^#bx3B=%M&xQ8dmE`{(
z9kKjYWm{X?(2@JIm3?XAkn&eip<4&Q&z<??{&gb{a$>pO-O)ittbG1I7r?LZ?MAth
zY*#@=s;Z`@4z>=GVimOdSCtj00jCL~=uf?QwR`5H%QvU7{pp#Bjw)jw7p!MN!arb*
z=|g<Z_Ouzg+$YMIQ!rx!b}^&ww(9rKxPh2X#3lNH_i><DD*zXi=`H0JKXDi~QWa6o
zGHYtG?bOGHy}}3^RA34rihiL~Ot8&kWKgQeGbAJ~3j4VfRO`r_+bsf3AuODVclbiT
zQYL(0r00&Z_JrGbOjdI=Hq_kLt2Iy3*E#onya%rsep?CpW?1)$C!AaN+}?2E=fcQ<
z&iJgJH+Lo!5D}ziP`V~mdoDW4Y}tEkqU$tbqZER*K~>RMb0j5`s{b{4TfeOJD<u2h
zls09a7JN#1*S9sc6ripun2@tA`M9Uom%Lz*1}SsLgi~&nA3!R4msN>E@&p4gQ_?mA
zt{O5es#Wa`mg{J4N#l^Ns%$9A*caTB&Af7^q9hpVOfcnk*u;Y&1soP04t=KYN%^0*
z!RFuf98`7Hxy`n40)xu`8KK`i%DwR=M=CRgx|^*~U)X~Ssyquh_8_QHqss$v&K6J<
zr$ZMyB0)4kL+DDO0F7-FT$R7=Y-=txw_VJeGM(Ry|KhNUl~<fxoNp<AnyM4s&(rTp
zE>~XlFgl|P;bVfA5#RD>cWQ72)faG6#5VjJ5`H*lt>q?&9T(vm<xv;EB!bUy{ng^O
z%WoW0!XA5hv^m=Yrs2>c5p!6TomCfAd-Kof@H-<N;2Pz=l*7<a3Nt_n|32lyFojTm
zy;OxL6O4>%K`8G=OkyamcB0h&jk4VCchvHN^X5*un=1HF4_O@@^I;CK55r#3UhIYo
z$p#?)nUc*KmTj$1urB#)3!G^5*)_vCvu2+o@21Ne7ttzEP*}pT-)@-+AGGZO5_a_l
z&cDZnj#6I$2)=1KdbsS>@!_7YNi=g<-LTN(HLd@6+aTwJEqkNKp>F5>k<&StUHO<L
z`HZ-uZ|$0NPyF2Cti>N0J68U*C0%pdsr&G3)3x=*!k@ejfo@Vca6sLl^-rfWiK5(t
zq3lXL{Aw)OYa`rjiim~9NZFOt5!NW4){MG(NSu%CR4bM~EIkC$xQOlXz_Cxh8{BO~
zN<a4)jh1FHWFk|>%TnRNR|G$Ju}m0hERm&dAC=PWv9*u4TLiy4_e;u$gaXF!$Wix6
zoz}L8?q3=}N2bnO3|jEIKTGy-cW005Ke%(G`PG?~UpFj_*?oG-y}WG97VSDd_wsqX
z&q2DREI=f@{?IMVKE*^yg=x^jptL6M(IlLnn>68O_lM7!13Ezqy{aG+M&Wq;l-1y7
zZN5MrV{R;d+&rGTO7bwv&^F`N6N3@Uq2dqVCxgllDP$p{w*w<!Szu|-{>v{!vgb5o
zKiS9rLJG=a^82NmARIjKtSHTzDA0CY^7)@<8-@_6vW(wl8UNx?fri(Gwixv%6nUNe
z_e?{kkEUIlAUv=}xmQZ=)9bp?@xLB5HE&w16(-ZrQ7YQJzxZ@b+|whOs76)l+kf(n
zEx6y|v%r_|n=Gp(PF$-LawhUVl=`#On7$277U{xJMn<OBAs>|~qD7j1;04aLV5*x@
z29>mx+pdH;xH2fp%MKTjQoS*AjPdMN&fK4Fl`o7PHtV+GHsezwi{p_GiS41Y;8q~R
zCO~beAFdbD5qGY$t}S%CrAJ@;@<zzDBHgXSqG39aU$wBJBKo;u<J$SPmE8y5^+^Ib
zEGxlIaPICa@xP?R`XOhDTzYG8Rx)W3#zwSaykda5d8;HNGz`01R3W&rM)f-sj~J>N
zf6n|}f#X0TS;3;gIe6XtzCk;SDO*h0YYQ)g)L+JC553%mR!KO<;R^$~L*$d<_NAS@
z#&l-Ti!s)CbC_%lss|Q{mK644vpQ{i<T=J<RUkCMLN)kiH|KH11mt>NWEo%C37FO0
zVDOz-xn9T=5Yi^aek%HitH~+Tf~Dl0VZ^E6<w_K>95ZPcx2hGlyj~%+>x3N4ts|lF
zoo=)_4wZw1GN|Is^nw~eIop(1q?dW1Z)a#ha6y`;61`F=8!77$6Bj;>c<92$;PHO<
zv18BvyTSE$g9lYIc<y0q@}EI<K}1A3dRRXzN}-rMeafcWmUsP&fs6jQzKSwqjT|1I
zucN3*6E$i`!vt}R9Kdu(SlxN<7|6ysW35<mOwl~mpRHtFGO@Nry=sk&NYEPd)MS@=
zYRvSBoGFcrDYuH5qOxcEV#C$T`L{9Icp7CT){wl4CnHN6l3q(J*KY3#M&cM>@^I16
z76G(DvHltZ)0>Ty_hSs{5DOQ?43q!uH?H0Thk;|q{`Ggg4%OeyYkTZ!dmM0=GFn!{
z_b>wiq@4U&TUW7&r`_*s%qD4gWS^G)a~8WhHAD$gP)c<y#jYHVT(<ju_!WE?HwB5c
zhfPz4i@u6mJZX#^Xb1MtgRrA3B;z}oQLl81V736%LwJDmh@QOVrGU5!y`WMHw|pIX
zN)j-WE-Eai-XiGQ{OcYc>I{!EVt16-*W<LypyUm`VGHX8S@K`abD``~95l>XWvrQ)
znrv2VspcP*D2mUv4?^nj=z{xy2Q7CHq&pEGzhuol_@;mgY8ccZ!$A&T507HH=vonh
z{(S?JLQ(yn507GxhXEg=R@Q&yoEPXnHCWc)+>Y0I?rUkyx;X#5P-0DrC={g$OaHk%
z$2l7WOj>~QT!&>j`kAPZaPg0~mD#Sy(UUUs`DP^L&SPMo6n{MYgz<fJ_pN(-#1xF?
zk3f{&qg~cP8h%*~nn5SbHdG5;o|iL^Je}*MGIL;%4Tp-eYmPHCba)RE%`?}gfHXTw
zj<TM#${20N-LzKTisW>!ix~HQy?P;%iQJl}h<!DrzlmTO>;JaI41hF(A0!!)GbEoW
z>hSX{Ao}&b4Ng&95qC-25uv5j6L35End)G&tdx4&@P4jcSBW|7OzabeoMs=C=XtZV
zIbRDp-%%gsUQyyLC%_w!BUb2XM3m@7xp_IWwaBO?d!a?7mEW@L0+0{_s7;z`U)z}F
z;~^(nw&$`N;Rsg89T6$X5k#>iT`|>NvB9>4il3R!>JTekBd`owFfo*p9p7NHG~iZN
z61O#Av^5c@2M}{UDlrWQ)}Z_H{NFaPrR!`AkFf$hNbOW3I5Y|6$u&3U>FM5MD&@kN
znIbZ~A7N>%vbB6?xQu<GpUFiuOdR7DKUyE#yROeI2c?ku$ep!JHttw8ff{Q?dVKH=
zx`D*>eK(WLH^$+H$j+de@8+r1@D}RO4ufpL=C5}&R5-XarIe+;VGfNeUZa6@fjxmx
zZaM@j)n3QCb&uPj9m?S?o+93-)B9xQ?uja#;9%OlkZQ?*&@l%;{rPg%C~SeC8;WiA
zZT_w2tXZ87oVw^X`}TbkgAz~cYiDv}gdbB=1_Zyx<VE!Orp5WBM6w@MRKEcr@xCzS
zB0<gdN}H>464yE3DHfE<8|)0Iu@P`R4~=;5FX_@o2-L@)!`|^xz`VrfjnMbr;2~qQ
zwGp?qrMm9pOxGcBOuU({lj4a&s4tgt&E%YQjfb+!@uW(p^;mhVyYO##T)PMv=|2~!
zB6(In<-3W9X01*&Y~Jr!XO5<!6WxL}tep(42$B_16Ue4BRY>OQdrI;owK-@BJ!}bm
z|JT@}Sz~RVxqaV(P2aj>&-!7v&0jNa(HB`u8Dowrx{vRwiS|4o08dLpu4mf(_Zyxl
zX>hzvghCAf6#;LD<m0taas79Fwu#}Iw-Q2&Pb$L4&A*%T=)Q4Oo_CU~DPymt6&wG+
z>Z4$3U5X&U&kq9x@gK9Zq3iNL4<BPAlkpp>vns-mX1^|lEYE~982}N;3Km4>ADC?5
z=)TCs!pFkpCa0#$epXOM_XLrEt{{kxQ-2H+90=um`%M&fRZ(7D!@5@4YXvjoX-Q-v
zM5IX8mQCg>u|VL*9_d$f-Iqw7B2<a*7~d;i#V40kWtf%`5LPPBkp75OwhdG$U+P2$
zM$>V|sicIxtVJ$^+X=Y5s6nw4Utjt0+lh<VAEIKzHryj1JA-nl3YcEa{=*NArd@I1
z`|(?&KjeMQb~dh~<xEA%;aM*Tk?WxGkJqodHqvXmBw2r*blx6sW?JXw*VH%y0%XIK
z23$y@$Vh>ZLSoG3gob4hXQF6bRqI+*S0H67biO0@r3d4;IS+k@zhRYpLc0WCGYLYn
zKx+@NLdmA=rlxt6;zrbq*ZXYe%x{5oVKCbWdI6Fq-`n@qJ?jSXGhI~ba}>UphA*;=
zp7<NY1l2$QUdQniv!4La*kxH>vFI_Sb0t3is9^0H8@`cqOtaCE(t#EKYRK2&^4<mT
zJ?13PMzfI|4BBErF=epgr-%{GC~2-~OV#O3KJOiE*RS551kMSOUC$P;t*KX6!|D&K
zau~>WVqo|Ju!?yYDe7p7%&1YSISeEsY9cP-fOp*_qge&T%2MSVV|iaZl(-l%uN5}4
z-ct7oL-JBun=Kvm^bsjDD-|P#Ne5{QD2k-erN*ZyC8P{nWpcfc;TakVN5zuIMNOg1
zt|WFEm%qC-grWXq9F}*~Aq}EIf*bZC010S&gCFXK`1F!sWKh#KKhLsszf73o=bq>f
zqC>JsIY-6a!IT4~Iu#X`eM$^oZk}OK!#&oY8TtL!$3b^y*Dj=*jUA>PKaZPR;3Oor
z>-+BAbI`~-=pYdA@Wj*%aOC;6>U8sO(l#e*`;ScJbj(HfZD@yoG4n+E^9(zVguTE-
zVIu+~V)4|m2x8{fVy|3&EejnvQVF1WW+P2OO@v4hw2cT*2~k6$$oXY;V8pIlX9lh<
z91BL23%(_1VtFii2`Qtm*od@0z9ui`<4$>+6x*rH?h^#vV%Q&$sGxjr);LEuEXa}u
zeKBPLzmkraOqw8l0p+xM7fV9>-v_o;u(wSar3LpWN|s@-y=#v2G})_LC;!GzixM!T
z4M7mY%rWHV5}7f2ONofsQ*{OyTvi@V5hXut<MsCZ%6ZxUZm|*eL&nqsFkI$gBTiyK
zaDvj|R}QvU#r#H%Nyu^oRzopnif|ybOq%GOO<9>8YB509vb-2%nFM5ch*?cJz+j9i
zA`~JN{OZ@At%DlqOE}S|%=(~pZ{3<*K2(-fRP^s&Y<&Ij#lSdYoJK`nlqCftL`s@K
zxeQ2Cm2EXJ7HwD$F$E8yin3JVhD^mf$6T`gAcjy=f6B&@!gK!p9FV8J*w0`due9g5
z8Zal1B`R$H;5(|23Yn4(Pg(8-U>CVhI1Ae|cF%0`(s4u^t&_>vYm*s1Ky{{4uG{@#
z@G$sz;}lw;sO|9=4Zv}5@)5k~4<M*P$-gDi0{UNs4`FlfN;>bQmgYWXR3ZGp`iP0a
z$AhlT!C8UX;u~(`5L{=*)#EI=;ESP+UFeWO>D!|3h%far7l-Xa7a)4FS~8Rf0Z5z?
zv>`om<sV<^xRz0rDP@{F2Fe!URu+=S6q1BYbqcw4N&U~MtHv>53RUU;thO;5%_6a@
zTmo;Gye~Gws=fK_875(hV*Dq{HC$SwwUC*PK3;D=onAU+Am^>9i9R^pem{lsaQPn1
z`|r2jP>XWm@3d>3ZST*n2ooAyW_ILM5!&&|RMm1iaS&DCgFc=FXD<P|XcKVRwl}uM
znw4C-2+GHh^M{z_2hcFWLyBge^2zluQL@{<S7sKF#^WAB1;^K4J#gSRj?o09_;sd{
zL=ez*q$>Cb==-{xXSGIu$W8Sw$o|_P3OI>@+3uc`N|zTQFU5lzyFH*a{e8Ug*2c@?
zn(jeOoj7*^b&+gVDs_N5O^Fj#T~NV8N9;hQ8VxI79<@h>4A^iV)jC%+Vm-(Cnhb88
z?aU4{*>wO=9w%26u&DR?QsF^1<|sC254!W{KatVli>UMX<T@N60_}fu{AjtjDm=!N
zm?VWbLaeqreJaoqlp`Rh7C{-Y90cX#iqAIN*<k;KWr;Lo6(<rBOBWfLJm&R<R5i%!
z3O#C%Qz?uIHN_3K<MV0izawXe+BVk*Y@i4Q62KX^ADvD*gEyPcWmW?|xPC`AOC-d2
ziTsiqO)+$+m@Rsm{Ue*^n|CI+Rg*5u#;euO^@KZH?pzO6A`JbTJ!<{pwXT1e*mtx|
zvnW=krePMzzF-YxLQL8mGjq*7mcYfM3xcq{rb?u{zSUM$-OJslA$jp=`q+CiZ)Dn2
z=cXsTDkwd<M%1$ON9g3+*)`$}?~4*^b3s3q!YKtyIcCE~$I_b4d@@rDVl53Ud81<y
z@S`+G)uJ7#u!mWvfeX{%0wL#qpHSuna@e0W)}C&MdU`p8Y~q{=yCqIZW=>kpR~R^L
zNNwXm<5n^+3{U=W2Q4dlSU$h@%~klC=Z<=|K)1g~w%@lUP7E2s3&h*VwcsWzWAkXJ
zu1@;9^G1nEmjSjA6;L4{S`xsRiRu(OXII>rA4F>En*`=#>2zGw{=!0Kw6e!wUg5v8
zZ`69zk(xa1p-;V?F>XQ>g4S==YxX55Im@`oG*DYaN=Rf}+bq(oIbEMYMj%~g#+^u2
zW{M9hOF*>c97m;{H{&^5t2{>%eI{n%p&6I$fX;8}D5s-$l6k2N;t=V`4{1|2pTE^b
z^Uqnf-))85{W(gx+gNVM*`r{hP$%9d1N6s-hlgv-z<<B59>>23-{~JJ!RC*VjTx!)
z=&1G>ggkS8Tn);~yn1Ss@}4CnXn0Jg1X1q=n^}Xw(@TC$6J1p~17=6{g(F27U+kFv
z@Im7N_s_K0L)N{}l$c8Gm2oBrp7fHZo53Rs;#-3KCEs3K0dh8%->_D2Ci}0wdC0o0
z_%$8DydI0ig>Nlkm4#AjrW6|hmUO?2BaCKo+;0QmZ+Lh(dYH7fwl>jr`-xhE46?ix
zr9)dANyB(ZZF|VTUs5nWHgfy|KezRz*A4RUQ2F(iSSt=iqLTG6DJOnB)(gJZ!Q;BY
zZADahZA1x+%26}o*<LnbAKt{GB9Sz_lR!(%Qcsy2(7VWJ%0>pOMqF&$K)7G>{Y43)
zCQGm;O9*~R@C(FsvV8{x<M|h4SfDcZM}XIohIPBxvErWQfZdO8UT^JrUBEi#hv)(`
z9*Xkn)7M(Z`Nf^de@pB<-K*9|x|zg72#u(5xy1=t36$|wi-vd38lHw#TN!yi^Ur%y
z+AGgSW$n%mnzs!xy*x8Nj{xFRlERh*E`)@K;yKw-vHnppq$~`JCP1`U$5283U$P>K
zqP*1;BIZq*q7=WfmQz;6h}V6JZ~4^lqvG+t>aBfAH*0G70?G;w%)j2@P<f&WWFx8c
z8ykaWjus;;M@u&O6zr4*&99TD*zirNiuBFzKHb7%OnJ+Kh#x*6V?_PQ%1mr%O+T@2
zpSz{KbxXf}#<945Z2Y%~<RL}Hue!I-smJ;Gw9_<A4myh!HyebJ9o(Dk_H1hC(}sSC
z^7MzTXoj;$tDqGkf5({4q>?X0NCz05Woc(UQNwU|60aXJW7IXoOpTk2iKeTm1}|pZ
zrhffmcJpFZ#*g(gVctF~LA#1WNjlUk66z4BVwYuP747SY%x_AUG?uIoKNb)_j>`Fp
znNv@gSq;}Qoiuwce$KqdA-98kJZ<4PkBfk4PbAYJT!CX~sQ|a3n#fSm!{vcq7Xt$l
ziYHfUOQDrd_V~Bb;_l*;meB!i*KyXJJ@bq~O+0F|2*uhbi}cgZ>lYsyYc`9KM7@0V
z&}d4jW42S2f|`bo>gzf>l8%nz&TGpn!b>I_Y4gP8SBLm4g3xI{8H%w`V}>a(bzW(F
zzgNsJ`Wluzou;097+TtfuA0Ll=AEXn#t>ygnnfWule~BEM?;DQDRYddC$s!oy?(Jr
zs~$D4DfqRzu!;Ip&ur|%DJ;~NFD5L#Zk8IR-3$t%(0P+8_ik9X!>Eaympq=GPdY~^
zK<Gl*THRSDAFuXr@9s{?eIi(#DqyBc97*f%SvlQ0--iY~^y7D)FERf4@a5ADrfJfI
z7k%MWpwv9+_+FE~iuSE|Mq0*463nn7w6(OS&C0ah`{kvL+fQeGgJr!EGxyy>S-J4A
zbD3!*I<`c4$%l4PGo!G0Y#<>$vArgWQI%M=gE8~Q;e$uL=HE;MUgra0^cQ{I&ZI3%
z4&86R&1=5?9XtBrqzVFoFa0w*Qw`xM{_fL0tOcX>^VL&fP~plPNgUonmrG$vHn@3(
zDAs08xG4H_Nn0w9^4qMdM9i?PcR6K>t;?hg2MOaRHPU;rV?p^8kH*t@V)qWLm=2<J
zCv4)&wqfh<P+t7xI?dNp_{mdJ1W7cnVKoaJq3qnIm<;MHqDl<HN^F06>|EZ~3Dqs;
z2vIvK<#6WU2<pZVhx7zifSM&nNpOk^3Tl-6;LePqo`8gm?Hmc#z=vnUDgW7pe0z~|
z-m)~n{j^HKZ<>i;fWDmZz(k4D=TUu|>2U*u1Qe`<rue}eB4!fxBn4}4FAHAXN?SR^
zph+HfOp=tO;*nmvtZ>g5acXmVxff=2K40|3&-GSYYmyXIl4BE6qT`Zc<C5dm6IIcM
zOAw*2Q=qRmp}Zkw>_s{X)&(z#APrFq!y!15I1!{V-kcD&#EByG@r$J4Elqyz46Kj3
zVp8wUQ<_JQYY^21r4b?YvQwEV@{P5oy|Q#lt3yOB?a>R+J}dssFPSdCIE4P_`ZD9#
z-APb+J_AI>iEZ+{cs#|TNY<H93)_w1i{zf};>yi2S;AP=SKOJg4mK72S{wRPRrM7W
zpsJca#<J%Oq{mJ=lItqt3dp{s&zf<S2W3&`wO6E|;}YQh!^gfPc=8u7;UaNTo^30o
zER5}XiSG@)YA57cHd^1DjLhVQOrCp@oek#j*>>hcQ*$+H+`xaabMuG+ArP-%57^kp
zK|LC|sdeiJbzTADl7g?Hm#W_!d_KpkR(m*jeNG#waOEH&9I^Jn1S6nAHl^ZokJook
za<@-m$}v_;lbM+PUiU-ZKCeoyP9%M!#0`J0yX))z`LNBGYQqp#!r3|fzQyR5LnE<h
zV>1m3I74bqj5_xJkVIN*fcaq*^Ls0B(!FK-y$AOxv^Ve8R^S%t%KqQ<j~lT$)m!Tb
zrei4r2s(ZAgc-Mn!OnVD$JcZjw8oTi;x8GhLVv8ls&Zx%M=VE=o8LgI?q@hXBF0tR
z-U)Bhkm5QymQ*^$ns&aAPnfuT!6V$Tr@vs7+nI0sP#bW?PdF*({V-L1CHAbrL^O{J
z4~vzpEan4*3DP|C5#?Nf2qh<1zG}jC#GbY!Q9XH*S)qR*GVE4i>>@=`EqOfj2PSze
z3!1JqF{e7?wny8kjzhOOSHIcUFSCi09WVbo6;DBzOHo}(>_Aq1wok2;=9k5>U+=8$
zia8J1eP^|=^yf8(4QV}G?l$I7Ztb(w*i*J=i{Fk7B!GOm{YwDlwuB&y1q_69#=zD)
z?~LH>J2*~xCJcrwJ97Po^;Pp`9%YPqehIh<;MTi=bVlRwl;edN#Y#)Wm6VfV$*brJ
z>Sp7XmikM0Pj#q(7wW69<RfD{Z}oD2^=!^xu-Jq(8gW@~P_d}~$qp)$7P*Ajyt-Jb
z+&ur^V;c+AINJ0=q2;D>m9(T`?%mqhL<0s$S$TQ>*NYV=zGF|4Y_yp1^UNire_U{T
z^FHh+|J=vhCBC`T^MJ>hL!&)v)}#>*bj0ZeD%Li%J@VX*u1>t2{=ufY&K8okao<tJ
zkbx3wp#aN_mtJq{Y2`G(yr~9i8=5*g9?FAw8=lFo-O`b5pmvhqIsM8|3wtJCNQRJ?
z2=gG=&z;)!8j<uyo}3J~U|-}Lai`${h6aD!dv&9oS57pBe7HUP?)84Rp73#;)4zUs
znWiF<ychiMEwSZ5bwHtfQL%V64k4`40>SmVU+SfR9vzjctG7*Zig5^5JeoCY_(Jus
zcY>X-!I+*Ek)PuU0dC0_*0)1jBo8KOsi`oagBb@DL3}$?hgI16loIK|+8SFnW+Z$v
z&VIv9fklROI*@dZ3?>WCbC6=m5r!6E_@J@wcZy7e<!TCuX^h_NP`sJfp3>MJbl}Nn
zi?P1kJ!4<D368n9Xg?cpiO=1qr&53ZYY@t_{_l37$tf@PF{UjZZX4T@7cDoFp5tnm
zyg|hDb+5_Ghv5yodrozNigZjzq0t}e;)2=n5)Y3*iwhI+@%&d}ASHQ55`!-np(3F!
zH5b*Vb%CXJHh{J(?9-UApZTj`^78f`bUma3A*l^_5vRd<k^&o|Z?}@}uEU~!G}7p>
zFd&8whIl<b!rJa`DQVsQp5bLR`eJSfgBXlITVLzY+Sr2lQbz(S`up4zT^%$!$}G0B
zaAwp$t;cL_m^E*U>+y_h|IeR3uMR|B=_=`IB)ZV%N^&BUnEtW(JpYUm5y{#PxA44n
zw`diXCg{kDFqrQ&I%!3ngVp~fBbE&lkjb=l7)>>5DHX&Xt~Pzovsa-&Zih^l=kW{P
zGui(R_Q%mml`!-6dlynhLf#Bj7O=W?Cq24LYNGO+rExV<nq};6=R;{8AAOYfygr9(
zE%)Yhi1iIYy@vb5xfeeq4(|*@oqQR-PT9a84R7P~-B&g(C@R`Y>#D?i9}Hi69b0yy
z?dpWqtJ3-SAChn~8r0s9k&PljayDr3o6uqI>Tbcz^4P%6o5n_Lm%Hye6aV6;1$o9#
zy#f^&8f+HU;&{lgnwK4Eyw(spZ_Y;ltajyrT*dI-*0-zX|8oJdq?ca6&7E%XGntgT
z^GV4y=sexEI>ix`U0EQ{+Wt0+83_UbVa5EB*`v&nSZhOS4~*^vbg0dr<Q3i?2n9Lk
zxQnO@m^QDUb$DjS@pR>>W(&CN{h)`p0A*fs9sB(Ecxs)w3`}|9IdNI3`-^DtqzP9`
z=VXWDf!059s7Uq|_p`nWgHLW7UGf7yuKLf8x3O~iB`b3K$q=FnI{qGd-+51MBIJ&q
zHyJT!ml`U$QNs#+iTNBbC7~8i!R>sq1A986D%cLf(Y7hT8?hQ~MYS905bOBB$XmxW
z!|O6o%BX_;9V-@1*xM!0S**h*<K;L@-6Ds!uI`9KfXiee<RyCDfh?gd1B`E8Z9_0S
z_M=bE6BfuyEJ0};_}OX21OZL%$OOxiXeRPp^eH2~o`6n|oN^7{p4$Odq_NQ6CkHs_
zE=?)_J*Y3)_Iq9bwPF<s<D4bUSh!&qrXU%XmyxF!r>N?;ZFj!;`kK0A+=&YUELKfP
zUP&_%GIL+^Xwaf#@wkyoAEOtBSE<I3$_z}J&$1nl=CNC?f?#{ERf*p_eqc%kD!qFI
zbmq{J5wUP_N$;Dbm!AG_l~aZTZKE9hsU=!?Ofze|<TP!n{sO&!l6T6bGku#d<`w3?
z<>6D<wSVyZY!iuer0B5S3yTKMnqQ?AB2n6Z!>x`3=tut4rDIBjHqVopc%KVd*J2T>
zb8>#B2R1i&*=pdeDHQ~Ij)Is(hH@0c3>w#3L5yFTZe(S{lL^R+%I(ULZ7KWTRzFEi
zmY%kJa&WBfWl}Z*|2bpSuDI{5@r4hVALbw;Ehd~jH3?;3Ine=DVn7Q^Jv@?yWK#0W
zf<v=WO#!ufr095&9mV6rp@sgq6-9-TwX!`XeINCf=K|~_2TjD}_7iXcjSliYH!kVT
zu2$+Z^rMx2Aj{05PchIJ?FK3hCMKNa0sZ3r5WFbX>+uNEt31gMc@Ao+-)g{T+qtrg
z^trnaziaUg%IoxtRt_QD^Kq$%F>4u2T*jUXKHgBW1W(CnVSyevgEr6SYNZWqgM{Y%
z+z3S4aSuthCXZ`ksvg^7FlV%4lj{V|(B}Ks`&962aX*uuzEo2|G01r_1=GZ~q#*_Q
zRFivq)ILZfPIh-ACY=waxigvB(Hwyl1RaWRc@z(bTuw3`S94UX_YY_{PXcaewmS(t
zJvmGrWWdb~F6mi#Ce!}#;2m#DX5>n1JfDd!>wUk6!eK?2RnyQokN~#Drnzq6Hq#-<
zjA>$T7ORvC`#iglRLJ)Xv;5-w@DKUIr0MC`BBG+8(Pp{YUz}by6=mIlBWb5YOV7r(
ztZ(~EeWArT_M;RAeP1<jZL;j6k{v!DK@^j0vY~X>p!Ob@AS24f!y)VO?}iD5{oTi3
z@5o|NV^O)uV#z)(1WL_VOPbEOgI->Dk?*&xT<0fFRGa3jLQ`ILQ@hWigJ<^P`Z-{3
zbT&x(Q*REWm+)h58u(OqOS{Asjf)cwFuAZ(lmEU(uRANT-nhFsO7V4WjM&elRBq<Q
zk3IV>YVCE>M=bKj&iiv+a`*wy0lRW}?ZrB0UCKB~2D&U6t~^+hJ<8k?Ynx=?3;GDi
z>#x5j=e?`b*Ke@G4!9c(P*GM^e$iEdSNS~|>CL)Vv|zkZ_lX<K6vrPUW+Aj-sP83x
z-$-QN>zo6ctvnOa@4vJ&f-9c?aump(^7thE_N|36TbV4u(}H0>KwJTS^P`Xh5KT40
zc|wvB6<m@u0vb8pil#v-M>ORXu5ER_#Hv=Bf=26`2-h4fEG(2^d5rpyTwYihBFiAf
zM35PvIq$*wHx8CvXk6t~V>v&-GG>)|#}LZa=_|GAyUGT4QRjN{KhpHWfJhte+lB=)
z3W|cJruS2xVE?0-GYtv?e~hy~duB0TV+{8naD^|RZidA}#C|L_Ao&QUQ&xhuaKs=;
z#f`0JwNd9wAgPctURUjhjgw7Wm@lO47>Z{;F(ezA*Y1}b@Ob&+^?X&AV5Z8)^z`#r
z0T-`;yP!=U?FSsy1qaWbleuc1>~Y{t4h|0&fYb+^S2@W$DHbvbn8#c1)t9nkC9grf
zq@t@U4-B#f74qOX7&JV}>|<KElHHw&kur3LKsu63Y2M>ue;1Ti3|Yyka5;Y;!@RBr
z1Uq~5I?sq{ytnWL9G4V~ji~{3xX-+<00m)t+aJ#PhffTJ0ZLEac(x!ACyqW_kgn1l
z=z2KpdZ+{^8}xO9&Q+rewA5#17YV4gPBkTs-y>Qg%LT*m{?)1o46bjcUpLJsxcnVK
zzyAJx6+Vg>P<5|nB=5C=Fanse{mVfBd>LH*!p6~2UXv)ehpuJmQV)xx-$CHK8wvOH
zvNqroykF4w$les}CsM*-1H*QBnEpGJ=z<?Ve-40-ZZa~mwWFq0lP@xyrk~paKqByg
z#55`-LXdwoUyE3J>DhFqm>(m;!#tPdmha?H!R0@zhRpbQoX+!4Ctn<wMgDl+-W?JX
z6MJ=-fQ{YX+xuKv8UecCt*oqeoPc~SP&EcqGf84lnik{c5BuTs=6#+%e_q_)p0l%K
z1sEANc6J3{wROd!ZeuWjC=hHd1eX9E8L*03@X!+{Cv|&)_PPV-<l<nfZAJBG4^{q7
zW;@F#^nGy()@MfKIcvabuQv_0qRWx0FBt->mmv8d1aGGXt)Wvw?fvHY#l>OZH_-&#
zxv;RZVjv@`sH<}|7th!NI=Dn0Zr7^1xA*m(pQR;padENhH?CvDbFEuSN=kV5*7en9
zg7^8jAoyQT><}*!RL-YbBpToIo$XBsK;OjTZCDXwvLjg_`1@aBJx+FY%CUbk*8b4v
z*mMpA=1xI3rth&%O930$r=L{@y;=PBx~F4d&Hp&`7lBCCr0HG1>5t#PTepxi2#xi;
zFORg!D&Bl$ppuTf9qjf>4Dh=2dl*z-HLiyN<~3;cIosw6$h<t9U(IhI+IaXv2LahY
zl|e%|5cR7Br6-Qx!gy-VJ7?S{zP?dVJC_az`cQo(f%MY%(CEj1uTD-Y|4kC2vy$*X
zxOGXc-u!I()#)cn60?o-sT%KJ1PTJYi^Zw|2HyM&$P0WWR)aseT_fHX&cMU%lJA<c
z_VpgX)P7^ABVuhsz0Q;L&NJ-_h!3jkE?C9M9v?u$73&7g;KtzS%gD*~Q;QhVAJfK6
z8$OMeR#tujM2?jIA|f+ltO)r8JrTE%CEQ<hO$NbwLWLbj>V;ez(*tfVUpyR3;_~w0
zznQ(7RNedVcftA^uJo&_8V6k=+z`;`>8dSYgG&M=CE-iloyzbX%}DBlm|`&bZr4fu
z_4@mnr=y5rc=Ny==rfEzbMhbS>Vmzn=EQ#9l2^b6;wHF+6)c4I?q%8rh70BM?6t1?
z`ee|^d%9Pc;0mN9QKAGeD+WXdIqR+MpHSP|pML!1G&+n)uiK>{Hl8^ub9b-4vbj|(
zHBefpd~D5=36j0_2+2G8N%4PFj!m}$dF6Qjnk<nZK#B9i2T`uhD+VxQfRPGk@*gsg
znCDL3x+tb^Y!p2EF;KGT`CU44&Xy&)=!0{P#qN!;?*>n4D=MfU5v3{2+czwL7L+aA
zhc#TUoBdL_vK=%z*g|?qZT>!{vZBKLWTgY1l7Rj*&I&TGn=@|1R<wnwI@H401q>I{
zsUU6k(JhsaAoWQ{V-Z>wAA;3LwcZS*`Q=US7It)eLPEoVk1B`*!fBw<|47t@9{E%l
zArRb`#>TXC6Q3xco>wrn7hEiwUZdvx_l$eWiz084UZ)|nd2qi~O=?cj+O<!M9915P
zN_=MU@YSSCr**78!?!;luu+jrYSV$njw=YLJ0C7<LEEq8_dLA!L%V-lT8ubz{r(z&
z@w5D#rk(Ad^)<i&4RFsYwEp0IkQA3uq>+gC@2g5pw=DPf2<scK&5$QKdo*V3L|}@D
z1{;TI=A;cDNWrdqCGTY5eZb+^lpy+YouccbzGy)RoU$nbhUI9nX=Z*N-qC$0U_9Rf
zFw|<?Hm|#U9FX2NM-=f0m-N1<iAUa}#dh|9X05}>S*!~{`U#MA1{hI`?|N(ACP*p4
z?O46r5rqGZjg5WY?+4<+iCt6(Na^bIfsht_Li`g%NZ@|v!k@qpLi(RSuj&je84~a+
zKULU4-B8TSv7)rYW!aT|k6n0_g>spQ)VT3ux$z@;@MC%K(ZN+zFwtspdJ3K=kZtSa
zWc}}W8J_NdPI{n>2CdJ-tL(#mWQIpvpySdR=&lh&_1ztU`MXKOc&{ce0LriR?y_nq
z3X{G@ecpplwe)kv){_QoU(R$^Ew;q*?cr_h`fIUFqab${Ww9h?B2~O-CW#hxf@tQ9
zD5gv-dGt_1CP$v_rUi$ABTp?I9Xa5`fUxE+P<nM(X*X!S4b!)D6oQo1)L7l$TmsE7
zXK=Mq77L=VYN;j0C$R0y|0+Z1`bhZ&hjr(P-M=mr7`BGTpJl%L&ARCE!+Nz42|#&c
zTanB&p@qW>mH*6Q%U@p1JiFHTSg!Fg(<WI(!1SY=E)fa<JcpqL;2wf~I|oM7d954a
z&cDkD_M}c}dDe92=JId>DB>4D0LvWE!v8=&`%3jXBpY-{FJT$$Y0M#(tK@pIi!V~=
zje+rwk*wBj+t#MagvypttTPRZDGLktDFy`lSl8{*pnY6BF1X?~TNx21h48nR`JX2x
z^yUhF!kmSu92V-sfCx`87-j?)hXATBMMcPknmZ^Mb#IonAzwfnD2?x_6p-W`hPwL8
z1y<OFZYugjlz=KjapU(k2G(bNcDih3MGXzhhX7~*WmWbR#?<koi7g3lzrWwySzd``
zGp0`X?RW?IcD`)Xpi6(2I7&K1EYUJq2|aIEbemtQ_l{d)UHod#{)afbfQ>9p9w?sJ
z+Sr&aw|W2~e^O(k08lgm+fh<fBnx(@`N@(tWbM+&*3r=l{1ecxnxq!+21{Ya9du9p
zYI$3Y4B5#2Y)jG7F3*zA`e{6AczYOXO?luh@QOwBRxIT?$mkWV>Wik`;{4*be0y_Q
zQ-_mtaZx2O5bK3s12p2?A>N_pOPTEPry@2?zzWEld}Uy;a5sMPPs`L)T}B3}y1M#n
zW8>>LZ`k8H@!n@<V?v1J^1pul2yh=DVNHq*ff)N0VyTCEIrsi9$SuO_FFC}_s+mxW
z9o?2}N!A7OGQlO9Y&L+A3NA~MellF|DvORt)z61knVazT!khh5zB6g+P%dSYVD|Wv
z<6Rm<4ieC&4FrV&3^uj0qGo7F2{g%pnw#PpW1sOc7?A)15s))@19bwDcWu8UCr+X0
zIx|fCU-akrR6%MAz=r<R9>tsRQZkCXw>~UN+{tu!@q}@u!#mcsBOcW57wWW!H~h5?
z6*Vi82~#$GRt*4d1Je|VL37UeKeq&XdwaNWo@0{*9|gPs2UM`;NjGR*W)K1wkE|9O
z-+_QOR(>;hEHDZhz8*y`Ut*=Nb;NZLg$a`bqu!Zv&D}-DhM<x8F!FF#nON2E%#5f+
zg>lc`(rICyg{4x9qp$@G_h;fICJrEKDxHZM-Tr=f$+_2>*Or==wsC$9WQz2we_m(z
zn;V=i*?lu_SlCiBjr=gHiUwu~gpG_Sfkr$sN=h(a&dT3VYL1Ko*TvHLH6p~t(6&_#
zh_8`F5n{1s;0&UVjY;5yZiX^o1WzI7I|rLFsj+1-<*GDf{r=aoB`lDQ4aAL>9rFU(
zmyQ~4$M}D_2}blvDJo)crrS?-%<O}eS>CVZ2yG5=6oF_Ep#Y6kAV>y;)~ACZ5HlMd
z+4rkL>c_t|zNQduys4<bSGFQyss||#d3ILEG;Jm(FOP7q7o9Xis?>~bXK`LOy^}yT
z>C(=?tmFxhp6Ib^Sa%nx{g7?nUE3i{g)?T=pfW%xy_CrHF~8S_um0Vl01mCh7?1`c
zb)fu|v3@q^!iQb7t3eb~^Q`Q*Lr<oW31gOmTfS2$?&RO|^#v245R^0mjam6I$=s6J
z*0o|$I3=`t2|{_Wp3Te0mM6P3lj841fZ|A6L2ehGG{^1}6bNca5a3p87#M)opC>Gm
zavM+OOL|oz3a*rwGh$u&86205wue(l(XRG<X-he=39$whN?h|e@<&NKU;sM-fc~}1
zdGWF2?XSa2uu<HZD(6x?MrNlAyQ3W}7Dv*Ni~CQ|Aluv9K(PZTGJ-hsd{JAKkwSe&
zP#~_fFKF0?^Y?J{?W@ku_&HH70DL`uc)^LQ!ox>y&cK~LB0#2=IJ)|~^}6Ne0vylT
z*;x%^V^t7*-OXKF4~|HFX!ES{JHB3;7TOOcm0rT`bWV1xoKy1i69@kq?z?2!WdMUA
z`^~`@MufoT7uUh^Old{$y`np(Aoq+j7dWa@ynMsm`ic4smti$$sw{+RrG$Btf|5x7
z$1dL9!l|jL+B!O#1_p}2E(Axp>Q;K7be4lMyLXdzabZbGIB43M$dl|^y9B@J<OdU|
z-HwTdWfUKZl)J~n)d0CiKv}2#@~t3%87#ca!-IV`A0x0(d++A1mi~CPEyph&l>o=U
zZ~qh6-{04U;LVwtnWrxScELr=3~AP7NL?RUV_NWC*Of3?Leo~=lwM`)@_7_<q7t42
zRbO}2JoOqkUN8V8E-nseNl&hVR(>#4wfpdss=D~Rcr9DB``i=yWBVo|$e1N|o32=D
zp%XOPh%=$)8QTc^8;9q|%^>;sv4!<Y?H>@9P`<!Xe?b$;O{l!Ao!Z)h8gTft8a`nf
zm}Yi%_MP-Ta8mzxiULK!`gss5^E*C;oZjApHF{g8KeX+7Ub}maBE60r<Q#n9N-Iz~
zi`2CWG6>L}>DIw$)Xej}|KUXqmYR#DO)wx?<ey#}--9a+az(hdF=)*MLTq3ue*F5S
z0E{nKe2`eQ)RRg_QaUR?ZvZ#)<R1uJGQm9Zyrk-Vk$t0}{3twt`24D>Dafg6zJ=DK
zlvo#B#Hq~8Ne<LC=m}4Wcc02e-tF?;xQ(8I4=5`u``p@^_04|1{%tQRJgs$e<CVx$
zA2<!e+j!Dk40)+Z)NaBB2BBGk=58rth|b&|Wv12P4eFf)2IQEvwWhFwVpt`9eV81F
zwyUr5BxeH<qy)b@OhS188USwE?A%=4hkuT6#mb-6hUK-j>8PflZnc(nyW=N83rsnc
zq`$8eL_>ogSm>z!nR)M~W>QNxc8ef#|GOQKJh%ou3)$?`YN52dBbLkW?92t>5^O6)
z{R{vOny&%5!m1ZEWN&hT!n*4yLLhMC<>j_hxD6GyAblfLRDd{lDHOZqoKSCfr05B`
zwnjWm*$$L2!Yezq`?Vmho+(ikI~!tzJ6y01ueG#7R!`F9!At6PN25TpDqe_@GbN3!
z9MJc%m)KE6LDQ6x2y<G*`l4b&01mS@-QDM5eK8q#A}A<0^ZU2bt5;~*0`JVvcgAOb
z{!}U!0Xf;*CMpQ9ILw2V{Kl+!YGWieQyy46ytlbvP-c=>7VKr{C=%h_&K}Cjb#wMq
z`H)A-zYG-?UkO^U<9q^qUv`yE%~w19fal$Sc{y$h;(>&5@i`jAt^c(O%S`b1mks1A
z^-MDcfRdyeQ-s{92Qm+V(lcNKA2#DQ@6PVsm|kZd#=|C=S76>9VlHbCQ}1g_Fu^aO
zcRi8QpFXr1$x#??(Hj<2z$FJtM-HBE(*rn?SaQddAkGPq%+on1<lCkJ_w=l-sN|U$
z^r;gjO|T|?4)BR*pu6rI?8h|tb~!l|&o*O<0PsYa=;VA*s?jttnE+Ob0O4i0mk6UW
z!ig)uTY#d1uXBAw;jWMHd+&^HR^sb43xR9^C9LH~&}@J~g;211ApBH#@B^!d5={aD
z{2LI1le~-Z2ZfSj2~Z0eCMF|$;tJA~licRM+tLqv)LC!-ibof$xwe2bstB~tgO~(<
z>VQa@rFkA8nJ_$~f%FmB5-1vAdNqMinPHenW>d=lW>Kr%^NJ6t5CL;ObK%5U=+vhJ
ztn}F!?<72-*Dy4E#_SP>XHLxi1_CVhi)_+_^H+pV%?Th&I_}2sT-%gNVl-hzXy6nY
zsm=1QW%LGEu73EC2cRCVrmBh!j6>@UctYwM7)_uTyD9^-4CH+XhzaSE*Q`%+b~*^t
zg;zyK03y0z<i9Z84w5N&{11{TAWI+*Qfc5Wlpjp-q|xhqh&%|^UK@AR$%gCmXvOwM
z5`!b8)k9|O6Yl-5&vHfFJ8UKYX#s3D`4#}0%Z{Z0%8Q`&_wvsPXra?Ur|&z^nxzRW
zj(|)vy(WNE$%BQQ*dfowf~_z3!_nf}0Oxok6Ju8ckURrhQ&CX?v<P;~OLO6q;XnkY
zh+zWuc9e)2!c7r3>UlemY)deW^yR>YqNu_92GqJAO|Ge(Xj;05w7nMYL1GBh!vPl4
zd6rsx3dSX5x3;!2he!aFzS2}P0+MEk$|eJ;jH$3SqQ*Ww@3sC9a3gy{pvtklELjTV
zp{?`$(%^r96au&oELxfmx9ITW8vPRq^gn?_5JY1D5?I*CbjXE@0G3+1Ltte$lx_sg
z+UM%%m9ej{OCVSf*Xv@|YXc4v@I77|QLMi@J_v%it+2ctqjbjmR^14lURD!$7ob4|
zR0E7SNr4Sk*_nCfuQR7$>Dre<4on@M>bxRTgAsYw+FquK|M|KcP*T8)=M0!L1;HY?
z^8oG;yT6zLE=ReJ2E1YfQ8ljKf5sCh!a@p6DIVDZfaufnR?Ux-l~`QSPqRk>#|$9p
zyQzZluz@Lfp+MOLMu`=E-HP+!-|_a3d>OIJSuL;&nOm%(c>gjAa5j88Omfs%d3kxC
zn5bL3j>)D3qAJL^ieks3T~9Wt!MglCK7s)B48>!CAMQs62IPUZ_d_ULWf0WVuGtf$
z(dmz$%V9$R*ps~3Tkepi!KXPU6Lkn?u-Gt++efIM51^3>yLl(VUb-)Q2iFM>8m4#M
zS>n)$4FSC8rGY`_*eP&8AM~e?AnEolb6wgZlPXM6HP43nw?;6-34y%T_WMCD*hBd<
z_kVG`gvy*PwIE5as)_~o5k44|F+uD*P^o%B5$8GwjP}3g0#pb9;*`-KnH)Wl7mz9<
z<N0AyKGZ>^oIey>AdkP=zTE{D=!q_LOp^$pisNu8oEA4$IMyQS`R8+0)gPRk4qy{S
z^Y;+ClVu?LR6Poa)Yyp|-2I?91C)BB%tE^!7trnwI=}|z7<mQ&aT@^kgPNxA?c(ZA
zKdEWok*D$$eA_0M8fgN_Gm$jhTLF`Ze5cyN_^!8-mYWZRvMLV`!oXp{2j9SFkEErM
zC@Cow!N6+V{s42(lQYG7oDrcYW}3kK^5uf6Mf&y8t7WP-=Tv1q)}ie)8)X%kAVnM;
zlmalL8%TOR|NN4&uwe9TyZ_%8%&j#dL-tkToyDRm_Q~S<#WwEc&<KXHI(oHyy&4lh
z&9T4ySPIm9ELVZw|33%;E<powS+FwCQ|?0XHYD_BA>Buw0E7W+Tvj3S=);-Enx&93
zvc*kNO;$X5U9x?~-lLFH^YFs|az)t0@0KVfpX`7q<!;Q17kHdMOD!otvI=ehhnOV6
zT|JMcfMkqYfsb`=F_JCJGf6!V0dNP%b8N~hyB$*?YgVer-`mf!H}6JkB{oL7k+T}_
zyrLHzN<gO~?Zat=7*Os5Vhh7UAj*zJi8h%S-#rI8);Bsx;6lMm09Td4KGZET^^C>+
z;6ooIXn*MO1^_DuDC)f+k2Y?CIoa94?GJq6;n^psnZ?1MBo|Es`Jb44GtdVJp66Yl
zO0QKrJsn^fNwjm#V<l2_uCWg7r8V6M;T4B-I^#=!q-SpJy0-iR3cKKrSponC4t%&?
zJpq13cM2&mIvNuI?4%vJBP7kf9>LlIdVgeAcy|bHKm(D>*#@0c!0fmoz@FtdMoli;
zmL1_JF9>VAAFg-3_wpk^s@^$n%?UQav4H{MrHo8(0sO6&LpF<e2_PKBpDUQOga<-2
zA7FEgcV`_9Al`o7_GlyxFBrJN!86bkyb1H-9^nBmgeUlU58)-is*}YbfS~iRZfib_
zRZ%jm6lfo-5_Ua46?3<&zGCUXqr#VI;%OSv^Ah+PIDiG$lRr8-0+O!ehosWzF1=u#
zK7RbDp{W@(c*K&cFt%GT&-ck)V6e|URG%Sa@`&wk{)tEyY8^DIDZvA_2#Wbv-*tS#
zONMrzD6?FEoEIF~dZ$&1T>l$exJ&Z$yH9Q*4Fy|p_|yjiz$}<g2gqlB%q%JkWPe&M
zu@&j)opE@Vu>23<CAbJ9YsjxAF3u)kjuR#{Ry<^eo{#W4pNI&28{mUofb?JTk5|Au
zk?LMRAXXm`-YotmqoR0&2Z7|Y@r>0xm%`x#GXgLu6lJBf$E)nC-bBgN`hYbl*T``b
z?``+qLaco_CdyYx4sLaqrUg)}hX+5<Ro-pc&E1S*&HY?)@Nm~eD2=Wu_KW~TVvay7
zrW@#flfD!6?95{o5&YuxO7!1M;y0W<idYneyG5=9SfQXKc=5ja+eypw%IfOv+to)2
zxWxf!g=;^sTLo;oOb|9ME^7eG-fc=gFy?F6^fbN{ngCb>>L4QDTzYNay56VY3Lcu+
zv%`NAu+e`L)60_bbiVfok*cbyK#|W(B3~WYQ@#gam7}fX5FsGj2I2SNPw|(06!aAL
z?hc}+8ZBZ%6W1$Kw+s+6GF+e?1UboTAB#Gc@<A;HdgP-l7cL^7#Qy%WfMetU$*S|e
z_W_dM|9hq#cqTA)0RMHH=M0Z{MFQ{{JyaH9H`_?-uCEw{!$TcEzivOFnDUBN)*HM&
zHInQSof;q9MT<1Gw$1xrB<)`n07Pqeeu7Un@2^q-iGH2Fm;0&(m9Xo_m6a6~z4l&0
zUJzYd+Of#%WTF+qRx+?YgH*&lK1w6BA^p|WV4h!hxiS(m<1q6-JtCCCDWJad7I<H{
z3H?9iVZ}X0@N~IqefU{|oAx++iaLYpBHqmFcPKiR&SFEgl0uV$xjtm+y{)fHT?~tP
zz5U;B5In+mTvkMUlAtWg61ALdUBJ(PWCpHS3b!~QTzT8HSlk98`MzkwI(RAr(!y*3
z$BnUl-W>7wjy-<?Nkr1;p3Lyg;XWW3dZ(iz0QQ|aoJQGQyCOOmRU=gsuZADbYG9s0
zoAK`I5Y*oO)D6Pn`Gv2xgg`<@i0a>aM`UnUn<hc7z@6RVxcK)dN5s!Z6M_exGtWDc
zVDgypc=nw}B+LG|;-WjNhF5}meY#r+lqg&_Ht1M6O)Pnc7)|v-O%mibK)HQ-VL{Q_
zn$@rgbOk#rP?*9WJ{OG&fgH})T7z|i&t6ke@ohaep7#K*;qm$>#v6)fPtTjns!wY!
z_Lm5#fvXvlO^#IqYA@nLpr$D7QxZ|0d6mq2`_}Vy5lFD}^MhW|c!$E}6+v)FmN)tS
z|CMy+K}}sz7>_zqq*SL-DX~*vSOx`0Qqj0n6j@qD$|5A-RAjew8i_!osen>tsUkwK
z6i|dgN@NjHB3hs(V%;!;gGL2G5<)OU6cY@D1Wfx~%%Az=-I@39yXTzmocH@u#TiI1
zwa1q(qRbrL0-}=wIiDiZG#nYk<ccao*XE%|8YbJ2B^y#;CYkj%)06r1{?gEIFZ{@x
zu1Yk$4YTd$a?8SF45c6FeN)9nMF0gYB<L0m%Cy0WOJkno{l3AuGmnDLniq<+d7S<5
z>elHaozCs)Nw5*G-<Bua;mxJBG1kdWg|x1y6C~B87OczPqts|6IDJ1qRo$T+mxy3s
zg+3lpt>x{<HW^2%P-}k-EX+X!&sD{_xV&j3-xO$i#W7`LiyB;hqjZF3>jU*sL6(k>
zciFtSY;|37_?v)zyYRFvoq+?q#eZ_6Y?L-UesjG;NHmmCu55JT5P8PL2#pjZ(8E#2
z+@FnL%pojv;(QQ`b+`T4CmT{HSAxdM=kw=JpY-q2yvk8^41fC2hx(@Ha(1hQEi2b>
zpv<10T3ykhq?MLOC)nSvHYEk@wpNbx+F*_#?tRv%NcK)Igx<{H3_L9NNabOZp)$W2
zbERLvvBNprU(!dV++^>`fR_^?jRT(69<{$a$kVP&eoyStF83+$o<6AQ@!q$FRTQjf
zie=DPaq0gEe)>x|zp&QQUF%qN+C6Q*Ab(Ln#9+)j>&lUdl*zN5dy!0TuE-~L0R)rM
z6Pw>Hm4@n4mXZU>x4ZaktH{eDYwj%KlJL@#UrTG9^j|Ogtf#?>(O9n{)9I7lozkgv
zd{B`W_Dh6wX;;$g$96eeL=W4X-I9#s=2=Jmwlcfdr1zG7NP&VtPJEf6>tIhS*EK#q
z9#yV-3?b@D-OEXwEIeMxI$7Fj@pPMb2)0Ga<d!?mg5{WCsC&>K`bQBg_9U;anK7<O
z!S=n-B+ct(dj%)H(V?g=4xw3B2spem<&`TS(OZ|9Q%^Xe>0$00^1So;mU~fjlE@N3
z>e$OR(z8a-tFVyjFX($#YmXb87Jbl>62vST9E=|LRrS^3nIYR0qfYG`f2@%?tbZIH
z;TI9V0^=?Z(w(N#SNZKez_wbv_w)i`2O1f-Ypj<ixO9a6$#e0Z9fqRr5G=@4_?tQS
zXP);rtAgHYQFq{F>?5rq4Mi>KwIYb#g>(uJ9R9=%$;mfj`HVp794G3G;tR3-X;|bi
z2%ErA6+ChiUmX*&S?)#giGCid${6lexik!eJZ0ZXpclB+_$apD(yrn23b$?g-oDf@
zvq+Q;4SN)T_^|IjmL;Uc1YskldElHnH;d%SR+O}7ct2--RSl1hbSagNWO`zCdtYZ1
z9Y-)G4G<*3#_J%|U2Mpj`uet5l@o5%5=oso1vF&fP2o!cLUE%89_Vxrj}I-2H7q}<
z<{+xZAtn;6mC<+z+Wo>D@4Hi2w|_CqmqHOrw3vf{l?lOz60>U{+))+&?ql!z!a=U(
z)igB3llI4ptH)9F0St>js+*d2`spl?o~tgNp~!`}0Q?aMND%x{<McGm*4EkD5{y-t
zxh}EDa+7+?QN|n6FeDNZ9K02h2GmcIph%@YXwo(}H?I~Uo+-+&xy;KTgO#0o)oS%1
z;DkDzjt+-Lx!mqb_(?WnM`e)bldJQuw=~8v&Z;=*hzNT(RWvlBGKByL)LiYwi$oP4
z<hYWzbaVYiN=enI@#qhgL1Z%n9&OJz$Ke2a))C2Y^70d2P)LwszrQ{{o{VhU>|Zvk
zy(KYSJwWm_af|ERjGsFvEV1zoHWVha_|2Tl;Va+k3o8Rr^_FnM%qZ9_nSZZM-msFa
hmqR|D!S3<?@5^_poh@cn%QO`Hw)+P7T=I%K`aec3`_TXZ

literal 0
HcmV?d00001

diff --git a/src/main/java/chylex/bettercontrols/BetterControlsMod.java b/src/main/java/chylex/bettercontrols/BetterControlsMod.java
new file mode 100644
index 0000000..09141bf
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/BetterControlsMod.java
@@ -0,0 +1,11 @@
+package chylex.bettercontrols;
+import chylex.bettercontrols.config.BetterControlsConfig;
+import net.fabricmc.api.ClientModInitializer;
+import net.fabricmc.loader.api.FabricLoader;
+
+public final class BetterControlsMod implements ClientModInitializer{
+	public static final BetterControlsConfig config = BetterControlsConfig.load(FabricLoader.getInstance().getConfigDir().resolve("BetterControls.json"));
+	
+	@Override
+	public void onInitializeClient(){}
+}
diff --git a/src/main/java/chylex/bettercontrols/config/BetterControlsConfig.java b/src/main/java/chylex/bettercontrols/config/BetterControlsConfig.java
new file mode 100644
index 0000000..e790bb5
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/config/BetterControlsConfig.java
@@ -0,0 +1,26 @@
+package chylex.bettercontrols.config;
+import net.minecraft.client.options.KeyBinding;
+import java.nio.file.Path;
+
+public final class BetterControlsConfig{
+	public static BetterControlsConfig load(final Path path){
+		return ConfigSerializer.deserialize(path).setPath(path);
+	}
+	
+	private Path path;
+	
+	BetterControlsConfig(){}
+	
+	private BetterControlsConfig setPath(final Path path){
+		this.path = path;
+		return this;
+	}
+	
+	public KeyBinding[] getAllKeyBindings(){
+		return new KeyBinding[0];
+	}
+	
+	public void save(){
+		ConfigSerializer.serialize(path, this);
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/config/ConfigSerializer.java b/src/main/java/chylex/bettercontrols/config/ConfigSerializer.java
new file mode 100644
index 0000000..fc50a7b
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/config/ConfigSerializer.java
@@ -0,0 +1,62 @@
+package chylex.bettercontrols.config;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.JsonDeserializationContext;
+import com.google.gson.JsonDeserializer;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParseException;
+import com.google.gson.JsonSerializationContext;
+import com.google.gson.JsonSerializer;
+import com.google.gson.stream.JsonReader;
+import com.google.gson.stream.JsonWriter;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.lang.reflect.Type;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.NoSuchFileException;
+import java.nio.file.Path;
+
+final class ConfigSerializer implements JsonSerializer<BetterControlsConfig>, JsonDeserializer<BetterControlsConfig>{
+	private static final Logger logger = LogManager.getLogger();
+	private static final Gson gson = new GsonBuilder().registerTypeAdapter(BetterControlsConfig.class, new ConfigSerializer()).setPrettyPrinting().create();
+	
+	private ConfigSerializer(){}
+	
+	@Override
+	public JsonElement serialize(final BetterControlsConfig cfg, final Type typeOfSrc, final JsonSerializationContext context){
+		final JsonObject obj = new JsonObject();
+		
+		return obj;
+	}
+	
+	@Override
+	public BetterControlsConfig deserialize(final JsonElement json, final Type typeOfT, final JsonDeserializationContext context) throws JsonParseException{
+		final BetterControlsConfig cfg = new BetterControlsConfig();
+		final JsonObject obj = json.getAsJsonObject();
+		
+		return cfg;
+	}
+	
+	static void serialize(final Path path, final BetterControlsConfig config){
+		try(final JsonWriter writer = gson.newJsonWriter(Files.newBufferedWriter(path, StandardCharsets.UTF_8))){
+			gson.getAdapter(BetterControlsConfig.class).write(writer, config);
+		}catch(final IOException e){
+			logger.error("Error saving BetterControls configuration file!", e);
+		}
+	}
+	
+	static BetterControlsConfig deserialize(final Path path){
+		try(final JsonReader jsonReader = new JsonReader(Files.newBufferedReader(path, StandardCharsets.UTF_8))){
+			return gson.getAdapter(BetterControlsConfig.class).read(jsonReader);
+		}catch(final FileNotFoundException | NoSuchFileException ignored){
+		}catch(final IOException e){
+			logger.error("Error reading BetterControls configuration file!", e);
+		}
+		
+		return new BetterControlsConfig();
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/config/Json.java b/src/main/java/chylex/bettercontrols/config/Json.java
new file mode 100644
index 0000000..7efb7d3
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/config/Json.java
@@ -0,0 +1,54 @@
+package chylex.bettercontrols.config;
+import chylex.bettercontrols.input.KeyBindingWithModifier;
+import chylex.bettercontrols.input.ModifierKey;
+import com.google.gson.JsonObject;
+import net.minecraft.client.util.InputUtil;
+
+final class Json{
+	private Json(){}
+	
+	static void setInt(final JsonObject obj, final String key, final int value){
+		obj.addProperty(key, Integer.valueOf(value));
+	}
+	
+	static int getInt(final JsonObject obj, final String key, final int defaultValue){
+		return obj.has(key) ? obj.get(key).getAsInt() : defaultValue;
+	}
+	
+	static void setFloat(final JsonObject obj, final String key, final float value){
+		obj.addProperty(key, Float.valueOf(value));
+	}
+	
+	static float getFloat(final JsonObject obj, final String key, final float defaultValue){
+		return obj.has(key) ? obj.get(key).getAsFloat() : defaultValue;
+	}
+	
+	static void setBool(final JsonObject obj, final String key, final boolean value){
+		obj.addProperty(key, Boolean.valueOf(value));
+	}
+	
+	static boolean getBool(final JsonObject obj, final String key, final boolean defaultValue){
+		return obj.has(key) ? obj.get(key).getAsBoolean() : defaultValue;
+	}
+	
+	private static final String KEY_SUFFIX = ".Key";
+	private static final String MOD_SUFFIX = ".Mod";
+	
+	static void writeKeyBinding(final JsonObject obj, final String key, final KeyBindingWithModifier keyBinding){
+		obj.addProperty(key + KEY_SUFFIX, keyBinding.getBoundKeyTranslationKey());
+		
+		if (keyBinding.getModifier() != null){
+			obj.addProperty(key + MOD_SUFFIX, Integer.valueOf(keyBinding.getModifier().id));
+		}
+	}
+	
+	static void readKeyBinding(final JsonObject obj, final String key, final KeyBindingWithModifier keyBinding){
+		if (obj.has(key + KEY_SUFFIX)){
+			keyBinding.setBoundKey(InputUtil.fromTranslationKey(obj.get(key + KEY_SUFFIX).getAsString()));
+		}
+		
+		if (obj.has(key + MOD_SUFFIX)){
+			keyBinding.setModifier(ModifierKey.getById(obj.get(key + MOD_SUFFIX).getAsInt()));
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java b/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
new file mode 100644
index 0000000..cc80a80
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/BetterControlsScreen.java
@@ -0,0 +1,104 @@
+package chylex.bettercontrols.gui;
+import chylex.bettercontrols.BetterControlsMod;
+import chylex.bettercontrols.gui.elements.KeyBindingWidget;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.Element;
+import net.minecraft.client.gui.screen.Screen;
+import net.minecraft.client.gui.screen.ScreenTexts;
+import net.minecraft.client.gui.screen.options.GameOptionsScreen;
+import net.minecraft.client.gui.widget.ButtonWidget;
+import net.minecraft.client.options.KeyBinding;
+import net.minecraft.client.util.InputUtil;
+import net.minecraft.client.util.math.MatrixStack;
+import net.minecraft.text.LiteralText;
+import org.lwjgl.glfw.GLFW;
+import java.util.ArrayList;
+import java.util.List;
+
+public class BetterControlsScreen extends GameOptionsScreen{
+	public static final LiteralText TITLE = new LiteralText("Better Controls");
+	
+	private static final int BOTTOM_PADDING = 3;
+	private static final int TEXT_PADDING_RIGHT = 4;
+	private static final int TITLE_MARGIN_TOP = 3;
+	private static final int ROW_HEIGHT = 22;
+	
+	private OptionListWidget optionsWidget;
+	private KeyBindingWidget editingKeyBinding;
+	private final List<KeyBindingWidget> allKeyBindings = new ArrayList<>();
+	
+	public BetterControlsScreen(final Screen parentScreen){
+		super(parentScreen, MinecraftClient.getInstance().options, TITLE);
+	}
+	
+	@Override
+	public void init(){
+		allKeyBindings.clear();
+		
+		final List<Element> elements = new ArrayList<>();
+		int y = 0;
+		
+		addButton(new ButtonWidget(width / 2 - 99, height - 29, 200, 20, ScreenTexts.DONE, btn -> client.openScreen(parent)));
+		addChild(optionsWidget = new OptionListWidget(21, height - 32, width, height, elements, y - TITLE_MARGIN_TOP + BOTTOM_PADDING));
+	}
+	
+	@Override
+	public void removed(){
+		BetterControlsMod.config.save();
+	}
+	
+	@Override
+	public void render(final MatrixStack matrices, final int mouseX, final int mouseY, final float delta){
+		renderBackground(matrices);
+		optionsWidget.render(matrices, mouseX, mouseY, delta);
+		drawCenteredText(matrices, textRenderer, title, width / 2, 8, (255 << 16) | (255 << 8) | 255);
+		super.render(matrices, mouseX, mouseY, delta);
+	}
+	
+	private void startEditingKeyBinding(final KeyBindingWidget widget){
+		if (editingKeyBinding != null){
+			editingKeyBinding.stopEditing();
+		}
+		
+		editingKeyBinding = widget;
+	}
+	
+	@Override
+	public boolean mouseClicked(final double mouseX, final double mouseY, final int button){
+		if (editingKeyBinding != null){
+			editingKeyBinding.bindAndStopEditing(InputUtil.Type.MOUSE.createFromCode(button));
+			onKeyBindingEditingFinished();
+			return true;
+		}
+		else{
+			return super.mouseClicked(mouseX, mouseY, button);
+		}
+	}
+	
+	@Override
+	public boolean keyPressed(final int keyCode, final int scanCode, final int modifiers){
+		if (editingKeyBinding != null){
+			if (keyCode == GLFW.GLFW_KEY_ESCAPE){
+				editingKeyBinding.bindAndStopEditing(InputUtil.UNKNOWN_KEY);
+			}
+			else{
+				editingKeyBinding.bindAndStopEditing(InputUtil.fromKeyCode(keyCode, scanCode));
+			}
+			
+			onKeyBindingEditingFinished();
+			return true;
+		}
+		else{
+			return super.keyPressed(keyCode, scanCode, modifiers);
+		}
+	}
+	
+	private void onKeyBindingEditingFinished(){
+		editingKeyBinding = null;
+		KeyBinding.updateKeysByCode();
+		
+		for(final KeyBindingWidget widget : allKeyBindings){
+			widget.updateKeyBindingText();
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/ControlsScreenPatcher.java b/src/main/java/chylex/bettercontrols/gui/ControlsScreenPatcher.java
new file mode 100644
index 0000000..8f1e7f0
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/ControlsScreenPatcher.java
@@ -0,0 +1,36 @@
+package chylex.bettercontrols.gui;
+import chylex.bettercontrols.mixin.AccessScreenButtons;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.Element;
+import net.minecraft.client.gui.screen.options.ControlsOptionsScreen;
+import net.minecraft.client.gui.widget.AbstractButtonWidget;
+import net.minecraft.client.gui.widget.ButtonWidget;
+import net.minecraft.client.gui.widget.OptionButtonWidget;
+import net.minecraft.client.options.Option;
+import java.util.List;
+
+public final class ControlsScreenPatcher{
+	private ControlsScreenPatcher(){}
+	
+	public static void onOpened(final ControlsOptionsScreen screen){
+		final AccessScreenButtons accessor = (AccessScreenButtons)screen;
+		
+		final List<? extends Element> children = screen.children();
+		final List<AbstractButtonWidget> buttons = accessor.getButtons();
+		
+		final AbstractButtonWidget autoJump = buttons
+			.stream()
+			.filter(it -> it instanceof OptionButtonWidget && ((OptionButtonWidget)it).getOption() == Option.AUTO_JUMP)
+			.findAny()
+			.orElse(null);
+		
+		if (autoJump != null){
+			children.remove(autoJump);
+			buttons.remove(autoJump);
+			
+			accessor.callAddButton(new ButtonWidget(autoJump.x, autoJump.y, autoJump.getWidth(), autoJump.getHeight(), BetterControlsScreen.TITLE.copy().append("..."), btn -> {
+				MinecraftClient.getInstance().openScreen(new BetterControlsScreen(screen));
+			}));
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/OptionListWidget.java b/src/main/java/chylex/bettercontrols/gui/OptionListWidget.java
new file mode 100644
index 0000000..29fdb13
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/OptionListWidget.java
@@ -0,0 +1,126 @@
+package chylex.bettercontrols.gui;
+import chylex.bettercontrols.gui.OptionListWidget.Entry;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.Drawable;
+import net.minecraft.client.gui.Element;
+import net.minecraft.client.gui.widget.AbstractButtonWidget;
+import net.minecraft.client.gui.widget.ElementListWidget;
+import net.minecraft.client.util.math.MatrixStack;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+public final class OptionListWidget extends ElementListWidget<Entry>{
+	public static final int ROW_WIDTH = 408;
+	public static final int ROW_PADDING = 2;
+	
+	public static final int COL2_W = (ROW_WIDTH / 2) - ROW_PADDING;
+	public static final int COL3_W = (ROW_WIDTH / 3) - ROW_PADDING;
+	public static final int COL4_W = (ROW_WIDTH / 4) - ROW_PADDING;
+	public static final int COL6_W = (ROW_WIDTH / 6) - ROW_PADDING;
+	
+	public static int col2(final int column){
+		return (column * ROW_WIDTH) / 2;
+	}
+	
+	public static int col3(final int column){
+		return (column * ROW_WIDTH) / 3;
+	}
+	
+	public static int col4(final int column){
+		return (column * ROW_WIDTH) / 4;
+	}
+	
+	public static int col6(final int column){
+		return (column * ROW_WIDTH) / 6;
+	}
+	
+	private static Offset getElementOffset(final Element element){
+		if (element instanceof Widget){
+			return new Offset(((Widget)element).getX(), ((Widget)element).getY());
+		}
+		else if (element instanceof AbstractButtonWidget){
+			return new Offset(((AbstractButtonWidget)element).x, ((AbstractButtonWidget)element).y);
+		}
+		else{
+			return new Offset(0, 0);
+		}
+	}
+	
+	public interface Widget extends Element, Drawable{
+		int getX();
+		int getY();
+		void setX(int x);
+		void setY(int y);
+	}
+	
+	private static final class Offset{
+		public final int x;
+		public final int y;
+		
+		private Offset(final int x, final int y){
+			this.x = x;
+			this.y = y;
+		}
+	}
+	
+	public OptionListWidget(final int top, final int bottom, final int width, final int height, final List<Element> widgets, final int innerHeight){
+		super(MinecraftClient.getInstance(), width, height, top, bottom, innerHeight);
+		addEntry(new Entry(widgets));
+	}
+	
+	@Override
+	protected int getRowLeft(){
+		return super.getRowLeft() - ROW_PADDING;
+	}
+	
+	@Override
+	public int getRowWidth(){
+		return ROW_WIDTH;
+	}
+	
+	@Override
+	protected int getScrollbarPositionX(){
+		return (width + ROW_WIDTH) / 2 + 4;
+	}
+	
+	protected static final class Entry extends ElementListWidget.Entry<Entry>{
+		private final List<Element> elements;
+		private final Map<Element, Offset> offsets;
+		
+		public Entry(final List<Element> elements){
+			this.elements = new ArrayList<>(elements);
+			this.offsets = elements.stream().collect(Collectors.toMap(Function.identity(), OptionListWidget::getElementOffset));
+		}
+		
+		@Override
+		public List<? extends Element> children(){
+			return Collections.unmodifiableList(elements);
+		}
+		
+		@Override
+		public void render(final MatrixStack matrices, final int index, final int y, final int x, final int entryWidth, final int entryHeight, final int mouseX, final int mouseY, final boolean hovered, final float tickDelta){
+			for(final Element element : elements){
+				final Offset offset = offsets.get(element);
+				
+				if (element instanceof AbstractButtonWidget){
+					final AbstractButtonWidget button = (AbstractButtonWidget)element;
+					button.x = x + offset.x;
+					button.y = y + offset.y;
+				}
+				else if (element instanceof Widget){
+					final Widget widget = (Widget)element;
+					widget.setX(x + offset.x);
+					widget.setY(y + offset.y);
+				}
+				
+				if (element instanceof Drawable){
+					((Drawable)element).render(matrices, mouseX, mouseY, tickDelta);
+				}
+			}
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/BooleanValueWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/BooleanValueWidget.java
new file mode 100644
index 0000000..6fe2315
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/BooleanValueWidget.java
@@ -0,0 +1,27 @@
+package chylex.bettercontrols.gui.elements;
+import it.unimi.dsi.fastutil.booleans.BooleanConsumer;
+import net.minecraft.client.gui.screen.ScreenTexts;
+import net.minecraft.client.gui.widget.ButtonWidget;
+
+public final class BooleanValueWidget extends ButtonWidget{
+	private final BooleanConsumer onChanged;
+	private boolean value;
+	
+	public BooleanValueWidget(final int x, final int y, final int width, final int height, final boolean currentValue, final BooleanConsumer onChanged){
+		super(x, y, width, height, currentValue ? ScreenTexts.ON : ScreenTexts.OFF, ignore -> {});
+		this.value = currentValue;
+		this.onChanged = onChanged;
+	}
+	
+	public BooleanValueWidget(final int x, final int y, final int width, final boolean currentValue, final BooleanConsumer onChanged){
+		this(x, y, width, 20, currentValue, onChanged);
+	}
+	
+	@Override
+	public void onPress(){
+		super.onPress();
+		value = !value;
+		setMessage(value ? ScreenTexts.ON : ScreenTexts.OFF);
+		onChanged.accept(value);
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/CycleButtonWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/CycleButtonWidget.java
new file mode 100644
index 0000000..67a144f
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/CycleButtonWidget.java
@@ -0,0 +1,36 @@
+package chylex.bettercontrols.gui.elements;
+import net.minecraft.client.gui.widget.ButtonWidget;
+import java.util.List;
+import java.util.function.Consumer;
+
+public class CycleButtonWidget<T> extends ButtonWidget{
+	private final List<Option<T>> options;
+	private final Consumer<T> onChanged;
+	private T selectedValue;
+	
+	public CycleButtonWidget(final int x, final int y, final int width, final int height, final List<Option<T>> options, final T selectedValue, final Consumer<T> onChanged){
+		super(x, y, width, height, Option.find(options, selectedValue).getText(), btn -> {});
+		this.options = options;
+		this.selectedValue = selectedValue;
+		this.onChanged = onChanged;
+	}
+	
+	public CycleButtonWidget(final int x, final int y, final int width, final List<Option<T>> options, final T selectedValue, final Consumer<T> onChanged){
+		this(x, y, width, 20, options, selectedValue, onChanged);
+	}
+	
+	@Override
+	public void onPress(){
+		int nextIndex = options.indexOf(Option.find(options, selectedValue)) + 1;
+		
+		if (nextIndex >= options.size()){
+			nextIndex = 0;
+		}
+		
+		final Option<T> newSelectedOption = options.get(nextIndex);
+		
+		selectedValue = newSelectedOption.getValue();
+		onChanged.accept(selectedValue);
+		setMessage(newSelectedOption.getText());
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/DiscreteValueSliderWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/DiscreteValueSliderWidget.java
new file mode 100644
index 0000000..e1e40d8
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/DiscreteValueSliderWidget.java
@@ -0,0 +1,41 @@
+package chylex.bettercontrols.gui.elements;
+import net.minecraft.client.gui.widget.SliderWidget;
+import net.minecraft.util.math.MathHelper;
+import java.util.List;
+import java.util.function.Consumer;
+
+public final class DiscreteValueSliderWidget<T> extends SliderWidget{
+	private final List<Option<T>> options;
+	private final Consumer<T> onChanged;
+	private T selectedValue;
+	
+	public DiscreteValueSliderWidget(final int x, final int y, final int width, final int height, final List<Option<T>> options, final T selectedValue, final Consumer<T> onChanged){
+		super(x, y, width, height, Option.find(options, selectedValue).getText(), options.indexOf(Option.find(options, selectedValue)) / (options.size() - 1.0));
+		this.options = options;
+		this.selectedValue = selectedValue;
+		this.onChanged = onChanged;
+	}
+	
+	public DiscreteValueSliderWidget(final int x, final int y, final int width, final List<Option<T>> options, final T selectedValue, final Consumer<T> onChanged){
+		this(x, y, width, 20, options, selectedValue, onChanged);
+	}
+	
+	public Option<T> getSelectedOption(){
+		return options.get(MathHelper.floor(MathHelper.clampedLerp(0.0, options.size() - 1.0, value)));
+	}
+	
+	@Override
+	protected void updateMessage(){
+		setMessage(getSelectedOption().getText());
+	}
+	
+	@Override
+	protected void applyValue(){
+		final T newSelectedValue = getSelectedOption().getValue();
+		
+		if (selectedValue != newSelectedValue){
+			selectedValue = newSelectedValue;
+			onChanged.accept(newSelectedValue);
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
new file mode 100644
index 0000000..8e9e88b
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/KeyBindingWidget.java
@@ -0,0 +1,89 @@
+package chylex.bettercontrols.gui.elements;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.widget.AbstractButtonWidget;
+import net.minecraft.client.gui.widget.ButtonWidget;
+import net.minecraft.client.options.KeyBinding;
+import net.minecraft.client.util.InputUtil;
+import net.minecraft.text.LiteralText;
+import net.minecraft.text.MutableText;
+import net.minecraft.text.Text;
+import net.minecraft.text.TranslatableText;
+import net.minecraft.util.Formatting;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.function.Consumer;
+
+public final class KeyBindingWidget extends ButtonWidget{
+	private final KeyBinding binding;
+	private final Text bindingName;
+	
+	private final List<AbstractButtonWidget> linkedButtons = new ArrayList<>(1);
+	
+	private final Consumer<KeyBindingWidget> onEditingStarted;
+	private boolean isEditing;
+	
+	public KeyBindingWidget(final int x, final int y, final int width, final int height, final KeyBinding binding, final Consumer<KeyBindingWidget> onEditingStarted){
+		super(x, y, width, height, LiteralText.EMPTY, btn -> {});
+		this.binding = binding;
+		this.bindingName = new TranslatableText(binding.getTranslationKey());
+		this.onEditingStarted = onEditingStarted;
+		updateKeyBindingText();
+	}
+	
+	public KeyBindingWidget(final int x, final int y, final int width, final KeyBinding binding, final Consumer<KeyBindingWidget> onEditingStarted){
+		this(x, y, width, 20, binding, onEditingStarted);
+	}
+	
+	public void linkButtonToBoundState(final AbstractButtonWidget button){
+		linkedButtons.add(button);
+		button.active = !binding.isUnbound();
+	}
+	
+	@Override
+	protected MutableText getNarrationMessage(){
+		return binding.isUnbound() ? new TranslatableText("narrator.controls.unbound", bindingName) : new TranslatableText("narrator.controls.bound", bindingName, super.getNarrationMessage());
+	}
+	
+	@Override
+	public void onPress(){
+		isEditing = true;
+		onEditingStarted.accept(this);
+		updateKeyBindingText();
+	}
+	
+	public void bindAndStopEditing(final InputUtil.Key key){
+		binding.setBoundKey(key);
+		stopEditing();
+		
+		for(final AbstractButtonWidget button : linkedButtons){
+			button.active = !binding.isUnbound();
+		}
+	}
+	
+	public void stopEditing(){
+		isEditing = false;
+		updateKeyBindingText();
+	}
+	
+	public void updateKeyBindingText(){
+		boolean hasConflict = false;
+		
+		if (!binding.isUnbound()){
+			for(final KeyBinding other : MinecraftClient.getInstance().options.keysAll){
+				if (binding != other && binding.equals(other)){
+					hasConflict = true;
+				}
+			}
+		}
+		
+		if (isEditing){
+			setMessage((new LiteralText("> ")).append(binding.getBoundKeyLocalizedText().shallowCopy().formatted(Formatting.YELLOW)).append(" <").formatted(Formatting.YELLOW));
+		}
+		else if (hasConflict){
+			setMessage(binding.getBoundKeyLocalizedText().shallowCopy().formatted(Formatting.RED));
+		}
+		else{
+			setMessage(binding.isUnbound() ? Text.of("(No Binding)") : binding.getBoundKeyLocalizedText());
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/Option.java b/src/main/java/chylex/bettercontrols/gui/elements/Option.java
new file mode 100644
index 0000000..d6af432
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/Option.java
@@ -0,0 +1,26 @@
+package chylex.bettercontrols.gui.elements;
+import net.minecraft.text.Text;
+import java.util.List;
+import java.util.Objects;
+
+public final class Option<T>{
+	private final T value;
+	private final Text text;
+	
+	public Option(final T value, final Text text){
+		this.value = value;
+		this.text = text;
+	}
+	
+	public T getValue(){
+		return value;
+	}
+	
+	public Text getText(){
+		return text;
+	}
+	
+	public static <T> Option<T> find(final List<Option<T>> options, final T value){
+		return options.stream().filter(it -> Objects.equals(it.value, value)).findFirst().orElseGet(() -> options.get(0));
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/gui/elements/TextWidget.java b/src/main/java/chylex/bettercontrols/gui/elements/TextWidget.java
new file mode 100644
index 0000000..61c00e9
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/gui/elements/TextWidget.java
@@ -0,0 +1,73 @@
+package chylex.bettercontrols.gui.elements;
+import chylex.bettercontrols.gui.OptionListWidget.Widget;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.font.TextRenderer;
+import net.minecraft.client.gui.DrawableHelper;
+import net.minecraft.client.util.math.MatrixStack;
+import net.minecraft.text.OrderedText;
+import net.minecraft.text.Text;
+import java.util.List;
+
+public final class TextWidget extends DrawableHelper implements Widget{
+	public static final int LEFT = 0;
+	public static final int CENTER = 1;
+	
+	private final Text text;
+	private int x;
+	private int y;
+	private final int width;
+	private final int height;
+	private final int align;
+	
+	public TextWidget(final int x, final int y, final int width, final int height, final Text text, final int align){
+		this.x = x;
+		this.y = y;
+		this.width = width;
+		this.height = height;
+		this.text = text;
+		this.align = align;
+	}
+	
+	public TextWidget(final int x, final int y, final int width, final Text text, final int align){
+		this(x, y, width, 20, text, align);
+	}
+	
+	public TextWidget(final int x, final int y, final int width, final Text text){
+		this(x, y, width, 20, text, LEFT);
+	}
+	
+	@Override
+	public int getX(){
+		return x;
+	}
+	
+	@Override
+	public int getY(){
+		return y;
+	}
+	
+	@Override
+	public void setX(final int x){
+		this.x = x;
+	}
+	
+	@Override
+	public void setY(final int y){
+		this.y = y;
+	}
+	
+	@Override
+	public void render(final MatrixStack matrices, final int mouseX, final int mouseY, final float delta){
+		final TextRenderer textRenderer = MinecraftClient.getInstance().textRenderer;
+		final List<OrderedText> lines = textRenderer.wrapLines(text, width);
+		final int lineHeight = textRenderer.fontHeight + 1;
+		
+		final int finalX = align == CENTER ? x + (width / 2) - (lines.stream().mapToInt(textRenderer::getWidth).max().orElse(0) / 2) : x;
+		final int finalY = y + (height / 2) - (lineHeight * lines.size() / 2) + 1;
+		
+		for(int i = 0; i < lines.size(); i++){
+			final OrderedText line = lines.get(i);
+			textRenderer.drawWithShadow(matrices, line, finalX, finalY + (i * lineHeight), (255 << 16) | (255 << 8) | 255);
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/input/KeyBindingWithModifier.java b/src/main/java/chylex/bettercontrols/input/KeyBindingWithModifier.java
new file mode 100644
index 0000000..4247d07
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/input/KeyBindingWithModifier.java
@@ -0,0 +1,33 @@
+package chylex.bettercontrols.input;
+import net.minecraft.client.options.KeyBinding;
+import net.minecraft.client.util.InputUtil.Type;
+import org.jetbrains.annotations.Nullable;
+
+public class KeyBindingWithModifier extends KeyBinding{
+	public static final String CATEGORY = "key.categories.bettercontrols";
+	
+	@Nullable
+	private ModifierKey modifier = null;
+	
+	public KeyBindingWithModifier(final String translationKey){
+		super(translationKey, Type.KEYSYM, -1, CATEGORY);
+	}
+	
+	public void setModifier(final @Nullable ModifierKey modifier){
+		this.modifier = modifier;
+	}
+	
+	public @Nullable ModifierKey getModifier(){
+		return modifier;
+	}
+	
+	@Override
+	public boolean isPressed(){
+		return super.isPressed() && (modifier == null || modifier.isPressed());
+	}
+	
+	@Override
+	public boolean wasPressed(){
+		return super.wasPressed() && (modifier == null || modifier.isPressed());
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/input/ModifierKey.java b/src/main/java/chylex/bettercontrols/input/ModifierKey.java
new file mode 100644
index 0000000..1635b99
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/input/ModifierKey.java
@@ -0,0 +1,42 @@
+package chylex.bettercontrols.input;
+import net.minecraft.client.gui.screen.Screen;
+
+public enum ModifierKey{
+	CONTROL(0){
+		@Override
+		public boolean isPressed(){
+			return Screen.hasControlDown();
+		}
+	},
+	
+	SHIFT(1){
+		@Override
+		public boolean isPressed(){
+			return Screen.hasShiftDown();
+		}
+	},
+	
+	ALT(2){
+		@Override
+		public boolean isPressed(){
+			return Screen.hasAltDown();
+		}
+	};
+	
+	public final int id;
+	
+	ModifierKey(final int id){
+		this.id = id;
+	}
+	
+	public abstract boolean isPressed();
+	
+	public static ModifierKey getById(final int id){
+		switch(id){
+			case 0: return CONTROL;
+			case 1: return SHIFT;
+			case 2: return ALT;
+			default: return null;
+		}
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/mixin/AccessKeyBindingFields.java b/src/main/java/chylex/bettercontrols/mixin/AccessKeyBindingFields.java
new file mode 100644
index 0000000..c1b4499
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/mixin/AccessKeyBindingFields.java
@@ -0,0 +1,13 @@
+package chylex.bettercontrols.mixin;
+import net.minecraft.client.options.KeyBinding;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.gen.Accessor;
+import java.util.Map;
+
+@Mixin(KeyBinding.class)
+public interface AccessKeyBindingFields{
+	@Accessor
+	static Map<String, Integer> getCategoryOrderMap(){
+		throw new AssertionError();
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/mixin/AccessScreenButtons.java b/src/main/java/chylex/bettercontrols/mixin/AccessScreenButtons.java
new file mode 100644
index 0000000..8493d07
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/mixin/AccessScreenButtons.java
@@ -0,0 +1,16 @@
+package chylex.bettercontrols.mixin;
+import net.minecraft.client.gui.screen.Screen;
+import net.minecraft.client.gui.widget.AbstractButtonWidget;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.gen.Accessor;
+import org.spongepowered.asm.mixin.gen.Invoker;
+import java.util.List;
+
+@Mixin(Screen.class)
+public interface AccessScreenButtons{
+	@Accessor
+	List<AbstractButtonWidget> getButtons();
+	
+	@Invoker
+	<T extends AbstractButtonWidget> T callAddButton(T button);
+}
diff --git a/src/main/java/chylex/bettercontrols/mixin/HookLoadGameOptions.java b/src/main/java/chylex/bettercontrols/mixin/HookLoadGameOptions.java
new file mode 100644
index 0000000..774ec1a
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/mixin/HookLoadGameOptions.java
@@ -0,0 +1,34 @@
+package chylex.bettercontrols.mixin;
+import chylex.bettercontrols.BetterControlsMod;
+import chylex.bettercontrols.input.KeyBindingWithModifier;
+import net.minecraft.client.options.GameOptions;
+import net.minecraft.client.options.KeyBinding;
+import org.apache.commons.lang3.ArrayUtils;
+import org.spongepowered.asm.mixin.Final;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.Mutable;
+import org.spongepowered.asm.mixin.Shadow;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(GameOptions.class)
+public abstract class HookLoadGameOptions{
+	private boolean hasLoaded = false;
+	
+	@Mutable
+	@Final
+	@Shadow
+	public KeyBinding[] keysAll;
+	
+	@Inject(method = "load()V", at = @At("HEAD"))
+	private void load(final CallbackInfo info){
+		if (hasLoaded){
+			return;
+		}
+		
+		hasLoaded = true;
+		keysAll = ArrayUtils.addAll(keysAll, BetterControlsMod.config.getAllKeyBindings());
+		AccessKeyBindingFields.getCategoryOrderMap().put(KeyBindingWithModifier.CATEGORY, Integer.valueOf(Integer.MAX_VALUE));
+	}
+}
diff --git a/src/main/java/chylex/bettercontrols/mixin/HookOpenScreen.java b/src/main/java/chylex/bettercontrols/mixin/HookOpenScreen.java
new file mode 100644
index 0000000..86657c0
--- /dev/null
+++ b/src/main/java/chylex/bettercontrols/mixin/HookOpenScreen.java
@@ -0,0 +1,22 @@
+package chylex.bettercontrols.mixin;
+import chylex.bettercontrols.gui.ControlsScreenPatcher;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.screen.Screen;
+import net.minecraft.client.gui.screen.options.ControlsOptionsScreen;
+import org.spongepowered.asm.mixin.Mixin;
+import org.spongepowered.asm.mixin.injection.At;
+import org.spongepowered.asm.mixin.injection.Inject;
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
+
+@Mixin(MinecraftClient.class)
+public abstract class HookOpenScreen{
+	@Inject(method = "openScreen(Lnet/minecraft/client/gui/screen/Screen;)V", at = @At("TAIL"))
+	private void openScreen(final Screen ignore, final CallbackInfo ci){
+		final MinecraftClient mc = MinecraftClient.getInstance();
+		final Screen screen = mc.currentScreen;
+		
+		if (screen != null && screen.getClass() == ControlsOptionsScreen.class && !Screen.hasAltDown()){
+			ControlsScreenPatcher.onOpened((ControlsOptionsScreen)screen);
+		}
+	}
+}
diff --git a/src/main/resources/assets/bettercontrols/icon.png b/src/main/resources/assets/bettercontrols/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..a31f768115ea33b164455deacbed0bc06f21470d
GIT binary patch
literal 21941
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
DzK4Jx

literal 0
HcmV?d00001

diff --git a/src/main/resources/assets/bettercontrols/lang/en_us.json b/src/main/resources/assets/bettercontrols/lang/en_us.json
new file mode 100644
index 0000000..f4fb070
--- /dev/null
+++ b/src/main/resources/assets/bettercontrols/lang/en_us.json
@@ -0,0 +1,3 @@
+{
+  "key.categories.bettercontrols": "Better Controls"
+}
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
new file mode 100644
index 0000000..63e02f1
--- /dev/null
+++ b/src/main/resources/fabric.mod.json
@@ -0,0 +1,36 @@
+{
+  "schemaVersion": 1,
+  "id": "bettercontrols",
+  "version": "${version}",
+  
+  "name": "Better Controls",
+  "description": "Adds many powerful key bindings and options to control your movement.\nThe features complement vanilla mechanics without giving unfair advantages, so server use should be fine.\nTo configure the mod, open Options - Controls - Better Controls. If you want to see the vanilla Controls screen, hold Alt while opening it.",
+  "icon": "assets/bettercontrols/icon.png",
+  "license": "MPL-2.0",
+  
+  "authors": [ "chylex" ],
+  "contact": {
+    "homepage": "",
+    "sources": "https://github.com/chylex/Better-Controls",
+    "issues": "https://github.com/chylex/Better-Controls/issues"
+  },
+  
+  "environment": "client",
+  "entrypoints": {
+    "client": [ "chylex.bettercontrols.BetterControlsMod" ]
+  },
+  
+  "mixins": [{
+    "config": "mixins.json",
+    "environment": "client"
+  }],
+  
+  "depends": {
+    "fabricloader": ">=0.7.4",
+    "minecraft": "1.16.x"
+  },
+  
+  "custom": {
+    "modmenu:clientsideOnly": true
+  }
+}
diff --git a/src/main/resources/mixins.json b/src/main/resources/mixins.json
new file mode 100644
index 0000000..70c7709
--- /dev/null
+++ b/src/main/resources/mixins.json
@@ -0,0 +1,15 @@
+{
+  "required": true,
+  "minVersion": "0.8",
+  "package": "chylex.bettercontrols.mixin",
+  "compatibilityLevel": "JAVA_8",
+  "mixins": [
+    "AccessKeyBindingFields",
+    "AccessScreenButtons",
+    "HookLoadGameOptions",
+    "HookOpenScreen"
+  ],
+  "injectors": {
+    "defaultRequire": 1
+  }
+}