From a851b24d0af009ecf277766d2a5f81f9b3e7f9f8 Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Wed, 5 Apr 2023 04:20:21 -0400 Subject: [PATCH] Fixed TypedData unsigned value range (#3873). --- src.ts/hash/typed-data.ts | 2 +- testcases/typed-data.json.gz | Bin 40762 -> 41226 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src.ts/hash/typed-data.ts b/src.ts/hash/typed-data.ts index 59a513ca8a..3fdbd8c413 100644 --- a/src.ts/hash/typed-data.ts +++ b/src.ts/hash/typed-data.ts @@ -105,7 +105,7 @@ function getBaseEncoder(type: string): null | ((value: any) => string) { assertArgument(value >= boundsLower && value <= boundsUpper, `value out-of-bounds for ${ type }`, "value", value); - return toBeHex(toTwos(value, 256), 32); + return toBeHex(signed ? toTwos(value, 256): value, 32); }; } } diff --git a/testcases/typed-data.json.gz b/testcases/typed-data.json.gz index afe593ccbe2e5cfc9952a35ddfd3275890276b94..a997d2a7eb2ff7767f271e297d149906bdd56ce6 100644 GIT binary patch delta 19514 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 d5y#P@0g-clMO%>0suBesXhPz delta 19134 zcmV(xK*=am6<0`M!1`KxSMrq(P-u{!WoxJB|noPNXmhDL zdp3Xj+uIMhdieT7f3BW+?J>VO{(fHQI(PqA8yggjwY0%*1RnDtLRZ6ekI~XNjOgAO~C;3|(snUC+=B#bT0S4A;R_t$@?)ibBpXt{|In2(v9K%gkJ$M(G z9}R_+rJ>ezNk%DA5u{e*fy2dee#f`ss27{EF8W=d(zP|Qe}R3(6icY!zFJd`oq}wQ zHYQ`5K0F6o5Lu!hjy?fkh6yha7Y&ixhlm|1{0gl?;1ISYmv~q>SpEXhG0)@m zTM?m~Je`6?yg}jSpIm$58rUnwOtW6Jg zlorZFW8Ywdi#m;->N^M>fkhr{_~xmmWT;wj@+BKkVVi_LikM;#-hJ z&-BRwe?kfeaGuZ&4wg>b#6b}Es6p`CN9^3&<(}8h%n_SLma7!bIa{Z5()1p<8!5z^ zkg+oyGtG1pX^Vp1)9{4B(eE*JiF0s`A&E#)puK|iW2>75Alu&-)n%Zw1LPTT4OZ zv>@i#67xzB&vIbhNkL#U|y{0sP ztP#l3fZ5bsLZ+_*))~+nOWlP?uz{ope{XBFECL{ud&Ffx$5JLJvv*WmNUW*gm9@sX z%z~^KQ&xZ{a4jtz+Y7fzsO2B49RoC*#&da6R|4^HnRzjsg)cl{uTl}Q?Y(9Ce2?g^ zk>*VL^3vFvRypx!i;W!J7@rKOf@qli^jHE^2^f^zq6K#37%LSXQ>Dffr1TiRuI`9L3-(CG?D`=XLy}N_hK`V(r_8b=-MZivy=Aa z%eqeQcwq+$-{!2|Do30r9$Hu}50iq2h@JRFD^nfP18@hP73n^>061}P$viLWx4r0| z+ANw{heoKAH1NUBVNnj=?6KGWfA1EB*3G`L>8xFArAHY{P=3fY0iZ&{X9kdJDJ~(t zIGOasaAP1rB6PKa6hcthDf@tAmj`_^6G>A9N1*_n%k5E@qy5H{f#-1i>&F5Q&a7|b z2lwR}hku{*gzNWzeWL!{p}>1~STFbStgs*#2XQzkP+!a}S#W2k90&v>e+}rhamWpx z0^gixrQ9n5M6$W(D`vDr!%z@s4DAMJI!|Ny4!i_32nx^UHq$8=%&`pC3q}Xaik)ZE zoCPedK^ODa+VSmISOPgJx zcSRizRB(d#)F_rvwmYK` zYX|zI6Qd~|S)EFh*?0Q2v&)CD!%u^3Uk&Bugi@}_SmP0^LSuU^f17NradkQu3mtlV zj}%-3hOaqwTTM10ItsbDhSd~T@(I=hGLRDxRgkh`@wt}Jn`wAN3NG83kh!!Og02Y; zn^KdeDudF^{$6b-J+IriIcvH2I63{Cb@P&!A8Gl%pt(;&=NV^nERCL7qu}mEz`9Wt zjL1JDpPoW;f-<~|gYCT;4Xp-OYYb>fDLZPshX!0Leq_ zucK7pS4&XEe~EbD(g3ogC59Dl&gz!8#eiioPI&^?9={56|l zL1xk1%1G#WQU%}RQ^ES3ENz05g1fn%I&Yj~igJ$xfBEiIogdT?o*FRwQVn?5|NK_n z?C=gAKJ+edek$%@7qbV7T~A>N>9c`6g`Qlzs$ZO=v%~Og8^KEqSkR6_lN5FV7Z19) z)|SyawjNz~K7)%R=vfafts*TU!{SLQD5Yxir2!paYaqcI#GBMP788;0tx&iL#NTpQ zVTL+Wf4Kdop4-}*)tXkL8_NWq0?Q#PXV%x6rKPnRoxp)&9TI44zz7-fvM`EjtZ%k` zoxZL^0~qq8)^}?>1V}EJ0Hhfvh5Zo_fQFMTZUkegRfWsUxB>L8uDNty?~>bxe$p=f z@a2cSK4(wCUmY~D1f!0nc1fm4wjOxfEn~{ae-91Ui;!)dIG#6#>V{v29Sf^q7yfy_ zdO77SWh#Iosz@{rz@&y{QBy8S6Tqtp6rF6#+Pu}8Sn}vR9F0K45n0K_ZoPuU(9DC1 zg;?Rhlx!9e-*Bsd&J;Ny*P?;qk2k)azN~AQJ4*0=I6!TDc9XsinVqaY0}w{X!mxl4 ze~nC2loaq|U|FSyh9y~iyVq%-UTH1-591~fpBP$sls{fWi?16B_%uPHuv9>N0yX)= zxPpoxNm(K-H0Yozh{J382gERLIW3qSV4@{_x+IrIogY{_08u>IsGpJJ?H(&hY;eYs z_VmyJX&WA^#st76@96qfsFDGUgg=E!e@BrSCc?xRikDA_7Gh#3voxtS$iVs|yNkF$ zp)6nqo-zQNgOZ@xl?I|Yk$|d9;JWs5_pWOpH9$fn5!$=meEhR_>ebi(^tIAs6{|DN zPrQHHf>!$dBCnn!^CaS5|YW2yVrj5;Pc^H({;R>VKy2$=glrZ>lKn0O2d$ z@1MmCZwVZ7g%~SX1)NZKbq??!mVj&KfN2Uha*@Ood3xvt*#k)!M5Z_%M*&%2CsllC zJ==j#E>aS3a`Ckc)Po%}IF0%568v@lO+SA8^+roGmEp6E)Dp~-fnOJYWuY{w3rOqn z-bQ=a&J%y6ANJZ4(C7PtSRqWWNX1!0b<)y^}yG#;H(<=b290r$C1 zXwTMaR`|=ZN%Acg_TV7l1`v4bWcd9y$V(}~Co?)?rUjet_~ay;eQ{vDi}7qGbw||q zv+oy5Hpk#_&f1oWPZU;v^^hrCq^X$qzSwBeWgpSLDLqM)-Z{riH)@cl#3nMUdDzlv zFdcTfXt#QRW>e5HS6pvXN22&q#?u7sCq$f5!{YSbkq=BJ?wvDMT+ZNlltnuId{k_Gf-=Vl^lezX>nb3 z)x=eGXYU61zaB2l&w&WDKtkv!sbTL zVA>9uz1U=E!e&5!*t!nHMQJ5~4!5K)4eK$)F=jFRfKvWfeTO0L^wkxO;=?xK8>UXkLok_qOLl z=|7j2X@-M;7Qu~tpL?HU1d6z3&dB5Abt789xE33oNS8ywcC8OQG=aZ#YRO}@_+^Dm zAU*Y1Gn~qa8ZzE!)}V%iG8y+;*zHr3?eP&d|Mo_gSNdmJJm=|yU%E(d>1o%fo&8QU zcr4Xq#Qen?ra5}jQ*WTqN!lrHWWeh6g0xhT?E)6-US$t&oiZ6M+&FP%K6@Pc7joux$u$4M^ ztlk#FGe`iDMM^FFOKz}q-aw*P80+oZjxa=c|F1JH{FJxhmXRp7g`B6eY0RRWoh)lk(63@Zuo4;yHwOIW~4!%j-GwhLY4Y)ae(4!8tF z3A@`+h^mB=*yo#EbmB_<91d0lOZErt-VN-QrbWQIu<;`zKXt}q&=Jyv`E44wVwk{jS+)QEUTg>kR8sHL(uDABZYN^3H6 z95hPjXvpqk|D;~BbU+2RQ!rl@fBcIN51*c+TO@*O=0g#}7@o5Tr;RhvsmMCUzifWs zXA_M$+Tmz$Rg|649FMjhlyMhWrB0_D^95w<4Os)R z9t%xVW9=Jvn1*$@+cr6*ft_v|;xkKjw9ZA?t*-fKCmuTsT{Qe8GgmAnY8J|+rbe4c zisy3dC2=I%c)vCsV>^H^R%6PElYxlnh~!C-OPs|v=@g?w)`(!R(%B$VGYDa-whkXc zxaV<|AL^}{AO43NPMpugc11p;SjQQRfW5#~U^CMwmKm+cI`(n($#KY-E^LL9{$(3S z3Y&JZLo?qqC{r}b8F#ELgcD9w6~G5d(r}bSIK{w5Mc~bd=+`M;WTMa>B=NKb^hY}Y zLS|9Ixk=U2*w``yx=7O}>c3u-U}hJ862jRSB_P`eVD1zx=iO@nZ(R0Kz{Me4(DQ{3 zlOfDm0^pns!|Ig>v%}V^0qX#0r;)IPDOjG}cm&H{fzRGS>}Ovq=Q1hNz-xjC7M|jc zk&zavOBpw`7JLj7I2~71vjE88Zc#qmd4%%D_jqrXCO_M+!|LC%dX`r5!$|Xg@~7?f zelq6%^8d~n%~7fL1Tdai%@>o`mja=iV{_7WH=np`Nd4{A&u$K?rAOD0H7(HP(YtAI z>Y#4-s-Yj7?e1ot#89`V5lIq(eF1H|{Pf46$MQn#cKJJ(ZGA_igt>AG>R0SJ&ZxxBCf& z3k9_E(TDw&p3gt-G1zQ z(l#dv+x?#SxUfLqkH4-hpXKLozsFO%?e?@hmIgWg=w`F)oLg21HFiIL_G{_z#`o{_ z4!S5gBlc08oHT17{6-qFSRQPdrj8S`Ej8;Ha@^7t5?vYtR1gG9sKu|WlzFl#lXZaP z(W4>*VYmq}0u+IC?gG$bpMXA!ur)KHDG&pQ&~>O|FCxfVHWLvJp$rIk+BU;PpsNK; z6OoM;&wyhokk$c-2yhWkl|L$j=bccu-hXr*>b6HU;*WF1{xyQ9fu5t(!D-VAfEw_< zD(|TgErHG8^lbQ){^NLL!GaOk3_$La!e}Iap^1i( zvs5gloho2yfW@F=GF%7a4+d0Z7M%@LoyRi@S_5WOE8fksM?nIL?{lI=AjwL`v*jXl zsrKbbF*WR?VZ30C)=@3FN3=roS?obN+ZZ6n(Xyk!4_lmqFcDT2|^NVbm9$#63uDk6>^K;t>82h#z$ z#+?R#8QChG%loW;2B{Pt0s1VqgP!!>hEIJuP^%tGm}B~%?)dIrbbRN3XH02G*RYhZ zCT(b=2;z8>7A<(FGi;I$Rvnlx0y)@?;`aIBjlJb86FOpl$9)JAL9W{{oo?#BD1DZ4 zWeE~%kpk2S9MzkFD6KMbZIuSHU%RN){s{vd-ZM$C5O;I9B$bFoVY;Ue{)1# zXNQZIh3~^C>-HS|Z1&iW=c4S!YG@G8j} z9zkNm3#eanf%EF7v4H{fUTyILLRGtlM&I{3xx!qneGzvX!4E`#bDp2)>O(5l4ti_$ zLIe3KE;TJ4!HK=GCC%O=(R_W0 zxNVBKGpUXt!Ln0gQq9;JBrqgSH2{N>5Op0i5{&Z;gqm3CH_9KFwxYm}8H+9Cshs8HRKgTR)mL)iV}k-6iy_MI**ZcjMate;`t zkP3gM`P9DBe7Y3uCJ;qwxzXD&x&|_bEfoyeqJ(Ri9&E(SP03#+`n2Yyg(!#!?K1W~ z4Ljmco(EWeZ4;{vPzG$kHN(>wr9eZ^w_LT5INFG|0zXXFzC9qOD7i#u3t4rE_5fI5 z8tia*($;;VscV?jbJa)h?u)U0<;x8!_h_Cz+E8D=5tq+)z3W_QNDKpSLy$Ch;Nf%7 zikJX4p-|*)!qRTJ{m0kRy_Y2p1KWgXhK7M(*U3lBbA~+F2Vf3{Vau0k+5@S`%p)Y zA4p)Jk-#l9tUw6#Z*`QMeXW2CkF_q~s}vU2+8S4xv3WX{mvEJM%~k-%1>3-|si}{- zWK>ND)X2Rjcvha1XKf@eYyK+XhxMmk>N5}ESb>>_r3WBBBCwUnW;3G{`Hzlno7h3Z zQwW(9mm{R4WI6BkA`iLK2d`@apEKw_V!aM0tmp+2ogUSc2kEJ1FHKo z`(g_a&rD;`QX)2`lZA6smKfF2QaW~rKt4U5Jf&GKeBCakJx)jNw_^y$xilkeFHWdb z8~4e9QS-1Bpvm#DGety^nc4M8`(#d1mMBgsWCZr@Ixz4+l%E}cIgO5?Eb3ZcQUtQ% z)+ZOIscrPt_f&>Mwxm`nMdMz6zh8`6-}|*TI|b&XlqVatI_;D;_p=8nPJsPrB;BU9 zLOAO!l2EKwt)X*Bug-*f4cFyaRVbdtZ8tkX%|p1`pZOe1t(V6!my`Gx|F=Ig`q)WF zZ8zHoLFtaF^n)OOatlU2VG(e*Z1Gbf$b)(Qmj$)=ckE9u9cA7)-a(e7J8-kk+d(5# z(tPW&3Jq2xYtOY(Q@JM4E3MRaq^_e1=Oihq_C>p|>s>;|%$7wO>d{uc70qDTxB`RA z#FdCQ%>rzjB&pQlbO2BSRQdr{Y454HmuIzZj=6nTTG%XqXQaF1*8OHVYOHNO4&vS1 zPSkU&;{S{$kIfi_^&#EBb?pSoW0$p299dF&^t9cj5+4n6h?X{uEeO-U|phaJy}NY_9-yZcE3@Mce|$af4{EPih#fz(hYxm-G2g{K zc=;!<;b+y3}nynhbuzAke3xkz(%68(99T>Y{L1OCIgZ7}xIeGil47Zm?;#bn$+cnV6$j(8Y_(=QgZ`{(PK{-46q37hQ~}BIvPy ztyZ>R&u#+1+~pjJ?4<$Ps1#15gGLqN zuV`r<6D)l+7Qcc*c~sF*Qvp6o64;4mXyZOOXFusU1A5ETfJA{9b}u@P4i^v9K7iv! zn++EypRQp4L4n`W>>bp3CPz_kuU3739-fCPxdrPd``%~P1_)f0KJ`wzZNdo*PZ7e5 zpAqp97s6p$P+e`l8!&P29eWi#=U+#uWzvQyQcm3a`00A`=?lRyqY1(ynyk_E3}eF~E+b3cE+e96UsjMa(5)&JXX&i-?;-`!aq z;3A4RfBiQ0TAQ2w`NvToo^K0Rx?QRvXA<#;h`lQ|^~7coSF?%MHtYJL5yvqntf4@) zhuH_svAgG}JT|N8q7%%lN&uZdJN3BajFie@37Iu&>1`!PMQr+jou7PatpvJFL`S8Y|QG)Cbilr=NxbIBtL<&pd*QB>P?h=Q0>l*r$nD#o;pFOq>mg1uu^G zZ2||dy*k@va7Yce#FkuSG-HdnGWnR$O+tSthf{x0@bRsMvf>7wn^9Og0CRDM(~E3 zYD#x&)$1LkHwbPs6|X~~Mg(V9MTgC)`hX4HdT!OyX}HZty>{POKKX*;$LsCWR1<%| zhrEF0zbu*1AW&NTXf&k*?_U?83pWfqJvu1>Vh}!}_40yIp1$&gLdI z=Oz-Ygx=VJF-C8Ux`Lfryz|s4z~bq2+HlHN*~~$4gM5n*68{atu>p?FAt&~my2sDH z`5sG=8R(%IW~I3u5yg-;Dcp*zTg87M8_o-wVR*i>jg3MG z2vi+_GEwnwF`K{cWbTXG;S?I^(qu{`u?4LO_H|+xI|bI}M2O>zIsPMkF(7{*(|5o zb^$H|#Z$ge?Zh-VNRTyEXQ0LbBh1FEEZE#&3dhS&`c zpAeTXY1Ww;;^x@Q^05QdyOF-lDbxdQZnx*1vL9=67XF9$RRd2W_rt)qHzeA(8WP_v z6Tg#@0X+bSoGCz)l=il6Gwy`TDj8VY$lj)%hMb<&u`JA0s)iZxDKlkln?rBNN zyY8jq)Z)4S!frvS2LnC*-!jK7U4|p1Zd`A)_cqGSUr^~$qCn}}CD7Gal zHV3#hJtfM=HEO^5iZFkf045L(eG7y7(^GrEJyRd@T%=)Ac!ynk zAb!}ghyM2M9*k{2&gOnk6S-&D?l2;8HjR4VkSn`AEmKwDYPSnG!ea%AAXSrGQdn!1GeC6AT#L;ooWx%KEHoe`TFUHUYEY_m-gQi z3Vo)t<(B%)i+Z0Pi7QNLreMX}m?w~f^H_u!Be)Bts8LW9WF=O1OAz zTxU9aBJ*)-+1P(oLT;#o=7D7#N7t4>F9L`}3k}!p1e|t&X%PGCQZ%3{Osu{-XKA$% zoSR~vzlZCQ%@?EUJEM(Hl#&6*F&%-oQB*w_MBb<#ykDEk4!mRHA%JmYz7Fwrg}x-b zhf+fpaH38PWn%&P5Hdq-eH0TSkdk*!sa}DIX;_Y!?Ad>dX$SsqN4E7A?DdY@V>xTH zJ*BAyot({ZozLqWhv@7NpMUsr9i${*Sqf%4EqCN931FE4@2ny{l(CpACoPquUCrSK z8imhTO~S_+d?ZwCF+T`WawkeX*x=u(uJzml?;o*U1t@v_lDq3Jpjdeo^bJ+7hzmfdk8q$US{ps{tUl^Z@ACJ{?KzPo${f zIWra7sq>&Qra2m33B();O~4Hsa5y`EEggHh9c6@oAWd(Hf7UE8X5l62=my*p|3^z& zi9IWBQ76wXBWvyaUZgk5pzoP4i`n+&B^{2a0L_8d0qv8klsxQ{#`VC)39mP73LYuT zO~k_rI3KKY$Q7KCUpb#FpKtVXz{vC;iguk7;Z<05PkDrxfeh)smI19R-aOver(>(b zVdUj^5BOvNe-R{lscA`U@)JaNHal4bFzwx`Xw~6XuJiVZV;mHeZEREZrK@XA8`uK< z+N)B2tznfkb3Uea13I|iDONp(GkIXexW(&aP~b9F+o^l(Wb`^mpTgoNND`f($WoMc z8aKY4-4Hz{d`N%-Sh6W#u_Vi?kFsmr@|dwA+hP3xf4+bU8N;8({w1k-Da<#D3uYhtYj46n~d?Ot_;g;1=hRsdgA@74aX1|KzAh949kUZEx; z4;n2y?o%d>E5(DQ&XPL?hQ)%kc&ulvN=lNwU)Frt$?b05ea}kh*zog4On!0bQmq9P z#Im)ne^(khVq+(s0|$gLpijeC7O1PJwAgk$>6!q}*W;KgM8S1~l_d;`Sj23OmFxhb z$A~p{Gr=rJ)m}0v{&L#nyiy%ei%0O|_$;tALUWWDCq1KgTC{obQXHdF;nt9Fgl=89 zhy4{KUxww;5;gNXA^-wa?!zKzdr6uD)_kkTe;?Vlknw|N@<_w~zmVxQ_1{A1jtFC*>^*~dzwH0XE{`la|_kiiC!eJ_Zc z7MlP;0el`AhMtY!S51~ad{YpZLezveac|~X%+vnko4sA*c2~zZ7Auyb<(X#K_E5Um zf36iKo&SMw@XOtu&(326EX&UGJ`kHkBNAA14NiRsZ8a{okxR1W$V>h#jS~(Z@{?$vPyCJ-{{6m(wksd$tJBp*hM#&(E zA;(2^pN<(qNTl3v9BAir*fKz>^Vh1>8!g9zH>4ktMF;8Nj zQ2?m32Bs75(@r8r*VYrfMIfueC%?#@rP596NXwKSN`fdMVCZ&$!$66i~G;`6|)U7X{pThE#c8tBcSkD+q3_y3mJ1;Bz78>8Z9B>21qL zQu~z9m#rLOMvm$<1R_TD++9GNQJdu6;VAor*CNcBImqamBkn$rWeZJA;$$~Mz#_}V z4wozY^|SItORyF&2pb%?4&ecbf8icN28|FUoMxisKG2y&;3b2=B;e{X-Vu(Sgl zdyqEg5|$U+k%Dcd0I^~vb5gajVaCL!*a0_o40efOFHW@4fv#k23dGGZiOOAXqEP|s zLROzlazd+Nta7Y+Y%eJ+#age@o)rkz3UC zKr_0w7AmEjQpuxmU*gh-D>l=6RfaK*enWvZy(!oowdNFfuGa$z+VzUJVacKsPv#9p z+SyE2kHn5Pw1Pdc2tD%#;Va8b%RM6|UL zG;{5aS}Bmqm^pG_8JG+A@h5f%yuXW( zG`)FB7wft@v^@5`9k|)+2kds;<~&E8o!M-!`s9u`<`?U6i!&93Pj*-offp=vmkw36 zUzR3E9*l|G6@ShJv=*w14QM4K3l^DfZPrxnFzj!$X%r9sPt;tse{y{{gDpf~tbiO> zQ$`Z>g?iQ_2M2!WDmGJRdz#PA;ct=k0jUh0J=B4;Hk%u2(j+8s6_mO(kAyIL139G{ za+HLO>NsPLWWq@=!Rk}&S-fVYOz|+2vY~@C7C|MYH1Sm3<2Nt!P0w@(YEHl};d-+d zAb84Lfj=}U6E~2Kf12PJhPw0(!7FP{F$_v^EoF^TB7Pjv1Wb9}Q>(z8d!_jYo3kd- zq8(JH&~dp>T!^|Di`GVLh1Yfc!EXG{3Deg>;rYhk3HHbCyz|&azTIz&eSTtQ+F`PT z+Q!nuaAFJ}$Mc+()f@^1yQ7-H^CwYpG850Tt>XR_&BP;Se^8k0Bz~~1cB;~o@32`@^$g)dNnP=X;}7iVpD|} z3Js3ggGvEH87I~)NJm_mlHBQ%- z?zlFirR0j3e-X52SFKcPtAqD|6HTC~?jN1r{)ezie%lB2%^t9KdPZ!d65uTOEfqiq z7e>#L5nh#rWT`Y2i-ONisMIO`@~|SR|J9+z*8I{?ETV8 zq~H{#_Sq==Ik$XjMZ4K^_W3wQ#P$ZI5k z*g`C;C|d{Ezfq8Pu|pRqS>;NIPKKYzhTTE$Q)aZQzZ7 zJtL^Bf0-8H^Ip83J;<4H$e}W9AK*ZxDR3DTwUWV`w@7UzP@=dXSD6Cfn&Y_FkS6A_ zsA>6O^A8uV&}DRTw>(p7$1=tR0BD3*0p_t#@qsc5vDe0y#npN5izjm=~y!- zQ==1F=IGwG`g~4hf5O#Mm>`v7#+1e)#j3dg8;#+Ke-p4%omOw5V8G8Dq6HhJw@opK zwm<>1AbA^hfH*v#R1Y*(Gmisl93FhK25{K~py!^LQY|ZxoE@WS4oi=~YKHJRut;Jo ze_;Kjr(U;p`6`uTCD=k_k=PuTKT~Xsj$W%g>vD*M6j%zT2z97A-83l~3B+mmc8M8G zYShpR6ZftL@MaNKMgSVY>nNTgEIrSzG;vtt&+$equ;c z^o1LN<<%4?4dEKDFb6P_T1~`tArlBbJ7rwRXl&O9$G7eNInvV&v`1jM({rH##K&5@ ziBCVo{aEWZap8XT8L=I26`3t)qS`4w^FY%9iYrd9lc|Ft6LK|5W8Xd~VzC_lf{|qN zNSQFblih>pMiNJC> zn2I0qxtmxzRhWnyz*?KnCej)Wu?EC?u9A>!_TBwZ3Ttpeh*= zgoo1rVvI;7wiH-Am1uY{2NpD9k`Y+!H5CXG$PK8>eo|$0Etq0oQJCR^n#xT=}&{wfBO#BQxSOoh+~0d@rl}=nLl0C0XauF z{nFc0bO!8^ma9Wt;%K{XaSG5EjrM>IBi(WaesLJz18)Stq6=T}eVjvz^IUydeWW11 zrEQN?o!TjC2}-75vsyt>%tYLgP?EDfPq3>-4>C``)0%jS2Eqn#1MZvcWHr9o(s|sC zf17;^vRU8}( zHW{|a61vUdz{3$;1xQCYm#+v9fhv_kVhtq5L#KwHD}|+?-Y0fv#G`8P6n}^z3ulW{ z=a4^sjO|wlz&3VHTLBT6jNtOcPs9N)f95%8OY1nvXsiX+lA!Raq+&bXnY!NTh z-E%#;DcrnD8e;;?b&K~m7(nDi7nTCZZ2)krm8Y0&v-^pK&n0&F*MbK&1E8)W*ZpznfIAR{)SiXO3;y zn-lw@Om}7Y1J+}nRl`xdpyEhTQQH=CuyF4i1iS0hBenUFHLUXl&~-9`mY z7dsKzZRkLyWm3Gbh7^(A91Uy14ijg&fxfd~b?f-bUFCM3x4*!$Ga!1H2rB^kxkgG* zAf_WlW<*w(2KAY5d_8%8f8V>A_rejiW(#6H`v#DlO&O5~D2{%5JfA=+1Zj5BARGAt zn$l-R4E0F6fFp}E((Q0`)2RIzjtte?4@zG*B`U0sGja^h6l7I{)W`{aq)M@XBlxgt z?MP);LCrMa5Wo)_GiUHX+o{Si9MW%L6$w#42IhS%g6chTeymQhe?8b()a7UTOMU4G z9?0XTj_AMWS$ruwvxpoMNCSRIyBz$dgzK zh;CpEPCf^)wKJI8y1Xh;Qj%#WxG;hWmYV}Y0=e$C3pQ3EayP;3WKtOkl$O$yj%T4sETD-k;q%U+Yi zt(csv0!-#{qYl1+ZJth#VSqu~0W9|`n3=rvwbI&yP^xU&MF0bLYYGmLaK8XE8a_@C z6b?dn&;#e^;=#V(RDy{G)Fm&6>=V1B zN};C);4JOpu>&Y=ei+GO(n*Fj+~{0JXto?R$31t3PUh7huf>YL97uyRg?z=g_n;(l z+7O>;?a2UDeXW)@uS5$jA3_^EmfV3*WV4?0T`6&cDqKP}3^s;IWS*U`%a3 z@kqJ`GsZB$EVAie+Tr2OUrhs7X_+mZe%R`ziKO_@3TtQl-cI0-;Ttg!)=RHI0d zV6eD}G@j^SQh+7cLk=LqMC@dc0@|?$_A@QFa3uB>a^$~Z@7IR4p>cA!=Q?0$v?W(s z_#wmNfAu>>530A#T5b5;q}pUP`jIm|KEO_*_tOY45!OP!&yt_*1zcL3HwQE4@kp=9|Lh@psf=Zq4?6w9KvZt!u0 z>;sLI=HwY3g&CSLK2gNmAv;7T8;zGpU`2?xlLlYl(HZiqCfjA_*5X=rF&6O*EOEEVwSJo(eS_|laB zadpzWlpX&j`6XMLQY=`71n#Ko<6!LJNkLI7Y|2l$CtzxjuV%%?KAffMA1B1X96~Sb zf5j*W7C9qU%nrT*!qrPDNosEeJN=gX+oUUcj7TY|cNx()tZkEcY7m3*5xfa$Lo6Zy zXHS9M)ps@>PitD8X$~n$$HYDxNJ~!VZ&OJ1gcgQe_?7+JYXO|HOHf01O5bx`RZ56BhqNYfYb%g zIV}(tkS|2Gh#hWmb)Z5v7+f?WwE~)U+Jpc@;bWVzE{9bdLb91EE7$RLDbo7MJ7=1& zwZ@DO(J1onB0bnDty$yfg5YEvCpfY68gemizv|sS7kSp={UWNKO)Guu!z>kge>RIg z=UKcxKi-KyeED&ZEGRG#(&f8y`y998JSk&)5B zdO5}LNUGq@`Hno$1iv0je{x#?S|Z@S;`<{B{aae!A~&D$!I}1rqo8M$zORGnmsG-6 z>TMTq3Gv`f4z%0y8`5itoT5E{+aCd`FwxrQbVfnHC3U6O$^?} z)JBj_{U|~rMQEX`Xvi$Q6@#SGil$yEq2-khO03+}Zh=AlOck6tT6(3#Djr0gngF42 z)apPr&gla1Cs+zVa4~&)+Sgdk1~?bc-?6h8;C1jo=kn3v_--zb=8%Yye;IO@uB;e> zrUp=Sf7)2bT)BVrapzshMVDXJWsY}4|9Do5ca_~D?gQj!VgzXCn2#@IKd`tt>JMMM zyd3U5PfJa22ywXIi-dQyq47>5TTcndhK|QhSrmbOF+kMwwRa8@PO{*Dpw5?!JDVlW zsQ}lG@U(MeZFcW8aCE+Ee=eM8GR4z)QL|)xU#fR0Brpo_eFNCw8UROTqb?8b2rC-W z^q^*gxd9D8HvIB}>N4k3LG4XbpyEz{Z5B(YRBRLO7vQ(^>;Xxg;^C>LD3SVF&VX4k zy<%PRY!m>xhg2E|o;t`%#llKctEUjqkmxB)%0tKOr;Qa$hUVn9e_?GYNDm-dNvy_p z&L#pecq)lgDZm6EAV7tM^@6Y@T}jOrD_BRRm=0KzTN*|{d2Dm3RRI#Ti$@O!JpdKQ zf~b6%lpgYVwENU&y_fx5i|}fSso~B#!i{05rr;;n2Usv*0~_@trI@3S!vt+uU_d0; zTrBHkp~SiV#N)%afBd+IWmP@YtdT>MmhB${3>;8am%@GIyzQ_z7T~Yt$NltWT`eF( z3429&0IDhAnyQwQ_4MAYaX2;_O)SQ!*c2&e2ilQ<`n0g0a<;pQd-AY{*_I!Ie-9eeQa{RtQEAbTfn+rC0DLL@>6-mV~fBRwxPBj_*Zt75d^C*2Vh_iu{g1 zjqsX~ty@Jlf1$-YLN#@7g6mkiExL5idrsupUe@hF^YNeux=e#|6k`!sIL^dxw}dU2`vPdcfW3!KfK0ulrDzrH zyac;p2Uo??zk!8#l5gSsY4Xc?eDU-O$uSxyA!Pv09K1KcLKeW^n9HY&SJ?T)dH5~! zuX8k;0hSg4Mo$|BAV3!apZ$P~|NPsFrzn>@{viK))P&t{-tAf8>|=A-)tisw?%ruX zFGH4_e_vLiw|su3&10=Apwt`#^`xpv2!XRHCn-~NwGZp86^m?+{4RhIphIcIMtL={ z1sR~Fs77Sg;u`{It{SP=4dTEfNMx9*HL_IRIO!Xx!-?2uJiS1row$BRq9`E2X5W{ZFGjZla z_vS8cf9xDm4*oARb-5{kX@BICbNnrHfMPoJV{;>_-nu3B~vGY2dCkS0^! z1FWR%>ZG?=>m~I$ZDEObV(D@RO{|8pG{puA=Tc9$OEI0sS7uDs8UeI|O=M{t%aIPS zZCcFI+hR^NJja7U`UYE)Y+w(5jBiNLe_VcD?_*w^%*ZK!>m69K%ZMxm3(ZKk!ZFZR zI|m*!$Z`dHDFM(F{4)*#HoUu!uNqH(63i!5xA`PL@%-xhV5tclb*u*glu1dBax ziU)BjR8_igwE9JCq{tsWEgN~x?b(8yOmG&V4q=%??WG)LBk;GBCB)N~LOB*mf5i8o zg&wHg(Ax;fZ&zQr;nE8hX|b?)S{R}Sd=HIgLVn1Umhsv39$QHzrUuv!GKe@`jZ;%+ z0N-;!&xX!N$rqgwIYgc2gy7AdFhlKjECx0NwqnC<;=@Q}@~t;~`eB7w&dhU0yo=I> zE^B#2AoVO|Ix5VJh-;x_azpaUe*@XLa$K%sO#{u>aaRGS3Rv~@%&s@Ct{)m~cL{mv z&fnSWERdX;VXu0&*{d4th{NTxhA6+?1$Q%{9p1cKv5BKA6xxJhpoOga}kLk1R zW7jbF=@-4lAo4BD`p9(l{Y$xppI@Ol*X-YPP8KdW@mR2^En1B9I z5_b`#b(sTc*h0+>4q+52R-6Hq&9nzgwY7Q#%&W~K9|wzqqlEX-k8Zcn4>D3GNOV9# z`=8sb_U*yYZhIJZ!JjT(cwfK;dP7VzbnjcNi$)~rZexiZQ>o^Jn-eef;PpEWeo`5urE0B3phR3_O$tEXc{lOg4Vl!K zj6dlxz?k%n13Ip^6Xdg>DHw=OHdaVw6*~_Ew@w!*J58V@0-j@J!e0D6OXRV*M(JJQ z>}ht_@ewKBq~wg|3cv@*9s->llQ!CrnjDgwBTj>xrEIGQl3>?g2wWzu-+%3-wa}GclqAR z$WbNgWsGk13M6wNlgj@BWL;|W9;rh?9D7ey`ReIgfs>`J9X@81k@iAzDtzFoJ88CoiJCtrVd)~W-C%`8Apbb?|lY&y6 zO|8AKChWSmK!1KI2a2y8!lK?JG!Wk9e)HHwr9OJho3pA zWG?7sADfrLBDd=m`baL_-FB?ky4>h~(RgAS8Z~GU({BS0K12pZ z!o+j-VbmrLER{-s*;`JiAqP3=O{|6XK~Irq)-%;ucwC8K6q%?WX@zk$}1&=#HMoX z_MJXmOWqTrD$cWWb2epntmPn%dT=9+JhkIYp<20wPuKOwLx1w!6*uTLb~ue#blWzI zI@@`k-k#9jF>w?3ZSFeo3@<=KKu&#Vo8_4IKgY1h+cD+DHY(|q z+BeI%O#P7-#gkfG#!f&()^scKe@pCW_CS{$ z8J^zJA(yis2!Hsr*hwQK(CU_ARpG&^q1!JYx1Y>keHQ%0n#OMKQZn@&YY5bNYJi*` zO9Onn`GJ=Nh-}n_=`l{=zLcnY>+yqWajm$UK%VU~-tJ45>yjyj<55S4o?GKl(-m+G zj*$W+M|v7iT+dY<0vOyq-UD;&{{vv@)i$HglRbN^I|mCQ{i(5}zFec5 z*7@p{iW1l)ph31eeqb4!qEAY#SDkg4xyAML1k6^zjlv@I)z{8YGhI`<1Q5^JDrfz@ z)oHQ;)bkoyyx}1$C+OLbKL_P$fX{hXg4>Y<)U7D1Nalwa@K`@I4Q8Kg@ zLA))oeom#AHFt}w z`I$~DD1Wfk5$ZrB!1GMsO6KS>y=!U#sbf<*rF=x$H;G8t!%%!mjB6SY>^O^z*cdJI z88A^BLsD&8IQZ(hs*u3J-YMUU$ie24IXKF@Xt4y%6qCFU$5!D#I~OI&%17{U#^#jp)ZE%G5RvFIO4P%h%Cm(=xo%cjNrf- zhkw56I}8UqRsaBEiN>ySnBryjo&e!TrsWlzqm<=Fp3)USJsTp0PO&9Z)*3CnKCgEOk3M7v+zt8$0MCp1tOy~J zk!DVen)R$aT+8e}^wKzsGZ&Gd0Y*keaDSI;Y#<&~UjRNCjfTp0(5Y?U+nj$!kYfuf zN5KmqI^EXJ6U_}C)PU=Op@=kDw1KrJ%^~|f4gH+)O+ZPNMLKqxS_YoBYJW-W z(TgNRu27df3IIEs06C@1;hQS9`DBRw(k(do>?g<3_TZ6@673TjWj{d_RG02vtWw8u zOA2Vl(2)cDWYG|?7(len)K`v{GgaVdEup|4q1lNLPZP8fM_?B-g_(hum7?1f7nU7v zb)ew)mueqe*FE_Q|&MO-bMWN%8wUp{`j z!L$FT8*CL}W%NPeZJSM{u4xV__}G)jUh)MyS2`#vs6j9E?#V(qCj&6%x?)o{s!UF` ziBmJp1p{>E1Ob5lWqksr*96KLBhwb16ZDV+JC!zZrqO=cPs6zmop^s3+g9d`8ci!n z5TQB+_`xfHoEzXO5n#sC8A>}C*99>_I|bK0Rki3kQ%sKZOHTA_WC<+-!BLLLNH?6$ z0W7DDn^jzVz79K;x)?f^qr&Q%uQm_qlSAkn0mXZ0Q*qC%nZ}MBt@i_|b2@|YTl*e) zV*mbc{prx>2 z-LwAF-~Eq&(7*okKaPDp!i9hUPA5^zCdI@IQ!33~3hj81>1Y7N;ThyKinFH_X2%DS z=pX~Khrcckfz;qKf}7D(f=h9OfH)=v=xALcHBLlzlfVJlRvs5ksD&<9%Mkd#{pQcV N`M;9kpoX#u0syv`t=s?r