From cdb65e5a774ba0a77606b610710245d3194e618b Mon Sep 17 00:00:00 2001 From: Ben Lye Date: Wed, 4 Sep 2019 21:32:19 +0100 Subject: [PATCH] Add support for macOS (#9) --- linux/flash-multi | 60 ++++++++++++++++++++++++++++------ linux/tools/macos/dfu-util | Bin 0 -> 53172 bytes linux/tools/macos/maple-reset | Bin 0 -> 9444 bytes linux/tools/macos/stm32flash | Bin 0 -> 70448 bytes 4 files changed, 50 insertions(+), 10 deletions(-) create mode 100755 linux/tools/macos/dfu-util create mode 100755 linux/tools/macos/maple-reset create mode 100755 linux/tools/macos/stm32flash diff --git a/linux/flash-multi b/linux/flash-multi index 20c4bf0..ff0baa4 100755 --- a/linux/flash-multi +++ b/linux/flash-multi @@ -1,4 +1,5 @@ #!/bin/bash +shopt -s extglob # ********************************************************************* # Copyright (C) 2019 Ben Lye @@ -21,9 +22,9 @@ VERSION=0.1.6 # Write the script header -printf "flash-multi $VERSION\n\nThis program is Free Sofware and has NO WARRANTY.\nhttps://github.com/benlye/flash-multi/\n\n"; +printf "flash-multi $VERSION\n\nThis program is Free Software and has NO WARRANTY.\nhttps://github.com/benlye/flash-multi/\n\n"; -# Prepare simple help text to disply when needed +# Prepare simple help text to display when needed USAGE="Usage: flash-multi -f [firmware file] -p [serial device]\n\n" # Get the command line options @@ -60,13 +61,42 @@ if [ ! -r "$FWFILE" ]; then exit 2; fi +function list_usb() +{ +while IFS=: read key value; do + key="${key##+( )}" + value="${value##+( )}" + case "$key" in + "Product ID") + p="${value% *}" + ;; + "Vendor ID") + v="${value%% *}" + ;; + "Manufacturer") + m="${value}" + ;; + "Location ID") + l="${value}" + printf "%s:%s %s (%s)\n" "$v" "$p" "$l" "$m" + ;; + esac +done < <( system_profiler SPUSBDataType ) +} + # Check to see if a native STM32 USB device (Maple device) is attached -MAPLE_USB_DEVICES=$(lsusb |grep "1eaf" | awk '{ print $NF}') +uname -a | grep "Darwin" 2>&1 1>/dev/null +if [ $? -eq 0 ]; then + MAPLE_USB_DEVICES=$(echo "$(list_usb)" | grep "1eaf" | awk '{ print $1}') +else + MAPLE_USB_DEVICES=$(lsusb | grep "1eaf" | awk '{ print $NF}') +fi + case $MAPLE_USB_DEVICES in - "1eaf:0003") + ?(0x)1eaf:?(0x)0003) MAPLE_DEVICE=DFU ;; - "1eaf:0004") + ?(0x)1eaf:?(0x)0004) MAPLE_DEVICE=Native ;; *) @@ -98,11 +128,21 @@ DIR=$(dirname "$0") BOOTLOADERFILE="$DIR/bootloader/StmMulti4in1.bin" # Determine the binaries to use based on the platform architecture -uname -m | grep "x86_64" 2>&1 1>/dev/null +uname -a | grep "Darwin" 2>&1 1>/dev/null if [ $? -eq 0 ]; then - TOOLS_DIR="$DIR/tools/64bit" + TOOLS_DIR="$DIR/tools/macos" + GREP_ARGS="" + STAT_ARGS="-f %z" else - TOOLS_DIR="$DIR/tools/32bit" + uname -m | grep "x86_64" 2>&1 1>/dev/null + if [ $? -eq 0 ]; then + TOOLS_DIR="$DIR/tools/64bit" + else + TOOLS_DIR="$DIR/tools/32bit" + fi + + GREP_ARGS="-Pa" + STAT_ARGS="--printf=%s" fi STM32_FLASH="$TOOLS_DIR/stm32flash" @@ -110,7 +150,7 @@ RESET_UTIL="$TOOLS_DIR/maple-reset" DFU_UTIL="$TOOLS_DIR/dfu-util" # Determine if the specified firmware file contains support for the STM32 USB port -if grep -q -Pa 'M\x00a\x00p\x00l\x00e\x00\x12\x03L\x00e\x00a\x00f\x00L\x00a\x00b\x00s' "$FWFILE"; then +if grep -q $GREP_ARGS 'M\x00a\x00p\x00l\x00e\x00\x12\x03L\x00e\x00a\x00f\x00L\x00a\x00b\x00s' "$FWFILE"; then HAS_USB_SUPPORT=true; MAX_FILE_SIZE=120832 FLASH_START=8 @@ -123,7 +163,7 @@ else fi # Check if the firmware will fit -FWFILE_SIZE=`stat --printf="%s" "$FWFILE"` +FWFILE_SIZE=`stat $STAT_ARGS "$FWFILE"` if [ $FWFILE_SIZE -gt $MAX_FILE_SIZE ]; then printf "ERROR: Firmware file is too large. File is $FWFILE_SIZE, maximum is $MAX_FILE_SIZE.\n\n"; exit 2; diff --git a/linux/tools/macos/dfu-util b/linux/tools/macos/dfu-util new file mode 100755 index 0000000000000000000000000000000000000000..895bb2378320c1b8107702f71d95a36fd116b222 GIT binary patch literal 53172 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%0AZh21hpAAo=>cuO{XVEr_N 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�$)K@p>kD~ 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 S!HR!%@Kq#Xw}9yRi~JuFwa~Nx literal 0 HcmV?d00001 diff --git a/linux/tools/macos/maple-reset b/linux/tools/macos/maple-reset new file mode 100755 index 0000000000000000000000000000000000000000..5a38c6c1f8734512dfc64747aa3e901bbf158e0f GIT binary patch literal 9444 zcmeHNU2GKB6}}60F$A(EB}so0WePDhRclOJBueGh4jvdQ0UZA{(8`&tcW3P-`#a?D)bFZo`>9=8LQCOY5qU1dP}e)u1073ET>t8&Iw3J)69~txw9s|S=(8w!CCE2j zg_pt5r3!DHSc;yaLJW9<*XnxC%6I1$R6)L9uJic(kbUesR7t*1NrlI!_ZrEpVL}(= zo0EKRNPA-DeW5IiFPgK=M7l>B1o_79_u^CJBoLRDCEOU$^?dqpA|2Bc>3GJ)OXuSh z767R@=PblQ4sXP3Ij_TT(Dmk~j;4|k%%2;QKd*tF^NKaMFgLoMPU^WMsqRct&syfk z^7%AeAN2PN^I!Vvy55s1StiT)s^QQ0J|hW;gM16mf{m^xBln80R`O*fA8{!k-}lpU zjGeA`=N4Dp^8AfUzSa_-Qa(4gC1Z>G^r@D8PpZu={(@Bk^8n0pO>PRtRm!yy-+_7> zC_-TCh${34(EH^%1^XCa#}|a?MbEXt98Lm%4*jJ~LR5!@xDT=)J8f7wN923}_2Wt_ z{6V#>aBdaUwWwS3Idf|=(Y-ZxBpCx{`8+D)IKIbenI8JqAI5&S_GhP^cdk7S9a1U8 zx;1Y7l8>oFsm1%!Z-xPv6h3DMD#sXm#aEfJ(BiZ4{PrU`%ShEdQHMAZ-7rGgjLPRt z;3e2^k(l`@mvRQm8TkKZpi{H|q78nOJ;P0_Ih9|=2TpT@W~+0W-9Mo@{S%X-@F(nL zyK)?3gLCuYqulIM>Pbdc{2Tp78a9N4DA+L5Mz;6C&S^M=)>hvryb0wpuT$_k!|$^; zQrQB-cQnZMd)i3U--G(H4fh#oD;))kB5i&4T4_9>p&I$@$aEMrXGJh6#mUc zd+$j{J*heCR)JP?R%=e@oc4|PZFMw!bT#}ObyORCH`{f-@Dg4v9)7G@2$|n%M)aT# zKd0eo2K7@|I1RfY+Uo7XcYv7j!FQ{>&c{*e!jBDsanV0+&z(JFRW#an@Mg1dTfOBp zRKXjQQv+u=!Tk1ODsBK5HlmqQZAbp>Ap++ zE0)Cn?_m5lFz1MWO@R77Qm-nZ{%_-N#5(VF2{r zf97cC`PRX%&5bW-ypT82QG<3C4Qg^2TXfH4jkKrZR(b@LrL@O<3jTlh>*!fe;Qy8^ zl(}rz;_ugLR9O}TUvaO#3SU|}JRti=WWQPV^|Ie7`)1kill=kNcgsF0`xj+DAp2vo zzgH~fv2q5=87OC*o&a3N4 z^m#qn`@G(hkC-v>v{^ms>0^dzW`z$jd5eJ8Z|?QE-i;e&Tz3y##_5e)LZdPavo^pS z$3cl06=ps35!~e`ETSDi(PSoP5HteBv$*uO;)EJtA``V-w^o3Zk&0%IaOeOK&qXLd z2N`$nX2vAyC0d}!0$I^`GN0?^V4n+n3@c*csu_xbkgLJbjjtJ|CZ9_h2HsSdqlAae zgv9{e64LRTgi1Zts~derG;bNW^N%nI-)2DG`Hl>c-9^U$$${QUsF62R92`0oLX<2Uz?nn!Oq%5r~C z!`WDm%6o7A1^^Q-9z^BbJdDZ%SKi;FG-4_RQtjTK|F2vMeqFG9U3&XVu0`ElhVI_+ zHCUZofI51v#wDKvchfG>cpnH?<$W7G(fu;``&#bkg}p3yvA=)4o$K#ef445|QwaVJ eh3Iche^1KIxaDq68xnrBw_e7ZS~_xj?X{CT15h zj9Y0dRa>pJwQ8$vsZ~Uam>?yoQjLmATUvusoo%twN)<1a_xpX$nc3ZB0sCv;&-?z- zft@**=XRd+oabEToXPVazWvE?!$=us811QsVH}HJHxj~zA0fl|EPg@!N=l0IFAjV; zF#j^9CSECt(WEibX$6Clk_CZ<3lc#DzdJF_&~b=j`0(SCS4l~8MQgJPt9T;4_7Nxy zGQPb^!7!c{181Z?K3Y=J)ZDV9$x9k6-^ptgy+3IPH|`>&YkEiN1Vyi;s-mW$q7i9> z>Fw9_Zq`a;oO<`JA@Y?qH8)n*E!6;n=`Fim$(Q#z1;BXxl|UOAB_(C`bxkn^4yM=r z3q{Ybi7=j^zj)$8ucdBzbzON$bzNn>#1rddK-0TM<1v1?tE8l&s-&{9w6;P)4VEwO zVI^NT>XjGcu-!vmw7WjByMp`$`Eg*~ijI+`(-4@iEly67{#HN6}lO8xrG( z*I#*Qb7_ph;QH|QDS8XFe2gESURix@ZGD|faWK8s-za)rE&!hK<<)Gw+>(+dO);-B zw0@0e6uop0R1FykdP`EBRN zhA}@$*0D(Q<97^xlUkY@C)HFhnN+@_rW|ozpU01K?0vWS4{!f@%B4T6dgiu!%1@g% z8fjVh8N)N>$G&1Ceyr=W@%#V!a{Hqr$-#0@$B$*C&W)6Nc#G)*`nY06Q*%Y_#90%e zm+B=1GK@3uWBC{FGz{A2Svt=8`rq|G4g607|I@(#H1Pjl4P0jgtv?4l_v{PWZRx>C zOP2Lv=a!V7*M|jD{t>iZ_-k6QvnM^+d7jbo9z)J}3>d6l=k8U8v40J&VxVtC-wQHr z2ZC11zC}+n*}Iq@?A+@|_C91g!HzbE+Au@t#0@Y7;}*x^P|^x~9OZDKH}EkD+JTRQ zom>5jp030-(L61LG{eyJvWL<;0l7gt;Fz1!J3g3!h#6+5rm00a8QRQb@N}GWA%D;c z3_zR#qycuC$`Wx%1`KuvtzO97@0f(P5w~0VgVq-3D#%A^zmSMC5VQ-O;8}eHnWjKg zA+i@eJxKnTKCI%H5Ux%fFdA_3L7iOA)LfkPwT6+42$ZKw#z=CV4dORcUkS>&5p-h8 z`P|Au$_br_d?;nW+#F2l_<&p!m3zMAvo4`hA8QY)K)HG(D4Kj8>h5=b9Zu9FXHh7l zrzWu{*h`UXPC={K3HAmC0EepFL3-c+Y$#38M?graWS*d7PV_}4M{=y8#AXa3_6ZAmIAZOJSl&=#Z+8xs>|aMBHc=6K zpC)Jf&iEN0)0NV))*H^nponS*5R|z!iov@PWh8b}u&6~Qo1qrmy=q^%lrguO#}goY zMD1&dLQ10BemY2^M{kaks5^Qch>9>BZQBtv%m^LHMh0P%2ZHvTY*gBTae?i2alf_g z;0sc7`Q~li`RxNK`R0ahE3hMaJi#Ny19sbXxESYtM3MZ|x|J!0vjq&Tz^14Vx)e^H z&k9WyE`b5NHQo88;y4hr3gM^F`0NY>@j%pi-U@7VQa~vB6e{E?|M!O*&UJ{|Z9A;M zBh~>p+9LX>JlDTw1vk6XRjch|yX|A=Y1(7w)~w|I*dL7ewo2O`vE(7h+xD^5g6^Og zhIn4k+J>5J>oAOb(Tf$>TVQo7-|n_|D9Lv^5Q8?&_rPWp24*i4D~2K?Mv{0WFkrRq zFR%mq;h916t#&5n9)t~}>l&~EyBt<>&>r#fgM4HJ?cxK$^Iot5JI!zga_qoP@P#{e z9tLV$dGp*pY@c*eXl5exn}D(cdpg?o02y`56$-SY`^nJuwF(nhYwi$*zcI+)0CK|hdgj5y7V4j4IP*>+6 zu{W@v(z$~K&*AT4F_bCyp&g-Xr7cZH5uu>F1i!7%3SR@Kh4jxNU5_ZN@Is_HZ-2)1 zNFnk2_hQu1kvo-*1(z8*6L&~bhXlwK*BeOpVf)tpSTbOfeI2=mhjw`?mN9ZqW84gL zWC0qD5949^UgE>{ZI@WMNCXSo5e5!ko(_PYFsCE;9z1xNVRk<#O`4R(_eJ3dqw-lo ziC!@OYfw#iE=WY*KvyhYz})Ox2LRm>Oa_f7NDhL0U+_j;B9A#)K|A+c31%NeL)f7Z zLRGBn&Avr363Pm8pk$Eg*SNRmUVvOg#*nV<`v6O)K|60G2)>En!Tw;c?{|7R)d~k8 z9hgrekmdWW!1}gHES%?RfdQq3dzsUbdnX>eJS}|EA-qm~fDdY+Qz%gjGux+E9`T(aG^aa{03tdaLP}MERI!kP{o1~V z*HZ!(=sG}IVLuBb(nWml{Tz9g?^Xfvb@5?^M*@H&oCpI-dzH-T$h{g5UY_>4+ezE^ z+I@UbdjX+DX8-ysnVm>x_Z;sD=G)627rqk?)mb;nwWrY8pbD{nq3GS}(mUx%fP>h2 zA(lmA^Fa)d>jaVo#0b!a(eaT75zqx$Po@JBy-?74)R55H0~{Fi2W^#Ot7Kb}m5%3u zLjer56%6w`4nQ18zaLm;$d5350qE!42YoqrzI*VXZU)lEyN^@(=H{Fkz;?bg9dXNd zHg(&Pdm0|R^g!@i1dimqOOHbTV*647U~VX)&VF+PQ(Fe?E7Ln(XTwnAODnuj1i1() zz#Es;us(l+H?H*_MB4?{TGHk5*;^ZWKT2`DSvfS%*QVGBmM^+515bTkFwSd zfUxz99g$~vmttcnHdn^j{K%zZ&lw9M-*%(p=8RU81?w3ryi;Lcs<6k$u$Q{v7*zp# zp&K1HXFP-?>JEjP1=QZ~L$EcJ91j0xK=QJ}{Qxk-SqOLJHt19{Gzs3&_AN%-3U36K z{Uqp zpf3$!RF9&FFob&v2)xYDc--wUnb{GFHEhJMkau36xe`rJlNjc^A8D3?Qo=8R3|9C7 zAap#*yATVX9sPL+WEaU{wihDS=ZW zMUo0qinB*75PGTzE5As-k({hHVgI}D^D!OGCS^GZZAaBde>j4o&I1-NGqezQ+c!%% zvFx^pGfc_}m-zN6o>oP-P}=JB$AE6UO5>|&G(~c` zHOFxaXCfy~ONi;YM{X&=c$uNw;isU3N$6W_-`N;USmAXj7o8h4@jm89Pe8c@Ss|oz zN6F(Rxa<+81kZuP?uM@Du7W>l&5O7wZ z^?>0lai>o*5B(`~l&@a`p}hX|ULF8_sB<(KwDmdT5mQaUiflsJP(mQt zVTNal;>^w(T9AatNxBujOKO+8m?>d%C0svXn2uafh#n&e1W^gdq>z!d-IBB(cMN`Z zV{BqSN@jM1NzQ=)v>e#k(Y6!#r~!MCk2j$ zys10wN7k|pozShG;WUxvMsj*AgPax*=F}&MzU_At zpH5+KBRO3|I1oHWIJJ_~@8$`o6^he$1p%Cz6{kmmW`!HbDJYyi#NddR89E*|hcYc! zoR$Dl>p(I5Dlj{qbRDb}t^o}*gm#MB5}zhc&I(sih~|+h_heb#R z)B12ZfiEU-gu(NAOn2;du$2Y#y>u5JEbvEP5rNqHt?*(1N57rUyxc65K>59{9$P$L z*A{cb-^~p#I)%`BylI~eWE62g(O&M+z9*jcHKaWQw4pbeajuMoX81-}j z2YbV7pezbtk2v*SphP*8vm)(CwdLNi`(v~;oigH|KVJk8GINGHs6 z%y}qcrxyoDtrV38LVNGmlUD8*fMQ2zNnIGT z(U$VN`Y?ybdKAbOpjgfosH^yz*Z$|tWg<-5cle-H{RkATa2_>rG4vlLXYtZ2k&)=7 z&j-+Yq-_GfnKIVt3eQBE+4)&Pl6tZuEOZdVo4dAjt!4IV0rHk^Urb{KaA4wk_Ev=L zFl%6Dm|@qmGi-&YQMC9U4SZMws1U;Yb1EJ_~xOY5BNW|R1Q^fZN!HHjz z5a=DlKq`{+FuFk4#Cvz}!D{$I9jjq9#p{NGR5hrM3tT6HSVEVTlb=|-XMr`yE>mRh zQDnU?tEZO4{Ulxn;_bPof*zXl-KjA}><(Iy2CAg9+YELNU>$9D@T{JowY@i7qss<} zk)nGh%oGKhox4FvDRZ0v!v7)HmitU;XKtHgI%cqxLRF_~giNp{S)ro17k-~KX=cNO zrX3+ij5)|Ym;#d*THBlpE=W|vOr?f9(Qu&MJ8l>4DuW#+G|&@b{$ImkSUE_d{7_65 zMVbn~s-#xj*z1yObOc-rd{7s{fCgO&s-XkTJo4vQs=477pBfDake1loFfH}GzndZS zd0_Dn2+j0egHeSUh9IoAL zH$G9o7p_k%U^)vp-{USXcq|b_sR4f2h)&@RKevSL3ltF}%J(O+8JR-Uz+yGlR&-z} zne|NPUxr(eGzzrVz}*bxkUL@RFq1o-R4e>39JU#H1v-z*33r>}f1-Uzk`g77b3R4} z!Hwm_$MtRy!yTo2W!)*ySTZn!mezp1Ee$c4g0*YatbMr}` zLk)yqoNETUm6IT8jFztLVIV?c@0wrg!SJbjuC)c@ryH-MYB+v60O6gbh+;(p!Km{g zEF_X6ofQC30Y%94#!veQ^H&Jpk^4=W04_813*3QoE5;PP;l*IaWReH=@#GYVFcpnq z3UKU4*`L^J#cRso4~r0#;-?D}8-Vumb3hgi;P%`2pnG|$n$kLyq*QU9At2C>kh8^| z7uX^S;BN)ISAac4I~!;^C00L&3}K;W8OBe%%+PbZZ}$BJ3Arj|6CNFHyCf3EdJR-# zyWrsy5r^%rRm7cU136S%xDwSY`2dIu0C7OE>;~G0B7a&%6 z7t`NEXPB$FjVAR-&ds2-&G!X>2tkm#3%FRjU|B~hm1o);K9Y_%0~mGDCV4vL6Z1Di?uwBgj!mH{emAZ5}ASGx8rtg0m|J zVfW33_a0eMXd589Nc#ZQ3)@A^URTA9IFy>D1 z2n+`;ymoK~Dh;F3ec!MSnR-J)FmlqrI1~X1yJeq~!ZHT-=E5JrgZw@nIf1>M-A`IQ zozAqNRoIVLE9R;vksgfr{*ggR3j2d)Cw2u>wj6vNuf_EB1fMXo&TsHB-FYAEtu59` zzq}I;=xanD0=iIxZdahMI+q;_9N$-f(UH3p_Y*+U4BtS)k(}!xH0Yn8kYGbIf#$X; zypCwwCE%e8l^lOvBXUq-R$I6AymS2VLgrE-gOn{GaiD^Q-(&}NDIbpaRFBXxs~s27 z{SZ64Ww`KtP|Rra`X{l+TiSq#abm4ANSWqfKpXA3-^xPY?oQ&OvF(|k1A$e9<%jjaix49x=CdI0K+9-rdp@+ z{T*?1&_=WYBiCNvHXZHAeZ&J){2p-QZsBfH{6>2G^5Xg38=VV&(a#ChW{>K%E)}h^ z`EJ~$+N!8-iMT5J%aXWKtc$(}g3+z8=U(3^k7~M0MN|D4V=P{t1=K03H6GR5;;G&h zT}P^QLbV^bR7gke!!8v~^*%T5%37(Yp6pS*AfD z%IbU>*sSj}(APwFqcIN!{S`pB`2r+HcQ#gIOhW7rJqm<4VPGy)9aT^g9>FNqg6CW3I2iT>&~rYhIH;kZ-!o z&1lLqSe7s-4ppwVDT+JJ@aD>S27D;&KQO@R$aQe%<+;S&*ORVqq$gM2;yAgwqH`fv z+|VftrHvPJ-)f>ycglf9E~CH2c!HP{!ET5R3=#8-n!sD=i92$ChdVFx7S(Kj>&9I- zu}Fzss@OxFR!N-Lq3Bwvm2bLe+D+WdcnTTZI4GwE@l?sV79n&g9_#stqXl3`MgVts zC{wY1(~^>d^|4@$^l_4&`<$d-Xa(Al_3pJXslqp+`-^hFA>Lo0r==j~*T*WN8H(sP zJfe>i)Axdgv%;-F?#TT$;uO=v`#_o1mpr@9K%F!`qtH=OYx0h2gMXtEc45Qx!}k+scthtSAGxYyUfFhWt^`yBoI_I9ED zrdx&Fn=vzRz>GjP4nOyyJLP4D&cPj;s!>AU3wYI&ZC}Jt3*@)}>z$C;$$~WQP~kVk zDhuqz=m-#LnCSby50c=bM;3ddtAPVfD_u@u&FKuqX@| zWy4y+{^2-!C%ITFvIf!nNCqE#&3EFF=wZKV7A6~*VK{{lU0J2OzZL=-(KAF$Oh885 ztI67zk36d%uhK_Ne$Oi2Z~en=+5i4~-cDHTvP;;nMcOd!rGlL2pV>OnEjnoyd7_?T zt~>^;v{^?-d2A=d*qV=hWmKdf8?S#Rzv!|gyAXh5`@?MChcfoS{JC|cT?h^PqB;Rv z6GoXoeWw>2s}XMrQ?a8wm$J|4Zn%;95GjPQNarwu9(^0;pR&7;9#d}!VK?sX_fva?^GPI<^QRi2)!E4hO6JRV zsdB5x_ZCv-0VJQzWM4XwEZ?b!L@Qww$T*G}TC(s&Mf83}bfQa?ZlB~X13AK=2|qJ-4nq$3r6V`6;jY1mo{iOp39p;M3B z!Qo8ZX|8%HA@!|cNZnzsx<4Vcld1jYs;?%bzMFzn%*-!KNW}(oY|S%QeK8?*fLhyX zu6iGZjmdz)nic3aS3R4MdI?iEnXB%JPrYdjQ#YEcn&MNRI-aSIn5!<1PhF2*(F&|L zLqCj{AsyX|6?n)D-5H;{ID@GVn4w#ldLHEC{27>! zjG)ZWam)z18CkG486ugXG-k-=926&y#wjBaGbA;8vc_0UTMl#JV21v}s`(dgR6ske zKg^!r4E>QAdvJ4|<7+Am8b*`g0ZLurvBY6~;8wh;o7m znjB6xAo4Ov zyaWm0g4Py2eKd^bGx&WGze)Jb#P4GKuE4JZzw7Z^j$bE!x8nC*{O-r^m-sz}-?R9= zir*Xfy@OwT|0ugV3Uty+f>Zd}a$25P~XWpDI>2kyw+KHu~s?w<${1Ve$%R!#k>_p94wW4NSGD;?@ zO&q^j2Rh$L)g5t&gJv-}_^3`Nh21dhFqX#mSbjIYEpTw2n&$-$2ISQ9Pz3zu z=D@+h?K@F_G6dK9Q>UUBX-$b~Q{=xK1hqC(`4Vml=8QOdWrom{U1|4rI+HmN2vb|} zO~$Qb(TdgtsVXBIe11>HCY|q~;4&}?o$gYDK3Mj6>W9)ZP_zYkM-Ai0KY8B3P|jam z;Ou~j<`T(ka6&m3ca+-cXiaBjdYNKiew`V#TeF3-09j$k1KxX+1dgi(lG~pHj@^KjWHQIVR-G`h zT6Q>hVE%_?CM4gK#Y1-w@EwU4-|p;$n27JRTXx`3l3lnR`@o!GXtzp1?kU6p$Ap!+ zg`j%C3v4mrxAJi&&vljh7S&W;45G{7@GodV}sIoZDkDw@sv@h6uFYPwzg8%H?8>?Rn=O=BP5wwc?)NEru_!aMj?x^-bHQI#~v0G2Ip*kd?Tst|W zZy|{R=i|Ae|9$}VC(w|FQa}VZClX(WXDd?uP|<+wecQOJrUC2KKjgXwF`$gWAus9a@-J>s#=J!d*0Z!J0uy= zUAS##(P`0GXPb*&RU3bNg+2-hU0cx~tFScayNS8^y5_Vz1kfqN+=LD$ZV#Y)OhV~; zz`2r$6Nbed9oWS)jU2$y{t9<>{2h8dczT~4+u9o3T-%)1j!a>I*%QsmJ`X$!lJiLH zTUD!6??d5mQ49DHvqZ;&)~gs)IA38@pD0WipK?7#)sALj zU+8=fz@U*FzGH7T>ON@u{?x<=1wRmsJUT!>NZ-Q~-&4s=)r>ZU{ghfC=f#*)2;2<< zcHw@RWb^1?zZKa9Dr!Tr9cCCSh2(}e&UJ8AS|8cLjSr9;(Z^HCUc zP@!xNsKZ;3M!Brvymwqkcr)@@;?tpH>p8LDWe+e%7K=B7t3KpK*Uz_&rwElo2Zt=V zCeYE7P6F0*=%k&-!Ffe)-hgwZ&Vx@nfZ4iKnp#7U@^tJ~U7zpkjg&{}6Nl|(p`khu~P(5UxIL*_a& z`!tyfVW=BkNMWr=k(7g`jdJjG1~$S=mOJPM$vzT_P9+Q@Fd$jxlL)*|RO*sB;30Di zm+53-x{K}(JDKK!l@$q+VF-R%549wjJ}z7!Ib#xYI7%AtCV^u&!XEqXEVN;leRo#& zAodSKIQSc~2l+f2BmOIiXlz23@gTpE9&wXEEwXQtZ~n z!H%~MV$)X8LQqC5$&!iy^%0yPpo%n96_TESFi5J>NehvL5e<_TN|ItI-)87_{$4<) zICR^wP2{lK`gy)j;NK70k1}M1$K&p7SD@X&qtWpn-Lf&*@tn~PY&_78*e-+iWs8Fu ze-B!Cpn+}cKsIw2>_EsTO*lN3)MmjqXh#^=AeAnjarS{%LcgF4a16`_o{FzmSQKX@ac~%+wGm(mBkcEfy0_LrFS!sojVeAdmi`}-%3a2wR250Wf%?Iq_oz|0S zNU&aYM(qdc=A%K1m%K8?X1VvSqA*XAAWtyjQGjiR@>oks1=fk93+%f|qX5gl=~lsL zu73`nEsd0vtgwMhIQJBcZU*`0k1?2beKW)G&GcOG%`eU}jBlYv*5UV4{GPzC7r!0& z?Z)qK_7%Np6pw}llQD#Z?+d|&QI>ez(mXmLbm1Q6eHN93TUMzvN z=A_1omS9pm^#tt`TOrURGrlu?$;$#Wh7%I18H*?_6Zn1tCWM?!Lq*9 zw~ZjhuHrwN8v=i}wsrn3OYL~J9(@4m=Bl}%po_vC+2|}oe+AXJBPfdP@L1%HfA%#wfpG( zaX7PZcuR0bB^IQ!`+3=6&Hd`;&0(T(|CTGn5_RgtTr~vk$xde&&SMGMpNMu|99kpZ z0VL;kw{U9}v~$rCqNyI*gmn-NuL1A>J)p@lJt&KQ z^`N`aXitIh#-&D)8e}U)2JJd7>sol2=nBwM#h&ne5o9r0gkEIcBIK8&ypbN+ zl@fh)Xkva!^qwTCsZlFQ>ab{2lGHR|rkfr8I+~sjeE~#LU7r}Jd;&wgo{#x-LYfd{|Ci1Y(cb?olG>HE+FVO0F?50GAjV=B?x&>+ybzW5CM5kbHnPPeJrVkh{sm1%4=sBJ;2R)dMR$sqIDIr%W;nl@tOxqy&k8<1*9^^&!X8}E740P*kg*{PW->Il(4G>!#h}- zU|T^yR?|4a30gtF+R7NCS;<{IW_XrJm*cxc%6eT1AJgNQq1daYF;NDwn8$*r^DLC_ zmG9^{S>>yJzEgw>_f!H;Rvo`WkV0wGE(3m)^c_a5Ufjbj-80IVUM3N^Lxsv>Oib#T7NYWqWWD_LV zLOkhTQaF}}^9zNeq~9Lh1mHpXQqn^=gQRzNo@XnP=XfNqjVIX`tyU!eJ%y-(9s^YO zrNt;AlXJY{)`$6VV=ePG*t-tjx!P7Nc$MA7S>sGCfgw1%;BR-9lM$0em(L| zgcEEKqUYlt{zM?2i^e&;b1PmpdJ1P9Cw=^_eW`nh=gzAILu(WT=J5B96U&Yr{P z_qv1DE0DSS&_ve))~!fOF^D6JuTqg74b^%kfk^lZWX4r}?CRZc+;|s=}S)Mir_<9=%sNi^*w@D-BD&&o)Tlm8%?NQ*#bQ#U^7}e#R@ny1u z52Y%(4tVh-#UESroL~5pidaYXak|%4KQ+0qc?$YdDKepyL*A~*2Q%IFl1F32`_3fB z=$%v5I)eaeD;+bSUUQ{(O>d+7g_9ihCD8#2f62u7RvK-Ty5J5`nF9`U2R<78WrhC6 zLKppLg^vCdo~>IBsIw}eD@~$dm@@*)m`SR1I9WY`F^*jDZO`KUY>zXNYbz?4HRd4l z7~d{g>0bP|hV90TM$Te73|nFF7!J9NI}@%@^-V%6Ld+V}k>>AQb5LeI0unq%M4Q zvbqib2v>)05%0%f06Q&wQc!gO@J2kTxdW`du1dXjT!U(12I!b8&!%XRoW1#!(095J zWiL5rJPknJO{z~-M85vI8pMW45G`;r~y%(+|SG2%WWb*r3wjb2eb9I-$O#4AJirHqNZ% z%SR}VvaCoqB$AkCT#+6($+NG>7M0|hSmbHMF+?V^x#3A7(8``9m;{(F78luy5R9%* z8(rUEqfYD|sJF)unx;Dut9Tbcn zg%dn_7sP^$I9x4~2{Vz>#FyM*aT@}?Id1#aEEM{dZK0E>Nfd`j@iZSrDi+|GyE@RT zR?gjT_H`*N^k;qOgE{Q!a{<^v9;`o2{Sk|M7Z9zyB|y|3|M5wmdPl3=N;h^3h3Ols*RI7`L%9h|#|z z>^j^};mdkl@M8^-Oy*X2R3pF57 zwKWW#Ft<-7?r)a)Pb6o1zEFShay&RXmD0S2=^;2jC3(3Un8!^k#n=Y1AIx7>*$VZf z+a()&SGZ$ilgfHcFi*PC&Dx8s@2jlcDy!7Za*(wWS=f!CW?DE~=Is|5G^0XI!ESDX z`@A?kmrc_<40`YRQjDX8Dl23vNTNc-2L}dZ@4CYF`t@`t2QOn29I#BaqW6PvLi5_^ z@C!>25OW??YtTLwRI9kIEh2MreR52k8SIKK0+>71avP&_sK%(r8yIbW(9ELAzzU7= zY%p;yL5*tr(v9(Bz`(_F>mNSVowRatA6I|F6ZQ8pmS14d&&m{(C3zPv z;_&(#?)>u~pH_c-iJU}#cPXyL9@jR-H3dcEiJt$H{;;fF9yx4hD}tl1mF+{WXm`lKwIr98Ej4{-^_9qQ9?Vl#)b$hT{72T$k&= zPXEu_FJ2pTg0I(ppTuCoS&a((H}%)Cw;g1?u++pB@!&%X{xn7$%`8mqT!Uh*@q?*iR zMdlulOs_vqYY#>56Eg8q%mxE9v;ur6o%vYs#EuV6PNVzgxEx*H-?TL#4R785hM}pK zq$bW3kr!rJFK-LHd~jRf75rW$y#aLi9896ZPn7dVSbs!u-Jnn2XL`MQYU#BSj)T8t=x&axu%){D9Y+z*ta6WA`aS|#afE3Rh zmV%b^RlGEC&0#sjK$v1guSa+rw(IocV%-4Lz0E4PRMc1zt2C!*2uAivO1K0`~~qM8T2Tb3pM|+=}}rZ|Qmg%vKk^UeNr3bI+s}PjHM6~Qp!(*S7`@ctb~3lAy1TNj#gvUs&K3IOdOBD3y-vO zS!)=2iotN2L+xM~ddFOA8=`k$z%84IF*JPt)S=_P_2;l|efI|Wph;~9kgiA^B8)zW znxY|5qt)GL2iPOB&-oX|8A+__Yl_%a9x;ANJE>LS9O7uwIU2or zTGdGiQzG5SDnLqajY=^7qW~5!=48ckV90=ls}C5M+>N&t&M*EMgG4H``yDK?qdH-N)>b9 zER`z0^0_!wY>KvnDw`G+?mUQ*6JCi7S~OBV6bnOKG@{sg<7Xu2>x%f^0wGSDfUdK^ zfZxu7Kc$oZrh@59fZ6+5!aSmNmpGjoGM|$1HrF>r%$uZ>)?rLpmZx=mLe+S4mRB+7 zM&)0n7($?%zzm$&*YSPN?s4Cpur%i1*$%A5Rs)S>ET(d3%1bTf5y`~3?q6z z>{362M|C_IGz|qZC2weX_jkWTDp;9h-Fe3P%&Ia8R*0rse$;K_h) z5oYQ<1@o~OWaA)a;U?Fqtc(Da5q2XhX-*p%#0EIX5zRmxYuqYkOBy>O*sa~N2|f$N zHagRzUPC)cn=M2(+J&3&5!*t1Ef55XyRB{VCm}&1fUN$rkkzk0Z2^4# zVI{?8uhS<};*XUJUI${bcphiZiRZ)AUnzt4n*+B}xYI7)oA9YIy}<1xvEUy}BvaqM z3;Cc0kBpT9uj- zAE6EsywpqLisX%n3dXz?nkHVRcq`h4FSC8pe{!7q3cS=y@KQU(KfNsXSCp4}6<%tm z_EI~Od#PrMK`(W0axoVq5!2Bxb|5B#31T9iAg1$Q67#nxtcdxq*tbgKwfR#w|BuP@ z*#;7|jcSHNk>ycrLC}sap5&K-0@c2X!4TA2ykjy);4jPlmB}34C%o+&ub^M*89?_| zxT9xxRtCP0Uifm)?sN&fl7V$qymwATn*pd^t-@O(y}swCi^tzsvx@f)wr6)#5Cjhx z?^MXDjQ8r}#rjANhkv8;?F&ZmMN2-+5FcXBIIg5t-qBt#AkVUj@ptCXlMYVrc|F~3 z*^}`K-%BOW&pJZ>NH?FQ_zRt)lxUCLa$qvZ9?(nKSbg?W#7F_|c<(<3k9J)NoChNb zlf9hBPVGtKSEQ7eViIG>2Y@5PXB?1={+y0%IBvl5zKG5M@85VF zSe(e7WKLut-ihdUT#N8TJv=C+=tN$EQ}y1u@hwPH{`R5wek{m!wc+3S!jL_dmI16NdGwX zCq`^hiuD4zkmq!!`a2^*TQ=9@W7(HMNYFW1(NTYP$eD&jOI{vDpA;!`UY1_R_l_*v zuGs1q3^F&fAJ%m=r0}1R?zz;;H09cPK)FfkZ{5QR* zU*xu4Iqi5*{5ZFjEN|;+-;LLxJ$RqLxhLuTjo({yxcC|gbM`rZ#uPb9+k;tB-!Kc@fyiXE-MT%eezs)cH3l?H;Pu&5b zc*Wk;I3teXILh5`mEF}Z)`T~XJWWOuv|4tyx4i{*%p)QUBkr$RqE#?yXD{81A;)kw zr=a9d+>1DC98Kp#OdDv4Jdq4r?aiwKs3Cvg_K?&Bg2P495HvODg|B!X%wk7l;PIh^f<-Q&oGGFyW zJ7}5gggJg|+ow-h%h`Jfx(_EUU&>@hizzL8&R*wrL}j_geOK2`F{C~Q(Zal~ir>DA z+rO6Q)&@5K!5e@g*9YJl@#z9gK#F&^-;jp7(W>BNEc#>I+-d&Gm55M*-2Bwy*u^`X zWspZafwvgSUKMZk(a#Lb#H&#FcA^aQ;^~bXqE|50MY&b;lUj%CBRpEf4t$*ge=V;V zr08kzZdg7~;Y4epWRkSg$H^X+0V{p*07qWO4bgYDTYmBX${Ja3?O#Kw-Q}+|2oSvi zH`leStW+X-rQYNGK0`_^-`=3q-nS{F2s9|j*AJPY-OH=+P4=LL2a@c=8F&&B;C9$=8l}&EFMxO}Jq` z)ZX@*SIPUOxcsQJ*txw~am`%pFkQ`!Xl^z$)4ZMSW8 zt_GU^mO-c;U^s;Nd@jrdyxGzvI)VZ90mEOh=@10HX-qt6j#mLY_yowwg-+^0>`qw2 z$hN>QG5f~?@-}BL=cKs=at(ODAoB~{7-YPP4hrAExHlLnTsJooxC?#7gD6`cu=F?J zF~KJ-rxZ!(k%^42%0+(<4cUQv?ZS1|Gd+JvPw7wTvkUJ^>C5ZF4(*nw?Z90;q>d3| z$SQ0%L$hE4q7XX}l0#!RvRt9l;*xn}{q$IT-8d|+1~Bi%4hVZimU?E`#hZdDFW3+` z~)!vJ7g;HOCKLmq0NZzf*ubehmx{OBU^ zpss#-ccwpCbUF}F<$uEyRlZ4A^&epf{E`yv<8!2ls$Pa9x2nU}u+)1|?I;XpQBSAz zbUo8m9IIgY?1B|pAd00=P}MBSQq$~t6F!fy5DBd8fC~(lCuVEP*Neahr)tW$8>wXt zUJJP&DiE_R!(9@vkby%LM+Y`>LKi~?aqqkBYGOGSY6v^1Am+6Faxh93?h$%+(6>8}APtrsSXUig^? zGepOpkc00!oX?!_wVG_{;vFb#Yb@3(dIT3;?di5r=Jlpbx}x!*whC z2?RpB8VeHgGf{yA0E?L9>mKls-%^jX%IdsE)1dTdwX(mHf*$<*8DV$u!x3=e`;sB!p9|ISr@)&ZHJ_&ePLLjH4!&IJd;d1xB5vSLBAW}1t2L0tFmIW z=;?!F=3=gVaLhcp7s-9T+!x6GO1UqT`yuSjfW_Cj7#hpaiws@BP#;4J7@|+8s%7XAhHhZ!Ck$B( ztz+oB41JrSpEGm|Lr*hwGea*h)XLDG7^-7vFGE~Gulk6gFEeyB+C-E+Pt{0#MyE}QWu43L-1_Ac$}8%cs+(6Bg%#!1Ewx@W zSiQ8$izMdxubgYdXEQ##zOJsKthss_Ncn53>neQwxuxcSqvC%FZhHs#z&Q_t0S)3PVG&Kf)W zthi{w*uYuF-0Ymz*49bc=iqM4g>qWY89RN_EM&yO`6@D7Jqpw#pjA>*pfuz!nyYAE zHDU6U>6g0UDLLm{YE(}tGa8$ljPmA2V@c!n#_X!n#?rFpibnsLW6I9-S2y|V>YM$g z{_^Uj)yQm zs;;l|%QeHF-8u#qm1$ho(9G1y$&;rHN-n5aRt=hS3Ye~lOl$Rz9n*AHrZK@kKfh4m zC2vgmrPZ_i$SYssZ>&HWm!W)1R`{3H*EiSHmzGyF3eH8MQbB{9f-|-WO$Jrg1RXG~ zbxgT{YEj9B$xF!ciWN=G6}7@yqh}iV<>g@5i7%`t@6Ny1D6Q@*;8FQB3D5$TaNCcWtq=>SfMP8j;TsJf$&{!(=py94) zs3@zhtcH%8AZD}w41Y~U-O}bNe`zC4c^NFK+&{LqrK#D!q{81&3e6yCXukF)%_!g4yAU*;98Eh@I6wW6#=+Tsw|Cr+H`H_DZnR7#77 zy=2ZuqiPn^a%q(Um1&gDSTdt_M&pd-Gb&~*tDCWO#&y?Mmd&nesc)Kb#f*z)RL_`i z%+cnsq_m|Rt)#hPykFTzy*Ps=+RThh18pqRgGB>|SMt}^m&2m9Q*!BOwDJD3(z-L7 zrB%WHROO;D%~citrqbF9e{*&15s{n3j#p?a7CW8fuWP9llZ9lc0A=91jwUHH_hkA~ zeT%;i4W72?(kfNl8v z#l)o(r55H)neFGW<1E0VqlYue$e88&75~`siptWKnr45_x#whO6Q)*NNJhpL%AXKb zQevPOZ4nS-BJ`dVGGjjbPt||xPSrma1~37hpuE0CSTB!3UnO0z0u+hGt5m*`4!S8;6O*OJmb$f`A$?V1N97r*3*;Z0jV7g(C61bP zd4-#M^$g{%7iC4Xu+$f! z;g%>8SI=1B1{eALE^k(AZE35^1~!0}P7%vylOXo%}@OPiEsR5xPSNA$Cawt$TBzon_7 zvZcmfT`52uqho}I;RSV9?dQ~}q^Y?Pz9d7YNlg`BX{o3~fnY9ZAr+02Dq5@2pL*kY zH8=o+IMm#$0ou5t1jvi7o^drXBnOIzy?Vl;x~s>#QM#V_q7VqAT@!Rp+=-c) zf!5O6hMJ0|8JQUu$MUP|U?jCt^~lJ8)0+g$NpNmgWYc!)8{?DV<|brkW@ac?A-#h; zZiJpu1$BCm;SI_(_Jo+9q5GY%6a%^JcvhK7oRy0k^JqyhCTC}3cGQgK=eZ(rUfHe4 z$(GTKIJ+3J34XLIl|6&laRtsC+*DnxB=RQIE#M}wa$&D-ZOl-XFg3TPe))J6o{|u* z!jg!f(He$eG50WNtSK1VgsI~vOc_6AhI+&o#kdSh3Tl!k6M1hydJ%dDLr;d$*QF0x(TDW?)tj=<#m2VMJ)nxJ z=FGb?f9{+DV@wOi%45o~IB{`c0Y*;EnC+u|X^xm7)PfQmE5`p*T8;4>{o{#=mxwVV zz73UQn#SH=5y3dNtR91!GB#h&!r`3It&x=`jcGi)h%uaC(}dtIh#>8{XimX+R}`$3 zG_^Fa&jn#stV~1PL0l_##Rs*D*5*bG0)!^Wfz%Al3b1bAYBLEz|JVX|kw7gFOl^%7 zbbcVez;(AZ)wM7fG;AytDIT6a1WcDrv{B6_UrVn;HyEcc4CJ&9ubMw+LBQ>2#Ea|R z!*z|*go!)r9fbF3nJEKHU|Bq`X#Qmj0<*o^__Pwo=D|vKj}S(nQW!5Gv5fyEcAAXK zOh;W-tb)sm7x+CHTwDA1OE-iRRy77wAI$bYE~CrAE9IaBmtkOj{uO~wT{bud^v0?q z#!5k1Rds_Jn4OL_C9Fv5QCbC;9ATPqNqXMyUqIKY#y<2s?CvqUU4qE~{5}U0=(6j% zL?Z*5auAUKeA?2A2}@Q?knx5Z?6_Q#WVzgCS5=fH0P85jZCb z$k0HmKK8=p~QHVpdCKCA2lDao1v!Q4JqK zEvkl&1=A6v>kci|+DqKJn{LE1S#*I8C1~_)N1vqv7!O4T0Hon;q#k03E{%*>8HcA)Q}BbrBpenx75JZbB>EKoUE!!g<>uS zSiPKG10}H|DJ?6*n2@$Ms;s6S)_^fxMKdh7ZYdVWGcZJK#K5k)QPGL@12BgSWj>=o zcVcsE^C-IBxOMO*7!ihpR3Lz3Dq?r*r&8E)WE#{FL$c;Ir4>Z5WD5w?6o9zG>2F$5 zSLPp!D#g@67JFmFypb=Ph1+FaRoYkw`Dch_$2#xjC=82?a#Ahm-7y`gS&<+d+peaA z^!cUB{j=uG%g3K#MUOmYn)J);o4I~o;|~TF;uTr!>YEh{<8M#TNxdX<@h5K`^R_XN zW_&2yDNX?Z-dY)c4ag_nMDa>#$17>R*X8ds+;oGBVZ8k}jxo}VQxs%s9^!cujg<8h zNh^iq}}N zlE*Gqe7`6_$>ENH-m*2^g@=Kg2DqSxyYVn^*8pyvhLg<_giRt}2yj)UO1>qBpm(Ht zxiQILtf%!F z?n{bVQu$au{h8YB#s_~ z{pK)mdr0r=iXL|i$(4jJ>u;fk`_^ILSbzN*?(##x9Z9eIH2#Xi=!<#{u2FJdbqGGL zUfVU?ONW7@UZ;OU(UZO0giWFc@n0J5*2Bn0y-xp@qIW52@k&CEdR?sHiWO8+IO_Ed z4L9a6aN@r-T>D|*=)VqVxaSW8_YmOL-KNUH??B5ns2oSC&oy@{eA&oO0)y~bPX+iL zxL?6xyRy2Hz_FcVJ)q#YtwgRQaI8<~#|mze21~}5^|?>OoqrfO)@M4m?BF__{#l<{ z8ZM#-49WPiK3gAB^!O!KxssHF^_llG1($UQ{ZoIe&#@0HxSJ0{kM+6cmkRD~%{G~Q zI{=r?%}ThY9ERS<$n*0vdq;p94P8v%aAdf-fGc|J$Z*YotJ68+r;xbDpg z?)1ZyV=LhLo>FkRhk@gc;DK%h$1$H=N%)?K9_WCE&Tshzt zZc}hqA4a}g0Jo-B!8II)-Xnn9`5Oh7qs2>R2fF~bPs8zVmnSR7k=lR%Gl~!GG#NhA z3-H^i;mQ?MQa{1=@8=(?#&syTBgs>w@p;}%t|awGd4d{_9~3?m9OcQ|uH>1c!IJ5b z{-{dBopKmB`lH1f?(c_z+k?F6zg2t>HGV&m9yV(HBk5tihO0YFJEI;Byrkqgod2dC zvUVuAiw;vh>S4Nu`}|?xsE2F~xBoD3^vmflE53)bclu?&hT~x+xdzz>(`XW{7+CSy zuAg1{xkf(;_n%y8-&XXG)z6XoIZ8jr>*qQ8nWvwZ=;s3cyjDM}^s`YvZ`99~`ng6w zzoVb`>gUh&bEAH4(a-Jr`HFrH=;vSbbH9FmqMzxvtMVMLpQq^O8Ty&6pELBcKtJc{ z=R*BlqMtSTnU|)tyiCW9EWLm_utj2pI9&n@2|Id{hRjna5$#N!z$evlkmzBs(|G~T%` z9&I!4$o!^jykIU(0Et5c%M=)pVfFv67YuU@@3Ip67+dc>+_2muinKI8C|^` z8gHt``&v9+`;qZJqwyjx9_>uZ$a+XgXJw-IJI%xoqovb~Ec|e}>jK|#@n~mWJ*1{* ziTMr1<3|H|-RI(wUps!f9UThqOpW);PmAYQa-O5{o`}cmcKIDOR8Ea|uEy($$IDC6 zavmBlUymdDTs-=-B9!h3e&T@)fiZp`kLT4xYI+L&S(0nL#(Og!&#Q+t;-Mb@d)Gf) zKAL1V){DX8KfZA0Q?AGFjH3s_shT*K2N~Shr=EWOR9J@b>mRFhQzsN*07m%!i`6qb zsGeDKbh>^n#sY?B;gXW)w|=4FE%nUS&!W{TzD_^8-KVY6AJTa3w`e&1EW*MP`K;5= zZv8Z{#-5CSf-wJ!{7(b_)4=~U@IMXwPXqriYv8z1_{7TMG5PJMWH&5sNN)%>jGUj} zkbdQ?YZc?;@=9>1PWDUB$Dy{l^<|~l;&yrC*fq$&R?O0}>r2Y2t}j{If^%esPQ*E? z#s)8f-Ov)j9$K7LVlsEr))BgVMNK(~v@9vXmN#G-YZ|M_u>{9&${JRXva!Z!Y;e=C z8`Mo}m9!=t1H!xZN;kDVMI|SucIi}4TJ9zx;Wf;_A--xx?qCGP!-fP#*GaUpw)A@J zY+25f2UH4#sK#!Y3KYO-T<@jTdubabjqm#j(ajk5i89j1NM%`Fv#{@%SY=I1Qx!9J zN>qu?_<+P4D};>02u^xIcg)+zXmx#=B6NT;9wktsx2Gb?!*_)2Vg!2*u=|J6HH^yU zLqzV-5f^ct8*eCWt{PpCKmV#Z^GX5>7hExqs1Go=sR zF>#|xY%Hr1ZrwVHZ4}Jy)6u%JT9|~<*stTw*gV4cPR5(dJdF&fIEr1`jN_Vsa8wF+ zU@So?#60%7X&%%8Nx{Z(qO=bK(Uzu~iVES`#i-gcw+1$zT4IclJ>kYLQj8Nz3_FFp zF-nXLDYd25b;fHc4aT07CSy%%nPDHb#8`J!O+`t|)G5Z}M^#m{mKfg{uJ(U48E*`4 zH2yifD1ZJHf%!mBpSLg{*8Wm@g%M3(Zu~f-rP26xMxF6$hT7F@{41ld4 z=|(EI#~LrE(9C|HGRzqGJOKBdirWAVd=KL`Z{x!h?6E8{o=8QDGj7j7$I zhLjRCW#hJCX~sUh_Q5@zqLS`M(wbFFTGNFjY!)(}K+*vIDqot>zgk26mWVb6*QvF} z9u&D*PKg-LLa|e)lo;;}Gro~w3}@{c-%l$u?oVqpHl-~$R{CV;8eI;KUm7p^mew0P zeND?t${NdzgT6GQ`$wcH&3QvwV_Au@hl#yRtT0|oQ)iuA^ld(rtK4`qjjl?WhVdt) zx%urrp0jde+ezuSpfrri$V@Zt_y$q$ zlKV#7ja0ost2dq7v3`r?ovv>Zq#JhwuHujB%ZxXWdO%X!zeS#P%c>je>x^&)H#Bl@ zwDD{PTD#E+23>%FoN~WI?(5|KfZW&PZlI0+GNZ+K92N73q;8b^Cb@UZeXHF2a7SHo z+oti?jQSEWZ{vO7ZI}Fhx$ltsPJva${#GU&k8vlY`JLqLk~|(4VegFNBF5vH`t+0W zDxd}gYPZ}Sx$l$vez_mO9asD3^ZZ5KDGlpW+J|T7wWsV$Y1o&&?&S3;MMaAnvK!W= zu1jwpwl1X|AD?Pim$JBh*y4ed?vypdiWX-xZGGmNQ}f!>vh%Xn`1TE3lfDM9-Kpwd z`-t@j<@Ngpd;_Wb((=}&W;ZnW*QFNu+f%z!{QHi{V<^v%3x;KstDxLV2gUh8i^^ds zM$v?#D+%x_etrh@g;r#g^QN!C^ahX~PybECN$+w^kEj!IbJtHUL3ngrocW{iI{`ml zjL*Z(jW0mh&kTJr|8Vl~%R}+whAy+ARbg{)N&664)=w_9G;-OFy5T2Z?pKm;4I5kpE4T|O8| ze4z*iM4~H21xs`zm=-j;5ET+Z_5%?k#P~e(f1Z2i&R*B@VIz~wJ?D33o|!psb7s!{ z&m8J|@dAip{AwWeW^SW?7d#!A`kbln=!mdIIHA;=8K3&`bQL%CIa5D@6U4ZONpF5H z_7Ebfol`f+TcBQyVT0vwt8ap^xM zy_w-W9<%UtWa@LKzJ7RwT`axX`i)85)aTsKNOF+3T)(~8(CwAm*b57+yGs?flauqHw*rD!QUzPo`UZy z_<@3dT<|Xn-c#_C1wT{pp9_Am;8zQ-ENVSo2N!%)!AlF~|CsslUQ;m7_k8uk1&H6z z6D8LJZdX5apB2~R4-wAm+068p!rOk9d=Y-kQ;2^8o|TjOAL5r}{`v5$NRRR7E8kwk z??)WF=fUmD*MrIanAXJyMET6zwiLb-Iyy4Tmou;T`q>dSAibIKsUPPG92eB*O#SRR z5q7QgX2z#}5}wZb$wa}_Pn;X;JES*TKc2-;`DaXh$J)@}CB51D=`23=Ia5C){r%FL zt*;mQoT=|QFY@0bz1jN7LZ37Bv(o=bdb9PmBPO%_InQ_fyo&Vtl{XiQ5Bx9J&qt#C z+Yrv{+y9I00AHW!U7q~>vphL-fBb*iol4JaeXr6aQ=c>S{vYmM>CM*96#AU0_y2c~ zN^iD)s?g`0%CGnFGZ#|6uuGxh$z@Nd$a8Gk8!4?LaqIa9w&|2H0hKRkIp z%+~iNbyJ@+^&RUXjFaS2Z??X>(C18jRr+J4H(Nhm=yRriO8RBeo2{QN^f^;Mabc8y zmGoxom*cvoBVU9c^IF93WPlvQ=es{Xj`;cgaT&N>{W`Ti^7^UDV`ln1pA+bh(2-f5 zoVhHBoRnK1%Q3N^e5U_$*Ha?M6E5b58oc2s`YcxIQMt z*5}s)_a|rSrxgE0>CM(xQ|`_DbEcjLor{&yo2}3DYnOkw^yf-%ww|w`=*ZOPoXS5C zVVAo6V(VwQ0%v{B)bF}H!mg6uY<$gd7 zwtkY4;mFia65zCFu1^;6{v92eB*OnrAf!gfn=>n;Fjhr;Gb1XXq&HjN%M~~-SpJ-;@4i05Zj|24_$+_D$UkT5CvOb>?b4gAuObaPGV`wz;KP59J{B$?VeASFGtxh)m?htn_Zs& zS)WROj`ZDP>v6j$N9O+I%;Pbs_#c(tY`yov`keFqUk|;*nBk8KegxcZ|2uAq{XYxu zSyFpP?EE{K7@YI(Ow>G|w%g)I7^ycm^jv{!=riX2+urLE>CKF`6uyUIIO}sx$M5C{ z>zCekW7c;jbyJ@+^|mj&T6(kfDdQ~voRj`5k@lCY7hC^ek-vEd;=3%2!ua!@&pQx5 zKfiZ@+nrC_#VvV9oDZ|h<2=b1;V0*GJalB75UPU znSYf4N2cC(d}m8AnSUn%j?DaRH+YHkW`;BW6j2N6b542; zQsL%a>&4br5k^O*zDj^2Q*V34G3m_=V*W?K(~+q+k0X931LPQ`%^e!>0|8S+)?f-3Jx99mSw{*S-b$-Qe z?>;Pc`)i-r?U@(FjpsYwy)ivMuMZLX{$47c()E5iIeT7TKt2c;+EkRMhm2$9_j{ir z!~6Z-W~?8AGI*TSu-N0JwvwSg=R$727d74G)XKI`@W(jUnag_8GC?xBgx1_ooNqJ4(#o|K}V^#{NyK zd`rZ$;-%u9;$_yWzFH-Af9HI$`yc!mEc0`Ja#-yC-8Qk`AKhRci0fsi*!|gi#O~ki z7Q4UvwAlTp=f&=izb5wki9-%k`Gz9D9 z28<WP1+GM;B{up?EvZWLLSoq`M-w)4u9gc@T0schz zli-)Ze*pdz_!aP7@ZIpV&-frbKlri|{xtYi@E?NzF#PH8XTYBce-=FLF=!+59{8i+ zkA^=PemVSVc)04DvCN&7u8U#ZIoh?MAJdUv0n-R*uwhRvsj&_ZX^mR2SX@k8h=j~5hE3lEQZQ)GSEBY2Vt7cBa6`5v^@@p^) zo-y-4mRN*QHYRF?aViaGX*{{`*)tR7k7bQ^!^u{-mMo8(*a)QwaWk+Kh#E-_+H&Wm|pIipz0iM=&LRN}vKe^TACpb`*t85xgp&Pc(fg`Yz#C+5vl@(nvC-$h8+@mXEzIhx#8cM=eKi`6B^DD7A znH$%(45w+iv1u3v_w7RZHev9A0%)a43FmsO)J7Y&*Kvu!K6{i0k@l%^`jUMr44{!` zoo3uBJtFm2VAKvjhV^=-25a*${7iFJ7OmvV4Rd12%07=5o07?VzS(B@ZMLOU zRlxe-hAo`odBIOynP2l5rAe)$-dxe;Xq@O8Wpe2wPFRY!ZcFCkt((Fay>%Pw!Xh=E zo4$d~Ek~|3hZv>8x&Sk}H`H;}si3%7#&9#Hi!U}+(qnMpk0-wj#!5eBm+FpG>kjdI zZyaa9+nA%PTIz6o<7x~~aPBi^GG)~la*no1Y2c`(+Z~Bx6&p3DtRwmWG50iX1jEA| zws{QSzoJEbt?#qE;!_-+9}j!brl>qL8bjN7GC0zV--5t!GON+v7(xtB9oyL4I()+E z<^wOZZKQ2X7OG9;mSG}FAU_CY=`fDO*`!)iqd~lFY^a8DWjKQUn;Z`#PKtw}VJOlt z+#@*n3~iiEkCk)Un>cxGN>w#>$^~C?8XR5lOD}T4zW2p&lG?@?L4s4C22L$(d(uzu zN(@<8@V#|@TCUh|k}@7%R?)Bt-F>lLEkJ?p7f~AGVo}sw3Q?V(UK==HbM+0jOpAtL z-sW52R$vUf%N~5K4=Y!)d9*l|`Qy>YuVvc;Kj-pu**O1i@DZY_-c@4Tr^Xw59L!fo z;{lM>!g=`{*P9dNWtX!H^2G^R^h)UP!zeex2fvHAF6dfBqh13^p_JQ0v%DPo$A5jfC zcHEo&iN-1$=y^jgb;)>8QvuUZLR}A05OwR=S<^kr%lggP9msp8>OJOtKHMU{UtKw+ z*4^CpOiK$U?yPprs%FzEt^(hKa~g|0zHORn(M_Gx;A#`IwSl#@O^i5wt?kjRMZ1x` zZFi#83y(47?IurXo!%fQt4dm?G(hNRHkSdhbrOS?Einm0+7weT#A=#=A*MO-{08XS zcwz&rB6rPb5TL0Hd^e`a3p8s%Z9v_g0nJlT8{h;5o|!;X5_m2GwRZ3xgEK#*`w8%TNFhI{` literal 0 HcmV?d00001