From 506705fa863c31fb36d455ec023cb98256882c82 Mon Sep 17 00:00:00 2001 From: Sean Cross Date: Wed, 28 Oct 2015 15:20:33 +0800 Subject: [PATCH] parse-commands: Add program to parse program from pcap Signed-off-by: Sean Cross --- pcap-parse/Makefile | 2 + pcap-parse/mt6261.pcap | Bin 0 -> 178627 bytes pcap-parse/parse-commands.c | 106 ++++++++++++++++++++++++++++++++++++ 3 files changed, 108 insertions(+) create mode 100644 pcap-parse/Makefile create mode 100644 pcap-parse/mt6261.pcap create mode 100644 pcap-parse/parse-commands.c diff --git a/pcap-parse/Makefile b/pcap-parse/Makefile new file mode 100644 index 0000000..97034db --- /dev/null +++ b/pcap-parse/Makefile @@ -0,0 +1,2 @@ +all: + gcc parse-commands.c -o parse-commands -lpcap -Wall diff --git a/pcap-parse/mt6261.pcap b/pcap-parse/mt6261.pcap new file mode 100644 index 0000000000000000000000000000000000000000..9255a8e633674af2225aa258268d049a38f3918c GIT binary patch literal 178627 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

b0IMLf%T0^d{d# zWK|;?kP&D#+{Q-VIYo7hjG`QlErCpF!T0^fb;vsOxLGJJ&4QjHQ_O<_kE}1LNDs=q z+SB@Z=31@do2z#pg1ngmn-M*Q7LW_PpLrK}iB-_7O6=moS(U4cvkRJyNq4m9hFLRj zD65#cNK}04ubRE^nj6T+n_RAES5{p)M>G*CkO{$#wIdhDqXU9?=A!D`R$O`WGO7CJ zn^r6*+*0@eFJE)>iX6t+gP7T!H}L8G3j~0Q&7WC1clH%G#Pe?88cowS?^BS0pERY& zM`LV)!4>t-j6DvcW@Al?{HGYcf7E^UvAO4r8uQ8vqG46|m(SX4yQ<(tWYKSW1u#!3 z^3yT(GiKoxDMfx9+*_XV^QDImNhN_l-uLNk~2H!~B>bVu_AgVH%wXy!|i>a#Il)c@D$ zau`*qgJ$9Afyh;74`G$(I;-GRx_*}+f}i2$x+tP;y>=eLrnQDNZFA8iGguSzY&n|* zPEWJll@(XbyQ=c)s$%eDGhjtk@~mLH)$d9|nmk_CpuPHNlKfg!RMR%bT=xn^BBT+3D0P(@g$v5HL?;`rdxqrj)cWyN5e+nN)<({^O7DiE@ zN**5ap9yqXprA^D!IknfrN}3v^!EfUtniL*0IO2@9@JE7q$c7Ny~?ejxH?kqDy*D1 zud@aUsT$VsmlBHz1+Il_(hVCbcB6M+0N`L2+>%q|XQI!;3uSYDio08v^ucJ6Yp_A| zl zlZfcix~PwaQu6s&j4U-Y+(>vOA(n<+!eRb4xZ&Qo!K4fb(=v+xHLbgKwGz@8xAepf zXez~c8n>I4u3AyO)-(%&Ijh!GFDIw+n@l&ZiQ7*vwO|CXTe2{Wa^V5l#mO%tdUL(F zuKZ%xdK+h7Z<~p&9@`OYTs8Kw)nhw?ja!O+Z1vcVVB?ly9|^{em1fw7de`FqwYYyR z?q7@hv0sgSZ1vcVVB?lzA6q@PBiOiQYi${JhA$ULz}6szWJNb5KDgaQR7&|xgjdRQ z5velnRYObI6xkc;sA2Gf0Th#58jkq)#iBlkEP`@ zW&iFlFF%j%P?)ZNE#jy;d<*@0DH2f17a|rX?LQlFD&_u&Wj#^TQ;;I)_~VhiISp6B zW5;2W4AS>@MlM;Bb7`Eq^j&~+4kpQ2iC}}N&~g1_O8ZKCOuGkO zEUJmk`fbow+YE$yQC@CI>`G!4<6pRtRkUm5|BZsROB#Com>xs)WYh-_O%-g< zu2~f)X>6Zhy8*}7VOxQFG!1;Z4%;GZ_hCDM?MrOBMm~Ko zwi(z~W7~o42)0kLMPnB;a`j1&cps%+?N~1%y5Cw2Xxp_Ls%};Y_cBvF0o`xAHjY_I z!%5Bf^t$QlbaHa16xw|jk8kk1``?jR1yVQ>%IozR_S~eVijwSH`;H3g z?fWY*-t7;H4^~i*o9!jW2W`~vCi^_pU{n8{K~p{<#cktAqmT=fhbtIxw{jP%vA98d z48WlJljbn=1b6DW(J|%M27px8Wp6BJJGc>SXq|DWx;wihdtKE!+cdl0-VEYV_uN{3 zo9#BpCNn~-Y{+G4XS-M1R#zmWoFd&(evL85zFlGk8n|YcFuk#8nc1%K(ytqp)|u^g z8(glX?J826(i_7Vn9JL(b_24R6-aN{=Nl~vLca-$;20dzxit(fd3A6sW9~nmh39Ek zb;X@UG+;)A?ejX8(y!s+b4r;VHZP<7i^7sp4h(lFWm@>0QYMAX%jvu}EGZ=)?oi5T z=$ujpL*^B9{^yXSls|+zl=8dKIi>tMWWJHkpAAV$`9-KhDL)IHQ_7D+=9}pJhapKR zkB2&x@*kmdO8HJ`JRI9CcDm-zA*WJyhdPz=^^mNTheMWXI)4ZO^WDU>c84UT+y#FMI=&+m^Q#libkJ#l9*I8tXp?A`Xte|h zo1Z3J7Dz@n-LMcCs|YnES*vXJLShx~AGwfKr2m?+G$BHnrb8erv&8?=Y(PVVGRxDD zv~)EBzGGPLYx4*%@il}#r@*hmkVsLi+D8sgn*D>|?xgGBhQW3Khbg*d77Skh0xUZH zzC5H?%BdlZQcezOm2zT8rIh1CYNad)9rryU>bvT|#|L1x90=7Hms4oc$+tzgoJ&xy zjm-3>Dn}<^ZzYaeP~H@o>`g-JlCg}*FeAVR_ogdXjlkK(xGE3j6_F8M9nKnXmXvB- z&PW`!;p`}svm=?_Oywxmb2*L{p`02qcn85m$mNX1-X%CX4&?+mhR41An1bhgdpUdo z8)7-|2`o*oi~0W;TVI}Dt3ukubmtnld2_XD6DR*U7{ABawYrj4*Uwv%uvjt)I$4Jp zP@OzD65lgLx|B0;mY0KJ`m4toDhEa4UY3Eb-@z%!h{%*w;Wa?UAesU#)L|{mdsQeu z55HmMu>jP`qattOmj%CaBCq2Y)gwguq@J>>&7HOQKC6Rjfl5b^HBq?&u^LoX10zBQ z=eZf>7rx#2*!2FlEAD^0D}zf+uizdrIJxSL{`R*i?e7T3+y7#CLe=YtHQ}F2_Qv0J zYnWQpg7Z{95&qtnBh~}AGDXe{Le##a-TX81quz_>>5=J-1G<_HPGc&(CH-0%9$Lv- zfGXu;Ejqa~+?9Ci1K~q}KjQMZXVNNFUV8H5VZSd!RNJ3dp8Ydax3Yo$Ovf$X|a8;x7 z8fY%4bcCfUtrBuUtYVG(7p&sfT(DB)TY60bec;u-SRJ8sK*_|$X+7kOgat@1DVPF1 z^y1g{o={>Q3;+&C-c7kAW{_6^$#sL`fZUC}8f?cCkSzKx4J;DAm==G(iV-}^>DXMX zgHsR#;($U%k0U2zeSZJ2P^0dGM8}Uxbo|}Hc*jrlOos(KMb1uiz5ar(&*<;^6m zs(3eRshja013h=n2uM?;X+p_$Tw#{IO>wDd%+9i#ZM4GsAwcg3Z%K6b-+TH5JA>RC zjrkAZZMZ}W<5q3beDM2VLD>)eMlbXet|4N=o}EjUAYR@KmFZ9J^XMlygPXXf^a`${ z8uh#h4M~PO7j_Vq19xuhCArBOq6Mp9rd+)HvpB|}D((yIj~kx(z@OfIk`8`_YAN__n$FOV1lk{SGxK;5+lj!(zGtvJqCs^K&wVd&-1jV=@-d#m zH9eDfvjx9+v$_A{&1NRvjGn_GC+l-?w0=0Tn3@>qK%gF4)g+aL{I_B;WpMA>!^x+k ze=#wRLo8+=LuRcZza{VxRETQVLwnEyn5Y2~gx(AJA3zNncYWfS`oLE{PQER08oI7O zfECh8eKuC;%sk7bmR-FY@eBdK-tDc$uOY7K(m{aLZK!lga07=~mE}yVNtVxIF{(j( z7xw#d5T$(M5xjJL)=B=^xZeV)%6WNKFSoxCIvZYY4hG_v9Eolm|96ok}PlQA5WltEQsC?Pp>qZ3mq!h+>+%xW4w0>%G#I{Pg)O;4`&Ur ziUFs8!76?YuOeA?#&p6Qu_PxM$`nMuPte#0dFWBgV`RQ8L1ya*jFO#>TpR09%By2s z(d*W8_J8$^v=xi1rik{~lm$~70TwsKWwMFbr}f)C@J1+fIbh^VhBrNZhH0@U&0}5k zq{+~NQ#mn~KTju=fb%BHQfw>?m~2A4_K`~Mxfj$fBx*PI*RHW;&l9ISu#^mm$#QBe zKG5SsjHII3m=XFSWNFAzlq@+OCl(`#s9Xh&OF=A3948nfQyK7yNV=k6_U>GDIvb&e zH|DqEx0Q8w6grv_6QaT_kqpKd@BV*8&xv)2ImvUE^;gb)w+)()`5rB zBUyd~&tYQ=VSk`czB8JU(701e9so{Ode>i|S4o!djlN}rTM*XK;#v--KXEOA2qnuK z6Kq`WdaaTdoXFq7<^8Ro(9ziW>b#p=SDd;;xS^)AV3|uewP0#`f%>@m38=c45c*Re zknApGHEQR-c9UpIF5hL0?dH_ zJinedz!&NR-x1~7R}0p--Yj?zY?2^}z(hvYty!%GEtr?P9ul7iom?D!)A#2B$@SNQ zSKSC3kGLl{pCUSi0>6hcmMHPt2pfC9qH8h(OZK7Qy}pkNmb=WSK12wk(eOGY58!0V&ExwIj8Bd88Y;l*tHSAx3(Z2FM)P~E$xjszM;fsAC zZ_Gb8GSv4T%Jq>UKF~r$zmHSYnt%J|LRRssk)`Kgb|fEyWO;Rj?E1-wkkI=+@#?{` zmPg_*YmdavCdL2KoUN@Mm`E|p6AL?h>VZyIZL_+(x(vnAXY&!4X-4}1Q@)Mft&OvF9^3J}H^5A3ZmXXD@SzA%%& z3x@qyM03v?0m1<^pG8{+|LrozcjH(9;w~o-9{}zdfVdr^ozfgv>!l zX2TnXr_LDUd5F2t!yEI;;E6MsDiZHE9#J6lo&|VswfjpXL;R|plOw@% z<*Ik|Q%QGEz9E2~g#i|7xnd;Y@qB><)nDMMuVLao8~G;yd5|&(AV81=@K>k&HMrr} z6;{jZf^Y?pcSY6m%|W&I^YXvjKF6K!1*xxPw1y8Fu#Pu&6iezkljEi@8${vk9zapzW0Rh>@l+E>2Awh!-kZ7}{7?pCPnfJfKD zen)R~8}_-PEmo2$r0|8TBHi@$|BeCqxhLa{T3!`MJ3}+m%1{!>z#Gz?0Vzh+_?Xq9 zM=?Kf?uxa{TZOras#zTJf7L3s&9xjd)^mA}Y-%ZQwWSNG4Xd^M39dNk#yqA3EA14G z^^a`QH3liqw!C(S-XjYE~$>(0}R-NhN0v;V(=ZC2)M zyL)^Vclqr@$?QjK%iAC-bMCvu6vcIh9LRKD8SZ0uh$^IVHN##q9c*xj`{t@xZt6sq zQ*!F z9h{R}I|U|F{$c`X*@srB-8Yn9YMYA>v$wZc=(fyU`PRxtWBoD?k%bZeXxJ-)(TE=% z;JZqE-#1^JSwl|aC99aZ5;@oy$n{xh1jq$B8GaS;N|~T;Qn_f^RAN-S=a!q4XW!Nf z|4WFcWmv=|!>d9~Zd=C}lxNu%U~zC$FI_*=sA?t%<7A|qq2xHXWJBbIo3N^FP*yBA z`wFCBu!efd<}%aAHLM`nqZvJeFP+PA$BfA(q~0+{uk$9Oe9Pb>#aA=ybaP>_0m-<6oehHVUqH) zGZ`cE2jz6?l8_*u(TmLl!9RS*W(!! zR8P~u2IYD2%KPAJ^C>f<8LhdIz^}}SrsemarYGNl`=(bSQWjEV8Kwub;4B69yKKRd zh`G+66{<+(!~3~yply8(jiIEhe0RroK-7>_0t|^`tw<>_|{o%xz47;x2zB7#MjQo--l94 zQFQJZw2#!1wfFMrBq9G9poNAFuxY^QY^z@HI#Rw(585nj2EGenw*-I{gNU5k677FH zmS4d_g^s9QdbzAOzOW-!p-V~nEzmY4@ELc`IaF>rbjUVHNS~IzL97!Sn3n%QY^XzC zi)VofnK>y%Xs~O&*|mElQE0cx}QFX`b3mpo-o$xo%&j00+vI2Z0!}v z4wjp%PVBZBYBAVMbR{>j4QoHdIrz}E`SPJHWfyz4iz~{$ zH8xeMald7Q4)@=O`{yY4ck9$Aw&C^7xF42=iH}>qrPUu8hD=YpWSjN#9u7~dvn6fV zt_`24v+14CsK-6)^OHPx%pE4AUzU5_@C`5FY=M&oj=#r=d)FuKSRcQm3&Rz`_Xx9( zoo2UWHtsxyJwNGu4S_vM!|giI$0S4!8DaY~N#p zk3*Dz5M?A)m@1|Sdvn^0)2^$t)YU-S;g~6DB(52YrKXtwRP<6&HDSg{Hg3ABml?-u zT*HC+G-530x^HZ=}2`BtN8YR0x5+dkN~aNA&S>e!^7F>}{)b<>U;7aB|Y z&*;6QarBqRv>WS2Us|eL$2(yOxkbA!zfJ{v2iKZh$68bB1lvXB8P!={24`}XTTnNo zd;`m#+GsRQIkt`8cuQ&B=t07?Qq?-n8AB?7tP(>KcMHF6fX#rr{K}hd1Z<Yomk|s=uXJJkn4s z@*As5>qZRvKWe=nj4@M$F>_QIGp8|TyooW> zo)|L?i7_KO#l)ByY7>5S%nbaWVH= zP|0q=`y*Nus@VaI`X(K}iB&v3^cSq+*DN3;n1h7DA=6xs%;U_dE*%_bcLUfAVqHKb zPwDNnX1m4;nciI$1HHSH`JK5Qu6S6v;smZR;|k=`7T`c!0eJ$XMyLrd1AT}>dzYA! zp#JRhxhw8c0j6xQz>U$kbYs%pI=K|WG4IvN#mH*KjZ1cKf?GJSoUt}cg7B+?x4r|v zF2)mzl@COobSZ-2S?fOr3(0N33wVq}i(#K==8*w|W>mHdQ0}2Vzqu$Jx>p0ZMUs-_ zP;?2Y5n-_~*%23_JntsaWT$iAMoqVzLpT33>aCN|&1a(Rb}COty-N9M)KpFTo~XT= zu0Ihq-A4QFs8>1uUevUd_K!vFOX>VyqN4=UWXoFm{impNEuDKU>Rrm2-U8P4J)Ih$ zM{&T_hDRQ+fjUx~uXgDmYv{Zjya@puOn3<9*&aeCptx5Z5=WOAGbfM58v^zdK7E)g7%$e>q01|S|BLsfC zt_^6`yVO`PdpV&DuvZ z`_-%Is-&c(^mG+#x8S6Yo3oFokqB`pw1 zIw15l8}^Adt@sz{db?_{P>Y_-j?$d`9K?4@&kKk=czJ4F{3JS;f*2F>@U$eJ4OO4= z)@rv_KA7;O0IUvti}iSeY=Pg+fhFq3(s^qzKK$V@Ab@e?>$_6nCUvc%IHvY!wOWHg z9rnYLrUYftbEpT>``B)xl8;;jcgdmLwZ?0=@nbl5 zCdS@tuqq7}^q4^P1^-4)y#It6#(N>%ZHLp%!Yr1>xPcrPypa>OtjsJVRw0i01*`bA z1xV(^5$GJPyfEs6UV3$T`XQFHO$pZ-YRtSukahy(q(w@nS-Vh=M7JaZEK{zcpq`=J zuV3Ztx@KM`fOmJ07bv_zGcOq~J&PnepEW!P@662HENG5H{#ig*j1O9R$#ZzV-)A|* zqfO=T?ufT!H|`xKJqhF2C(>p(9vKB{i`+w!N&MOwxHjIN|F>%?b`cSqK!5D!N#oA# z4Ed3AXLR$W+_MOS&jR!;%#24NVA3Fa-Fp5LvQf~Ii4>MIK0cJgA4KX{7%UGdkqPk6 z>g7%K$o1OD%CiOuB~w4FF=SO%4;b}x>Ce}hrg4_E+pgWJHP79=Xyv=rJ60wyJ-)Jh z>Df(n-)OE}m?qSX!yPg5QWr}bp=jJj3%YQAb1(MUx zdtfO*f&#wjr*gm}qtymv4#_M`mUe*58YIYR7QGp!H25loeOvjqC7a)Id|aJWlfBedbInqG*>P$Z zZ~NY19M~783%D>@z*d$cVF8ub1ik|m@)*oqfxb)Y(iP}1tgej42dEa>l3tugf(5hr z0*}W$wb5wI%TsqNRv?w@Ph$Lfvj4mx^71Aq7GFnscLdo(L$dEBMP1Cfy2P)2FXQ-H z93LI}N_jFc$|;*W{*F@q=HstQUX(C$6Qf~wC&>e2UQ8>4V40!6XZqtFOz1&4Yk}GGu07D&y&G(|Eit9o+bc*S z*bl8p5|UHV-!sZzXcN(bfk8X!Y74bA*})bc27*k?KLXl{S#AzNdm3Z_){e(SGoDb! zV!01t!ENaX`5y@!0)UPRo}VHA!vVTdH-3Pd82Nor>#E=oPOReG)L*cQUy~|;B@7D) zn~;;3$!h>h8=uKngm&$s=GjASO7pHm7ISLm;?R-_=`L=>uE!qU!6qcT$zyFTfNS3j z{l0T}pD>8dA)R}YYz;lM|KV0{yX6^R7dN-HLRtZ={@r*2WYNz zGMULk`l6o0FA!X|Xh^LiJ3$wc6d=P$AY^f9Ik) z2SDD~6c4e<%A7bzdICOf#~ZfN+zjIXzNfXdwx*?ZCNv5yElF}=m~Se+8wODLjwVL~ zc+<3KF?uT_s)u1z4|6CH&T|112&bqQ;lhv+Zt=i~R{TiQBZ&RzK-2)sX+b`4YbnJ? z*4ETzb4?dR50NB49VBzu^uQ<^LoCWXGOFhB78_ipdCTsmirfMcp_Ah~f!Xx}})S75vnGA55e| zMmCC7H(u#nPO$j-j1hYxR<*@?xQ9K$Acpg7fhCUGrcN&jhBP|voK{QWK3iZ z^Dcr+K@#GWAUBCeEGIjD2O<)ZU?QZyYm~oh@mD235@>C0YvBr8o9l6v$)}eu5A1r3 zhjna%@}teE|hU$QQt)g=BNwOz!=;K3oh|lwORei z+T5f)>FrD&5l9!+&bT;7n2+?I){7==w0^96^?t7O|H!PgYRyeIfryb-$%0or2*_W3 zS29un@Pf+3@4=cHuC$EJT(oHR!YihlMy@j<>BzdNl$YgVWu-P88jN_bIiYi>xQ0S? zXiy&;kmRP)kTP@WkUbQ4`ck6Rg0lADmNn;5DJHi#QkpI=h3{u=Rw14&YIRc$% z_4f&`vErJJU|cL@tOB2lB{|y@hSrjj64P78Gg= zJ&I1PsC7Elu2`;Iq6plUu2*eaShew$c{Zt_;gz{!=vYYb3{j>JYPW9YRux*&X z3hg8*uvSrW&gz!Tb`F5RoaH{N5BL+G`L@}dhk%7)YN%xSneKZkavGk8^g^1U5nCa( zjOq1kMKmrVa0>@Y^o`Pu+W=zxo$u~>`3(iaj{Bd7B=aKfpn$69Vci%@ca1gRu7$t2 z>wetzqV>4zz=JGjtiZ;+r#yFi%`cz(mhUEjI2vk^Sb`M2ZU({K^7=tAE0RsC=Urb> z(2y@Q-v2mi-J{fs#7tv=?=U70```3G-RH^hK5qTWH3qGr+CKlEZ}EYT-tE8Ja16Em z%?EJBF2V>&cJV@qXtkBjO>%JnEY7aW%WX6U{fIusB8OmeSS}q4`d9lFd0Fa ztafuJqG-)I?)0rR{aoW2g5_S!|78@`jGle$SQfc}(>F!FxuMU){}y_^!~}j@HWvAl zinoq~&aK1x<;iK@IJAv<$%U-qSG_fnMrSm%`*1g+zpG6E=RekCQo3lV z=Y6cvJ0K~jnp7={2Z+>2fmK*407e(9KxHkCh?d(h%fNfh)E5Q@Wg>!=G-JQ)dDF&C z(kEK?(a9-Zs^y!gx-~CXj~U)1yle~l&xhjm6?k4u)JM4=e_3C8e|;1|b2;kMDJ}kM zv=9T>f+5rm7o2#l-kv=d)cOGi)eFk{nJ_RYsGZudKiX>BH8*ccyS1e}^(1FXSBS_c z1j$&6^KDU6cAObA-bZOZFq_?IFWCXzSMD#yIH(j`? zY-6d>Nca(-^{kr9O*U@rw7O0@l(#5GZ^!)GqBo*eZY#^TBx-Gj&`a%^8l7Ui0aloJ z{qa!6|J0wM)Su)rqyG7&$Pk;Te;Mk3(-*J#8Y5wvpYEwl)clW=)WU_)gIM5F4F;I9 zsSSt|YBd@4_yT({OdmtvXob>W^i6RTnKDLF-&j0mrEe~e6r*qUD}A#Q#-eMnd|q01 z+_(eGl#Lnex>&fnbcXR|YnrDpI~|7Au^2NfE8a&L7xd9r#$qg#HTj?RBrW%LL?O-gY+gKuPNwmRU)@|HO=-y*8(1tms ze?l9QJkMvtj{OS40N!0zG(nCiewLR;ju}0(02+4$`ildI- z#46%L6L^Cl|+qi;&n_}_5?l})7%n*SaMOi=j0*Kn9x|B}JR+L=#MLU7J{SI)I3~-bt zVIKxbYI%lEO)RSD@xjFg4prB&ny;@=k@4Jl?MI(jd9;Rpi@!aFcL@-D+lieC3=nnS{QwU zbWb^ZVoCdwSC;?_!MzDWYy3ML?YT~T%SUd$-}T%;8hxj|>{WaNwU8!US;a;M{;MUG zXo{_W*+NvR4pR#4&5 zv@Oh1Z&$Zyvf!(b1$-x9yAH;JOV>aX)4B*Jj1;FLBDSuNV8~Z34C7+JgS80)&&qw`c*&2F~7Mvcnr6`I;%{3G43G zaR{6`43t2=$pfDMIr3?5>eL9C%B$5UUTs|etDRRo7-sjk7wXs?v=Sftb+q_Lgw8<~U^^fh))1EoVCD>Z9ctyN=boiDD&^I#>d47uRGi)5ztsTF3!ZA2Joxq~;KlkpTCrSZ)$;Zm;J26k@vF!sT zma|D|bsvx(8@ZBQo5k98vk#4j$|esJ{{g-G_?OBA52Yw>unzXzSmu}RHr@;Aqa^!n zBWs&4VP;DP5`-N-9Cme!8Z-GvzCs~n0>uXf_O^LnP*lc%k zjdp)2@Xl0d+Z(;bHJbjtmwFL#vh7|n9BjQ8Y(LI~-|d+$zJkf|4ej@A&&TU4^M^;)A{d8xq1^u)+(NDMcj;P94)S8CI-^41Y`)^kG zYQU8(vP37})N2tw@cjqPk2MWcq=NY8d=$;xA5BLyRm$fi8-BczMBv9Ua5=X@{K2Qi z^HdHR!n}H53VpoGdVN@U^pQD{Ho4Lexf6#b?rZ@wiu=~HCgFlQm!nQ+G^@XBEEjYQ z)w)Zmbs)Ni$SI?uU0H8_?He$!!|HPnKug}1E^J94fDB@Q0;IL@N4^g03Aaw{Nwlr6 zT`IIM1slyEI+WcaA~L0G`8vm+Y*yr6XtP3JfY~`_O0qQ68N3=(L!H*k5#R{+Nxo^Q z>w>4LN%1r#*uGD}T%f(_dKQYRI!Bp<26CSCq{HlRmbTmfDH$|G;C6eyV`gcNy~E+f zfGgoaOrCU;shaa5xV)N~3LMO<7iJ2Bgm+7@=0BO^&>QX59W}&OC>;I1fK%xm`OvPp z%$(%{lzZNm>WAlP>@)4ndaimW!nL<7<#LXx>Z`XS?eH<6KXKC(7r8N600xw?dZ$@` zkmrGUMq#{Qx?Ckp*c!XwD$acm5*MwjQ5WsB>W{!U2YrHkXrofwMx{2+{(A(8Q*C!& zP}}YQRa>@uU4Lzvo?9-cZN@KZt3hqa(vQ{ZB6ZVgIeuFIa z+Dmo9vPzbhFBNAsLPpwJQ;6eyfHHcS(cg77^$v@mmjf6^aC%1)p?@Z#eoo?PT0w+6 z+!n`asZRM0CB1nLuGn4*tJ(OfDixgY;!_CxT`}bp_RcD$v`@ug@KdX36uqnr&LaE2 ze8s4XIn-GPtv`5Xiqz7Hm8rPvl8Q#h0JOFkt;*<~QwmKFx%T?rb6Hz5bD58d&#PQ#>8|Iv`)?NSVcaceTWK@4Uh1j?ed-Z#9>RP@H>Y>bH_0c4|`e-?}t-w4W z*BX5>lk{kfXm79|MVXG_MaJ0uVq+(hh6{BN5cN&eo_jEBJYDs)$a$Zx>JXEqOlet( zs)X&BD_x=d;&yD4b}GO49q&pXD8E!Yk{y{2x=y`guHy>jmuAN{$4=#!cE>TtaRvl51YRPI-~|(C@23DdQ?AGx1!W+oOs=} z1Gt>lk_9D&SKK4^`B7{Zd!bKhw|<6Y8Z93YS1NL&(ZgVj7YQtXmLt`5SdSD)?o_1c zqu9_?yV`qu`R#kQv`78s2w{xT+rs7AZH9g(KCBSQ>OPlcvHN`+%UAE&fGY<@z{~;p zXBX2SWzxmyr{|u)TmEF*{Hw2te#;RZ&|olzkAE?TKXHS#)Dw>u73dmVvlHhzH1ELq?!x`%+AmtJ+7dxTS5gV8k5(Bkl{3O*F1QfnD;hYPgDj z<(ma_CYMzVM)dDq(t^a0%K~x_MD{wz#lma{76nbLITLGSBE?bBqgk{7x?C`LZ_ZY? zZZOg?9vVG7v;>M$;9Ne2L~x1{v>4aN{7++mk8KW0~yxi3W`ka6QkoR=3CL?9i8`y!ecaO z>Ky}{XE_=$EE~Dm7?NeijD0K@=IH1aWk7B&=PWhz*Us0Q13mR3U%RsmS{U~*5dQ%8 zKoE7cajSlat5N?Th&odt>Wtm@Dny;)MdYL2;M(&)&e5HXdZTL~hQotpHRbh;10elU zJX^0k8*1wj8Ev1G4$N9KpZ5-KTex@$7{k4@|9Ns4bQ~69K`LO1A>k8Abp>EAbv3hU z2DN0Mrv@WxWWM`qku_CbFy(2(l%0;GUPzL~tVzZ)K}9b57Jry+;UQpwEp-ca( z#woZP9vVuG6DxGyiAs${6+CLhcgh<~ECqcMXBE^p#45P`3l|UGjkK9cuU>?243t{w zqE%?w$Y3ZIFcc>k zN+%eK42EJ7hA88KSOtIRH?azsWE4r^UJUI=X?Pc@(}`7dkBJX+7aTxIdZ5JtL?lL1 z14#u(v1zcc#dZw8Y2h$f(C$wWwC~XHBTkBBEYZHz=8s)Zh!0_i4Zw%a+;^{|T}(cx zdS=l6nEzP#(f^t^5K^PpxsH^+sNci}Aw$w;>+|z_PqLjXPX$g69YyZomP`z^Pr}VW zyy9G))>I_K;kL8f5fJV&TiHV~{}x)1;0z6(c&8ZW#JbXidWDH>?yP_q#!XLktSWto z&>;KuEEJBThmBq;<(mqX-_!9MsK+fJt)4?*1GkCi5c*8RcMymM>QvbKQ{XXC2v0cZ z{Sn&BBa-AEYX(Hz*9lD^M`>HLtV9NA(eBB>)6%+@;u@8USDy485EI_OT%Iai11OxW zjv~!2t-ol$}ZG+8gj(z)^Ffae#$qkd>~}1stUv~7Z)c;U5~B3X;Uvx<49ylsw$zrwackUYPma>c#}R>oP_2%be~}VdGe#Vp zVALid6YN=)JF3-L3Llm2>iwz~0ZjTQ^d;{a1}6Paz#l`uVNo?5w0?x82H`O90unMn zLST9I4iVC)RJvfeUS1PgQ(A`Q0oyg$v!;whc|i$Z8_?e;q&}wDo}Y@~vbWIJ^E?p2;z;&9G^WeZG<;a9!#E8U_! z3agdioO2gx$NHCNdStJ$m&P?@w<}k6*UZsn@%6G90Ah#gYr>mlL!kQN z+(tp`ZGb^(jS+z|PP=yc|qajJINKP$9m8S$D#0oiYsSx zXJrN9c;-m+%NrfXV1vL*A!Txg0FYOAdcU%ZR9!LuLCmHc=7k@9ao%4i>1A!NNn*Km zh}~l=N!_KF89w3{?*ClzQve}TaQeQaa_YR|iume~R)YTwbU?SfZt5I4k85Vl`O@hB*~Y$9g*9ay+6bUQv~d{P7+*6}8xIA{N*f`Z zuH1~II(h}M;tTiSiouoftEfGD0)TDlZx08pi^@9yZDIJO7XI_J2LdMH&k3QDNWB&d zKN5Wi_|kmYHkqw`kE8!5#U6vCrwZgj92YmEcW4G(A8`u zwQoV-JbGjk^h;G2JO_ZFiEsAH=X|I1_%Q~)%MS*s=ZH%n<`NDj&nUf`-Yc)-<2+H>a0i70j}AA zMILL0x)#dl;bI@v^Q{KyKKP*Mo`Y3C5Z!{?o@=DQid+ttYKW z7sa_wBDTzVQpJybUDoeBD&U6KK^1H-)nobUQdn2tw;GFYHXhqJY!n*Sw}4mMC}AT* zL^i3nIU7y$6b|E@(_MH}LIT|raJE+F5t@g$VII~?n>*_qyuh%M zpI@qK+n$Bl<~aQ40Q$D2e2ZWiAw0~MltMvGWMO1Ye{K6Y^fVM5wCf9*r}*=;D_%ZW_yp$245@gIv8mR`4R#j;!1I@WKX z1#C+K;J6O6Wvr{Ab4wYm?K4c<%O5Pm!jDTw{Oq<7pRf|gaU&ZAuLwji-2#`SZB@Fa zjWwDbaIeCW2DCXsyCYPi20S2VHoG^MQ#z(}qb9d*?s0CnF}tSD@wwyo2wvB_`2OJa z+3x9x5V3l17YAUGR$^o;OLFuj$Trei?A5kh2GlW3T1b4XZnb!I(0GjVye4rbHilt_ z<|uNfY2&KCeXuZ44CgxGxCk&bq?yQA`9TdE3s9pGM(BU&9$>!e)6nm$OW3Pg3+FNo|?-WTl4W7S5i5Ur3)s%QEFC z58LBF{AQ*UP_nbDbRMyXvBp`IrW(Kk$hSsJ5Dkb`eDTF^Vin2mf0^poI3vq5*A_Z- zat$(WaFa^LBI5E554LpBF^4!TE}=(Ba#IOilQAAvrt z4$Vo2j1BY^g1ab{7mK~U-0*K6GNN9Z$Z}N1Wlw$WP9)qRr)lL z@_9XDdo{3p=r9vQzfz~)!t6uqJJYc8O?oW-xC#MR1iy9$24Wyg;zLiz$H4sbhPuc; zv=iF-)sQ?^mk$`R8!?vYU70KW{&`?xoXa7mzu`rcEVw>6J8f}xy!02>Ui$w~_9pO6 zm0ADzy*GO|QYe~~fH!G@lr=3|LBuqHa?_T!6i`5vw56D~ETLs-!6jwU0-^;`TW~4P zs4Onkp$@Y!Q`DIO9sMO#eW~ae=AE(5I5TD(^d?=B|M%RaWfAA~ub)e9?|t_BJm)#* zJm-9ml=hzM(vqfUxunR=Fzj?u{r~Pire|k@8^HZnFx@GRE$ly54@_~8eAE>@-KtQ1 zM52@^YNWE~3$RmBsy>MzvTFQ-nv_6s{?P9Ff=Jo6HjsCMYk{k=5ESevE@rvNl$GXB=UW z`;8tOww3a}gf{o-27fO&FPalOVdPHaZaaSO!?gp~{kWpA!+>k8buC`MehqJ5zixHq zz5M!h{Azl}SJn~)xFs7t^FNdpNyzTHVil77mo)3vZ@elUkygUWdKYKLkk4YVLjr!xL z4s$kSHTyk=7&Lcz&RLMDCUk3;!Fzi5%t zH@uNeJ; ztN4xU`RJ!LN>h056jO5JmeotH%Qr9!R@baw%NN_PnX$}rkiHL#W!k&(`vdu+ND*et z^12MlT)L(PkPh`QIIpbT$YW~MVP2$ybka19mQlO0v}PmkF0H90f0FV|wHw#3t*GJG zm9DMerDk9@uf~Juyo%7ThFQ?k~rR!DKOGh3C z+6m3=&K3j0g~wHyGiB!x`W$1@Ez-r=Q^8Hfd8fF{uE!jl zKDrJ{Fa{9hPMe*XPL>bh7@iz08=*1)p9QgJFY^(U#Cw@{mVQ`F?vRB|6+h%I#<(;vf+2#i1~D|=mB|gBRBl!id$O;a@~o2b->k5KB5BE_-P z!$Qgvs^gTFOlfGJ-*==>{9WV;wC|Q64#>a~Dw+=9yrU)po4}S?I>h}rkYr-^KMI@1 zh`6vv)-aRxkjcLf|UyLaZhLtX%z!7T93ux&LEX73LJql@{Q@P7~WbN+cJs==#KJ z-?)A~U%M6*M@qX7OYR=D$AXntiQm60BowgZR>|FHo^8qeS-jm=!beGlv{FGc@F$@9 zui1SDwv-14ci8V|qg-XBaDcf&@uZC?+ONf~imR)N)mXWTzm4|eIc+3BSasRxO=Gj-46vet1D`pFj-M^PP zHkQRi({jqo9qU%FFIv5*qP(QYoWWPr)U2;DGNl+x6119s`Dr+oe(riybS1?=AE@QOz#|N7!m9OrYzkjlXa8mX zMwiZ&q*sUNpa>lUYixjY^qu3hw3Mg5%V}5PdIVRrj71e#T2~6XX6aqC;;5Cyb}ZZb zA&3ztVXj4_k8+o-6f0=esv7=kn5t9IImDJsG!>t_q|m-{F}b1&IVE!uy=QTb6uGBl zt`tth2ro$D7Mkl3t_c>qAjDtyF?<;~U0%5oUN=yX`X0rAQrHhg`qv+YVzW`D_#H zCSOR+0H>nr=m}CxGWHdQ$1YF6yT2RqJN`Df z8^FjvBI1O|?Dx5#j3fsHQ9MK96O@r3cdvp4)2f)@<*6)(CPgJ_Qeb67`V>U7ZSPj` zKkH`s*Sqh8f#12R*;GZj6aH0FipfHWrML++vUEzygY!j^@-NL#nN!`eQerY+_MOD zKlD>(QZgKVwcbdYY|67xbFuh0-nU3fm(VvaJ)Ld1)aC!B|2==rr7f4f#FB|l)A0t|MQ!csO>5TFW9CTeFNyrGT%6-57?8DM(=WO){P5(9PQTcc zm4ZvfaySYK=FQJ3Sh*l)z5^2&CCBD#Hm2*9w&iC|;Pag143yGS{HNscAG z#%kPu4m*@DVoS+=HJfnXeb7JT3WIC|{*K9(Ml5Sa+OqJTwya!849IHEm__(-QMd2g zZX0OVwM;&;0QGa;0))saSxF7Q0i&|Q?o4gW~# zetK_q`pbTj_WMLj?|tbn`ZJ~balJT^Ndgdx@5}V3{gL#{sV#mItNO%|y(#IB`y2c( z;G44Ce`%u)0VZzHy69MczfZZ2f_XpGpC8O41rEDmHL-8{{dyMUEOGq*tw+j(iFEx? zo23ys*keeK^Jhu-kM^uem-}y(?i+iY>7*bh5%j0Qs8Er7-UPvwX%WQ_g11YlHbKV{ zJPmXdem;oUI*mX9rvgX&?Sgg5WzVF0vKRfnz#cgqtM;6dWxMRKI zQs{kDz6IEn3wjC!Ac36z#DCiVg#U-eE~jJxAqreGctk4r%pXN62BgX#D&AI7v|yz@ zcmDN5_Cx8VDeahhZF^#sMDs-DR$5V&STfg?do>9$4opd;q+M_+Wa;bElLn}EliR(% zW+O?)|7ZCFA~DF*;zdzXpnUoZeJgm4`||F0+z%r8cIYGpgME#GK6@6l-2~kJTO8QQ z&qEg88_8y~Ijl7Zh{(yYP2YS5nK#jcvuKFou_{avbS1u4d*0DF4wb871$a` z{Y_zo`;ndmxy9HrKE#y-vKiZ=qLZ5VHkyP{iA53sRoADH3>dFZbzM0`r>;vvTNIJ$ zYwDBI5j~S6q-cF;mj-DEI872X!w({OBh>V^=2f= zuRi}B7iR!M*6-rn#?$*V@^F?{!sO`JXtRgs@1%4G&!Jl=i z#7Zj<{SvC)4MMN@USwPmg-Qghn>4}gfb-F`uz@1zY34vrqij+%QG`<^AYT+Gl*j39 zSo{F2u)pZj0&KLCM-II3olR{GX7^`a#Cs;ROC$D9?{ zYbXXtw+k8!XgQ;(D@5F*D%0EM@DRP6uwn%XhuWT1L%zM4YHnz1~NqfBlBihfBigKt6L}&c^&(frIhr ze9n;Ob1&c^h(qZWi^BB16oE%0kN=hQ53;}xYzQ}D-q?yHcRYlYn3MON_*CER!pxDk z>g3t8;2a+jb1}OV-dm3lsd%*DN0ADeEE6T216i9jq9JncY$*47;bHopZtfZTi$|s7 zLajOBe1as?D-iFKWP0|X+)oFDT7az05okXn&prg&MFS{57w+ud=Z_8-9nRRYNCv*< zZ|S2C&Xy>t8%z^LUAmEC3Q1z++$qh`t3F}nItbhJxAZ+QceFP#jCKd0av(6o$RSPF z)s+z5H$u^tpP4^}%Dd4!%x-Cx4~S2cj)Wyh=IBDe)SXmk1H;Kn4Y{XdO3B zdu^jWm&R->bRVlATtwO;ZS8H56Fa9c{Dt!7a+Y6O{^yu>qIs34(hshy#1}ax&tyz0 zz6XSZ#EgsB6qfZ}6dr7Qux%Q+qR5FAl`PLFM(cPZdl)0;S>&N-js4RuX!WiQ`u~*@kLH7T?dGk zt~Z74dw#!1wb#0LXD$F}^i}}HHr%%#vAfUQ_c{Pn+53M1xLE7`&Ux_6M7^Jt%l(v> zop#jr#Ra-MiuXTp%*C$XD}LJhiqL>aS4?3pWnlXYYFf6g0a%}n zj;E!XULv1=q*_`o{ktYIRz5?&29hHHP;WKpkB4zug4o@D8izd?hsSyk2vac*S<*OM zsMa5su{vD`vorVL+~n6TG0t48?#$X9YxT#M*%#=~RFdHhJAHd)D>JK@Jx(yW$;DrF zvgt1|?9ptUHTx~#JEVA%kDXhFg^#p=Z#`D8v(7wModX~h7+&>jq`xWW+4BGGtSzuY zNKypOVIneLWd>KTcd4Iae*V3F z@;B^f!$3c$t0z%EXBS#wkgfuLIRe%UruA|mTy(8dfB5h4}3HP?^|Z{Q2YPoAI< zW#GBNuna3>z&I_0;jrvHY{~Y*c^Xpq%eJpUZP?CN;gbC-q-oU%x&M{CV~$r^d&Oxz zuLui`nwX=J9%ff&r^PwbFb;C;OZkA)1M8#ky@&-Q@1eJEUsgPT;l#g{MG( zouPgp5MVUazCF^L=VNa!^~n4b1Wpn76h=I6An;;-FQSD2IF}@EdhUho1q^QS0V;%7 zplQg_k*!E|?ziGj$wWl;N$S&K>{W6Dd?a|pQ~@f(y%0fq z=+vF?AV}MC98upRwAV1B+ib(nbIl49yLTwJ-v;c3s#74Uq$8&jeiou6?LXiTMdMWL82yRvgVQk;H^(l7#gRMujg`*o-%7yF%Q==S+mE;86sJlth@!32L3qvGYm;4 zvSD}*QE5HKh-J4$1_M7?OC)nQi1K!3FY=dL_eS#{LW->2S#*?rCFk~D*&&=haq2Ag zz%Z1??4OD+(=Q?d40^vi$O1uZU`f}5yQ32uTGAxflYZfU@Qic|wEQ*K%lXjp@i@%B zZgmfEh*1(iiaMSYb>G(o%tIX{jIH)a_&>9M!R=~6|TPLsjU1gG=g%&0(F2S}P zecu%NSN9MYJmP)z@2a31LY{{ZUX*^fV;0lz10iyCR3Y+?!gxxcx%*J%&xM~aAX4%F zwp>jrEEx#4aU)W3tj&z+#F$P^W77E8F7gJf5`tzw8543DeZYo(%6I?7d~ZE&{Q-sdo>&xUXcp$>rSq@qf*wC=zmt2Y4B7rl@GaS zhj^?F4s-w1siqvV{mV53i}w(YWa(d8&Op8NmAT$X z<>29`MvlLBE1e-6t|<)87$JGMZD*zOr~*D9e~6UkKaJ7graWy+fjPPSn6kN7+#9-E zP_!^)4r~J4Pj(K=9pFt44R-M-TS#hhg3FuZ@G!YL zg)!iwZ>9Eaa%oIi!U2{Yn_)O*`BvQAkLZw46W<bG2@`qXTL21&6Rc2gB=Ryy2Q5oF#oG1{PD^O# zmxnRTQ<@XMrf)U?wNoz8(RfECJe7l`z@Or9cn+7x)9eZExXc(9&je{?37k-!#`4RL zaDZ^y2i*^a)8-9->sCWlV_UuzFM#{`bL@zIXBz|OPR2YA{U>-Gnw{vkJ+By26`%fC_XGsaU%AN0Ex1E_q85 znvU>&K`77+vgS-3JCpwI2&!5XO$|2Xh1a5Bp4eN-F9N$K_Og(K2uaokY*Rvp{QUU5 z362S^Jz`pzJw6qZE{ph#Q7KwYX9rs`Byc7s%L51$_@p5WnrXmXhEz-| zE^=Dur`({Qf+A)nbww*2+Xm=l5=!MICG%jrBOT>QbS!vGi=Ix=bje&;wdC2TKnNEIl61_b_kk46bxVdSYVyMA-zp z!MP*9Lnm{MQ0&%e;zuNEWO_U6WP#ijK)#{px906YV1!iHmcqzrcG~5t>l0lQl@pT^ojzS0yhVp5#^J<73*2#P ziMGAGfHUxoiN;1d?}>;y{3@^y^MMz!pR#!Zm#$SEz0x4e?aEd zq73xkLuGOX)?82^gS!`v3Gd9y*GV<#P=h-{m=5IN4O<53ZM58AyA>^Acz>C7!6buq z&JLzUKg4yr^7f=5&Sm;|jLe9{_*l!Q7of#s+N2f>gDsBCgsT{yrH#}{CBuqloYpsK z0h4|wj+S!tWZ6SePFZYb@N-4HTkV8zE)Mg9sUJPM=%4az%(apIm*g7VI4R|rSjst4 z%C9f#P;0d34CX&^&3^Qp^YV=r)EY(Q7?RJl>nN2Gei|3CL^G1Sn!&koWfcAy9vD>u zgYtC$8Dve)ENX=p46enkR$L7HBA~_6zNKE1Z&g`N9(FN9hO$pDmyO_lpsr!>VG25UIH7sUJluhE~ebhc)iB{shg?qZwKcRm7kWNvbyHQW7e_unTD1UR>f(wY?ezigiRl|{1L0s zphp8YxZ;+Z>~SRll%HUsyjhj|tiu`~v!1Zuf_%xIZ(LL_YaG@%(3UT|#|snkJyjWb zY#oD8KSSVwG89 zXiHQ4D&*53UqXf!`GzB38}eOwD)%KLZ5z^(w?+z54$DyZ5*-VjiH>2;{U8t9Gx~h- z_&YxKcQ$q~+P(0(TRU)BS*|sJ-zNMrYFt`ea$HKTHQu2DMwWYi9FdqE@E8QCq+dn8 zzL8^fjk-o_YLl(E3nG;CKhGp!8YQ%f?K|6K24(XQg9c7hpE?u}7fg*BZJFn>clGv&>v}&xU3-=(55Iq;N1WVy$>nr8 z0API7dDh`_?Oq1sJ4=rGZ-7mC9w5T7+wBZ@za>1h3=1Vg)s@54EI;8|Uh+2=3%pYC z!Y{$8Kofx&1AjwmpmwzY>}5Y+*J%6or-FYN+BGlMsvNYctx&^q``t@V*`@;Kd7nPo zvPo#!D74JjdlWccW4+|EZCm>K5!y9B@A=XNJ&}26*D;ryi3cd}b9oDwawfIz%!q89 zC;bLo6gjMY>0+n1+5T~X;g6!_XiMrrhu^8Li=b^++I0F;7;ga~i~xt$`~W zL&jF`sNYGMtuZ}(#03%bL!^;4c{q7fnjyu66zJ0`v{~*OkN7U~mLBo$h@#CR)kx-k zY6CZZdz;EfKD|BS);?^r0GO2d>l_eM<2)P#tP6y5a$?h!@=*AxQ3l1~q~=>(`3Os> zVIR@G&g|CjMx2+Fsj{a`u19jK@>4RI(T8y0U>?K=g$w1l+kCAOSMl4IeiW$yHk7GE zm4s<|%Xx-HWHP6}%A*NA=K_>0FcjLm|J?XqCYR5Ro!MoSvSt6K?D~Gk*L9m-c^a|IayQLii#+F2Qv`IBO;5&^2h@hm5-|c z*8*IHxDMcov>zz|Rt4-Dc{jC`~=C`3#`yC<5%a-E7Oda5-xf z0^O9hPdtc``MY$^rAcJ~I)8U0!3=H3ghX#CqtS1L&(CfsV7caV)tPeokxP~~EFcPPcgCWw8+#r^EjqK+Am z?WHo}AVpVsEn73Or*WO9s#|U4UF-=XU}@wiX(HfVSf8wEsedP&e6+5I^3~3r2=oG$ zwRvZ*Rj+j>IQ=S_v`l18^Q5534+yd*D;UqxT-s5$<=vN`qjoTy#W`!R!M3O0*#KAXFP2xI4YXg1(Z%$4P8?d%~} zeu=I`UBVE`d2`7poow@}e4Ad`Y)tJDOZuRLfE>#v<>UB zY%R`XEhGwBYLe04iRYu^>e0=0DUK^)Z2~=c$b{vjAmVNtd12sbap+VvU;*+PZNq$- zby4to=xeCmU2JBi8wk>2`+~aaP&JW*e*;!H2zO@e-Jj)kZv;Udm~8Y-zk@;*z66NE zN?xn+zUd2Gb#ykAQ8e3dn;|l-1H?e?N0_J>A#%B%uWqv4-kAX&FqOfG&FetBFYn>D;XoRZACMgY0{MaM;Chq?=2tel6iv#bm&J== z1^&Gd#+igk4p4?3@z%a5tS{OVWC43H4w?#B!GNQ)Y7kYgHFchzL?C+lITXQ4 zKuT+L({;bGDffTgd4(4OS4k%rQP=y7?QJ)A(RtTUwrnnixjIqwE1SyK*~pD&d^Z`6 z;x7i_2`M)3SBTug!m)x@)&Ne2tMW(@k&5SmO*H~K9O+_yP_1dl@`1e8EyrX?@FE}% z0Law7r?G4`9K7|bJPP*176C{MfpY9AaX$4l+56aI@EN?l2f@gO#H4VhpK?<>#J_l7x!(NU)| zXRZgItkorNq7ODaEXTh?q3|Jf5(@|yMKjb>$2#;O@sAN_rJ|(@hneiL5M0b8Rxgz} z3HgPs0#t(1E=y^Y$E`XQ()Oj2g-KPs8Y+(Fj6uA1>rs^XqLXj{4 z|1pn3AT7tO*CUn=Rm&NDcWQezWh8X~{2cw}xk;ul4| zQVOnwJR=(j_-qyBN4d2h&RVuc(sDuH#h2A@tfQN^}>57UYm&Kd=G5<}*BeK9{ z%=hn$BL=+b#v3fVYs8Vu5S4yd98sGRAdXxX-$xp3KG%pNcSGTLMI5;!G$4*ZgOM9$ zJO{W=b$d_D1G`r=^qqF>u95`~#Gv4g>1?qaxNT!m%nM6)%5$HK}M-1a5o+A`5Kj7vau(f`at8P8517f$?P8-Zl@| z#_X|PF)e7sc|!ze+Ly&mJ;b=W?7ianzGoJYa)%nQu>TAFi?;Z#Xmj%VvE=T`!1HA2KV`KJaKN;D9Hya$$SNff)ve?^~`em^Z9mx4CzAzCsxmOk&(M=KVsuATd zqL1`nJEE(8U__TM>&_o2rubdfG*p)5VNE7aY60(L_*T!@k+U25F;nfcJq8y8-P*)D zI)K(nNaflEa7y=fxyE_uo5=hvF0*uJYP`#pYBhOGjmdVS=WpG*_7sEc5OctUne|>o zCv9R3^AB)246E@FEH>#Zl!qafVjVE!X)|Jt+7*IJb z4i`nSCWKDLn9Os5Ibp>6;uGA0yTF-HN+ zrMh8X=Vo|4U~J>0_wUvQJ8>QYXnP!@;@Zue({W~%SB4$@-BS1bId_iS^|zb_AxJ@^7G^3@A$odY5e zi~CKEWS+``MMoO-WhnY`p?||*>gY1478v814LLPuYE;HEHSYQMB2I|Mc&3&~d%O1S z4fdM1rRM|rPxY5xm!FiX)S6{dz{jOH2_d1!J%5Qq*rwU0&TO>OLb}q56tv=r*iJXl zvYYU1Z|qr~(1D&0ycvc!55(T&_Qzqxk2bP|PNgkD`8^d(vBOj@Qv07de6 zn>P3sqn@R6UwIoiIoxn_UTQu+cBsx^(9S-uZyLi+gk~V4wN~lV)o0r+cHM?2Y6EEP z(mE}^n1E}k`=gp~y8*w4R0^az6-)J1H>GJDO!L2(t4?rQ4AazV<(gVm_|@Wqu}8q;83dO=l*upCq^$f4tkL}DV95pPJ z-UC|;Pdu2pVmCWADUr*{EcV;HU#i9wsXoevUkPc45iT|qP8(@uCf?*_(^zzg9!o4wM=Z~0$TQvmK;2lLU^tp5 zC{cJN`XRV~hLMY&S1|Z5`l;#jgERpXV?>w>%nES`b{rO&zObn58v;WjRo`KOt&Wl| z1*X5)+blFY<~rq08tbPV<4q+jZ+JxKtYuI)ixf>k=QbJkX$q}FcRju+8KclhU-yT* zA4W{8t4sW#mk0sntOZu(sPJ~joiG&Nqtn(<*}HWzUZ~wBY#XdI0*{xi4#q6Fn7VkF z0*wh0sD^dHN z*d9Kx*c0*0Gx#hbmO|Sh!xWC@wDLVz+?nkNid@Z%9uLBv0b z+rM^Y>8esUKo2cg0L@76Zr?@G7OQC*$k5nldYE)IR9mk{E-@QY8?9zLB6KPh2%?&v z#7+1Hh|q3n_~-*}rVodF@yOR8{oOW1UnZrEat;?CDAJ374;_4S+dPZ3)PeC*}EmZSP~zQ*H9W+Jfzc3lLKN zef4dPwt_;KW$`Yj*$KmQ@$G&WK7br1IGHYXYNPGjPK#@&P1Xqy3#o@@e3%TUl|GD{ zg+1nf+Gimq6xxv9&_=!1pdCuse16qGqtH5W#04fWt&eE@lp>AaElt;@kb_~Q6_e_t z&k7|i5pS3&)p@y7?$5}}aEudz;+lT9D?^Szg@-fZkCFg7uuF`kPDSe1LWx2gQZp{=EHJNFJdYvu zqp{RPo}P^@cTA4hG-M$A)4Vc4?JZA`X(!+k+gamo?(Kq|ZOm98Lya>!S#L)X@9YqM zQ_xVwySTtaC<4=6EMNf1x1|B0auBYkg-MsfB21dx1GsYy#o^_$t*QG4o{oN-EW$cnZpLx$mh#ew!?hd&MM(G=OSOJ5YERr)se=ux+q3 z+g>jTc80{Xo{)GcNZZmQg2IK}d$eCKZ)&xRozCp1vz zS0%7*wQRRtzTnI?rrrwuSxB6WR!;XJqLjB~&Y`x|X#=NYK~ zLgJqhm2#MOrqBSy3`@~3(2^vy$YrNHO+VM1t`q#~!82s&AI35OOr>5XKw0Xt11eoP zG$~qFvTmR*;xm~2i0F8LNrSEfc6bLd)Pw=H#-8B31%9g^`Jy9rv*7K%S@@tEA9@Bm z^VwV-B}oQw3Rjc*)ST2donkUf$A5BBfAOxnnCIrI{R#|w0W*|=y9HvB{2hwL z6@Dg-PHYl^{+S57hs99I%8xQlj|$uYQWUdQiOtI6iW9^q$PM%S@vstrHSIXPmm4?7 z7x%Op=L{x;=7j1X7dU}{fK&Zb{ZIMnIc*B`PIXX&+>7yUO!PTIUSD}$f#<1GsT8Gr z2udC1qcT;;DOXNUg8#~2FNQGZ2jBTaWn{&Q4TbftE{OBXCaW<@3NPutf>1^h=X*~9 zGg*$HLKbL~`VfejnPBqW5gV=Jz0BlWyzJz3FE=?0V|=SGDE3Bz;!^ap5F8a(MdQHk z=ME^38x4ugGzPzi8Z#)Kjf_ULSyAliy{(&ocu3ba7h{>~kApR^`WOj{WHhg8V$l!y zC!c^Y-%q3>-uRt4eGoNHiuPDkX=T?K|A06&`X3Mp2XY8(kSL`LtvwcAoK? zF1lx(s5dh%qpy?AIs}e}m8?Lqn==-Vq6`Prcap4|=^4_2M{K4ig<*;DM+m6dtZQ|ck?uK^6^xaY6B&*)Pb1B=NE!^0D|OEa6Ec&}oGiUu zI<;(L*~zk#?#u3}8-l0rhlmWRuNJ)ox+xJI;3gAhB%W8r1Y{DWs|BIwh??Zj;g9z@dPs()}H{E zx;M{tq#8obgF!l}+aiR-nZ0B`GOf#5q&Qk%$puY!UY}+9o1`ERDg|EcWPQ>&2fhuBe=kW*s=+yBNJ-oxI1)iDQJA^E8gZk7w! zLV_?|*Xm-BcUlPMTgPlJ**OmJA7Q#>*bcuCE-*esp81q|Drv2~vq6^jho(!24qRXa zj*h?bIP`?_`f)sa~JzAODCl*CmsHZtELE3X9Fu>2AG@eD+MVqhb}rDO8#uQ zmUlYufdN(oM4ns#xG`g#cNK9!kzfMbg3AQCNoIr^JJ1*$ZvK z>@?|*jBEwMcX(J{E0eL*qhm`c>};?zJBpK?F3Vs$<>Tb%e`OkS4|ZCRd~(8m>O2S>Ntaot$5Xu zgR7x}TV-3tt+uUZjC-+}Yct*|?zzYs&r}ee)A=^a*(wxRmY-dby&dlCuja1LJ(;^H z_f=-sveOHh(YqFI%4Mg$nya07`JxtY>CH65+PT)-CL0z$S^VVM>N!=LtiN$>vd(d> z&)sA#e)jaj->;<*jq8|y4w+_O`0V=J)3Gv&Cw_jBYFNU4oHWh8IrmLweeQ3TjWxWY zpJZ4)H_0*l1!Yd{GW*Oy9G~8`n zJ-5P2x%a9z>1zsitFO&#p7@uG=I_;gi&XbW!)W{Jxnr$~QvQM3%dV?^_C){1*<;?s z`20}qoAh@SMqBWTp6Z7M@APCy<;957{+Elp)*RPuU-j0Sg}O7V*tO?$Y(>smjXtNM zVQuN$h6-?Gt8-SD&{l&;xnTS8U1k+H*DSm_N5`+}WG<>ZboL<~Ooy6Zbxv2hieJ~j zR4lz?l&*7DT?WU_NVX>$O4qTOrK{x`2^U$zZlX-k&2f3?aPmR)wS-^Uypd~<1=ON!o39Dm?to% z$6=uJ^cprRJt@JB-^_Gw@J>#5hw&`l&1Ndb{q3R_gu#6>`^5yquC}$gNgpKrF5!cO z-=*Bf7`Zwa_GAuIju`UQilM5ZL(<&GSFlq}FzQXo2wY@%-mPeJBlp1P8&k;mrWybh zzs|!T$n7-J3d6l|V!~&1cPEUg5ZQ}iElK7hSddyCaG9%}Yg)_sH64tpCh4~*BY3dwqyBVg$BMoa{HU`T> zzy}lN5ai}CSzJWKw#W!fF&b`5X4aIc)27eJo|$8_&z+Y`ROCPH$6#*7rKe!8GQRc} z+^a{pV29}%W~G+4+J04hxs!dBWXDhYpJxaJ9#OTzhL?@f-S)`1<}+&aD?{F8S}_hf znnvhoSbjWe#MwE>9H|-^*94e}GBB6c`23Az5sB#579c$ailO|HdCjl{ASa|FRbvs^ zE9k{hwPHV1T&61633zv?U@O{X6#mh@-}d(l#4}Qvh+01og5bQf$_}G9BXkb3^SW4B ze}3Rn)lCA~888{&`qa>^f8#Y(?Xi8`^^>ZS)W>aKUEr(9 z=im?!^PQnX>OuTWjFZB{FiKo1Tx1QP#ubOl-Tp7QcWJ>+n+++JZ^WEXWQ=}#ghyOt zyH%fV$-)-(jW`{~)C210|Ao`G9||20%-TKrbmaU-920v_%J5Hb@cyQ&-hXt1_sZCN z7Wv5l5nsf#gSku3!Y1}E9g`GiK2-i)=Wt1A;>yPJRtQgTIq!skW!7zXzvU+340leh zcA50dwqg5*w>EG!wwkC?zugfJU*_EaGIG!746h6EX&2cJovjv|qmiwJN0HO+Jl6;f z=_fhPUF(E{p;Wo!(e*#kgjbTYZ|EVW>nZ#7AR{Stk8eq5-NltRK_h` zDg!mz!~9;q5S_8;a<+0?J@r(Q$JAu!Pzp8rt6=mqbl5lO)aCxGN?MyY-soT#>L78} zo~>=Hy%VijsB3heb*nc-cy$dE$OuQz8QeHY5$c#R35G;7m|m#JM(9Q?Cl%SqOPAo< zHwq`Nqu4~m^BKjy$ZTW&$UKKTxKzRI2r}y!?WGcd>ayx`ws9FlFO)V$jf!pCDB$jc z8OjT+F{jpC$H3{hAsF&A`0G1AJLa;V%8=yVG5_*A8zZKnTqKP(Xsr^qg!e9{**4rO zOB=y8+ot%`%4NpvJnDmEE0fe<8+Cyl)9D|YMwb0qc?c;S`JGv=VIt8=ZwKPgOI>$C<440AYD{G_}-)!3RvHkJIaJ8Qf+;&1J`y;Lt2!k?s{=iNp&8DL^ zM#O{RWoY4@{%3?|uX?&WT8)ILwVOz&G=7fV$+nYU{G`@tUerMR=zw%dcc(|YP zv&fGSPRM`doh__F8x^=V=WRan0C?Aq;D!ZJBEZ&DJW`pF-2ipBiEuIsf>ENtZe!8c zoNZ+=MMp^FO7f2N!EfPLa!*mEpf=9ZrQlh=`0EG}nwf?qou&RY z(|N{eyw&iGjjqG{%#%1t7{>C@Y#9&;+`;=IerH2c7+)nLb4MyzJBrN;eOE@Cg_nD z!_gg%tO<_v2T>+h2ibGnFldt}fvK9{vtiPW^?9&6!jDjiW5jX8KcNpPGbePh=_CDC zICd#u(MBi#9$iCiiXU#aelo4Nu7 zn##5KeT=(dRQD@~!m-2PRY+?bC)1A1ARiV;hsU_1{RlD$bM*QDT6UI0AA`y(lS8BE}5Vhz#NZKE3at<>A;VUDk>9Row#43x^E z)c3>2`r8HI<@$z05tySpTWvLSpQ;QWlyiRTSZns#@|n^R+c;N04(ZIU4!zlFovir; z(;wfGO7atIVr-hzGeq(V(=;DfNJN|AH|PX+zxY6ZzxWv(t0LmbKHA@=O8Xn^S-Ui2 zBW!fD@aW;a0ecjXo5o#w2M?qpxbcCzHIVPk)LRoaeN+VM!+I+)fk?Rv>wim|tI zSCuO%+S$Nxr1cM`jV>Gd)|c>|X%444mce?2mGgJ9GG zBs#~wo+8u!4%h2hGHs510Z(xa82tAW{M~}YnfJ@0 z*>&;>dLWO~66Q)lq_UPr7qzAD17mJzlY7^jE*|-7 zD_rNoY%}k!aKGq&$pf394Fi_9=Sd?2ZITzi^2|o?Cx6XbCT+m))w5GZC`Tl{w}D8- z=@)(!sbI%5T`*fRvhL5NaDAUjL%c_~C|1~_4O}#ZySV=Cn4?#kv?IIc`(kMykEMNl zFm2Od+9!*w$zxht0uIzX2pH8T8LjIRuY;{%d*3o?`q4+8NU^iCH5R zS(5JIHuk`#4ecAg-7u|YQ%!r#iwGn1Ze))H_9FAfjXY3Kn)ER2>Y!9J>$`U3nc0M_ z2Auvj#~7-O@>_ehk*Qp(si*ebwwgRPgY$*9>FpsR;by)I5l6Gu z=I7Zvb%*w4jsE9~q52d$05mZZ6T6;bKG#QPurqG2X0v{~dngV~XY14P_6eAaM;*1` zigiIVmB)eFiULx>HQJmz6ex3XmhFfW({V;Wk)SzBvmA98Wd#m{x9?-&vpFe~se&OOH%0ZXo6OGY-$$X-xG*rDylVB+4g4K2P0I+g~rRGb~#P9pjYk zoeQHJ!roRu7e!3lvlK_BpwFlK23_MA;V1ux{n1MJ5U<}o=CJfntpUD9yf&z)e@$iwbjBE^;iF%D12n z3SWm@t19ZK`YWXosrYI8)uiGFJxl*<#i#-pOrUeHAWPo`1>H?uk+DzCn19XG00ty1 zD-?csKeVpN&T)Jv8v87DbgJ_A&f6D6WjlG32FIH^`rLuke%g)9WJ9r4lTJdxBx!O? zb-3;Gb=*_G+$V2Fe9J0K4onSM|EYbJ8SGPX{i!;Vt%h}R&mCoM*U`kEi3x#;BTa~} z`?9OqX`bEebCmKZxk)> zSwkHum?CF-@kCk#iG`7|3DeKa;8~BJ&dQvapMOY(|PqK#+0`yVoJ_>ce~saw^`Wy*ybUocQ?lwv{^}8ifffHIA%_asF#iH ztTh=dS;Mv=s)W1H-ROSbJ!FG+8%Wg&VS|1v@mlLb{z~vGr7CPpxo+l!eyhinY;SP? z!MzJ9*iDtTGo=HZ&34Dx$`p$lrtluH?j4ov2DB9WB5`^O18I~#?yE0gPB_bTb+Zwo zkotY3k1wN<_!&H1oMp~xjnx0NDwXL_!=45L^kcJb(Kin{11aK?t(I5K%R zvKwQcUn`ZfQm zesRV#;KRP{v0^SMe1$j;W~$^HayH2Q`GfaDA&yB=Vsr%lWGEq)j z-QF+0(!->U&$Aj?v$l$rxQdQH{wPvm-%yMU_6=}%Mj&?G{NC<#Vq2WB^((bxs-bS7 zC`3YClHpEc8YFK-AssD;pM&}{CXF`_gG^=cny`e@;5W&R=Ia@=(I?~i4P^O1a#4Fs zroxmlCV{7g4 zW!hV&$+W|9{Xg9Q4i{154E#OXAylPU1gML$+tU`1J*C3?Fk+G#kBrB{|0FcB07kBL zkP$>fZ*b@x z?0!1;ZB^hT_t7Eg`Fk*(Zx#^YGCg1Y|F!of;89dr|M0Eu&K^RuX@@jW*&u-c0Z{|8 zGzo+bTUZqZq{G@lmHKRyn5MzsQZJC2XB)>LJM>dpAfjU$x=Q`rpU8I8@P{-rSQp!j!! z|LxPCfl9@REY!3tGt@S1`s~a!TSwba>xrswXdkmmar@-&RGMo}-prnyem&ICuh4`bl2rJ4MmMf*k)P1V~Ql`no_pO_BR(= z!Yzmk|Ew`4{eDyr%A2j*-NPSoDajHqf1MH})M^OcEw~f#5||?*0AI zp-?nPZ|~r5VP2x*CaZS{?B&xPe3HROD((;UHIWrkaS*oX1|zPlxDWP|N;nmHuBx~7 zOjQzWTP9hV+gX!HPZ;~Hu8GH{X6C-j7x&N9iX!*^4An}BX%B?Z6CvoQp)uuS0chr-t9g7Ku0*ty;=0yPVVjUPRY6BUL*hMqM?o`x<7Lz-bAUk8#Y z%%h|@uz!$CUw|_l{iM{Varm+E8RwV>{ZeU)`3~XoaOASH%+mWiU255BT{)bq?6hp0 zcqVc}SrR!s$3gXHPpRv^)7+1hS()YSZ>4toP8(!L0^*1nm+}$hEQWSxaqkGf)5KfP zCY>G1*c1A4;~8uV3YStV&*|8VvypP4ODeD2B&C+0gWmvyoPI_sFQ?xF^r`L6bOqKR zPdd{VTZX8qc)ePvsnD1AtJ1N_XDO(*&_kXwpzO4v{N?k+DsphqX+x^x++|9N(Rn7G zvF}sTH1E?I-|O%`hTad>ydTi`UXS-3@Sc)rMApgRAB3oyCcKVip7?>blO(6N2W_V-9#3Z@XiXFPC7UM5$#~{Pp|B6q!{Eo{WJ7AZk%m+@lG5Yl zk8kWVI%C;seL~S`T~guc7f8cHOO=*+xrxa@?->*f_K~+a~bwe3je-5%d z7ge6_(v^RF`r$)n%44a<;|ZtgqK`z?ik#r`M49y=pwoxqcPM^Gn)Q16jeO7<@H^D3 zhkTihm9^tx$`w>a&Pk|BBr^lBQWL*R2t&`(U4&2FKf>$`39XQ@u#b&nl`MuD8)wMx zl@X(lOS;4BIp8exaPLPNhr2E|c)oX{jN>YATMI^D zVH?}bX$!zgOixo&(XK-q&2h0-=PG_h5|hj8E`-66NKqxvh8lOAzj;9W3lzmziD5cH z$I=d@cWu)%VORGf*T%(rULl|>%!u`ApKt;Us+=3rMCjU*tF?z@?**Y0pkgV}0mz96_FsQ?pD?pyh< zno2B9!cWG$2WCTR=vPf8p|fh}LqURmMCu)|K^x^SYssBCi(pneI}e)c$UG|iF&Q2@ z0*0aH&Xdzu$+yj0zLc@-JLfH*zi8=QL^l<)Jl-E!OXd~i%*mH0&0Dc@Q9fiUTj%BE z$&2SLUb=i0c4RGIzA`U=-dxb!u>|JUpdn?!lAJ|K&q4Ww`SQJ{JiVNox%X@D%(%o4 zZezX&yGx}kT2J>rAND<`9f%pX*Z!mZ^DZ&br$Uc}9>HSo*3QRFy%tJ?x51okglxz6 zE(}b={Ld4eCt-+5ieZMEFieLspYR!zqC3%!MA+G=IT~jU#iC<9RQ+L?F2~K7XrklQ z$~$We!<6M0RTP(t2b}x3W)9jDnKa~NY1rej79VmI!Hq{i+J{AFcj1zn$&b%#FqF8Mm>7)Um`a$};}Cv`d^_2|BESkOPx zLr&^tTV5AT#->rRCx(Hzq(d-vP!WZ>4uv|+a+k%AC5iKCHV0E z)Nahmz#=v^6Zh0&mJg$JYAUvL*ESXIpwIjeJM0`OX^1chduFnA5k zOUr#O-Fzf1cYrym^8>IlX)qhDvF7*e1-YK;{`lAkt|Tr{iEFKSJJMQLRglY~3vzI* zJUT7sx%4wf4V(+{X4nEuaeEOn#WaA$k}$i3xLrIjdi1(|6AOaOS!2UDY{(7UP>~zD z-ncMi{e*?V>(?&~TAyP#Yxk zhAknZb8O*TCgz20*^m>ur7|aEOS{>@TPDs9+OlD`l7FNmt_+*i!!Q@3gQL8xMn3*d za)x{_RZqPP75$ebG(Mi{2_9%#$AG##la=o{Z${HNFpuSFe^)m7{ausa$;()tm-eG! z(87*p)0n#B{6=G;OPA_8`xHi08zq_d@_YB}*`s|Q3EWfBjqg8r^{EZa{R=m0L*FYN z_0OdrRzt2E^MsJ&wzBcQwLembM~>B%d&r?zWV3VTD%+0CbQVCd zA(G+sYYpC8PHOgQdg{zRh-H3m&LXn5mybEFVRAniN?(&%tKkk-mEKcR5jIrYRJ1y( zXdZHMUscV0OL0Qr*j>l7481No<=#V;L}t-C3@I*CB9225l(&=B_vUx$z4 zJW7iffq4Co@zSvGJ#=o~6pABqY4Qjdai0KN=i^8IVOW4Si8oDuY8VqkLLlCYa|$ML zTeewClsml}$;)uR8(<`UnlEF`AC}*-I9!8i&(I+8E54y?hqN%PTOP_Ifjh z2saC*sr0F-ST$AKRJ1y(@YWzrK?xW_Yehvhv^EOjQmft4`5Jq$iVEu#dG^YD@G8beu7nYY&xy@T$5CAVmx*zIx?#4&0e71 zk6*fETGoVFC?K4~dzdaMIhjfLR5Y*e^K7!TTem6vbF&_AqWJp|o}&^_ z%Aay419@f~UT^9TE9D%fXTjju30yj<^vWGm@9J-VeqK5TuJoq|=QiM>Q^Rc<4!w^7 zqN%@^54}%j9a{~b-roog*zC^3^U`U_ji8IysG+3Mp5psYs@p&56hm4~+z% zpdRNT6)zb>rkv#qlpk#N(xv&6^H(iWy1`k{63Q*Wb6ug-88vwiMRgg05v1WhAPcUL zH6UX0gsfRjP-@S^vuVoGrHj;EEb17K(o&Gj&36BhS#7oXQ|&AV=BKoe)HM<7TpT)G zvVwNpV2sHP8?VfRdjEN9GphDrdFdAa#7s;(1N{ye5sv%rluW%9uKN3KBeS zRKw@Y$(}!d1)6nDPe;CBqzpwd;A7cPa?kq-j#A05FH&d{KzGNQkn!_IT z+@&%xMdyMf;LNYTsCfP<%w>$8AU>o?;X$2j#!8q^SUhhzWnSj;rHi?os5*>aD*IVs zZ^8C@tOy?pq^Zevgd?k_4AGCzUzD@LPCKp?!K(SBjEz+j@N<{WTfwt~+kx*RPtISO zC$HcNg~`Y|8F%LqmuWQH$CuYMuu+EXvRZJx$(7YX;#|y}aXauRc4S37XAx%NkgbT; zlBG*}bDPt-`Kx5Y#Kt1`eY|Jyi}1TO<11W zn_JOF_HlN}G6n5B$pk!?;(Tg$DUUhGFI!vVL56MdQRB5jrW6_()2k31)sw|J`E%?_ zV}WLvhRBmMW#aq?ar-lT`xD~{D>3??w>V>I-l|y{C^pbyb_dlPrKzF~8zkjv=ohrT zK#KQ0WUsuZB2^{b`1;S^Z%P_TM%w{L?z5$f$M>D_aFOS1 zndQ3=e;oHvNm$*;ythX5?r~(qvtu53zGB3Co}xRtAHMgMw%=xy4tPc?ySzXSnmc*Q z%g9# zMZFvJVFqd{jO&G(is7@Bk2V=wP8a7c@h%<=$NY$W@x1)pIr6-MIrH*pO<|DCvKB3x zw;*Q`dd(I2%U8}(R~oSV0BTwypcZgm?wwdEpg%8K?Sj0SG^H^l;Fqn0Q5|}P$qguX zz^spVQ9{8_nm0EWT=NIXb8?pSKmo+u24a$pFB$Yg=r+8|6dXQv1*T8t&ckRL4Xd(B zA!81tCGY-Nb3(n6@627EzY=MhzXTy5eREkxuU_(^+}X>i6!}sQjlSbYaK~QL>5Ol| zWiXxb9o*N_9qud~tY;bf!rcfr9Bvt$7rz0|gntY7f8+ic+yy+}iu*d;AI1GyxcX3? zQ3?YuxCpo#;ZV?+UV11>|3C0)rDW{?xmWjrUC<2?SB!m|*o-eFy1NHE;(B8Bt!GT- z)cC!Y%?Z=l`;)TqG@Tu~E!eSn?3V1g_JgEp99C%`gXNfmSVq+KGGH~yyW?>t=!<%q zH1vA2<+@WP*bP3m1k@JLNR`)u{()=ik>1l>sdw4H zX-&^-HJqmTVsZ=K*?MAK3w&J`Z z)7j$-GC!MsF!Qd=kETmI-h`oBw&N`<)Xg2KuY3p@B*j8MU~I4hU$>>D^jn@&73{!_ zdzDnoiY;+QOFIkA!Amlh1K|e4f@WB8DUQOd!MgAJKsoCjFoJzn71T2_&9^MXysQj&V7)} z8x@-+5K>$_gf!aO2^Q0*#+9223uW2rgw|;sMq3|SXqw35z+!PQtq|5X_e;gPVoQ7^ z%zt*aJcZ>otUhC%y(Bp7IHlKQiRP(g^2Mq!>n~Ly)(cgb9>I#jZ<4_{6_W&e(0Pz0 z?vJsWKr2Td!ZB!}T!HnCH8>Na=*3dZ;qBpZGww(1eEHx?80#!cFgPSQL$Q=nSGfm1 z8w=ORjdn8R4aFvvuR?jMzxF6AS0nv+r(!XgjO{(1Wx>wdyit#4$^7mH)%v)y0gsHC z?bH>IC|LtT-lqr4h62Ra7fX;McqoD#i93Eys*J?ZROTd)+?yu zRjkY__;0H28xvwS+!RynxY4ujU}iV-OT!}j#$wU+)J$d3H8`@p@4pnkAXDEr5{3z( zc@59HzQK4l@MjzY#xv`suT(g{QPsA1O!2nNb?ZJ__a-(u%^ew3xg8bsVPAP9oNWwt z)85n>rE({#?T)IcIGwaCj%4jXUQv#wa;Z|OBx&byX-ib9j!j1SDM5Lfgu9!UxaOGA zc=r)7boXKuiD^qyF)vO2{)bFYDDpx)h!XpKi;cLt_Y*GI+*lq7X^9`>ECVVft0B%X zFsyi4a!@5U=lA=#q@(3yCk{dux3i#5B)|q++=l)M5$0-B4EF zMBc=jBVANd$+t5~D%DpQ&2mL&F|5u#pI(KNrfYCK(aV9FitqlRZ7Pft&bF)tivnAZ zNE#fJAU6tO%SnE>m_%bmwuK_w$SD@Yj-iTBwV*2TPqkX;v4Rx|m%4vXLJlhFgN0M$ zZ<7j5lbw#lhYBAooa{_RSW08CCvGATrG-=DCe!JCrz{tvx=w|VsSoI5_hbW?g#rJc8~`%AZ_$5loak1Ku( zg={YsvN$w)ao3e@Ouq)b$~Bc2OQ8#)SNn<%>sYV06%*nkz$wBJQ9QQzcGVKB%G?O?_{?*E$NXyEZ&E=faBHsp09dn^sq;i#;rbx}-sEdj_45 zTDA;^)nKP8C-Ps>xm3_5xMx77Mm1MS5a8^b0GdTr16x zD%v1ya@4GP%gpB}Gso4k1IsnsD&0lge}RL}dEU%=%aasoL+Fy@1vL)$@I0biYv~Qi zqymmhg;S0Wo)o3y)c3`eX6PJE>05g5$3-LCD5S$H(?~p%Oe46TbUYk)hP)2L-78y< z9Fm0{E|8?seR$JM-N;Ee(y2-*X)V0A;6*a0a0_v#eDsE|4cCEqXu}OrI|-_vl-HEU z6gGuR^_7~6+y0|%Dq39up(s+7{^K6Lu}=?1H2udDTpaLKvZ1fqm-QxP{Ky>A>pWMr z*+9<=HP89#v!ZHcV*Q@jQ0%Q5uJp07Poc4}#SVAc<+2A@oYCxwy@ai_q^lCPyHOb( z!B?=!wv>Kj^?zu+Tb9v)(60S7^q-#Up7fWwAh2~N!ZZzV|6(cpgs`&Kzh_k(lUJql+4g+Q!*PQ zn}4jnu8u(=@H6S|6Jc4>^`WKD;q<0*T>2>NS$L`|JqDgr-Yr{Hg-9NG2ZEtt;K}+Y zveJ-$PmG1lZtN$qm~PH^|Cz)md0)Nyx7nT8!WT7#WtJbjDGr1d=atmh*+F% z$tbf)vgE$KK9A={-hsc24^NQXjt0rSq`?tVdmQ)rbUD@5-)w*u&9hyZj58Zw8f}Jt z252$6a%%Os9CLDx9bsA!<`B4>>z4yB$w@hj;CnrM`eS1lOIeW>{AD<{I8$>WL6J|* zDJ9G$*1QA5OWOoHOUp}pM@0o2f)`q$0=M9XDB6c(heZ+M{Z8-r%ICPfw*g1y zr;In4Q|;KUgyu3ecWt_^VxN62noUQX4l*-f2Qtgg7*`$k=+*=yvyWF5n_TgUTI1|U^`Ebv1-!?v93(h+b{Wk6|`TR3* zQd@cR*M@f2)%P&7-drP;$vBYA~Lh-woY9Gr&AfWywH4)>2S zp*nn8E5lM`bf0dO@1=C9400v*?p!&rj|so7sl2HGwj*Ki^bk$U_AT@mbs|Ll!06D0M{@l|UC%RR2M^3E>Wg&? zT=(E~C$+a;QGdsA>om9(5cOBw*TH?iMO3|_KEnO;eg2K2{s5w$Yjq$K%qM3<)Q;TW zt0Od`o(WOUfY=w&*+WBd7yR>83gru!9e~2*y`7yp*kIG~hWv$EJ?D5W`u4^+6oYd4lbP?xjB=>2!-!D@afv)0mOU=E~89buKT3@lAk9K~m`K#J2 zA5x7Uxeq+(YhW>*>MQ4ey;9qxiGBXcuV`YOepPfeY?Y$(gRx~ArFfgzWmmp*-8p(6 zn$vz}|62AJj{os8A2X;8>Y6Jby6zZ#80g8+R6B{akB*7fZCsl!JreJW%^jSs!jCS8 z`+ey1lQv84Te#mr_)$}F$|TfOVEBTlK>3Gz+?B^%le0omDW~~@&fqMc^97S?9*qj0 z#(lT@d@1lg+;5}Lk2of9zY^|8eSkyl15Dh1jnBWxHxP^9Z}NO^sLAj)C-s*pyJ!2} z9b%@=%3#cWc_2=pC_P6U?>R12UxxirZ_m*M&50RJLu1depYs~bd3lF#9o6C6C9-AB zhi`2`)7W#o&1vEk8s3~Jv*$E@$b6$R?P$y%-BPddHMEX5?=_A=)tXXlmFDJWRmT#y zG!89~((^&@qCc;Z+z;0%o_n0t8RKGKPB-b&`h>_f*7|BIq z{F7Xx9m%oaOTJN@ncnzDad>m=7mVO$Tj#Vof}4pE9CMpIZ}Jgb_ewb>p)%6-Z*@GE z!pCzKjOU^;p1aUwJU3n)&yDjN&yCQG=d5bOaW~TS72L-jl7SLd7lak#3+tN76h6|k zz(ip*MtT=8(qrz|8~XB*USHoxkGVHNgWLvH1!N60ZoLA&Wt=Y#!@yt?b8l~m%f4Pt zv&HgH(0P#3-JrRvp}@=v4#qu}(a&swD#|eIUkl9$%3$ub4MS{tS>_+B%sm&_9Jo6@ zB!doI29*2%X`tL^?u8!8eQGM^CJ8ka-XS*$N*(6AXA+Ypg7Wqp1`Md0ex!H@R5b@4 zw?5vgFdyN<9M$k=gju8tv(QhN_i2Q=Miu65$nZ9Bwfu`*T$ok$OSmu>YJ_w zm0YPgu)x==c>5IQUhnZAwlnu04-MOAYWfuBUgMEu<__{``xNG0?rAz~XYRjw*0{zs z8@4m|eVoHN{*|kY<(PY=XMro-Z`jV(O33P14z^DCxAUdy{xDob-_F-) z8eit_$Z1w7G_8*1pytk_G_Fkt@$|t=19>W&`_*PyJ8XwGR*$yT`| zWARJXd78P8sgU0k$ik6JO~s@%p{7C^wlnvo1}bE)Dv?x04P8ADb$RZk>PhM}$tbY* z4%?Z#n$v7iXab0OyeevcF=qJ0Nc|{^zB;QxOQ2~7I+@$Xg-Y%9q_x0k2}PT^s@@Qu zY)#Oy0_y-}P>;j4b+S2etZYlP8Ze;OV{U@Eb#=`BO)Ybut+lO6$|IG*NqK4NRA;mm zM(_%7DwBT{FgL5CDM48ZwZtME3MCVvB1t9|a}x&}~6#;xWM&&XRtsWGNBQto2;& zP-_sBpBVW33UfbzFp6pwzJoBa>ivXZ?q~64J7V_N+WuKV7!&mK^*D?0Cbzb4_Rs}oMBBqgYGeFv0cv<{#MtX)*~YDI4g+*?RAX2lcm!NNc^S8Ej3v9#M{jK+s(ez z|8xZsyF&f#w%CU=`uTd=+AG?g_H&^A3-@C!^|Z|WZEe#|QAtzHfkJChtDW8&-szpW zVpB&chntL2R;nFazF)_-SktjBRXeuz9-BJ)ILt>MyRI~yXM!vd-!)gf@oGNLgb`s~ z(++DvUDJ6c<{pHPZ03HCe`I?GFDlU%lYbq+-Eoy4>Jn6zHTG>y zr=*zsa4qqgpoH9HO6pSe1$CZ6J0->3m7L}Vg~qSJ^A_Qzy&3gn-*#^Pae>p0P{h~t zO^5q|Sb7$I=niyGWu$d7T~r?{`SZ~Kks-(x=iM)_6M4s`Wa`?g+c-_{#i zxxHhP?&#YRdEe&kuwLQ3@|2KO`E~JiSZ!7LnfyAe{ha1zg~m^Q+Ic2QRZFsAbza#h z9ajG<%FKyZzO=TdbrP-f!LJWC1JoQyu*QvJ_6Kr*u@6{yS8iC4G|*xHt@c40d7>~iu5)30T%q%ck|Qt)&f?N@bVX9!B;Dibx|7dz4K9>i^KpH$IFFivFbBV@=HWmi|T8n+Fs=QSu1hKT%>f9|^)|N?cFp zQzb_z+5@i~S)Q4b`9t;edUx#e&YdM60mpjubt*05+cJadL0V|_x~54xir(Z1TqPWB z=i0{gJ>-qrI>ux-V1>hE>ug8Z$2;38!;A6TWDmtxGZ~+!X9s*uc7|)-sE4zR`$O#y zjyA@3EC`KbDfs?Q38^$?7&9c-W?Z4M340?Ns_q}%&JHDLGS2Jt(pN~m43$y_b2&5G zVUf21YRT5Z95373Eg!;Iv1*)Y`E$?!kfjUFNH!PSzN`MGb_I<11y$JX$`^hrjQJtY z^78P_&yto^vL1KA#`Py2mLNUO9*34|&%&&iFcw&lCG}{V0~_QyFiPy1Zkn(E${2X?*bKB;6vhxBMX2m0J6Ze zyfcv93Ygq2e^x=a6*~&LEx)s1NcIZ0HTqO^pBY^d1AP*6-Q=o)J(o5!x|-fMirS>7p8Yd+@kL(#$Fd!Y4qL2>0K+kQ`++6;-2HYa~X!p zhU&GL%V4nUE&JB0$oH!&if=+(tht-@eDyn*VWXr#g7tK-PBWTUp{;I`ryU=0wc$BO zdHhvF8(^ssr}w`!guxzHs4d7hRZJSs`CE1{&Vb{H9n03K)3x4@?E%Y_y&#*q8H~SS zg>b7i6=SJ3W~l4OTGtlL1bC`XLeD)^A3>FXY^jA7^|u=~VXU}`k9cV{&QtwFLnfNOgD)$dfaoND#-vv7}zfm+L=YL^(^U|FXxY!^_FNPga;{eWT9t_rhLO7jy6qPjz1p2JAXrDqDZ8 zHF`WX5BdreV2JA|_aK&a(b!@)tM5gCqvPt#cS_KhX(1XC@N1{@j1oArDb4G_2cza zM9wxyy4Z{@qghlt+XUNYYmoZ+f(dIop#@V#g4cyFPM|xuf1e`JFi14BLBBrBx){niMx*NK zD@O6y{#d8qtc#QI>4wI6y>5f2`V`5xUXkrbb-FG6Y%smJH##r1ixj&sGal-gCPTxg zA^GxA*1f-3-5jcyz5D_qwj5zaY)t{Fz%D1AYbsfdCSdy5Ss%5P2da7TK zLUjzX9&I2WzEi8ts|1wRL%A=mhKlsAFw6rZYgej5&14lJ;&1n79=6&(r6JzKng7fx z#UL-d&{_Omn+Ws9j3UROF){Y7xziU;FD`PvGiF=KIb=0U7?Fd`(uF%PB6j z-nY>6;7iWe_}J2pCM&5(k}bOXX&5}HCk=yf-B;p3d^hJ>7Fr&9&Y5a1hVs(aosyj9OtL<&d^AA1{msiVZJFO!e+czQ zJt~t+(GVP$;-~ALOz)OuIvHLZXIqC(q;p1`Excs5ZCwdH&$fk^K4n{1O3zQ(!q=U# zm8=Uhw97bc3x+M6uywJvN7l8+?^qk+<@Bv!sUIURpqugB2h&dIVyK(>FWgx;YAO;R z&^8sVZtTYA4Lb)CC?48F9|R7tt~u~<=JQz{&0+TEvrBVX_o*mM5xGO1&t(6jFtz*8 zLe_nM=EJ#nF1*ov!#dU{xZ>V*JF@@bgyUaWCAnL(vlf1|?hWS?<6q_kUjnEW4Dt5XjzOUYa-J-fmDv))@2Kx#NrQ-&qBLYps_T1-l7a|?exhV^O&h0l& zdaSRrpV~;sJznFIeUc=LQy-xf%S-n-lgGcp^G0VbwczB&lTsf;C8cCi=qn~2Ptz+V zYLZW_+w1H)M)}5Gn8V_FsvoYakdmaL6r{w=Qvw^gPH%kgMSR05+goG(q;05-vU&@8 zs834IJ7Zgr()U$V1-#$pRDP){P#N|f0+@?K0MnexApqKy94{R*&2V-~d{LU3V2QrJ zuuP`6sc6`6SbzVX#6FV2?1&!e?9~15($vJV=(UB3iHVMxT@xLwd#d@#^xz|%igo?l zICR)Gycs&gld(T|ja<&88y>)(;k-b6uzi18*U+otGqwAj(y~M)Mu~|^tY&uI6}=nf zZJRbO1GZ6IumhQ5aMuByd20N0X<5Qiq*eD^Vggc(^hlUse%?_pm$%}>x7 zgdp6#`{Jo}qkZYLAD#B5r|zEsPTzX76kCmhPL5!mrni|)V!3>@0&hsDgc=S2LV+*E6rUYU(n9G#+N2Jo7#l__z(lN~cxJ+g`7|8Ro2V*p%p*bk3 zmh`N>^QubKmEQe-{5J&0`i8@egv)}S zi^!jYgV3qtkLd5aN_tMDo+&1J&sEY}K*KaN5>h~a5+7A8+bz^oaEd>;P~_Iao<-Y# z>y3$UOX245kQ@!yfxbukXaNN(r#lSIU;qR3zN#tt(9GpP8{uz3uxGMA{-K+jnhTkib{~u4e(p(U_L8-bH ze^7v5JO~fxLKly8b5Nx!{+4*t-XJPB`1k=j5lQZ>%CG+RiRgsN*T6Vp})$e z!s83ybCuyM0V(k(@ir**O0+oFKe+HRp@h%rrAD#;0j2Vq!3uXr_t zTqS*DRpVJaNk>K_TlJL>NJnKFX*e$-6F?*(vc;IyOeaL{akAB~_R zD)h!!I4{jiJk!Xwod;&N;k@DC8@(A#5Z=>By(!I1l{T^knx)|HrJ<%`(lKpQ(dxbm ziqcxJT?O(D>YWD1pWyc!`298RI0DS0j!=0fIq)Ff8gj6Daq#;vekBpzd$rY-hyTA< z-Ie%ji(6w_c%uI3!sD-{Z%oS{k@EM=s*9)5TY!PgG2Qr;qS8$>O5vV=aIx_BN}7pY zWHh5?>EJ(pi+Pfx_*2%Cae81aPgODH_G?>gc)bqD04;JiJ^Q8c^ta08F{&)fWjW|{oQ zF$2F7otI`~D>NUeG|?&ztXcVJsHa+tFkV)}(e^szPrVM^Ve!pJGZVkb&)d6s=ToS6 zBY!~EKMTJr)r>?s^s1VCC9hn*eC&v2E^l6S1UGLFeH>xdwh$kh-w8XajgQRZqg+Wk zSNmt-1j_a5>BB(njk9-7DiQH(X8M=lCA6*Lf6GKbe<9~V-7-Zc56jw#7+Z7LH+ zzM9cwsWjeV=bgs;(l-r?(5alra27ZR9Fkzd^}+>piu1VM*z3P=xNEb&{y&O;2YLsm zFjA{A@pNdOkxCc5cv!5hQq?&|^UNcmp=nA_8AUYS-k8&?Ju~;W&`S+(%`=5h9}gU- z_QsrE^Qsl@W&l$KJ0He~vvG)RaHmVe-Ea24FYwM$bz zgp*h*hyTCf^S>RRUyx6i;4Z_}!%075#Rra7aLD=vt^QC-sX}nMt5@#bc{0(p2n^5^5@% zX1}(yP_?7K|39mq0pU?{Uqn(VY;SU3#_t1gZ@}Gz(Z)!)EE;vdVOIk|aU2m&i8B8w zeo=|2?))iwSqX|{^{4193OyzMPtiLRdipB*Q}k+kL9~C4o>I=34ELw#Eg)2S9;F%M zKd<8A;8^9VG=Nt@Oi)d$`KRc8Rg{={%WR-3I&R7sGWm1!$Vrp4vd70F@$HmWoEYFQ zc6@f$pwRQoMc+H+WzuC+H~3b)2DAYJRAMk zkoR6?DJNLT>4Ue=G5=P+WKhn9!gICTPYg?a>duSL^jbF6_D0)Vrf+}jFTVv3yyxFL z%!R3kJ{~%_<8x2nMx%;FUE8ul2$Nh4YjITZ97U;m-&eoh`Rv~p1b=y3#JhtN;(r`8 zbIbdm{qwzLDQzxQk9=(E9XF?J7*iWX!nZe9=&q^bH84B_O-9SAOA|>TOB^U^Y3|uk@tT$&>CDg zf82Hb*Y5qjZ^0KUT-gnaV$N-Ow{7+t9Xl>Pb706L|LPa~eBRC;N3K2Cv2WUeaUa(Y z-cfS+fw=z+{U9fHcsnG?05jk;&?6Vaj1$gl4$Dfx5VsQsu^AiEk-$IV%UuA>m={cA z9CEE>7L}mmggu7O%tmaBvGBvv7d^RF_)_zbhkwNSAcohC@D^EX;k&wCMG`+5E)?x@ zipT3Cg|K?UmSqWHb%ZS*Cxm^tIkv^}OWAxIVRI*H`L>D;BJ6~zLf8hvrroN|;1>Dv zHZqjJ@iT=Ob3sSuXa(IOV=m|rkB3;h=L)grdHjW4h&5VAF245{X<4^e0)aUTkB~E$%(1ppU|tp@z^u zXr&+12E8d?JZQoS1bqxa&uA7j4PN|Hy}Cd=Xu>uI-C{AJR3C@i)-1!5C}h73pSxN- zXu=8v{T~F;T-LG8f*$J-51Oz7LH`$lG?#T;v!DmuFCH{u1%f_-K$^=szFE-bV)38} zD-iTa1ab^VR;h%Kg^nJHy$5X~19;FMqxcPgA61y32gQRXtU%BRt69)8OefNxHs~M! zDjqap1%mz@L3EUxruzD3K_A;F9yDPEfnrZfxshGs#({kVA0gcS(-3k0&MSAv6s-kqzV_Yl9xSS3GFK3IyFA^}1;Zml-Xl_-A=);S zusm(=emL-L*m$j8^p1@9u>zvxJ4YBzg-+VW2X={g4&W1yM?en z5H{s`AuP||jxP#fc^g%?PaJ!0zYvzk;gi?Ju?G%{W4D)!WAA@o9J~0iICkpC;@BY- z;@HGv;@CDP#Icu7iDSR|S{(bqS#j*&s>HF6{UDCL_kuWf{zY-@_-b+N4YlIft~j(J zI-U&10+cBB=U{Q{@o;hMJ5l1;XWENnAHGH$duL~H?Co8}v7_R|v3r#Ib)FE{)5Nh~&k)D{(?pDTECntYNnh_FcmE_*v#ObW1}wBQzOk_FE1{Yt z?-sG@k~d#+sXm~EyN}nNZpK=>LjLs|R|Ws)+gAmD>0K?n#jSX1WO#Nz{(&f*m(u$_ z(&l2|{fL5C&Ue8lLVP(kyHW_tXN0?*6vBQ&B}5R*;}G(t5MPeH;1b9F_nbKPop1fI zXTNGz?5ITZR_nPR{jn|V%_c05?|Qd5w%|7*ESH6?MhMGgVXYIw^7y8*Fip*FwM=rX z$smqpp+Z9~(#(6>a^ofn@P|2XSoKwL(}fi{cm|ESE)IHz6#~-&^Cwv6dd< z*yLV9Sl%38?ytp8D4fu8OV8_tKQ?gLaowQh8yNf1AR#Q5#mhs5uv`{f(uJ^G7S2p@ zZ0=}r?8NaxSiXOK;3O?Juq^zsf%7-^W-Z^q*s$A#uv`|u%oM_MS)9xf!g5)>H%}b< ze6Bcl!(t&U@9I}A(_#b5!XFzre`l}M@(qj~y-EnnWzm0)5SGiLvr`DmWuaRuj{Uw^ z9DC$JAuK=U^5%LiHn1%Gv4QjV=}lU`fw85Vg|J)}%eM((xh!rg6T)&?r0){P_Iyqp z+u;QvY%q=c&c3R}ws?%gH;(eh2F~A4UeodojD7VjAuN~06YmINxh#qf31PV`?)axT zcJjZ)v4cJn!tyV=_@i2E;CkVY4V=Fb|JCvhjJ^1|5SGj0i?4*RTo#AU2w}M__I@Ld z-S@pXcH7TFSiU3p?%%Z77Qcdh^&;+fEjDoe8n1|BYwLxuToz}faFOo-E{lH!31PV` zUJVn+ZfzruEovu(4Wl;7ADen>On@=%9{dj|+%!$}tY*uZVn#xx=pg9oNy+V9>+71_rWA{BEgyphWRU(AtvRL$x5SGVx$_8=l;77%= z30s7)ZK#bhZ1=|ol0{Q&p!ulZ%KZ5T!hW$!2+L*h{&PZDE{hjl5W;dS?DT+uv``)$HcK=C&aOJ zr-ZO=Nfuvx?T-y4i>BB>viSI{Ki@#u7plaun|=_--hEMvZFRiPSGcmP!!;{hEq?QA zSGWe(io&_16FpZ2Z=;V8j11>~DOeQFry#!!7lm`~A4Elnd`0lt;}_ctVL9Jtt`Wy> z=`4ihwbjv82+M10Zk!O7$M-~cacp@{acsLjLRh}4;*V{yl={9vOZyA)8(3GwA=8}pVp_PTe3uv``~hlH?P7W#h* zVR?Li_?I~L=%?b?*N+Hc`KpRPHn1$7f`wOsy{0^ErLYPsie2%Q5SGhg`WYcCmqq$F zLRcQ(Uf+vjJNzt;t^Gv^%U4zWv4LgruggMwdD>pB7sqauB1PoJWl&t|&d{yO(U0Q75dhy9~T5Moh9C$$-yM3P!mdj%8ejzNE#p2h6uv`{X4~k=l zl#64}zb}MsL$k+~hqc(ivUuZTEjF+$c2pM)(C)bvT%9)21*Ta-GL=mx@?ppmn&gcw_@ zDc%x7aQ3n&oDuw6=;ajQjuJxf3aI83fun>F{B>yO6oX3yFN1>G(|T4%Jrq^87oVBaZ$1JaO#km44U?x5i2# zBP)fH-d95UtALq{|{v zIM3yvJTbUhLVjE!23JeS@w-Ifyo7vmk0_kS{h9l;x!9`IZ|gu~7BM?2jIdkl#O$aL z_EA)4k-b8MU1Jc(-r#TVq@{L&mk{C`1A8Z$;af{sZwVoIFif6^!Fg`{6e9*l2_f$P z=_Uq82_g7D;zi*S!Jp|N1owE9$UNLjD93pT>32>@(-%)<kqUS4+tLNHMrtLbe%2;k<<0-%$we!5y*ltC_IzJZ2+AGAd(~pT`e?F_l zwwQC&hMc7Mju6|C%G*-HHnuk{@>Sa#UOei=Hk$6HXk3>V$r2DJa%QGw9m@FNn(6QW Zv*s`qKymldcsuE)G~8@B;|79t{|`CN#k2qb literal 0 HcmV?d00001 diff --git a/pcap-parse/parse-commands.c b/pcap-parse/parse-commands.c new file mode 100644 index 0000000..e169794 --- /dev/null +++ b/pcap-parse/parse-commands.c @@ -0,0 +1,106 @@ +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include + +struct usb_pkt { + uint8_t ignored1[16]; + uint8_t incoming; + uint8_t ignored2[6]; + uint32_t length; + uint8_t data[0]; +} __attribute__((__packed__)); + +static int get_next_pkt(pcap_t *pcap, struct usb_pkt **pkt) { + int ret; + struct pcap_pkthdr *header; + + do { + ret = pcap_next_ex(pcap, &header, (const uint8_t **)pkt); + if (ret != 1) + break; + } while (((*pkt)->incoming)); + + return (ret == 1); +} + +int main(int argc, char **argv) { + char *filename; + char pcap_err[PCAP_ERRBUF_SIZE]; + pcap_t *pcap; + struct usb_pkt *pkt; + uint32_t pkt_index = 0; + + if (argc != 2) { + printf("Usage: %s [dumpfile.pcap]\n", argv[0]); + return 1; + } + + filename = argv[1]; + pcap = pcap_open_offline(filename, pcap_err); + + if (!pcap) { + fprintf(stderr, "Unable to open pcap file: %s\n", pcap_err); + return 1; + } + + /* Seek to offset 598, which is where command 0xd7 starts */ + while (get_next_pkt(pcap, &pkt)) { + pkt_index++; + + if ((pkt->length == 1) && (pkt->data[0] == 0xd7)) { + uint32_t addr; + uint32_t bytes; + uint32_t sig_bytes; + printf("Found download at offset %d\n", pkt_index); + + get_next_pkt(pcap, &pkt); + memcpy(&addr, pkt->data, 4); + printf("Writing to address 0x%08x\n", be32toh(addr)); + + get_next_pkt(pcap, &pkt); + memcpy(&bytes, pkt->data, 4); + printf("Writing %d bytes\n", be32toh(bytes)); + + get_next_pkt(pcap, &pkt); + memcpy(&sig_bytes, pkt->data, 4); + printf("Signature is %d bytes\n", be32toh(sig_bytes)); + + printf("\n"); + + uint8_t data[be32toh(bytes)]; + uint32_t copied = 0; + while (copied < be32toh(bytes)) { + int ret; + ret = get_next_pkt(pcap, &pkt); + if (!ret) { + fprintf(stderr, "Packet cut short\n"); + break; + } + memcpy(data + copied, pkt->data, pkt->length); + copied += pkt->length; + } + + char name[32]; + snprintf(name, sizeof(name) - 1, "prog-0x%08x", be32toh(addr)); + int fd = open(name, O_WRONLY | O_CREAT, 0777); + if (fd == -1) { + perror("Unable to open file for writing"); + return 1; + } + write(fd, data, sizeof(data)); + close(fd); + } + } + + return 0; +}