From 3238aa5a647c16c524c3ec9b1d0c411e7ce66be4 Mon Sep 17 00:00:00 2001 From: yezengruan Date: Tue, 15 Mar 2022 15:52:59 +0800 Subject: [PATCH] sw_64: Add sw64 architecture support Signed-off-by: Lu Feifei Signed-off-by: yezengruan --- BinDir.tar.gz | Bin 3440 -> 1602266 bytes sw_64-Add-sw64-architecture-support.patch | 18277 ++++++++++++++++++++ 2 files changed, 18277 insertions(+) create mode 100644 sw_64-Add-sw64-architecture-support.patch diff --git a/BinDir.tar.gz b/BinDir.tar.gz index 313f1fe4ec24d08eb57204d497834eb9262f9787..3642262e92563a532519a197d212fa3de78d3d6e 100644 GIT binary patch literal 1602266 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�yJ!is38=9j?dv$r@sF)^%*=X}BD$InrfBzd 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 z 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

;@Dc3{zje>WpN6e~xG{4O@BR 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%0Di9tf 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

+GJb&d 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 +A1FE6LCI63SRr%|`Qygv=!lVzrE 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

WH1hWgy z0XCt&y1HRX9IMlN207|?u|RnZioByTecGGB0)}3qu+DP!);Pgv4a@33L#1i$L{_AX z#1=A;xedfM@TRI#&36v1Oq}=0D1k+^L_ws?EN@3k=6rZVt`WtOXG5QJS9xglk6ZI` z45xWQ@^=o9Q6O`l!;SxM4KFnzu=$2ObnVs<@4`@Hl2#iKh1d1nXaHbhgw4ku$$jyG z@S{6-t>Dfu3!RBIbO^gI=*vQ4L}x7W-h%>jGkprTf46rkTVZDO8xNX5FysX^s|R+v z>^;~KYT1Av^qHR3$<+i*8dSrG?zPEmf`jr_^YxUDhyAu(?O)QYCQ%lteKU({+G<2m zzTz$g>{xmQs0T`$+SmRL51y)N@inh24(3HM_c6afB@{p^M5Ox{X=}rMNvdBb$B>vP ztCRxpv((RM7MyWe;7YAb@_Kt#O0qHG0fJ8_jFL*}{d%*7;eOp82=UyB!}bX{7R{DQ zR;HI49tE*GH>^#6cx6WJr0l57?aWse<=U^v>kK zS15KBqx5%o+I&w5I^7}EkK582ag|Z4#KaBirl0M|NGa|g;ozcSt*&eer!oKu0PH+X z77A;I;d}XXA5-r2z)B%qX8%I5G@ajZXc=n9gG{{BF3_^nN4?qCn1JGI%20;Cz{HP$ zDr+wiQ}n}$sLQP}KJ(RgJHQSy%bqb4Rf5~i(vyT8%H%LJieDqI^uzLg!1I)TQIt<- z5 zS+)_g3{pDsj*0*%e#k^gkq$bmzvADvD1pOqPtpA$c4nw+M#5AO$?-I^+gCPQj!IT#}y zSHck%sf1%|s0<70KS$$jE$U09#B1&UtQJSGVI=Q?+wgNvUiQfEG-n$Bg~*JqV?xQx zp2h9=^xb^K*yp6EZ_ z_Ej)vI;RV*sGjwlKFrAO`mR}N1JF6IrI_~3)$%%}-k$|E@j$qkSJqhk7sc`@=397_ zO^(g3e)~H<_x)WE8t5QB(^BKfBnoeU1sD>-{s&qq_jEG_OzPkzMKP8k|ILgGjLrxl zbvXNlle#m~E23{1tWi`Jy&g$=kyC=YaJDj_1mW|esRFtFy_>FXV57w&K z_dtj1&5)`zG#*Z!XMui*wjf-bBKC%56q z#rq)^BsO8e9oz^b@hS-z;R8^aa+^UQy+jWRggz_!STuZcKQOON&FLJ7=&|C2oLA7` zQeMwf4s;gTi`32B5mT9p{l+D28aCoHKOpf$7wMU1+2sdx^DUaRvwJq>Y9cps}TA7J*RoSeNgs#q$H{=K9dK(x|pVQN;< z-=kwmAbP7-?D}X#9@cGNBE)qnJ;~v$SXpa>3wj<4*>Qg(gb27c{jm^j!ku;32kaz% z@6_J&wlm;vd%+p4inJYv6TT1LvcL+g zmUN`wCZqNo&Re)~cBNA;sZNBWXxq>ksPq#G-xMs8EsUlO9jfb60M$NGTei&CQE$=B zn@A4us2)nJ1eb9WRPR zz-*m+Xh4Rkif-QIY)~*gTIg}p5|K<|Zsn+_Em1nvLS>4Nnc#5=!h%S*o#~ouavhZpCt#KM=SG;DbUTZw?G^2ozklYwhZsDcZ8RWHKa*iXwU-VM(AsdN( zE*C;PDt!Z4z5C(Q4;XZ2O_JcIJLbxJuk?mmVs$S1*LStVJSR}#eL|<4P;)4GUL_lZO0|bf zFwsWV&N9FlkgG2O{-tWSy(Eb1v=#-y^P8n4HT+Z;OSE5`y;K6{l0wsLb%*w|8&x=u z2}xrQPWlvsp+y1&gY=TH!C96mVAb>gA+DlM|8ILw!X3k4+rj4ZoI=X5sL|mFBspN> zfb!Y9NT4MGO!Klz7mOe_k{aJU>UNGwBIn6q0|xiM#CEW!>syq%R@n?fwvcqIjl6bP z)kQg!= zl0^3k5`6Lmof$3NUU+aOD?LMacJ%d0>jr)mnmG@kkPtOn%2BCrSLcUxnwv}pNFK%M zNPe$Td5P8W0EBQmMNcYv+^S17M@WHL^{qUpw$BL4( z(j~V3sh$ppCV*&$4^!W}$_&zOgFf6mPV+ zh!ew4<$ySY+}!B0uBg&Pzi~N-ncT0v6h^`VOL`4mTqmT52Dg@Pk#BYWNsetb+NTwz zes%&X{0$*`<+|j&31Zp$F3J4+LLm}15w$xs184j<5c?DzBbnL(IS5^Pb>AcnkfG6`dlqxQqlwzL@yjmC5FW(!_aYlk!M>H`U*{a@0j#i;25 z9XqXbB+uH(9+=PHLm>q@fnF!B6cW3yC_2*Gyj62W$EU2?BMF{&dzu`no`iZ<2n1^4i9-H& zjC1{dWFgF~d=}#U4|L8`G{sA#x$7IHrNZOy(yMlRmJ+k^nV7xT&VeR%%wmL?s)%Lk z3yMd*-PC*4(%uuWn@}joC#}U-(DioGAE_WLOCY{>&s`B?#gpCQJz?p_kiF$d`?KUU zJ@-_4ETltWmg}LPd_dEsh9WT5*<}&_AA-ESaFDdaEffX(4h)jZ^cv6iD zCEU{N6s9RZDX`jYe-Lfj{VGm&53$Oy`dz8B?2u00rx^kpl`{P0vJtmP+C{Q z@CZJWSC|6HBctHTH9S%{oeS>quL`g!W4wOAear4JDXAN`t~eq+cFuq7Cr%2+shC|8 z-bUM<-hA88*?&t%l$>*BJ$riYNk`P%BS!MW4@rsTSk$d3j`$)}ZUa@AW5L}wsI5pv zJ#1JDv2`&^@MpO!*6EPh58?P?@PGgP|2VS;Y`yw&F$ET&v3(2!e9?O!6(oFKvH>9$ z=>dx(q>u8`AJZ(LMujMW+3?v~xqD+ew3^WEyb+EAFG^fJjYCFAx@f=$vnmF8;*THs>Ei(HTNF$(Q)CInaTMDA>Xev~>C!=1=Gf2R_`q<+>s$PJd?!3+2W^#|+N& zf`_|EZ_?|2>Qe`*naTAsLvxbMdr#36<_fg{f5&2%johtJ0`muS%lS zA#c$TyG{SAs*}tHi3?<(Tu)A~=@pjC)hfm1^Du~s4tmv9L1*6?mC{=~0;rM<;dvBp zj4jA$`_CZ!-*WCwOlac^p@unxMvZcz;Is*#gf2v&A6ENCWdTK3_^6H&zfe5U&a~Tv zBETleP;<^!p{u(!KX_$T1D@L8%c#xGG6LqX$S{CeZY8?H)}_D32Vgk_o(`t=hpNNV zLM07y(UK(Qg!a~#0c!>~-iF;OKJ#Ul0aYEzxf{o$OoO|mtLY)iBru0ji>gJwDz+fmQe)Ov$- zw}c_IyM^P8Z0v{adj0I}g$I(;pbpAyJX~K)z}wl&XSX|)e{k? zS?Pp6f#r0n2duiGScfxrlGyzl5=_Rt9%G-^dGD13(7*S%@@9UF{xBtpC-!4l%0_b_ zzfQNUWwnFDw&4_2A=yJ|4eDFqs02zI6f#5F`Do{Ew90&XyR7OKUw#yrn{Rv6-0!$@ zWhMO&M^Co=e~dZ*|FvYC09|&xLcWyu5*KYl^|k3~0`E+mqFo?pZmQ3Je+6_OYUu7b zHnb*eQq(KgHb?`4Dxqn`@>y}*9kZlg%(19&zvfmX+9FD!@SS(tIeOg1G(!xDr+c=a zZCO{Jo1)Iv3Sp*_t!=nszeN!wo`9;^Sp!dFx_a|~^E)$`Z__V?A(^BCB>}B6 zDf^`dW$I0G+5#&V1Xul7Y;_IR!T+Z)WX%eTg_+K|ZHG!Jdn+Wb&T0)kFz|16G|X)V zK}JorKQoK5VR*r5d$8PzU3twiLNUCm)WS`)!b&|0O-H%7Yw$uS0JXV zUb!{qMbi@#uX}79VQuf3iSk^Lp-S!-(mLNW60(N*WHD`>EVri;am;TtpJ5tzWX{UG zQyXJfNs))Da8@$%}dzbOtEw}2p2|t7$X@I#ERmCgONC1l9Az6Z<&n zLm^G`OCaxYW>fJ5Bt7RX!4un*q&};!iM3LR*fT8xj^7M zOPfv{WZo$+GwT^=ggjOgL20SVrwyZ^sc^Ni6?(s0!qqC3AF+w< z`#_pYuDk6pT?&@r1dW}lorok@j~Jy)ufcj4L-jwUF>Dp30Ow`^?2(z8G)t=%XxrIQ zS%$u2?TJEWDIwn{VVTR~O`G;%ubT?6Bv&~hq3?cpC)Z0_d>V}rGVjYfuZO-CKOzfW zG~?pL!X~idu-&PIrz{sKegMMP-{?5l<|#_7t>YdWP5^|Ry^bN(YyyGB;%j;ANk&wf z%lw2;RifXn&Eka9k%w*Ndy|vI=!`*)7AuwU2=vVY;P3)u4S37jSgf2 zSEGmW)J-k?OEjbu_ro=E?d{|Qh8u8szdm@8TIpnc!R|PXPMD{35%_4$%rlDFz5~7t zb`>>*N(WGupgrB=FRTa=A<|8*G7jdT*hh=p@8vHncGT{r@7;-t`{;qHZd4X}=!cgC zp=o0ahP!1aL1Vlkh&^N21%)Kmj4iihD!Z_5fX)u3l)W?Fjboz*aOdCnSW6!)%&he_ zo8(cCtbVJ?%_({^(ZhP{X7`&e&RcSSC`afVGuxeg2LiITwilfvpFelI#9-W(m(UIU z9ij!bqsVdD^=;ZI*{L{a)0SJJG7#_(iqoWj(4}0NcX>#?yznBh)rIvXI!*b&>Y25678K^*O+!pln^9*}UE9JC z@g4jzKbXqtNs^ZK1jo|;}OaKA1n#fpMT>a^^5BMxzyvCQ)SeXT|D(rT17CN45 z;N+j0z%_HEPrGprIEVLD0@Je#!sH5?hB z)X@Tq>IInlB|5`UGjQ)UPKfax$E!=Xxq5SZ-l7HmeOG88!4i_l88 zq9b$3M)VdC&s2i*&Iz+ksqw@Pf&p1YXOk&^X(jdnklr0_fK0kGX0aL-FZTjfkn`@IQ;M_D@nV?Fho9n8QO&j&KTE|r=Wsc!AT>l({ zRKfZMy*8e~;JaFNzT*H6##|?;zO#}!84^%%JjD|N|w zgo{$YcPHYf(DuR88&-u zprz<)d^shNlNx$^GI>A+2>&z@0;Jrt3p}0Ac}(a}GB4JZLtVq{xfk3ykVG$c1R@j< zyOb%>+s2F}WZ^b7iTH^hQQ>v=;>Jxu9z8Ut_ysm)N3QK%MOH#!mL1f5Q32M)4%jTc zR3$q3a*lJqCqd@&Jke`}#aqqT!co4d|H7eo zhUfCT)OXG}Gk4dfrxNFpzJ6x7tORHgSarn!ow??N`RD}|n7y}vP?qL9MIq`YQl0hN zYtR2^`ZW#P3uV+YqKL{h0NqXS2ZkwVq-<%7>Oal#cTREt9ER=jB1$-OcGf>$k`>9A zmXch7=cD%f=gQdEg+63z{S$r|1BtJ?Z+DIAr35y$)@4=M$M#;w7tN65?`2E-=m57K z!uTX(ir18=ne3fBmvrc(s}6# zm8X|u+jvw~$T1d~rIjv;UkA#Fely5(*V7PHlN4tAf-ge2SxDmbdCYkATr#NMv%@-q{s#9o@v^>FQ=eldc^!uZ5AJjuNNMszhFn<59@rmNDsuyleBcixp*tvg9#i? zzOZOmn4wuc*EqkxZUCEw_2D0_9)+9eRL>e1smv{j#lUL{R;&PN&(^_?GQU@@ADbT81S=bu+}@`nWG z`HW|^-RLCz5Pg&kssS*LMIVFMe8y*1d+}3XgP2VRDU4k<$*-&0?$=e%kh;pkp`gJ+ zb}VUQ0xb`i5G~_$TlFQRC(eP9?<{;>wn^_n0DFi)qPYd-VpxrKQX-cS?wOB61lNC( zvVK}7xBU$54ja_R>|S8M%UHEViTAZ-pVFHpr?CoFG2x z4G2C#>j#7V84w}IqfSy-m{Mq{E`NB{OebzoEV~%4hbeKSrTuc2tPW?jT6xLh z?&&@McZY6P!3}&V5U;FTM>wFITD{+Jol(Y%!!z^ai8W|0T1(%5!oOhfUTMiPU(H5^bW#@PWD@``C9;G5P*TlUGBZwYPDgnRHXL6u^t>+n(&SGs}}3v$plz0!l1q zR!aM?VUk|?pQ%az))L}R&RaV__4*8jX_1D280kUCkzUvi5e{lf&XOu?69 z+kQpz8PN_#U0iV?*bAz97)&E({w*TuZ=4;$S#wHHr$(+`H(jjB9BW35=GpmG!zfN`5f5>VsECypp;rhVH#0GipJKbO`&(}CuYfIf&cN{0LNHjH ziVqdnb}B<;k8dSs1iBa?5Zk9mQ~8o^Q|QF`X8fd7m;LApY?8$p-}^8!+AgA}Oeq@W z*22_SIiG2f%&#RGissuGTO<`!znyu`5WEJXv+5voG!(^=G@6aXLg-+MI&JFZ@D!aB zb=-kAw`i@pJ>oGnII*2KOya(fRUwF|V3j2lhVx1dY5H6)+SPTf}nd}MFkOEY7`^$ zKKK@-9E~>iI=6OUVFfmOTHx81<(zS-1EG&{pBs#s=If{7Qvo6jY#`B8|24YR4pG6}0$R(G58XGQ9 zm$PG2W$2RQ;2E<`28%Xl4W}3iNLuVJ5qxi7^!9h^ORMry<{r@>GcygTwpW8DotDxf z^ThNHE0$N4tL|6b0XLdAPuZyiPo9a=ryFhE#qMBl3tQ*#eCRtDpgY|@lYX&Ih0zxb zPD+{!_3&_7myEiV?B#+ayLhL1j-Qz59Q-ld+8kbQ~SyM#E+Kiie%`I5rA zP$@<%Z!V}+Guk5t>!QCtx~NGQrNvnk_|p$$zEutwJ#_(LQLU7GJqmr9862G~BkaA^*4a57agos1 zci_^?EP~s0rwk@s+^6>CPN6}?63my@%GzM6sdwB}<%geG@MLKsr?4@+ zzGP#Nluw6$bH+3Nolf&7g?4akI0JA!u}QI2gtU$)L%9dB$6KCTQjX{w^e}@a6AsPt zi-+Jl;R>_r=2RP>>fU0t8Y`BAC;&IRSuyVP5C}|BvgYMz=1B$EscZftNChX`d=`B!l7L|d=4^^8hPve-|tEtO~( zgj7MR-B;2;Ex za&aXg0YqtvHB7#oz;^P^V}oUADwUl4yE`-C(u`?9uHCvTMiipgSDZI7A@5KDq!mn z8q`aBg*G&QE1A^wG+&L;qn93n z8Nu9rE}q<;4HIj^kZ)^XPB2Gi&IMgQ!aK$P*(--S*wKl%JGW<>4)tb?hndDy-D|lV zv?^aab{a_uQ@n?D)(#->AxSp0PR^Vrf7Thdeykz9q{}){eKkWv0LyuPxTgImnol1^ zOL2Ek0?tQKgrV0F>{0oG0%DeFcrade4?%as`KrlwA>c9J5e&RA%6_??)0l2)>a$;d(9(1tqMnwb2>&T}h?s5X^;7;NVS|a+kuoIC zX*_Buwv}ti4Ky0BpJ-W*3EN?G_r?OTc2i}oD;lp)FPHxJ4S1z}kn#LH4~j=`MYit0 zHDK#O`;*%tGXq&O`HeZP)Eg`AS>u@q7qd0i>>sLw@@}GoYhZSfpHhhvS7rgLn;|H< z{4W48K+eChtyd_wYL5&PoD^tR0@|E>W{?u(wfAiKpz9zn$snCF1oC}X`6Pb#e*HgFzd_k=H zsk>Z3EEq>~cVYyLg!o#KN`R%E)N_xyjhr4(2aB+4)Su^W95|8ck>bI9U~I=vB$wat ztUQo8mkrKvbh{C@ssEe*avJxQ4CF3QZ-gW zP;0bTxLNckvm}$^NOWL4)9q`+!TQ$JB=xlbQ~fO;f^r4(_RhZOXOaLVZoY5U6fWf7 zjr;{S5?>Wf6Vw*HXM4qcBQxy0T3FuLqMX|;ISWlrag=AWooc%CDHjt4Z7zdYNJNUl zVFl=!WsArgA!R}sD?`zRxMIqmk=06w%USyw^6lqQYa7nw`BC)AMCAbTJK#e70WvH6 zBtFZ?rVZ%^yoVodRv!amGx#I&NUlFX;m{1097_a0@yj)`&W0A3ybuE&kHIP~^5~UB zCIe-Jq9m+YW=;>1z7QwR&`7Sj@dh{tsTPgF(iTfDqgwFNNn|q+ZJ(<$z#-wo`+t68FN5v1e84C#_XA!cDsNvoo0#J#a9+IK` zz>($zu@uk9zfyn#N?~1qT8twW9Wz5)OZk_`}3+lLl5QJaZ3 ze$2#j0JW~+y@b!=Nn1U}^vy{ zPB+;FNOF}jjmcuH*f?V;fZTXaVNzYgsyOKv<~mDj)@=i-GQ5e>83w^CB}emkV?F`w zJnmX9VQD%NfT{1NgA0g>o@Z+4tl|s(HUEoauvNImGrwID&Otx3&fkGQ=iZZ3^Ilf+ z)FC~Slx09RO&11>B}ubnW0e4A!4_79oHoy3e4GFX-IhMADFmC8t9fo}NDVUSuXXRF zeYTOok07O>tFZoCfo6ZIb)Tks(y0y+{upM(HmOop^xN&1S)+dZ3YDfH<^0z~%(#D2 z*c}SLHNjJVhgg#^LH#Z03ljW##r93yf03(Btp+%wF=#}_-I~o?1K^EhrMS$wvBL-L;j%3N|713o{9p%%Z z(_)m9u-cR0o(`-TMJ%RPQBVVNBa0~(^nd+%GK&Z}?5o3rymzdQvS#Z`v)IsH!p#yX z?Y;#wiY=B7ee&vRds;g2?8E$1^aWsnJO@(opu0Pp2QshBSBs2F^t-(C{`Y3;k7Ni% zlJYbBrXNT72Sn6}KmxDa>Krm6cP2pDV-dx4LRmGLJH|F~&`MNIH9ZWX4l$bjY<(eK zRDejWJxPQ9Wv6_S&cSsyP;9a2469&)Af%3Ws8Y?_)-f-5kD7U{DlJ{i^TXtW1y{>~ zu=V@`1n$LyS+jlIJpgpEgetc1D%PQ{oh9uNz?oQh@f99H^g8;JA4`iTgnDa}GK~^X zl9=Z(+^aL7%vs!XID^xa09lTb_cwgv!~tvw~leS&C0aUy%ZTP(&*r_c{(e?f&6&305t87h4j;3JQYu5#7dOPVf6iSU6CdA^e*Hgv1bq zSLmP?+wKF%vcMLaRC0K5UvLm+xJ!{{hGt~wHetXw0xWTUXZa87#i;xM+xmd=AqTPQjj#06ptR7RI(2Ua-FKBb}i`2F2~tnL*D9p&h; z^7tRaPV)K{+p^50{5%D)s7<%&qTEa7eGC3@Y7OBi^|KYAFE*&1)Z+{IE;&9{p)H%^ zX;osX-VCdxpCCaMlU)?O(v2(P34(I9WNlyTOTS68eXJ$EB@CErCv?9WY8hB4F?tL{ z)F4giHQ*@5pX-{O(`x4BF1KVSk*usZD9tl4T~(O$Gqbw?ysABhC6_mp#P&+Z1~cug zP!RRX@(4y{U6jNvnoI~sGzWw$I0LpXR$Xx@djgY?yKws>nRQ_d(nN|@W}}WIo}H_f zY7~389#2Sad{BcDxQ68IthhQ09kGrK*Kfn5EMSi*$j0C+t?|+D%ThNIY|rF{e^oUV zARqaSfL|uqm8~cy^71J1rE?`A#&XL+i`L<|E0wT7fiCy&aITL zRMiv2b!HoEis-*<3WiyHsfOL1PJuv4>4u_(w(6wg8OoXBU69&5&Gv}?Eaet2#QiBY zkC<;lx`T&@V`7p_NGL(fMqkcxeMiRrO+54-^{WaZ{(g?a%jPWfqLNA1-wN?9t=ip> zsKdT#UKEH^#wq`(P*i%Xc!*%2uB-G3zh?4yGd^ji!dT_VfZb@L41D!aiArtQ>!88g z<$4t#oS4wofco-8EC|2w*RQq2>Hc5Ys^M3)tWSWtEq)&oztjP z$+dG4DOb|*jv%|Ir$uhL+1!%gj-pk&^Nmr$~x*3*Z9B^8*x@zS3SWk z8Q;GqaTBetpoLrMVAv0>?#lopc7xu6g4FHy1zF4TvA?|G-jgH5=jE5g+Wf;m^mM|G z#T7xooU;#b0$$(0yLr>Zc1-ariIvvYQ(^D2=f%`NURTz$YWuo?1-RN+W0X>iV2b5z zkqa~0+!RlLhA*=sKEG5L>?!mkNLRA3<1Z%b3Y44o-L}jx{#&qBF&->dYW#Fq0x`fW zju$4M2ait=am9gli_$H{(n=0Z0ixu`-H)vurikqSKl0~TuF^o`gr=VG`BP-|T4Nl4 z{h5+DV--9oh{l=ri%k&Uar0+(ZOrFL{J~ca49L`Q-Sq(`F-#Qmd7?nE?ZmXI740gb zKM=W}98UBEfRFkYEf{-L8h}Bbi?cFXIk$SbNIVIzx)Nz|p<#i+Kbm2wEy@c{qeD^xcI}!n&h`Ivf7Lb4M(9<_cES<4R zalx7DY*XY`R#S`V%a|H?XnEC@THq6uX#^I%SI{v;14lT>-^ovwopl~yF3U%vOMV;9mk2DuT+RcEZ`CNvk7L!6A8dR@c$;7Xd->iJ6|rWCxO-NE?T^STJbpXS2Xj0>~@d9U}TsI#h zzfB$JP27K^Yv6?RZAP}lnkO+guisXdVdv2Xk^ykT+v#C?hSLs;^`%Kn`en6e`bg<6 zVWY(bfr>S8as2z6^@JZU<2-M-lTV|?^Sy;8?hGh7(=~wG{h8@t$!KLMH_ylWq%pqF zIUfDW!8vOn2JGkqIIe8IgfWr3z)a4ntG2^=Ur>Iu!D^#3PqaB3Yq^M99*gS>#|PV} zsax+GQGp`-YE*kKzu*t4%UWNxzs6fnUTTY1N$QJdCK<*g^MD#XA+_+y~dq`BoVhX=_V=M?EV6A>JB-@FU?Dbx92689h4d(O^~5 z;79Uf`Sm?{!C(CyvnphYuk24wX}z|YxULipoyynfHh5p`e+4M=jJQc(L{&*!Ty3fE zWU&a9oP`z!O95n5J^1cYv=W#&qb5J|u9ZlqDWh~lgVvP<)7p{P*M!2e%c^bj*!&sw zNq1lrZq*w&xK7-5BgPmRO!_` z&;?%BRd|V>G|JZKUE&7#Q#Ui2=(U$_$tlp*gBbuUYy@=Ezsghy*bwF$mq^9bh`&?6 zKzDa;?0-we0dDw^9L_)!hrp4ct>HA=*?De--Mu!;%FL@NKi~gLj4EJ3)2m}MzaK3?)a7vY=^e@JAuJ8p&4NfakVbE{HvfZdF@Q{e#$xzMCMpYF717 z&t?-ot|r%>rvkG95AT5roLDtHO0_FEK3g3n)jI9}kRZ`J+Qg<=jg&49f3A(HoB5e7 zhQNx$(Q;#VLRB5D%;F%mL_~B2nK*LvI^oIkY<6-6e8FG3`ve#Uby<0S6bM^x3r*4w37*Ej@P;wP8wSDKPkJas5gc3?hCXTNBz+b>>et zgO0*bcUJ^40?KZ6+;D3kC_$SlW&%ryHD0~pa1yudLWw2n{x;HG~D9K?Oae$ ze4CAayQ58jU`4MuaZI#686ZD&*;=$-en4mu2-u3R)Et$-U24PC(OD6W6UGRK$6M9IZk~;-#0F+JxzpdA=)8 ziJ$~_Hv3vA_Y28{wHvg3I88irX|EqF?&1a7>bK4qi-cY980gV0Nupg?#>DA#3D@U` zqCpZShJ2Na|2P=?wRd9$9RFzlI=4OSFLo%RDDYTR8*UYt2?wqJ-K;RKo{=xB1K@0| zmBb`ft_>*LfY>-OvS*5Vta5!pm^dcoKkYS}$!ddHkg`c&C=w9d zK?|ziOB=^pDlP{77q*S9oS)h%EJ<9PcV!J?i70~N#dmX<+j{poRQVmj^U5zQfsw{* zR)3RJ4?ARpYx38>o$nW`g=2QY!@7L-4CM;{T`p*K=TkeCoxDM7kvN@NW;XpD=wTSy zk6Ug!ZwK8rc_0tDO{AO@8toU&6a>ZmndGjnZkkLk#!JAbj9UGMzlgWZ+|?n@W;Vp%cut)5WzD@LizJKYujB!w@bcIC?YaHPHV3R$Am!gY|IYNkK$=70F&^+QdKDg(w2&c zRB$ETg`BwXJ_n8<`Xaee%fB@~$N?l`(_Nkvd9}6(c#w-+{%Gfjd-tud)4tFzl))|= z{^88|74StYQS3TEvB$;^)BZY-G>vF6EAZKR3O|&40xOf;ndZRKn^hb%a8s`}@Spm> zdplTJa|xE8^xA&)as#i^fy`%da-v!5h(%p`HyzYTrnFg>f&m}+xQp;vd~{3m<8nv9 zCFqd7W`XhMYP&Z_x9l)?whvV{3Xqq*L7(XYPXV|JUX_$$fbDVb;lEJjtPo|tl6y6s z0jh%ptc+-mSVq&5H?A+0xKwvdV;c5UC)2lcj(t>G!y+w8qQ4H{@yGcu#5nC2VHWw^ zb?n|%;a|-)($bfRv;x|=g9otQihx1p0-9FSR*6*7D}p3r-r##Z_KmyDPCIRR=Ivn- zyqF#b>bV+Xdv$Z6DmH}ekfW>`Z860vl-95<-0GOz!^Ci@RXhQC(@1=M=Tjh)Sj&LK zE!2IGcrN#kh$cc0O|0q_{4`uJTOWllAK0YnuA|WpMAXPK5OILM#6&ub#P91U+gK@= zg)X|n8~mdBs+jRJ1ICXoHgAVsC^8cMK{i{#e>ywP6VoqukF@Yt`hF30VMmnblwP=- zms+862_eu_#B#s0@EX@)FC@hsDt2eTN1f9!Ds$F!+H`q%AS#8##TncXCX&I@cp=Y)|h$=!p9hJ)TBE`B=$QZ{)FHN!pK5R|4pN;!UB279hWP$_@%8(}e zp$}H`u7bonMw{Ltng&q!%*}0V1CFtg6H2!Z1?v@V=ag^YYlDlB>9=1clOecak~}cs zU>noBMeGeF5Tac9*sB+266DzqF}Dr86oL`<{jx)9P<+k(gkAjBSVe@v zTuePbA(wZhpRzD6Hh$VkcMBfTvv&aDKPD)Ye@2s{IdxPQB~N?&!#7eWN5#oB418Q zE?Fo7TTt>X%goCyX;&BQ!e?nm){oi(Meo`|l`*sAcCOqGGRT5Ky$Ihk(5UqZ6-T9- zQtkfdT@S&h0^h5q$5Jw(l<+G;m3oshjxoXZdi0z>k+?|nD&>|YPW!cpjYTKa4?zkC z)=HeA5BGI#QHlhLyiPmax- zta6|1a{o_EIl2kH-z!WXyWuqqIte(1t}Cq5S+G)wUBjz-tTPJ@(N8gI-MOyiDmW0` zS1RZbG=#V$IJ5W&DQ6?iPYxG6n0%_zW3)t&KqdFIXCCWLZHt^8*CeoXbI@>g3MpDe z2Q@E$j%I7;^cLbz&$M z3Nb!ag9I@d__hL}tybxM`)+4ZdBAJ3%UaIO33TQh7L*{nc`{in{NK~?YiP88cHwk- zq9IsXxFjAq;Y>R2*3&KY@1B@kxAQG9x0E~JOs_qkSz+f9p(LKSK4Z^N*fc-&|65D6 zmWKfq9o?j;@P-!4}<6y_7OOWSo2z(mIfo z))N9TTg;}w5ZA!KF5FhGDx~pq3_wSRginEA&*^hQ?9^4K#?MR={f~NG5z0lxb-m>7 zOKh8`@mm-oGq)(4aHcj_9@fD0w&)O7Id>@7WV{iwdO!k$*o}q#x}3XokpJN%#!2JXT@qJ_WWB{N+z7X&k7pju%fU6t z8EWyWa=Vh*so695965#~j5jNF=P7d5!NfQ~y#9Ra@4z(ki<5g+8g!RR(q!Z)iUVBa z8kG_V|AD$N<%-CCFOC;h7@#9;$W5yQjYLDMliCRA&?>fW`82gfGtrs2^hK7rn{m-V z{NF}^huSzLX!ngE+ABCg;^Wh^0C2(|IxRNY)Gd#jH3{yu@ju^PqtUf|xZ5V-$j*D1NNlnbV&08*qrzyE zGZA??er^~gTY6;Dj$qYI8LZsing10uQVRDTdCO)>1sbNzcc{ z2ZE)@_-LXe<@S5PD3V#4o6SY-wQ&PVJXA#IY2gPsD|zgNR?r-i2(M~Hzo*VVZCuP> zd`OX+K~n^X={Il+{yYN==eTtfw>^pK@JCj{o)y{_=Z~uyPVggvi7sw>?h|;(>HJ z9r@y>89AL9njjK1W2Kc<#eo_*6wFGN$0M(Oz{z`c8f1*vB&AkgKjYveKQObZd_q%Zk@IF4ucymdP3BW?VyVJHDSwX-N z(BrXd-}d#|AuzKcdp3Znl7wv;IB}inEg%8ME+9cm4aMlDYQfi)1gf(*=iCl}$d{cP zTnj@iv42)2@H5J=Q;FfZqCa|=`RBTRtA{Mp#XuD9ebC`!&`%hX6zVGX#wR}Vd?(GN3gV$7J{RuB@eaj=ys zhIY*Z4xFO4*jf zmh>0-s7dA_5l;R5pVLJ}@N`_)>$||OjIJ5v5S+Q3WZaE3znW=$;fLDDvE zGRhp&xEv7CYx8<@p)^L<(hVwm`3?_lDZODQEJjJ9fD|aZMuh#aw+Oq!YO1kq&Kwb? zY0krnvenO3fI0;TK$gQ~bDnx`7L z;Ps!Ax>j*C=wn=9o-X7Uo&bdv)JS;?mIeQ4bc}co;L-CFRn+BTjw!o$u1h!m$bY42 zMjv4z?Jf+VISJ_ES6@OYWMO0KS9{#xN@V<}9GngJGXq_Wjup3{Re0GSpCe;fQ(UVsVH_zh_d}0=RxBJK z{yZ)HO`ZmT;Q5T4K5IBMs9_rwcK_CW*UaU64rA=Y9I&Pb0o%DSLf)+;yW<9Zmcl7> z`G)IN24@XhKr0*t37F&;ME0N!EMTCEYDWpk~@VL*?Wd;yMNf1D_h|tS-I}32m z?^*&bpTs@GkvYOF2+eCcgmL+PD&n$^iH%w`cT*_VSEk{aF-&Rko8&j3zkfd{;EK@M zsGv5G>EEn#rFWo!-#e85zU~kor8HiwVTEfzlKBADCT@ozWUA|5{W*otjX9yYAKV)> zo2#j6^%YNuv%<-iMX z5Kz6a`_(!!7+QM2r4E{{F$p@6J!h&0*!tH}sX7xiI1pA+Amn-@yP!9?E;jqE5Jf_9 zvdbthgI{PMG3ns`jmY0|MTQCmUIXlYI(s1~x(yaLFVW~2@G&R{e$nuP zJEq@nH`ov%24WX7a0PR^ZBV(PM5~y^hwYtfMs(QtjSwEhm4Hw+7wY!nKij3823N`55iK?U_VCR&_DHhd^?1KVDx>o?e3Bj-+U<|TS^rTS5xHjD_}hxePC)G~_w z8XvuiQLRXq5f7eCHb)Np*o7Ch->G=L(C5k>xQs;n_pVD-l3p8K`3Wx>7eN)H{mi45 zukvPX3P_~;OZyg~kAM=)!&_?HJ^>w6j|n%JV~y0Z&Ub-t%$B99U}lZe;a{dAFfbI9C-A zYjp3EOwKUljEkP{zb&WK2U<)3B(kXrD2$2;($6fZ|Ak#(LdOaAiV!CUy zo*X08mU-67yxxO+Z2^WXLhU=%m(+G?9F%G~5Ph8eI)=EjMgo_i*oQUmu1Z1*n^0qc z0U}#AwB`Fyt49eV{ zdhR^yW$l`3!@agOXxzK?DS?sz&11kB`YiWfToP^9 zI|Tl@5c^`MqCV*IeQ%arl^@*Oiy7&^*R`GH11-%kFTMjqmRvBwDXX-6_?xx3CDl$NPR>trnJA1 zfsQ%`0aM{Yksbv6IHNM`wgEp{?BZuyNs~`*bn&m31C5CJww7L8+L^nQ2*(Ikl$81p zDH7xC@Q0qKz@-mW?!la>18dJysZY>CAQgCT!3t8Jq;UTliN#JA4Qgi5%RjZ96W&kf zlhaK1Asm1)-*_pwhh@=FI<4R+8D3#2Lj9C6i#DjiP=jj}q9$B@`~-GqX8EhSr?eF{ zl+I>WFs_xfaJxm(Op&Z4-cj@AwbF@$X(B%fbYVDy2G9~hZ)?ro=7$xB@s_NfKneq} zhz(V}JNaC;-emA*I{lizyw1fuU=F{NI#tf8Xf^vw%QP03M2UecK^wsoiK_kF_3EB? zC@9*J`G8z`$APGbx7rlZ)whg)YIG;Vg8qtoek`N&1@2C!&$wUJuA8iz4-x;q9dU73 z0j=#-d~48lXW{vsh)G;KnfJ%y&eb0kik}&F#a1BFF{6k3{@e0u#oLAs3dONRq3RqU ztDY(d({0CM!aNz(1A9x4jclQc*&GduTP&tkz-2Doh1{?&3SUQ#j1izWeSh8LTHHXi zXjJ-Wyd+X!@86o}e{rT_VdJKn5gpP`9Di};iG(rSf{QXAz2aAX>9_V374LH4`*%-K z#*m}k)6(@|AV#KA&2JUX1FvI?sEUxMuGK6~Z`FJ09Vnt@?T{>2;5&4=z{gHidlEti zUh;#G#(NW&V&M8#w$jWU#uA1U<-hF9m`LK{ivW6PM%bAw$MBc(@YVd>(@_+qWh+O& zSVjg1VyC@DDvv#=0CP{+gT%EAEua)gM;~p}XSlpA*7B>RvXfBHa@_xCD`8Ya;4Y-E zBUItq)#D00Pd$$XSg5GT3;t z1}|%~3x`nmiE?$Ky1tlbz)c`-S+}M!gHwU@wpC@j@uC;LBwWKw>hYYNwSXt-fGI9^ zj#z-RyidZ5^=m-e`t96d(yS!LVVpp}_SM#&r>v7X1k$%#t6p#Sx6m&-P8$C1KrGop zjyR-(aFL%3-<@iuJD2Kv7~qG)LkGrsUX$Weh$&id-Y@cp;ZMXj3Jol<6xnOTgSs&y z!$;04^RxYDCEwD}G!^n;DL1YG(E^O{O7GbL^lc^hP(oi;3HGWs7CPTiM+@ZhMLQ6y z>DT!{eRHUSK#uS?-fQmzZk)pivcF~(U2v*{vyQ{7$r#iijE{HSV8kfEul@|1iiyG% zYu1K*;(tiBZn|Uh1gJ8m&-2fL)V!Zk!mT3=X%c3|p3ulhP6@0C{wzp`TjyRO7j|GjWsw(?aM&Q<{!hO!B&nqJE zJ9#t^sGI!R`a{b9A)B98Hq*SU`x75Bjcu9SIR);*D|1S6U_HgP?y{O5z(X zrQ|Xd#y~g)49|Ja6N-65k5&X_}K$#Q|d;F}35U(HUWLP3wZp7bZ za@r?Zp-W6gOP`=`1Nfq3`Cq3I4>6sJ0Pr?NBl-!r&x?%dxR>5wf1fYhmnS{}|8a|^ z`CzGtw)1pr5e$Fzo-dp$+eTRE=Bk$Jty=1$>h;kq3AY-rq#v5`TqbWs9=MfSO13j* zlPqT?f3?m_fQ!!bJ?#Pk-KzVGC(S=IYeS+t`O%cvf_tOkd;@Hqk=rg`!*O0UktQov zXVkZ782QR)?QEVWd40jOTgSVl5f?glrcW=x6s%4*wf5u8#_8p*WunlQ2_9L}KL%dV z67f9S#g(_zj(~xI6DQeTWbcn`2mIhHgLS>?B=ioGtpEewnLb!eC_Bcg&`nw>nmgM`+E|&G4L5f-(`c zK@*@f1}GH8?k_BTncr&H%Asrhl{G*XgU%pdBsg_3xyJHN-C^=|UetgDgO2keoa%Z& zhSpCc>ckKJzJz1YkY+&Ko1mQ8?AV-ctn?gs^w;51lH0l(;uZpj9D&rEsXN<9jfjir z0Im7p;5Xt;v?en?-sF){X>yBW=1hn&}jX~!SC9At8jrj9>Z)BGe1mng53*k-jRxkm(Q`>b?=nj&zyg?nsT zWLoD|&46a!UJ|%Yod4SePxm_HBiO0isy)uAJuH%y>f`1l_u-C1x}6P{L9@DX5jl9L zHxRc$_p|zsJ+%e003#F|s^5PnxgWzVMw&|%Zl@j;TT-gyI9OnLcXK1xguVtboHdC6 zg3H-p!*rjSf5;ie79L?JD|NvgA%xj2XUTPlDOp#x6#((?I?x-uRIjykZ<*H9rQir# zxhOF`ZKT*EyH0K^91{t#2`TSRr&Re>LP>Ou?h)Vc<_zz}s@m&C2jbLl$n_VcJRGUF3 z(`jzz3Bha4!|W7E34bOFXzZ(@(y)o<_;3Y|KPZ+ONxxBAx|N1v77)b>!rh(|a~rt( zq0o6LTF$rnGQ;?J3F(i?`hh2FF{+md)Np^YCSm>7krNp01By?hL zi;ji3`1z#XYn6{f+5u~*1A_OVW~=9+N#kKfV{o(;SSQ--K~r|{{ng8T5%p>&f)6T# z4cA}GdRQvK-Io_Y_z1j-ZpHPuIt9T*9?7Va9vySgHm0#&``cQE1UBFl)x-k-O z=S#|r&K@b>kgRtlPy!uAci2&NHU`e9K86uzH=bvN^bC{n<%kACuQ&8+zS?C!Ho@IlcV6Oo;cE@CM$6`wTq6>D;8zmIOm*@CW1_u_kzK4fr1{aVwLH?Lj-G2A~}P ztwxrPLL;ywlGab5PcN`_>Er}v>O+Q5N&Hf)8Ik!rL!c;Au35Qm&gpq zE~~k~t^f+(C=hM#rbX5h^5Rg9aVoh={=0HqAoGh z%W#iuGkva|#jkBS|2D64Yzrb`oMbeTU{w zhD;*3EoK<8g%-gzoGHGC8(&Q4v#?1Qq8~SAK!{g=bFntA)+Qv;wwDI$Z9M z1N0AeWcjJJP(1D$DF2js$vQ9WIY5HxWPW`&Eq+XXnO~!H1-`%>nZ&REJ-RJmRu%}U z`hkaAhFGbI0y1Mh*FaF;&WKF%il?uTRx9id)BzbaYFIQwy}zU#apc3;{FZcIsfW+2 zRt05Nvcgb@iD#HzoVHu|%_?BFBL}EWn2U(+y}r{XGDK{~5Yf{4HhbN?jCL)seNSW5c;S%Y26_?A6znjS_0`odQGO-;5d*x4YHbBr6{r#i*%eN!YA?F^4xfSv*6fa$XS| zuKKk^$6`zfA+{g$+S-k~3~j71v5|N?nBa2oA(GIsAE6%gpT{e4X2PJv&EeRUjz3nx zODOl?l*VMk0reaCH|(;zTd9L;Z2=pF$2Ky?t(IIvNatT%hs9x(F0MU*$tN@sS+|ik zF3RcCFN_LVbN@-~OQ*{VRv!-;F}*p7B!=4$X`!?Y`SI*#qoA?zNTuWpsPxONnkvd2 zv*!OygvGA=w6dnUcn+7kp!5}+gN}Ut(+4C1Xq6E7p|eoL@>q=2dgZ1I3_6cL^b~1F z>!!GOUcVkEk<-*BlF+FjyUX>g?~(WMRop`T47b>%n85H`dVzaDp|+iC$0&LH%g}2i zj}t@1sz(k+IvzTHJ3aJy#}OrZ#0~Z$)GSHBWsoAmm*O93-j==x={Pda=i--5Cm6ZYb1{dC z@g&NG?HgNEHH^`pR}GHrQySo0!)*rVmlj8pm}|Gt8|TFIPx~GSdDSUZDuO+9OfiHYZ2|diC^G#RIndg0BZdLK z878zKOlNB(%-ZaZy>n=X_pCm(=Crad$Sv7NGasup7vBPNH({~tV z<^NS4VJ#BN!Z=xeV}h=(jOs2Hnq;S zg5Um+2}q2=DwHf+CQwqpwsT+s<&L}to2;e{2W5O``7|Me0hy#u&guZN z`f|I&fY!4NWEQ1Ter+V>UJV3^zSN?6bGtc|j`O{?#hIh?3~|Qzt@_ml9rW!Ss(^|k zc972yfuH`;kyh8JL{Z@_hA!j`lS9QY<$G?HYk|j7@Nid^OU&b5K<{S96|xNow)QB% zroQ9vl&D-uhYd)c!Ni{sh;gP2AH+cN(gAe2z7){z@;HP2%1Ji@V}sfe+6U^dYD)Ap$g*|tkr{QQ84W*^1tuXni@a z-F+ER^3IF{kwG&tz#_Gf*b~VO65=czd2H=fwF+==XOZSh{vC-LA$%(T z%=;@a?~c@!5tT!y7Tg-9q>k`}u$6WHq*i?O&Ia=430D9GR|)~F=_HZTgqYaB2#HnB zXG7E%?TOX?+duhCx=4)FQYrND52Cy(YeaeT+uUv3uw-~(;YUx*LgFYSjnL zz04>^d^guEgITPOWq`l$7)P-PI7r_$7u*|Tf7OH2sO8GlPPNuFj*!|dN4Xx`IdE6tcZK9%c3KU0##_XQ|W89N# zrp4b=+raQN{S+QOBHzBPy`W|zEdwa8m3i=aiF9@!RtI5)?)LC_T5nZk%c<8CT1-}j z*wn^;MsFfVOAjqz{%e7CI}(%x{D;dXXcWPI+PypG&*eEq#X&P$lFTU|l4FiDGw-uA z<#a0qRf=7>sO)*hL+;CL2^X7Vj8FwDAlhp5oC*Nw^4`t+mtLP2`7gVF^PWp?JJpv? zEL!r@2VPl_pv9?BOYuDz)1+iuim1JgGfAn-+aw35mdh!TOap&902#QoKQgjnDA|vw zl8m}jn5)a&v2@vqMY)>+RDFd_YV6@@;U2tf0|E##jqg(a0<)jhz-#$D!6gDa&qPeC zA8Ds%ttq%>Y3{ks?Pw&r&)h`R%1EiZ4d(vn4YQ22hN`eEW={6sxX#)39vQVcJ(84* zI=RaypF4DgtiKhZ>Bq*KA<{x-e^MuO>SNSZuS?0K# zGv|3NwCQAXkj#@s@EI*M9p)Wydkf{^DInsAk?EKUB4pz! zwyN?{gwxU}B}BD#9d6rsV&bs=(qDh4%gJrLPGf8BXMh0avsvu)64*d}WFu9sq7NHg zs+z=h_1d;H5{QkldSNP~iBXzdIu)_FoaL*?tU+NZt{Ur-ptaUU5big!DOt_L55?1` ze+xU8((saL20hSJT(ptXJ+&>E{uuhgzlbV3$(iEzZ0PFrX*etohA5>>+?*$e9D*eM z1UdzoY3fc0lV$mQ@d>n%4dwU6;`b1UDqQ-7OqMIRbGPf<|NcqVyHb$NeVf4+Pxnr| zgka#=L&AQbB*zepAFua*Bzv-2e}9H?jLGQFU@N!w5dkeD!udsZ{P;fDo0$5}2O$2R zW<~aIddFeLyze@Pesb2^wL_qcJ>c08y64Xv`3e>-HPW=w;@I z9D$!-`)8l&Pe)(se`Nxmh1zjlyLCTMrVxNV2%G>Cj07s_A+JftOfox*I)ar+%66_j z&T#KWJE9<~07F2$zr^q1#x}tO&SEv(h85*@1l=r+WdmOgI`Jt$hyvJ}%fHISK7)W? zMgQUS2rX0$$xp9=L&?n$RTZ~T1vRtNM?uX@ISlDK5;6yD73n%-4B)Oe}3h3JQcb5IsMihrDtQC)<=TNW-vA5w!qMpW#7TH>Vl1 zG??9z2J8LzklTb@2u;^(7x}A zAHi1KrO*$D#;Iw}a}DK9?wi}6PZ?mKX8YPi+MjxC%ri#*V6{G|ZQL6|S;%)uGmr%5 zdTszH(?7fHSg@7>?;fPagW`mho^fmGekD@e>cA+b19(W@bEr8$q5`qYUxd_Ku?XI( z>X2 zk+~m{86w4LqYY|^cJd*}{U?qey{gWRuZIm~7Hn{}6qeW6%eT)kv$sstaAy!K_;Bx1 z84ZwRdh(p8ikF#v447<7Wl>Li|Lu{72VgaaL%BF2K0K7AHx&EjJY*v*2$;6Sc#nz!NQ9C1< zQCCi0i~Y*&OGEG9D<RKhGQU-*?#Pqw8e#TEva{1_F9&@6P91 z{(lAcl;kE86nWX~Sa4b=hiCyVo5pJnXx$0#MJu#InyfUa-4#iamM{<&(Rgp9o)#Fw z%@R#=g2CoRC{&F#bzUA8*{3_f;%;dE>T8M+VBIvUf963WI!_dZC688?N9A@}D{xo9 zEobE|QCs$S8Ir07M_u#pT2PCC{}q(R*h0HrVg9;PMSIKP+UwYFH&i3WcKX>e>8}F_ zn)C=Pj+}ti6{H#NoI>^^824w_G1%&1 zb2s?Dz|C|$jA<>GD{uP~0-g34pC0_ZabzVS{5-EhilFQD^(#uk>iFugi?x~yS)W87 zDQEM3x!@?ROk|ZnVR5sTgPk^krA|Y#^>vq(NO>>_M*>p zzzaFFNhMq?0zncmU&G}Mz71AT*&hk5i76@4>sl!y%v916Z@qKEEgOen5OVs0K|O#l zF-p)xu_dp6hZ_ADr6od;@|{T5aV_*N;y|s_YYmcS^|7fR?JQln=&nt6saWp1h_oN1 zvAe;hT@D}vS^L~0--&YOn)>Zvo#mlYfpadM3j`y;ji5`Ps98;)u`Cpo;r6ct*Imqe zrGvP7sr3scQN$yjxOlA&umKP?H_@mBPVZ^>zMg{3NhoyQyaqn+h3~=sz&Qji3IdmK zaOS`gxec5~itDO38^AU(Z#GBZlDx9>{4zC%anJq$$JZFUz=;&qh@_d4i6(1!d5b6V zJlPx7rL(7P`{K{LXk+iGTp?V@b=W&86xbib@!45Zj(-(#TFfsm0%<)k{fB{6c2xTp zlWJ%Ef1#Xebxu}@kQ(nG&C0Dds*PN|IbPGw3-$y&U*oGO{*6O*g#&XuI4R@=H3n4I zNnjCu9FbY5WBh?vf@nAIAmEV17_JfDZ;DCcEjUBE_m z{T1@Vi%UfGHul_N@t{_4&q@%Kqb*?YnGsEOIZ!30;W>OyPeOXgg*Mu6iVzM?YhoN4 zJO-D2*`nNtdIz1Pt#&Yi2AeWXc2>4su5tDvO?k!crH^G{ zb0&J`?bjsE2h%=qLj#R*_7RyzvidVn-|RYrOY=q>Z{FnSD3q@cKsZt@W9=YEMK?S9 z)KeQQoLRV3(42pG;OWpt!s+n&;oe|99c1bxXfplSB=MKY^Ms3Aqj6BJHV@=Mq<*GS??_gHr;)rZVu$i|9E_O>?hLd;#a@L2sqRk_tKA^h~z9 zFFlgQ%_H_J1$r}Om(7|FlD7r+kZD{8;SPUQRjOIj=0gNe<6E@s$!P|g@~ye4 zB0!nQtj}kUeJ@15HHR1xM)&WaZ{}QX&+>0|*z6w29P3l}zZ=U~^*^awrs*w~8KS^n zF<=|{=95Z9t)kETjI6~71Vv$Iz1j>MZm`1MkXb8mWGII?>g79k5aY7YXuqD0 z6i?#RDw~%eCzcrff!^L_J-J$kc`TXz9J3&6Ya0DGp8M6$y+wK>VTdWhIi;~7@%w7| zdh`URfJMq$p*oaO+?{&M9^N%pmGL&}li~z!72ZqN9}EOFJo)}q6l4t`L$r=StiV%V z_`sP@Zg@JTt%AjjliR`@M+h`489BsexfYdUPD#qm==+Tm*NMB)$mDf+6Nlpfppu<8 zf=a$AUk+i>4D_eONcl!nsuS@T)-PJP1CE}G8lK_nR$=bimZ+pV`>A1YycKokN(M5{ z9|)m%?kQl<*$~z0EL6K=R9r?cmB4^GX=&C-(qC2v^=gh@Q;V6RK@A{fW}Y-RWa#=CP6{jy1p9zFoJnE z5!^NC7VJe(vg5w)fnziF4ff<9INgf8Moyau=%THNU;r> zQk;c0xpBDMW(Y;g<;d>)ug!Q>X;$?%c<1+7k}f&(nTJoRu0_;gEk=+yOy8` zg)pFf)(9C=#yT{Lj`H{Pzw7TOS2}R=bP3kfI}azZNZvz#B+({fH1ASp z1==1aVmet3Q~ zH7MF+PwA#Ufi6O3akUn9MN;IWvK`$YU+~p)w+k^VwFtT-Dcp1XJ|I8Hv2~q>EURYW!6hXGYH0d@abrXGNTunOiXtD1B&6<7clvTTJX()PeQ2eUGZk1PtynzH z(4y|$G>d1AMp(*_N!`Gf2jxCy$*a9-U50{HLITF@P*_RF_j7O+k5=hl#yqH`TzYsI zb4=P4+qc7DDjp4+sMjB5)2GZh!XOyP5=7i-E%BzoyqG?pj&X7|GM)zz-fr?HJMG}> zwAE~4IPdBr@eTpo7WcmWRQJe6*1|=^ziWy=Rio*5+)%&S+{Kejjc-r@mars!LMyIa z%?G8fW9CS4zOZzSV;A4|k5vm1QBhn!laaeDn&er0a(ayfEJ2_GiDC>DOB24iJq;K8 zj9MB{xbp<31>%7f^7huIAhcVaf#*}~7d;(>X|L)`aTi#C=&a46{vqe6L-q}GtvB5?q46+I?%&bR#C+__b_O^zAF>3+!i1H~~J@o0o|MO20 zjURH?F4cK#zWWx{|kr)$v)k3hc~!CuZI zdigRF?9vF0^1|J7C$ef|!S_}S#%~kkFp`wdh1!bKquIXq+|nqWa9mi-DrVZl8+?*! zSHz)vt$ly7*Le?uM!0%bVqs`_6Wo*|mCbZc3I(h)ACT9F@1rbyGQ77~B|EdYMP_4h zBB{*tMrL+}{pz%=eVtA()D)(DDjm3uhm2$ztyHu?jtOmH-qJ%O(i-7LI zNUm;UF|vh2-6bOY&Qiv~2#D8{T`^|NewquC=vdhx*!|0JOOZm1bS$?y6FcRA`1hTC zh-v||rZs3YNs}kdhcOPQBquE**7364L^9ZjAAgSM-3VbD7lg-$g8a31;b~gP0mAHR z+ln7dJgOM?P8t?yGAI%HqC@|^s$5>w2xP;(VaY#D-0c5aW%MfEC80i!?NmyR9PHWF zCPl&K=c56I=k19u{F8Ai-i>xbJDS_=6GZ)nUpdZ9Ez+3`;|3h`haVV{){WXin3^e-e%Xyv3M6TH06!=G#98p$wrUXMIyf9e-pF0gMjOw0*C{9)w>k-IP*gxL$BS~! zHQe9l7aR$9a$nf=G_E23P%%R$9#g8-SF(ym<+5kAWER=lPWpT_0yome3e?&}&011L zq8v`(+tpu|tzH!fLa?Cb&31@F13gTYgI8z)e;4SCm*VLrHr}gLqo3SlIzj?!>{Cba z*fdt8V4PS#6fP`Y;jF>vRfGFcqMl@nKat($)_&%UKSH0`x%jroL0E>Sp};Bcau63N zseHAVh#43c6{z(Ut`D_G6!P2WB+*J?5wD@?7n<(cLnU0K7av!6CmH1pZ!59wDtM0% zqQY(BNjINhQDnJ>OX`1r0q1n~znG*4&a!6*!|kFxducLdHJbCPBtpGfv}mqxe3_Wj zZN%AAOPsUl^BgU7I~{RYwA&8#bdW={HC&h^1fATEq1LS=W6@simVa~o7-Nzy%+FR$ z1A~iv3w5JDxdD^5Ut1?k^oF_BZ{CQ<#8PRYJ_4D(WBeyzfhWHkC=aibe!4$SkS;-ht>Rc;-PL8R=h!9}x0Tn|H*CtMW}n(64n( z??kK;#-3avgo;xYB~R*J{c}A-P|fLfQ!_R z>S72%TF8=;2Ju#lNZOej&bPaePqX?Bz{%s8>1U-DgO_(%<-Pme1JO7ZfqMV1LsBju zLaM)`&pWFl892S=wcSF1+G zi1@tvs{k&z<7H$M6~MD6&o0CMP&R|7&%c?o5tH^w<1s9eZW3xiKJ6`{xoJRhffRo- zH9v0a#up6XX=ffH(gqe=r8MW(G&D(zq0w4VC=ZHdx$!G5zAr_8M6D?|^dF8b#&Bk- zte>qnCWH|ox|;aY{B29zcEqNEoEe?rs(OywU#=1wzAy3looc)`6r0=Y^4Lknp<9+Z2h`ry!lPw7BDw=z6pr1EKNT- zTD5L3>53ESsJ;x1@`u&(f=B;zEB$kQfUL(?g@In4yv&9 zT3ySayF?NuwL^v|3@7eakQ3LM(`n$`h*l5Gnb43n(WN?tS{xLhf%}K=@TJX;MS|gn z`tJ7IZBITuqhkaIq_ss~gZ=J?)znpWF_jhE1;M?R$_~slA<_5geK2iJ<(Ah*VLb$m6%D$zc@0TjFBxA%mPoDC8Q!-umG2~ z3h6Pbv`m^34PcxH)0FU4(VE^}ddXxy@anYr)Rf}f3!(rKfbM_HrEO37gxD5N-Ort^ z8ZA^VG{6+RJZAjJ@MjAGCMZTt1Gns<2m0Hx371ddHRYz6(->3Y>W^M=FM<%%z@-JO z=eN6zKUZLG(*UOdU2Rwuk|lywRWD{3WH_#u*|0yoxGPz)w3|{n8|2)&L9DjjRQQz7 zWV-j$0z7FruBy5l-Px?Fr@75$Z6;^zGC%P2%b+uq6PzfE!otv_;S~pdM*=rwkZ9h| z=bXV+D;B?KmjrXn5(;a#EJI)2^cZEo30r)z zPR=E(AmyJ_krY+q2;-A{SvWe%YV5`N-qk`s1vKSS;a-~Qz#ae`_om0QoHLG!`_*q= zF+`-Cc#a9d`1sgMEU;fIW|wa+pRn^;<^OpBL6tn1_h4s^Aw)U92ki# zn%6<4NI3~Q&^D|b=#*-_} zVhQFAT!0(oci`j3IDp(kBzo2Gv#g}xvaE#cx6cD7sS8YW#`2G)q5sg%Q$4~<{v|-_ zGrN_M7`{|F2CaoDU0U2atbK>`b*@#2i23|L6IF{^hgdK969@LCjb~s%lfP)%TsCwy zKRb?pe89Cyn|t0G#U!4CUB}|1L%TY`IwvevId~TnVoR;76Qd7^+3J?%3$(AzSueEI zD_LGYi;}Nv7X{J@NQlmyLFbDu2$-p?0IB+`zdKoUA6;b8hw>XuCxykrY;EX5tn>wB zwxBf;@&~%S&M(sx(L(G}&n>iM5a;c=wO`Ip)PLclNw>bVubEirAKg=UH?gYu>5rS2 zPZwDsOc@bANlc)IYftGe(3nRKfoKC~9&*nswzE&e2lmrM-X-OP(JedDJQ0#QJB4zf z9Kk)L-)2&e1pBibPbp(eB^Q>w@g}FESMIFh@zG3lEX+4?k>Jq+unp|^67cK!d1f>8 zAC>&6!}}QK38gb23Fl>}%b({Y%>s6mas6xVZCN-#{|#ztzGU^nZTFpyiI4;$#^EmH zC}dE`3-jq|>^4cgFu-fB4{&auG_rl~krI;a*{V@o(`n^HTFnbBK!Y8(cx=&rc`EW? zGxjAas0(iE6Dg%iS}*d+uiadbZsudPd4JowjrImy!D@+K-@}4YY8R@3r6{A8z)uwO z`$M+#gkMX@OrJJbNcXmke%tB?5=9rjJvUPCjgctY5$O*z4jXRgmN#IbG8nup5tj$+ zX$`#y-)>ZV&KL0ny|yq5FsCOw+jdj{-@v2zg^?GH_8R9c%x={2i#)--@rX4U3fB&G zUl&?|Ml;!$0$gcQa2JJw!h7HCpbD4I0Cd|6GMpCO&U}ndJIUKw?Zm6tbOU)y++F5$ zz+zrClm)RtA3Njl+Aqy}-=lO_0E<}Y?jImG27=E66TTb0WskIn%%l@ipmn~sFRTFS za5iLi6*1(zg@j~ou?h3o4&D<{btZ0j?8*S>OdwY}vR6s3oRx^iMt?w|+VGQo2I*hT zwIU^6MXSx7tReuIN0K9Z`eCMn=C&!i!=#KK$nfE;@W}GHV@{@TmA_c=`(S? z9zBc9W*cxo!IpF27@zndN!@3dnLULq*M=>LcjXaT8=$+L*Lp&gKk#!-ygTUn=UJhE za+Aw zk5a^im)K}+g${?Zeo^Akfa_c{7Rp#a@}jh^@EO0Bhfdpg-km1Mlq#QfP!#ER)C#Tq z&ta@guFS3{7pF?K2$3oCL>aBy5b(*`Z*GNRL%s7rCgWLw{=?Dj;G2EXB`1f%mO$4| zE`AEw75lm8G~1Gk!2`MP@P!3}sg)&{>RU;m$SJX7- zo?pRbu#Z3=46*nNtF2?6Hd||kwxCWNNdUOF-i6B;Op;nKhQ|1l3D_c1$uMWDv@~{L z78h*$zDrGA?~s;K?4?f=IJdtngy{ibM7AK%4A6yFu-rE7hsG*`+5yKiSEJFeJG|11 zn(8~QnP+)j7tClH@fh66@% z@smyNqnY#NI_}u54D})|eI&tYcj>I^y=n-|PT>o!b6d)DpemMD7c{u`79T&DF7&+l zD6b;7(F6Y-7vJXmEuoIabaAyfqg{3>m6pswH#9L@7a2Qg#w9 zek?udIJmGCp!EJwgE<$D=w)ztMK_{p{L64?dEezE!LD5sfc>@Nrpg(aA zr{f)jnBAm;V#gvA#~xPjrEj$aSf?yQr}OI{zho~{wAHV!bu}LisIL&~yV@x>&DoO+ zkpZOAN$>l#-gg-HqhZo$Ln;QmSH;Z>WDf;xyUSRotlI%!3m_ z6aA8$HD4_qc-4{3I^~T^HHz1t#UbcZ%BrELu8Y@P6SsedQ$S{99*QY3GX63c^8Y!; zlZ+7$Gd^PStHJ|=5GDpEkZZx1SV11GbU2a)pIQND_6}nk?rtp(7Fl7srwiSuPb~E% zZodzapMEqr^=YZ^_wQ4mz@z|RhMm2!9jG;j4t1_nh%)5s1gZwR*7r*s@aT$hE_1n_ zQAB>$cQaYjdw+3YM5M-<3g+|BKd9oO=(yE~Lfj|G2-2@sGC5l;uY7+-oVQEbp99&y zn#R4qL!y`plm{cd2Dja74l4cxb_4wLs~LhnhSVBL4P%ixX*+$^FE8H**Qq}*)d>Ob zC=*K>1ee5>s90dw!wZYBpXY*o2=VMqZ=W~*R66PzS!6+oB?fBKJ9}b%7mYy?ooBVc z$aH3D1XcM*t&(~g?-wMD?!uERkjtpS@-F0$WPd})H}9VrVfpyMrHi7J_eqcc%NZbaVSpb#QqN*y)PXE%Wfm zxKI-w-|daovuVJpZY7*h`YlkOUk$+;BhZt)6E*v;eaBg2&KakTau@n((8%4L#{}w_ zXk#Y|Qv)6S>;$J;(D~ei*_O+`M+a7PdCj(S&?GZJJ$FA^pO2Vq#-$S`sB7YYLJPr5 ze{KRiGPVpEzYmaF3zZ?-wr^W!9-fo+32OI3*Yeh`CZ9|q7h_K~og*t5Xo;?N)B|9Y ze8Y2oGXY^ZvtFsK9U~dZkgN(u2Y2?!2-7~er*6aG9<^aRl-^GP?r^fho(OTfQ`XjK z^1z1drKhUEiQn*2>qfjn*cOkcGlL*r!VWgOQ36D+v_!vU~97Rg7GU7qkfejD{7=17oZm&gYtBN^d*{6FPt4PG&pmb9hH4G)jzrZDQFXKVilJ>{7@7-p?2$#>0PAvof~Umjxk!h`s-Cl-rN6R~X!*Ad&;t zfyiQY`aMyFEpNuFfs5yGSY6@?GmSNX4+(ug00b`?QoDc*o@Ez)oSw%!DLAn?PBr_d z=b{*cq8rri*Isv(V^rGctR?M*9T3{sak+Lg985K@1(ntRj0cxic9-GPNMo>f)JOGw z)w2sMCQ^Xm1?DE#fz8cHwk-}Wjt>5hENakkW(cAch!y&GiHH=f&m{1sp1p;r*#&@1 z&5&;jO$KZzPHd9=Bvr*URNii0s~EqmBkUH-jjey0d#wY6`nOA7E-j2k7*mDcyg z3%gRiBi_XC51|23gZ54{4dmW9XGTJEUp;~L{sob@-K&|)>a_Y#GEu9+7Q_58%eNL# z*ayDe6J;kPP_PkV5hOOj5 z6rePyZyC!h1EY#q=)6Gl2J4W>NI7_ld~E5+fV~A%G~eV`yjC3ZySg?xYB>CAtm%ND z>@Qd{O=cnz$E*!d!&C}Bo)LpI7pqCvU?dV@rqeNf`dRb3$7y7t1Pwhg70?)#te)DI6^BtA`rAoSXA4h&&I+npohT$SFw$5 zo3_;>DpTfU>OOD9nSqpNg}62J0SF#80|9YDsFw&rB)8V?iA%drgesU64v^`4Sua!a#;%IUEMlA2I8MVrhK4Q zppnf%a;>FL0ymk)kHwuj44GRK;_BZ-2YuRqy}S)LYL?m~IYwoC&I_X9oCud=b58r7 zr~qU#wO#RV77@n((A9bY$z8C(WAF~vyf*-relCGr*nI6yv$t z`M1F%mgT;wFf=onyq|M!+(m~i>XW~H?LagkJAps$6Qh>FzP&PryP)|tRRF#8E6T)| z5B>tovLZo!SX(R9kLj6>vj4jWaNssWshb(KGR=)O8a zi#FZ7KuJe85Eg3we* zQ9DO&3w|jM8oQBjAvlsINk;+@7a%KCQpDjJvu>a_adJpn$GFz;i?M9q`Y4A;%pi-* z0bw_-{HAdaMh_ivb83(yhqg!6tjOVN|5Us>TVMbk+rE0lB2nStGDGWgDaA80eE=Yd;uFBebAVAYPX z^c#*|{pGRp$vnVf=f=%C>CduL+4S>ia@b|)d*}XKUZ~l-$q+#8m>83>=q+tdxKxT3^&>9v9+a880*xFGVLTeXMw1}Z!-EBweC*K{q_x5DQn#*iIf?jqP*4;)* ztAXyT$7FmrLW*rcYCfW6)iHXU-F}AWkVJ`K9RQC5ut2Y zvZY3(;qfYFVx2mQ_6p3(FZHnP&Am`f3~YKr*Fd4j0kv~_(qT+)1BwHCA_Hkye|sTX zN`(YzT67xqSiOO^vL-zU@vu;~hb-o3s`qv$M9_vEqeC4bw^f1=y*-6SZLO2Xwp&Z# zDx@oZyrEkFykrvfaGs4}z0OL%$F&0Jx_i$2 zMTy5Fu>Ru^t>)F(*FFn0eE2;3c*5D$h|F1*t~PD}P^?VQRS2E1>Z7!i7jKsCUDX{r2k2ConANr5LPXv+Yfv%C?rsy$`U|2TC!7VQb zEU3Jg$k3IU5-MPhhqd-KZQ7`tD*F0GZ?(0d9}P!j|Va}{3djqx2_*bifE zq9un`DIa!ewf__tT&#Ig_i7&b$+f>|l@W}1BXcW#FjH2eX+ItKUU}VHUfZF<+8zfw z6CnBxJ^c4Ky5kR|zdCH#Q#p#FL96TEA09&ue?j7*>F5Hb8!`M~Td;G2fKRYhwaWYZ(PEl=UQ zz-C4CzjGu8FO76HG+lAEldJBupYk{(9j-y$#o~8f3XqpwIkChY^%jL-`dhh0duMVH zI_G*3kW5f-mQ}(a44Lw;;LZ$<Mp@E!~+ zS;1A3Y>FW|8XqhCZv6rXg9Nhiyv~W!9*57pX(-^(e``g6dSiWrbk0$?#)^<%27dn$ zfTHG@ITYR^SJZl}4F}+rUxK-EJ$i6nqUpWyeNA^IXl!8E*rupn;5Q-;Po^FRwiEkq zcM+uET8|jbZ&KlpiT=H%_r=BzU9|Uf_`iOtIU&w{gqK8lg*{4hPl1gNqljo^OclMJ(^yLf0Th{1g04WjJKEeqh53^MHfs4Ztut{sP zHoIO_fa2n`=AXpE#jnQU@3%B-7|#q|xq4PtogY)r77OTXE<-iBzHtI+JmKv+-YLQD ze3W2z9Z4e+Byx7cA~@3vJ`biH32qEz_=#1rEz!K!Z{J7Aq`Xk#JRA-#%`<@2!CJ0) zPoM1ewxw7RG}B+vC+O>2fQS<8Y}8FGZm0n8=kEU61QZt%E&=5=x@Czx06sDx)9)qd(8$$l}Y? z{_~L0GRB74i~hy1$iuvG%;*=r`;g`Aulxbo?=zcVlIrLD!kA!1CkfCYg76M_{j-If z8P;P_tDR$kw!4IcK!mU0wyadF-ri4nBKn~Otqs+65&qU^^7qu~AN*^nI7)T;B84fu zHuJaG^s(G0Gu>ReupjaWp%z63&OKV|DMu2nAR1ib?Z%u$6_brxUjois+ppD&Xg@Ty zc*S}Gs+rGNR;MgML=nWWr*PTaTh}ZtBEavl{Zib3fYmMk6>0e6RW~*bf>hhWPx1=4 zJG=I&LB*gxUVf?sPgf;6CGf_aaMCCFJ+9e=RdL_@B41U{E;cww6gPQUJOs;^H^`YQ zyfKk6;4sYbyiw)>zA>cx>Vb=?rxv1lpvQU7GhHaY#D;U8%B)wY;`_fS5eU0>7~>@m z5l^u@*=i}WxM8RmDgL;36v(o)i~8DT=0aUxHfHhzz z&dhe8Vah`9&f(ay0z)m92otJim@_juTrV0IgMqaPIBrqHS;Sf6OiZC3?_*Q{2XUw6(~9`_zxQxaNHJK7j=>623-#L6 z$4*o1u5Izn(@z4Ar{j`*`$A-m{>ZrFr`V=l24cU%n9W4K%5Zz$qTn=In2Zg!{-=m` ze*OrXq4l!zUqRh&FmrQS_!6(DacbKWP6hjN&He3ByX*_WwnVAARv;&5Pl#t#*UtYq zmm{uo_n#K#^4p+GslWw;#092zjY=d#idU(7$7($6m)SG;k@r!wIZ`c~`6)=0jcwJt z3hXA3gv**lHyV#<`RJ2_9>SfDdsTxKtFqf54|oX?@F?8o8P@D7Q~S(jm+c^W)~X#? zNTlc!_Uwgk@MXx;0yfUz2y1_@c5vb{a`&NPChR0xDf>XmXK3O$X*4g&S3gD6j8SIh z4tI(-nIaF|nlb4u{lWGKSsl0@gb<4*h-d1u-=qM$65i7aPp&V?;1&rHZd(0(EN9~scRb#6s z?VIzi*6UFaf6pf+&u;n^k$`5~pDhLhF|skBz7GY$+3DY*c#_%;ykg3M`zBGPJo0Hy zu48iYlh2(j{O6{>!G@P|IzaW^wevGYswxrW8z_M4CXtBJ=C?}LIe`m0Z;CufnVhMs zl%+kzq%R54aWRz+pFV(F>Kpl^AXm4QLAc|NdU~)|~Wzywk*nBvsjA@Zw;7F}-_iY!cn(zZFTikM#o4 z^DH(ZA^4M0c@b)2edD8TYC{@rF{`r9&@ATETFzYEL1H$09vMCmq>%Q z2#W@c4zdozKzEFfIik{|d2dQgJ9QUFIve<;jwCrfd+l$M9f*w$Dumjj;UDv5C>{SN zMXiewUf=G}?~DsJ*}pRS zCiJ=9SIfy}kL{1ojTp0xpwZu(WvbE~6ye=W7hLij$3JOyRGZ>%M#C340>MiprroEX=aokMA?;hu~;n~`23 zD>P(YAe7;gVmuYRhI@?qL1lxWoN5>QY}L-qwX4B!v1p8ws-y=fgbt5YcUMn4_;)2| z3)SE@!4ek_kXUKqX(7y%@~)I)*NA-&H|}N9YS%n4i9yGp?h3oLl5a~G$LfZ2r#K1R zL!Mn8g0u2#U7Lp9Maf4%vYae5`d@*Ah_UW6d3{+O-u@}JWWi?{Qj$EPb8RPMt44o_*8xr{GvnI6wy3D!DshnZ?D zt^B=|`8rSYlbiscUgn5u#2)L%)9%yKbGYhxO(ghid#as(Y4ZP}?wpn{}G zr-fhYz_tbhjaJ2*%`@{Lxxw6Qiv=b(t!4fh+!t{R58Pmvc=2-h?H)*u{(NM~J-%Pe zvmt2S>8zM~Bb|3+4-ho)!H`swseZZHklcDrgwq}owP2c1OjE{^_sB|7 zuYiimZf=3-<*%B>YnUm-<|&k!I{;D>R}O4bbq}t%H?n< zokMgHf|J0~vHS`i_?ehz-+=W92nj8FJ*J{V<}R5ma!tLN;D>^LAGX?zY^ZQ~*vvWk zN^iSzJ0TZIQ(|Vm7Zah+g>J?ZS!!PrYTbaOxkqI`bWo@{qZ2B6Y=!x0`{6GZfCuH6 zY|Q{NC5qrcKZf6}*&kq~5pxphmri6sQuVEd;lp4}XYrSg`4EKM?%)x)R6I8a!0IvZ z0I8?wb=ylZ%C}S*p_}#vQC{r^qvyl%RvTJjwC4M)Sc^SR(S5U z0uzCw?aHf_nab^1?wL^*tAO)2!$|FD291yK8^I%nUBM=ugyS>>Ep`fse1qQog@1Dx zpa>}`(YxltuY&m-UCZ2sb+9Bqxp;GzMui?h1;cWJ+sh_|&k4ftVVU?rs$!KTmn)I4 z0SAuBk<6&q_kMYf*`(B@!`I?%-VP3_On?-j^GP8*jp6(%#?EVftyyT`(3iD}e}s`t z*cJ^cKTRCpZJX8SS4zs2CcJRa;R;$(81}*6{6KT6DRLF{*{obR^+5I`B;*wnr0G)P zJdbxwv<&;$I){sm^MQ`lXE}y18emUrgd<*5%3$AYb|gx;MiP+Y@oj<_lCyA(=1E&& zF98G0$a|7uE{SXNWWezI2y^p!%7TWW9FTmZQ1~s4#>6XBBmqg(^P|b@(Rrr;b?}Ok z)>4$Tc=}wWjH(c1Yov=hG_xcrY=i*4{5tBf6Vc=p%m?j8aQ=y6Elx>>+a>rfA-jtn z%Wod5`< zzKlCtsMpP9VWpMI-zN)?JsPq&*gZbj%h`F5{ZL-yCYe^2i?$-*g7Q?000sRaFNq(# z50~Hzoa8Ty)7RMwSfy)LT_FyK=@MJv4@hXUp1>y~kcjI|DxC?C2{KJU=%~?$OtmD= zUBj91bI%Llq_pq@(u?<~LVoym@3apR-dEnan{?Ob!jd{6rcglg1oR0z41lmH@j24b zG^;Qi4+dpQGjHKFkU9NsQ8%)PXsb$AY-Lkb_Hk$X&V&>cA!ieDHRm*L@hwqZq!E4; zP|#g==jFK+_ve-6cyUhxY}s`nMrGic9MNsLMaY`3zvpe*^(c4w#=o-9MEb=}LS&J| zM~h`oS6x(ntfrvgAt@Bb1VaMSAKpL?5@IYhWo2(L$bS9L0kAQ-2$9lC3^Q9un|V$v zS)JMDv$+dLO(}?tLBQ8s=1B0+JN{WsOW>v|Rl#26GA~k@+=P9~{aDWQb0D7sQ)SSs z4%mk2>e9>AgwX}aJHvo_%&PBr$3ll<&sYgcUyX^rKo2rPeO`xTBBWk*DtETJ#d17c zEWp`%lNcXgLr}OJgu!d#Iect&)m#U$EXwvA2O z5dZ++I8G~leCG|E8m;29y&IWBtLJ#?a68k@%LPkh0AfI$zr(AO@=Ro;f6SBz{Y(_? z(=;tG__*(qdjGMi^)Y1(Px<(AC0_x9)WT?APX@WTIyL3#UR^)HfniFA_3rKl$Yw-I`5n1Dm|Gxe(W2N+5G(VabM? z|L^xHX#}ti3r7Bm?H^Wg%wTKyxF{IQHtkm!m^AQfQN7YtOC|x4f-Pph(%hEFO z(q}5ypZ~VXxUsVRIl|+Ev~qn2>kn=A9)NhKjM{EB6NjeePJH*{<|zpY-sY|oa2|JB zk`GBN32ZV*!0Nm(bFr9`hPOm0i=%BHI*nf})*-ldmyTwqd=pTS8;4{8UY2W7XfKdzA>QK6F`LoHD9?Gp`cpl zD`~~HB!;`5h;{BiG4%l#CnPhxowNsyZtWGcw_)=Cj}g?&!J_Lx*Va z?>9ZM-BpDodN+Fue@)G+J>ON2oGuB7NVXrPkCP%h%7%j#1b-X9pvb4RpkYGbsugn5 z=Na->U-~a5+fb0?5&UOw$w?=>X2GxeY4uQz1gJ7XVtHskawdH?DabwOYcHGM1$*8k z|LJpn%fR^8t=`;%P;F`9SKdLKOlkk6AluGqU*7NUseBE#d&QYYzd%dYJzSh%9AbeI zamGDLP+N3GYNX%JIRwiP#r`hhq6tVigJGExWN|ci%bE-ubF`6Aje(E~g46crN)0MH zCizTDrMW9+NTjA}LEVFyG<%%yerv3|$#ii`Af%|Q56ZZmQd*fXmoeuq;g#vT+dPcY z$f;LP(@&CrDpjJ@1qrAm8?1)Wct3%MDX^`oibg+wZUHYTW zkbh;|fcu$-*7$wF?&3p^!!SYPY|X^80pMvI&;zWLWx)1559)eDH^B4&?L)x=t29e) zGG{VRVWsUwlB#vPoIQO!+N4>gLb_7jnP2!W0BUaLSdqspVl`D4LB5L9!VK)Hi(bqn z3LWMlf}p|eVaUActD5LJH|Tlu+c54dc*@PSTSW7Y(G;_^kDkSxRJq?%1QEdnhHGZ| z;-aVCEzgN$M-0cpA|RX#vZ`$h06%;c4k>l4LSYC|{1meS?5sJqzl07s7Y&SBGt11g z#y3-{JiSzDk>B5kFEcDPukZo#xVgt0xz%D?zBM@kbl4W3=~O!oWgZO!aquJm9T27j zFFNk%1oR-~xV@Xo{;!>yo@xDs{@Ld3fY<5?7oMIJ!S)IS*~cR=X6&n!6$UNL#wU2M zZS1&Oh>}r4fuEnguQDQ+I@k7xiOSe!g$B=sf!3hs0D0>9pK=fTjw}GBcI(l0zuuRa zDUyi5?C6S75c=igjPNQQ;-WPMS(mW+Esmw|J783mbRSdem0jq3JyY~EgZ{Tt1o3`i z`x_YzWElX(o-=&NY{Pn_qM}HB>8DQtuC9R(?$1)2bJGR2jTZId58>`a@*yLu($Bnc z!G|Td^BsTm@MLxI4ideS*p+jyxdGK0q*=h$r%B>zE8we%v|cM@oeDO7e#d4S9C85+ z%zRfZP5~N7IW55=w%U1no8*4p^Z=L%Y=*?WFnbNLf%j>z`U)ZUWRBcnsAZZU@eB>Z z%#yBx9}I{DBQe@;E7pYr`%`x@GOkU?Ey)WiofVaMl2`(Q!u)tLJ}gOdN-yKJKD_u3`I^#aHiI3+Wg#IYQQ3qiYt6b(}J z*5ALDqRNLg0bUciySKwZIo9;**RUMEuN?~g&X1h zJQfz1C(u0BZ0rc7x@-+$O>WFLA*DdK1b>RS=G+?d2>+KTz?nzEu3d?x1@~+$In3aa zSJ?}o`H=VY)Uk!>CeO!NX*6E%$k?Re5pDW=VI z1IScLq|bi#@Wp)v_HX~G1PI31v%-X!w7n3hu9t9FAJ((NjE+toBolzGQZ0Y@n&nNe zzf7)YwFBQAFH^lgI9(D4Q->K@-$bw8NfMnn5?Nxr#%cbNzSQkGk~S9XOj4F#Zd+hq z{S%v?z%s0LJ7;M8FzH5j2ccJN)@|%C;m|c`{*>Xw{*;S-bw$FU>h}=D-7gTiZj*4q z@xCPSSPnMv;@1DgFgpF6Hr+1~=E&LY7!-^N#}d}ruuAm*dQr%l*?L;|^@n>vi(5I- z2y2c2e_}j~OZD#r*REil6pa)fuZ8F4T>_g(aJ$C231m7J zr*Fs*mW-vP^q2)@e%->h+ITzUGl=$!m`~RSYat*!^pjdjA43GLvT{;`ZIF>a6}-() zmeNik_%Mhnrwwdyqu#p1R<2{!oQxkaT@)n%i==C=RxQC z&Ze8WjsNwV02VqGUiuW)yG3b~MI>0_50b!ZF)L3QG!_cS!s5=33uWA-rOYp6?8%Au zjTU8JtQZXyrRbY@LZ!^yq)_h76{FlSkAlV$7Q+diPXPqcPKb&yAz@vA<618vcD|LW zn9l2ttGbzX;m4{xYPH4sleZ7q67uKqTYa99uKCICF_Ytuw;Gq&YWMczc~36Viu>(E zeAyyo6!nk@k4xxjMNB3^ex0|w_T(tb;4O=XD!1Oa${o_XuutgvnjtHsSIn`g(#D!O z(TEeIgM|G2zE6ww7;8B~B$I8gHI4C=d?&+yx65r4i)Jz2Gf_TkWW$~_7Z-mU_ax`D zaM@JW`g9;q$TseVKlzn3zSN2$mI4?-0Cx_4X(gJXUfMG`8DHZt>KDR93g!P&TVDs$ zn=~QR6pWIEdFZcWd+Y);F_Aw(NYy>gq#pZ;uKfyfLp^o3`f<* zjzaVmY!eS4Me^p+W6`s46^=f!L!E5Dhw8@&GH2|s_A zLQWgGF5n$38X_j7t@vMj2oYk%n2Gg{H0F)2R*m9my?~7nL(&C$64Xw*a8)&aL0wsAk1S zGfdHcaxEg95J@@?17qD<)zZ+U2`CPMdx8;})@CYUsZK}RUarbs-=` zHa1HyOkB1a!H8$6oFR82FP^);S=quQGzOxY2SFnK$YN0IXsndEgJx!;C~!a99@8|v zD$cluHg|pQjRk{DlWr{f1w|%Ax}#53J9OseP}klXz-@mBF#5basjYBO5SUE^oh9kLe*ovb6!v@< zf)&z(io6kpHQB_ra{g=_VPPTBe8=w+dZNf<2kG&j5Y3Z;0Jhw)uyqG?#gtkYG8yZD zm+dfu3e~rljz?0yG`f?}!-C{rQucfWml7-#ELrG=c+l|E5=Ku#@B8 zE@6FU!DA?I>5%@$c1=~Q51eFB9V*Y_FA1Dm;@?0SRTQ$iab1f>$>1Yc$bu6Z%Hl&* z@d!0l6khkCGZ;{r8L;&Owdmnlo+hy0y zDiWMNIMk+!vT%|RW+im&ienV3_bvo@;l@?u|AOBFfVIn} z#({p6>{>HR}Kp<%`WhTw5<^Qv{+bhu?_ zbyWjMc`-MOHVy7Tyq#*ZU{w!~+{gkZsQ4y}Iy8=CJDDw~H)EGq!<0EYW5Y?cOjXGQ zgStk$rUs-Ad<$jz!ANyT)A0hretaLd1etuGXJOp7ipekirQejmC|Ms*XIugGj9|CP>@PO})GHLsJ#Wur7jW8Gt@UoQ-`+)J zy*)?x70r!k`GZ9}nQc6-W80?Dw^ej=cmN6B*MYF$d~Xf{K{x5Bw$X>33Ec0k`1^#qctVeSY|U;u@e53X$MLV!l%u{G*K)Gt5iF zts{~eJQWr_W3>pEHU3tX+e^~2;AX6G^JB) z=cpVV0HOjqjqM;a5c_wcT&PFqH?y(2745<#%2~3C&}Z;l!N9a7x0y%BkGEvi^WM%T!$zdwH`;dECu7p_$1{Zwx zy)_4P6mM2iL^ZV6(UKh%*MyZeH?6!=pw#)TZKEE{tt}bwtt5C8W=rinGGIlvHl9{fX($^$f)Pvw@L}Aa2Y0H~!KwtJ;Ja>p1&p2*XOdm-x7H7Fmc$Ib zJBjNd)HS^le~nIkeG;N^Pxl?H+9(F7O@ve-FXr3szMG>kNq032W=+CP-OI|>;M7)3 zU1Vq#3U=&8-m=pi7VrM?fd3pk0UZGz^1)jdiVCp2hBmtkG4WmhMkkjiAi_5}Isi z?Oba}DT!u=K4eKIzhPJtEBm~N6jsFhYBzE=gx&LCLgFu#ymsxYPP z6PMC+1TBQ(hJN`ZEa!C(Hd8LB96y0yJ$j<#0dp3k;GVn7uj z=d_s`)o4F^)-b?}&>Du>@UD)@AGJt*c8y+}nv|L7dj=?>>&YcR#tOIl?(g}vfZ9XR z-{^q^D)SRsoBB1fESF&N74GOFGI;vTT>uT88a=U!Biy)=*uZb3()j6VEK7PNRlq+i zEzk}$0NP;&nJZQ@log9Wxbs>er~a$2vkRZ#i^%_+HR*V|P;>f6HFyI)zvz+o`7~A5 z6*j`1@p>S%uZvoA?xUgb3qr#{FcCr%R?-`%&w3boyAJ^r&PwBDZ)ipf4-y2;4cZ(! z?ie~F?acv<(t4)nw*B0L4*7kPDGkrll3_{o2<{)X&E(+UIbT#_<-e`tWG`2HP)@@m zpHKSe*L)r@4(Tvs4CBABo!(idE%Mi`%GJw+vqeVckFm~9;}berZs+_^7&JjT``~H% z_#)b!=h3qw4MQRq;W&W|{ zIIK+HERRLu1_>OAowPsTBV+ohFVc;nhGhVb?d&ExmfvKju z21FgfW9$D08d`tUl;~7@Bs4E?dn(=khrXIaqnQ0ypP)?2O9w+^T)-DF{ULPsWk=SJOvww^&-ub#v%8;=x|t+S zZD8SaynnK4nf2?O`s;=G|582n$MxBy=RW!Xk!9WzkH~dE$WlEex2$nsp(h`~E0SzD z7o*w*4o{d|TDksl3&+m>1$BSAZEH^nLSp@_=i4xz5khdH{o$)zaoBYQgZeJ*Y}M@$ zjzl{QOqxr0BqQ$upL>#7I~zq!b`>!lnszlhcSMT=@Ey}Cdf5aZ@rmDSX!n$rLeHlo&l0-3$*~QTWKyQ~D z4v$&@8u3G}ncp=xOEDC>mq=|%Jw)7|Ye8=0Mvs-PO+GomI;Q9V(9??r-9)s4=m$vK z2}`UF^O67ZVd!{fB_GqUo|Y&2KccHT{j4anA3l-cybTvtqHALkEKH)J*G)bp)#Yn2 zA}pJ;827M>cR|pr#IUqO0=MRjzj|ixMqe#JHZ@naYHe6eu(n!DTRAMLvg_ow3_|i2 zu+(eqDKVC4qbq6!gm40ewEATnETkt7nMfi2wNS2MEI!d;_Ud}qY(`AxKe742LaAG; z+*H_?M{YdM56WijNhqDawyZNuGc5ekik6J9C#uTtNJvXvfoVLcGej`H^xJralZ#3KPHI@V#!8nHk(VdFZJCf zd~7!5Le_s|=t2JQ@@Xry8wq1IsUz=#ut)!#_s4|cOvyJWu) zVr&ZGTSUe=R3h2&#)9x1!p(Z97Gx7;oBpLUttCmuFT5X@PJqk+YF4~nUv zDW9|wP-Na7Fc5#&>@K>>(>$h_5S%BYX@vm?EevmezI_66>)bc?BJ``Fvm zx2}fYwjHA3^e)P-Hj_>--r!rt9mGqgi8TEb+DWIF0 z4=R{Ofvd@5{;We7ljS7SMkapFwWrvq2PO z3ZVlvRFyk`# z#Yq^15t@n~BE|gp$j#5pK07cK#T>BfHVTrH4=b$xqv%-x6_#F&b~D?5?`-O0Lk13U z8QPb5>i0wP^x<-lE0D)m(kp4}4OYq3-9GDZH6r-ib zi!#_wgx;omi|l|$OrG;Jhw5i!8JUE?lWUp#2(P>t)$0PzXs#^p~C>2le#7f5>!i3O}P&R8Fx6wZ)iX3b0qZgk< z@uoTG|Ei z(#*}>FDztm$91k3Hqsg@I4Jc{mVYwk2{l9Hz35`LJ{1rzuUd8J+KiKquPX#*DtG5D zx=W=L7h6&LHJ*Ba3ki#?hqjujRS@Z{z1g=+v`vN;Z3L4y&)HQ*Ur>6Uu6-uO5~%3} z^iKgg^szJK5rDB(1V6T2Rcnp}*-!B*!r{h#s6U#IJG0D~ZAv1|=Sjtfdvp1CIW+VONtq-zH77%mt}1^b+S z2VqS5AhW5X_7wjWaT(}Y<&eop)yF@Vk7U3_b(=Q$_7dH|7ae*{syI>t? zC!4mWTUge9S50w6yMX7UC5?&}9(|INY4W?I2mej9fM}dF|Im#*t0c5%DL}(S4o|LF0+^|e>TJXvyK0BK=-S4qt zEUG7NiF}o8YNuUy7t_+2$7?T+R<;@4v2Qed?(ZLzZVAgW!qHH z82hS%NvNnH0A-C0qun=cnqRd!En_?RKeVFT)t4crrS|i@$-3bsXoZ4~)h7(!b8xN+ zA7ORXnqWrDsN~s#!f;DD{OfJOJd&nDfsS7Tgx4(63oipPg;)gP280e!C8P)D2{}X& zqaW0@!w-*Qu4R*p*en#W7!336K;en9a`1%RsjB5|9KeAlQc2s6O-ANhl6%n5OfiA` z@p^2HQ}c6`FlwSe{+vqIoWWuL{^4cy%APGhHr5*8lGt==$?;XsK%St3N4uN!rDo$! ziW7IcK5H{oYUPPkj}{}g&pu%!)vynvVN6>*Fe80nX4w)A4vbV$dEVvW2xRgrYOdtn z2^q$WKh@9TzAGr=4<(`ps|X$pVjdus?u?HaAn=C4hcpaVcDTLhgmRo!Yg-e&hr`tQUyT{ofHA zYw57oYK7+rLO#$@yg(dy4;#ngoHaeMRF1jx7`wHKhgn;uEp9XGbVN_#nOjWO6z$@c zm9CJm8yrHc@*AW8V`D7 z25tAQ1Z;xkhkr7bz9}o0Ar46%@=7}@L=%G;w|Ic;g%og4X6c22HTA*zdC;ACex_9;y%l?QOh zG(-dL2;oNVkGmj^vke83kF8T3BZLH}`*=CMp=kprQ^Gt3B-ziJMlW6kj9{=g!oM!l z#utPR9~~AMTvcM(Mq@JvHpBx7m2&PLrEwwJ6#{eLdnI9uszmt0y!#@?K;ZJ-jN_ZZ zAahfLWx!**pr;g9746E($t39cZ+66gU>_Hn?j7dH+~AymSk^B${#&cs*!9WLm0{4- z3yEPG^q)={Z<}x!>5d$(Pr2#0C?AXyv$RJ@$q7b3QXGMNb_~!ta{5 z`}&n*$-(yfqoP7;8#=gXAZCaN&pn$c%lp5g;x2b;!@t&uFfngAoF%{wj+&($FNWsh z_5NEdWV(o_o0R^k-sU;Kh`E?cF69pngUjfvpkS3H9XTy4m8BfXh6=LyM3s3lJ3pq3 z@ZEJt^$0Tub%e#8xT2r?KPtQ~f&1f8)OwV^-0czjF zk5a;%HiJ)%c2b#9ByTpAoSI{Db{3LE+Hh}mzNZ9Sah~q7SgU(}G)&EQN18cc42a~b zZSlo_`Z&Ck5tGs9e4NZEKG@TBXVc=bVuK`ELQRLnr&gZlCX7c#?#1O8G?I!#q%}}) zJ|49Iksb^r7K7}7bSQx+y^_p`F>t*G&@Y+5rtms87nc8swGIic+8%gg{E zV1|-_2

wQ~W1c9Ug4|Okx6SdF-T|@n>@V$jjf6>aHPnuS$UDJCkB>QreAml*1~- zR{RKbGz8iV%yM%RsGNZ8BxpgM=wgWneCG(x55aFo? z4fazLE16|t%_+%d)_M?B6u=L()>|}-mn=U3cH!MPlfH&D!!~d`pHgCEHJ49DPiwh7 zWZ)2(9MD>q2YPfSpQ%v3aEY_Mk_A4<|$S&8u0= zn}Z(USy17WVOT@-=ZzgF;6s~%*T`n=KnbKgp}gnFw4Z+4mI;H@X`fEp*Zb~O-dkVR(yV9}$uR z5r5a{EFj9=ve9TWB{hUHqMz^6yELQ>2$uR}~#i zd_-feMA#F=GSTj5Ffmb#k;Q~W*|%5g0l#j#*2v?WTM(A5g3J_}=k5=uh^|Rs#Xcq3 z=Gj9>4R@?+@V9bGUu?*SM001@HYgA4=IUU{w^1NcOZlCb;D7ghiAT(ohQXAC*a29-1bW}qJR2tQ2Gy!Rj2yq>0gX| z&`@MUgDTypI8AW^`lKNw>o1bVgj*xa#~`OyggXB~Sm3rAYsKPT0*%EshZL3V*rL<# z9YluZwg|F8LxU70YzMQez5klF>ZHOvR;v&6(Tt* zXry(*Bu0Env}FxO{g^4ST7n&sV#jh|%v~}<@eJ7QX9IG$P7^lzKKBzn%ddJh2zpmN zbr1@sq(K<-WnTYc#$3Q#t5JXz%v0YP3E;7ys|P?_lNs>~etuVWHzzC5rNmeTn`pJE znNCSFy4tCX0lTBA@;gJ{PkA;l4+FHoxC;%>V6h=QhtvO79-p7et-tmWHNh#Nl7qo; z!Rm6DDfYxO^F0)LT!KkwSOmTeo~*?ogeLfnm1-*-cOmf4x-|vFfdP>lL@z{X_o`e| ztEd8_ZfDXbPr@pC7@^s!Nil!39ftbOvTP^DQaRk}KYwZd!zTWXZEFf~q;YCss$~@% ztc$K-^Qy;38X?!Gv}*KC7w?_@9}&6Az`Dy_8wdW=m+}W$*%uwz6`1T{p4=KGy0EUS zVg>Ag)Qz#eU*Ilcu4s0)`Vh69!!|(D3Qq}LB{(%Ic9qmFbJzmx7ioMU4hmk&WnG;g zBDP78r|B$Chvsj^ef4V15Q7 z`M8bmx$~KKFJlX^%()3jY@&t_GD30x7Le~YWQl0YVpuv|SAe6`>#;ocpMLA3lW_m0 z!l}KGI7e~Z$!xX4)vZv!=Wha#) zeniiM=5GA#d39yiGSvdWrJT87tmfFKx{56qpN z>Ui98HwUgjlrer(ayMujuc-Hi`Ms+h1jiw(>F|1@pVv ziCbb0eIec?f_;k69BOk-&oTp+c#I5TDGD*DPNHR{oD%U-_eng zF+vO*-#=vmvgA@lGnd(i8ltke=s%YUy|$!X9y^JypncpBR6gwCrWb+WjadsBOn4H`;pn0Uv5d#*Xy%Dy(>0gXtc(?7OA~z zP;`i;Zo^rb*kgA^gvK8N4d@j3#FdNd-quKLN+Mv5movBqlE8}jRb0S zYiwg=b?&h~LN3mv8NI=4*tnV&HKqMO4XM45I4CF%3Ygm9!XKIO&0{cBhl3h798C7q z%4A&(`0u_U3&IGEq9*QkD$G(DZk8IDHKRFj0H-o!3-Q9S8JSSfC$A(*R(ID){?`;> zTkq#D%$x1920vZ{!j#+@YxZ0njq$7~RJOIR0v6N0_nXtl96x{~Xt*t|Fx+HOT zyjkPVp?2sJC% z!yxe{4{d_~b(Evn;mrg=@+k`*c!ZTWYR3mkt9!hZp@XAJh7#t->_;RY5RLu;KmZ(6_LG1s1&8?1% zeT$To^s`X)o`f!6;ht^2`v-RQi9JP_{G8;XoswW|W2y+Y{N(k1yx6=S;x>K>6b-zu z4at0bfKm?S6KZ4WcU5V+G|fl4%4y;ZvV!jYWd9`qeHA}z={qo8bm!_~w1#rd_{2X0 zDs>_(3M+-Bm3Htk$1!)Lw%LE1sip^xzYVHF>YTM&CUO;kU%fYosNsi01uf)*g!Gs? zPjC{5r{!kTr0XcO2zR%KA{G^`QulBkpDp#c$ul>eWff`w;(HjaEPEy+K&$ew$x9RU1to>9Cw**$( z-~n`0)71HRWyhrwjbg$=GfdHzl3<^VQ)3-%UYU1cp8ZO*NRRY^KSleHVN8G7SbYwd zp>H?E+TA`GE>r0d2_-o>@}{f=`2J}vizX}_>6pT!NHDFZJy@xUVrNC(fxFCP68_3_ z-HKwrB7rjXN4>~7njI%ac+>nUU@I0(y262Am{?X`>oG=OJ}gT*0?FlOva$u;GQOi0%40Xe=BoM?s$MK1gXUfqq*e@UJ9r&%pmya)b6}ivpJQ@#y*InQF z^c^^`B9r)8fhYBdD|?5GeAdna;-D1SXEf+-vxt|@ zv~WXmZH=(>y(F$`G?-Ev&R{)tNq+F5Np#N5!W#;huCgzL3_f_Cs+wEt3W1KwcU!@| z&0C%^c9JsG%rC`pA*2e&WwWCnIMv6F-yQ1#ejr^n?ilseqV`?|+Quu)^k`_L4!nb> z)RhtuYHMXS?$4YtLu^jStEHbNG(DJ0ujNvsXgHI6yhX>0?&o%~yuE?fdf=j95q(O5 zg!<~7pU-7W9CFna$e}*|<%DXKMDkey>7@Yl^A$`j_k`p4^v3oiqya5m(Y-n^x6`=8^uFq|J)7 z^%mp33t4*AI6l(`5XMGU#w&nD%?X#ca}fMabwa?C?TciFFqd4|Dgv&Y0mFT^8T~A` zb7Wenr!7i5Gv+{vJV||ZIL~3rW~0a)_AH@Cy7t4AAqj_JrH?4`(5i#1PpqS7R9tpe z7j|LJDui#rnr!1zX^&i#GTrtB=n!=r8y87vTgD*#O0N($EQX4VLUS=gQ)6yE-s3Xlg*y_JyXAeF8~mI^Lx zEiG;U%DQ(sLJG!3m zL1)Xdcwv3#-&1{RMv!I3EPB-{-9NfBv}MU{aS>0M7}qKZ59o-U!(vv2EU)T#Wm}~TGVqx%? zC0)A(^J<_=$cd#oLysK+jHL=GeG@ieM_$OA8CX>r-dc1#P~{R3V?04kb2mzN7OdL~ znY{`;yn9wbjz$swMdDOez(qSDjt7Ib7{rd1pt(%e5Xz~+yG5~f6ypgizz9XFWRxxr zB{T?hKW5Ht?Ae*ybAi7ATn)sxJ-55_=h5WlLyRPQbG9NDV_?V26WasMI8_VpDoH*w z)fyHk-Hz2XKu$kZ#keQE`sK$@B2^a%8;DDafd99a#+GaT<_kzERsb(1V2@Ip?gPJ-qEMt998im*!uoOZM-TyB)VkHqdXoE zaM`3{od53&{$axa-6K+4%76T{UH!8?iN6#ah`Cs~)=~i)ub5<5g|{FX?cfh@^E;BY17sN=br)1?6%)*2z+|NDOemhz8t_@^yeqXYL78)Z#MkR5Xb2>DbV z;~KfaJT$p~T4PK9fM35grJjc<3cI0Xu$$0nu;;ev5M0AtM)vGI!kdGyReElNIZiA& z!tvoVKH6%GMYx2BDfOWGUQLt=n#qRM=H~9gM98X19~@?-fBIdl~#P>wV>Ckw4|6!e<(jf%vZzpyk-c z0$9&r*2MRL)}j(=_08x(u{K3}3k}QKQ? zL}3GWT6Fix;vQtcf8|f0t0vp&&b%-xCshi?CE>8Vt^?~)hj1>v8!bEh&z0zkMW^X_9eW|&`5(Dj)n|FAmPi;|ep|Qv zKtVh}0enOQ0B4_z3b2ZOkKvN+LpM@?OiT^e`DO`rWJ}D@%0gC9FK|UdY!i%J4+6%c zY-rFs&`Z|hBU5Y+nMn~}cK*W!2tiBt95K36uO~Xm!*{yv%2hlnDtT#;pTMSrv-{eM<EvPU{1~74164qKWfVb{df_QY__Odv$+c9LZd%)=UrD#unv`b!D1OX75)m1ov0C^N zn1%;g70CdH^Y3ZhF#BUfuNn z(ZOaoy`L)xr05;pN3ZJvN=W8zM%%jxZH&(rSfPe7N}auybH202);0O_K5zgxmMafc z7yq0{-^BvLw-7$YIpX?zng(5SBZSX!V^KlzbtN8 zD8MN7XxO@IK90~9Kj7*LjtXtsW0rK>+-JWZQnK;YNX<{bPFEEGnLt)kIWr`+bZrwQ z8qcg*%*;o^P~-4S*+(pxukf*8AGn`suO^5k03RDw&ont#+*slD#^lK@7qT7yE5A8+ zXwUnk`9fi7XXT4~c4saUwtIFINqMcbj|BqePw=;Dby~c3Wbnp3bjI@v@Q2UXwleN1 zR0*J|9rOXtV*Kd>9T37AhorYccw;0NO&f_ipsmvqSUB`{0;s+zhUc$J9`0yy8CiCy z$&&{sde4XtokEwpuFB$Oe~7e6t|U5c#QEXzejEg#t*U@7E3#-x1K{%Jt@d?hdV8mg?NouJN>jNg}prbp^o;eMNeYnI*d6C{nb; zqAxgm+{{;(;`Vd6dhaeIoF(|_g&`qB6ZvDd;fBUWJWj}AyD1i&>Sb7=aw}h-qRXfE zw3%?x8qy)FX)hzxNB%LY2R5ozxNOgXd76x79g}}*wPd6)?mv_O^KDfwbJZ~)8D%LX zn$wvIOPKyaO!tT_W|^sG>U_jeqAx)X{n(yGM)yEVr}^TRc<#v@Ggx<7DL^jIi!yST zXG=)li6Je^$F5E!u^3ME(Oy`kOP$gSZ2MXMt%L6-sg8G>i8osZN50dAYu_2lYujtF z%PD5?Wqdh(E|7R; z)EtLx-1aX@>Sy|oe#%SLS1nyF$ZwsI(2dOH3bCS+$Wd=1V|rfRl!9!ZZ3LCzn!DZsg>oTvsimtoC#P*a?N*m3)CD@4Vq zVfU~&p346~5#f}DhaJS&rL5j|#(E~A4J8=|jB5r4hn}zzq)Z|1=K4BkSFZhcxZK5J z{A21W`p))8@?@D?zOoDoh8nBwikI&)SiiEVtS?OlQmc{!_7DM}2tp>zXVmRI=^eHk zA#ttd=v(@(t+PUZ_f7w+$-3|nft0!Z=q*!%i-6r?v;cy?L!e7~vO6>7rpNcN zXptgird%6qA=8-6VCSU27g8rUCk9+bPx&DhQhXg^M3(XowNykm-I-LlFYHNA%mIeJ zA;b9<2rUNxz&C5Ar2!%pj<9vPrv`PBOAh(1U)5Ow^MKBYu?-V$J?5As^6myp_&X{V)7LHEk(GifcBKR zpk=CKWE8ulmqGN|p{O}i9Vd2r%=f(l0S-GRq-_TXp3~{uYfxP`QT~I$#^4S9ZNxx* zPR7C6xv;oHVrhw8;V-Ir5-L^EMAp>BISHkf5Vx&-N`&_>Z$LY9%6i4{BJ0*w*G6pz zFHfnfdqwf7eng3dD|4XE7&`*{Ks-|!r}oO5ue7hHH_!5dOf5n6SIIWKixgbi zw|e1^z!xj%8wb;*R-G8cQEnqJC~09u8}1OkkS%=G(>DQ|sTH=I)E#%e-=8&fyx&TH zujftq{XWY-*bd8bjgad#r^JsfWSEQSL9mEQNpztl$KEzKbwV}a_pvYxnVwAJxen|x zRf1zz9w1>H-EEEqxQsC^h0%QeQGp<-IX7OGm9Xm3Wa%O z-Vc@6s|C00nP7^n+gb@zcf9!Us@WZ6hFjr*lTv%(HGInyMxi5N9R`IA8ZRp7Qu=w} zzS-kBixs!<>Yh5~y5-G2&fkX&y~W`)XcrvSAua(_ftG+1;Qd2G*7U%+wQQl+v#;3X z9c{EtSlJ(CO9AH3cx<%<^+UR;>;2tpM^AY&jPK+>!hWjjuhriB&(sT<>XyS8rw2i^ zK!ts>)GDsnVUy26R0tywZEmsSsMj3KeTZHswXc5ozpasiuu@2`^q7#+@dy0mjPmELVz(QhG#>jUwTdOH#2d=NMg=c z?+fj(Ngs>$TZ<9{X}C3to~kU3cPN_m79yd))?;I7VlX6cGy|Nn1j@#h>pNE0i2ThV z+>yn-Py4gX8vNJbLqn00TMD}DO6pMHphYFBwlCs(1by7Uw8|GC(hc$gB%{F6U!!Mv zpVc}%pqvr7I^S|F6~8cUxxwP9#jV9o8ZyLHGvTh%{yyT8)%=m>B3_o+CRFf6O-&47 zO$19_H9GDrvh0(IrCTq}Ti>gC2`qb7FMt=LV{)>V@;~k0xc?un|1;Bji;CYhR8My1 zf@onj5khb|kZ}s=^#}8FgKlF8=`+l7HK=tS_*E5u^jYy|n)bKUMF6}aMM|BLiREJ2 z`^6NyBtG+@%8iCy`PWY`j{8Pd9)hd>xfkW{f-^1~VLEKudL4Fy`xVs2Yoph`pcW<- z$qXgJ=*B*|V4&1~1pneiGTFiqm0x*N1DO}_|2Ir>ftB4y6=*MQg(IqPx;*SHu2Sg= zJ`taK{>74|nU23<0?d!4ZB!za;ysN`HK#B&f+xY=>nm^AV6GxPzSOd}OgPg5~j zIhAC4n~fP&gnIHk(P}7T{WYwvSGcA2Pr-sq&sxcDB{F550 z?sFIHVXA`aC+o{oZyuYKT+Q^Khz67m8TX=nHsVzhx>K=aL22~}^9n#ylS6Y7{g1%$w z2ER=0Uq3uH#WZwA_pgl%E;beo6qucF;fuCNTakc9d)-V1+V<|@8M=6E;8ZkmtuI{h zJ6YfW92SJrohp&3^60u}W#+d7lmX4m>pTof1ln_VqOjV25Tx@!;Cbc~#oYMMrx`vk zWH^&tcA`NL=h({9L)Qj&92x>dlTOD>zOEWoIfx_%fib_8xfHS;>MMIJx9=ldT~ovZ z)-m&?$By|LbcbEU0Y@#HJFIG3sJ4NW3bJK9zMD$gI-+6m ze$TkoPw!M&1ZhzH{<4p{SxDc>+?;xVtt3kmSSkJ>8R<#3TJNI(NJChl)?v9l!r&o< zQZ@h4cECO{)@TS}JI7szPcb%3_U@^oTAif^=eb+wZo(r`gLfd<2vpTD2V$M?-~8Do zvRb^6#{b3UF+Pz+reHbuBdR;k)L-DI{IB2Pa38q1MBN1j%~+8xGYix%I|v@sfCA41 zV9a~!jIbIadx30SKFCi7;xVr%_x4p552VNQb-)eeLjaby4K$-B2cyD#LgMlFqX6QQ z8pOQ{h`5()Qfw6$sp_oT5Gn|TqIjO$x!h8QPoTsmfen@|kZQ9CIhH~PWyU&+In!k@ zE`Hd#-Lh-4@GpZ`10lQ;)S+93uhmK0IBLyx$8J`3Y+JpfN*m~H+L2NCP1zPk>po{0 zZIQ#2{owqKrs2IZa8h#bs}9mvvHTn+2-_}d_(nL+qPDT=dc=w3?XGe zF(bjoyl_k#ffc1Rsfu`f?}xkOeTnr$dDu)YiN7rzYESK$#}<_9qoKAsjNCS+L7Ls( zg?ds&}f>F zE$PW_s1i9$Q2lyOxqDN9h_?fkIcZk&tI8Ea&{9AvwJ?NRn2(=kl~+m|3s}{8L|{aI zr&z20OD)Oij}+%a+t4MIenJaatCrM*FRR~s9Ksva>3z+A_!yWlX&v!I^(GlZdC&B! zZzC<7C^badbkStcX$$r3c|@_h2Q}0VRs4RY5%${~b=g~2YZgmY>yb=$mM9~;TsEsxR!Mtk4)Ftdthn926N`Z$xfq^mE7-(j$7xJULvc&mOFe*{Mq+@TN7 zfk9#g+`e$f*raAIBuIpTrINPoK+i(YqbEB{Mq&)t-l0n(I+#*_!Z2{8v609;ct z)_A0i7H5)q(4OWM&(u44#ekY!3i|*a(6;Mls(dQyWeJc1zjV=W2`y~*qUIu@#@0oW zx0F4NWM7nO4In}XRcCsuXHgwvA30#{hJf&xu=rq~7qZ?LWu74lS(U&v@Bn%nTPY|I zzt^sVk40Bz!*s!rrX50o#&DV!4-%dT7|X3xO=Cg;uBz5Bf?H#y-#LW6m5GaQd7j@7 z4baO8lr>O65{SbLF8;I&wGnJ<6AkRc$L=fnE1BuI$Y@WtnT-mmWeceNp?y@e zBH0%5UvKj5O1=-h!PR>Q-?m_Q-I_}@C zji8^A8`ylabM0hJqSzm$ob(C{V{HzUKlP3#mQ6S~n;z-HpA+0NEqiL>$xhq~CygJQ z{s(nRqxU5ehNG@-BJ@!v`_il-UX>(7k7GNp#`?dh&HYfVYzcJEz8c`d?#%8v8!%pj zHjfr*dEH&;dF`SM!_!XQGt_Ga1fm-(I7fl>u>Cb0)^1Cwytab37G?MO@VH9hHkD*j_u#|T{lRB{;u%`D1b=59XBbS@SK z(d|Ir6ZQ#*5m9t`p(rZLHB6qI-y+JGl(u_x^&skq!|F5>Q$DmcWkg#9}J9J5B^9ADT7`}Agsocxi)WSoCXoAA|RmgF#Pmg7|)7SA%z`T0C zjh&lu*(-Bp4CVW_!(H1;K#yZYEYz+2;V5ruK1+s<+*=oZM2O{~EzZi5&QWAfxtu|c zt9B!$qP(eU3sSl!=Wh86ZAfi*VGcS#F2VnVs?D@SmAmE}cX{Zn`nZde&wmdJ&U0J5 z@GqxLfen)3Ji-nC7MWb-WItwQ4ydGx7HnL=bU20tT3D@j<^#R*WGIarzZ)qJko$zY zQ$&rxoOy-OxTt=r^70bfOV+CW%w??%;Fic)8o;wN0q_D*i*t7K^Idn!_QUAwIjlz>WfA8DZbeumw*iUi0B%0K5r+F{9 zBDt(tFkX_6%-Lxd9CpRF8?KwqsN|vcF8+Tj6V#c9`(RCJ5K-rNoH~#p9ykgXk@UuX zJzp0;k__zmw;qio31R1wS7^LVFTx`f*>y4qQuwQ!dDL_MOU%YcGkQoWHblCjNJ1&? z1FX&tC34IKSNO;xcpSQ`pm3SZxiZaGb$OWKPf_{N==y&-SqV@Pq^OL8;Ue}b9B>pk zh4EoOp$EaWLeyoK6qG09{ZyhTM-Uphibv7Ff?fpqvSI93_1ys7frDe$SmaOcH<f!f~gt`&{TShtBSS&A>DqldDCZGnAQtf%|-ZZ*OtM98_~R*?JY6BfSG1Wo$5i3`ED$f zzeT`bZ~ko^gP;dyBbvWVIuBdj7d~(ZKe}KDYyK9we6fgp!eZB;OBM^kQnp#7Aikt< z92+G6k}~ce>Rn`;KkdO^68Tu?@r5i{ycG?Cxr;0nq|uc6pd311WtO_X48MI489g7q zjJr!Qo1m?wHRpSAPsy6pz-~B-a;O2LNi(i71mS(I0AqoS4Z&XPW?mhUAWm@Pl!CuG zq~2P|Zzg|(^;ofS&lG|`x*ymMwXjR4V27!mpu_36ovR>L#$r^o{=8X4#ZDp;Z9{lQ z7Et>JUw-DgwgBJM&Wh5UQrxfn!nUqn#@N$;YNDOUtT20ERBD4v;8j))Qm54NNGGEq zrYb4r4?3;y?6SljT?QH`^3X_L;X1Hb-@P7jG#TRnS|zNXaVla=tuv_!8OGa zpMew;B{3ilpQkf*^wlO{))wsO@n^Mjw>l@^|CM^*E(1X+gcIQ(qevN5{7suYDe62H zv>U$ckO$!}wA`>L^&voq?#r}`S4 z<^Aju7Pui>s#LShY@k`ZwI=e#T(9E*Tx{qilj^&zB@Y57tjbyjO2 z6xC~A=6!^uh5y;FOrur$S53nf{J%h~6%AP`VC&GYeE&ITz2dzpHQ$B?i&?f>3MA9l zK4q@YvMm%w5`X%n3PBmBQOD_JjV=U$ciYTh@eu*>GNPb$$4dHOFxFpF%4RwR|8V1r zjR0n4aspDr+6Y$Du=7Gvi*D>anW>*uC`W2jmtJ~;_{xc;jJrF?cq)CQarD}IXJ!qv zDqqkdU}{Jw8pjDM4o_7F{W|oxNZUDj$e{17&%HyZg3Mr!R*zR-&2fe{B-6c* ztIrAA2l+RCfZ1L(kEm{qd&ZYG9G#L4szRX!C+DX088eC3bAJVvc`&%+Q_>?3YjGx$ zd!1)+)NvRS%AX0H`IOVBIgczDLE1JcfO$g%c66jEyIWu8kpInd)%gfVtqBZWzOkUF z=|4^367zf}bov~+Ncf$>_$XebwCey1fb@R>B;Oc#snI{HgytnV@{_OTOe4ifeHQH= zNvBdW#dj~<`yZ3B1b6`T$d|dO;rF>iPth8nhJ};xj&ry5d`yJwYkju!@YtRJ5^U6b z7RSs`5Wpw^x<#brAD=XwZNau==dD5k)x=NHI#b-mIJq|vim3weB`Un^JkTw!qKZW* zBA!5*kfxc4w1=66We;l(Uw-AxqEF3~e16lcQ}F;_IB|V0UbccNRfJVZ@n`byGx?|( z{P;mBvRUrWe2qnA%{Y~`gDvEmXNJqB04(c#n(lGHhH3h%LLrXsVm6>naD)=Y9$5;M zg{Qv3sxC>=fDu&)Q@2>rOl7=AfsNvsgV~rsDcWy+Bb&e?(}=6k{Iye<{RKW;XAJ}d zCdEmy|5q3GLE<@Nb&R*7E{7873d4?RNc!&Ww8==(S&bM%jOaUBN{qaM_(730z;Fax+ z+u%>;KV+B&mioeI5k0;gtp*;&TQKU(-ntE7Z$I)T#b7+|# zSp#7?kXp6_^sSrY^Q%j6UtpMX)y*)`s6a=CPXMpBxSb$O+5lD|K$pzbAOnO6ibyrz z;_Fs~1h-}%OV~ln>yHJEX|g^+{18;7cZHTtS>S>~STnr;wgLxvOjR_oii4iQb@4Gu zUhNzb*FrRZ5A8j3+&ta_2`OEum7Dky=*)955XT+R8K6Qk8{82$O>dH8VWo)AUm_6h zAx`A|drMi+PRlFYRA=DikYRPi-I6N}_ivYwB-VcT7pD^_0_mu>saaQYVTS*4-arlK@mGp@Cetb#9GU=BRD-lj>e}OBmjra;mfMvpwD30dg&M z%yo-=L11VX^4iQ`yRifqH8kINLQuQ!aDb5uV0dsfyHo{!ZFsd3Wy=60v`CF>D`i?{f4Xkpi4s z8^0nL>+hdwQ~k~Q@DSb!?B|XH-`^(YgbqyLVDKIqH5kp)^&3$oo~~NB6ZTU60w>} z9U128g~C6UADk0YsSy2uoqXA`1_%~7)GBgB2)oOIZ|*b_Il-vke&LNm(V49H`^aB! zdv1{r)k-ce&ocg^o6pJDo!x;JTSC;dTE$_2v&W_PFiCO4?yYiOGrYTaw5PvIXAUXf!dj0H=Bwy8iJ>t{OO{p`>hK_a+jz5a zJ|}bg*{_`@WNgfhj!7vFiDUWV$lCGPPcdsxd>^qEbn2M%d68`V07pG(`SN%4^ z8lOkK#PAEf;|pJjMK=J&$MFDA7$aTL%j7*pHW>)(o@tFouqf~R$#Uh|TEzmx@>HdU z3&&Yu74qGes2hw7-=Wm0(pt_sZr;*YWbqn6usO5P&&~!O5i&+s7)ClX7h~^u=mNxb zw#hh_{ou9KQDaF%!W~l~x4BhQd+SnbD@12Q*|6;p1o1)KrLV|=T*k%2By1uRw6n~` zbV%gA@a@46jv=Z&OGC7=exO@5Y8$wmF5fi%5e`=9h$KsSKcmd%#P(n}H)ANTOdx8$ zUrN_R+b?XAi?EAw*B+VwAlnByZPW19%;^UgFG3LCm3+z`FlBvGoGVSjdI0GZ2ab@) z?9^NVjt&wy>{^TEdT6=LMvi>3v)sx@`SSsF=ZjO6={mf8FJP9TC<&jqD2%+_3e7I> zz*SCjy;SJx!dsw?HhvWQg*rOlN+gmgZ}eFTZjF4HcK=t{u_=B7HqMwszb*hRt9X8O zwZ_(Zj!!+YN&WUZqc0GzY4BQ=nw*^F34$xHGU!MhnoZPiCA%+b%_$roSWV@?s?rYa6rWqJXQvJE{EG-eu! zAyx~nug7KI>k=bP*Ly=Dwrl%Sxf8uV2HuA^GqJsI=RGJXp)T%KFO20qt{>^xGdd#( zWR0R|!FNoMCqBM@fo&TmD;3V)k*U3$t)=6@E3YE8;9RQ5P^XOLyOf z?y2fzpRGNs-?rWUY_nPEr7+qE6UB?NrypAQp}EP0O8nTvtVYcJrb zioP{Bh@E+D?v2;TC0wCXySwT5L0c|&D}!4bL?GON4j(kdom6!y-d~UI2NmE8uEwLP zEcw|32|KI7mCam;^MK*L<<7dfQ0XpiXF2C9iy*`@hqJrkFn~L>zQ;U(7D>{*FKKtj z%cT7Gj+S)j(jz=meNL3)`R2;#y32(w-k_jF*=(+3^JbXk5fqIVDx{5EM3?Z(W0B>Y zpby?vp0BqzahOwu>)Zwm2+(`U% z;hxk}gaS~99(b5eTZCR`o5iUBvrf0HIRww3X^v1eI_TU4ssTA%I_!=~#NxJ`SP!7u zmjC)KkMO-u^Ro>KeHY0Yh*pzcr}Am*`&@afsSpk@fQuadUjADVv6=I`)73o3~FfQ2-dgL1x+UY9!&ejeXn&3zam{tmPuCuWb0 zu~=y5bi53m9!9WJqII+zD-o#1@H0g62tRD8Yi3{(5jgM&(pz<>*Wl`%&l4Tt&*n@k zJ#Y?d0U?wZX+tf&^t zfbax=B{w=FUp)+_=p={N^z`3_vl()D90K_7&I`e=Xq7jPgjA>-mX*Ob0~a$;UwJ(0 zcf-B*L9iLVk#LlpYj4Z$#q)DFsZ#9Zg*WwDHRapOY)GkpyY2k-I_|%g7H*31A;Bdf z+{zY|YV`nBm$VI<6{1MUazQgeO>ZE+F-Qln~O&C#ky&LQm-0gY*N$abfM4%m<&W(JT z-+H|u~RXYe12kWCOO{l@3Gmfq}QHio(r{SI4vQ3WJ3HNS@$%{D%{d3-meO^PHnxHP4n zB`>H9C>z*5Bz<+nrJ|M5Y>wMf)?cr2C_M?#0i0!>_vlZqT~HI{n({YpP7meD&KyDD$VpDbs zvrr%1gY+UFmw8o01!bF=6+_ZnF780&2Hr`1Z+?y3M(Uu|Wa9l_{inKqQ%&f7VqydJ z$d*sG?rL@TKi*2X#2^Ou>Z}Vd)m=7#D>Pu8Om(zQPc&TGzr$d_%EGo{Gk`r{q|Q|m;53GfR{Yo~^iW5e z>1%rXs7L~JC}%=LbCjzdFrZ*w>=Nzy-6-i|qfi5kbxwvbnMaU%Y-#nEnX+(wAr#vO zDvfp%l5j~^f2Hg?%&I>b3*IP`CT~M9;wl3H$tV%8hRY*%J#9k1XWD3MgwyCjFUaqL zKMMbsQjLLDcHw{3)N0JBqrz++D}`XH?qEOfFK`jkxQ7_@j9_w@UFST91wcTg{xECX z^6xBvmi%g%${c1vCzwaA9L!nXnMiHHp{1o5JGa1%#AC#5fdvF=rC$Cm3XOL^0rIYR z`_>409|ZPozI$+hERvOQ1jPiDyON;L+g}9=)yUihKq6!yc18^J65+PK5ld@LZ5zCB zbHF1Oi1XU*x=vsb!UeV79?>Bo``jrE5`o}RUk+?l+w*wL&BD`9n{ipGU3>0zqXH|v zBLz93iv&xWdE*WUUl6Ovq7YWcWkF#8YGl``YC@Pl8V#DyQVIlN#@(t+C#Mp?O<R16`6k(e&F+(pcl)0WJi*+yXewdbme4=(rm+gn zhjU&jOXxncIlB^;GuhQU4>>W%HhQ{Ln|b!#8pQJGsf9EU84)_sv)1a$sP??pL0lmA zYL8x)#y*L^ILInm^4q6lcL5Q1pADl6jGX^0QIrj4t0C(_fJyP6r#Bd(GOic7wI{3Z z6{y|@P{rpRcRaB`3_8hW|0{{L7tX;4oMODT23FaJRM^CbjN5i($$bQj*D)zj)|6PI zM=PuX?*E7h2b~Em4+3RqwEpG6blacSuuRS#@&BwjUI$bFxCZr#HY_>eG!xs!=YK7Y zcpk{V#1$>WhAINpTBcRyYUH(zTa+{F%l0i>pqAiv?JH#a zSuWv>PB4c;uUx7M+yKiOUsI6q`3FqT-^U0`S`?Xy9BwV@^|#*=`ek&L8=wIU^~=qL z0ieJx(RUctxczJT7~0!(iLTCCEh0Wm&Z!+V(xwE9KJZyWB+_@6I|n|z?^c?ap#4|H ztPhPvH<%aICLjP>g{kJx?e9+q#u5#CG=;B}L`=uHNxe%3qg(Uh4P4z<^Hv zAa}td5;Lc0ZisBPffIIrprV>Hhsp6>lMK&!MVs(=TZbs(TZp^sQTFTDx-J^KS4fqa z!J26-m=1+mO_vL&y507cSt)LyOfD2#=SuSPEY`+dGr*u1m{+DJ<>Y5~f~YkaM*U62bg^C!lpd zovP&4iJ5Y`GdN)l<#&YJlk3OfEi^EJuffXJ4`oE<;0P`nC8~Yj4tpK(iUzsAw1t9% z{A}!fiC0CbN-o%b!?Z3-hlCNWP=G9U#s-z|3+ISbOuh2(Nou!i@q5Tqr@SmI$av%^ z=D4!^gJv~_{a0Wse`y&%hvO6^SV=pi3vY()=gQp|;!Ba;11-pSuUy%xu`hg`iWf

i$QHm?@^7$DW;1Odw*e1uqvnLU~)-U?+=+T!NHOfg6Xc|HOTdByOUPUkcH z_EVW?OaT#%nim#vg;irvPWCIY=(yNPY4UBf##2kuh?{K7G1 z_+~c;lf|CKG+4YbotW)%tR@mm03CK2j=MT-)QMdoY6pb z6{SzdxVtZN%>wZbce7SEWoPKool_<4oE~faIY#{#H(;WbapZvp^U<{6iug_WP@$?YVv zI2u4J1ToL(kvjNm-X=K{0eBv0q7&(=M9*W~sg2<8N+abYhS|Qu%~B}#F@rxjs7NI+yHgS7F8XLsO(Ht=Qr6wCS~C^in)Z_BjJ>y_&Y76JrX{$G$&*zT!aq|*Ki|o{vSr-#>!Hh9%E7kpu^{tT%gQYrBaj7l4-x|u- zBBFox;B+N3=&T7D%2^`^$*7gDCs#Q`3xU=&jW!~uHNDW@^*oMra~6jXAa;rF<73|xoIqsew7lwxs2L3!NaW9%N2%rVwCSA?JYpt3EfuH6 z?$lTX|8?*7l!XBfs*CFPvekfUZy{u_5eXFR4-WiThPzrdBgBxJNdE z$~W@^G4%l9M-as_BW2gVn;nWFAOkWC#!$9RA*U+h{M5P||1oSYuf-xCUjjR>9KY!A z*7zLNV?qw%sY^E&PDn(DJ)ak}F@%2X9RjYxBZS!E9csd-#G5c4aEs^yq9a}#J6fX8 z4N3n34<%mfUMKHw?e~*jQr`<9v+GdkTd#OQY|&g15@U`YNfpRS3&}ENq8S4!22-Ok zK^eFdP7?Ds6m|9Mj&(9AT5#T*HOC;!lWQ3LWq2a(Qgb212F?V{0o?-q2@pD$Gb``H zBkzXHhn@*o*>j=ZXQ?1wwJ4bL%bRX;i%KwKt;(%}3UB293{E4ACG(mPuCNOE+4_Wf zB3KrF@cEQvOtiaq%zNInnCvm9DtgKp7G(17)Gluu-@1Fg!s!(c1llsWxkeiC`i~>J zDt$TJlhu3x>ERGzm3K0H0p57JOl+7;dRG^T$WQlhTI9C3y( zA(dFPDH&Y$=3mbY|H~jm>QzIv-VFD_!Pzmz0gA4*yK&$9!A7_rl6Se63mcz@fhf11 zYsy<=|7wS7boI!QfDT({F@d5n*Tk5cZA7gc8SV(LjKoXI5krneqDGUmpF&5$N*OW2YPnbstN7TLW03o99^%*gz51PiQG3Ws$PMl-`_l<4+pFTfRwS2z1ALM&<5{xVeDAFGWka zY|ZU#aUpZuvfMjqAlM-f!9TX19zGK;L2frNz8_jFCa*!LybEBR70Cyj9;{-ModXVv zpuaUg=UiIN#27%s5QHzusa+LwN;FO4A7g20P5}b(2~lg49(aB{p>gQ;_&XBG8cmvE z_Pje<&vbT^8fGnUdVH>04keB;sLDNd=})OeQY1FgLgq}7{F<#UT^dD?Jm0XPBsM&= zG)08|kp=N*>1gtcCHsgdz`Rd3;seVYhB0<4!f5kXE+Y8^Z>@=@x+&}ux({(_uW&J5y_jKmXvm_{v@#VB}8^Fix|W@oac#tSPDl-8 z#(PFv`7!BS_t9AS%@ZGJiZ${w5iG2-cNbF3tmUhXc|7R!59jC~A*U>*kd#lvzdXQ% z02Uv2Ru0=V6Fd!*&2R8AuR@rmi0c*84=R$I(rp{raD&1E^TRW0boPNCy`VXOe!^RI ztB9ZLMEaScul9uqgt4*BfRV$r#{WgJpb6Zz?TK5ZLlH|u zp+H22(3|7q|EP>z$420$cCnv_7QM9g9tRm+wod7Ojgu#4ubKaWZigcMJb-2oXI2IU z4V7r9oetPf3Z~D$3 zcokt8aYXcu6sU^Y1%XM#I3dSc&iR2KH)s@w7u+nEwF<9Bx757ts`h z1r`xAJRz(!wK^y-VFiJ1fjH&8N2l&1i+lvE+W)OzjJotd zw$)_SJ&wdT#1=`5?1rHDfgcdD+v8+k(`)3Z=8ZIJ{3W?-H7iFUr;Wu zc1SVe5h%p@Y;GKsB^2SsVII99``pcx!{OY$l+yp&^HVJuB!Zp6q99;iR&`x+?-E({>Oi!8ZR7*JPBjx>Tt=N%ibIv?ZTv?snwY87S+s#OCaTF#aHje-@Vo&W=r2!1yn5J7YVz8gaxL3$tk!Z6LFn zS2B-j$NkPd1kE(CeED^X*9WG4V=-g&V5`DYBTH1|G=E%I4{2V3_xcL zjNc)6@h`Z&gsAumqi|e9e;!Ic!mfN7d+tty2A-84hz{cYR$NvU%3SP*$-Av_Zu6p77wHn2t351 z&=LGh-1EjJzWBHJ2Ea(IaAP&UQ^L8NdI=;CeQ&Qd)=%9o^uRO-Xabl$j{rN!h`?2$ zRq5Au7DQ{weftGE+*kjTy372mM%f9c)3A-s%!uGhtIy(GxVgV9IQE}-MU40-VOB}@ zK*wV%om%GM$t90NDfK$-*mwhp9pVEJjpQ^(BRIx8VgH|hXC$?-1JG8mhFxZ%)4zI$ zS-e9dW9C{4jq7eS-!*;&NK{x@jCPuP^)gY#m7#QKlD;9?Y^VvY?T`&Z*O~j>jvegz zVn2U~_&)l6bo8R%@qea@BHWHBHKr`h3;re+2;0)Dw4sKHn*nxx1FnxtK`)f{8f`G) z1p49~LpcA2{ckr?L$(+TCiKWIz@{Wvp2mF(wNhli0Cp{PWt|9a3@^{$lyfIhu&cw- zgQ1zRJF3I+**jY^Tb-kJ{sFtHKRyb_KF+{P!sm=?qpqG1d|lv3-8p0oC$3rh};e(gdvw7b2~Wza?9^#guo0Bi=}ILy$R64Rt!H_*MOepI5X} zE}vK~mW4a)R;uE%(0P6>dSC*saGjiZ$HK@n&C@aEuEbES!fh9`_=@gn0lU-fc}H}& z$&K#P)YC+`zSApcg$GbvGV=Um*|e6xLH!18)u}EdN6-KU!|?$;Fj0ko0UyvT{So6i z2nM~oS<_6j^86=QTB2|r?_>Q!Ah0MxKFigmsWnZf zOvoFL$m%eU@{j?>YbHsc|HD$R39>=gw4uRF*#51m$?S7hFf=94w+hzlYRwQ|_?Cc>C-JI&k&@3;;e4r?HxkM|Sxj!!cQM)1GI4-_u z(G;!;*-R7JS7+cq&d!p~VKE#=CdU24Ctt^FV#7^rKK$~<#Ash|vpM}cAkP~cZnN=s zx{n;IIJ@&RWTsnMKkSy{m^8?X=7q%5wP9L>88;h8{HX6{WJ^F4fS}xKyR%%OUMGhw z?cN^zWJ{tf6GA(XOaHwz_b;Z%yz|)^Jp88{evIJXTG|t_x?>1nbb)5BXd2_04RF=U zP?@Yu4G5Z|Q?7*uYI7vhco~aBjc~d&JtoVW=ok&S%9!|rQSWS@*ME>8>Y;y{^uFVn zEnWPzBfUWpyv`gKt6)fh)LQU9EMgVYBXhuQkiIZqfS>(lfbZaUmY2xb6Nu1>i%RvP z29HAEzu_D=11ta;2hNi*o7M9pQBTuwn zcXT6sDWA_(Ieo$$+=u0?Od1iH7;+vWUoym$F_WFq_&FUW-^l#vaIiBm7dFpa*FBrW zpc+AHAwhgC{|4l2rof&6!ns=tHw{{{cY$UwSWOXGVIJN6a0xU+BufSX6G6rjQb_qsQvqk zliuovEifxky|ts72D{H7GOXfsMG}X`8%4nzdJ+XCLEOnlcz#Ex+3PSWinY~#)}59Hw_{oAfJ;1*@JG#>KwB3vyNCE$Y&z#&;3D)vGoG^Z?RAAAPLo@niXnyw6%!BK@NZKMy8tr#=Y-R@#5ZQBa5)6y(rF+am3wTAmD9MLW zOPN$dw!Wf#Z<*n=5l`YLlP|@yodZy9HQ`k%-raTbs7XGH1`bP9XEn_~@qHFMc@P$N0Eq&~g z+yV{$h47V|gb1+;8@Dp?C!{8DY@TaE%%%OSM31UI2(LBo#e9RaHNiOQO^VhsBvtjq z1&gsbNA8=E5f?7rpX*u{U_(3)0;#YBFwEaN^p%vz!(-IJCO`TMMuFM4Tv8(h>7 zd2UJ)JWMoVga4oF*EYP&Y}QE zK)Am*Ufs9aT5r9+m|WN5)WB1V!sRCO zDV}kis1JVfQ;eNRKH+l+(4D;w(jbVQMvLAq{`W`zsv?9#{}>%UudMqLB=4#s!1c^` z*GBnz)AUYX7}Em+RLb(>KQs?uJ)c8B;&Jp@=)&ZXe^ZQpxun0!&u8ubA$3_@Zym?_ z`OHd`rs5^fSnc4TaLinN309pAC3ekas0!2JEM;&V{)AwVraMQ?&u&s?dYM)$H5biX zPv&?k>eP|lQj8Snf6=Kxc^B4F7XyTTG?>_y$6qh2WYCBsRWSh#?QCtO!;_+c|v8 z(yP*|l67XMdhhmcs8=G+tekniyaqV=9MN#~BJUp{$39(NdG|tjqWj(p2!?!qi3HCq zqE6e1ZbpRkEq{^?yGM$mG7o`oPExo>D+Ut(q){eWv?sARtCNv2f{j-~F3vx_`HD({ zR`r~A1lg3=kM*0a_x;2hWjL1n7f=;yPvQ+#07PHe88^R&w3D@f`E!>Sp!9 z>2T~xUrM-{9b^4$}*NNOK z42evyAZk~SG;L<3v`?7VF7^--e0fdWno0^Vy~}+NnU7Mj(?2!{?(NAC zQp}pP%7?fp?x`-d_&kUT3Xb}`7K8AAf z^l9O=5$IcM^;KgQ)H*l!wIpQef+#J+`>{IJ*-09LqOh4tRNYPVhYCd#ufqD&yZmOE z+MKz0H7?N7S5tHUnKUnNZ!zA-GFW(=`8i!;sW@tQ44snq<6{|tn~u!~7I+R4wT^B( z$zRg73DAf?;pDzg{V`?VbzW!YA-|0*-Y&4fXNOTGu&*>Y+?kgquqB$rAbd-Z%h}t7 zK(0P~F4qpO&gDY9rJw4jfWOIXSUP#ZW{P)BAw$dib*JG~nC#n8ZYyTtK{bBz%Wfj{ ztY+VIT&e+TZ4CvkL7&%%-!;=cl*-w9DU12>n!tk`7Ex#nMa@rIY>#OXoB>$zS1CE+ zfySoF7Se;J_bl{R>gQ>X?hOjviq6-g+`HGj79Xj%eqSw~;U*|mlLrDC)vqa4e3b{~SN9Ly`w+)QE;for(vg#yEt}f^Ci=V{FUb58#(*jF_(61; zMzAU*6wnd3?KHMVq&h3wER`wWCf}ZAe1FU~H7}6X0jb;QV6Fl8Ofjqt`FdQ6brR|` zOk4@3)S_M!gOz(sSp6%+vSqSu9z7yum$aVc;D4CX_IS@YQP^+`^C_HJi8>{_uft^$ z{D}u13)j}^oW7EqljHlXB$lo~_8(tFn13nPa8b)w!dbs#Dwu=&n2__paSV6qV5OfH z$mJ1gum###LSOl>44Umj#*HI>5Rb~W;j|8c9bUncEtnQXFXrjO4^V%^3srx;0d{>Z(%aNm3! zWXpvIy+h)4b9%O&XP5tfntY@@US5GZQNQaoqR9d!;5q z13Y+pPe2RW{>-&`nL4lgE(jMBh)k>sC!S|`kHd472z7KBhuGApVDDgU zi9ADVClq%z)%`M_>=8TS9i>eoDY7nPLL-|7Ct3sr%wmlJ+#iW5(byp^cQxPhjj%#K zr@$D$52Zqgr0#7@iF1>AgZ0XkYAaab&)(07tsG5Rw2kdo_ynFPb$|z5v$*!Y8$E9 zvk-l51>YR-hv#l;rK*cV)ZAcMJ38wN(dR8QuEn(QSU2YmPl0g;ODcDkCQWSYyV3xE zUTM$+N6>wYdD4mkyyiN$euYD2*YHjBIo+akp52Vrr{OtUiM#+GKGH1T<%h%^+(`Nz57!S{`vMy+|>-S%5t6A6i%G0 z$%uzhR6GvTOsUpC88)akXi=muPESOsa7t@i)Mtg2Cb1%+=T6#n@l7Z+#m}e@J=E#m zBWNVfZ-~RvF=F(Uco&BERSXq46cb)$8rDT6)eDBro!*+N*{B+q_L}G+ZI>x6m?Q0} zfa2GjrnaX~;KF8F)E;{j>n{?CRh1a@TN}0LffPPpq`C7Vz>11Uu%Vw;z+Zf5T*EG3X)sc^ZkCH5|xsV+& zXY-xiP{XlLm|EzUng=DZI?g233_)0DmKE1H?;k3}9x!ro$R9*k);i~Qg#5~5-MKE+ zpQu}V<~Mbd*e=nv2`9RBhFEXC49K^$7InF7=)3T(b#~$5smW8GfXC3hX(AzQr+A_9 zn9Z~{XVkEH4&YPY{n<*l1EPzVK{ul0dqT*z#I-d?%wmV5_i*Lxmq)wTA=1(4EZhcU zZ6LM#@hfwvJ5VUKCX+D)#GV=(yK0ziV_#tXbV_ORY3qNZ+RzGEzpHGBMLAo24XIq0BbGi$2y9%-UVa`m7=l3JzNA@RKJEA}?!{B<;I3=Z#1^}g6x9ih+Der# zReH6o#6G1WBEFrr>doS)JeF~u`rp2&Te0WX1j{(9mD~)=V&EckLKN(|_GzfNfdO%1 zXR{B73@d8?!6(N20~r9M7|$5<^C4$+aPI+a)d!#$LW$Pz@D%O|z-p6xIuaVDbE!xzPHD{&h8DGTQK)E5vS_4KTvba8tz!fvVp^_kjuE{BdGO_R!uTDoq15yg3g(M4yOJ{%-g|Gw z#N;$76lIjn=M~D_awK5x!!+a!?7N@p867am_3zqv7x_p|6IuxW#2{q)-a?q_;2BIO zCxF)u0PHPO_e5MAQ3oFBOYW-lep3k{Zc+5uSAfLe$43(nHpM7oVV2enjxi1<&GLi8(&LNY`i$?=5Y_}4AW-=>5kj@dtp zXG$hXox6Sw0K63T>-i=f(UL1M>t5TU}~MOMJ4H zuDRuIo|^lmKz@JSb{Ohp`^3_(1nPoI;pu|Viaf>sGY`0-NB5yv+H%OZu9@&6VO>Fv zFcbm+v@2~4?3ZkY3Yoa#DhLpTJKSsx-B<2~YsO>d14ZQX(#mB95!WtR^^N%xN(-oP z*416RWJ`7_*I-N!wa&DVop+Q&#?Y6BSuy!|d)_g^%4>l#yWp;M>sV{+jt5QEo(8lB z39T}y!L_^*`E)&G4lq_c{UpF-W7^b2rmNSJ)k}p)>g=*t{Jt}jf_K?xRX@}WALEX{ z9z0AOnRebj#+g)g40vtF*Ls0*E`4G<2PZTzM3;43s+xXu=l{#J%DTGhiU z%`~uAdd5>$-)Q#li{~T^fRUu_ORGEZ+)<2}yCMNW&kd*Kh zk%NOJAH>X*ziY7)Wv&^ty??N;?WlagO1U$^WJ8Q2(Wq@i>v9miG8h zNiEr(ngGcvYNOA=vjY4tp&$&Uq<)&bs55a;FNd!hv_8~q(>xnTfrLv8;ye; zr^%>5eABdMt4+Dt|EF=@ZYCuB=K{{bEHJ3l`yvE7KshdES4x~_I5Fz1XA0~Yuavik zXTrS#i+-o$zrXm)$(pK{=RW%=)0X|8ghTLzx)MRB^T{Q`5|7l_ zdHd2sUm;QmSd-PImvkzYT;6K9mi5BSI$`BQps+K`RL>4i?S7Fuh^LVkylc$6=~OjS zxRKCihIEh=J_rw>~VMo(IMA*Z<45tsBq5Yzk)K&+uPqdrCmh=^vi4$Byb8$ z#Fd?r6*xWNdmkN6I6 zm-{op7N$Y%g}fz6#@>LGvjA1WaKMi+EXefObseDz$W2)$v7fL|-bp*%ZAVo?ZGz)e z`7=j(_A)ZjVY67((U+(O|2PyHU$wg85OW)Y$u1?b=!h3{exU^emiLj{3*oZqQAi0+Dm+|l#JWtC@^%_!h@IQBjJJ#%{GWND>lEI2iB*S3|MAnZM9QgXFEu= zULF?hY60`Bd+6c+R0U)6=;&+_%;uttQ5@)B`xafoAl^4T{9s@Ejr*GQ@S>Zx8Cb1? z4z5Bi^4UpIwTyzUc4BF4O3D7oT1`eOl<1~!%pqrEwoujh;~$UzF(Zm$Mn0uybv*vk$+{CmyH{d757T806>$6H&d@F`P#G}hV<{`5Vt!WWha_*lGU=EDwn5C^!74jp=Rs$p zO2;5gA|xfEq~Lqvt5}^K=oRP_$tFJOP*I~Bn!D!e-4Vv!_MK;pelvVQ3AoN2b;;f~ zY<+xdz=AqImONpg#4a4+0y%O-n7iS9nr%(#BvGesr&#G4ezoNy;%#Ip0Fd$r1Wc$M z3!Q}7@e;D@;UO?kQ3d_3EfSqsa`lEWPD|MIXyN^TlGoXdtfy*rWwOx)~QzZVEhd}9fSg4g3j;Cx9BgJ!zfLqy0y&=~1kaV%s*;4kY z46a_E2_c?OtrZf&$aN%sZZv*^4cubYyLK-df=13W=mFRdX*mhlbpk1aF5GYR4#JyT z-AtvX;WUEu0b(YOCGsnbzx_j}5LwR^Q4F!z#6Qr4Crc8!bN5b@nh4zi1`uOYoV>Dq zo=dYF(9=7;K~WFo8jO2r0o=pv)y5ejE~v_`dybQN2>tu(z3ho{i^M2O9~Wn-Q?_j{ zan7DJZotk?Ok?NSm0rdWIu1)s={Qku=bIySpo=4PIm>fwH8s-o8|wr?4SpTD+0J@m zDIBQ)ECu)a(2JT@f+i3WhD}+;*78WuEL@Rc7D^M7?AhD-VRj1j%3aaE%xc#;R-_Nn{I|aGB{K3E0OE)L4#SFZ|;$vYy$~i{I z)LpZ0k1gt=VjAGZ*Ar*n7CbB{{c`IbPZ}y?vIG!)of(qbD-agixXO9NQo;U%QTU6_ zLv|n<8r=x6k8Z12yq5UprWnXU`kQ8pK-NR!CF`vuH7&q0pC3geK1pWWMpx2=n)1ct z_2kb~kp+yzlcHApvbDW%n8B!55OH7Xzz2xRhf%Mb4<;4^2pEu$R)$FVQW^O2YdSj6 z`_+QE2=0#GGiR;fbPtA@k)Yn(&x-`Z_%V|~ajKoUUuD~d-o26m8MI?O;^Li@E7^j<@OHL9JsH*{x5-%qFkKz=XRKb3oUoODeprBh~O4B_rddzkEpyekHIv< zONF~G>zvjQbN&1cv&8#!L_C~hV7kCj58-wlfyxl^dXT9I&QUwfG|bBppBLOHs*@(=!*kV_&v zS5O^#;|ZlyPsKSc|J?IbrlVAG+pX(7<&~>!nV^3tBUS1%$YPCY0hy7Dxh&9Uj(&}S z@aDj|>u2#0qZ1p8Zz`TMiKtMm9Ej>!ghC%>cwTUe)|cI!*F3e#1@s7EdsNTym79Uo z%Cgozr4Drv^Hf0R`i)?P0@>e(pDh$Fv2N5lfTRR=cAZ6hviv|k_X`l#|7^;h$-{5OeB1y4;U!H1`=JjGVY*>zx z@Yss3uj;*a$O>jkUQ#oNF5oIP63GkVUFeU!9VeYt63f^DNnn1EvDO%aO)pTJweFF> zvV!o}H)GF|`w_grZMgQwl|xpbh0m)nM?YQbI~Ycw+8CJ24}50r>p^GiyTDf+?zh*D z7JvEqr4OkrPpe4`CBj>eKR(%CfrHjq6Y0UhNeGb;T?G^D!SktsegtJs#a0$yi1vj_ zaLD?kVn6uzc1a_{qh`RN-$IE`C(3xzeot(!{wCFK+tVf1Rb8ZO>xx$Tn1nEzvv+t6 z_CzZ_k|}d7$>-@hi-x9@J2Ai&dw_ne_-<@ysHw&RP<+9G(fvvD?~fp)3tQ>4U>iSU z8C`6L74@D4v(e=%Vhl5jP5ewlz$aPTd|pCD>Jyr-n&cCSGgV>keG(%J!|$t*T|6Dt~(XL3pkB$NoM311mz6CC0PaLUlS)0 zmA*h@t3;0vmW|P4i9|Vy(p;OgA`3ZRns`dEGR1^*nGkD77NhZ+9k)OP<(@Wy#@D^Y zT_5dwp=L%i2;xH3DR&-XXk#H7@DP@_em~NxklRt)}IftLAD=Ia16Rwc>Z3KxG z9B&YV7DSRso-)7LPSh0m%E_+24MRY8m=n0*J8xe?;!jI?ABm0U_l;cJM&ZKow`J7# z+6*W0sl8d+I7ZN6{mVGAF42V1GVkBlsjhCGC_YM{af%%9 zR*+I68GxZ)Y32gLvnC#@@y4B$O47vWOv?)b7^aje~L9OI&tSd8Fd zA0G*gXc6Gzk*b9TMa);cNT{}HzejXrbrxeOt%ZfS=DzR^el%-6-KGx#jg?BBvFVN< zdDTy|O<##dxCmT8|L1!g2%w=q$BywRV~0AqxxZ1$T)I#sErT7e#%<qPXV5@@OApP0#a7n8x52QLYpu>VR#RD~Q3;9;-ELGCbQM{ZT)XHZA zMbMSzp}wp#kw7l@-IMW2s##Ayx%cGp714ZlpI(&9a_8l{SxOgHRU6V-hGjzu&e#i~ z0I4XnYSWEAwiZU#Q&xVaw>O3>Hu|i83!Xi*K58Ch(6`x8!mF&;2UHH()R|Bh`BEnp zNQTL_nKN{&UBz4xYo&QSoiRyOF6-T#Q6{9mYqO2uW%E}1;lbnI#*P8W9-S1+NBKY) zY&0zDv7;FBS@79qIWrD-bhKFc1R@Hb&9>AlElOn=?q@-7Ct2J0bic6-A2lDzI~8Pg1r)ZEK$&~ z^)SHv1>`^eb78AnYX3GJba-X5o#iqn=-sVs-}x&o+rZt9NRYQk zDd3mV|MeP+s5LAG*2UWw6*66)2_$=dKt2-9@fO4rn8<6Wi=BMmm#YPyOxt?`d3fpk>U7SMB*yzCG zP(vMAPo-FjLLkdvvgdwwmA*Ow`gREc8 z+?zW`CyQscICFhUDEtQI5_@x6->bwG(PmBLWqI)U6druJtQ@?sJU5BgFH1Dw`F-mu zEEvs9)YS4lF=6VyHhO^9+?L7J2uH(tXK#(OU=YG7*aa3?$D16&_p0&CfCa=J*zXEt z2?Yqui-UFFr;+i5SC7sPUa^>rM#_vvB%?htf+eS%@KjXVYY1mdxohXoNRfdqPZH{B z0H)Da?Yz?lZgusCF!lV1f8vK(z^pQNn+CkT8A~#v%P4?!6?;r`q&+yrEk=OP37eSP zxys>&1&0z=U!zt9PvX{Tt!~2!9o*{|r|OXc`3&-@#REr74}ynjJWy+dHs^2P-9z%Q zA4(4NLm>!_vL@k$ef(tkim7wjq6j(QmH`q`>Z!UY4LTm7Jzy|^5kAYx9fn^B+Uhzc znkGMwZQ}wp?EFCa$=n#BjE4+)SDTV%!<*27NWaHtR+XvHvd9ZzRK$XDaXg4Jx#Vxn zm2j5Gkr~TRd7iV8erm;2*rAuZV|Dnft^C7#r@0O#h}_kw%mMAp@&WE}p+<^%P%?zBlhQX3@no|*`?3{l z&u4GIO>GJs8WiS^(CGFX^v>uRolsWIeI@SV@5<2^`_%r0J;mLafUV}*$+zeQ zUJIMs`hZ>e6TmtTTuuf7-#C32IPi>0aOnABn@y6m%-c{BJ~dj=PV}chE_;YEzsyi* z52A+k8P&Eb;ZPOTv9ba04thJFimvuz(2>NVYRFjsXncs93O7XpkVq>NNv7IbQ*N7} z)dAXT$WIrrC{Po8rUnb-VQq{setRb=RY#EPVt=X9o85zFZpboOkFztSKE?uN8EX#z zU!@429$)o~TbAF`7R585q{e%hlPM^vEoCpGsv?+7>DmaR?;hEt1;Pvp*Q-o~HOv!M z-{HOu?j(2UWs3gD`?-*g@tR^ZRl`W-dKf^tjFV~A`g&U|n32s0;~~sjs_nhEiLDoE zVnj-_B&vE~_vZz!7??QaCW zj)c%QmH^mP@PdLKyQWxms(lL)2ia{P4*jRrIAVl|yIa&iJdF+q-%zoPUSS&N zrCX4}RRTYrS7{IJi4Dh1cutz_*wp5z_r9_wv1f-WRQBi1i-K9h=1uPnVK>&V4(O0o z_qKptX2EuN6&~B~Fp&xrL@l;-oRjwvLpDSe&TCwb5xG7H~IB!)J8QxW!bsnMO z`G>~?`{XaC?p0-spSWKB>8sEvVJ0g8T>mUDQ4^(`Ah5;2si|*d;zjif%NWQdceo4y z<&>1y1cHX&SEyoA^|}7owD3rMdSMsAI_!AAQuk(nK$r&#%~m`kvHjaCS4Pv?!OJ?h zm{3M|Y7urDqld6%|Moww-*qWp<|;^*V4WvNg3VtgL!%kGXLty}Bm)Z8MciRK2Et0? zx}lIh@6idBME*WPVNBzw-vK_t zpQ!XLddkF=+e(N&mmUQMnMe*K3xeA41z~11HQr+b;hrij2d@-pjbMKYcahP`d1E>i z_!(;JW)`T_WE&FAO$-f%=*IgQ$@*k+ZBH5F972tREnSCA!74qmew<$)Sa+p!RiZ4s zDIw?BjB+WD6>NOG4sIBnl_O`uvL>uR=Mx6&;S(;@Fh4&5+}d)-iETD8&hDVh0y&oK zUzkP3k*ul=Sqr#abrQ>O!`)W}^Dj9+g~l5YdxX8W zkk{$r%|CY%>xURh(WafYG4y>PD5Do-J$!NKB8?D6o-p_%3+|hmKH0v8S=p7@vkn@m z(gsF$(=SyUgN>?BS~M(9aKddZG&0BkUqh;$0NQZTZMl$8B zjAzR*Y_v$Gp=mpWXz5^nFs#4TBTXMvC;rWbyq|FOEwqX$XirURi-VJvGe4p-gK|T_ zO?OVBtGr`&zgn3ndnxS*Q-IFhr=s?j^%;vinxwWXaftms(I9aPSU`iqcjZi+RM1+r z)n=EK;r7&O)7ycR1b{sopfL`jwsj(ri@cuh2!}HT%06yvHYqjT;FAl{v+2IS@Cfn} zhS3i+Jze{rR#6{$2%KR&h)2v2MuHAqq;gFI66wylizNIgotDMEy(1`xi##JJn<`_3 z;T4%;qchq^=`ovUId8=n!OrzrTAdhHHI-bcq{n+G?+>X!0xH+{!rM_PCcdS2T_myA zrZhuby7385Em@_uV2{xC5}+^)Uq$vFy#j`Jno{G@luD|_N4*um60ZaHk-PpUl*FTy z_LX|Gz|xBbrs@0B8O+P`Px)Z2f8S9PnDNm4B6pdyxf{8o!vrzT#kudM)H88Y*66t2_)ertw=Jb~7*JZp55 z?5kDvy9?;^{}hnXzPm4wVgbGr1D8@kWBeR*%uSh^n8Lj=%bZ-gfhmqy4-Mp)kkS*q z#>@J`9mdf1-6j_oNMzX*pA1?TZZS&E<3tXmcW1pHg!#7+Pk2SA;Z?jZ~Rh zIp;inZ)LJ_@TKMOo5=OvGISlF#NN+c=WBrmwdW#DSM=jTHaHv^-nMDZ^uWy5Mr3P+_NYtQqC3nK{baHsUw{0ur&R3BwLkmX zr6A>)8L%>rGRnG&y!=k|aU#+EA6D`teX5t01PnGWv6$=Qw@9T}{s{cune5ncWmT2@ z%7>6=h(YL&9hlJP7bj6iqI7nRPR}Z8|B{6LR+GV`wn)91Q+kJxN9FS$oR&wu zlvkz}BW>Z!svC*p-tF@1|luniWzhisKKya8lN8hl6V-CYUn%62=+N4*@mJ z5&T4S7V{?@<@F=QqC4pa5U{zeH8?`f9f+&Q5K=&Yisv-9;W=Ci86>5F{hCkjWBcMsHNyEiFwM9?M zc^8{*(8J396L=Z))6lA}*S9a5=ASl*m&oQ-0twln$J}=V`HC|qrX6kNrYi~!$xb4n zff}rqVwJP0r%aoZxGoN&B28dy}5?)lkMjD8gz0RW>A;IJi-ut5MFc!?{c zIzE{063*ryoOf20$V%dB+*I3d0KMdYaYs(kjp_akyYCWKuYvQP{`5BC@90UFA#lB5 zzcUgps`m=2yNqRd98)482um^n0X@KMNPGhzTn+SJh&Gzz|I$A5UzkWAKHGmQt<3XUQYF9NmYtLv>Q1`KUnnz zWY>xIRp}*MII;86n%Z&1+$Y%_5+7ximK0&nz*B`XW>0KrVq*`v&gwVGaPZ$DsQ0#o zXcFM^|HPH;Dxpv`23skmA0|n)-UE=R?;ymrfJi(1Q)(~bJIzW@pkIpA82K}i|0-_h z3NiX?O78nrLIRQ0)$uebt_&V@uWti`I!Mj+(0D#7jrwx^yVaAGD-En(o_#a-V>kR- zISwrytK}H@>KZ0>zV;_Al2+nBNEsyyd)7bE#?*L9&@Sh)`WeR5_L5=C0v(MJv_CD%_4fxlN+KsS95&l^dIu&fgbWI> z2nj!yi;vq?dlr~P`n~IYajrQY|W0! zkLd;$ra>~6mTSi}Axe>u)l#_&mr}(F0YS-_z~bydP=YI#q8^pZd4dgtGt*NU6`LFozwoR)i zaNayUjUMz*vLofzyG7Is6-+b@1Zv*0{ec3YpOPbmB$UHl9nw)u2ZLhFA zfg4gF#vC$uVMfs~&s1DX=3;3Gd}SSyJUl08 zxTKgy`)k@iHC1F?VGH$GHUtnS8KRuv7Rvo1>|`t@5X}lakHZN%d!h=yxh1@|G1e=cygr$ndIrJHHXz<{RTZTd7O)>a!n#! zx~6RuRWhUsoHFqIAm0a8eat4%;B#9gmmJJK^#!bkjCVJ+2n{ zYC!E7ijFSW=<01-46N4|&B|1(M1>#z*>woarwDrGZsuq8 z9&mOGazP>Uw%7T#3y~aK*o>ed-Mn~0oDVcEba|L<6+=YE`|@N|r6h$Nnf0p9O<8&r zB(OyNh)F*r`EA3Ws-Z&qU#tU}c`t(Qe^dRdj!)<5tUK3Fb_A(nmpo)*RNjf(j{580 zLCiS%(fzhje#xah6p@1;$w=a!x_beL@{cGD2U%ug zB$jOPFq5p>D`=3XpoEh={`a+AbRRJF{RZA%STX6g4B&0Ma#H8VJEJ&Zdwi{!>T~Ev zF?;s+A0@UQ2ZiN-ToVdmTHi`g0g_#1vuW2mHWN~rdG-Ah_`0??e6DsgV0q|O9sO-S zwQwcOu3M>&d(^uF0Tt5ujeM5E>Vhfq@rFvnv@2X;bRCPsIZ(u zO5^&>Mn^<>Fvk+vB3Bl7cgMluYx3qZ}0}myQc{ z6^diGiTSW}dI8}&e}0!1{Y4 z*5GAQ7L%!Zjj#Z8m$bIxU|&CIC*`FQUP*7&m=l2o=+HU~)-^X5FY=n!HL||)GN0ji zrm4^f@@be0ZF-DnYBfCeWc94WTcS`@=$^PC_w7*t1+YAoSQJu?`nQuf;u2{#8!GRU-eY6uafK3 zx6inhC{}+jYxdao^_lszTnCK&L%kwug)!a`XkH(1qcgHH=!O|zFAgr?$i*jeTDaaW z`E^Hyf9J*rWS-#9bZ8>;@=L9DQc2-E1;M#}4G9BMF)nAi$p2_{V`CDbTPc6OZxol! z6V(l0wf*`{T{c~M=nMDPMH1`3X7Jb*^_B}NdJlaXD&c3|rkmqy65z8G#=K`|AgPC{ z1@9?F+_GV0yYB;7L@afe-0f7fRPn@3XH$8GILwzG$c_9No0h3|+X=0H}mDyH3J+VvVyk% z+;Db7kEx&9$W1N3!fq`UhRr-CpaRCa4k6ROR)kPrGe~bV@$PgdhNWNYxjAn!kx{a4^=Wde*L3zDq_HJ2eOSu`(iwB(Jdym@g)aP1;`^y6aB zJ--%AqS8k_ReeS2=Y0FV73M9aRd|b{5FXGvi!6Y)5|p*LL2f9do)hxN?Mi1{25yX@ z>{lZ^VLl@NI_n{BKYqNs4q0pv)p=%s93(66J&H9ogu^5k(Rsb!&V^GF+3Y2Dtcfo- zd!7s(V%EWJEjyx^S7V2JWQ1+_XIk~l zx-itkou$BjW64RY%VG{m!t{Cp8DN|O{)G=o+DUNci&{f>7;v(kl}aa@>L`ZRwqpIR z84TLJucj57|K#VWBXuaEaHKMz&;wWCaCkak2CGoxLK|aRmTsWGroyZ+**2OQ${D3jn;BkkJzv|P zsd+>xc|MW?lJny6If~7}4+?>#pJ1l*L{2zXyPvo~lIb4}w&%!P_$s>{!z=U1un^J1 z7OL%FVD_{F+O)G--sw38{)PC;tl@|%sUQ2fWnt*O0vMrTK&-}l@qG{{HigLcuRplv z5+z2iLTss0O79J;b^|-)U;ab&OrcvGU!@R#UyG(e;}Bjfe*Lb3^$`%m{N_s;q1nB5 zw4~mEH{LrNApY<1VM2@>3V&&56|$>^kpL7Rz(*zg66Avi$Ae+uv)%oI*PqK0f4&qr z6Q>cTTOgTaR!<*D)jpq2rhvs5Ewo5Hh}L5~qXS=^?HW2-XlIv~Sve)g5ig zhVEO^nw!~zQX+X3@6H_NI7R3*oP)yC`?V@Yn!Ze>CcN%*=?{;MA@RpMc}y%(t73ps zzT?JubmN>V{LjYqb~B{LAeL+8*?A;Ss}bsy?}bKDn&AKmV8BnI-DRk{OM+Za>9pR+ zxgwsn&M-m>Qgv+%G#@UJXRxcR?=Fa)lB!jIrGLkJr)x(q6E*ubQYWd;s`?iKR#a#P zE5&)dm0S_h$r?+D;#`;zFu2p`pPtq>w*qE2XZOLozZRMqeSpXAmurbw$?QpFXd4)b zPEZ?&f8z~t(Ex4-s+^8Wo7E!s8&B-}oA=`nMxhrEE~=5fpC1mAX^Vy6OsjD+{3IP^ zxy?ACtf*cQK@kw#^>HTcX}8~@kzt%*hSiH{oMa?a%-=7wRL>gbhRj?5a*}fCotFg{ z`a@zN1DVE+Z~&%w0)Qy(sW!UK{1T=nT~rBE>r@Ihu!Y~gV4S8qhX`OHRqn>tR#Yh~ zZn0`Cwo}Oq+~>pozb6Kw;q*@-3vW+`9)QFMBvi>1(zSI(l(NTdMl|6KB|vB;0POk+ zn$oc37(vg&M#~$9O92ftf{(%QAledeU6BT}wZ+QPhcIijuv%blP51)|svN25s6wU6 z7-`QLd;Cb8Lf7}h>LsrFcB3ls6Xoy8Yswvr<@-6~`$v-;@LJJl&ZJOt;+X z;J6Gy72*Ki1kC26x&I1h)&?}D3@W#=B|GFfogPj z_4$;<%CbbJ^L=LElJ)`i4{rTMu;q(MbY7)XbMRIQD01Tg(`n7iC=OpGs@tN2*s9hM z7sCdzV;$7&%fuh8`QpC5%r7oqZ#R{p%F_6J#hK1bDm}7Zv}+?3ele9!Fd#FP(vP+y zKrm+M#tXo$f6VTM{EN(M!T0=_@!~DNm=!*0!P31E5dm+lO{5W7y1lfcR08k_ZFfoE zn8d1W$=V2AcCz<7u<~MZUjBfM_Kp%5JCGSX1Kml6vx8F3L$nXaProG3swpzK?~h)m zE0EBMX3!#e?gQ`|o2h2Rrvq7I+CVm%cwU9(=QDc#C-j%qUK_;TZ(`hRNnP%o;%IRAu=+I&EouGdi`9!oWbQUaZRxox&YP-^#s z%7347U=U;!6lcA0MqwL6RdP4u;+ejVz`-`$)?{cemS5o8cwQHBZM4_`lT|sCw!W3{ zLFahr?n6+?GotT-a)V8KHI^Bm=h&3ic5bz$?4Wr^@(Twygtqdw6yc#!D11RMUh^W< z(C(&J%0);_-MIFntty%<8w%GznYoG#Cdp27H9Lg9X?fV90&pWOPc+-ik#>gEPcTT{ zfW}~18U>uQ^s|}QBCL_UcmxN=$Aiyopf`MEi=l((oA>wTq{F!DA-P&v;*B=rZQbOJpmRbHdKCz=fMa^_>h zz~cY1?HOB3qq+Zc7wAPg&;6io`B!5m!IrIRxiOS_WOhZQy=l#}pOQ89h+;OKhed{U zerUjsEi#c~6IHDq%+7^Ysm_!QXw>pfw2ZaAxdmVG(;!vb>6KDXbE}be3J_lWk`_C0?&TVe z^L3cHG{lH>mfEfo;_ct`8EaN^F~PZXN5?1G^F<|@_5^ruDYJIVh*w-=y?WvY&yI^Is3PmYDH>^_f*FX23@l3 z=^u?&SzMb^IbaU4eREDWlHl|&1V^$!nH7d}_$mYg5@Z`(6#6=7wVeK;0WM@%wvUUF zYSh16^fv}qy+{*d^edV-FFukdemWVR!CnA6K*Ya6JR(#(KUK{~?w+twR*Zd8Yz2%Y zH{;uMVP77z&r9RQhtuTFL~9j$=!yK*jl1>1n2QT(FQ{pvIxpiN_K#6Wb@{G<%oS&Q z-#lC_b8XKQ)x35;kut>NpmH8}vj8YI z03G9e{hMY|SR*)&Vr!+${-Ow06udO##4tY(>@eRTyMnd>(_x9qM@LAO4$uz%uDfee ziz4SGWkbh#B3rrjG7pK;M&dh5Te>NFv)LC0_2vEJN-}Gcyle(H{8;`A2nTaWM*_+K z-XXblgsWW^pCSQL`-y~(m1}?M^4A2LAQbVGLMC;yP8bh@y9vwhf&OkwYQYS|Q7Tw$ z*7J)zG)D}Ot0fCyhg$;29^qBy-8*D6AdB)i?siSca3H1Hc=AqghJUKhNz>!P_sFt` zNs_J51{iYyInCRB-yA+1=Y6GMxR8)7Ut`lCnJFA^U{K2|N68t<`v{G;VGFfftRxc? zv8Em}W4~V}1}58Je=OS;LXs#~9b8Z*)H5_saa#c2QOePM^g!%$~*9voZ5L* zIlnB@Exje_r(@B|c=}HTvTt#sPe=8gWV(?9Qw5}_XRV5X?viWK#LW#?mdSAOvJmTT z>`V^nNhQAN0?o;iE6o=w=V1(sL(rzj4dj73DnuYctMPY$q!k(^R0WBfz^`Z+e+mnB zbcUp7>7px2RjKnu$Qc^8i6tX|7}j)~r7LCTBcSptl*C9x zC)nnerQESRFnq9Ee7N;6TQ0nZS+dZ7V->&VcCt^vf(Lj9Farm<1`50$h4-&iGk5S6zYbS;K*g%>wY!y(2rKG*sA9j4JL4k3Q~@MD=Db<4%A> zruC99m_5kV_|M>JAtQ3bAw&w44gh);Fav(w{pF+8nAPoc%psHZW3eVv>O7QCpeQ^ zhi6+MuAS;$WfRsx=xtMyQG_;c8Q`ak9D8Ljr941)x0K=6YkUk($;vd*JUngmpYTmp zC?g9Ose`70(zq+N-s4!YY+=kZwM`!vu>Z#0clWm?s z!3Nm;OywVXc^cCtVHC8~y7TK7W7xLyKC^R5;_r@hi4BQ$aY>mi5^xB0Kg-=t)1!;9 z%3hYL+(}0AQKj%jXbo|6F1-7 zIo=BiP}o`gD9fcLt%r#jNMEx3outsh{hsO6Up;{^grv*Jzr`*D3IoJSS%2Anu$o6{ z72&EymaoW^sWUX;aICS3iV!cYsV3Bg5EQ(O%NYK|&qXf4^1{(SCiezSV2=_y)x)`f zBz?C|jC(MJp8UfG_j9YA&O4277%h9an01>6GpcK>mjERp`bvch@*fNRj94PVPbEF5 z`IU48q%4dA*qwU`mBUGcKdi{qFrq<{GudvBI+fMFY{B0=}yPs>v*8flr_qAbIR@r=L- z{ng9~siw$NW}}(e3FiThYfaDGbbWWT(Q!4D+Gw^{%<~t~%KPACUdJoy#IuHo)PysC z6=F5iXg23{T2y^nh+~(BQa?qIHn~O$Pk!A_#FT!UlZZh`!c`8zpk<0V5S(~$Kxrs; zw|)n!xvd_*v$=xN;xt+?+1A1yI61M13{MrHO{jw{%;R#i(h?xH8$hwKxLGhU?DM*f zxlVY3N`=#!Q6M#lRl<@Xty!Mv6Y#AZ?d_8bHXI;=uiQg%x}erzOtb!e! zm}!hM;R&8`Cg88KS6l5To)VF@Oc8#FaWjl0z&N4bP^?bY&;;X$H;{2+q9e)c^pltu zINvGs@Zyy5#TX(hGcPR>4H?$Wxc{Me&XK%n+{Ak5#2Cv8Bt8gMsH}3R9rAQo?AjC; zU4AxX!aA7K_)aas`Iuj6E4_MSySH~%JF7SZ7m03RG>c^R9FNDl9{#JEbO7Gx$^5#+ z`87>oKl+XXdgvSVXdgSh**)^R7IJEsjObVihAD{+Dv?P)!*Qu-}JE+0s6 zd(**E3|Vqon_XcFzA@1kaF>_ewHxem!HiEu7M_9C zsiN2A-%8~gU{#0L^_@u;2*BVVMjD-e5qL_+a5N0cTcU*R`wr@Awn_a8S@UC}HF1Bo zUMKzN30RDCNl1=HB}s1Xsj-pPB!kt$zTcVpl28<+@RbBY^MvlGBspvv%0mymf%{isG5*edgjK5{lg4HAG$`Q-FABV)0tjovG|hm z0$g?3let#Z^=Q|tKKI?GJm=gthRf7`nZVLC$m)e^Mee2QK=dafF|>C|1H3Y=frTo; zLB8e}{%^C*WfRJzDJ~ES^CfU0x6u?~hcB$s{5%BjMU zxl|8t+v)fPjH4VIC8SDD*;yw;Ey#|WYMt6oE5B@z1B1xK5U zoDt7>wor&LmE4mtt zRNA7LnAze7!CA#;&;lQ{b`&CBC=6=JudNaaOpMduMXxzb;dJ`$)RF3*IKGJjWBTV$ zGJDg!w0IRzhfNk&l^{eN-G_Dw^>p}7-J8QgLesIsTQnxqC`rRPhtO}NDJ2!JY#|0&2a#(S4ZblJYh0eE)OI-vw%mBUk$m`=Auu_}c#KyknU zO->>TbF$j4q+uSvr6@8h*0@{^T$8E{OmSvQF< z(-BlY9bHb%?y;KnvbA|Cr?1YU`|D!2dQ+H*7r_K`Gtn5}|jg-3hXlzBQbmuV_LppIdb zZuw_;D|Z+J{riM_5TRK($g%NG+f&uj9RsvHX`N-CMRHA{=mNb50DQ1o;0UO?cIXML z@BmC?HQn?_wYYZ9pb}2OaEhm=>}6*jc^BG>Kga~RTbnSsj{-BsnY!f776rtMTF{nBm#POXntk$;iC*|~~;L20UR z^NiCNl6Xw^o})8Zk)L3Vn9gZh=cNP8&v(RF0A6E`Z`EIUv>se5YI=%J#KgC?y#{L%ME_mU zn@+$uA)n#e0fwyA#5ZiUTi1TJp{%EdDy0%ZtD6D>?@(2c zZpMI74rqUYM_dgGSV!2g!rD7{gZn#QEaXx?gHjt=B}*fLL?)S|tNx{KCHEQisFiP( zBNK3WiP3=Jg~irF_caHcAkoNmdg(bRMHhmHNuDSn@_E`1r@{Yp=?io2d>&4NmkI-9xv@*U> zZBI!@|D8HP6SYLG2>maZ$3?)vNy4TPheamJjZ}Hn?GxYP{ZgBBx?P309q`mZ^Koe*%&!+ zLUvY5-%T$4=x$}5(3kwFSm`8jvAn0RuvRad36{Fcbpt=(gN%NuMf=VYh;5ZQlnnzv z@s`X6z>r1PwCHz)TmRb;1@ZV3piEf5-*GpPowSOPcZ`CPqZ%n2?_r=Lk^UQpCX^db z<&cSv>Z&h+`u<@;&z{o0QvT6bx9>S!<*kgbQ}=!&ULg^1_&HKX!4{5IOn4&Uu~ofG z&SVC#waii4GYz}OaLjHKR9ngG9LIO{Tts}Cyj1&tIMRgIWfS%!>LLho34W&^Clg|$ z_E7gLa*2zyj9a!mtRY>1sNYu zVIRQ(F0+33 zgz1fr20{L8SQ^07|IDir$SdYdxUg0{LiCBsaT)I&Bx0`ok_sMK&&doR zJcc5Z5vMy))q@+uDPCGWG7k9Nz#3*!0fH7G0jzOw8xU(?9+|;B_ zA3PNLGbch|)r6exP8Y?g275B=#zieLI8Ioq zj@}#5W4~uRM4MC_5OJ&fOUxOipG1%FEY@73p`?eG1q!Gq6l(q88nidnilIy(ijWbm zrrvO?CIdtHBs$4ftiEw6}cHkF` z3zV0Z026@hf18P724dWW^@ZGAve(LkEuQBcwkd09&S*YFF15!f#cd~hEf;9zi&h@> zH95lDUTOCZIO(>*9}?Ld`wa64IADTdI}ZbB^=g_DB-B}OS1|mP6aQszSTbENP>9s#h4c{ zIjn(fu9XNfT&DltG$SgEy!mToabzP@0m}W-Qa-AOQRO(MZwXTYLqyx*&*2p_Mh=2i zqz=0BGtH<}i2H?*-|VP&OWpVFdIZ@37`rR~gi{m}uPZ!lrOIOY?P+)$9jo`a1Uk%X zwkh=&&*-~cw^goVWqgZVu0r^W!11;P1w}(nZ_u7DJJAAatfpm9`<2b%AtCzpkP-o( z{MEzCJhg*8PNkOC;+{r(`1w?2_N462L{r*^nVla2En(R{*}v_XuDEvBjA7;!A3;0- zcJi+)jHVIi+Z))JtIyW7uwB7ll`D7CHsLP5LI=Wfc5%2gSd#~we00^ck%NW?JQw$J ze}{i@WX47@H6(ppniR86FZ>rDDi)8bVIR7#noGVHb)+$8PAlM39WMv_t&vFCS;PPY z3@)Gg&XSYPp8E(03<@Exy!wwbG%iKx8idjwUMu%z0Z^h9ZK2PB|Ga@Oa&FPVb*8sO zam^{=CFFPuX28XTw{nZo>I$8yOv{$ zjOqd|sbPb~Ldj4*BoYPtuJjt}7C^9DHfrvTUr~3#r|3vOjUBFJarnxI($?A(qaK0Z zE`WwKegr_K$C>tiq&KO;mHE8hOQSeQDpM{F2h|8R=~~mhbdwZ>C{?Inb+S0(jqutH zhJ)o~(b_yKr)B6XV=yvG$;7w7fDvKXaw#f_xx8=c;)fQbd{6ip6Gw9+u>cWHO49w< zrR*jL;tQ74a#MxNkb$>(N4BoFc{!|3S(th zC*D1{lRL@W^)E*B8w(fgZ*Vk1-277>)QA2nOiJ|>YY!9a`S$CSWIR~UV5xcteb20; ze5Mn7)ufGO1XN)vv*v~i9TyTWnSVnroo7hf=J9n`yj7MmGHd=t9Iyg?ms#HyAF;tk z?7mSWA9jcbI+pYUmkFvl2E(xf`wsh~QP<39oqa$SsuOL7YZStVcm?(ca2*D#T_bGf z2WH?97J!mN1gKSCoxytAu2DO$ddB<;!Tmou43ivE#*{d_!F>;XR0Q|sV3ScZx1_WU zy*oAwet12$CJSGXsokNF_oh#18FNFXB_hKr!o93bll?VVz6$h>WB{vZ^)9&9IVND`(e)G^rj3 zWE1iBIg`>t!4^V2Ue)5{e?TS-L4*FTIiMziN}u9L4S1(yr=WApH+d>R^&+SU3w~U0 zhIOBiXzDc8(4VYtv?FU0Z@s*X@PJ7eBCDf8f7W#^JPoH~)?HDTlr@PZq|#?@*w!t| z{QF_27xhN0IO>2E?!n)Hb}ah3n+-ThNZu%ox}3A@+50M9T6`R})y(-XMQRCExn30|E+V29gjNluGoS>m|9nxDoRSCYT4yh+Cozb{~1?^YtM+IS~&J0z8+aP^?_qb<=LaGPuFUWw-r7#gBZMiE&M(lo~+;PuBm6`>9VMFCB0uV6$UE5J+eMf%-`GkB~=0Q zcx0Aju6a~UGV^EMuFu++qOo2`YrOYlX1!7AS2pR~J!aoLMlW8mpX%NJhR7jicYeAt ziPzccDVS+Uy!gm`5PTKPNv9rXf*YTyrrO?;89J$#WoB57)l7r{qD~UxdZ^KRJZvY| zB|ixf*M0i-y>#mma#_pwWdW@;@QIRvMs4&^&)Q1`%4>3NjL+}r6DEzq0hWJ%%5TF? zhap7YxiqjRQBmijs_my6Dlp-e`GwJc=RrM;v#~+Hc(*x9Zcj8t?g&KGT4r9!vzLU30PP76?ht2%FF{Hlm9ZM9@0R0QgmvEaXI>vnE-q{kdu znEPILiB$Q(iiG1-ie7!l>(F8R;jo1ZTA`h>j$=_S6sn5ap1EPvhEPx0km;CUI&BaM z58kR}z4z~}wX=i4D1KP$m|$e{BZoK-2e?*`NIa5l(Q`~L^#|!fny1S`1psV#x{bx2 z%w*|9ckdYgx<8*_N{gqEfDszWm-u|4F)bmeV58tVVNc_}wCSTv%% zH&Vntd~WR(K(67p0H3rQ_|4R*8sH?Re&OpMeSH}3{+Z}HY$zFIZ;9qDvTc%idckH{ zeN;>pW3}Gdu0r$NfU{2kPvXOi(Bx>&$>>h7h}jtnhE3=I+&4^zbKHTw_HF^FmW)EG zlsRj8u)Lvm-a+8h?m)^$GLaNZ25Fr20vTMlu;N-1|Kp5rA)Gx`Kxym@((@g($Tcmx zAs#X5M_0#!q*)Fw5?gk$y~9bdyaNqj7f$N8ua$WB9m=z^x!|%`vbMa{rq@>2x=!#E zmEO!f%GW83<%2v;LZTI8sA+sWcdK$hf!9Hqle7bttjIE`N4K(ui(?@=iM`W*EA?+iP~or>ZbZ`&SGYws&@v;3)5d_w}Kp` zMDY{I`l9AH$-w|guVaN+HERq!EUcA(B^sbJ^_lL|b2GEni7o-&zXU`rvs{SZzL)cK z$DL7kGsARm{4Bu0ac}kONvB!wgBnFu#G$Jc)uFg*v=8fC?jh~_w<>PW*mk?G#^fye z40_^>9;j$+iCIjmDpQ6zn1C@2NI@c)6fhMsp%DU2TtE`EQROYwT<$X}MiXw^1`&Mk zJGEEIF~X4LcmZh0i2$aTJ*c&aCgfw^=$CeyVnUN~P z5e7sxTuAh#58NMqQT&VK53O4kE>61Wq{KHO8H_U?(7a&A<;h2Jee2nqLkjYwTl6;a^RX=b8IB4Gsv#@mQL%NA; zICS2>uE#^w;;~cUZITik>v$NRL*w&(IS~a~KZEW}X1+IiGKf2*cnm^4I;`h^Ev`yk{eV)8_H~g1PgnljOs+}@^m8Lvl&}J8-|JYt zO!_yq>!Cap>HE5m8}(LXsK6+D`M1_0rf${V@lI=IhqS{<>}Ahk*J%(re&C1>eBO() z-{$CEQguQDm$P0#98;`By1#u z&v2+KlwSS4>Tkwb3zE)Il+8rbv)QYluf{IA#oj`kGB8iD_Kmyh+pEIhh0L`>tMgo> zrB107R)~_%khegWE&<}3)tYJ)xCOndgX?R$Bfb$_OC6q(kZ&DcU>~W5Iu1;MoT45w zwE`aa<<4wn~ zJit}vH4CTY;Fps`T>F*sxZ_4zLLU zE^C^&HeAr>0|J43<2cRTHG_AB3%CBnB&O#K2I34NnI}?8DUo(g=dTwfrC|h7X#~EP zT7^*>iTW<$HzNYw<%eJ;LQQ!%s4%liN%j+bc!xo781L{qDMjK=89sghEZ$u$2#E&P z44^SB9x~ZlUDiUE;G)I&kicG7T&%|5n`Vw4IxY(lf4Btc#reN@l+po+-sDKK)=UFF zetK>)7&u%~@8CjN>EH{R4pXp1S)`gXB|?vo#QIcKr@elR9vdNw*{EEt_++Gz`Q(s7 z`O)WI9TyWVPY)&tKELGT#%CD1i2&RgoNY+Z8*9@Zs=1~eh+KOUo}RA2#64%cf3^HcxA z&c5UvprWee$y&(qnF&G0$;_~_{|r5}mdTm9GCH8Io}#&s@&HkZ{TV3XuVAm>6);me znV8cc6hmIQQb}!LAsROR5|)*kiPp8+xrk@p;R&*UHSvVl@>Z=+a~ubLx}V*M@wfL^ zcwa5w57jvITSeQiM&Q*bwzN3`VyK%@;+lcuLbT!@85q<(eTc5vN;BTj6kCCFRw@L> zqdLkq^dGLW!cDst4E0CDf(%w)XLqroeKj5Z2Q194%%01PpWzN_u5j&9J3mDNo+@}5f$4j)fK>%D3;Y9 zLG0E(7qQ((BALjy?pDGDETT2EY-7g^fsohin8JvB72+sOBj@o#H^uthvr+)aZsBt% z1U@)vJ@W$*98E&Q3HjO}@nc24rsGG9O_^rLfLiX07DDb}w4t2o zN1M^8ObR&lMWdp*~vdx9lv7X4*@~HRrI7 zcs5}_bUPE|iiiN)emj6yQ~!VjH7V!G7js?vQBu!Ww{5VQ(`vv!tIoiaw|uEl-tvr- zvUc`RcvZc$wLoZt!?W|#bfb#{nh9>rGR#77WNoImMyzcQ5t1E=D@0cPfE|90uCVu6~$pL@(E3B_A+Tv<_0ldZB_>?v0n^shnm&$ShR4(oRu`~qe>kRkyMIN*Z3`mgtUVx{-D0YnFC|?0H}%HP$0Qb&k#Pqn zyC7JUgIf06=UTbtAiovv*%lF(0P%NHV!u-@RdU&#fpMiAUbMcI@Kd znxV|lDptxvvJPXZNsJYG0Pu)3ycmJ4Ek?Jf6;Dd6__GbV8msZ`b{Gd;lcd(8d|>5( z-0o_A+YIreqM{#tBx?TvUpZ zdPkN*G?ew(=BnHHf_7kL_QuG?XtG5sZ%G$V%F#TwhnyED(i)I>sRIsXgnXeBySgEt zg<#z1T=3(ErCYoT@Ew{j7>lvIrFCGI(cEn{_f zPh>6}SxT+3bcnIU*KcOZ!~hfvawk;LDm92EjXd9LZ}N=1)x<83e)rgh+J@DbpcX2C z;aczA$AM>*Fr+T)x`9r4766lL}}Ke$ZrdhwK@) zHVYvRv+ZwMbfh?s?o52)7Cr!}{U!0dy3?jPj;SP~!whO-tUD<*9{Qw#P|@k!BL9Y~ z=~|T$pZ;<$DBTKOUhI|{a)IAta=9;L`K*d@3i?X`(bs0aFs($@2T)UuyJ3mMhz};1Lrm7;s_D5ocb|O!loFmNc*2Fb@1AE zHj-L%Nfs2}Fz>c3Su(E%lt3sUKf~ZLG8+jhU8!lZH_Y5&Hq8K|C`L5U@C|^~fYJW+T0|Mv%K>)?iz>7Q&^oJ;aAU)j+d<8*6U#S$7uvf`fj zC2Z*Y(y;kxY|ug+(|3iX^?~M@wp4>{aL0k)0y|8Dvs|_KBLfnE-xbwJmBET^@_>iy zFFuy@?42uWZ}NYKmEs93Ia}=DqcZWBumqI)n>d4wEkb(?;VUQ~LuY`R&!zv#(MUu| z=#p>2I%Wf&nr&G}qv(8HOw=A$M8R$;Wd4$*w>QLH-0u2Jl4(?T95Fr}&lnjEyj0@R zoZMO#WG5~%RrZ)B$2yNYlP*EHecuF4G&4t1JoHUYy6@3~Zb zGX9I3gcpR&COCJeb2l#D+eyDcVyfeV38*NPbi@5hQT1L%TASF<^v1VY?Bi%ckKI_x zvn;r(cwO_SyRKu|#rh6o*1a`|_}10SXA7?DUoKkm9tqGW?QRErrX@-fRbK!H>q#{o%!cJ**#^{q3DRf{Iz4`X-A=B;QD#Koy%Dz}vy6EirI!6PKjP#yI@F$lR0(IiJtOfMxUa ze3iA-J6Xk{pydIpa8Y&(le{2CrmOse-m!tcQ(9X$!(lwiV4xPPexWkX)cw=)BM^#} zhx)-Ne;x+Vbesp@lVqu>aBg)aDgwHT7c7)MIZbyBamhtID)R1+2&g#&{h?7xqx~{HBDELD~QvPs9-`&-)eeLR*6E zEN8lciTu60gC-b$k>w2D<+bm)KtvVnftuMN~f3QvtrOf$s zqh5DqBZUFvD6G!j;F5t?vFn7_w@Yf!>D%@!EaR8aK1XF$Kc7NnFsW+1olj%hp6_o@ zYhbDwQ@H}OC}G_-EwLBN{r3x$JML-x>1I1p19mg7oXm2*!wU;Me#@O>7l?L4sRg#E#Z7 zyna88#I_q|%Q|vhd`BHgHxVeQ)ra-iuT8_+C;hMbC9=0D(2*PDPJ|86$EgUj0MjjRC75Z zQOWY=s4!zkXN8KNELhu*wgj8WMkD-XHLl8v&xag~(xd{>y%}ICIT&xdbgXrS>hP}5 z$zmX|RVwn=MiwuD2c$Tf0u^wc{m{nV$3v>s*0>Ms0rF*A5=GQXgo(#iZyJeulTTfR{55H;sCaJtf179(@OrQ-xIH=H*4+A;D7iny}b_#?0kx< zqM2gt-R2RbeQ^a^?(w6DS=YkG@{aeq^J9K!d(XSS+?hRrrvtd{fw_kg73<3UoaL3{ zo$^Qv8dNE;mA;_nox4_+`M_nK=GhhSduZpy(UIj3SNOI7aIcqPL(1}T?4t@8w4KpC zGi?%V%fKHEckbz}V!PBVjBKU=<&W2ia=zG}Zdr!HSfq@MN4m7+m!-rYk&Xy`0f)Zt z8Sm@%+);+&vK8y#NCO4n+RkqnIj8lWWPDo3#Iy_S=oTGfi?J(a{aK84bJ82G6_OeQ zrI0#V$16u8yQeHBl7asc<84D1)u1NE%7<`Q?V^sR=8l3j zfI_6~5@2=3XTfA)Q=V24Z=4TY$MUQY_+$2PRc5go6E90bjOh%Em`yQJgYEeWCy+!$ z1k`lZU#IB=7l850o4cKR(Ywbzq)&94Em}JlKN%wC)ldu(4H=0TXG<2asB_8$A?@O^ zi)BGp3GY|LH0f94I^Te{frqM9DC|R%83x2N4h*b&3{pm_1Jl2iMsuO9s#d1-MC zL50UjreCuqf^6Ld=|H(~w_htLlnoLFLZjPrHB|uWPu!C!d4&yZX@aMdR7R&ddE*?{ z26DgKT%a9Fsq7*(v{gJVBgk+LbA9xRR_Bsq9Tltur}*)#p{G#+%q()y zZPcWm&m^V@nmU4jChL2p#5id(?rV#My)*-D+fz&%N>XsqeiOp_2N zQQyNKr+>ld36)0uw}0VjOzJTJqgS0nlT*TN4UdL3bV>S!~e|EW5VD;7eYQRCG;0 zE{O^->INo)(IrONEAZ3r%z8h^eh7qNgH&ObJl?xEj*cVs<(eErSca z^LxMAXZs?Fd2#zriD=>#sqojofK>oq%q62M%JxnuL=Q}Q&Qq*`(irnKC&aGLsh?Ufrj13cTu8E$N_BGFdu3~=azt4)TYw)sqQ5rdBsFv)^ zUIAsuYIclCFp6`B0R%h~ASHwYTrMEU5aPFsR%=Rc$9s4uy;7+f`e9)hz!ELZt6F)r z0qF}SMg>z0!OIv5HQ%Xr&hKPq_Xi5w?<=}U_u9k1;UAs3ZH4g4*@QjLsiAn@X+f>=JsT#Kz;YA-gLs{dp5PL z*=ylG&A>L&h;wZg9A8;f&s|}J=+LgT05a)R?j%(|EoMuu>Yc71g@ma@E_ma_5$^Bq zmSWLVC@X#iEMaZm9ZK5?*fQGK$!YnU)Bu2l>gZ+dAeEM@jbH7CdsX26qiZ4lai9lj=< zZ^3!6q!yhA&AsS(pb5>5uz|nhi{*^`Sw1 zWfPN0s;#3Qa^s@SPhzpFQ}OUbY&B1=tAY&Y{pxY$Z=JU1Nr%3?8q0g`_Ml}j4XNa! zX}|ckUA9bws1n014R<$XN1AbtvE&2!SGcLla#!qQtHbld@yoTP5vg;$FvFquhT|82 zaAFwss`?tM?GQ%`i{ufxi2AIm9-1R9_8!FxNqH?u{~sN}HE@5L&$VsImLY%t(@|ap zFfHzj-W=&Z#=A!b9!{Lxr9zSRTFxF#kD*-nhL|lBR^Gj37({w^jYa<}iyJ@@)N@P| zUfn@}`p%a`6tf$KreJ_dTC69LX=#^=u30KI%1w>J3RK{4pLuw0nBwSix)?ioUeSmC zxX4iQbeB^w6ajGRm3_v8P$?P1F>FcSoiI6;06kwD0-IfgB09k-HGs)Fo)B=8you4D z($g@$p!sdjMlQ8I9)1C>3(-VSkL>i+J+!{0qxksJI>|b82(;-ENuvL&Xybx>`>W>d zMfJVy2M`&}h;`be<-D$QpN?ohG>Tn#wfvc01fOpgCU|TJK02amebm6{=uw`SCFVfU zI)C)1a`!V4C|ACMXlVY@G;p#e`pa3^{7;+0HYtFHEF8~}WBW#l0+m{Rl9i=TWsQggy#WSuIUP@!Ig=Jc+R%3zk($pew; zbdMjBa%#UKWCFb00;DPZpFy8Vv>c9;v+Au}h_#L}FZ1^v=F^r9ouenHs!D#<#k(q$ zR?BY_Kq-PRG*0gIl_E06ViQT7e%kD?NQ4>Kt2&u_t9#+8KfD_p7Z}-?okreD3OVNN zF$~lU&37B(2?>3ier#^cFV7!LDtVvmHvD@Z?^RUVHOMs9cR)?JgS(?Reyxa$HSC^t9Ir1kTc|3B`8znvB*ZU*wV9Hrh?5qqL z8K~Z68J<3euZw^1v9hx&a(G20bg?oyT|9*Qm9C3)e_7uJP(n1oBWubyf9*gk=bkr= ziXy48{X=~8cz~n`3;!%L3p;%Rkz(BznXF-JyGmbhr{RCg?LYC{~19!bq9CUji{H80sN)INn73qbnRvm*Ph{YhtaXYpxBk z#~*sU1kNCh5-|lwh>6WZLdO#-3W)~8?bNJ;B6qrqI=9M|CT!#98(a-fO=AsQ>cCQ3 z$Rn%kPi;mSI_3S`gzDlT^}x$-?)VVlM_Z}!Y1HpOWC@t+z$l>_9h0KX#h*}TeARfs zlHgW3gTsUvpH@t5Wu38PfKX(e^dtX7L^gOg;@8H2h~%DQxqzVw2ow!JFC8b*JF zrBTybheS0G+OYz@Ku+OdwkEXIA}3P3vVtdzS^x(Uh|JGXqbbHBROr;u;j{@&%)YQY zo1pLMmmUF`M@us|ji8@Xwljr zMRxdomnhx5$_^yFA7A4Rr=dicX}zIOtCw54j_@)Tp4H?z`Kr>GpMRr(!wL>=`|*n0 zERgmm8HLG(z&;Fo+5|4!Zj?s4(z_NWd}njeZ8XH*D(KS3WqD`)4zR3r9lJo}?5d)mDf{wZDW3Sz*K>T#u0pM-A zwRgU`KnmOX{0qo2CsA(3X_r9qcIsE}#{wO0W*Rq|{fI3ms&v-NO%9b-5X-92$B)ab zB2eYhT8{GD>zGN)Mxb+mzm9{Km7%J$vH`vT+u+#v(bJ|ROsyt(*SKXyXGVvcjfr3f zD8P?MPP_8S>MdO6dAU)Gz`nrvhIXM}31WMgC@ah}IHy(u?i%m(<_$!7G8GkrAs$d+^&4RWR1teZmcK{V@mI!NZn7RhxL<^?Pah zlDTd^70{83=v~TL!xMANt0wHKTi2Ogx*-wEd7@O`DzK}NMG39NB^+hr!9_1;BoKeP zCY~`#>&TYPIQZ4DMt{=mz-#0)ED~vJ7bP~yRtE7a?WvPhwea&uZHm<@kp_LE+R#}- zw^G}Bw+H8&2h5Klz-O>yg+xLq-HCzZcytEB4Hs(3y~jp%)VShU)n}FxGe)D0tPeIP? z#!>_oR6sNZW+JlRcRs~kwE|pR?Y|(Gilt~d(4sP6)CIYu8?wHKEPMz-`sXrFfqeu& z+vmtOKX`Czn$_Azys_W|*Knqp%7N&4P2b$AV#7|Nt21%CU9ss0xy1me4J^!FNq#w5 z!4mxw2*>B6F?rH&`+H~eGP1CYXKjz({J*t&W^!9@=CzfI)v29eLR7JF-AYdLfvZ)x-5s(dU05UdKAv=&a@- zPjD-9O+=~YGAH~1bP-gfJEK-`BD_J?ira<9o%K-G&665kzPu5KO42!~3p zS;4cvyrWR_-Npeg6}gDd3Jiw zoyDUBH80UY(?K_b!;oCrCu9w9q9a>2e+p0765kiY{WllJ z@J{EpC9&VZjV0W*wYn0NatPwdndxfcC7$L#u5jl4s9`!cq_aK28K6Av5|<88O^M>4 zmRMBigvkLXn{CKYAAJ4pU5j`I=vd7sK#*bxNA*#M_VWndPePoVUpXa64+VI$qW)9!d2YDpQ<_Whfs<_dFUa%ypxI_^8!V^XY(U0* z-h@vdWQz9iljX9sMO>;l>}njFP^w{t?&5R>PLf>1pXR-LUJSlgBhSBu6#)zO7nEb* z8L~{mM#75O!12w;%vc-h%mBfreqfl~$Id-pi+9x;Pk@`iV223OaM+1$07h68)KcQG=t5}g)BcYU~`mHBApVn*lt6_ZfWHkG2ZFL>jr65<%}t}1|) zP#v)v>$P6Uf+({s-^;-sNsEHU&#=|m$`3Yp&I%>qWzbPW09U3Bf-GCY?4FZ1w0wMm zSw5MEMX1};F8kKFF5sLwMn3?0IerjpH?v~ggjEy3*AWwjM;V36d~(QF^|!X9$S4IN zy@f`(!+2c}@PnA~594^Jsl1P0{NOp09-O~H&(lpPUQ$Zde&)<_PdlOw7~1!w>R+l( zw+&Nh>M9zWiSG06(HSy?qTeSiwst$ZnRq505^}$#m6_{Q|5g8Gn>Zbu{%q00pi|n& z+}&c;e*9Cz#$Oc7pE{2l8-aUQK%1PU3H0w-oQ0G$G5Z3R;F6+;G1L*m`me(u8b)z zfE^_|+*;SHsu|!Q^~9M9AzVslt!ob$rS|vzY42<)p+l`eOb$N~?R;Mc^ttcS7IqCNu=%uZC95DrUKVPb_`gpARpoHQst)W!3_NjB8McdC zs)KCDWR~KIb}MMqIRh^vNG}%vwHzci5E5hFCk&{?yvAU2MyE1+gE|4>e1&Q3*UZeWRo5(U2V@MU?4 z`2|26VTb5&B!@>1+@pCnLg&S}p{%~CuN>I>k2PuwonuWMBzFCo&YOA^0kKu11U+Vg zQ5z&D;VxQ7MrH(zkXE;Lj3mLm^MSYU$%$@4(lCU+S+w?>ybs=a4_*u-)$p5zj08`Q z$p=^G_!7BWp0|j%`!hl0=!xp3Gy|a2hCqf$q$-ekpmi{vN5rcgT8(SpyURjky zae+rq5i855*o{Zrz63+?t&lW;1bLcU}sc2#yOdSOgg+#bJJ$A`udN~JL0Jzj^auiU2^U6HFk?)^wHPDeqi zxx7m*kEBLLg?(EDwakZMb5ka9J&s+|Iw}G%OMm1sp`Qzk^t8xybF|)1Y-0xXkvGKF4>tX!Jd>F<;82>j}HoW6_*N>}# zxtMz$BGU$<->&XUfvOgZ@9VcMUjXngP3>vQMRv6ySMilMDQqAJe<2v4s$r%dv^c+G z8_h%kr=cP=wxw^znfqD9W}X*YbZ6!LTppy0EzdSlN1+#;d+xBV-A96+D)dJw)0jXdOVYp#yRLxDfzL)kniUF&`QJ99T=Q@evrM1yt z$9j4t$FvSvh;Cgu8z0Oad-H{qY%FbIO!aY0f9J3+H#g`0<_X^xFl{a7_<$Pd%?zJc z?!&BcA6=>B%nG!a5Dq}G;&l=;%%Bcei)4zph>GVO-ov@0ScZfev%j|PqaJJrubY)1 zVjY^pkgSB+OJePWQE=Ilv+Fe%931RD9Y*wCX8XzgMx>d+uofutP7vG}5jQ-H5{^F2 zD{U*!OV2+ORC@Z(z}Ba)8*(!g)MOgOq7B~;(x&)*&K*-5yfK(rYgA-(yP-$Y$cX|d zpZLU^PU6T(L02nkq@MfgFAdws98;F&@yZuVWIxStntpG&Medgc_{}A$17N^05vTAl zvB?8Wc}1;^H$D2DLf15(mHaT#NQ!I`1F6cy=()#fJK&oxZNFLdr56n-xKtwF`J$#B z-t(~(y=5${o%1WolZ*yIIa3|&sWIJGhmF$*Bq2S+res+NYj_#;$(R0k#FOPNCp2wQ&ePtad&~bRSsL zCCeN<=~(M5(`P@)Ly$yi!)9HoQ~Vk`Dn90w()RK}wyhBiS05m2xh6>h^8uLQvfq(U z9y{6vJd(BYYw4jE?nCa}0i2?nC^Z0E?Cbz-kEH@TtEdUlb-8n%#la>vZI z-zqtbmBGIfm=_>T%2kNJZ2ED*wX=Lgyh}_;@cZ3^_nU!K(Zk(ZQUx!reOrnF!S+q` zJl)wtB*7zYn{-uqzW@@A)h&_Rs@pF)3C$a7eLD{EogCJ7GFY9jx^HJ44)_TFY0Qx$ zD>34XdbW;5E_qh1F&{-`<)%u&ve`^sN;ZTTlh&3E0ckM?~RQtsJm zapF1uu;6VsKXj5|^`qsb%#A=AUr4i(EEXQ0>SC#FLOui&c+L%&TA&)ACJ7ZN;776fD|wAlCBMXI=?Kc54>hYz#uH)uM3k-kfy z^|c3q8H-GA>KO%yR4Q`XNn1bV^m~ezmO=nQZ>DgGPi1nC(~Nktv92h~M7_M2tfS5%|h^Rq*3On>Li?p379S=R17Qc*KMeW!j8^_}Ei+_WpKrQug&Qu6*|4n^RCCy@9k*O^>qIwyg1YoRnQ`?Fk(Sw|18%ZT9ONqn7q2&8%(}^z3xZc@Q|>L@t)MWAUnwNxQdGS-GJnq ztd(QMfBRPcHSNP@4#5dT6Db+@Rj%6l=$*`1p4pH}nxZPLnrxGnUNy=~L+G5RX3@}f zIfyE~)mh#*0!8A2%>bKaNo(aKBj^}cZL2s1OEJ01ECi}Zr9XSsG868A$3X21zsL!h zYYnutDkStjt@}`9jPI28N%pGgyAo#!KG*%K@dq#T9PhHx^qP}%v^I-DjCK~fDcEHG zv9g8UB#@0|CEO+mfqk`aK&>i*Yju{AQDP&f9ziC|!#^ABJ49?&u|^tAPIaA3>}=Xj z5#ar%dw)e93`yu7b~16S+Bo+;N=l$LTyfSB3nHP2(y==>;gZobtO{Gki^mD>Q*^K5 zUO1`{ZmGB9%kCuEeYb^#tk*^ZUSJNRY^LC>QpZ?b?*k=y}AtPx0@^*7X<dAn zZF#ApxE+V=2ZF;ag7}eq7=3Z;x!e>q%e`NR6eCL{JbDhtxuz za_jcLqdz=i7N86yyaJGS1%`u`&O@!B;}vr2C$6rpSQ|;+KaUJ}GIA7zG!d5dx0GcL zx|}~eMGb^FPzrS)4H_ufrZf)|dT~|Tf!3U*FAQ%rQJ8COzNQW19i9nIDQsK$x~$sP zk&qa}s9d}3^-(|+G1LYJ;v+wa1jV=~_AoRp9AxGXa3I)d%EJhD?uqReb!Un9-kJK2l4D6U9Cy@0`8PAmZDaG~ zFPu(N-WFHNeIz$CEWk1#lK=3r5aimbG5R^WtgD{C->{j7P0>o{*lL|^ZoG}dSO+u# z`icfE{om*8y;_L6N|J(y#1fBN_%Af4NA*vfhAE*i5hUg{*NF{w#*d`zGx8O{Tu4Xm z|;TA{{o$q6{ek56**#R&jt|u*u9aaKOEa` z_Qq9D^&Pmtfm#0NFKi$Srl8^0bE3ARafmD6!#;yLi^EcMKR-uI-q(r%JalT(D*1Za zMF;)J#?3M-J^6#mi<(^g7FJpN!S6BsgcNsHLM9`6sgc0$xz12kK2DF-!Y4Q797@4# z4*od};5CQ)rGNvop@96pKB|1Wm7Hy&b zXsz=w1suqEIyL_ej~xB8fPIVJ^xT|HqcZPdua4o{136_|qNmaq@fXSuoR4*@AHTfG z*~_AHFcRt3p<+}a5|AyeTPDCwmNu*BD<5A(nl;$TNWhKP_!zWH#-s|S+?QfVIMR-N z5$Mtdp;}BK44mmeT#h`ITRyJwc3C3A5t1(+Iys%IyXus_JOz9ZtnKNhgy08uWFZt; zmD@y(bez+rQ0)id{oe#@NlcVWk$}rE1fKxOB6Ms~kmY)qM)8ca^6PX%hV*MzgCdTg z5_1Mfg@UDveY!j`4yllLM%NBabmQ73w=_moM$FuT*G|Oe`v0TSE88*_l(IQ(>E^Rt zv1jwhWbFA9IU+pZEaw`#Wv%yl49C^Chk*0iCx|Wz+tmq%SS!6B35mXn-A~0r(P714xr-PybGt_1HYxjv^jKJ z$i{@c(X;P=9Yjpf4=u)*l2GVA?7dR$cPYJKctCtQc277_RWk4s)1BCZWT$rMDKkPI zrO8~$vvA-P*g4xVDrl1H0^s$FG zcV3$|?kJlnj6*BGHr13?BWH0eB~Vk?t^!wI1QPOh`X1_e!Og+*V!V=xSVG6b=b&$eso zK#^1eD8-KczgV+zf|m;FF1?yPMAyd;P+#{Mmyp}}!vPldadopc#XbpigVuo(t+K4p z$G1IalyVGrBgz*;RPR|7gBZ*rfBYB+{|_?kznHZLEIjPemRS5W2eprzSBOwn zIa^NeuY}hLWb_e-Q;6-&yIInfyx_RTe*G~`aY#owCLN2RA9)mnmXgfwX5p*Ol;W3o zgB{Cmt}PMn5p50p4}aQU)<&l^dAVRvSb+O;sWxrct$RR{?ety3M$0Ga_OGcdjxe>ITn*ah;}sE z2`M7DE(3ZH#H(kuZVDjG;}rXC8~+bIXL6g3yRS>3uqUavd3t3h!^CX`d@|cO@nM`4 zI`fI`w%-glkIRwqZL);&ir(D}fPNaMRL3IG^-uxwhGz1hfwi4M+4tqCxbyhzWja!)SX=K=u=&ds09=VK;#E*`E({0>!_ zWwFr3$eXcWfGyU!9|Rr*fn@3&d;QRs&5GN^HN?%*MDRG?=Z6|wBSj>raP zT>d_^C86(JB}T&EiF_O&;Y}*0jiBeFDK00A0>=kva=a=j7 zn)hA=Me8rCIRbyXS#6Z&W?CKl1|Lv_rB}_d?Q;NMnIF`W_-RNQGn5E(4rHdX=G`T| zUDH}RhGCTLdkPTBa%=SL=8i=*Q}o+9C8@p!>*BNCGB+# zr*iKc&I#tNOYNM>8%ak~=?7nr>LSBu1vf1-kt)GiJm^Y3lXj*->7(lBq%@(=x9t07 z>xfe0a>JmxA~C3mEyvXp%Dt^DOVSBJ6hFGDywr@{1S3BBNt5K4R9++#7w_$=9JB4Q<3%jvbDQ8LY)a)0iQ9qXWg+~W}81CAxtI}{5KjwZHJ9T!kw83>MBJp0V z3EJyrS->f*-m1*oj$+T;Q8>QM8qI59(Z4u1FfL9)vldKbHoTIqYKx0`yc6w4C%IY4 zK(Q4m+CcpZnDSnPY>S&C&WJx%z6}7~Z1>jsijH_yy=K4o^=)REI;!lQbY=|;N9<`n zX4WLspY)`|VkGQ1LCTk>7YU_(UvV2I7v@wCA}rjCzgT6rk)W02l1WjSTx6rFi3(1a z41+Irrs}G#osJ}2J)jjrzK9I}2|sQ{CEgBJT0g#07MMvg8=SJ&BaVuMoB>ipR|-lZC;AF zVp4|%+@N|88MA!y4EeIGp;rkz=!bJ2ruIw-z@ET7xTqMYboOT+#7BJ4$e9g__Y~9m zml)^a!?6LrT{h?%3y*n`o&ps-n$EMlE56F1dZ6a=*JYvHdObrO;+gwOO%>N!AuVNw zl`i&{gS6RzgzMfPj&3#4hI!Y}%5}qTxX_uKPY%CDDM|{%|Jrf7+!X4Q*F|#XQY&Nx zn?Dg?;#7{NY@ck2O!hi=wb)79_f&(mw^OpWu~jz$=8AMvT(GKs{=wr3O>HuvtJLpf zSHahsp|8Ogqs8G8)aOyeSXrXWg+wfmzS-BCk_~wy5@SQV>tD!J^D^W({$*4-6um4) zifmcq`E=-i&Rn=QJc4j7@km-QkX|@C`-{&vUQ>|3bY38&z3PjMr}`x7Gm`|?=aga- zs;P31CdE8~k;Buu_OrN*epHfS8?xcs=>-5y^71zxN^;TAMrg`2W(x!Zep>jn&bdZ% zn3JtxS+ND3u|Ybi?8C6Lv`$7!Mtg`E^g!#$G~&LdVl6^yNZh);24$=5l|V%H8*G$D5YM zOclKP{!h>@K**qDKDBcs#2G3s9bYN0Zvz`B^Djqah<=U$Q2aK-bA|% z8TW8qS(ILNxgL_NyJbNC3#$`jZgOjO3v2g<#Q7#d0^vJ?iZ4FNZI=Sx(Xzb{XEr9G zTO|3AD|B0C2_Ft$@*l|%3tS^{pQ#adEa(tCGUh+C#S@bi{oFOO5|e9#Mv<2g##b-r zg6BZzv(+|Yk)P$IiMWcQq=l}*xQQ&sKyKbVR|=DdH`8Xfa#8bLgp2k#NYM<4tM@xt zVyEXgse~Kt_?>FB4+8$Dh_1)_sL3)WpqK4cZH_P^>r5JN5sV*8Xg@d8-##{nr??WH z4}ASf`zrF9s4St7H)K8OhW{=S>4eb9zAem&G5N(8fVqK&_*sFJhmdo2cg62L)=vHV zj2D5rOM$=3K5_P((Lh~li>GzeWoh_|=L@A)wY-@& zlZM4khMdK+fe#g|)f9Fc5LR#};*`6q)g?CwPT3C?D z>7oy!_eP7PTclx-YO*c>RNtd^Y6H60{rcHZUhLGO79-MeOPh{HAf5VvlFj<%_WFz! z=veFD#C=Ehua%PrXUSeQ*`R(zqmD1C{a{iO*)_493(8Sk(eYcD zm#?6$>U~ATy5B&&Up(+!2#8?aG3f%)8XAVNb;ws_+Az|)`cMb0oI`9z%I=-|*F)On z-TNlgc$n3kSN7@5BR9SY)e`%!*Q8yuLVv3Z({5ijR4nI{#5}|aqIU?Pm$bD}`1oke z;PvZNfDcxVpYiib!Ae>ZlA1rH9lzhINTQaR};U)v&B958gD2x0CdbFZE3ZfefhQ9o+GR0G-B!KW_7^itTNV&N@ z8i|7s!P0|3JoLg>;2L^n1Q$39IGV(uqI%NjfneA1cITHWCuQ|J$E>jBX!6z>57#3i zy8UU0zRx!pdsQXt*Il%Nw$9uy*9kHVJq@=5Z&0!G^E<7~JiAu-`}9JrU$XfxI(zuJ z=QB7Q)KicI0X}2RG`qEOt^wEvRLI7{YA{U}yQT@ZU>J^Xi=cQLk-~nBPFbZGfj!jK z@2))6<{;u@^9UiHZAn#N{3w;1^-C477bL0*yP?KY*)}E{tO}xH`RWD>Z%TjQX+3O9 ztJ(&)|NWZ$TnX_MXVYWALGysm9aS>7F23CTrWz-G>S5Cpb{LjXx2lDT&WT4_04!5D zw*D^mCofLT$j8QR%EHBWSjfLr$WeLh)`c_^+T))WZ0ZhqLCvPT;J%^y7VhQCSudz2 zyJ6f##lt?cMu+Y*@hG6fg-2?IjTkwO#as2nA#FbLcF#40a$c$%)7mg^CO5U2|F#&K zmMOcZ7+FO)Hn*i(1)+nj20Af}*F5d>%WIJDO=n+_Xa*qHlz0u=ApJAQ(_`lbscym+ z6|ZR4fcHU}lH@kLMPO3H+d)f&BO!(Oqef& zEWWMe+Rh_JTim&S3Dwc$Hy3*-M+^@b10!Hr1*KQ{+`sQYp=w7h0p5SZwo!?=Lh#6g zD*aGh8)l4VTtdCLF3hcF)CD9tm5PfSV~vc-_LD3`IDS{tRaE1vV;r@L0;UpO8dTkxd@^LBba&mEuf~mbN!IJ(YGI?28>}T8!A0 zJT3j^xPR4I_8$C*ZDT#-y16RG5CxDvnI>Y6*qHu|=E57>Pq0=`Fz|&+g+PJUbgHH0 z*L1!(m;WistPE58rK=3!CA2sd-Bw5(KY&q7bHaozb0&tcZ>v==+t(@Cqs;k$S;F)G z{pjt~2N1So!O2!qIWIO%99~AZFpjh=`qevEJP@ZYdoIw2zPiY8(a12sp{*iq*Yx7L zfE{cGyQ|Kt$UE)*s8=ADV9#VX+H*u_39C%Grq4KGts(o87Vnsi9g28!jUkdpIF=}e zu0N=Go{^3L8g-@bJ;|)zSP}*uJ}7>+nOkN$myFuD9wRh-{s)N+^3%%VX$i0{@}C>@ zjF>bkDh3wofpwxOWezFz@VxKYq2&ebmrd(9&9@m?B86?3fZ~*Isr4lj?M06=$o_(& zr>e#Nkftb}`u01n9>!6aA<;llAaP3(A!iqC!;jSoNVRX?8W>rvU#BDFr_L%1WWnBm zwb(aj{`fM&fH?^cF5*3zhNS+Re%<}PTJxYAriqMi9K>00@TOIhI;{fai7n&C9?@d6?XgPMa$V0_NwptrW}j3)ajE-iiEKUK zD-O{MIytxuCNL7_noqc86NWGWNNtB>*|hq^*s9%!uZDbcYF#B;tuZM$%171$LL%eM zwFYMCSG3PZAAEtY9@QOSZLO%b0|$qe@Jpuvk}-9sEB2u~$25rcqi>r4QFPu7lcodn z7^MX#yQF>d)!rCnj-TiOn;W%j75gJ{)J^hfpgwqO7IEeSvFogZ+At_%~VisKnSgH`q?J z0UD+6x>BwS6ms5eZ;ftn{?}T-vIkr`o>Y8*=G1SL0 z5oZyTcr+xII{(TEYQgaQTC~n7BXD6~(Nyy7m0rK-;AX&)YGG%Omt%H=IFg~;iz*D+ zGG)U=mz1nSnzRv3z*I*EGT|b{R>_IarL9KM7ARdDYnNeytV(+w|0(cNT9= zh8sCBRhZD9m2Pnj_*#mWwN3UbgihV!+Ez167!+oI*9s@uk`uV1u}2CfljVa*S{dG) zrJXz~mTExJ{t*Sj71rv_!RkIKUS?CGd|>T?fEi+I$z0qlNh@(fje^fPG6f3}56xQN z(19pg-01?9jx3OGUNwn`}wfpmPJeUrnOZSxDy?b!K+okR|qrDP8E ziX!N$y8_&7#=`iXFIkvbRaH6Qe}I-`r)gTq%dQgZxfmwc0O?vO)y1`ZTOn8aeI)i8 zbAz{$iT-~>TrGL65MX78NHC@1?ODQ#atueJdiRMA9GI9ickX|eb!P)_=5jszs6Jbt zC5VKKc?8e{9FpgI`JjhiWQgGv;k~-h{!@x)&@AD12D^E&h3twrM-WfK1--xnEaj65Sa)aWR@@J|$o3T?+h4V2b9b4n3 zPQIihYN*FPj_pe63I%ZDZjmLzBc1=v?jxKRqJwIk?#kUZ49hac^7CVIM zM1XC}U!{WJ0|-lh>Gp>lE-wd2YnbSGyiV~AjS>oRDdz+Zy*)v8vevCMVAl(RHCQhF zld_p!wSIjVqTcXp^6@YsN{m$S$;iNeSw&~RL}vdm#*#}51rzaL^|GBhA{o|uYm*gx zma^Q+6IH??!7f=p)sVqC;Z-7CG~ZYep;#6?2FNUxH> zFY()({<*gScSBeSuo?{qwKuQ4Viu9&IKZz4Qbp`8bKmkLZfkYDYOOAah-FO6b58Bw zYheB{l9SzNF-9ePq84I#3Y!ya^5>4!HYje_I&XzCTZ3UIY5yr1N1dkL^`$?@p0X)MBIviSJUDJBk$!}iB>69|L6)#VVxHKhN+nDYQee3O zYnVCU{?B=b9_3yPrr{Z>fc!oZ$e&#RT6KDHQIBxVi2W~@VcCc?CY_Sofbk=)s)(nQ zNV#O)+v-7IME#C76rHZ4HK|rRqyoBDj(*!T9fPLxOXV6UY?VRED_t>yGa_o?Z2>%M zIr&6XGE#riQ%oNgyXB^Prt&h5#05zW!Xu>uF~89w1_Mv|nX~wUTQR93A(j}W5;cQ~?v$XmQMDm@g zo8B^5V?rnl=~mne#J_q$c*1wj8Y!^3p6IUA4EDevsM|&VR!}Fq-u+m+Y#Oomh&Htd z^~R%%uyMd)^`0Sygg`{U-`F;W^=qi~1uUBMD>&Ev#|}-bHrk>L%KC!1$a7L3k}D3b zZMLb)!{9ol9r4nXHB8#G1z6jJWD+hG;i&+_Y@3$>l~Wo+XcO3+j93ndZsfR@v zXzVFz#7@$w$P{!Ng^}H+&Y9#Ekq%GySsUkk-8b^8H0-Qvi)7pr`6+88ctm{dBPGjF ziImp&8PSV~$08EQdoe!V0~J+Ne1t!eVeff8{NYkLPTH%7CSOKSq}XDH-@xFI1KTy4e!Kr$z%+aN;Cn!O9XYHAh_M-&;T`V;QA<%%^TN>mKywjhN@ z#0*{Wy!x1@b1DGEV`$yW5ag-MOY|i&TLfH$-@s$IJ5Gxcy(y#h_I;yogt@RzK*oeg zupBaJi+I4I&U;Bh!&00M(;~g3bIpe)^B!^=e^QYnp@vtN(+rl5_a+!Z`- zH(DsAj^N_@{^f;Ds}njOwAMR>4rnrMbl1K9@=UeVVKsykMaipy2@)$BI^kDB*H-0P z7y^YY&R-Mljx*HjM^~NbJ8ZXwuJBPH9BcaOYbJOHazRHjeLj>()NDKqEWMtc@D!xl zIA5aT^3-$qj6JR7BI-6FyYaEU^JEJfT}+laokl{Z5C>CMGb8Gax)6;}xP)$Zmkw1* z+0acxps`Dy0r9?#s3ejgR@nQf4Tjw7m8EGRBv!vEaPv-E*s+vA8)zl3F_Vfx*vLd@ zJ|nVL{HIGScr+D7?k@7j?WbyQ8BM8ZYr7~t3SeOtR+(kjiAk`~sjcBO_Jlio$5GC$ zq^7gN$%0tkpkV-92ujrOY^7b@kL;pQm3h;61*UK=-FBxwPK(X45>+Je7rD0rQB!}1 z=5BeSU3@?9QD>Sp3|wt}Hx!KRX-tAC7;nwvrHKcLgs3?E+j(MbE%++Blk-B~ip{dI z?wjk}e!V0Z+`*~fs>=}nN2@8pQ6-*9_1%supV=d!;~zMi$i%ENidw#k)dd`jdX#jY zvUG(l`sZ_+xP#E{q_cS67Ebk8hPWR8PeoPwa8duE;y``Be%s8G*FBrI{;;GMP&%-E zbC&$O7*QTIGjnPMcjqMPclLFl7BJ0JK52=zHzo_fHUr9aB8Cp{s^N)tT?cOuGgxwu zZzTH@s`4*lR!#mMvsW48qvCJ*Li1&-*E>YI>?sg-<=PK>X+qTzd8S3m05J?ON75`MPi;D=~TjP0DJ z>X)}BzTJ>Sqfs=4g>JZYoGwBSvU;&$^O_<`Z6UH8ZWXD-0h!A)6 z^|&p{&f&jwn$rxvZj5*pws0K(+pAdyNq}M%RqOMh{uttlGInO_-M(1G3TEPwOT)Aa z>4D8ewe84(2>A)L6#NAi=0bQ_<0qN2>JIL)%AfKQg=n%eZ--Q+Z0nYYT&&+IWb9oe zE3qrqkLRNv%x^gQW+z=7RiCDtADAKdPruT>+B+&Q$U-JPU=1sQ4t#FW%hJ*}bDASI z^5ytvA>CqjE3al$A!L5kyeI?iES-*NfAOFZ5*Zv+b8-f6)y37&d-TzWd8O$_mAfxF zny5*6j#x-Xr^}+D7lHEVtP+T%kt`G$qqw9))JyDa#pDbug;ZXAJqiVuEJp6e7UEy5wD{R2Kg)x%5|cfIPh1YUd! zb8U9VD0S$$pRM^q15iTRKMODyFJRe*Ss(P7|%SL+_7sAln zM?#qEb<^;&IWQr_1$!s*?k6X5C=GPevPSfPd<(PCbb%{i<Z& z@UbaQi35^@t*>OcF|&~B*X)tV(cV)riz|S(BMl{J_veed63+~%*_k#u|c)e1g`(t}ywDDpYq@b$vwltO`>s`RtQAg<>qA z=Qt~<263sv6l2U38~PIm%BVQH1Y}AMlVokZrl#0lVko$-hl~ZaJh137`c`y6ej_X# zAf>xM;fX#m>*S?*00`R9jDVzmx#=>*P{@RyWpD}E`U%S5IMDAGF~NFlbuJMecX`Ui zCcA*dX);I-*$;L{-QU@)&*C|N`vHm!-Y>(}LXM@Hl}4#L^#i^vbzA#6^)Oe@_WzGx zCBh=uZ0o*uakL@DUyh3>OjT~p#8l`pMXjE1u9AtIh4$BG-|NFKl^Ks>pOS+bLE|w zN%i+O9(G`4peO~@@o-+p+d`hBbAV#QM6pc-7E;N9z7IamfA|4vNu9`f8c%ez)qM>v zxabKI3&WhU9S`!Ym_SDs0NRsFizx}z%vt{ei~OEcRT<)?ej0)K8BNAr^YS*^KV>Pu z3)94EPbva8qURnvKUKxiqf_oohU-?wrh3jeb}qhusi*bA{E&^-6UP z36J-;#1!eywCn93>NtV(6b`&+*-+vBLy;)oPPUnfg3t=XU{NZ6G`tuM3|0l&6#aY$8i&-V{yW7SS|vsRD(1f8RN{4s+H7EPaJ6xdj5XxsXcD1w?v6%=B>iq7M! z6w-0^v--dbMGj7qZbK|PATg$cUXWP<$d5Dj@b~h=;AyPuTr|WXn|(BwLZzUt_=Y$R z+&-z}hLi~nfGpK**Nuw){oF#$sR1hW3r1x*h$47tmS(r3$d$yd11+Ov0G2rsmM;yRcr;A;fcCFV5;SvPI9DEmNBU;g8v_$J)xi8=g1(cI} zA{zR&YThUf-l7Jo4=2=5)5No)6L()T0UFe$y`B10kw6#R@BYSGHyTUX8$>)vnf)0fI^&vM)HCAu(1wOb);`06z-4w)QuA{N zm-67v6syCLeFyp=hN{Y0wVX{XC+^IS1k;k|FFHPFRzH$3v^;Fn2cYVa-FWW2rRLA2$U(RM{~^F*n8_sL2g;b=RX(e$=BXW8vRF=3KJ45Z%4=pA?pZz z%iZkWa}x~f^uY30@J)1fuT>0ULY7}S=js4EK*Yb|3#wFZKa!8jdN2rT2lCgLk>dtJ zRcg1J^%q)y#~nyhu+QBP%x^J)$X!Ai8s+fW5n4Ij$2o33{(dg9iMBL$iBA zq`o$(MbWb?UjeCdPTRm1X_7>JPDYb5xo5C6YRpSel$yPVwgZK7)ZI@P1St8fHnjL@ z>mOk%&C0!d{CEe|ZmElz_R*q=+OI2H$V*Sd*wD#(ZPIwdx9=3`8T{n10KHH5blKqv z16m0;VSetoDGW_cKvKUaB#d8C5g?pD24-7;r4+B34+E~W~}}nY~47z znZOS_N2>69E20lrG}1tXoQiQ2HoJ5SizIl-H?(6$8SyAB=VJixj^MkFDBG}O*E{KT zPP@V2!slqKY)iGX=}_wfZ@{6u_6fth%Kg-(B$-W5*2r`EYXa7OFjnH%T`o3X|oC&9it^v0Y z!B*rToGtt=q}|@R=QT*C3#{0$)(`G*G@)goN(dPBF*<<2go&DemCI#^yS!?#)Qgz& zT|6!-PK@|18+;Hdx)%6!3;~)YG&A*{tdsRlJys5W z2ikn$f6g|W8}mr!Ob0f%0M%Fk0MMx}fOspb2;3bIMB3`7qBt1!o(YrF7qL!@1yy@b znbybFfkr+=1r(IR$|kVHz*XO+22S|i5+y~68UM0NcON%^f-~RmnV>xBHdJ zWZ4A&D|1^uSu=W%9{R(I<{;X5s10NVQu1Hg{koEP?!i*2gqpx5=R{PUfl_y>((F<- zv5;K7g>U@8kwn`F_@YbpJPhv*LSz21*=%Q)KPgmI5`Z+f-^&hO{FP06KBS6mK+N?J zg#{o2HtlU=6h6t=@=KHv-E%{KF7TfyAFQg5*eOasw!B_y_)28L;?Ovz+I_bTGuAjy z#K7pPoBZX5GB!*zfjIP-mJ>fpoANNh&D|^ces@5OA%5s5E@c$;6i_Cy58-=jxHaKLt#R&5xNYGAbMieNs^4&#p~A^=s;-?}r=S5xeHWHSEZG z!Iq|>neYGQv62zjTI zT$&OnGzbc_f&yQRNGNV1R}uf&OnF+mZ7)>3WG-vi4)ldesJec3Tq7c*c75cT2CWm> zB)^s;pC4?+^Cg%p)gmm#-Yc*ZI1L4*Y|y5bA`ZC9kB+O*1~AvjwZ+_c&0sHPZd)Y{ zm!IlZ8Wp|aylL;DO3Dswt%@m!rHjW#LNWR;7)VrEeTY)Tgye_RWSd1FrxR{BXbhTw z+*wVf{9sKB3&Nb#3~vmqZ&Kvc3eM4ocsV^Iwxa1Oqbfv}59T1D?`n8{w5(-CoRB^l z#6R6j>TOT%f>LreRIAgS{mw@iRBqeW#6u|zx=*C8XVEs$O$UQ%O(~C(e|`C(`J3#2 z@J;}p{e6z(DRT%q=`+tU)R`Ik3%i3ac3)O!B)xf$A~44qT-2HCVj|cw$Rkho^Z>o} zS)^&v(sV-ipOTP@aXDt;WR)#_JO6pM{qqh}?+rDy;5d-nP_&QOo$XLYuLU}gG7~G5 zfBwr*)4htE8<5hVnOi8~Rmj**{{v@1;YR@3k~P{4rUAtsPsi#!JTF=YLZJsX;_o@h zK#u%YC+=5Z&S~G$8i(g=DtTyh*itLc(T(G6_*y@wm%8ifS7o9%@P|bS!sDGO=;s(c zLJjy&%Wu7{3Y)U<863z-fB$0L;5Yg57|)mYg7QlWQxFeNfNTKA{a`>^ltUlC;+rkW zn0F>j`KsOqN(r%?BOEEKb9MGC{BIo!WnepVkW2Bw;(8`)IDH#lQA z?#;l?#4KW7*+BH)9-$r;+qUM9aO?ZQkZhQFthd9-*5&ubhHmic8Ql-hL zirv92sE>U-#}OJY%_6`{=Tolr^K6`w4=;X)ViFcQ(iQYwZjl9tE{GiFJPaM*2bvjz z?5{b-2;vple_fU|=z$<{$;gsAin~*flQLm2D})|rbYH*4WUZgipd}6(YDnHF(m}A( z-m@xwr7rDC0}`S#5BU?Nu{BRyzIhHxC)X4Kw#=kPUF^ z)$9|Q;tMd#mz~GvdWCor0CS6|_|vg4dRAukw56hb^`;7lPwm=(!w{LnbaObV*S$dc z!iK5U+i}wVjhH8>7o<8@&T*k^?YcB=4p`7gL;@8lA|J?`!k5^m2}%+ocXzs~=vfT- zV&glC1)-Mx!oi{$P7MV0J=)Us#4vdVDmjKE#qhHL%lq_EZ!cC#<@4|jHd=;LbPMPM zW$a5p?(9ZJn7oBm9~^yNUJOKexNn)9WTxg}?)kFhH8RBCFZDjVp|2e!@&`)I65X4? z32Jdc?ctpH!lZ-~@`)S%Rf}u#X<2x&wey*keaa{-l)bHx?Euk<1a2JIni8OC7=9sf zZJmHB#T87tKaC?}NhY!0U~cnkI_4tqb>TVs_jY)YecHo-Q-jdn{2fbS>|J*a-nBM_QmICLcACAc%&Q2o9%P&FOgo{7XWR;6%lj(nI z=5PfhiKW@0A0XypAh?1y8#|(Ws$H6TL}S}|;TP*pNIx8Ly`1&Fy^CPIFl=fYF~BfQ z!41^|wBb@m5+-q7Fgo&LXpt!YQz@^Pf9);pdTGPE6({B8q_&|f!Ak`tz3oBn4i`F!m&G>yFL+@~{W-HT0uTH7=5RUVHkPx7h3j9gWp+I?(;QHFAXID} zJ7dGg$yu$iG85-zV8EAyRR;WyYIoM7P6qVd4hd%74I##;o4IA5di?8C%Z@i3iHHV^ zKw=n{UMiFRA%?z{cdQ3PzJn}XY~Eg1^b5N1qo2eF|9sl~%9}L-iRX3a>u?)h_2=@x z_+KvG)Cm0{XJ&9J)*$+jNXRk2MLgqvDVJheKvlb;THfq?hyw!^&Wc>Ml3*B5tFD&@ z1zmiSaXQVT|E@6nXCdtHQ}j#|pEXUJ`1;Ffk`Zb-xn`r#_;t0n*};5I*#(`Y%%RQ^ zXNZ-*Rt5dz_T-KaRKjf}%mxra>Eh*YM-yZAm_p*+gGsaAP zXl(6q_CoFod<$b$82GiDe5pQT!W{f$?Kn%WTnnLPUs~I-ft00_*+PTXUB>L@X8?TB zuQxL2;uT0R@d!Oz-4S{bKX-w>e)F`I*#s%;hK9#7&KYEViIURASVPEXvQtlWzgQZy zW{MV7SS$`^sziu@5B5Ms+O@}<>t)M;$VX*6EK&G`=R(ZmTS`C9a2w0y0WnDd65i$v z)(O%Py^8o5itbwiX%$3Qq@^w>qGH`phc>^lcLJssK;dCX{f!DbYh3{Rt|9cslW~2F zWsic={#d~DnCN-qhG!g1_Ta?a66`R2(WnPidr>h|6G2N)q;Zy%1ZK!=xM@5$VcZKm zu=WT(88-?)ykH%#v2@NUQMbV>8z)x|kO4*VVVU}W?o5NyZbp6a$glAuX5cOQ3fO(V z%uM#2{?w?l;FS;LLdv|ykx$cXiDJWA>r5u<3p43y^W+8vu8P)!T>rjhF34&Z%|i9? zWfaa&HDmnypp|Z-}yx z@op3dB7$DuX8rg1I~i{3G|yREubi9J{x3<<5le(jck#+edknU`{c|H!yiZoqkxjbc zI8#hI+4-foE`eCpXhxm;Xg@NAR@^N-;>MGIab1 zOELb)b0$7o-C}LSB4u*Vn@CY8OzE98`d>>ndQf8Hj)yar#i@HRb~H1jO|t>Y_9_bo z%(TW+JpbS}Lbp_Z8y}9vQlzq5=3r{fiJbyrg;Lk*i2YxUN$iMzK>cGb85I-53pC0C zro7%@-z1KQQk`!egzDXA z#?;sU$ z8F25vzn;K5L7MG$AZB4pqG3Qos}Z6bd)LYfDRxSBvmzg{ws(NcQn7&^c$QutW|*c2 z2`qdla}#Q~{`M&+|LdKGZ!NeOnX?K77-2YRX2#f z#g^cJ`m;rJv;kbXtC&)*<252xCeqJSX~HO&&;0)f^0~7luT&mIv4H!zSBOgXn}miq zrDMez6wb}D>LJS4bJKBd3>TJsg8pHa&-AKOuQkX=!y*&kkg6>RS$$G$*w#Kj@6xVs zt^wv~ccijn2bJgtSsR28oEQ(STs&z^CWsfLGZrw;6AYy&bJ$`vi4+ZO`8o-8SEBH6 z2g@U?7=#g5IeLrw)RVZs#hQsDcV!TWNyvE&@%Q4I%2u<}1K8p9*0x|G;P=^if*2G6 zqLV-9&Uh!;DROlG4pGA*K8+U?*p5p?B5-9aX(7?{;v=z0oV4A2+p?uwp2*?E1sj0S z;S4H7I6E4WA9<*11XBws4Tysv3T|;cGwJ^`{I`Jkb8Pxm>LoIK*wV#wV~#90zqPxH z5mAa3C*_fZCD6|1WNfbldzGxhM#N{m<+wAZDA)5)F}|U=-ymLry@cKq?k*01y?Fh3 z8ag;{JPNLHs^4VO*t@8il#~nWB2f(3QQgWcqYgykG{ce2V&3rfJLn@j0>3@=dyY~I zo1z5wLy4BTo`AvLadnB$q9p|ZH@cJ~W$9-API0*>e{Z6FTpG;<$KpHHhOD#^yg?!J zXS(lbtYYZ;Ew97xMM@WWZ5cY`vlkb9+6a{dbGGRU8>1@Vw8g?jGwgKp#Sv2+TC-DbG0 zXo{pi6h)=R%?eZDYN!>bsk}=vRAF{r$GV(bopqd&n(3`@x;eid4u}^kYkdKCN55uS z+U>@?I6PgH(Xg&ZDoJ^r?^SJ4+HoaKv+iE+qQzg_ltNrz07);%Ob$ZHC3p7nqR1La zzGV4xhUvJnCuU;^WU7lODEs-La&Xx}5{aML%@D3jjzQ& zr0YHc-%EaPLllw@aCoMftHeTfUs3ZP%n$Lq0aZX`6ddSk#bb#1Gonz>iCYeoFf>S#SW64HVs=+OWVfbf3> z95BecZ%>OVl3qWg9fhp8H&xGyD5E8xW#b?5cn)(Z#tHou)T)!0W3IIAi@!+g{5*Gi z>zkxF;6ytysEIELP2zQHt~Jo%tyh+}uR6j#H~botXSd=Bk=|sN(A5}LzmA6%nujE# zhT@J+=bm*jD8BpCh|=^l`9rVF$~y6uq9nLRZ8F-lvjnn_z!AmyHl ze}S(=k)N#eY2q^03Twee;??^cwfnztZUc)UIyX}WG<)VjV`Xz2U_iFO1`7m#rbg0Z zQY$Pqhj-iWPTMVxFN>EcQn>X7I?c-IxFgBc3(oa>*Fnp~3ZHh#%HDeaH^2=G%+&zx zo0hEiu;$2rm#7Tyqu#;#o{z!ouf{?>;^i|Kx5(DP=9{yUc0MJiMD+Quuf1n<7jyzcaQs@_)Mj(#OY}yT2#QK%vX5boT1Xyg zQVvAAYQ+iYne@c+*%#XZC4m-s=Hh1Q4PLn5n+s%e8Te!eLJwD8Z9 zzWsOJN2xf{+hE4&+yVO){%W@~(hu%Rht+q{pZW^P_?F?g1xAXMe%EiPA-140EE^t&P}8sLub@`IpTuk zH?D^btAee}dqg#wyb-pogQzp1<}`_Q!TspgtBpq()RhHJfPBjMnakssQlcd}=n2@l znLJ#l{Kb#sO4X6+txDK(*9U|a|T z5uO0MZmEZ_3SI~3aQ!8IJ&?JC;IyX-X(@=)1hF+L(}ze}BeXqCptD@W>Y6duVn@A0 z-ladi&mEZ+L|g<8-bGe7xesv78CtxAZ6uh!x!_E#EO8)NOSg{NIBQWmrQ{LU0BI96 z*F{P|tQ0*!kyO(-Efd-=5&Qf}remZ>R@x#7)>FCFw2KS_q3r9~gBUmzTk}`Jl+La2 zIOkyt!#o5jBe&)sj}+>~L~bDGSbg3{)rlKchQuHTN0+QrCtVZ7Tn5@pImk5O0D1WZ zXm}U51}dVzW3T~rUgz_51G!qlJV_o*B^#X7)4Xs0lX(At{Izk^6g%{$oGE&h75X8M z+@X+m-fQo;q$XNneP!1Vu#9^w0CbqE`~&0Lo6z)a1xOPH#9ZKSnsm^HmrIzd-N5Hk ze*@cLeGF&O7JHPZBwPFV$JX=RI=)Re!h2(!18UMFzT~0IH(BsLuSck@x+f)!w4Hb? zl89#a>BV9r(vT?klMqg~U_B}@#DF18-`oG5tSQp(V~lxGkwO!t%eh`8(ym=1rjDCgrBY2ewmqdsC^ zMmrx0V}^SNQsAUx4rYJWaST}FZ574QQ85~=%qJ-7U*F5F#P2W}xMxV+va&ISI#ne4lqnpR^AMTUX6SAW=Lq&s`E-*g_N<9Z4DgG z21(+ul;OstKGR#!h6vlp`Lz?0U>Y1NiVZ+F3w}8r2qoyI0~Qqe2?O{x8(U~S8~bqY z4o;VWScE~Tp74pi&Hu3bVsl4yR-r-y2a7Uw7*G}9UELt&&2uP}nI&vUr0Z=%59rnj z+{={LyTloU+Z{tTGvt*aTSuyNOp5;N6DzJgz%U7=bUQ|M){`t@#4wPzn-^0_EFu#P zNgUU*P3Lq5fz-?egxKl#e?Zk-3D~n18ACMvXT}R>P8aXr_&k4^6bii}Fy4MsMYPSl z#AV^$;T)_;hLPvc&-|P1z;B0Nxf5=7ZvgfLOF3z(j&?t2X6_w|>Sh`=1gOAOS4t|L z49nwgwdaIG?##X(ML9%5GuqxUDb&Yn7#e7G5NA+zBTWuFDp#GDS+A z>@bj#6ZyS^l4n3bC9DgD4UFe2l$9OIbNO=<2o}zyyY$)K%Ze*M_*s9$m`}%VsyRT@ zeisNRK#@?$uYXE0gBi#{8ck1|%>1rPyQAf+DQ6n4Rb6#w55ew7fYHemtfCD*xK(S`-ms9)+{iAvX3W(g(-qx2u0uW^OmEWUHZF(h5Bbm%P0 z8CHbGpaSUp{sqR@?|pp~WdzmJm-)A(BvA3wscP|;F%PWeYr}*>JeK)(Gok2IrC%N) z_`XG$gNeQa9;8{OscO7P-9j&t&5K03kldlOG)0Q7s5f3ol&Sd)>LWcp%GQ}AU_(`> zV+-eO=)|E@lsA(5AkesmFY8fGxo|MVbNoun>ID#uFsla%z z%1i48sMns7)7j62$OiCq(r6q#R&jK0OBB>Z<->0u_gC;GUMq0qoP(g+dZZ(zT8h_V4HP*d1rVHpl)I<|>%kix zyRZ?Cr07fGS0Nb#AK4(&1zT=v35oXL``O<|83rr>Mav>_5;ZqCN8jSp^9L=CxIf{P z$nlqdoC5^tB)~c*ICJQ>1B{045^b1tP}{ypaF*OLE}0pPQ1l3^+YW8kDgqYdw2s@v zI2j9Hz#-g#1NJ$dBBsOSg*mpb{FEu;sP~>Y(;uW3n4NtKXgci-G<;)8n_*M?V5Xco zX7H-Dc-rcC{B>66ZVel$L{~F_x@AhP;Bqr54X};Cy+!+_KT+4WXb-(x@QK~Bdenzw z+G9=;-BQotEA5iACv~tkX){iWuE}ZJ5@#$)<8^gah2V|oO$XGQy5>Db#4_z8i~4j5 z43!DK(wtQVX9@`2?mnVtNp3EWtPnp#|3~NfPvo_RdDT8lfg!qDO^yW8>ZXJ%Q|c3! zETegK{D1Q*zinIEaouL((XuRYa$5W{%e&g#i#R%M7*YA+g{wn!;W-SUT>lV!g88H| zKgs<>F;{fBk*b;B57Il-e_-O-Qb_IgH+ju@Hn>tb$M)aXtN267R2Kh9fu9hI$@0s( ze>KuiR^#*X1%-_owx5uiU zus*$>Mxji2Y3xU9Xj<(zoe)}BwMH^t^7M$I1cM07GHC(KTIXz;1D(!9+pRw2LMU@2K!7ODNf0!uD!rK z{+zAPJF@+K))I2a?`M^|m9TZ$t7%P-svdOe+Jm|QbHfPC`@qYOljDQn^` zX`k#!t+622iQk2a)s9E^NMt+TH4L~W?Ki^q1v0a-ZW#C>GHz$doweS6Gv79YQ$KJP zltK`tAF`{{@Z`GH9`f{5o@^W0cGKl zD4Zy^RJbEeTIvXY3M?i}yrBNchMS~5LFNk9F>kNw`Ak)dw*d-?P^R}dr@{odq&3*b z?7Vq=nCue?eR0&H@`o|qn!6gCA&%C#HRDd*yUl?*OMKymmD7ooxIhCMsYRm~m;^3Y z1ORdDgnSA;l)y76JUA1FOHWTa!yC!yq$Sxkh3NBN?^nrrvQf3-MBG&_!w)?1!FP=3 zPDIBm<*h{sN@N8)uZc|Ij5a;=9FR5wrJ}ABdx|1VM(XU<@rMoaf!p0X-f_*E)kUwh zU_|RdV}bVT5t~}6dhe0SF9<)GqdXHk%2Q3L2l;&>fU01`5GD3kF8q~i>MT!fXq zF2jrdE+)3<7?8 zTg0Ca=D$4Ae0Es0VI>LDh8nxr0FeQv@s?Z!`g8H3uZ30cpD>y7$alr19gv@aO^Ydy zrxB*fZK*6-XbD10TMI>tj`wnd*XueYd=65X9eI7iK*sA-Hr?+8%PPA51H`IS`{f!1 zBR12@gnwZ*&K@Tux|@1=2b`We0lGj$0MxA6ax|jLXAgLP_b34Kz~Z*wmj!Cdn_Av( z#v^}t$Yz!PkElhNrUPs%6xO2){;EYhUlJR}Pdg>|d4zB^L6iQzdpAdcU#>m{Eo~E- zkIgnF{t?0#Sr*j%w69aUTUq6M^rm_9eoEpq{TK-KoGDL^0+3KLBsQ>52ZL69Tm?}+ zd%DRSISTYbD;P)%j%_e~NRoP-loF)@FA1w+wieUMdn|CI0I%j)td{ij5R+cN$t~Fs zf9iQhed!7uh(i6OUVA%WDLKJT2mvfdgDd=F(3V{foEn3{5Tt@YyxXFXyqG}>P$pfWb1_3|mMDF#16YX|_GzkU^!>hFHv;b@zJFtcF-{CqE{>oE?>&bN(cD>o2bSjG{>+uX51pmQ4!N z>}BYtxyvdJ`1g?X8UB#ipSw!5IC%;oJ?otFUY@QXvcMp4V%qU0a@w)6d}EcB`-T_| zxj;P%nI8~#kt|r^OCC3m;J$lSsDG`~1CJqDMeGUtHyftHR3&dk>eB!&4$y1yv8Iq$ z`%LY5?z@C*M!(Rb*s!0f?yj!YeehIa;k4$%Bgfb z79jk+Ik&hV5qA&1ZW;(=E3_;?q9vHKYQf}GXu3ZrL=JEDf@+iiqQIu0cW?>pS_(i7 z^zOW5BcI(!pX|wYn~#HjnBxeCqa%tx?POxn0+|$Yk_HjIT3uCUfC>pa`k>*W>U^*M zA?(}BoB9+V8DV7fp;0(2$XE(@=3+5>w$t2o36JklWz={G4(>~Vpy*UH=Zf~9?CxX6 zwq}P>5_7&?iE22u3`UiVlTZaIayDN(3HpYByb|3g%2;wJfV@K1DEV#ptTExnd1hH zJQbWi`qT@j3}c_KuUyM@q67Xzc+U~)v2be~JGeOIxE|p5(=7kf?=r zR?Nu*S$&Q0ih|Jkx`p`+B<7Is6vybz$~t3J*rWS|()V<2bSfJ+>nU{BWsIIP`usur zKbc!ZgHJy?w==RbonFPc1N4Icon)M>nvscz>_+~(p6Pkhy|gG@1YKLR>R>>B*|$*i zRm#-T^F*%{?z-(VrJP}dL^RrL2>eyJe(xTX5*ATaslNd^zGA_ zvA32l9R(>hxwD(UeDZ~wxZ59u@qVeV$0Yz;irA%hCOQ%Eo^joy_1|XNJY`)zdTl-} z@fX83^RZ7S0e&c0^2u`jdK1K==O9Al_?jmaQU`Tt-EXiuIrSB3U>7B3Y{<$0ve8iw zbH%scJo@C+4m+yzL=1$m?u(GE!ShP|P;+7Tl7l$i{xYSzM+XfV|Gk@Tfvv}Gn5bkl z901|CT)HgL2nVC+(N=~ev*QE{U-gwu<4u-j;ZI+EgJ$Rv9{UYR*Ante!|Ifn5Wy)+ zrFGBH&^)x}3OrqW%W0uVuq#Q%#InXDn+iPKexeUmw90?sA|pw+va$l|E$}<)rUg_l zHE~ou7E3WGNvw+K^KoIbfkR_WRqH$;@qS}%K4>b!;f$Imh<|GR4r|3#XC~$-^N$+c zqV^U}{#Ri26=v@g+4#D7$5ziq4%L~OdA~p#cf#uLwurRRV|&HgfD}RP1Xl7#tY5L< zjan)em%KD%Zdj_qPZMNHsO)8o#G{P#u)&ef`KGw8j3GZDX`V-0?|)snY8DxmJTQG@zccNFb z)N#a*Cff!8YO)Gl03oW~f#9uMLZMMF0Uc^Hj#>VAoPt=o7+hH=HzzBTqP4glVsc81 z(-ju{MXQ8kP`bF1{rh13LmrGmWGI*G4H-Z4#W_KK3Wn9?>}-}Zyo0!utNM}#gjBrr z$HHa^1@P8&<({vw4V6~OKeTS~i(#`LtwBD!;QWRL_Kw&}lILU`yJ0JY-9red7gPOph&CPtwF%!VX`{ea!6vhDU_oCYx(I zE>jL)UXKU2iVn049~psNXMF&Rvf&%=F(Ya37?&HXBi0Yp2EE@pttkP3?>3iTqfTsq zS`E2kmXgZwQEz*|$`cRLX zR#l;Mx$Mk(lwKwy_c}X0E5O*GAp_Psnd9nOzgT7VZs#%jZezv8h7Ih#Wwk%zopR{7 zUHEdwRrxQkM^B1@#7DRE$yp!}; z8KbNpG)QX{H6&zT8%bp)av6JC+xCV{TOY!i_A6f?+8Qyzv_>$l;#pi^SH^cxxl4T2 zh!e_pXA^}1teMu%pc(%9hfF}}3t#v4Qo>U@E_K|nQ>gQ-KehZ7N228yiT)~~sEj+G z_#_my*V7YCzP#Q@qL=%1xpqf2;w^fl*qKJnJT#eJ!x_y5GJMuQUqZja0oCTo<>>b5 zs-qu2sY^3>97gs#8xURidx=j)f^eJP{NdpG(cm>x;WM5)V-GG<=U}xHzpXcrM!(@- zZV|(4rvv<*gqN3o{~6L5-N>p(Brec-@z_zEPuMn-wbNqaQ1RsFP0S|Oac*H?r_KqD zgPiI9lm6L`FlKz^((BQI=erh@>wKn6y%roSVMeJBD#G-sHRZ=-^IAjvyb|x`{Cz`1 zA8~~qk%}pFK;927ke_-{hIU1q!E&hP`nI;!v_=RZSCZaQ{_RdyTrvh7I^*3H^@!47Z#*?TJ$;3 zp2NRmY*pMx`YZGWz`{i;9AmxL$ORD|C{Hy!**VldmU2QQ4~^~XWc9gzb%m4L_)h9{5_Wn8JSCgf=x3eugr`DQ@ri3!{=mJ2_$N}pwT^B zVnU56CavjEETWlEb8HXd$F~7H+3$cNyF<^(@fwnnoYz((nA?9O)c(idAem*W2{^ef z-I-Pysjm{FYb`*E9y*i4#-oI+rhcW*4U?TGxg2U!i)33?i6YbCLAz)oF62$^l)vg+1)0Rp#ImWHOZRi$x>qHKwG`Qmm;ZdFHjCWW5I1 zUM12=qQW$`&Y{2yBS`eM6x0pR>@C|Im+gB?InF>Dmm+gTT?7%RV)s7&;8EhDR+YVL%b`u;zOXJGbFWc|TzxC>Rd;~=T{@#)0hHkhGQ5#f?2K2lR z3>iJRa#$2MX=z|F+|ZD%Vv!P^?cC61Lo7-F4d>mH&Yl|0P)Ae7fxkH`H5;>ix$!Sd z&<|S{b&rL<$1+}*VRncOXO?&dtvbnvazO@D4oV08)`vL+?hzc7V+%oHx-`^EaK)SI zJm^z3-^2EJ@;>T>FADUG7of+>&*6e##zeNJL4RzuSO9@I9>))ab|y(|NZz$F4t{xB zOV9=eGr5GeV+<#koR?=cqn=_Oy-U^wn7ef2aMl%p1tP45U^?#Z`8!U}0p=9OfMLJab#bMYv$DxKgTpCYq9;LZere$^k_Q4XOHtCm^bC#0VDN z_6`9I)n5<~2|WZHfD)*jW;0E1(8s|W&V5RRLPS%}FvG(y2Upn=1WTp*^o*j-!H$Lo zk-Q{jU6~EL1P#>yRBcW3SAq&!k3sppoVjZ@XsbBEqp3?*&LU@Fsdy~?jUh3$!wm?G zrykFLF`ZzHrF4@}cKpj-k6tCeRveHdE+fAsUZPWv9q2BDu~eCoY$niO9ehTaQC-!R zq=m){MY)U0HnfF_C@3GyS>9hwoA>a;G+Z z>4y=11$W)B^OT$FFH=RrsEH1p!~>%DJ`D@Vm9VYb+%J@V&($&oR8$}-^w;Joja15n z_i`DD=@bTdjjg*bdDyv^9ht2f-zuH9q?*Io3^Z$N@nT6!{dJGlaVqhtAE)21aSBbvF9!R2wi+ zkkRYV2S6#PjFxDVpE=|&V{R3hC@mWqjtX9w{#K9qv=4qOdlBJO7x`H&=<07m zT(Nr=osjd2erzY5jsy(OU2~>tW_PjUr}*>m!CirD51cG}NkGLu5HvL?Q*5u6vYcZ6 zCPt~gMV(|EIWsTP<-}Pt2_*Qk67jP7X$bW$ESo1N&=l?T6IKs9q^3tc&7 z{mqLoy*7fb!jW2nkk$nzg~v-{;Ag<;Xf_Ey2<~4V7yr6m7)=X8)QVJe(5*jW4)){_ ze)%>ybU2hiKFbgs{sRB)P32R0cbh6%<9%-h&+B2=BjpmI8G#uZl_G|8y6YLrUa*nF-nAoay^K7F+O30>at9)mSf41ic|>>hA`WD zEX%Yz(zYr4?c+3NmFYHkTEkuPwHoAp^5h&12jP7@1=kLa+aabcU#L$$j10j$*!x0k zKy_$e>z9b<(R$aa%YZSO%7f@PUts#cm>H~VS#o|Gft8O{iRrgjueaSR3fk>zRn(O9 zn`5hL?~F{{TVAON_RJjZQ>OGFS_n+`lY3vevT)+bFBsyvI4{@UXTOlxa<`-(0GiA zoy^>AzQ3&!wB{{=vv9lHf$W1TP=eb5$i*(CahlWe69j=i)_-B;{&R`A9^Z6QVpGtb zf)V?gvH(*Lv;hE>uV2;U%BHTKH~~p_{%biX%k3n)a*FYPY0`OZ<%hYX*2a7f+uKi}` zR|)(FFV&crQzrEdC1r`@+nRx&>~%L?Daph->5df7$cf4NGop3snhXLOaRgmde5fM@ z&WQ{y!G3IxLCYQ&w`EgT;n55~KbWB^HXG;zMy#6h`#PzP7!|lfUQAU#s5*}gcb}B2 zd41tE^k=#wruy`Ur%c@+RRcDu0Y0lAJx)k``NJlYd1{RBq3M@jDxz0WfL|QR{DM+9^AoG-4KB->I`Kk zP=yj2C`pamk~i1c%dn(MloA#zSj3n#3n=>vwt)nJ8Wfuonn?-R7z&Qs#&A=Ya`c3S zH_PJX4oW4r6af;b8cb2cNJvBWPIuV5B95kdRjLgdv^YkvqZdP&b)#n|Z&Q@Sv{c4u zix77RO?l^tFm#9s4@mbd#V$l*FIyW7&D- z4k)uw)r~Jk&bSg~own#4-yTqdSwr`#L&IrOgEE%a9HSzUY6r;kmP$chD;pm2Wog z8R;*qM))meng6DY@D903CjmWKT9rtYjZqa`@XFUlrsAu$<>~@N+|i2lN6Q70C8*HeVf50x-4A^#9t-*iUJCR*owH#h}LvdvP$bSjsk z=6O>r((4$996b09Fdu)SGEgn7hNS}1A9PuikqVY`b4PxQ(*SOJj4JV$GfNkYz}J`I zh^p`XW3>8WAh|zPE`_i1Ept45yUi|p@8?KXcUwa3ylF@xw|a|#-Bh<@--RrXdk%WC z1YtEV2$XUdzZANe(0A677ahF%k(z8_1jUG&lH0fD+4E>>0@)0hRBHf3K)kCTlO<;3AzE*2I3S3q=WZQrRGN64TIgn3AeSG_s@;(&0*{By#aIJBuyE!As1sM z4#RW?@_4z5$|-u$JZB})EDlRTW;nNB=knVE`R480;rN3^6ho)J3v{cMr!KVYrFm zK>cu}^F$+IND27!9I5H|!>03nQ$JzLx_-FVsXq(cy2uVth5zO=KSDKGhf;tiZhCK! zr+FWBlYPPrhbq9gI@d->`R9UpiF_PgoaF^O0kZS99aPI)lJ|H2A^9{BhMPRKHHL3D z&{8C1(wqvNjw)?7(7dqqjUeS?eC8z!@SW& z+RipkQDMYukG);Ja5U?@=5osFtCxov|3}jTZ7#C;8UUKa*_8f!-mO87aq)u~-;qBA z;WvzicSdPc(;NkK%4{e|o;ac{B2)~EbK6Kuw(+z=EH;cO#FTPl+s+tuu zsxePTV%g~EVf!~fwZl{s2O059=R`{_Rcwl+!~pNn{)s5x*^6@w*NdF&irvqb3yhARCNs zn9;2uQ5PG4KO|9*!Yl@>m!(By3>v*BF{}U>pdjI?Sb#5{;)t!5;8`bniPIMq8TFpp z7_Ut)F%P+oxZ>J9s-do3`$&aIT!pNx-?>2oKJ7QGDf=;8Tkq;&nIdkm{+dCj9bdVk zg)e;)EZrOkQj|dBe;vWg^a?TQY&R}Z?7gjlTIhd_+AMFaR^4VH%&itZ zke=$jDT#@ILP`4Ck?J!E>SA1 zS`XPgk2l;aGMHx1^Hc$ZA$ly|U@<2Ajr>18u%dt)8e4C$%v0yJJS$0~Jem*cujtiI z)qxj&H6L~{?`8P6#Ei`$>vCH$=Sge+?++XTsh(|GFP@O&h#l-)j2>s0ea1Xv1G?-) z@61u41{3@sy??B%sq_sIN!Plh4@`Zj~2X?3492EPh%3l;H8d!$Tl8E z7DZ7*D6NvvE*gKewEYSx>j5S7st(X<4sn6T;e#DTr{++Xt^d9gz$tNS+=_=e_)uw& zVpqgTe3u9v(KJqWlt=A^Qm4sgy#4)2Nu;zKSl|N_`-Lh53GUYtY92(S3Nv=4Kb$YC z|InC{R`w!qwo41@J;`YTyfvVBG+~7fVk8OHtcThBHq%u4%oP{$WpIu^7g`{?E$_Qf ztGvP?OUu7!bi*2YhLsEVlnnsf3M)^c=Vzlm6UEhq_}0aa8UJ!h=3k3_89|aHJU=gSR6wNgaWi4H=Ome zM&hEDh5AmV&^Ht^X_Go2>koh1GI`q}^=sAuag%EwD+IBtFr&kup9$%Q)5~mK2MA7R5t;3y!6&)LU#%As-suOn; zB5F-UyjCc{lyh6TBdhvhyB_}-Bztf)8rViYr?{Au_|3Sd><|4!ae;x5qZfx9g=`ST zvON}5nn|ahc9nxlFYcoWB_y(NktZJT(EeFb!yNx8(E_9M%Gdsv^7`F-0;8Ao;rwI9 z^-s)N&oJ={4&%Po+}g2oi41|ZuK=0D{#$ge5GqFO zHHdzo6yzE>!st=h*YFFIat1mCAiH+qpKr(9GZSki=!mf~}@K?u?oy`wVA2bXR-mv(gpmpz?yKlgx?Ot~0 zmO2utt@{t|c<`7f7E~hH4U_^%yG`bL;Vy=4^+#ZwK8ZkTDb#yW^JD9CJh+kOTIx<;`eT_~xbQ&mvDPtaP3$L$+Is*5t z{aWU$98%(zw1s8*R3*gde`e%B8qu`CsYtu} z&l*Cc#;cOg=9BD8r&a$y8eTzqS3N?j-~4(ib-R@Ru6FsF-$o1TSv6RPgcpZCDH8CV zO7KtTSXQ)6j%Mbxd&a4#J5zUI$;5{?vuta=c8!00!yXZR<2zUpqa9@7s-$c5diZmz zp**`49rP8HDAKm<9qfhi{TRB@N7i#S@MT0Nk5y~Wz|jPDcp~qktblE*44@7A_8G!3zc3a z3sTO#Ekl(g&TCS^|1(qCI#w&-KSZs}!Zj5-1SVRq_*i!qoy03i#Oa{W1Qme>SL)UB8yy(apB=zu?PM)-~E-BoFuNuph!P4W=zgRyaaqL z?i(S$+0Js`VRHY}Re>kH=KWg`>@~GiXAEOB-1{NMw#e-JPllRTU>!o+%==ZMLGktK zjQ(U8;cXy5g-Ouq@Jx^fUOGNgfR}}?Q58luFV!&69v#)20lLJ&IzZi2X11M#nJ|y! z+XFTUKS5GX>mT5WT2l|>wIjJ8q2pfI9OItDp8Map1x@lQI+c4&Y9q(REnn0j9C&KP ze4=?3a+A}f@-)>l1MeYKCW$+ROe!MEdr|sk2KJMtcPF zvHHZJcLu(l?`gv3Ex-{00cQ8$@5C{BYwoZtTTFCHbp-}1YD#lgP;PRy0LV!&0>nhU zZSsA|{F>F%5s`EbpJ+2QD_n}fk71jB;Bf9xV{-le{%fg0*C!!Nu}}CPNTJRh4He^m zAFH1>Nfp8NGaz7e4q7IU5k$!I9c=7)qj6vN55I)-FAVAML9gXfkks2B29C_4bzD{Ck(C$y z`gcrQ^{B1e@=zrr1EJ8mWS5p+=a|b_%5zl4dmQMjVzKH{K2qF>?oqlEJy}YNU(S$l z)J3>~k6?KW68EcY-+?~kDn>n3%~SdM|6Xe{iRj%w;SBgR(o>&f)KQ$FPl`!5q#Ju`6cTG=y zmIX!vN6)S29!#f!h2_J<`U@9kQFg9fjawNTOih*@nw7Fa-=0pMT01(3c0XZ) z8&MU=wm7Bz9yFyg?mA_yerg)v{X0w<9xU{$Q7UwnEG9U59%v;5?sfVHYM)a^8M{rn z|DA{>g#xlKmvQ9@cdqh}LfkMs!|)FiN!H1w4z!6Y)TUh7oPE0Ttl1l)tBGDV%z;zz zW)9T_c-a4{`NiL2k>X_ObFy?V#PYMwU;Y>5{i&7KLp z*y6A)$&Yvwvt2Omo7-HCu6A} z2E%dx+Iw$}A09w;gG+<;fmcltg%0nb~9MluIpFvhHOe8;auJYNtz zxw~BLwO8lN{n9&9jR}>1=d*C+^Rd+~7T~$5`#co7f&aT@xsMX})`AIL1^1jQyhzX= z5M*xiXiTQBD(WV_6uK{UNT~d1fOaF*MJee3s+%Kw2L&JxU`Ij0vWRWJ>qR*vh?_HR z2~DC?Gb4>D8ey?m15mpeCv&EZJ@QDDeO8W6P!TI4$;G9dFkqs0nf}pcOGMLH-V<2leV^>W^C&x6z?jKDUIg@nH3Wz4dXITB z%M4||>s-MsEtfkjPvct%mQ(^i*gknv4P1o?C?u#MI4hO39R5WAK(|rxFDrZWFL3J? z0ScVcmYZnxB?&b2u6NSLCYis;4loC^9mS3j`wu%PM#@T7`Ai+!H(sWz(~TF(V2Dn7 zjH__io&lmU!Ohm4?1=_jCcgwDWX%b6G52r04i!+ip{G%6pr z$pY{-vG5T2UQVQb7pq)WeI{woAy1K+EmXu~E5bxzU`a;4%b!?H{h zlS=J=MH3z9E_9)sBYJL2rgFHnAK0YFTtj5ht*%VH6$}W=tZMyjBG#)7qw08~&8R5Y zWezF44NBx*QWzjvGo=Kymi1<*H-oKIrcnR9a8ymndvjt45`o8Y?bgq!ZB;DOJn#BR? z)`u`?re3VpIeSB8ohp|jfn~3EA|!-gA#HPq1GR2gs{XXB2L*_=zuV%v4~kB>SvO;$ zg1C#)SEhupsU|MY2=I$dpoVo-3a2J#aC8uChuKvtBWFmQVEQZ@;)xMt_PK`F`Ay@? zvH(Sn4p`*1|21akmxyf6w|3w3mb@@yI}U!kT*-PO%ZGk|CDu!SJs2`NWJ5mPxakx- z^ExWR?upkMzI~{g)Er-g)GJjwBFo&$1V4WP$;(i4e$fRiyGKv-3T^jCK(MUcfobg| zP+`v-If*N6iN{!(^iN2HGC7$Ff6d~6PH$eZbS#XDmtQGEPl&&iN(a&1KW4tEf+yau zpjzj7r=hu{rTou2TJ{?4FriHawaMnTpqCBDHs6Lgech3e&4Rx3hQUS?^L6;=ze%-0zJb(4yEB7@7G$b4o zCVh)B2^8vfX2zbFJ2OVl_Zpr=$vK~zWP+h&9po-uK*CKa$vpyQkLpsz)A#yPR4 zp)iyI%$tv*iR(7Ja~FgWed9vd8rf(tmPz!YK#cbm#B zXg!3$BzgdxL!O9YN41^Z6_igcDHE@L(KZsUp|(b~^{e_f_VXZ&an%N4oea_W zM%LSZ!eCPrI9^y*Z0&^6cpIlM72epN2O2aZJN(>WgnB@=>h%uKZgc;2VYg1GG(gUKrYYyoA` z-U5fyjg!BP;u?Mw6rOySl1>@BvF_BBna1o(40DGvPJjO9Xa-cMwkkxt6E5;;TgksXCkGuZkUXfU|jJ(TLEj%&Ae z$$l-bvdt|TLJtiRPv{I-Uc)%{`8ZfGdWHX(*0x5(kc!PWhOk7=RsfMIY?5?yw=9PZ z$Viz@B||4ODAu=_RbWhcXgM*_Z1K@p-jh&`5Cf-nTmHscBKALo-CMgA&f`-pCg5hO zeClTv!+GtPw+9)D3YU7_cD&O|Ypq09HcY8a<{VHW<*8zV>v<88DOU<9cE7N%3bWOr z0WG>UFRT6sS;;V&nc`84Qm=pvK|L>0in(gF2A`tx{-8puN(YHyx#a<_`wAbX=Mm1y z4oNNp3LEO-rWCuBF{;~#mzdhYa6zxvgWa^IJBC2c6$qAj6tm^ii&&@I(ExPkdcN#P z79d**Q5jBtubQ007agZTYZA1#MR~%0BuP^)F)6{F%`NWEt@Zfv$Mc0eDVf<#>=954 zmgv`4);Lm+^66G+VVS%4Q;gUoT?=`i=|e_lB;jo*ftwM$;I}*EHx&X?kZq)|2Rm>y z3Yo06pe_md#o@~Wy&Lu!cJWM`$mdJVY36LTKGyPFA{ISgZ_6c1?3Wnx>Uf7!pCMl6uFLck50Q@0UZ@QSiUnn>jGHu z=2(9nVVypQfURgYdjVLiyx(NULUUCw#4k#n16N8=P#RFa>!E22rr=L@8~*KeBCuF8 zz-|XX4Rmf`^g+lEEN0WNF+o9AgoFSEST@A%8(O|{F}wk#Zef}=T|xfA{5tJwbwM%U zXl2I^vWz(JP+Qj^#Ll-ugh>AA+E-Od77IOE3lJyc25izRKt5wlZ9X|p2d%r?8Jf!l zRDF*DYPWTa%q_E5F7+IZr@NiTW1!gj>v{y=Xsn7-e^UB8X-uD@wHG?9)=+0!Tzk8SEe$Bw zP~&u8e>tc&`AW+xzC^J7%@10l|5j;(jgqV5WLR~d=J}s`l1Bas1!lRiDmh!MQkPqq z<3}3UQ;;51$Ey69r=o-8A^eFQEAJm3kMS)bzidPp@HUDIkBk*Ng~oi?LS72N!OwkB z@a+UGTfUD~&wV3f#F@8YUWO2gV2)$Thg{DU^xx;69}%^QO%o||a#Z&YP!0At@RU_( z!`!Q*mmgQYOh+OJ-+&Z6cAeK8Q0nblUGkGtYQ#@2C>=_&{v8z>OJD2{ha#d$t=ZzZ zki!M7`U`3exX)0ad`+hoB^YaLlQdX%Rhzz*RHc*O{*?kKV(nFzb~xf@=j&M;SksL5nS`u9L=lrJDFIF?sE`TUW+%i*btf9=xF<2R*iqd9t#Tx2gB>JRG#CEDOBS@ zJ6B+eE5emCmiDYkXamGhUH4#z*aqy0Aa!hIIGf@R6>|u(PKT`nUrfoDI^NH=nc|>b zha0%9M@{3wCrE3A?qJGAb2MgFSyvU) zd9%>vAm>U)A)k}}5Z6{kKrM80goT9J_>L^TTh94|JkAM7EC#%NfN)3XIGf8;qt_6E z!2@@jTU%Z5ca59&ljPLi(m8O#UFz`^d(B8#d~F#8NN`k19WwC^G1?YkRKGbm#sJ5L zgXUwksv}Tz4vBZe=V(}9chxNUEQUh8MaQGEC=c3uo^MM~`y*x`I(^I!DmMRMIR87s zpLSam{?6=HTp8JeZJd@v|LQwcB{o;F^;@4?WQ;%tQYi5&x(;Cn*X%Yybn>+tA6vK_ z_tEb5h^#pjBykW=DaBkUJX)5`^6>N0A@p_GRyOMwcXMW3y~nXj>b?Z<6=@1{!9h4@ zDgHB7y|)hezmlEoqu!g3*kr6uzD#9TMS5dfQ zVh6_&0nOzZE&~_DBV#eduyFlOWzEZ?39@s`yvj5A4&(Oo zE*I0x^2cXu4(OU=G2I+nh0ii0`tFQ2cZ$8#-XdpWqE*GYPO7X#0sn6;=c}UD9a*d= z8YJhOsLa0sAVFqiF2~AKpm5AHg+&npYxG61MkLf&R{{|sVw@Wi#q0JTNE*dUHY1@> z!-Gn189<@EJbiLNB3R_JGVoFLE{f)nzl6oruMskEF?dCZ^zQlo7;^>D#UYJhTf2mE z4b36K3208px!rI-fJ@;PqPatVOsGPj(hUA@ z;q7KDGAqc-ys0Kqm)X>(4FNtnOr#*n9v+NWRii!?3uJAz0;?gxuE=Q{y2d(PeOs6q ze0%UpaK{4jstEh-!E5+LZnO7z*o$HXoCvCM)yv|nL(=>xOP82=b$)@&$D%gg$&vQ)Sxk{xvLu8ZB)StFvCKb z3%+7z@%DG_>$YZixcB_hYeOYkfo31R-YytKq?U#nO%!=uLL#>#+KrgI+pV3Km!{UB ze*rgv;mED9qF6cazK9J4(h<`3i71MG5vzj~pN>Q~{-c(r70#oh0?ZNf*to~cjmOAt zJ(!x|tefz1(3K)#j1HWyjK6yH-pK?p4==8nIucnQzejXaD&19_!G3i=pvkUkUHlY; z?uLKh(vT=GP)*$%!{F@gBUu1x$-}GG_U$7{+Fo>TM1x}IFOl6WUfOaCiH-@iK|GW2jj zd-5Ib-Qe{l2Hw=gV~Kqe7TWV)=NNBpn@TP|Ed8|Q9=Bcvf(VzRkbKltx}7|a@~J`p ze;h8l>F+Kd_+v2x_wh#pD|cikM;I1+CfjcKYUP?`T-OXXhXCcZ2cj<$in!%f7{x;> zZYhE)SBN+JoiDfi-c8q5G|-!SG4RViu6*HSKQ=X0QQvY0!W1yxq9nGTpO@P(iBy*R*asl!rW1AdQ z7r$WlcL-8b{n(>wS-!9(%>B>9r#7c5k_B;xm%u3Xe`!F8Xc1FR!EOuc1<%A7bviWb zCT|JWH;Mfae*H(!rRTo{r7H8@UODmcn}Z>Sk56_gBq`Mwm}|l@edpnSX2>AKt z_)KYPbU~Xc^pM;Zec*ETuwhM+_5(c%)25SXeE{Q-z4c0V=xNA@(PdPvpEiHI_NQCc zOt@_=F1kzEcolB^^Jk#3n=@w1?Mb7fLDGlkk7O-1Kq7Sc&Aw#8w~j(hjLR>x&Dh8# za35nUR-2kIsBgTNU9oe9?Vi;eN0{jej#bWjyC@5MtnK`laJ6|Hgk2^L z9e=z4%E0OfdM3n0!^u@4r(omDd_JPk0dWKzbwr^DSRtW39$37^G)@YExJZN`PRTs) zH1f|0amF%C?+fM1y%T~y+sGQUIRQ{^J^;ApZR+$GPnxVS>S}5}?iCDnSv+2UVGWu9 zN^?IaQEp%b3-x|%4XoHha^v1TPf|X=s9El9t`N-p{3+gdb+?fTO#(G>Al4Xx(_LXp zgsdQBXk-NOunyW!T>}!n&~3kTgrmMe zw!abgd~M~3$V-A^x3(zO0^+Vd7;*t93v*&?NbxNFg=bJtOsLkHtd2NXJ^!EcVq7u9 z97#*k&daE3OWZac4mg{q;irFstNg)YtO!K@(!Nj2D)Pl$%Diz@ETx3D)EKeLsV&#H zC=W?*@|9oNgazSJxhdR%vZ{+6nKVp|-}nYgMST<)ZNcqN`-dUK%lDUedcgvCOEE|L zfok%Gxkq_M2T*v?)njLvXl*-Q1`CVCRAHTBO%-?A zi3T+7LHLpY1>dGR3sLU2VeYVxcC&d6s;Pa3WI;Wt1juhtzXHwH{l2$YUCp7k8v#e56&yeRANil7LUQ zI2id_Pu|*btPCLfz5p@WnYHP^M7cNAC!UmO1GSn`${O2}4-5`t_#yMiL>cPd1d`GY z|AcO3gA~CRQ&R<4&J#qvc^2FyuHc^Ev#@ z>%a{&2u5h_06ea#hKVoFR{#1J&?lQsVp@xJv1)sRNs6FCQwBY&C0k76y|@L|!jL$9 z%|I2kiFaPIXptO&vIB#35HV>@jN(8yv(mvh_J*@1vAJcGMw9r-6g412h? zGJ1`1Vb}G$f>1C%-m8lEbaQy{=tD|UKS8Fx#U2Agypo&P@vss>C$-35PPDh5;X}T_ z_Od=MF6?CBD*bR4D{WAK0*GW!86De0h*Q2r$r0M8;`^+ag+rILJ{r5dywX^rQu!K_6RvAwq7YLcgjL?HQ)2@rh>26>cppUx$3kQvyeHLcF%5S&Bc2h2<59h zPQ7sa&JnE30fGgsBS6|Z1<|_9=(RD06NI+@isxzI#N=n33v1aHF)53ItWOaF7U>IH zMg6b(JGVbN3)iX$S1ZoJ_>cdr7ly8bW|1;|vma@AF8tW#ja7j02H+-x4#k?$7+)jL zwahp|A1bknNwC~6_b4wlj5kI;?*A{9a3K);cicTON9$x|mCG-ro^NF;<6hLv_BP7_miYA_m3Fc@55*}rOJ8oe;G+wx3V$ItiNltPX5>c17njcmZJJ6HMjy@WWtZzFw%X{u|BqNT5B?=oR9 zr4a0)2`nL!)#C+KBe?a+mMI&c{ODOg_4MEc&B2BrdDwhXVwvahVN`Dhvpb%Q!;XZM zNep*D4*b7p_ALH>T+}WOWENtO&w&lX-s^;6880b5u&wxPfDfe(eaFoN-uYh89EvTz zK;*ZYcBNdfTDTgO9=`+q!;b(FqMwtzqld8H@&tz?^<+RZa_hn7d;pi73^)EPr!imH z`;=GVb}2?i+~_+Qo_PQP0P#yS8fG0*s>Y4=O4NS78pWpslJ*a-8WkAq1RDCJj*KOl zy=10S#>#X{)kqE;`hO19-i5_R5txP^R_)NIETC4ze0-U8y3Bb!BsP_wFTjs-#U|1y z)$(7A?#&rL=QKZuz8sePhz>C(H!9}|yzkQ;Y_Pv!{}gX9`ElxTtp#Ns-2cbo0lzsa zd1QC>CH12l8FPW@R(77Fl?(vD9LO&l6(tBd+RB)I6(SXI(V1JNIA1Vzh&;I$5FI;= zhI0jZvC}>@z>M>tSxs6lJx&cDTJ-$JeHUny9jSLWLPh6vsJ;# znW`66Uv?Hn*XJB+ZZew}X15x`5V= z$zHQ?Ra1TOmZ5$u6r&Dbx$HHk?jZ=)gggwLD!B>qcIBs+@3U|#9P20tL&_P{zU50QL>(d{*)T-WKb>0d;thYF}sFwyHj4}F2=<^3mw80?s zPMk?AQxQbr;O=0`aQ=CS+%I$V8HW}kvYU$2CdU&4n17u!wsR^N3H=L2!W>uP_yP=G z^k$1Di90P3RBZ|P+9=lr72Zq;Qg}v|+`+iu_xO$PJdiaG{XCuUim%z?K~l(Nqo%Pq zR}tf@C4+(-ahQf8p5N|;aoW5@C#fF*r=RkA0v2_hoMf!kZ6wHjX}H*&N_>qy)~Vr- zs*nKWr`^n9`HMLl@|}1=fNus0XA#KowXoOEE6Ez4*xoqa)@YG~?Nh>LL9Y9|6Y(&) zpq4`B88N%%u(gW2Bz*9`L&U+tc+N0zsi*(r5i>dCl#rT>&>g>OCHU7vtAL4AoXTGF zX~GDhnVjxd0xZEBYrF6I8_FoKhCDiU70N@?Q|grSzf(<06n69c>Rkgzw~2?1*2o5z zJ&tJ&`4jtPVL#jDk_{U`HdV?+eG)eOHyPEJ-K;sl)*?7zc6ClI?SiJb8~x=k;wmg4 zRS@Yr;)Z!EPAY`Kv-iju`f1LMKh-L|u(#FnS?}`#SB=a?A^7+QYyk+Ts;=_}ZuY+T z>0ou*|6%*P=m9w*VSL3q83Cq1)AxUmb>JMo>fN5Z%*_n7Fth~@Y6c40EUYRl7Vgpq zj0~|r?pE>I{W72QZU?Ldb50>F`^rm1VYaSwYtL}>?`W4FUs@Oic#HKq(m!YGV}t`t z<-H7*i}rCr)KCWD{*!F$z9T{|v)2cBr&vU=$pV01jpmC@-w$5g`=m9U=Y`V3Jc6PE z+Uw4uArZ+bq%1A+;X@3Yf_ML_yJAf2%!bYz=k$8fTw(wq#aRZ z*GBYDs?8=AJ9t<3Rl>U^hoY)Sp|O^ZeSms*;=fU@kaerJK*ATk6bX+UKyejkO{xbK z&f4Rx`9XixMlv@s#{aJloydWLSfV;V*FpF#kZWVR@nW9ydgB%CGR=oK2+kZQb_OPi zT^szLErsmazBjtGnzzw2>;E9Ys;3Jw*xn#Nt;65`qI6(6sGpz#&X6|!1?6dY!;h#d zZ7zm)93}BUgPntkR>$Y8;qUGowHeTc`f4uqwL%8#CdT+PV4sx#UNj^oi#b8us_J@| zfso|^gb1#%xdbu->dwru-5>1hmU$Q+Ds;(1W~OkB?ZdxSikwSL7YN7)P_Wg|wx?LK z#0UfeP#Qdjos!(xCV#RSUrT@Zbf5``JYxmoxp3r{9ZyJ9qc!nGa(rC5Y*t7igm&b_ z@svX>{*kn_syP1CG8SQ(2aur7_w&*lV_6NuhUb`}VKk=KB**^Q#Ht)maxnY@^~egvQ@fBo9S%@gpwbMt(_#V1hE6&|l)s00-4da6%_FL%aqNO7tiu z90TvC8C+N@_2e&q@Qg3oKr!=nEEG|0>w;gSeg#lUxXF`V#o<3p4z+ zZ4#9&4NeFK!F&xS7&VRP>@v!Ff*sbg{;D_K8IQX{IR^ z0hNvoqJ=J!y`dlU{;7prti|%oxYjQW7tHK(eJwb7v&c_;S@CY?8RssbSzGTT+39sZm zL_lY(OSNAn-3zN*?scgj%bO^p znBaj8i$wAU!I9kaO%mDQvT}V+Jh4nApclSBnXWi<6X%i9*xwJ@v zr99G~BSi8tupFL_oj|H$MP+Yu4&R(@f5FWA1k*{z+1c&{uM!k{%@H8krngyY77`K| z#3qcV`jg)lZ1pjBHi7?Jss8`2n|o?6>IY&bLva^Gsxg52jJggx+Z8vckDiW`?^#$) zbQWJ8{Ri29BgaWcYmG+dAx|z#k3NW|asG-Ex2{05stYA34=*Cr0enBK5+=WgM!Kih3$;kRUXwH-bL-b+U% z2yLmxBde$%cAq!Z7y@)1hF~D?rswml_VZJ8+5D}d$XaKc2%+J~^h@i5`rxQ-S%Ima z7m8Cm+xaIg5|FGEE|9uFjkDu8&{lGhxIw05VLes-mnBcn)n49oke~dN5CBTl%`fYr zJk5OsrxFN1vBW23PbfO>?Lifw{qZCgkAhaR?asH5#iSuPwNXKcW(H;PN+Q*PZtkyg zxEu%OKBx|}k2NY}1b9Q93YGY8H$3#QQ#n8PZz+-pI5>gwwUpwSo_~X6Wr!(&vnhR zq^mNK^)b?TlT{pm@`}0q?zx+BKEOO6;BKmNnS{G>a1Wb+KQd1&ryI}MhWIR#eoKHU z_tmR9+%WHz>-gc}e4S?0_66>C|LW-wtCm3&PGn)Ii8SWxx2JOt=-$RO(ZK^t<6cus z>E}kxi?6V#oEcdk?7HLz@&3gfDB3m~7}QjI>Qe3Y$@8O_R5D_>^l?eThHkl-{bthe zm!x~oIwx^D!;8Yf1L*^4Amr$Q?RBxU*_DZzqZG0wxgw^hQ@IFrX?-9FOY&s}$2bp*<2{ZKDc>Q1?P&fRQ zrHoBc#{4y9;dE@|FcI4>qeupYf{Hyonw}KY2n5~~$CK7des5v^Rh{c-4&U`B<%(@G z0r{Q9kEplDt{Q`TtWDi5rwIYi2A2Ly<^KnO_b(#B4YdA$&lZ9R&;-J6a4)J`sshpZ z^th|&guI)w3QtMXuj5WBj>>7}J9_~hah}Ha1a5t+T)~fn7}FoGg|)-dE{`FPhXiBb*~CW#9svqT{`jB;ez zpqw)E3Q&Mv6TSF_1RkH=V|Bo^^RlGE26ii?p=}@D2twrtkN^f@8WZFa=j=*4UVVx$ zUIXHR1aps!t=V4%7Y<{|Cdhpy^%QpVQ#S`6LvI?4aHOu2t&@VBmymP->N>x}#V*g( zkm?GZFsy@riLIl2=VbicuW0ijK7)5%2KIvIzlR zSn|TN8s@kC+pjz-aq>o;1!H-g6LGrE9_o!A!x0p^^e3GO$Fq#egiZdvgE6w@BR^S; zEGr9oyKEptW5!CaSx>osSc5?F{uX$+P|rs~{ml8JS1`CUSr}=^+ea&$G9|Sz!Pdh@ z@6TsQv?}gUs7o~@-jt3$v%bR{fi+Ioma4Yyu zU7(8;725MkjhkE+G>lUpYwwXEkPW(ziSJjbv|5o0SA}K|lY6`Aa+Qmin$E50a9c=V zDxx(}0&i05z|Tut750Xx|E6brQDiwa8pP>;-Wz6Q5|Mqk5X5O(ihCK%WVnR77ruA; z8{<;Tt6D+#-tkz8xR%wau$br4H=7_rSuCRNI^UjYa?my#+3WMM!0r$ct_4?=Muk5_ z6qat~mWB)1yp(40{SEqXqA-4HU%zSN&T`g&=C&8y!zaMEZpVl<*wj5i(V?CkR&i%8y`b0nHqZ#SETg=?^Krir^uj8`$IkckRc;+1+FD3dN*Rqi^R z!nlSJ)~Smlcg+-3xBj#EbTQw+7c2AV3rn{ZWBp{z*K5Ttut5u7&>g;I3C!%1FlYjz zfsAgeN%)olDY*A`x5d7~kaP$(j}6ma_^aza=r(PG0^4+=%UMBd0*5u5lSBAz@)r*_M+i&{K9e-Q5Jxzwp@j3PZf__QXD9z{}Dcy2&Q#oc<08BvC(8EM@<)X zeiChp$l!n%72JA-C4Vude)xDZ*P)U$2hf8*;Vs-tU2vg@rH2lS3MV9nJ%%3VDom@g&6S1nGIZK;Ov92 z_#Zt;JN~X+s#9w79Y%2*yXO|XUMJkc7(0)D^2No^tbdH2jee`(*E{>{j9ZWxC;``BoP{nzlIao@&uC358%Twr`DZIQ8SDPX>@`~D=0_uYq&{tkODJa6<8 z;MUa0OLq?HYt6~(d#N(*Z`|cV@+mKdI17UV%S~MJ+7u?p4_a$kvf&LttI5wm2bWaF zo(*(VPh4*(I6se>8DtVpx=~`l*FYM)&OW1h#Z=K84SzMgal%_|87%zxHR?RGF+q^N zCd)`VN>%e)*6pFRSkr>-FbxRxC*w|T%AD$MevWK^tzjm_?-M%6&DVz|7QtA8ch;La z(7O|MBi4PU8~;azHcuihAA87Yiq$Fw1`v3MaY+eAu)IgrVIkiFX3p}@Bm_oH*TJbH z_%zxmjoqDss4H^%TT2K(oyN%jfw@t9Y^m?>`E#JtGr89zr$@u#4kQZe2@^+G?@Tz; zN|`%-j3Y=26q$v}@U1hvFW_D08^HKKz9BC}O%f0f_}VEGlH{h4_O|IAR*}op81xIs zGL*Aq)*C6I=s|0_EuZwKCn@^V#KX_jqQe40rQ7NU0oj z)PMVtpER-=Bv3NiX9MD*Kt(?SEtYbRvMQG8aKYX{);dY7K8u{1y=-rL?YL&VvWpe# ztu?U)Yw1py-I;QC_Bf!yw7^dtLP+nD*&^1Ak|*#11O1l?S*EgrQ& zi1N7zL898u8kzBJ^^~XI$dY0WKbeoRK4QZelXVPD1~^;fZw1o%{4e!XAF<2E?N*|K*%fMlfwys-R=g8hJ@W{_eMT+;UL7SiA8B zD#Gkg9~USX7VFxmH^_R`+D&*^EaE(!Ls_`Xp+%WOh!Xve>=vA_uo$b?l-O4fq3?$+ ze1(~AWR&0C3~1_M00hk7najF-@s|z4qx=d_jBe0vL}E?1P&+WYzfLpuhcrcD_q!4t z-l65(MH)@lvJEE!**jN^2P}L>BUIJvffqw>Fg+CAIjdSbP>r-Tqem1v>X#Mur+Cd| z%YUN3`_0tIZ8^!5%jdJ_$y0qa8-G1^7+(PCOW1FKjV4I_B(?#wHOUw1at9>Gl$M|V zN>>b$)~Q_?ts}g0+Z#0bV5{9fR}DGHo7vL;HsgMO4q!dmFDYidek^?)*HYI@HRcR% zvVWaiedZgg6GwS34Lx$EpZiltXAIB)Fx|3|iO zbzVq39dY`Yv={`wXw9YuOG2Y*TgawCuZh{=H7_S%ni=LSO*W#_U9A;LTw_k5`P942H4!y9LH{Xo zdMI<`G2*mAsB%h<$DzK9tGNGGp9Q?^&qq_G-DhH3?iiw!m*vWbHDd%`0v{o)TunEc z)T$9oFR>_IdMwUfS;5jUIb^C?$xU3IlUgJMa(IM(J(74I+Mo+$kub4Wc$0D2@enxA zyexJz&rqd;ga7PCA7cg&N(V2E-B{@+x(I;cO_(OUcdXNFs-;Nnyt4lslY`_Z2P{Ul zhi0F7?TAHB0DCYw#D}UW8wsJ7mf*o6sr`}(mUG;t`Is28AxM zj|{QFUL?-G0q1+zO4d(HE?=miqHy#S>~OCRD&WJR+hAl|hFo;;wLy#yUxsDsuXJUZ zp2yy)VRDmY#aRI(KX&;3lqBVVW8QOB&#nD7xkFiK(`fGX{(7XV30VCK#` z6pgI#@81?hj14<<+UVrXSLVJfKIW0{@_l-Cw7S&HD8@~I)(YfC`u1wEn~&=wenM@B z=8bIu?_DMg;>A*80gQ9PdL*3@O(k^aFW~(XxOwLZf4b{_9m+}E6JC0z)J{mx_e;&h zGeXrZ!JASXzwTcPvnFlzvM@afm`E#DmUaCN@gw8IzAM)wM(c|iuz6GVI`9yDt=e(= z#)kE9cQEMsB3e=6xZ-eFtLd{=sc&ThxkzcFft_t8_Sv!3m*RWy*8ai%*<`mkc?=kw zVo>Q*H_xB4_Xs+yCYEKG4RKCp|9zKQ!i_0~CEA8m6Z6;7KvAX|WwlHPqlk+`eE{3= z&|SS+#|OVWZC#;jTq!+sAx9e70G}{O%(dHKkd=~TX2-6fj3o{fLl)2kUK8W+@EO1& zgu8}P{2ykcRVG+jC=f|ZOX*S};jao2WkK`vDgT+rjJ>CR0XXgFM=$2KUYbmoD!N7y zbJ;4+q!?C1lHar<9%&`qAl~p1>T1(IXZmymXmVPw3ws(G$r`o+Vzd6-+A4}d1`TNo z4cxaIKd>>n&U$o7Eg9|zAGKdMLG7t-r)z0R-MFZ(Oe&*`yirvb3Xyi8*Ye4q*F;-w zZRwUzgU99r!Efp=bz3FVD+30V1qzX|5rzCFyiEUYqm0iBtebfMKQSvOJo}x^WT&x3 zxA#e$+Hypn7?LhfOaCi!e-Y(r5hxkC>i71M9JH(hNT3sGBM{o2>qO(_rQqF#Eu5pg zbuKV?)iFRRdrr2riEy=s%^od%IBJPZ;RE*P2pPXf;@!XP+0*HR*WN3R3hqKZ0s2_m z%9yQX9O@=_jkm1cH(X+Z(aU2$Q%zFt`m;Dlj^zS?4XhSzz6OL4Df(?`>|Q^r=l1fQ z$3)N-;2&anx{a%yVHO*cZ0sw_$^wNU*suh9RYd5pdK=C8g59gYm`eU%_OH}RX8`Lq z+|<$ckAtv}LL`g0rg-!!sWwiVqWT-1p9u~RQBG!(K|z{1QLZ;H*btK&r)^^CU-gJA zzC%osI-H%xJ)JG>?xtDYN+*m{jd(}4X-H!8vZP}BB0{45PwPsi7Xk|HxDot5eR^$AqB=0dEL_T5D%IfTy^+y$6V^F2;%mz(1!)^jgJBY%iDKdk` ztW;8Xq3B+NGue|jlS^9Y9GOf5$#uNh`&^$^(hA--=_@@g`vliJ1L*SIxBu8z*i%d? zrEa@nycJ3R@sX3PhVD50Q1_uUR4daT!qedf`HJnRq>r8n=_Qp>A z8p`|kw2y>YNh6AJRWbaB(*KO9Ys-!HDf_8(@SE{_l{adNN)1+4mz$358@W{oA(LaopFAXHW#D?&)6D)#;{R1vH=1 z8rQ2Bz%O~jc1>zc;Y#1{_S1U>-M7U{&(6!Zpe?6)qRUA!%Rc*M;LA3imhP@Ir+$2x)Kss0ELf;R6$XrL!3*yzQ_=cnzmCZ|=KT^mqz7EPI8>Y73H?$r}3wwIq zTy*^-5P{pH;Muu2u7zT$ykpgQvkv=wNL?NSmPP!OLy;E~LSq2S5}e*0O(*HhNqx~D z=A2G9Y$9rB0-wG9xMHsR`aKvsB!~mM-5tjr2`5jNt5kh=7KKMq(37*wT752V(!yb9 zHc(odt#f=I#%;bQtXKUyXVg8`f`E$ZCv;{PRwS7g2eRF73xHsp-wj$r9nZBmc5}p% z>jP+10$%D2TCJr(wb(mt$}3QZRwSDhdFrRbqGMPYP>{0t#7JzGQl-%O3l{Y*-eAsS z?V?O1qm7OZwdhPuoO{K@cUy0vrYJYPY8Mhg)V^ayUEY@t0io)=80$+Q3u0>7bi@Fa1SR~#s z0tG`NC#R{){qND4D~4mr5+2sionZ0Hb;7O3nHr8sh^*1& z6^+&>0)F=B=o4cK-xbojt{_gl>DXVEXc6tw5AT*pSY$p)uK@zshuXGSxr|H9tg!FO9Xv z)LiOzd>EO(guIs)yeuKgb;!_4--*^dRq?=I=tFsiM9M5ahkdd$Jas~5t4Gi6AtaFp zWGv{w(_YRfl(rJ@P0*z~g)Gn{o!y#PGbF2QZr}qmD!M?anKL8JS{^-ss25a~`&f*E zw0lQRo~hr%4`yOnh}GZHOW4fTPz9cXB}Sj*VL1mlZCLr?hj6&@Rw89Led=N*G)@6i z&#~nX*iIVC`;w`?gPz#_(BOrq#7e>TK}R3xfj`I$exx5TX!!;mJ|D=nCuz<-k;I$w zgUAnZ+lurWOrzrilN>VXC5=Yxsx!I zWgnjugNNbqCe}(vPa|!cw0AOqCj^WT8r>_(RhY%^Zc}gSFVeKR9x|cdWjjqK1pAVj z3i$o&zgl{@5M$C*=%kE|<|}S0wAS4Mce^olI)+j1;g+`-)ERmwZ*&Po>)}nbA=LB4 zZPiusdf?~jicR#Z?+3ueTzoV)bmWujWb&aQ5M)>ir`^*n1a#x5$`%ym$oqfDTaH#& zHLU;pvi+CmtmrCQ)xIP@>ad&Ni;(3%lgmqWiLwn6niM098hG$-*$S9!vs{K3{}0E_ zlmJ35J*l>%Y$QUGfy4iW7(f}ye+JFKIH04M)(k&o!>(fBW3`ge&*I~qbpL3}Fz{}< zb(2UgO;b}{7uHW+mMkZ#gNs;skF{M0khJlx7`L)e|@!IC^kkk zouDj?D4)%E{>J&Ea+m{>Pu_>rqW*h0Z6Rqxfcbavwvjag=%Kuj8lCg>ndr$#RQKUn z2;e(HxC2@a8~X`oFl46H&}KQky;7n=K$rzSDRJYpcr?;ZOyXL2Q#miGF!^|-?5|eJ zA8(&D6&kwP~fIYE0akvwXuFAF7-Cz4(-t24t zREtN3%ml0p2eEmnbWrt%^_3NAQ-a?UyXxFG70zMseQwp)>Kb=qs+bfTHH`&1|B6vL zr<+NK?o8DK@aXHHre(mD^;c?%M(wjxvDWDlUddT|T__|4irO<#!*JZu%d*jB+TmYY zj^Hs|OV}r*v8q%h3p1G%98^q8^>1}4XMl(d%3@)r^_X-$Rgxq><}&-8-=qbhD5&*x zwxjRGnCElEwI!Q%^Y;1x*U>2Syu0~{6=QzHlzQTNoI%N9BQGB)!up%tF4T}j8nb}t z6P+wa^RsmpL^@n#!~XM%D2(cUK4Q!$a_=MFugVIqd~7~<*fiQ>IC^} zq^GTF%dlS2a+C7txxy(9;)i-6w9Ptuo%>>gN4mJjF|vV`s*DZnV^C9KjLT_3No{+K zAtFMCudbuCOf_j6|pE#aum-gP2X?9ZsqiKOXN$+t*1VxB?!5NbjESO{E!)6m(~ z)~z0yM<(O^w}yEPK#Ln3X?W6iWW1RNKhpzR%XEeluaYk)|JH3Kk%dxh&@3n)@F_Ka z1N;i&8!&)Xrrb`d#)yBP0#mt{hwcyNTdT+u8$+%7Q!Wj{(K7&vSC-S9#eu}oHmHE- z;V@f`2q{-JYN5yVQ00#vvG!h>wmuE~)cb$IQxkYR7p9}XV$e_dQAy$+8lbSm-!aD0 zBjXnDO0)rSM;HI3Y^>t$10RCX3c2KEE7z~R01T#um2z?Z%CcU6fxNw(Fp0#H-_Mnrpl7UIFE8-DsCd4CN58sR7bfh|n-Njy#cw`YE zU0t@eN$L!(llI*?4zdZ}?b(D3^Ir+id&ZX8!r>m0Tq2HgwKz>M-2 z@Y2GK@Qv=^U)^RnU1xXh`(~a@Q1L&KOlSTkZAJA_uhsR+A#D`r2I$V0DzRY9D^%U>K6=LttNwm- z$2PjB;Q(m}4LD!PQ^h)-#y(Zr17vg^A#6^aOzW^G%V!t0nY4;p`p4;(o3E41Lr2(N}@q7r( zG?bMV@H6}jwY7W-qJd@}tj?~ZD-NydGI(vk|P3l5w+?@CI&GzhL2K%Ka zxQhN5P|wdVMESGYaxAMqVoVA5g`K@mqI{gCD@Fk<{ZUf=panH%B+&gY8-3e$`mNN! zLr*~{yux2^oO*ZfgIOJMUnW<+(W2RgNcbMpd)f7=5D`&&Emxwv0?H2#7fCWxJ;aV? z_Oacx;AU=3r-E`N-Nrd9cw@rnA`WPx8!pN` z4Yc_=$aaf0A%=z*m(9gX-tz)J$w9^iw^f_)_MWA%vz~%IwrgS2t;4Al4|B_6`M|h* zG=AMjZxW^&&=*|eEOMUpjIKT$L=Q?w&V;aiccSMY&_I!@Nc7|&z%-;b#bEt%VFHLN zjm`hd^t1#GC`F_eTE`hmOmQJWpr*;Cr$3N{=8n5*FrE^h18%d!GUc0rVJJW^PUySSh3ip%~PBvv*Vo{h*f zyn@*tglCs_#oqKIZ3}A3aT=w9_9nt;SvLW&ErMcJfBFmPDqlEKW4wHk2ev=r%1(W7 z^UJS}hnrHcF<15Q!r`&OzOi%&gS%mM^cJrBi+12pz#ygV? z@$lE=tef61Fn&WU*iBq}OD4sZeagyOHL4%@Q}qyY>s&FQ^jv5E9VML%W4JtVt?@ge zLURD+F!EscvXXD0H_mwIQ*K}*EHZO%{n6~{C$}~_-}`djsvgorvtQvfR{?%pf)-l5 zIV`Ztx0Xbjt(91R$dMx^PO_q9jMhXrbOCdC#DNUJFYqno)R8GnP7!MpPFYth=JfBG1VmJ=xb5ZiL5%N6I~k3wgw@&SH27p6ESNd&y0fn8oJjpq(fsjY_XAoBe`ff3IST1b6w(+bFze? zJd;`ZIMo^*DzPCoDH?Bm2H?u>TTEWt5iPK{sqHa$dA^cnP1dV@Xmd(N0Mz!fAm7ho z0hbg}2akCw5(l`?%5SAZ)T)Ca+spb1qUT8wcz5w$WFOG;+0*D*q=vi-7`)LU?S3tC z!p-RY^1vwi5QH>T^%CeHLnh4lLqF;bcE(mj)EnySX#syI9-faCjiI%o8VqDQ-l)m^ zwHVYFe<{;1M#1MbT*cV$H;Wui=d5Zn;vyzR2hQ!kyg4N7ObS7>sEGAl@#hNuvAUIi z>*T*U-<^e(fd9WGPzj1Q$+u-3-1;8X;r{VoD;X|FPI%6vDA42)_?0$!K0NrXG&2in z!)&2aJoXW#pP_Dda+ASXL7-)wPO@sx2O{&WJfTdU zqRU|9MXo6m)|5malpfdR$=MhQbv=s*e{P<04D5$na^LzSR7*0K6J)aCA}UUqoXWce zmNNT74``i~CPWHC{vuM*!g`VBgSm4SLNl@fFQ$(-h60as4C%GVpt47Y?L>qwQMNrU z&(el-q{_ga)CWc7T!x?}mt6H&eACRNfmIo!rBLNf@5N^@b!kT7O;V{$v!)|Zkiej# zr9EA_;1#nf#V9E}F1h9wQwQ4gHuRZl%%<8;DZY%aj{%SyQTAKcl^Z&Kex(8=Ir1Hg z93eu>J2HK)8>a-t?MYvDue9`moXoCTPcr#&-@jqL&knB;N-KsT&gIh8Y#7xIS2^q# z1VJLK>yPB;U+Fh^ZxWV+gfBbGr5MTZ6d$v)!cS;@b_{-Nz_J6>`5&xI3)4$7*(@t^ zdKz!%>5-pq@Q6HfKY1{WxCO^qaNec0%vrRzix%}DzQ6>a{wa#m|7`rARkJMBSbxqe zV#Cg|=Q_W$euW#7zT>U94cCmY>59|JKxU^dU#B0QJmEl>w|i{D=X(h{=HeYx8Qh>y z+;4Ffr(xF^8q)Vr)NT9XN%8eAc1pRnkXai_S($tb^;OHSbg=^3V%E~2?)`4)Kv=AJ z$qB6z+;9!qTWf9bcWh(O`Cl`XKYJ10NmJ}A*Z8+E24XG0h(8mw0*o+8Hi$UI3zN!7 zr1hJa_epG*>3=xksvWiHf^7PXi^(#~ExKEj6!-9w^UI_~F_iN_xMXxaQ$&+rVeL7G zfAa|%y@H}qi^~`0FMiS#iV72dH5lm^^Y)?(!`8nNl_As3mUTQ73|zVBPR}UaE{H1S zDr1jvERO;7ApFLK^=PdhZjvzt;%A`eV>!%@6u`F0Qphros%S6ufcu}NEnpHwXE@L7 zlQ;hRC3Lg=;}{U|VISIsEe;%O9i?;Qm{D#m<=+X;m&QTIUa;wgfzBlJAoFK_J!AsqJi{}j9;)f9M@=;0Lh=GfCKeaP?^GoZDXhq zG~w4gT3%9%XtZK18V+XCJQ}}jOJ040+ok6fG(A9QCHpft4~NktAGZ7WSj(cLQB?Qg{^te9|32&Oby&6K`n6 zW)l!inqrbszTrUKiOoe9Z-_0pP>pH@eD__esk}1Ii!Xa5b-EuxnOVhda5=anT;bFg z^zW$e>g?5M>hcLh7I;>op(gm61g*grF;V{_Ri?{m*jMNO`vX<;u=oO zpy)91g&@@Kg=Lm}X0s{;L`xowtEO;t4^ z(?{|!D4u~6vSKu}x?h`nYamdzsMMK&j-UYW1nx z|JEK_u7L}1t)Sk@fgW712zS7Y7>q;6x0quJ(XlYC102}%=^v5&M2=O1l9m6p;63-P znl=aiVlfOsWGwHn{@7U_r5K2KV$x0OG=a9oxYk_|a;?Gb*w0$#)XQ$Fus`diI8etR z{Xk+zWTP}Ypki0&XO z=?gwFT$}k>V^Lab$b~%%<(%AkAubjCOda5dv&YsCJ=*{tiwoH-}420JZ~EtlZA`Vh-e!4^A_`wfWt^? z;YEy5znNZDB~H1rh)6*k1)o8TwEOuYCNUps4iatdRWlWmCY|-3b1=J)$qo0xLseS{ zJ#|lp*~OEisRqq2%g$GKfm?}yf(F?<6q?X4IawlN*Q@Yyk98N&ELdwt+`TXs`O|jx zM{AP-F!DJwq#^Up60vE5zZ}fhe z(TUjZ!h|aYI7-Z+K3XZfovp;jJ6*HCTuJiO>%)gz3#C4iCH z{<7UK?Gp-md8)(iiGI)$JPk){X6go7LQ3JLYD=L~O8=O_2h zt{wk><^s>QNr>oqXk{MA)P?7Bl+1CFw*qvO&Kf=M5I;spT!iHcBbWIk--td&SL!A` z)Y*R9R^QN8{Eznbk6p(F1z+Mfi6hxXYb29H&sc2*P(8PI##%&30pEyG6if*U;!#Rt zsQ5vaE>cZ3OCFwsKPAHcppUv3_nfk$9^Wx6uR)`D3)rq1IQ)ukdPNNBl+*)3%qFM5svT!@8&@sp>NQf5DOF4&rFs$jJ*>-2~apZ-6aHxBzn6x&&Gc=?gP1bDjUE&NTu zFGHAWLL{ykne^JOOvxmmWQ;yxso8}n#t2ySE`SO!c(lBhUlCs;*6_3AdOiGFpOFCl z0kcJ+imo6u9~{Me1a{w=qYqP5u$AIaqq2f=-aql_BB1IxNQ-|uMR}{p8~TPH zb-X=>u8V=%(&LQ&gJVM8&`>~4VFq`P}QY4OeU`}=x7Hz z87@WyAF?E}|DPwF2#7Jntvuj3Cpyo(m2Q=#_BG?x)zx>C>cK;{7~+e&C@l!zjN9Y0N%lw@CY~Sk&Z}2MVr_0LQjEx z`kRowIWu67kGPNd4i{6SWjkrkg=)SK%{upjZi9^<~ZP zD$$SzLkLXqlg9lTZauhuBoVj>y65R601vt#?DSUps)(MTQBt~dlFCpxL(`D%5h7Jb zSsB6j$ukiMjkOE!Y;Ane1->-0#B}~}`Tu^wSK%TOUDBxDXdSUFPnJGgI7iL~;h^kN~LNQywk zEEo_$$VsazpH56Y-Emwn_c8&!3RI|eXH~IGtr;@<+Q7b}WLzk0WS3#&hoQ{Vh2Y?> zG5M5j5g)Zk4|$#b<6vNmYV$K?3nQIvWU7Uz@~EY7PhQZL-40 zeTfO(*7yzTs{9C-U@Y4vnd$Qfnm_9kSgKekvkmZEWEKKi_oV_vsbBWd^m$MMI9yo~4696tce!I72JZ^3GSa}E3A;D;|6_3iiR#R>Oi?X0cYxr z5AK(Y0B~Hz_*vl`g5Oag4d~Br8GH7STB(C4M-pesjzbBmN(+{S%5vg@EV5Ne>CF5b zJH(Kpj^bCh8y{Kt`cVZS;3#jA>;8BXgV$+ol4%n`us9ztn`x{fNa0XjKrqU^s~Md7 zegO6$QrOF1&8dV%5NJZfP0r&+ubEl(As|`Q_6N%YsE1=Kf2XjDQ5ONWO$D4=h8E6R@%SK15LL)E71ya>Ni;45Ihps-eIHO z$hU1{@DYis?;W&jE<7+k?JW-dL`@%!|L1$b7Q$-^<;j+IsoDA`yE_F~i9q3se-rjp zPZT+-7u(qo%VpYge1P#?GikcW;HBxeSd1~$vua2RqG4_<#BaTwZ(NHmW=V&xD*PQl zzgMMp-C0|8{D^(X@x?l=nVc>*f3N-$3X-YAJZ^!t3-)a-xoMLsZzeK2?9ssKq zq6XdMPA4@ZgK&AN5M-@y6);>kL;&!65JCt?Avy@4+;Rl0y-3n5*(Z=?rpAvDV&>LR z!yGPXgaEbc%fc>+(|kd=BX$DuY4;KCkUS-gn7YY8TMW0sI?a%_h{Bp%x zIGTF&fIdRd?>HzpEL>S+RSd6u={g5QffkghlRXxHGWLd zPd7~ai4SHP&s+qbfo#(Uz;BiFs26*ih_>7Wpn>kFH~>~TQ*Ww{xSIOc5s31#QR5Y? zVVbWeTtOsxk6d*t&TEnKwbec^KE!P3D;b+F2S^AA@XKRiiJ-&h+<*ej(&DNib^Ih? zket_s6m>A_MP>dslR3}p6`=8P(q0?q5RDjZ7AJ;{ST;uvHn&43ui0OETG3)n}uPOLM&wr|*_DNae&!hQKgm>+9(A)J#{!>CblN zPqh2ZTvy;sI^k__%lD3Lqj6 z`LmLahyMGvjdDM>f(WC~hrAIY%ZGqw88ip;^qdKFnZ&*! zxJR_PO2_Wk4)9rrU~GrMe~)7BsEX-<^Mw{ELsO36x@|4rb|10&+*d~9Py3cho?lexJLj+|&5y#cTZ@wKA>nVeG+M@tn;jOi|A-1Gc2N%8A7`L7g$j`r| zWK{>D?wB^Pb=7K#CAxV3?ql^OxXAX_kmA_y1@5_Rg1sl0XSB%Q)f}6uI(JL)ORt;A z&77Gwzmww$EUcg{pl0l0J1_Ne?P=M?0VHnoneTlBe*~H8Df4JOuZD#-%WtkM%^wzz_NLk3iF8>oFD?KmscJn8pL>%bnQoHk$hL}_7#1R2l!71vGQu_;3a$;s4_8*;vbU!t`;;lnv&WP6 z#T#N7#L;lx-bA#vx0^w{Op;@YsJaD8Z4k03Ck0$Ev9f(XbK+()8a1R_$3=x6GgdU=Gc*ysO#!-R< zz%+(OIeekH^^t&EBobZxxjgTDl&V5(D+>4y7nVX&Y23yK_PcNGT?L&g?M8kt`1Jb} z^-&ng3{n*POuh*`;HWo;wY;LIL#U!?rEy&$ATTt6&$;9{Z?0S z_7~}k&+8DgxyFdZX#Fio-&xlk-UN-jZ~EP)+cC-xVTxe>=ff}seq0zYa(HS$cIH5t zZ#omgdT?)r+bi*#u8RQOlulMOQC!2;4SWB`t0QRP_|LBn2HmEtUnjyhibNnbmL`Ur zmeoDiJ7Nz?i&&Ck$*BtWxtS%mqo~6`nQ=NagX!UY>i`@be$W1C#_&U7IYpN@0~lLt z0Vgf*3^g8{PVoGP8M z$b_&Z!(Cqsv6Dse!XVjY9LWii5nesJi4RHdI5t!@Z*3reO%%sFDhAx%kYg-^&efaY zoC|b@&TrHSP@K^gbbiK{nrbMjyA<7~SjxHyDLoZ|gkbDlph(s#uU10ag0E^rmPy1fi?hZhi0SU%5mM5^X_ zl+I&9a|?ruq7M^{>DnR!QfAb4!St890K-m~gB+_bzrKoRhXt5@IvPiY>!zNY4ontb zAs6(oBr_-_i&M#<>P=+)X)so+O}|K^_o zBiqa?3ai_+uk*8gjY%ec>DYXD5g9gp$EM7cv<_}zWugxbuyYQ_d{PmCH9`Ol^w`tp zfrl!Duu^M4?_;5n`QCPYED~Rh!b&6 znoSg}tQ9vR~}~=uW8*mOmVV>b&syANnzwO86{#YhX5@^t%-?2qIWz zWzkJDX$l*ZR}uYoUB1Uo79N91#KC*oLlEy_=Qi^qhA*!Wu+fh9C=EYv>sW_Bl!+HN zssX}7y-!@olgK{9C9$rhoZx%eNuj49=G1w_ecaw zKp3Rfnf%ZN2&X-~3;G^qgrhV+cj9)I@v>L^P zSj4jP63f~c*B4WM=KvgpTXixZPD_i#eLw+6Ve))0*f0}p0lFIh&YrUS642aP^<|LNG|&A<_|RzDC3~f>JkB-sNV7dPBrYw zG_62i$s7i&pFQb4D;BEESvJG!$zVs7gj9_G{X!voW+k~&k%Rp~(a9%7s>&lWNWv1k zjEB@>oDTn)z{#K-0sq{!&o0E{Acm$^ZZkHaooUjMaCt76SG=&xkD$$-W`W}^Jp_{_ z1so5m)Ug06<6~gN43`(O@ClLyep9c$$pD;5@or`y+N-qxvs|C7066Efs}!2SoWf03 z`w2v%qW7)InVEbG9+>tu7;K3X5<)7Q{H5)lf;j3Cm+bsW({E)36Qk!Rzuq9c9f|@Mdzl%r7XVYt`9wUZ?%(34Si0;|_xjz^u5_2R@O8eK z8^VK=r)&t;A-OJLo;ItpN^T2q>N%I^?*%N>w8JQ1O$xWTW7x@HX{fON`f3<0tq5$= zqgSIMt=3^8SQgc%SBb~Ay_LxiJ^4b=u}gr)p#o>=`XC4Psxh)bt;-YM+oRJ4A)iyK zd*ex~_EvL`B*jLE?x&s${}%Dm7~ZriUXihRy_+sOR;9*b0-ESk^_0t5D*C;S^^CtF zg{3#i7(^Z6BI-3CwE5f>H8ysmsMD4?MGAu^E|;q4_4$%26(wU~%3Xew6k{zO0Sus(wt+rh`0~E3y=EP$>k;RbW{O z0qYk0B|yq^=+8G3lPx~akt@mNpNu5b`nVf4bv&&YKHC}Zw z(>nBx%L4Y^9D9)~_i3SuMBEI#2BDg)w^1TMZdC1RT#EMZ<|sZwm)eq^t|2$&@4i4B zC&2`0ebPZ)KSR}_T1+H({q6YpEr97t05d?$zo2~>Ssa;SShFFTf@Y<{ECc`ahVD@# z@?{gH4YP}hd+0(oz%6ix&S7biyuq~2Sd)$HYNZ6g#&3c!(F25KQ0tfiF6B?6d1cvX zv`AXX+{m9I7?AIpcxtj<*QVKr6$gj`0u*CX}_RAAtN-!s|)nBLr$xT4p}2D5^(qaS=K5pBfj!*I?_-h}j_!GjD}#09brHs`&NOpzN|PN1$vW?9CN)E-8i2jBT>4jm-kAHeVH_491j{KcFi z*x#wzbq|NV%NWugQD!FdR^-!zl-qsqT42mi?-5XGqw?6nbZh`6|-{M!G2-#RBPLG7TC%V}IU!er*|A$@Azd@Ib&3}_FIk-=l zt)J6rP4}@iy%CWQ!+q)UOs55AADLkoyLd&UW0Li@Mx5ekt9+zz!)EB#)b9*oTGVmQ zKWtqd(APM!P=x&|rcYkx#_ijMQM}c@I|GthH5~1b}$y6K_A4e_YEwp8;2cpy& zBRV$%(q$rNbP#M6arxeJ;L7G5jxzymsH<{Uw4sP)lY#@4?$_ooNXMe{)2%6}$mru1 z&bk0cIiQDBm|!SqxM|YY@XM#7Sq}S*(Syby7g_vyzM)OO5W4JRCVcJ!4|Xkm!=3Vo z6bh)ZX0}NQr5HK4{Y!_ipI0kd+fiQ8oShUhL+G+HA)YV<$4vZJTGW?11O^5zs-NL4 zZ(1Qss)9aM5{Ma-U}Y#+odQi7BD5`@n{9}R(z-dLt*bo+S9PUyDDTYprt!|Z;!-V; zDKE;ln4)2y(@wzs{gbNz#sy2U*WoH;zV*@HS%i&sph8yE(w0MCv>=@O_yT9hs^}WAmTYiH|M&NsFg-*VIMk|dJTQN1e@msX-ACyAX;pVfLr)& zk_UD;F_u4srfC@uUow)S(AAZKl}7Bym&Juy=7dDfV(*>pgd5Cq4~cfvl_v%hbU`kPhfg@C5Yb(YE;Y1#p95Yf zs`X)&OQ#6r$S>hZ5pR?M_w`(nXpkv?WSpR4ksWHV_Og+)LJFd0wtc6?h!+CcGVNQB z!~IK`B`^E#x1{hox%hX2Er-PTVNQrhOs|f>S&@^m)QE5=irB$Mh<+PL*ptWup&hWo zRgAZ{WR>&LB)fd+H4Z~5`l;E0aB?Ka-bS#*$h-}&v$4tr1)z6r)duQ?gVY!R_t1kA z(iW(;j!L0?9e(3gKKbsW<1c0nTGi7riOO|ZD<48c(IHcT{Ww6+LE`Ea?|YQh0@bYq z^c^`^5|KM;l(l0Js@@V`0mr)LuRmV;J1K+dj7L?ttr6ny?KO}0CpDFy(!$W(Dp0mp z7W?J7=K&CInAi5{S`4ny&m>pdap$R+&!Q-YDLV-4l^KG6jE(!l9{}_ckA*>Vz0x*%Hj4ct}eN}o-Lr8)iNso0*@mVL?VgF z{^p-!o+eZ#xwBBf*`lsD!QU^?D}5u(Dc#9^h=9={dt`PGXbr3J5GuGz zXUx!EuNDF^eMEk%1{$Q(a7ZBC*Y-BILwU=~F8=R9j<7SA4AGl>*hO|P zV#KX?LW_layWg>`naYiVeqs4{60O$>K*v7)CShtQjsaI7g7T2u&ho|qxz+nxJ5xpo z06llycfkynzr8iyv{ZD%>~ajoHP}I$@4!_Ux}sbe1>@DOYe?Ee37jLdrZq8OoZ(*M zIJAY|B@7s+3edqBZYS5=$7z7|oO8lJ9-hEe91MajfYVHY z`9ipt*BeX<5ymzM0A<}r$ z3HZ#WoD}%zd@=KVx8W<3`VEEwC@5rA)4054Y>+7Au{t}Wz+w;iz7h^16<-7cnyiA) zugIs6LkAcT@=-E-ImV5Me}b@K2Y%1USNpp_8sK(HYFM%dOke(WU45|kVX-kaU<@n{ z45R=n@jr*~@;3iGXF9q)tkk?(E+_KcPrA{g zCS@hf5m?jT!Qa^dd2}ngdXXj7N|B!0W{AlR4B2C>9;NSENmO!NRZZILFCc3)+=Lfr zM_klN4bs-A`r(ACc5k|4-{u%eO*Cck5#nH^e8%~2*(CT&xtsbf2i*X}NatD6Itc(5 zB8yL4lqSKd5cQCr4DBWoIpiZ~^XW|Dk+rHzvrDQJsZd`p-i2PwdtA)PvfWmNPae7x z!hAf8QDiD6*qZLY82KSp=D-`#yU;~C@+}7Zg7boVM)HDXlf*%i2_S%GMO$*LoiZ*7 zrYMgJDvBjdh=_}A&YvxCBrW{Bw3@LEM6WNdyWYdnGWKiy*RTSajtx`^7K?)e1qSe5 zL;kUw+T=kKv~Jgd~}%W zCBmPJV!|huH|`Ff0p^O|azXPHkTGlZEtf)=BS>~yagYw>DGupXrx#_eaqQu^#!y^v zs8tTy9Fkxavy|9QE`P#$_c$>jG5q^3J~)6@wk@2^8&N@2X7A2fJ&YS{ecJB2{lnn- z2Nwg@(wdBsLMy1j_B*zTIWemuqi{?kBevYib~&;&x6N=2$2w-Q=rC^APwnOY-E)a> zEry7yOy3$QpWgSV4yBS(r{KQQY^IwB(wB|m$Z4{ab=O2;afkN-sLH-BsFzB(9 zBbPuu{J10B+jCtfnmQ^Z(+L|Loz5n*S|3`eUj4*ftU4xpYx^_&x%I< z$a4+G=CP)Fk{x>XMXvYcr|YgvDp^eU?hm{8JE87h$}|`o2(~RFj3Jx1Pbz9JdQ^Hf zw)_5favo;3q|=OI>H>k{N^HcmCY?vn7jaNJ*SZ z13x}jM-qDEM^=6b^LyRY{;s1Ym zrQT~nQ!2*L8RavEe(MeTwDUWaSk?SNgoN=ell2+#Ahx0ce5B6-`b2S$Pu!mS-pUo6){qx(XIQBqOYRHj6kH?o$Z7zd{de@ zO#vSNMzn2_#K_5e^$aa#DxEv6*^h(Tg<)EMt2K{&hI2UsZ(&wY=BCCD3F|=NU?()sF`#b9{$6PvIp~DDQp6|UsTBAOUGOV^1%;v3;g3Bqq z&fkajwFD=_V7@;jKTQF=nh}h-5~A*+g9@p7e)pneFM~nmupZ5nVh@AW)&M3pf-Y!_ zZG2&dR@?0-n=FF9E2n2?HK3L)wQJk<)zysGrJ1>9_#7!C>cv?}oZWcU8GYicpbaN@ zCwQ(To2yHndNgCi!KLk7%4Rz-!7&#+CJN~|&I5rrrVe1_m5Q@3NYCFpKk9~jI3Mkh z!mK&!FNCdX*g#0X#t$-7z)S7mBDHq??iQhoxJtsj=uwX7++8J$}vLy z9&{mlVVmmU+aqxG`l;Ts#Wt{>d?_O|kO@ZR?)*W=JFu?=&?71kw}<6JgBzdWL?7?; zjL{cR@ty{32*e!QCGAvGWAK6UyOQAP0iC=NbQBo4)mJg;3syZA84zv^MD0xvNkM_n znpl)>mczhbb7!%(NYvtW)ZvzLt?{3!2j^KOJe%HeKT)jUM1coE`G%Wx#~Q=1bF5?d z%2_37(yH>z(7y9PNH{9rhWz4302iSjg_(AYmGNAN(SE;1mF&+vx=zwQ>UrF4ny=2e zMf%C@;PwA{Z)mYDc*s3aKX7N0G$Wq&cDsgg2EpA)#;A%E7PR1TMva-RezZM~@*OVz zZZwc2;kmhu?8Sni7ql$ebNr_It>#)KmzHH)m?S!E*?(GjCQ4g2s2a8Q&eQKbt+z>f zE0I=>g{q1}{+|`KI12cEBI><3g7R$nqGcrHLy4mj zPt1q{b%;j*_W8*)_n7n3HeWx3OB(8G_0$YL%=TW(NLn)f5NKobG3lKw(o+qr850YN z6dE5V-^^74W>%ST?qj3K@i|FN2)It7*!&g1lODYawk{ZLh%Y)6@M8p85vU4S$%v_1 z>FAXCZ&FR?0GJM7oc(q)d}p;qsuypYD0VI^g!yX5mTcazQKKTPKUEyq+ z+m26I5u>vbg#SyR&;c+NB0f&h`ZEw>QH4aS>ala-7GXBR;)O$2bKvwNG0PlL@PvY6x{FpcP6#x3;1JXkWi-cr)v6Z(Y}uQ;EK6yJws z^2=fcj>Z2#0?Lf&SzLH%^pC5U4z)cWIV?$4M-5PXQvel!a6m15|$dBi(bq zBg9uC4khfg#vRY=>uiNGkbdJ>&D{Lnl~_R>X;K-@URdjKj|rJ8Uy@>#Veah=^pMfG zaSI6xj5-MJwS>a7me$bb)JQzBAr|=Q=XR*q0_U%*RU$H7Rl}fcv1MO<;Pg$#iK@Sa zAi8w`ep^?mo5(@QiJE{NW5&MmJGG>N@MeqzL?QybJ-!NM46Igt4ff()XaHm$n`fGt zW%~@EafB9oSnh)!I#f463^`*>AI)2z}*>wRbVVNQeK>Ygm7q&6>ZB?QV8r7(}! zj=@4;in<7ph?pQ@QHlB@{p$6mac-Mdu7APOy(!~dQi}fYSZfC%WLBw7su=s3}0y#n~s14Fqj8wtCaLF~1}k#(k!Hj0gT1185qf+WY6b9^>t| zGppQ}vcy!3C-Oi+^6NvKYh>?c%ur5hrA7YlUHZ#axn&%NS3GV;gkf-Wn8?3J-$Qp- zaD*r!nV`rormm{cxvhq~R4D9W6|*Vl@DVL8l%Q=h`r~n3=10MM(bG}uTSq0tGlOO1K zeap9(vKtoytz7o2QcEFFxgM^ionJVed*Q-eABu0vKQ64DG~Hj1L+M$kcr2emm}mXPk{LVk(euki_KwR= z$v-oL1wx46p$rK%BOHM@YRAwtRIeo>_Rye7oT# z9W$W9LFGP|2+Q7|K(2|6I5bKAG%6cFW{b&m)}RSPgvqw#?8 zC{EU&BiNyD- z=yjWQEUyt5-oLb3aPbEEg@F6l_0SLWDM$|fBud}IsoWvqx5PsrN zz?Vh~tN>Cn`33t>4zaytm$YOul`8J(ONMmbDr^^q zIJ6h5%8ThN6U`lfW~1tXjvO9#kw-F5cin623>=@r;B#FR$lsuV$xF1 z6j%!tY)4W8b89)0P$wp#5?>oVfbduQ+;JCA`F`bv?$GnzDottX4XTuXb!^cSDa$#7 z{DN|LJNiEWIUuQ$no<50BK>u;XJ*LCiDg5My5Owk+7Q8sas9bLq{hIZS!&m_iOISa zt2kxqr}|=3(%sR-#N{UTr8_vg#WU&&`e`xuSoNR3te$9W@6B;=oEn~w zvOhOTvS~g@TH$ga>7ivtY z-}sbp1Zs!~;#`4B8sezT;*a%Nr&c~{jyk+6jA>Zjau6~RPA_~CA1N6BW7~)h{8Nnf zWXSOQ$@Sl;V0^mnZpFZOxkYm?5 zzd2)f0b|LLO;&*HCw5PftGqlM%22UyEZo(e+(6Oks9M1@i~CTQ(+vyJV?U*U z&+Z#%-V>09A1P~ABKOe2ylYgrxOC)Igg^6Zu5GU?5pMVRauz&wwgUSc)TmqK77$J4vpKcu3^H7DA*rH7&A%-A< zbh&NE&$upU_E6Q+5Bkj^{)94Z*F*}CO|4(V!O}88BD$JGK-Ty(RA9GjJxQ@K z_HE#u5v8eo{MQh^1ghgAz+`Ptd4UB10s=ycd5|QX7A8rcICll5L&&XxdBB%~+*Y0j zV=MmzCV3)vcT+_S`7P8lg@PzjdO<0!oy)_F>k`AUT0q1WF9@%jz_%42JA|N>?7Nvy z>N|SVGKDL@T*-j+DoNGjnf&Kn4(&LFL9mj0p=mI_D$f)k@PCEWbf6{C@bw9s^C3#->8Nj8~@6yXa4@?qLWm=gDbZAjV%X&1(h74PSC)ey@V#NjFYF!?U^!jVd zzKe{ik;FAK1hFR)j4L2}Nl^v*jgx-X%mf?1sW+=P=x&IF*`|{M(H8(Qlv1~)Nig_N zMgdb)O#@LU1Xi-lD^>|g!9lKD!9XXV+9(KcjJi)} znjM_&J9ZB^)z%<1GO7OM0bP%uO~=s-;U%+T;*FcZ6s}!v2YHg z?^hoB-2l4vgQ1ru??d{2$N{lxCrh*6ExUec`=vDPnbnJ7ukyI8x@j!>IYos&@q&@t zNE}X))m!r``9lG7OrMGCa{mqk!Pqqb)2_{ zEvf4PkW8o{0|a%#2LPfd>!GSAO{pRcD}`&hd)kv3yZh$N9ddf<{uK5ZOO2pq3WkDn zLi+qr=Uv-Qo%ao^BfMB57QtQfHGD~fG8x-5k=v2qlaDB%(G76N#aj#L;d6}rXTt^Q zvC$G*Z||`h#S>2*#+@j=OgAziI z7s^Z{J;?fEMfDC^QdjlfJfarjH_N4l=Z-KGq=wt)c!1sdUI(*!+a1gQtgz;IMXt~C zCGB`VaWCFz8*m;Dm97YysfZjvJtK8TxI_-BhAJBOpt)H}kmT7$Wx)Uj+QN?|@967I zq6T<3#xcNM=6*rSPL?5BG_7PT0nn={ezxmfE?UxA$-E4h6VN3mpX0HLJd;uv${5Hk zw)*E9;FqVYg($dwl}a zPqF&mI%No8X@&(cges^LXO_Q8ObhfY;ifh+O`L|C|M6}!I{cv-SNo@6-3wGOwY-J! zag&oXzYYr1rH`y*Qyjalti1`CCiuVM=s7CK9WCK!$z_i=PufiZMR2&3G!2BY$32rn zRVAf;3G@S)d4Wf8uTJLWnTgKM-BzudQ&EoXVO2wY*(r)ukWg4AR~%}Sc*B>95mw+P zmkvG&?bg<#d+gS9(?p-rLpPtQJIyop>xwv>1f4IPX2qGnSzQc^su3w`oQ|$4%Kr_} zs@}Uge8Cgksod1y;*FZhpd<&zS=WODL!gF*6NKlwDwH(V+j8~Zt#T%1ILT;dC!bOb zOG8G&TA&a;5B2fI4EtJ? z(or2D^+trWf!*(*?RBHZ`XAP?EUd5?($!~gFb^7J&VZ=E#F&^!P(wcNIZ~Mqc!Ij_ zS+j!Im$cFUAdKGno)Fc-ph0!Y7B8J^q!}8y&lubSVwEOYkQ|RXhuMz!ezhT#ajZFY z)RDZ_1Myx#@gP=QP!t-HBDblvp6&JJm{D_ktyS|^RIRn3+GKSKxiCp}!?S&}&JVj* z?MmjYurD5(VZ;QAtAzDVrKfgJQ<=oViUju4)d3!r;QCgV8++J(t$RlU{9ks!Z_dpD zuz}fxq6VxYy;qAKx7%sUk=G%-IZ4g3bMHZ??ecQ6zHUu*`My2Se5fVRJ-hlMoIfnb z>jsjEBSaPKGNHZ5EO|&Dn31mhT~nRMz7~g~DGxLyD&=hvk!Uj3R!0Amjg2V9yRcP< zU;B1V%;7>r784kIJ`ljM41ysR2{UF-W^-B%FoL{ITFham>(u*s^SLqDvd&Ubz2a4v z?-A<0$WIx7p*Grlul_H_u#AXXNXIb_5P~LF5;!UE(C2_rI%oC$>0MNBmMw-%SKQ(X zy+9)@2LX-Jvo(eff>v%Fkfh8+*I%hWv%Vz zUjGov3Bz4gKtCVBwoAwt7p~5w6FpXg@_87xPsIN$m2h;%ehw4}fX2H?4F@E?3VjID zxgpU-euQ8CHEaAXOci3s| zNQ%J|$17LSevpN4+n5GFFT<6SX|pjjyTPmYr6{7oUe?kG`o)iaWX?edW zFz5hyP9R4lcCQK*C--gN56tTyi|g7#hWbsgF^Ng|PMndhl$egwrRjrxFvX{Li5erX zgn5^W69Sbj9G>JtgFN45)u4-z;4GQhYk}Nn)`(QH+l=o-4AmNm$&h!iIxJjgx$ ze%`jNv-{hOu}LF&2W(3L_SNyj8Y34(?Y0bf0A|a6Y-s*z=n(`s&Y`VEwRsUjV;G4K z6ia4)z@)xq-voa}=NV)b4Sk6{1bG6(rk|fWEj2Is%pO>bzP6wHd1w#xN)9(?*ecgA zO3zvs$$LGYZU`~%?+Kt)deHpL;Mm={EGaR%{7uz)*3x-@!Lc8USGazFxZ#avtZpH` zm4+XamiTTx*_%!#qQz||uQNA8WXyXPSy0|pu|M@v(Se0#a zmsv!;lrkzr(>v?oiucE8mIo}DhnKCN)CHUVhF(?(8dVjPXg`A=-=~xtWG6tA{L87{gxZycft!+Z=26x28 zqL{v6E86ntQ|+yvzc*x)Fs;h}$4c#>64o;@wwGbYq0L&8)iZ?rDby+<$?Xek*6q&! zX27EZMG1So0#boV($s~IHY`C~vl*bxHi-69p%^GN4@zX(6-;{Hl!Clx=5N(#JQyUL zX$I?ad$E;Vh#TXf(4*G{G|uVUfgQ)F=fkb9BEXK}H-WnMXEJyLkPg{sU(%(xk}OlW zZdDQ7TL9MMiuOTYqNw=;>1x6K5rx9Abfo8p6{o~Q0DWmN=4wh*K9mIcnNQnu$H0 z{^eJ!CSsGL$$NFz-5N+nB71N-(RcM0+2gn{7 zI+d5Xbs*kb1>jEb*gJC5yl5g-lsr; z7~87*DmFp>`o1Y_QxTR&2eO>28(Bs566Uw?hY~9e8S`&uXyO3I+!z$eXmkq80_^cx zkl1gB<{QoIDZC`Y{toAxd2!QUl5R0d@;auFfikHI4yfv_#kA;~Rfwckq+)|v{4%_> z%mE(rwN~1u=#ZkaxYn~a0#|{6B+t7{42`gie{FhEoO_oM9N_seN9FiKO^z@AuOhZ5 z2euFItXD*Z!BE;J+(0DTTF}hE{i^fkm6e%t`)(is%juC&V=Sp5x4srFHmPf|*WlWW zLe#5Txb#{O6n`hbF>}QGO0~hj;_(u|U;y1Iotyo=lvt3^PEy;kRT_E{BSLg~7FuF) zJ^U8o(N0pKvToxJa9-kUL8i%64crP6Nn@>)|?5sMf)ub{Z4D)RF>umaJjB|%9GOtRhY3O>o((ZHHHDEWu86j~CHGsSm zs18JU@o!$Xz#}B*8v@L}_^QEVij$^V>09l)#e7S(BQinciYm%V+C4c$Fg(8*+X@j$ z)nbd}p!yLL^Sti8`kJt>hmrOu-Icm!hwI)y_;tAqIoT(o)X@h@739RQV<&-rfgw>%sEj2AXs)F1rrOk%qwEzsUElLat zn3HR5OTB<8!oWuK?3oQPCYHbQWwo!l7>{mqwCOx|6ycFALnY9W25{p{v2X$p^ZhT8 zTdbWcnW>KPYB$nRQ>+?NE{JXKGtw+XsB~+G|6XYEqXK0W4-zaMvP4%DUQgQ}{5I}l z+gMrEm}5dfnULu z=`2U@hYA!@#Luyn8$Svr;Kr<*gU6^3(n@PmT6ozCB>8-J95bBfuh=Sx%S{lwc{pv* zi^3U7Mvv`B&>$(r&J0wpLOK6v9V~3g0{)=z2d;LkZqmF(fxAhQCE|}wS=IL&LtUIQ zwFqE=Z(u{a=J2d2Ee-saNd;PS6cZN*hFl!GH38$~Hy~%OVSt-jZ zlWog6d)H$!@7QZ4S%&u5{>AU2kb5UJp`+mPG?0A3<*e9u3DDQ1r=>zz$Se|U)vYwt z`QJ5)HwQR;U?P^c5;3jn@HOMU=HYNne8$J4A8sRV{QuwwWtG=&zU^%h3GYZ2m12Z+ zSX`x%;K9YQ4YpYzZr1z3BzN)TMnICZwtK?5R#x02=V8W`z)`?1iR>n;y0BkIJfnCl z8Kvs&tUIP}Gj1zRBMRihen({Pa_^EuWM~d$`pzN%58lFT=Rd=D(5kp39)o7vP0d)Z z{ihA*jes@0ltXC6Vt0`+m=cr~YK0v^jlqi~+LrEiW44%|##6m^f`lPxSrpIA)4gD- zlUJfXI0&ub*Kyb*v)YCN6Xa4Zs%?1(^2#DsA z2_}+)jB~#BY%4IaEd;3zl9?!aW7}GKjc-VeHYP$p{xCo3JjiP!zY7c#?ycf0L-A|Wd%s4uEjIO2XmBDbq|&njF?3*O1v`Ktj1@; zd)@}$TP^pHXD_NJhk^aaUBm|>>*DFj;0-5uB2ving|M%8`#{~-@0dT;B4~@KeY(kd{P zFpQjSzeKr^Tt{d9V=rmINwgzGh=Qpj1?jrR#u3}hDS?b6EHYcaX=VOc!DDG`$s}}g zhs`(^SML?AtohJV@2?+NPQb%aB zXQsY$Dm$q5Q?StWrrG)k^9CVrETO8)@)6SRHJ&3rJ^EnbJU>UT3?ouOJGB=EgHTaw zq01usFJGA_vTiHy+y`=JwS7F%8XrQ&uen~K2vefBpJ16JQnfmo_J=Y{_V-Rc(=B(X zR9JBX&;vKPSV1>N+vIR?{J!hjlj78}j%m%3pN(x%|EVBQT#**TLfV>lT?~v7P~sH} zu)q79_nwnJ)ExP({{50GJWJW1^je$LbesqIIJ9J>7>U4Y-M97f3hOjs4uATj1fGiD z|6SI(+)P+#%^r;TQ<6|Zj|SpcUVp($5E-N}@~U+h%cAz|@R(>WD)8p+wxWNeH1#D#o-br_`$^I`H1N68agEEc z`%!TaTk%bJ$Dx+tpHL=z0Eb>fzAD3e2I|D8AWBbEKISnj)0)RWQtoz33&~{|Oga(? z(WW^FWclGT+@LLf(n_49$?i>$h(-iv3ECSZ7Ihk0TrLP#^4L3frobXQl1Fw;+F3{V4NYgt( zfMbk;?U+lPmh`zY9v`-7@~PmH%hzAX_@n3+Ncd7NywR5zs}MjJ`I6E;P7fNM*n5r7 zflSsyBej_lasoecz6`nxe^+$9i{@gNa=|zxP2N`~%HtvYk7edb07W3BC!Im;r$M14 zmx|)6Pufk`$k0>4-+5C`-GT{t9amh8S5%2mnI0`o=6mbe3n1LfyH(rGpud-zIoStr zD}QES9tW$bzxy+w0jK(AjyF!3ldc+s123hrTS>)$tC>MU9Eag5Eu@<#Xa2kLT9iu< zBKPOkYvt+J)~J7hgV3ak)6Pal^HBGNLNED9Xg{-%!OOCm^a*J?+cqkv2v2aHo&mEb zIuCY~-?P>^bWvT^#K)vqt5VeTje%uKh6FHPa1~!HEKD?cfeQ(+?9liWl(5%;#nvJy zIftc8BRJJ1-btZb(nP;DyhfRHS8`q$gZxPabLdQ{ZV3zCZ+jm2u+B57p+ms6Vc;zu1jTTIn@H2? zC7icnEb!z<3Nh*X6@rQUVPIpsLJX3vE1BAOrRua;2!soby4hA-*3GK(U3`qePMq?k zeJ_)MpTfIh>xPO$ix)Q}`ou#o{^>;M>uBuX*Oe_gjmF$sYPfqM4;i*-?5F_%W`e?U zk9xx`sHo^?)Sw4?+0yttkM~reLoESK554y6cN>KN0M!42G6Qt2QxANTIuP1W(ukr% zrZ#e6;_(IWm7J4t_mdv|m@V~pkqfYM`bsDXDa%W)3s~0xu1z|sT$=7BTt7D{Z>q9E zVBj~+FlC0@#$&!QIp;Ehs)uJ0&Stu9k<)xiK>}-Mr$4LCLz$mX{9Ovg@#554>6*$D zwy~SBmbPGH6VJ{!@|&@j+7hmM5Gwn6@yC9&-nItTRjUY@o*8|5mckf*ObLXw`V(`; z|q5#X5KwPG$ z%ujfu^P8A>r*!FqKr+0MixUqvoKj-xyL=@;?1@(>!Zi(>=$B6EwQY9VGBmoK(zNqE z3rvl)03mhQpm>Sk;O)xufwI1a|M1OL zG*q*^U$X$-=r&{Vr|a?l)YNdcLvZNha41fY)mF0`F6)~}C$!OL(CEKms+@LXQZ>`@ z_JcghG-Kjp0q2NErCn`*u4ZJ{oj4G~v|Kp0#4S^a9`c=#|C=DSnxmc z9ec0Zp;KZ9QmE2sqL)fv1K25|yk>F7)KNag0^>|*vxUaUdc-wFYCe#XOR_Hu^mBZV zI{cjRf%+$OmeKj-oPqc%-2pfut|&YecU1(33`aW;*k|gc|EOz*@I2Y2p+S%}xn8JE zuNHbGojXD2YElxb?k9};HK{LcrKI6qk0f4p7mWAl+A)Mu*F@0diTL1KQk+RV{QVU= z72?q5vBqPe{YAg0fSF=h6C@$~U_X7rl@a7M&&tn#&S6IK823aZidp03;)L5!4Xio0 zEVR^IyGi%Di!fI`azRjRS%I1=QA-3NeJ;9|bR zAqLK#`x_m8JIg`QZI|(fHkD7sRe{Zq zxdtRcg%JSX9#2r%9U}+hilH>3)z?a^13N+HM@-zQsCg>Czv#b;Oh?Ty=^vLH^w;Of ztLmvz8RAX{{7?C9JAv(g=GB|4$Di|oMibltAKo-@23ueoAeDN*0KT%tKWl7+E7G$V z5hU5cJtnA?a(>LYXC{58?YB9$c=Cuy%}*KRNH`NIN2#yEwiP(I@+hOR#%UW^#;AtjzI8IV?$q~D^eW;K#_rmEw$$OH^lCu zSP=DFEDV?GBJ=BeK?LTFQ&s*|_Y(6G^^k7*1=AZJO?#WK_K5>S&w!(3MVYU&FUV%+ z2)igQS?T>jyFQtj2>5zJJ~Dci;AX5_(%)lcP#8R-h&T?zAv7%7{cWS7vg1HLv~sm@ zWw!`^4Pdxfr=gEX~7^F|L?Q-xSJ zBv46rChU`uG14=MI!2(9l^i9;rJE{f*(MhT2!4_8Jf832GEjv`tcq zGWm#I3|xaV^A^&2n(a+y!PvrXLfWxAIm+Jcfwziu%-1`AZyQrHOYYb$1j_wKIUEP@ zmovajxzYR2A=iNH+P+8cKjG$oVljb#a^>mxtNfPWiCGRI~J^!?Kd zsq>o55huKS%bt922r1wR1|2!mzyX^v9Y@K_Nd^}UZN7Of7GgCB{Gq3kG~pEP-9tRb87)>De)L&ksU09*BhJ(in` zcXOD5OpfW&Cyw@=;4P-95lfu;K!h_bPu;LW{f%TfU=W(KeRw^!PaLZ8c=OCley1Cl zK|r5uQ$OHM@g#Cjn6K-u5x06WZNKFFG5<|`<`3=aFY(@_lNUpBh%UGbf)duNGNtcb z_l4`R#7M?B#^3D9Z@IYSOXy-QI1(ionpRJBQ}qAh?PLa}j|wg6=y<33f0B)b8>fU8 z!)>~8ct$^U>&DJ3&Wg1SA9w|@sY0JYN^6DJ#L*)G!XXi>Qo-OPNx6+Jjt^#1#<{Pq zeP8`yBku(T-+%^aF@p) z9lGMHk1^|nVnCartQb=w%bqm<6s%FO%xy!pF~>6DZZYUyPwcSafFraB*?fN0^6;4E z=gYR%OugNR*eZBchX6B%SZzZOd&S>uNozahB9VHvItLIT?e)%mCFVvB0|xhq*Dp(_ zByX9E{EAW};mt!6rZF;FzgvOnDIs!8mq`$;bv1|tj@p~&?F7mD+x{7?np}mlswW-9 zOh&s_pZ6_{U#qX?Vl%%cL#Rki@Cdt^?eLi{@wj@tvu9o6YMd-@cwxaRmtmG%v!!se z+3Jku0Oez;$r#CbZpth+Js?=_8EVUF`bl5v3%R`NThp_o45CA(+025fc**~%_cl*a zT6Uy=%Rt_LUREhuqUw~~9HYH&3U!$?fEn(}!{bF&=03sF7v55Ct86BB`rkGFrbCA$ zhd5q(RrZ?XNMm}yM-LMn%U3Nn2mTJqx4PXVAp8j z@r^4f7~k}OZe`q|V7yTpT@F+7TF6;ywqK?pRPd4Us3TtpsetTAG_b4&8B{E-L0Ob_ z^06JM7{i8}X?gknWUv_?GD7{g?J{wcR~3-i9FtxFTMwOY8R339RF!kH=Xg|{Jxc9y zvIyyFUpBLwzcpE3M2~>nh}9kFPJ5bBY*}$G9B~RlOi3c`ROq0c&npACt+8d2F&PKa zgDC*5hhM^-y5<|;kMu?0adxAfY?i5|`>+-{P$=7n&o6%?_Yfu<=-Mu zOrUjX{R<{2o^9?cRjnD@L%)|xCm@-aq??o3hG3&`$>Azd6hFVDuu6XS`I9dZQDkCp z3_!vm9?v7df*QGmr(K$Or=>y23&>LVj@HcoJ@d7&hOeX--jq!qNedjj_#HtR7Lbq% zsXO?-DVEZ1%-w9PqvWBSSJeKFzuyQTt;AfAMHEJUVW%4n>)t_5oAVSl@CXS!s)uzc zox(XAm-T_hXQ-y55$WThIiilrC_k_#_~luy9e--(vS~>aA+BUXOl=?F-;>)+ZKWCp z$qSe8SA;WWe9Y|Sw?86m&%-0} z?Iaw3YTG#MBg$0Hs;zp-0KtnCk&$ac_pEwqlZ`KxF@;oh6VLAi9tMJyjqF5&knl-t z@NObkj2XWNtzHq16Pr>eJ?%ExitTaB+c{iES|Q$JOR5bv73tSoN9-PG43l^`E7~DO z$^Sdd`oxB9*nYaxF6Px3Uk9tupM!M5H8B8#-Wa`*mdl$eKZ_}NBSU#;wfWY~I$m{W zu?ckHM4_f?oRIk!(-|Z3B1ix4rx7EdZMwlbL2Ov`io_|FOlFe_g#@PL`r2!AS!kluR+Dq<{oKs9BiLYm_PHcMtUnz;4>NMLG^ zYNgC_@mN=D8mTk-oK#z(b6h=eqyKwSE|S+&?t1VRXE41{qQy`ieLgl8$JW6_D<wX!pz2WG6FkGKG3MP6aOm?uIa%2_L#$v*`NU2?8t8H%3@h?R$4#z=Co$7uYxOJ{Oqaovm2Wc{w`oNqH^pkE{fMBT%D-45=wh|j5{InpG-M_sGGM0n&^K+|P9Gt0^+l@V)Adk5n! za%%@6ZnSdC9SF@N6Q@x$*Iwzl^U{(_Of0-8T94L8)}Xp*nSmLdDR!j!4QLKS+%A4M zDbqiA#bsF>^8%MSdlaMwC@!(BQ2#jT7CV@Qq(|R7PA`2$Fq=D!58qhjE36Gpk5^+KLzQAQP=_or!tO8-ZnuB{7tV?EK};OxwtT>an4Aj)whcre(ORBrh4&D4B>x-x-L`* z7wuY~FyZz>{nty$F?pCkI|?Ps!Hk`+5jb|UV&phbd-MUp^>_4p8uU4Z%oy%+MG@ei z&C|e%b|ee8-;1f)!&!t}syq|soUS#h;mY@FSHSBr&7c84@wTL*^88v{==AO~ZqFmF_WiK5d3FOHigu@;WooEjyGLsYuaOo}0-m`M*jCFA(tsOB z50hNM6rH9vR*7XVdMIL?609^0l+jV<>o1ITNxiR!AE#r9bMAEY!S2Yvv1y`ge0LK{DHqPV-=uC!kfs6IihS7HPaD^;iNh{a!%?nlDQbe{>1=YW;)x_-0m2}QK*<@atL}xySkB+ zzD%PO8n<5ge=N&e$Tsam5UkF*$0m$|5fRsUVvscoW*j zDlI-u_eYPsuvF$i0yE2wOQr~ZPcj0`DcvaZEom_RQ)$8OHKr@o6mVzV;Tr|MIcX;o z!&@XecMip-^PF_7t10-WTmtTf+~-zj8rIm|yw$yDG+bT*G^A%p+W(Il2ujw`c= zG7G!dn6PL@ow&yOliwbF#?2>dS^S@`*f=xu8kS5)qht1Txei2PjW;6WZsn;YIR0I5o7bCpbAZ$VY7fotP zvjUn3s2qt$XzWc=L>hm5+W3|{X3Ys0pKQS%z!5ND)WZ9T3AtFPso1->xXO1`k}uoxbwswWT-rk6M9ad!@VOY22{wj3AK)7-y1jDl-qUz47)i zM8M~z^@_)085U%M-_LZP=)LfOfEu^ilvUUDv?ywbYPE>5VMN@Ian>d--G@tD9a$PE)x49o}j8TBb1f6;E>l8?vao9pkev)CIfTp?5t6AXM#SN}vSE5)nvjj4h%)=lPfkoaIqE2}=mwsUaN) zz3yCf0^VFg=gT*`=d>Xg2(?tPw{FqwG4zv$qMQQekWK*#i2u1yp_AK?NawS=dKz|U zc-L;bs~rUuX&%CxBxA+lFr&KIJ4@a%y>5*-cl{|cCyD_&N5M=2GR+yum7KfV!M-xl zTPpVL=JZn_J?^2&@~E>`_KD=i|jss}v zXdtuvNK_M!Z)zGw1|-Y#*>l$ENOB@RF!V{2dAT0s^JKsBIq?f!zJz|r<{=5Yvu(9D z0$Le$!tZSdHsS+Pm{ktJZazTyuc375Aie+mWWB;l(V&U^ng2^!EHGs~>P*3rQ13$m zfVtjZT)Olym)A~Pb+64@V06jytghVHa!BY}j{iCZ8iB{(?GrkO4QMivy|p5TZ*JN} z1^cXv+Gz1pUbv6gF%d8+-sJlG>)+a?`1+F=q3dZ)YJlndldwZ^L$n>-qM^5X5-|&Y zhuR~+VYi_fJf?av%*S#}DcPF_0XTZGeW`v#Y@S1>|=Lkh@?L{)V!{IStU)h}@GUsD(?AM$!|zlDY8a@0XW=dy>&uWe#hOS8)b$ zdI8$}0tJvY-}5vNh8?E&_b0jQ-MMjzAgZP0rRncfS9b19?vbo-o@#e0c4Pg0Q>~tA zn^~^wtvlfWK+!$x28HVcvr)}Et(LYQon`cS>< zaWSFml}cXGNjg&=Js3@eqRVr>kVr_8UoLl1DLn?5H`fRTFFhw@IY84Fga!So)7Ksp zTCPfueu5yQXw%9?9`V6*?U_M&^FAXT1h*1{ zr7$;G_hk&HRlUS3=!sXwoeV3i81o@UX^FF04V!q57V;GpmGa7t1(bU~T5W=Up8^FN zjVIyUhebH+;QI5cLxAInWP1;N>D}y2eGj+Tl?hc2nRLlh^?DO-U|-Ew(C8+WNzuOl z2jtw$Vqg(R5~Oeb#k}8f(&M-uPD)0o+sM8gsFKlP;rhLD79N_!^*Oa)ri_zzlRotP z4@Wh>#6B_2-rukh6Stz+3L@IcYj4R{;vsBGs*3<0RR)XHgMtXh90@h68O*#3zZ9f=#1bvuKd~lcZJ4Yz^0$- zh5LvXVB>#svha&lMIV+^NO*gXe-FoLOZ7Iv9yzb?-8d&~C5 z-n+qP4YGxy2Tdhql?Du)mT|LNDza6I!rF(hrw)j$Hgz^L2pwrlK7uS{7{tP778vH;#b27BuR!*jdJP(0qC2)a(9YEtC zyid3Z17Gt2oO>a%#66do{Ky*H=WY5kxA6sYzy?{-;I8n-_G%G@1Sd%3ZHaexxm%E$ zIe5;YYSc3Js^BEYa)wzmJJP-Uv6xAoma)i`bB*efZ$&lZh$5`0KP^+MU)MDcbZG3M zs9Jnut&;6Y8ilUUXg(mIr^SA%x z{1PLiq@r$9N0+4AR+LO#5UPYVmj*=*LSvA;bWVq=1AG7TMuTqu_ERt60{F7#c@{j&UuWtKp30j1+dd@~$5+T#nTVZUd=C_9xL5 zG~$D*v24AlU;n8nrG|}Z;TO$fj?ptWn*0s8zrlN;tx0>#Iz7Z>Z00W$sDt2(AUm|M zKQw8m%qJWmhr6?Ig1`gdY={)KwsbTOXefAeycMjvo=)acSG!KJc@b z@iM{Yh}*)i59If0*4oq_yOjv%J%;qT_~MbA)wP*)ZB-Xt68^v(;yjl1L0HNER6Pwu zZ7zMxgqHInD6y`Gj~C}Z$^ifkfbxGCC%^gSNZ{k2iVe@2jO^!ODygo)ovcfbc37`@ z3hO0A#-DP;cwpQ(TPJpITLnBphv1@Lyq%XA?=jH~8*+R&*8tJ9WbL^rn#4GkEf2Wm zpTGuGdHcdzzSSHnggKyxBtP#X%vi4<}WYw`}%ADb$XHQ-$^cq1YW() ztl>t88wPoct!>;i`JED>K>7|sSn0a}93gWfipzXUH3L}_K5o|4LnO>OZW1Brq+$C~ zb~xf}%k}U)N( zb0y0bz*N_2ZRC~-Y?~r1%{SJkf3^gsmx}4A@a#2DA5ZxdiWh4aL(+OW@QDHxrnDS| zwNfB{_&0k(hBT9558JO@^^C_qk7s<&%L0ekS4+E|p&?)76 ze`-0jnY>}_-x{Ph;Gpm`blZqCF)_6bcBk!sV9eW;+cIym9zA0%Y1tO9B2Gr?Pk=Wa zbT7);i(mDIXzgG(E)kT_#oLHxX^bfvtz1~zUZO9sL=3Dzjva~@J83{1@wQf1^l~zX zl%ht=`qX{tM$tA?idJ8-I%bs;_yE~ZQ0-zFL1Ikb9_M9o(B<&(=Y3y=`Ve-J9Lh$R z!#wRDcgzzo2DSYN1@^vP(px6JWIa~Orl;3bSfW-jOslVU>f`ROFT2dWG&AZAhTG(JB+ZCR|d7Smk62SP|<2Xlb)2U zEb?Tq%q;+)YSY8i>qL>bG+JxC1{&bD<`Q}%m;R91iz+xKKT0Jx25Jd=NHAhSgZoNH z^|hv4JIv&0ZRE(StY*g@tTr1&0e zDzmk=zo}Q6)#u+)@jwb8h|%lQ90iUmh}=6@I5JNRn_}wYYY| znWP4(VG5%3^MC7}hz?fC4wR)kZBuyqO=o1q_pD0L?gXU$8u+)2r7l?mJ0SoI37<@I ziWd~+g+z9N6v+*aRM}*E^4iy4TxS*67WQ zjUnOl5j_Qa(Y1v-x}6f=_Zt|YL#-MwK`=^B6X&b-Alm`Sa~<$#6_DH=Zd3iX^{j_f zuNzaVLR1?%;wd~3L4R&peOneY)D)I1{%h?o?J2EB#_^O_(AYM7sne3dp(+ zRz6st)cLE1&#S%ohAKt2CYKPj3#`^HzTzPm9vxpl%dL239z3zP>OcTEN zQAZ~6sZf~{34#7Yhbap4z=ZhfLynhdK5OTPQtiFQg0c!EEMoQt$pqQE@BfzMdkc!P z7ETc`WHrL^hD`taQ*Z`Ph&8W}tjqFhZu}qq0r)veRrpe5JgHoL|m9)GVA1Q^y zbZwDtvWEtPiMh!2FbUu`{Dtg$s4hCpYqa6AWNnFKkMY%@T?24yys5gVKNaRo1+v54 z1#nl_UyA*7*01tpL2(?T(1JAlf$RYan{98I(rH~@>eJB6ysDh4nVFA~Rqw()DkPb< z$iEt?Xr5cl6PMQ({Yt7?qu{rM#q6l3Wy+fw&mBIbc`l+s#O7JZ+RNtt^FBeZFP8dO zp7j~q9WzvIVm%uu3!3lFtN%;6+==y5)196BZ!Q!Ebkecdg+f89?us{wHKgcbfX2`i z5b|XdWD@;x5TtQ?INjm7m(WfrE>oiOd{*dVu zk;nXazKN~sS&^P}dd56k=F1?3vP&A!X#SCnbGg`a!=r)iIG@*y4kDe|_&NH?dmnI%Zs|frGSP{%nHP6eNQ8-D~ zbX(MUCGe;@88KZ^YyO#Bs1z(K{0B1AFcq|w|Agl^1NpEW5&UR z@^5i?V$W|`dy=Kr!HUW}(ohgG)?J}O^;dlU1GaHf{xg%n=Mx4Lr_f*(r+UYghlP^q z)U5+?9r*_&gR%k7=TUzu@_<7iJS?+?@3giCSmn%EK-l-c%S1Vx9s%qT4+x!P>KBS# z9RJNH;}fmeq|N#TRnqymdXuiVddCu5mrq;=RFWk5mlndDoL<+S&kyz_IdGH){14LS zgi-4%>{)Fmg-*5<9-y-xQ-baI(k6Nyhug}6{qB9>8{oX9y1VCFT1ADs?^V$5E=8Ad zR7=dQzs*rUJ&-oLH>h)(me@3)`HTh;q;8cgSQa~eQHTWN96(hxP{KLzAngKTz!BT{ z-eU4j8`(v6#p1GIu}Y3&w!1VOJM13zZ$_!vr43e2`;sU4^?)o|MvZX zDSR&P}Q0c`Wg z2m|7?zx0m$5k5kqN?EWz19BRj)=|0-RX_@vhg%m*I{Af2=z11X|81JP8G{;&($vbDcT2UhSK@3To2W|W@FK;$J^MT{|6C1{h_&qe5NGH^*p*( zZdEpl;%kD&1oYEbWd1FPa+`fU3E7}|6Ep7;e|m1v!%)hJWIG%=yJ}_uwY+w#BX9Ak zTr&O@yDUBCTJX_X1#xM06v8nHCK;bntt0OpPWL;lB0ti!(W(vI?uLkP7Js`*BMo6< z^L{{05ltiGdjY#JpjEVGAvHa{8%+2;iznV1UBkQfezfBNzYC(m5PhFovq`K!LgM9^ zr8c`CPdEOSZ(^}on>AsGCVlkf*fkx}ig%!>Kpk}=&OsVl{*j8dvt=Ok?5|^>PushN zy`P5$Nxl7V&e5Ro<;x9W6X!^QL<1o?v(?jP>QTZD!Bg5bbBKiA>)S*uI-4KEXO@8T zD>d++3#n#7PEXIaf@60Ntt$OH{bj}D5Z&y7rutt_ROfZsO=Uc`s}7bJFr5!K%Wk_)YqWP)Z;!|JTykLK}9J%#D248z@Pj8x#8fXx3cCfcJ$z-{G2#|b*m zTWYHio28c0j8zov_WEV1!d*rC`&Q0D5MDzn%E-JDcgm7aA*~<-jFfX&n{!@4O0@2d zwll%+KUduu$jk(CIAC+$6$_|Y<*soioVz7}xkjO_9~OQvb3XSrPTOv@c0;hMg9BFr zWp9pIh@T<{*gT}s(Q(nq2p3jU3;$m(t2YF(ycL#OpqZu&>xN62b1-zk*4fAv3%np& z3I_XP;Z*Tu=53(Iwtg8uB0jXGvsIcxsV3dx#W{FkXmKXO9iEADtc5NG$DGeX`qNyM z59tTl634-Q3D3_r;n44Udh>2g%r{Z^%VYz`SoU_a_q%4W8BMbD3t$T3O4g5OhwE_I zhIP-K+Gc__L&hxn%4~uPc2;n#Xoa_X|OQ+wNZ6sbc zMi%kq%h-It@>{NQ))FhhT~U-GKQ9FxV`X9yT0~;Eg~UI;XhQiZwq7K;R(Qum4Xh2h zCg=T>G<%_cPG#~=c<|Ve({v}s-T0MdZE1o;pR$D`IB`Edxq1)OAF`PC1Rv6D;_~-! z#1>rt#SZqEnbN@(I-VU@iB+R!s@BrY2b2`R2WETM1b3qo%cqlqpcLwAPUdInO*r(S zigAId0nRBdFJb&u)t!chsPtE7r`Hhtr=Yi(7j`QP4b!bC-k4iA`v`DvR ztllV)n1J=fRA_%4S|&D-h6l%ik|`;nb-2uO$BmF9 zEz?V^98ag5j1MF{s>x~F3pIz~(HsagYeS)ggpEHd&fP|RYT>r89TEu1JWvRf)<+M; zEv^Nk_R$t9Qm$t6Qu>&)%x>wN>u+U3tm7#yT!B&Asg$FU@8nz4s4a>6Rf99r&a^-! z`qpj9u#y znn7^fAP@UVN6AfCWhyNUDEAuxG_ z73B-~@pTsn@2*bx>j~98p;ZIQ?dJseh(fIX9a)8sYFlJ)2qok;+!up8c|aAi+ud~l zTm;Ew-+zFjRg6wKl2UIxiBO-MaqgG8De_RY3cyuxy?-!1l_yhsUeyLvC7o(#>Gqs; zv*f(6gfn(5nVpr+Q3!DP6QlY~_~VdJoN-BwXbCeMAEk=Nok>LmDH~DQ$e@eJ4w}-m zW$vNUh;36vRP(;1K2eo3S7Ua<;mR! z$=}{}>lDiO&>l1AObq5M?^f@mcHRJ|qG}^ep>x%@xKoN?#{v!hMN0T;e_fwYCM8VX zu0+GAT+B|SxG0~44eX8KR#ZhLK-rlw@B|og_H{3G2qX!%dsu7QXV%gsdx9&E7NM|t zAw-jOv?NJCx;jZ&gH7STI3(Jvq{_L3tR)n^-GB8#vI${&)h9s{k;~(Z^`*9B|KB|P zIfwgk!*y>@+7#kPOuYN7OKb)DE6+^U&t6c(1Ow+Uk*Ej+7(3wSaJCQfzud+LZQILNn~?dHBaVViB~-*tjDraPG^6D#BJ$ z$1C6ie&c-`1@lywIHOP-SKmO}wPSLCw=W!B*E_V5=dl#+s-T=bGa=uYck4mb`wDGP z^Fv#WZw9g3eARepF&}iBC?o+TU9`xunYHk_oZRQ_*BYIT;+hWM;`X8qFJY*>BMeN0 zl@Q%b+nM$KPqqlLunKDw!p!^LC96QVv{cRC@x- zihY0!^e@epl@%Z{+5Bc2LrARFOlD(`?jC${N_w=VbB;AkX}+Brzui_mIWpxsu3;S^ z1rQ*dLwx)XX&atYDcUY8XGP|FS9yYrM~weI#aQyg*Uc50dVr67dt?2XR$GE}{~Z%^ zhgr)U9bP6zuVwcPk3<2FZo;S`9AN8K%xK-un9o__iFl+Z1t^b>b^)?8SCu{lMidAHj@bXdA)LfR8ZpWL~U6t7-f2j)J zCmdad{AN9NT#GSF7R(N~61wC|Bw+XO8MB-uFnHU?EZ(;uo>#^l@-D9o@i4h4{08+7SxQ@S(DN8;pv2|m*3^wnFgJ#Cu_>JXU`;hhsCRDGt0eMY0$u#z=NU;`&^%C-bWFPud z6>cJkIO3ni{ect(!bTZ9pR}czy>EXQ7agEH5H6GSH2+fT+l>ll+?143uG72ZT=H7+ zGza^#yS9CwIv&DVAwwwVIma#3XA(67aaNxi6M}tO_fyIJJGM=A{)-R*BWFN<+b`r z2{PK>+ZyAc_{j;>M5tFY&A`@vX1hm~aaC>P7ohKA)_^;Mk(-W*A$sa@G<8RYSKo~M zkw=R@tHe3Qo|~V|EJzRHy|w}e*{?GLx=rFVBCC6K#FO1}6N60R5=S7_^JGidf4Duo zHte{zzfFz+p7OEk2;44^vRJEJrzl`%(EfF?(*mD@7ss~47PFl5K?TO&;j)_XZ-h9_ z>@e#c0LSAGfzD+sS>a?8DR>0ep7TU6kZ z{&OlABM0Y`-w)99L#(CxdZR~laNmp-YQ`4ujaa9pdo$aTZidTnVlNXVAfGnfta*Kt z!Mi1+;K!bpuf2ayG_3tQ%r&ZKxKPb4#M@Hk&!^VGAIRhDI;#I1#;`pa>M$L3>H@|0 zI7S&G?d48bF>nuHTB%HNvClv;>Yy2h`V9a!WyY(t78D|T5<;0s##?`c-^3p_ zr|y)t+aT?8Y6sqvCIupvD}PPvQ~!4-&cAKV6BS4iivlKU50S0b=#MyJLR7pnOpq(}jmJWLl_l#$S(SqII;Z zldWs-MEF}Qj4L1!)kc0P>#jGsoiweBo)q6%Q4$t014yqAa|p~Y(*4NyC~_4&=&Lw? z)T`0yd_3TH=dZv9EkK4HLQJkLlO^8pWd2qxZTVY3-gywDoJ_Lsf-MuB0;F;bSVyO8 z^4lk4gu!@Gc*=C(K6uq@8hR@KfL4Glh8XnJ_*;d&#)EzY%8KcbAxvceu+GGK-Gu80{xw1NcHa$fwv_y=UU6)ME zIk4Uu`_GW5yBRa zQ;5248OH6t%F&o%{RKrAZ(5MgCl@-9GOT@TZh{VAMA0^yv=Ml5UB#H6R}OB^AOVQr z2D=BR!WqCKZ}1LKVwfUT(7-%UJ5JW>Wwl}}7}o!{LZsR+F4<4HpkaN%5}T+^y4k}% zSu>m8-~GiUOO}uI){0jm5>zx$pQmYzL|iQYKH`^m1bIzJfE@wSj6#Tz9HD2&Jz8yI zUGAu>|IS)jsMQW}@WnYs(I;tpoVhr|>N|f#BqLCbbnECstC4{yv$b;4GK|RHWrF(m=ZaM|EE@ur7J*okT(_ zXM#j`p~D3rXuVo$(VHE~aCR+Pw#I$cT1c@%8~nY-Bmu;1zoZy%l5xdU20wWBm)Sy; z{%B$h!7ggH${vN4NYW&GQ{`v|v#++Ua!w3(@e~w>x*n9>lFnQDQm+s-jv?M89F76@ z%GhiQq`a%f%ueGky^t@WdD~pT(wsBA751HYW5HGLFMmnww*y=xvYyU*@EO`a9ks5^ zcB^W_mA=BO1FhsNdN79q7^Z$otp7-H1y%6KE3c@==g8SHWn1GI4dy-$X7XA3Y z0Q+-7Q*|H6J1CfTh%&^H*QGy_-Nc?aL9n6)E=wxg`HiQpY1TyT)oz&x?Ei*K%E7+P1UehW*>5<(>h8^L3<$_x1s{l8XI?NG^^0? zLUu>eRc4zK3d;pkYP-w-A5%dM|NdZ6&pcT~IAV;WP#W~0X0oM2m{Wd~yHL_nPJcRx z{D;FsJ9@w>IcPx#n$V*DyYN#5J02;4_TSbCd(Ag&MQTVF^R2u(;=6#zXv9nW55GI9 z&SpnD2ajx4`<(Z6V|sdkn3PTj6ww^+R+iDo|8K7n^OA#jHlFEZW|A5^YnRMjIn zxuu9j9u{08Emj+yNPLi3>Z)&fG=Qbk&Mz4xF-lHvDLQC)y!|X;&hIN8gtR`#OZJ82 z{knU$ELi8;;Pt4Cx72?sjp{;WLv#gu&a*xQvX|ZiP8pjOc;TRG47jZ>i`wwLKe`lA zVaB~~`2canS~T|>hi7x=!#QVX$%Ap*DPCPG=SD+Uv$gr<8#As#o!r|Tmpm4@+R*!a z{+(tvu9IH~91dQid-tW!k+GSZQ2vgMS3K^%Svs65xRaX^i~KG-yRQ2OfAb%x>U*wq z^i^cMrg`EU?d(NYEY)F|AtB1V@w7pMtZ?3En&f%NtTdO0D;uOz7~TBOWFNOTB^CQT zD<}{3y!ciA9UM(a8!6<ex*)@69^2q6BTG`~x&V(nJptxCIVWdfBHd8ys^+~je64b^1Q8<>- z&L)m^&4te}Sp_JPQpKEnfc25%zqu$9fO&r@QQVGmb|E^0LievdUNFogG7-byX9zOD z8lW7JbKn&nSCQI5nP`Z+$Yv}@#lnH+{wf`fG61?IlYmx4GlZ_bE2Cr$LsKbIKR*rmYIz#TEd0%D z**20Ue*x`qBVeGGgrCH{ zl8MPL=OtRCYZ?=10#1VnxwmyAXb7SurCcw@IvT0j4CS#gR# z#T8Y%)zAct`us70Fun0|(p(V^;$a=)6Fk^Gk0*=N{GZN``D?I!#%+3$p5B)O&zixI&KO<{q3Nxit}_;Mhr3L0W;(CrL^RcQsz`8lRQMU)!om zg1zYitmrx?FJUif@_ca+1Qm>f5Kk8?HB~VuSfjz`@+#!Q5%*;HLi`Ek=?a5nG4FkK+OO5pf&=61P0UM$f7vYNp zc#LDx`r<%GJyn%#)ND(dVv@I4W*z?sD^|2xkl*19@u}T$Lf5oT#y6~r8fSFAA5~2Y ztPeCAt^)NbG&YUz%P(NC`_CUEwoc4tCpB3kFmMH=RUl&+#8#j{^fY$SXQkm$7c-!y z_ZY9njgZ|k)f|{r%ZDj{N`R@lb0{t_OC>JLXq_eL2^)@hH#p;OW$oc(?mwaZ3=m=y zmyxv7!rDBu;6YIOl|~N)i4bM12}DryeaA?*f#minz}ry}%CAMDr@xrf@7eMlw-Wnc z3|RIfQAjY4bM6!h!}#etY@;& z)pkG|)uI;=`zI3Ey$G}^kFtj?il&7UCVomZ2BY&Xzi7ipNY;p{U*ftgAF^WPE4c?eXHr<*6s78wegH6__cX6l&&LUd%>Cju(46Sexhra zpr?^JOwIPZbwD3cAuOY+$7VQ&y(I{EeJ+q?Up5f)70>patP*Um=go{)#%zECJ*m|lXMH|jzfYtNRpgW z2M+Hp13O;)5z*Ahi7c0}8w`+71fNSqR10uq@AFFzBrEotvWFzucY||4po|?6i-l?x z+aD~hgfD$1rfx(~#?jGVR?^%09}Xh;4f+JtD8x@XrlY^nRTaX1G?JPG>u*YHV?l{&>%pghl4uxC&7L0h)z zf%S+u_8-BHq5j9Yj=%-2#c{}j$neZ}8NhJl*{Vm4;Kx26*;>*bZ{th2(~+Fs@urju zO~bO3o9=H8wL0~P3oBcUt3$3BAB|ZjZqn7x+!JG83RB!;qMr#3pn>C2RMUuZJGtC8i!#bDVRnNT9iR8p2mk(Q<^rb zt!Q(Y+_j6tImy84Ya7?MSt*fYE zCN!z>h;04$!1E9$@?zh^ycKXi{A%*qYx_@2l1%|La(=x3sW~HEZj<2)g}By8$Sv{`4ULK4v>sY z8u>Y<^18yguM~kn72xvW%lG$_;IAAPnGm%strUMDQJ&Y6_x7N+kBT_{UTw< z_$@!78Z6teJ~>L!fA4ulWLABpE8GOy)3lHu;g^0g;GY%@brswzof4K zgb{88!Q6UKY-`1iRu(-cHqcl(-^d@ut~)Xl2h5h+b%;rq&5R!wn9Wu&F#4H|1NLNx zf;u>KycUv5%YOxA+!uW(i<^hG`A*GDG_Vw0Hrzraf4#cl>dX}6@0`a{D9w~C+OhtI zR&S?pN%aMZ6@qJZS+O<2z$AoHj82nb`mSO2{t$7vX0&BBle>Zr8XxRVG(mCuj$Es0 zkVK1GyN_5}je@m~S=ZGdq1b82H|cEC_{9CI>NBX6x51=73tbU0SaK2EGcANT1&fAD zWH6vc0_$;DDyz>njCXtHBGf}`r^&5i`cQS-qqccTJ_fqB^$gba&fj4g27Don>w$Vq z7mzB#pC_0H3+*?TPmq%@r>F=NskpZM{(tlRgvjNqap_rp2FaspTro{Y<~78c$EXzf z;w#NpYn4n^u#k8NS`)I>oBVnlY7rj#OpD}@AmkDKcfn&kbjICLxyG88+w)^>e?B28 zN;W9lpr5y@+4f2&H;@r$Fx>~?`2eu#;t8-Nb5+NoM_i!4eIXkfe+}1A(7;)cb3@gR z6XNVIMctiER%M&n>M+6GFRHUyZ06d)#$8fV^E=+qwT!TkSEJSr_@QL>!RW$)J)hdN zi5cHksaLiMMn>}zVejn9$pz<%9Q;3LgGoQ*u7d@IP(WPI=+8Km<%4(2NXcTIHP=Bg`z1o$?DP@<@_ ziq=s{ELq|OMZ~2=DwMVhBrFm%Are+OhtK#DooW?_u2Cm~0^$9qv1m%UAHN$>s-wR- zYTM8sB4LdN1FVJ+*o1x~l-jY{@ZA7FD{2ipyzoC%Lw%Pj`xT9t;#(Hf{Wm{ zd|SHCD_U#JPk51Q(H;iJi_~zbCdHPi0YxEm-^bMj@t(E*QhOBv?`^^^0Pjkb8}46T}kaJ zcA@MqX#mW|LFA~r%<+k79#f;&asS!4C!P>Txv-<(M4ya>$~N3r!Ada4eRuLj88`U? zlZ*4BM+U|Fvhy&(OC{w4X4<4nx}1pfd3GWILf<0ux~K2HUYgou%DOy#nMvJ%UdTtY z6;uvsP@e+0xp_$eqe(uRGx`9lzK#GUh$GMLt6;@Pr@si4jZ?8Khe;}-XS>%TxN8UD zMujNbqk)1S?UaVbS>s;JiRhJhFE}r`;ii!ezSKe{7?Sj%f)*LA+!BNj(46AuC*+O! z)&XX1PaH$&k=~;+I)lZzPsVfoIP|-uB}OKKLt7IJdjgGY;yXpANFK9YO;J{iKgFsN z?XJ#9mP6NCTw_Tvk*nCp=4D$@sh39QthaOe@8IFV-ya;yr~o7A)YRDj{_|yRYl!qH zxYvw-K*6|8(`MujgR9xA+bp*qHX&ol^ky8gTDhQ0PlKO;-eJ5`3IN%WEme_~gf-h* zLqTY2a@X7AW;`4xRpjc=n15HFJdvArXYkwrK?q+TKE>89b1d!9CP1%oBC8F+xS)sR2q?D&wM=g zrVOslOX$nkDC-j+DZ0%xr{nj23XN`c-$Cfm6=b&g_{S!oZ5}~x-mQl?oPk) zv;>lAiZ92;?=YTt?r;?p!_N6D4K1V17YBmxWn)xYs_xfEh+Z5n56_itv$%)ai~E)m z-~pTqOIE)dY^}D-H>dG#k9a8=D@nl%G*mUbV*4^&rtAtqG#h;vb#h}%(dw8Rdr7wt2fvsQ2sg2)tz0jL-Od>TPQF{R;gAOg=XlJjB7RFL0B>0y8(AFZHxW8p z<9vwl(@KdTNlYq*{kDeLNDVy}^;0D$-o221s^%l>u+I>yJ5QV{VSVKhk3rP<+jm(J z@6ZxH3B1I<-?vDSB!q~HoQ)Z2bmqmdGz;v#-?w2O@l3bOy%D#p>SR9Gy+DIW!A{4~ z(7QiEmY>L84_!{0W)47NPJ{e1|;&25Fy^A&CIJS zc?r~t<&XdNUInw5>?>%Eo6vb-IQ?2Gn)s;==o}4r68W$@5PQG|=hJ-xv72z=La1)OzK7L(qBF=Z8SP{n1 zEr~-EnH?I=X*!hTfuE!!lhdHuAf5iNR`?d?pB4YDS{m`pOyA>luoqV=jtGt4ubhap z+7m4slpsWlMjN_3op5=*#sw;}U&)wK>uI%mznOaH=!`w7P($Jd5U@B zym&3$E2S?~81VlYiM_>BHL2!LeD9w!DMuAsAE0gQbFcz!;9`zJbn?ey9meLM7TTuG z3v*W3aVQz5DOvUbK%P^P@wD4s7aHAj7-K2l_DqcU{-w7>xP2qRuaS>bHYFD-2o1#p zS`i*<_9Dx{jY>~l8aH%VuL{X9nFMro*{T)tabs6<$EfMYowL-j z8ETxPTZY3$5+jYUY7vG9bd!9}bQQo!f}jEVJC&NBFCsoZf6yz4*NvAmz_1Y65!KDQ zH)-zU)R*UiYL%b`+0`*&qARby$GEzC8V~9~Upn*8+UIg09K+3C4lSTy#JTm*5TYB5 zC)*z3W)nR+L(B9sEM~dK7=I~5-3CQ6^Ub^^;hfV4)DzjHffE?-(|LaM3c;W%xe@<> z^M{yR_>@;1pb6oZkunQ8TKfnXfu5QPGo^99F6NkHPc~8u@ZN`JUG99@^7CF zr2hL4LZ6|IND|mBoohT|@2c}=BKVAa19#iskk1BIs_?2>ib%fKmRQQ-Bj-lD1))S? z2uAl-n?9bW;O_0WJ8ag2#T*^|fjZP3KS!{r@g#irdMtwmiiLJHaj&jL-fHLH&>mPPKRvwI{t8t1v8t}bg|5strK!(0eH3Bz~pkB}- z@q3DxkL4S?E_LeujeM&cwksIcn!s@g?HXP~a&<8&s?MN#L6%Nldrb^zWMQ)#xuy~R zFd_7#X8A4SMkC(w3{Y?AQ(0p2?)M+L1nAFy1h=)UiIq4AYmmbhh8jmu#5zX)egWM} zDp8kCJD5MxkgG`k3|NLirSZntE(_!7$h|t?4pvE}cV1gUaWbH>%ay>OxD}m%bB` zY(vt0t{ne@AQ=E1xz#&gW;d>FTV*A}2NkJgReN=guA4oN(Izha_Q1Wd;-aLxy{Tn}R!AH!IDgp4PM5jfJCgfwqBk=LEoYpaP zq-LCc)JW`Q9_+@{>y-96`cI&*Gnh{+PMH=pgviM77ZZV|zqji^x;#J?WcwK5b#Nn-p6^f_z|StH9Upv zte-Xc37|~iCELNpaTTxtqpos|-7y3-k^3?C=)%25-L$~UrTT7g09HS)1}!x2y%DCW zmvNu9j{%9AAv|z3gODYu_r@48m7~#oJn;g4k)4mo?`r&tr8Qad`pKjpnVxs)67G_- z*p5h#`_vy-V-jIeTh)%#re-zLW=TO3wF{SX$`wvRXlpkw7=fq2Xiv%=>H%~ww`4Zx zbYy@*JVe*W& z_rp9RK+4R@!6J4&sY@<*A@1P(&FoIPCs4>?>Qrym??i^%AfR7|u295C=0kK(a422f zypLmdxJGsmQ90w!L7|w&={PAWfZ<*;2v{cN8c@3r&_{BzZYP!7XXfAt5nW}GsZ3+< zzCGhzJ~tx%%!bxU;o`oSX~$@3gTlnLrWar?|9Z>@HSi(q$e}7;@B@;CP2^R^6#_DR zU7-9E$2J8XQ5K&2rbNBq*rN?z?@b=Wj(Ss;Zh#J$Yd0bZDNX$sLgP`^*liWM%Hw60!YAvME5&Q5`9edNok8cdqStQ=$x!s8xqFO*gxQObhM~ zs*D+HbViAyxVl|m{-W}*dSr%n1(XPPPB_?il!GmJAMW)~L=KgI6EgNfeU>8&0Dx_c z_5PiwCWZ^cbZZBtK|`fbLZd$T0!KO-nPO+}C?4lS6>GD7Da=c^d|+o3rJKTiNP5~S z==SC%ee#vQhf({h5)zoI0ltX4a?$x(G+ffKHmX%9!PGB{``q`By-?BX2PnC|^d?pedr=JIJsYjb(sW%qSe#C7EDLDUf(yAanG5c^KXW@O;UZ z7X5vrO83nbL~x#2p!D~5oL<1yvO|k=aKM0 zcu*`22$f9bjX0fzZ3Js#+fB^&gu1a3u-0_S<2$DG@&$p0W2CdkDhg$Q^Zj<*K3J;iI+(SxAhRysdQxd!f3|k zeQib;Lqi$i>b?Rk)@bkL@?!~F!Ga`~#9~(sM931$GA^9@2SPnVe6GoysU#VJ!e?eM zfuP*CTdZ8jr7R`3|q__OWumyEU;R|+nQ zgu0EjvUDuy3Q8r$k)6!_sY+z}cA?4d$;@{61H#X-#h^@xXC+5ZIt3?3Hsap@NqF#I zvPE?rQD+Q0de7&TT5J+SiLTQ~eRk(fv05I@Npo^Ali{2I!8zw8Eh_AFQsWht^3r&~ zOuUu%|0p*&%J6}ipyqR|La^XZu3(p^r|11#k`GwIbrmS<3PQqU_a#(7fLR|hM%C}b zNOfSYGNb!Sy8a=16hbvFrW@Ngow#$a`3|0As{MGx>#~fDV}|2-@AXAXWyeNe(y}q; ze$kxm5x}?*jP|Et!1w8bWoLIwMzGKMhlGD9vGr$-CZ3fddwG0{v8BDj=!;9^DAKSt zrP-6~hpa)~?x!iCW~Ub&;Z>Bf}wZufmGkYIWOSO}`n@MpY$XI(H(3#h1fu zqL@V;Ft$Z|9 z$`7L8D+JOP1kraGbl^_xCqN}V5as)ZE=r=c>z-Xw+sj*zRwq$nS014Ri!O8lYVv=UZzYl74 zQ1!+` zmln4ASl%Zqxyr!g@dMi#JFI_hvHZ7oi~~gDGE~ca9L3$j4h_#G3jDge()^)F$lqVH z=1W9Z1hG%`%R7_Oo~UI;s`7S%pnF&0>lQ?{9aLi5CUyurIp}ytr@6yT+2cEf_ zO-~Jh8etjokwVT)t)@S_&w6|BJMy8mm%>@4Zudw)#vl=Vi^{r%J8+koQc9A0YYI%} zl^%vSK`6kD*B(@j8k!a52X5?UktIF5O|#P)^N2v!2nm_}=;3KemzG}xlofMx2_ocE z4)blV03!=LVh7d*u9V7;>Z&~7e%^4>hCgZPe%|gQK`8M7be-iyV`=p(Xjkmrk=4km zG-*AjtCZ(%EY8laGmSXPgATKmo$~u#`7H&hqdg+k^KLUMQl~}UCO6)VOy+55Z0U?) z*b7s!{V6R_4@T8tM9qXwE}|OC&ix2jd)tT3VhpIdU|Hk@)N{(A{tv)LXceD+$vkh( z*;I z-O)~aFhj%V8VgYnw6tl+q^w}6nLE`DHK`Rg=p+x2U@Mjt_ANqQqEnL>5KX<{43cC4 zXb%9)6L&GYd}-crR&({&BQ=x;!pDh2yJH-_Ry#q`eBhkgof%GGC1wHXp{hYrKQ?cvu^oh(4@FToWV8j3^NU_M1Tq;Mrr*kVKf@qm=AB#LK6QK?Ft6rX}De8MIr6!k&fk7y^at(i0dX& zyRDPL6%Fl|9Y68Ei?`i)Z7ho7~ig^#w)1)UtI zVeJe3@1k61thp|I^O}qJrJTIdo?|sQDlPXAXJ~h;1PLq7%D@REM)b1Z={1ppj^!_2 z%f_%X-n^~SIdFf2CiiAu4TTKQ)O~{Ub-oqGw2)XvAe3yh!nEltzkbcewH??F?cWgq z6mr_Q?iJ$wp!p>o*cS7?!w2bY0X&;p|CbxG@ycai$E!H$iyf8@e1TilSlgL?00NN1 zyXYpU-#JZJCzB1S#7K8s3@i`9BKB5vuIWFSRh!jjlx~u&>QYJNJMaXmX{QVuAq+Ls9dgl(wd86O1a94#Nc0(YG;O%-sdZgatqR;{r zA2MCoSJ*ri4aqNEYA>{hbF-58l(d=&65QQIms)b;A1Mqc!k~iXod;( z5XNSVxru$VvT%p6?h#_I$PLzw+h1s9$H2e(Ira9DUB^NqB%w2NB_3=td1T@W!PX`@ zHL;*lL<@`=iRMm7Y(bb=<3jhONBZ(B#c=RkHKA*S?>v)iMh+u}Stj7Y_zc6V3KEoOzQYEjV#hb^HgaC$+8)8M|c zDpLvg#b$NHy5aEc4$42$m745liTZ>P19hsHZQG!JgcgT+e`ESze%yg<*U3bHN9@^* zml;#AJ?(I|^ovmUNx-UCq^ooxF23Uf$3n%-QQ>l|dR59CCkm zpK2QOx8KdJX;FN;DdZVZIO#J5csoALZVe$72h5u+soh1^2FDArC8=^&Pq91|>S8Rg zafvLlre=T<=L*e)404-=Tx%CcZnF#{hfZ9=WA#)_?}=@COKmIsLDH=?aJ~Z!P18Oe zT&XNG%36=4stdXE^ zI~NZf62PV7e3ieUUPUem-%`*m`cmH0?%ZfBC~>ET-c>k0)qrQoT8*O=&R-NC<+`dX zqvpgehn=gz$K|@Z&Q$jZc$Y&5v6f}3e1u!Ec!!@;$T%^sWV=?mNjfOAbB~h16v3nq z5eE$OIa(n8@4#zy3~Mw2f((IPTp8NoiouL7QLKeWpowO>8IZxQ?;sp-5LI8UQL>A& zw!`r>$X_tPrU}?1mm5Vl0RS$uy)(h=B!u&bOAC*--Z(#)g;dv)4#L2#{BtS;b0Xh^f~}1DtwI*hs0WPh^)K<#Rk(i>F3FOg+O+1{HFO2SxdAhKGQQ=~_yMPn zTzl`nE|U!Hkebn~-KLhM$5^}%U{+Ol>tbt$S~$0)fYN9kBm`g~Or&cisIv_o%!MSo`6(qWgg-nGCB<^Iv;QVYRr{2HLLmRp_FI6mmmt$*xl zoCSmzbVVcxRX$!v?u&~O^sn20hj5U6jbG#ssTL>8sge&lsshwFi#8Y06g7V_I(s)X zyPPX${f6Fk`KFuF&GqDw4#a|!7QTQbx*nbX)$L@p%H_^C)v#@%p}V1)Fyi3mw6&>` zz1Wh>-4@yaJ|1|EM^igmvDDCk$cdwRofLP@W?v)Vr~pED0ac;`s^+HBNShY`eQ4h! zl-$BNkG^@f;}2hB4ejkx7-L77iWPfbP&qlLiF+7Wy#EGoE1j9y3RuxBUIOhKf>X!5 zS2oq7p5OLbfWn%BYesB__CJ0BBdn4=K^H&=IBfFzgl>|$PkPIY1xc^$Vwv@t{{JLA z_MdGDxN_P%#h)(^S)tW#`ulJ~SqY|D!Z&7i`QHR&5!t=8x#d;+31F3DqE_*P0iL5lCScRh#B!#3z$!``?@Ij2%kgYIj-Og zyPH#`s)7W7Le;jA3)2l$TV-PGbnA=QeC78URi5haWMIFBqB(?&q@;9aiHOu@+yQ>m zJ6MCtj}Q8~mJ4iudDWdF7rVxUF9rl{Fr3{8quZ=I@L({Vce-F2ryv8-ulyKBy){*% zT9xC4F!JYawvzR^P6kCdFlRWUg05Q+1iqE;ZYhhZIy*5k!u|ge1t_`Rw6k+F{QZNM zNkoaSp6Hlj-uLRXMX@OOD%Xu(0|t^DxKN-+dtK#4H%2Qu-QlnCFsJtqnGvSH3HG=& zt7P3KZzZG!iEYrVs(OLHmR|5!gV~nR3 zKhX+uBE?v}!2x?JHN6vaHO*?DQ4^|1qYyK_D+|OURhdF^^b|0I!47}hR$OENr{XZ8 z2|+>4Zj=V`p=N7_D291gh#SXDD6D_!HgdsxQd3}bQ>Lst)78{drPQ^)9!;k!hxX=; zy`}ISW*6A$#iU3nosc1a#@6wAYOmF!FRLNV?d9xG@emHwaS7*uZC335N!Tj}k7}eI zL?0u$XTewH!AlA&ql#A!=|>=Dd@TzGru0Eo5B>wr7(N|=Gk>`$qpY!H3TgSf>#54j zu6>fjY)=s=D!kxnrMtrGsVJyypk1qZ-^QM&>b^rGMvgGN#U^^}0`d~)xoABf)MjSK zcd=Ud1lQh20Z?IA&Ol7h-pqQ`u$HV8e^4%fO4n9maarQqWp#>z!|@uN7j`Vh1?{z? zKY)7wjI!LN6Rc1Mq5(2gGGj&DXLl53^(ze?e_Y9fzSkhEReaVLi5#;T!wL6+F&w-=VkJ3%XjWb#>trhmjXg* zOq{(7l6hMfzmNJ4Rb$iT=Q%1eKa~CD*troDewS4>Voo7M51*vq?IcA^o@U0$4@WZm z{-4=-{UROGT2#w>zfO>I>QGVz<%iRDdY_eTUy5?alkK*&G+O zzqkhKYqGNWqKq?)VGf@rNchDq!`^InEYVJsP7*P2p44IaH_qXm1(ey#sHrAj58m0F zE6qSz030`-46_IR4(;4p;ec-$8}jUA!DrgfJceODRzIv@_yDtAhEb~trH z9ROk<{mfwq#igRwgg7Zhb^`Kc-|3Iq1?h!Vhwg@z&f=mppLLUrS^DZosLTxsoxTyY zh-U*`9OhxoiH*g<^jMOo?Ht-=5C3>|I^|sUr#K-DC;fw2pVl1RRgX$6Xq#CqW%B$| z?B)3}MTX}7XX$5a8SRjzYg{kmNvp^lxXArd!S1~~TS3!!~Zab$92O5NAs z_$L{l?*(>?(a1v48iN92E+>HWi^+}Go+LT80i_@3n>c1nO zg$sg6S~E>rZ(4vNxeb!sf!exqzrKHeW%cxqeC;9t2~T0s2oI2W;f6a^vc!*n*#)x^6)@$ckv1!P=BF!7Pg9`g3lR29Hp4dlhngN+2CNW6lTnAEBoW~ zR_&YeXUt1(GIUgZ+7YIJ2TQ?iGb8SyXjEv`AGIt)+e3&v*0#%=OkFSP1#ncG(=WDE z>Y`c2^G~kx%a5Ry;Qql8vs7;#Sy}kB`-{A}*ECQUJ>*ftp{QzQY?OhZVI#^pT%c|D zVcTE(BbautSe=@+I#VV|Dds!W>!uxb(KZ;}0eN3hXu5UT4b{Lj-!t>N^HZ#AbD5Hr zAc94pX@jcB)P;XM#3;!zp#jOE^=}M%zNhxv$pZ{KsYE{>m9ORnhCHOiL|MV-?K4## zT1gG5L27?;x<7CTCaq9!>Y$!+Au0VzUS0JXQfQCTZ)Lub3Kyt->2PP`N^Aa6FoyWG z!@3aqY~fst>~GjzD>EaXevzv%A{BBNU`TUS=dKW)i*m;7n5uS~ym=j0k)KOqu0t)Q6PB~2dlxfkJb}HB4#oLM$+cSdRHicadq{W@5&7Gsd}p+el}myL zesFkqP-=>swmZP}RS{j40S{TQtMhs^-lCJ7N+ZVWZ?`hRbi z!6Rq@RIHgltk7I!YS+`C#J9hSMR^`BZbbJ{@R36Y5&flaCSNdQYD;YE7^Sb5FAT^i zR}q4V?!ojTA=CnEq`W0z^BR7=6=P;QT4aM>c?tAJjLNZhno^?B9zGAsXdYhZQT-)# zqr&j$ZdA08c#6^MNVwp9JwcVgmV95piSfV92k!?Dsh~rIVUl32Rv#Y&p9o9_u3N9? zGQK>K3YDLZ*YV~`9eDIP$5cM5Xbe)pbI&f$@NgT_cpc`-% zzD~a(D{@LR@w}{QQ?MWpv&y#HW!UH~V(4ECL{&XuHq_!S922DCw}uJRiCIXpSQEFn z664S9pTvN&`mZm&4*HJ7@-9Fi<+i-39D>WIv~BI<@+Vb%gkKs=u9yA%P2=1x5{v^h z(XoCYPFo+R64-Y7WX0)#0DQz)XkxQK5bbA-IK2dWGI{?O9Y%#?qz0oZYzsb)-8@V1 z?NM7jVCL<}TIlwfmZrnG%55%nDrK_a%CdjaeD-qg{8h`A8eAAUb|J9A?<#ix-Nq>P~M=Apz4RzC(dJv8FwM^oQ)1w zNM^c~OBd8r1?U}rwOv%Yh0t*gp<~KU79Eb0NznEJO2EgT^VNYOpQNq`TmHc~|Ik?8 z*oWSNBNBZIno2{3OJmncL;MKsN5f4qZ)q?wTMEYlThfsgM%pD5Z=%x%eFCibatn?I zHoXC;NXqBH27ZnPR45uFSqo(+JI}BEStSPe3phEVvd=n6K=lv}SBuUhW+>Ee@k6<3 z+S;4!UX0|^{MmQSqAnkx1uoOA zp?1nqT1N4fUr4x zA7!JDvmCEAVg*y%sM_7oM(PC+^0}#iVnp+#x|b1;_m540%#SPJ*xCCHt@BpyE$+XC z-QN@iyDRExkKM^hA}pc48G(%|`ajcy9SJuTMxMo+$m@`YdIxJ`!BNO5t^hL#h^pAF z66R5}zB~nqpA--G|JEcS__fF%IMC}G^tbcxn#W!hM1X7Orhv0Tw(MyV1fw9;W{6cN z&tyIwja)S7n=Uz=;IEemzxWgHYDK=Z*Lndetz=8We?5BQxm51kc1f@^VkW}TsbH7U zDw+Iht8|*%0WATidM)X!@(t9lH=v{70mMnWd_w0|>ZKc%nqNOzK{6wy?m6znHV>KN zl8_J6S0-1FvkR^XAw(;IY61>uG$I>zORgqUpCr?em0%9Jw1iNlP2@_wnx7%5)qG{s z{E<8{{rEH>`v$Z$?olChpfv2Za=0fd2oTPBTM3A$#1X~_tE@UN9l=v>WN44c2)F*0 zyt8bc$Dw3-LJUhZoih zt+qzE(G>cU3Sxtj+`o*$?DG-oG(1qUeUSZtKGcfJ3W>!{l!w+fAJ{en5(yqG@o ztoJcjJ{!w*lub3jOitA?iwT|e^wtY!C_a}$OXiT1!db)c7!y6E&Xdjek#aCWwD8k9 zR1IbzL{!J74U6EV#qW8(rnVO=Ik-<7&DMsKa^gUV^DXp^&0vN0pNFlx3wgrrl1?v>5-bbH zbn|M5C_aTk#kaKDUH$F4@<+?A+pN{Hz2GE;!9eU|E$9y{0gm`PdX=j5T9}NcC5Q+4 z>uU?1QUU%_yy@4Ec(ZyL^>hMQ-I6xL4-&O%$D9K3ZVQ4DdkxDD7=8%cN!_|6M~D3+ zb*2r?kr^odhaRm@Fi_fImziYB!3KbX^qk|klSjpiw1ry}(-UmkrqNt8O zao}O%mvLXKAbW(LP1Uf9dWZx7cEdOJVCRO?*J>M#xx}ARcoiuN*%`1>*cy_L@P^bf zebbrB;LLRye0iP=R9ccXy2<_!AwcRrIxQ=h;Vsbg&d$i3(92=-9yu4-zw1pAYcPeKslzI5V;noM_iIV#ToJ)i^1qM69hqNBIbcc5W$WKH#vIt8h!M6X4)SIk$Y83v$S z4tDL(owFcPV>!i-nt%t0-TfPXDIJCOUSR95LpOqqB-1oz8ByONm9po&yRR7?Rkdyw zM}|_%t5qoj9w2$d#~Pl>nip5&u`~bn-)sbJ(I0ZoY(;l0*k$-uB~ zl391O65$4p6NKIYPs*G@hwEgKkJQ3COOtt|PxP`=KhL#9Qg|mMdy_pE`#mFgPw9@x zt_x3Dxg?7Xs1z7Dj>}w4t)`CTq=K{z$Jed-&_vGLt5t7^S5-aR<`hs|Wm)*wyX?i# zBj2rW9KOFG2o8zTNNF#7(FN2cHF$zb4YB|BN6V(#4Ush!jT5eF@p9dh*J(xWY7+lua94A&$sf9LVc`#<#Vwb$0j&@@l?n>j|!>Jh!VoutQsYE>?zEFhEKP zekWmEg7xDu4ePS1UZ1vk(tZbREEOQjDXlykTmShFq}blxChB=R&ogwG<98>&O>G$WPN9%Zy5a616-3ST4b9Eih z|D-(eZ_*gVmc*HMN2SW=e@v!QVVNFaLpuH+4T8kkGw@W%0KZNNso>w; zvTi7!Rq&_bEtX2+dfLhi-X-pKXa4oUhM%8t)-7YS7ff!&41^pId`>T`vlK~Q7pw>RtWw=4OZ-ZDM~NiJQ?X5lv1|p=}4^?eVZtx zT0O$Yt(xDS?;7|(0G0#k7Dl;FKc8N31~<-7QWJyCn6`k{R$3`Z&^NfP`t-?r)cu*4 zD2^2iC^!!&ByYL~s8*mU$Xyc`D#B->RdMul@x$ZKJ!!DP>sXadI;n^6#yxEd0wb>c zE1Tt0QM?K<@S%JDyMJy_t}EeC7W1z7SQSL}D;m8)JHW$pJBbHjy1t7xo`lSnvx<|T z%G!c7L0QU3$MTF=ng_i4_mYEo4N6b4W*}Wx5u)d|sWv|H=9va3P2mtWTTQ6~%%|K!9m!KShvFu?!J za5pn`P327a;z87Zn** zptsMXxxKkOD~)8sDkB1FaWtJFzx>RnG@4i8YS=9$-!NbaB~CZ@9^2N`O_zv<$q zq}fkRIfs+USoYXEYpCQc$$u?#Vp`NvjLi>bC^UkI`U-OW1j0&LbSc9}Iku75vAVY+ z9d5_MfJ38(&Kmx7@JaF(3Je*+jZEMOCAo%Dj=m? zx6gllX$}|$h6-okG;jZV3Lcg}z9bS;_Rdk}XX2Gk@M;KU>&Sa}DP=tRel_Y~aZed# zzwRTbd1}qUaj#PV#!EQcuGFX~NmN(Nsy!Psqq)W>XB6NaEo)3ffO;pi;WKHHf+WtldpJ4|=vDy#lHVh+z#_~|NYjYOQ6kz&RRN0FsJ z`eIIeY^7+r^blUGKM3MYMb8YGJx!}K?$_jjEVq-z-WO>yBnzC#n}rThYs>pX@YhI3 za~U?SAm?SXLnP?Pw-APK^QUBmp>Dnw=fa@{V<4v-^X@q&{q2d~J=Z|Ea*=gCPdxhb zW-QK81C{g`&PT*3M|f0;@h=F7f>FHZa%g4-*%J&g7o>n@Bb%TI^sP+7X>YDGR;_E? z#@weB^_DBs0?={J&c3B8J-oGTFzqpJHMU3jOflwfrkq39p!t@O&tqI6 zx$Iec3FInSXC;&DQ=tzyPekw+I|e4VGvLFB;_iZ$)5Ed_svNmuB zGc{kysB=uPnzkX)3y@wfnTU8h3rHeI>5%ux`)#bgrje0Vfe_k;f0KgmZ`I=csxR@f z_5Ncc*p#oJH$%J0VP`7>c|MoEHcZKs@(z|Kd~&5WjWeGSum^=BfOw=-N$XsUUEvB= zRww(ZXz=&J2gb892%J|IV}e*Dt(w=}yfHCf3vr^~8dl*vHjpNCPpE|j&!kb!ckqv1 ztop)41jZB=dRilLqNo;2+MpAua>u1W*^(0a^3cQB#7hNskY&e0$GDeHfAV?3OV5Mb zR(`L{(vsE*#*TX z2knDnbYrZUwsU8cv**cR4-TkvnS3bN-y2ajHLk6#M6tl2x60$YST7rXBmRkiXVg_z)%%2|!@YgAd zLPl*Qdf~|(bo!YfUu_wVc;w(W%{oeV7^pUiG_*S*l;Fn=F}^p@tDlb1?8qf0ur?-k zD2MrOxA4xbGBn|@oGz|C8oEAF7KGadN9Oh@-T&LqgMRgd!!^)y6KKIxACZ9eaE$*cEUOs>sS(rz=gNy1|(QqtFz zOo^1-#Odez7b#g$t0HEuE~6%9fMG}I@AW_#SJ%G}>fF>fB5lu9IffymC7LUN=kWv_ zDhq;#2^Eoo-@?HQ&}u|RH53BsL8%t+(qr%rbPmWc1h4ODr|sVrUUR|=S%EU#s)trB zmS?CLb~#e1c%RL+(YAG58k$yQ2-nBG<c>qrYYT20=em!Kzbinhc z!dm?#*<&!|l}*aS_H%w9?ZRkvssnKkO_OtvKOB&hSX6*c9hJ@i*KE9aX_v^S_Y$K3 z-d!(S7XE`mZH;XV+gDpC)33aCq7rh}UY;HUI>^+UEly!js^E>x$w4RcBo%3b*r|X; z#P*|#c>S~Obbx6&PUBE}n$F~QMT})3zfW!G;rn?b-{{9hU&Vgdd?ekeX9qx|D>Iyu zv5g^Td?1zS$==`p*4xD5urQc?LAxY6B!T4jUZZqYfo#7Zh~ESZ1SY(vs$H4}0HWg22`_bJq6LZV}ChLR-inAQViBfA+fnGK~*5F731cv213F?wc z7J|B&SqW+Km*VoV$XdVA;Egn)UwNgrnC2&Qiz>VB++ zeXG%%)&rN__j;hQUoD6Bd~WDijP6uU#X^}p}m_At<763o9J+;82Vah4OewyRqT z3o|_^u;%NS5-v*F;2*E5hGqO>lbT>QH>_;QH@e2BMKPZlnTRo8)TjslKEEUf#8}hb zny4c2Ia`v&!gp*cNs6`O;zz24xG>ntGZ|uYrz5KxR^uL+|Fs&VE;>w>d&t>b>BYNL zIHglZ%r@1YCYY9<`@lqhS}e&s@j#>9Ys2o-nnF8+!iX>Yd;Vn+Ip6F1Y&1NDYXAeh zF6umvm3vok^`Q1uhq*03|Kj38h)KiJgvkPjX!jHI zoD6v@2^pjU_@B3LHZylylHX^$mPub@LQ)4YW-RlqcG)VC8Rgiuo2OLJZMzdn0>jBT zzngm2`Q=_MP7W6&Rxshax>4PO@#tn?`WA$O79tXmfE>cd6>r9@{B=k_Tg5m}155ib3PhK0~lB3k!hEPo|aXaq>)0?5U2 zc`Q(Lw0ziH!EdSNDHb-BrjwXQ0*)MyS@l(Lmf@9Y=*&`EQICb6*-ZIqE_v0R?!KKTn4MKBKL2zEz=LB9sN78Z6T2eo9S3BaN zz^(anArWQE$y~oM^tZaW_$n_@MP-v}h``YLb>_c= zoA*yr>ZIy77For`c`~=A9ilYd{pVjG%_qV z=meVkb0Ue_Y4Q-5y8<*YuHx>6Mp~k*xlD8#BFvb4lrR0X>Prp^`GQcEo4EHA% z#FKxr{2Zn5K^S=VX0D}p?A(P+D_FhXQdFfV7`HXy*+Sei!QaGSPlkZvL@GN z%Om$D`v9Impek02pEls}<$8ss1ct5e^PzwwS?{zVR$#sSyKS$c=y9uw6hRvA>B(QN z%U^qR=G4@>ak*}FYqEL>3_JO${`Yf9TqUH1MI3K-BgIXGt=FauOzii8az{!3^l}B< zbHPiMo{nF~K#riS*Tc<8sUTKP)b1;>ITRlkp`ahcf)@%6YBu#jUs;}?&ZZFsoMObX zk^W<|>-pW-n){nt`dxeSxrUpvRLMJI;`2N|N&hXY>=$R8 zZvu6#nFe;k;;-^{+cL4zk_q!O#g7*}s10flg}}OnYt@>a3O3eSw>obOntyfM`cL+N z2HOnWeNywxQC}|5Snivz*D#TV$UTo~o&%FCBE#ePVYFV~@@uWLUlBC2%VA5)%b<0g zH2qJsx!pK8J@w~!?6pbo%z}Yvz_`DDTm?`j8ad^KGgAd$#Y(mK#0v=@q+we*RO-R+ zRW8)Lr~Ae9R@MoV9^hm6{AO(cO3*d5^ix#lKEi^UM@>`sYxs=q0#o9>B5{VBM2d%7 zsoZp3k+R2#aC&O4!6>ToUT_1yR;c;b{dJ^BTH=A(1t)#rO6GkBM7^5Q8)Sa1Ah9Iz zHLxsCIYk9CiR0_YRSEzsr-+_A%X32Kv(hIefD9(WJt=0Oe)oN}t!$cP72JsCD{wIS zE-r!1&Xq8#wycl(pbM>SLu4rqgWVC-6m=fpz=BW6H_$e~R|fl*^V+boW3h5B9&I{v zS;fbmm!jjk@1e}W+{bm>-lv<-$keR;p2i7^+oX+<^owWq86EApp)wgc3FfULAn5ey zy7P-De$Y}kcNy>`na{M_`KC4J=Yv~bn@rV0+n?;w5-ulf9*e)3@#!rDk84_3b*JYc zDvk;oLkS62^;tB$_NJ~m<~i54K)REGFJ`e}M5^~8pJ^d&9XELJx4QSvKOy7B6VgGo zWvw+>f#rw>W^4vv^1|PGXl)R{7DZEp*>;$6pBzIzSzKfl8-)jqL@c#bNf7O!Z97I@ z4hhrok*|SQ=O;YS2k;M2t+q;6ng~tkjRF(cAJG!#UFZk_=J5oJtB?K*Ca$FLlj637 zbpII+wjTjp*vNiQ-@ws7FHX*2{YlfQY^L@(fY)?CytsqUc#Tjw`wC7vM2Ib$iGL{` z*8Uae!r(c~Fw{JaF$aP5J0Zr~tM1BHci6q^6A{R4g7_}oNOFM;bU!2M0M#>P@kYR{ zse+E+XVs|5z;GT6QB^+DUo-7tiG3_!X;1QcBT;>wX^Uye3PL*MaeC;u{kc~(?rXsaM11wQzM<3V%v2J$)v?}2 z9_+WwskV{kt{fP+u-&jZhHT6*YR@TyN+2x5BVPFXQy%d$?=n+ubOt+mXM`y;V$wxx zWAE1Dj(#Za9%bPU59VF6Lp0^JG@U@eN6bcBRQz3h0$r0#z%H7Pl<@Pkego}O&dO1f z74Rfw=fsi9*!e|4_wv{2fhogsir%2P1uZyt`@EYiMWaihA=Cjb9SbBZ6$_0w7(TU!cxZf-fF5G&DQ`O!W8b3nvXg+j03L=fj_SNwp`O?pm% zYLbCLv&@*?b3SsB7Y{*jS`5d-8$Mwhqw98PBI`|g&1E;qs2d2u$Co#R+<2eMqsLgd z|4F3VqmwY2FcC~;RLJ62eel?Z3iVNO6Seovk~rKw=ymXu{t>Mb|3gsCg!xdX+#>)q zHnTo%HNY%nom8lk)U_XerQ6Oj`ZJY?DV)%9YNuiXQQ<_vTwvg_uMdun_T60_U#e9~ zpotcLyDXbsSVqK4#3Ltvq&>ay=wYt}W2)FPuamp6J(sd~LUAnqU`zQynnv-&b>Frh zf`Cm`js`81@j3s>eLa9X{z6+|I4skr=ZF)zn+HEmL6-z0dH<|9DA=dviF$x}^DNX^ zQT-G{A*{x5`m_gi$vWkJ%k(3tQb1;zxamf@dpuRqG|_^=KvoS zWuXqLZoz@Uj6@D`O}0bHK!P8Sr`%csP@DWjQ;D@$qwyy3GcyKo&&cTI;Id=QF9w!$%5xQTEZG^RcmFR)jgdO7nK z$D)zE1?S9rycx|G^`2U491C9LCo(nVl%=)!X+WLkrwHW@X3q^#qNKsTg`1ltT|ONg`&xu+9&+hMARSkap~BR8~u`%Gu8tpP6= z59!Gx7(F6byX?f)6h{=&$MrMAy)tP2p$%f4L!oxSSLx&TCPyBU=-lXLhle``9hA9*o6%_rlw zYGI=ai;5RLIt-zLlPtfF>IPjQ1j0}(%Sq0JSopZH0K`zl?- zpGlSf+HBQ?^1x@Lkg#O5vewl@TS@;iuVx|;PFp#z!sqt=SpqrA*pK&_cEYZFVu+Z` zF9cz`O}RKCi4NPxlc2I_`o@{6-}ybwaMJ3(qq*@J635s6334NvJk6`wC3QgLx>0Xl z?*aNe3QH3CgGMyUp`xchzIBPD)17uXA=9`6-i*hXbGFIjZU*6_Q#Pi)R(%KT>>33> z?s^V@XrHrKvXe>HV;yUIFTbYoymow)N{=inCxe-2n5(h(R@^P;AF)DdMw@{(nwRxM?x zpAb-3<1yvtFlw}0I0ZM;?3|CLDLW1=dkP1mt3}ZnnIl@qx~?f;nnwI&6aJO<59$z@ zSqwOPL|~_E<^g#p8wAl6J+$|dKP2Oig^1ULu~PfHxt zIx})Z5q;0vanXx#g|8PO)if8dRAbJgyXuzT9UU~FA(9-7rTePk9V%S} zT-JjW8K<@Mo`=HxP)f!{Yp4+Um?39;+>})|x^qesvea58){JEJb>+-qUaHq@x`DL& z)!T7rG;w^lk;JVIRwsJ!)o)>iaq_+}od<&1DKA6pA*8LKUG9r~!+`F*J=z4I!mT$l zz4HKK>QDfrdb$nzRl?cR>NCCP)6*o0I5qlr1Cr-nls@;9JCGsj8$`3Xi%&OZ@-ciw z!@F-$g1`=4;dh@dYC~Ms&+`|L8fGzj8wTr}l_6)L0O82tU6bc;ER^{~gYIB=RS%GP zBtn3grKGWp@z-&OMiH`3+xlZi)tBPEe*kU*OTfn^`q4pzv(h=IG&R=ZpN9|*qIl8N zEgTW98>X)K7Dbzz;>RSs`w&ihnF{UO>`MKO%&~02jR22k=VWTe=Wm4YXHbF>MZN&t zEkXyAX7kXo8en;uUmq7kA-a~|2{U!r^7Sz=ADUhJ3=o=durh<{F=|1I(#n%1b3 zr6$HvA_{lAvx+&NF&$ddJj#fz!)i!_aXhgn(qZ54&+u~^Gq*bC&Yyg0H3mck3dP=;IU6V4n&xHa=671sdPpk zi!iu?1tSRjmW7r=K=-h+F_c!N(Urfw!%c1`)Q2x-XAA|Zu4fzqQpU_BJCxnp)&-k? zQ*R}Ta2kG=-AXUcwttwL1>8q(xh}sXyS@{7QajsFm;0egVy^}p+{-aZ0^{0Zd&79mySUng>f@BVXATb$A`9Kuc4<>29;4y=`}%xO>F6-~rjIJQ%=6MT-AX zBchnbMU8+aOrw^7gHhhXBJR?(8(_F}(q@oeGP=fpaLWCrUhSN&hRkh|MX^04m}aIM z@b!x3E{vd7J%1`68;#lW?!1Mudl3DrqwU;EgC(DFx;U~p+nwSbh|HA>_v&RjWwIag z3B9QH|JC)jQh=+SQnRVnP7ZpF-F|OwK%h>i3^@^-%2QzbaeUf0C&r;A?VqFkW(j=Y zUFp|#k~@M(H7w1K@%>=4D#X0Z_1_zWnkFyn03QYaJb# z{BSlE+ZGt8M|9uVE;Q|meYO>_Q6+$1eQNy%DI3Z958DY(_v^zvl(nym0gMXajn*E? zStkGufbxIo5bT{Rs7lF`6&OOY?RQW&UenFBZ+r4B?B=PBKX=E4QLy^Z^I;`X=t61? z0Wwpj+2$Ms6Z*zLe?|x`JEG6rrQ=nmoAa)N2@A3H7$&Skd(dd-Zcq6?G1HOx)_T@r zy9ioB5+x<*dVv>f!&7tD)rN!T`v9f_tUy^XJ<0op?Us#PCG8WkU$6jLGo2;f?IPmt zNi}CL%f7ASskKYEIwckSa2~9meP1HKbn%&PV79x{DFv1e1a{a^&ND%3+WI9Ip#qD#M8BCn!S>EPn_@QSuP^MK%7WL?EwD+i>==0O_vw{h**K6MeQL|4(Y zaa5|4=hhi4iNTXeS}6w7D1#4H?t;9WGrX)#YUY-YMS+X7shevki}BM9DfB7r09e;c zh)iV!j2OBe9VCl1$8Kb3{cXVT>Dg7%gtsr`8Bqi~etP)GACq`3{byHGU9x}XmZ%oO zJVQI+;?v4cNsV^{+Yb5&RDCqzt;$i;`e-5V%vn^s%^)DL^2pd?oQ%2hj)g>jQ?3;y zhn*NIK>2z!ow)z={G9T^EW0Mx?QrDo!7XVIt2by>Nb~$}Oo>uKTW~FQbhM5R)Y-F?+WFkw7?n9@~8vl1oBhmwqOzznm`<{@| zI%;E=@?Wr(syzJcBZxV&m8lIl@5Tg=Je_6d{XWuPRda1QX;29H>89F(O;akVqbzV@ zZ;zBegsJ;oUr7o8UTI@-7gus5ihM&B@FE}SjlHk|xS?PXhQJsMo=`bv0nN+PR$YWs z1k~sSolr{n5yZdW^wy^{9fqHorqk?v|4fz@Z-dMl6#q&YlnLT$_%!x z$GPihWI3`wONS>?$|Y9vw~cyRF2F46yM7A!IJzJC2L>|aJq}l6$gfe=a5@LZjxtW% z0K1e;npPD$cy`GGZ>m2gV9ON;58V)05U8F!cvF22{eZk&Ib}Grd#Z|wjML$K{x(i)#+Nr|H*86uqx4)e3H;PUp5q12qFGt|d zF_@P&6wJVj~_|AAyPjo}3uTpV@v_ELePh^aYYg|Y^ zcXROU3W;7zccL?Vg)`a!DJQz$G*44vUqB#z(*$}|kK^oV0IJt9E-O+CN}YLo9$x;? z(cVfMV;n(NWMipADMVUcB{o{*F|7!|X`)331BrmLvFyNMW#E< zPvARYvkyd$n2DTRLyX$^WsoGpQDi6x-wPk#dxFM;7&^RBIEx)#+tD8U3u(LPE>Jch zgP?-GylJL-UZT(PJo<7ipoUBu zSdS|WR2i0&ju1g&ovkO$2XpqZp4Wnc8#rQG4@R$Gf|!U*sOuA>Y#SbMahn&EWYjm) zG)7MFMcJCs#)S4<7+AuU+W>w+G|7wAWo$_i(SCBLlXd`cI6llhY9GD{B}t^}g^rjn zYLM5^pm5gXhJ91)=Ui+lbA`Sc9R)7_WHi-(m&|LjJQITE38NJat2yr4H0@22;{? z93?f?b`SPZs1uMtBioF_gQ0b_l3+QAw@0x}MPHxoGaE&eEO_Yvfd}Csru91#(9F{!^@c! zBu)g}r-NsLJk8>uFT0x8ijmh^$+ys^q@#&GwgZ&drGilmELqAVP%QK-W%9bA6dFKL zz<-xS{s&QrJ`Us#qfMIN$ajR|7wX%T>Ydwo8rg{5N{BI!pUF6&6UjxlCMSDLJP*BO zdut_|J3z`)+x68TP5u!zCVx0e%t!EA1P6AnTg5)!1sD{SxEaYE6+Y2XBM{??4E~FG1ZI|JKqi6; z4$8WY&Wc?EcB|cUcuvfTHWhhH2=T}8lDh{zTqbJ~Tu@D_X z3+#l}n2b>cK85i}H8F@6tjjNWpWKE;Ge&4#R4uD9jS^uejQ@hy4c?D7_{HGKUHJZj ztJuIZkyNGT!z(L)xB5n>f@G3+QhqL+-|uRMsi5Jekoo%z#_$J+@iTo+>zeYLSpM*a z0lb1bT0JO?AbzJHzKOl{c%UK#;Y8YHWb;s_c26OSP7k0zWJIt?(Rj-lJ6A-Tm`F=` zDVAwa_a=Ue%vk>FT+HRo9Kq)2^sVjM)~59s1PpFRFcw$i$R-kB?xurG+NY3siZ&uR zmu_n@8j@=%;Ic8nL;3+WM-HYv=C8SU~|O*_KihSZ76UNQ}rjd ztkb1#yDQRKM@u`{_f~McRmcnQKzLsY@x}I;XIkH6YJ<3KTX%M;Tu#spKTXQuLE=v8 z4j>KP6*FZ2r4)`^l@9^U{`&z~piFZ~(*f-;1!oU0+F8H|wzH%lWCk#YEYif#Os)FU z&YA$s<%?A|SUrLl6vrV*6$TX(Rd)P<`Wbo`6aTCh0sd?{#E;vC% z*F|LXe(;Z^aHC5u?q;#o+&KiKZ9tkLSBV%!EjHV-k4BfVL+qYly}QX?OD2lRSRT)f zjq7lTfURI+ismt1$_%jqkG=Q=ew)RU!pnoPjk8!)>rwIevZfc%Pwi<{^p=qb$&h2i zO?h>W`H-Lk9evS{q=WS0-EdQPM?Q4CBs zw@NKCRD9dYGaZHQ6qDTTWd1n<%o@w6@dQY+Uk4EZP)k{CncYOm!ET3;l*x^voF8y1R8J)3b^gfI!8ylJF+C}sL+8>v0U$EC2^5Z zj;JOlAj;_DjB_0UU&eK1+{OIJdrPgi4~E?DE4qc@O*q{kUo~OECz1uoylrE|W_@e{ zVWohU7w+3=l<8FFJjE3mp3IX%#qDy1WiyErd~Xt4@+;Q7!6Ao0ijI0;@bGN$vxys3 zZXeOp4(wsu5uuF-%C}$(_r9Q*@$eD4H(b9e%m^X6dnboYoZ>6 z*pPU>BYdz9HoiAMGlqlK8=j%h%F|u8?uvcMY^hNIlDV}3ln?=QIXB#kp@A^nTK^yNh-X@|_2N1*;HainMF1Yb(?>kQS zhlGFLEkw;W?(uZv{RN*Hj!Xsf%A4akBAku-UX>H+THrJ5ijF8=JLERr7MP$=IJC~P zpN2G%-9)stuo277PlXr2|`E&$nenEqd zklNlMj?p4sxZAhNaexc*4I{A?I-HV-eSbfw=9VHlY!RYT09>*+?;$r7;pCrmKCjfD z%LQ&nhkiq>&v7INZ%o?>+4*qdVC-#LWx{NJ^t-Y;Z(l#uOtTFy;Dq)>^~>bL+TT{l z{6W!#QI(SNGnI%?jng%9`couH5vUw2IJZ8Z;_T@es|0p+I;?%cN19Ssgb+S(K1RSX zINwL__6UzlN(`v_-S%PE<=P6;I+!8vupyuB&?nsIq^hh6CgfV&I^&)QB|-~r<@vCD zU1{Y_SKeRTeW7bQ;sSX;6|z76&y;srC8-|d(MvniKx&C5_O zwKru2?GBuDixrM+U-$_}rMXjKkr2vc{$FA*kir|OBJW>jsyF;vl*@$Qacv{Y@Y#D|P#w;#Ge`|{8K%>` z3ackj3n9?2&6T-4@0<>GgV5pp=R#@E7+!`odEbbyKXrN8A>YTp;cXIl#6uYOQL! z0;B|W?ja;_=+1JoTMY=z0tIfk&kQ|U;)7Ytb3HY$YcBbD;Vj_)E$i75HFdz=E#LfH zKj2jDeX4-32vqxb~k4hl5@b8}C(HSdwXOF-rRe10zeye8#vIAfOyq`e>JJulBiZ87a6-^IK%hW8<- z4zmf3{WvT9x0J{Bd3QG4F(0Jm!=@-!xy zBxbW&yi(Ty7OjsK-4dee7UIlBz0%p6c$sCBIiwvP9dLg0Qm+xX{Ur_2)0jP+6CCD1 z%_1!^n1T1XV11e3*9x7W3`>(&oiXOVmyt2-U`u%Yy*nJo(%JX?@{!hqa|y3%Ytr(i zs4iM%a7*#eND$a@>YC@Sl5wlp`JjE1A`bhBUqalKXHP4z0&S^yvmnSj4@gAaCVg-R z>t;M(sEOd6^Zxynr*{D@1Tg~Wi89x{QxXiSc%dsC^n6%g&Z3K~=lHxuU8sHxrQZCo z8#uMCdVuS9NN$Y)qa4ee{cfrwwOUDMn8=@8x4O|eI^db8CTMyigrAsVJ7)7UMUw3w zmy@(Dw$(c6R5Y|!azt4nGP1!`lsEKo$4>Z?g=mS?Pr5u>7y7a~-vo;0(^aSbFyV=h ztNu)vPE{oY!8()meJt1ZWAe*gp=}IMPkP#;;2mZ8K#NA!hP?W!Es6By7FLfl=6{rY z>K^EKB;dB!NXYQBUA3+(EX3|5W5*ns^nZh*q$6KH=Ui5R_PK{EGj$VA z+|HgyjZZLwL?X^09O;9xUz1JMWKGuH^KjxdMpt^=$i4i7IhFb(ni4V_sLWuw&DoRG zO+dpW@Bf`jlBo(jNSgm0*F;No3RMs4ITG>LvCmgFB35Co`2No9ortPS1%oXEjFG+u z2u@7tBlL=u8t^kRM=mv#4}tUz{O7-uERe4_@}o~XkJXH8t0NY4FQ9dAOKqnad)Fu< zKi~YdSg#aKIaH1^%#__1*2;+gpR?NKMV?I9`6giYq)gvAQ3Ai-89Zy!GIQ#TkQl^W zp}RMcO)U4D)6rxMwh9WaNgxcH|ZQ#LPzF3(Xc(=qlWX!-*|g<~~p z*k%L!BEjvzh@bIWU1mPdz$+K(C0fydoOhUT)n4DLpHtV1vohQ4l5Q&UvwnBb) z07tn9z#^d)(Rgc~^)Q;l!0xkrUIa+l&vM269hb{z;gUV5c>*Rkhcq3Ifk(LUEhtA( z4*i)Mc)v2K1%^RzPInJ*N}Lt6{tE3if>IQL5F7Gvjmey*n_Zc&t|%fRp7X5T%@Do= zYGivPz2W?(2l{Mc@7@OafcS~KK{Upe%Rus><{Ml(GXL+7&HVxkGcFu!;zr%H^RS`g z8X_$e^>(7@?I(qR+V`7UDzvWJaVMaEg7B#r=RjqbbDI6Na36qgrhVDBGEG53w?ndT zj;s&*p|17=pC_5(x)%EJL>X7LxQvxOt+$R3tqN|`+4Ar3ji!!pBgt#RLESEGG zA;PBqUT;vUB2^>#f`Q^+u8W|iPMiALk^I6M`S?$_GW)i~`zq z@#$<*VhkYX*VF`%lHm`|2EuGrIcXpEH zkj}Ou8gH`S$slW_kZbvWToE*`1P|Jgi<>(=0q9ONsq8n$c!AlD3sSI@o1t<$Q0%Xi zuq_(v1Rs|ek3LDM1t=%E9x{z>6DB!f!Jd&=5~sG^B%76@4mc-9tr|krT%IbxE$QoE z#a3cfXFBINxL_13A!}QWc8g6RPhv9;3*1YgNS(GnYT#d2aXw4=8(R4TfPWgc#LW&^ z#Y%WWPo7UKW63(l7hu=%84tlyD2H$XxA@s-x!(auSC*|7vgE4EcdU7vamw)OOFbLe zkNn~(?GV)N{nC(Hs~sGDvZNb_KPLu^C>VE%nCTP@_>+I!vX z^Wz?(i^6QHyu`fcn;%NaFkd1!q#DI$7&h2OQ??W2{9LSJomw36Dv_`w5{7p65}uHO zhFi$vR-K7BSjvky`yfLnlP{Wokadcc!*v3W$df?dg16}S!tpW5ubOxp za2CRSB>zSp_KSICGUy5^uGcVcLUksp-J2|yx7YgZ_um}kvb=kiF3{hW@1!)W4Cv*lXa>@9o6xDYan`Rq;U|ZcJeL7#5A-U_6t@z}p z!~$TEm5C~KSwQkxM}fP7FD2X>qLM2zk3^zm2kNiSBgIaiEL6Wr57pU0?=iUdG=Of7 zKE2Cok!Uv}1qreLmV3HXP;kQVV|N;lgxg8>gq9v{jq9ffGx|RW6qJYRvZl16VMVw9 z{-OmNCNX6=-rf~$7GXeL+(bU2`$r5aGE5y+p`&FLgbd^-cX|>fn&-yN1@~b}i?rH? zz&#a)j}Qez;*^{7c!_-uQT?;;I&X1R|EdIHbcRjt*T}!L7SGC2!~3=$eRPXS*R66z zGYw=USKpVV0YDp?917`*bW4XtSrDK((k6nRx8H6|c%$pRl%=Wh-xfqf!M4=wg=(;( zeN|3Po>|tKdzx?NCBQ()I9StvB%WlWxGsZd91JL16e)(tR6CAd~$3SD{u(|3!O*KbDi>sIVHXxO##>*T(9Ss&p zW&TAoH(Y<#dN}Ofu-oU1p(u0H!k1(aXwWc7aA^ot6*Ikk;j!p-_du+7pc5fYh|%40 zt{cCC7a*YF#w%@_YxRbA_0Q}3_9+ymRa9o)$(YqTO4T(~1_ZAAIDiDLFg<%O4p313 zqZREru5!OKB7KO1aT=qpUA*b#7CTPK19w|A-nYXXuF(lgbM^ZBi=jLY(Ha>8D9F{> zg*ZE$Mued;j>uki5JjJS-AWyq^qoU~gBT@wL)bynY9OfD4%JYCfU!a*HU?v4^9C9r zuOW!xa$!LDy6R(BE_MJdX$ad%C2p;BinlmQsnk-8`S9mmi+DkkL`dcN$O;!OK(Yw5 zXjPlTi20ohzt(kC1+l-kqPNZ%`e25&4AFo6Vq?6XCgvMdWRc?z6tKKjb+zLWuPL(o zPTY$X^886y*oJb8;LBc2TqLxyN!gs>V4LYy)c1#ax*NyYG}~H#k5s~ptq-T2)=_#mlzZi!fx1tc{Maxt+| zDjA!T4F8N1{Hep6h^J>FE$`j&oEZw5pwlz!SJ@%UGekWWXH!rSy}ZPlio}S{F1Wn7 z2^1RsPX&A@Ov2d<*~p7F#XRHSfeYCX!m|1h&!8QXVP@aWuL# zE6M~mG8$mk_GF5wU|J0G9#*+HXBakn5k3f(R(OQSvy~<7gpy zobhzXspQo1cF~neJy`rtGE6Gl8WC#% zVoV8LxY^3J;+;(OIjOH(DCnG{jMPWXhIt_59cS$GUPAFxKOz-^z%9_z3qZmBs_qW2 zRWrR7s69k+e+e4zW;$DL4ks1Rz=mJZ&2e?IR9L$aIyG5wFQx^H@-iBb0Tm$fsfeGkB8EN0rEG(jwmc zspREY&e}8uQD#W^Ipk%|;>42p9rlXb!K*0stCMwB(w*6Dj}{sjzny@#IStgQRX1Ha znn6+ixBcc-0&l&&eyhr2&M=-n2nae;X9W}amdv!6KOXwHBft>ApgCk<0}878I_>QA z(%bpYOeL*$5OQF(Ig}=PvzHwnQ2M+Yqjinb`W_-AKRv607VAM;b-)^}|KaOUHJu|ba}6r7o(Q6fNxC%2pjWY-l$57q=Lar$Q8H?*St zbiZF)F`(G`h$1Ggn8(D3Hp?EDT4tGR`39WwIaGJwF4(dggx;jHSN(Y7XJ**MbMAEyDhiakmfb>mt^fzl$rGEgYNZXE8$;&Rd=;h>oKm)H z4v7aS+Y0dJkKe5q67$L@bdFy0Bm+S-V&vDX(Gnnk!x92cR;CYMsRD$l5qwkcmnkf6 zGG=T)O5Nv73XXw+b;`a?SwowTM)FhG>E7~Him^iqnw>26idTf=H{BuxVmYQZQLqO5 zI@n6*16K=cT&v{v9rc-CFgM^Iw^mO}*cN%ChQ7qe8M*t?fE#>|lQ$T;ZX!I+6Yk;G!3JyV(14utbcXvG?#U9JXARMN)B<5x*9V82Mzdpk(l9+id0>UAK; z-hgCjdq;1nhQv=I-07bB?3R+^C#KH<67u(>ffHllQBN??U6hRJ6+#0H5x2vW;B_Co zkSCTE4(+ng0Z-UQA>b7Gv5uR@vA2iZ3R(yutuL<254|r~#_aSZ3+7$$c+v^Ar_c&# zB^n8HtK{nz>vqm2{ZDC6wxUiL6l+zHBa`fn|I>~<9v9R;ei*y_(9yi-qiZNyumLBQ zMP_t=OA;z|*#4t5Df@dJbbBJ~22QaP_ z+@i?1V-E~F{f-M(?+ot%pKP^OL3HV*@w~)ZTubx862HqpB9{{fM~|wuQ1t^szi^|Q zvT!PcN%q0|s%M~;AwUZ|j%90!(n*=x=sx0RG14Q6gwbApen5T=6R&E81fMgdd*P-E zo<$8u+rGyWZ`8sl)|iV(mM7^qy$Y5~aG;}i{lvX)D)}FfTt_C}cAg)S2&IKa+-q1X z#rk@(ge76eUc1=E98<7MW}fyX5qPkeTUZVYzrSKtArHHZA~llnQR}56&&mg4{Ezik zaud@y5rXx|0G18)J$=5GG(Y8&s3we9bN)|yeU(rNKZ|Nm9=m#(7PMGfRl}aEl(Bhj zD@3LVg$wb~A8_#jE>Z1FyUFuB!4FKrQTI}Zp$oS-HefJjp@Xq&G1Kn}FIFL`w~#q< z7!_xQSXz6&1o+X#0D}qm7Wiqsa@?bKd{a@YCl8W2-kav_9=>^qe0}O7DyC6iAk(^#}X@|6uNc{HqzP?W?wl z;4gD2k)Ec}Bc?b3({B$?aLJkQG;8MhYJ96)K z!d59+$gbUn)JhELO7v?7nw*a2iq5q_j2YQq^bw!+s6ewAP#BjoS57`q-OU9!G;OND zG4$Ts0>3)j&*U~A^7LQ1k!ABkm;ZV*Qy}N2*y&yt9ukIR!U!6f5@zcvfqf2yrzUM8 zXPCZ`F-vCkz%PBUbKL_4(S_4txRz;uCQf>Bsf32Vd=0)qYLob5IZi5kc!WhC zMD2yvA1uoBdJRNU$`y{8_kG*9sIPkiRubkvMw*Y3Km>1)^LP>{OqAQuNx)-F#^B;O zn%I7b*5iG77dZ-lm^Q0`EQiHQQTyMZ#BTaxknFf>xDz1Amr3>I>$j(UYWT)BIvNECK!%Q$3s|-Z!oxcObOjX%i>bvO+Ud3Lkhwd|-)N zE#4p6fFYMQUylNnR>mtwTwsS1?WXZW7KU{ADA@ z&j6cuQ(a$1M*PAGk(Jh7Hwo8@AX^^c!FUTJMo>&QRaXdWyzbt@ydQ6d*a+)M%BHXt z&o!QFBveueyRpO85@1}QO$|-=GxarQHXE0$Jm0yXoR!R zg)_=er8pA`-GZtCPwqwH3f|Z&&1c;JB6(05qrHA&!e#^~Gkh|$8HljlNEha!12O@d zQJZV8%%#7bY2bQL_O!$NiZ;bO!0No{OJYNkbs$m6lU3#E>XJGtm&4L@iTbTuUKfN(8V+ZC%b9xC5R1n$QCuo$yGO9BHGX zkpq|tuUbc5L8~N?AL*h1z%t?u;K^8FRRF(_tnd~cEe5}G%!+-q-24Mn?&OIK8za6R zwhvebA+rEtVHTZWj`eAWlRvO@E~*0|5a#N#So@T)d_=#zU@j9`~ zdh5T-sf}Bw0DSkYPlpb_BzqJ8_jtXb*~aPEu7Ik%j2qT9uj#AGqk94WxpriZ5tWGr zp69=|WWf}B79;%DWC~sxvs!lWVyZW8!vO)_XH72a+rDTY562jq)Wl>4*Eg^Z;0##k zOyHse1Wbcff#H89h83&OC)tmT9|tF_tACws&l3j&D98DE!Z_ze3CkFN9si^Qg5cQy zIqkOfPNE8RySlmyfOCnKFp$v&4nQ9KNa@RJso$wU#CrGRQpEY4@&PkKlyE053SGM6 zSqN4=;Yra;36q}U=h2E^IbmC|c$&p>@kfMWH#Jswx0wdxAw+%@>=m z<{k+6Drs%PfMj;uBn-FyRb*hNQj#NI-m79sc)aGS!PtIj?>~R1_)5k0;~Wz8(8aui zOs)VuK*GO-7Nr*`OU$tQZRFkr5LgXLW?L8#Dnv4dR&NV|HCbsURz|IzG4{~hdo&B9 zW$h#L{ZP6vg&AIExg`Wph=5g~IOFmq0-7y;nY8p9H*_&!v)Wa;7rqp^(q9wHJr&h| z4`uh$>D4mvNsa#XeeX?5^(A1~K3r59i4v(Jqd(<^awf0XCR42&Z?W2ov;piE-_5E8 z{bt@CP(wP=&dNK|xjSK9Cw`9WjuTioWB{S&!`-+RfmjZzF$LbgFfD-|JAUUi%Z0i+ zqK-d0OjYu70axGd}yPO52_ioAh_oCM%-GGk_W)19F z?Js+5`)tXWt2<*Sxx#@eRH{Dq-(X_AJMHn`JxOIy6;!4U%%o>8p+?X`$9gjKdCpk7 zPU*BG^|WasLC$MPP+>j(nY*AUrE+n6PtNMx~-N9m=gbDQFrvKvcgVlaDNIa>zc@|wGc zKi@X+ecw&v5Hob(pCXD0xzwmWA%@SsC+z||wdV}bs_8M@$`&9|zLEMyCj9J`(QhU- z)U=B>q`0E?eDo7kzknUnI;h0mXs1*YGx8{&%Uj3u_I0pQRdjnMh(R7D0 z@a>RJ27W+9y9#|Nq=&5C)Dsn;5d_uMSbeYCI6L)Y#+X3Un6dpvJUh#ZjFWagXuG)M zPnnlLUVq{2!htM0{ZXZNt$g)AR=Ya~^6YWQ`nDEm=|}=T5o(!P8+Rs#fTTUV?m2sf zS%`h(fP(B8zwaA0lmQK@BoONs%Cq|>!}FqF2j+?yr0}mTnUl-@cO@HrRypIrGWs+4&q_;dSan15phPE`1_5CT zZ?9v*MR5F%?5C5>_IeseXWTsR#PyY>7Q7_ckGaICih}^z{e63&t`7L(bD%6){)SJi zl?ZIa4PN$JDT#iL^>Uj1I*%euTG1T#_FDOq@raSoIY}1`N9ikHcN%W}U@qeuXP&DB zi~glZ`kL(W`B`T$Sb{3q3s`yyF@t&;17!MEzF+4i={lwXAXXjbmRJR zoO})R*Q7K`(~UM7?}n8(om{@MV; z{e@oPBL`XPeuyh**W1(dRy&84Ah*6jB@p0hmum9#;SvJ7wx&c7gQHgw#lL+61+!-U z{WNDlr2wl6g|90R5094IgQ0Re0Xt0ZoKv}3DEu{#{?i%2W3n-in?`C@$V+`}zb2;H zpvU^Vuhz$oORt2-fYCuTa`79tfzn0dC+@TGHkr}XzPbZcNKqjZ*(=CQC#9UbK76%} zW2}wo76s+b37XI*>*vuZ*`HI6r6o5Xtz1|cEkw&s+x+I-dPl`fqfBIbt?*T`TqRBT%E;X?`_F|<5dTnc5Bq5w!vs{+8j8%J_4_!e@ ztdLMy6!Tag&BaLsDfmcNh{VD-GWStHfMQDI{J=86s42kdClnw`s`tVZB**gqRc{u^ zPC$wvet}e&_lK}ckVW~iLxs_}StF$c?Cj!}g8|0UTE#d{D&(6={N$xlXENZR@dI7h zUYS=u$`eB7`PvTvYFCXedo?Z8R1+ySu=mR~0BWzhfFEOjREit@PqvcZki9?~&$&xi zS^dw?VLC2zjbZ^5Z|0vnP=4gQ~lLC_VJk z001}sf*%uvFFCuOutNW8Tc@*@dhEs-OOLpkiv|?u$^S%~wh7|oo#!)O;EAq$vjJQT zXbl;j6JRuOoi>cos>x?&kzG+5|9yOjuZwg5cu@!g{GnG9`_wT%JjnKt8BEXp;{|OHfZR|Nfi0CQm862Cf2=c#=0R38a8!mSDr(R$w z7B$`qrkF>C612Ayb5^2o0L_CXztF!p{+y;c=%4+tc7V=_v|B`hr+rR6tV~*<;Z3W+;(HA)nLgdC!m)AG{ z@7go9f+gpe!K>?$cf`+Y<;5TXG&?m{myi9hPKMno7ObI$=0WG0uKlQZOZ4^;sS+44 zH_@ig^foLc_-iH^{(8F5C<=q*X({CiadX6LmE$|B{03tu@qujTD!Vp;8Lwa(T}Ksz z`=~P$fT|mS%3YN1w9QA7K@XXp4kqq+%D960T-Q(O$?CP!Pt>@ZxK{n5WiZ+*ApwQQ zW@iePdn%xGh!6wneqTgeHIGqk|In!xAS?P8^PoNDgN7t7p=)l7$jPj85BR$9o9;YO zxa;=}s#f?=Q!W}*iA)cQ{lyHCk|#LRmqguPuY=??x_NKH@?K9($^ z8sPt5O$pI4zwxgp6@nm&^7YVSobwGh0*yowe{c1u&BD2mX8?Hp)q$h`P*a|y)!3nFMccbWj|y$$BO z-I0z7WZ|X8TIJ$6hiUqzWC~f_{fWo|f&tPWBC%TOK7CO8iQN-B01(L!bn-ljdm{OO zl&^?c#vZSDV_KSXIbNGifN3Sg4C#0sl5wt5SK{IFswD5^Bzl?;_yab~2flG(h0>~( zsqy2mTi2AIHAg$8ymmG(n?pxXL+Q58t7~=h6+CM}C3;bv0{0GUnG)^MPL-{w#X?h#$Rd6qL@2<>> zgr6ICoOhrTI0j}iTePziY>_D}CP}Hn%n?}rK#&dEC6EB=hk3bFC!6n62VpOF=*Cb^ zMVgV$nMZmN^*=SXD|%K&QNC&;lM0S$&B!5W=A#)w5;A=Yt5-Q>zV`JTU_KM~NQ|MbSpJ{zor(%to*uG5*>6o@W@s8F zGC1|P5@RnuO0hZRMKgp0DlfosrvHqy3eh=w0KqTWo!Jk(m3OeCoYC~8l=!bnnr33y z=s8WZ4o>t@z$9GMO_$ZY6YI~H+>rQzVkDiQrR?qO(8*9WbGV=LK(}!wO~N5`2&B8c z={rz;Hu0x9V^x-z4=|xiC5e4$;m%{CAh(cPP(mpo5sYC!au%1PaPC)C_x4pQ7IyKQ zC46!mYZ~u`NOcj8VHqjAo+mP0G>{jC*4w6%f}cM&A62r*K^?A;txpn?E5@jnS$pSl zGWfWzRuQnCGj%ex?gamXm6lC=H9zwDtXsN~QrmK`KG)=M?LJ%bT=wq8yiaPjVxitD zBR;ygk&9KnILk>lEX67nGG~nY*nt&U4QKV*Zn%+hjl*lL?p<$@BbZ;E#{)7@j$}HV z;3@ubthWm9SqS2!@6d;W=Q2|9EN?w68tX`iW8Ej6MoOhktF{&_-AcA^lJj_?7MUuS z0-}FkE+JI!MHMzyuk|4$5R-5xOqt}p>g!>_7M!R6FJLbM%*K&YU8u+5>Sms8YdgBc zXXjGv9XuPcYz0Kcoqe!buj(rQFn057uMGPK#J|aDMcj#>y-fDRW#+}diblXQm2nQ> zkDgA~YaHgeXq+|uaXG4WT?II6w;sr_>x7}oO|wBcdjkNivsmLT&M*yqOI@E1cqz$m zn+>OUy!94**cem#o>mm#+rYXmK)cC1{o0GS9);2vOA{`+gJ|)kVZO~la63HG^vqQX zBQ-V%3AAzkl@x3#@0>_VFtIFOt#>jbE@PZ1pnY}t&R4HKf-!JI)fKi6NJ&IR3t`V> zbIEtMb$)ym02Xy5$RG)FK`73pK&UkPM*tv3a6@rUg$uOhoKL#z)pPzFI-lv_MlOs5 z^UDCvxpgL|)7)n{*1DIji-;bP>>-BuxugzOntjBG(^N3*a!)t8!W>^NV#K`Mm%s>M zmCQ$Y&62S6PaIqC#C=i*i+P14!_-vP{O+m8q5sFwH8qr{0lhCVfJ+x6T95UK@BFLx zB98KtMNGOo;qY8|^+Ga9r-=@0)r22FJ^nUR7%6 zY3}P;!-`BhHBoM*EQe5WPiu)cR_oZ1DY!uQoA@3yiQAC7g1|*~TcnZ}!41`;N5%8j zjpe{{R=}Zc0Cix_78cg>8mlqQjV=D#I6>@+DRynPq7xyh826jBvI6q?L#IyA{|(rn zO2&SF+qVC9K(nFe%_*6vTs5>(wRZ&!NhF4F4Kz2bclFIw>Uwem9P8Ey#a=z=90iw zJQATj=t~>HJpy@PlRTA&omoda(nep<<(&&s%gM#o zoTa>_a!Vka=rlQ81*t;Iix3Rx2~EQPHK_t04a9Xpo}Qa^KKjtOS>{yeBm4U$$9Xq8 zt(Hr(tZG4Spu9S`|F@iAT$a@_GK<%Yt74Z(W0O+_oBzsb%p|3ZZ*Xi(a8K}>Rosn? zS$b0KHvak*&mF>l;k?6AIdvw&*a%y#DJZL|tjZ<3-nm1Z^KpES*BnO2fZ9L~=11X< zE>>QP)P`2SQDxP4gB#!{`ijbBw{9Xw3szmmxenh`W|aTq1$a0cO?weh-K(UN3tIj? zi|t_1#GKHU#NS^Gy=u}V5drH`BK~j{VDA6Q3Hd8BhH1(xUT>5SLSPT;dUEL3&kQ$a1Fi)xC2|vuL zqKpX_9g-v2L599XTA-)Pgb8t@V8}&prDm}pF*Hi5g*0j~r!BRk+}=iHB8X%6;u)XI z#!2ro%P2hgY&ge*E+=^YNN)A10rp zComAhxBI8;Pz{Azy`r^i;KgdIT8AqUud>J%8O9T(_gK zph1T{o>{trbw(w4!D9eL*xVd=l8v_=#tVO1X5#~2KOhoVwlUTsmhsJA{B70;x123n zZ8PX(AgkcliHJ2*&rJha3_gy6EanI9`pb%mZkl;?8FeI_*hHj@VRYh}wZ_IBl8GGc zg|z9XC!L7Wv)s*%vQLhzzL5FLyO%#yqVQm0h5H2Qou*nWnrPU`T)@sKR?Q!OorekN z6heD^P#R#u!_Py7125Z;OYLk2M|$=LB90DZMr%+sS$z-NVjGsJ2-Hd#g#Xd80e2>v=NZ-@#7%O=Ba$gJa^{$(``xElCi`s z{+@%ExBJQ|yS*l7x7V9+aLAYVxMM%#hF2aSfal%-yGW`VB35F>0Do-@aXV zf_?0+flP?yO7rOpt(t)V2Q?@n&D>Si-x^l3xK8KhKmf6G?jxo>3LCivv^##~o=`Kp zE3htD=&pr?krG5nl?ei!aH;iLc3&^M&pCokFDGFHhx9cyiK`#|p=a00n+;G?=lWwi z@FuU6iT|k8RXC?K*-$#*PQuXjAaW^(>W3AU5&7H@0fBE!7B9yEkW&W!)&sdS=#=wT zPM=-7$0aMHbRvOPcK%%ku>&;Fl~C7OqJz{A@Q;bj2EQZxs1hAb5wRcDC0`Q@jG)Eo zNwz8xVKCTc70S8YG7(o(tjhMT%?;)OzawfCVMMR$T!3`6V$7)QV3> zA@1!OV5vHOo8pM~1eC^M=P-*o_T9p(>ix~$RceV_^Peia6Uaw*;45F9aJlFtXu`Ni zaWxq_7u4dNbmG!#Gy3(%Fw20tCG zkFC?}q*`;dLo@81Z?j~05q)f&*8iob;-!%wx^WaVdA%eGLD~_xfD5aYoEFcjYRFm1 zCpSTOtadDLjpsanGJGR@x@bwHkNFma_j#5eQjm-R(8m7gr%NC~jYPpri(ql_4q_PQ z%fzQcSbU&L&qrckLOfiwz$1}=7oBQdCAHJOvYc+l?3uBwW`#;tbum>&11^*R`{pT4 zv-x!1erIDF9p|}Db(D8TF;cCDEs=a5&q*X)EH+nsJzw{hb@nYPcr2N4%GO3F8}37m z-3gbwQsN^qk<1WT4Lbz@E3p{4lDo&+)j3lG18U!uTq$&M8DIV^H{%@eNT zh6>#gwxZrtP&;eVmK=h}?ZEe7fdM)3p{k{r8_EpjAmKM=4E4NI$;utsypzxXM&j)f z;RRj7GnHuJ6-~Bet^EveHT#^=eKZaVz6Po(*twQr$bIozUyk z6fD?M%{MKuOO%odhV;j0ldz6NiG$K7)`oRQRU&4%a7ijN7m?b1244X{g_`0kX);iY z*xpD%O*HV|9TU3;Mj*Z}$X$g-25YhR^VDz&CKyI;oP4CM)28tNp1xnLV65TA91h_+ zUjFp{BEbL|8P{^C4erp zsITDy;A*My*85(f0k!*RkOHs zvGB*a*{<(n-D30=)jlEG2bUY|cGWT8>q2tc?L#m4W&=e@+wfjx3rceB`q~D^be{wU zYBj-Qx4+ckt8YQ#0V?971uxokL3OgU12~>iJ+p0JR#cEfx9@u*Vth6&>6EeIW3tl% zQJ^6YMTz=OA=BLl6F86eB&GfAAIAQpN)1v+^q8?@?R$#HF1Yg=fL!eb$i5`AH*@qs% z2OZYH`sD2S1otr&G897--^mrhwyWg9ppb+G|2t&77c)3UNQT&&*jp<$z;cBxLu}I# zW?Q7SxCWAO{5CP*fyZ-*v7dz<8T{%sg#5e5x3S+)gg4~=&~&$c5pfkOuIpU>FRc~6 zzn3Da(X`j2j=t5@p+6{KLzEHoU=&E_-?@TW7H1bM#%0tMpmZ+D$uB+A52|o_&$7UV zeI=wbZnjC4H_3rZ*Ooe!i(Yw_evB=#}4Yx%GWnDB#01 zy)61;5VZAKrKJQUVU=zA(qNk#hgY}>UI9p`%Pr{^zdY?zJ{kXDkx|uMWp1zf4IxAxO(jsQaM3{{)IvcO>&(*)1_G!#a?9 zW9HJMHe;2`wZGiUsTmW#VxoIVN`X&MgxL-D1!virbIC`n$%xgyCApXLo_C(Fg)YgT z!QiRFkWT}$zxf_@h${*!yDjoGz){-yKW;1#2mi7Bd7Frsq?)Iz*Cjz6&h?t4^s`?A z_)f+aK8@6D$Ib9ouO#DfLCE`z=+WKndS_=zfVh;a1ZemU)BzXaj4OeC1qm4ZP>Tb` z6$HmCfs-ymN8aVremQy6Q+v2wMLuAS^it;)AVk&nllx_mt4Fu|uLjHlE1@u8!n1jN zG!)widm9Wv467F<6vCtg?~wWoZKpPBfXJ82N6vO8IveW{PezLIK@+n#XcUS`n z-o}^Hu;HhVAxbQu1tnM&4SI$gip%I3LE~k&vqBJs*7=3MVjW%D_7uuUHH(oCOm+qo zB8;RX)W)?eu^2tIsbeXu9S)l$)ffvmX8M8*{8}&Y>p0U!(sb0%Q%zh>@5fnh6%R%Y6^@_fjp^6 zPO`PD%4uU|4sK|*o$D_*gY#W2SaT5(bzFSn|N%;^KCZfaCnWFn2%h|b?7S5`D7a^?m7PP8Z*n!XGIbIiZHyD|2{N>z}ToMMLue$~Tmr8yLg@kKLOPL$$d|E@pRorL4g190PB?a^<)7-}gnD?pi>+E0C7x(TVRlkD`Q2`k$ zmGOck&n&=1!_!2K<&6Y2Y3^FC#XJ(vr#8WwL&UwpJ$tdVsEMq0RPvO_OTX63@P96C zgib=914K9%(t6k)D9rXxHaD_$T!&(2s^t!HWQqJc3Izbgc!J5xzcb^-oe}OU(hU7U zqlUjpcys~bF9sfsV2)MavvXCXNf?eqYZ>gyxjLRPsMU1bp!KMa&Uii+$#%9)7?(C) z;B`i`4hlYbXjP&}^3z{e<*O(tn9qbk#(FYR943ehSWnrnmPx z+BWSNx1ZN3+h`_Ab(zV2yL|*6FBD?&%mXw)^l?cEc%l9-GPQI5*hJ_O29<}ZQ zfuunv7Nx5uQ%4Io{XAfy z@edX=T5NQK;GLU3V)|$^5{S ziC7qAcUKz^X*JV45ws6rrULWY`sdQ1+Dvil@Y*AZAnrB4=Zt@t0P zlUk%%vFKl~XVH_X69*(b4S~vp$jFy#-co<xl_x|3y6uaK%V`IWd;zq5r2Qg!iThe0&yFax+r{EAB*B z6~tcT%|&KRaW+_Htc{8m>zs(BL)>P#rX($@0qn8hwIrBHH;?qUP5f4|b|A^VsT zQH(!nK6gDk=J+Il_p@(i&^=Br?{2~%l2sy_?I+aI%)=&`zL;B66C;GL`mw^jSaViB zCI|v2F^843cHYi=bcP@JR$3LvZvvXR7t%eI#s^f}gn)SM>)0d3hLhQ~%bjOhR29TO z)6{;2FIR0tMb!#8TPU`~Cf@9dN%Eag8b6SFl`Pem-NrTnJO(}mbq+j_&^bz`ijW*2 zGjDvt(KBZHDFc1M7m?tlrg`~>)}F(4c#Cd z02wA-NjH@6*ff;v8FO^Pm-hXavKMiwNz`EqNRRG1E=@0<1853Uwzr5e0HX>!_!aHP z?`W6&A5IJ2cdHh!31-+j&qlx9j?fKCbXiOE!xc`gn~3~g*DuVV5wF?|?C*au*2TsN zvAR1RETWe9oGf=v+G@tQ_Y<^CNc{%xt#t5wFqJCoPz{_Vjb6Xs+jthPp*CJarjqEHbtn-U3c&J4IMUDxb=rZE_hRJ1I8+ zKJT+lo$1c2uIx=8X&I6?I?4%BCGmUj^AH|SaL)SHCBIO_M_N{5$`|)hSlR{W0v7zU zP)cik2n^WQ3XMAoin|7ofY5*M>&r6ZA%)b2;y5z5hH6i|KT)}#iry6HaIwMCA68HUm4!2N;<&^ny6yx6 zg6m+L4`spHgu|B_M&xgBEV-j6X^JTk#G(uvx#bgC6@6q8wQC2Vr$Ap#t>xbOGc&9D zMZB#LY{!oZJM8Z=cULbdYq-;}arr4TSk%d8I;zHgpzGi#4!S zC07IYP*k*y0Pzvilq8W7{scU#0QV@nNa8(0_^HnXS$^DPcO(KT=ZDnUJ6xGd)B;dyql%lk7yXYk;$8U_H-_;~ zb=#tu3CB-_h1oCtWAVuKEEJc+tx+3Ia~{C&`ohhCLE@j8ooTYm6hI4Yv)n1_Q}z*1 zGJ8rAfdx%9L1`zc<7e|EXXQx;)WZ3L5p#f&Gs44dTUc2(M9UlFxN|@;=Vin}}ebCew%`1+VLa?f2gr)fv#d@KqzBdd|x zj#g<51!dHgUAIF}TDv*^$nCsy3P5kuhi|IFQRRm+JqBs&k*ZTogB+A4xa8|lc|bfH z03IZ*LbLpl$*o?52x_o2V7{^vOqWnSHF8T!s|?P%F~3B^nN);;I{-{9ioP0(p)n7j z_>0F&e#issS<%g`7gXM)tNDb|FzEZT)OgS3OT2V;@Dgm17M| z`33c&h^fi)2dQ()>ittE03<(2Tu#D|#g8rW(a(F;KaJ)T=CisA!s=LU2Du5sctNX= z>q|$XqL`N-Ig;ekG!6L_UyD{|03&PMW`{!2RS?ZpLsuhC`hAgs3&bx1mkeaV@dM%m z*(PUm%i_Pa(tiN-qCS4m9Jao&!ze-|iSq4Cb5Hpk)ixxt$dRU9N6YbKKx#G_*M~!d z9{oMH3k9X|u>`~KsMp-2^!5NY95!F8zhxrnKBc92l6~7$yd;D{pP#q#e-WOYYgVJG ziIGKTh?EZQ(3mw50U)5iepvKCVVGOLtLp-5VT!JkJk26lQbUZfrY48gRu}P_H-8L~ zG6T_Ctz#?Ocbh&buMffFLNu7!bC?o&a@8t2DK9T_+{cTdD!3U0Ezam9S;<&UEE9go}x6J9(Dh4v{a$27Qe zkoT|IL#4bY+-}L2T)sZnBfzI&RGmkFAUU3+G++%i0ykYSfTC94!WmddP!t_wL>*f7 z{2Of2_9s`!4^6Fe=;;hu0h-f^fDi4tiRTFUvy0(D&YCJpaXbU2$?6f|XrZk=-bw=A z)}F9<@BQ8b#r(K>wzW*7Zzk!<7v{j=kjmUn>0rk%#fQ`?nTPy*A_X+H!kzWV8-0iC ze>@X^>dJMw>tKA~S8OslwD0iyoPi&&5(O@9If0?*Lb*A8#N!vY7m&X7CLa34A@aiy zBFU2~M6)R?%2k<*-_ef(3C*uIxxF;~XH7_v^AfGbn>Wk3Aff`JdN_Rqh{wxdz_85H z9WB%>l&;q#Mmb4wHvTNHrq+5KP2hbUt^lY;-sz)FX(cmUxmo@F!JkNQ=e;k@cd3C_ z?%emHblE$$XV!yN--_j`<MIt(MQi?uV|iTCI3gL@aA2rp3*GcFo%r_dL&aW(7s-G>(cJp+& zNvVT>a%2lQ5FHasPUU;~{w48;!lS!9?`w7p9{nOQk~zQD!69nl`U;)}A&yu{&~@=) zA`@?VsQB$yzH~wovI94ul@l+WYGE~d8yp+&5(6L!a1e?8-oEh4A@1*_sM}en6fhe{` z?t=4wf|Dq!6_b=hCKSW%`kl;yhQ~O!y`(mG#^wl|xauEVR!)Dm{mC?#+o zGX>K%Up#6ajHHQ<@UU6TBd+oJqg((lS#Xyym5-+miow$f(b<6(8CGT zHD3E6_Q-05glyHLEYq*U`gpbQX0)%;YletA8l_w+O)4~cE+=mxpwErW=j5rvrw3Kq+~nq8|%5Ajn0=jUxEA2UelLypfu`9YDP~b#%8v)#c;v z#NAi(j=rZi!Gbmk#ZUvuH}^oGAL10)FS}8pTl%YW$>NPe*KTC62x~LAi|)osct!%; zUOXVZTcZZ|&DS(fw_-Iii~+H{N!}vRzWo^CRJ#u1najJ~ti_FnfU7!3CoYHeZq1?= zIyXx31--lz^Tsts85oT%SF}Hr=4|&)Zef<%!c_agn2zj*CSN%EEGWOz?ACbq>DGh5 zh>p=BB-8Q#Q2~6&<5(=nI*omRaTEFO6xr03^ZeeCP9iHfa^W4*qd0$aSE}c+tumg~ z9Gbx&`3iUYhs)<803=2)09|DCdyn5`?`C4X35Frx%309q^4nKfYgZs&wFy-W0M>}m zEqeVpai|%1L>;jb&Z*U74)$%h$Vj^_NCdMiZ)rU>c8D!8eB2CMw+}e1Trjr;Ki7XCSW) z7>wcJ6?GDzvaUjAYa`$~7a~GP3YXZ>Mb0huy&WKDm*xZ^jR{6lB|m@$TeH}!#`-oh z?{n>+ZSUOIV(gAw0CRckZm%^vFDRD8%8Euhr3RWE$t?QE@X68~ zxs$J}U%lwx32b}92ac9xjA-ais*!qeV3pf_(4C02#xN3HodfUk&!c@r5CcafC+O+0 zb%AK$1yv#863v8nkdon^_N@_rB>1`09X4m?vB<#o#s0D3Dgg?h7dSO7uaR-Q`tpQ7 zOy+tOskW#MHU43G+F*)i)~6s)2%OopJ02t%#(rA?*3W#9GO|IXARA+e0mCz(r9`mr z{b~eJJ*Jo+(3FEbw-w!VlZ1Rukj;Yo`HfdpXV3fw&skrOEXK|5r;ftb;W$ivl^3%N zqR57GUM%8tV$K`;7*IvoJ>&m@>o= z^5-0XNDNc;R7USQ@tKcno|{Uiex7In4skbaU0+_h)o1vEVBSk+XNI`oY3404l(GXq zU6HG796DIwKo4=07bA@UG~o)*jgFw6|12)K2@(qi(f|;N#Jt>9D&KQjr% ziI9WRdCQwyywW~Cf?~9h9Rw?w#?iAHx#Hz6Oum6aA;e@?F3$$6gB)nTdqF=KQjS%>h}VSvPj?Cuy8w1V{wdm zKf7mkwE!dusM#5OCoew;xyXM+=4ZVY0ua?V*mEo`<1aX%=R)XEsBbHE*J0GZB?(K&M61WBC$%j8$uY-xN5$QVKc>dM8=CVLEbu#KRj!P_YWd6oqE-SMcvkFL;i}&%U)uAb9$P-uEtSllCNn}V|?&y8xoMlmqcJ_rA!}}v2wvj z0ERwocxqo|6niShTak~=f7wdGM|j^Fkw{Y;GYFX`U&}IPnK@1E&phVL1qK<$k^4|o zDQyrwc`E><&94%INtM;|cZX!#$^a?-J1$eaU@lC;BZTX~9w#Bfj-B+nrHiZ95ZG1d4nN8$i56AK*1tj^Pci_Z zJ_zZF62{X5)va}tJQVHB(A2F%06;*$zXUcOrF25EC;cW=IQ&w^+Bkpu?oP_VYZcR2G>NrD^3Ho zPvz#u^0!kJgSF1iG-wj<|KN4M#^&tRVlITXBv5d+e%(x`5d~|{5ESB`ePFXS-#m=o zmf^s-i;yUJ(pj#tUoRuc}3E`c}#Dw`J?nuI=6ZSQ(XfeDEkfmB}OFv7~s)Q?w!H6?)^ukqosuo`5t3BS5Rz=zDW3SF9myS{modk7(ByL#IKzps#QV6DlK8flOaD zX&JE@h1{=gH6<7v1j2%BY+o*K^#{$^tjq2SSK{e%a_xU+jPD0VSFEns_fsfIkk{{l zLQj5#HfRtIJ-M$4ZSxiLEF7AB@yI{wu(&#REY67d^;wI&+poTb=BWx46D>OcVlQ)` zB_#9%jINB0R_I8o1ADo{{^WkJXg8+?St4_I4!ET;jE%KCMB2mu(|CRdvIo(=0|bNG zH6C~9V&cn`cpsfkQ_Wi2l4$IY;CA?1jvn8tG$N3FPT$U`7HG~Uw0s3{lr*%yd})U2 zF6YPAaS28Eg9^bDQ0_u4@h5nI658FkYu@8juqL_h^LNaW32V~Ykt$OIyu6TIB;=8u zt}CV0ls-n|qMVn*QOLmuF99XIw>1stEwW@^&TvW{7lc-0XM}hww?W9#2c~tLdg$Q{ zCD)ndN&(mTlCD(WL7K@s@!ET6A5)RtbAB9x&GGS*v zX2Rcm;(#Pwoyegbo8i-v3aIc1pR}X3Jnq~lIAQoLzsd{vFS+Q@>=~=*RJvN_^j9Io zuT;j(9)~Yk|pj?%wOcmX2;b&@19Sn>|96{Y19KT55n;q{`l2t6bg) zb*g~A2z1}*&xQojI)FI;T+qlTZuJ;CEKjkg%ja&S&VN9e%bP2wZ#wdC+TZYtC{KM2 zFf-ID$ikC=FACWTm(Z0Q?*`O1cZgw zJa}OPM*Pdl*EPtFV)X!GKLi#Nvq*w9A}oAmLKe*_Y;`n+qKUqEZYxN^nh{T?Z=yk3 ziabXW|J?FT7la&>Fm8K?5`dZ|3@lYSkav{npsgTnFP(jCbfkf$>fo7W7|r_Re_*8B z(K6CNL@qPhl_OVNOuoU+`q;E$e~@qJkci4M3~{{@$46r~?K~Y1;d(OUv4I-2(~s&x zZ0qB5X-7mCpu#dICcXqxXjG@RB8WGl5BP0Hr2IoRM={*M>fAl=-XRCAggy-<2fu6F z!;~eW&9QL(6bmuJ4pZ_yVR))~m7kj6d`}J+zkV3cg3WFK>m8+S-9^Sj9=XX`cxpz- zy;7agOyYLeQM7B zV8h5a_gp|Z38FH!P=i=eCZbk#G|In6uF&>T3lI5m?1RB=YlmeGd+al%u3sFPM#aK;w}bNm+;K)l{kynOM>x< zONh)#d0E?t_oet|INz_ws-&1KBi@2HBjKfe_kD`>VhyA=x8-}zVh6lzp{} zXGLZB-|Cjb3t*V)@AlInR92ItMb3hqyt1|B=cJj)B&nlIor6-u`UZ>x4pI;E2qr@RKd*`i%_pzOu}$~m zA$MWL<`W8#5t4bswsQSOU{I9~1gO zI2dzN8gt4y5o+YhsRx5yK>ir&NhY5Gqm((EM{=ex4BFCLm72XW|Hl6~Rci(Uy}L_G zaN1ZB+qwSDeOFE8-}{y7Q^EMa2o_7%mPLwJvqRP45u5m+;1%&~P>1G1_YJICTUMY9 zzc=F~NQ7H?cBR~_{tP030l$hA>qVy75&fHAephs@FLqT?DNufWN6AB3K z2CfRUP)!UO0KW~Fp~ROc7m7G(m3Po%nOQ`F)6Q9S4N{44cX*QIV6!t%%LYkY{3=@&w~5Q;w>6q2te_EH)>*7pR^ES z@Y&gzksGOXNZJD*=v=*xgs7`4E{(g4U>iE zJQnL5yd-RkUgG=TIv~pedJXq=SDL088f1XCwd&@ru z*9L%2vSCBQJnZW>$`P81@cF`1v{3e@;7pQL{z15YC7sQ6x8wRWJugRG z{XYEK_yz)Zt!W1#{4s#q^;yFluxHhH#OolEP07~k&dntyN^r9(g!FhJ8HcW1s8ZeM zrrFSG7gc`g^#Y-qO*Mxmy$8>L&_6yI6l2608F`oCgq z`iYrp?$aH<9Wb6_Jrb9-gIDgnm@eGz<6l*%()I5c!ij>$0oCyh#<7(A^#uU|x)BK6 z8<0JT)qWtQnH?@ns-jTpRpzWyui8j~z3F&N3kIc#cpnheaxTP^b?e`CfoT3GpBRTK zLUA#C2+Nq;`za2-?OSAF=;%shg{=Exzyaxniv~U;Q0WshtBxPa%#=p=M<50f0u;)_ zfy={j6y*1gVCURYayp!(-(yoz8n;rwo47m>DC$0cnsk^aKn_0_;Srs29$N<0@>iz> z&s3ciSX@_;FunNZD3jtsq0cW(R;_*06Y`blPx>xh*f0EF7vWm(_G`R-F`1c1RzLX%HBuiW4b-?bUt70N_oBoHea2h*K#&sp1EayC8q zU^;Ja%tQ_x@=2c?6vSGR@wreMfjpdCKTFqlbk~{(hMRzze~1s+p2-LzlwVsaWkw9Q zNXq2N(#E1z_UD1uEm;1%AYRH&mv4@40}jJ!!Kk~i0x8zR{5rblS8b~lhtS`7&x{F zntE3=z1Ae#_o|n~%a$OWz7yDbU|6AAIP7 zSCf$-L#S(v&_E4bMHXW|{J_*tuk+m_G!j}#51&^5=QnjKL|+Xa!JI~m9e}zvla4bt zCX(bd_^^Jm41A}Pcnw{*#v*#|FicNcTmy)D^{m@5fPyLnQVaI&;FdM+>j3@5SKG^4 z{~=aZID)dweh3dr{vQR3$Q^{SE!GwiPAdM)L)$bhN)w&L7OncSnh$)3`6~!Et*g#j zkm(OWS36PDxnor%X`!tDKl!B%F&~w_C^+os-q9FI+wpy6Tl*Oa*$J^aYeggxxrNjGY1poIi;Mi;z*E8Jrr3H5A&> z!gSoDgA-_a(mc~h81KiEl+K6k%EnaTA=c%{!&&K(JR`b2^-1B7g~*4*58@FgF+q(pT4}P!A1A_79QzB-1xZ1%dd12%Nyp^X}&y z0C?q!j58%J#QQy0l{bNu0iW*91VILh!Xe&sD8v=rkvG15Pg|@#3e-{`Y7i8zte8ML zIVRODr%xRl<@`{jH`cisKl5rq_al9nAQ&^;G_#PK5CH1qf-MS5INvCbyqGsKF~R44 zlLt4m`lmaFHcUR&c1*ypN(A?-_Lh5C+B>3gKWjs7IoWTMXz-AR0}&F2rbeDucuXRr zam<{RTy>zotL9!#N{7gC2g3KakR5hN>@zd%q|JZjWVU}=4Dc`spK=Qyo+Jt9toSWn z^6H{sIbF)(7MC+;Af&CN*SS0HxvvVud%+UvrUU;Uv4Ig+kx{-~2Px@r>--(?5Opb{ z9W?mqe_LGuhsYQL;w15dBEzwvNsg@1f?m1Ndm4rR3VUfx3Xz`8w13}!Ms>jXw95%; zCNO1c3gT=c7&cQWx~#3Nua2X{6E6b$b<1j%M4iR{Dx`cbv-kEny9HKs&wM^gshnwh zS|rg*)t0wSgNLY02?8xR(Jk2Y;JxZV`rcq(-+Ny8)%INi-C>fHazG`Z@}l8i^;ID6 zv`a_72|#9^!_7=OPCG?~M5O;^Qw2p|-2aUvF26}qq|=IQEYvZM5=+zqRKP4s`~1iK z0q>(5l(qFD-3sZ~>uc)Kadv>c>-sv~8#iJ*UF9j1KSJtOuN+E7V58g>UjRoeJLd&2uy5ZF#v=u+T_Ol z%&9RTJH7TzXTf3%x2QPy^W(1iP}2_ z+~iz4IkxC3CH=EWEH@Q4m@Y4^>t_OZc}YyJ0A{*s8q@rbf=kb6OaV0j(oHLB(Ev(u zPr9cHG3>uS)%AUJ3HM>uM9AnDYXe{yyu^bSdEhQ)PFjxrncs2msB&wuVfNo61rRI@ zwEv-FXeWdvp+f^&KfF&zx3FkXWC4;ql1~hJa&+(5YrU`)giirjb!)t|*0owo;fa!nW$k_r_=5uAp z@57Nk7>FTz*F6VAW>eRG>uW(l93!c!yF`P)XKE{^Kg~2=C;HDG$i7kc_qxZV&g(cA zmpr^@V67la&?1qI@KADidv?6pnXDc(aP-C|q&@~3O@hZ(At;mFNrQM^Jf0eR@sw{i z$8%R4L)uZNvnG-G;Y4?^p?_3Q51CV#!8@m+wk8jwMj(&^Xt$qSWN7EJLxL}#9sR#h=H547J2pW2(}<| zaW>y2_D4HZ$d0!}YgbyQH}O*Z)H+LBkeV6f?5pR5WP`V6o>SVQXA4kLcx&o;wgmS*22#!BHkAGg z?#^e)@U0lB5xcTOa*u@(lXy$4K}PxJu?ZoCH@RsATZV`zr%*ar_2-Mg=&tkJ{*K@C zgvF3=YgZCr>NG4}=df%Dn!$zq?E+S$ODj-OofUpgnG3T7I+X08sWTs6tcL$nlYH;F zj~~K%omNIKz3HGbMsizWN;_7<1&(i5-6mx-GW`}cc=SiE(L``J8L+v2Rv2lZyn`d%eWO%KR6kGZgavB$n>s{eo zGOfJt4KrfS>La_*M0yV_;BG}C40npcSn-;#nym-eF^#4!$Raa#5LvK;qsxi)w61_G zl-~50e5${tb{UB_Sh+s*me*CXgv@m&a_FN_=?v6A=g*AwAke(x&~8*5mA>( z^md}E?LAA0eF7;Ns7qgsMVD*Q+2x=i^CL$SR+8$kV!}~zd+0=d@dBvx^sn@|1N*G3 z?DrD7LIyZoyzziAx%aqMs^)^WyV4OwrpQ-ntQEOEaDJI|4Cw>SkvD9it$8l?Xp|^8 z|H*4LYJL0>uxP%BEb}kRw2N09i+T!|Phm*0ECCA*i3Mdc9A)RfxqLy_=h|2{nR*Ce@=E8PiXWr+=T!6U{e-G0SOVVYl1Kn^L%?dYhLfbj z0{1-c*|ED%DTutiNls&f=XJS5DqWTBu@hWpW~eRmOyyZAiw5v1nk(< zz10X3a*SEfZp_rB>(R%czc6;-fV*m27f?kida;gk$-qieG$vP9S2yuU<~{Oee~Xy9 zV(p=2W}LsRp80}gYH!Fb_z+sWDJ083biJ4JCFQ?m9&R+JZMBDd8n_5n7Dk zFM|pRI*~5?VbX{+?!OMEEF>0FU7=VlLs7enFvPQPY@(9XLa3r%)4jAVJbx#tNZc&; zi|V242Jkz zXBZte=hU`}mDMYT&+^>4p@Am%XS)UnLCQTJm(8}GqTk*pZk%LRHC-|?+#)n!Qkto_ zVHItjzZ@b$wN3t3w+SVO5{lAb)VbTEIMfF@4&h;CC&_z=l-ik2Rk7R$?WGTO>4_=y_U`T;#ZdUYmUR2PjsC&TkbpUC}HQ#)tY{83g1RUmpg-)g#kG^)@dk&X4^g|fg4 zqAqK0nKN_!ZHEI2{2*7(je=@Tic&Ds&5nHgi4HBww9IXYWj__s_IZE?4YNUvGlPaH ze4>2W4ChNEcSOVa70PG#apAur$_}6p8VFta7g9<(APlDnP^Q4r>Rm3)T(3s%eL1$S z`Xx|!*xp0cH-II=DeDnoVnkwnWG`AjQ4LnI4T$J7&FP(ljL2Z!;GlCDFFAsffVN+0 z2C6g`EJ&zgbVF{3(uxU#%O(e#X!?r@;HcC*G}+bDCJ3|MgFyU|JP_pB;jDL1mB(`n zb;+mvIoUB<{?EG_Txrj(O*WZ)Ll}QtyP|)Nwh!)%Vl9d`kLwzrwS2yl=bDkjFp)Vv z{4w1um7NCTJlU)ROe2%d1V( z45@?4KCoBr&5%ST8Ph`F5)eiaYfmGd%;`WRSrvcseajaHc$N?Pw# z5e9FLh&EK^I=)+&Qy3fmsH|P)K5NUocj|dI7r?;j3f+?&kEYdWReNI3jn-YhOW zPp?@eVcmkU??CrvD>#-_{JP@ib<4(^2!vcYY6OTrtTyPv-@1ki0_r_{ZD35fNlxAb z!c~t#O^**iupE}ghs?4E4no`8J@Vd{3%Kzj=cx)`uQD_a;6v3=g#h{)b9R-$i15Ms zovPm`z_w$pAYgAqQ3tb$kCHPnFnfkxDXLkdXk7NySxfAMf`# zTY?5~+<92F!~`gJr;?ydkz1Jo4vh)Kaly+VLmr1Ql|n;~btm0HoQSvoHZP+w!b}{_ zdVxj|J2;(rRaRt8RV}aBXMmvNjXH(^P5rx@-lImNt>cb@$uNp~FaV#GTGgWgqZ=W) zgTTe>6R#E8ilgR!zs|R0CC_)Y$AFRXK_E<#9N){07od{JQGI>dJ@+B#?g|e5)pUfW z!pJHD#Jz2bw^sww`U3OJ2+doQ#pU{$-|KL3Zu!zYd67 z^Hilog@jJNM#(CJD>tcq!tMJ)ZM7|nBz2}*qv}2G*Tg%%Ne?4kd<8zOz6OWtz*~2U@ z#4x|d;x6{3xJPP}gg`B-{rrR-1I!j~A&nIY4W93}RYEK`S;gj3TDk5T_=!~~U%f~U zL`6n%SxrT3TQty{;=ew1VzpP~Pr$fSvCn^Muiy>=qw{)Bu59E&9X+OqxlElYvQ9F7 zx}`&_`LdLE9!ZqT@QWTg1W1-R(S9_Hi(f}2c56H!&ywNEowbNBEmZ`!o%Rm+oOs*K zBJz#*A>r}sP;>F@I^G~-06LjBL@$0#jp`W5p3ZN-^@%VeeOFvIx$qA$L(8mrHRfRe zCfKOyYhr`9G?RtNh;$rV$fdfDi)ReHjK`S0i+lkY>_F zk}5wwasImw^zSq6R?3zR_upUS)C&#JpY|X6?9iaqb z@0+FMhF57|YWdEkzvVnIWZe|UJI$IlS#FLzaTs^or&=akwbZQLgLw-;&@n^%H2M|i zmb8Gf#O&S9*lr69q?WDOyL2!zOzM9KQw$q9`j5=_aD&*;P!f>88!P%F*;(#xSU-tG ze2%l^$Pv0lhnZ)1(c!Fc&F^99sCFA+eB2psmDvSNVMo${2tG3T9#EB@ z?SQU`yAwDohQcB27{5w^D&?4mD?$7$Q&+H;&>@RX?H=$6CU+xKin>kAXt&)a;_rmg zFvaI%38~{hyln^qqV^+ucSKb0j1>SKvt#1NMU&!q1q&Y{O7S~M3 zf;$@eM{TYM`sd-RD#9d1Si1CO17{4{*xeYigb`R%+VZzSy`&P+Gu-QFB6|uWyIs2O za_RbbROVm~>0r8ZKoo0$aNp=iu>0NHyS!hl-Mr_)T41S9QWs? zF+(%s_=C$`SN{9AAL)aUV#HdZ|2u^u$2M7n>6O;x1SyUPE#;JLkIt4+!*Qg=%9k-q ziO=oq<|QOJGr*Kjmi7IzcCSQWfo@i}COsEM_rI2?pqiuvSzMi z$`!$*#$_U`eThn5a>{o8r*olw6LG2XM&-V07X>x}I>zK{bVeDj7G|NtIUt|gOPC&k zgjW~dao5^gLtTk}Q>lyMKC|e!v`G;E$pejdS7aJY{C+AvnuAKP-rN?8dKi>>E!lGZ zeD&Sep612Ed)b8sxVgi!dsX;Dbk)#LOwA0Svl4aysoDAvaS2?al93BGt}rWR84$NN zn{wzr6uA1(660k9I4q6bSCpZ^fU^!P#pnH1eeOc32}qLC%RbsDj?KP~bzVmF>OTAT zOWH#X0*&NwMOo@g3#IHKM3k&O@xY*<6;G6!XD#$;`t%sE0$a=JZboEA6Ug6DQ^;0VseY zErxJlvX5h;f6vz>h3fe~TR?cXk`{d$b%tfs_0-@hh%8YvqN~?Y6=ZSW94y^BqB0dHrf4D7petB3 zqRgMNCZ_|6N?WDZE5qCikVQql;QH(J^*c()ch7DMTZ8)Mo%&~?;j?g0O0DR1MOOxv zj(B?bAvn@o4KbH}=Yu>RNz}6d7UX27FMZ6Mkek6699tYQvWnaMDlC-aJx=Q!=^3Wv zckUCvAuT`b&$+n!j@F;9%ZENu0M>F*1Nrg$2cB=0M*6=13>G5ArWP~5G;KIy8~0U& zv5wn>^ZiyxXe3IKL1q1cF&VM(>(}3b*s};=IE%ujZ@aYF7T; z8povuL!ev87^ppLB&KGy8_l&{202sA24FPJ?@RA)b4kU~!5Z@)%K3+r-f=X$mQ6Kw zFoEgKgU;adSCZE&Sag}XA+0nOCs4Rh6@pTC{&+1AY0I+cZ**&5mUZbWY{vO)`i)bL zlG>!G{7C z6O7H1l25#?sGUk`n~{@hI>|B{p77E4B3RFOTfS6hh=!bi2vK=&SZ5JIvqEy7>iv6W zeV{X80e@lI+Qn-I+ByRnWzlh1ltTKramn3&@vucWJ%cnd>PyqA1WRKE3`||#*>-VN z|07|+b0Dh|X_SbIl!+$sBzFsRC8>8e2zT$M5Thsm^`dE+Ya~i01d6{*0TUCC9}iN1 z@XRRTef?n~k;29**4^&E^w)TC4AUv~z|)bZPu1Jq%VEw%i&dF2#>Tv0>=fqne5U#< zBtH1=8T_}|KC%UI^vdE}vzlMWBvY1`uEwNMW2lqVLHYdfF~ z?^oWunH+x+!RbD0xYuT|D`jI!ucd(EyN)_+TzerY0N$%dD2M^sdMlZMkAjGf8e&V) z0X5!Oc?(fq-hbaOHhtP|TXr(T41)e`h+#krJPku~a?CT_a@>a8w^lu1fYR|fb686w zqex`V%fgcSl|`!`G`vi&Idc(z6;!qD{;J$jPFJO&1l+FR6gj5+!hAt~2POj$Bk+@! zU`e)JkA0=OSdZP5=!Kw%j@BCcOrG$NcoAuhC(21qQNldFl8_spU?Oq)awP~WGxMKO zg0NnrnbvZBkNgaWvs%4uZHT}IK}bh#PJ(|E;qET|(0Q{A8c4mek-B0#i;-|75g-NN z%b`#4sUZu|=#Cx{$$9n1{_;7wuE4XGM91AxdGRIP00+8K|2Tzd68|Y2y*Cu#dX*$E zD0-zcG=}Vo9v<3ix(qFPnq+%4#Uz+{FhV-A0~)T)0E7es7ZmB}7C_4)Qe`NjB9Umj z15D0oiNg!V4su&IOZ zqR)v6tjS^F4()0mfXF~0ga>c!%YWUhpbk73X%}GMErt<9$`OFTE5u%HH9k{1f>^GH z#An{TSNGk?J*xNY^`W2^ZN1m03Yp>%(#kJLVZsOdb>%s;yEvvvr*epkzS#4R@BlJ< zfSWvsaL>q^akCtMoqD1^9<9>SZxn(&iT{*U`=ISMm8|^)NBV|?)8hW8D zDBjW_04wowYUxdtB|Nl5)rdA~M18FcWOs9Sm>Da~^68 zUg*4N{*q}3=L2NIDo3$|)_<7Q_fTdke^3_RpX&gWob$UzrG>W}&N zkz>_apERzSN-X+S(~s*V4^U@(!|OdBUn|{_XE>%#&f@`8_fr?5a^3FQj5#kjuWAUo zsekQO_I9j>)0*@R6V2Q8Khr8hOub2n*&Z8i-QvZ5as-KsX~n4rnm0m`9fMNSo_TG5 z0x$l4!Eku2xu9!Mp1;Y!*F7oQA|lp(J0<#6qH><$d{qMa1G+?$>iA_|lVanFj)Ka1 zAqL=1^P6)3DM85Y1l;?yo);m)X@yZUYEd_h$@-EV(x8Jrd*1(x{uuq&VC(FL>)}h* zlHtG*4PsKWz&N&|x5YTyAD4!}i3xmDKSP}0(e%RnFfSk)XX`Q(ItEI|gm0bG)wmxlbT z1jYB(X2ap&)s1DaxZ2AZgm>+>sga|m%Up)=r$_6=j}uSFBd2YCC6xRcjq?Z4a7F&m zzmWs=W7#q`25xz&=5DJ^T>RA5^aQ`Djl*H%`vDD$+&#ve?_z5Bb zEsJ)<;}Y5v77wRhBo?X*Dd7rO=l4%}Q0k?IaFC^z>!bx~>{)oLcOgJzaeRdtHQ;TSI&M}ndbak`0$`lrQq&32a zSvRF48fRvtHEk{NYw%@lpi}UFD{gqym&m~J7K`&GK4zRC^*qc>RllvOsk%r{;`6+{ zQ_ay-x8xk##!U{$$_Fy-%Az^NArQGCYj>a*ga+^KVK?Op-m|D=>Hpzm2@{?Ha~P5% z;cY~7J?Y{`2;t2>=t;z30rPV5#@G5Ud#)1q_YD=F??K~7WOOCnUvWxd?hKbTvC-F- zs;WIwD`$K>P(t0$4d;R;M5UC-=2$_f1cLiqrH1eu-xaXy#H2VbZ@GdSAa1~QI2SZE zrmb!c|D-fAo^oaw5j8R1YyGEvbt9-GUxkbh-@#oXn(+RC2v;4p)9 zi@qDY`cV(jyS3IAqMdI3-eCtwv6mI-wylxtUMrPd^t)pUqw1E+%8A)kECPOUZ~6|{ z(07!IF@`5U3C(&0S;np+_?fWv2mg=2r*bx%v=HavQR+&M1Tn75hHJ3EX^}KsNbE`- zuv*!g@D{lFZF;^weA}?*#a__DYl{K<3X4Wk-#HumjP5je)g(vIs2nYlY&yZ3*=(Td zUTD4dZOqPKCqxTpO+-s?xxillw{#E#G3mG(Wb&RPQXGQJ;@JZqD3!#};?92%jmSP1 zB3kerkE8!B6B3iytwU8_q4o!d)T!vy(aW3sa${i(i^vxYe zjnFYmV|!q~i$Xn)@$3jx@^N!FfGCUp4ZY;~zj1#BRg$*}qLbY2n5l-)sN^uH4d(jC z)Z>4CVS*_4fhtkYFjbO`!V|Z9m~9Z+rOfLT%{t*=<-pVmHZzZA3f$Fjrkff zv&YR^aiV0+0->0HTX{ifI*f;4H@$@uMMTv7gWjJ^ByPpJ^Z>1MY$Au>37?n5&G{oV zgQn|_fS1NTY66|&{{>p)X=7z`1jJBCP+I$0b7r91R^E>5QQ<&0_Ix$N+l=gz5Jh0yTrh#f!qD_J+V}I1_cTd;VWcTbp_UNp0 zCwuDJEKe$rDC6X@quq#eJU{`z#g@{dF&+|#2#H?~Kp30Kpvx?1+^;z@K}*W4sn!=f zYC56+$Iq9%D?1L5)Fp?=7Bg8|omaB+2Vp{7UqAoa#L+9J(Rebpoynd5Z+FSkbyRB2 zI^)uFBf6`6XP3Y|SJ^p{CRMZl1)v~NMhOH0vQFcd->IRkeK%Cmb@B>gnldK*^`hCT z+bb|#3zT;;BCX&#fhV$gC+H0MfVJS(WLf`UVfq!k9Cp(lq zihKq*T9|DCzLU@v7Ugo}Kb^0ICgwoU1ffqJkz22lRCR$q9L1Rtl^>4Wnr}C`I-ihK zw}2ZUvMX_(I*8wLOsY4i9?LwPCE+;g`rhU`I|M!99~+=(i^PZ$t*}rGBNt~0wPgm$ zrX~~%YZ@x&M$MjROh{d%vqQ&X9o@wAN#Jvzi z6CiieZ~6%&A07J|g;e8J+E3t?vx8I(Sy}Yy6GzKhH~&c6J_f~Eha0TQ3I??CBh<)% z=njaEE%|`3h)@$rTr6=`y_+B6Dn=fzGJuY;NB^t@!L!0Ei;r{?BQDeW8CMm2S%!29BO z+~gN_UN}n$ISMy=QDZ~v>op^a;hZmyLHf`Q0$WwL()p!+6+Y%<-wRZWz6(2>S_`nE zSCBf*f)MPMDD8}T7JBA>O+Pz*xzicID}fWw&7nfw^Te>NQ!kEpu3rRBCFQ8?5xzp@ z;t1U}I>rcdm!saMe;*w~G;BAG=&0|kexTjJTwuvvsgM%+>rjW+oHSLdjFKO}ZUwfp zI_(zpk?9zz%!&7{F!+_%pk4K7&9s+i-P;9H> zQqW~1SLlV|9ogQ@mc?8Pac~D}pJYqY?&t#H26jQWV4OsR+k&8;U$2Xg(k<6^fbeM~ zt{|TCr;L(7R5$S@wy}_X&A--!DyX&IF`4K3{oKo(PDZcDX1&lWs+)mAhJ*RGA}~zS zYi6;?RXeNQCh)HxE0BV6Cq|Jr_Pr5gpQ zLHk|A%~es~J6CRHiTugY*=ZFh0J@+#unoZ_1}2540%QJp4+-o|6zvlIqw7hAQdVlS za;pJDB*p?1H#SvAnNc~NSF6yBS6vt+rU$D=r}MDoP~!3kL)_1=e2Qr-G@0oW2IMby zkOKal4}m)eW`2eskaMZ%|Cg0qE@8OiTgKyBt$Pv9;i)t{fbT^@0+SZ%>9_Rr=;2F4Z1Gh;F0 z?NoKDzC;uEGn>g<-@)jey=$iCpbm6Bb2ux>UkDK=0?nh*vI?0H?w<~9j1t1zmWP(h z!SAa$ozE}FmSC$IYczyU`p{RvUjAq`Dq{i^RoRptY1;`S|KHaRbl6J4Jt1`t;2ntW zf)`MO8#Wij4#lE{X2>(ib!!|*{;Cx1HZ_?ow`E`oPm0_XDL4}+p&H6ZHrD9ZzAT=d zN=OK$6Rewzy9m5IvAcIRJ9RyUhS;8kcXiKmfR+$U3ULwWfjEin4T#9g$BdmWK37bg zMZ*4xX^`_Zp7R8jCNvhvB%F9mhqO1KVdovaBpxFDR`uxFObI>Ck$TD^{O!`}oVg9| z7wpK7DN#_XE-&O$(MAChD_1_KXJZ9VxoIR1eLm+etj|*JNxEG1KiwNI03!{9ynY6B zW)9Jm`le#o9EgfaJ7-uKLpEiONT2Ph{!L7ZK4JbWF!w-rB!&nk?O)C}hy@RTk{Y1q zWN>Nq&;E}E0{@@s!T%*CB)uG1VSFM?@}S=^y>p~j^YgI-@V;2l(suw#T)%=ep~&gX ztP@y4@x~RTY~cK0Rpv)$-4CJ9GT&FW7z=j{?-yt*--ms-BMam#lpGR3DH`Y^q8LJr zQS2k0><-S4mZ%F2ZQ7SrXl4zu5yH_++?p;Tu(TMd6!C@LF6HG0x}H-%P6D}>$XC)h zMEttJ`i_0YrFKFXco)(~X`kcP_=WS(QQTnc$g9NF12VOO`GB%^bo(zt z&5TqbhnMJyb(~{&bk@B>yv|YlurlnJN0&c??EGTIsCdKR!H3BGjisFm;iy(RqAEG5 z7Xi^XdtnV3r0Vn^TEjGPekJ22njB{=a-qqrg4yI60Jlt$G^rj$ z6-~^uF8w)i<4o2a57u?y5&O)mYO*58uT8q2fc)?zYt^R_C-z)(IRd8jdNrnu(IgJ< zv5i9Q60Rhq(`JfhmWwqb|8`wVRSz+HlA+SqUtaAPAi620kb!dGTc@(dftu>>?ZVf@ zBZ!7d4QaS)^yU!z$HRN+S!1h6&48PCKWgA+#fIvwP#1~DI3ZlUy&t^K(x}-29|#AP zB0xdmfW4`DHkKv5d@m~hPTpP~?VOB(EF0aeImzT#G%OpH$lrL$&ClT~rV_|Z z4u+x0_EyTAg4`85)2_tkA0UGRQua z^7PY26m0Oj`2z($^kjZ&U+aBY!%Tn(z&dyq>(MJhtRMBepiBf)`OVl0354kc8`&v5 z{OaHIG+VkNgcs=h6o)t7lib@>w@>h?ykIo-m>&il#)vAaU9kO^=NBPi-h17vK7E-IkYY%;h$6Y!G!ib^_|S%&KU zKVNNmCePJ{xFR%2)f@J4@D+2|vo1o?P7s(GasNZZ-q8(Zkfh~C$^bn;!oMxXAU9_+ z5A8ft&OgAtMf}xn`K)6`nk)YM#<-JaEv{lnhn@dx0!sQS@3EKkc9#H@ z-~4mVaMgOIfQKnYf}RdmPx+>^kxF>NOCKXPH0yNwF~9kClzrCz?0NEACxb z=h#pZA>^Kb7B}_|5v;WO{40E*Ax#5AWna2UIuUH%!wv=Rj}M8gz*s5%e#{F^iww;- z%$qSTHPTd?t3_Jbg@-i1&9s~G`#v~TzbzWMH~`}D?YWI9{H zuBBEa_Q3)@g1+1H_HC2+*_+e+7OAtDSfZP`Gd7$E@~QR*yGCwbubHihaUU^MTowWb z1}EoKV-^?m*Z9bWE*?+I^~&~`+N)TVl+HJpq0A>knsDs@A_0Bpipf;uoGeZnkn%|z zp$ySXko0;$N^hV8BK)ek%-Z4e0wQO z-!0tes@lCIBJY@oM|mXJ_*ErIyDE+RJP&&uX&~XyZqu+1nb@fR9QupyQ48KbL zO@gT%PNw~kAHB>5RR0t7wi$n`MwLtY3_{d`X|+vI=tJ||Op^Z9T)0fD&x|Lke}OI9 z?Geiq`%tQ{>Nsl8blbcy6W!64ahk=UP}X}s%yvH6HB8LL611&urawV~9h=diR6jfA zd`iZvT?fiKbJDEJ?M+k6kJSAs{ge#5%axvY01>wil#&`7GV4wg48+zBpIKAH)95DG z4N?n{$J4fGq1O6!0~)rNqn;{S*<_NlR1qKKx^a1-#1va36vfZ%YUidpfi9lhos9o3xQ7z(DSJdMw8nJbT> zFY=(rSfFz35xvcv^A9w++OXI|^gpM^zHG#{7;IBwHc*%WBty9uycY+bc>FXif?<+D zR5IB`z%mi_<6Kn!QIT3x7ZBE2fBO;r`O7nMh7t$!m4%^r)pLKnV^>!gnsP3`HFCHB z!jiNUYgxEx9df}!<|Mk@APCX6*o~nbwJ-$OO>kKm>uIfc9K`DByWZ1m{#JujBKvYV z?FRcP#w7g|kJ=rc7!vDE*`EiHAVWM6xxX#HTSZrp@lMee@?$xezc4fo>Up*CrL!S%oTf49&O;Q(G-AvynZ8*mhv3ToGkEsm zCM0tW9*$Ad*t^l-I(iu6pu?ODvH!d{ZVDISI?4DiU=LD;uG5x*bFp^e{x)b!@x0_@on;3qV%LtRAUlf5AzOG5)o)yM^c+&oP)40 z75p9VY1sNg-=9r-IDBg{&W*ApCTYi8Y0Zx+2-1A{JvuukdSyE;m zqY=linZ{U%fCtQvO{8n1pP(D+mb3GdJtmJvgt(pKmR-hwaD;fv4T_KOOG&2t7kaO* zZz3v%nc0R^_>08dsEb>Y7Q(80ab_VMR`W@Gy)oITD3+aP{Bxv@wW{29$lZe_gr<s z;ja)ZI6~Q2I^}DP?T6fiZ9tNyGvFs>VX6~nzs|$6_r`7B%J)0V$yo1+#Z9rG01eoY zEskUf5lB9v6d(a}nw`5lL58ayyzUFpWvKRM>u&BlFh@wQX~M)cxiNqFKwOtw)}pUc zi0>|+B#8X_uCFqSp4}J$GmROtD9z6T#hPZLsZ*9{JconCGHu=7e|S8EPTg+05h6Jg z)(FK65T((j4dAPYvG~eA(9LpQPm}S3%NrdbVb|4t0*3kw&1Z&XPn^|=Z{E0Y~xYV1JtRF?9n54>k5ZS)X-dl3afazvo{eY~n*2Ji7zEv;D8 zD!Wnk%fH5CWZ}tc`b3c@&uYS_QdVf|OMd}g)Buqa&gHqv8&pe1QM6L6hx(D1 zFi4I#gnxF%&xE@?YJ-Q5jg5MP%p5mJZ+xeiiI!i@&_q6^8kc5ZOLu?t*7)Ct?;jJw zpa9!v;Hwa`WtbVU zi9za50V2NSI6C%2)&s*pm3KkQ z4DOmwe;ZKM`|qrFec!JS4E~h@sYIo%B^hcLY|T-bY8xDJp#I7HGtRvtMZcc}7V`PP z*wwT|DAD8e7>`29nuB0loq}M1vlhLaQfXm{cXoD& z?1|c}ct4r9ozrWubZQ}~d*Y$c%cBqx9>jy{NwH=*mkwimrPgS(nF|;1WHNx*7-uyP zawI9M;Emb?IbLl5dr5QGLiC8o#?+sYAAY-gi>lIdjTH1~6%jmT#-lcdr8}6M4Yr&U z=L*kl?l6@DA<0sd<(fM>XSH(R$C|spU_G*gAn3j`WAGNri}2J(vl2VR+h=D>-#>&f zc08vJ*)gh1*Jpnl*ZbXwrsFwbfiuK%H)r4r{!XTvkb{pyX;TTnEj>nNor!~bLaB9X zO+O9zNj1@&nyvAoXLP+E*%st-XmW6i9mw25gqY^DaQYo+ z0pmx=xL1g^Zi3;u@cENQ?f&WH@vR0O2eWAB^Kgp31mF@R6mY}6LWTi+UJ<|_i4_dJ zeEh~x+Lwps8kL=$?4e9R<~)tQ!_;y!_fA%x4X+$}o`AYiB`tLLKp4r3A&?Al>W0^X z!np8e00>#A6)bB!$e^qZOHB(Vt2??fIq~Yb+n9r7=CV@$XrtThROR%_<5c+-?6)ge z@_UF^EY1<I;C!KWs zRhOn}cAFxeBX>ab0+my*6Ic%GABSu7PJB5sjo^y3RuMYrUikJ% zSPy6s(##^g5aooM=T;d(u}V{ob0pn#V|f9Eovl-=l>b2M1$1c@S~LtvEHD6!Me?Kk z&+qgrp2`|_^xWvXt{l-9_XbR4XVi2W182j{T67#*ewD7Lt+mE%YE`)B75!jO8Nbn2B1|@mJ{#fQ74(xI+G_zXbPkQH>vwBq5W^gJ$r-=4XOS8(~qWw z59oe5?kYSH_~L+gRvgCqL8fIlAXO}jK^!ih(u7zWAYL)Y;~K6LnIJTCyRI$2b_@@M zv8#L741(k6g}s`iZ=o)U9wla!u{96OaVh1-wO;WOma4Ff|vOU^HRo+E`M9{ zXFqQ84u1AteC`%w;>{plYUNiLN}Y^x4gm$(RqO56CZ`hJzyh$CrvXz#&uo@5pbI}X z_)`YkvtO&BZigh-cCeh}IiayUe5zY@v7bN>792z643ROwRgWHMn{p!k zYeX<1dx?{@=ls*dwpjc)Gj*ABazt6;whbj6gPD=nh6&|s`zm~f5!cLhv7=yF6lbGQ zJ=zE;LAGvIvEU6Jpe_*Upq*I;v#K{536YPOJb^POF&GX%*F&>Y&^m4-a0YHJa#}M{ zG{a7CRLrW8FPO*hBU&DVSzg*IQH(Gft)bb?S?AI=9xl_D83tq^Son6!TLvBhgbXdD zpMcp2y)<*S%)A6=LCt&)V4?_LqsfvVot<8ya5#UeP%&tDtl5jNCaVgo zLY{hTt;Jm$fE1L_ZYU%VO$#nmBm(zQgYd4C!ueKsU`x{VXT0vJVd9NKWc{A!Q|^+= zaa*m@Mki{{>MV=5dRGf@ygodM4H3eFEgrpaWPrD>n~>{e8MkfdkTVm8+;i! z%e18fTNXg(VQ05J3;gm#J?wP{wS5ne)Mpt?&>wN^g3(`Jk%pNOcUApM~PwgX&A-Jy(E@ z5+R+fv-)H3$}RzSCtWeFjZebHc20eb=>=f|DtXbQC*aw7RHI%scj^t1glLZxVSY=G z0Y_TRd`pWo{!w1vf6y)q2WBuOM1HGlE-w)<e@oZ-owXa@^XuUs z&zIWB!fJb!n$ElqJxFd(e|2UeIp8llYt0XQBu&) zP`-nJ1U)kxmB-DFIU3-_1bPT};F~~UZe(uwwo>-8r_WGTHS0(>Zzxpq`<8WWlpi&oA)g`sO z;c$I&<(d^-2BO(8BN99`2=kluR+S8$8O(6d&vNTCfe>Ycln_0VD%o2iO{E=T$^Q-G zz3S2lt**~g2*1oK{g6piHS02r&^bn2H;k|B9)5*or8Li*2+L!M+$_5l5PEBZqM0tcr{As4L_sX z=D7LQRE&TOj6Na3)20N1cn*HM>FK#bAN1NMehWu$J2w(98UG(BYLv(^j=ycdsIjy_ z9EUiQ^T#9&qp=4w6Ma%X?Yh>&gY#?`q$dG^@1^H}YbC8lAs44O2cT?s@Y!sQG6A}N zo(-gV%VPXUE_!s$P-WpdLb^{L-8#-7Pm46SWs|=53-hFGR%fYl@WV%SwYWQgHZQ2o z&!PvO==0kbj)bly)cHL1pe|mX{vBmg@0mXP_V5JAwy3nUhxb7?LbT>I0xrJ8E?9o- zEQVRi+s#n`o*8SLgh9PzW9woW=&sCM&`mr#_Ff4d~It1f&TVXHeHXT3>E_hGM?3 zH73%9ti$vs6{3C)AK^Xx>JI>wba@k-E_fS2-7b%&?lF}qhGkES#*lr-=8yLqWo7f0 ze^%n$JxzhHPMDQ&0$0uRoyyM@u z*$7pc}}1c2K@YqyDr;|MV!x0wLjM)JV!8Y$AZb-j7sc)V*0`4!d5y^MCM+j zBPK3rSY{?d;MBw#R`Rip%EQ=l=!BMClcAs}s1up*w^?3687IrqrJQFN#ZV*|6B+$Q zGdlEvgcM8;ChV}M7WdbT* z$PKC#xm?eCxo?Q{^mn{eHw-RD49PtaDRE;BA(6`7?ya9+nLGf|ceD8RB0^KOeTSA2 z+lxP~N0A-TRoavbRFsNvTAF4F5ApQI0s4T(K)>)gT6#8yqX28WqWbG$YP6HoCUW@o zh*Imp#-G+|P)N_y#e-Yb_@Ljj*M$O+*vg8?M-OExRZ*Gp3JH!7T5cA^9GW^9>wBhh zq&jk_cY4DQl8pc=EQwJllR|Xqjx=TftGi~0-eg@qjRkW<*Omd=%X6Hh!>7I!^7ypd zD`1g46pVAjJSNNBLtbym>Nm_Ob})Q8{(iQAbPd^z^kl$GGO<}loRY&HwD;sB=qB-u z2o7w)EVdO9S6%0y{KYS0?PAwNqNRnKT&eh5K`ax(B$h7>*?AjqihuRy| z0N!0Ai?ube=4gHP+J~WO#gnPm>QX0Y3#ygbOwUTkNhGW5x zLx>|wt^)raQ4?LKlSV-aE$^K@hN4EglY(Dxk57l))e(!)eYMaY1aE4`4Wi+x!RD-F z8#Z90gIJpSOsKN73II8I`n4eIgvk5Ti2RUXw4=*`B%l&rxu?1Wav3$l=2V?W#JjND z)kpNGv897cxTM@Ck8tX)?xnUNU12%;BdT>!i(_^p_e)ld1ryP4?iu*a`9!bC5Z}^> zeLN5eg~HI(EhLb%eta2+RNH-(HZ(Gr8jGijo5ZOXWS&9Rqv8jbeoN`V7IX=JKdMOB zfkXx)C>#i1W(_MIIuxl3Rw5sc%5Nnp+4RLIHE1%I$+XmGx=N5V%JUcF*whu+Es(ch z=I2Yvs6kf{V}J03E{s-(`k3D-VeZK~fA`^W@N!&F(1=?v%9e^u*clotC_P|+DY-zw zO@HjBfz+W)d{j;M4f|72zq=w@=fw~n8srxLTpabgklnR%Qak``#kP_?&-v6jpn8r> zaYYjGOGLGg|JMwT?g+q&e6FW2YxFt*wL1tGZAi?M3nu=Th!-yMM}oH7iDf- z$9HlmSo^LRx#o(B1G9y{SFf5^NlOlTYPbV!5e&4A_iF}G{CvbHtJpz?Y`jl?n^~*W zm#D0mr8H3@Aa9`r9(^({RWSBBF0EaBs$q)uT0al@w2@xNCXmkhTRIj5T*B=%5_loh zjRmXo;ecHzH&9QLsf!wyv0!LL-uL$qfxW^b=-y(ls0ujO6_W#vQ*=_`k^|u*`ip3O zQT@z+6^|9b_ud|{ie_V4>~G7MsK+92LTIAVhHxj44dxZ{iXl(xGb#6@0!k?dE5$`$ zr{2=!-JS}8aKRJI*dD_(MK9Y#r&SCLo$xQkAYhm$DM>c5X6ki>|4!k29aGZ0WyZ7YFYsp9_PfS@D%)fr> zH`V_Kma`i#8H+2btyEt_pA3*c4ns6dR~0}*oWs)Yf%cQV8`1KE#kSm@z@MF71(KGA z&wPZwhvw98#z#&0$cw35opY8Ffh!<{CwuU@%c+@ZPhQn@t7JqfP8c`zbW4?^cN}Ip z;Ua=quMLy%htYP4-S%92vpPJk9taxPC#0pkp4@>C|0A94o&eqN+M$4g*~ep$0#KTM z$&JM_PnZ|Em`W1}pJ!4&=%gv0I-ABe@;X7UCe6x}<~q%!s*kYcm;;x*sO1|DqLZ<6 zq&xOp9)~XPOlJK=HYzp!ddOcVhTz0W+EdOgG&*>kB~dMP*FZ&5NF-?Z6%8o(dnkkt z9it(qNID0x6!57&hrk+C`{h6yLlC)<6+iGn+VLAybG3WB%P!Y7mPa=#6dqP9}&8q+WZYSa<22 z!sNV8%Hk=Hkx((tO}W z(2k=4gA~}{SfHC&-;S8_XSJxCzqTQ?&$k`KAU)B(KssI-Xv=>+T z0rckh4PMm{rERWdFVncV{Ax=J3I_r#|9&oWq$1+?DS>yT2BZsrM*ih;z}|7Ct28M z-s;NMZTU|y4jxOM2)?K@_7ApO^ma+)oTk`1S+h3?ZM)YRwzO37x`9T>n z_O+O043sh%rZR?6z_!=Q7S5O+3$lu(ROj1qbpt+~m+MEhrD_LVhsN^^Btsj`{YbGz zIF`{2tXWMl0kO|Axw{87wu<`7(zk^;(}xsSs3u|@KiO1+YRX=^;1%8vJPI-SEg{LY-JxVXHfDE$9F7MPA;G51D#W>YfDVO z^(22&m-qqss@Ly*7EDyI-TuZvh_{~xq9Nw!N}Ffe99xA#6A2r^A#nlDkfFek)-88% zs+(kUwRdbg{$TxQHBN0~pYyB$#?&SELH(vId%_JmsEvF45!sb>LD+5STyOepR(o%9 zN?_2h1K?40Cyxj;-}jz8ErAoaUQ*Y~x!=4N+rdVm)`ey4-!@-=#%!oQmo}3G^Xknd zO3zZNauk|reZ#r?1$|o#t8{C^>2lD)UVfcv^=#vMnWo{hi7#a~H7=>TI>=fEJdEi{ zlJ=$RJcs&$s>{b0JUi;FQG#{eqY&gC_pQt<&a5U&}V0$Q&is4khQ3OkU< z>=Dwz2(|!jKtIKtgf`3^DC0XN+qEthPQuS~7l;1Sl!6mLIVNduun!-=D!Ylx4C1O8 z-lCD8n9p?Kj@bN;Vr&N1=b(H|G!gtSTbWr5^8eCq#-eGb{9QApJ%I$T0H7bvN0~al zwA9E|m@qT5rHMpr3bwU9AqE3xnWBW0C;TIO8sW-G018Z-lsVJ$FqG0mLsCVK&~A+k zyI<#FJ7MT08=samUfpGE%E2`r%`P?WQP?mJ)lg}*qvgZQ-4w_#ss2MrlpWZ}?kx@H zXrXLu?u$)b9=mY!FSAlY+u%t$l+!yANyFPd;VkO;`1dgy%f#`Z*SN2|J)Pj-n922f zskOj28Rc3$#&;Sa54{jMtMBy`$JNF;r|l-{EOQ0+DKZ#71N5}SR9p7#m%6(B_Ws(u z!UqRRUal8bCN1;_%E6Ksnn5T?{8nXZrd&kji+b8R>vBM*(Z(fZXGj2Ue;8=$7jH1Y zwqlB{Jd*;wCXuYA8S>FrTXqq^fsK`bDj{1xy6dtXVdZ$4-!lgeu@pmUl(pfifJtNI zh+eY3HDC6u^_g0Ttc>EfB8?iE$osAx0=+lYAhYCxV?Vvhz5lDz9)I>_h|h{n8E|dG z25Qjl+e=uOA)2B7G^V8e8WF&tW?)JFn!eSPQNV*)*Tuzh*@m_taiDX8?1mvA)QyC~ z?w_s`%uAG!O~17gKeJ1|Qw-uT!eq&+tY-*7-W*HOzqq>~wL}!9q9GN&BI;&jfn|f} z#{X`(el|G{Fe~eDak|v+czoPIh1)I^0IpVFD!fKWGU5KgYZ1nC73eJkagalL?8pI>c@E~BkvJpNaCd4jBb zzN5Q4LY`ywBRx(_q` zU>e37sm=i>7*bA2jj#X07zW&QE>dAyjy@v(?@`lmc8`Kb<<)Php{)im$dNPQS>L#H zhu)AZMacC-&kQ;npd0lhW`>sFKIi3qoENqRL?65a-allxev5(LyJk-K3fdU_fD>X2 zlg%_j`I@vNzYF`2pN!tqCYdnG?jsvy?SdwymtC1E>2Yail0d`#S;v6eL7)$y@GXQ5 zbJ0VPd$koNT->-oB(L%;d0-hLJu2d>8pFf8GbRu-kxPa<`VqLSuDCS^+x-ZIW7LDP zP0jG{B4vWl!(HpuVAd3V1wbAEVaCMkZjj%mAn}Cc& z--re}%Hq3=8xjaCDju^NYERA%yUcTL91REn3ZxBFzkxUJR==}eINq#_Fn&YH#8UGp zF(+dYvM+~M=!|*H&`3k*&8$hIb{Zp+iC;8eF+)B5V6p^JzlP#753Xh~VO*vd*UKUkEMl8V6CpuogyT ziZ-UmGme>TzJ5gmZ20_-hus`{V5&(cN6Lim!c=yD{!Jf28-xIS+c^q!N{y(IY~Xc_ z(9#Vq%YK|!qks7PBEU!d?iwZ`YjY7o{2&dkZwDvc!80~PPI;XQ7mk{%Qy%5}uM9E% zjLl5ueyAJ4MLG&s*yXG7E6OxIIz4e6;shdLITm^Euo zRPr)uv_tE==}|6(dT)fcZ_Ds?gBzjZSWj66-?$Zhq@aP7pJWZ|_Erm0%c;RmrOW1R zTgSrG0n(q|@bYj}UIcW7l$$T!vAjv&B@y#u6)N8m3PIAtg3~Xj6E7R%U^h*5{UD`$DN-8pxvy+QPJepZ`FlmGCID%KxUY#cgXHQ*HV*d;=?1>j{aa z-$S*s*%&|_{~YJoC=ndNOE}4;yAe@_Y)Dx)dC0$s!1qFFerSv7C(51aeWy@s_o(Xq z>YcE$)ric8f}lIM?iU^1

g7l_M9Y^6Rf&JVB1kKBd(0uTu_vAwh9Jlou+&1=;DqYXH0{V_J)#J_9V}#=82D+ zkyjQaH_=yTuid1-B`qYpxS=byh`lo*u}*FGZ_5Q>XI?#wn;+p2f z8N|`$-eBGWU0kZ?r=Sm=$S(r2nI^&_hn*KkKH7EVZ9z!T^}krjKJEP>EvHEF87J-2gNk}^4Ibl z`-!Cd3!J-MGZK}}XlNhC;=v{x$8sGIUOo|yDiosI% zpRw)R!l0{Dic-Ck;Cq*AJ1*QJEVR-w6!$nzT^?)-gw3B5mt!ysh~9WAJHF? zq};uiBU$`9po29^-jpn=&IRN;o{3h^6-u_9%P({i|2NI5F-0hX_u-03Tqja?nY5ZD z)kk4Dj~k(ZpofROByAR)w0zCc{gU^s#`Z9;hrlsePs!vueObw9vQfiu6wAjIF+kXn z757Lyg|1_M_t2&s&nA_}Y1kJp<2NBcWT-E02Yudt{>uXM7Qy`i7fx*$k5u7EmnRmv|4>Nh;dNV3&;m zxN~_fHH|)iw2Cv}f#)%xGH#0+Bx=_Qq=-;q9E`gt9(gMB4V%g8i=SKvy=eCF_;Do~ zTkGz~dC;~H`35r{J^x9=!-{-4jCph4my_moqXePGG6jP5Vx>E>Y`4~D_-+SXk$=)e zwYs{h{zhf97S5XN3c~s=PvUEQNA9K(;H~a4d6?#q&|>L5#HBE{G;l+l>{NG@Os*or zehD_9tQn7k!7VC=sO)=rW3d3eyNlsi7g2ZC*z;6cyK_XkM`bdQVy?(}$UBISWD+dg zJf6;*%drHsEaE=J4WoN^kbNS|7QpjVgly{>AmOvYM;rfcjsY6K^JZ}E_`JeRwO%my zm4>C8=1LLHzn1^V=!vCzgw_(e@|@5iAF$NN3g`(m&0Y)S8GQ#_StXnK!3W}trHi9U zJt)JMq37IRM1dnH@~_uS>4BQ$mU6c}0AprwLb^YSVRlXwKTq;Y14kXM;*DXiE0vlS z+XSt=*K7HYl~F;!PadP5Gua{vyy#=;xP`hm%nkRWAoPvDY5iQcDh^BKYO0x^7E;Qj z5IC%X7sEyfvS94=K?K=y&@-eZ4SMBcK*ON3L~^DyyiNPHY9hC`DVSozB0 zRzBd%vKq8kLvY|g>IF{~ZZ;f%?%)&8F(U#c*n;5%lZy95dDYaj?WC= zzbgX9ufeIUsi_|vYWnLczV+5EkEv~=?@P}FTG;DBJg0W%bD^UF_J+qzfzoa8oP%f5 zgWQZ3Gr@&_y!wU{&8GYU-q%GH5%#nNb&zhYPRg2w_gtsZNAe`;nPJtBGOvH5LT0~1 znTlxcn|>iumB2R?D-rLK7V{|Q(mn%nQmiaqqhyKgc^?I_UY^q@?0_PyB7nU4$tS}t% z&aed3~929!Vfd(YX-T7T3eQ`uH2I}2i; z_ffU9+537}y5ok`=ai)<%d_|5Kve~Y`~V^vKAps>z13B?DlzK6@3_$ zlg3Us*vCZgCXZgG-tm<4H(s)2+lq#j@odgFfW@wKH_+PJba@xPEK%q8VZyS}HMK2p zyOx?rNmJ+8#@SSM!~w%$yBkm`vtzHQ{p>-7*bsJjZyVN1p4q;o{ zm#;?~&u+C^0|kENd?$|`5VhbS1Iy+u65!|x>E|NRVTv(e<+$c(sM3IiW|f?4s#BS? zruds|U_7^t7djo;rQW(^3+cB>u-~LPN**^IZ~{*NCc@c9SW&9Rq!sQxsgbMwc};LM z&a735&{+w&Rd`wmQw|@5#Q`Bqma^020rr-jwLqPNW!|}=kzAZc07l9sN!bLy9>-iF}kBqVD@*wD{K*ydmJHTP?#CAoag3&6i-#&$2tE`8o49+?YU( zE2!n~2Pi`_jcV_CT-eS7cMLKPZZkh*2!~G%uU-O8(d9m4Kgbl_!A6{Jj@)GYTZU`W zJ!)E=p(|03`~S$UkZ7ta0a5Gy!RN8!dlXVE8)72*u#RS*Ayva7t+Fp9p8W?nHj;7% zzSHc(IKRVi-D|IsFM+e9bAScHVla70rgjrcB*72Bx+Y0-aR7nHO;MZ6X{e+7D=wu` z@9>aaABp6hT*u%>Z^T0u=+n4{q1Pn9OH9WT)LRgn2sj3HM8n$KOcrPuAbQdAz?80#1N~VFN!rxPNJY8h2rW|iby40(dId&r#D#eFx zMKtKV1`$Od@ZH))?|AZ@Wdk@n9{yYw@{Bca-u2W0(0+!6iclwG%s7YvKjM`45sEe9 z+UK&n0=#Yd^Sj+1M~|UPf7B*_k^!C@?NKa(EVS0DI$BBM!K&ENkFSaK8Z{ zH&ppR?ocj!4uttHW<#0kvkpkehW7|`=?Q~=0tcW|NT-LnrlI-%4mdNq7P73+mN?zU ztsjboH{rBllVjMH_YOn54Jik^!j=RM)fiG|!7+ zdY}b+)Cx-GoIs9(`{13O!L^fSqT_vxy!`*~?#ptQe@Ugq6a5!`1|50Ff%p3YGW2QC zZ!5Js!F;u!k_?SI%AHt@hE!WEl;;XoGgg#P5-M}qQv}9EURZ?59sfbc^l@3PMR(`N z`odXb9Ux!+_o)ITN{f1sO_rlU&Ed)7-3ce;-pG>6*>C*lHbKScw#C zuLoy=Dnwxioq$}T2@rccW9~axciJT8`p2w((0w%l7=oTfVy^r?`3*cc*H7Ra3yok2 zZfDCQq*#H3c+U*{ey64Lkbnr7%3~oh4C~t3(0sp+s33*Z`(5=sPbjO+S6_7A`D`UB zSkkG^YoS&dHLgzA1~!CSR->J4U1?xbR-~hdsK2b1y^H{1CuS6}?U)fUf2K?u zOCe%coF{o@{5zcAX!7*P{s9b|ZcyfY3h3QRx?%vx)0yO`RHMQjmQiL8OQS(PGJ$H| z?R<-1oe@Mf)DkWo*+{|rIU7q(RAqXs0rKwI&IYf)5x$L<)LZCpJx*E%h&{XJ=a_$V zhC~oAF8)TihOQp7-6|a3o1@!e6qcXYv;)MZ0KJASgsqzU0~-#?XRRaCHFLY z*`KN;JbM_-(gKxcYXepbnh254w#TPdGAQjQB7W4Baz#|X5LcIZTZ@qrfP--mYueh| zzfODTBj|<7Re{vnyM@8OsVEq=ItZzN{9N-mKoQL58%Ev^>z>JG$dY90Grj>=Rdy{z zb`$jg{;fgK5MuTtbUC5WqHBHu9r=7-V8hzoD`pRYCHOO-csm&UZ>psBoC-VSw_$De zMq;=THQXwoJ_brV5L0w+P6a<-^etyN_NZJqTh>P$)y>ib^Hd-pX3LndNHH;bx3vD( zPbTwHdx)Y3bWTBFL?@4gWRh#u)XRKiPdjc{$$_n4M;tDWk^iK;GgeI}`$39%Xl>AY zpE}fV=9aW7D@02cPK`pmG2T#pH@M(f6Kr#6U~}%!i;*9k@odr2th1t|t${WK17?lv zxZaSGBW%4J(cuGQx4Ere(`iBz52%SyhH49^lPu7Yq{8jtDU5A=u%`hbF=76SQUp|Bg34 zIT4xSKa1lkYobm=c7G)igkAq235dr;uyr&54s6=HtrVFpj3Z(-_lh&79)Jb^Z~g)+ zH_mQs8Zsx&NKkJdUkYEmh)k2vV}}rwN}xsDN^s(tiWdQ3%6fcT>`pe(G=IN82_f(v z5Vi$-SfY(6+EYxVW`A3jXqh45)y#-HtJaC^BG8+iSFq}@avc(nPun0MmK$U<_)fmuj*3Fvz^4pK zz3HK+t9G;q-JDTOh#U%1C(QfJt{Qo`WNllfnq}Emss`fc(0+*^5 z>ZqF$KntK7(|x8bX>K?oB~!49XICc3QIfipXb?24ZWu@?X7r31?-S8~%$tmyFL5{~ zSoI!sXi`xUNM)f%8?|bPMz)t?iYP-i0(_Q12ZQl?4I`)K5Hd{-KYGgM^2yl_l1hxyb&K@5(=BRf&$lRbCiq7tEqQmJ}rj!yUBn!Pv3N& z$yXB$wnVy%s_??|F==Cv)myN9M353lBCAc5thhSNlC7pTqx*2fPid-2bm{QcaMab* z)CZx}h6W)Aq;>`mf8+zird#YZ>#ut;n*verD_Bm{)b#Woz~Fr(d{F8%BF%Va2JXUpMkflc&G&OP-Jd%QcphhTuiw+}bo z@FdMR$JmK84_u+yoI5~(qCw-B!@zD)AG^bbw!yU6K9-H6_TLI@kJ#KWy<+%iqt0B{ zFz3N}o`wQ)XUL=1wWehrITvm?E|yvcm!muz^pS0BF!3S~KYy}!oXrn_xeaO-N3FNb9(f6y)kR0|gQU#7$Ko0FjvuJh?D4D-Td_#&p2JLvXjPNr zKxSmsTT|TvH&w2Th|~{5vycsGYJLU7q(P})T1ZB%Qc*wfs2-rFwG?8d&XlhzE@tDCV-DsFqx2)wlMJ(-eSB%G{}2;)M9Yi zdU~;f2`uV!24Ddi_JzycWQh431N?pkg2|J4v&Zo`fJ!ibA(7-O9?P!)6uBHtqC=_n z{W!{kHRF?8dI){M{K3HOQK(^FsN^;$6v@!4o`$CF63{3?ikch{-=tz42)QQn-^)LN z5kEE3nTorcaoXn3Ma=F!iJ1Xsg9QRSAi6tPPylg7OpzFxKMecvMth{@+$PHbtdbQJ zSM@3seltoa@pTkH;yZi6#${^&v7vI$mb&pd8)SdyYIW2gZN#I>2W$AJ0F9836w3el zt+_6jj{pp8&lTxxUvxHiL%ZtHxl#TF1(NYeeV)31_CY)<0CyVs0VuP(dW2yO0Pg}$3_*((HP5CDa6g9dMJ$s8hmb?qD1zKmgl z8*CJJ0QJXTapJ&+h7-pSeIGZdf-!ek%j&ecJ0KU{xWuU8RkxOwwV`FH_RVaD8l?mS z^?zZ#vK9-voCB|umM>S-ul!}O6W7Y-5C3D^#-_Dioq{9g9D(bk6h8FtuzSX$dy50| zzfEZE(asD6Dfn^hv}&;s3+2^U=}If%*|?5K?-(}HeF-m8Xv#c#rJchwbAZX}J7-Iq zDG7aaTn|m_KC5rygeiCf3#nM1RA5HV-kCTh;MWdV2gqg~RxX!cQ*zL;2%W>!iK5Zw zH#M{Fsod*WEw5buC>G~AhRmT#=V3amw4P5U^7;`#))CNu%)B>q&~82-;U^%x=`7b> zN_4*bt%okZysopL)rxe-T5p~7lPNYh4aWwhv3*8C18H|>FDl&p%99D97PxKJS%o(s z9CQuJG1^oKTm~6yd1T#sGaR*_%mQiUydkr{6KZGD=b5W0EqG2+Via*TaFn)*M2_OY79JTWP+6Xpa%; zNYQs}kT*B4AB@xP`$CQ&rop<)2@?a;SK|e9VwP+=_FrKv?1Jm_VbNaI&ztGpc^)D4 zo6EFiSjN5s)}APYGMhx%G&s*Rn!!?v<4?5Uw2E;pJo|vg2x22Hs z&@V~Ra_h9(Jtmodufo%+xT0-fm}0_^LV%tmQIJa~?BEHV@cSz5UA>jB@=1ngI$J6( z@vxS$h<%BXOP||TH^}&8OU1u!eIKNl6Jxa472#O)xYF$>%|V)@tu9aufw*+Ha2fhy zSFjJ7b9s5H#Z$~#D>~yc{(MC}-zDFWw%R|;h`CEY$R~aYOq$zm79I1#MB+Xq^L+}RWzj~ z-j~Ned@U-r=Cs>u9=?{1QB2S|3=~n61%kHx&fB>3_g?&d9$mPMDKHK+vG6=E!+5HrydAZ7ofrOn>qMP1lK zxI*%xY~0?_-GwXn>gn=8FIgo!As{(JsOZ`KKl3U#sX#HT+ytK;t8yLH)l*WwSG)SdUD|z1Z@<`-hXtXFZSMWxx9ZbQNNKHwDse^~1 zJw4ri9rljTF~ajI78E^mEbZRqRcqa5FMaO+szwC9$~kW8lnJqZrL?QsrzC- zJo$1P@uw?^fP2-~nEMg0Q4J{E0TAe0Q&N#kCW;Vzw6Yvn@EJH++`8||*K+mR&7a&A z@LZspF$k?I7R>O{nR{}SK0KCAF~5aJ0Df(3UZns3KG%7BVIIbH(`r`iaS}eOBrxso{ngpWpa0zNQBYuQBED-pj$mu zKlg>qJ?6RVc5=#>>Fh1g5E6%JKfZUrcfgA3$SToBQ=}_gXZMr6N=03Gvh(?_*?KWO zTNLRG?BAo`g@P$9do4Y)rl@;CEwOkbb#3qIu{d5ym3jyIy0gUFKN53y`z7{o#OtCv z@)2WK`ui>X|HP!m)V-L=D3e#?<$!B6pr&EYE>{;wDZwEY^&U{ zbh`bpDy;WQO%wS1RsnP-34TXl;D0@mC$}LD=ajQgaV;Op1)X&21k#`Bk+HS|MeVY0 zD`^V}4a3Zw2XpjW3l8qCATz0WR-Gbnn1l9i&8}fc^hhsn#A@n~hd?cYZImZKcsy=F zwGOY-Z9Ng_isY67d+F`V&IZUr7dNJuVX7i649l@HJFSC&xz3piee)6gN_RmvtGjk0 zDrkINsB&wN^PEw@tt=}anv^iVBL;&WmlmS#v6J9eavr%Z1z4nj!0unYRT-V+fjQFD z(5%GGo<8G$K4!;M=5$#`2Sp+3_mKf0Ml0=Yo4g4oQGq129*Za_<@eeUYWgi9X1KUd}sHcb*aYWW&JpXE3V`Ws4fgdi9zjnNe9 zbxQ0>zSAK&QZBYjw`OM}>9kU?w*WwXi3Z@|H%&moL!D<`w>U@Ox^Q9~*WbF8rtHFt z0q!b#zzK?P1PqnQ$Z>-VkugWG*x*K%kGC2JWHcKbTcc;vVkOs?`MFlajd+P=;Y45I zTEt~sk$)>l=xrAoaU`2o=IRN9z2Xe$Z zCST&D#kLXCDagqF5D{WqV`jZj1A)yOUPDG1FB;J&C7Yp)XiS0uy!!vJP9??)+bzx< z9AbHy{m?yAV6~xdIOFAZZq?*YH(#=4&a?p+qWrL&C3)&|mn+E(=Ucqb{#W&&EFr-b zYZs8V{R?)iH$#y|&dbV4IdRiCFd1i+JiVfMnn5J&*%=5qmBHC*0TR>X;dr;ZQjEZo zABQAQk04*}0@5s)P+rR-ut%xP&>J}qXYL^zQ=+*g{FvYc_a2;!Ku_J`tl?B5zt|mk z92ClqDCKOvlYWq_ZF7&YLz0oYcjLVv1TSQ^;p9xJz;tDA>;jS0dNj8;)zIhsV` z0geAoDf!;jM3}!j@5=ycb;RJ-ryp@tC-Gl6G1;Z;ddNXov(&tNixWa=UG@|MP_v!D zHtr6A0m_pP7CzCp#}u5{r4X0s*@(Q!$T5;k1rWM?Dq1vbUDTd_I!Y6^{}N3Z8D8cS zq0!bOC`>?U6N@yJiH`DJr`|N`-+@BMQM8MsI}TyzpxQt6BV`lb(Rt!dD zB=eRP^8D8|Anbc&{wgV~^!-Z65x%MGa>jprlw(h9tM7+-D5Re_Z0+T=Q@8>Zth`hi zqEHKJU>|45)4@V019vn~9DW+-Q(5E!iNGR_sgqFEMx?I#;pu8$FdiM`_)d?g3{_n<_McwXB9MZi}t;nI~3q30|J5Q&7azqpRP z5l=9nclJ|2aakmiles&PGEViOJaCN-yj)Iaf(Ml8(-Fa9Lv>!l`EKM~sFRu}x)+u!CJyRSA>7NtWO8kE0m%%+RH>5IOS+>SZ& zGCy8EnhdN*%{cl_6|W_cV6E@bRNM;6D4!_w%t!(cUt3C4c};h5EnW8Hme6~cPmgx9 z0v17dxH9R-3PS1R>C5(1229Y}{mWK2W-;6VAra1fT+=(Fuhm2TAC=~wm-_jBSNogc zTEJ^_kUiBn{Cv$3qg1#4n^D@Jd$296lYC+L!>tM-O<^A-ICTJb304at)SgxGpG&b> z?$}kDXDRW|6`LA>*Q6fn65bh6_^hGE69-27Hi2lyy09dchS3qfmjKbERY~`MrcQ@Y zSdqzRg#FQEO>rtQ-%c!Ubv-Y^++k4?W!y7rDhiJ~LWi$2!3yNt0D=_f>x4v#< zsWz`Y2$`SqFEWhr^%btU$%DIOTJGd>#^P%;q}#;nIMlLexTTNGt{6Z?n(#Q?b`2V1GB?Z-nDR^1==Z@PQ z4YLX6LmdGvXhE*;GND8Kv_M4HwUcyt=U+}+z(%*Nx(Pn})?(DEUWWTeoZZu)8RaW2{V?ZNgJl2 z!zdQ z%i*{GTrB%$#vVt*A3W+=HklL9q@_=lkjQRNP-As4P>vNDq#vmQB>RekT|3 zw;e--D?t83rD6aZ?TVa5cykb3&w+&M&{(NtEDjo4EY9a(GyI`6K)as44EnBVGwjI1 zsnj{K*Qbu9f>l@ji06|7BStjI`XIYjNeB4~iVd@s2D4|>YiuY`$8CN}%`~kIly>&o z7$5ZJhO1M{WX`|ul7!axxajz^-dL>lBb9oDZT-&~1 z^J3Iccp&52qa|R}Q{okh~z z&p7%-0PRY2=7WA<1vVy6X|er4MP##O21WbQ1Fv6=!^~@d{%de>D$I$)^5LPB&%3cw zi$a(K(7+bpWh}NXrBP!m*+{j)cYkI7x{tOX%Wt79MlGW)8M|FMbz;<>0r)qm(Ak_O zmLLU4OZZ}wrL!Y@9-+_?IfNGfAAX$SCjqVEUP9~KcIT1&z&QWHWH7or1FP&pIv!PeHBB3S z2@w8U-E$&4s5a0b{CN@k-&ipYpvnSoX!oM)C2ioQWQQq1pr{@agX>@wjM_yo%X(1f zA4F;Gzm==tgCjxKI{w?|p>3gN{zlIzL!Qs|GEoTX|0CP4L7HXFTe^Wi;Cf{@OPX56 ziXPq1DnY9U!V1zTx>~u_2I&WqK%@KYj+%&)EeCfy|3cFgeqbiMwO)#t5!`q&Z2$(7^E`@`02=Y{&KlhMeYpZ#152 z!*<3M@a{_VC;HOROR829hSz-5y8Wt1@tY_>o2odZL*Q~sx<{{HZ{6NUB&5U> z34crqXF5%FJU+PgAX7L31T-9Y03%iORWBt+Mb`xU(fbNETapYCV z6VxgFtj6V#WqIR|DmV+1I2M@2yqT1|k8WQee~V%5%WxUx~~1`vUq>}|tqWsDPSRhD@* z2ZvkT1ng{fd5@|Qe?{2}K(HxDd9F|NmWxH{WqtOxvh(K*K)0PM>7i9UrHwW@0|nj@V)C#;XUf^5w~ ztbgNIo*Ed6s{*h||0GF(HK69KA}aoGh?CZ(&d%wivytvr6HhsU+m-6ldaR*)Q)N?% zjqsO2sw;Dmu*Qb1O4J+cQinnPq=Q471tDx7g7;w^=`;%TGO&T7@q%vVlR`%3!a*H8 zJRojfw9I^w#@))QH;&j*wWv0w91EQxzOHv76i2K}-t!`dXHW&UN^2?G%O^+z1f+SL>A?bPbw%i$M;ilR#K zrS?P$8CeKWmPY6n`#CL-W6l;^K=iMNnBJZHx6dKDadj9fww(AOWJIE9}nQ*y9D8_OY;pT%M5fID_0c-dM0LIe1Srw>-9$0oy z+xm8A%C7s)yVaxk>ATEk-78xm25eV*(@#W`j4FPyLV~Obr*x+J@kJq{?o}0f`G)H3 zIP*4+g`&t_^RE_h3b_ z#kdXgj_EH0XVfvaQCiHTl7ARz4*BIxFPIF(VDqE(&q5-aTH!vwqhij%J21Q1CvY6z z^s<_lZou<9hi9Ouv#F@a?L4i!VrEmQC;{f^)OEsALNrvC|W-O)xi)GYGpK}FW zuYHYnHDg$shn#XzQXQvW@;*kd%SP98x5|eyJooKbU37V$h7ZTk)HO2{<_J$<&PVXK zd{h}g66ww0^YXOF0cwAkwymoTYq=VfJAJi9ycE)92y$2j!*PHxfeO%LX=bpu&_-xv zYB42f-KD>87=Fc$O17DC_z_cO~*3rx$Ro7b+)N3PD;P3N8*jf)jE74e(KtwEhdY7CP*<1 z#k_q8>N*D-`a=}%^na58r*{cGGXlm_=HEr+G{NG16tBSEQ4{!4GG!L zTJ$>?qqjB!NvUB!H3|`9=ISk}fluF#B3ZN!4=cNVoe(Y>?$`4DNs{+*1oAI#`SRS- zXX#J+_b$^y13IHM*Quk+Kq1`rbm|=1?WCd#3Jn~@sY0AILt;N+>R6R}>FU8=njh=P zKc?a1H*^W?utA@zs7CF5y_l%(9L?F8z_5O_9IwfyVutxvCQ+J*U}VH2H~|>yQ75-= z+XPWnx$*CH^QCW$K)QB<3qd^TFK3g`%Av76%$$Gz=y`Ic^-LUSzmk=1d&T7wvQwis zig>wEeBfBeQ0&lVbmFzOk?X!v0m6RazV5d&GFx_Un<;CRu=Iya(STBYXVqi!d_K>a z-(+nozUh!e7p+Mrv-=29p6&|rpgzqWmWj!+Ehgr2V-fcO&jpM@0?$t6>?>Th;|P7_ z{T|KpA!qj7U*>|RJL{Q5_7wU{EqBn)Do?n9tLU;qzTZYIT%LlfZ+Ex|RJx<3j*xOIe(`$4pbKv+<+r(j4F=VB|*%- zXM&%rigzZ32$&s(4+-8rFVjk`TsnNk`TAVR5O+X~e_BEv$2^x`rebp*Uqzy<1aZ)8 zevTgUCpP>8g6q9Ct(eqx+2^fCMOy!oT5C)~ZwFLY5O`{TitFIE!VgX+0W84`IXzs` zyN(t|lyF`9&_xh+P}}gXMF;&SMwn>KEnEIgdim#iahc$6|H!XPtEM@43GEO979T$PjC?q-a@=)gta)H8l1H8*r>RN{yb z@r1yagM!4?>q+qCB(@!Xt0IYSY-ZnbnOV{NH7eIef`NfZrj~Ep4ve(Mgbz~pFgA%= zp(-nKa13`v30se`l@-C7#^Xm%+FIUW<|e7g$EbWVhSwKp+TDS2lS*k=yxHO9svaVAyN)!8UUplaILRC&&v%JI48zu$5ruyKb0*VOG8&s%g0galnv ziUl9<Q(oskK1YE1Ex6+5&uqRvu!&ax9OxX8v7!f!m}V^dl{9r)KSLG4|LY(*qr zd^@(F*!o))x@QP&d?RpKQekJGS)Epwx8vn`$EsT{!a;gZRYd|L*pZ{0EBl^-1ztmZ z*NnSw+zlB)qx-XMHAWOlTDQVT(N2=Hpr@uZFp>b#5X}KoWFi&N+|?a zlCe)r0mM>d|4~dA^0_+1!$k*?>g?SANNP&XGAg_Nt}G_g=;$2H{1c6R3LV6USUQ*e z4k;PbI4t;LbhBA8lzai~;lyKQMr!LPzc zjUPlzo!zFBhvIve2r;x@W1K5=0utJmYtNWY%mwmr&n(X2UmjJwEgvrNlljleG? zfnN;m5gO)gsS|evH}>jWK&|tb#cn><0yQwJ9gVjdPC{pT`vA*;;|e@gZm-FyU*?{W zDQ8B8LKwLtWJOPc8AmK3uoj6!=PYU|Gshv4kKR%mX-;^thfl;vdVi9y@b*+|HJwb# z`Vy8L+qV^(I-NkMJst352AQxj_V_bACoYM;j6lL~lsl;Hv(oTG;f-g*S1G%{j^J!8^&KgjM zEuZKZU!|JVjPR_Ry5L5XYIu!K6zCuj%jw>-is%hhOKrA zGqRsBX)WJ2=twpAeS4n?njEe*V8K7meN=!|uQjlDe@uQ71NPF*Gp(mR| z6HKGBxi*00ctVK#)!(_4W?_U%so=3MX@dwncVAC@cDOr-r8^=)tzNsN-XHm;)laya z;?o3>)5%Q3*1JX3T{DnV;_7Y2+Re-!+TT25;S^NMvP+_ufuEeXs5?*e4GRwUoArcq z>1LQt6|LL7YAh*|ayhGp^hRSNJU{w^8*ujf$fNp>+ct= z^rg2!<6B8DBmA?>%=DK$!CdIV!VhzcnVZBEdKe+dj#ej*(DO?oGwekwBo1?4Bc zN={87@v08E>H~)=Otu6Dr^GoU`0N5xj+nN1g_w+GZ?>h{t5vqkmj}akAl6wc77sXm zx}#AQ7cZ_nlzrEE>%M4kIY+{Mm@rb#5SH=t|3;@$u~p8FWG4hXY5~OpT+f5EoM7Hb z%I z;(>c#bTXS2Ekc!d2n+^Nr^1EsXtF(Fp+cZ*{Hm5AZ{TOh1Bnj8dk%2|?3}^U1VU(Q z)c2mbIjG;5M4!T6Yn20Is#wShZw2%$+qBD!M12E z*@aCSBQXZ1Y*u$!Xt8(dLJS#>9WUNErZY0x0zK0UU?MF$B@lP$XT-OFC6SJC57u8v zQZXaQqg0qE(pbJRAl9imKio4m*1|5AOl|PpoR}mH(xU!zDrvNqWd=)=)Z-d%Zf6!g+GBrg!>2nRCp z1Yr57E2k)FZ^O92Mi)Kxr4yl^~@ZPtuRYum)^)&I%!nc_`zTKBPQuz2@8{VCc^migika*7u7*t=Yp$s&+?zJODFI+{|4lJS2 z%{FqCQz)Q;=&a<=La*%6#~ikPcbMbGcUe!G+^JrF-K@ig#rUz*ZmA;NX=w%jt=^Eg z0M+rWrpK2`{71kaQ7`O}NcESxV`Kh|{=htWc!>nZ4quN@%wJLnmAn{9bEAeYE`|!7 z$1tF7E)gfE%%RsrQUJ1--J3Py|^n>@ztb5mpp+Y!w@{e)@Ht>&3 zwudIF^ZY_Lqkhz*O~7V*u6HcR!3<=AsIM(|@QoTVUx70+t`1X2Hc`F$4gz{JUfQo( zth-HO3K--+f6jBYB(2I(8VVL;NDj@(_Iah72f@!*yQgxSgT|$Bim+A9))JTyyc8l> z$;6m7CzhhBZ_Ofe5(=EcRbozM3-|;)kxxX>sHP=+4$(c|CW8o!k#|WXpzZ0DFdSnK zgoYkEhe_Ki8UHRbvQ&j6Vz3aPn-L73HRD>iiRT@K!+Q(py#b`0eK9H*x3LezADZw~ zDf&h0cTNYbo!52GzQjfEM+1~3H3K@XerN6OuT8QsZNfadNVb7`#3)M;#hH}z8Kbgq z7BN;Iz3nc6@x*Nini>=rJElG|HGfnaGo(5KqCW_0ZHZd!YB<;nE89a#Q4C+1KW%5{ z>0mRl2A+pYw_prAiu8`Ye=0%Uby zg>$!73iCr%lZ6q)P1Z;BdMnv|Vh;Vo{9`V^Rb66`Y&FF|VrRaBivnOspP;`zTLSBJ z@pB2r&5q@Z_hTB0X@whV{KD^)`(ZQu?RDbKPHS@XuS+i}(*#aJ)^_Am=qnuD8Q!$h-^dyQRP8;TlNNZV{FSB!SheI% zKK?3FCxVhg!a`Flukt!BYA;h`LjWSFridfa!|2$)a4BqHumqL9=G@Y) z3!(9NJB7Z|&a05e(=%oC+<6WoDhjZ>|^^enR#+@8B&N)82bmQkq>uxIQk1B#Un zB^#@up~RHZNATjLz8kWVDa&&AEpBUaqgJ;`pKn~`awdPHhpT|DCNV;i_3;_^+B3Ck zfv=-vO+l+K*oo;Irz4z=q<^sx4{JP%>Rj9C*cfO;ULT{|GwOLKkr18nakjB)8xP`} zM)~qd?93G5>s)hmP~3N4J3$4DV-jyN45CyZ@9m$Zdq`0qzs^VOA^l(Vgqp?+gmR+i z!%HtlnIE)q-3FYn0Qb?G_E=OE%8-JSGXFJMd#zs{l??7$umA`~FDrWEc!}8rOxC+g zEl-GJ$%59vz$yY6pzMB7m`DS2#z)L(@744r@}U|J4aA|6F)|z#`!0i@%=*{Gepuc= zIrA|Im?#*R4)t0(Gu>avea5M4M=e-S^`HY*R zU(H73*<{1>M(?5lSNO8ul@n2lHYxT4|BPbY_q&e3Q^FgFL!{&#e%9fw8nqr(I}W%3 zQomC}Cw-!~84CnOh%STqTuY;~vIDTDi_`0-84i$`+ElumznL_=!^kpl4J~x=f^%>0 zL+n`^2r}I0nb0ZDPEzvlNp!BS`aOV85*?~pp7Rwtv86OBSp=|q#rCO`1vyrt&MF2F2SEs@r^iuKqU)5FVAxAu6pSpc`< zo-`KMBg-3!-Jw`e|ICEIx18BT2zXoq1`4Z!e-sUs-q}LEk; zMpu2n^TruRvb&!=O6LQy_X0ZM5DP%d#&3f@?a`R(3WD@PQtM_J`pUP!+|Qu6oL5d# zi;!s-QE4As?ph{0+GO`j+CZ=K2ARb2=I zwMbE=``BSdP9|y&quY}K0v|6%w0d1?o>4-pTBXnD`PoBpAfdrF{Dc#17eSjqz}KSOC4m;@g)px3_6$R-VOG|sRh(4bm4N9TJzZ?IYOxo(g|UW9fjdDa z60X@Q%r9a`-NDM7ax>-b_E@}Du0=%D5b8a@z7!#Qq17fS43?3ntY2^}W&*TIrK8v> zkRO@7ZkeXHq}C2}IG^50oV$h1Uv>G_siAoOCcH#nU+iMZ~Nu3ST)P|ch2bMOhe&)#n- z#EBP`ZGPKlXVFOVl`+zCKT8N7r6L`JI{tT_+Bh5Sl9Sq-Q|*?B#U$vzN3C3Lqb|HX zy{-O~4CXjCQA0`$8a4rI#pgB7HzdJH4tH+Gp(4uM=tH1T1^7vsSrP!jdEu7!+YK9d zC%56zm&PbEh~KVAXq*w!pYht!lRJE_)$qOs=IctNK5#+A0?}R!=kWm3N-FA%EiYz?z0+FT>~>C$?(-Zs8r|#lYdS zWBEE|x%SC+l1)Jku)XhgItgLIdeJ3M-aUC4DI!qhrig40II~~DI~qPOb$FG81JIZ= zZGxzDM#ALs4}}25E~k(~`*9iTZM+(%uQISxx-UvDy?)tKrI=p>bH1V0xn16e8Apd- zePbl`pi@9Dl0HNf(#2~CpOj_K?cKd%R5uM5^`<3a=Z&=l9Hw&)(g+qD5psJ8|B_OMX zW|Xqcl4Z}<^rW2jjn#IoMg(NT2%RX*ncrE{j^^=dZv8hO+IRKucINxW_Y^9kk98TJ z*jWhRMVhv7l%elMuqR*vyl2G54puj<#h{4Lr)}u2FSdEXW=AJgYVlmi{9vNnIZ3Z@ zrm7z~N4psw58*>_O!iwjk%|bjJSgoeO@{jVpIu_T!PCs`seXpoGiLrTjVf+-ys_=% zjI{xt1iSDLF)GPp2x`ncZ+eA&UtLEtlN?OgvdO6 zKs#UrS=v4NK*IQ6D>Dg6>CDH7T-59kbSi)X73RTDNvsO7ey)3!4E-?^@EYO^_+{~_ zuBf0rdtIOOiC)04L1}dosL_xHB;r2bqOo@#;KGT@Hk$TB3Sqzm5<3fsBBsqfZXbLb za8w13!R8ypV zN2UEU*jzd;G(JXGIu~Lrydo}xj&=lIA06Z-R&i4~rh7_jlZJkum?sR?S3)i##gcq2 zDtV{>!JYOuj!_P2BW>pYh7M|%G!(MoG0}WKMLfc`*e?k69E<|B7$e{J^@28jbq)3Q zWYe8tv0p3*2(=Ag*9Q6Zss+md96fBsm<$9!1wg6)H+x0S<)kDpwND{IBW^{{P_J4uq|oQzdqv*ly&%l$Vw5iup68`(-d$0q)Qr#-cdEB9_( zmb->K0mA!0#eqs0^Yez-)8z-?kf}`K3@WJ#kMg(oS zti=z=bW_AHFWO$m8N;FjQ=iWg((ctwcx@kVVd2++&y zjlLYV^;}Rrm0=++JKdD;;6{r2TMlTN4&9(v*@dwhL~uCLEL_1so7dUL$GP9ID5~Ok z)Lr`cP*L=GA#s12QINi~kI{RsB+TGRL223OA9wsGow}71>a5=Ni&1K~i{784n%dzh z++Ih|Ol|=QIsqUwDBP*-9lwlBgVbr!X>O^vnNs{Yq9!sZU`%dWql zsnV1=%n3XG5g5rz(kT5A#G}8mwIOeK|LmkNJIbt+{oZa(qj&9}ay)}sSJLKIYNJ{l z&_l{)D#&_6h-U>H=W9kc>$QDXDHXg#_0|2mb2)eWDdj3|IAYG-BS=n)d0fH&?peW))oJ>cj6-pSUx=qT^gVa?L^ub9Bko(l(d!HHd{Fy;?IIU z@k4b*lW6j++jgJv+CS#sE0#EK<9WcEy9ZfAH$AzBh*XlQZI2Zq*5SyKQvg3Unc3Zx zpsVC85<4`G8DYmHOxazxxcZ-8t=l#~FyirrwT*Dx4ZZkt0iHOmLhe+M01}~A8^I1O zO&iGz=bp3r-|_WoHjk4$uA=_}t8mw*T-Yr0$g`fZ+v>w-oT$F_f@cAmD7yNz6`g(N zqvh;-`Mp<%A2PTl?Muy!%?j4XB&u^rn@bDoFjYy;6r-L)Q96MqtoR6aAcNnAxzQj- z%oIP!GkKFAvhM4S{K;xRx##=*>`J)O^y!}m-(Ib;pn4X6^`GuC=ghV${CK`z%R7|J zBBjbd|JDabv!X(bK7|?ZV0Qz4%R&e=Q04ui0SOWm`Kv0DMQd(P#Ovm~Mh}E|rxd~r z6arp?cm%x}vw2<+>oC`qR*-tbDOvkP1zdSJBS{gv%_Ot|b@G1luY@PfL|;9#(T-3{n%Fqwg3#9Z z`u8fDr50;pTH``ZR~EdQ2WA3LX*mwF0C39f06`^_mB=%eJ3^DJwFz2lfpS>FJ%TzH zCdDD|!NQk)_Kq%|5JlE=kW|yyi4n&cXuXy^YE!i1%@Xptbp)_Z5nQp5-7%J01*6t@4p7a3`U3A}2lB?S04) zKGE%e`r7eU&~TA${j+KIhC@#?>@P^yKR-jY z!ST%AK%+ue%`P1wK1INXUpuTvV;BccpoWylyhl+jSwQLxO_r1g|26!#`)8A^%h)&9MMJXbYw&TIvcIf<+Dys8rPx*^ z7HRk#@m?dSpwhup%RQ#I`y9nu8NMREJWKC>yw}$u|4dQY7!4o!V;u(4+_QPF#l(bq zRdGi?V(dO={!_3oJ4_?+7i8#!#7;A;4WZ&$x_u{}S5o~W)+$N^ykvjE^muJotKJbD zthPPlA^Tgsx?z=MA{J-Kr*pL(O7-7<9#1>Hb8VU|Ag+c4Y>?dU|46F{I^B88%JS{( z%T-O<>s#Bc=BL=wWThngKaae!bh`71dLsu?{KOx4l^n@@}JmnP*8cALg70NOvS|hp)&_@;exsbXbzXBm%6SgXpydv{&vcQ`GkzkVDLO z^eG$;Z;P-swM&BI(o_d^O&W3}gR8@J^MYe9kI0o8(EwB}<|&gkb%c7Hfx_TO_X;@{h;OvPBPgRU!a!|$O@u0 zof}FJ67`~v#2>D^tU5zBEvz}dC@S_22_Ubu1MnaoPMOD1;&%4r%EIsJLx zbWMi%-t9PE&w3;U7&!XXsL7e#?((iy&)zpzIkF+~BNfnJ+}jIX8B_L=ldV4omnIIKpymCh<~^fDc~cB*Vi!e0u*9;qdCRG0cE*)|N87xQvKrYmuyzr6yYRpw$ejS6W{wrGPcDA^1k7I@Qv?6Uz zrK8rnX#A^|C2y-6zHFl|1X6Q*_230~C*MiRSKPd;y5Nu1r)XlEgQLMX`4;m*q~B(E z*TGra^uw3$z4d~HKsmJOwb&XkL*su3*- zp$k#q_IF@Q{f}%rjPLb7q9NRPUm0RZ;Q)xyd+oXHJK}1W$M8J;ae$qh-~pH|c^(1F zVErw?A(o-8$1pT43xMhFfnH~k0r%%H=KbbHWD>OHby2lh3!*QugmLuA^m(LF@A};P zD9U=td~aLWx#zF9wI89&cb*Kc3mh!(8-9C`OTZ?9SUZ|B2`|G5&SYSwQ}u-$e{cr` zj;0GZllNzj7?P#uZ?qyl4!Otic-!}f%XQ`WihaC1DGG22GF?wMwiKi_fK#e4+iK9R zk5(`HZM`kh_Xm{MO8yigsUtV3tv66Ca9@`|F*UCV<>o}r9 zNe>r+L09hj@)BQee<@5cpE|DOcx5Cbbtp8B%b8x5U_I?z^x2WF?B3N&UEfMtRdyyI zAAF6d#zJU{nfaTogd*F$^hsJ7FG>UIQ;!j>mBhd{6m9LbIrSbM^+>FiD0cd}4Sv1R z!H&(z&b}XUpx=d=7>5?&5Q!_U3D5YoF8G%&`F8T9*Jb1i7CxkOAEcNzE{?b&&_k35 zQheuul;MDyi;G8KDl|48!;c>sGq2r;@ZpUxR23(c3?Pe$j_-9 z-v{f_SZCkZHxjWhC^qcU$*(jY_Y!Vp2QU-B%M;4%7N&UR&U2JO(S2QXMcQ#9r?&s3 zPjdyh=VBf#93if6K$jV0aLG5ffz6nHa!Yg;+ZGsB)c5nTlsu1dKV_3q<b8IZK#7azr4kVZHd$G_j8i8c@67JI>81Z>E$>LclA(gdrkuA8p zxraCGopA})21gyk%`HgRpo1^HYvWKdhzU8S4Y#5#Ns=6 znVT3eJB4&9mC`QBblzq#j4xMBMVx_kN4hH*M;wMIFuL^iWQF8pkjsqqoR$YDtAc>a zW>4`K6?;WY^$-5t%vg-hPww=l2x*+p44V0w1~bZ#V~wiv_K2C;jwWR-r7bC$>S+ET z(#trqXPUOy-t3sIKJ`wJ6&;Jl+}FjkuFj)AWkeN{xht%P zU>~*Cy0EfO4wS7PV=ffZ)c(3tJS%4}3y*Kl9hh-*5CpD8G>4tTJ> zD6_FO2JxP9xn1~{BWl69U*89=oDeSWRj&0MYf@{vtNW*DF!JmafmNKIKbT8We7HVo zBD+$6yUl8JcGpP47cf{auoh8(f?3zo;$ce`CW+=;l_OUSImKr}C{AYpgdju{xtfPQ zq5Ib~3f9xYAn5}jUYk9OKr}P((}dM+7s^tgZ$!j$$uBUjPin=>2|L-C?SlobiG_vZw+lP2q z{p_vzkA*l^lJ`AkF!a+6zOq=mB37AD5d72CFTGtq>uGQu2x z>_i-uhywsg--Q!-L(?H&QHeYrW+gmAbox==YU*g9H=ybE4Gct+q7{oIKq6+@HTdsE9$IXK7;77RGqOs^)YcU z+5_M}8_7cI0qqV(#5_nYHGEzWeLdHWjQyW8d=*?kUcc@)!O|Bp+Hf&Rig$1?~ zpQy92coB#Ei1p7Ln%co3>7=V)hm*)ZXcK)fuxut>y955zABOhm3zXTrYLTlbRV|S( z>T*d3D3||ubhq|kPwroro#00#&d?38G_1SKKr0=U9&qEQ0F6G0C12F8BS`8q30S#5 zYO6J(ZPMR=JjeZ-?@XUBQSq{1`TYDsCXLhAH9s9SmZHYPuT)m;Y70)D6OWXGvxO&w zrP5Romn9RsMUNyK6y~;$3~t(oj+>EN#SndRyeqlt|ZK=a()ZXo))Q`~MB}uqvWL=e834^lH=*3+RKSN4e!#eexe9YKgBROy;UX)Y1ltfhEen!(J(uB zFn}QW6DF-mysDA3xhCjV?Dt)Lu}~Zm9p{Sg<Q=fIWm5^x_eTM1ZpP|4X%Cc<^1KuGs84=Nv2caO>;cZGEn>Q zC4#>dJ$^j{|8k0tbJ;dk*9cm>Rj(73s~1mjGuy#&$sF$P^ySWKy;$=AFMwthbm4cD3ofS4p;6d#RS+7YCFVzhOm_L$23M8 zQIGm^RSvcma69?}wY{vgvVz6&yZeFhY~vL%{^NY_T2W9eh`^`N*zt*=U5tKz(`-py z4rQ4Oik>uQ4PA+{s`Hf5Lq_)FhSc+4q7Z+FBQDB$m6sc$eYzycs}PA2E;h7ssfMQ2 zK%)4;9uhkSy@%Z38xN!l(-%S$>mYlN3CrVLgxBT)^6ho3)Hb=OwIHXMozB@g!SGX} zW*FvdDx#H*=@RkI$hMZc*KGmt#Z+HL5t@OB3;Kil!-Ng9X|T)d`QK0e1L;qLKqUvA z+*si!_nYH<_l?s5>}0Wc804~ybw*7|C0*ldCV|_)b@x{rN86ix$L9Rw{-ev!+n#o= z5ww!4GQuK(f*tUsgdRqC-`k=6vJ_FQRJHwyxkGVJC@}yi4H$u9rdvH8IH$p!N@K z>ah;UA<3ntdBZzX)`_0FR*Uy-VnGdZ8K*C27ZH8J#Gg#)4;z8$if*`_+%O(#w4oi* z+syZQIN6Emo(4>M^axpY!)jM-TiiFe|6#W^)^?XTbD9DE1Q+Y(-V;BO6=-i-dyH`C zA64)kzsjkbjY~IlL}F7y14^QB`@hN#cS!zxmD}Z_Pngdy{HC6^WniP3$?*E>HA_xT z)1mrm%Sl_BUj!QvouE3Glfw1_NG0eww?UiUutSg{SUuJz{Zq{k;g&bCfg;Zz;=P z_vR1A(mT!UxS79x{|@z89c^M7I4DKO7U$Zb`wWpb6-6i$hVdYbd(T~UlfO!@Kf3B) zt?MU4%61Obb`$gAC}#(Bzb>$*2t@Q#1p}u0zu~=u5tV_-kKeoqh3GLlw~?HHhSU0y zvwjW}bHCOP*A8bvojJ{H`KYi30Qp%+BcHzuDXi99K}^$cq7wK<8CCi#b-{L3j_m6X zKz>h&O}WSVy6QokTHsbKbb`awk>A#P6k^N4e#mBuM83RS);bF7aU}6SIU4^S%F(+l`2!dtts^5rG|i|n9=@F2+jah!c@BrVI?Y%mtf(0>H;EO z%WtxkD=zH4 zXH-*NxbLg41(hbCARwS1AcP{lC(=7e?;yQ{^cqk^kluTf-a&c|Nbf{?3B9)vAS9F! zaya{rbH={=j&nckPxp@T=F3V(=34Vvzh~yZ=2)5Q`R@5plc2&+*iL~fg_HkU1e#m(mdg3`pB)-WqmP>E zVCAbrU%O1JU}=FbEo{p1Mz8BqT-!8<6F@a{8KE_{R5PFTJJRcmpe?zL!icR}0$l7X zm}+{rw3OG9EpUMugU>nZgW8# z@4I;pR~4eJ2P-UVugg-}qBiFcGuxt_&m=w+?goaaMg^*P#_lv#{Hk#zA^9WoY1<2y z6m~Gox~INPbz_tbbsYZuiDoj*NUtsKpE58~7%cZ-xE))D#OaW+I#C#|(3H zky@~^ORohWY>hC}tXOsyfA+5gf2u%3_C`vP;iKaN57JCJf6F^RakDsfZ9e-SvE^v} zD~K~IA3dX$xo^~zVO7Qaew3{30&(k_!}^vy-}Sv(rcHsu_oUhl;{7fyNj5Dso@ex6 z_8-PR5_VqI_xDr+KMRmRFJZ4`tt&VQ>Xbh-{awSGIW{ldX}sXbN9ne?&vvd@RBYs8 zd7Rs%Td_Tt;HyV`u0PdcdU&hq8G1yJxD0&0v9Ps5t$Q?iXQ5ZfFvvyxn-B^^<2fB^ zJyrkRx8~dT-afr$(){&^_-hRKAJtur{m#nS@gL4n<0YA>=s+3Wr~5353#1g9`f0-L zRw=Y+K{E-zeF>c_-p?IjKS>J5zK-nyIJ4os2RU0uw1Lj7<;uKbcvW~iJ|IK* zDaEBS2-3{*<|ydTckXX>dHUV8!AZ(C?X$*i6tM26@Xs+5ib$i9CvG^859mk6m-z>B zz53_sthL4Z;V05Z`hpM5wDqTt=rV{_UeJ`mrJV$*ZgtD*@hcrE zDlRn#R*2vuEdPGcl@=&#c{-}}q~rzh^;8EvX2^I}!SgLHosEAW%P>LeyLkW1jdZ)2 zW9F>L4E)rJMt3onFS*V@FS*OvoCefj8{nZ^xqGPoiZdqq8a$H^iK_B94;*J%B=7c(XpE#+N%@PVXIg(jrT^k$bVx8vH3pFp!f}1ax zxSyB3EOn;&BZIF?(lIX)T=mb5L4Au;4rP#Rh{Ul?JDy8{%5Q;P+j0ga!~3_U%J-N> zQFz`neApDJ(e*38;;TRUK`BC%p*p9Z_`|1e7W{`qF3W^v&c7_5e%`KlH9J*cw?HUR z?a^#E6}G_@8qE5w!*#2ge4yu~F(3DsM?3uIiV%vfchN6L6l~N}6+`)x%$x^ze@M+t z0tssktE-c|O$riQkrB3Iw`wfB5)2;EE^`uu#Xx>t9PL^54tBW3={Z^wh zw6`lY;C<@j~sq9ggys&-K*2GAN z>XERy;OTm-pge;U>c@tJfRQ@4-WmF3k{K6B?knk`ePws7pm{DeaZz{!fyxtV&9~EU zo){v1N3UZ@UWq;H=mfb?k16uU!(3+IKgH;hXbBbM+UoVSY7V zAGK%$30uF-5oVLKfqC*M-;w$`Oe43^{h0Ka6Uv>}4d12H^imGepKA{mkNt4UUgFzJ zIMK$>DP)jCvjCVQx+H&^VSG+Lc<@|5o+P@aXxx!cG~}+k;G>sm^*rXi=XjYh^2g-& zP-uB!rDoy#<}>L40OQybd`ZCf+Vt$D?YiQZpFw3oEXLWnck2k{6!<@juL36sxCK=h zLrCBwPD{2Q(`DxKCtN@L5_3tb=I7>xYMK>IC8$4;7xsCpp5RHPt{6OXv{4GaNak8l zeM|8gf7mr3`qD zw+sHv^o=?1Dv9^mD=vcJCcfK_K+-Q;PY;*k8OY*J)8Y4 zE&9ab)IXx*!jKU^UuhFZ|AvH^$El@;X{jSg@zDPivD}(CGZ>TBU2aH3*=%2V&n@JZ z(J$2uc+ld!x-(;>->`DW8u@n<3#E;{;Gm!Mz3e}W$7D#V5z>aVMkUOuS2Y zXDOB@TONcQCWF%tWDZ7Y$3^B{xII4W@@FK{uTng7ZG0-#-S){d<#D0razxlBEA%obe^|0bre;ArsYe-g!r_I^2FCB|fsgjX zD@JM+!#j~_;dANpo}{v0VSp9d!s_4#NAU01XU{B(b>I?*8T zni+R#*;G%Ow3 zZW?!st8}-<% zRIgLpFA1mE6^hj4KlZ;zN%YT=JiVC64POXzXCo(PFT)qRCz9+b89oZfZ%lc1`|jNW z9$nNYomBZpAOZOIgU^u^-bzlpJv)c^0^TZ892D^I($++w;>)bSy^aT*PI(J$yn%oY zi0lX7`Ut7DbvntGhiT%(E`Guu5el%~C2EOQYB9wP&_kwZs>ml|7D9Mqzg!=vx(h1= zo+WRPfELa>-cd5I6198x;BO}3$R4F)vPn24Szu4c9uymWcVQOJt6^6Ab+RGAu<`Qw z{&))aWTP+Rr>U*CZ+w-{my=#<>MW9drKxgjy_>@I;xM*;6XztK(+Zijdc^a7`iW^%(TvU;_Q!DNDJT7=mQL1B1X>?H)SK8AH#-=CUWL_a{bjo+C-yE+OD*j z36G(gnxli0j>auff~D`bP?0Y+IgPaA)nyXiB(g zdTrYBQFS`;VM;tKb>CfB+{S+M<1_d~#z|K=h?hTXiag_W_aHDKR^qmGHu%L$dHR8X zK+pTh!*=8u_mX>e7He#R=&;9^V1^|Qfx#EFsY{~tV|*tvM=GVOAy0nIh&pVGeg06V zo%i`sJ+jFn5zm8nJN`)PWN8`V)=uQN3gzYAR@oY-tF5J)zL@)2K;&jZDcIP7p=W&@ z9W*N=Nz1hPrcPrULuPno!A~d=6Ngvi^JX5Go>e%;89Bq1Z*HPCGMLhUy&d0^NcIVP zP?VV#)4hKs9}P8mT2X~_P%N$#X+9>z2U>3N>E6q#-3PZkb4>GGy6On}oBqdCx@hmU z9-Z92_TWEGrckPn&YCaptr{Bhs!XK6AbzV7=otHM39oVd{RcnCrJ<80B)I+Cx7X^A z6YsZ}yljyUdH?Kd?Ec#AIWNE?jI8R2Tr!HrlfRA!&@q@7PiTTZ>?TaTWnHlL0%uj!{Ho>)nFiXn~h=lF9A&qBL3r zK=$!tg7GrIo5tlv=GzBJyF{cQ1wws3U^8-G0g-GJlaf@JenOWD2vwM*m1kt9vZJh+-)#NoBatJ8Gd#CkDr# zGmEkhvD$ZE?x=J3uz^&FwJWt^kWH$Z$HWV7g$jYr-N^-wyE!qXVtK6gqnZRW6f29k4PXSd?4 zK{7wGF&!_5#dWZu0|^b(>}<#_uv~T#N2>t@#~fwc{3_pV*-9$3t>aJ6%5wRUV-Wz_ zX=C2#jS34Z3^Ex$%}gIfdTs!2q|IHdmX#y}EU#f6vu8ZAXJHy{+k}xQAZXEWrn%;` zbK~x>-|lwDM*EtnnYYi`*C`awko@aojvLPLp$0LjXs$j3QnI?Xp_?a3$R`|xhpb$h zCU0xJ54Et-B~H!jy6ppsDTwx~*>!r&7Z*fBeG5q%!huy;f@7j>W6ce5tEtoN4TUWF z+8np8DQi;vQ{U%~T76YCgp}XcL=C*0!o)GS;&MzPfxo3O-op5A$CH?6j4oAJf~KGt3cs+l~?O|4yU~ zUfv@^EPnQ`+Hto~0xzKK8uHGaF4uBDs#ZoI3BOgmW?e7H>O$nqXu8buP2k=%=PAtb z0h;S`X|;d3w~A(I-`>)Zr*pvuxKxc(9zmL0rF2DM&;54u(_Kvejt)cS6^W?|E#Tqg zhT2cqf+v4m&iz~n@h%ahH5ALz`21xf<0HS%2i2jX%e{7@)vVJ2g~tTM>W*!SOWOwu z`%Y;j@_ZqnjHe*CO98wKv!9`qo%^mIS}Y{wLKPct2k6h3p@EPLC(V%&OVEXR9?;5B zEw3@|8zSJK{H=3BPhNOk%H5=$&{#MsB2i{OsEap2; z%BGG4uCR9TWtQ$NIb=hBdG&J?i32k0j-V}d0z@|GQhh(hup;gxd>U27$-i#%_GQ)! ziX00C6$ff0O0j=`!{dFE#n0px+t2-er8cyb*7U*Zi{tDv+wpsxkZVd}QAUNY=B~dF$2$@>^|Fdt{m@A%0vmR$ zx?qxfH~1`mX4P~xWAa8Z8Go4hI}a_;XUg*RbK2D8nKr;1`i5h%UMrD}*?7x#h92ye zkvC+MrzO4yNvGPPgn#%9R8#Dn`jqAsOOfcspznCQ=te&=^5i&|;xJhOuYy=in>GIYQhP7gcwOyoCQeE3;MZ?gB?XutJxR`Ly}bM|+C9v-|Qk z?|hrkRC{O;e7I@oE)r_6;~=^k-05U)95)|z+Pddew$@4IG<62_8(Fxue4BDt6I>=a z2|RU)r|y>NmE@RyA^IfvSwwa8pc?X1e8c6V+4@v|8%Nwgo?ub0y&m|+>$*}ytCBNv zu$Q~ic~om__KDNgb|ouYU@E=d>rdo4O6v&99TqC901MXx=iN;&;-~hWsz0|xd25KZQ@#lNvp@I#QmkIhFw{;jR z6t04_SePGFta>UwQ;zBqkfIAb5}8v4c_Axhh|qxrShLgDzca_V`2y`V_jwA0O4&!NZx!03}hCO3)oqJ?DfY z?Rd7W+x57ewnXODv)~Snv$e2N(lKJrSKY=#zjvy+tUOO-Z`rR<; zV+@7WvnB!^a+VnP{==IS51k5co|jA?r%E*!sV8c!fFyr1OXl5RRlSI=w9T}k>C+*^ z*cEt(z7`fw)W|mnQScx;XG<^ojNjP|xEHdL_52L{--D>^!4!;Gc<_`k-VK%QnKd#X0Z4b!;Zi zKb6w8=qB*tr2UW4dSGWyfznSQG3+!3FVgAf%*_W%lUC|2es9xT>{>4eluM;n0H@WO zB%lpt=e-P+JLhP0dp?OndwSi9!eY}~Ce$q9NCkB+vlKq%kzK0jQa;OcV`T)XnC)5g zyOYE4R~K56yQ8#{K2UopXWXQ|;NrgFW>t>JBr1O(SL`%DA?(XP#9cqZz0iF`eh6(7 zRky)iWyufk4(KX{_yL!(6#_B)b>YE!M?yH7)s2jWtk*K-0yF*LQiCFt*a5er5jH6Q zix17qX-ke{+==9b6dG>?$bQCyQTaC=Ys7_B_6pMkreFi9Krs*+5K$`?{9+4&YWFkt!!lFASH2sdoo2iYaGrmEDbE$nR zOq5=%9CnNh^8S49W&U=!2ub(L72|xGp%}CPQX9k2v``Y%0DSgSC{vOKJs2)G*sfT@ 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 jHanC{G +Date: Mon, 14 Mar 2022 11:04:02 +0800 +Subject: [PATCH] sw_64: Add sw64 architecture support + +Signed-off-by: Lu Feifei +--- + configs/devices/sw64-softmmu/default.mak | 10 + + configs/targets/sw64-softmmu.mak | 8 + + configure | 7 + + disas.c | 2 + + disas/meson.build | 1 + + disas/sw64.c | 1242 +++++++ + hw/Kconfig | 1 + + hw/meson.build | 1 + + hw/rtc/sun4v-rtc.c | 11 + + hw/sw64/Kconfig | 11 + + hw/sw64/Makefile.objs | 1 + + hw/sw64/core.h | 25 + + hw/sw64/core3.c | 182 ++ + hw/sw64/core3_board.c | 493 +++ + hw/sw64/meson.build | 10 + + hw/sw64/sw64_iommu.c | 567 ++++ + hw/sw64/trace-events | 3 + + include/disas/dis-asm.h | 4 + + include/elf.h | 44 + + include/hw/sw64/sw64_iommu.h | 105 + + include/qemu/atomic.h | 2 + + include/qemu/timer.h | 10 + + include/sysemu/arch_init.h | 1 + + linux-headers/asm-sw64/kvm.h | 122 + + linux-headers/asm-sw64/unistd.h | 380 +++ + linux-user/meson.build | 1 + + linux-user/sw64/cpu_loop.c | 108 + + linux-user/sw64/signal.c | 273 ++ + linux-user/sw64/sockbits.h | 1 + + linux-user/sw64/syscall_nr.h | 471 +++ + linux-user/sw64/target_cpu.h | 38 + + linux-user/sw64/target_elf.h | 14 + + linux-user/sw64/target_fcntl.h | 11 + + linux-user/sw64/target_signal.h | 98 + + linux-user/sw64/target_structs.h | 47 + + linux-user/sw64/target_syscall.h | 121 + + linux-user/sw64/termbits.h | 265 ++ + meson.build | 12 +- + pc-bios/core3-hmcode | Bin 0 -> 225904 bytes + pc-bios/core3-reset | Bin 0 -> 5032 bytes + pc-bios/core4-hmcode | Bin 0 -> 243040 bytes + pc-bios/meson.build | 3 + + pc-bios/uefi-bios-sw | Bin 0 -> 3145728 bytes + qapi/machine.json | 2 +- + softmmu/qdev-monitor.c | 3 +- + target/Kconfig | 1 + + target/meson.build | 1 + + target/sw64/Kconfig | 2 + + target/sw64/Makefile.objs | 4 + + target/sw64/cpu-param.h | 24 + + target/sw64/cpu-qom.h | 47 + + target/sw64/cpu.c | 457 +++ + target/sw64/cpu.h | 406 +++ + target/sw64/exception.c | 76 + + target/sw64/float_helper.c | 846 +++++ + target/sw64/helper.c | 349 ++ + target/sw64/helper.h | 127 + + target/sw64/int_helper.c | 118 + + target/sw64/kvm.c | 215 ++ + target/sw64/kvm_sw64.h | 47 + + target/sw64/machine.c | 18 + + target/sw64/meson.build | 19 + + target/sw64/profile.c | 2342 +++++++++++++ + target/sw64/profile.h | 541 +++ + target/sw64/simd_helper.c | 1058 ++++++ + target/sw64/translate.c | 3798 ++++++++++++++++++++++ + target/sw64/translate.h | 60 + + tcg/sw64/tcg-target-con-set.h | 39 + + tcg/sw64/tcg-target-con-str.h | 28 + + tcg/sw64/tcg-target.c.inc | 2109 ++++++++++++ + tcg/sw64/tcg-target.h | 123 + + tcg/sw64/tcg-target.opc.h | 15 + + 72 files changed, 17578 insertions(+), 3 deletions(-) + create mode 100644 configs/devices/sw64-softmmu/default.mak + create mode 100644 configs/targets/sw64-softmmu.mak + create mode 100755 disas/sw64.c + create mode 100644 hw/sw64/Kconfig + create mode 100644 hw/sw64/Makefile.objs + create mode 100644 hw/sw64/core.h + create mode 100644 hw/sw64/core3.c + create mode 100644 hw/sw64/core3_board.c + create mode 100644 hw/sw64/meson.build + create mode 100644 hw/sw64/sw64_iommu.c + create mode 100644 hw/sw64/trace-events + create mode 100644 include/hw/sw64/sw64_iommu.h + create mode 100644 linux-headers/asm-sw64/kvm.h + create mode 100644 linux-headers/asm-sw64/unistd.h + create mode 100644 linux-user/sw64/cpu_loop.c + create mode 100644 linux-user/sw64/signal.c + create mode 100644 linux-user/sw64/sockbits.h + create mode 100644 linux-user/sw64/syscall_nr.h + create mode 100644 linux-user/sw64/target_cpu.h + create mode 100644 linux-user/sw64/target_elf.h + create mode 100644 linux-user/sw64/target_fcntl.h + create mode 100644 linux-user/sw64/target_signal.h + create mode 100644 linux-user/sw64/target_structs.h + create mode 100644 linux-user/sw64/target_syscall.h + create mode 100644 linux-user/sw64/termbits.h + create mode 100755 pc-bios/core3-hmcode + create mode 100755 pc-bios/core3-reset + create mode 100755 pc-bios/core4-hmcode + create mode 100755 pc-bios/uefi-bios-sw + create mode 100644 target/sw64/Kconfig + create mode 100644 target/sw64/Makefile.objs + create mode 100644 target/sw64/cpu-param.h + create mode 100644 target/sw64/cpu-qom.h + create mode 100644 target/sw64/cpu.c + create mode 100644 target/sw64/cpu.h + create mode 100644 target/sw64/exception.c + create mode 100644 target/sw64/float_helper.c + create mode 100644 target/sw64/helper.c + create mode 100644 target/sw64/helper.h + create mode 100644 target/sw64/int_helper.c + create mode 100644 target/sw64/kvm.c + create mode 100644 target/sw64/kvm_sw64.h + create mode 100644 target/sw64/machine.c + create mode 100644 target/sw64/meson.build + create mode 100644 target/sw64/profile.c + create mode 100644 target/sw64/profile.h + create mode 100644 target/sw64/simd_helper.c + create mode 100644 target/sw64/translate.c + create mode 100644 target/sw64/translate.h + create mode 100755 tcg/sw64/tcg-target-con-set.h + create mode 100755 tcg/sw64/tcg-target-con-str.h + create mode 100755 tcg/sw64/tcg-target.c.inc + create mode 100755 tcg/sw64/tcg-target.h + create mode 100755 tcg/sw64/tcg-target.opc.h + +diff --git a/configs/devices/sw64-softmmu/default.mak b/configs/devices/sw64-softmmu/default.mak +new file mode 100644 +index 0000000000..0b4d56b43e +--- /dev/null ++++ b/configs/devices/sw64-softmmu/default.mak +@@ -0,0 +1,10 @@ ++# Default configuration for sw64-softmmu ++ ++# Uncomment the following lines to disable these optional devices: ++# ++#CONFIG_PCI_DEVICES=n ++#CONFIG_TEST_DEVICES=n ++ ++# Boards: ++# ++CONFIG_CORE3=y +diff --git a/configs/targets/sw64-softmmu.mak b/configs/targets/sw64-softmmu.mak +new file mode 100644 +index 0000000000..37cc2e05a6 +--- /dev/null ++++ b/configs/targets/sw64-softmmu.mak +@@ -0,0 +1,8 @@ ++# Default configuration for sw64-softmmu ++ ++# Boards: ++# ++TARGET_ARCH=sw64 ++TARGET_BASE_ARCH=sw64 ++TARGET_ABI_DIR=sw64 ++TARGET_SUPPORTS_MTTCG=y +diff --git a/configure b/configure +index 48c21775f3..9569d7a3d0 100755 +--- a/configure ++++ b/configure +@@ -612,6 +612,9 @@ case "$cpu" in + sparc|sun4[cdmuv]) + cpu="sparc" + ;; ++ sw_64) ++ cpu="sw64" ++ ;; + *) + # This will result in either an error or falling back to TCI later + ARCH=unknown +@@ -3268,6 +3271,10 @@ alpha) + # Ensure there's only a single GP + QEMU_CFLAGS="-msmall-data $QEMU_CFLAGS" + ;; ++sw*) ++ # Ensure there's only a single GP ++ QEMU_CFLAGS="-msmall-data $QEMU_CFLAGS" ++;; + esac + + if test "$gprof" = "yes" ; then +diff --git a/disas.c b/disas.c +index 3dab4482d1..897de1d9a9 100644 +--- a/disas.c ++++ b/disas.c +@@ -207,6 +207,8 @@ static void initialize_debug_host(CPUDebug *s) + s->info.cap_insn_split = 6; + #elif defined(__hppa__) + s->info.print_insn = print_insn_hppa; ++#elif defined(__sw_64__) ++ s->info.print_insn = print_insn_sw_64; + #endif + } + +diff --git a/disas/meson.build b/disas/meson.build +index 449f99e1de..5c5daa69a7 100644 +--- a/disas/meson.build ++++ b/disas/meson.build +@@ -20,4 +20,5 @@ common_ss.add(when: 'CONFIG_S390_DIS', if_true: files('s390.c')) + common_ss.add(when: 'CONFIG_SH4_DIS', if_true: files('sh4.c')) + common_ss.add(when: 'CONFIG_SPARC_DIS', if_true: files('sparc.c')) + common_ss.add(when: 'CONFIG_XTENSA_DIS', if_true: files('xtensa.c')) ++common_ss.add(when: 'CONFIG_SW64_DIS', if_true: files('sw64.c')) + common_ss.add(when: capstone, if_true: files('capstone.c')) +diff --git a/disas/sw64.c b/disas/sw64.c +new file mode 100755 +index 0000000000..c5bd578e07 +--- /dev/null ++++ b/disas/sw64.c +@@ -0,0 +1,1242 @@ ++/* ++ * sw_64-dis.c -- Disassemble Sw_64 CORE3 instructions ++ * ++ * This file is part of libopcodes. ++ * ++ * This library is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 3, or (at your option) ++ * any later version. ++ * ++ * It is distributed in the hope that it will be useful, but WITHOUT ++ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY ++ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public ++ * License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this file; see the file COPYING. If not, write to the Free ++ * Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA ++ * 02110-1301, USA. ++ */ ++ ++#include "qemu/osdep.h" ++#include "disas/dis-asm.h" ++ ++#undef MAX ++ ++struct sw_64_opcode { ++ /* The opcode name. */ ++ const char *name; ++ ++ /* The opcode itself. Those bits which will be filled in with ++ operands are zeroes. */ ++ unsigned opcode; ++ ++ /* The opcode mask. This is used by the disassembler. This is a ++ mask containing ones indicating those bits which must match the ++ opcode field, and zeroes indicating those bits which need not ++ match (and are presumably filled in by operands). */ ++ unsigned mask; ++ ++ /* One bit flags for the opcode. These are primarily used to ++ indicate specific processors and environments support the ++ instructions. The defined values are listed below. */ ++ unsigned flags; ++ ++ /* An array of operand codes. Each code is an index into the ++ operand table. They appear in the order which the operands must ++ appear in assembly code, and are terminated by a zero. */ ++ unsigned char operands[5]; ++}; ++ ++/* The table itself is sorted by major opcode number, and is otherwise ++ in the order in which the disassembler should consider ++ instructions. */ ++extern const struct sw_64_opcode sw_64_opcodes[]; ++extern const unsigned sw_64_num_opcodes; ++ ++/* Values defined for the flags field of a struct sw_64_opcode. */ ++ ++/* CPU Availability */ ++#define SW_OPCODE_BASE 0x0001 /* Base architecture insns. */ ++#define SW_OPCODE_CORE3 0x0002 /* Core3 private insns. */ ++#define SW_LITOP(i) (((i) >> 26) & 0x3D) ++ ++#define SW_OPCODE_NOHM (~(SW_OPCODE_BASE|SW_OPCODE_CORE3)) ++ ++/* A macro to extract the major opcode from an instruction. */ ++#define SW_OP(i) (((i) >> 26) & 0x3F) ++ ++/* The total number of major opcodes. */ ++#define SW_NOPS 0x40 ++ ++/* The operands table is an array of struct sw_64_operand. */ ++ ++struct sw_64_operand { ++ /* The number of bits in the operand. */ ++ unsigned int bits : 5; ++ ++ /* How far the operand is left shifted in the instruction. */ ++ unsigned int shift : 5; ++ ++ /* The default relocation type for this operand. */ ++ signed int default_reloc : 16; ++ ++ /* One bit syntax flags. */ ++ unsigned int flags : 16; ++ ++ /* Insertion function. This is used by the assembler. To insert an ++ operand value into an instruction, check this field. ++ ++ If it is NULL, execute ++ i |= (op & ((1 << o->bits) - 1)) << o->shift; ++ (i is the instruction which we are filling in, o is a pointer to ++ this structure, and op is the opcode value; this assumes twos ++ complement arithmetic). ++ ++ If this field is not NULL, then simply call it with the ++ instruction and the operand value. It will return the new value ++ of the instruction. If the ERRMSG argument is not NULL, then if ++ the operand value is illegal, *ERRMSG will be set to a warning ++ string (the operand will be inserted in any case). If the ++ operand value is legal, *ERRMSG will be unchanged (most operands ++ can accept any value). */ ++ unsigned (*insert) (unsigned instruction, int op, const char **errmsg); ++ ++ /* Extraction function. This is used by the disassembler. To ++ extract this operand type from an instruction, check this field. ++ ++ If it is NULL, compute ++ op = ((i) >> o->shift) & ((1 << o->bits) - 1); ++ if ((o->flags & SW_OPERAND_SIGNED) != 0 ++ && (op & (1 << (o->bits - 1))) != 0) ++ op -= 1 << o->bits; ++ (i is the instruction, o is a pointer to this structure, and op ++ is the result; this assumes twos complement arithmetic). ++ ++ If this field is not NULL, then simply call it with the ++ instruction value. It will return the value of the operand. If ++ the INVALID argument is not NULL, *INVALID will be set to ++ non-zero if this operand type can not actually be extracted from ++ this operand (i.e., the instruction does not match). If the ++ operand is valid, *INVALID will not be changed. */ ++ int (*extract) (unsigned instruction, int *invalid); ++}; ++ ++/* Elements in the table are retrieved by indexing with values from ++ the operands field of the sw_64_opcodes table. */ ++ ++extern const struct sw_64_operand sw_64_operands[]; ++extern const unsigned sw_64_num_operands; ++/* Values defined for the flags field of a struct sw_64_operand. */ ++ ++/* Mask for selecting the type for typecheck purposes */ ++#define SW_OPERAND_TYPECHECK_MASK \ ++ (SW_OPERAND_PARENS | SW_OPERAND_COMMA | SW_OPERAND_IR | \ ++ SW_OPERAND_FPR | SW_OPERAND_RELATIVE | SW_OPERAND_SIGNED | \ ++ SW_OPERAND_UNSIGNED) ++ ++/* This operand does not actually exist in the assembler input. This ++ is used to support extended mnemonics, for which two operands fields ++ are identical. The assembler should call the insert function with ++ any op value. The disassembler should call the extract function, ++ ignore the return value, and check the value placed in the invalid ++ argument. */ ++#define SW_OPERAND_FAKE 01 ++ ++/* The operand should be wrapped in parentheses rather than separated ++ from the previous by a comma. This is used for the load and store ++ instructions which want their operands to look like "Ra,disp(Rb)". */ ++#define SW_OPERAND_PARENS 02 ++ ++/* Used in combination with PARENS, this supresses the supression of ++ the comma. This is used for "jmp Ra,(Rb),hint". */ ++#define SW_OPERAND_COMMA 04 ++ ++/* This operand names an integer register. */ ++#define SW_OPERAND_IR 010 ++ ++/* This operand names a floating point register. */ ++#define SW_OPERAND_FPR 020 ++ ++/* This operand is a relative branch displacement. The disassembler ++ prints these symbolically if possible. */ ++#define SW_OPERAND_RELATIVE 040 ++ ++/* This operand takes signed values. */ ++#define SW_OPERAND_SIGNED 0100 ++ ++/* This operand takes unsigned values. This exists primarily so that ++ a flags value of 0 can be treated as end-of-arguments. */ ++#define SW_OPERAND_UNSIGNED 0200 ++ ++/* Supress overflow detection on this field. This is used for hints. */ ++#define SW_OPERAND_NOOVERFLOW 0400 ++ ++/* Mask for optional argument default value. */ ++#define SW_OPERAND_OPTIONAL_MASK 07000 ++ ++/* This operand defaults to zero. This is used for jump hints. */ ++#define SW_OPERAND_DEFAULT_ZERO 01000 ++ ++/* This operand should default to the first (real) operand and is used ++ in conjunction with SW_OPERAND_OPTIONAL. This allows ++ "and $0,3,$0" to be written as "and $0,3", etc. I don't like ++ it, but it's what DEC does. */ ++#define SW_OPERAND_DEFAULT_FIRST 02000 ++ ++/* Similarly, this operand should default to the second (real) operand. ++ This allows "negl $0" instead of "negl $0,$0". */ ++#define SW_OPERAND_DEFAULT_SECOND 04000 ++ ++/* Register common names */ ++ ++#define SW_REG_V0 0 ++#define SW_REG_T0 1 ++#define SW_REG_T1 2 ++#define SW_REG_T2 3 ++#define SW_REG_T3 4 ++#define SW_REG_T4 5 ++#define SW_REG_T5 6 ++#define SW_REG_T6 7 ++#define SW_REG_T7 8 ++#define SW_REG_S0 9 ++#define SW_REG_S1 10 ++#define SW_REG_S2 11 ++#define SW_REG_S3 12 ++#define SW_REG_S4 13 ++#define SW_REG_S5 14 ++#define SW_REG_FP 15 ++#define SW_REG_A0 16 ++#define SW_REG_A1 17 ++#define SW_REG_A2 18 ++#define SW_REG_A3 19 ++#define SW_REG_A4 20 ++#define SW_REG_A5 21 ++#define SW_REG_T8 22 ++#define SW_REG_T9 23 ++#define SW_REG_T10 24 ++#define SW_REG_T11 25 ++#define SW_REG_RA 26 ++#define SW_REG_PV 27 ++#define SW_REG_T12 27 ++#define SW_REG_AT 28 ++#define SW_REG_GP 29 ++#define SW_REG_SP 30 ++#define SW_REG_ZERO 31 ++ ++enum bfd_reloc_code_real { ++ BFD_RELOC_23_PCREL_S2, ++ BFD_RELOC_SW_64_HINT ++}; ++ ++static unsigned insert_rba(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | (((insn >> 21) & 0x1f) << 16); ++} ++ ++static int extract_rba(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL ++ && ((insn >> 21) & 0x1f) != ((insn >> 16) & 0x1f)) ++ *invalid = 1; ++ return 0; ++} ++ ++/* The same for the RC field. */ ++static unsigned insert_rca(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | ((insn >> 21) & 0x1f); ++} ++ ++static unsigned insert_rdc(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | ((insn >> 5) & 0x1f); ++} ++ ++static int extract_rdc(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL ++ && ((insn >> 5) & 0x1f) != (insn & 0x1f)) ++ *invalid = 1; ++ return 0; ++} ++ ++static int extract_rca(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL ++ && ((insn >> 21) & 0x1f) != (insn & 0x1f)) ++ *invalid = 1; ++ return 0; ++} ++ ++/* Fake arguments in which the registers must be set to ZERO. */ ++static unsigned insert_za(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | (31 << 21); ++} ++ ++static int extract_za(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL && ((insn >> 21) & 0x1f) != 31) ++ *invalid = 1; ++ return 0; ++} ++ ++static unsigned insert_zb(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | (31 << 16); ++} ++ ++static int extract_zb(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL && ((insn >> 16) & 0x1f) != 31) ++ *invalid = 1; ++ return 0; ++} ++ ++static unsigned insert_zc(unsigned insn, int value ATTRIBUTE_UNUSED, ++ const char **errmsg ATTRIBUTE_UNUSED) ++{ ++ return insn | 31; ++} ++ ++static int extract_zc(unsigned insn, int *invalid) ++{ ++ if (invalid != (int *) NULL && (insn & 0x1f) != 31) ++ *invalid = 1; ++ return 0; ++} ++ ++ ++/* The displacement field of a Branch format insn. */ ++ ++static unsigned insert_bdisp(unsigned insn, int value, const char **errmsg) ++{ ++ if (errmsg != (const char **)NULL && (value & 3)) ++ *errmsg = "branch operand unaligned"; ++ return insn | ((value / 4) & 0x1FFFFF); ++} ++ ++static int extract_bdisp(unsigned insn, int *invalid ATTRIBUTE_UNUSED) ++{ ++ return 4 * (((insn & 0x1FFFFF) ^ 0x100000) - 0x100000); ++} ++ ++static unsigned insert_bdisp26(unsigned insn, int value, const char **errmsg) ++{ ++ if (errmsg != (const char **)NULL && (value & 3)) ++ *errmsg = "branch operand unaligned"; ++ return insn | ((value / 4) & 0x3FFFFFF); ++} ++ ++static int extract_bdisp26(unsigned insn, int *invalid ATTRIBUTE_UNUSED) ++{ ++ return 4 * (((insn & 0x3FFFFFF) ^ 0x2000000) - 0x2000000); ++} ++ ++/* The hint field of a JMP/JSR insn. */ ++/* sw use 16 bits hint disp. */ ++static unsigned insert_jhint(unsigned insn, int value, const char **errmsg) ++{ ++ if (errmsg != (const char **)NULL && (value & 3)) ++ *errmsg = "jump hint unaligned"; ++ return insn | ((value / 4) & 0xFFFF); ++} ++ ++static int extract_jhint(unsigned insn, int *invalid ATTRIBUTE_UNUSED) ++{ ++ return 4 * (((insn & 0xFFFF) ^ 0x8000) - 0x8000); ++} ++ ++/* The hint field of an CORE3 HW_JMP/JSR insn. */ ++ ++static unsigned insert_sw4hwjhint(unsigned insn, int value, const char **errmsg) ++{ ++ if (errmsg != (const char **)NULL && (value & 3)) ++ *errmsg = "jump hint unaligned"; ++ return insn | ((value / 4) & 0x1FFF); ++} ++ ++static int extract_sw4hwjhint(unsigned insn, int *invalid ATTRIBUTE_UNUSED) ++{ ++ return 4 * (((insn & 0x1FFF) ^ 0x1000) - 0x1000); ++} ++ ++/* The operands table. */ ++ ++const struct sw_64_operand sw_64_operands[] = { ++ /* The fields are bits, shift, insert, extract, flags */ ++ /* The zero index is used to indicate end-of-list */ ++#define UNUSED 0 ++ { 0, 0, 0, 0, 0, 0 }, ++ ++ /* The plain integer register fields. */ ++#define RA (UNUSED + 1) ++ { 5, 21, 0, SW_OPERAND_IR, 0, 0 }, ++#define RB (RA + 1) ++ { 5, 16, 0, SW_OPERAND_IR, 0, 0 }, ++#define RC (RB + 1) ++ { 5, 0, 0, SW_OPERAND_IR, 0, 0 }, ++ ++ /* The plain fp register fields. */ ++#define FA (RC + 1) ++ { 5, 21, 0, SW_OPERAND_FPR, 0, 0 }, ++#define FB (FA + 1) ++ { 5, 16, 0, SW_OPERAND_FPR, 0, 0 }, ++#define FC (FB + 1) ++ { 5, 0, 0, SW_OPERAND_FPR, 0, 0 }, ++ ++ /* The integer registers when they are ZERO. */ ++#define ZA (FC + 1) ++ { 5, 21, 0, SW_OPERAND_FAKE, insert_za, extract_za }, ++#define ZB (ZA + 1) ++ { 5, 16, 0, SW_OPERAND_FAKE, insert_zb, extract_zb }, ++#define ZC (ZB + 1) ++ { 5, 0, 0, SW_OPERAND_FAKE, insert_zc, extract_zc }, ++ ++ /* The RB field when it needs parentheses. */ ++#define PRB (ZC + 1) ++ { 5, 16, 0, SW_OPERAND_IR | SW_OPERAND_PARENS, 0, 0 }, ++ ++ /* The RB field when it needs parentheses _and_ a preceding comma. */ ++#define CPRB (PRB + 1) ++ { 5, 16, 0, ++ SW_OPERAND_IR | SW_OPERAND_PARENS | SW_OPERAND_COMMA, 0, 0 }, ++ ++ /* The RB field when it must be the same as the RA field. */ ++#define RBA (CPRB + 1) ++ { 5, 16, 0, SW_OPERAND_FAKE, insert_rba, extract_rba }, ++ ++ /* The RC field when it must be the same as the RB field. */ ++#define RCA (RBA + 1) ++ { 5, 0, 0, SW_OPERAND_FAKE, insert_rca, extract_rca }, ++ ++#define RDC (RCA + 1) ++ { 5, 0, 0, SW_OPERAND_FAKE, insert_rdc, extract_rdc }, ++ ++ /* The RC field when it can *default* to RA. */ ++#define DRC1 (RDC + 1) ++ { 5, 0, 0, ++ SW_OPERAND_IR | SW_OPERAND_DEFAULT_FIRST, 0, 0 }, ++ ++ /* The RC field when it can *default* to RB. */ ++#define DRC2 (DRC1 + 1) ++ { 5, 0, 0, ++ SW_OPERAND_IR | SW_OPERAND_DEFAULT_SECOND, 0, 0 }, ++ ++ /* The FC field when it can *default* to RA. */ ++#define DFC1 (DRC2 + 1) ++ { 5, 0, 0, ++ SW_OPERAND_FPR | SW_OPERAND_DEFAULT_FIRST, 0, 0 }, ++ ++ /* The FC field when it can *default* to RB. */ ++#define DFC2 (DFC1 + 1) ++ { 5, 0, 0, ++ SW_OPERAND_FPR | SW_OPERAND_DEFAULT_SECOND, 0, 0 }, ++ ++ /* The unsigned 8-bit literal of Operate format insns. */ ++#define LIT (DFC2 + 1) ++ { 8, 13, -LIT, SW_OPERAND_UNSIGNED, 0, 0 }, ++ ++ /* The signed 16-bit displacement of Memory format insns. From here ++ we can't tell what relocation should be used, so don't use a default. */ ++#define MDISP (LIT + 1) ++ { 16, 0, -MDISP, SW_OPERAND_SIGNED, 0, 0 }, ++ ++ /* The signed "23-bit" aligned displacement of Branch format insns. */ ++#define BDISP (MDISP + 1) ++ { 21, 0, BFD_RELOC_23_PCREL_S2, ++ SW_OPERAND_RELATIVE, insert_bdisp, extract_bdisp }, ++ ++ /* The 26-bit hmcode function for sys_call and sys_call / b. */ ++#define HMFN (BDISP + 1) ++ { 25, 0, -HMFN, SW_OPERAND_UNSIGNED, 0, 0 }, ++ ++ /* sw jsr/ret insntructions has no function bits. */ ++ /* The optional signed "16-bit" aligned displacement of the JMP/JSR hint. */ ++#define JMPHINT (HMFN + 1) ++ { 16, 0, BFD_RELOC_SW_64_HINT, ++ SW_OPERAND_RELATIVE | SW_OPERAND_DEFAULT_ZERO | SW_OPERAND_NOOVERFLOW, ++ insert_jhint, extract_jhint }, ++ ++ /* The optional hint to RET/JSR_COROUTINE. */ ++#define RETHINT (JMPHINT + 1) ++ { 16, 0, -RETHINT, ++ SW_OPERAND_UNSIGNED | SW_OPERAND_DEFAULT_ZERO, 0, 0 }, ++ ++ /* The 12-bit displacement for the core3 hw_{ld,st} (pal1b/pal1f) insns. */ ++#define HWDISP (RETHINT + 1) ++ { 12, 0, -HWDISP, SW_OPERAND_SIGNED, 0, 0 }, ++ ++ /* The 16-bit combined index/scoreboard mask for the core3 ++ hw_m[ft]pr (pal19/pal1d) insns. */ ++#define HWINDEX (HWDISP + 1) ++ { 16, 0, -HWINDEX, SW_OPERAND_UNSIGNED, 0, 0 }, ++ ++ /* The 13-bit branch hint for the core3 hw_jmp/jsr (pal1e) insn. */ ++#define HWJMPHINT (HWINDEX + 1) ++ { 8, 0, -HWJMPHINT, ++ SW_OPERAND_RELATIVE | SW_OPERAND_DEFAULT_ZERO | SW_OPERAND_NOOVERFLOW, ++ insert_sw4hwjhint, extract_sw4hwjhint }, ++ ++ /* for the third operand of ternary operands integer insn. */ ++#define R3 (HWJMPHINT + 1) ++ { 5, 5, 0, SW_OPERAND_IR, 0, 0 }, ++ /* The plain fp register fields */ ++#define F3 (R3 + 1) ++ { 5, 5, 0, SW_OPERAND_FPR, 0, 0 }, ++ /* sw simd settle instruction lit */ ++#define FMALIT (F3 + 1) ++ { 5, 5, -FMALIT, SW_OPERAND_UNSIGNED, 0, 0 }, //V1.1 ++#define LMDISP (FMALIT + 1) ++ { 15, 0, -LMDISP, SW_OPERAND_UNSIGNED, 0, 0 }, ++#define RPIINDEX (LMDISP + 1) ++ { 8, 0, -RPIINDEX, SW_OPERAND_UNSIGNED, 0, 0 }, ++#define ATMDISP (RPIINDEX + 1) ++ { 12, 0, -ATMDISP, SW_OPERAND_SIGNED, 0, 0 }, ++#define DISP13 (ATMDISP + 1) ++ { 13, 13, -DISP13, SW_OPERAND_SIGNED, 0, 0}, ++#define BDISP26 (DISP13 + 1) ++ { 26, 0, 222, ++ SW_OPERAND_RELATIVE, insert_bdisp26, extract_bdisp26 }, ++#define DPFTH (BDISP26 + 1) ++ { 5, 21, -DPFTH, SW_OPERAND_UNSIGNED, 0, 0} ++}; ++ ++const unsigned sw_64_num_operands = sizeof(sw_64_operands) / sizeof(*sw_64_operands); ++ ++/* Macros used to form opcodes. */ ++ ++/* The main opcode. */ ++#define OP(x) (((x) & 0x3F) << 26) ++#define OP_MASK 0xFC000000 ++ ++/* Branch format instructions. */ ++#define BRA_(oo) OP(oo) ++#define BRA_MASK OP_MASK ++#define BRA(oo) BRA_(oo), BRA_MASK ++ ++#ifdef HUANGLM20171113 ++/* Floating point format instructions. */ ++#define FP_(oo,fff) (OP(oo) | (((fff) & 0x7FF) << 5)) ++#define FP_MASK (OP_MASK | 0xFFE0) ++#define FP(oo,fff) FP_(oo,fff), FP_MASK ++ ++#else ++/* Floating point format instructions. */ ++#define FP_(oo,fff) (OP(oo) | (((fff) & 0xFF) << 5)) ++#define FP_MASK (OP_MASK | 0x1FE0) ++#define FP(oo,fff) FP_(oo,fff), FP_MASK ++ ++#define FMA_(oo,fff) (OP(oo) | (((fff) & 0x3F) << 10 )) ++#define FMA_MASK (OP_MASK | 0xFC00) ++#define FMA(oo,fff) FMA_(oo,fff), FMA_MASK ++#endif ++ ++/* Memory format instructions. */ ++#define MEM_(oo) OP(oo) ++#define MEM_MASK OP_MASK ++#define MEM(oo) MEM_(oo), MEM_MASK ++ ++/* Memory/Func Code format instructions. */ ++#define MFC_(oo,ffff) (OP(oo) | ((ffff) & 0xFFFF)) ++#define MFC_MASK (OP_MASK | 0xFFFF) ++#define MFC(oo,ffff) MFC_(oo,ffff), MFC_MASK ++ ++/* Memory/Branch format instructions. */ ++#define MBR_(oo,h) (OP(oo) | (((h) & 3) << 14)) ++#define MBR_MASK (OP_MASK | 0xC000) ++#define MBR(oo,h) MBR_(oo,h), MBR_MASK ++ ++/* Now sw Operate format instructions is different with SW1. */ ++#define OPR_(oo,ff) (OP(oo) | (((ff) & 0xFF) << 5)) ++#define OPRL_(oo,ff) (OPR_((oo), (ff)) ) ++#define OPR_MASK (OP_MASK | 0x1FE0) ++#define OPR(oo,ff) OPR_(oo,ff), OPR_MASK ++#define OPRL(oo,ff) OPRL_(oo,ff), OPR_MASK ++ ++/* sw ternary operands Operate format instructions. */ ++#define TOPR_(oo,ff) (OP(oo) | (((ff) & 0x07) << 10)) ++#define TOPRL_(oo,ff) (TOPR_((oo), (ff))) ++#define TOPR_MASK (OP_MASK | 0x1C00) ++#define TOPR(oo,ff) TOPR_(oo,ff), TOPR_MASK ++#define TOPRL(oo,ff) TOPRL_(oo,ff), TOPR_MASK ++ ++/* sw atom instructions. */ ++#define ATMEM_(oo,h) (OP(oo) | (((h) & 0xF) << 12)) ++#define ATMEM_MASK (OP_MASK | 0xF000) ++#define ATMEM(oo,h) ATMEM_(oo,h), ATMEM_MASK ++ ++/* sw privilege instructions. */ ++#define PRIRET_(oo,h) (OP(oo) | (((h) & 0x1) << 20)) ++#define PRIRET_MASK (OP_MASK | 0x100000) ++#define PRIRET(oo,h) PRIRET_(oo,h), PRIRET_MASK ++ ++/* sw rpi_rcsr,rpi_wcsr. */ ++#define CSR_(oo,ff) (OP(oo) | (((ff) & 0xFF) << 8)) ++#define CSR_MASK (OP_MASK | 0xFF00) ++#define CSR(oo,ff) CSR_(oo,ff), CSR_MASK ++ ++#define PCD_(oo,ff) (OP(oo) | (ff << 25)) ++#define PCD_MASK OP_MASK ++#define PCD(oo,ff) PCD_(oo,ff), PCD_MASK ++ ++/* Hardware memory (hw_{ld,st}) instructions. */ ++#define HWMEM_(oo,f) (OP(oo) | (((f) & 0xF) << 12)) ++#define HWMEM_MASK (OP_MASK | 0xF000) ++#define HWMEM(oo,f) HWMEM_(oo,f), HWMEM_MASK ++ ++#define LOGX_(oo,ff) (OP(oo) | (((ff) & 0x3F) << 10)) ++#define LOGX_MASK (0xF0000000) ++#define LOGX(oo,ff) LOGX_(oo,ff), LOGX_MASK ++ ++/* Abbreviations for instruction subsets. */ ++#define BASE SW_OPCODE_BASE ++#define CORE3 SW_OPCODE_CORE3 ++ ++/* Common combinations of arguments. */ ++#define ARG_NONE { 0 } ++#define ARG_BRA { RA, BDISP } ++#define ARG_FBRA { FA, BDISP } ++#define ARG_FP { FA, FB, DFC1 } ++#define ARG_FPZ1 { ZA, FB, DFC1 } ++#define ARG_MEM { RA, MDISP, PRB } ++#define ARG_FMEM { FA, MDISP, PRB } ++#define ARG_OPR { RA, RB, DRC1 } ++ ++#define ARG_OPRCAS { RA, RB, RC } ++ ++#define ARG_OPRL { RA, LIT, DRC1 } ++#define ARG_OPRZ1 { ZA, RB, DRC1 } ++#define ARG_OPRLZ1 { ZA, LIT, RC } ++#define ARG_PCD { HMFN } ++#define ARG_HWMEM { RA, HWDISP, PRB } ++#define ARG_FPL { FA,LIT, DFC1 } ++#define ARG_FMA { FA,FB,F3, DFC1 } ++#define ARG_PREFETCH { ZA, MDISP, PRB } ++#define ARG_TOPR { RA, RB,R3, DRC1 } ++#define ARG_TOPRL { RA, LIT, R3,DRC1 } ++#define ARG_FMAL { FA,FB,FMALIT, DFC1 } ++#define ARG_ATMEM { RA, ATMDISP, PRB } ++#define ARG_VUAMEM { FA, ATMDISP, PRB } ++#define ARG_OPRLZ3 { RA, LIT, ZC } ++ ++#define ARG_DISP13 {DISP13, RC} ++ ++/* The opcode table. ++ ++ The format of the opcode table is: ++ ++ NAME OPCODE MASK { OPERANDS } ++ ++ NAME is the name of the instruction. ++ ++ OPCODE is the instruction opcode. ++ ++ MASK is the opcode mask; this is used to tell the disassembler ++ which bits in the actual opcode must match OPCODE. ++ ++ OPERANDS is the list of operands. ++ ++ The preceding macros merge the text of the OPCODE and MASK fields. ++ ++ The disassembler reads the table in order and prints the first ++ instruction which matches, so this table is sorted to put more ++ specific instructions before more general instructions. ++ ++ Otherwise, it is sorted by major opcode and minor function code. ++ */ ++ ++const struct sw_64_opcode sw_64_opcodes[] = { ++ { "sys_call/b", PCD(0x00,0x00), BASE, ARG_PCD }, ++ { "sys_call", PCD(0x00,0x01), BASE, ARG_PCD }, ++ ++ { "call", MEM(0x01), BASE, { RA, CPRB, JMPHINT } }, ++ { "ret", MEM(0x02), BASE, { RA, CPRB, RETHINT } }, ++ { "jmp", MEM(0x03), BASE, { RA, CPRB, JMPHINT } }, ++ { "br", BRA(0x04), BASE, { ZA, BDISP } }, ++ { "br", BRA(0x04), BASE, ARG_BRA }, ++ { "bsr", BRA(0x05), BASE, ARG_BRA }, ++ { "memb", MFC(0x06,0x0000), BASE, ARG_NONE }, ++ { "imemb", MFC(0x06,0x0001), BASE, ARG_NONE }, ++ { "rtc", MFC(0x06,0x0020), BASE, { RA, ZB } }, ++ { "rtc", MFC(0x06,0x0020), BASE, { RA, RB } }, ++ { "rcid", MFC(0x06,0x0040), BASE, { RA , ZB} }, ++ { "halt", MFC(0x06,0x0080), BASE, { ZA, ZB } }, ++ { "rd_f", MFC(0x06,0x1000), CORE3, { RA, ZB } }, ++ { "wr_f", MFC(0x06,0x1020), CORE3, { RA, ZB } }, ++ { "rtid", MFC(0x06,0x1040), BASE, { RA } }, ++ { "pri_rcsr", CSR(0x06,0xFE), CORE3, { RA, RPIINDEX ,ZB } }, ++ { "pri_wcsr", CSR(0x06,0xFF), CORE3, { RA, RPIINDEX ,ZB } }, ++ { "pri_ret", PRIRET(0x07,0x0), BASE, { RA } }, ++ { "pri_ret/b", PRIRET(0x07,0x1), BASE, { RA } }, ++ { "lldw", ATMEM(0x08,0x0), BASE, ARG_ATMEM }, ++ { "lldl", ATMEM(0x08,0x1), BASE, ARG_ATMEM }, ++ { "ldw_inc", ATMEM(0x08,0x2), CORE3, ARG_ATMEM }, ++ { "ldl_inc", ATMEM(0x08,0x3), CORE3, ARG_ATMEM }, ++ { "ldw_dec", ATMEM(0x08,0x4), CORE3, ARG_ATMEM }, ++ { "ldl_dec", ATMEM(0x08,0x5), CORE3, ARG_ATMEM }, ++ { "ldw_set", ATMEM(0x08,0x6), CORE3, ARG_ATMEM }, ++ { "ldl_set", ATMEM(0x08,0x7), CORE3, ARG_ATMEM }, ++ { "lstw", ATMEM(0x08,0x8), BASE, ARG_ATMEM }, ++ { "lstl", ATMEM(0x08,0x9), BASE, ARG_ATMEM }, ++ { "ldw_nc", ATMEM(0x08,0xA), BASE, ARG_ATMEM }, ++ { "ldl_nc", ATMEM(0x08,0xB), BASE, ARG_ATMEM }, ++ { "ldd_nc", ATMEM(0x08,0xC), BASE, ARG_VUAMEM }, ++ { "stw_nc", ATMEM(0x08,0xD), BASE, ARG_ATMEM }, ++ { "stl_nc", ATMEM(0x08,0xE), BASE, ARG_ATMEM }, ++ { "std_nc", ATMEM(0x08,0xF), BASE, ARG_VUAMEM }, ++ { "fillcs", MEM(0x09), BASE, ARG_PREFETCH }, ++ { "ldwe", MEM(0x09), BASE, ARG_FMEM }, ++ { "e_fillcs", MEM(0x0A), BASE, ARG_PREFETCH }, ++ { "ldse", MEM(0x0A), BASE, ARG_FMEM }, ++ { "fillcs_e", MEM(0x0B), BASE, ARG_PREFETCH }, ++ { "ldde", MEM(0x0B), BASE, ARG_FMEM }, ++ { "vlds", MEM(0x0C), BASE, ARG_FMEM }, ++ { "vldd", MEM(0x0D), BASE, ARG_FMEM }, ++ { "vsts", MEM(0x0E), BASE, ARG_FMEM }, ++ { "vstd", MEM(0x0F), BASE, ARG_FMEM }, ++ { "addw", OPR(0x10,0x00), BASE, ARG_OPR }, ++ { "addw", OPRL(0x12,0x00), BASE, ARG_OPRL }, ++ { "subw", OPR(0x10,0x01), BASE, ARG_OPR }, ++ { "subw", OPRL(0x12,0x01), BASE, ARG_OPRL }, ++ { "s4addw", OPR(0x10,0x02), BASE, ARG_OPR }, ++ { "s4addw", OPRL(0x12,0x02), BASE, ARG_OPRL }, ++ { "s4subw", OPR(0x10,0x03), BASE, ARG_OPR }, ++ { "s4subw", OPRL(0x12,0x03), BASE, ARG_OPRL }, ++ { "s8addw", OPR(0x10,0x04), BASE, ARG_OPR }, ++ { "s8addw", OPRL(0x12,0x04), BASE, ARG_OPRL }, ++ { "s8subw", OPR(0x10,0x05), BASE, ARG_OPR }, ++ { "s8subw", OPRL(0x12,0x05), BASE, ARG_OPRL }, ++ { "addl", OPR(0x10,0x08), BASE, ARG_OPR }, ++ { "addl", OPRL(0x12,0x08), BASE, ARG_OPRL }, ++ { "subl", OPR(0x10,0x09), BASE, ARG_OPR }, ++ { "subl", OPRL(0x12,0x09), BASE, ARG_OPRL }, ++ { "s4addl", OPR(0x10,0x0A), BASE, ARG_OPR }, ++ { "s4addl", OPRL(0x12,0x0A), BASE, ARG_OPRL }, ++ { "s4subl", OPR(0x10,0x0B), BASE, ARG_OPR }, ++ { "s4subl", OPRL(0x12,0x0B), BASE, ARG_OPRL }, ++ { "s8addl", OPR(0x10,0x0C), BASE, ARG_OPR }, ++ { "s8addl", OPRL(0x12,0x0C), BASE, ARG_OPRL }, ++ { "s8subl", OPR(0x10,0x0D), BASE, ARG_OPR }, ++ { "s8subl", OPRL(0x12,0x0D), BASE, ARG_OPRL }, ++ { "mulw", OPR(0x10,0x10), BASE, ARG_OPR }, ++ { "mulw", OPRL(0x12,0x10), BASE, ARG_OPRL }, ++ { "mull", OPR(0x10,0x18), BASE, ARG_OPR }, ++ { "mull", OPRL(0x12,0x18), BASE, ARG_OPRL }, ++ { "umulh", OPR(0x10,0x19), BASE, ARG_OPR }, ++ { "umulh", OPRL(0x12,0x19), BASE, ARG_OPRL }, ++ { "cmpeq", OPR(0x10,0x28), BASE, ARG_OPR }, ++ { "cmpeq", OPRL(0x12,0x28), BASE, ARG_OPRL }, ++ { "cmplt", OPR(0x10,0x29), BASE, ARG_OPR }, ++ { "cmplt", OPRL(0x12,0x29), BASE, ARG_OPRL }, ++ { "cmple", OPR(0x10,0x2A), BASE, ARG_OPR }, ++ { "cmple", OPRL(0x12,0x2A), BASE, ARG_OPRL }, ++ { "cmpult", OPR(0x10,0x2B), BASE, ARG_OPR }, ++ { "cmpult", OPRL(0x12,0x2B), BASE, ARG_OPRL }, ++ { "cmpule", OPR(0x10,0x2C), BASE, ARG_OPR }, ++ { "cmpule", OPRL(0x12,0x2C), BASE, ARG_OPRL }, ++ ++ { "and", OPR(0x10,0x38), BASE, ARG_OPR }, ++ { "and", OPRL(0x12,0x38),BASE, ARG_OPRL }, ++ { "bic", OPR(0x10,0x39), BASE, ARG_OPR }, ++ { "bic", OPRL(0x12,0x39),BASE, ARG_OPRL }, ++ { "bis", OPR(0x10,0x3A), BASE, ARG_OPR }, ++ { "bis", OPRL(0x12,0x3A),BASE, ARG_OPRL }, ++ { "ornot", OPR(0x10,0x3B), BASE, ARG_OPR }, ++ { "ornot", OPRL(0x12,0x3B),BASE, ARG_OPRL }, ++ { "xor", OPR(0x10,0x3C), BASE, ARG_OPR }, ++ { "xor", OPRL(0x12,0x3C),BASE, ARG_OPRL }, ++ { "eqv", OPR(0x10,0x3D), BASE, ARG_OPR }, ++ { "eqv", OPRL(0x12,0x3D),BASE, ARG_OPRL }, ++ { "inslb", OPR(0x10,0x40), BASE, ARG_OPR }, ++ { "inslb", OPRL(0x12,0x40),BASE, ARG_OPRL }, ++ { "inslh", OPR(0x10,0x41), BASE, ARG_OPR }, ++ { "inslh", OPRL(0x12,0x41),BASE, ARG_OPRL }, ++ { "inslw", OPR(0x10,0x42), BASE, ARG_OPR }, ++ { "inslw", OPRL(0x12,0x42),BASE, ARG_OPRL }, ++ { "insll", OPR(0x10,0x43), BASE, ARG_OPR }, ++ { "insll", OPRL(0x12,0x43),BASE, ARG_OPRL }, ++ { "inshb", OPR(0x10,0x44), BASE, ARG_OPR }, ++ { "inshb", OPRL(0x12,0x44),BASE, ARG_OPRL }, ++ { "inshh", OPR(0x10,0x45), BASE, ARG_OPR }, ++ { "inshh", OPRL(0x12,0x45),BASE, ARG_OPRL }, ++ { "inshw", OPR(0x10,0x46), BASE, ARG_OPR }, ++ { "inshw", OPRL(0x12,0x46),BASE, ARG_OPRL }, ++ { "inshl", OPR(0x10,0x47), BASE, ARG_OPR }, ++ { "inshl", OPRL(0x12,0x47),BASE, ARG_OPRL }, ++ ++ { "sll", OPR(0x10,0x48), BASE, ARG_OPR }, ++ { "sll", OPRL(0x12,0x48),BASE, ARG_OPRL }, ++ { "srl", OPR(0x10,0x49), BASE, ARG_OPR }, ++ { "srl", OPRL(0x12,0x49),BASE, ARG_OPRL }, ++ { "sra", OPR(0x10,0x4A), BASE, ARG_OPR }, ++ { "sra", OPRL(0x12,0x4A),BASE, ARG_OPRL }, ++ { "extlb", OPR(0x10,0x50), BASE, ARG_OPR }, ++ { "extlb", OPRL(0x12,0x50),BASE, ARG_OPRL }, ++ { "extlh", OPR(0x10,0x51), BASE, ARG_OPR }, ++ { "extlh", OPRL(0x12,0x51),BASE, ARG_OPRL }, ++ { "extlw", OPR(0x10,0x52), BASE, ARG_OPR }, ++ { "extlw", OPRL(0x12,0x52),BASE, ARG_OPRL }, ++ { "extll", OPR(0x10,0x53), BASE, ARG_OPR }, ++ { "extll", OPRL(0x12,0x53),BASE, ARG_OPRL }, ++ { "exthb", OPR(0x10,0x54), BASE, ARG_OPR }, ++ { "exthb", OPRL(0x12,0x54),BASE, ARG_OPRL }, ++ { "exthh", OPR(0x10,0x55), BASE, ARG_OPR }, ++ { "exthh", OPRL(0x12,0x55),BASE, ARG_OPRL }, ++ { "exthw", OPR(0x10,0x56), BASE, ARG_OPR }, ++ { "exthw", OPRL(0x12,0x56),BASE, ARG_OPRL }, ++ { "exthl", OPR(0x10,0x57), BASE, ARG_OPR }, ++ { "exthl", OPRL(0x12,0x57),BASE, ARG_OPRL }, ++ { "ctpop", OPR(0x10,0x58), BASE, ARG_OPRZ1 }, ++ { "ctlz", OPR(0x10,0x59), BASE, ARG_OPRZ1 }, ++ { "cttz", OPR(0x10,0x5A), BASE, ARG_OPRZ1 }, ++ { "masklb", OPR(0x10,0x60), BASE, ARG_OPR }, ++ { "masklb", OPRL(0x12,0x60),BASE, ARG_OPRL }, ++ { "masklh", OPR(0x10,0x61), BASE, ARG_OPR }, ++ { "masklh", OPRL(0x12,0x61),BASE, ARG_OPRL }, ++ { "masklw", OPR(0x10,0x62), BASE, ARG_OPR }, ++ { "masklw", OPRL(0x12,0x62),BASE, ARG_OPRL }, ++ { "maskll", OPR(0x10,0x63), BASE, ARG_OPR }, ++ { "maskll", OPRL(0x12,0x63),BASE, ARG_OPRL }, ++ { "maskhb", OPR(0x10,0x64), BASE, ARG_OPR }, ++ { "maskhb", OPRL(0x12,0x64),BASE, ARG_OPRL }, ++ { "maskhh", OPR(0x10,0x65), BASE, ARG_OPR }, ++ { "maskhh", OPRL(0x12,0x65),BASE, ARG_OPRL }, ++ { "maskhw", OPR(0x10,0x66), BASE, ARG_OPR }, ++ { "maskhw", OPRL(0x12,0x66),BASE, ARG_OPRL }, ++ { "maskhl", OPR(0x10,0x67), BASE, ARG_OPR }, ++ { "maskhl", OPRL(0x12,0x67),BASE, ARG_OPRL }, ++ { "zap", OPR(0x10,0x68), BASE, ARG_OPR }, ++ { "zap", OPRL(0x12,0x68),BASE, ARG_OPRL }, ++ { "zapnot", OPR(0x10,0x69), BASE, ARG_OPR }, ++ { "zapnot", OPRL(0x12,0x69),BASE, ARG_OPRL }, ++ { "sextb", OPR(0x10,0x6A), BASE, ARG_OPRZ1}, ++ { "sextb", OPRL(0x12,0x6A),BASE, ARG_OPRLZ1 }, ++ { "sexth", OPR(0x10,0x6B), BASE, ARG_OPRZ1 }, ++ { "sexth", OPRL(0x12,0x6B),BASE, ARG_OPRLZ1 }, ++ { "cmpgeb", OPR(0x10,0x6C), BASE, ARG_OPR }, ++ { "cmpgeb", OPRL(0x12,0x6C),BASE, ARG_OPRL }, ++ { "fimovs", OPR(0x10,0x70), BASE, { FA, ZB, RC } }, ++ { "fimovd", OPR(0x10,0x78), BASE, { FA, ZB, RC } }, ++ { "seleq", TOPR(0x11,0x0), BASE, ARG_TOPR }, ++ { "seleq", TOPRL(0x13,0x0),BASE, ARG_TOPRL }, ++ { "selge", TOPR(0x11,0x1), BASE, ARG_TOPR }, ++ { "selge", TOPRL(0x13,0x1),BASE, ARG_TOPRL }, ++ { "selgt", TOPR(0x11,0x2), BASE, ARG_TOPR }, ++ { "selgt", TOPRL(0x13,0x2),BASE, ARG_TOPRL }, ++ { "selle", TOPR(0x11,0x3), BASE, ARG_TOPR }, ++ { "selle", TOPRL(0x13,0x3),BASE, ARG_TOPRL }, ++ { "sellt", TOPR(0x11,0x4), BASE, ARG_TOPR }, ++ { "sellt", TOPRL(0x13,0x4),BASE, ARG_TOPRL }, ++ { "selne", TOPR(0x11,0x5), BASE, ARG_TOPR }, ++ { "selne", TOPRL(0x13,0x5),BASE, ARG_TOPRL }, ++ { "sellbc", TOPR(0x11,0x6), BASE, ARG_TOPR }, ++ { "sellbc", TOPRL(0x13,0x6),BASE, ARG_TOPRL }, ++ { "sellbs", TOPR(0x11,0x7), BASE, ARG_TOPR }, ++ { "sellbs", TOPRL(0x13,0x7),BASE, ARG_TOPRL }, ++ { "vlog", LOGX(0x14,0x00), BASE, ARG_FMA }, ++ ++ { "fadds", FP(0x18,0x00), BASE, ARG_FP }, ++ { "faddd", FP(0x18,0x01), BASE, ARG_FP }, ++ { "fsubs", FP(0x18,0x02), BASE, ARG_FP }, ++ { "fsubd", FP(0x18,0x03), BASE, ARG_FP }, ++ { "fmuls", FP(0x18,0x04), BASE, ARG_FP }, ++ { "fmuld", FP(0x18,0x05), BASE, ARG_FP }, ++ { "fdivs", FP(0x18,0x06), BASE, ARG_FP }, ++ { "fdivd", FP(0x18,0x07), BASE, ARG_FP }, ++ { "fsqrts", FP(0x18,0x08), BASE, ARG_FPZ1 }, ++ { "fsqrtd", FP(0x18,0x09), BASE, ARG_FPZ1 }, ++ { "fcmpeq", FP(0x18,0x10), BASE, ARG_FP }, ++ { "fcmple", FP(0x18,0x11), BASE, ARG_FP }, ++ { "fcmplt", FP(0x18,0x12), BASE, ARG_FP }, ++ { "fcmpun", FP(0x18,0x13), BASE, ARG_FP }, ++ ++ { "fcvtsd", FP(0x18,0x20), BASE, ARG_FPZ1 }, ++ { "fcvtds", FP(0x18,0x21), BASE, ARG_FPZ1 }, ++ { "fcvtdl_g", FP(0x18,0x22), BASE, ARG_FPZ1 }, ++ { "fcvtdl_p", FP(0x18,0x23), BASE, ARG_FPZ1 }, ++ { "fcvtdl_z", FP(0x18,0x24), BASE, ARG_FPZ1 }, ++ { "fcvtdl_n", FP(0x18,0x25), BASE, ARG_FPZ1 }, ++ { "fcvtdl", FP(0x18,0x27), BASE, ARG_FPZ1 }, ++ { "fcvtwl", FP(0x18,0x28), BASE, ARG_FPZ1 }, ++ { "fcvtlw", FP(0x18,0x29), BASE, ARG_FPZ1 }, ++ { "fcvtls", FP(0x18,0x2d), BASE, ARG_FPZ1 }, ++ { "fcvtld", FP(0x18,0x2f), BASE, ARG_FPZ1 }, ++ { "fcpys", FP(0x18,0x30), BASE, ARG_FP }, ++ { "fcpyse", FP(0x18,0x31), BASE, ARG_FP }, ++ { "fcpysn", FP(0x18,0x32), BASE, ARG_FP }, ++ { "ifmovs", FP(0x18,0x40), BASE, { RA, ZB, FC } }, ++ { "ifmovd", FP(0x18,0x41), BASE, { RA, ZB, FC } }, ++ { "rfpcr", FP(0x18,0x50), BASE, { FA, RBA, RCA } }, ++ { "wfpcr", FP(0x18,0x51), BASE, { FA, RBA, RCA } }, ++ { "setfpec0", FP(0x18,0x54), BASE, ARG_NONE }, ++ { "setfpec1", FP(0x18,0x55), BASE, ARG_NONE }, ++ { "setfpec2", FP(0x18,0x56), BASE, ARG_NONE }, ++ { "setfpec3", FP(0x18,0x57), BASE, ARG_NONE }, ++ { "fmas", FMA(0x19,0x00), BASE, ARG_FMA }, ++ { "fmad", FMA(0x19,0x01), BASE, ARG_FMA }, ++ { "fmss", FMA(0x19,0x02), BASE, ARG_FMA }, ++ { "fmsd", FMA(0x19,0x03), BASE, ARG_FMA }, ++ { "fnmas", FMA(0x19,0x04), BASE, ARG_FMA }, ++ { "fnmad", FMA(0x19,0x05), BASE, ARG_FMA }, ++ { "fnmss", FMA(0x19,0x06), BASE, ARG_FMA }, ++ { "fnmsd", FMA(0x19,0x07), BASE, ARG_FMA }, ++ { "fseleq", FMA(0x19,0x10), BASE, ARG_FMA }, ++ { "fselne", FMA(0x19,0x11), BASE, ARG_FMA }, ++ { "fsellt", FMA(0x19,0x12), BASE, ARG_FMA }, ++ { "fselle", FMA(0x19,0x13), BASE, ARG_FMA }, ++ { "fselgt", FMA(0x19,0x14), BASE, ARG_FMA }, ++ { "fselge", FMA(0x19,0x15), BASE, ARG_FMA }, ++ { "vaddw", FP(0x1A,0x00), BASE, ARG_FP }, ++ { "vaddw", FP(0x1A,0x20), BASE, ARG_FPL }, ++ { "vsubw", FP(0x1A,0x01), BASE, ARG_FP }, ++ { "vsubw", FP(0x1A,0x21), BASE, ARG_FPL }, ++ { "vcmpgew", FP(0x1A,0x02), BASE, ARG_FP }, ++ { "vcmpgew", FP(0x1A,0x22), BASE, ARG_FPL }, ++ { "vcmpeqw", FP(0x1A,0x03), BASE, ARG_FP }, ++ { "vcmpeqw", FP(0x1A,0x23), BASE, ARG_FPL }, ++ { "vcmplew", FP(0x1A,0x04), BASE, ARG_FP }, ++ { "vcmplew", FP(0x1A,0x24), BASE, ARG_FPL }, ++ { "vcmpltw", FP(0x1A,0x05), BASE, ARG_FP }, ++ { "vcmpltw", FP(0x1A,0x25), BASE, ARG_FPL }, ++ { "vcmpulew", FP(0x1A,0x06), BASE, ARG_FP }, ++ { "vcmpulew", FP(0x1A,0x26), BASE, ARG_FPL }, ++ { "vcmpultw", FP(0x1A,0x07), BASE, ARG_FP }, ++ { "vcmpultw", FP(0x1A,0x27), BASE, ARG_FPL }, ++ ++ { "vsllw", FP(0x1A,0x08), BASE, ARG_FP }, ++ { "vsllw", FP(0x1A,0x28), BASE, ARG_FPL }, ++ { "vsrlw", FP(0x1A,0x09), BASE, ARG_FP }, ++ { "vsrlw", FP(0x1A,0x29), BASE, ARG_FPL }, ++ { "vsraw", FP(0x1A,0x0A), BASE, ARG_FP }, ++ { "vsraw", FP(0x1A,0x2A), BASE, ARG_FPL }, ++ { "vrolw", FP(0x1A,0x0B), BASE, ARG_FP }, ++ { "vrolw", FP(0x1A,0x2B), BASE, ARG_FPL }, ++ { "sllow", FP(0x1A,0x0C), BASE, ARG_FP }, ++ { "sllow", FP(0x1A,0x2C), BASE, ARG_FPL }, ++ { "srlow", FP(0x1A,0x0D), BASE, ARG_FP }, ++ { "srlow", FP(0x1A,0x2D), BASE, ARG_FPL }, ++ { "vaddl", FP(0x1A,0x0E), BASE, ARG_FP }, ++ { "vaddl", FP(0x1A,0x2E), BASE, ARG_FPL }, ++ { "vsubl", FP(0x1A,0x0F), BASE, ARG_FP }, ++ { "vsubl", FP(0x1A,0x2F), BASE, ARG_FPL }, ++ { "ctpopow", FP(0x1A,0x18), BASE, { FA, ZB, DFC1 } }, ++ { "ctlzow", FP(0x1A,0x19), BASE, { FA, ZB, DFC1 } }, ++ { "vucaddw", FP(0x1A,0x40), BASE, ARG_FP }, ++ { "vucaddw", FP(0x1A,0x60), BASE, ARG_FPL }, ++ { "vucsubw", FP(0x1A,0x41), BASE, ARG_FP }, ++ { "vucsubw", FP(0x1A,0x61), BASE, ARG_FPL }, ++ { "vucaddh", FP(0x1A,0x42), BASE, ARG_FP }, ++ { "vucaddh", FP(0x1A,0x62), BASE, ARG_FPL }, ++ { "vucsubh", FP(0x1A,0x43), BASE, ARG_FP }, ++ { "vucsubh", FP(0x1A,0x63), BASE, ARG_FPL }, ++ { "vucaddb", FP(0x1A,0x44), BASE, ARG_FP }, ++ { "vucaddb", FP(0x1A,0x64), BASE, ARG_FPL }, ++ { "vucsubb", FP(0x1A,0x45), BASE, ARG_FP }, ++ { "vucsubb", FP(0x1A,0x65), BASE, ARG_FPL }, ++ { "vadds", FP(0x1A,0x80), BASE, ARG_FP }, ++ { "vaddd", FP(0x1A,0x81), BASE, ARG_FP }, ++ { "vsubs", FP(0x1A,0x82), BASE, ARG_FP }, ++ { "vsubd", FP(0x1A,0x83), BASE, ARG_FP }, ++ { "vmuls", FP(0x1A,0x84), BASE, ARG_FP }, ++ { "vmuld", FP(0x1A,0x85), BASE, ARG_FP }, ++ { "vdivs", FP(0x1A,0x86), BASE, ARG_FP }, ++ { "vdivd", FP(0x1A,0x87), BASE, ARG_FP }, ++ { "vsqrts", FP(0x1A,0x88), BASE, ARG_FPZ1 }, ++ { "vsqrtd", FP(0x1A,0x89), BASE, ARG_FPZ1 }, ++ { "vfcmpeq", FP(0x1A,0x8C), BASE, ARG_FP }, ++ { "vfcmple", FP(0x1A,0x8D), BASE, ARG_FP }, ++ { "vfcmplt", FP(0x1A,0x8E), BASE, ARG_FP }, ++ { "vfcmpun", FP(0x1A,0x8F), BASE, ARG_FP }, ++ { "vcpys", FP(0x1A,0x90), BASE, ARG_FP }, ++ { "vcpyse", FP(0x1A,0x91), BASE, ARG_FP }, ++ { "vcpysn", FP(0x1A,0x92), BASE, ARG_FP }, ++ { "vmas", FMA(0x1B,0x00), BASE, ARG_FMA }, ++ { "vmad", FMA(0x1B,0x01), BASE, ARG_FMA }, ++ { "vmss", FMA(0x1B,0x02), BASE, ARG_FMA }, ++ { "vmsd", FMA(0x1B,0x03), BASE, ARG_FMA }, ++ { "vnmas", FMA(0x1B,0x04), BASE, ARG_FMA }, ++ { "vnmad", FMA(0x1B,0x05), BASE, ARG_FMA }, ++ { "vnmss", FMA(0x1B,0x06), BASE, ARG_FMA }, ++ { "vnmsd", FMA(0x1B,0x07), BASE, ARG_FMA }, ++ { "vfseleq", FMA(0x1B,0x10), BASE, ARG_FMA }, ++ { "vfsellt", FMA(0x1B,0x12), BASE, ARG_FMA }, ++ { "vfselle", FMA(0x1B,0x13), BASE, ARG_FMA }, ++ { "vseleqw", FMA(0x1B,0x18), BASE, ARG_FMA }, ++ { "vseleqw", FMA(0x1B,0x38), BASE, ARG_FMAL }, ++ { "vsellbcw", FMA(0x1B,0x19), BASE, ARG_FMA }, ++ { "vsellbcw", FMA(0x1B,0x39), BASE, ARG_FMAL }, ++ { "vselltw", FMA(0x1B,0x1A), BASE, ARG_FMA }, ++ { "vselltw", FMA(0x1B,0x3A), BASE, ARG_FMAL }, ++ { "vsellew", FMA(0x1B,0x1B), BASE, ARG_FMA }, ++ { "vsellew", FMA(0x1B,0x3B), BASE, ARG_FMAL }, ++ { "vinsw", FMA(0x1B,0x20), BASE, ARG_FMAL }, ++ { "vinsf", FMA(0x1B,0x21), BASE, ARG_FMAL }, ++ { "vextw", FMA(0x1B,0x22), BASE, { FA, FMALIT, DFC1 }}, ++ { "vextf", FMA(0x1B,0x23), BASE, { FA, FMALIT, DFC1 }}, ++ { "vcpyw", FMA(0x1B,0x24), BASE, { FA, DFC1 }}, ++ { "vcpyf", FMA(0x1B,0x25), BASE, { FA, DFC1 }}, ++ { "vconw", FMA(0x1B,0x26), BASE, ARG_FMA }, ++ { "vshfw", FMA(0x1B,0x27), BASE, ARG_FMA }, ++ { "vcons", FMA(0x1B,0x28), BASE, ARG_FMA }, ++ { "vcond", FMA(0x1B,0x29), BASE, ARG_FMA }, ++ { "vldw_u", ATMEM(0x1C,0x0), BASE, ARG_VUAMEM }, ++ { "vstw_u", ATMEM(0x1C,0x1), BASE, ARG_VUAMEM }, ++ { "vlds_u", ATMEM(0x1C,0x2), BASE, ARG_VUAMEM }, ++ { "vsts_u", ATMEM(0x1C,0x3), BASE, ARG_VUAMEM }, ++ { "vldd_u", ATMEM(0x1C,0x4), BASE, ARG_VUAMEM }, ++ { "vstd_u", ATMEM(0x1C,0x5), BASE, ARG_VUAMEM }, ++ { "vstw_ul", ATMEM(0x1C,0x8), BASE, ARG_VUAMEM }, ++ { "vstw_uh", ATMEM(0x1C,0x9), BASE, ARG_VUAMEM }, ++ { "vsts_ul", ATMEM(0x1C,0xA), BASE, ARG_VUAMEM }, ++ { "vsts_uh", ATMEM(0x1C,0xB), BASE, ARG_VUAMEM }, ++ { "vstd_ul", ATMEM(0x1C,0xC), BASE, ARG_VUAMEM }, ++ { "vstd_uh", ATMEM(0x1C,0xD), BASE, ARG_VUAMEM }, ++ { "vldd_nc", ATMEM(0x1C,0xE), BASE, ARG_VUAMEM }, ++ { "vstd_nc", ATMEM(0x1C,0xF), BASE, ARG_VUAMEM }, ++ ++ { "flushd", MEM(0x20), BASE, ARG_PREFETCH }, ++ { "ldbu", MEM(0x20), BASE, ARG_MEM }, ++ { "evictdg", MEM(0x21), BASE, ARG_PREFETCH }, ++ { "ldhu", MEM(0x21), BASE, ARG_MEM }, ++ { "s_fillcs", MEM(0x22), BASE, ARG_PREFETCH }, ++ { "ldw", MEM(0x22), BASE, ARG_MEM }, ++ { "s_fillde", MEM(0x23), BASE, ARG_PREFETCH }, ++ { "ldl", MEM(0x23), BASE, ARG_MEM }, ++ { "evictdl", MEM(0x24), BASE, ARG_PREFETCH }, ++ { "ldl_u", MEM(0x24), BASE, ARG_MEM }, ++ { "pri_ldw/p", HWMEM(0x25,0x0), BASE, ARG_HWMEM }, ++ { "pri_ldw/v", HWMEM(0x25,0x8), BASE, ARG_HWMEM }, ++ { "pri_ldl/p", HWMEM(0x25,0x1), BASE, ARG_HWMEM }, ++ { "pri_ldl/v", HWMEM(0x25,0x9), BASE, ARG_HWMEM }, ++ { "fillde", MEM(0x26), BASE, ARG_PREFETCH }, ++ { "flds", MEM(0x26), BASE, ARG_FMEM }, ++ { "fillde_e", MEM(0x27), BASE, ARG_PREFETCH }, ++ { "fldd", MEM(0x27), BASE, ARG_FMEM }, ++ ++ { "stb", MEM(0x28), BASE, ARG_MEM }, ++ { "sth", MEM(0x29), BASE, ARG_MEM }, ++ { "stw", MEM(0x2A), BASE, ARG_MEM }, ++ { "stl", MEM(0x2B), BASE, ARG_MEM }, ++ { "stl_u", MEM(0x2C), BASE, ARG_MEM }, ++ { "pri_stw/p", HWMEM(0x2D,0x0), BASE, ARG_HWMEM }, ++ { "pri_stw/v", HWMEM(0x2D,0x8), BASE, ARG_HWMEM }, ++ { "pri_stl/p", HWMEM(0x2D,0x1), BASE, ARG_HWMEM }, ++ { "pri_stl/v", HWMEM(0x2D,0x9), BASE, ARG_HWMEM }, ++ { "fsts", MEM(0x2E), BASE, ARG_FMEM }, ++ { "fstd", MEM(0x2F), BASE, ARG_FMEM }, ++ { "beq", BRA(0x30), BASE, ARG_BRA }, ++ { "bne", BRA(0x31), BASE, ARG_BRA }, ++ { "blt", BRA(0x32), BASE, ARG_BRA }, ++ { "ble", BRA(0x33), BASE, ARG_BRA }, ++ { "bgt", BRA(0x34), BASE, ARG_BRA }, ++ { "bge", BRA(0x35), BASE, ARG_BRA }, ++ { "blbc", BRA(0x36), BASE, ARG_BRA }, ++ { "blbs", BRA(0x37), BASE, ARG_BRA }, ++ ++ { "fbeq", BRA(0x38), BASE, ARG_FBRA }, ++ { "fbne", BRA(0x39), BASE, ARG_FBRA }, ++ { "fblt", BRA(0x3A), BASE, ARG_FBRA }, ++ { "fble", BRA(0x3B), BASE, ARG_FBRA }, ++ { "fbgt", BRA(0x3C), BASE, ARG_FBRA }, ++ { "fbge", BRA(0x3D), BASE, ARG_FBRA }, ++ { "ldi", MEM(0x3E), BASE, ARG_MEM }, ++ { "ldih", MEM(0x3F), BASE, ARG_MEM }, ++}; ++ ++const unsigned sw_64_num_opcodes = sizeof(sw_64_opcodes) / sizeof(*sw_64_opcodes); ++ ++/* OSF register names. */ ++ ++static const char * const osf_regnames[64] = { ++ "v0", "t0", "t1", "t2", "t3", "t4", "t5", "t6", ++ "t7", "s0", "s1", "s2", "s3", "s4", "s5", "fp", ++ "a0", "a1", "a2", "a3", "a4", "a5", "t8", "t9", ++ "t10", "t11", "ra", "t12", "at", "gp", "sp", "zero", ++ "$f0", "$f1", "$f2", "$f3", "$f4", "$f5", "$f6", "$f7", ++ "$f8", "$f9", "$f10", "$f11", "$f12", "$f13", "$f14", "$f15", ++ "$f16", "$f17", "$f18", "$f19", "$f20", "$f21", "$f22", "$f23", ++ "$f24", "$f25", "$f26", "$f27", "$f28", "$f29", "$f30", "$f31" ++}; ++ ++/* VMS register names. */ ++ ++static const char * const vms_regnames[64] = { ++ "R0", "R1", "R2", "R3", "R4", "R5", "R6", "R7", ++ "R8", "R9", "R10", "R11", "R12", "R13", "R14", "R15", ++ "R16", "R17", "R18", "R19", "R20", "R21", "R22", "R23", ++ "R24", "AI", "RA", "PV", "AT", "FP", "SP", "RZ", ++ "F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7", ++ "F8", "F9", "F10", "F11", "F12", "F13", "F14", "F15", ++ "F16", "F17", "F18", "F19", "F20", "F21", "F22", "F23", ++ "F24", "F25", "F26", "F27", "F28", "F29", "F30", "FZ" ++}; ++ ++int print_insn_sw_64(bfd_vma memaddr, struct disassemble_info *info) ++{ ++ static const struct sw_64_opcode *opcode_index[SW_NOPS + 1]; ++ const char * const * regnames; ++ const struct sw_64_opcode *opcode, *opcode_end; ++ const unsigned char *opindex; ++ unsigned insn, op, isa_mask; ++ int need_comma; ++ ++ /* Initialize the majorop table the first time through */ ++ if (!opcode_index[0]) { ++ opcode = sw_64_opcodes; ++ opcode_end = opcode + sw_64_num_opcodes; ++ ++ for (op = 0; op < SW_NOPS; ++op) { ++ opcode_index[op] = opcode; ++ if ((SW_LITOP (opcode->opcode) != 0x10) && (SW_LITOP (opcode->opcode) != 0x11)) { ++ while (opcode < opcode_end && op == SW_OP (opcode->opcode)) ++ ++opcode; ++ } else { ++ while (opcode < opcode_end && op == SW_LITOP (opcode->opcode)) ++ ++opcode; ++ } ++ } ++ opcode_index[op] = opcode; ++ } ++ ++ if (info->flavour == bfd_target_evax_flavour) ++ regnames = vms_regnames; ++ else ++ regnames = osf_regnames; ++ isa_mask = SW_OPCODE_NOHM; ++ switch (info->mach) { ++ case bfd_mach_sw_64_core3: ++ isa_mask |= SW_OPCODE_BASE | SW_OPCODE_CORE3; ++ break; ++ } ++ ++ /* Read the insn into a host word */ ++ { ++ bfd_byte buffer[4]; ++ int status = (*info->read_memory_func) (memaddr, buffer, 4, info); ++ if (status != 0) { ++ (*info->memory_error_func) (status, memaddr, info); ++ return -1; ++ } ++ insn = bfd_getl32 (buffer); ++ } ++ ++ /* Get the major opcode of the instruction. */ ++ if ((SW_LITOP (insn) == 0x10) || (SW_LITOP (insn) == 0x11)) ++ op = SW_LITOP (insn); ++ else if ((SW_OP(insn) & 0x3C) == 0x14 ) ++ op = 0x14; ++ else ++ op = SW_OP (insn); ++ ++ /* Find the first match in the opcode table. */ ++ opcode_end = opcode_index[op + 1]; ++ for (opcode = opcode_index[op]; opcode < opcode_end; ++opcode) { ++ if ((insn ^ opcode->opcode) & opcode->mask) ++ continue; ++ ++ if (!(opcode->flags & isa_mask)) ++ continue; ++ ++ /* Make two passes over the operands. First see if any of them ++ have extraction functions, and, if they do, make sure the ++ instruction is valid. */ ++ { ++ int invalid = 0; ++ for (opindex = opcode->operands; *opindex != 0; opindex++) { ++ const struct sw_64_operand *operand = sw_64_operands + *opindex; ++ if (operand->extract) ++ (*operand->extract) (insn, &invalid); ++ } ++ if (invalid) ++ continue; ++ } ++ ++ /* The instruction is valid. */ ++ goto found; ++ } ++ ++ /* No instruction found */ ++ (*info->fprintf_func) (info->stream, ".long %#08x", insn); ++ ++ return 4; ++ ++found: ++ if (!strncmp("sys_call",opcode->name,8)) { ++ if (insn & (0x1 << 25)) ++ (*info->fprintf_func) (info->stream, "%s", "sys_call"); ++ else ++ (*info->fprintf_func) (info->stream, "%s", "sys_call/b"); ++ } else ++ (*info->fprintf_func) (info->stream, "%s", opcode->name); ++ ++ /* get zz[7:6] and zz[5:0] to form truth for vlog */ ++ if (!strcmp(opcode->name, "vlog")) ++ { ++ unsigned int truth; ++ char tr[4]; ++ truth=(SW_OP(insn) & 3) << 6; ++ truth = truth | ((insn & 0xFC00) >> 10); ++ sprintf(tr,"%x",truth); ++ (*info->fprintf_func) (info->stream, "%s", tr); ++ } ++ if (opcode->operands[0] != 0) ++ (*info->fprintf_func) (info->stream, "\t"); ++ ++ /* Now extract and print the operands. */ ++ need_comma = 0; ++ for (opindex = opcode->operands; *opindex != 0; opindex++) { ++ const struct sw_64_operand *operand = sw_64_operands + *opindex; ++ int value; ++ ++ /* Operands that are marked FAKE are simply ignored. We ++ already made sure that the extract function considered ++ the instruction to be valid. */ ++ if ((operand->flags & SW_OPERAND_FAKE) != 0) ++ continue; ++ ++ /* Extract the value from the instruction. */ ++ if (operand->extract) ++ value = (*operand->extract) (insn, (int *) NULL); ++ else { ++ value = (insn >> operand->shift) & ((1 << operand->bits) - 1); ++ if (operand->flags & SW_OPERAND_SIGNED) { ++ int signbit = 1 << (operand->bits - 1); ++ value = (value ^ signbit) - signbit; ++ } ++ } ++ ++ if (need_comma && ++ ((operand->flags & (SW_OPERAND_PARENS | SW_OPERAND_COMMA)) ++ != SW_OPERAND_PARENS)) { ++ (*info->fprintf_func) (info->stream, ","); ++ } ++ if (operand->flags & SW_OPERAND_PARENS) ++ (*info->fprintf_func) (info->stream, "("); ++ ++ /* Print the operand as directed by the flags. */ ++ if (operand->flags & SW_OPERAND_IR) ++ (*info->fprintf_func) (info->stream, "%s", regnames[value]); ++ else if (operand->flags & SW_OPERAND_FPR) ++ (*info->fprintf_func) (info->stream, "%s", regnames[value + 32]); ++ else if (operand->flags & SW_OPERAND_RELATIVE) ++ (*info->print_address_func) (memaddr + 4 + value, info); ++ else if (operand->flags & SW_OPERAND_SIGNED) ++ (*info->fprintf_func) (info->stream, "%d", value); ++ else ++ (*info->fprintf_func) (info->stream, "%#x", value); ++ ++ if (operand->flags & SW_OPERAND_PARENS) ++ (*info->fprintf_func) (info->stream, ")"); ++ need_comma = 1; ++ } ++ ++ return 4; ++} +diff --git a/hw/Kconfig b/hw/Kconfig +index ad20cce0a9..5f3957be0f 100644 +--- a/hw/Kconfig ++++ b/hw/Kconfig +@@ -63,6 +63,7 @@ source sparc/Kconfig + source sparc64/Kconfig + source tricore/Kconfig + source xtensa/Kconfig ++source sw64/Kconfig + + # Symbols used by multiple targets + config TEST_DEVICES +diff --git a/hw/meson.build b/hw/meson.build +index b3366c888e..f39c1f7e70 100644 +--- a/hw/meson.build ++++ b/hw/meson.build +@@ -62,5 +62,6 @@ subdir('s390x') + subdir('sh4') + subdir('sparc') + subdir('sparc64') ++subdir('sw64') + subdir('tricore') + subdir('xtensa') +diff --git a/hw/rtc/sun4v-rtc.c b/hw/rtc/sun4v-rtc.c +index e037acd1b5..58a0cff483 100644 +--- a/hw/rtc/sun4v-rtc.c ++++ b/hw/rtc/sun4v-rtc.c +@@ -32,10 +32,17 @@ static uint64_t sun4v_rtc_read(void *opaque, hwaddr addr, + unsigned size) + { + uint64_t val = get_clock_realtime() / NANOSECONDS_PER_SECOND; ++#if defined(__sw_64__) ++ if (addr & 4ULL) { ++ /* accessing the high 32 bits */ ++ val >>= 32; ++ } ++#else + if (!(addr & 4ULL)) { + /* accessing the high 32 bits */ + val >>= 32; + } ++#endif + trace_sun4v_rtc_read(addr, val); + return val; + } +@@ -49,7 +56,11 @@ static void sun4v_rtc_write(void *opaque, hwaddr addr, + static const MemoryRegionOps sun4v_rtc_ops = { + .read = sun4v_rtc_read, + .write = sun4v_rtc_write, ++#if defined(__sw_64__) ++ .endianness = DEVICE_LITTLE_ENDIAN, ++#else + .endianness = DEVICE_NATIVE_ENDIAN, ++#endif + }; + + void sun4v_rtc_init(hwaddr addr) +diff --git a/hw/sw64/Kconfig b/hw/sw64/Kconfig +new file mode 100644 +index 0000000000..2bf19e8234 +--- /dev/null ++++ b/hw/sw64/Kconfig +@@ -0,0 +1,11 @@ ++config CORE3 ++ bool ++ imply PCI_DEVICES ++ imply TEST_DEVICES ++ imply E1000_PCI ++ select PCI_EXPRESS ++ select SUN4V_RTC ++ select VIRTIO_MMIO ++ select SERIAL ++ select IDE_CMD646 ++ select VIRTIO_VGA +diff --git a/hw/sw64/Makefile.objs b/hw/sw64/Makefile.objs +new file mode 100644 +index 0000000000..73add9a91d +--- /dev/null ++++ b/hw/sw64/Makefile.objs +@@ -0,0 +1 @@ ++obj-y += core3.o core3_board.o +diff --git a/hw/sw64/core.h b/hw/sw64/core.h +new file mode 100644 +index 0000000000..4923382229 +--- /dev/null ++++ b/hw/sw64/core.h +@@ -0,0 +1,25 @@ ++#ifndef HW_SW64_SYS_H ++#define HW_SW64_SYS_H ++ ++typedef struct boot_params { ++ unsigned long initrd_size; /* size of initrd */ ++ unsigned long initrd_start; /* logical address of initrd */ ++ unsigned long dtb_start; /* logical address of dtb */ ++ unsigned long efi_systab; /* logical address of EFI system table */ ++ unsigned long efi_memmap; /* logical address of EFI memory map */ ++ unsigned long efi_memmap_size; /* size of EFI memory map */ ++ unsigned long efi_memdesc_size; /* size of an EFI memory map descriptor */ ++ unsigned long efi_memdesc_version; /* memory descriptor version */ ++ unsigned long cmdline; /* logical address of cmdline */ ++} BOOT_PARAMS; ++ ++void core3_board_init(SW64CPU *cpus[4], MemoryRegion *ram); ++#endif ++ ++#define MAX_CPUS 64 ++ ++#ifdef CONFIG_KVM ++#define MAX_CPUS_CORE3 64 ++#else ++#define MAX_CPUS_CORE3 32 ++#endif +diff --git a/hw/sw64/core3.c b/hw/sw64/core3.c +new file mode 100644 +index 0000000000..dbe4ed6fa1 +--- /dev/null ++++ b/hw/sw64/core3.c +@@ -0,0 +1,182 @@ ++/* ++ * QEMU CORE3 hardware system emulator. ++ * ++ * Copyright (c) 2021 Lu Feifei ++ * ++ * This work is licensed under the GNU GPL license version 2 or later. ++ */ ++ ++#include "qemu/osdep.h" ++#include "qemu-common.h" ++#include "qemu/datadir.h" ++#include "cpu.h" ++#include "hw/hw.h" ++#include "elf.h" ++#include "hw/loader.h" ++#include "hw/boards.h" ++#include "qemu/error-report.h" ++#include "sysemu/sysemu.h" ++#include "sysemu/kvm.h" ++#include "sysemu/reset.h" ++#include "hw/ide.h" ++#include "hw/char/serial.h" ++#include "qemu/cutils.h" ++#include "ui/console.h" ++#include "core.h" ++#include "hw/boards.h" ++#include "sysemu/numa.h" ++ ++static uint64_t cpu_sw64_virt_to_phys(void *opaque, uint64_t addr) ++{ ++ return addr &= ~0xffffffff80000000 ; ++} ++ ++static CpuInstanceProperties ++sw64_cpu_index_to_props(MachineState *ms, unsigned cpu_index) ++{ ++ MachineClass *mc = MACHINE_GET_CLASS(ms); ++ const CPUArchIdList *possible_cpus = mc->possible_cpu_arch_ids(ms); ++ ++ assert(cpu_index < possible_cpus->len); ++ return possible_cpus->cpus[cpu_index].props; ++} ++ ++static int64_t sw64_get_default_cpu_node_id(const MachineState *ms, int idx) ++{ ++ int nb_numa_nodes = ms->numa_state->num_nodes; ++ return idx % nb_numa_nodes; ++} ++ ++static const CPUArchIdList *sw64_possible_cpu_arch_ids(MachineState *ms) ++{ ++ int i; ++ unsigned int max_cpus = ms->smp.max_cpus; ++ ++ if (ms->possible_cpus) { ++ /* ++ * make sure that max_cpus hasn't changed since the first use, i.e. ++ * -smp hasn't been parsed after it ++ */ ++ assert(ms->possible_cpus->len == max_cpus); ++ return ms->possible_cpus; ++ } ++ ++ ms->possible_cpus = g_malloc0(sizeof(CPUArchIdList) + ++ sizeof(CPUArchId) * max_cpus); ++ ms->possible_cpus->len = max_cpus; ++ for (i = 0; i < ms->possible_cpus->len; i++) { ++ ms->possible_cpus->cpus[i].type = ms->cpu_type; ++ ms->possible_cpus->cpus[i].vcpus_count = 1; ++ ms->possible_cpus->cpus[i].arch_id = i; ++ ms->possible_cpus->cpus[i].props.has_thread_id = true; ++ ms->possible_cpus->cpus[i].props.core_id = i; ++ } ++ ++ return ms->possible_cpus; ++} ++ ++static void core3_cpu_reset(void *opaque) ++{ ++ SW64CPU *cpu = opaque; ++ ++ cpu_reset(CPU(cpu)); ++} ++ ++static void core3_init(MachineState *machine) ++{ ++ ram_addr_t ram_size = machine->ram_size; ++ ram_addr_t buf; ++ SW64CPU *cpus[machine->smp.max_cpus]; ++ long i, size; ++ const char *kernel_filename = machine->kernel_filename; ++ const char *kernel_cmdline = machine->kernel_cmdline; ++ char *hmcode_filename; ++ char *uefi_filename; ++ uint64_t hmcode_entry, hmcode_low, hmcode_high; ++ uint64_t kernel_entry, kernel_low, kernel_high; ++ BOOT_PARAMS *core3_boot_params = g_new0(BOOT_PARAMS, 1); ++ uint64_t param_offset; ++ ++ memset(cpus, 0, sizeof(cpus)); ++ ++ for (i = 0; i < machine->smp.cpus; ++i) { ++ cpus[i] = SW64_CPU(cpu_create(machine->cpu_type)); ++ cpus[i]->env.csr[CID] = i; ++ qemu_register_reset(core3_cpu_reset, cpus[i]); ++ } ++ core3_board_init(cpus, machine->ram); ++ if (kvm_enabled()) ++ buf = ram_size; ++ else ++ buf = ram_size | (1UL << 63); ++ ++ rom_add_blob_fixed("ram_size", (char *)&buf, 0x8, 0x2040); ++ ++ param_offset = 0x90B000UL; ++ core3_boot_params->cmdline = param_offset | 0xfff0000000000000UL; ++ rom_add_blob_fixed("core3_boot_params", (core3_boot_params), 0x48, 0x90A100); ++ ++ hmcode_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, kvm_enabled() ? "core3-reset":"core3-hmcode"); ++ if (hmcode_filename == NULL) { ++ if (kvm_enabled()) ++ error_report("no core3-reset provided"); ++ else ++ error_report("no core3-hmcode provided"); ++ exit(1); ++ } ++ size = load_elf(hmcode_filename, NULL, cpu_sw64_virt_to_phys, NULL, ++ &hmcode_entry, &hmcode_low, &hmcode_high, NULL, 0, EM_SW64, 0, 0); ++ if (size < 0) { ++ if (kvm_enabled()) ++ error_report("could not load core3-reset: '%s'", hmcode_filename); ++ else ++ error_report("could not load core3-hmcode: '%s'", hmcode_filename); ++ exit(1); ++ } ++ g_free(hmcode_filename); ++ ++ /* Start all cpus at the hmcode RESET entry point. */ ++ for (i = 0; i < machine->smp.cpus; ++i) { ++ cpus[i]->env.pc = hmcode_entry; ++ cpus[i]->env.hm_entry = hmcode_entry; ++ } ++ ++ if (!kernel_filename) { ++ uefi_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, "uefi-bios-sw"); ++ load_image_targphys(uefi_filename, 0x2f00000UL, -1); ++ g_free(uefi_filename); ++ } else { ++ /* Load a kernel. */ ++ size = load_elf(kernel_filename, NULL, cpu_sw64_virt_to_phys, NULL, ++ &kernel_entry, &kernel_low, &kernel_high, NULL, 0, EM_SW64, 0, 0); ++ if (size < 0) { ++ error_report("could not load kernel '%s'", kernel_filename); ++ exit(1); ++ } ++ cpus[0]->env.trap_arg1 = kernel_entry; ++ if (kernel_cmdline) ++ pstrcpy_targphys("cmdline", param_offset, 0x400, kernel_cmdline); ++ } ++} ++ ++static void board_reset(MachineState *state) ++{ ++ qemu_devices_reset(); ++} ++ ++static void core3_machine_init(MachineClass *mc) ++{ ++ mc->desc = "core3 BOARD"; ++ mc->init = core3_init; ++ mc->block_default_type = IF_IDE; ++ mc->max_cpus = MAX_CPUS_CORE3; ++ mc->is_default = 0; ++ mc->reset = board_reset; ++ mc->possible_cpu_arch_ids = sw64_possible_cpu_arch_ids; ++ mc->cpu_index_to_instance_props = sw64_cpu_index_to_props; ++ mc->default_cpu_type = SW64_CPU_TYPE_NAME("core3"); ++ mc->default_ram_id = "ram"; ++ mc->get_default_cpu_node_id = sw64_get_default_cpu_node_id; ++} ++ ++DEFINE_MACHINE("core3", core3_machine_init) +diff --git a/hw/sw64/core3_board.c b/hw/sw64/core3_board.c +new file mode 100644 +index 0000000000..7853e01edb +--- /dev/null ++++ b/hw/sw64/core3_board.c +@@ -0,0 +1,493 @@ ++#include "qemu/osdep.h" ++#include "qapi/error.h" ++#include "cpu.h" ++#include "core.h" ++#include "hw/hw.h" ++#include "hw/boards.h" ++#include "sysemu/sysemu.h" ++#include "exec/address-spaces.h" ++#include "hw/pci/pci_host.h" ++#include "hw/pci/pci.h" ++#include "hw/char/serial.h" ++#include "hw/irq.h" ++#include "net/net.h" ++#include "hw/usb.h" ++#include "hw/ide/pci.h" ++#include "hw/ide/ahci.h" ++#include "sysemu/numa.h" ++#include "sysemu/kvm.h" ++#include "hw/rtc/sun4v-rtc.h" ++#include "hw/pci/msi.h" ++#include "hw/sw64/sw64_iommu.h" ++ ++#define TYPE_SWBOARD_PCI_HOST_BRIDGE "core_board-pcihost" ++#define SWBOARD_PCI_HOST_BRIDGE(obj) \ ++ OBJECT_CHECK(BoardState, (obj), TYPE_SWBOARD_PCI_HOST_BRIDGE) ++ ++#define MAX_IDE_BUS 2 ++#define SW_PIN_TO_IRQ 16 ++ ++typedef struct SWBoard { ++ SW64CPU *cpu[MAX_CPUS_CORE3]; ++} SWBoard; ++ ++typedef struct BoardState { ++ PCIHostState parent_obj; ++ ++ SWBoard sboard; ++ uint64_t expire_time; ++} BoardState; ++ ++typedef struct TimerState { ++ void *opaque; ++ int order; ++} TimerState; ++ ++#ifndef CONFIG_KVM ++static void swboard_alarm_timer(void *opaque) ++{ ++ TimerState *ts = (TimerState *)((uintptr_t)opaque); ++ BoardState *bs = (BoardState *)((uintptr_t)ts->opaque); ++ ++ int cpu = ts->order; ++ cpu_interrupt(CPU(bs->sboard.cpu[cpu]), CPU_INTERRUPT_TIMER); ++} ++#endif ++ ++static PCIINTxRoute sw_route_intx_pin_to_irq(void *opaque, int pin) ++{ ++ PCIINTxRoute route; ++ ++ route.mode = PCI_INTX_ENABLED; ++ route.irq = SW_PIN_TO_IRQ; ++ return route; ++} ++ ++static uint64_t convert_bit(int n) ++{ ++ uint64_t ret = (1UL << n) - 1; ++ ++ if (n == 64) ++ ret = 0xffffffffffffffffUL; ++ return ret; ++} ++ ++static uint64_t mcu_read(void *opaque, hwaddr addr, unsigned size) ++{ ++ MachineState *ms = MACHINE(qdev_get_machine()); ++ unsigned int smp_cpus = ms->smp.cpus; ++ uint64_t ret = 0; ++ switch (addr) { ++ case 0x0000: ++ /* CG_ONLINE */ ++ { ++ int i; ++ for (i = 0; i < smp_cpus; i = i + 4) ++ ret |= (1UL << i); ++ } ++ break; ++ /*IO_START*/ ++ case 0x1300: ++ ret = 0x1; ++ break; ++ case 0x3780: ++ /* MC_ONLINE */ ++ ret = convert_bit(smp_cpus); ++ break; ++ case 0x0900: ++ /* CPUID */ ++ ret = 0; ++ break; ++ case 0x1180: ++ /* LONGTIME */ ++ ret = qemu_clock_get_ns(QEMU_CLOCK_HOST) / 80; ++ break; ++ case 0x4900: ++ /* MC_CONFIG */ ++ break; ++ case 0x0780: ++ /* CORE_ONLINE */ ++ ret = convert_bit(smp_cpus); ++ break; ++ case 0x0680: ++ /* INIT_CTL */ ++ ret = 0x000003AE00000D28; ++ break; ++ default: ++ fprintf(stderr, "Unsupported MCU addr: 0x%04lx\n", addr); ++ return -1; ++ } ++ return ret; ++} ++ ++static void mcu_write(void *opaque, hwaddr addr, uint64_t val, unsigned size) ++{ ++#ifndef CONFIG_KVM ++#ifdef CONFIG_DUMP_PRINTK ++ uint64_t print_addr; ++ uint32_t len; ++ int i; ++ ++ if (addr == 0x40000) { ++ print_addr = val & 0x7fffffff; ++ len = (uint32_t)(val >> 32); ++ uint8_t *buf; ++ buf = malloc(len + 10); ++ memset(buf, 0, len + 10); ++ cpu_physical_memory_rw(print_addr, buf, len, 0); ++ for (i = 0; i < len; i++) ++ printf("%c", buf[i]); ++ ++ free(buf); ++ return; ++ } ++#endif ++#endif ++} ++ ++static const MemoryRegionOps mcu_ops = { ++ .read = mcu_read, ++ .write = mcu_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = ++ { ++ .min_access_size = 8, ++ .max_access_size = 8, ++ }, ++ .impl = ++ { ++ .min_access_size = 8, ++ .max_access_size = 8, ++ }, ++}; ++ ++static uint64_t intpu_read(void *opaque, hwaddr addr, unsigned size) ++{ ++ uint64_t ret = 0; ++#ifndef CONFIG_KVM ++ switch (addr) { ++ case 0x180: ++ /* LONGTIME */ ++ ret = qemu_clock_get_ns(QEMU_CLOCK_HOST) / 32; ++ break; ++ } ++#endif ++ return ret; ++} ++ ++static void intpu_write(void *opaque, hwaddr addr, uint64_t val, ++ unsigned size) ++{ ++#ifndef CONFIG_KVM ++ BoardState *bs = (BoardState *)opaque; ++ SW64CPU *cpu; ++ switch (addr) { ++ case 0x00: ++ val &= 0x1f; ++ cpu = bs->sboard.cpu[val]; ++ cpu->env.csr[II_REQ] = 0x100000; ++ cpu_interrupt(CPU(cpu),CPU_INTERRUPT_IIMAIL); ++ break; ++ default: ++ fprintf(stderr, "Unsupported IPU addr: 0x%04lx\n", addr); ++ break; ++ } ++#endif ++} ++ ++static const MemoryRegionOps intpu_ops = { ++ .read = intpu_read, ++ .write = intpu_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = ++ { ++ .min_access_size = 8, ++ .max_access_size = 8, ++ }, ++ .impl = ++ { ++ .min_access_size = 8, ++ .max_access_size = 8, ++ }, ++}; ++ ++static MemTxResult msi_read(void *opaque, hwaddr addr, ++ uint64_t *data, unsigned size, ++ MemTxAttrs attrs) ++{ ++ return MEMTX_OK; ++} ++ ++MemTxResult msi_write(void *opaque, hwaddr addr, ++ uint64_t value, unsigned size, ++ MemTxAttrs attrs) ++{ ++#ifdef CONFIG_KVM ++ int ret = 0; ++ MSIMessage msg = {}; ++ ++ msg.address = (uint64_t) addr + 0x8000fee00000; ++ msg.data = (uint32_t) value; ++ ++ ret = kvm_irqchip_send_msi(kvm_state, msg); ++ if (ret < 0) { ++ fprintf(stderr, "KVM: injection failed, MSI lost (%s)\n", ++ strerror(-ret)); ++ } ++#endif ++ return MEMTX_OK; ++} ++ ++static const MemoryRegionOps msi_ops = { ++ .read_with_attrs = msi_read, ++ .write_with_attrs = msi_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++ .impl = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++}; ++ ++static uint64_t ignore_read(void *opaque, hwaddr addr, unsigned size) ++{ ++ return 1; ++} ++ ++static void ignore_write(void *opaque, hwaddr addr, uint64_t v, unsigned size) ++{ ++} ++ ++const MemoryRegionOps core3_pci_ignore_ops = { ++ .read = ignore_read, ++ .write = ignore_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++ .impl = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++}; ++ ++static uint64_t config_read(void *opaque, hwaddr addr, unsigned size) ++{ ++ PCIBus *b = opaque; ++ uint32_t trans_addr = 0; ++ trans_addr |= ((addr >> 16) & 0xffff) << 8; ++ trans_addr |= (addr & 0xff); ++ return pci_data_read(b, trans_addr, size); ++} ++ ++static void config_write(void *opaque, hwaddr addr, uint64_t val, ++ unsigned size) ++{ ++ PCIBus *b = opaque; ++ uint32_t trans_addr = 0; ++ trans_addr |= ((addr >> 16) & 0xffff) << 8; ++ trans_addr |= (addr & 0xff); ++ pci_data_write(b, trans_addr, val, size); ++} ++ ++const MemoryRegionOps core3_pci_config_ops = { ++ .read = config_read, ++ .write = config_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++ .impl = ++ { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++}; ++ ++static void cpu_irq_change(SW64CPU *cpu, uint64_t req) ++{ ++ if (cpu != NULL) { ++ CPUState *cs = CPU(cpu); ++ if (req) ++ cpu_interrupt(cs, CPU_INTERRUPT_HARD); ++ else ++ cpu_reset_interrupt(cs, CPU_INTERRUPT_HARD); ++ } ++} ++ ++static void swboard_set_irq(void *opaque, int irq, int level) ++{ ++ BoardState *bs = opaque; ++ SW64CPU *cpu; ++ int i; ++ ++ if (kvm_enabled()) { ++ if (level == 0) ++ return; ++ kvm_set_irq(kvm_state, irq, level); ++ return; ++ } ++ ++ for (i = 0; i < 1; i++) { ++ cpu = bs->sboard.cpu[i]; ++ if (cpu != NULL) { ++ CPUState *cs = CPU(cpu); ++ if (level) ++ cpu_interrupt(cs, CPU_INTERRUPT_PCIE); ++ else ++ cpu_reset_interrupt(cs, CPU_INTERRUPT_PCIE); ++ } ++ } ++} ++ ++static int swboard_map_irq(PCIDevice *d, int irq_num) ++{ ++ /* In fact,the return value is the interrupt type passed to kernel, ++ * so it must keep same with the type in do_entInt in kernel. ++ */ ++ return 16; ++} ++ ++static void serial_set_irq(void *opaque, int irq, int level) ++{ ++ BoardState *bs = (BoardState *)opaque; ++ MachineState *ms = MACHINE(qdev_get_machine()); ++ unsigned int smp_cpus = ms->smp.cpus; ++ int i; ++ if (level == 0) ++ return; ++ if (kvm_enabled()) { ++ kvm_set_irq(kvm_state, irq, level); ++ return; ++ } ++ for (i = 0; i < smp_cpus; i++) { ++ if (bs->sboard.cpu[i]) ++ cpu_irq_change(bs->sboard.cpu[i], 1); ++ } ++} ++ ++void core3_board_init(SW64CPU *cpus[MAX_CPUS], MemoryRegion *ram) ++{ ++ DeviceState *dev; ++ BoardState *bs; ++#ifndef CONFIG_KVM ++ TimerState *ts; ++#endif ++ MemoryRegion *io_mcu = g_new(MemoryRegion, 1); ++ MemoryRegion *io_intpu = g_new(MemoryRegion, 1); ++ MemoryRegion *msi_ep = g_new(MemoryRegion, 1); ++ qemu_irq serial_irq; ++ uint64_t MB = 1024 * 1024; ++ MemoryRegion *mem_ep = g_new(MemoryRegion, 1); ++ MemoryRegion *mem_ep64 = g_new(MemoryRegion, 1); ++ MemoryRegion *conf_piu0 = g_new(MemoryRegion, 1); ++ MemoryRegion *io_ep = g_new(MemoryRegion, 1); ++ ++ MachineState *ms = MACHINE(qdev_get_machine()); ++ unsigned int smp_cpus = ms->smp.cpus; ++ ++ PCIBus *b; ++ PCIHostState *phb; ++ uint64_t GB = 1024 * MB; ++ ++ int i; ++ dev = qdev_new(TYPE_SWBOARD_PCI_HOST_BRIDGE); ++ phb = PCI_HOST_BRIDGE(dev); ++ bs = SWBOARD_PCI_HOST_BRIDGE(dev); ++ ++#ifdef CONFIG_KVM ++ if (kvm_has_gsi_routing()) ++ msi_nonbroken = true; ++#endif ++ ++ for (i = 0; i < smp_cpus; ++i) { ++ if (cpus[i] == NULL) ++ continue; ++ bs->sboard.cpu[i] = cpus[i]; ++#ifndef CONFIG_KVM ++ ts = g_new(TimerState, 1); ++ ts->opaque = (void *) ((uintptr_t)bs); ++ ts->order = i; ++ cpus[i]->alarm_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, &swboard_alarm_timer, ts); ++#endif ++ } ++ memory_region_add_subregion(get_system_memory(), 0, ram); ++ ++ memory_region_init_io(io_mcu, NULL, &mcu_ops, bs, "io_mcu", 16 * MB); ++ memory_region_add_subregion(get_system_memory(), 0x803000000000ULL, io_mcu); ++ ++ memory_region_init_io(io_intpu, NULL, &intpu_ops, bs, "io_intpu", 1 * MB); ++ memory_region_add_subregion(get_system_memory(), 0x802a00000000ULL, ++ io_intpu); ++ ++ memory_region_init_io(msi_ep, NULL, &msi_ops, bs, "msi_ep", 1 * MB); ++ memory_region_add_subregion(get_system_memory(), 0x8000fee00000ULL, msi_ep); ++ ++ memory_region_init(mem_ep, OBJECT(bs), "pci0-mem", 0x890000000000ULL); ++ memory_region_add_subregion(get_system_memory(), 0x880000000000ULL, mem_ep); ++ ++ memory_region_init_alias(mem_ep64, NULL, "mem_ep64", mem_ep, 0x888000000000ULL, 1ULL << 39); ++ memory_region_add_subregion(get_system_memory(), 0x888000000000ULL, mem_ep64); ++ ++ memory_region_init_io(io_ep, OBJECT(bs), &core3_pci_ignore_ops, NULL, ++ "pci0-io-ep", 4 * GB); ++ ++ memory_region_add_subregion(get_system_memory(), 0x880100000000ULL, io_ep); ++ b = pci_register_root_bus(dev, "pcie.0", swboard_set_irq, swboard_map_irq, bs, ++ mem_ep, io_ep, 0, 537, TYPE_PCIE_BUS); ++ phb->bus = b; ++ sysbus_realize_and_unref(SYS_BUS_DEVICE(dev), &error_fatal); ++ pci_bus_set_route_irq_fn(b, sw_route_intx_pin_to_irq); ++ memory_region_init_io(conf_piu0, OBJECT(bs), &core3_pci_config_ops, b, ++ "pci0-ep-conf-io", 4 * GB); ++ memory_region_add_subregion(get_system_memory(), 0x880600000000ULL, ++ conf_piu0); ++#ifdef SW64_VT_IOMMU ++ sw64_vt_iommu_init(b); ++#endif ++ for (i = 0; i < nb_nics; i++) { ++ pci_nic_init_nofail(&nd_table[i], b, "e1000", NULL); ++ } ++ ++ pci_vga_init(b); ++#define MAX_SATA_PORTS 6 ++ PCIDevice *ahci; ++ DriveInfo *hd[MAX_SATA_PORTS]; ++ ahci = pci_create_simple_multifunction(b, PCI_DEVFN(0x1f, 0), true, ++ TYPE_ICH9_AHCI); ++ g_assert(MAX_SATA_PORTS == ahci_get_num_ports(ahci)); ++ ide_drive_get(hd, ahci_get_num_ports(ahci)); ++ ahci_ide_create_devs(ahci, hd); ++ ++ serial_irq = qemu_allocate_irq(serial_set_irq, bs, 12); ++ if (serial_hd(0)) { ++ serial_mm_init(get_system_memory(), 0x3F8 + 0x880100000000ULL, 0, ++ serial_irq, (1843200 >> 4), serial_hd(0), ++ DEVICE_LITTLE_ENDIAN); ++ } ++ pci_create_simple(phb->bus, -1, "nec-usb-xhci"); ++ sun4v_rtc_init(0x804910000000ULL); ++} ++ ++static const TypeInfo swboard_pcihost_info = { ++ .name = TYPE_SWBOARD_PCI_HOST_BRIDGE, ++ .parent = TYPE_PCI_HOST_BRIDGE, ++ .instance_size = sizeof(BoardState), ++}; ++ ++static void swboard_register_types(void) ++{ ++ type_register_static(&swboard_pcihost_info); ++} ++ ++type_init(swboard_register_types) +diff --git a/hw/sw64/meson.build b/hw/sw64/meson.build +new file mode 100644 +index 0000000000..8abb18222a +--- /dev/null ++++ b/hw/sw64/meson.build +@@ -0,0 +1,10 @@ ++sw64_ss = ss.source_set() ++ ++sw64_ss.add(files('sw64_iommu.c')) ++ ++sw64_ss.add(when: 'CONFIG_CORE3', if_true: files( ++ 'core3.c', ++ 'core3_board.c', ++)) ++ ++hw_arch += {'sw64': sw64_ss} +diff --git a/hw/sw64/sw64_iommu.c b/hw/sw64/sw64_iommu.c +new file mode 100644 +index 0000000000..8ded65f213 +--- /dev/null ++++ b/hw/sw64/sw64_iommu.c +@@ -0,0 +1,567 @@ ++/* ++ * QEMU sw64 IOMMU emulation ++ * ++ * Copyright (c) 2021 Lu Feifei ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a copy ++ * of this software and associated documentation files (the "Software"), to deal ++ * in the Software without restriction, including without limitation the rights ++ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell ++ * copies of the Software, and to permit persons to whom the Software is ++ * furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN ++ * THE SOFTWARE. ++ */ ++ ++#include "qemu/osdep.h" ++#include "hw/sysbus.h" ++#include "exec/address-spaces.h" ++#include "qemu/log.h" ++#include "qapi/error.h" ++#include "hw/sw64/sw64_iommu.h" ++#include "sysemu/kvm.h" ++ ++#define IOMMU_PAGE_SHIFT 13 ++#define IOMMU_PAGE_SIZE_8K (1ULL << IOMMU_PAGE_SHIFT) ++#define IOMMU_PAGE_MASK_8K (~(IOMMU_PAGE_SIZE_8K - 1)) ++#define IOMMU_IOVA_SHIFT 16 ++#define SW64IOMMU_PTIOTLB_MAX_SIZE 256 ++ ++static MemTxResult swvt_msi_read(void *opaque, hwaddr addr, ++ uint64_t *data, unsigned size, MemTxAttrs attrs) ++{ ++ return MEMTX_OK; ++} ++ ++static MemTxResult swvt_msi_write(void *opaque, hwaddr addr, ++ uint64_t value, unsigned size, ++ MemTxAttrs attrs) ++{ ++ MemTxResult ret; ++ ++ ret = msi_write(opaque, addr, value, size, attrs); ++ ++ return ret; ++} ++ ++static const MemoryRegionOps swvt_msi_ops = { ++ .read_with_attrs = swvt_msi_read, ++ .write_with_attrs = swvt_msi_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++ .impl = { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++}; ++ ++SWVTAddressSpace *iommu_find_add_as(SW64IOMMUState *s, PCIBus *bus, int devfn) ++{ ++ uintptr_t key = (uintptr_t)bus; ++ SWVTBus *swvt_bus = g_hash_table_lookup(s->swvtbus_as_by_busptr, &key); ++ SWVTAddressSpace *swvt_dev_as; ++ char name[128]; ++ ++ if (!swvt_bus) { ++ uintptr_t *new_key = g_malloc(sizeof(*new_key)); ++ *new_key = (uintptr_t)bus; ++ /* No corresponding free() */ ++ swvt_bus = g_malloc0(sizeof(SWVTBus) + sizeof(SWVTAddressSpace *) * \ ++ PCI_DEVFN_MAX); ++ swvt_bus->bus = bus; ++ g_hash_table_insert(s->swvtbus_as_by_busptr, new_key, swvt_bus); ++ } ++ swvt_dev_as = swvt_bus->dev_as[devfn]; ++ if (!swvt_dev_as) { ++ snprintf(name, sizeof(name), "sw64_iommu_devfn_%d", devfn); ++ swvt_bus->dev_as[devfn] = swvt_dev_as = g_malloc0(sizeof(SWVTAddressSpace)); ++ ++ swvt_dev_as->bus = bus; ++ swvt_dev_as->devfn = (uint8_t)devfn; ++ swvt_dev_as->iommu_state = s; ++ ++ memory_region_init_iommu(&swvt_dev_as->iommu, sizeof(swvt_dev_as->iommu), ++ TYPE_SW64_IOMMU_MEMORY_REGION, OBJECT(s), ++ "sw64_iommu_dmar", ++ 1UL << 32); ++ memory_region_init_io(&swvt_dev_as->msi, OBJECT(s), ++ &swvt_msi_ops, s, "sw_msi", 1 * 1024 * 1024); ++ memory_region_init(&swvt_dev_as->root, OBJECT(s), ++ "swvt_root", UINT64_MAX); ++ memory_region_add_subregion_overlap(&swvt_dev_as->root, ++ 0x8000fee00000ULL, ++ &swvt_dev_as->msi, 64); ++ address_space_init(&swvt_dev_as->as, &swvt_dev_as->root, name); ++ memory_region_add_subregion_overlap(&swvt_dev_as->root, 0, ++ MEMORY_REGION(&swvt_dev_as->iommu), ++ 1); ++ } ++ ++ memory_region_set_enabled(MEMORY_REGION(&swvt_dev_as->iommu), true); ++ ++ return swvt_dev_as; ++} ++ ++/** ++ * get_pte - Get the content of a page table entry located at ++ * @base_addr[@index] ++ */ ++static int get_pte(dma_addr_t baseaddr, uint64_t *pte) ++{ ++ int ret; ++ ++ /* TODO: guarantee 64-bit single-copy atomicity */ ++ ret = dma_memory_read(&address_space_memory, baseaddr, ++ (uint8_t *)pte, sizeof(*pte)); ++ ++ if (ret != MEMTX_OK) ++ return -EINVAL; ++ ++ return 0; ++} ++ ++static bool swvt_do_iommu_translate(SWVTAddressSpace *swvt_as, PCIBus *bus, ++ uint8_t devfn, hwaddr addr, IOMMUTLBEntry *entry) ++{ ++ SW64IOMMUState *s = swvt_as->iommu_state; ++ uint8_t bus_num = pci_bus_num(bus); ++ unsigned long dtbbaseaddr, dtbbasecond; ++ unsigned long pdebaseaddr, ptebaseaddr; ++ unsigned long pte; ++ uint16_t source_id; ++ SW64DTIOTLBEntry *dtcached_entry = NULL; ++ SW64DTIOTLBKey dtkey, *new_key; ++ ++ dtcached_entry = g_hash_table_lookup(s->dtiotlb, &dtkey); ++ ++ if (unlikely(!dtcached_entry)) { ++ dtbbaseaddr = s->dtbr + (bus_num << 3); ++ ++ if (get_pte(dtbbaseaddr, &pte)) ++ goto error; ++ ++ dtbbasecond = (pte & (~(SW_IOMMU_ENTRY_VALID))) + (devfn << 3); ++ if (get_pte(dtbbasecond, &pte)) ++ goto error; ++ ++ source_id = ((bus_num & 0xffUL) << 8) | (devfn & 0xffUL); ++ dtcached_entry = g_new0(SW64DTIOTLBEntry, 1); ++ dtcached_entry->ptbase_addr = pte & (~(SW_IOMMU_ENTRY_VALID)); ++ dtcached_entry->source_id = source_id; ++ ++ new_key = g_new0(SW64DTIOTLBKey, 1); ++ new_key->source_id = source_id; ++ ++ g_hash_table_insert(s->dtiotlb, new_key, dtcached_entry); ++ } ++ ++ pdebaseaddr = dtcached_entry->ptbase_addr; ++ pdebaseaddr += ((addr >> 23) & SW_IOMMU_LEVEL1_OFFSET) << 3; ++ ++ if (get_pte(pdebaseaddr, &pte)) ++ goto error; ++ ++ ptebaseaddr = pte & (~(SW_IOMMU_ENTRY_VALID)); ++ ptebaseaddr += ((addr >> IOMMU_PAGE_SHIFT) & SW_IOMMU_LEVEL2_OFFSET) << 3; ++ ++ if (get_pte(ptebaseaddr, &pte)) ++ goto error; ++ ++ pte &= ~(SW_IOMMU_ENTRY_VALID | SW_IOMMU_GRN | SW_IOMMU_ENABLE); ++ entry->translated_addr = pte; ++ entry->addr_mask = IOMMU_PAGE_SIZE_8K - 1; ++ ++ return 0; ++ ++error: ++ entry->perm = IOMMU_NONE; ++ return -EINVAL; ++} ++ ++static void swvt_ptiotlb_inv_all(SW64IOMMUState *s) ++{ ++ g_hash_table_remove_all(s->ptiotlb); ++} ++ ++static void swvt_lookup_ptiotlb(SW64IOMMUState *s, uint16_t source_id, ++ hwaddr addr, IOMMUTLBEntry *entry) ++{ ++ SW64PTIOTLBKey ptkey; ++ ++ ptkey.source_id = source_id; ++ ptkey.iova = addr; ++ ++ entry = g_hash_table_lookup(s->ptiotlb, &ptkey); ++} ++ ++static IOMMUTLBEntry sw64_translate_iommu(IOMMUMemoryRegion *iommu, hwaddr addr, ++ IOMMUAccessFlags flag, int iommu_idx) ++{ ++ SWVTAddressSpace *swvt_as = container_of(iommu, SWVTAddressSpace, iommu); ++ SW64IOMMUState *s = swvt_as->iommu_state; ++ IOMMUTLBEntry *cached_entry = NULL; ++ IOMMUTLBEntry entry = { ++ .target_as = &address_space_memory, ++ .iova = addr, ++ .translated_addr = addr, ++ .addr_mask = ~(hwaddr)0, ++ .perm = IOMMU_NONE, ++ }; ++ uint8_t bus_num = pci_bus_num(swvt_as->bus); ++ uint16_t source_id; ++ SW64PTIOTLBKey *new_ptkey; ++ hwaddr aligned_addr; ++ ++ source_id = ((bus_num & 0xffUL) << 8) | (swvt_as->devfn & 0xffUL); ++ ++ qemu_mutex_lock(&s->iommu_lock); ++ ++ aligned_addr = addr & IOMMU_PAGE_MASK_8K; ++ ++ swvt_lookup_ptiotlb(s, aligned_addr, source_id, cached_entry); ++ ++ if (cached_entry) ++ goto out; ++ ++ if (g_hash_table_size(s->ptiotlb) >= SW64IOMMU_PTIOTLB_MAX_SIZE) { ++ swvt_ptiotlb_inv_all(s); ++ } ++ ++ cached_entry = g_new0(IOMMUTLBEntry, 1); ++ ++ if (swvt_do_iommu_translate(swvt_as, swvt_as->bus, swvt_as->devfn, ++ addr, cached_entry)) { ++ g_free(cached_entry); ++ qemu_mutex_unlock(&s->iommu_lock); ++ printf("%s: detected translation failure " ++ "(busnum=%d, devfn=%#x, iova=%#lx.\n", ++ __func__, pci_bus_num(swvt_as->bus), swvt_as->devfn, ++ entry.iova); ++ entry.iova = 0; ++ entry.translated_addr = 0; ++ entry.addr_mask = 0; ++ entry.perm = IOMMU_NONE; ++ ++ return entry; ++ } else { ++ new_ptkey = g_new0(SW64PTIOTLBKey, 1); ++ new_ptkey->source_id = source_id; ++ new_ptkey->iova = aligned_addr; ++ g_hash_table_insert(s->ptiotlb, new_ptkey, cached_entry); ++ } ++ ++out: ++ qemu_mutex_unlock(&s->iommu_lock); ++ entry.perm = flag; ++ entry.translated_addr = cached_entry->translated_addr + ++ (addr & (IOMMU_PAGE_SIZE_8K - 1)); ++ entry.addr_mask = cached_entry->addr_mask; ++ ++ return entry; ++} ++ ++static void swvt_ptiotlb_inv_iova(SW64IOMMUState *s, uint16_t source_id, dma_addr_t iova) ++{ ++ SW64PTIOTLBKey key = {.source_id = source_id, .iova = iova}; ++ ++ qemu_mutex_lock(&s->iommu_lock); ++ g_hash_table_remove(s->ptiotlb, &key); ++ qemu_mutex_unlock(&s->iommu_lock); ++} ++ ++void swvt_address_space_unmap_iova(SW64IOMMUState *s, unsigned long val) ++{ ++ SWVTAddressSpace *swvt_as; ++ IOMMUNotifier *n; ++ uint16_t source_id; ++ dma_addr_t iova; ++ IOMMUTLBEvent event; ++ ++ source_id = val & 0xffff; ++ iova = (val >> IOMMU_IOVA_SHIFT) << IOMMU_PAGE_SHIFT; ++ ++ swvt_ptiotlb_inv_iova(s, source_id, iova); ++ ++ QLIST_FOREACH(swvt_as, &s->swvt_as_with_notifiers, next) { ++ uint8_t bus_num = pci_bus_num(swvt_as->bus); ++ uint16_t as_sourceid = ((bus_num & 0xffUL) << 8) | (swvt_as->devfn & 0xffUL); ++ ++ if (as_sourceid == source_id) { ++ IOMMU_NOTIFIER_FOREACH(n, &swvt_as->iommu) { ++ event.type = IOMMU_NOTIFIER_UNMAP; ++ event.entry.target_as = &address_space_memory; ++ event.entry.iova = iova & IOMMU_PAGE_MASK_8K; ++ event.entry.translated_addr = 0; ++ event.entry.perm = IOMMU_NONE; ++ event.entry.addr_mask = IOMMU_PAGE_SIZE_8K - 1; ++ ++ memory_region_notify_iommu(&swvt_as->iommu, 0, event); ++ } ++ } ++ } ++} ++ ++/* Unmap the whole range in the notifier's scope. */ ++static void swvt_address_space_unmap(SWVTAddressSpace *as, IOMMUNotifier *n) ++{ ++ IOMMUTLBEvent event; ++ hwaddr size; ++ hwaddr start = n->start; ++ hwaddr end = n->end; ++ ++ assert(start <= end); ++ size = end - start; ++ ++ event.entry.target_as = &address_space_memory; ++ /* Adjust iova for the size */ ++ event.entry.iova = n->start & ~(size - 1); ++ /* This field is meaningless for unmap */ ++ event.entry.translated_addr = 0; ++ event.entry.perm = IOMMU_NONE; ++ event.entry.addr_mask = size - 1; ++ ++ memory_region_notify_iommu_one(n, &event); ++} ++ ++void swvt_address_space_map_iova(SW64IOMMUState *s, unsigned long val) ++{ ++ SWVTAddressSpace *swvt_as; ++ IOMMUNotifier *n; ++ uint16_t source_id; ++ dma_addr_t iova; ++ IOMMUTLBEvent event; ++ int ret; ++ ++ source_id = val & 0xffff; ++ iova = (val >> IOMMU_IOVA_SHIFT) << IOMMU_PAGE_SHIFT; ++ ++ swvt_ptiotlb_inv_iova(s, source_id, iova); ++ ++ QLIST_FOREACH(swvt_as, &s->swvt_as_with_notifiers, next) { ++ uint8_t bus_num = pci_bus_num(swvt_as->bus); ++ uint16_t as_sourceid = ((bus_num & 0xffUL) << 8) | (swvt_as->devfn & 0xffUL); ++ ++ if (as_sourceid == source_id) { ++ IOMMU_NOTIFIER_FOREACH(n, &swvt_as->iommu) { ++ event.type = IOMMU_NOTIFIER_UNMAP; ++ event.entry.target_as = &address_space_memory; ++ event.entry.iova = iova & IOMMU_PAGE_MASK_8K; ++ event.entry.perm = IOMMU_RW; ++ ++ ret = swvt_do_iommu_translate(swvt_as, swvt_as->bus, ++ swvt_as->devfn, iova, &event.entry); ++ if (ret) ++ goto out; ++ ++ memory_region_notify_iommu(&swvt_as->iommu, 0, event); ++ } ++ } ++ } ++out: ++ return; ++} ++ ++void swvt_address_space_invalidate_iova(SW64IOMMUState *s, unsigned long val) ++{ ++ int map_flag; ++ ++ map_flag = val >> 36; ++ ++ if (map_flag) ++ swvt_address_space_map_iova(s, val & 0xfffffffff); ++ else ++ swvt_address_space_unmap_iova(s, val); ++ ++ return; ++} ++ ++static AddressSpace *sw64_dma_iommu(PCIBus *bus, void *opaque, int devfn) ++{ ++ SW64IOMMUState *s = opaque; ++ SWVTAddressSpace *swvt_as; ++ ++ assert(0 <= devfn && devfn < PCI_DEVFN_MAX); ++ ++ swvt_as = iommu_find_add_as(s, bus, devfn); ++ return &swvt_as->as; ++} ++ ++static uint64_t piu0_read(void *opaque, hwaddr addr, unsigned size) ++{ ++ uint64_t ret = 0; ++ switch (addr) { ++ default: ++ break; ++ } ++ return ret; ++} ++ ++static void piu0_write(void *opaque, hwaddr addr, uint64_t val, ++ unsigned size) ++{ ++ SW64IOMMUState *s = (SW64IOMMUState *)opaque; ++ ++ switch (addr) { ++ case 0xb000: ++ /* DTBaseAddr */ ++ s->dtbr = val; ++ break; ++ case 0xb280: ++ /* PTLB_FlushVAddr */ ++ swvt_address_space_invalidate_iova(s, val); ++ break; ++ default: ++ break; ++ } ++} ++ ++const MemoryRegionOps core3_pci_piu0_ops = { ++ .read = piu0_read, ++ .write = piu0_write, ++ .endianness = DEVICE_LITTLE_ENDIAN, ++ .valid = { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++ .impl = { ++ .min_access_size = 1, ++ .max_access_size = 8, ++ }, ++}; ++ ++void sw64_vt_iommu_init(PCIBus *b) ++{ ++ DeviceState *dev_iommu; ++ SW64IOMMUState *s; ++ MemoryRegion *io_piu0 = g_new(MemoryRegion, 1); ++ ++ dev_iommu = qdev_new(TYPE_SW64_IOMMU); ++ s = SW64_IOMMU(dev_iommu); ++ ++ s->pci_bus = b; ++ sysbus_realize_and_unref(SYS_BUS_DEVICE(dev_iommu), &error_fatal); ++ ++ pci_setup_iommu(b, sw64_dma_iommu, dev_iommu); ++ ++ memory_region_init_io(io_piu0, OBJECT(s), &core3_pci_piu0_ops, s, ++ "pci0-piu0-io", 4 * 1024 * 1024); ++ memory_region_add_subregion(get_system_memory(), 0x880200000000ULL, ++ io_piu0); ++} ++ ++static int swvt_iommu_notify_flag_changed(IOMMUMemoryRegion *iommu, ++ IOMMUNotifierFlag old, ++ IOMMUNotifierFlag new, ++ Error **errp) ++{ ++ SWVTAddressSpace *swvt_as = container_of(iommu, SWVTAddressSpace, iommu); ++ SW64IOMMUState *s = swvt_as->iommu_state; ++ ++ /* Update per-address-space notifier flags */ ++ swvt_as->notifier_flags = new; ++ ++ if (new & IOMMU_NOTIFIER_DEVIOTLB_UNMAP) { ++ error_setg(errp, "swvt does not support dev-iotlb yet"); ++ return -EINVAL; ++ } ++ ++ if (old == IOMMU_NOTIFIER_NONE) { ++ QLIST_INSERT_HEAD(&s->swvt_as_with_notifiers, swvt_as, next); ++ } else if (new == IOMMU_NOTIFIER_NONE) { ++ QLIST_REMOVE(swvt_as, next); ++ } ++ return 0; ++} ++ ++static void swvt_iommu_replay(IOMMUMemoryRegion *iommu_mr, IOMMUNotifier *n) ++{ ++ SWVTAddressSpace *swvt_as = container_of(iommu_mr, SWVTAddressSpace, iommu); ++ ++ /* ++ * The replay can be triggered by either a invalidation or a newly ++ * created entry. No matter what, we release existing mappings ++ * (it means flushing caches for UNMAP-only registers). ++ */ ++ swvt_address_space_unmap(swvt_as, n); ++} ++ ++/* GHashTable functions */ ++static gboolean swvt_uint64_equal(gconstpointer v1, gconstpointer v2) ++{ ++ return *((const uint64_t *)v1) == *((const uint64_t *)v2); ++} ++ ++static guint swvt_uint64_hash(gconstpointer v) ++{ ++ return (guint)*(const uint64_t *)v; ++} ++ ++static void iommu_realize(DeviceState *d, Error **errp) ++{ ++ SW64IOMMUState *s = SW64_IOMMU(d); ++ ++ QLIST_INIT(&s->swvt_as_with_notifiers); ++ qemu_mutex_init(&s->iommu_lock); ++ ++ s->dtiotlb = g_hash_table_new_full(swvt_uint64_hash, swvt_uint64_equal, ++ g_free, g_free); ++ s->ptiotlb = g_hash_table_new_full(swvt_uint64_hash, swvt_uint64_equal, ++ g_free, g_free); ++ ++ s->swvtbus_as_by_busptr = g_hash_table_new(NULL, NULL); ++} ++ ++static void iommu_reset(DeviceState *d) ++{ ++} ++ ++static void sw64_iommu_class_init(ObjectClass *klass, void *data) ++{ ++ DeviceClass *dc = DEVICE_CLASS(klass); ++ ++ dc->reset = iommu_reset; ++ dc->realize = iommu_realize; ++} ++ ++static void sw64_iommu_memory_region_class_init(ObjectClass *klass, void *data) ++{ ++ IOMMUMemoryRegionClass *imrc = IOMMU_MEMORY_REGION_CLASS(klass); ++ ++ imrc->translate = sw64_translate_iommu; ++ imrc->notify_flag_changed = swvt_iommu_notify_flag_changed; ++ imrc->replay = swvt_iommu_replay; ++} ++ ++static const TypeInfo sw64_iommu_info = { ++ .name = TYPE_SW64_IOMMU, ++ .parent = TYPE_SYS_BUS_DEVICE, ++ .instance_size = sizeof(SW64IOMMUState), ++ .class_init = sw64_iommu_class_init, ++ .class_size = sizeof(SW64IOMMUClass), ++}; ++ ++static const TypeInfo sw64_iommu_memory_region_info = { ++ .parent = TYPE_IOMMU_MEMORY_REGION, ++ .name = TYPE_SW64_IOMMU_MEMORY_REGION, ++ .class_init = sw64_iommu_memory_region_class_init, ++}; ++ ++static void sw64_iommu_register_types(void) ++{ ++ type_register_static(&sw64_iommu_info); ++ type_register_static(&sw64_iommu_memory_region_info); ++} ++ ++type_init(sw64_iommu_register_types) +diff --git a/hw/sw64/trace-events b/hw/sw64/trace-events +new file mode 100644 +index 0000000000..1aa744c984 +--- /dev/null ++++ b/hw/sw64/trace-events +@@ -0,0 +1,3 @@ ++# See docs/devel/tracing.rst for syntax documentation. ++ ++# pci.c +diff --git a/include/disas/dis-asm.h b/include/disas/dis-asm.h +index 08e1beec85..4590bcc968 100644 +--- a/include/disas/dis-asm.h ++++ b/include/disas/dis-asm.h +@@ -191,6 +191,9 @@ enum bfd_architecture + #define bfd_mach_alpha_ev4 0x10 + #define bfd_mach_alpha_ev5 0x20 + #define bfd_mach_alpha_ev6 0x30 ++ bfd_arch_sw_64, /* Dec Sw_64 */ ++#define bfd_mach_sw_64 1 ++#define bfd_mach_sw_64_core3 1621 + bfd_arch_arm, /* Advanced Risc Machines ARM */ + #define bfd_mach_arm_unknown 0 + #define bfd_mach_arm_2 1 +@@ -429,6 +432,7 @@ int print_insn_h8500 (bfd_vma, disassemble_info*); + int print_insn_arm_a64 (bfd_vma, disassemble_info*); + int print_insn_alpha (bfd_vma, disassemble_info*); + disassembler_ftype arc_get_disassembler (int, int); ++int print_insn_sw_64 (bfd_vma, disassemble_info*); + int print_insn_arm (bfd_vma, disassemble_info*); + int print_insn_sparc (bfd_vma, disassemble_info*); + int print_insn_big_a29k (bfd_vma, disassemble_info*); +diff --git a/include/elf.h b/include/elf.h +index 811bf4a1cb..79c188b62f 100644 +--- a/include/elf.h ++++ b/include/elf.h +@@ -207,6 +207,8 @@ typedef struct mips_elf_abiflags_v0 { + + #define EF_AVR_MACH 0x7F /* Mask for AVR e_flags to get core type */ + ++#define EM_SW64 0x9916 /* SW64 */ ++ + /* This is the info that is needed to parse the dynamic section of the file */ + #define DT_NULL 0 + #define DT_NEEDED 1 +@@ -1417,6 +1419,48 @@ typedef struct { + #define EF_RISCV_RVE 0x0008 + #define EF_RISCV_TSO 0x0010 + ++/* ++ SW_64 ELF relocation types ++ */ ++#define EM_SW_64 0x9916 ++#define R_SW_64_NONE 0 /* No reloc */ ++#define R_SW_64_REFLONG 1 /* Direct 32 bit */ ++#define R_SW_64_REFQUAD 2 /* Direct 64 bit */ ++#define R_SW_64_GPREL32 3 /* GP relative 32 bit */ ++#define R_SW_64_LITERAL 4 /* GP relative 16 bit w/optimization */ ++#define R_SW_64_LITUSE 5 /* Optimization hint for LITERAL */ ++#define R_SW_64_GPDISP 6 /* Add displacement to GP */ ++#define R_SW_64_BRADDR 7 /* PC+4 relative 23 bit shifted */ ++#define R_SW_64_HINT 8 /* PC+4 relative 16 bit shifted */ ++#define R_SW_64_SREL16 9 /* PC relative 16 bit */ ++#define R_SW_64_SREL32 10 /* PC relative 32 bit */ ++#define R_SW_64_SREL64 11 /* PC relative 64 bit */ ++#define R_SW_64_GPRELHIGH 17 /* GP relative 32 bit, high 16 bits */ ++#define R_SW_64_GPRELLOW 18 /* GP relative 32 bit, low 16 bits */ ++#define R_SW_64_GPREL16 19 /* GP relative 16 bit */ ++#define R_SW_64_COPY 24 /* Copy symbol at runtime */ ++#define R_SW_64_GLOB_DAT 25 /* Create GOT entry */ ++#define R_SW_64_JMP_SLOT 26 /* Create PLT entry */ ++#define R_SW_64_RELATIVE 27 /* Adjust by program base */ ++#define R_SW_64_TLS_GD_HI 28 ++#define R_SW_64_TLSGD 29 ++#define R_SW_64_TLS_LDM 30 ++#define R_SW_64_DTPMOD64 31 ++#define R_SW_64_GOTDTPREL 32 ++#define R_SW_64_DTPREL64 33 ++#define R_SW_64_DTPRELHI 34 ++#define R_SW_64_DTPRELLO 35 ++#define R_SW_64_DTPREL16 36 ++#define R_SW_64_GOTTPREL 37 ++#define R_SW_64_TPREL64 38 ++#define R_SW_64_TPRELHI 39 ++#define R_SW_64_TPRELLO 40 ++#define R_SW_64_TPREL16 41 ++/* Keep this the last entry. */ ++#define R_SW_64_NUM 46 ++/* Legal values for sh_flags field of Elf64_Shdr. */ ++#define SHF_SW_64_GPREL 0x10000000 ++ + typedef struct elf32_rel { + Elf32_Addr r_offset; + Elf32_Word r_info; +diff --git a/include/hw/sw64/sw64_iommu.h b/include/hw/sw64/sw64_iommu.h +new file mode 100644 +index 0000000000..7191876083 +--- /dev/null ++++ b/include/hw/sw64/sw64_iommu.h +@@ -0,0 +1,105 @@ ++/* ++ * Copyright (C) 2021-2025 Wuxi Institute of Advanced Technology ++ * Written by Lu Feifei ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License along ++ * with this program; if not, see . ++ */ ++ ++#ifndef HW_SW64_IOMMU_H ++#define HW_SW64_IOMMU_H ++ ++#include "hw/sysbus.h" ++#include "hw/pci/pci.h" ++ ++#define TYPE_SW64_IOMMU_MEMORY_REGION "sw64-iommu-memory-region" ++#define SW_IOMMU_ENTRY_VALID ((1UL) << 63) ++#define SW_IOMMU_LEVEL1_OFFSET 0x1ff ++#define SW_IOMMU_LEVEL2_OFFSET 0x3ff ++#define SW_IOMMU_ENABLE 3 ++#define SW_IOMMU_GRN ((0UL) << 4) ++#define SWVT_PCI_BUS_MAX 256 ++ ++typedef struct SW64IOMMUClass SW64IOMMUClass; ++typedef struct SW64IOMMUState SW64IOMMUState; ++typedef struct SWVTAddressSpace SWVTAddressSpace; ++typedef struct SW64DTIOTLBKey SW64DTIOTLBKey; ++typedef struct SW64PTIOTLBKey SW64PTIOTLBKey; ++typedef struct SW64DTIOTLBEntry SW64DTIOTLBEntry; ++typedef struct SWVTBus SWVTBus; ++ ++struct SW64DTIOTLBEntry { ++ uint16_t source_id; ++ unsigned long ptbase_addr; ++}; ++ ++struct SW64DTIOTLBKey { ++ uint16_t source_id; ++}; ++ ++struct SW64PTIOTLBKey { ++ uint16_t source_id; ++ dma_addr_t iova; ++}; ++ ++struct SWVTAddressSpace { ++ PCIBus *bus; ++ uint8_t devfn; ++ AddressSpace as; ++ IOMMUMemoryRegion iommu; ++ MemoryRegion root; ++ MemoryRegion msi; /* Interrupt region: 0xfeeXXXXX */ ++ SW64IOMMUState *iommu_state; ++ QLIST_ENTRY(SWVTAddressSpace) next; ++ /* Superset of notifier flags that this address space has */ ++ IOMMUNotifierFlag notifier_flags; ++}; ++ ++struct SWVTBus { ++ PCIBus* bus; /* A reference to the bus to provide translation for */ ++ SWVTAddressSpace *dev_as[0]; /* A table of SWVTAddressSpace objects indexed by devfn */ ++}; ++ ++struct SW64IOMMUState { ++ SysBusDevice busdev; ++ dma_addr_t dtbr; /* Current root table pointer */ ++ GHashTable *dtiotlb; /* IOTLB for device table */ ++ GHashTable *ptiotlb; /* IOTLB for page table */ ++ ++ GHashTable *swvtbus_as_by_busptr; ++ /* list of registered notifiers */ ++ QLIST_HEAD(, SWVTAddressSpace) swvt_as_with_notifiers; ++ ++ PCIBus *pci_bus; ++ QemuMutex iommu_lock; ++}; ++ ++struct SW64IOMMUClass { ++ SysBusDeviceClass parent; ++ DeviceRealize realize; ++}; ++ ++#define TYPE_SW64_IOMMU "sw64-iommu" ++#define SW64_IOMMU(obj) \ ++ OBJECT_CHECK(SW64IOMMUState, (obj), TYPE_SW64_IOMMU) ++#define SW64_IOMMU_CLASS(klass) \ ++ OBJECT_CLASS_CHECK(SW64IOMMUClass, (klass), TYPE_SW64_IOMMU) ++#define SW64_IOMMU_GET_CLASS(obj) \ ++ OBJECT_GET_CLASS(SW64IOMMUClass, (obj), TYPE_SW64_IOMMU) ++extern void sw64_vt_iommu_init(PCIBus *b); ++extern void swvt_address_space_invalidate_iova(SW64IOMMUState *s, unsigned long val); ++extern void swvt_address_space_unmap_iova(SW64IOMMUState *s, unsigned long val); ++extern void swvt_address_space_map_iova(SW64IOMMUState *s, unsigned long val); ++extern SWVTAddressSpace *iommu_find_add_as(SW64IOMMUState *s, PCIBus *bus, int devfn); ++extern MemTxResult msi_write(void *opaque, hwaddr addr, uint64_t value, unsigned size, ++ MemTxAttrs attrs); ++#endif +diff --git a/include/qemu/atomic.h b/include/qemu/atomic.h +index 112a29910b..6141122308 100644 +--- a/include/qemu/atomic.h ++++ b/include/qemu/atomic.h +@@ -85,6 +85,8 @@ + #define smp_read_barrier_depends() ({ barrier(); __atomic_thread_fence(__ATOMIC_CONSUME); }) + #elif defined(__alpha__) + #define smp_read_barrier_depends() asm volatile("mb":::"memory") ++#elif defined(__sw_64__) ++#define smp_read_barrier_depends() asm volatile("memb":::"memory") + #else + #define smp_read_barrier_depends() barrier() + #endif +diff --git a/include/qemu/timer.h b/include/qemu/timer.h +index d263fad9a4..e6d442abee 100644 +--- a/include/qemu/timer.h ++++ b/include/qemu/timer.h +@@ -1007,6 +1007,16 @@ static inline int64_t cpu_get_host_ticks(void) + return cur - ofs; + } + ++#elif defined(__sw_64__) ++ ++static inline int64_t cpu_get_host_ticks(void) ++{ ++ uint64_t cc; ++ ++ asm volatile("rtc %0" : "=r"(cc)); ++ return cc; ++} ++ + #else + /* The host CPU doesn't have an easily accessible cycle counter. + Just return a monotonically increasing value. This will be +diff --git a/include/sysemu/arch_init.h b/include/sysemu/arch_init.h +index 70c579560a..1cf27baa7c 100644 +--- a/include/sysemu/arch_init.h ++++ b/include/sysemu/arch_init.h +@@ -24,6 +24,7 @@ enum { + QEMU_ARCH_RX = (1 << 20), + QEMU_ARCH_AVR = (1 << 21), + QEMU_ARCH_HEXAGON = (1 << 22), ++ QEMU_ARCH_SW64 = (1 << 23), + }; + + extern const uint32_t arch_type; +diff --git a/linux-headers/asm-sw64/kvm.h b/linux-headers/asm-sw64/kvm.h +new file mode 100644 +index 0000000000..b0ce2ca346 +--- /dev/null ++++ b/linux-headers/asm-sw64/kvm.h +@@ -0,0 +1,122 @@ ++#ifndef __LINUX_KVM_SW64_H ++#define __LINUX_KVM_SW64_H ++ ++#include ++/* ++ * for KVM_GET_REGS and KVM_SET_REGS ++ */ ++struct kvm_regs { ++ unsigned long r0; ++ unsigned long r1; ++ unsigned long r2; ++ unsigned long r3; ++ ++ unsigned long r4; ++ unsigned long r5; ++ unsigned long r6; ++ unsigned long r7; ++ ++ unsigned long r8; ++ unsigned long r9; ++ unsigned long r10; ++ unsigned long r11; ++ ++ unsigned long r12; ++ unsigned long r13; ++ unsigned long r14; ++ unsigned long r15; ++ ++ unsigned long r19; ++ unsigned long r20; ++ unsigned long r21; ++ unsigned long r22; ++ ++ unsigned long r23; ++ unsigned long r24; ++ unsigned long r25; ++ unsigned long r26; ++ ++ unsigned long r27; ++ unsigned long r28; ++ unsigned long __padding0; ++ unsigned long fpcr; ++ ++ unsigned long fp[124]; ++ /* These are saved by hmcode: */ ++ unsigned long ps; ++ unsigned long pc; ++ unsigned long gp; ++ unsigned long r16; ++ unsigned long r17; ++ unsigned long r18; ++}; ++ ++struct vcpucb { ++ unsigned long go_flag; ++ unsigned long pcbb; ++ unsigned long ksp; ++ unsigned long usp; ++ unsigned long kgp; ++ unsigned long ent_arith; ++ unsigned long ent_if; ++ unsigned long ent_int; ++ unsigned long ent_mm; ++ unsigned long ent_sys; ++ unsigned long ent_una; ++ unsigned long stack_pc; ++ unsigned long new_a0; ++ unsigned long new_a1; ++ unsigned long new_a2; ++ unsigned long whami; ++ unsigned long csr_save; ++ unsigned long wakeup_magic; ++ unsigned long host_vcpucb; ++ unsigned long upcr; ++ unsigned long vpcr; ++ unsigned long dtb_pcr; ++ unsigned long guest_ksp; ++ unsigned long guest_usp; ++ unsigned long vcpu_irq_disabled; ++ unsigned long vcpu_irq; ++ unsigned long ptbr; ++ unsigned long int_stat0; ++ unsigned long int_stat1; ++ unsigned long int_stat2; ++ unsigned long int_stat3; ++ unsigned long reset_entry; ++ unsigned long pvcpu; ++ unsigned long exit_reason; ++ unsigned long ipaddr; ++ unsigned long vcpu_irq_vector; ++}; ++ ++/* ++ * for KVM_GET_FPU and KVM_SET_FPU ++ */ ++struct kvm_fpu { ++}; ++ ++/* ++ * KVM SW_64 specific structures and definitions ++ */ ++struct kvm_debug_exit_arch { ++}; ++ ++/* for KVM_SET_GUEST_DEBUG */ ++struct kvm_guest_debug_arch { ++}; ++ ++/* definition of registers in kvm_run */ ++struct kvm_sync_regs { ++}; ++ ++/* dummy definition */ ++struct kvm_sregs { ++}; ++ ++#define KVM_SW64_VCPU_INIT _IO(KVMIO, 0xba) ++#define KVM_SW64_USE_SLAVE _IO(KVMIO, 0xbb) ++#define KVM_SW64_GET_VCB _IO(KVMIO, 0xbc) ++#define KVM_SW64_SET_VCB _IO(KVMIO, 0xbd) ++ ++#endif /* __LINUX_KVM_SW64_H */ +diff --git a/linux-headers/asm-sw64/unistd.h b/linux-headers/asm-sw64/unistd.h +new file mode 100644 +index 0000000000..affe297e73 +--- /dev/null ++++ b/linux-headers/asm-sw64/unistd.h +@@ -0,0 +1,380 @@ ++#ifndef _UAPI_ASM_SW64_UNISTD_64_H ++#define _UAPI_ASM_SW64_UNISTD_64_H ++ ++#define __NR_exit 1 ++#define __NR_fork 2 ++#define __NR_read 3 ++#define __NR_write 4 ++#define __NR_close 6 ++#define __NR_osf_wait4 7 ++#define __NR_link 9 ++#define __NR_unlink 10 ++#define __NR_chdir 12 ++#define __NR_fchdir 13 ++#define __NR_mknod 14 ++#define __NR_chmod 15 ++#define __NR_chown 16 ++#define __NR_brk 17 ++#define __NR_lseek 19 ++#define __NR_getxpid 20 ++#define __NR_osf_mount 21 ++#define __NR_umount2 22 ++#define __NR_setuid 23 ++#define __NR_getxuid 24 ++#define __NR_ptrace 26 ++#define __NR_access 33 ++#define __NR_sync 36 ++#define __NR_kill 37 ++#define __NR_setpgid 39 ++#define __NR_dup 41 ++#define __NR_pipe 42 ++#define __NR_osf_set_program_attributes 43 ++#define __NR_open 45 ++#define __NR_getxgid 47 ++#define __NR_osf_sigprocmask 48 ++#define __NR_acct 51 ++#define __NR_sigpending 52 ++#define __NR_ioctl 54 ++#define __NR_symlink 57 ++#define __NR_readlink 58 ++#define __NR_execve 59 ++#define __NR_umask 60 ++#define __NR_chroot 61 ++#define __NR_getpgrp 63 ++#define __NR_getpagesize 64 ++#define __NR_vfork 66 ++#define __NR_stat 67 ++#define __NR_lstat 68 ++#define __NR_mmap 71 ++#define __NR_munmap 73 ++#define __NR_mprotect 74 ++#define __NR_madvise 75 ++#define __NR_vhangup 76 ++#define __NR_getgroups 79 ++#define __NR_setgroups 80 ++#define __NR_setpgrp 82 ++#define __NR_osf_setitimer 83 ++#define __NR_osf_getitimer 86 ++#define __NR_gethostname 87 ++#define __NR_sethostname 88 ++#define __NR_getdtablesize 89 ++#define __NR_dup2 90 ++#define __NR_fstat 91 ++#define __NR_fcntl 92 ++#define __NR_osf_select 93 ++#define __NR_poll 94 ++#define __NR_fsync 95 ++#define __NR_setpriority 96 ++#define __NR_socket 97 ++#define __NR_connect 98 ++#define __NR_accept 99 ++#define __NR_getpriority 100 ++#define __NR_send 101 ++#define __NR_recv 102 ++#define __NR_sigreturn 103 ++#define __NR_bind 104 ++#define __NR_setsockopt 105 ++#define __NR_listen 106 ++#define __NR_sigsuspend 111 ++#define __NR_osf_sigstack 112 ++#define __NR_recvmsg 113 ++#define __NR_sendmsg 114 ++#define __NR_osf_gettimeofday 116 ++#define __NR_osf_getrusage 117 ++#define __NR_getsockopt 118 ++#define __NR_socketcall 119 ++#define __NR_readv 120 ++#define __NR_writev 121 ++#define __NR_osf_settimeofday 122 ++#define __NR_fchown 123 ++#define __NR_fchmod 124 ++#define __NR_recvfrom 125 ++#define __NR_setreuid 126 ++#define __NR_setregid 127 ++#define __NR_rename 128 ++#define __NR_truncate 129 ++#define __NR_ftruncate 130 ++#define __NR_flock 131 ++#define __NR_setgid 132 ++#define __NR_sendto 133 ++#define __NR_shutdown 134 ++#define __NR_socketpair 135 ++#define __NR_mkdir 136 ++#define __NR_rmdir 137 ++#define __NR_osf_utimes 138 ++#define __NR_getpeername 141 ++#define __NR_getrlimit 144 ++#define __NR_setrlimit 145 ++#define __NR_setsid 147 ++#define __NR_quotactl 148 ++#define __NR_getsockname 150 ++#define __NR_sigaction 156 ++#define __NR_osf_getdirentries 159 ++#define __NR_osf_statfs 160 ++#define __NR_osf_fstatfs 161 ++#define __NR_osf_getdomainname 165 ++#define __NR_setdomainname 166 ++#define __NR_bpf 170 ++#define __NR_userfaultfd 171 ++#define __NR_membarrier 172 ++#define __NR_mlock2 173 ++#define __NR_getpid 174 ++#define __NR_getppid 175 ++#define __NR_getuid 176 ++#define __NR_geteuid 177 ++#define __NR_getgid 178 ++#define __NR_getegid 179 ++#define __NR_osf_swapon 199 ++#define __NR_msgctl 200 ++#define __NR_msgget 201 ++#define __NR_msgrcv 202 ++#define __NR_msgsnd 203 ++#define __NR_semctl 204 ++#define __NR_semget 205 ++#define __NR_semop 206 ++#define __NR_osf_utsname 207 ++#define __NR_lchown 208 ++#define __NR_shmat 209 ++#define __NR_shmctl 210 ++#define __NR_shmdt 211 ++#define __NR_shmget 212 ++#define __NR_msync 217 ++#define __NR_osf_stat 224 ++#define __NR_osf_lstat 225 ++#define __NR_osf_fstat 226 ++#define __NR_osf_statfs64 227 ++#define __NR_osf_fstatfs64 228 ++#define __NR_statfs64 229 ++#define __NR_fstatfs64 230 ++#define __NR_getpgid 233 ++#define __NR_getsid 234 ++#define __NR_sigaltstack 235 ++#define __NR_osf_sysinfo 241 ++#define __NR_osf_proplist_syscall 244 ++#define __NR_osf_usleep_thread 251 ++#define __NR_sysfs 254 ++#define __NR_osf_getsysinfo 256 ++#define __NR_osf_setsysinfo 257 ++#define __NR_bdflush 300 ++#define __NR_sethae 301 ++#define __NR_mount 302 ++#define __NR_old_adjtimex 303 ++#define __NR_swapoff 304 ++#define __NR_getdents 305 ++#define __NR_create_module 306 ++#define __NR_init_module 307 ++#define __NR_delete_module 308 ++#define __NR_get_kernel_syms 309 ++#define __NR_syslog 310 ++#define __NR_reboot 311 ++#define __NR_clone 312 ++#define __NR_uselib 313 ++#define __NR_mlock 314 ++#define __NR_munlock 315 ++#define __NR_mlockall 316 ++#define __NR_munlockall 317 ++#define __NR_sysinfo 318 ++#define __NR__sysctl 319 ++#define __NR_oldumount 321 ++#define __NR_swapon 322 ++#define __NR_times 323 ++#define __NR_personality 324 ++#define __NR_setfsuid 325 ++#define __NR_setfsgid 326 ++#define __NR_ustat 327 ++#define __NR_statfs 328 ++#define __NR_fstatfs 329 ++#define __NR_sched_setparam 330 ++#define __NR_sched_getparam 331 ++#define __NR_sched_setscheduler 332 ++#define __NR_sched_getscheduler 333 ++#define __NR_sched_yield 334 ++#define __NR_sched_get_priority_max 335 ++#define __NR_sched_get_priority_min 336 ++#define __NR_sched_rr_get_interval 337 ++#define __NR_afs_syscall 338 ++#define __NR_uname 339 ++#define __NR_nanosleep 340 ++#define __NR_mremap 341 ++#define __NR_nfsservctl 342 ++#define __NR_setresuid 343 ++#define __NR_getresuid 344 ++#define __NR_pciconfig_read 345 ++#define __NR_pciconfig_write 346 ++#define __NR_query_module 347 ++#define __NR_prctl 348 ++#define __NR_pread64 349 ++#define __NR_pwrite64 350 ++#define __NR_rt_sigreturn 351 ++#define __NR_rt_sigaction 352 ++#define __NR_rt_sigprocmask 353 ++#define __NR_rt_sigpending 354 ++#define __NR_rt_sigtimedwait 355 ++#define __NR_rt_sigqueueinfo 356 ++#define __NR_rt_sigsuspend 357 ++#define __NR_select 358 ++#define __NR_gettimeofday 359 ++#define __NR_settimeofday 360 ++#define __NR_getitimer 361 ++#define __NR_setitimer 362 ++#define __NR_utimes 363 ++#define __NR_getrusage 364 ++#define __NR_wait4 365 ++#define __NR_adjtimex 366 ++#define __NR_getcwd 367 ++#define __NR_capget 368 ++#define __NR_capset 369 ++#define __NR_sendfile 370 ++#define __NR_setresgid 371 ++#define __NR_getresgid 372 ++#define __NR_dipc 373 ++#define __NR_pivot_root 374 ++#define __NR_mincore 375 ++#define __NR_pciconfig_iobase 376 ++#define __NR_getdents64 377 ++#define __NR_gettid 378 ++#define __NR_readahead 379 ++#define __NR_tkill 381 ++#define __NR_setxattr 382 ++#define __NR_lsetxattr 383 ++#define __NR_fsetxattr 384 ++#define __NR_getxattr 385 ++#define __NR_lgetxattr 386 ++#define __NR_fgetxattr 387 ++#define __NR_listxattr 388 ++#define __NR_llistxattr 389 ++#define __NR_flistxattr 390 ++#define __NR_removexattr 391 ++#define __NR_lremovexattr 392 ++#define __NR_fremovexattr 393 ++#define __NR_futex 394 ++#define __NR_sched_setaffinity 395 ++#define __NR_sched_getaffinity 396 ++#define __NR_tuxcall 397 ++#define __NR_io_setup 398 ++#define __NR_io_destroy 399 ++#define __NR_io_getevents 400 ++#define __NR_io_submit 401 ++#define __NR_io_cancel 402 ++#define __NR_io_pgetevents 403 ++#define __NR_rseq 404 ++#define __NR_exit_group 405 ++#define __NR_lookup_dcookie 406 ++#define __NR_epoll_create 407 ++#define __NR_epoll_ctl 408 ++#define __NR_epoll_wait 409 ++#define __NR_remap_file_pages 410 ++#define __NR_set_tid_address 411 ++#define __NR_restart_syscall 412 ++#define __NR_fadvise64 413 ++#define __NR_timer_create 414 ++#define __NR_timer_settime 415 ++#define __NR_timer_gettime 416 ++#define __NR_timer_getoverrun 417 ++#define __NR_timer_delete 418 ++#define __NR_clock_settime 419 ++#define __NR_clock_gettime 420 ++#define __NR_clock_getres 421 ++#define __NR_clock_nanosleep 422 ++#define __NR_semtimedop 423 ++#define __NR_tgkill 424 ++#define __NR_stat64 425 ++#define __NR_lstat64 426 ++#define __NR_fstat64 427 ++#define __NR_vserver 428 ++#define __NR_mbind 429 ++#define __NR_get_mempolicy 430 ++#define __NR_set_mempolicy 431 ++#define __NR_mq_open 432 ++#define __NR_mq_unlink 433 ++#define __NR_mq_timedsend 434 ++#define __NR_mq_timedreceive 435 ++#define __NR_mq_notify 436 ++#define __NR_mq_getsetattr 437 ++#define __NR_waitid 438 ++#define __NR_add_key 439 ++#define __NR_request_key 440 ++#define __NR_keyctl 441 ++#define __NR_ioprio_set 442 ++#define __NR_ioprio_get 443 ++#define __NR_inotify_init 444 ++#define __NR_inotify_add_watch 445 ++#define __NR_inotify_rm_watch 446 ++#define __NR_fdatasync 447 ++#define __NR_kexec_load 448 ++#define __NR_migrate_pages 449 ++#define __NR_openat 450 ++#define __NR_mkdirat 451 ++#define __NR_mknodat 452 ++#define __NR_fchownat 453 ++#define __NR_futimesat 454 ++#define __NR_fstatat64 455 ++#define __NR_unlinkat 456 ++#define __NR_renameat 457 ++#define __NR_linkat 458 ++#define __NR_symlinkat 459 ++#define __NR_readlinkat 460 ++#define __NR_fchmodat 461 ++#define __NR_faccessat 462 ++#define __NR_pselect6 463 ++#define __NR_ppoll 464 ++#define __NR_unshare 465 ++#define __NR_set_robust_list 466 ++#define __NR_get_robust_list 467 ++#define __NR_splice 468 ++#define __NR_sync_file_range 469 ++#define __NR_tee 470 ++#define __NR_vmsplice 471 ++#define __NR_move_pages 472 ++#define __NR_getcpu 473 ++#define __NR_epoll_pwait 474 ++#define __NR_utimensat 475 ++#define __NR_signalfd 476 ++#define __NR_timerfd 477 ++#define __NR_eventfd 478 ++#define __NR_recvmmsg 479 ++#define __NR_fallocate 480 ++#define __NR_timerfd_create 481 ++#define __NR_timerfd_settime 482 ++#define __NR_timerfd_gettime 483 ++#define __NR_signalfd4 484 ++#define __NR_eventfd2 485 ++#define __NR_epoll_create1 486 ++#define __NR_dup3 487 ++#define __NR_pipe2 488 ++#define __NR_inotify_init1 489 ++#define __NR_preadv 490 ++#define __NR_pwritev 491 ++#define __NR_rt_tgsigqueueinfo 492 ++#define __NR_perf_event_open 493 ++#define __NR_fanotify_init 494 ++#define __NR_fanotify_mark 495 ++#define __NR_prlimit64 496 ++#define __NR_name_to_handle_at 497 ++#define __NR_open_by_handle_at 498 ++#define __NR_clock_adjtime 499 ++#define __NR_syncfs 500 ++#define __NR_setns 501 ++#define __NR_accept4 502 ++#define __NR_sendmmsg 503 ++#define __NR_process_vm_readv 504 ++#define __NR_process_vm_writev 505 ++#define __NR_kcmp 506 ++#define __NR_finit_module 507 ++#define __NR_sched_setattr 508 ++#define __NR_sched_getattr 509 ++#define __NR_renameat2 510 ++#define __NR_getrandom 511 ++#define __NR_memfd_create 512 ++#define __NR_execveat 513 ++#define __NR_seccomp 514 ++#define __NR_copy_file_range 515 ++#define __NR_preadv2 516 ++#define __NR_pwritev2 517 ++#define __NR_statx 518 ++ ++#ifdef __KERNEL__ ++#define __NR_syscalls 519 ++#endif ++ ++#endif /* _UAPI_ASM_SW64_UNISTD_64_H */ +diff --git a/linux-user/meson.build b/linux-user/meson.build +index bf62c13e37..4f4196ed13 100644 +--- a/linux-user/meson.build ++++ b/linux-user/meson.build +@@ -37,5 +37,6 @@ subdir('ppc') + subdir('s390x') + subdir('sh4') + subdir('sparc') ++subdir('sw64') + subdir('x86_64') + subdir('xtensa') +diff --git a/linux-user/sw64/cpu_loop.c b/linux-user/sw64/cpu_loop.c +new file mode 100644 +index 0000000000..3f2fde0fba +--- /dev/null ++++ b/linux-user/sw64/cpu_loop.c +@@ -0,0 +1,108 @@ ++/* ++ * qemu user cpu loop ++ * ++ * Copyright (c) 2003-2008 Fabrice Bellard ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, see . ++ */ ++ ++#include "qemu/osdep.h" ++#include "qemu.h" ++#include "cpu_loop-common.h" ++ ++void cpu_loop(CPUSW64State *env) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ int trapnr; ++ target_siginfo_t info; ++ abi_long sysret; ++ ++ while (1) { ++ cpu_exec_start(cs); ++ trapnr = cpu_exec(cs); ++ cpu_exec_end(cs); ++ process_queued_cpu_work(cs); ++ ++ switch (trapnr) { ++ case EXCP_OPCDEC: ++ cpu_abort(cs, "ILLEGAL SW64 insn at line %d!", __LINE__); ++ case EXCP_CALL_SYS: ++ switch (env->error_code) { ++ case 0x83: ++ /* CALLSYS */ ++ trapnr = env->ir[IDX_V0]; ++ sysret = do_syscall(env, trapnr, ++ env->ir[IDX_A0], env->ir[IDX_A1], ++ env->ir[IDX_A2], env->ir[IDX_A3], ++ env->ir[IDX_A4], env->ir[IDX_A5], ++ 0, 0); ++ if (sysret == -TARGET_ERESTARTSYS) { ++ env->pc -= 4; ++ break; ++ } ++ if (sysret == -TARGET_QEMU_ESIGRETURN) { ++ break; ++ } ++ /* Syscall writes 0 to V0 to bypass error check, similar ++ to how this is handled internal to Linux kernel. ++ (Ab)use trapnr temporarily as boolean indicating error. */ ++ trapnr = (env->ir[IDX_V0] != 0 && sysret < 0); ++ env->ir[IDX_V0] = (trapnr ? -sysret : sysret); ++ env->ir[IDX_A3] = trapnr; ++ break; ++ default: ++ printf("UNDO sys_call %lx\n", env->error_code); ++ exit(-1); ++ } ++ break; ++ case EXCP_MMFAULT: ++ info.si_signo = TARGET_SIGSEGV; ++ info.si_errno = 0; ++ info.si_code = (page_get_flags(env->trap_arg0) & PAGE_VALID ++ ? TARGET_SEGV_ACCERR : TARGET_SEGV_MAPERR); ++ info._sifields._sigfault._addr = env->trap_arg0; ++ queue_signal(env, info.si_signo, QEMU_SI_FAULT, &info); ++ break; ++ case EXCP_ARITH: ++ info.si_signo = TARGET_SIGFPE; ++ info.si_errno = 0; ++ info.si_code = TARGET_FPE_FLTINV; ++ info._sifields._sigfault._addr = env->pc; ++ queue_signal(env, info.si_signo, QEMU_SI_FAULT, &info); ++ break; ++ case EXCP_INTERRUPT: ++ /* just indicate that signals should be handled asap */ ++ break; ++ default: ++ cpu_abort(cs, "UNDO"); ++ } ++ process_pending_signals (env); ++ ++ /* Most of the traps imply a transition through HMcode, which ++ implies an REI instruction has been executed. Which means ++ that RX and LOCK_ADDR should be cleared. But there are a ++ few exceptions for traps internal to QEMU. */ ++ } ++} ++ ++void target_cpu_copy_regs(CPUArchState *env, struct target_pt_regs *regs) ++{ ++ int i; ++ ++ for(i = 0; i < 28; i++) { ++ env->ir[i] = ((abi_ulong *)regs)[i]; ++ } ++ env->ir[IDX_SP] = regs->usp; ++ env->pc = regs->pc; ++} +diff --git a/linux-user/sw64/signal.c b/linux-user/sw64/signal.c +new file mode 100644 +index 0000000000..5822e808d3 +--- /dev/null ++++ b/linux-user/sw64/signal.c +@@ -0,0 +1,273 @@ ++/* ++ * Emulation of Linux signals ++ * ++ * Copyright (c) 2003 Fabrice Bellard ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, see . ++ */ ++#include "qemu/osdep.h" ++#include "qemu.h" ++#include "signal-common.h" ++#include "linux-user/trace.h" ++ ++struct target_sigcontext { ++ abi_long sc_onstack; ++ abi_long sc_mask; ++ abi_long sc_pc; ++ abi_long sc_ps; ++ abi_long sc_regs[32]; ++ abi_long sc_ownedfp; ++ abi_long sc_fpregs[32]; ++ abi_ulong sc_fpcr; ++ abi_ulong sc_fp_control; ++ abi_ulong sc_reserved1; ++ abi_ulong sc_reserved2; ++ abi_ulong sc_ssize; ++ abi_ulong sc_sbase; ++ abi_ulong sc_traparg_a0; ++ abi_ulong sc_traparg_a1; ++ abi_ulong sc_traparg_a2; ++ abi_ulong sc_fp_trap_pc; ++ abi_ulong sc_fp_trigger_sum; ++ abi_ulong sc_fp_trigger_inst; ++}; ++ ++struct target_ucontext { ++ abi_ulong tuc_flags; ++ abi_ulong tuc_link; ++ abi_ulong tuc_osf_sigmask; ++ target_stack_t tuc_stack; ++ struct target_sigcontext tuc_mcontext; ++ target_sigset_t tuc_sigmask; ++}; ++ ++struct target_sigframe { ++ struct target_sigcontext sc; ++ unsigned int retcode[3]; ++}; ++ ++struct target_rt_sigframe { ++ target_siginfo_t info; ++ struct target_ucontext uc; ++ unsigned int retcode[3]; ++}; ++ ++#define INSN_MOV_R30_R16 0x47fe0410 ++#define INSN_LDI_R0 0x201f0000 ++#define INSN_CALLSYS 0x00000083 ++ ++static void setup_sigcontext(struct target_sigcontext *sc, CPUSW64State *env, ++ abi_ulong frame_addr, target_sigset_t *set) ++{ ++ int i; ++ ++ __put_user(on_sig_stack(frame_addr), &sc->sc_onstack); ++ __put_user(set->sig[0], &sc->sc_mask); ++ __put_user(env->pc, &sc->sc_pc); ++ __put_user(8, &sc->sc_ps); ++ ++ for (i = 0; i < 31; ++i) { ++ __put_user(env->ir[i], &sc->sc_regs[i]); ++ } ++ __put_user(0, &sc->sc_regs[31]); ++ ++ for (i = 0; i < 31; ++i) { ++ __put_user(env->fr[i], &sc->sc_fpregs[i]); ++ } ++ __put_user(0, &sc->sc_fpregs[31]); ++ __put_user(cpu_sw64_load_fpcr(env), &sc->sc_fpcr); ++ ++ __put_user(0, &sc->sc_traparg_a0); /* FIXME */ ++ __put_user(0, &sc->sc_traparg_a1); /* FIXME */ ++ __put_user(0, &sc->sc_traparg_a2); /* FIXME */ ++} ++ ++static void restore_sigcontext(CPUSW64State *env, ++ struct target_sigcontext *sc) ++{ ++ uint64_t fpcr; ++ int i; ++ ++ __get_user(env->pc, &sc->sc_pc); ++ ++ for (i = 0; i < 31; ++i) { ++ __get_user(env->ir[i], &sc->sc_regs[i]); ++ } ++ for (i = 0; i < 31; ++i) { ++ __get_user(env->fr[i], &sc->sc_fpregs[i]); ++ } ++ ++ __get_user(fpcr, &sc->sc_fpcr); ++ cpu_sw64_store_fpcr(env, fpcr); ++} ++ ++static inline abi_ulong get_sigframe(struct target_sigaction *sa, ++ CPUSW64State *env, ++ unsigned long framesize) ++{ ++ abi_ulong sp; ++ ++ sp = target_sigsp(get_sp_from_cpustate(env), sa); ++ ++ return (sp - framesize) & -32; ++} ++ ++void setup_frame(int sig, struct target_sigaction *ka, ++ target_sigset_t *set, CPUSW64State *env) ++{ ++ abi_ulong frame_addr, r26; ++ struct target_sigframe *frame; ++ int err = 0; ++ ++ frame_addr = get_sigframe(ka, env, sizeof(*frame)); ++ trace_user_setup_frame(env, frame_addr); ++ if (!lock_user_struct(VERIFY_WRITE, frame, frame_addr, 0)) { ++ goto give_sigsegv; ++ } ++ ++ setup_sigcontext(&frame->sc, env, frame_addr, set); ++ ++ if (ka->sa_restorer) { ++ r26 = ka->sa_restorer; ++ } else { ++ __put_user(INSN_MOV_R30_R16, &frame->retcode[0]); ++ __put_user(INSN_LDI_R0 + TARGET_NR_sigreturn, ++ &frame->retcode[1]); ++ __put_user(INSN_CALLSYS, &frame->retcode[2]); ++ /* imb() */ ++ r26 = frame_addr + offsetof(struct target_sigframe, retcode); ++ } ++ ++ unlock_user_struct(frame, frame_addr, 1); ++ ++ if (err) { ++give_sigsegv: ++ force_sigsegv(sig); ++ return; ++ } ++ ++ env->ir[IDX_RA] = r26; ++ env->ir[IDX_PV] = env->pc = ka->_sa_handler; ++ env->ir[IDX_A0] = sig; ++ env->ir[IDX_A1] = 0; ++ env->ir[IDX_A2] = frame_addr + offsetof(struct target_sigframe, sc); ++ env->ir[IDX_SP] = frame_addr; ++} ++ ++void setup_rt_frame(int sig, struct target_sigaction *ka, ++ target_siginfo_t *info, ++ target_sigset_t *set, CPUSW64State *env) ++{ ++ abi_ulong frame_addr, r26; ++ struct target_rt_sigframe *frame; ++ int i, err = 0; ++ ++ frame_addr = get_sigframe(ka, env, sizeof(*frame)); ++ trace_user_setup_rt_frame(env, frame_addr); ++ if (!lock_user_struct(VERIFY_WRITE, frame, frame_addr, 0)) { ++ goto give_sigsegv; ++ } ++ ++ tswap_siginfo(&frame->info, info); ++ ++ __put_user(0, &frame->uc.tuc_flags); ++ __put_user(0, &frame->uc.tuc_link); ++ __put_user(set->sig[0], &frame->uc.tuc_osf_sigmask); ++ ++ target_save_altstack(&frame->uc.tuc_stack, env); ++ ++ setup_sigcontext(&frame->uc.tuc_mcontext, env, frame_addr, set); ++ for (i = 0; i < TARGET_NSIG_WORDS; ++i) { ++ __put_user(set->sig[i], &frame->uc.tuc_sigmask.sig[i]); ++ } ++ ++ if (ka->sa_restorer) { ++ r26 = ka->sa_restorer; ++ } else { ++ __put_user(INSN_MOV_R30_R16, &frame->retcode[0]); ++ __put_user(INSN_LDI_R0 + TARGET_NR_rt_sigreturn, ++ &frame->retcode[1]); ++ __put_user(INSN_CALLSYS, &frame->retcode[2]); ++ r26 = frame_addr + offsetof(struct target_sigframe, retcode); ++ } ++ ++ if (err) { ++give_sigsegv: ++ force_sigsegv(sig); ++ return; ++ } ++ ++ env->ir[IDX_RA] = r26; ++ env->ir[IDX_PV] = env->pc = ka->_sa_handler; ++ env->ir[IDX_A0] = sig; ++ env->ir[IDX_A1] = frame_addr + offsetof(struct target_rt_sigframe, info); ++ env->ir[IDX_A2] = frame_addr + offsetof(struct target_rt_sigframe, uc); ++ env->ir[IDX_SP] = frame_addr; ++} ++ ++long do_sigreturn(CPUSW64State *env) ++{ ++ struct target_sigcontext *sc; ++ abi_ulong sc_addr = env->ir[IDX_A0]; ++ target_sigset_t target_set; ++ sigset_t set; ++ ++ if (!lock_user_struct(VERIFY_READ, sc, sc_addr, 1)) { ++ goto badframe; ++ } ++ ++ target_sigemptyset(&target_set); ++ __get_user(target_set.sig[0], &sc->sc_mask); ++ ++ target_to_host_sigset_internal(&set, &target_set); ++ set_sigmask(&set); ++ ++ restore_sigcontext(env, sc); ++ unlock_user_struct(sc, sc_addr, 0); ++ return -TARGET_QEMU_ESIGRETURN; ++ ++badframe: ++ force_sig(TARGET_SIGSEGV); ++ return -TARGET_QEMU_ESIGRETURN; ++} ++ ++long do_rt_sigreturn(CPUSW64State *env) ++{ ++ abi_ulong frame_addr = env->ir[IDX_A0]; ++ struct target_rt_sigframe *frame; ++ sigset_t set; ++ ++ trace_user_do_rt_sigreturn(env, frame_addr); ++ if (!lock_user_struct(VERIFY_READ, frame, frame_addr, 1)) { ++ goto badframe; ++ } ++ target_to_host_sigset(&set, &frame->uc.tuc_sigmask); ++ set_sigmask(&set); ++ ++ restore_sigcontext(env, &frame->uc.tuc_mcontext); ++ if (do_sigaltstack(frame_addr + offsetof(struct target_rt_sigframe, ++ uc.tuc_stack), ++ 0, env->ir[IDX_SP]) == -EFAULT) { ++ goto badframe; ++ } ++ ++ unlock_user_struct(frame, frame_addr, 0); ++ return -TARGET_QEMU_ESIGRETURN; ++ ++ ++badframe: ++ unlock_user_struct(frame, frame_addr, 0); ++ force_sig(TARGET_SIGSEGV); ++ return -TARGET_QEMU_ESIGRETURN; ++} +diff --git a/linux-user/sw64/sockbits.h b/linux-user/sw64/sockbits.h +new file mode 100644 +index 0000000000..0e4c8f012d +--- /dev/null ++++ b/linux-user/sw64/sockbits.h +@@ -0,0 +1 @@ ++#include "../generic/sockbits.h" +diff --git a/linux-user/sw64/syscall_nr.h b/linux-user/sw64/syscall_nr.h +new file mode 100644 +index 0000000000..91737af322 +--- /dev/null ++++ b/linux-user/sw64/syscall_nr.h +@@ -0,0 +1,471 @@ ++/* ++ * This file contains the system call numbers. ++ */ ++#define TARGET_NR_osf_syscall 0 /* not implemented */ ++#define TARGET_NR_exit 1 ++#define TARGET_NR_fork 2 ++#define TARGET_NR_read 3 ++#define TARGET_NR_write 4 ++#define TARGET_NR_osf_old_open 5 /* not implemented */ ++#define TARGET_NR_close 6 ++#define TARGET_NR_osf_wait4 7 ++#define TARGET_NR_osf_old_creat 8 /* not implemented */ ++#define TARGET_NR_link 9 ++#define TARGET_NR_unlink 10 ++#define TARGET_NR_osf_execve 11 /* not implemented */ ++#define TARGET_NR_chdir 12 ++#define TARGET_NR_fchdir 13 ++#define TARGET_NR_mknod 14 ++#define TARGET_NR_chmod 15 ++#define TARGET_NR_chown 16 ++#define TARGET_NR_brk 17 ++#define TARGET_NR_osf_getfsstat 18 /* not implemented */ ++#define TARGET_NR_lseek 19 ++#define TARGET_NR_getxpid 20 ++#define TARGET_NR_osf_mount 21 ++#define TARGET_NR_umount 22 ++#define TARGET_NR_setuid 23 ++#define TARGET_NR_getxuid 24 ++#define TARGET_NR_exec_with_loader 25 /* not implemented */ ++#define TARGET_NR_ptrace 26 ++#define TARGET_NR_osf_nrecvmsg 27 /* not implemented */ ++#define TARGET_NR_osf_nsendmsg 28 /* not implemented */ ++#define TARGET_NR_osf_nrecvfrom 29 /* not implemented */ ++#define TARGET_NR_osf_naccept 30 /* not implemented */ ++#define TARGET_NR_osf_ngetpeername 31 /* not implemented */ ++#define TARGET_NR_osf_ngetsockname 32 /* not implemented */ ++#define TARGET_NR_access 33 ++#define TARGET_NR_osf_chflags 34 /* not implemented */ ++#define TARGET_NR_osf_fchflags 35 /* not implemented */ ++#define TARGET_NR_sync 36 ++#define TARGET_NR_kill 37 ++#define TARGET_NR_osf_old_stat 38 /* not implemented */ ++#define TARGET_NR_setpgid 39 ++#define TARGET_NR_osf_old_lstat 40 /* not implemented */ ++#define TARGET_NR_dup 41 ++#define TARGET_NR_pipe 42 ++#define TARGET_NR_osf_set_program_attributes 43 ++#define TARGET_NR_osf_profil 44 /* not implemented */ ++#define TARGET_NR_open 45 ++#define TARGET_NR_osf_old_sigaction 46 /* not implemented */ ++#define TARGET_NR_getxgid 47 ++#define TARGET_NR_osf_sigprocmask 48 ++#define TARGET_NR_osf_getlogin 49 /* not implemented */ ++#define TARGET_NR_osf_setlogin 50 /* not implemented */ ++#define TARGET_NR_acct 51 ++#define TARGET_NR_sigpending 52 ++ ++#define TARGET_NR_ioctl 54 ++#define TARGET_NR_osf_reboot 55 /* not implemented */ ++#define TARGET_NR_osf_revoke 56 /* not implemented */ ++#define TARGET_NR_symlink 57 ++#define TARGET_NR_readlink 58 ++#define TARGET_NR_execve 59 ++#define TARGET_NR_umask 60 ++#define TARGET_NR_chroot 61 ++#define TARGET_NR_osf_old_fstat 62 /* not implemented */ ++#define TARGET_NR_getpgrp 63 ++#define TARGET_NR_getpagesize 64 ++#define TARGET_NR_osf_mremap 65 /* not implemented */ ++#define TARGET_NR_vfork 66 ++#define TARGET_NR_stat 67 ++#define TARGET_NR_lstat 68 ++#define TARGET_NR_osf_sbrk 69 /* not implemented */ ++#define TARGET_NR_osf_sstk 70 /* not implemented */ ++#define TARGET_NR_mmap 71 /* OSF/1 mmap is superset of Linux */ ++#define TARGET_NR_osf_old_vadvise 72 /* not implemented */ ++#define TARGET_NR_munmap 73 ++#define TARGET_NR_mprotect 74 ++#define TARGET_NR_madvise 75 ++#define TARGET_NR_vhangup 76 ++#define TARGET_NR_osf_kmodcall 77 /* not implemented */ ++#define TARGET_NR_osf_mincore 78 /* not implemented */ ++#define TARGET_NR_getgroups 79 ++#define TARGET_NR_setgroups 80 ++#define TARGET_NR_osf_old_getpgrp 81 /* not implemented */ ++#define TARGET_NR_setpgrp 82 /* BSD alias for setpgid */ ++#define TARGET_NR_osf_setitimer 83 ++#define TARGET_NR_osf_old_wait 84 /* not implemented */ ++#define TARGET_NR_osf_table 85 /* not implemented */ ++#define TARGET_NR_osf_getitimer 86 ++#define TARGET_NR_gethostname 87 ++#define TARGET_NR_sethostname 88 ++#define TARGET_NR_getdtablesize 89 ++#define TARGET_NR_dup2 90 ++#define TARGET_NR_fstat 91 ++#define TARGET_NR_fcntl 92 ++#define TARGET_NR_osf_select 93 ++#define TARGET_NR_poll 94 ++#define TARGET_NR_fsync 95 ++#define TARGET_NR_setpriority 96 ++#define TARGET_NR_socket 97 ++#define TARGET_NR_connect 98 ++#define TARGET_NR_accept 99 ++#define TARGET_NR_getpriority 100 ++#define TARGET_NR_send 101 ++#define TARGET_NR_recv 102 ++#define TARGET_NR_sigreturn 103 ++#define TARGET_NR_bind 104 ++#define TARGET_NR_setsockopt 105 ++#define TARGET_NR_listen 106 ++#define TARGET_NR_osf_plock 107 /* not implemented */ ++#define TARGET_NR_osf_old_sigvec 108 /* not implemented */ ++#define TARGET_NR_osf_old_sigblock 109 /* not implemented */ ++#define TARGET_NR_osf_old_sigsetmask 110 /* not implemented */ ++#define TARGET_NR_sigsuspend 111 ++#define TARGET_NR_osf_sigstack 112 ++#define TARGET_NR_recvmsg 113 ++#define TARGET_NR_sendmsg 114 ++#define TARGET_NR_osf_old_vtrace 115 /* not implemented */ ++#define TARGET_NR_osf_gettimeofday 116 ++#define TARGET_NR_osf_getrusage 117 ++#define TARGET_NR_getsockopt 118 ++ ++#define TARGET_NR_readv 120 ++#define TARGET_NR_writev 121 ++#define TARGET_NR_osf_settimeofday 122 ++#define TARGET_NR_fchown 123 ++#define TARGET_NR_fchmod 124 ++#define TARGET_NR_recvfrom 125 ++#define TARGET_NR_setreuid 126 ++#define TARGET_NR_setregid 127 ++#define TARGET_NR_rename 128 ++#define TARGET_NR_truncate 129 ++#define TARGET_NR_ftruncate 130 ++#define TARGET_NR_flock 131 ++#define TARGET_NR_setgid 132 ++#define TARGET_NR_sendto 133 ++#define TARGET_NR_shutdown 134 ++#define TARGET_NR_socketpair 135 ++#define TARGET_NR_mkdir 136 ++#define TARGET_NR_rmdir 137 ++#define TARGET_NR_osf_utimes 138 ++#define TARGET_NR_osf_old_sigreturn 139 /* not implemented */ ++#define TARGET_NR_osf_adjtime 140 /* not implemented */ ++#define TARGET_NR_getpeername 141 ++#define TARGET_NR_osf_gethostid 142 /* not implemented */ ++#define TARGET_NR_osf_sethostid 143 /* not implemented */ ++#define TARGET_NR_getrlimit 144 ++#define TARGET_NR_setrlimit 145 ++#define TARGET_NR_osf_old_killpg 146 /* not implemented */ ++#define TARGET_NR_setsid 147 ++#define TARGET_NR_quotactl 148 ++#define TARGET_NR_osf_oldquota 149 /* not implemented */ ++#define TARGET_NR_getsockname 150 ++ ++#define TARGET_NR_osf_pid_block 153 /* not implemented */ ++#define TARGET_NR_osf_pid_unblock 154 /* not implemented */ ++ ++#define TARGET_NR_sigaction 156 ++#define TARGET_NR_osf_sigwaitprim 157 /* not implemented */ ++#define TARGET_NR_osf_nfssvc 158 /* not implemented */ ++#define TARGET_NR_osf_getdirentries 159 ++#define TARGET_NR_osf_statfs 160 ++#define TARGET_NR_osf_fstatfs 161 ++ ++#define TARGET_NR_osf_asynch_daemon 163 /* not implemented */ ++#define TARGET_NR_osf_getfh 164 /* not implemented */ ++#define TARGET_NR_osf_getdomainname 165 ++#define TARGET_NR_setdomainname 166 ++ ++#define TARGET_NR_osf_exportfs 169 /* not implemented */ ++ ++#define TARGET_NR_osf_alt_plock 181 /* not implemented */ ++ ++#define TARGET_NR_osf_getmnt 184 /* not implemented */ ++ ++#define TARGET_NR_osf_alt_sigpending 187 /* not implemented */ ++#define TARGET_NR_osf_alt_setsid 188 /* not implemented */ ++ ++#define TARGET_NR_osf_swapon 199 ++#define TARGET_NR_msgctl 200 ++#define TARGET_NR_msgget 201 ++#define TARGET_NR_msgrcv 202 ++#define TARGET_NR_msgsnd 203 ++#define TARGET_NR_semctl 204 ++#define TARGET_NR_semget 205 ++#define TARGET_NR_semop 206 ++#define TARGET_NR_osf_utsname 207 ++#define TARGET_NR_lchown 208 ++#define TARGET_NR_osf_shmat 209 ++#define TARGET_NR_shmctl 210 ++#define TARGET_NR_shmdt 211 ++#define TARGET_NR_shmget 212 ++#define TARGET_NR_osf_mvalid 213 /* not implemented */ ++#define TARGET_NR_osf_getaddressconf 214 /* not implemented */ ++#define TARGET_NR_osf_msleep 215 /* not implemented */ ++#define TARGET_NR_osf_mwakeup 216 /* not implemented */ ++#define TARGET_NR_msync 217 ++#define TARGET_NR_osf_signal 218 /* not implemented */ ++#define TARGET_NR_osf_utc_gettime 219 /* not implemented */ ++#define TARGET_NR_osf_utc_adjtime 220 /* not implemented */ ++ ++#define TARGET_NR_osf_security 222 /* not implemented */ ++#define TARGET_NR_osf_kloadcall 223 /* not implemented */ ++ ++#define TARGET_NR_osf_stat 224 ++#define TARGET_NR_osf_lstat 225 ++#define TARGET_NR_osf_fstat 226 ++#define TARGET_NR_osf_statfs64 227 ++#define TARGET_NR_osf_fstatfs64 228 ++ ++#define TARGET_NR_getpgid 233 ++#define TARGET_NR_getsid 234 ++#define TARGET_NR_sigaltstack 235 ++#define TARGET_NR_osf_waitid 236 /* not implemented */ ++#define TARGET_NR_osf_priocntlset 237 /* not implemented */ ++#define TARGET_NR_osf_sigsendset 238 /* not implemented */ ++#define TARGET_NR_osf_set_speculative 239 /* not implemented */ ++#define TARGET_NR_osf_msfs_syscall 240 /* not implemented */ ++#define TARGET_NR_osf_sysinfo 241 ++#define TARGET_NR_osf_uadmin 242 /* not implemented */ ++#define TARGET_NR_osf_fuser 243 /* not implemented */ ++#define TARGET_NR_osf_proplist_syscall 244 ++#define TARGET_NR_osf_ntp_adjtime 245 /* not implemented */ ++#define TARGET_NR_osf_ntp_gettime 246 /* not implemented */ ++#define TARGET_NR_osf_pathconf 247 /* not implemented */ ++#define TARGET_NR_osf_fpathconf 248 /* not implemented */ ++ ++#define TARGET_NR_osf_uswitch 250 /* not implemented */ ++#define TARGET_NR_osf_usleep_thread 251 ++#define TARGET_NR_osf_audcntl 252 /* not implemented */ ++#define TARGET_NR_osf_audgen 253 /* not implemented */ ++#define TARGET_NR_sysfs 254 ++#define TARGET_NR_osf_subsys_info 255 /* not implemented */ ++#define TARGET_NR_osf_getsysinfo 256 ++#define TARGET_NR_osf_setsysinfo 257 ++#define TARGET_NR_osf_afs_syscall 258 /* not implemented */ ++#define TARGET_NR_osf_swapctl 259 /* not implemented */ ++#define TARGET_NR_osf_memcntl 260 /* not implemented */ ++#define TARGET_NR_osf_fdatasync 261 /* not implemented */ ++ ++/* ++ * Ignore legacy syscalls that we don't use. ++ */ ++#define TARGET_IGNORE_alarm ++#define TARGET_IGNORE_creat ++#define TARGET_IGNORE_getegid ++#define TARGET_IGNORE_geteuid ++#define TARGET_IGNORE_getgid ++#define TARGET_IGNORE_getpid ++#define TARGET_IGNORE_getppid ++#define TARGET_IGNORE_getuid ++#define TARGET_IGNORE_pause ++#define TARGET_IGNORE_time ++#define TARGET_IGNORE_utime ++#define TARGET_IGNORE_umount2 ++ ++/* ++ * Linux-specific system calls begin at 300 ++ */ ++#define TARGET_NR_bdflush 300 ++#define TARGET_NR_sethae 301 ++#define TARGET_NR_mount 302 ++#define TARGET_NR_old_adjtimex 303 ++#define TARGET_NR_swapoff 304 ++#define TARGET_NR_getdents 305 ++#define TARGET_NR_create_module 306 ++#define TARGET_NR_init_module 307 ++#define TARGET_NR_delete_module 308 ++#define TARGET_NR_get_kernel_syms 309 ++#define TARGET_NR_syslog 310 ++#define TARGET_NR_reboot 311 ++#define TARGET_NR_clone 312 ++#define TARGET_NR_uselib 313 ++#define TARGET_NR_mlock 314 ++#define TARGET_NR_munlock 315 ++#define TARGET_NR_mlockall 316 ++#define TARGET_NR_munlockall 317 ++#define TARGET_NR_sysinfo 318 ++#define TARGET_NR__sysctl 319 ++/* 320 was sysTARGETidle. */ ++#define TARGET_NR_oldumount 321 ++#define TARGET_NR_swapon 322 ++#define TARGET_NR_times 323 ++#define TARGET_NR_personality 324 ++#define TARGET_NR_setfsuid 325 ++#define TARGET_NR_setfsgid 326 ++#define TARGET_NR_ustat 327 ++#define TARGET_NR_statfs 328 ++#define TARGET_NR_fstatfs 329 ++#define TARGET_NR_sched_setparam 330 ++#define TARGET_NR_sched_getparam 331 ++#define TARGET_NR_sched_setscheduler 332 ++#define TARGET_NR_sched_getscheduler 333 ++#define TARGET_NR_sched_yield 334 ++#define TARGET_NR_sched_get_priority_max 335 ++#define TARGET_NR_sched_get_priority_min 336 ++#define TARGET_NR_sched_rr_get_interval 337 ++#define TARGET_NR_afs_syscall 338 ++#define TARGET_NR_uname 339 ++#define TARGET_NR_nanosleep 340 ++#define TARGET_NR_mremap 341 ++#define TARGET_NR_nfsservctl 342 ++#define TARGET_NR_setresuid 343 ++#define TARGET_NR_getresuid 344 ++#define TARGET_NR_pciconfig_read 345 ++#define TARGET_NR_pciconfig_write 346 ++#define TARGET_NR_query_module 347 ++#define TARGET_NR_prctl 348 ++#define TARGET_NR_pread64 349 ++#define TARGET_NR_pwrite64 350 ++#define TARGET_NR_rt_sigreturn 351 ++#define TARGET_NR_rt_sigaction 352 ++#define TARGET_NR_rt_sigprocmask 353 ++#define TARGET_NR_rt_sigpending 354 ++#define TARGET_NR_rt_sigtimedwait 355 ++#define TARGET_NR_rt_sigqueueinfo 356 ++#define TARGET_NR_rt_sigsuspend 357 ++#define TARGET_NR_select 358 ++#define TARGET_NR_gettimeofday 359 ++#define TARGET_NR_settimeofday 360 ++#define TARGET_NR_getitimer 361 ++#define TARGET_NR_setitimer 362 ++#define TARGET_NR_utimes 363 ++#define TARGET_NR_getrusage 364 ++#define TARGET_NR_wait4 365 ++#define TARGET_NR_adjtimex 366 ++#define TARGET_NR_getcwd 367 ++#define TARGET_NR_capget 368 ++#define TARGET_NR_capset 369 ++#define TARGET_NR_sendfile 370 ++#define TARGET_NR_setresgid 371 ++#define TARGET_NR_getresgid 372 ++#define TARGET_NR_dipc 373 ++#define TARGET_NR_pivot_root 374 ++#define TARGET_NR_mincore 375 ++#define TARGET_NR_pciconfig_iobase 376 ++#define TARGET_NR_getdents64 377 ++#define TARGET_NR_gettid 378 ++#define TARGET_NR_readahead 379 ++/* 380 is unused */ ++#define TARGET_NR_tkill 381 ++#define TARGET_NR_setxattr 382 ++#define TARGET_NR_lsetxattr 383 ++#define TARGET_NR_fsetxattr 384 ++#define TARGET_NR_getxattr 385 ++#define TARGET_NR_lgetxattr 386 ++#define TARGET_NR_fgetxattr 387 ++#define TARGET_NR_listxattr 388 ++#define TARGET_NR_llistxattr 389 ++#define TARGET_NR_flistxattr 390 ++#define TARGET_NR_removexattr 391 ++#define TARGET_NR_lremovexattr 392 ++#define TARGET_NR_fremovexattr 393 ++#define TARGET_NR_futex 394 ++#define TARGET_NR_sched_setaffinity 395 ++#define TARGET_NR_sched_getaffinity 396 ++#define TARGET_NR_tuxcall 397 ++#define TARGET_NR_io_setup 398 ++#define TARGET_NR_io_destroy 399 ++#define TARGET_NR_io_getevents 400 ++#define TARGET_NR_io_submit 401 ++#define TARGET_NR_io_cancel 402 ++#define TARGET_NR_exit_group 405 ++#define TARGET_NR_lookup_dcookie 406 ++#define TARGET_NR_epoll_create 407 ++#define TARGET_NR_epoll_ctl 408 ++#define TARGET_NR_epoll_wait 409 ++/* Feb 2007: These three sysTARGETepoll defines shouldn't be here but culling ++ * them would break userspace apps ... we'll kill them off in 2010 :) */ ++#define TARGET_NR_sys_epoll_create TARGET_NR_epoll_create ++#define TARGET_NR_sys_epoll_ctl TARGET_NR_epoll_ctl ++#define TARGET_NR_sys_epoll_wait TARGET_NR_epoll_wait ++#define TARGET_NR_remap_file_pages 410 ++#define TARGET_NR_set_tid_address 411 ++#define TARGET_NR_restart_syscall 412 ++#define TARGET_NR_fadvise64 413 ++#define TARGET_NR_timer_create 414 ++#define TARGET_NR_timer_settime 415 ++#define TARGET_NR_timer_gettime 416 ++#define TARGET_NR_timer_getoverrun 417 ++#define TARGET_NR_timer_delete 418 ++#define TARGET_NR_clock_settime 419 ++#define TARGET_NR_clock_gettime 420 ++#define TARGET_NR_clock_getres 421 ++#define TARGET_NR_clock_nanosleep 422 ++#define TARGET_NR_semtimedop 423 ++#define TARGET_NR_tgkill 424 ++#define TARGET_NR_stat64 425 ++#define TARGET_NR_lstat64 426 ++#define TARGET_NR_fstat64 427 ++#define TARGET_NR_vserver 428 ++#define TARGET_NR_mbind 429 ++#define TARGET_NR_get_mempolicy 430 ++#define TARGET_NR_set_mempolicy 431 ++#define TARGET_NR_mq_open 432 ++#define TARGET_NR_mq_unlink 433 ++#define TARGET_NR_mq_timedsend 434 ++#define TARGET_NR_mq_timedreceive 435 ++#define TARGET_NR_mq_notify 436 ++#define TARGET_NR_mq_getsetattr 437 ++#define TARGET_NR_waitid 438 ++#define TARGET_NR_add_key 439 ++#define TARGET_NR_request_key 440 ++#define TARGET_NR_keyctl 441 ++#define TARGET_NR_ioprio_set 442 ++#define TARGET_NR_ioprio_get 443 ++#define TARGET_NR_inotify_init 444 ++#define TARGET_NR_inotify_add_watch 445 ++#define TARGET_NR_inotify_rm_watch 446 ++#define TARGET_NR_fdatasync 447 ++#define TARGET_NR_kexec_load 448 ++#define TARGET_NR_migrate_pages 449 ++#define TARGET_NR_openat 450 ++#define TARGET_NR_mkdirat 451 ++#define TARGET_NR_mknodat 452 ++#define TARGET_NR_fchownat 453 ++#define TARGET_NR_futimesat 454 ++#define TARGET_NR_fstatat64 455 ++#define TARGET_NR_unlinkat 456 ++#define TARGET_NR_renameat 457 ++#define TARGET_NR_linkat 458 ++#define TARGET_NR_symlinkat 459 ++#define TARGET_NR_readlinkat 460 ++#define TARGET_NR_fchmodat 461 ++#define TARGET_NR_faccessat 462 ++#define TARGET_NR_pselect6 463 ++#define TARGET_NR_ppoll 464 ++#define TARGET_NR_unshare 465 ++#define TARGET_NR_set_robust_list 466 ++#define TARGET_NR_get_robust_list 467 ++#define TARGET_NR_splice 468 ++#define TARGET_NR_sync_file_range 469 ++#define TARGET_NR_tee 470 ++#define TARGET_NR_vmsplice 471 ++#define TARGET_NR_move_pages 472 ++#define TARGET_NR_getcpu 473 ++#define TARGET_NR_epoll_pwait 474 ++#define TARGET_NR_utimensat 475 ++#define TARGET_NR_signalfd 476 ++#define TARGET_NR_timerfd 477 ++#define TARGET_NR_eventfd 478 ++#define TARGET_NR_recvmmsg 479 ++#define TARGET_NR_fallocate 480 ++#define TARGET_NR_timerfd_create 481 ++#define TARGET_NR_timerfd_settime 482 ++#define TARGET_NR_timerfd_gettime 483 ++#define TARGET_NR_signalfd4 484 ++#define TARGET_NR_eventfd2 485 ++#define TARGET_NR_epoll_create1 486 ++#define TARGET_NR_dup3 487 ++#define TARGET_NR_pipe2 488 ++#define TARGET_NR_inotify_init1 489 ++#define TARGET_NR_preadv 490 ++#define TARGET_NR_pwritev 491 ++#define TARGET_NR_rt_tgsigqueueinfo 492 ++#define TARGET_NR_perf_event_open 493 ++#define TARGET_NR_fanotify_init 494 ++#define TARGET_NR_fanotify_mark 495 ++#define TARGET_NR_prlimit64 496 ++#define TARGET_NR_name_to_handle_at 497 ++#define TARGET_NR_open_by_handle_at 498 ++#define TARGET_NR_clock_adjtime 499 ++#define TARGET_NR_syncfs 500 ++#define TARGET_NR_setns 501 ++#define TARGET_NR_accept4 502 ++#define TARGET_NR_sendmmsg 503 ++#define TARGET_NR_process_vm_readv 504 ++#define TARGET_NR_process_vm_writev 505 ++#define TARGET_NR_sw_slave_rwperfmons 506 ++#define TARGET_NR_sys_get_vmflags 507 +diff --git a/linux-user/sw64/target_cpu.h b/linux-user/sw64/target_cpu.h +new file mode 100644 +index 0000000000..1b87c8ba6d +--- /dev/null ++++ b/linux-user/sw64/target_cpu.h +@@ -0,0 +1,38 @@ ++/* ++ * SW64 specific CPU ABI and functions for linux-user ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, see . ++ */ ++#ifndef SW64_TARGET_CPU_H ++#define SW64_TARGET_CPU_H ++ ++static inline void cpu_clone_regs(CPUSW64State *env, target_ulong newsp) ++{ ++ if (newsp) { ++ env->ir[IDX_SP] = newsp; ++ } ++ env->ir[IDX_V0] = 0; ++ env->ir[IDX_A3] = 0; ++} ++ ++static inline void cpu_set_tls(CPUSW64State *env, target_ulong newtls) ++{ ++ env->unique = newtls; ++} ++ ++static inline abi_ulong get_sp_from_cpustate(CPUSW64State *state) ++{ ++ return state->ir[IDX_SP]; ++} ++#endif +diff --git a/linux-user/sw64/target_elf.h b/linux-user/sw64/target_elf.h +new file mode 100644 +index 0000000000..be48b6dee3 +--- /dev/null ++++ b/linux-user/sw64/target_elf.h +@@ -0,0 +1,14 @@ ++/* ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation, or (at your option) any ++ * later version. See the COPYING file in the top-level directory. ++ */ ++ ++#ifndef SW64_TARGET_ELF_H ++#define SW64_TARGET_ELF_H ++static inline const char *cpu_get_model(uint32_t eflags) ++{ ++ return "any"; ++} ++#endif +diff --git a/linux-user/sw64/target_fcntl.h b/linux-user/sw64/target_fcntl.h +new file mode 100644 +index 0000000000..9721e3de39 +--- /dev/null ++++ b/linux-user/sw64/target_fcntl.h +@@ -0,0 +1,11 @@ ++/* ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation, or (at your option) any ++ * later version. See the COPYING file in the top-level directory. ++ */ ++ ++#ifndef SW64_TARGET_FCNTL_H ++#define sw64_TARGET_FCNTL_H ++#include "../generic/fcntl.h" ++#endif +diff --git a/linux-user/sw64/target_signal.h b/linux-user/sw64/target_signal.h +new file mode 100644 +index 0000000000..6393a7542f +--- /dev/null ++++ b/linux-user/sw64/target_signal.h +@@ -0,0 +1,98 @@ ++#ifndef SW64_TARGET_SIGNAL_H ++#define SW64_TARGET_SIGNAL_H ++ ++#include "cpu.h" ++ ++#define TARGET_SIGHUP 1 ++#define TARGET_SIGINT 2 ++#define TARGET_SIGQUIT 3 ++#define TARGET_SIGILL 4 ++#define TARGET_SIGTRAP 5 ++#define TARGET_SIGABRT 6 ++#define TARGET_SIGSTKFLT 7 /* actually SIGEMT */ ++#define TARGET_SIGFPE 8 ++#define TARGET_SIGKILL 9 ++#define TARGET_SIGBUS 10 ++#define TARGET_SIGSEGV 11 ++#define TARGET_SIGSYS 12 ++#define TARGET_SIGPIPE 13 ++#define TARGET_SIGALRM 14 ++#define TARGET_SIGTERM 15 ++#define TARGET_SIGURG 16 ++#define TARGET_SIGSTOP 17 ++#define TARGET_SIGTSTP 18 ++#define TARGET_SIGCONT 19 ++#define TARGET_SIGCHLD 20 ++#define TARGET_SIGTTIN 21 ++#define TARGET_SIGTTOU 22 ++#define TARGET_SIGIO 23 ++#define TARGET_SIGXCPU 24 ++#define TARGET_SIGXFSZ 25 ++#define TARGET_SIGVTALRM 26 ++#define TARGET_SIGPROF 27 ++#define TARGET_SIGWINCH 28 ++#define TARGET_SIGPWR 29 /* actually SIGINFO */ ++#define TARGET_SIGUSR1 30 ++#define TARGET_SIGUSR2 31 ++#define TARGET_SIGRTMIN 32 ++ ++#define TARGET_SIG_BLOCK 1 ++#define TARGET_SIG_UNBLOCK 2 ++#define TARGET_SIG_SETMASK 3 ++ ++/* this struct defines a stack used during syscall handling */ ++ ++typedef struct target_sigaltstack { ++ abi_ulong ss_sp; ++ int32_t ss_flags; ++ int32_t dummy; ++ abi_ulong ss_size; ++} target_stack_t; ++ ++ ++/* ++ * sigaltstack controls ++ */ ++#define TARGET_SS_ONSTACK 1 ++#define TARGET_SS_DISABLE 2 ++ ++#define TARGET_SA_ONSTACK 0x00000001 ++#define TARGET_SA_RESTART 0x00000002 ++#define TARGET_SA_NOCLDSTOP 0x00000004 ++#define TARGET_SA_NODEFER 0x00000008 ++#define TARGET_SA_RESETHAND 0x00000010 ++#define TARGET_SA_NOCLDWAIT 0x00000020 /* not supported yet */ ++#define TARGET_SA_SIGINFO 0x00000040 ++ ++#define TARGET_MINSIGSTKSZ 4096 ++#define TARGET_SIGSTKSZ 16384 ++ ++/* From . */ ++#define TARGET_GEN_INTOVF -1 /* integer overflow */ ++#define TARGET_GEN_INTDIV -2 /* integer division by zero */ ++#define TARGET_GEN_FLTOVF -3 /* fp overflow */ ++#define TARGET_GEN_FLTDIV -4 /* fp division by zero */ ++#define TARGET_GEN_FLTUND -5 /* fp underflow */ ++#define TARGET_GEN_FLTINV -6 /* invalid fp operand */ ++#define TARGET_GEN_FLTINE -7 /* inexact fp operand */ ++#define TARGET_GEN_DECOVF -8 /* decimal overflow (for COBOL??) */ ++#define TARGET_GEN_DECDIV -9 /* decimal division by zero */ ++#define TARGET_GEN_DECINV -10 /* invalid decimal operand */ ++#define TARGET_GEN_ROPRAND -11 /* reserved operand */ ++#define TARGET_GEN_ASSERTERR -12 /* assertion error */ ++#define TARGET_GEN_NULPTRERR -13 /* null pointer error */ ++#define TARGET_GEN_STKOVF -14 /* stack overflow */ ++#define TARGET_GEN_STRLENERR -15 /* string length error */ ++#define TARGET_GEN_SUBSTRERR -16 /* substring error */ ++#define TARGET_GEN_RANGERR -17 /* range error */ ++#define TARGET_GEN_SUBRNG -18 ++#define TARGET_GEN_SUBRNG1 -19 ++#define TARGET_GEN_SUBRNG2 -20 ++#define TARGET_GEN_SUBRNG3 -21 ++#define TARGET_GEN_SUBRNG4 -22 ++#define TARGET_GEN_SUBRNG5 -23 ++#define TARGET_GEN_SUBRNG6 -24 ++#define TARGET_GEN_SUBRNG7 -25 ++ ++#define TARGET_ARCH_HAS_SETUP_FRAME ++#endif /* SW64_TARGET_SIGNAL_H */ +diff --git a/linux-user/sw64/target_structs.h b/linux-user/sw64/target_structs.h +new file mode 100644 +index 0000000000..7c13dc4bac +--- /dev/null ++++ b/linux-user/sw64/target_structs.h +@@ -0,0 +1,47 @@ ++/* ++ * SW64 specific structures for linux-user ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ */ ++#ifndef SW64_TARGET_STRUCTS_H ++#define SW64_TARGET_STRUCTS_H ++ ++/* TODO: Maybe it should be update. now it's different from other arch */ ++struct target_ipc_perm { ++ abi_int __key; /* Key. */ ++ abi_uint uid; /* Owner's user ID. */ ++ abi_uint gid; /* Owner's group ID. */ ++ abi_uint cuid; /* Creator's user ID. */ ++ abi_uint cgid; /* Creator's group ID. */ ++ abi_uint mode; /* Read/write permission. */ ++ abi_ushort __seq; /* Sequence number. */ ++ abi_ushort __pad1; ++ abi_ulong __unused1; ++ abi_ulong __unused2; ++}; ++ ++struct target_shmid_ds { ++ struct target_ipc_perm shm_perm; /* operation permission struct */ ++ abi_long shm_segsz; /* size of segment in bytes */ ++ abi_ulong shm_atime; /* time of last shmat() */ ++ abi_ulong shm_dtime; /* time of last shmdt() */ ++ abi_ulong shm_ctime; /* time of last change by shmctl() */ ++ abi_int shm_cpid; /* pid of creator */ ++ abi_int shm_lpid; /* pid of last shmop */ ++ abi_ulong shm_nattch; /* number of current attaches */ ++ abi_ulong __unused1; ++ abi_ulong __unused2; ++}; ++ ++#endif +diff --git a/linux-user/sw64/target_syscall.h b/linux-user/sw64/target_syscall.h +new file mode 100644 +index 0000000000..c901ae95d8 +--- /dev/null ++++ b/linux-user/sw64/target_syscall.h +@@ -0,0 +1,121 @@ ++#ifndef SW64_TARGET_SYSCALL_H ++#define SW64_TARGET_SYSCALL_H ++ ++/* TODO */ ++struct target_pt_regs { ++ abi_ulong r0; ++ abi_ulong r1; ++ abi_ulong r2; ++ abi_ulong r3; ++ abi_ulong r4; ++ abi_ulong r5; ++ abi_ulong r6; ++ abi_ulong r7; ++ abi_ulong r8; ++ abi_ulong r19; ++ abi_ulong r20; ++ abi_ulong r21; ++ abi_ulong r22; ++ abi_ulong r23; ++ abi_ulong r24; ++ abi_ulong r25; ++ abi_ulong r26; ++ abi_ulong r27; ++ abi_ulong r28; ++ abi_ulong hae; ++/* JRP - These are the values provided to a0-a2 by HMcode */ ++ abi_ulong trap_a0; ++ abi_ulong trap_a1; ++ abi_ulong trap_a2; ++/* These are saved by HMcode: */ ++ abi_ulong ps; ++ abi_ulong pc; ++ abi_ulong gp; ++ abi_ulong r16; ++ abi_ulong r17; ++ abi_ulong r18; ++}; ++ ++#define TARGET_MLOCKALL_MCL_CURRENT 0x2000 ++#define TARGET_MLOCKALL_MCL_FUTURE 0x4000 ++ ++ ++#define UNAME_MACHINE "sw64" ++#define UNAME_MINIMUM_RELEASE "2.6.32" ++#undef TARGET_EOPNOTSUPP ++#define TARGET_EOPNOTSUPP 45 /* Operation not supported on transport endpoint */ ++#define SWCR_STATUS_INV0 (1UL<<17) ++#define SWCR_STATUS_DZE0 (1UL<<18) ++#define SWCR_STATUS_OVF0 (1UL<<19) ++#define SWCR_STATUS_UNF0 (1UL<<20) ++#define SWCR_STATUS_INE0 (1UL<<21) ++#define SWCR_STATUS_DNO0 (1UL<<22) ++ ++#define SWCR_STATUS_MASK0 (SWCR_STATUS_INV0 | SWCR_STATUS_DZE0 | \ ++ SWCR_STATUS_OVF0 | SWCR_STATUS_UNF0 | \ ++ SWCR_STATUS_INE0 | SWCR_STATUS_DNO0) ++ ++#define SWCR_STATUS0_TO_EXCSUM_SHIFT 16 ++ ++#define SWCR_STATUS_INV1 (1UL<<23) ++#define SWCR_STATUS_DZE1 (1UL<<24) ++#define SWCR_STATUS_OVF1 (1UL<<25) ++#define SWCR_STATUS_UNF1 (1UL<<26) ++#define SWCR_STATUS_INE1 (1UL<<27) ++#define SWCR_STATUS_DNO1 (1UL<<28) ++ ++#define SWCR_STATUS_MASK1 (SWCR_STATUS_INV1 | SWCR_STATUS_DZE1 | \ ++ SWCR_STATUS_OVF1 | SWCR_STATUS_UNF1 | \ ++ SWCR_STATUS_INE1 | SWCR_STATUS_DNO1) ++ ++#define SWCR_STATUS1_TO_EXCSUM_SHIFT 22 ++#define SWCR_STATUS_INV2 (1UL<<34) ++#define SWCR_STATUS_DZE2 (1UL<<35) ++#define SWCR_STATUS_OVF2 (1UL<<36) ++#define SWCR_STATUS_UNF2 (1UL<<37) ++#define SWCR_STATUS_INE2 (1UL<<38) ++#define SWCR_STATUS_DNO2 (1UL<<39) ++ ++#define SWCR_STATUS_MASK2 (SWCR_STATUS_INV2 | SWCR_STATUS_DZE2 | \ ++ SWCR_STATUS_OVF2 | SWCR_STATUS_UNF2 | \ ++ SWCR_STATUS_INE2 | SWCR_STATUS_DNO2) ++#define SWCR_STATUS_INV3 (1UL<<40) ++#define SWCR_STATUS_DZE3 (1UL<<41) ++#define SWCR_STATUS_OVF3 (1UL<<42) ++#define SWCR_STATUS_UNF3 (1UL<<43) ++#define SWCR_STATUS_INE3 (1UL<<44) ++#define SWCR_STATUS_DNO3 (1UL<<45) ++ ++#define SWCR_STATUS_MASK3 (SWCR_STATUS_INV3 | SWCR_STATUS_DZE3 | \ ++ SWCR_STATUS_OVF3 | SWCR_STATUS_UNF3 | \ ++ SWCR_STATUS_INE3 | SWCR_STATUS_DNO3) ++#define SWCR_TRAP_ENABLE_INV (1UL<<1) /* invalid op */ ++#define SWCR_TRAP_ENABLE_DZE (1UL<<2) /* division by zero */ ++#define SWCR_TRAP_ENABLE_OVF (1UL<<3) /* overflow */ ++#define SWCR_TRAP_ENABLE_UNF (1UL<<4) /* underflow */ ++#define SWCR_TRAP_ENABLE_INE (1UL<<5) /* inexact */ ++#define SWCR_TRAP_ENABLE_DNO (1UL<<6) /* denorm */ ++#define SWCR_TRAP_ENABLE_MASK (SWCR_TRAP_ENABLE_INV | SWCR_TRAP_ENABLE_DZE | \ ++ SWCR_TRAP_ENABLE_OVF | SWCR_TRAP_ENABLE_UNF | \ ++ SWCR_TRAP_ENABLE_INE | SWCR_TRAP_ENABLE_DNO) ++ ++/* Denorm and Underflow flushing */ ++#define SWCR_MAP_DMZ (1UL<<12) /* Map denorm inputs to zero */ ++#define SWCR_MAP_UMZ (1UL<<13) /* Map underflowed outputs to zero */ ++ ++#define SWCR_MAP_MASK (SWCR_MAP_DMZ | SWCR_MAP_UMZ) ++ ++/* status bits coming from fpcr: */ ++#define SWCR_STATUS_INV (1UL<<17) ++#define SWCR_STATUS_DZE (1UL<<18) ++#define SWCR_STATUS_OVF (1UL<<19) ++#define SWCR_STATUS_UNF (1UL<<20) ++#define SWCR_STATUS_INE (1UL<<21) ++#define SWCR_STATUS_DNO (1UL<<22) ++ ++#define SWCR_STATUS_MASK (SWCR_STATUS_INV | SWCR_STATUS_DZE | \ ++ SWCR_STATUS_OVF | SWCR_STATUS_UNF | \ ++ SWCR_STATUS_INE | SWCR_STATUS_DNO) ++#define TARGET_GSI_IEEE_FP_CONTROL 45 ++#define TARGET_SSI_IEEE_FP_CONTROL 14 ++#endif +diff --git a/linux-user/sw64/termbits.h b/linux-user/sw64/termbits.h +new file mode 100644 +index 0000000000..37dd77120c +--- /dev/null ++++ b/linux-user/sw64/termbits.h +@@ -0,0 +1,265 @@ ++typedef unsigned char target_cc_t; ++typedef unsigned int target_speed_t; ++typedef unsigned int target_tcflag_t; ++ ++#define TARGET_NCCS 19 ++struct target_termios { ++ target_tcflag_t c_iflag; /* input mode flags */ ++ target_tcflag_t c_oflag; /* output mode flags */ ++ target_tcflag_t c_cflag; /* control mode flags */ ++ target_tcflag_t c_lflag; /* local mode flags */ ++ target_cc_t c_cc[TARGET_NCCS]; /* control characters */ ++ target_cc_t c_line; /* line discipline (== c_cc[19]) */ ++ target_speed_t c_ispeed; /* input speed */ ++ target_speed_t c_ospeed; /* output speed */ ++}; ++ ++/* c_cc characters */ ++#define TARGET_VEOF 0 ++#define TARGET_VEOL 1 ++#define TARGET_VEOL2 2 ++#define TARGET_VERASE 3 ++#define TARGET_VWERASE 4 ++#define TARGET_VKILL 5 ++#define TARGET_VREPRINT 6 ++#define TARGET_VSWTC 7 ++#define TARGET_VINTR 8 ++#define TARGET_VQUIT 9 ++#define TARGET_VSUSP 10 ++#define TARGET_VSTART 12 ++#define TARGET_VSTOP 13 ++#define TARGET_VLNEXT 14 ++#define TARGET_VDISCARD 15 ++#define TARGET_VMIN 16 ++#define TARGET_VTIME 17 ++ ++/* c_iflag bits */ ++#define TARGET_IGNBRK 0000001 ++#define TARGET_BRKINT 0000002 ++#define TARGET_IGNPAR 0000004 ++#define TARGET_PARMRK 0000010 ++#define TARGET_INPCK 0000020 ++#define TARGET_ISTRIP 0000040 ++#define TARGET_INLCR 0000100 ++#define TARGET_IGNCR 0000200 ++#define TARGET_ICRNL 0000400 ++#define TARGET_IXON 0001000 ++#define TARGET_IXOFF 0002000 ++#define TARGET_IXANY 0004000 ++#define TARGET_IUCLC 0010000 ++#define TARGET_IMAXBEL 0020000 ++#define TARGET_IUTF8 0040000 ++ ++/* c_oflag bits */ ++#define TARGET_OPOST 0000001 ++#define TARGET_ONLCR 0000002 ++#define TARGET_OLCUC 0000004 ++ ++#define TARGET_OCRNL 0000010 ++#define TARGET_ONOCR 0000020 ++#define TARGET_ONLRET 0000040 ++ ++#define TARGET_OFILL 00000100 ++#define TARGET_OFDEL 00000200 ++#define TARGET_NLDLY 00001400 ++#define TARGET_NL0 00000000 ++#define TARGET_NL1 00000400 ++#define TARGET_NL2 00001000 ++#define TARGET_NL3 00001400 ++#define TARGET_TABDLY 00006000 ++#define TARGET_TAB0 00000000 ++#define TARGET_TAB1 00002000 ++#define TARGET_TAB2 00004000 ++#define TARGET_TAB3 00006000 ++#define TARGET_CRDLY 00030000 ++#define TARGET_CR0 00000000 ++#define TARGET_CR1 00010000 ++#define TARGET_CR2 00020000 ++#define TARGET_CR3 00030000 ++#define TARGET_FFDLY 00040000 ++#define TARGET_FF0 00000000 ++#define TARGET_FF1 00040000 ++#define TARGET_BSDLY 00100000 ++#define TARGET_BS0 00000000 ++#define TARGET_BS1 00100000 ++#define TARGET_VTDLY 00200000 ++#define TARGET_VT0 00000000 ++#define TARGET_VT1 00200000 ++#define TARGET_XTABS 01000000 /* Hmm.. Linux/i386 considers this part of TABDLY.. */ ++ ++/* c_cflag bit meaning */ ++#define TARGET_CBAUD 0000037 ++#define TARGET_B0 0000000 /* hang up */ ++#define TARGET_B50 0000001 ++#define TARGET_B75 0000002 ++#define TARGET_B110 0000003 ++#define TARGET_B134 0000004 ++#define TARGET_B150 0000005 ++#define TARGET_B200 0000006 ++#define TARGET_B300 0000007 ++#define TARGET_B600 0000010 ++#define TARGET_B1200 0000011 ++#define TARGET_B1800 0000012 ++#define TARGET_B2400 0000013 ++#define TARGET_B4800 0000014 ++#define TARGET_B9600 0000015 ++#define TARGET_B19200 0000016 ++#define TARGET_B38400 0000017 ++#define TARGET_EXTA B19200 ++#define TARGET_EXTB B38400 ++#define TARGET_CBAUDEX 0000000 ++#define TARGET_B57600 00020 ++#define TARGET_B115200 00021 ++#define TARGET_B230400 00022 ++#define TARGET_B460800 00023 ++#define TARGET_B500000 00024 ++#define TARGET_B576000 00025 ++#define TARGET_B921600 00026 ++#define TARGET_B1000000 00027 ++#define TARGET_B1152000 00030 ++#define TARGET_B1500000 00031 ++#define TARGET_B2000000 00032 ++#define TARGET_B2500000 00033 ++#define TARGET_B3000000 00034 ++#define TARGET_B3500000 00035 ++#define TARGET_B4000000 00036 ++ ++#define TARGET_CSIZE 00001400 ++#define TARGET_CS5 00000000 ++#define TARGET_CS6 00000400 ++#define TARGET_CS7 00001000 ++#define TARGET_CS8 00001400 ++ ++#define TARGET_CSTOPB 00002000 ++#define TARGET_CREAD 00004000 ++#define TARGET_PARENB 00010000 ++#define TARGET_PARODD 00020000 ++#define TARGET_HUPCL 00040000 ++ ++#define TARGET_CLOCAL 00100000 ++#define TARGET_CMSPAR 010000000000 /* mark or space (stick) parity */ ++#define TARGET_CRTSCTS 020000000000 /* flow control */ ++ ++/* c_lflag bits */ ++#define TARGET_ISIG 0x00000080 ++#define TARGET_ICANON 0x00000100 ++#define TARGET_XCASE 0x00004000 ++#define TARGET_ECHO 0x00000008 ++#define TARGET_ECHOE 0x00000002 ++#define TARGET_ECHOK 0x00000004 ++#define TARGET_ECHONL 0x00000010 ++#define TARGET_NOFLSH 0x80000000 ++#define TARGET_TOSTOP 0x00400000 ++#define TARGET_ECHOCTL 0x00000040 ++#define TARGET_ECHOPRT 0x00000020 ++#define TARGET_ECHOKE 0x00000001 ++#define TARGET_FLUSHO 0x00800000 ++#define TARGET_PENDIN 0x20000000 ++#define TARGET_IEXTEN 0x00000400 ++ ++#define TARGET_FIOCLEX TARGET_IO('f', 1) ++#define TARGET_FIONCLEX TARGET_IO('f', 2) ++#define TARGET_FIOASYNC TARGET_IOW('f', 125, int) ++#define TARGET_FIONBIO TARGET_IOW('f', 126, int) ++#define TARGET_FIONREAD TARGET_IOR('f', 127, int) ++#define TARGET_TIOCINQ FIONREAD ++#define TARGET_FIOQSIZE TARGET_IOR('f', 128, loff_t) ++ ++#define TARGET_TIOCGETP TARGET_IOR('t', 8, struct target_sgttyb) ++#define TARGET_TIOCSETP TARGET_IOW('t', 9, struct target_sgttyb) ++#define TARGET_TIOCSETN TARGET_IOW('t', 10, struct target_sgttyb) /* TIOCSETP wo flush */ ++ ++#define TARGET_TIOCSETC TARGET_IOW('t', 17, struct target_tchars) ++#define TARGET_TIOCGETC TARGET_IOR('t', 18, struct target_tchars) ++#define TARGET_TCGETS TARGET_IOR('t', 19, struct target_termios) ++#define TARGET_TCSETS TARGET_IOW('t', 20, struct target_termios) ++#define TARGET_TCSETSW TARGET_IOW('t', 21, struct target_termios) ++#define TARGET_TCSETSF TARGET_IOW('t', 22, struct target_termios) ++ ++#define TARGET_TCGETA TARGET_IOR('t', 23, struct target_termio) ++#define TARGET_TCSETA TARGET_IOW('t', 24, struct target_termio) ++#define TARGET_TCSETAW TARGET_IOW('t', 25, struct target_termio) ++#define TARGET_TCSETAF TARGET_IOW('t', 28, struct target_termio) ++ ++#define TARGET_TCSBRK TARGET_IO('t', 29) ++#define TARGET_TCXONC TARGET_IO('t', 30) ++#define TARGET_TCFLSH TARGET_IO('t', 31) ++ ++#define TARGET_TIOCSWINSZ TARGET_IOW('t', 103, struct target_winsize) ++#define TARGET_TIOCGWINSZ TARGET_IOR('t', 104, struct target_winsize) ++#define TARGET_TIOCSTART TARGET_IO('t', 110) /* start output, like ^Q */ ++#define TARGET_TIOCSTOP TARGET_IO('t', 111) /* stop output, like ^S */ ++#define TARGET_TIOCOUTQ TARGET_IOR('t', 115, int) /* output queue size */ ++ ++#define TARGET_TIOCGLTC TARGET_IOR('t', 116, struct target_ltchars) ++#define TARGET_TIOCSLTC TARGET_IOW('t', 117, struct target_ltchars) ++#define TARGET_TIOCSPGRP TARGET_IOW('t', 118, int) ++#define TARGET_TIOCGPGRP TARGET_IOR('t', 119, int) ++ ++#define TARGET_TIOCEXCL 0x540C ++#define TARGET_TIOCNXCL 0x540D ++#define TARGET_TIOCSCTTY 0x540E ++ ++#define TARGET_TIOCSTI 0x5412 ++#define TARGET_TIOCMGET 0x5415 ++#define TARGET_TIOCMBIS 0x5416 ++#define TARGET_TIOCMBIC 0x5417 ++#define TARGET_TIOCMSET 0x5418 ++# define TARGET_TIOCM_LE 0x001 ++# define TARGET_TIOCM_DTR 0x002 ++# define TARGET_TIOCM_RTS 0x004 ++# define TARGET_TIOCM_ST 0x008 ++# define TARGET_TIOCM_SR 0x010 ++# define TARGET_TIOCM_CTS 0x020 ++# define TARGET_TIOCM_CAR 0x040 ++# define TARGET_TIOCM_RNG 0x080 ++# define TARGET_TIOCM_DSR 0x100 ++# define TARGET_TIOCM_CD TIOCM_CAR ++# define TARGET_TIOCM_RI TIOCM_RNG ++# define TARGET_TIOCM_OUT1 0x2000 ++# define TARGET_TIOCM_OUT2 0x4000 ++# define TARGET_TIOCM_LOOP 0x8000 ++ ++#define TARGET_TIOCGSOFTCAR 0x5419 ++#define TARGET_TIOCSSOFTCAR 0x541A ++#define TARGET_TIOCLINUX 0x541C ++#define TARGET_TIOCCONS 0x541D ++#define TARGET_TIOCGSERIAL 0x541E ++#define TARGET_TIOCSSERIAL 0x541F ++#define TARGET_TIOCPKT 0x5420 ++# define TARGET_TIOCPKT_DATA 0 ++# define TARGET_TIOCPKT_FLUSHREAD 1 ++# define TARGET_TIOCPKT_FLUSHWRITE 2 ++# define TARGET_TIOCPKT_STOP 4 ++# define TARGET_TIOCPKT_START 8 ++# define TARGET_TIOCPKT_NOSTOP 16 ++# define TARGET_TIOCPKT_DOSTOP 32 ++ ++ ++#define TARGET_TIOCNOTTY 0x5422 ++#define TARGET_TIOCSETD 0x5423 ++#define TARGET_TIOCGETD 0x5424 ++#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */ ++#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */ ++#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */ ++#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */ ++#define TARGET_TIOCGPTN TARGET_IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ ++#define TARGET_TIOCSPTLCK TARGET_IOW('T', 0x31, int) /* Lock/unlock Pty */ ++#define TARGET_TIOCGPTPEER TARGET_IO('T', 0x41) /* Safely open the slave */ ++ ++#define TARGET_TIOCSERCONFIG 0x5453 ++#define TARGET_TIOCSERGWILD 0x5454 ++#define TARGET_TIOCSERSWILD 0x5455 ++#define TARGET_TIOCGLCKTRMIOS 0x5456 ++#define TARGET_TIOCSLCKTRMIOS 0x5457 ++#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */ ++#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */ ++ /* ioctl (fd, TIOCSERGETLSR, &result) where result may be as below */ ++# define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */ ++#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */ ++#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */ ++ ++#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */ ++#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */ ++#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */ ++#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */ +diff --git a/meson.build b/meson.build +index 96de1a6ef9..d0bbceffe1 100644 +--- a/meson.build ++++ b/meson.build +@@ -56,7 +56,7 @@ python = import('python').find_installation() + + supported_oses = ['windows', 'freebsd', 'netbsd', 'openbsd', 'darwin', 'sunos', 'linux'] + supported_cpus = ['ppc', 'ppc64', 's390x', 'riscv', 'x86', 'x86_64', +- 'arm', 'aarch64', 'mips', 'mips64', 'sparc', 'sparc64'] ++ 'arm', 'aarch64', 'mips', 'mips64', 'sparc', 'sparc64', 'sw64'] + + cpu = host_machine.cpu_family() + +@@ -65,6 +65,10 @@ if cpu in ['riscv32', 'riscv64'] + cpu = 'riscv' + endif + ++if cpu == 'sw_64' ++ cpu = 'sw64' ++endif ++ + targetos = host_machine.system() + + if cpu in ['x86', 'x86_64'] +@@ -77,6 +81,8 @@ elif cpu in ['ppc', 'ppc64'] + kvm_targets = ['ppc-softmmu', 'ppc64-softmmu'] + elif cpu in ['mips', 'mips64'] + kvm_targets = ['mips-softmmu', 'mipsel-softmmu', 'mips64-softmmu', 'mips64el-softmmu'] ++elif cpu == 'sw64' ++ kvm_targets = ['sw64-softmmu'] + else + kvm_targets = [] + endif +@@ -359,6 +365,8 @@ if not get_option('tcg').disabled() + tcg_arch = 'i386' + elif config_host['ARCH'] == 'ppc64' + tcg_arch = 'ppc' ++ elif config_host['ARCH'] in ['sw64'] ++ tcg_arch = 'sw64' + endif + add_project_arguments('-iquote', meson.current_source_dir() / 'tcg' / tcg_arch, + language: ['c', 'cpp', 'objc']) +@@ -1814,6 +1822,7 @@ disassemblers = { + 'sh4' : ['CONFIG_SH4_DIS'], + 'sparc' : ['CONFIG_SPARC_DIS'], + 'xtensa' : ['CONFIG_XTENSA_DIS'], ++ 'sw64' : ['CONFIG_SW64_DIS'], + } + if link_language == 'cpp' + disassemblers += { +@@ -2466,6 +2475,7 @@ if have_system + 'hw/sparc', + 'hw/sparc64', + 'hw/ssi', ++ 'hw/sw64', + 'hw/timer', + 'hw/tpm', + 'hw/usb', +diff --git a/pc-bios/meson.build b/pc-bios/meson.build +index b40ff3f2bd..05e9065ad6 100644 +--- a/pc-bios/meson.build ++++ b/pc-bios/meson.build +@@ -38,6 +38,9 @@ blobs = files( + 'vgabios-ramfb.bin', + 'vgabios-bochs-display.bin', + 'vgabios-ati.bin', ++ 'uefi-bios-sw', ++ 'core3-reset', ++ 'core3-hmcode', + 'openbios-sparc32', + 'openbios-sparc64', + 'openbios-ppc', +diff --git a/qapi/machine.json b/qapi/machine.json +index 6822cafe2e..6ed8488255 100644 +--- a/qapi/machine.json ++++ b/qapi/machine.json +@@ -29,7 +29,7 @@ + # Since: 3.0 + ## + { 'enum' : 'SysEmuTarget', +- 'data' : [ 'aarch64', 'alpha', 'arm', 'avr', 'cris', 'hppa', 'i386', ++ 'data' : [ 'aarch64', 'alpha', 'sw64', 'arm', 'avr', 'cris', 'hppa', 'i386', + 'm68k', 'microblaze', 'microblazeel', 'mips', 'mips64', + 'mips64el', 'mipsel', 'nios2', 'or1k', 'ppc', + 'ppc64', 'riscv32', 'riscv64', 'rx', 's390x', 'sh4', +diff --git a/softmmu/qdev-monitor.c b/softmmu/qdev-monitor.c +index 05e1d88d99..142352b24e 100644 +--- a/softmmu/qdev-monitor.c ++++ b/softmmu/qdev-monitor.c +@@ -61,7 +61,8 @@ typedef struct QDevAlias + QEMU_ARCH_HPPA | QEMU_ARCH_I386 | \ + QEMU_ARCH_MIPS | QEMU_ARCH_PPC | \ + QEMU_ARCH_RISCV | QEMU_ARCH_SH4 | \ +- QEMU_ARCH_SPARC | QEMU_ARCH_XTENSA) ++ QEMU_ARCH_SPARC | QEMU_ARCH_XTENSA | \ ++ QEMU_ARCH_SW64) + #define QEMU_ARCH_VIRTIO_CCW (QEMU_ARCH_S390X) + #define QEMU_ARCH_VIRTIO_MMIO (QEMU_ARCH_M68K) + +diff --git a/target/Kconfig b/target/Kconfig +index ae7f24fc66..a8d6cb1e97 100644 +--- a/target/Kconfig ++++ b/target/Kconfig +@@ -17,3 +17,4 @@ source sh4/Kconfig + source sparc/Kconfig + source tricore/Kconfig + source xtensa/Kconfig ++source sw64/Kconfig +diff --git a/target/meson.build b/target/meson.build +index 2f6940255e..ec6bc97331 100644 +--- a/target/meson.build ++++ b/target/meson.build +@@ -16,5 +16,6 @@ subdir('rx') + subdir('s390x') + subdir('sh4') + subdir('sparc') ++subdir('sw64') + subdir('tricore') + subdir('xtensa') +diff --git a/target/sw64/Kconfig b/target/sw64/Kconfig +new file mode 100644 +index 0000000000..ad50b9677e +--- /dev/null ++++ b/target/sw64/Kconfig +@@ -0,0 +1,2 @@ ++config SW64 ++ bool +diff --git a/target/sw64/Makefile.objs b/target/sw64/Makefile.objs +new file mode 100644 +index 0000000000..1e549d141c +--- /dev/null ++++ b/target/sw64/Makefile.objs +@@ -0,0 +1,4 @@ ++obj-$(CONFIG_SOFTMMU) += machine.o ++obj-y += cpu.o translate.o profile.o helper.o ++obj-y += int_helper.o float_helper.o simd_helper.o helper.o exception.o ++obj-$(CONFIG_KVM) += kvm.o +diff --git a/target/sw64/cpu-param.h b/target/sw64/cpu-param.h +new file mode 100644 +index 0000000000..978a3cd572 +--- /dev/null ++++ b/target/sw64/cpu-param.h +@@ -0,0 +1,24 @@ ++/* ++ * SW64 cpu parameters for qemu. ++ * ++ * Copyright (c) 2018 Lin Hainan ++ */ ++ ++#ifndef SW64_CPU_PARAM_H ++#define SW64_CPU_PARAM_H 1 ++ ++#define TARGET_LONG_BITS 64 /* if use th-1 ,TARGET_PAGE_BITS is 12 */ ++#define TARGET_PAGE_BITS 13 ++ ++#ifdef CONFIG_USER_ONLY ++#define TARGET_VIRT_ADDR_SPACE_BITS 64 ++#else ++#define TARGET_PHYS_ADDR_SPACE_BITS 48 ++#define TARGET_VIRT_ADDR_SPACE_BITS 64 ++#endif ++ ++#ifndef CONFIG_USER_ONLY ++#define NB_MMU_MODES 4 ++#endif ++ ++#endif +diff --git a/target/sw64/cpu-qom.h b/target/sw64/cpu-qom.h +new file mode 100644 +index 0000000000..b093c2bec8 +--- /dev/null ++++ b/target/sw64/cpu-qom.h +@@ -0,0 +1,47 @@ ++/* ++ * QEMU SW64 CPU ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License ++ * as published by the Free Software Foundation; either version 2 ++ * of the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ */ ++#ifndef QEMU_SW64_CPU_QOM ++#define QEMU_SW64_CPU_QOM ++ ++#include "hw/core/cpu.h" ++ ++#define TYPE_SW64_CPU "sw64-cpu" ++ ++#define SW64_CPU_CLASS(kclass) \ ++ OBJECT_CLASS_CHECK(SW64CPUClass, (kclass), TYPE_SW64_CPU) ++#define SW64_CPU(obj) \ ++ OBJECT_CHECK(SW64CPU, (obj), TYPE_SW64_CPU) ++#define SW64_CPU_GET_CLASS(obj) \ ++ OBJECT_GET_CLASS(SW64CPUClass, (obj), TYPE_SW64_CPU) ++ ++/** ++ * SW64CPUClass: ++ * @parent_realize: The parent class' realize handler. ++ * @parent_reset: The parent class' reset handler. ++ * ++ * An SW64 CPU model. ++ */ ++typedef struct SW64CPUClass { ++ /* private */ ++ CPUClass parent_class; ++ /* public */ ++ DeviceRealize parent_realize; ++ DeviceReset parent_reset; ++} SW64CPUClass; ++ ++typedef struct SW64CPU SW64CPU; ++#endif +diff --git a/target/sw64/cpu.c b/target/sw64/cpu.c +new file mode 100644 +index 0000000000..89c21850e1 +--- /dev/null ++++ b/target/sw64/cpu.c +@@ -0,0 +1,457 @@ ++/* ++ * QEMU SW64 CPU ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2.1 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ */ ++ ++#include "qemu/osdep.h" ++#include "qapi/error.h" ++#include "qemu/qemu-print.h" ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "sysemu/kvm.h" ++#include "disas/dis-asm.h" ++#include "kvm_sw64.h" ++#include "sysemu/reset.h" ++#include "hw/qdev-properties.h" ++ ++ ++static void sw64_cpu_set_pc(CPUState *cs, vaddr value) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ ++ cpu->env.pc = value; ++} ++ ++static void sw64_cpu_dump_state(CPUState *cs, FILE *f, int flags) ++{ ++#ifndef CONFIG_KVM ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ int i; ++ ++ static const char ireg_names[31][4] = { ++ "v0", "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "s0", "s1", ++ "s2", "s3", "s4", "s5", "fp", "a0", "a1", "a2", "a3", "a4", "a5", ++ "t8", "t9", "t10", "t11", "ra", "t12", "at", "gp", "sp"}; ++ static const char freg_names[128][4] = { ++ "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", ++ "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", ++ "f20", "f21", "f22", "f23", "f24", "f25", "f26", "f27", "f28", "f29", ++ "f30", "f31", "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", ++ "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", ++ "f18", "f19", "f20", "f21", "f22", "f23", "f24", "f25", "f26", "f27", ++ "f28", "f29", "f30", "f31", "f0", "f1", "f2", "f3", "f4", "f5", ++ "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", ++ "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", "f24", "f25", ++ "f26", "f27", "f28", "f29", "f30", "f31", "f0", "f1", "f2", "f3", ++ "f4", "f5", "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", ++ "f14", "f15", "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", ++ "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31"}; ++ qemu_fprintf(f, "PC=%016" PRIx64 " SP=%016" PRIx64 "\n", env->pc, ++ env->ir[IDX_SP]); ++ for (i = 0; i < 31; i++) { ++ qemu_fprintf(f, "%s=%016" PRIx64, ireg_names[i], env->ir[i]); ++ if ((i % 4) == 3) { ++ qemu_fprintf(f, "\n"); ++ } else { ++ qemu_fprintf(f, " "); ++ } ++ } ++ qemu_fprintf(f, "\n"); ++#ifndef CONFIG_USER_ONLY ++ static const char sreg_names[10][4] = {"p1", "p2", "p4", "p5", "p6", ++ "p7", "p20", "p21", "p22", "p23"}; ++ for (i = 0; i < 10; i++) { ++ qemu_fprintf(f, "%s=%016" PRIx64, sreg_names[i], env->sr[i]); ++ if ((i % 4) == 3) { ++ qemu_fprintf(f, "\n"); ++ } else { ++ qemu_fprintf(f, " "); ++ } ++ } ++ qemu_fprintf(f, "\n"); ++#endif ++ for (i = 0; i < 32; i++) { ++ qemu_fprintf(f, "%s=%016" PRIx64, freg_names[i + 96], env->fr[i + 96]); ++ qemu_fprintf(f, " %016" PRIx64, env->fr[i + 64]); ++ qemu_fprintf(f, " %016" PRIx64, env->fr[i + 32]); ++ qemu_fprintf(f, " %016" PRIx64, env->fr[i]); ++ qemu_fprintf(f, "\n"); ++ } ++ qemu_fprintf(f, "\n"); ++#endif ++} ++ ++#ifndef CONFIG_USER_ONLY ++static void sw64_machine_cpu_reset(void *opaque) ++{ ++ SW64CPU *cpu = opaque; ++ ++ cpu_reset(CPU(cpu)); ++} ++#endif ++ ++static void sw64_cpu_realizefn(DeviceState *dev, Error **errp) ++{ ++ CPUState *cs = CPU(dev); ++ SW64CPUClass *scc = SW64_CPU_GET_CLASS(dev); ++ Error *local_err = NULL; ++ ++ cpu_exec_realizefn(cs, &local_err); ++ if (local_err != NULL) { ++ error_propagate(errp, local_err); ++ return; ++ } ++#ifndef CONFIG_USER_ONLY ++ qemu_register_reset(sw64_machine_cpu_reset, cs); ++#endif ++ ++ qemu_init_vcpu(cs); ++ ++ scc->parent_realize(dev, errp); ++} ++ ++static void sw64_cpu_disas_set_info(CPUState *cs, disassemble_info *info) ++{ ++ info->mach = bfd_mach_sw_64_core3; ++ info->print_insn = print_insn_sw_64; ++} ++ ++#include "fpu/softfloat.h" ++ ++static void core3_init(Object *obj) ++{ ++ CPUState *cs = CPU(obj); ++ CPUSW64State *env = cs->env_ptr; ++#ifdef CONFIG_USER_ONLY ++ env->fpcr = 0x680e800000000000; ++ parallel_cpus = true; ++#endif ++ set_feature(env, SW64_FEATURE_CORE3); ++} ++ ++static ObjectClass *sw64_cpu_class_by_name(const char *cpu_model) ++{ ++ ObjectClass *oc; ++ char *typename; ++ char **cpuname; ++ ++ cpuname = g_strsplit(cpu_model, ",", 1); ++ typename = g_strdup_printf(SW64_CPU_TYPE_NAME("%s"), cpu_model); ++ ++ oc = object_class_by_name(typename); ++ g_strfreev(cpuname); ++ g_free(typename); ++ ++ if (oc && object_class_dynamic_cast(oc, TYPE_SW64_CPU) && ++ !object_class_is_abstract(oc)) { ++ return oc; ++ } ++ return NULL; ++} ++ ++bool sw64_cpu_has_work(CPUState *cs) ++{ ++ /* If CPU has gotten into asleep(halt), then it may be ++ * wake up by hard interrupt, timer, ii, mail or mchk. ++ */ ++ return cs->interrupt_request & (CPU_INTERRUPT_HARD | CPU_INTERRUPT_TIMER | ++ CPU_INTERRUPT_IIMAIL | CPU_INTERRUPT_MCHK); ++} ++ ++static void sw64_cpu_initfn(Object *obj) ++{ ++ CPUState *cs = CPU(obj); ++ SW64CPU *cpu = SW64_CPU(obj); ++ CPUSW64State *env = &cpu->env; ++ ++ cpu_set_cpustate_pointers(cpu); ++ ++ cs->env_ptr = env; ++#ifndef CONFIG_USER_ONLY ++ env->flags = ENV_FLAG_HM_MODE; ++#else ++ env->flags = ENV_FLAG_PS_USER; ++#endif ++ tlb_flush(cs); ++} ++ ++#ifndef CONFIG_USER_ONLY ++static void sw64_cpu_do_transaction_failed(CPUState *cs, hwaddr physaddr, vaddr addr, ++ unsigned size, MMUAccessType access_type, ++ int mmu_idx, MemTxAttrs attrs, ++ MemTxResult response, uintptr_t retaddr) ++{ ++#ifdef DEBUG_TRANS ++ if (retaddr) { ++ cpu_restore_state(cs, retaddr, true); ++ } ++ fprintf(stderr, "PC = %lx, Wrong IO addr. Hwaddr = %lx, vaddr = %lx, access_type = %d\n", ++ env->pc, physaddr, addr, access_type); ++#endif ++} ++#endif ++ ++#define a0(func) (((func & 0xFF) >> 6) & 0x1) ++#define a1(func) ((((func & 0xFF) >> 6) & 0x2) >> 1) ++ ++#define t(func) ((a0(func) ^ a1(func)) & 0x1) ++#define b0(func) (t(func) | a0(func)) ++#define b1(func) ((~t(func) & 1) | a1(func)) ++ ++#define START_SYS_CALL_ADDR(func) \ ++ (b1(func) << 14) | (b0(func) << 13) | ((func & 0x3F) << 7) ++ ++static void sw64_cpu_do_interrupt(CPUState *cs) ++{ ++ int i = cs->exception_index; ++ ++ cs->exception_index = -1; ++#if !defined(CONFIG_USER_ONLY) ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ switch (i) { ++ case EXCP_OPCDEC: ++ cpu_abort(cs, "ILLEGAL INSN"); ++ break; ++ case EXCP_CALL_SYS: ++ i = START_SYS_CALL_ADDR(env->error_code); ++ if (i <= 0x3F) { ++ i += 0x4000; ++ } else if (i >= 0x40 && i <= 0x7F) { ++ i += 0x2000; ++ } else if (i >= 0x80 && i <= 0x8F) { ++ i += 0x6000; ++ } ++ break; ++ case EXCP_ARITH: ++ env->error_code = -1; ++ env->csr[EXC_PC] = env->pc - 4; ++ env->csr[EXC_SUM] = 1; ++ i = 0xB80; ++ break; ++ case EXCP_UNALIGN: ++ i = 0xB00; ++ env->csr[EXC_PC] = env->pc - 4; ++ break; ++ case EXCP_CLK_INTERRUPT: ++ case EXCP_DEV_INTERRUPT: ++ i = 0xE80; ++ break; ++ case EXCP_MMFAULT: ++ i = 0x980; ++ env->csr[EXC_PC] = env->pc; ++ break; ++ case EXCP_IIMAIL: ++ env->csr[EXC_PC] = env->pc; ++ i = 0xE00; ++ break; ++ default: ++ break; ++ } ++ env->pc = env->hm_entry + i; ++ env->flags = ENV_FLAG_HM_MODE; ++#else ++ switch (i) { ++ case EXCP_OPCDEC: ++ cpu_abort(cs, "ILLEGAL INSN"); ++ break; ++ case EXCP_CALL_SYS: ++ default: ++ break; ++ } ++#endif ++} ++ ++#ifndef CONFIG_USER_ONLY ++static bool sw64_cpu_exec_interrupt(CPUState *cs, int interrupt_request) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ int idx = -1; ++ /* We never take interrupts while in Hardmode. */ ++ if (env->flags & ENV_FLAG_HM_MODE) ++ return false; ++ ++ if (interrupt_request & CPU_INTERRUPT_IIMAIL) { ++ idx = EXCP_IIMAIL; ++ env->csr[INT_STAT] |= 1UL << 6; ++ if ((env->csr[IER] & env->csr[INT_STAT]) == 0) ++ return false; ++ cs->interrupt_request &= ~CPU_INTERRUPT_IIMAIL; ++ goto done; ++ } ++ ++ if (interrupt_request & CPU_INTERRUPT_TIMER) { ++ idx = EXCP_CLK_INTERRUPT; ++ env->csr[INT_STAT] |= 1UL << 4; ++ if ((env->csr[IER] & env->csr[INT_STAT]) == 0) ++ return false; ++ cs->interrupt_request &= ~CPU_INTERRUPT_TIMER; ++ goto done; ++ } ++ ++ if (interrupt_request & CPU_INTERRUPT_HARD) { ++ idx = EXCP_DEV_INTERRUPT; ++ env->csr[INT_STAT] |= 1UL << 12; ++ if ((env->csr[IER] & env->csr[INT_STAT]) == 0) ++ return false; ++ cs->interrupt_request &= ~CPU_INTERRUPT_HARD; ++ goto done; ++ } ++ ++ if (interrupt_request & CPU_INTERRUPT_PCIE) { ++ idx = EXCP_DEV_INTERRUPT; ++ env->csr[INT_STAT] |= 1UL << 1; ++ env->csr[INT_PCI_INT] = 0x10; ++ if ((env->csr[IER] & env->csr[INT_STAT]) == 0) ++ return false; ++ cs->interrupt_request &= ~CPU_INTERRUPT_PCIE; ++ goto done; ++ } ++ ++done: ++ if (idx >= 0) { ++ cs->exception_index = idx; ++ env->error_code = 0; ++ env->csr[EXC_PC] = env->pc; ++ sw64_cpu_do_interrupt(cs); ++ return true; ++ } ++ return false; ++} ++#endif ++ ++static void sw64_cpu_reset(DeviceState *dev) ++{ ++ CPUState *s = CPU(dev); ++ SW64CPU *cpu = SW64_CPU(s); ++ SW64CPUClass *scc = SW64_CPU_GET_CLASS(cpu); ++ ++ scc->parent_reset(dev); ++ ++#ifndef CONFIG_USER_ONLY ++ if (kvm_enabled()) { ++ kvm_sw64_reset_vcpu(cpu); ++ } ++#endif ++} ++ ++static Property sw64_cpu_properties[] = { ++#ifdef CONFIG_USER_ONLY ++ /* apic_id = 0 by default for *-user, see commit 9886e834 */ ++ DEFINE_PROP_UINT32("cid", SW64CPU, cid, 0), ++#else ++ DEFINE_PROP_UINT32("cid", SW64CPU, cid, 0xFFFFFFFF), ++#endif ++ DEFINE_PROP_END_OF_LIST() ++}; ++ ++#ifndef CONFIG_USER_ONLY ++#include "hw/core/sysemu-cpu-ops.h" ++ ++static const struct SysemuCPUOps sw64_sysemu_ops = { ++ .get_phys_page_debug = sw64_cpu_get_phys_page_debug, ++}; ++#endif ++ ++#include "hw/core/tcg-cpu-ops.h" ++ ++static const struct TCGCPUOps sw64_tcg_ops = { ++#ifdef CONFIG_TCG ++ .initialize = sw64_translate_init, ++ .tlb_fill = sw64_cpu_tlb_fill, ++#endif /* CONFIG_TCG */ ++ ++#if !defined(CONFIG_USER_ONLY) ++ .do_unaligned_access = sw64_cpu_do_unaligned_access, ++ .cpu_exec_interrupt = sw64_cpu_exec_interrupt, ++ .do_transaction_failed = sw64_cpu_do_transaction_failed, ++#endif /* !CONFIG_USER_ONLY */ ++ .do_interrupt = sw64_cpu_do_interrupt, ++}; ++ ++static void sw64_cpu_class_init(ObjectClass *oc, void *data) ++{ ++ DeviceClass *dc = DEVICE_CLASS(oc); ++ CPUClass *cc = CPU_CLASS(oc); ++ SW64CPUClass *scc = SW64_CPU_CLASS(oc); ++ ++ device_class_set_parent_realize(dc, sw64_cpu_realizefn, ++ &scc->parent_realize); ++ device_class_set_parent_reset(dc, sw64_cpu_reset, &scc->parent_reset); ++ device_class_set_props(dc, sw64_cpu_properties); ++ ++ cc->class_by_name = sw64_cpu_class_by_name; ++ dc->vmsd = &vmstate_sw64_cpu; ++ cc->has_work = sw64_cpu_has_work; ++ cc->set_pc = sw64_cpu_set_pc; ++ cc->disas_set_info = sw64_cpu_disas_set_info; ++ cc->dump_state = sw64_cpu_dump_state; ++ cc->tcg_ops = &sw64_tcg_ops; ++#ifndef CONFIG_USER_ONLY ++ cc->sysemu_ops = &sw64_sysemu_ops; ++#endif ++} ++ ++static const SW64CPUInfo sw64_cpus[] = ++{ ++ { ++ .name = "core3", ++ .initfn = core3_init, ++ }, ++ { ++ .name = NULL ++ }, ++}; ++ ++static void cpu_register(const SW64CPUInfo *info) ++{ ++ TypeInfo type_info = { ++ .parent = TYPE_SW64_CPU, ++ .instance_size = sizeof(SW64CPU), ++ .instance_init = info->initfn, ++ .class_size = sizeof(SW64CPUClass), ++ .class_init = info->class_init, ++ }; ++ ++ type_info.name = g_strdup_printf("%s-" TYPE_SW64_CPU, info->name); ++ type_register(&type_info); ++ g_free((void*)type_info.name); ++} ++ ++static const TypeInfo sw64_cpu_type_info = { ++ .name = TYPE_SW64_CPU, ++ .parent = TYPE_CPU, ++ .instance_size = sizeof(SW64CPU), ++ .instance_init = sw64_cpu_initfn, ++ .abstract = true, ++ .class_size = sizeof(SW64CPUClass), ++ .class_init = sw64_cpu_class_init, ++}; ++ ++static void sw64_cpu_register_types(void) ++{ ++ const SW64CPUInfo *info = sw64_cpus; ++ ++ type_register_static(&sw64_cpu_type_info); ++ ++ while (info->name) { ++ cpu_register(info); ++ info++; ++ } ++} ++ ++type_init(sw64_cpu_register_types) +diff --git a/target/sw64/cpu.h b/target/sw64/cpu.h +new file mode 100644 +index 0000000000..5a490e2b4a +--- /dev/null ++++ b/target/sw64/cpu.h +@@ -0,0 +1,406 @@ ++/* ++ * SW64 emulation cpu definitions for qemu. ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ */ ++#ifndef SW64_CPU_H ++#define SW64_CPU_H ++ ++#include "cpu-qom.h" ++#include "fpu/softfloat.h" ++#include "profile.h" ++ ++/* QEMU addressing/paging config */ ++#define TARGET_PAGE_BITS 13 ++#define TARGET_LONG_BITS 64 ++#define TARGET_LEVEL_BITS 10 ++//#define ALIGNED_ONLY ++ ++#include "exec/cpu-defs.h" ++ ++/* FIXME: LOCKFIX */ ++#define SW64_FIXLOCK 1 ++ ++/* swcore processors have a weak memory model */ ++#define TCG_GUEST_DEFAULT_MO (0) ++ ++#define SOFTMMU 1 ++ ++#ifndef CONFIG_USER_ONLY ++#define MMU_MODE0_SUFFIX _phys ++#define MMU_MODE3_SUFFIX _user ++#define MMU_MODE2_SUFFIX _kernel ++#endif ++#define MMU_PHYS_IDX 0 ++#define MMU_KERNEL_IDX 2 ++#define MMU_USER_IDX 3 ++ ++/* FIXME:Bits 4 and 5 are the mmu mode. The VMS hmcode uses all 4 modes; ++ The Unix hmcode only uses bit 4. */ ++#define PS_USER_MODE 8u ++ ++#define ENV_FLAG_HM_SHIFT 0 ++#define ENV_FLAG_PS_SHIFT 8 ++#define ENV_FLAG_FEN_SHIFT 24 ++ ++#define ENV_FLAG_HM_MODE (1u << ENV_FLAG_HM_SHIFT) ++#define ENV_FLAG_PS_USER (PS_USER_MODE << ENV_FLAG_PS_SHIFT) ++#define ENV_FLAG_FEN (1u << ENV_FLAG_FEN_SHIFT) ++ ++#define MCU_CLOCK 25000000 ++ ++typedef struct CPUSW64State CPUSW64State; ++typedef CPUSW64State CPUArchState; ++typedef SW64CPU ArchCPU; ++ ++struct CPUSW64State { ++ uint64_t ir[32]; ++ uint64_t fr[128]; ++ uint64_t pc; ++ bool is_slave; ++ ++ uint64_t csr[0x100]; ++ uint64_t fpcr; ++ uint64_t fpcr_exc_enable; ++ uint8_t fpcr_round_mode; ++ uint8_t fpcr_flush_to_zero; ++ ++ float_status fp_status; ++ ++ uint64_t hm_entry; ++ ++#if !defined(CONFIG_USER_ONLY) ++ uint64_t sr[10]; /* shadow regs 1,2,4-7,20-23 */ ++#endif ++ ++ uint32_t flags; ++ uint64_t error_code; ++ uint64_t unique; ++ uint64_t lock_addr; ++ uint64_t lock_valid; ++ uint64_t lock_flag; ++ uint64_t lock_success; ++#ifdef SW64_FIXLOCK ++ uint64_t lock_value; ++#endif ++ ++ uint64_t trap_arg0; ++ uint64_t trap_arg1; ++ uint64_t trap_arg2; ++ ++ uint64_t features; ++ uint64_t insn_count[537]; ++ ++ /* reserve for slave */ ++ uint64_t ca[4]; ++ uint64_t scala_gpr[64]; ++ uint64_t vec_gpr[224]; ++ uint64_t fpcr_base; ++ uint64_t fpcr_ext; ++ uint64_t pendding_flag; ++ uint64_t pendding_status; ++ uint64_t synr_pendding_status; ++ uint64_t sync_pendding_status; ++ uint8_t vlenma_idxa; ++ uint8_t stable; ++}; ++#define SW64_FEATURE_CORE3 0x2 ++ ++static inline void set_feature(CPUSW64State *env, int feature) ++{ ++ env->features |= feature; ++} ++ ++/** ++ * SW64CPU: ++ * @env: #CPUSW64State ++ * ++ * An SW64 CPU ++ */ ++struct SW64CPU { ++ /*< private >*/ ++ CPUState parent_obj; ++ /*< public >*/ ++ CPUNegativeOffsetState neg; ++ CPUSW64State env; ++ ++ uint64_t k_regs[158]; ++ uint64_t k_vcb[36]; ++ QEMUTimer *alarm_timer; ++ target_ulong irq; ++ uint32_t cid; ++}; ++ ++enum { ++ IDX_V0 = 0, ++ IDX_T0 = 1, ++ IDX_T1 = 2, ++ IDX_T2 = 3, ++ IDX_T3 = 4, ++ IDX_T4 = 5, ++ IDX_T5 = 6, ++ IDX_T6 = 7, ++ IDX_T7 = 8, ++ IDX_S0 = 9, ++ IDX_S1 = 10, ++ IDX_S2 = 11, ++ IDX_S3 = 12, ++ IDX_S4 = 13, ++ IDX_S5 = 14, ++ IDX_S6 = 15, ++ IDX_FP = IDX_S6, ++ IDX_A0 = 16, ++ IDX_A1 = 17, ++ IDX_A2 = 18, ++ IDX_A3 = 19, ++ IDX_A4 = 20, ++ IDX_A5 = 21, ++ IDX_T8 = 22, ++ IDX_T9 = 23, ++ IDX_T10 = 24, ++ IDX_T11 = 25, ++ IDX_RA = 26, ++ IDX_T12 = 27, ++ IDX_PV = IDX_T12, ++ IDX_AT = 28, ++ IDX_GP = 29, ++ IDX_SP = 30, ++ IDX_ZERO = 31, ++}; ++ ++enum { ++ MM_K_TNV = 0x0, ++ MM_K_ACV = 0x1, ++ MM_K_FOR = 0x2, ++ MM_K_FOE = 0x3, ++ MM_K_FOW = 0x4 ++}; ++ ++enum { ++ PTE_VALID = 0x0001, ++ PTE_FOR = 0x0002, /* used for page protection (fault on read) */ ++ PTE_FOW = 0x0004, /* used for page protection (fault on write) */ ++ PTE_FOE = 0x0008, ++ PTE_KS = 0x0010, ++ PTE_PSE = 0x0040, ++ PTE_GH = 0x0060, ++ PTE_HRE = 0x0100, ++ PTE_VRE = 0x0200, ++ PTE_KRE = 0x0400, ++ PTE_URE = 0x0800, ++ PTE_HWE = 0x1000, ++ PTE_VWE = 0x2000, ++ PTE_KWE = 0x4000, ++ PTE_UWE = 0x8000 ++}; ++ ++static inline int cpu_mmu_index(CPUSW64State *env, bool ifetch) ++{ ++ int ret = env->flags & ENV_FLAG_PS_USER ? MMU_USER_IDX : MMU_KERNEL_IDX; ++ if (env->flags & ENV_FLAG_HM_MODE) { ++ ret = MMU_PHYS_IDX; ++ } ++ return ret; ++} ++ ++static inline SW64CPU *sw64_env_get_cpu(CPUSW64State *env) ++{ ++ return container_of(env, SW64CPU, env); ++} ++ ++#define ENV_GET_CPU(e) CPU(sw64_env_get_cpu(e)) ++#define ENV_OFFSET offsetof(SW64CPU, env) ++ ++#define cpu_init(cpu_model) cpu_generic_init(TYPE_SW64_CPU, cpu_model) ++ ++#define SW64_CPU_TYPE_SUFFIX "-" TYPE_SW64_CPU ++#define SW64_CPU_TYPE_NAME(name) (name SW64_CPU_TYPE_SUFFIX) ++int cpu_sw64_signal_handler(int host_signum, void *pinfo, void *puc); ++bool sw64_cpu_tlb_fill(CPUState *cs, vaddr address, int size, ++ MMUAccessType access_type, int mmu_idx, ++ bool probe, uintptr_t retaddr); ++uint64_t sw64_ldl_phys(CPUState *cs, hwaddr addr); ++hwaddr sw64_cpu_get_phys_page_debug(CPUState *cs, vaddr addr); ++void sw64_stl_phys(CPUState *cs, hwaddr addr, uint64_t val); ++uint64_t sw64_ldw_phys(CPUState *cs, hwaddr addr); ++void sw64_stw_phys(CPUState *cs, hwaddr addr, uint64_t val); ++uint64_t cpu_sw64_load_fpcr(CPUSW64State *env); ++void cpu_sw64_store_fpcr(CPUSW64State *env, uint64_t val); ++void sw64_cpu_do_unaligned_access(CPUState *cs, vaddr addr, ++ MMUAccessType access_type, int mmu_idx, ++ uintptr_t retaddr) QEMU_NORETURN; ++bool sw64_cpu_has_work(CPUState *cs); ++extern struct VMStateDescription vmstate_sw64_cpu; ++ ++/* SW64-specific interrupt pending bits */ ++#define CPU_INTERRUPT_TIMER CPU_INTERRUPT_TGT_EXT_0 ++#define CPU_INTERRUPT_IIMAIL CPU_INTERRUPT_TGT_EXT_1 ++#define CPU_INTERRUPT_MCHK CPU_INTERRUPT_TGT_EXT_2 ++#define CPU_INTERRUPT_PCIE CPU_INTERRUPT_TGT_EXT_3 ++#define CPU_INTERRUPT_WAKEUP CPU_INTERRUPT_TGT_EXT_3 ++#define CPU_INTERRUPT_SLAVE CPU_INTERRUPT_TGT_EXT_4 ++ ++#define cpu_signal_handler cpu_sw64_signal_handler ++#define CPU_RESOLVING_TYPE TYPE_SW64_CPU ++ ++#define SWCSR(x, y) x = y ++enum { ++ SWCSR(ITB_TAG, 0x0), ++ SWCSR(ITB_PTE, 0x1), ++ SWCSR(ITB_IA, 0x2), ++ SWCSR(ITB_IV, 0x3), ++ SWCSR(ITB_IVP, 0x4), ++ SWCSR(ITB_IU, 0x5), ++ SWCSR(ITB_IS, 0x6), ++ SWCSR(EXC_SUM, 0xd), ++ SWCSR(EXC_PC, 0xe), ++ SWCSR(DS_STAT, 0x48), ++ SWCSR(CID, 0xc4), ++ SWCSR(TID, 0xc7), ++ ++ SWCSR(DTB_TAG, 0x40), ++ SWCSR(DTB_PTE, 0x41), ++ SWCSR(DTB_IA, 0x42), ++ SWCSR(DTB_IV, 0x43), ++ SWCSR(DTB_IVP, 0x44), ++ SWCSR(DTB_IU, 0x45), ++ SWCSR(DTB_IS, 0x46), ++ SWCSR(II_REQ, 0x82), ++ ++ SWCSR(PTBR, 0x8), ++ SWCSR(PRI_BASE, 0x10), ++ SWCSR(TIMER_CTL, 0x2a), ++ SWCSR(INT_STAT, 0x30), ++ SWCSR(INT_CLR, 0x31), ++ SWCSR(IER, 0x32), ++ SWCSR(INT_PCI_INT, 0x33), ++ SWCSR(DVA, 0x4e), ++}; ++ ++#include "exec/cpu-all.h" ++static inline void cpu_get_tb_cpu_state(CPUSW64State *env, target_ulong *pc, ++ target_ulong *cs_base, uint32_t *pflags) ++{ ++ *pc = env->pc; ++ *cs_base = 0; ++ *pflags = env->flags; ++} ++ ++void sw64_translate_init(void); ++ ++enum { ++ EXCP_NONE, ++ EXCP_HALT, ++ EXCP_IIMAIL, ++ EXCP_OPCDEC, ++ EXCP_CALL_SYS, ++ EXCP_ARITH, ++ EXCP_UNALIGN, ++#ifdef SOFTMMU ++ EXCP_MMFAULT, ++#else ++ EXCP_DTBD, ++ EXCP_DTBS_U, ++ EXCP_DTBS_K, ++ EXCP_ITB_U, ++ EXCP_ITB_K, ++#endif ++ EXCP_CLK_INTERRUPT, ++ EXCP_DEV_INTERRUPT, ++ EXCP_SLAVE, ++}; ++ ++#define CSR_SHIFT_AND_MASK(name, func, shift, bits) \ ++ name##_##func##_S = shift, \ ++ name##_##func##_V = bits, \ ++ name##_##func##_M = (1UL << bits) - 1 ++ ++#define FPCR_MASK(name) ((uint64_t)FPCR_##name##_M << FPCR_##name##_S) ++/* FPCR */ ++enum { ++ CSR_SHIFT_AND_MASK(FPCR, EXC_CTL, 0, 2), ++ CSR_SHIFT_AND_MASK(FPCR, EXC_CTL_WEN, 2, 1), ++ CSR_SHIFT_AND_MASK(FPCR, RSV0, 3, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INV3, 4, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO0, 5, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVF3, 6, 1), ++ CSR_SHIFT_AND_MASK(FPCR, UNF3, 7, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INE3, 8, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO1, 9, 1), ++ CSR_SHIFT_AND_MASK(FPCR, RSV1, 10, 10), ++ CSR_SHIFT_AND_MASK(FPCR, INV2, 20, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO2, 21, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVF2, 22, 1), ++ CSR_SHIFT_AND_MASK(FPCR, UNF2, 23, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INE2, 24, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO3, 25, 1), ++ CSR_SHIFT_AND_MASK(FPCR, RSV2, 26, 10), ++ CSR_SHIFT_AND_MASK(FPCR, INV1, 36, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO4, 37, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVF1, 38, 1), ++ CSR_SHIFT_AND_MASK(FPCR, UNF1, 39, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INE1, 40, 1), ++ CSR_SHIFT_AND_MASK(FPCR, ZERO5, 41, 1), ++ CSR_SHIFT_AND_MASK(FPCR, RSV3, 42, 6), ++ CSR_SHIFT_AND_MASK(FPCR, DNZ, 48, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INVD, 49, 1), ++ CSR_SHIFT_AND_MASK(FPCR, DZED, 50, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVFD, 51, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INV0, 52, 1), ++ CSR_SHIFT_AND_MASK(FPCR, DZE0, 53, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVF0, 54, 1), ++ CSR_SHIFT_AND_MASK(FPCR, UNF0, 55, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INE0, 56, 1), ++ CSR_SHIFT_AND_MASK(FPCR, OVI0, 57, 1), ++ CSR_SHIFT_AND_MASK(FPCR, DYN, 58, 2), ++ CSR_SHIFT_AND_MASK(FPCR, UNDZ, 60, 1), ++ CSR_SHIFT_AND_MASK(FPCR, UNFD, 61, 1), ++ CSR_SHIFT_AND_MASK(FPCR, INED, 62, 1), ++ CSR_SHIFT_AND_MASK(FPCR, SUM, 63, 1), ++}; ++ ++/* Arithmetic exception (entArith) constants. */ ++#define EXC_M_SWC 1 /* Software completion */ ++#define EXC_M_INV 2 /* Invalid operation */ ++#define EXC_M_DZE 4 /* Division by zero */ ++#define EXC_M_OVF 8 /* Overflow */ ++#define EXC_M_UNF 16 /* Underflow */ ++#define EXC_M_INE 32 /* Inexact result */ ++#define EXC_M_IOV 64 /* Integer Overflow */ ++#define EXC_M_DNO 128 /* Denomal operation */ ++ ++void QEMU_NORETURN dynamic_excp(CPUSW64State *env, uintptr_t retaddr, int excp, ++ int error); ++void QEMU_NORETURN arith_excp(CPUSW64State *env, uintptr_t retaddr, int exc, ++ uint64_t mask); ++ ++#define DEBUG_ARCH ++#ifdef DEBUG_ARCH ++#define arch_assert(x) \ ++ do { \ ++ g_assert(x); /*fprintf(stderr, "+6b %d\n", __LINE__); */ \ ++ } while (0) ++#else ++#define arch_assert(x) ++#endif ++ ++typedef struct SW64CPUInfo { ++ const char *name; ++ void (*initfn)(Object *obj); ++ void (*class_init)(ObjectClass *oc, void *data); ++} SW64CPUInfo; ++#define test_feature(env, x) (env->features & (x)) ++ ++/* Slave */ ++#endif +diff --git a/target/sw64/exception.c b/target/sw64/exception.c +new file mode 100644 +index 0000000000..a2df1cd329 +--- /dev/null ++++ b/target/sw64/exception.c +@@ -0,0 +1,76 @@ ++#include "qemu/osdep.h" ++#include "qemu/timer.h" ++ ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "fpu/softfloat.h" ++#include "exec/helper-proto.h" ++#include "hw/core/cpu.h" ++ ++#ifndef CONFIG_USER_ONLY ++void QEMU_NORETURN sw64_cpu_do_unaligned_access(CPUState *cs, vaddr addr, ++ MMUAccessType access_type, ++ int mmu_idx, uintptr_t retaddr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ uint32_t insn = 0; ++ ++ if (retaddr) { ++ cpu_restore_state(cs, retaddr, true); ++ } ++ ++ fprintf(stderr, "Error %s addr = %lx\n", __func__, addr); ++ env->csr[DVA] = addr; ++ ++ env->csr[EXC_SUM] = ((insn >> 21) & 31) << 8; /* opcode */ ++ env->csr[DS_STAT] = (insn >> 26) << 4; /* dest regno */ ++ cs->exception_index = EXCP_UNALIGN; ++ env->error_code = 0; ++ cpu_loop_exit(cs); ++} ++ ++#endif ++ ++/* This should only be called from translate, via gen_excp. ++ We expect that ENV->PC has already been updated. */ ++void QEMU_NORETURN helper_excp(CPUSW64State *env, int excp, int error) ++{ ++ SW64CPU *cpu = sw64_env_get_cpu(env); ++ CPUState *cs = CPU(cpu); ++ ++ cs->exception_index = excp; ++ env->error_code = error; ++ cpu_loop_exit(cs); ++} ++ ++/* This may be called from any of the helpers to set up EXCEPTION_INDEX. */ ++void QEMU_NORETURN dynamic_excp(CPUSW64State *env, uintptr_t retaddr, int excp, ++ int error) ++{ ++ SW64CPU *cpu = sw64_env_get_cpu(env); ++ CPUState *cs = CPU(cpu); ++ ++ cs->exception_index = excp; ++ env->error_code = error; ++ if (retaddr) { ++ /* FIXME: Not jump to another tb, but jump to next insn emu */ ++ cpu_restore_state(cs, retaddr, true); ++ /* Floating-point exceptions (our only users) point to the next PC. */ ++ env->pc += 4; ++ } ++ cpu_loop_exit(cs); ++} ++ ++void QEMU_NORETURN arith_excp(CPUSW64State *env, uintptr_t retaddr, int exc, ++ uint64_t mask) ++{ ++ env->csr[EXC_SUM] = exc; ++ dynamic_excp(env, retaddr, EXCP_ARITH, 0); ++} ++ ++ ++void helper_trace_mem(CPUSW64State *env, uint64_t addr, uint64_t val) ++{ ++ /* printf("pc = %lx: Access mem addr =%lx, val = %lx\n", env->pc, addr,val); */ ++} +diff --git a/target/sw64/float_helper.c b/target/sw64/float_helper.c +new file mode 100644 +index 0000000000..ad1c3cce48 +--- /dev/null ++++ b/target/sw64/float_helper.c +@@ -0,0 +1,846 @@ ++#include "qemu/osdep.h" ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "exec/helper-proto.h" ++#include "fpu/softfloat.h" ++ ++static inline uint32_t extractFloat16Frac(float16 a) ++{ ++ return float16_val(a) & 0x3ff; ++} ++ ++/*---------------------------------------------------------------------------- ++| Returns the exponent bits of the half-precision floating-point value `a'. ++*----------------------------------------------------------------------------*/ ++ ++static inline int extractFloat16Exp(float16 a) ++{ ++ return (float16_val(a) >> 10) & 0x1f; ++} ++ ++/*---------------------------------------------------------------------------- ++| Returns the sign bit of the single-precision floating-point value `a'. ++*----------------------------------------------------------------------------*/ ++ ++static inline uint8_t extractFloat16Sign(float16 a) ++{ ++ return float16_val(a) >> 15; ++} ++ ++#define FP_STATUS (env->fp_status) ++ ++#define CONVERT_BIT(X, SRC, DST) \ ++ (SRC > DST ? (X) / (SRC / DST) & (DST) : ((X)&SRC) * (DST / SRC)) ++ ++static uint64_t soft_to_errcode_exc(CPUSW64State *env) ++{ ++ uint8_t exc = get_float_exception_flags(&FP_STATUS); ++ ++ if (unlikely(exc)) { ++ set_float_exception_flags(0, &FP_STATUS); ++ } ++ return exc; ++} ++ ++static inline uint64_t float32_to_s_int(uint32_t fi) ++{ ++ uint32_t frac = fi & 0x7fffff; ++ uint32_t sign = (fi >> 31) & 1; ++ uint32_t exp_msb = (fi >> 30) & 1; ++ uint32_t exp_low = (fi >> 23) & 0x7f; ++ uint32_t exp; ++ ++ exp = (exp_msb << 10) | exp_low; ++ if (exp_msb) { ++ if (exp_low == 0x7f) { ++ exp = 0x7ff; ++ } ++ } else { ++ if (exp_low != 0x00) { ++ exp |= 0x380; ++ } ++ } ++ ++ return (((uint64_t)sign << 63) | ((uint64_t)exp << 52) | ++ ((uint64_t)frac << 29)); ++} ++ ++static inline uint64_t float32_to_s(float32 fa) ++{ ++ CPU_FloatU a; ++ a.f = fa; ++ return float32_to_s_int(a.l); ++} ++static inline uint32_t s_to_float32_int(uint64_t a) ++{ ++ return ((a >> 32) & 0xc0000000) | ((a >> 29) & 0x3fffffff); ++} ++ ++static inline float32 s_to_float32(uint64_t a) ++{ ++ CPU_FloatU r; ++ r.l = s_to_float32_int(a); ++ return r.f; ++} ++ ++uint32_t helper_s_to_memory(uint64_t a) ++{ ++ return s_to_float32(a); ++} ++ ++uint64_t helper_memory_to_s(uint32_t a) ++{ ++ return float32_to_s(a); ++} ++ ++uint64_t helper_fcvtls(CPUSW64State *env, uint64_t a) ++{ ++ float32 fr = int64_to_float32(a, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fcvtld(CPUSW64State *env, uint64_t a) ++{ ++ float64 fr = int64_to_float64(a, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++ return (uint64_t)fr; ++} ++ ++static uint64_t do_fcvtdl(CPUSW64State *env, uint64_t a, uint64_t roundmode) ++{ ++ uint64_t frac, ret = 0; ++ uint32_t exp, sign, exc = 0; ++ int shift; ++ ++ sign = (a >> 63); ++ exp = (uint32_t)(a >> 52) & 0x7ff; ++ frac = a & 0xfffffffffffffull; ++ ++ if (exp == 0) { ++ if (unlikely(frac != 0) && !env->fp_status.flush_inputs_to_zero) { ++ goto do_underflow; ++ } ++ } else if (exp == 0x7ff) { ++ exc = float_flag_invalid; ++ } else { ++ /* Restore implicit bit. */ ++ frac |= 0x10000000000000ull; ++ ++ shift = exp - 1023 - 52; ++ if (shift >= 0) { ++ /* In this case the number is so large that we must shift ++ the fraction left. There is no rounding to do. */ ++ if (shift < 64) { ++ ret = frac << shift; ++ } ++ /* Check for overflow. Note the special case of -0x1p63. */ ++ if (shift >= 11 && a != 0xC3E0000000000000ull) { ++ exc = float_flag_inexact; ++ } ++ } else { ++ uint64_t round; ++ ++ /* In this case the number is smaller than the fraction as ++ represented by the 52 bit number. Here we must think ++ about rounding the result. Handle this by shifting the ++ fractional part of the number into the high bits of ROUND. ++ This will let us efficiently handle round-to-nearest. */ ++ shift = -shift; ++ if (shift < 63) { ++ ret = frac >> shift; ++ round = frac << (64 - shift); ++ } else { ++ /* The exponent is so small we shift out everything. ++ Leave a sticky bit for proper rounding below. */ ++ do_underflow: ++ round = 1; ++ } ++ ++ if (round) { ++ exc = float_flag_inexact; ++ switch (roundmode) { ++ case float_round_nearest_even: ++ if (round == (1ull << 63)) { ++ /* Fraction is exactly 0.5; round to even. */ ++ ret += (ret & 1); ++ } else if (round > (1ull << 63)) { ++ ret += 1; ++ } ++ break; ++ case float_round_to_zero: ++ break; ++ case float_round_up: ++ ret += 1 - sign; ++ break; ++ case float_round_down: ++ ret += sign; ++ break; ++ } ++ } ++ } ++ if (sign) { ++ ret = -ret; ++ } ++ } ++ env->error_code = exc; ++ ++ return ret; ++} ++ ++/* TODO: */ ++uint64_t helper_fris(CPUSW64State *env, uint64_t a, uint64_t roundmode) ++{ ++ uint64_t ir; ++ float32 fr; ++ ++ if (roundmode == 5) ++ roundmode = env->fpcr_round_mode; ++ ir = do_fcvtdl(env, a, roundmode); ++ fr = int64_to_float32(ir, &FP_STATUS); ++ return float32_to_s(fr); ++} ++ ++/* TODO: */ ++uint64_t helper_frid(CPUSW64State *env, uint64_t a, uint64_t roundmode) ++{ ++ if (roundmode == 5) ++ roundmode = env->fpcr_round_mode; ++ return int64_to_float64(do_fcvtdl(env, a, roundmode), &FP_STATUS); ++} ++ ++uint64_t helper_fcvtdl(CPUSW64State *env, uint64_t a, uint64_t roundmode) ++{ ++ return do_fcvtdl(env, a, roundmode); ++} ++ ++uint64_t helper_fcvtdl_dyn(CPUSW64State *env, uint64_t a) ++{ ++ uint64_t roundmode = (uint64_t)(env->fpcr_round_mode); ++ return do_fcvtdl(env, a, roundmode); ++} ++ ++uint64_t helper_fcvtsd(CPUSW64State *env, uint64_t a) ++{ ++ float32 fa; ++ float64 fr; ++ ++ fa = s_to_float32(a); ++ fr = float32_to_float64(fa, &FP_STATUS); ++ ++ return fr; ++} ++ ++uint64_t helper_fcvtds(CPUSW64State *env, uint64_t a) ++{ ++ float32 fa; ++ ++ fa = float64_to_float32((float64)a, &FP_STATUS); ++ ++ return float32_to_s(fa); ++} ++ ++uint64_t helper_fcvtwl(CPUSW64State *env, uint64_t a) ++{ ++ int32_t ret; ++ ret = (a >> 29) & 0x3fffffff; ++ ret |= ((a >> 62) & 0x3) << 30; ++ return (uint64_t)(int64_t)ret; //int32_t to int64_t as Sign-Extend ++} ++ ++uint64_t helper_fcvtlw(CPUSW64State *env, uint64_t a) ++{ ++ uint64_t ret; ++ ret = (a & 0x3fffffff) << 29; ++ ret |= ((a >> 30) & 0x3) << 62; ++ return ret; ++} ++ ++uint64_t helper_fadds(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float32 fa, fb, fr; ++ ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++#if 1 ++ fr = float32_add(fa, fb, &FP_STATUS); ++ ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(float*)&fr = *(float*)&fb + *(float*)&fa; ++#endif ++ return float32_to_s(fr); ++} ++ ++/* Input handing without software completion. Trap for all ++ non-finite numbers. */ ++uint64_t helper_faddd(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb, fr; ++ ++ fa = (float64)a; ++ fb = (float64)b; ++#if 1 ++ fr = float64_add(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(double*)&fr = *(double*)&fb + *(double*)&fa; ++#endif ++ return (uint64_t)fr; ++} ++ ++uint64_t helper_fsubs(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float32 fa, fb, fr; ++ ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++#if 1 ++ fr = float32_sub(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(float*)&fr = *(float*)&fa - *(float*)&fb; ++#endif ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fsubd(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb, fr; ++ ++ fa = (float64)a; ++ fb = (float64)b; ++#if 1 ++ fr = float64_sub(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(double*)&fr = *(double*)&fa - *(double*)&fb; ++#endif ++ return (uint64_t)fr; ++} ++ ++uint64_t helper_fmuls(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float32 fa, fb, fr; ++ ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++#if 1 ++ fr = float32_mul(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(float*)&fr = *(float*)&fa * *(float*)&fb; ++#endif ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fmuld(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb, fr; ++ ++ fa = (float64)a; ++ fb = (float64)b; ++#if 1 ++ fr = float64_mul(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(double*)&fr = *(double*)&fa * *(double*)&fb; ++#endif ++ return (uint64_t)fr; ++} ++ ++uint64_t helper_fdivs(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float32 fa, fb, fr; ++ ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++#if 1 ++ fr = float32_div(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(float*)&fr = *(float*)&fa / *(float*)&fb; ++#endif ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fdivd(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb, fr; ++ ++ fa = (float64)a; ++ fb = (float64)b; ++#if 1 ++ fr = float64_div(fa, fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(double*)&fr = *(double*)&fa / *(double*)&fb; ++#endif ++ ++ return (uint64_t)fr; ++} ++ ++uint64_t helper_frecs(CPUSW64State *env, uint64_t a) ++{ ++ float32 fa, fb, fr; ++ ++ fa = s_to_float32(a); ++ fb = int64_to_float32(1, &FP_STATUS); ++#if 1 ++ fr = float32_div(fb, fa, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(float*)&fr = *(float*)&fb / *(float*)&fa; ++#endif ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_frecd(CPUSW64State *env, uint64_t a) ++{ ++ float64 fa, fb, fr; ++ ++ fa = (float64)a; ++ fb = int64_to_float64(1, &FP_STATUS); ++#if 1 ++ fr = float64_div(fb, fa, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++ *(double*)&fr = *(double*)&fb / *(double*)&fa; ++#endif ++ ++ return (uint64_t)fr; ++} ++ ++uint64_t helper_fsqrts(CPUSW64State *env, uint64_t b) ++{ ++ float32 fb, fr; ++#if 1 ++ fb = s_to_float32(b); ++ fr = float32_sqrt(fb, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++#include ++ *(double*)&fr = sqrt(*(double*)&b); ++#endif ++ ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fsqrt(CPUSW64State *env, uint64_t b) ++{ ++ float64 fr; ++ ++#if 1 ++ fr = float64_sqrt(b, &FP_STATUS); ++ env->error_code = soft_to_errcode_exc(env); ++#else ++#include ++ *(double*)&fr = sqrt(*(double*)&b); ++#endif ++ ++ return (uint64_t)fr; ++} ++ ++ ++uint64_t helper_fmas(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float32 fa, fb, fc, fr; ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++ fc = s_to_float32(c); ++ ++ fr = float32_muladd(fa, fb, fc, 0, &FP_STATUS); ++ ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fmad(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float64 fr; ++ ++ fr = float64_muladd(a, b, c, 0, &FP_STATUS); ++ ++ return fr; ++} ++ ++ ++uint64_t helper_fmss(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float32 fa, fb, fc, fr; ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++ fc = s_to_float32(c); ++ ++ fr = float32_muladd(fa, fb, fc, float_muladd_negate_c, &FP_STATUS); ++ ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fmsd(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float64 fr; ++ ++ fr = float64_muladd(a, b, c, float_muladd_negate_c, &FP_STATUS); ++ ++ return fr; ++} ++ ++ ++uint64_t helper_fnmas(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float32 fa, fb, fc, fr; ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++ fc = s_to_float32(c); ++ int flag = float_muladd_negate_product; ++ ++ fr = float32_muladd(fa, fb, fc, flag, &FP_STATUS); ++ ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fnmad(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float64 fr; ++ int flag = float_muladd_negate_product; ++ ++ fr = float64_muladd(a, b, c, flag, &FP_STATUS); ++ ++ return fr; ++} ++ ++uint64_t helper_fnmss(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float32 fa, fb, fc, fr; ++ fa = s_to_float32(a); ++ fb = s_to_float32(b); ++ fc = s_to_float32(c); ++ int flag = float_muladd_negate_product | float_muladd_negate_c; ++ ++ fr = float32_muladd(fa, fb, fc, flag, &FP_STATUS); ++ ++ return float32_to_s(fr); ++} ++ ++uint64_t helper_fnmsd(CPUSW64State *env, uint64_t a, uint64_t b, uint64_t c) ++{ ++ float64 fr; ++ int flag = float_muladd_negate_product | float_muladd_negate_c; ++ ++ fr = float64_muladd(a, b, c, flag, &FP_STATUS); ++ ++ return fr; ++} ++uint64_t helper_load_fpcr(CPUSW64State *env) ++{ ++ return cpu_sw64_load_fpcr(env); ++} ++ ++static void update_fpcr_status_mask(CPUSW64State *env) ++{ ++ uint64_t t = 0; ++ ++ /* Don't mask the inv excp: ++ * EXC_CTL1 = 1 ++ * EXC_CTL1 = 0, input denormal, DNZ=0 ++ * EXC_CTL1 = 0, no input denormal or DNZ=1, INVD = 0 ++ */ ++ if ((env->fpcr & FPCR_MASK(EXC_CTL) & 0x2)) { ++ if (env->fpcr & FPCR_MASK(EXC_CTL) & 0x1) { ++ t |= (EXC_M_INE | EXC_M_UNF | EXC_M_IOV); ++ } else { ++ t |= EXC_M_INE; ++ } ++ } else { ++ /* INV and DNO mask */ ++ if (env->fpcr & FPCR_MASK(DNZ)) t |= EXC_M_DNO; ++ if (env->fpcr & FPCR_MASK(INVD)) t |= EXC_M_INV; ++ if (env->fpcr & FPCR_MASK(OVFD)) t |= EXC_M_OVF; ++ if (env->fpcr & FPCR_MASK(UNFD)) { ++ t |= EXC_M_UNF; ++ } ++ if (env->fpcr & FPCR_MASK(DZED)) t |= EXC_M_DZE; ++ if (env->fpcr & FPCR_MASK(INED)) t |= EXC_M_INE; ++ } ++ ++ env->fpcr_exc_enable = t; ++} ++ ++void helper_store_fpcr(CPUSW64State *env, uint64_t val) ++{ ++ uint64_t fpcr = val; ++ uint8_t ret; ++ ++ switch ((fpcr & FPCR_MASK(DYN)) >> FPCR_DYN_S) { ++ case 0x0: ++ ret = float_round_to_zero; ++ break; ++ case 0x1: ++ ret = float_round_down; ++ break; ++ case 0x2: ++ ret = float_round_nearest_even; ++ break; ++ case 0x3: ++ ret = float_round_up; ++ break; ++ default: ++ ret = float_round_nearest_even; ++ break; ++ } ++ ++ env->fpcr_round_mode = ret; ++ ++ env->fp_status.float_rounding_mode = ret; ++ ++ env->fpcr_flush_to_zero = ++ (fpcr & FPCR_MASK(UNFD)) && (fpcr & FPCR_MASK(UNDZ)); ++ env->fp_status.flush_to_zero = env->fpcr_flush_to_zero; ++ ++ /* FIXME: Now the DNZ flag does not work int C3A. */ ++ //set_flush_inputs_to_zero((val & FPCR_MASK(DNZ)) != 0? 1 : 0, &FP_STATUS); ++ ++ val &= ~0x3UL; ++ val |= env->fpcr & 0x3UL; ++ env->fpcr = val; ++ update_fpcr_status_mask(env); ++} ++ ++void helper_setfpcrx(CPUSW64State *env, uint64_t val) ++{ ++ if (env->fpcr & FPCR_MASK(EXC_CTL_WEN)) { ++ env->fpcr &= ~3UL; ++ env->fpcr |= val & 0x3; ++ update_fpcr_status_mask(env); ++ } ++} ++#ifndef CONFIG_USER_ONLY ++static uint32_t soft_to_exc_type(uint64_t exc) ++{ ++ uint32_t ret = 0; ++ ++ if (unlikely(exc)) { ++ ret |= CONVERT_BIT(exc, float_flag_invalid, EXC_M_INV); ++ ret |= CONVERT_BIT(exc, float_flag_divbyzero, EXC_M_DZE); ++ ret |= CONVERT_BIT(exc, float_flag_overflow, EXC_M_OVF); ++ ret |= CONVERT_BIT(exc, float_flag_underflow, EXC_M_UNF); ++ ret |= CONVERT_BIT(exc, float_flag_inexact, EXC_M_INE); ++ } ++ ++ return ret; ++} ++static void fp_exc_raise1(CPUSW64State *env, uintptr_t retaddr, uint64_t exc, ++ uint32_t regno) ++{ ++ if (!likely(exc)) ++ return; ++ arith_excp(env, retaddr, exc, 1ull << regno); ++} ++ ++void helper_fp_exc_raise(CPUSW64State *env, uint32_t regno) ++{ ++ uint64_t exc = env->error_code; ++ uint32_t exc_type = soft_to_exc_type(exc); ++ ++ if (exc_type) { ++ exc_type &= ~(env->fpcr_exc_enable); ++ if (exc_type) fp_exc_raise1(env, GETPC(), exc_type | EXC_M_SWC, regno); ++ } ++} ++#endif ++ ++void helper_ieee_input(CPUSW64State *env, uint64_t val) ++{ ++#ifndef CONFIG_USER_ONLY ++ uint32_t exp = (uint32_t)(val >> 52) & 0x7ff; ++ uint64_t frac = val & 0xfffffffffffffull; ++ ++ if (exp == 0x7ff) { ++ /* Infinity or NaN. */ ++ uint32_t exc_type = EXC_M_INV; ++ ++ if (exc_type) { ++ exc_type &= ~(env->fpcr_exc_enable); ++ if (exc_type) ++ fp_exc_raise1(env, GETPC(), exc_type | EXC_M_SWC, 32); ++ } ++ } ++#endif ++} ++ ++void helper_ieee_input_s(CPUSW64State *env, uint64_t val) ++{ ++ if (unlikely(2 * val - 1 < 0x1fffffffffffffull) && ++ !env->fp_status.flush_inputs_to_zero) { ++ } ++} ++ ++static inline float64 t_to_float64(uint64_t a) ++{ ++ /* Memory format is the same as float64 */ ++ CPU_DoubleU r; ++ r.ll = a; ++ return r.d; ++} ++ ++uint64_t helper_fcmpun(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_unordered_quiet(fa, fb, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmpeq(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_eq_quiet(fa, fb, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmple(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_le_quiet(fa, fb, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmplt(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_lt_quiet(fa, fb, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmpge(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_le_quiet(fb, fa, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmpgt(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ fa = t_to_float64(a); ++ fb = t_to_float64(b); ++ ++ if (float64_lt_quiet(fb, fa, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmpge_s(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ /* Make sure va and vb is s float. */ ++ fa = float32_to_float64(s_to_float32(a), &FP_STATUS); ++ fb = float32_to_float64(s_to_float32(b), &FP_STATUS); ++ ++ if (float64_le_quiet(fb, fa, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++uint64_t helper_fcmple_s(CPUSW64State *env, uint64_t a, uint64_t b) ++{ ++ float64 fa, fb; ++ uint64_t ret = 0; ++ ++ /* Make sure va and vb is s float. */ ++ fa = float32_to_float64(s_to_float32(a), &FP_STATUS); ++ fb = float32_to_float64(s_to_float32(b), &FP_STATUS); ++ ++ if (float64_le_quiet(fa, fb, &FP_STATUS)) { ++ ret = 0x4000000000000000ULL; ++ } ++ env->error_code = soft_to_errcode_exc(env); ++ ++ return ret; ++} ++ ++void helper_vfcvtsh(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ uint64_t temp = 0; ++ int i; ++ for (i = 0; i < 4; i++) { ++ temp |= (uint64_t)float32_to_float16(s_to_float32(env->fr[ra + i * 32]), ++ 1, &FP_STATUS) ++ << (i * 16); ++ } ++ for (i = 0; i < 4; i++) { ++ if (i == (vc & 0x3)) { ++ env->fr[rd + i * 32] = temp; ++ } else { ++ env->fr[rd + i * 32] = env->fr[rb + i * 32]; ++ } ++ } ++} ++ ++void helper_vfcvths(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ uint64_t temp; ++ int i; ++ ++ temp = env->fr[ra + 32 * (vc & 0x3)]; ++ for (i = 0; i < 4; i++) { ++ env->fr[rd + i * 32] = float32_to_s( ++ float16_to_float32((temp >> (i * 16)) & 0xffffUL, 1, &FP_STATUS)); ++ } ++} +diff --git a/target/sw64/helper.c b/target/sw64/helper.c +new file mode 100644 +index 0000000000..0cc0af7087 +--- /dev/null ++++ b/target/sw64/helper.c +@@ -0,0 +1,349 @@ ++/* ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 2 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, see . ++ */ ++ ++#include "qemu/osdep.h" ++#include "qemu/timer.h" ++ ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "fpu/softfloat.h" ++#include "exec/helper-proto.h" ++#include "hw/core/cpu.h" ++#include "exec/memattrs.h" ++ ++#if defined(CONFIG_USER_ONLY) ++bool sw64_cpu_tlb_fill(CPUState *cs, vaddr address, int size, ++ MMUAccessType access_type, int mmu_idx, ++ bool probe, uintptr_t retaddr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ ++ cs->exception_index = EXCP_MMFAULT; ++ cpu->env.trap_arg0 = address; ++ cpu_loop_exit_restore(cs, retaddr); ++} ++#else ++static target_ulong ldq_phys_clear(CPUState *cs, target_ulong phys) ++{ ++ return ldq_phys(cs->as, phys & ~(3UL)); ++} ++ ++static int get_sw64_physical_address(CPUSW64State *env, target_ulong addr, ++ int prot_need, int mmu_idx, target_ulong *pphys, ++ int *pprot) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ target_ulong phys = 0; ++ int prot = 0; ++ int ret = MM_K_ACV; ++ target_ulong L1pte, L2pte, L3pte, L4pte; ++ target_ulong pt, index, pte_pfn_s; ++ ++ if (((addr >> 28) & 0xffffffff8) == 0xffffffff8) { ++ phys = (~(0xffffffff80000000)) & addr; ++ prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; ++ ret = -1; ++ goto exit; ++ } else if (((addr >> 32) & 0xfffff000) == 0xfffff000) { ++ goto do_pgmiss; ++ } else if (((addr >> 52) & 0xfff) == 0xfff) { ++ phys = (~(0xfff0000000000000)) & addr; ++ prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; ++ ret = -1; ++ goto exit; ++ } ++do_pgmiss: ++ pte_pfn_s = 28; ++ pt = env->csr[PTBR]; ++ index = (addr >> (TARGET_PAGE_BITS + 3 * TARGET_LEVEL_BITS)) & ((1 << TARGET_LEVEL_BITS)-1); ++ L1pte = ldq_phys_clear(cs, pt + index * 8); ++ if ((L1pte & PTE_VALID) == 0) { ++ ret = MM_K_TNV; ++ goto exit; ++ } ++ if (((L1pte >> 1) & 1) && prot_need == 0) { ++ ret = MM_K_FOR; ++ goto exit; ++ } ++ if (((L1pte >> 2) & 1) && prot_need == 1) { ++ ret = MM_K_FOW; ++ goto exit; ++ } ++ pt = L1pte >> pte_pfn_s << TARGET_PAGE_BITS; ++ ++ index = (addr >> (TARGET_PAGE_BITS + 2 * TARGET_LEVEL_BITS)) & ((1 << TARGET_LEVEL_BITS)-1); ++ L2pte = ldq_phys_clear(cs, pt + index * 8); ++ ++ if ((L2pte & PTE_VALID) == 0) { ++ ret = MM_K_TNV; ++ goto exit; ++ } ++ if (((L2pte >> 1) & 1) && prot_need == 0) { ++ ret = MM_K_FOR; ++ goto exit; ++ } ++ if (((L2pte >> 2) & 1) && prot_need == 1) { ++ ret = MM_K_FOW; ++ goto exit; ++ } ++ ++ pt = L2pte >> pte_pfn_s << TARGET_PAGE_BITS; ++ ++ index = (addr >> (TARGET_PAGE_BITS + 1 * TARGET_LEVEL_BITS)) & ((1 << TARGET_LEVEL_BITS)-1); ++ L3pte = ldq_phys_clear(cs, pt + index * 8); ++ ++ if ((L3pte & PTE_VALID) == 0) { ++ ret = MM_K_TNV; ++ goto exit; ++ } ++ if (((L3pte >> 1) & 1) && prot_need == 0) { ++ ret = MM_K_FOR; ++ goto exit; ++ } ++ if (((L3pte >> 2) & 1) && prot_need == 1) { ++ ret = MM_K_FOW; ++ goto exit; ++ } ++ ++ pt = L3pte >> pte_pfn_s << TARGET_PAGE_BITS; ++ ++ index = (addr >> TARGET_PAGE_BITS) & ((1 << TARGET_LEVEL_BITS)-1); ++ L4pte = ldq_phys_clear(cs, pt + index * 8); ++ if ((L4pte & PTE_VALID) == 0) { ++ ret = MM_K_TNV; ++ goto exit; ++ } ++#if PAGE_READ != 1 || PAGE_WRITE != 2 || PAGE_EXEC != 4 ++#error page bits out of date ++#endif ++ ++ /* Check access violations. */ ++ if ((L4pte & PTE_FOR) == 0) { ++ prot |= PAGE_READ | PAGE_EXEC; ++ } ++ if ((L4pte & PTE_FOW) == 0) { ++ prot |= PAGE_WRITE; ++ } ++ ++ /* Check fault-on-operation violations. */ ++ prot &= ~(L4pte >> 1); ++ ++ phys = (L4pte >> pte_pfn_s << TARGET_PAGE_BITS); ++ ++ if (unlikely((prot & prot_need) == 0)) { ++ ret = (prot_need & PAGE_EXEC ++ ? MM_K_FOE ++ : prot_need & PAGE_WRITE ++ ? MM_K_FOW ++ : prot_need & PAGE_READ ? MM_K_FOR : -1); ++ goto exit; ++ } ++ ++ ret = -1; ++exit: ++ *pphys = phys; ++ *pprot = prot; ++ return ret; ++} ++ ++bool sw64_cpu_tlb_fill(CPUState *cs, vaddr address, int size, ++ MMUAccessType access_type, int mmu_idx, ++ bool probe, uintptr_t retaddr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ target_ulong phys; ++ int prot, fail; ++ ++ if (mmu_idx == MMU_PHYS_IDX) { ++ phys = address; ++ prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; ++ fail = 0; ++ if ((address >> 52) & 1) goto do_pgmiss; ++ goto done; ++ } ++ ++do_pgmiss: ++ fail = get_sw64_physical_address(env, address, 1 << access_type, mmu_idx, &phys, &prot); ++ if (unlikely(fail >= 0)) { ++ if (probe) { ++ return false; ++ } ++ cs->exception_index = EXCP_MMFAULT; ++ if (access_type == 2) { ++ env->csr[DS_STAT] = fail; ++ env->csr[DVA] = address & ~(3UL); ++ } else { ++ env->csr[DS_STAT] = fail | (((unsigned long)access_type + 1) << 3); ++ env->csr[DVA] = address; ++ } ++ env->error_code = access_type; ++ cpu_loop_exit_restore(cs, retaddr); ++ } ++done: ++ tlb_set_page(cs, address & TARGET_PAGE_MASK, phys & TARGET_PAGE_MASK, prot, ++ mmu_idx, TARGET_PAGE_SIZE); ++ return true; ++} ++ ++hwaddr sw64_cpu_get_phys_page_debug(CPUState *cs, vaddr addr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ target_ulong phys; ++ int prot, fail; ++ int mmu_index = cpu_mmu_index(env, 0); ++ if (mmu_index == MMU_PHYS_IDX) { ++ phys = addr; ++ prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; ++ fail = -1; ++ if ((addr >> 52) & 1) goto do_pgmiss; ++ goto done; ++ } ++do_pgmiss: ++ fail = get_sw64_physical_address(&cpu->env, addr, 1, mmu_index, &phys, &prot); ++done: ++ return (fail >= 0 ? -1 : phys); ++} ++#endif ++ ++static void update_fpcr_status_mask(CPUSW64State* env) { ++ uint64_t t = 0; ++ ++ /* Don't mask the inv excp: ++ * EXC_CTL1 = 1 ++ * EXC_CTL1 = 0, input denormal, DNZ=0 ++ * EXC_CTL1 = 0, no input denormal or DNZ=1, INVD = 0 ++ */ ++ if ((env->fpcr & FPCR_MASK(EXC_CTL) & 0x2)) { ++ if (env->fpcr & FPCR_MASK(EXC_CTL) & 0x1) { ++ t |= (EXC_M_INE | EXC_M_UNF | EXC_M_IOV); ++ } else { ++ t |= EXC_M_INE; ++ } ++ } else { ++ /* INV and DNO mask */ ++ if (env->fpcr & FPCR_MASK(DNZ)) t |= EXC_M_DNO; ++ if (env->fpcr & FPCR_MASK(INVD)) t |= EXC_M_INV; ++ if (env->fpcr & FPCR_MASK(OVFD)) t |= EXC_M_OVF; ++ if (env->fpcr & FPCR_MASK(UNFD)) { ++ t |= EXC_M_UNF; ++ } ++ if (env->fpcr & FPCR_MASK(DZED)) t |= EXC_M_DZE; ++ if (env->fpcr & FPCR_MASK(INED)) t |= EXC_M_INE; ++ } ++ ++ env->fpcr_exc_enable = t; ++} ++ ++void cpu_sw64_store_fpcr(CPUSW64State* env, uint64_t val) { ++ uint64_t fpcr = val; ++ uint8_t ret; ++ ++ switch ((fpcr & FPCR_MASK(DYN)) >> FPCR_DYN_S) { ++ case 0x0: ++ ret = float_round_to_zero; ++ break; ++ case 0x1: ++ ret = float_round_down; ++ break; ++ case 0x2: ++ ret = float_round_nearest_even; ++ break; ++ case 0x3: ++ ret = float_round_up; ++ break; ++ default: ++ ret = float_round_nearest_even; ++ break; ++ } ++ ++ env->fpcr_round_mode = ret; ++ env->fp_status.float_rounding_mode = ret; ++ ++ env->fpcr_flush_to_zero = ++ (fpcr & FPCR_MASK(UNFD)) && (fpcr & FPCR_MASK(UNDZ)); ++ env->fp_status.flush_to_zero = env->fpcr_flush_to_zero; ++ ++ val &= ~0x3UL; ++ val |= env->fpcr & 0x3UL; ++ env->fpcr = val; ++ update_fpcr_status_mask(env); ++} ++ ++uint64_t helper_read_csr(CPUSW64State *env, uint64_t index) ++{ ++ if (index == PRI_BASE) ++ return 0x10000; ++ return env->csr[index]; ++} ++ ++uint64_t helper_rtc(void) ++{ ++#ifndef CONFIG_USER_ONLY ++ return qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) * CPUFREQ_SCALE; ++#else ++ return 0; ++#endif ++} ++ ++void helper_write_csr(CPUSW64State *env, uint64_t index, uint64_t va) ++{ ++ env->csr[index] = va; ++#ifndef CONFIG_USER_ONLY ++ CPUState *cs = &(sw64_env_get_cpu(env)->parent_obj); ++ SW64CPU *cpu = SW64_CPU(cs); ++ if ((index == DTB_IA) || (index == DTB_IV) || (index == DTB_IVP) || ++ (index == DTB_IU) || (index == DTB_IS) || (index == ITB_IA) || ++ (index == ITB_IV) || (index == ITB_IVP) || (index == ITB_IU) || ++ (index == ITB_IS) || (index == PTBR)) { ++ tlb_flush(cs); ++ } ++ if (index == INT_CLR || index == INT_PCI_INT) { ++ env->csr[INT_STAT] &= ~va; ++ } ++ ++ if (index == TIMER_CTL && env->csr[index] == 1) { ++ timer_mod(cpu->alarm_timer, qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) + 1000000000 / 250); ++ } ++#endif ++} ++ ++uint64_t cpu_sw64_load_fpcr(CPUSW64State *env) ++{ ++ return (uint64_t)env->fpcr; ++} ++ ++void helper_tb_flush(CPUSW64State *env) ++{ ++ tb_flush(CPU(sw64_env_get_cpu(env))); ++} ++ ++void helper_cpustate_update(CPUSW64State *env, uint64_t pc) ++{ ++ switch (pc & 0x3) { ++ case 0x00: ++ env->flags = ENV_FLAG_HM_MODE; ++ break; ++ case 0x01: ++ env->flags &= ~(ENV_FLAG_PS_USER | ENV_FLAG_HM_MODE); ++ break; ++ case 0x02: ++ env->flags &= ~(ENV_FLAG_PS_USER | ENV_FLAG_HM_MODE); ++ break; ++ case 0x03: ++ env->flags = ENV_FLAG_PS_USER; ++ } ++} +diff --git a/target/sw64/helper.h b/target/sw64/helper.h +new file mode 100644 +index 0000000000..7cafa563c2 +--- /dev/null ++++ b/target/sw64/helper.h +@@ -0,0 +1,127 @@ ++ ++DEF_HELPER_FLAGS_2(zap, TCG_CALL_NO_RWG_SE, i64, i64, i64) ++DEF_HELPER_FLAGS_2(zapnot, TCG_CALL_NO_RWG_SE, i64, i64, i64) ++DEF_HELPER_FLAGS_2(cmpgeb, TCG_CALL_NO_RWG_SE, i64, i64, i64) ++DEF_HELPER_FLAGS_1(s_to_memory, TCG_CALL_NO_RWG_SE, i32, i64) ++DEF_HELPER_FLAGS_1(memory_to_s, TCG_CALL_NO_RWG_SE, i64, i32) ++DEF_HELPER_FLAGS_2(fcvtls, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fcvtld, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_3(fcvtdl, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_2(fcvtdl_dyn, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_3(fris, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(frid, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_2(fcvtsd, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fcvtds, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fcvtwl, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fcvtlw, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_5(vfcvtsh, 0, void, env, i64, i64, i64, i64) ++DEF_HELPER_FLAGS_5(vfcvths, 0, void, env, i64, i64, i64, i64) ++DEF_HELPER_FLAGS_3(fadds, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(faddd, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fsubs, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fsubd, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fmuls, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fmuld, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fdivs, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fdivd, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_2(frecs, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(frecd, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fsqrts, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_2(fsqrt, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_4(fmas, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fmad, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fmss, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fmsd, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fnmas, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fnmad, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fnmss, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(fnmsd, TCG_CALL_NO_RWG, i64, env, i64, i64, i64) ++DEF_HELPER_FLAGS_0(rtc, TCG_CALL_NO_RWG, i64) ++DEF_HELPER_FLAGS_1(load_fpcr, 0, i64, env) ++DEF_HELPER_FLAGS_2(store_fpcr, 0, void, env, i64) ++DEF_HELPER_FLAGS_2(setfpcrx, 0, void, env, i64) ++DEF_HELPER_FLAGS_2(ieee_input, 0, void, env, i64) ++DEF_HELPER_FLAGS_2(ieee_input_s, 0, void, env, i64) ++DEF_HELPER_FLAGS_2(read_csr, TCG_CALL_NO_RWG, i64, env, i64) ++DEF_HELPER_FLAGS_3(write_csr, 0, void, env, i64, i64) ++DEF_HELPER_FLAGS_2(cpustate_update, 0, void, env, i64) ++DEF_HELPER_FLAGS_3(trace_mem, 0, void, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmpun, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmpeq, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmple, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmplt, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmpge, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmpgt, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmpge_s, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(fcmple_s, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_4(srlow, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(sllow, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vlogzz, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vconw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vcond, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vshfw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_2(ctlzow, 0, i64, env, i64) ++DEF_HELPER_FLAGS_4(vucaddw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucaddwi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubwi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucaddh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucaddhi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubhi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucaddb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucaddbi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vucsubbi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_3(vstw, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(vsts, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_3(vstd, TCG_CALL_NO_RWG, i64, env, i64, i64) ++DEF_HELPER_FLAGS_2(v_print, 0, void, env, i64) ++DEF_HELPER_FLAGS_1(tb_flush, 0, void, env) ++DEF_HELPER_FLAGS_4(vmaxb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vminb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vmaxh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vminh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vmaxw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vminw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(sraow, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vsm4r, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vsm4key, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vsm3msw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vcmpueqb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vcmpugtb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vcmpueqbi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vcmpugtbi, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vumaxb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vuminb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vumaxh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vuminh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vumaxw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vuminw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_5(vinsb, 0, void, env, i64, i64, i64, i64) ++DEF_HELPER_FLAGS_5(vinsh, 0, void, env, i64, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vinsectlh, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vinsectlw, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vinsectlb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_5(vshfq, 0, void, env, i64, i64, i64, i64) ++DEF_HELPER_FLAGS_4(vshfqb, 0, void, env, i64, i64, i64) ++DEF_HELPER_FLAGS_5(vsm3r, 0, void, env, i64, i64, i64, i64) ++ ++#ifndef CONFIG_USER_ONLY ++DEF_HELPER_FLAGS_2(fp_exc_raise, 0, void, env, i32) ++DEF_HELPER_FLAGS_2(pri_ldw, 0, i64, env, i64) ++DEF_HELPER_FLAGS_3(pri_stw, 0, void, env, i64, i64) ++DEF_HELPER_FLAGS_2(pri_ldl, 0, i64, env, i64) ++DEF_HELPER_FLAGS_3(pri_stl, 0, void, env, i64, i64) ++#endif ++ ++DEF_HELPER_3(excp, noreturn, env, int, int) ++//DEF_HELPER_FLAGS_3(faddh, TCG_CALL_NO_RWG, i64, env, i64, i64) ++//DEF_HELPER_FLAGS_3(fsubh, TCG_CALL_NO_RWG, i64, env, i64, i64) ++//DEF_HELPER_FLAGS_3(fmulh, TCG_CALL_NO_RWG, i64, env, i64, i64) ++#ifndef CONFIG_USER_ONLY ++/* Scale factor for core3 cpu freq, ie number of ns per tick. */ ++#define CPUFREQ_SCALE 3 ++#endif ++ ++/* SLAVE FLOAT HELPER. */ +diff --git a/target/sw64/int_helper.c b/target/sw64/int_helper.c +new file mode 100644 +index 0000000000..131182585a +--- /dev/null ++++ b/target/sw64/int_helper.c +@@ -0,0 +1,118 @@ ++#include "qemu/osdep.h" ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "exec/helper-proto.h" ++#include "qemu/host-utils.h" ++#include "exec/memattrs.h" ++ ++uint64_t helper_zapnot(uint64_t val, uint64_t mskb) ++{ ++ uint64_t mask; ++ ++ mask = -(mskb & 0x01) & 0x00000000000000ffull; ++ mask |= -(mskb & 0x02) & 0x000000000000ff00ull; ++ mask |= -(mskb & 0x04) & 0x0000000000ff0000ull; ++ mask |= -(mskb & 0x08) & 0x00000000ff000000ull; ++ mask |= -(mskb & 0x10) & 0x000000ff00000000ull; ++ mask |= -(mskb & 0x20) & 0x0000ff0000000000ull; ++ mask |= -(mskb & 0x40) & 0x00ff000000000000ull; ++ mask |= -(mskb & 0x80) & 0xff00000000000000ull; ++ ++ return val & mask; ++} ++ ++uint64_t helper_zap(uint64_t val, uint64_t mask) ++{ ++ return helper_zapnot(val, ~mask); ++} ++ ++uint64_t helper_cmpgeb(uint64_t va, uint64_t vb) ++{ ++ int i; ++ uint64_t ret = 0; ++ uint64_t tmp; ++ for (i = 0; i < 64; i += 8) { ++ tmp = ((va >> i) & 0xff) + (~(vb >> i) & 0xff) + 1; ++ ret |= (tmp >> 8) << (i / 8); ++ } ++ return ret; ++} ++ ++#ifndef CONFIG_USER_ONLY ++static inline MemTxAttrs cpu_get_mem_attrs(CPUSW64State *env) ++{ ++ return ((MemTxAttrs) { .secure = 1 }); ++} ++ ++static inline AddressSpace *cpu_addressspace(CPUState *cs, MemTxAttrs attrs) ++{ ++ return cpu_get_address_space(cs, cpu_asidx_from_attrs(cs, attrs)); ++} ++ ++uint64_t sw64_ldw_phys(CPUState *cs, hwaddr addr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ int32_t ret; ++ CPUSW64State *env = &cpu->env; ++ MemTxAttrs attrs = cpu_get_mem_attrs(env); ++ AddressSpace *as = cpu_addressspace(cs, attrs); ++ ++ ret = (int32_t)address_space_ldl(as, addr, attrs, NULL); ++ ++ return (uint64_t)(int64_t)ret; ++} ++ ++void sw64_stw_phys(CPUState *cs, hwaddr addr, uint64_t val) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ MemTxAttrs attrs = cpu_get_mem_attrs(env); ++ AddressSpace *as = cpu_addressspace(cs, attrs); ++ ++ address_space_stl(as, addr, (uint32_t)val, attrs, NULL); ++} ++ ++uint64_t sw64_ldl_phys(CPUState *cs, hwaddr addr) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ MemTxAttrs attrs = cpu_get_mem_attrs(env); ++ AddressSpace *as = cpu_addressspace(cs, attrs); ++ ++ return address_space_ldq(as, addr, attrs, NULL); ++} ++ ++void sw64_stl_phys(CPUState *cs, hwaddr addr, uint64_t val) ++{ ++ SW64CPU *cpu = SW64_CPU(cs); ++ CPUSW64State *env = &cpu->env; ++ MemTxAttrs attrs = cpu_get_mem_attrs(env); ++ AddressSpace *as = cpu_addressspace(cs, attrs); ++ ++ address_space_stq(as, addr, val, attrs, NULL); ++} ++ ++uint64_t helper_pri_ldw(CPUSW64State *env, uint64_t hwaddr) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ return sw64_ldw_phys(cs, hwaddr); ++} ++ ++void helper_pri_stw(CPUSW64State *env, uint64_t val, uint64_t hwaddr) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ sw64_stw_phys(cs, hwaddr, val); ++} ++ ++uint64_t helper_pri_ldl(CPUSW64State *env, uint64_t hwaddr) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ return sw64_ldl_phys(cs, hwaddr); ++} ++ ++void helper_pri_stl(CPUSW64State *env, uint64_t val, uint64_t hwaddr) ++{ ++ CPUState *cs = CPU(sw64_env_get_cpu(env)); ++ sw64_stl_phys(cs, hwaddr, val); ++} ++#endif +diff --git a/target/sw64/kvm.c b/target/sw64/kvm.c +new file mode 100644 +index 0000000000..fc134c83fb +--- /dev/null ++++ b/target/sw64/kvm.c +@@ -0,0 +1,215 @@ ++/* ++ * SW64 implementation of KVM hooks ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This work is licensed under the terms of the GNU GPL, version 2 or later. ++ * See the COPYING file in the top-level directory. ++ * ++ */ ++ ++#include "qemu/osdep.h" ++#include ++ ++#include ++ ++#include "qemu-common.h" ++#include "qemu/timer.h" ++#include "qemu/error-report.h" ++#include "sysemu/sysemu.h" ++#include "sysemu/kvm.h" ++#include "kvm_sw64.h" ++#include "cpu.h" ++#include "exec/memattrs.h" ++#include "exec/address-spaces.h" ++#include "hw/boards.h" ++#include "qemu/log.h" ++ ++#define init_pc 0xffffffff80011000 ++const KVMCapabilityInfo kvm_arch_required_capabilities[] = { ++ KVM_CAP_LAST_INFO ++}; ++/* 50000 jump to bootlader while 2f00000 jump to bios*/ ++int kvm_sw64_vcpu_init(CPUState *cs) ++{ ++ struct kvm_regs *regs; ++ SW64CPU *cpu = SW64_CPU(cs); ++ regs = (struct kvm_regs *)cpu->k_regs; ++ regs->pc = init_pc; ++ return kvm_vcpu_ioctl(cs, KVM_SET_REGS, ®s); ++} ++ ++static void kvm_sw64_host_cpu_class_init(ObjectClass *oc, void *data) ++{ ++} ++ ++static void kvm_sw64_host_cpu_initfn(Object *obj) ++{ ++} ++ ++ ++static const TypeInfo host_sw64_cpu_type_info = { ++ .name = TYPE_SW64_HOST_CPU, ++ .parent = TYPE_SW64_CPU, ++ .instance_init = kvm_sw64_host_cpu_initfn, ++ .class_init = kvm_sw64_host_cpu_class_init, ++ .class_size = sizeof(SW64HostCPUClass), ++}; ++ ++int kvm_arch_init(MachineState *ms, KVMState *s) ++{ ++ kvm_async_interrupts_allowed = true; ++ ++ type_register_static(&host_sw64_cpu_type_info); ++ ++ return 0; ++} ++ ++/* 50000 jump to bootlader while 2f00000 jump to bios*/ ++void kvm_sw64_reset_vcpu(SW64CPU *cpu) ++{ ++ CPUState *cs = CPU(cpu); ++ struct kvm_regs *regs; ++ int ret; ++ ++ regs = (struct kvm_regs *)cpu->k_regs; ++ regs->pc = init_pc; ++ ++ ret = kvm_vcpu_ioctl(cs, KVM_SET_REGS, ®s); ++ ++ if (ret < 0) { ++ fprintf(stderr, "kvm_sw64_vcpu_init failed: %s\n", strerror(-ret)); ++ abort(); ++ } ++ ++ ret = kvm_vcpu_ioctl(cs, KVM_SW64_VCPU_INIT, NULL); ++ ++ if (ret < 0) { ++ fprintf(stderr, "kvm_sw64_vcpu_init failed: %s\n", strerror(-ret)); ++ abort(); ++ } ++} ++ ++unsigned long kvm_arch_vcpu_id(CPUState *cpu) ++{ ++ return cpu->cpu_index; ++} ++ ++#include ++int kvm_arch_init_vcpu(CPUState *cs) ++{ ++ int ret; ++ ret = kvm_sw64_vcpu_init(cs); ++ if (ret) { ++ return ret; ++ } ++ return 0; ++} ++ ++int kvm_arch_destroy_vcpu(CPUState *cs) ++{ ++ return 0; ++} ++ ++int kvm_arch_get_registers(CPUState *cs) ++{ ++ int ret; ++ SW64CPU *cpu = SW64_CPU(cs); ++ ret = kvm_vcpu_ioctl(cs, KVM_GET_REGS, &cpu->k_regs); ++ if (ret < 0) ++ return ret; ++ return kvm_vcpu_ioctl(cs, KVM_SW64_GET_VCB, &cpu->k_vcb); ++} ++ ++int kvm_arch_put_registers(CPUState *cs, int level) ++{ ++ int ret; ++ SW64CPU *cpu = SW64_CPU(cs); ++ struct vcpucb *vcb; ++ ret = kvm_vcpu_ioctl(cs, KVM_SET_REGS, &cpu->k_regs); ++ if (ret < 0) ++ return ret; ++ vcb = (struct vcpucb *)cpu->k_vcb; ++ vcb->whami = kvm_arch_vcpu_id(cs); ++ fprintf(stderr,"vcpu %ld init.\n", vcb->whami); ++ return kvm_vcpu_ioctl(cs, KVM_SW64_SET_VCB, &cpu->k_vcb); ++} ++ ++int kvm_arch_add_msi_route_post(struct kvm_irq_routing_entry *route, ++ int vector, PCIDevice *dev) ++{ ++ return -1; ++} ++ ++int kvm_arch_fixup_msi_route(struct kvm_irq_routing_entry *route, ++ uint64_t address, uint32_t data, PCIDevice *dev) ++{ ++ return 0; ++} ++ ++void kvm_arch_pre_run(CPUState *cs, struct kvm_run *run) ++{ ++} ++ ++MemTxAttrs kvm_arch_post_run(CPUState *cs, struct kvm_run *run) ++{ ++ return MEMTXATTRS_UNSPECIFIED; ++} ++ ++ ++int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run) ++{ ++ return -1; ++} ++ ++bool kvm_arch_stop_on_emulation_error(CPUState *cs) ++{ ++ return true; ++} ++ ++int kvm_arch_process_async_events(CPUState *cs) ++{ ++ return 0; ++} ++ ++void kvm_arch_update_guest_debug(CPUState *cs, struct kvm_guest_debug *dbg) ++{ ++} ++ ++void kvm_arch_init_irq_routing(KVMState *s) ++{ ++ /* We know at this point that we're using the in-kernel ++ * irqchip, so we can use irqfds, and on x86 we know ++ * we can use msi via irqfd and GSI routing. ++ */ ++ kvm_msi_via_irqfd_allowed = true; ++ kvm_gsi_routing_allowed = true; ++} ++ ++int kvm_arch_irqchip_create(KVMState *s) ++{ ++ return 0; ++} ++ ++int kvm_arch_release_virq_post(int virq) ++{ ++ return -1; ++} ++ ++int kvm_arch_msi_data_to_gsi(uint32_t data) ++{ ++ return -1; ++} ++ ++ ++void kvm_sw64_register_slave(SW64CPU *cpu) ++{ ++ CPUState *cs = CPU(cpu); ++ ++ kvm_vcpu_ioctl(cs, KVM_SW64_USE_SLAVE, NULL); ++} ++ ++bool kvm_arch_cpu_check_are_resettable(void) ++{ ++ return true; ++} +diff --git a/target/sw64/kvm_sw64.h b/target/sw64/kvm_sw64.h +new file mode 100644 +index 0000000000..5ebd4ec6fd +--- /dev/null ++++ b/target/sw64/kvm_sw64.h +@@ -0,0 +1,47 @@ ++/* ++ * QEMU KVM support -- SW64 specific functions. ++ * ++ * Copyright (c) 2018 Lin Hainan ++ * ++ * This work is licensed under the terms of the GNU GPL, version 2 or later. ++ * See the COPYING file in the top-level directory. ++ * ++ */ ++ ++#ifndef QEMU_KVM_SW64_H ++#define QEMU_KVM_SW64_H ++ ++#include "sysemu/kvm.h" ++#include "exec/memory.h" ++#include "qemu/error-report.h" ++ ++/** ++ * kvm_sw64_vcpu_init: ++ * @cs: CPUState ++ * ++ * Initialize (or reinitialize) the VCPU by invoking the ++ * KVM_SW64_VCPU_INIT ioctl with the CPU type and feature ++ * bitmask specified in the CPUState. ++ * ++ * Returns: 0 if success else < 0 error code ++ */ ++int kvm_sw64_vcpu_init(CPUState *cs); ++void kvm_sw64_reset_vcpu(SW64CPU *cpu); ++void kvm_sw64_register_slave(SW64CPU *cpu); ++ ++#define TYPE_SW64_HOST_CPU "host-" TYPE_SW64_CPU ++#define SW64_HOST_CPU_CLASS(klass) \ ++ OBJECT_CLASS_CHECK(SW64HostCPUClass, (klass), TYPE_SW64_HOST_CPU) ++#define SW64_HOST_CPU_GET_CLASS(obj) \ ++ OBJECT_GET_CLASS(SW64HostCPUClass, (obj), TYPE_SW64_HOST_CPU) ++ ++typedef struct SW64HostCPUClass { ++ /*< private >*/ ++ SW64CPUClass parent_class; ++ /*< public >*/ ++ ++ uint64_t features; ++ uint32_t target; ++ const char *dtb_compatible; ++} SW64HostCPUClass; ++#endif +diff --git a/target/sw64/machine.c b/target/sw64/machine.c +new file mode 100644 +index 0000000000..df18d3faba +--- /dev/null ++++ b/target/sw64/machine.c +@@ -0,0 +1,18 @@ ++#include "qemu/osdep.h" ++#include "qemu-common.h" ++#include "cpu.h" ++#include "migration/vmstate.h" ++#include "migration/cpu.h" ++ ++VMStateDescription vmstate_sw64_cpu = { ++ .name = "cpu", ++ .version_id = 1, ++ .minimum_version_id = 1, ++ .fields = (VMStateField[]) { ++#ifdef CONFIG_KVM ++ VMSTATE_UINTTL_ARRAY(k_regs, SW64CPU, 158), ++ VMSTATE_UINTTL_ARRAY(k_vcb, SW64CPU, 36), ++#endif ++ VMSTATE_END_OF_LIST() ++ } ++}; +diff --git a/target/sw64/meson.build b/target/sw64/meson.build +new file mode 100644 +index 0000000000..ee49e45927 +--- /dev/null ++++ b/target/sw64/meson.build +@@ -0,0 +1,19 @@ ++sw64_ss = ss.source_set() ++sw64_ss.add(files( ++ 'cpu.c', ++ 'exception.c', ++ 'float_helper.c', ++ 'helper.c', ++ 'int_helper.c', ++ 'profile.c', ++ 'simd_helper.c', ++ 'translate.c', ++)) ++ ++sw64_ss.add(when: 'CONFIG_KVM', if_true: files('kvm.c')) ++ ++sw64_softmmu_ss = ss.source_set() ++sw64_softmmu_ss.add(files('machine.c')) ++ ++target_arch += {'sw64': sw64_ss} ++target_softmmu_arch += {'sw64': sw64_softmmu_ss} +diff --git a/target/sw64/profile.c b/target/sw64/profile.c +new file mode 100644 +index 0000000000..73fe077234 +--- /dev/null ++++ b/target/sw64/profile.c +@@ -0,0 +1,2342 @@ ++#include "translate.h" ++ ++const char *insn_opc[535] = { ++ "sys_call", "call", "ret", "jmp", "br", "bsr", "memb", "imemb", ++ "wmemb", "rtc", "rcid", "halt", "rd_f", "wr_f", "rtid", ++ "csrws", "csrwc", "pri_rcsr", "pri_wcsr", "pri_ret", "lldw", "lldl", ++ "ldw_inc", "ldl_inc", "ldw_dec", "ldl_dec", "ldw_set", "ldl_set", "lstw", ++ "lstl", "ldw_nc", "ldl_nc", "ldd_nc", "stw_nc", "stl_nc", "std_nc", ++ "ldwe", "ldse", "ldde", "vlds", "vldd", "vsts", "vstd", ++ "fimovs", "fimovd", "addw", "subw", "s4addw", "s4subw", "s8addw", ++ "s8subw", "addl", "subl", "s4addl", "s4subl", "s8addl", "s8subl", ++ "mulw", "divw", "udivw", "remw", "uremw", "mull", "mulh", ++ "divl", "udivl", "reml", "ureml", "addpi", "addpis", "cmpeq", ++ "cmplt", "cmple", "cmpult", "cmpule", "sbt", "cbt", "and", ++ "bic", "bis", "ornot", "xor", "eqv", "inslb", "inslh", ++ "inslw", "insll", "inshb", "inshh", "inshw", "inshl", "slll", ++ "srll", "sral", "roll", "sllw", "srlw", "sraw", "rolw", ++ "extlb", "extlh", "extlw", "extll", "exthb", "exthh", "exthw", ++ "exthl", "ctpop", "ctlz", "cttz", "revbh", "revbw", "revbl", ++ "casw", "casl", "masklb", "masklh", "masklw", "maskll", "maskhb", ++ "maskhh", "maskhw", "maskhl", "zap", "zapnot", "sextb", "sexth", ++ "seleq", "selge", "selgt", "selle", "sellt", "selne", "sellbc", ++ "sellbs", "addwi", "subwi", "s4addwi", "s4subwi", "s8addwi", "s8subwi", ++ "addli", "subli", "s4addli", "s4subli", "s8addli", "s8subli", "mulwi", ++ "divwi", "udivwi", "remwi", "uremwi", "mulli", "mulhi", "divli", ++ "udivli", "remli", "uremli", "addpii", "addpisi", "cmpeqi", "cmplti", ++ "cmplei", "cmpulti", "cmpulei", "sbti", "cbti", "andi", "bici", ++ "bisi", "ornoti", "xori", "eqvi", "inslbi", "inslhi", "inslwi", ++ "inslli", "inshbi", "inshhi", "inshwi", "inshli", "sllli", "srlli", ++ "srali", "rolli", "sllwi", "srlwi", "srawi", "rolwi", "extlbi", ++ "extlhi", "extlwi", "extlli", "exthbi", "exthhi", "exthwi", "exthli", ++ "ctpopi", "ctlzi", "cttzi", "revbhi", "revbwi", "revbli", "caswi", ++ "casli", "masklbi", "masklhi", "masklwi", "masklli", "maskhbi", "maskhhi", ++ "maskhwi", "maskhli", "zapi", "zapnoti", "sextbi", "sexthi", "cmpgebi", ++ "seleqi", "selgei", "selgti", "sellei", "sellti", "selnei", "sellbci", ++ "sellbsi", "vlogzz", "fadds", "faddd", "fsubs", "fsubd", "fmuls", ++ "fmuld", "fdivs", "fdivd", "fsqrts", "fsqrtd", "fcmpeq", "fcmple", ++ "fcmplt", "fcmpun", "fcvtsd", "fcvtds", "fcvtdl_g", "fcvtdl_p", "fcvtdl_z", ++ "fcvtdl_n", "fcvtdl", "fcvtwl", "fcvtlw", "fcvtls", "fcvtld", "fcpys", ++ "fcpyse", "fcpysn", "ifmovs", "ifmovd", "rfpcr", "wfpcr", "setfpec0", ++ "setfpec1", "setfpec2", "setfpec3", "frecs", "frecd", "fris", "fris_g", ++ "fris_p", "fris_z", "fris_n", "frid", "frid_g", "frid_p", "frid_z", ++ "frid_n", "fmas", "fmad", "fmss", "fmsd", "fnmas", "fnmad", ++ "fnmss", "fnmsd", "fseleq", "fselne", "fsellt", "fselle", "fselgt", ++ "fselge", "vaddw", "vaddwi", "vsubw", "vsubwi", "vcmpgew", "vcmpgewi", ++ "vcmpeqw", "vcmpeqwi", "vcmplew", "vcmplewi", "vcmpltw", "vcmpltwi", "vcmpulew", ++ "vcmpulewi", "vcmpultw", "vcmpultwi", "vsllw", "vsllwi", "vsrlw", "vsrlwi", ++ "vsraw", "vsrawi", "vrolw", "vrolwi", "sllow", "sllowi", "srlow", ++ "srlowi", "vaddl", "vaddli", "vsubl", "vsubli", "vsllb", "vsllbi", ++ "vsrlb", "vsrlbi", "vsrab", "vsrabi", "vrolb", "vrolbi", "vsllh", ++ "vsllhi", "vsrlh", "vsrlhi", "vsrah", "vsrahi", "vrolh", "vrolhi", ++ "ctpopow", "ctlzow", "vslll", "vsllli", "vsrll", "vsrlli", "vsral", ++ "vsrali", "vroll", "vrolli", "vmaxb", "vminb", "vucaddw", "vucaddwi", ++ "vucsubw", "vucsubwi", "vucaddh", "vucaddhi", "vucsubh", "vucsubhi", "vucaddb", ++ "vucaddbi", "vucsubb", "vucsubbi", "sraow", "sraowi", "vsumw", "vsuml", ++ "vsm4r", "vbinvw", "vcmpueqb", "vcmpugtb", "vcmpugtbi", "vsm3msw", "vmaxh", ++ "vminh", "vmaxw", "vminw", "vmaxl", "vminl", "vumaxb", "vuminb", ++ "vumaxh", "vuminh", "vumaxw", "vuminw", "vumaxl", "vuminl", "vsm4key", ++ "vadds", "vaddd", "vsubs", "vsubd", "vmuls", "vmuld", "vdivs", ++ "vdivd", "vsqrts", "vsqrtd", "vfcmpeq", "vfcmple", "vfcmplt", "vfcmpun", ++ "vcpys", "vcpyse", "vcpysn", "vsums", "vsumd", "vfcvtsd", "vfcvtds", ++ "vfcvtls", "vfcvtld", "vfcvtdl", "vfcvtdl_g", "vfcvtdl_p", "vfcvtdl_z", "vfcvtdl_n", ++ "vfris", "vfris_g", "vfris_p", "vfris_z", "vfris_n", "vfrid", "vfrid_g", ++ "vfrid_p", "vfrid_z", "vfrid_n", "vfrecs", "vfrecd", "vmaxs", "vmins", ++ "vmaxd", "vmind", "vmas", "vmad", "vmss", "vmsd", "vnmas", ++ "vnmad", "vnmss", "vnmsd", "vfseleq", "vfsellt", "vfselle", "vseleqw", ++ "vseleqwi", "vsellbcw", "vsellbcwi", "vselltw", "vselltwi", "vsellew", "vsellewi", ++ "vinsw", "vinsf", "vextw", "vextf", "vcpyw", "vcpyf", "vconw", ++ "vshfw", "vcons", "vcond", "vinsb", "vinsh", "vinsectlh", "vinsectlw", ++ "vinsectll", "vinsectlb", "vshfq", "vshfqb", "vcpyb", "vcpyh", "vsm3r", ++ "vfcvtsh", "vfcvths", "vldw_u", "vstw_u", "vlds_u", "vsts_u", "vldd_u", ++ "vstd_u", "vstw_ul", "vstw_uh", "vsts_ul", "vsts_uh", "vstd_ul", "vstd_uh", ++ "vldd_nc", "vstd_nc", "lbr", "ldbu_a", "ldhu_a", "ldw_a", "ldl_a", ++ "flds_a", "fldd_a", "stbu_a", "sthu_a", "stw_a", "stl_a", "fsts_a", ++ "fstd_a", "dpfhr", "dpfhw", "ldbu", "ldhu", "ldw", "ldl", ++ "ldl_u", "pri_ldl", "pri_ldw", "flds", "fldd", "stb", "sth", ++ "stw", "stl", "stl_u", "pri_stl", "pri_stw", "fsts", "fstd", ++ "beq", "bne", "blt", "ble", "bgt", "bge", "blbc", ++ "blbs", "fbeq", "fbne", "fblt", "fble", "fbgt", "fbge", ++ "ldih", "ldi", }; ++ ++void insn_profile(DisasContext *ctx, uint32_t insn) ++{ ++ int32_t disp16, disp26 __attribute__((unused)); ++ uint8_t opc; ++ uint16_t fn3, fn4, fn6, fn8, fn11; ++ TCGv count; ++ int index, offs; ++ ++ opc = extract32(insn, 26, 6); ++ ++ fn3 = extract32(insn, 10, 3); ++ fn6 = extract32(insn, 10, 6); ++ fn4 = extract32(insn, 12, 4); ++ fn8 = extract32(insn, 5, 8); ++ fn11 = extract32(insn, 5, 11); ++ ++ disp16 = sextract32(insn, 0, 16); ++ disp26 = sextract32(insn, 0, 26); ++ ++ index = 0; ++ switch (opc) { ++ case 0x00: ++ /* SYS_CALL */ ++ index = SYS_CALL; ++ break; ++ case 0x01: ++ /* CALL */ ++ index = CALL; ++ break; ++ case 0x02: ++ /* RET */ ++ index = RET; ++ break; ++ case 0x03: ++ /* JMP */ ++ index = JMP; ++ break; ++ case 0x04: ++ /* BR */ ++ index = BR; ++ break; ++ case 0x05: ++ /* BSR */ ++ index = BSR; ++ break; ++ case 0x06: ++ switch (disp16) { ++ case 0x0000: ++ /* MEMB */ ++ index = MEMB; ++ break; ++ case 0x0001: ++ /* IMEMB */ ++ index = IMEMB; ++ break; ++ case 0x0002: ++ /* WMEMB */ ++ index = WMEMB; ++ break; ++ case 0x0020: ++ /* RTC */ ++ index = RTC; ++ break; ++ case 0x0040: ++ /* RCID */ ++ index = RCID; ++ break; ++ case 0x0080: ++ /* HALT */ ++ index = HALT; ++ break; ++ case 0x1000: ++ /* RD_F */ ++ index = RD_F; ++ break; ++ case 0x1020: ++ /* WR_F */ ++ index = WR_F; ++ break; ++ case 0x1040: ++ /* RTID */ ++ index = RTID; ++ break; ++ default: ++ if ((disp16 & 0xFF00) == 0xFC00) { ++ /* CSRWS */ ++ index = CSRWS; ++ break; ++ } ++ if ((disp16 & 0xFF00) == 0xFD00) { ++ /* CSRWC */ ++ index = CSRWC; ++ break; ++ } ++ if ((disp16 & 0xFF00) == 0xFE00) { ++ /* PRI_RCSR */ ++ index = PRI_RCSR; ++ break; ++ } ++ if ((disp16 & 0xFF00) == 0xFF00) { ++ /* PRI_WCSR */ ++ index = PRI_WCSR; ++ break; ++ } ++ goto do_invalid; ++ } ++ break; ++ case 0x07: ++ /* PRI_RET */ ++ index = PRI_RET; ++ break; ++ case 0x08: ++ switch (fn4) { ++ case 0x0: ++ /* LLDW */ ++ index = LLDW; ++ break; ++ case 0x1: ++ /* LLDL */ ++ index = LLDL; ++ break; ++ case 0x2: ++ /* LDW_INC */ ++ index = LDW_INC; ++ break; ++ case 0x3: ++ /* LDL_INC */ ++ index = LDL_INC; ++ break; ++ case 0x4: ++ /* LDW_DEC */ ++ index = LDW_DEC; ++ break; ++ case 0x5: ++ /* LDL_DEC */ ++ index = LDL_DEC; ++ break; ++ case 0x6: ++ /* LDW_SET */ ++ index = LDW_SET; ++ break; ++ case 0x7: ++ /* LDL_SET */ ++ index = LDL_SET; ++ break; ++ case 0x8: ++ /* LSTW */ ++ index = LSTW; ++ break; ++ case 0x9: ++ /* LSTL */ ++ index = LSTL; ++ break; ++ case 0xa: ++ /* LDW_NC */ ++ index = LDW_NC; ++ break; ++ case 0xb: ++ /* LDL_NC */ ++ index = LDL_NC; ++ break; ++ case 0xc: ++ /* LDD_NC */ ++ index = LDD_NC; ++ break; ++ case 0xd: ++ /* STW_NC */ ++ index = STW_NC; ++ break; ++ case 0xe: ++ /* STL_NC */ ++ index = STL_NC; ++ break; ++ case 0xf: ++ /* STD_NC */ ++ index = STD_NC; ++ break; ++ default: ++ goto do_invalid; ++ } ++ break; ++ case 0x9: ++ /* LDWE */ ++ index = LDWE; ++ break; ++ case 0x0a: ++ /* LDSE */ ++ index = LDSE; ++ break; ++ case 0x0b: ++ /* LDDE */ ++ index = LDDE; ++ break; ++ case 0x0c: ++ /* VLDS */ ++ index = VLDS; ++ break; ++ case 0x0d: ++ /* VLDD */ ++ index = VLDD; ++ break; ++ case 0x0e: ++ /* VSTS */ ++ index = VSTS; ++ break; ++ case 0x0f: ++ /* VSTD */ ++ index = VSTD; ++ break; ++ case 0x10: ++ if (fn11 == 0x70) { ++ /* FIMOVS */ ++ index = FIMOVS; ++ } else if (fn11 == 0x78) { ++ /* FIMOVD */ ++ index = FIMOVD; ++ } else { ++ switch (fn11 & 0xff) { ++ case 0x00: ++ /* ADDW */ ++ index = ADDW; ++ break; ++ case 0x01: ++ /* SUBW */ ++ index = SUBW; ++ break; ++ case 0x02: ++ /* S4ADDW */ ++ index = S4ADDW; ++ break; ++ case 0x03: ++ /* S4SUBW */ ++ index = S4SUBW; ++ break; ++ case 0x04: ++ /* S8ADDW */ ++ index = S8ADDW; ++ break; ++ case 0x05: ++ /* S8SUBW */ ++ index = S8SUBW; ++ break; ++ ++ case 0x08: ++ /* ADDL */ ++ index = ADDL; ++ break; ++ case 0x09: ++ /* SUBL */ ++ index = SUBL; ++ break; ++ case 0x0a: ++ /* S4ADDL */ ++ index = S4ADDL; ++ break; ++ case 0x0b: ++ /* S4SUBL */ ++ index = S4SUBL; ++ break; ++ case 0x0c: ++ /* S8ADDL */ ++ index = S8ADDL; ++ break; ++ case 0x0d: ++ /* S8SUBL */ ++ index = S8SUBL; ++ break; ++ case 0x10: ++ /* MULW */ ++ index = MULW; ++ break; ++ case 0x11: ++ /* DIVW */ ++ index = DIVW; ++ break; ++ case 0x12: ++ /* UDIVW */ ++ index = UDIVW; ++ break; ++ case 0x13: ++ /* REMW */ ++ index = REMW; ++ break; ++ case 0x14: ++ /* UREMW */ ++ index = UREMW; ++ break; ++ case 0x18: ++ /* MULL */ ++ index = MULL; ++ break; ++ case 0x19: ++ /* MULH */ ++ index = MULH; ++ break; ++ case 0x1A: ++ /* DIVL */ ++ index = DIVL; ++ break; ++ case 0x1B: ++ /* UDIVL */ ++ index = UDIVL; ++ break; ++ case 0x1C: ++ /* REML */ ++ index = REML; ++ break; ++ case 0x1D: ++ /* UREML */ ++ index = UREML; ++ break; ++ case 0x1E: ++ /* ADDPI */ ++ index = ADDPI; ++ break; ++ case 0x1F: ++ /* ADDPIS */ ++ index = ADDPIS; ++ break; ++ case 0x28: ++ /* CMPEQ */ ++ index = CMPEQ; ++ break; ++ case 0x29: ++ /* CMPLT */ ++ index = CMPLT; ++ break; ++ case 0x2a: ++ /* CMPLE */ ++ index = CMPLE; ++ break; ++ case 0x2b: ++ /* CMPULT */ ++ index = CMPULT; ++ break; ++ case 0x2c: ++ /* CMPULE */ ++ index = CMPULE; ++ break; ++ case 0x2D: ++ /* SBT */ ++ index = SBT; ++ break; ++ case 0x2E: ++ /* CBT */ ++ index = CBT; ++ break; ++ case 0x38: ++ /* AND */ ++ index = AND; ++ break; ++ case 0x39: ++ /* BIC */ ++ index = BIC; ++ break; ++ case 0x3a: ++ /* BIS */ ++ index = BIS; ++ break; ++ case 0x3b: ++ /* ORNOT */ ++ index = ORNOT; ++ break; ++ case 0x3c: ++ /* XOR */ ++ index = XOR; ++ break; ++ case 0x3d: ++ /* EQV */ ++ index = EQV; ++ break; ++ case 0x40: ++ /* INSLB */ ++ index = INSLB; ++ break; ++ case 0x41: ++ /* INSLH */ ++ index = INSLH; ++ break; ++ case 0x42: ++ /* INSLW */ ++ index = INSLW; ++ break; ++ case 0x43: ++ /* INSLL */ ++ index = INSLL; ++ break; ++ case 0x44: ++ /* INSHB */ ++ index = INSHB; ++ break; ++ case 0x45: ++ /* INSHH */ ++ index = INSHH; ++ break; ++ case 0x46: ++ /* INSHW */ ++ index = INSHW; ++ break; ++ case 0x47: ++ /* INSHL */ ++ index = INSHL; ++ break; ++ case 0x48: ++ /* SLLL */ ++ index = SLLL; ++ break; ++ case 0x49: ++ /* SRLL */ ++ index = SRLL; ++ break; ++ case 0x4a: ++ /* SRAL */ ++ index = SRAL; ++ break; ++ case 0x4B: ++ /* ROLL */ ++ index = ROLL; ++ break; ++ case 0x4C: ++ /* SLLW */ ++ index = SLLW; ++ break; ++ case 0x4D: ++ /* SRLW */ ++ index = SRLW; ++ break; ++ case 0x4E: ++ /* SRAW */ ++ index = SRAW; ++ break; ++ case 0x4F: ++ /* ROLW */ ++ index = ROLW; ++ break; ++ case 0x50: ++ /* EXTLB */ ++ index = EXTLB; ++ break; ++ case 0x51: ++ /* EXTLH */ ++ index = EXTLH; ++ break; ++ case 0x52: ++ /* EXTLW */ ++ index = EXTLW; ++ break; ++ case 0x53: ++ /* EXTLL */ ++ index = EXTLL; ++ break; ++ case 0x54: ++ /* EXTHB */ ++ index = EXTHB; ++ break; ++ case 0x55: ++ /* EXTHH */ ++ index = EXTHH; ++ break; ++ case 0x56: ++ /* EXTHW */ ++ index = EXTHW; ++ break; ++ case 0x57: ++ /* EXTHL */ ++ index = EXTHL; ++ break; ++ case 0x58: ++ /* CTPOP */ ++ index = CTPOP; ++ break; ++ case 0x59: ++ /* CTLZ */ ++ index = CTLZ; ++ break; ++ case 0x5a: ++ /* CTTZ */ ++ index = CTTZ; ++ break; ++ case 0x5B: ++ /* REVBH */ ++ index = REVBH; ++ break; ++ case 0x5C: ++ /* REVBW */ ++ index = REVBW; ++ break; ++ case 0x5D: ++ /* REVBL */ ++ index = REVBL; ++ break; ++ case 0x5E: ++ /* CASW */ ++ index = CASW; ++ break; ++ case 0x5F: ++ /* CASL */ ++ index = CASL; ++ break; ++ case 0x60: ++ /* MASKLB */ ++ index = MASKLB; ++ break; ++ case 0x61: ++ /* MASKLH */ ++ index = MASKLH; ++ break; ++ case 0x62: ++ /* MASKLW */ ++ index = MASKLW; ++ break; ++ case 0x63: ++ /* MASKLL */ ++ index = MASKLL; ++ break; ++ case 0x64: ++ /* MASKHB */ ++ index = MASKHB; ++ break; ++ case 0x65: ++ /* MASKHH */ ++ index = MASKHH; ++ break; ++ case 0x66: ++ /* MASKHW */ ++ index = MASKHW; ++ break; ++ case 0x67: ++ /* MASKHL */ ++ index = MASKHL; ++ break; ++ case 0x68: ++ /* ZAP */ ++ index = ZAP; ++ break; ++ case 0x69: ++ /* ZAPNOT */ ++ index = ZAPNOT; ++ break; ++ case 0x6a: ++ /* SEXTB */ ++ index = SEXTB; ++ break; ++ case 0x6b: ++ /* SEXTH */ ++ index = SEXTH; ++ break; ++ case 0x6c: ++ /* CMPGEB*/ ++ break; ++ default: ++ break; ++ } ++ } ++ break; ++ case 0x11: ++ switch (fn3) { ++ case 0x0: ++ /* SELEQ */ ++ index = SELEQ; ++ break; ++ case 0x1: ++ /* SELGE */ ++ index = SELGE; ++ break; ++ case 0x2: ++ /* SELGT */ ++ index = SELGT; ++ break; ++ case 0x3: ++ /* SELLE */ ++ index = SELLE; ++ break; ++ case 0x4: ++ /* SELLT */ ++ index = SELLT; ++ break; ++ case 0x5: ++ /* SELNE */ ++ index = SELNE; ++ break; ++ case 0x6: ++ /* SELLBC */ ++ index = SELLBC; ++ break; ++ case 0x7: ++ /* SELLBS */ ++ index = SELLBS; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x12: ++ switch (fn8 & 0xff) { ++ case 0x00: ++ /* ADDWI */ ++ index = ADDWI; ++ break; ++ case 0x01: ++ /* SUBWI */ ++ index = SUBWI; ++ break; ++ case 0x02: ++ /* S4ADDWI */ ++ index = S4ADDWI; ++ break; ++ case 0x03: ++ /* S4SUBWI */ ++ index = S4SUBWI; ++ break; ++ case 0x04: ++ /* S8ADDWI */ ++ index = S8ADDWI; ++ break; ++ case 0x05: ++ /* S8SUBWI */ ++ index = S8SUBWI; ++ break; ++ ++ case 0x08: ++ /* ADDLI */ ++ index = ADDLI; ++ break; ++ case 0x09: ++ /* SUBLI */ ++ index = SUBLI; ++ break; ++ case 0x0a: ++ /* S4ADDLI */ ++ index = S4ADDLI; ++ break; ++ case 0x0b: ++ /* S4SUBLI */ ++ index = S4SUBLI; ++ break; ++ case 0x0c: ++ /* S8ADDLI */ ++ index = S8ADDLI; ++ break; ++ case 0x0d: ++ /* S8SUBLI */ ++ index = S8SUBLI; ++ break; ++ case 0x10: ++ /* MULWI */ ++ index = MULWI; ++ break; ++ case 0x11: ++ /* DIVWI */ ++ index = DIVWI; ++ break; ++ case 0x12: ++ /* UDIVWI */ ++ index = UDIVWI; ++ break; ++ case 0x13: ++ /* REMWI */ ++ index = REMWI; ++ break; ++ case 0x14: ++ /* UREMWI */ ++ index = UREMWI; ++ break; ++ case 0x18: ++ /* MULLI */ ++ index = MULLI; ++ break; ++ case 0x19: ++ /* MULHI */ ++ index = MULHI; ++ break; ++ case 0x1A: ++ /* DIVLI */ ++ index = DIVLI; ++ break; ++ case 0x1B: ++ /* UDIVLI */ ++ index = UDIVLI; ++ break; ++ case 0x1C: ++ /* REMLI */ ++ index = REMLI; ++ break; ++ case 0x1D: ++ /* UREMLI */ ++ index = UREMLI; ++ break; ++ case 0x1E: ++ /* ADDPII */ ++ index = ADDPII; ++ break; ++ case 0x1F: ++ /* ADDPISI */ ++ index = ADDPISI; ++ break; ++ case 0x28: ++ /* CMPEQI */ ++ index = CMPEQI; ++ break; ++ case 0x29: ++ /* CMPLTI */ ++ index = CMPLTI; ++ break; ++ case 0x2a: ++ /* CMPLEI */ ++ index = CMPLEI; ++ break; ++ case 0x2b: ++ /* CMPULTI */ ++ index = CMPULTI; ++ break; ++ case 0x2c: ++ /* CMPULEI */ ++ index = CMPULEI; ++ break; ++ case 0x2D: ++ /* SBTI */ ++ index = SBTI; ++ break; ++ case 0x2E: ++ /* CBTI */ ++ index = CBTI; ++ break; ++ case 0x38: ++ /* ANDI */ ++ index = ANDI; ++ break; ++ case 0x39: ++ /* BICI */ ++ index = BICI; ++ break; ++ case 0x3a: ++ /* BISI */ ++ index = BISI; ++ break; ++ case 0x3b: ++ /* ORNOTI */ ++ index = ORNOTI; ++ break; ++ case 0x3c: ++ /* XORI */ ++ index = XORI; ++ break; ++ case 0x3d: ++ /* EQVI */ ++ index = EQVI; ++ break; ++ case 0x40: ++ /* INSLBI */ ++ index = INSLBI; ++ break; ++ case 0x41: ++ /* INSLHI */ ++ index = INSLHI; ++ break; ++ case 0x42: ++ /* INSLWI */ ++ index = INSLWI; ++ break; ++ case 0x43: ++ /* INSLLI */ ++ index = INSLLI; ++ break; ++ case 0x44: ++ /* INSHBI */ ++ index = INSHBI; ++ break; ++ case 0x45: ++ /* INSHHI */ ++ index = INSHHI; ++ break; ++ case 0x46: ++ /* INSHWI */ ++ index = INSHWI; ++ break; ++ case 0x47: ++ /* INSHLI */ ++ index = INSHLI; ++ break; ++ case 0x48: ++ /* SLLLI */ ++ index = SLLLI; ++ break; ++ case 0x49: ++ /* SRLLI */ ++ index = SRLLI; ++ break; ++ case 0x4a: ++ /* SRALI */ ++ index = SRALI; ++ break; ++ case 0x4B: ++ /* ROLLI */ ++ index = ROLLI; ++ break; ++ case 0x4C: ++ /* SLLWI */ ++ index = SLLWI; ++ break; ++ case 0x4D: ++ /* SRLWI */ ++ index = SRLWI; ++ break; ++ case 0x4E: ++ /* SRAWI */ ++ index = SRAWI; ++ break; ++ case 0x4F: ++ /* ROLWI */ ++ index = ROLWI; ++ break; ++ case 0x50: ++ /* EXTLBI */ ++ index = EXTLBI; ++ break; ++ case 0x51: ++ /* EXTLHI */ ++ index = EXTLHI; ++ break; ++ case 0x52: ++ /* EXTLWI */ ++ index = EXTLWI; ++ break; ++ case 0x53: ++ /* EXTLLI */ ++ index = EXTLLI; ++ break; ++ case 0x54: ++ /* EXTHBI */ ++ index = EXTHBI; ++ break; ++ case 0x55: ++ /* EXTHHI */ ++ index = EXTHHI; ++ break; ++ case 0x56: ++ /* EXTHWI */ ++ index = EXTHWI; ++ break; ++ case 0x57: ++ /* EXTHLI */ ++ index = EXTHLI; ++ break; ++ case 0x58: ++ /* CTPOPI */ ++ index = CTPOPI; ++ break; ++ case 0x59: ++ /* CTLZI */ ++ index = CTLZI; ++ break; ++ case 0x5a: ++ /* CTTZI */ ++ index = CTTZI; ++ break; ++ case 0x5B: ++ /* REVBHI */ ++ index = REVBHI; ++ break; ++ case 0x5C: ++ /* REVBWI */ ++ index = REVBWI; ++ break; ++ case 0x5D: ++ /* REVBLI */ ++ index = REVBLI; ++ break; ++ case 0x5E: ++ /* CASWI */ ++ index = CASWI; ++ break; ++ case 0x5F: ++ /* CASLI */ ++ index = CASLI; ++ break; ++ case 0x60: ++ /* MASKLBI */ ++ index = MASKLBI; ++ break; ++ case 0x61: ++ /* MASKLHI */ ++ index = MASKLHI; ++ break; ++ case 0x62: ++ /* MASKLWI */ ++ index = MASKLWI; ++ break; ++ case 0x63: ++ /* MASKLLI */ ++ index = MASKLLI; ++ break; ++ case 0x64: ++ /* MASKHBI */ ++ index = MASKHBI; ++ break; ++ case 0x65: ++ /* MASKHHI */ ++ index = MASKHHI; ++ break; ++ case 0x66: ++ /* MASKHWI */ ++ index = MASKHWI; ++ break; ++ case 0x67: ++ /* MASKHLI */ ++ index = MASKHLI; ++ break; ++ case 0x68: ++ /* ZAPI */ ++ index = ZAPI; ++ break; ++ case 0x69: ++ /* ZAPNOTI */ ++ index = ZAPNOTI; ++ break; ++ case 0x6a: ++ /* SEXTBI */ ++ index = SEXTBI; ++ break; ++ case 0x6b: ++ /* SEXTHI */ ++ index = SEXTHI; ++ break; ++ case 0x6c: ++ /* CMPGEBI */ ++ index = CMPGEBI; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x13: ++ switch (fn3) { ++ case 0x0: ++ /* SELEQI */ ++ index = SELEQI; ++ break; ++ case 0x1: ++ /* SELGEI */ ++ index = SELGEI; ++ break; ++ case 0x2: ++ /* SELGTI */ ++ index = SELGTI; ++ break; ++ case 0x3: ++ /* SELLEI */ ++ index = SELLEI; ++ break; ++ case 0x4: ++ /* SELLTI */ ++ index = SELLTI; ++ break; ++ case 0x5: ++ /* SELNEI */ ++ index = SELNEI; ++ break; ++ case 0x6: ++ /* SELLBCI */ ++ index = SELLBCI; ++ break; ++ case 0x7: ++ /* SELLBSI */ ++ index = SELLBSI; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x14: ++ case 0x15: ++ case 0x16: ++ case 0x17: ++ /* VLOGZZ */ ++ index = VLOGZZ; ++ break; ++ case 0x18: ++ switch (fn8) { ++ case 0x00: ++ /* FADDS */ ++ index = FADDS; ++ break; ++ case 0x01: ++ /* FADDD */ ++ index = FADDD; ++ break; ++ case 0x02: ++ /* FSUBS */ ++ index = FSUBS; ++ break; ++ case 0x03: ++ /* FSUBD */ ++ index = FSUBD; ++ break; ++ case 0x4: ++ /* FMULS */ ++ index = FMULS; ++ break; ++ case 0x05: ++ /* FMULD */ ++ index = FMULD; ++ break; ++ case 0x06: ++ /* FDIVS */ ++ index = FDIVS; ++ break; ++ case 0x07: ++ /* FDIVD */ ++ index = FDIVD; ++ break; ++ case 0x08: ++ /* FSQRTS */ ++ index = FSQRTS; ++ break; ++ case 0x09: ++ /* FSQRTD */ ++ index = FSQRTD; ++ break; ++ case 0x10: ++ /* FCMPEQ */ ++ index = FCMPEQ; ++ break; ++ case 0x11: ++ /* FCMPLE */ ++ index = FCMPLE; ++ break; ++ case 0x12: ++ /* FCMPLT */ ++ index = FCMPLT; ++ break; ++ case 0x13: ++ /* FCMPUN */ ++ index = FCMPUN; ++ break; ++ case 0x20: ++ /* FCVTSD */ ++ index = FCVTSD; ++ break; ++ case 0x21: ++ /* FCVTDS */ ++ index = FCVTDS; ++ break; ++ case 0x22: ++ /* FCVTDL_G */ ++ index = FCVTDL_G; ++ break; ++ case 0x23: ++ /* FCVTDL_P */ ++ index = FCVTDL_P; ++ break; ++ case 0x24: ++ /* FCVTDL_Z */ ++ index = FCVTDL_Z; ++ break; ++ case 0x25: ++ /* FCVTDL_N */ ++ index = FCVTDL_N; ++ break; ++ case 0x27: ++ /* FCVTDL */ ++ index = FCVTDL; ++ break; ++ case 0x28: ++ /* FCVTWL */ ++ index = FCVTWL; ++ break; ++ case 0x29: ++ /* FCVTLW */ ++ index = FCVTLW; ++ break; ++ case 0x2d: ++ /* FCVTLS */ ++ index = FCVTLS; ++ break; ++ case 0x2f: ++ /* FCVTLD */ ++ index = FCVTLD; ++ break; ++ case 0x30: ++ /* FCPYS */ ++ index = FCPYS; ++ break; ++ case 0x31: ++ /* FCPYSE */ ++ index = FCPYSE; ++ break; ++ case 0x32: ++ /* FCPYSN */ ++ index = FCPYSN; ++ break; ++ case 0x40: ++ /* IFMOVS */ ++ index = IFMOVS; ++ break; ++ case 0x41: ++ /* IFMOVD */ ++ index = IFMOVD; ++ break; ++ case 0x50: ++ /* RFPCR */ ++ index = RFPCR; ++ break; ++ case 0x51: ++ /* WFPCR */ ++ index = WFPCR; ++ break; ++ case 0x54: ++ /* SETFPEC0 */ ++ index = SETFPEC0; ++ break; ++ case 0x55: ++ /* SETFPEC1 */ ++ index = SETFPEC1; ++ break; ++ case 0x56: ++ /* SETFPEC2 */ ++ index = SETFPEC2; ++ break; ++ case 0x57: ++ /* SETFPEC3 */ ++ index = SETFPEC3; ++ break; ++ case 0x58: ++ /* FRECS */ ++ index = FRECS; ++ break; ++ case 0x59: ++ /* FRECD */ ++ index = FRECD; ++ break; ++ case 0x5A: ++ /* FRIS */ ++ index = FRIS; ++ break; ++ case 0x5B: ++ /* FRIS_G */ ++ index = FRIS_G; ++ break; ++ case 0x5C: ++ /* FRIS_P */ ++ index = FRIS_P; ++ break; ++ case 0x5D: ++ /* FRIS_Z */ ++ index = FRIS_Z; ++ break; ++ case 0x5F: ++ /* FRIS_N */ ++ index = FRIS_N; ++ break; ++ case 0x60: ++ /* FRID */ ++ index = FRID; ++ break; ++ case 0x61: ++ /* FRID_G */ ++ index = FRID_G; ++ break; ++ case 0x62: ++ /* FRID_P */ ++ index = FRID_P; ++ break; ++ case 0x63: ++ /* FRID_Z */ ++ index = FRID_Z; ++ break; ++ case 0x64: ++ /* FRID_N */ ++ index = FRID_N; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x19: ++ switch (fn6) { ++ case 0x00: ++ /* FMAS */ ++ index = FMAS; ++ break; ++ case 0x01: ++ /* FMAD */ ++ index = FMAD; ++ break; ++ case 0x02: ++ /* FMSS */ ++ index = FMSS; ++ break; ++ case 0x03: ++ /* FMSD */ ++ index = FMSD; ++ break; ++ case 0x04: ++ /* FNMAS */ ++ index = FNMAS; ++ break; ++ case 0x05: ++ /* FNMAD */ ++ index = FNMAD; ++ break; ++ case 0x06: ++ /* FNMSS */ ++ index = FNMSS; ++ break; ++ case 0x07: ++ /* FNMSD */ ++ index = FNMSD; ++ break; ++ case 0x10: ++ /* FSELEQ */ ++ index = FSELEQ; ++ break; ++ case 0x11: ++ /* FSELNE */ ++ index = FSELNE; ++ break; ++ case 0x12: ++ /* FSELLT */ ++ index = FSELLT; ++ break; ++ case 0x13: ++ /* FSELLE */ ++ index = FSELLE; ++ break; ++ case 0x14: ++ /* FSELGT */ ++ index = FSELGT; ++ break; ++ case 0x15: ++ /* FSELGE */ ++ index = FSELGE; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x1A: ++ switch (fn8) { ++ case 0x00: ++ /* VADDW */ ++ index = VADDW; ++ break; ++ case 0x20: ++ /* VADDWI */ ++ index = VADDWI; ++ break; ++ case 0x01: ++ /* VSUBW */ ++ index = VSUBW; ++ break; ++ case 0x21: ++ /* VSUBWI */ ++ index = VSUBWI; ++ break; ++ case 0x02: ++ /* VCMPGEW */ ++ index = VCMPGEW; ++ break; ++ case 0x22: ++ /* VCMPGEWI */ ++ index = VCMPGEWI; ++ break; ++ case 0x03: ++ /* VCMPEQW */ ++ index = VCMPEQW; ++ break; ++ case 0x23: ++ /* VCMPEQWI */ ++ index = VCMPEQWI; ++ break; ++ case 0x04: ++ /* VCMPLEW */ ++ index = VCMPLEW; ++ break; ++ case 0x24: ++ /* VCMPLEWI */ ++ index = VCMPLEWI; ++ break; ++ case 0x05: ++ /* VCMPLTW */ ++ index = VCMPLTW; ++ break; ++ case 0x25: ++ /* VCMPLTWI */ ++ index = VCMPLTWI; ++ break; ++ case 0x06: ++ /* VCMPULEW */ ++ index = VCMPULEW; ++ break; ++ case 0x26: ++ /* VCMPULEWI */ ++ index = VCMPULEWI; ++ break; ++ case 0x07: ++ /* VCMPULTW */ ++ index = VCMPULTW; ++ break; ++ case 0x27: ++ /* VCMPULTWI */ ++ index = VCMPULTWI; ++ break; ++ case 0x08: ++ /* VSLLW */ ++ index = VSLLW; ++ break; ++ case 0x28: ++ /* VSLLWI */ ++ index = VSLLWI; ++ break; ++ case 0x09: ++ /* VSRLW */ ++ index = VSRLW; ++ break; ++ case 0x29: ++ /* VSRLWI */ ++ index = VSRLWI; ++ break; ++ case 0x0A: ++ /* VSRAW */ ++ index = VSRAW; ++ break; ++ case 0x2A: ++ /* VSRAWI */ ++ index = VSRAWI; ++ break; ++ case 0x0B: ++ /* VROLW */ ++ index = VROLW; ++ break; ++ case 0x2B: ++ /* VROLWI */ ++ index = VROLWI; ++ break; ++ case 0x0C: ++ /* SLLOW */ ++ index = SLLOW; ++ break; ++ case 0x2C: ++ /* SLLOWI */ ++ index = SLLOWI; ++ break; ++ case 0x0D: ++ /* SRLOW */ ++ index = SRLOW; ++ break; ++ case 0x2D: ++ /* SRLOWI */ ++ index = SRLOWI; ++ break; ++ case 0x0E: ++ /* VADDL */ ++ index = VADDL; ++ break; ++ case 0x2E: ++ /* VADDLI */ ++ index = VADDLI; ++ break; ++ case 0x0F: ++ /* VSUBL */ ++ index = VSUBL; ++ break; ++ case 0x2F: ++ /* VSUBLI */ ++ index = VSUBLI; ++ break; ++ case 0x10: ++ /* VSLLB */ ++ index = VSLLB; ++ break; ++ case 0x30: ++ /* VSLLBI */ ++ index = VSLLBI; ++ break; ++ case 0x11: ++ /* VSRLB */ ++ index = VSRLB; ++ break; ++ case 0x31: ++ /* VSRLBI */ ++ index = VSRLBI; ++ break; ++ case 0x12: ++ /* VSRAB */ ++ index = VSRAB; ++ break; ++ case 0x32: ++ /* VSRABI */ ++ index = VSRABI; ++ break; ++ case 0x13: ++ /* VROLB */ ++ index = VROLB; ++ break; ++ case 0x33: ++ /* VROLBI */ ++ index = VROLBI; ++ break; ++ case 0x14: ++ /* VSLLH */ ++ index = VSLLH; ++ break; ++ case 0x34: ++ /* VSLLHI */ ++ index = VSLLHI; ++ break; ++ case 0x15: ++ /* VSRLH */ ++ index = VSRLH; ++ break; ++ case 0x35: ++ /* VSRLHI */ ++ index = VSRLHI; ++ break; ++ case 0x16: ++ /* VSRAH */ ++ index = VSRAH; ++ break; ++ case 0x36: ++ /* VSRAHI */ ++ index = VSRAHI; ++ break; ++ case 0x17: ++ /* VROLH */ ++ index = VROLH; ++ break; ++ case 0x37: ++ /* VROLHI */ ++ index = VROLHI; ++ break; ++ case 0x18: ++ /* CTPOPOW */ ++ index = CTPOPOW; ++ break; ++ case 0x19: ++ /* CTLZOW */ ++ index = CTLZOW; ++ break; ++ case 0x1A: ++ /* VSLLL */ ++ index = VSLLL; ++ break; ++ case 0x3A: ++ /* VSLLLI */ ++ index = VSLLLI; ++ break; ++ case 0x1B: ++ /* VSRLL */ ++ index = VSRLL; ++ break; ++ case 0x3B: ++ /* VSRLLI */ ++ index = VSRLLI; ++ break; ++ case 0x1C: ++ /* VSRAL */ ++ index = VSRAL; ++ break; ++ case 0x3C: ++ /* VSRALI */ ++ index = VSRALI; ++ break; ++ case 0x1D: ++ /* VROLL */ ++ index = VROLL; ++ break; ++ case 0x3D: ++ /* VROLLI */ ++ index = VROLLI; ++ break; ++ case 0x1E: ++ /* VMAXB */ ++ index = VMAXB; ++ break; ++ case 0x1F: ++ /* VMINB */ ++ index = VMINB; ++ break; ++ case 0x40: ++ /* VUCADDW */ ++ index = VUCADDW; ++ break; ++ case 0x60: ++ /* VUCADDWI */ ++ index = VUCADDWI; ++ break; ++ case 0x41: ++ /* VUCSUBW */ ++ index = VUCSUBW; ++ break; ++ case 0x61: ++ /* VUCSUBWI */ ++ index = VUCSUBWI; ++ break; ++ case 0x42: ++ /* VUCADDH */ ++ index = VUCADDH; ++ break; ++ case 0x62: ++ /* VUCADDHI */ ++ index = VUCADDHI; ++ break; ++ case 0x43: ++ /* VUCSUBH */ ++ index = VUCSUBH; ++ break; ++ case 0x63: ++ /* VUCSUBHI */ ++ index = VUCSUBHI; ++ break; ++ case 0x44: ++ /* VUCADDB */ ++ index = VUCADDB; ++ break; ++ case 0x64: ++ /* VUCADDBI */ ++ index = VUCADDBI; ++ break; ++ case 0x45: ++ /* VUCSUBB */ ++ index = VUCSUBB; ++ break; ++ case 0x65: ++ /* VUCSUBBI */ ++ index = VUCSUBBI; ++ break; ++ case 0x46: ++ /* SRAOW */ ++ index = SRAOW; ++ break; ++ case 0x66: ++ /* SRAOWI */ ++ index = SRAOWI; ++ break; ++ case 0x47: ++ /* VSUMW */ ++ index = VSUMW; ++ break; ++ case 0x48: ++ /* VSUML */ ++ index = VSUML; ++ break; ++ case 0x49: ++ /* VSM4R */ ++ index = VSM4R; ++ break; ++ case 0x4A: ++ /* VBINVW */ ++ index = VBINVW; ++ break; ++ case 0x4B: ++ /* VCMPUEQB */ ++ index = VCMPUEQB; ++ break; ++ case 0x6B: ++ /* VCMPUEQBI*/ ++ break; ++ case 0x4C: ++ /* VCMPUGTB */ ++ index = VCMPUGTB; ++ break; ++ case 0x6C: ++ /* VCMPUGTBI */ ++ index = VCMPUGTBI; ++ break; ++ case 0x4D: ++ /* VSM3MSW */ ++ index = VSM3MSW; ++ break; ++ case 0x50: ++ /* VMAXH */ ++ index = VMAXH; ++ break; ++ case 0x51: ++ /* VMINH */ ++ index = VMINH; ++ break; ++ case 0x52: ++ /* VMAXW */ ++ index = VMAXW; ++ break; ++ case 0x53: ++ /* VMINW */ ++ index = VMINW; ++ break; ++ case 0x54: ++ /* VMAXL */ ++ index = VMAXL; ++ break; ++ case 0x55: ++ /* VMINL */ ++ index = VMINL; ++ break; ++ case 0x56: ++ /* VUMAXB */ ++ index = VUMAXB; ++ break; ++ case 0x57: ++ /* VUMINB */ ++ index = VUMINB; ++ break; ++ case 0x58: ++ /* VUMAXH */ ++ index = VUMAXH; ++ break; ++ case 0x59: ++ /* VUMINH */ ++ index = VUMINH; ++ break; ++ case 0x5A: ++ /* VUMAXW */ ++ index = VUMAXW; ++ break; ++ case 0x5B: ++ /* VUMINW */ ++ index = VUMINW; ++ break; ++ case 0x5C: ++ /* VUMAXL */ ++ index = VUMAXL; ++ break; ++ case 0x5D: ++ /* VUMINL */ ++ index = VUMINL; ++ break; ++ case 0x68: ++ /* VSM4KEY */ ++ index = VSM4KEY; ++ break; ++ case 0x80: ++ /* VADDS */ ++ index = VADDS; ++ break; ++ case 0x81: ++ /* VADDD */ ++ index = VADDD; ++ break; ++ case 0x82: ++ /* VSUBS */ ++ index = VSUBS; ++ break; ++ case 0x83: ++ /* VSUBD */ ++ index = VSUBD; ++ break; ++ case 0x84: ++ /* VMULS */ ++ index = VMULS; ++ break; ++ case 0x85: ++ /* VMULD */ ++ index = VMULD; ++ break; ++ case 0x86: ++ /* VDIVS */ ++ index = VDIVS; ++ break; ++ case 0x87: ++ /* VDIVD */ ++ index = VDIVD; ++ break; ++ case 0x88: ++ /* VSQRTS */ ++ index = VSQRTS; ++ break; ++ case 0x89: ++ /* VSQRTD */ ++ index = VSQRTD; ++ break; ++ case 0x8C: ++ /* VFCMPEQ */ ++ index = VFCMPEQ; ++ break; ++ case 0x8D: ++ /* VFCMPLE */ ++ index = VFCMPLE; ++ break; ++ case 0x8E: ++ /* VFCMPLT */ ++ index = VFCMPLT; ++ break; ++ case 0x8F: ++ /* VFCMPUN */ ++ index = VFCMPUN; ++ break; ++ case 0x90: ++ /* VCPYS */ ++ index = VCPYS; ++ break; ++ case 0x91: ++ /* VCPYSE */ ++ index = VCPYSE; ++ break; ++ case 0x92: ++ /* VCPYSN */ ++ index = VCPYSN; ++ break; ++ case 0x93: ++ /* VSUMS */ ++ index = VSUMS; ++ break; ++ case 0x94: ++ /* VSUMD */ ++ index = VSUMD; ++ break; ++ case 0x95: ++ /* VFCVTSD */ ++ index = VFCVTSD; ++ break; ++ case 0x96: ++ /* VFCVTDS */ ++ index = VFCVTDS; ++ break; ++ case 0x99: ++ /* VFCVTLS */ ++ index = VFCVTLS; ++ break; ++ case 0x9A: ++ /* VFCVTLD */ ++ index = VFCVTLD; ++ break; ++ case 0x9B: ++ /* VFCVTDL */ ++ index = VFCVTDL; ++ break; ++ case 0x9C: ++ /* VFCVTDL_G */ ++ index = VFCVTDL_G; ++ break; ++ case 0x9D: ++ /* VFCVTDL_P */ ++ index = VFCVTDL_P; ++ break; ++ case 0x9E: ++ /* VFCVTDL_Z */ ++ index = VFCVTDL_Z; ++ break; ++ case 0x9F: ++ /* VFCVTDL_N */ ++ index = VFCVTDL_N; ++ break; ++ case 0xA0: ++ /* VFRIS */ ++ index = VFRIS; ++ break; ++ case 0xA1: ++ /* VFRIS_G */ ++ index = VFRIS_G; ++ break; ++ case 0xA2: ++ /* VFRIS_P */ ++ index = VFRIS_P; ++ break; ++ case 0xA3: ++ /* VFRIS_Z */ ++ index = VFRIS_Z; ++ break; ++ case 0xA4: ++ /* VFRIS_N */ ++ index = VFRIS_N; ++ break; ++ case 0xA5: ++ /* VFRID */ ++ index = VFRID; ++ break; ++ case 0xA6: ++ /* VFRID_G */ ++ index = VFRID_G; ++ break; ++ case 0xA7: ++ /* VFRID_P */ ++ index = VFRID_P; ++ break; ++ case 0xA8: ++ /* VFRID_Z */ ++ index = VFRID_Z; ++ break; ++ case 0xA9: ++ /* VFRID_N */ ++ index = VFRID_N; ++ break; ++ case 0xAA: ++ /* VFRECS */ ++ index = VFRECS; ++ break; ++ case 0xAB: ++ /* VFRECD */ ++ index = VFRECD; ++ break; ++ case 0xAC: ++ /* VMAXS */ ++ index = VMAXS; ++ break; ++ case 0xAD: ++ /* VMINS */ ++ index = VMINS; ++ break; ++ case 0xAE: ++ /* VMAXD */ ++ index = VMAXD; ++ break; ++ case 0xAF: ++ /* VMIND */ ++ index = VMIND; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x1B: ++ switch (fn6) { ++ case 0x00: ++ /* VMAS */ ++ index = VMAS; ++ break; ++ case 0x01: ++ /* VMAD */ ++ index = VMAD; ++ break; ++ case 0x02: ++ /* VMSS */ ++ index = VMSS; ++ break; ++ case 0x03: ++ /* VMSD */ ++ index = VMSD; ++ break; ++ case 0x04: ++ /* VNMAS */ ++ index = VNMAS; ++ break; ++ case 0x05: ++ /* VNMAD */ ++ index = VNMAD; ++ break; ++ case 0x06: ++ /* VNMSS */ ++ index = VNMSS; ++ break; ++ case 0x07: ++ /* VNMSD */ ++ index = VNMSD; ++ break; ++ case 0x10: ++ /* VFSELEQ */ ++ index = VFSELEQ; ++ break; ++ case 0x12: ++ /* VFSELLT */ ++ index = VFSELLT; ++ break; ++ case 0x13: ++ /* VFSELLE */ ++ index = VFSELLE; ++ break; ++ case 0x18: ++ /* VSELEQW */ ++ index = VSELEQW; ++ break; ++ case 0x38: ++ /* VSELEQWI */ ++ index = VSELEQWI; ++ break; ++ case 0x19: ++ /* VSELLBCW */ ++ index = VSELLBCW; ++ break; ++ case 0x39: ++ /* VSELLBCWI */ ++ index = VSELLBCWI; ++ break; ++ case 0x1A: ++ /* VSELLTW */ ++ index = VSELLTW; ++ break; ++ case 0x3A: ++ /* VSELLTWI */ ++ index = VSELLTWI; ++ break; ++ case 0x1B: ++ /* VSELLEW */ ++ index = VSELLEW; ++ break; ++ case 0x3B: ++ /* VSELLEWI */ ++ index = VSELLEWI; ++ break; ++ case 0x20: ++ /* VINSW */ ++ index = VINSW; ++ break; ++ case 0x21: ++ /* VINSF */ ++ index = VINSF; ++ break; ++ case 0x22: ++ /* VEXTW */ ++ index = VEXTW; ++ break; ++ case 0x23: ++ /* VEXTF */ ++ index = VEXTF; ++ break; ++ case 0x24: ++ /* VCPYW */ ++ index = VCPYW; ++ break; ++ case 0x25: ++ /* VCPYF */ ++ index = VCPYF; ++ break; ++ case 0x26: ++ /* VCONW */ ++ index = VCONW; ++ break; ++ case 0x27: ++ /* VSHFW */ ++ index = VSHFW; ++ break; ++ case 0x28: ++ /* VCONS */ ++ index = VCONS; ++ break; ++ case 0x29: ++ /* VCOND */ ++ index = VCOND; ++ break; ++ case 0x2A: ++ /* VINSB */ ++ index = VINSB; ++ break; ++ case 0x2B: ++ /* VINSH */ ++ index = VINSH; ++ break; ++ case 0x2C: ++ /* VINSECTLH */ ++ index = VINSECTLH; ++ break; ++ case 0x2D: ++ /* VINSECTLW */ ++ index = VINSECTLW; ++ break; ++ case 0x2E: ++ /* VINSECTLL */ ++ index = VINSECTLL; ++ break; ++ case 0x2F: ++ /* VINSECTLB */ ++ index = VINSECTLB; ++ break; ++ case 0x30: ++ /* VSHFQ */ ++ index = VSHFQ; ++ break; ++ case 0x31: ++ /* VSHFQB */ ++ index = VSHFQB; ++ break; ++ case 0x32: ++ /* VCPYB */ ++ index = VCPYB; ++ break; ++ case 0x33: ++ /* VCPYH */ ++ index = VCPYH; ++ break; ++ case 0x34: ++ /* VSM3R */ ++ index = VSM3R; ++ break; ++ case 0x35: ++ /* VFCVTSH */ ++ index = VFCVTSH; ++ break; ++ case 0x36: ++ /* VFCVTHS */ ++ index = VFCVTHS; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x1C: ++ switch (fn4) { ++ case 0x0: ++ /* VLDW_U */ ++ index = VLDW_U; ++ break; ++ case 0x1: ++ /* VSTW_U */ ++ index = VSTW_U; ++ break; ++ case 0x2: ++ /* VLDS_U */ ++ index = VLDS_U; ++ break; ++ case 0x3: ++ /* VSTS_U */ ++ index = VSTS_U; ++ break; ++ case 0x4: ++ /* VLDD_U */ ++ index = VLDD_U; ++ break; ++ case 0x5: ++ /* VSTD_U */ ++ index = VSTD_U; ++ break; ++ case 0x8: ++ /* VSTW_UL */ ++ index = VSTW_UL; ++ break; ++ case 0x9: ++ /* VSTW_UH */ ++ index = VSTW_UH; ++ break; ++ case 0xa: ++ /* VSTS_UL */ ++ index = VSTS_UL; ++ break; ++ case 0xb: ++ /* VSTS_UH */ ++ index = VSTS_UH; ++ break; ++ case 0xc: ++ /* VSTD_UL */ ++ index = VSTD_UL; ++ break; ++ case 0xd: ++ /* VSTD_UH */ ++ index = VSTD_UH; ++ break; ++ case 0xe: ++ /* VLDD_NC */ ++ index = VLDD_NC; ++ break; ++ case 0xf: ++ /* VSTD_NC */ ++ index = VSTD_NC; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x1D: ++ /* LBR */ ++ index = LBR; ++ break; ++ case 0x1E: ++ switch (fn4) { ++ case 0x0: ++ /* LDBU_A */ ++ index = LDBU_A; ++ break; ++ case 0x1: ++ /* LDHU_A */ ++ index = LDHU_A; ++ break; ++ case 0x2: ++ /* LDW_A */ ++ index = LDW_A; ++ break; ++ case 0x3: ++ /* LDL_A */ ++ index = LDL_A; ++ break; ++ case 0x4: ++ /* FLDS_A */ ++ index = FLDS_A; ++ break; ++ case 0x5: ++ /* FLDD_A */ ++ index = FLDD_A; ++ break; ++ case 0x6: ++ /* STBU_A */ ++ index = STBU_A; ++ break; ++ case 0x7: ++ /* STHU_A */ ++ index = STHU_A; ++ break; ++ case 0x8: ++ /* STW_A */ ++ index = STW_A; ++ break; ++ case 0x9: ++ /* STL_A */ ++ index = STL_A; ++ break; ++ case 0xA: ++ /* FSTS_A */ ++ index = FSTS_A; ++ break; ++ case 0xB: ++ /* FSTD_A */ ++ index = FSTD_A; ++ break; ++ case 0xE: ++ /* DPFHR */ ++ index = DPFHR; ++ break; ++ case 0xF: ++ /* DPFHW */ ++ index = DPFHW; ++ break; ++ default: ++ break; ++ } ++ break; ++ case 0x20: ++ /* LDBU */ ++ index = LDBU; ++ break; ++ case 0x21: ++ /* LDHU */ ++ index = LDHU; ++ break; ++ case 0x22: ++ /* LDW */ ++ index = LDW; ++ break; ++ case 0x23: ++ /* LDL */ ++ index = LDL; ++ break; ++ case 0x24: ++ /* LDL_U */ ++ index = LDL_U; ++ break; ++ case 0x25: ++ if ((insn >> 12) & 1) { ++ /* PRI_LDL */ ++ index = PRI_LDL; ++ } else { ++ /* PRI_LDW */ ++ index = PRI_LDW; ++ } ++ break; ++ case 0x26: ++ /* FLDS */ ++ index = FLDS; ++ break; ++ case 0x27: ++ /* FLDD */ ++ index = FLDD; ++ break; ++ case 0x28: ++ /* STB */ ++ index = STB; ++ break; ++ case 0x29: ++ /* STH */ ++ index = STH; ++ break; ++ case 0x2a: ++ /* STW */ ++ index = STW; ++ break; ++ case 0x2b: ++ /* STL */ ++ index = STL; ++ break; ++ case 0x2c: ++ /* STL_U */ ++ index = STL_U; ++ break; ++ case 0x2d: ++ if ((insn >> 12) & 1) { ++ /* PRI_STL */ ++ index = PRI_STL; ++ } else { ++ /* PRI_STW */ ++ index = PRI_STW; ++ } ++ break; ++ case 0x2e: ++ /* FSTS */ ++ index = FSTS; ++ break; ++ case 0x2f: ++ /* FSTD */ ++ index = FSTD; ++ break; ++ case 0x30: ++ /* BEQ */ ++ index = BEQ; ++ break; ++ case 0x31: ++ /* BNE */ ++ index = BNE; ++ break; ++ case 0x32: ++ /* BLT */ ++ index = BLT; ++ break; ++ case 0x33: ++ /* BLE */ ++ index = BLE; ++ break; ++ case 0x34: ++ /* BGT */ ++ index = BGT; ++ break; ++ case 0x35: ++ /* BGE */ ++ index = BGE; ++ break; ++ case 0x36: ++ /* BLBC */ ++ index = BLBC; ++ break; ++ case 0x37: ++ /* BLBS */ ++ index = BLBS; ++ break; ++ case 0x38: ++ /* FBEQ */ ++ index = FBEQ; ++ break; ++ case 0x39: ++ /* FBNE */ ++ index = FBNE; ++ break; ++ case 0x3a: ++ /* FBLT */ ++ index = FBLT; ++ break; ++ case 0x3b: ++ /* FBLE */ ++ index = FBLE; ++ break; ++ case 0x3c: ++ /* FBGT */ ++ index = FBGT; ++ break; ++ case 0x3d: ++ /* FBGE */ ++ index = FBGE; ++ break; ++ case 0x3f: ++ /* LDIH */ ++ index = LDIH; ++ break; ++ case 0x3e: ++ /* LDI */ ++ index = LDI; ++ break; ++ default: ++do_invalid: ++ break; ++ } ++ count = tcg_temp_new(); ++ offs = offsetof(CPUSW64State, insn_count[index]); ++ tcg_gen_ld_i64(count, cpu_env, offs); ++ tcg_gen_addi_i64(count, count, 1); ++ tcg_gen_st_i64(count, cpu_env, offs); ++ tcg_temp_free(count); ++} +diff --git a/target/sw64/profile.h b/target/sw64/profile.h +new file mode 100644 +index 0000000000..5aca541ea7 +--- /dev/null ++++ b/target/sw64/profile.h +@@ -0,0 +1,541 @@ ++#ifndef PROFILE_H ++#define PROFILE_H ++#define SYS_CALL 0 ++#define CALL 1 ++#define RET 2 ++#define JMP 3 ++#define BR 4 ++#define BSR 5 ++#define MEMB 6 ++#define IMEMB 7 ++#define WMEMB 8 ++#define RTC 9 ++#define RCID 10 ++#define HALT 11 ++#define RD_F 12 ++#define WR_F 13 ++#define RTID 14 ++#define CSRWS 15 ++#define CSRWC 16 ++#define PRI_RCSR 17 ++#define PRI_WCSR 18 ++#define PRI_RET 19 ++#define LLDW 20 ++#define LLDL 21 ++#define LDW_INC 22 ++#define LDL_INC 23 ++#define LDW_DEC 24 ++#define LDL_DEC 25 ++#define LDW_SET 26 ++#define LDL_SET 27 ++#define LSTW 28 ++#define LSTL 29 ++#define LDW_NC 30 ++#define LDL_NC 31 ++#define LDD_NC 32 ++#define STW_NC 33 ++#define STL_NC 34 ++#define STD_NC 35 ++#define LDWE 36 ++#define LDSE 37 ++#define LDDE 38 ++#define VLDS 39 ++#define VLDD 40 ++#define VSTS 41 ++#define VSTD 42 ++#define FIMOVS 43 ++#define FIMOVD 44 ++#define ADDW 45 ++#define SUBW 46 ++#define S4ADDW 47 ++#define S4SUBW 48 ++#define S8ADDW 49 ++#define S8SUBW 50 ++#define ADDL 51 ++#define SUBL 52 ++#define S4ADDL 53 ++#define S4SUBL 54 ++#define S8ADDL 55 ++#define S8SUBL 56 ++#define MULW 57 ++#define DIVW 58 ++#define UDIVW 59 ++#define REMW 60 ++#define UREMW 61 ++#define MULL 62 ++#define MULH 63 ++#define DIVL 64 ++#define UDIVL 65 ++#define REML 66 ++#define UREML 67 ++#define ADDPI 68 ++#define ADDPIS 69 ++#define CMPEQ 70 ++#define CMPLT 71 ++#define CMPLE 72 ++#define CMPULT 73 ++#define CMPULE 74 ++#define SBT 75 ++#define CBT 76 ++#define AND 77 ++#define BIC 78 ++#define BIS 79 ++#define ORNOT 80 ++#define XOR 81 ++#define EQV 82 ++#define INSLB 83 ++#define INSLH 84 ++#define INSLW 85 ++#define INSLL 86 ++#define INSHB 87 ++#define INSHH 88 ++#define INSHW 89 ++#define INSHL 90 ++#define SLLL 91 ++#define SRLL 92 ++#define SRAL 93 ++#define ROLL 94 ++#define SLLW 95 ++#define SRLW 96 ++#define SRAW 97 ++#define ROLW 98 ++#define EXTLB 99 ++#define EXTLH 100 ++#define EXTLW 101 ++#define EXTLL 102 ++#define EXTHB 103 ++#define EXTHH 104 ++#define EXTHW 105 ++#define EXTHL 106 ++#define CTPOP 107 ++#define CTLZ 108 ++#define CTTZ 109 ++#define REVBH 110 ++#define REVBW 111 ++#define REVBL 112 ++#define CASW 113 ++#define CASL 114 ++#define MASKLB 115 ++#define MASKLH 116 ++#define MASKLW 117 ++#define MASKLL 118 ++#define MASKHB 119 ++#define MASKHH 120 ++#define MASKHW 121 ++#define MASKHL 122 ++#define ZAP 123 ++#define ZAPNOT 124 ++#define SEXTB 125 ++#define SEXTH 126 ++#define SELEQ 127 ++#define SELGE 128 ++#define SELGT 129 ++#define SELLE 130 ++#define SELLT 131 ++#define SELNE 132 ++#define SELLBC 133 ++#define SELLBS 134 ++#define ADDWI 135 ++#define SUBWI 136 ++#define S4ADDWI 137 ++#define S4SUBWI 138 ++#define S8ADDWI 139 ++#define S8SUBWI 140 ++#define ADDLI 141 ++#define SUBLI 142 ++#define S4ADDLI 143 ++#define S4SUBLI 144 ++#define S8ADDLI 145 ++#define S8SUBLI 146 ++#define MULWI 147 ++#define DIVWI 148 ++#define UDIVWI 149 ++#define REMWI 150 ++#define UREMWI 151 ++#define MULLI 152 ++#define MULHI 153 ++#define DIVLI 154 ++#define UDIVLI 155 ++#define REMLI 156 ++#define UREMLI 157 ++#define ADDPII 158 ++#define ADDPISI 159 ++#define CMPEQI 160 ++#define CMPLTI 161 ++#define CMPLEI 162 ++#define CMPULTI 163 ++#define CMPULEI 164 ++#define SBTI 165 ++#define CBTI 166 ++#define ANDI 167 ++#define BICI 168 ++#define BISI 169 ++#define ORNOTI 170 ++#define XORI 171 ++#define EQVI 172 ++#define INSLBI 173 ++#define INSLHI 174 ++#define INSLWI 175 ++#define INSLLI 176 ++#define INSHBI 177 ++#define INSHHI 178 ++#define INSHWI 179 ++#define INSHLI 180 ++#define SLLLI 181 ++#define SRLLI 182 ++#define SRALI 183 ++#define ROLLI 184 ++#define SLLWI 185 ++#define SRLWI 186 ++#define SRAWI 187 ++#define ROLWI 188 ++#define EXTLBI 189 ++#define EXTLHI 190 ++#define EXTLWI 191 ++#define EXTLLI 192 ++#define EXTHBI 193 ++#define EXTHHI 194 ++#define EXTHWI 195 ++#define EXTHLI 196 ++#define CTPOPI 197 ++#define CTLZI 198 ++#define CTTZI 199 ++#define REVBHI 200 ++#define REVBWI 201 ++#define REVBLI 202 ++#define CASWI 203 ++#define CASLI 204 ++#define MASKLBI 205 ++#define MASKLHI 206 ++#define MASKLWI 207 ++#define MASKLLI 208 ++#define MASKHBI 209 ++#define MASKHHI 210 ++#define MASKHWI 211 ++#define MASKHLI 212 ++#define ZAPI 213 ++#define ZAPNOTI 214 ++#define SEXTBI 215 ++#define SEXTHI 216 ++#define CMPGEBI 217 ++#define SELEQI 218 ++#define SELGEI 219 ++#define SELGTI 220 ++#define SELLEI 221 ++#define SELLTI 222 ++#define SELNEI 223 ++#define SELLBCI 224 ++#define SELLBSI 225 ++#define VLOGZZ 226 ++#define FADDS 227 ++#define FADDD 228 ++#define FSUBS 229 ++#define FSUBD 230 ++#define FMULS 231 ++#define FMULD 232 ++#define FDIVS 233 ++#define FDIVD 234 ++#define FSQRTS 235 ++#define FSQRTD 236 ++#define FCMPEQ 237 ++#define FCMPLE 238 ++#define FCMPLT 239 ++#define FCMPUN 240 ++#define FCVTSD 241 ++#define FCVTDS 242 ++#define FCVTDL_G 243 ++#define FCVTDL_P 244 ++#define FCVTDL_Z 245 ++#define FCVTDL_N 246 ++#define FCVTDL 247 ++#define FCVTWL 248 ++#define FCVTLW 249 ++#define FCVTLS 250 ++#define FCVTLD 251 ++#define FCPYS 252 ++#define FCPYSE 253 ++#define FCPYSN 254 ++#define IFMOVS 255 ++#define IFMOVD 256 ++#define RFPCR 257 ++#define WFPCR 258 ++#define SETFPEC0 259 ++#define SETFPEC1 260 ++#define SETFPEC2 261 ++#define SETFPEC3 262 ++#define FRECS 263 ++#define FRECD 264 ++#define FRIS 265 ++#define FRIS_G 266 ++#define FRIS_P 267 ++#define FRIS_Z 268 ++#define FRIS_N 269 ++#define FRID 270 ++#define FRID_G 271 ++#define FRID_P 272 ++#define FRID_Z 273 ++#define FRID_N 274 ++#define FMAS 275 ++#define FMAD 276 ++#define FMSS 277 ++#define FMSD 278 ++#define FNMAS 279 ++#define FNMAD 280 ++#define FNMSS 281 ++#define FNMSD 282 ++#define FSELEQ 283 ++#define FSELNE 284 ++#define FSELLT 285 ++#define FSELLE 286 ++#define FSELGT 287 ++#define FSELGE 288 ++#define VADDW 289 ++#define VADDWI 290 ++#define VSUBW 291 ++#define VSUBWI 292 ++#define VCMPGEW 293 ++#define VCMPGEWI 294 ++#define VCMPEQW 295 ++#define VCMPEQWI 296 ++#define VCMPLEW 297 ++#define VCMPLEWI 298 ++#define VCMPLTW 299 ++#define VCMPLTWI 300 ++#define VCMPULEW 301 ++#define VCMPULEWI 302 ++#define VCMPULTW 303 ++#define VCMPULTWI 304 ++#define VSLLW 305 ++#define VSLLWI 306 ++#define VSRLW 307 ++#define VSRLWI 308 ++#define VSRAW 309 ++#define VSRAWI 310 ++#define VROLW 311 ++#define VROLWI 312 ++#define SLLOW 313 ++#define SLLOWI 314 ++#define SRLOW 315 ++#define SRLOWI 316 ++#define VADDL 317 ++#define VADDLI 318 ++#define VSUBL 319 ++#define VSUBLI 320 ++#define VSLLB 321 ++#define VSLLBI 322 ++#define VSRLB 323 ++#define VSRLBI 324 ++#define VSRAB 325 ++#define VSRABI 326 ++#define VROLB 327 ++#define VROLBI 328 ++#define VSLLH 329 ++#define VSLLHI 330 ++#define VSRLH 331 ++#define VSRLHI 332 ++#define VSRAH 333 ++#define VSRAHI 334 ++#define VROLH 335 ++#define VROLHI 336 ++#define CTPOPOW 337 ++#define CTLZOW 338 ++#define VSLLL 339 ++#define VSLLLI 340 ++#define VSRLL 341 ++#define VSRLLI 342 ++#define VSRAL 343 ++#define VSRALI 344 ++#define VROLL 345 ++#define VROLLI 346 ++#define VMAXB 347 ++#define VMINB 348 ++#define VUCADDW 349 ++#define VUCADDWI 350 ++#define VUCSUBW 351 ++#define VUCSUBWI 352 ++#define VUCADDH 353 ++#define VUCADDHI 354 ++#define VUCSUBH 355 ++#define VUCSUBHI 356 ++#define VUCADDB 357 ++#define VUCADDBI 358 ++#define VUCSUBB 359 ++#define VUCSUBBI 360 ++#define SRAOW 361 ++#define SRAOWI 362 ++#define VSUMW 363 ++#define VSUML 364 ++#define VSM4R 365 ++#define VBINVW 366 ++#define VCMPUEQB 367 ++#define VCMPUGTB 368 ++#define VCMPUGTBI 369 ++#define VSM3MSW 370 ++#define VMAXH 371 ++#define VMINH 372 ++#define VMAXW 373 ++#define VMINW 374 ++#define VMAXL 375 ++#define VMINL 376 ++#define VUMAXB 377 ++#define VUMINB 378 ++#define VUMAXH 379 ++#define VUMINH 380 ++#define VUMAXW 381 ++#define VUMINW 382 ++#define VUMAXL 383 ++#define VUMINL 384 ++#define VSM4KEY 385 ++#define VADDS 386 ++#define VADDD 387 ++#define VSUBS 388 ++#define VSUBD 389 ++#define VMULS 390 ++#define VMULD 391 ++#define VDIVS 392 ++#define VDIVD 393 ++#define VSQRTS 394 ++#define VSQRTD 395 ++#define VFCMPEQ 396 ++#define VFCMPLE 397 ++#define VFCMPLT 398 ++#define VFCMPUN 399 ++#define VCPYS 400 ++#define VCPYSE 401 ++#define VCPYSN 402 ++#define VSUMS 403 ++#define VSUMD 404 ++#define VFCVTSD 405 ++#define VFCVTDS 406 ++#define VFCVTLS 407 ++#define VFCVTLD 408 ++#define VFCVTDL 409 ++#define VFCVTDL_G 410 ++#define VFCVTDL_P 411 ++#define VFCVTDL_Z 412 ++#define VFCVTDL_N 413 ++#define VFRIS 414 ++#define VFRIS_G 415 ++#define VFRIS_P 416 ++#define VFRIS_Z 417 ++#define VFRIS_N 418 ++#define VFRID 419 ++#define VFRID_G 420 ++#define VFRID_P 421 ++#define VFRID_Z 422 ++#define VFRID_N 423 ++#define VFRECS 424 ++#define VFRECD 425 ++#define VMAXS 426 ++#define VMINS 427 ++#define VMAXD 428 ++#define VMIND 429 ++#define VMAS 430 ++#define VMAD 431 ++#define VMSS 432 ++#define VMSD 433 ++#define VNMAS 434 ++#define VNMAD 435 ++#define VNMSS 436 ++#define VNMSD 437 ++#define VFSELEQ 438 ++#define VFSELLT 439 ++#define VFSELLE 440 ++#define VSELEQW 441 ++#define VSELEQWI 442 ++#define VSELLBCW 443 ++#define VSELLBCWI 444 ++#define VSELLTW 445 ++#define VSELLTWI 446 ++#define VSELLEW 447 ++#define VSELLEWI 448 ++#define VINSW 449 ++#define VINSF 450 ++#define VEXTW 451 ++#define VEXTF 452 ++#define VCPYW 453 ++#define VCPYF 454 ++#define VCONW 455 ++#define VSHFW 456 ++#define VCONS 457 ++#define VCOND 458 ++#define VINSB 459 ++#define VINSH 460 ++#define VINSECTLH 461 ++#define VINSECTLW 462 ++#define VINSECTLL 463 ++#define VINSECTLB 464 ++#define VSHFQ 465 ++#define VSHFQB 466 ++#define VCPYB 467 ++#define VCPYH 468 ++#define VSM3R 469 ++#define VFCVTSH 470 ++#define VFCVTHS 471 ++#define VLDW_U 472 ++#define VSTW_U 473 ++#define VLDS_U 474 ++#define VSTS_U 475 ++#define VLDD_U 476 ++#define VSTD_U 477 ++#define VSTW_UL 478 ++#define VSTW_UH 479 ++#define VSTS_UL 480 ++#define VSTS_UH 481 ++#define VSTD_UL 482 ++#define VSTD_UH 483 ++#define VLDD_NC 484 ++#define VSTD_NC 485 ++#define LBR 486 ++#define LDBU_A 487 ++#define LDHU_A 488 ++#define LDW_A 489 ++#define LDL_A 490 ++#define FLDS_A 491 ++#define FLDD_A 492 ++#define STBU_A 493 ++#define STHU_A 494 ++#define STW_A 495 ++#define STL_A 496 ++#define FSTS_A 497 ++#define FSTD_A 498 ++#define DPFHR 499 ++#define DPFHW 500 ++#define LDBU 501 ++#define LDHU 502 ++#define LDW 503 ++#define LDL 504 ++#define LDL_U 505 ++#define PRI_LDL 506 ++#define PRI_LDW 507 ++#define FLDS 508 ++#define FLDD 509 ++#define STB 510 ++#define STH 511 ++#define STW 512 ++#define STL 513 ++#define STL_U 514 ++#define PRI_STL 515 ++#define PRI_STW 516 ++#define FSTS 517 ++#define FSTD 518 ++#define BEQ 519 ++#define BNE 520 ++#define BLT 521 ++#define BLE 522 ++#define BGT 523 ++#define BGE 524 ++#define BLBC 525 ++#define BLBS 526 ++#define FBEQ 527 ++#define FBNE 528 ++#define FBLT 529 ++#define FBLE 530 ++#define FBGT 531 ++#define FBGE 532 ++#define LDIH 533 ++#define LDI 534 ++ ++extern const char *insn_opc[535]; ++ ++#endif +diff --git a/target/sw64/simd_helper.c b/target/sw64/simd_helper.c +new file mode 100644 +index 0000000000..13bd52de3d +--- /dev/null ++++ b/target/sw64/simd_helper.c +@@ -0,0 +1,1058 @@ ++#include "qemu/osdep.h" ++#include "cpu.h" ++#include "exec/exec-all.h" ++#include "exec/helper-proto.h" ++ ++#undef DEBUG_SIMD ++ ++static inline uint8_t *get_element_b(CPUSW64State *env, uint64_t ra, ++ int index) ++{ ++ return (uint8_t*)&env->fr[ra + (index / 8) * 32] + (index % 8); ++} ++ ++static inline uint16_t *get_element_h(CPUSW64State *env, uint64_t ra, ++ int index) ++{ ++ return (uint16_t*)&env->fr[ra + (index / 4) * 32] + (index % 4); ++} ++ ++static inline uint32_t *get_element_w(CPUSW64State *env, uint64_t ra, ++ int index) ++{ ++ return (uint32_t*)&env->fr[ra + (index / 2) * 32] + (index % 2); ++} ++ ++static inline uint64_t *get_element_l(CPUSW64State *env, uint64_t ra, ++ int index) ++{ ++ return &env->fr[ra + index * 32]; ++} ++ ++void helper_srlow(CPUSW64State *env, uint64_t ra, uint64_t rc, uint64_t shift) ++{ ++ int i; ++ int adden; ++ int dest, src; ++ adden = shift >> 6; ++ shift &= 0x3f; ++#ifdef DEBUG_SIMD ++ printf("right shift = %ld adden = %d\n", shift, adden); ++ printf("in_fr[%ld]:", ra); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[ra + 32 * i]); ++ } ++ printf("\n"); ++#endif ++ ++ for (i = 0; (i + adden) < 4; i++) { ++ dest = i * 32 + rc; ++ src = (i + adden) * 32 + ra; ++ env->fr[dest] = env->fr[src] >> shift; ++ if (((i + adden) < 3) && (shift != 0)) ++ env->fr[dest] |= (env->fr[src + 32] << (64 - shift)); ++ } ++ ++ for (; i < 4; i++) { ++ env->fr[rc + i * 32] = 0; ++ } ++#ifdef DEBUG_SIMD ++ printf("out_fr[%ld]:", rc); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rc + 32 * i]); ++ } ++ printf("\n"); ++#endif ++} ++ ++void helper_sllow(CPUSW64State *env, uint64_t ra, uint64_t rc, uint64_t shift) ++{ ++ int i; ++ int adden; ++ int dest, src; ++ adden = shift >> 6; ++ shift &= 0x3f; ++#ifdef DEBUG_SIMD ++ printf("left shift = %ld adden = %d\n", shift, adden); ++ printf("in_fr[%ld]:", ra); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[ra + 32 * i]); ++ } ++ printf("\n"); ++#endif ++ ++ for (i = 3; (i - adden) >= 0; i--) { ++ dest = i * 32 + rc; ++ src = (i - adden) * 32 + ra; ++ env->fr[dest] = env->fr[src] << shift; ++ if (((i - adden) > 0) && (shift != 0)) ++ env->fr[dest] |= (env->fr[src - 32] >> (64 - shift)); ++ } ++ for (; i >= 0; i--) { ++ env->fr[rc + i * 32] = 0; ++ } ++#ifdef DEBUG_SIMD ++ printf("out_fr[%ld]:", rc); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rc + 32 * i]); ++ } ++ printf("\n"); ++#endif ++} ++ ++static uint64_t do_logzz(uint64_t va, uint64_t vb, uint64_t vc, uint64_t zz) ++{ ++ int i; ++ uint64_t ret = 0; ++ int index; ++ ++ for (i = 0; i < 64; i++) { ++ index = (((va >> i) & 1) << 2) | (((vb >> i) & 1) << 1) | ((vc >> i) & 1); ++ ret |= ((zz >> index) & 1) << i; ++ } ++ ++ return ret; ++} ++ ++void helper_vlogzz(CPUSW64State *env, uint64_t args, uint64_t rd, uint64_t zz) ++{ ++ int i; ++ int ra, rb, rc; ++ ra = args >> 16; ++ rb = (args >> 8) & 0xff; ++ rc = args & 0xff; ++#ifdef DEBUG_SIMD ++ printf("zz = %lx\n", zz); ++ printf("in_fr[%d]:", ra); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[ra + 32 * i]); ++ } ++ printf("\n"); ++ printf("in_fr[%d]:", rb); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rb + 32 * i]); ++ } ++ printf("\n"); ++ printf("in_fr[%d]:", rc); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rc + 32 * i]); ++ } ++ printf("\n"); ++#endif ++ for (i = 0; i < 4; i++) { ++ env->fr[rd + i * 32] = do_logzz(env->fr[ra + i * 32], env->fr[rb + i * 32], ++ env->fr[rc + i * 32], zz); ++ } ++#ifdef DEBUG_SIMD ++ printf("out_fr[%ld]:", rd); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rd + 32 * i]); ++ } ++ printf("\n"); ++#endif ++} ++ ++void helper_v_print(CPUSW64State *env, uint64_t v) ++{ ++ printf("PC[%lx]: fr[%lx]:\n", GETPC(), v); ++} ++ ++void helper_vconw(CPUSW64State *env, uint64_t args, uint64_t rd, ++ uint64_t byte4_len) ++{ ++ int ra, rb; ++ int count; ++ int i; ++ uint32_t *ptr_dst, *ptr_src; ++ uint32_t tmp[8]; ++ ++ ra = (args >> 8) & 0xff; ++ rb = args & 0xff; ++ count = 8 - byte4_len; ++ ++ for (i = 0; i < 8; i++) { ++ ptr_dst = get_element_w(env, rd, i); ++ if (i < count) { ++ ptr_src = get_element_w(env, ra, i + byte4_len); ++ } else { ++ ptr_src = get_element_w(env, rb, i - count); ++ } ++ tmp[i] = *ptr_src; ++ } ++ for (i = 0; i < 8; i++) { ++ ptr_dst = get_element_w(env, rd, i); ++ *ptr_dst = tmp[i]; ++ } ++} ++ ++void helper_vcond(CPUSW64State *env, uint64_t args, uint64_t rd, ++ uint64_t byte8_len) ++{ ++ int ra, rb; ++ int count; ++ int i; ++ uint64_t *ptr_dst, *ptr_src; ++ uint64_t tmp[8]; ++ ++ ra = (args >> 8) & 0xff; ++ rb = args & 0xff; ++ count = 4 - byte8_len; ++ ++ for (i = 0; i < 4; i++) { ++ if (i < count) { ++ ptr_src = get_element_l(env, ra, i + byte8_len); ++ } else { ++ ptr_src = get_element_l(env, rb, i - count); ++ } ++ tmp[i] = *ptr_src; ++ } ++ for (i = 0; i < 4; i++) { ++ ptr_dst = get_element_l(env, rd, i + byte8_len); ++ *ptr_dst = tmp[i]; ++ } ++} ++ ++void helper_vshfw(CPUSW64State *env, uint64_t args, uint64_t rd, uint64_t vc) ++{ ++ int ra, rb; ++ int i; ++ uint32_t *ptr_dst, *ptr_src; ++ uint32_t tmp[8]; ++ int flag, idx; ++ ++ ra = (args >> 8) & 0xff; ++ rb = args & 0xff; ++ ++ for (i = 0; i < 8; i++) { ++ flag = (vc >> (i * 4)) & 0x8; ++ idx = (vc >> (i * 4)) & 0x7; ++ if (flag == 0) { ++ ptr_src = get_element_w(env, ra, idx); ++ } else { ++ ptr_src = get_element_w(env, rb, idx); ++ } ++ tmp[i] = *ptr_src; ++ } ++ for (i = 0; i < 8; i++) { ++ ptr_dst = get_element_w(env, rd, i); ++ *ptr_dst = tmp[i]; ++ } ++} ++ ++uint64_t helper_ctlzow(CPUSW64State *env, uint64_t ra) ++{ ++ int i, j; ++ uint64_t val; ++ uint64_t ctlz = 0; ++ ++ for (j = 3; j >= 0; j--) { ++ val = env->fr[ra + 32 * j]; ++ for (i = 63; i >= 0; i--) { ++ if ((val >> i) & 1) ++ return ctlz << 29; ++ else ++ ctlz++; ++ } ++ } ++ return ctlz << 29; ++} ++ ++void helper_vucaddw(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ int a, b, c; ++ int ret; ++ int i; ++ ++ for (i = 0; i < 4; i++) { ++ a = (int)(env->fr[ra + i * 32] & 0xffffffff); ++ b = (int)(env->fr[rb + i * 32] & 0xffffffff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ ret = c; ++ ++ a = (int)(env->fr[ra + i * 32] >> 32); ++ b = (int)(env->fr[rb + i * 32] >> 32); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ env->fr[rc + i * 32] = ((uint64_t)(uint32_t)c << 32) | ++ (uint64_t)(uint32_t)ret; ++ } ++} ++ ++void helper_vucaddwi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ int a, b, c; ++ int ret; ++ int i; ++ ++ b = (int)vb; ++ for (i = 0; i < 4; i++) { ++ a = (int)(env->fr[ra + i * 32] & 0xffffffff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ ret = c; ++ ++ a = (int)(env->fr[ra + i * 32] >> 32); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ env->fr[rc + i * 32] = ((uint64_t)(uint32_t)c << 32) | ++ (uint64_t)(uint32_t)ret; ++ } ++} ++ ++void helper_vucsubw(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ int a, b, c; ++ int ret; ++ int i; ++ ++ for (i = 0; i < 4; i++) { ++ a = (int)(env->fr[ra + i * 32] & 0xffffffff); ++ b = (int)(env->fr[rb + i * 32] & 0xffffffff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ ret = c; ++ ++ a = (int)(env->fr[ra + i * 32] >> 32); ++ b = (int)(env->fr[rb + i * 32] >> 32); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ env->fr[rc + i * 32] = ((uint64_t)(uint32_t)c << 32) | ++ (uint64_t)(uint32_t)ret; ++ } ++} ++ ++void helper_vucsubwi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ int a, b, c; ++ int ret; ++ int i; ++ ++ b = (int)vb; ++ for (i = 0; i < 4; i++) { ++ a = (int)(env->fr[ra + i * 32] & 0xffffffff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ ret = c; ++ ++ a = (int)(env->fr[ra + i * 32] >> 32); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80000000; ++ else ++ c = 0x7fffffff; ++ } ++ env->fr[rc + i * 32] = ((uint64_t)(uint32_t)c << 32) | ++ (uint64_t)(uint32_t)ret; ++ } ++} ++ ++void helper_vucaddh(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ short a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 4; j++) { ++ a = (short)((env->fr[ra + i * 32] >> (j * 16)) & 0xffff); ++ b = (short)((env->fr[rb + i * 32] >> (j * 16)) & 0xffff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x8000; ++ else ++ c = 0x7fff; ++ } ++ ret |= ((uint64_t)(uint16_t)c) << (j * 16); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucaddhi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ short a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ b = (short)vb; ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 4; j++) { ++ a = (short)((env->fr[ra + i * 32] >> (j * 16)) & 0xffff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x8000; ++ else ++ c = 0x7fff; ++ } ++ ret |= ((uint64_t)(uint16_t)c) << (j * 16); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucsubh(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ short a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 4; j++) { ++ a = (short)((env->fr[ra + i * 32] >> (j * 16)) & 0xffff); ++ b = (short)((env->fr[rb + i * 32] >> (j * 16)) & 0xffff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x8000; ++ else ++ c = 0x7fff; ++ } ++ ret |= ((uint64_t)(uint16_t)c) << (j * 16); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucsubhi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ short a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ b = (short)vb; ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 4; j++) { ++ a = (short)((env->fr[ra + i * 32] >> (j * 16)) & 0xffff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x8000; ++ else ++ c = 0x7fff; ++ } ++ ret |= ((uint64_t)(uint16_t)c) << (j * 16); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucaddb(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ int8_t a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 8; j++) { ++ a = (int8_t)((env->fr[ra + i * 32] >> (j * 8)) & 0xff); ++ b = (int8_t)((env->fr[rb + i * 32] >> (j * 8)) & 0xff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80; ++ else ++ c = 0x7f; ++ } ++ ret |= ((uint64_t)(uint8_t)c) << (j * 8); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucaddbi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ int8_t a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ b = (int8_t)(vb & 0xff); ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 8; j++) { ++ a = (int8_t)((env->fr[ra + i * 32] >> (j * 8)) & 0xff); ++ c = a + b; ++ if ((c ^ a) < 0 && (c ^ b) < 0) { ++ if (a < 0) ++ c = 0x80; ++ else ++ c = 0x7f; ++ } ++ ret |= ((uint64_t)(uint8_t)c) << (j * 8); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucsubb(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ int8_t a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 8; j++) { ++ a = (int8_t)((env->fr[ra + i * 32] >> (j * 8)) & 0xff); ++ b = (int8_t)((env->fr[rb + i * 32] >> (j * 8)) & 0xff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80; ++ else ++ c = 0x7f; ++ } ++ ret |= ((uint64_t)(uint8_t)c) << (j * 8); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++void helper_vucsubbi(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ int8_t a, b, c; ++ uint64_t ret; ++ int i, j; ++ ++ b = (int8_t)(vb & 0xff); ++ for (i = 0; i < 4; i++) { ++ ret = 0; ++ for (j = 0; j < 8; j++) { ++ a = (int8_t)((env->fr[ra + i * 32] >> (j * 8)) & 0xffff); ++ c = a - b; ++ if ((b ^ a) < 0 && (c ^ a) < 0) { ++ if (a < 0) ++ c = 0x80; ++ else ++ c = 0x7f; ++ } ++ ret |= ((uint64_t)(uint8_t)c) << (j * 8); ++ } ++ env->fr[rc + i * 32] = ret; ++ } ++} ++ ++uint64_t helper_vstw(CPUSW64State *env, uint64_t t0, uint64_t t1) ++{ ++ uint64_t idx, shift; ++ ++ idx = t0 + (t1 / 2) * 32; ++ shift = (t1 % 2) * 32; ++ ++ return (env->fr[idx] >> shift) & 0xffffffffUL; ++} ++ ++uint64_t helper_vsts(CPUSW64State *env, uint64_t t0, uint64_t t1) ++{ ++ uint64_t idx, val; ++ ++ idx = t0 + t1 * 32; ++ val = env->fr[idx]; ++ ++ return ((val >> 32) & 0xc0000000) | ((val >> 29) & 0x3fffffff); ++} ++ ++uint64_t helper_vstd(CPUSW64State *env, uint64_t t0, uint64_t t1) ++{ ++ uint64_t idx; ++ ++ idx = t0 + t1 * 32; ++ return env->fr[idx]; ++} ++ ++#define HELPER_VMAX(name, _suffix, type, loop) \ ++ void glue(glue(helper_, name), _suffix)(CPUSW64State *env, uint64_t ra, \ ++ uint64_t rb, uint64_t rc) \ ++ { \ ++ int i; \ ++ type *ptr_dst, *ptr_src_a, *ptr_src_b; \ ++ \ ++ for (i = 0; i < loop; i++) { \ ++ ptr_dst = (type*)glue(get_element_, _suffix)(env, rc, i); \ ++ ptr_src_a = (type*)glue(get_element_, _suffix)(env, ra, i); \ ++ ptr_src_b = (type*)glue(get_element_, _suffix)(env, rb, i); \ ++ \ ++ if (*ptr_src_a >= *ptr_src_b) { \ ++ *ptr_dst = *ptr_src_a; \ ++ } else { \ ++ *ptr_dst = *ptr_src_b; \ ++ } \ ++ } \ ++ } ++ ++#define HELPER_VMIN(name, _suffix, type, loop) \ ++ void glue(glue(helper_, name), _suffix)(CPUSW64State *env, uint64_t ra, \ ++ uint64_t rb, uint64_t rc) \ ++ { \ ++ int i; \ ++ type *ptr_dst, *ptr_src_a, *ptr_src_b; \ ++ \ ++ for (i = 0; i < loop; i++) { \ ++ ptr_dst = (type*)glue(get_element_, _suffix)(env, rc, i); \ ++ ptr_src_a = (type*)glue(get_element_, _suffix)(env, ra, i); \ ++ ptr_src_b = (type*)glue(get_element_, _suffix)(env, rb, i); \ ++ \ ++ if (*ptr_src_a <= *ptr_src_b) { \ ++ *ptr_dst = *ptr_src_a; \ ++ } else { \ ++ *ptr_dst = *ptr_src_b; \ ++ } \ ++ } \ ++ } ++ ++HELPER_VMAX(vmax, b, int8_t, 32) ++HELPER_VMIN(vmin, b, int8_t, 32) ++HELPER_VMAX(vmax, h, int16_t, 16) ++HELPER_VMIN(vmin, h, int16_t, 16) ++HELPER_VMAX(vmax, w, int32_t, 8) ++HELPER_VMIN(vmin, w, int32_t, 8) ++HELPER_VMAX(vumax, b, uint8_t, 32) ++HELPER_VMIN(vumin, b, uint8_t, 32) ++HELPER_VMAX(vumax, h, uint16_t, 16) ++HELPER_VMIN(vumin, h, uint16_t, 16) ++HELPER_VMAX(vumax, w, uint32_t, 8) ++HELPER_VMIN(vumin, w, uint32_t, 8) ++ ++void helper_sraow(CPUSW64State *env, uint64_t ra, uint64_t rc, uint64_t shift) ++{ ++ int i; ++ int adden; ++ int dest, src; ++ uint64_t sign; ++ adden = shift >> 6; ++ shift &= 0x3f; ++ sign = (uint64_t)((int64_t)env->fr[ra + 96] >> 63); ++#ifdef DEBUG_SIMD ++ printf("right shift = %ld adden = %d\n", shift, adden); ++ printf("in_fr[%ld]:", ra); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[ra + 32 * i]); ++ } ++ printf("\n"); ++#endif ++ ++ for (i = 0; (i + adden) < 4; i++) { ++ dest = i * 32 + rc; ++ src = (i + adden) * 32 + ra; ++ env->fr[dest] = env->fr[src] >> shift; ++ if (shift != 0) { ++ if (((i + adden) < 3)) ++ env->fr[dest] |= (env->fr[src + 32] << (64 - shift)); ++ else ++ env->fr[dest] |= (sign << (64 - shift)); ++ } ++ } ++ ++ for (; i < 4; i++) { ++ env->fr[rc + i * 32] = sign; ++ } ++#ifdef DEBUG_SIMD ++ printf("out_fr[%ld]:", rc); ++ for (i = 3 ; i >= 0; i--) { ++ printf("%016lx ", env->fr[rc + 32 * i]); ++ } ++ printf("\n"); ++#endif ++} ++ ++static uint16_t sm4_sbox[16][16] = { ++ { 0xd6, 0x90, 0xe9, 0xfe, 0xcc, 0xe1, 0x3d, 0xb7, 0x16, 0xb6, 0x14, 0xc2, 0x28, 0xfb, 0x2c, 0x05 }, ++ { 0x2b, 0x67, 0x9a, 0x76, 0x2a, 0xbe, 0x04, 0xc3, 0xaa, 0x44, 0x13, 0x26, 0x49, 0x86, 0x06, 0x99 }, ++ { 0x9c, 0x42, 0x50, 0xf4, 0x91, 0xef, 0x98, 0x7a, 0x33, 0x54, 0x0b, 0x43, 0xed, 0xcf, 0xac, 0x62 }, ++ { 0xe4, 0xb3, 0x1c, 0xa9, 0xc9, 0x08, 0xe8, 0x95, 0x80, 0xdf, 0x94, 0xfa, 0x75, 0x8f, 0x3f, 0xa6 }, ++ { 0x47, 0x07, 0xa7, 0xfc, 0xf3, 0x73, 0x17, 0xba, 0x83, 0x59, 0x3c, 0x19, 0xe6, 0x85, 0x4f, 0xa8 }, ++ { 0x68, 0x6b, 0x81, 0xb2, 0x71, 0x64, 0xda, 0x8b, 0xf8, 0xeb, 0x0f, 0x4b, 0x70, 0x56, 0x9d, 0x35 }, ++ { 0x1e, 0x24, 0x0e, 0x5e, 0x63, 0x58, 0xd1, 0xa2, 0x25, 0x22, 0x7c, 0x3b, 0x01, 0x21, 0x78, 0x87 }, ++ { 0xd4, 0x00, 0x46, 0x57, 0x9f, 0xd3, 0x27, 0x52, 0x4c, 0x36, 0x02, 0xe7, 0xa0, 0xc4, 0xc8, 0x9e }, ++ { 0xea, 0xbf, 0x8a, 0xd2, 0x40, 0xc7, 0x38, 0xb5, 0xa3, 0xf7, 0xf2, 0xce, 0xf9, 0x61, 0x15, 0xa1 }, ++ { 0xe0, 0xae, 0x5d, 0xa4, 0x9b, 0x34, 0x1a, 0x55, 0xad, 0x93, 0x32, 0x30, 0xf5, 0x8c, 0xb1, 0xe3 }, ++ { 0x1d, 0xf6, 0xe2, 0x2e, 0x82, 0x66, 0xca, 0x60, 0xc0, 0x29, 0x23, 0xab, 0x0d, 0x53, 0x4e, 0x6f }, ++ { 0xd5, 0xdb, 0x37, 0x45, 0xde, 0xfd, 0x8e, 0x2f, 0x03, 0xff, 0x6a, 0x72, 0x6d, 0x6c, 0x5b, 0x51 }, ++ { 0x8d, 0x1b, 0xaf, 0x92, 0xbb, 0xdd, 0xbc, 0x7f, 0x11, 0xd9, 0x5c, 0x41, 0x1f, 0x10, 0x5a, 0xd8 }, ++ { 0x0a, 0xc1, 0x31, 0x88, 0xa5, 0xcd, 0x7b, 0xbd, 0x2d, 0x74, 0xd0, 0x12, 0xb8, 0xe5, 0xb4, 0xb0 }, ++ { 0x89, 0x69, 0x97, 0x4a, 0x0c, 0x96, 0x77, 0x7e, 0x65, 0xb9, 0xf1, 0x09, 0xc5, 0x6e, 0xc6, 0x84 }, ++ { 0x18, 0xf0, 0x7d, 0xec, 0x3a, 0xdc, 0x4d, 0x20, 0x79, 0xee, 0x5f, 0x3e, 0xd7, 0xcb, 0x39, 0x48 } ++}; ++ ++static uint32_t SBOX(uint32_t val) ++{ ++ int ret = 0; ++ int i; ++ int idx_x, idx_y; ++ for (i = 0; i < 4; i++) { ++ idx_x = (val >> (i * 8)) & 0xff; ++ idx_y = idx_x & 0xf; ++ idx_x = idx_x >> 4; ++ ++ ret |= (sm4_sbox[idx_x][idx_y] << (i * 8)); ++ } ++ return ret; ++} ++ ++static uint32_t rotl(uint32_t val, int shift) ++{ ++ uint64_t ret = (uint64_t)val; ++ ret = (ret << (shift & 0x1f)); ++ return (uint32_t)((ret & 0xffffffff) | (ret >> 32)); ++} ++ ++void helper_vsm4r(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ uint32_t W[12], rk[8]; ++ uint32_t temp1, temp2; ++ int i, j; ++ ++ for (i = 0; i < 8; i++) { ++ rk[i] = *get_element_w(env, rb, i); ++ } ++ for (i = 0; i < 2; i++) { ++ for (j = 0; j < 4; j++) { ++ W[j] = *get_element_w(env, ra, i * 4 + j); ++ } ++ for (j = 0; j < 8; j++) { ++ temp1 = W[j + 1] ^ W[j + 2] ^ W[j + 3] ^ rk[j]; ++ temp2 = SBOX(temp1); ++ W[j + 4] = W[j] ^ temp2 ^ rotl(temp2, 2) ^ rotl(temp2, 10) ^ rotl(temp2, 18) ^ rotl(temp2, 24); ++ } ++ ++ for (j = 0; j < 4; j++) { ++ *get_element_w(env, rc, i * 4 + j) = W[8 + j]; ++ } ++ } ++} ++ ++void helper_vcmpueqb(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ uint8_t *ptr_a, *ptr_b, *ptr_c; ++ int i; ++ ++ for (i = 0; i < 32; i++) { ++ ptr_a = get_element_b(env, ra, i); ++ ptr_b = get_element_b(env, rb, i); ++ ptr_c = get_element_b(env, rc, i); ++ ++ *ptr_c = (*ptr_a == *ptr_b) ? 1 : 0; ++ ; ++ } ++} ++ ++void helper_vcmpugtb(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ uint8_t *ptr_a, *ptr_b, *ptr_c; ++ int i; ++ ++ for (i = 0; i < 32; i++) { ++ ptr_a = get_element_b(env, ra, i); ++ ptr_b = get_element_b(env, rb, i); ++ ptr_c = get_element_b(env, rc, i); ++ ++ *ptr_c = (*ptr_a > *ptr_b) ? 1 : 0; ++ ; ++ } ++} ++ ++void helper_vcmpueqbi(CPUSW64State *env, uint64_t ra, uint64_t vb, ++ uint64_t rc) ++{ ++ uint8_t *ptr_a, *ptr_c; ++ int i; ++ ++ for (i = 0; i < 32; i++) { ++ ptr_a = get_element_b(env, ra, i); ++ ptr_c = get_element_b(env, rc, i); ++ ++ *ptr_c = (*ptr_a == vb) ? 1 : 0; ++ ; ++ } ++} ++ ++void helper_vcmpugtbi(CPUSW64State *env, uint64_t ra, uint64_t vb, ++ uint64_t rc) ++{ ++ uint8_t *ptr_a, *ptr_c; ++ int i; ++ ++ for (i = 0; i < 32; i++) { ++ ptr_a = get_element_b(env, ra, i); ++ ptr_c = get_element_b(env, rc, i); ++ ++ *ptr_c = (*ptr_a > vb) ? 1 : 0; ++ ; ++ } ++} ++ ++void helper_vsm3msw(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rc) ++{ ++ uint32_t W[24]; ++ uint32_t temp; ++ int i; ++ ++ for (i = 0; i < 8; i++) { ++ W[i + 0] = *get_element_w(env, ra, i); ++ W[i + 8] = *get_element_w(env, rb, i); ++ } ++ for (i = 16; i < 24; i++) { ++ temp = W[i - 16] ^ W[i - 9] ^ rotl(W[i - 3], 15); ++ temp = temp ^ rotl(temp, 15) ^ rotl(temp, 23) ^ rotl(W[i - 13], 7) ^ W[i - 6]; ++ W[i] = temp; ++ } ++ for (i = 0; i < 8; i++) { ++ *get_element_w(env, rc, i) = W[16 + i]; ++ } ++} ++ ++static uint32_t selck[4][8] = { ++ {0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269, 0x70777e85, 0x8c939aa1, 0xa8afb6bd, 0xc4cbd2d9}, ++ {0xe0e7eef5, 0xfc030a11, 0x181f262d, 0x343b4249, 0x50575e65, 0x6c737a81, 0x888f969d, 0xa4abb2b9}, ++ {0xc0c7ced5, 0xdce3eaf1, 0xf8ff060d, 0x141b2229, 0x30373e45, 0x4c535a61, 0x686f767d, 0x848b9299}, ++ {0xa0a7aeb5, 0xbcc3cad1, 0xd8dfe6ed, 0xf4fb0209, 0x10171e25, 0x2c333a41, 0x484f565d, 0x646b7279} ++}; ++ ++void helper_vsm4key(CPUSW64State *env, uint64_t ra, uint64_t vb, uint64_t rc) ++{ ++ uint32_t K[12], *CK; ++ int i; ++ uint32_t temp1, temp2; ++ ++ for (i = 4; i < 8; i++) { ++ K[i - 4] = *get_element_w(env, ra, i); ++ } ++ CK = selck[vb]; ++ ++ for (i = 0; i < 8; i++) { ++ temp1 = K[i + 1] ^ K[i + 2] ^ K[i + 3] ^ CK[i]; ++ temp2 = SBOX(temp1); ++ K[i + 4] = K[i] ^ temp2 ^ rotl(temp2, 13) ^ rotl(temp2, 23); ++ } ++ for (i = 0; i < 8; i++) { ++ *get_element_w(env, rc, i) = K[i + 4]; ++ } ++} ++ ++void helper_vinsb(CPUSW64State *env, uint64_t va, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ int i; ++ ++ for (i = 0; i < 128; i += 32) { ++ env->fr[rd + i] = env->fr[rb + i]; ++ } ++ ++ *get_element_b(env, rd, vc) = (uint8_t)(va & 0xff); ++} ++ ++void helper_vinsh(CPUSW64State *env, uint64_t va, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ int i; ++ ++ if (vc >= 16) ++ return; ++ ++ for (i = 0; i < 128; i += 32) { ++ env->fr[rd + i] = env->fr[rb + i]; ++ } ++ ++ *get_element_h(env, rd, vc) = (uint16_t)(va & 0xffff); ++} ++ ++void helper_vinsectlh(CPUSW64State *env, uint64_t ra, uint64_t rb, ++ uint64_t rd) ++{ ++ int i; ++ uint32_t temp[8]; ++ for (i = 0; i < 8; i++) { ++ temp[i] = *get_element_h(env, ra, i) | ((uint32_t)*get_element_h(env, rb, i) << 16); ++ } ++ for (i = 0; i < 8; i++) { ++ *get_element_w(env, rd, i) = temp[i]; ++ } ++} ++void helper_vinsectlw(CPUSW64State *env, uint64_t ra, uint64_t rb, ++ uint64_t rd) ++{ ++ int i; ++ uint64_t temp[4]; ++ for (i = 0; i < 4; i++) { ++ temp[i] = *get_element_w(env, ra, i) | ((uint64_t)*get_element_w(env, rb, i) << 32); ++ } ++ for (i = 0; i < 4; i++) { ++ *get_element_l(env, rd, i) = temp[i]; ++ } ++} ++ ++void helper_vinsectlb(CPUSW64State *env, uint64_t ra, uint64_t rb, ++ uint64_t rd) ++{ ++ int i; ++ uint16_t temp[16]; ++ for (i = 0; i < 16; i++) { ++ temp[i] = *get_element_b(env, ra, i) | ((uint16_t)*get_element_b(env, rb, i) << 8); ++ } ++ for (i = 0; i < 16; i++) { ++ *get_element_h(env, rd, i) = temp[i]; ++ } ++} ++ ++void helper_vshfq(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ int i; ++ int idx; ++ uint64_t temp[4]; ++ for (i = 0; i < 2; i++) { ++ idx = ((vc >> (i * 2)) & 1) * 64; ++ if ((vc >> (i * 2 + 1)) & 1) { ++ temp[i * 2] = env->fr[rb + idx]; ++ temp[i * 2 + 1] = env->fr[rb + idx + 32]; ++ } else { ++ temp[i * 2] = env->fr[ra + idx]; ++ temp[i * 2 + 1] = env->fr[ra + idx + 32]; ++ } ++ } ++ for (i = 0; i < 4; i++) { ++ env->fr[rd + i * 32] = temp[i]; ++ } ++} ++ ++void helper_vshfqb(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t rd) ++{ ++ int i; ++ int idx; ++ int vb; ++ uint8_t temp[32]; ++ ++ for (i = 0; i < 16; i++) { ++ vb = *get_element_b(env, rb, i); ++ if (vb >> 7) { ++ temp[i] = 0; ++ } else { ++ idx = vb & 0xf; ++ temp[i] = *get_element_b(env, ra, idx); ++ } ++ vb = *get_element_b(env, rb, i + 16); ++ if (vb >> 7) { ++ temp[i + 16] = 0; ++ } else { ++ idx = vb & 0xf; ++ temp[i + 16] = *get_element_b(env, ra, idx + 16); ++ } ++ } ++ for (i = 0; i < 4; i++) { ++ env->fr[rd + i * 32] = *((uint64_t*)temp + i); ++ } ++} ++ ++void helper_vsm3r(CPUSW64State *env, uint64_t ra, uint64_t rb, uint64_t vc, ++ uint64_t rd) ++{ ++ uint32_t W[8]; ++ uint32_t A, B, C, D, E, F, G, H, T; ++ int i; ++ uint32_t SS1, SS2, TT1, TT2, P0; ++ ++ if (vc >= 16) ++ return; ++ for (i = 0; i < 8; i++) { ++ W[i] = *get_element_w(env, ra, i); ++ } ++ A = *get_element_w(env, rb, 0); ++ B = *get_element_w(env, rb, 1); ++ C = *get_element_w(env, rb, 2); ++ D = *get_element_w(env, rb, 3); ++ E = *get_element_w(env, rb, 4); ++ F = *get_element_w(env, rb, 5); ++ G = *get_element_w(env, rb, 6); ++ H = *get_element_w(env, rb, 7); ++ ++ if (vc < 4) { ++ T = 0x79cc4519; ++ for (i = 0; i < 4; i++) { ++ SS1 = rotl(rotl(A, 12) + E + rotl(T, 4 * vc + i), 7); ++ SS2 = SS1 ^ rotl(A, 12); ++ TT1 = (A ^ B ^ C) + D + SS2 + (W[i] ^ W[i + 4]); ++ TT2 = (E ^ F ^ G) + H + SS1 + W[i]; ++ ++ P0 = TT2 ^ rotl(TT2, 9) ^ rotl(TT2, 17); ++ ++ H = G; ++ G = rotl(F, 19); ++ F = E; ++ E = P0; ++ D = C; ++ C = rotl(B, 9); ++ B = A; ++ A = TT1; ++ } ++ } else { ++ T = 0x7a879d8a; ++ for (i = 0; i < 4; i++) { ++ SS1 = rotl(rotl(A, 12) + E + rotl(T, 4 * vc + i), 7); ++ SS2 = SS1 ^ rotl(A, 12); ++ TT1 = ((A & B) | (A & C) | (B & C)) + D + SS2 + (W[i] ^ W[i + 4]); ++ TT2 = ((E & F) | ((~E) & G)) + H + SS1 + W[i]; ++ ++ P0 = TT2 ^ rotl(TT2, 9) ^ rotl(TT2, 17); ++ ++ H = G; ++ G = rotl(F, 19); ++ F = E; ++ E = P0; ++ D = C; ++ C = rotl(B, 9); ++ B = A; ++ A = TT1; ++ } ++ } ++ *get_element_w(env, rd, 0) = A; ++ *get_element_w(env, rd, 1) = B; ++ *get_element_w(env, rd, 2) = C; ++ *get_element_w(env, rd, 3) = D; ++ *get_element_w(env, rd, 4) = E; ++ *get_element_w(env, rd, 5) = F; ++ *get_element_w(env, rd, 6) = G; ++ *get_element_w(env, rd, 7) = H; ++} +diff --git a/target/sw64/translate.c b/target/sw64/translate.c +new file mode 100644 +index 0000000000..37b7e89077 +--- /dev/null ++++ b/target/sw64/translate.c +@@ -0,0 +1,3798 @@ ++#include "translate.h" ++#include "tcg/tcg.h" ++#define DEVELOP_SW64 1 ++#ifdef DEVELOP_SW64 ++ ++#define ILLEGAL(x) \ ++ do { \ ++ printf("Illegal SW64 0x%x at line %d!\n", x, __LINE__); \ ++ exit(-1); \ ++ } while (0) ++#endif ++ ++TCGv cpu_pc; ++TCGv cpu_std_ir[31]; ++TCGv cpu_fr[128]; ++TCGv cpu_lock_addr; ++TCGv cpu_lock_flag; ++TCGv cpu_lock_success; ++#ifdef SW64_FIXLOCK ++TCGv cpu_lock_value; ++#endif ++ ++#ifndef CONFIG_USER_ONLY ++TCGv cpu_hm_ir[31]; ++#endif ++ ++#include "exec/gen-icount.h" ++ ++void sw64_translate_init(void) ++{ ++#define DEF_VAR(V) \ ++ { &cpu_##V, #V, offsetof(CPUSW64State, V) } ++ ++ typedef struct { ++ TCGv* var; ++ const char* name; ++ int ofs; ++ } GlobalVar; ++ ++ static const GlobalVar vars[] = { ++ DEF_VAR(pc), DEF_VAR(lock_addr), ++ DEF_VAR(lock_flag), DEF_VAR(lock_success), ++#ifdef SW64_FIXLOCK ++ DEF_VAR(lock_value), ++#endif ++ }; ++ cpu_pc = tcg_global_mem_new_i64(cpu_env, ++ offsetof(CPUSW64State, pc), "PC"); ++ ++#undef DEF_VAR ++ ++ /* Use the symbolic register names that match the disassembler. */ ++ static const char ireg_names[31][4] = { ++ "v0", "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", "s0", "s1", ++ "s2", "s3", "s4", "s5", "fp", "a0", "a1", "a2", "a3", "a4", "a5", ++ "t8", "t9", "t10", "t11", "ra", "t12", "at", "gp", "sp"}; ++ ++ static const char freg_names[128][4] = { ++ "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", ++ "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", "f18", "f19", ++ "f20", "f21", "f22", "f23", "f24", "f25", "f26", "f27", "f28", "f29", ++ "f30", "f31", "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", ++ "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", "f16", "f17", ++ "f18", "f19", "f20", "f21", "f22", "f23", "f24", "f25", "f26", "f27", ++ "f28", "f29", "f30", "f31", "f0", "f1", "f2", "f3", "f4", "f5", ++ "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", ++ "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", "f24", "f25", ++ "f26", "f27", "f28", "f29", "f30", "f31", "f0", "f1", "f2", "f3", ++ "f4", "f5", "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", ++ "f14", "f15", "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", ++ "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31"}; ++ ++#ifndef CONFIG_USER_ONLY ++ static const char shadow_names[10][8] = { ++ "hm_p1", "hm_p2", "hm_p4", "hm_p5", "hm_p6", ++ "hm_p7", "hm_p20", "hm_p21", "hm_p22", "hm_p23"}; ++ static const int shadow_index[10] = {1, 2, 4, 5, 6, 7, 20, 21, 22, 23}; ++#endif ++ ++ int i; ++ ++ for (i = 0; i < 31; i++) { ++ cpu_std_ir[i] = tcg_global_mem_new_i64( ++ cpu_env, offsetof(CPUSW64State, ir[i]), ireg_names[i]); ++ } ++ ++ for (i = 0; i < 128; i++) { ++ cpu_fr[i] = tcg_global_mem_new_i64( ++ cpu_env, offsetof(CPUSW64State, fr[i]), freg_names[i]); ++ } ++ for (i = 0; i < ARRAY_SIZE(vars); ++i) { ++ const GlobalVar* v = &vars[i]; ++ *v->var = tcg_global_mem_new_i64(cpu_env, v->ofs, v->name); ++ } ++#ifndef CONFIG_USER_ONLY ++ memcpy(cpu_hm_ir, cpu_std_ir, sizeof(cpu_hm_ir)); ++ for (i = 0; i < 10; i++) { ++ int r = shadow_index[i]; ++ cpu_hm_ir[r] = tcg_global_mem_new_i64( ++ cpu_env, offsetof(CPUSW64State, sr[i]), shadow_names[i]); ++ } ++#endif ++} ++ ++static bool in_superpage(DisasContext* ctx, int64_t addr) ++{ ++ return false; ++} ++ ++bool use_exit_tb(DisasContext* ctx) ++{ ++ return ((tb_cflags(ctx->base.tb) & CF_LAST_IO) || ++ ctx->base.singlestep_enabled || singlestep); ++} ++ ++bool use_goto_tb(DisasContext* ctx, uint64_t dest) ++{ ++ /* Suppress goto_tb in the case of single-steping and IO. */ ++ if (unlikely(use_exit_tb(ctx))) { ++ return false; ++ } ++ /* If the destination is in the superpage, the page perms can't change. */ ++ if (in_superpage(ctx, dest)) { ++ return true; ++ } ++/* Check for the dest on the same page as the start of the TB. */ ++#ifndef CONFIG_USER_ONLY ++ return ((ctx->base.tb->pc ^ dest) & TARGET_PAGE_MASK) == 0; ++#else ++ return true; ++#endif ++} ++ ++void gen_fold_mzero(TCGCond cond, TCGv dest, TCGv src) ++{ ++ uint64_t mzero = 1ull << 63; ++ ++ switch (cond) { ++ case TCG_COND_LE: ++ case TCG_COND_GT: ++ /* For <= or >, the -0.0 value directly compares the way we want. */ ++ tcg_gen_mov_i64(dest, src); ++ break; ++ ++ case TCG_COND_EQ: ++ case TCG_COND_NE: ++ /* For == or !=, we can simply mask off the sign bit and compare. */ ++ tcg_gen_andi_i64(dest, src, mzero - 1); ++ break; ++ ++ case TCG_COND_GE: ++ case TCG_COND_LT: ++ /* For >= or <, map -0.0 to +0.0 via comparison and mask. */ ++ tcg_gen_setcondi_i64(TCG_COND_NE, dest, src, mzero); ++ tcg_gen_neg_i64(dest, dest); ++ tcg_gen_and_i64(dest, dest, src); ++ break; ++ ++ default: ++ abort(); ++ } ++} ++ ++static TCGv load_zero(DisasContext *ctx) ++{ ++ if (!ctx->zero) { ++ ctx->zero = tcg_const_i64(0); ++ } ++ return ctx->zero; ++} ++ ++static void free_context_temps(DisasContext *ctx) ++{ ++ if (ctx->zero) { ++ tcg_temp_free(ctx->zero); ++ ctx->zero = NULL; ++ } ++} ++ ++static TCGv load_gir(DisasContext *ctx, unsigned reg) ++{ ++ if (likely(reg < 31)) { ++ return ctx->ir[reg]; ++ } else { ++ return load_zero(ctx); ++ } ++} ++ ++static void gen_excp_1(int exception, int error_code) ++{ ++ TCGv_i32 tmp1, tmp2; ++ ++ tmp1 = tcg_const_i32(exception); ++ tmp2 = tcg_const_i32(error_code); ++ gen_helper_excp(cpu_env, tmp1, tmp2); ++ tcg_temp_free_i32(tmp2); ++ tcg_temp_free_i32(tmp1); ++} ++ ++static DisasJumpType gen_excp(DisasContext* ctx, int exception, ++ int error_code) ++{ ++ tcg_gen_movi_i64(cpu_pc, ctx->base.pc_next); ++ gen_excp_1(exception, error_code); ++ return DISAS_NORETURN; ++} ++ ++static int i_count = 1; ++ ++static inline DisasJumpType gen_invalid(DisasContext *ctx) ++{ ++ if (i_count == 0) { ++ i_count++; ++ return DISAS_NEXT; ++ } ++ fprintf(stderr, "here %lx\n", ctx->base.pc_next); ++ return gen_excp(ctx, EXCP_OPCDEC, 0); ++} ++ ++static uint64_t zapnot_mask(uint8_t byte_mask) ++{ ++ uint64_t mask = 0; ++ int i; ++ ++ for (i = 0; i < 8; ++i) { ++ if ((byte_mask >> i) & 1) { ++ mask |= 0xffull << (i * 8); ++ } ++ } ++ return mask; ++} ++ ++static void gen_ins_l(DisasContext* ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv tmp = tcg_temp_new(); ++ TCGv shift = tcg_temp_new(); ++ ++ tcg_gen_andi_i64(tmp, va, zapnot_mask(byte_mask)); ++ ++ tcg_gen_andi_i64(shift, vb, 7); ++ tcg_gen_shli_i64(shift, shift, 3); ++ tcg_gen_shl_i64(vc, tmp, shift); ++ ++ tcg_temp_free(shift); ++ tcg_temp_free(tmp); ++} ++ ++static void gen_ins_h(DisasContext* ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv tmp = tcg_temp_new(); ++ TCGv shift = tcg_temp_new(); ++ ++ tcg_gen_andi_i64(tmp, va, zapnot_mask(byte_mask)); ++ ++ tcg_gen_shli_i64(shift, vb, 3); ++ tcg_gen_not_i64(shift, shift); ++ tcg_gen_andi_i64(shift, shift, 0x3f); ++ ++ tcg_gen_shr_i64(vc, tmp, shift); ++ tcg_gen_shri_i64(vc, vc, 1); ++ tcg_temp_free(shift); ++ tcg_temp_free(tmp); ++} ++ ++static void gen_ext_l(DisasContext* ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv tmp = tcg_temp_new(); ++ TCGv shift = tcg_temp_new(); ++ ++ tcg_gen_andi_i64(shift, vb, 7); ++ tcg_gen_shli_i64(shift, shift, 3); ++ tcg_gen_shr_i64(tmp, va, shift); ++ ++ tcg_gen_andi_i64(vc, tmp, zapnot_mask(byte_mask)); ++ ++ tcg_temp_free(shift); ++ tcg_temp_free(tmp); ++} ++ ++static void gen_ext_h(DisasContext* ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv tmp = tcg_temp_new(); ++ TCGv shift = tcg_temp_new(); ++ ++ tcg_gen_andi_i64(shift, vb, 7); ++ tcg_gen_shli_i64(shift, shift, 3); ++ tcg_gen_movi_i64(tmp, 64); ++ tcg_gen_sub_i64(shift, tmp, shift); ++ tcg_gen_shl_i64(tmp, va, shift); ++ ++ tcg_gen_andi_i64(vc, tmp, zapnot_mask(byte_mask)); ++ ++ tcg_temp_free(shift); ++ tcg_temp_free(tmp); ++} ++ ++static void gen_mask_l(DisasContext* ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv shift = tcg_temp_new(); ++ TCGv mask = tcg_temp_new(); ++ ++ tcg_gen_andi_i64(shift, vb, 7); ++ tcg_gen_shli_i64(shift, shift, 3); ++ tcg_gen_movi_i64(mask, zapnot_mask(byte_mask)); ++ tcg_gen_shl_i64(mask, mask, shift); ++ ++ tcg_gen_andc_i64(vc, va, mask); ++ ++ tcg_temp_free(mask); ++ tcg_temp_free(shift); ++} ++ ++static void gen_mask_h(DisasContext *ctx, TCGv vc, TCGv va, TCGv vb, ++ uint8_t byte_mask) ++{ ++ TCGv shift = tcg_temp_new(); ++ TCGv mask = tcg_temp_new(); ++ ++ /* The instruction description is as above, where the byte_mask ++ is shifted left, and then we extract bits <15:8>. This can be ++ emulated with a right-shift on the expanded byte mask. This ++ requires extra care because for an input <2:0> == 0 we need a ++ shift of 64 bits in order to generate a zero. This is done by ++ splitting the shift into two parts, the variable shift - 1 ++ followed by a constant 1 shift. The code we expand below is ++ equivalent to ~(B * 8) & 63. */ ++ ++ tcg_gen_shli_i64(shift, vb, 3); ++ tcg_gen_not_i64(shift, shift); ++ tcg_gen_andi_i64(shift, shift, 0x3f); ++ tcg_gen_movi_i64(mask, zapnot_mask(byte_mask)); ++ tcg_gen_shr_i64(mask, mask, shift); ++ tcg_gen_shri_i64(mask, mask, 1); ++ ++ tcg_gen_andc_i64(vc, va, mask); ++ ++ tcg_temp_free(mask); ++ tcg_temp_free(shift); ++} ++ ++static inline void gen_load_mem( ++ DisasContext *ctx, void (*tcg_gen_qemu_load)(TCGv t0, TCGv t1, int flags), ++ int ra, int rb, int32_t disp16, bool fp, bool clear) ++{ ++ TCGv tmp, addr, va; ++ ++ /* LDQ_U with ra $31 is UNOP. Other various loads are forms of ++ prefetches, which we can treat as nops. No worries about ++ missed exceptions here. */ ++ if (unlikely(ra == 31)) { ++ return; ++ } ++ ++ tmp = tcg_temp_new(); ++ addr = load_gir(ctx, rb); ++ ++ if (disp16) { ++ tcg_gen_addi_i64(tmp, addr, (int64_t)disp16); ++ addr = tmp; ++ } else { ++ tcg_gen_mov_i64(tmp, addr); ++ addr = tmp; ++ } ++ if (clear) { ++ tcg_gen_andi_i64(tmp, addr, ~0x7UL); ++ addr = tmp; ++ } ++ ++ va = (fp ? cpu_fr[ra] : load_gir(ctx, ra)); ++ tcg_gen_qemu_load(va, addr, ctx->mem_idx); ++ ++ tcg_temp_free(tmp); ++} ++ ++static inline void gen_store_mem( ++ DisasContext *ctx, void (*tcg_gen_qemu_store)(TCGv t0, TCGv t1, int flags), ++ int ra, int rb, int32_t disp16, bool fp, bool clear) ++{ ++ TCGv tmp, addr, va; ++ ++ tmp = tcg_temp_new(); ++ addr = load_gir(ctx, rb); ++ if (disp16) { ++ tcg_gen_addi_i64(tmp, addr, disp16); ++ addr = tmp; ++ } else { ++ tcg_gen_mov_i64(tmp, addr); ++ addr = tmp; ++ } ++ if (clear) { ++ tcg_gen_andi_i64(tmp, addr, ~0x7); ++ addr = tmp; ++ } ++ va = (fp ? cpu_fr[ra] : load_gir(ctx, ra)); ++ ++ tcg_gen_qemu_store(va, addr, ctx->mem_idx); ++ gen_helper_trace_mem(cpu_env, addr, va); ++ tcg_temp_free(tmp); ++} ++ ++static void cal_with_iregs_2(DisasContext *ctx, TCGv vc, TCGv va, TCGv vb, ++ int32_t disp13, uint16_t fn) ++{ ++ TCGv tmp; ++ ++ switch (fn & 0xff) { ++ case 0x00: ++ /* ADDW */ ++ tcg_gen_add_i64(vc, va, vb); ++ tcg_gen_ext32s_i64(vc, vc); ++ break; ++ case 0x01: ++ /* SUBW */ ++ tcg_gen_sub_i64(vc, va, vb); ++ tcg_gen_ext32s_i64(vc, vc); ++ break; ++ case 0x02: ++ /* S4ADDW */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 2); ++ tcg_gen_add_i64(tmp, tmp, vb); ++ tcg_gen_ext32s_i64(vc, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x03: ++ /* S4SUBW */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 2); ++ tcg_gen_sub_i64(tmp, tmp, vb); ++ tcg_gen_ext32s_i64(vc, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x04: ++ /* S8ADDW */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 3); ++ tcg_gen_add_i64(tmp, tmp, vb); ++ tcg_gen_ext32s_i64(vc, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x05: ++ /* S8SUBW */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 3); ++ tcg_gen_sub_i64(tmp, tmp, vb); ++ tcg_gen_ext32s_i64(vc, tmp); ++ tcg_temp_free(tmp); ++ break; ++ ++ case 0x08: ++ /* ADDL */ ++ tcg_gen_add_i64(vc, va, vb); ++ break; ++ case 0x09: ++ /* SUBL */ ++ tcg_gen_sub_i64(vc, va, vb); ++ break; ++ case 0x0a: ++ /* S4ADDL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 2); ++ tcg_gen_add_i64(vc, tmp, vb); ++ tcg_temp_free(tmp); ++ break; ++ case 0x0b: ++ /* S4SUBL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 2); ++ tcg_gen_sub_i64(vc, tmp, vb); ++ tcg_temp_free(tmp); ++ break; ++ case 0x0c: ++ /* S8ADDL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 3); ++ tcg_gen_add_i64(vc, tmp, vb); ++ tcg_temp_free(tmp); ++ break; ++ case 0x0d: ++ /* S8SUBL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_shli_i64(tmp, va, 3); ++ tcg_gen_sub_i64(vc, tmp, vb); ++ tcg_temp_free(tmp); ++ break; ++ case 0x10: ++ /* MULW */ ++ tcg_gen_mul_i64(vc, va, vb); ++ tcg_gen_ext32s_i64(vc, vc); ++ break; ++ case 0x18: ++ /* MULL */ ++ tcg_gen_mul_i64(vc, va, vb); ++ break; ++ case 0x19: ++ /* MULH */ ++ tmp = tcg_temp_new(); ++ tcg_gen_mulu2_i64(tmp, vc, va, vb); ++ tcg_temp_free(tmp); ++ break; ++ case 0x28: ++ /* CMPEQ */ ++ tcg_gen_setcond_i64(TCG_COND_EQ, vc, va, vb); ++ break; ++ case 0x29: ++ /* CMPLT */ ++ tcg_gen_setcond_i64(TCG_COND_LT, vc, va, vb); ++ break; ++ case 0x2a: ++ /* CMPLE */ ++ tcg_gen_setcond_i64(TCG_COND_LE, vc, va, vb); ++ break; ++ case 0x2b: ++ /* CMPULT */ ++ tcg_gen_setcond_i64(TCG_COND_LTU, vc, va, vb); ++ break; ++ case 0x2c: ++ /* CMPULE */ ++ tcg_gen_setcond_i64(TCG_COND_LEU, vc, va, vb); ++ break; ++ case 0x38: ++ /* AND */ ++ tcg_gen_and_i64(vc, va, vb); ++ break; ++ case 0x39: ++ /* BIC */ ++ tcg_gen_andc_i64(vc, va, vb); ++ break; ++ case 0x3a: ++ /* BIS */ ++ tcg_gen_or_i64(vc, va, vb); ++ break; ++ case 0x3b: ++ /* ORNOT */ ++ tcg_gen_orc_i64(vc, va, vb); ++ break; ++ case 0x3c: ++ /* XOR */ ++ tcg_gen_xor_i64(vc, va, vb); ++ break; ++ case 0x3d: ++ /* EQV */ ++ tcg_gen_eqv_i64(vc, va, vb); ++ break; ++ case 0x40: ++ /* INSLB */ ++ gen_ins_l(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x41: ++ /* INSLH */ ++ gen_ins_l(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x42: ++ /* INSLW */ ++ gen_ins_l(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x43: ++ /* INSLL */ ++ gen_ins_l(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x44: ++ /* INSHB */ ++ gen_ins_h(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x45: ++ /* INSHH */ ++ gen_ins_h(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x46: ++ /* INSHW */ ++ gen_ins_h(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x47: ++ /* INSHL */ ++ gen_ins_h(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x48: ++ /* SLL/SLLL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_andi_i64(tmp, vb, 0x3f); ++ tcg_gen_shl_i64(vc, va, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x49: ++ /* SRL/SRLL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_andi_i64(tmp, vb, 0x3f); ++ tcg_gen_shr_i64(vc, va, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x4a: ++ /* SRA/SRAL */ ++ tmp = tcg_temp_new(); ++ tcg_gen_andi_i64(tmp, vb, 0x3f); ++ tcg_gen_sar_i64(vc, va, tmp); ++ tcg_temp_free(tmp); ++ break; ++ case 0x50: ++ /* EXTLB */ ++ gen_ext_l(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x51: ++ /* EXTLH */ ++ gen_ext_l(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x52: ++ /* EXTLW */ ++ gen_ext_l(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x53: ++ /* EXTLL */ ++ gen_ext_l(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x54: ++ /* EXTHB */ ++ gen_ext_h(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x55: ++ /* EXTHH */ ++ gen_ext_h(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x56: ++ /* EXTHW */ ++ gen_ext_h(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x57: ++ /* EXTHL */ ++ gen_ext_h(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x58: ++ /* CTPOP */ ++ tcg_gen_ctpop_i64(vc, vb); ++ break; ++ case 0x59: ++ /* CTLZ */ ++ tcg_gen_clzi_i64(vc, vb, 64); ++ break; ++ case 0x5a: ++ /* CTTZ */ ++ tcg_gen_ctzi_i64(vc, vb, 64); ++ break; ++ case 0x60: ++ /* MASKLB */ ++ gen_mask_l(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x61: ++ /* MASKLH */ ++ gen_mask_l(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x62: ++ /* MASKLW */ ++ gen_mask_l(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x63: ++ /* MASKLL */ ++ gen_mask_l(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x64: ++ /* MASKHB */ ++ gen_mask_h(ctx, vc, va, vb, 0x1); ++ break; ++ case 0x65: ++ /* MASKHH */ ++ gen_mask_h(ctx, vc, va, vb, 0x3); ++ break; ++ case 0x66: ++ /* MASKHW */ ++ gen_mask_h(ctx, vc, va, vb, 0xf); ++ break; ++ case 0x67: ++ /* MASKHL */ ++ gen_mask_h(ctx, vc, va, vb, 0xff); ++ break; ++ case 0x68: ++ /* ZAP */ ++ gen_helper_zap(vc, va, vb); ++ break; ++ case 0x69: ++ /* ZAPNOT */ ++ gen_helper_zapnot(vc, va, vb); ++ break; ++ case 0x6a: ++ /* SEXTB */ ++ tcg_gen_ext8s_i64(vc, vb); ++ break; ++ case 0x6b: ++ /* SEXTH */ ++ tcg_gen_ext16s_i64(vc, vb); ++ break; ++ case 0x6c: ++ /* CMPGEB*/ ++ gen_helper_cmpgeb(vc, va, vb); ++ break; ++ default: ++ ILLEGAL(fn); ++ } ++} ++ ++static void cal_with_imm_2(DisasContext *ctx, TCGv vc, TCGv va, int64_t disp, ++ uint8_t fn) ++{ ++ TCGv_i64 t0 = tcg_const_i64(disp); ++ cal_with_iregs_2(ctx, vc, va, t0, 0, fn); ++ tcg_temp_free_i64(t0); ++} ++ ++static void cal_with_iregs_3(DisasContext *ctx, TCGv vd, TCGv va, TCGv vb, ++ TCGv vc, uint8_t fn) ++{ ++ TCGv_i64 t0 = tcg_const_i64(0); ++ TCGv_i64 tmp; ++ switch (fn) { ++ case 0x0: ++ /* SELEQ */ ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, va, t0, vb, vc); ++ break; ++ case 0x1: ++ /* SELGE */ ++ tcg_gen_movcond_i64(TCG_COND_GE, vd, va, t0, vb, vc); ++ break; ++ case 0x2: ++ /* SELGT */ ++ tcg_gen_movcond_i64(TCG_COND_GT, vd, va, t0, vb, vc); ++ break; ++ case 0x3: ++ /* SELLE */ ++ tcg_gen_movcond_i64(TCG_COND_LE, vd, va, t0, vb, vc); ++ break; ++ case 0x4: ++ /* SELLT */ ++ tcg_gen_movcond_i64(TCG_COND_LT, vd, va, t0, vb, vc); ++ break; ++ case 0x5: ++ /* SELNE */ ++ tcg_gen_movcond_i64(TCG_COND_NE, vd, va, t0, vb, vc); ++ break; ++ case 0x6: ++ /* SELLBC */ ++ tmp = tcg_temp_new_i64(); ++ tcg_gen_andi_i64(tmp, va, 1); ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, tmp, t0, vb, vc); ++ tcg_temp_free_i64(tmp); ++ break; ++ case 0x7: ++ /* SELLBS */ ++ tmp = tcg_temp_new_i64(); ++ tcg_gen_andi_i64(tmp, va, 1); ++ tcg_gen_movcond_i64(TCG_COND_NE, vd, tmp, t0, vb, vc); ++ tcg_temp_free_i64(tmp); ++ break; ++ default: ++ ILLEGAL(fn); ++ break; ++ } ++ tcg_temp_free_i64(t0); ++} ++ ++static void cal_with_imm_3(DisasContext *ctx, TCGv vd, TCGv va, int32_t disp, ++ TCGv vc, uint8_t fn) ++{ ++ TCGv_i64 vb = tcg_const_i64(disp); ++ cal_with_iregs_3(ctx, vd, va, vb, vc, fn); ++ tcg_temp_free_i64(vb); ++} ++ ++static DisasJumpType gen_bdirect(DisasContext *ctx, int ra, int32_t disp) ++{ ++ uint64_t dest = ctx->base.pc_next + ((int64_t)disp << 2); ++ if (ra != 31) { ++ tcg_gen_movi_i64(load_gir(ctx, ra), ctx->base.pc_next & (~0x3UL)); ++ } ++ if (disp == 0) { ++ return 0; ++ } else if (use_goto_tb(ctx, dest)) { ++ tcg_gen_goto_tb(0); ++ tcg_gen_movi_i64(cpu_pc, dest); ++ tcg_gen_exit_tb(ctx->base.tb, 0); ++ return DISAS_NORETURN; ++ } else { ++ tcg_gen_movi_i64(cpu_pc, dest); ++ return DISAS_PC_UPDATED; ++ } ++} ++ ++static DisasJumpType gen_bcond_internal(DisasContext *ctx, TCGCond cond, ++ TCGv cmp, int disp) ++{ ++ uint64_t dest = ctx->base.pc_next + (disp << 2); ++ TCGLabel* lab_true = gen_new_label(); ++ ++ if (use_goto_tb(ctx, dest)) { ++ tcg_gen_brcondi_i64(cond, cmp, 0, lab_true); ++ ++ tcg_gen_goto_tb(0); ++ tcg_gen_movi_i64(cpu_pc, ctx->base.pc_next); ++ tcg_gen_exit_tb(ctx->base.tb, 0); ++ ++ gen_set_label(lab_true); ++ tcg_gen_goto_tb(1); ++ tcg_gen_movi_i64(cpu_pc, dest); ++ tcg_gen_exit_tb(ctx->base.tb, 1); ++ ++ return DISAS_NORETURN; ++ } else { ++ TCGv_i64 t = tcg_const_i64(0); ++ TCGv_i64 d = tcg_const_i64(dest); ++ TCGv_i64 p = tcg_const_i64(ctx->base.pc_next); ++ ++ tcg_gen_movcond_i64(cond, cpu_pc, cmp, t, d, p); ++ ++ tcg_temp_free_i64(t); ++ tcg_temp_free_i64(d); ++ tcg_temp_free_i64(p); ++ return DISAS_PC_UPDATED; ++ } ++} ++ ++static DisasJumpType gen_bcond(DisasContext *ctx, TCGCond cond, uint32_t ra, ++ int32_t disp, uint64_t mask) ++{ ++ TCGv tmp = tcg_temp_new(); ++ DisasJumpType ret; ++ ++ tcg_gen_andi_i64(tmp, load_gir(ctx, ra), mask); ++ ret = gen_bcond_internal(ctx, cond, tmp, disp); ++ tcg_temp_free(tmp); ++ return ret; ++} ++ ++static DisasJumpType gen_fbcond(DisasContext *ctx, TCGCond cond, int ra, ++ int32_t disp) ++{ ++ TCGv cmp_tmp = tcg_temp_new(); ++ DisasJumpType ret; ++ ++ gen_fold_mzero(cond, cmp_tmp, cpu_fr[ra]); ++ ret = gen_bcond_internal(ctx, cond, cmp_tmp, disp); ++ tcg_temp_free(cmp_tmp); ++ return ret; ++} ++ ++#ifndef CONFIG_USER_ONLY ++static void gen_qemu_pri_ldw(TCGv t0, TCGv t1, int memidx) ++{ ++ gen_helper_pri_ldw(t0, cpu_env, t1); ++} ++ ++static void gen_qemu_pri_stw(TCGv t0, TCGv t1, int memidx) ++{ ++ gen_helper_pri_stw(cpu_env, t0, t1); ++} ++ ++static void gen_qemu_pri_ldl(TCGv t0, TCGv t1, int memidx) ++{ ++ gen_helper_pri_ldl(t0, cpu_env, t1); ++} ++ ++static void gen_qemu_pri_stl(TCGv t0, TCGv t1, int memidx) ++{ ++ gen_helper_pri_stl(cpu_env, t0, t1); ++} ++#endif ++ ++static inline void gen_load_mem_simd( ++ DisasContext *ctx, void (*tcg_gen_qemu_load)(int t0, TCGv t1, int flags), ++ int ra, int rb, int32_t disp16, uint64_t mask) ++{ ++ TCGv tmp, addr; ++ ++ /* LDQ_U with ra $31 is UNOP. Other various loads are forms of ++ prefetches, which we can treat as nops. No worries about ++ missed exceptions here. */ ++ if (unlikely(ra == 31)) ++ return; ++ ++ tmp = tcg_temp_new(); ++ addr = load_gir(ctx, rb); ++ ++ if (disp16) { ++ tcg_gen_addi_i64(tmp, addr, (int64_t)disp16); ++ addr = tmp; ++ } else { ++ tcg_gen_mov_i64(tmp, addr); ++ addr = tmp; ++ } ++ ++ if (mask) { ++ tcg_gen_andi_i64(addr, addr, mask); ++ } ++ ++ tcg_gen_qemu_load(ra, addr, ctx->mem_idx); ++ // FIXME: for debug ++ ++ tcg_temp_free(tmp); ++} ++ ++static inline void gen_store_mem_simd( ++ DisasContext *ctx, void (*tcg_gen_qemu_store)(int t0, TCGv t1, int flags), ++ int ra, int rb, int32_t disp16, uint64_t mask) ++{ ++ TCGv tmp, addr; ++ ++ tmp = tcg_temp_new(); ++ addr = load_gir(ctx, rb); ++ if (disp16) { ++ tcg_gen_addi_i64(tmp, addr, (int64_t)disp16); ++ addr = tmp; ++ } else { ++ tcg_gen_mov_i64(tmp, addr); ++ addr = tmp; ++ } ++ if (mask) { ++ tcg_gen_andi_i64(addr, addr, mask); ++ } ++ // FIXME: for debug ++ tcg_gen_qemu_store(ra, addr, ctx->mem_idx); ++ ++ tcg_temp_free(tmp); ++} ++ ++static void gen_qemu_ldwe(int t0, TCGv t1, int memidx) ++{ ++ TCGv tmp = tcg_temp_new(); ++ ++ tcg_gen_qemu_ld_i64(tmp, t1, memidx, MO_ALIGN_4 | MO_LEUL); ++ tcg_gen_shli_i64(cpu_fr[t0], tmp, 32); ++ tcg_gen_or_i64(cpu_fr[t0], cpu_fr[t0], tmp); ++ tcg_gen_mov_i64(cpu_fr[t0 + 32], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 64], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 96], cpu_fr[t0]); ++ ++ tcg_temp_free(tmp); ++} ++ ++static void gen_qemu_vlds(int t0, TCGv t1, int memidx) ++{ ++ int i; ++ TCGv_i32 tmp32 = tcg_temp_new_i32(); ++ ++ tcg_gen_qemu_ld_i32(tmp32, t1, memidx, MO_ALIGN_4 | MO_LEUL); ++ gen_helper_memory_to_s(cpu_fr[t0], tmp32); ++ tcg_gen_addi_i64(t1, t1, 4); ++ ++ for (i = 1; i < 4; i++) { ++ tcg_gen_qemu_ld_i32(tmp32, t1, memidx, MO_LEUL); ++ gen_helper_memory_to_s(cpu_fr[t0 + i * 32], tmp32); ++ tcg_gen_addi_i64(t1, t1, 4); ++ } ++ ++ tcg_temp_free_i32(tmp32); ++} ++ ++static void gen_qemu_ldse(int t0, TCGv t1, int memidx) ++{ ++ TCGv_i32 tmp32 = tcg_temp_new_i32(); ++ TCGv tmp64 = tcg_temp_new(); ++ ++ tcg_gen_qemu_ld_i32(tmp32, t1, memidx, MO_ALIGN_4 | MO_LEUL); ++ gen_helper_memory_to_s(cpu_fr[t0], tmp32); ++ tcg_gen_mov_i64(cpu_fr[t0 + 32], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 64], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 96], cpu_fr[t0]); ++ ++ tcg_temp_free(tmp64); ++ tcg_temp_free_i32(tmp32); ++} ++ ++static void gen_qemu_ldde(int t0, TCGv t1, int memidx) ++{ ++ tcg_gen_qemu_ld_i64(cpu_fr[t0], t1, memidx, MO_ALIGN_4 | MO_TEQ); ++ tcg_gen_mov_i64(cpu_fr[t0 + 32], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 64], cpu_fr[t0]); ++ tcg_gen_mov_i64(cpu_fr[t0 + 96], cpu_fr[t0]); ++} ++ ++static void gen_qemu_vldd(int t0, TCGv t1, int memidx) ++{ ++ tcg_gen_qemu_ld_i64(cpu_fr[t0], t1, memidx, MO_ALIGN_4 | MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_ld_i64(cpu_fr[t0 + 32], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_ld_i64(cpu_fr[t0 + 64], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_ld_i64(cpu_fr[t0 + 96], t1, memidx, MO_TEQ); ++} ++ ++static void gen_qemu_vsts(int t0, TCGv t1, int memidx) ++{ ++ int i; ++ TCGv_i32 tmp = tcg_temp_new_i32(); ++ ++ gen_helper_s_to_memory(tmp, cpu_fr[t0]); ++ tcg_gen_qemu_st_i32(tmp, t1, memidx, MO_ALIGN_4 | MO_LEUL); ++ tcg_gen_addi_i64(t1, t1, 4); ++ for (i = 1; i < 4; i++) { ++ gen_helper_s_to_memory(tmp, cpu_fr[t0 + 32 * i]); ++ tcg_gen_qemu_st_i32(tmp, t1, memidx, MO_LEUL); ++ tcg_gen_addi_i64(t1, t1, 4); ++ } ++ tcg_temp_free_i32(tmp); ++} ++ ++static void gen_qemu_vstd(int t0, TCGv t1, int memidx) ++{ ++ tcg_gen_qemu_st_i64(cpu_fr[t0], t1, memidx, MO_ALIGN_4 | MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_st_i64(cpu_fr[t0 + 32], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_st_i64(cpu_fr[t0 + 64], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ tcg_gen_qemu_st_i64(cpu_fr[t0 + 96], t1, memidx, MO_TEQ); ++} ++ ++static inline void gen_qemu_fsts(TCGv t0, TCGv t1, int flags) ++{ ++ TCGv_i32 tmp = tcg_temp_new_i32(); ++ gen_helper_s_to_memory(tmp, t0); ++ tcg_gen_qemu_st_i32(tmp, t1, flags, MO_LEUL); ++ tcg_temp_free_i32(tmp); ++} ++ ++static inline void gen_qemu_flds(TCGv t0, TCGv t1, int flags) ++{ ++ TCGv_i32 tmp = tcg_temp_new_i32(); ++ tcg_gen_qemu_ld_i32(tmp, t1, flags, MO_LEUL); ++ gen_helper_memory_to_s(t0, tmp); ++ tcg_temp_free_i32(tmp); ++} ++ ++static TCGv gen_ieee_input(DisasContext *ctx, int reg, int is_cmp) ++{ ++ TCGv val; ++ ++ if (unlikely(reg == 31)) { ++ val = load_zero(ctx); ++ } else { ++ val = cpu_fr[reg]; ++#ifndef CONFIG_USER_ONLY ++ /* In system mode, raise exceptions for denormals like real ++ hardware. In user mode, proceed as if the OS completion ++ handler is handling the denormal as per spec. */ ++ gen_helper_ieee_input(cpu_env, val); ++#endif ++ } ++ return val; ++} ++ ++static void gen_fp_exc_raise(int rc) ++{ ++#ifndef CONFIG_USER_ONLY ++ TCGv_i32 reg = tcg_const_i32(rc + 32); ++ gen_helper_fp_exc_raise(cpu_env, reg); ++ tcg_temp_free_i32(reg); ++#endif ++} ++ ++static void gen_ieee_arith2(DisasContext *ctx, ++ void (*helper)(TCGv, TCGv_ptr, TCGv), int ra, ++ int rc) ++{ ++ TCGv va, vc; ++ ++ va = gen_ieee_input(ctx, ra, 0); ++ vc = cpu_fr[rc]; ++ helper(vc, cpu_env, va); ++ ++ gen_fp_exc_raise(rc); ++} ++ ++static void gen_ieee_arith3(DisasContext *ctx, ++ void (*helper)(TCGv, TCGv_ptr, TCGv, TCGv), int ra, ++ int rb, int rc) ++{ ++ TCGv va, vb, vc; ++ ++ va = gen_ieee_input(ctx, ra, 0); ++ vb = gen_ieee_input(ctx, rb, 0); ++ vc = cpu_fr[rc]; ++ helper(vc, cpu_env, va, vb); ++ ++ gen_fp_exc_raise(rc); ++} ++ ++#define IEEE_ARITH2(name) \ ++ static inline void glue(gen_, name)(DisasContext * ctx, int ra, int rc) { \ ++ gen_ieee_arith2(ctx, gen_helper_##name, ra, rc); \ ++ } ++ ++#define IEEE_ARITH3(name) \ ++ static inline void glue(gen_, name)(DisasContext * ctx, int ra, int rb, \ ++ int rc) { \ ++ gen_ieee_arith3(ctx, gen_helper_##name, ra, rb, rc); \ ++ } ++IEEE_ARITH3(fadds) ++IEEE_ARITH3(faddd) ++IEEE_ARITH3(fsubs) ++IEEE_ARITH3(fsubd) ++IEEE_ARITH3(fmuls) ++IEEE_ARITH3(fmuld) ++IEEE_ARITH3(fdivs) ++IEEE_ARITH3(fdivd) ++IEEE_ARITH2(frecs) ++IEEE_ARITH2(frecd) ++ ++static void gen_ieee_compare(DisasContext *ctx, ++ void (*helper)(TCGv, TCGv_ptr, TCGv, TCGv), int ra, ++ int rb, int rc) ++{ ++ TCGv va, vb, vc; ++ ++ va = gen_ieee_input(ctx, ra, 1); ++ vb = gen_ieee_input(ctx, rb, 1); ++ vc = cpu_fr[rc]; ++ helper(vc, cpu_env, va, vb); ++ ++ gen_fp_exc_raise(rc); ++} ++ ++#define IEEE_CMP2(name) \ ++ static inline void glue(gen_, name)(DisasContext *ctx, int ra, int rb, \ ++ int rc) { \ ++ gen_ieee_compare(ctx, gen_helper_##name, ra, rb, rc); \ ++ } ++ ++IEEE_CMP2(fcmpun) ++IEEE_CMP2(fcmpeq) ++IEEE_CMP2(fcmplt) ++IEEE_CMP2(fcmple) ++ ++static void gen_fcvtdl(int rb, int rc, uint64_t round_mode) ++{ ++ TCGv tmp64; ++ tmp64 = tcg_temp_new_i64(); ++ tcg_gen_movi_i64(tmp64, round_mode); ++ gen_helper_fcvtdl(cpu_fr[rc], cpu_env, cpu_fr[rb], tmp64); ++ tcg_temp_free(tmp64); ++ gen_fp_exc_raise(rc); ++} ++ ++static void cal_with_fregs_2(DisasContext *ctx, uint8_t rc, uint8_t ra, ++ uint8_t rb, uint8_t fn) ++{ ++ TCGv tmp64; ++ TCGv_i32 tmp32; ++ switch (fn) { ++ case 0x00: ++ /* FADDS */ ++ gen_fadds(ctx, ra, rb, rc); ++ break; ++ case 0x01: ++ /* FADDD */ ++ gen_faddd(ctx, ra, rb, rc); ++ break; ++ case 0x02: ++ /* FSUBS */ ++ gen_fsubs(ctx, ra, rb, rc); ++ break; ++ case 0x03: ++ /* FSUBD */ ++ gen_fsubd(ctx, ra, rb, rc); ++ break; ++ case 0x4: ++ /* FMULS */ ++ gen_fmuls(ctx, ra, rb, rc); ++ break; ++ case 0x05: ++ /* FMULD */ ++ gen_fmuld(ctx, ra, rb, rc); ++ break; ++ case 0x06: ++ /* FDIVS */ ++ gen_fdivs(ctx, ra, rb, rc); ++ break; ++ case 0x07: ++ /* FDIVD */ ++ gen_fdivd(ctx, ra, rb, rc); ++ break; ++ case 0x08: ++ /* FSQRTS */ ++ gen_helper_fsqrts(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x09: ++ /* FSQRTD */ ++ gen_helper_fsqrt(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x10: ++ /* FCMPEQ */ ++ gen_fcmpeq(ctx, ra, rb, rc); ++ break; ++ case 0x11: ++ /* FCMPLE */ ++ gen_fcmple(ctx, ra, rb, rc); ++ break; ++ case 0x12: ++ /* FCMPLT */ ++ gen_fcmplt(ctx, ra, rb, rc); ++ break; ++ case 0x13: ++ /* FCMPUN */ ++ gen_fcmpun(ctx, ra, rb, rc); ++ break; ++ case 0x20: ++ /* FCVTSD */ ++ gen_helper_fcvtsd(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x21: ++ /* FCVTDS */ ++ gen_helper_fcvtds(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x22: ++ /* FCVTDL_G */ ++ gen_fcvtdl(rb, rc, 0); ++ break; ++ case 0x23: ++ /* FCVTDL_P */ ++ gen_fcvtdl(rb, rc, 2); ++ break; ++ case 0x24: ++ /* FCVTDL_Z */ ++ gen_fcvtdl(rb, rc, 3); ++ break; ++ case 0x25: ++ /* FCVTDL_N */ ++ gen_fcvtdl(rb, rc, 1); ++ break; ++ case 0x27: ++ /* FCVTDL */ ++ gen_helper_fcvtdl_dyn(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x28: ++ /* FCVTWL */ ++ gen_helper_fcvtwl(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ tcg_gen_ext32s_i64(cpu_fr[rc], cpu_fr[rc]); ++ break; ++ case 0x29: ++ /* FCVTLW */ ++ gen_helper_fcvtlw(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x2d: ++ /* FCVTLS */ ++ gen_helper_fcvtls(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x2f: ++ /* FCVTLD */ ++ gen_helper_fcvtld(cpu_fr[rc], cpu_env, cpu_fr[rb]); ++ break; ++ case 0x30: ++ /* FCPYS */ ++ tmp64 = tcg_temp_new(); ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra], 63); ++ tcg_gen_shli_i64(tmp64, tmp64, 63); ++ tcg_gen_andi_i64(cpu_fr[rc], cpu_fr[rb], 0x7fffffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc], tmp64, cpu_fr[rc]); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x31: ++ /* FCPYSE */ ++ tmp64 = tcg_temp_new(); ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra], 52); ++ tcg_gen_shli_i64(tmp64, tmp64, 52); ++ tcg_gen_andi_i64(cpu_fr[rc], cpu_fr[rb], 0x000fffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc], tmp64, cpu_fr[rc]); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x32: ++ /* FCPYSN */ ++ tmp64 = tcg_temp_new(); ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra], 63); ++ tcg_gen_not_i64(tmp64, tmp64); ++ tcg_gen_shli_i64(tmp64, tmp64, 63); ++ tcg_gen_andi_i64(cpu_fr[rc], cpu_fr[rb], 0x7fffffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc], tmp64, cpu_fr[rc]); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x40: ++ /* IFMOVS */ ++ tmp64 = tcg_temp_new(); ++ tmp32 = tcg_temp_new_i32(); ++ tcg_gen_movi_i64(tmp64, ra); ++ tcg_gen_extrl_i64_i32(tmp32, load_gir(ctx, ra)); ++ gen_helper_memory_to_s(tmp64, tmp32); ++ tcg_gen_mov_i64(cpu_fr[rc], tmp64); ++ tcg_gen_movi_i64(tmp64, rc); ++ tcg_temp_free(tmp64); ++ tcg_temp_free_i32(tmp32); ++ break; ++ case 0x41: ++ /* IFMOVD */ ++ tcg_gen_mov_i64(cpu_fr[rc], load_gir(ctx, ra)); ++ break; ++ case 0x50: ++ /* RFPCR */ ++ gen_helper_load_fpcr(cpu_fr[ra], cpu_env); ++ break; ++ case 0x51: ++ /* WFPCR */ ++ gen_helper_store_fpcr(cpu_env, cpu_fr[ra]); ++ break; ++ case 0x54: ++ /* SETFPEC0 */ ++ tmp64 = tcg_const_i64(0); ++ gen_helper_setfpcrx(cpu_env, tmp64); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x55: ++ /* SETFPEC1 */ ++ tmp64 = tcg_const_i64(1); ++ gen_helper_setfpcrx(cpu_env, tmp64); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x56: ++ /* SETFPEC2 */ ++ tmp64 = tcg_const_i64(2); ++ gen_helper_setfpcrx(cpu_env, tmp64); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x57: ++ /* SETFPEC3 */ ++ tmp64 = tcg_const_i64(3); ++ gen_helper_setfpcrx(cpu_env, tmp64); ++ tcg_temp_free(tmp64); ++ break; ++ default: ++ fprintf(stderr, "Illegal insn func[%x]\n", fn); ++ gen_invalid(ctx); ++ break; ++ } ++} ++ ++static void cal_with_fregs_4(DisasContext *ctx, uint8_t rd, uint8_t ra, ++ uint8_t rb, uint8_t rc, uint8_t fn) ++{ ++ TCGv zero = tcg_const_i64(0); ++ TCGv va, vb, vc, vd, tmp64; ++ ++ va = cpu_fr[ra]; ++ vb = cpu_fr[rb]; ++ vc = cpu_fr[rc]; ++ vd = cpu_fr[rd]; ++ ++ switch (fn) { ++ case 0x00: ++ /* FMAS */ ++ gen_helper_fmas(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x01: ++ /* FMAD */ ++ gen_helper_fmad(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x02: ++ /* FMSS */ ++ gen_helper_fmss(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x03: ++ /* FMSD */ ++ gen_helper_fmsd(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x04: ++ /* FNMAS */ ++ gen_helper_fnmas(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x05: ++ /* FNMAD */ ++ gen_helper_fnmad(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x06: ++ /* FNMSS */ ++ gen_helper_fnmss(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x07: ++ /* FNMSD */ ++ gen_helper_fnmsd(vd, cpu_env, va, vb, vc); ++ break; ++ case 0x10: ++ /* FSELEQ */ ++ // Maybe wrong translation. ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmpeq(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, tmp64, zero, vc, vb); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x11: ++ /* FSELNE */ ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmpeq(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, tmp64, zero, vb, vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x12: ++ /* FSELLT */ ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmplt(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, tmp64, zero, vc, vb); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x13: ++ /* FSELLE */ ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmple(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_EQ, vd, tmp64, zero, vc, vb); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x14: ++ /* FSELGT */ ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmpgt(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_NE, vd, tmp64, zero, vb, vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x15: ++ /* FSELGE */ ++ tmp64 = tcg_temp_new(); ++ gen_helper_fcmpge(tmp64, cpu_env, va, zero); ++ tcg_gen_movcond_i64(TCG_COND_NE, vd, tmp64, zero, vb, vc); ++ tcg_temp_free(tmp64); ++ break; ++ default: ++ fprintf(stderr, "Illegal insn func[%x]\n", fn); ++ gen_invalid(ctx); ++ break; ++ } ++ tcg_temp_free(zero); ++} ++static inline void gen_qemu_lldw(TCGv t0, TCGv t1, int flags) ++{ ++ tcg_gen_qemu_ld_i64(t0, t1, flags, MO_LESL); ++ tcg_gen_mov_i64(cpu_lock_addr, t1); ++#ifdef SW64_FIXLOCK ++ tcg_gen_ext32u_i64(cpu_lock_value, t0); ++#endif ++} ++ ++static inline void gen_qemu_lldl(TCGv t0, TCGv t1, int flags) ++{ ++ tcg_gen_qemu_ld_i64(t0, t1, flags, MO_LEQ); ++ tcg_gen_mov_i64(cpu_lock_addr, t1); ++#ifdef SW64_FIXLOCK ++ tcg_gen_mov_i64(cpu_lock_value, t0); ++#endif ++} ++ ++static DisasJumpType gen_store_conditional(DisasContext *ctx, int ra, int rb, ++ int32_t disp16, int mem_idx, ++ MemOp op) ++{ ++ TCGLabel *lab_fail, *lab_done; ++ TCGv addr; ++ ++ addr = tcg_temp_new_i64(); ++ tcg_gen_addi_i64(addr, load_gir(ctx, rb), disp16); ++ free_context_temps(ctx); ++ ++ lab_fail = gen_new_label(); ++ lab_done = gen_new_label(); ++ tcg_gen_brcond_i64(TCG_COND_NE, addr, cpu_lock_addr, lab_fail); ++ tcg_temp_free_i64(addr); ++ tcg_gen_brcondi_i64(TCG_COND_NE, cpu_lock_flag, 0x1, lab_fail); ++#ifdef SW64_FIXLOCK ++ TCGv val = tcg_temp_new_i64(); ++ tcg_gen_atomic_cmpxchg_i64(val, cpu_lock_addr, cpu_lock_value, ++ load_gir(ctx, ra), mem_idx, op); ++ tcg_gen_setcond_i64(TCG_COND_EQ, cpu_lock_success, val, cpu_lock_value); ++ tcg_temp_free_i64(val); ++#else ++ tcg_gen_qemu_st_i64(load_gir(ctx, ra), addr, mem_idx, op); ++#endif ++ ++ tcg_gen_br(lab_done); ++ ++ gen_set_label(lab_fail); ++ tcg_gen_movi_i64(cpu_lock_success, 0); ++ gen_set_label(lab_done); ++ ++ tcg_gen_movi_i64(cpu_lock_flag, 0); ++ tcg_gen_movi_i64(cpu_lock_addr, -1); ++ return DISAS_NEXT; ++} ++ ++static DisasJumpType gen_sys_call(DisasContext *ctx, int syscode) ++{ ++ if (syscode >= 0x80 && syscode <= 0xbf) { ++ switch (syscode) { ++ case 0x86: ++ /* IMB */ ++ /* No-op inside QEMU */ ++ break; ++#ifdef CONFIG_USER_ONLY ++ case 0x9E: ++ /* RDUNIQUE */ ++ tcg_gen_ld_i64(ctx->ir[IDX_V0], cpu_env, ++ offsetof(CPUSW64State, unique)); ++ break; ++ case 0x9F: ++ /* WRUNIQUE */ ++ tcg_gen_st_i64(ctx->ir[IDX_A0], cpu_env, ++ offsetof(CPUSW64State, unique)); ++ break; ++#endif ++ default: ++ goto do_sys_call; ++ } ++ return DISAS_NEXT; ++ } ++do_sys_call: ++#ifdef CONFIG_USER_ONLY ++ return gen_excp(ctx, EXCP_CALL_SYS, syscode); ++#else ++ tcg_gen_movi_i64(cpu_hm_ir[23], ctx->base.pc_next); ++ return gen_excp(ctx, EXCP_CALL_SYS, syscode); ++#endif ++} ++ ++static void read_csr(int idx, TCGv va) ++{ ++ TCGv_i64 tmp = tcg_const_i64(idx); ++ gen_helper_read_csr(va, cpu_env, tmp); ++ tcg_temp_free_i64(tmp); ++} ++ ++static void write_csr(int idx, TCGv va, CPUSW64State *env) ++{ ++ TCGv_i64 tmp = tcg_const_i64(idx); ++ gen_helper_write_csr(cpu_env, tmp, va); ++ tcg_temp_free_i64(tmp); ++} ++ ++static inline void ldx_set(DisasContext *ctx, int ra, int rb, int32_t disp12, ++ bool bype) ++{ ++ TCGv tmp, addr, va, t1; ++ ++ /* LDQ_U with ra $31 is UNOP. Other various loads are forms of ++ prefetches, which we can treat as nops. No worries about ++ missed exceptions here. */ ++ if (unlikely(ra == 31)) { ++ return; ++ } ++ ++ tmp = tcg_temp_new(); ++ t1 = tcg_const_i64(1); ++ addr = load_gir(ctx, rb); ++ ++ tcg_gen_addi_i64(tmp, addr, disp12); ++ addr = tmp; ++ ++ va = load_gir(ctx, ra); ++ if (bype == 0) { ++ tcg_gen_atomic_xchg_i64(va, addr, t1, ctx->mem_idx, MO_TESL); ++ } else { ++ tcg_gen_atomic_xchg_i64(va, addr, t1, ctx->mem_idx, MO_TEQ); ++ } ++ ++ tcg_temp_free(tmp); ++ tcg_temp_free(t1); ++} ++ ++static inline void ldx_xxx(DisasContext *ctx, int ra, int rb, int32_t disp12, ++ bool bype, int64_t val) ++{ ++ TCGv tmp, addr, va, t; ++ ++ /* LDQ_U with ra $31 is UNOP. Other various loads are forms of ++ prefetches, which we can treat as nops. No worries about ++ missed exceptions here. */ ++ if (unlikely(ra == 31)) { ++ return; ++ } ++ ++ tmp = tcg_temp_new(); ++ t = tcg_const_i64(val); ++ addr = load_gir(ctx, rb); ++ ++ tcg_gen_addi_i64(tmp, addr, disp12); ++ addr = tmp; ++ ++ va = load_gir(ctx, ra); ++ if (bype == 0) { ++ tcg_gen_atomic_fetch_add_i64(va, addr, t, ctx->mem_idx, MO_TESL); ++ } else { ++ tcg_gen_atomic_fetch_add_i64(va, addr, t, ctx->mem_idx, MO_TEQ); ++ } ++ ++ tcg_temp_free(tmp); ++ tcg_temp_free(t); ++} ++ ++static void tcg_gen_srlow_i64(int ra, int rc, int rb) ++{ ++ TCGv va, vb, vc; ++ TCGv shift; ++ ++ va = tcg_const_i64(ra); ++ vc = tcg_const_i64(rc); ++ shift = tcg_temp_new(); ++ vb = cpu_fr[rb]; ++ tcg_gen_shri_i64(shift, vb, 29); ++ tcg_gen_andi_i64(shift, shift, 0xff); ++ ++ gen_helper_srlow(cpu_env, va, vc, shift); ++ ++ tcg_temp_free(vc); ++ tcg_temp_free(va); ++ tcg_temp_free(shift); ++} ++ ++static void tcg_gen_srlowi_i64(int ra, int rc, int disp8) ++{ ++ TCGv va, vc; ++ TCGv shift; ++ ++ va = tcg_const_i64(ra); ++ vc = tcg_const_i64(rc); ++ shift = tcg_temp_new(); ++ tcg_gen_movi_i64(shift, disp8); ++ tcg_gen_andi_i64(shift, shift, 0xff); ++ ++ gen_helper_srlow(cpu_env, va, vc, shift); ++ ++ tcg_temp_free(vc); ++ tcg_temp_free(va); ++ tcg_temp_free(shift); ++} ++ ++static void tcg_gen_sllow_i64(int ra, int rc, int rb) ++{ ++ TCGv va, vb, vc; ++ TCGv shift; ++ ++ va = tcg_const_i64(ra); ++ vc = tcg_const_i64(rc); ++ shift = tcg_temp_new(); ++ vb = cpu_fr[rb]; ++ tcg_gen_shri_i64(shift, vb, 29); ++ tcg_gen_andi_i64(shift, shift, 0xff); ++ ++ gen_helper_sllow(cpu_env, va, vc, shift); ++ ++ tcg_temp_free(vc); ++ tcg_temp_free(va); ++ tcg_temp_free(shift); ++} ++ ++static void tcg_gen_sllowi_i64(int ra, int rc, int disp8) ++{ ++ TCGv va, vc; ++ TCGv shift; ++ ++ va = tcg_const_i64(ra); ++ vc = tcg_const_i64(rc); ++ shift = tcg_temp_new(); ++ tcg_gen_movi_i64(shift, disp8); ++ tcg_gen_andi_i64(shift, shift, 0xff); ++ ++ gen_helper_sllow(cpu_env, va, vc, shift); ++ ++ tcg_temp_free(vc); ++ tcg_temp_free(va); ++ tcg_temp_free(shift); ++} ++ ++static void gen_qemu_vstw_uh(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte4_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[8]; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ tmp[4] = tcg_temp_new(); ++ tmp[5] = tcg_temp_new(); ++ tmp[6] = tcg_temp_new(); ++ tmp[7] = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte4_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte4_len, t1, 2); ++ tcg_gen_andi_i64(byte4_len, byte4_len, 0x7UL); ++ tcg_gen_andi_i64(t1, t1, ~0x3UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_andi_i64(addr_start, t1, ~0x1fUL); ++ tcg_gen_mov_i64(addr_end, t1); ++ for (i = 7; i >= 0; i--) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, t1, addr_start, t1, addr_start); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_subi_i64(t1, t1, 4); ++ tcg_gen_movi_i64(ti, i); ++ if (i % 2) ++ tcg_gen_shli_i64(tmp[i], tmp[i], 32); ++ } ++ tcg_gen_subfi_i64(byte4_len, 8, byte4_len); ++ ++ for (i = 0; i < 8; i++) { ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_GEU, tmp[i], ti, byte4_len, cpu_fr[t0 + (i / 2)*32], tmp[i]); ++ if (i % 2) ++ tcg_gen_shri_i64(tmp[i], tmp[i], 32); ++ else ++ tcg_gen_andi_i64(tmp[i], tmp[i], 0xffffffffUL); ++ } ++ ++ tcg_gen_subi_i64(addr_end, addr_end, 32); ++ for (i = 0; i < 8; i++) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, addr_end, addr_start, addr_end, addr_start); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_addi_i64(addr_end, addr_end, 4); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte4_len); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++ tcg_temp_free(tmp[4]); ++ tcg_temp_free(tmp[5]); ++ tcg_temp_free(tmp[6]); ++ tcg_temp_free(tmp[7]); ++} ++ ++static void gen_qemu_vstw_ul(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte4_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[8]; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ tmp[4] = tcg_temp_new(); ++ tmp[5] = tcg_temp_new(); ++ tmp[6] = tcg_temp_new(); ++ tmp[7] = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte4_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte4_len, t1, 2); ++ tcg_gen_andi_i64(byte4_len, byte4_len, 0x7UL); ++ tcg_gen_andi_i64(t1, t1, ~0x3UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_mov_i64(addr_start, t1); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_addi_i64(addr_end, addr_start, 24); ++ for (i = 0; i < 8; i++) { ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, t1, addr_end, t1, addr_end); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_addi_i64(t1, t1, 4); ++ if (i % 2) ++ tcg_gen_shli_i64(tmp[i], tmp[i], 32); ++ } ++ tcg_gen_subfi_i64(byte4_len, 8, byte4_len); ++ ++ for (i = 0; i < 8; i++) { ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_LTU, tmp[i], ti, byte4_len, cpu_fr[t0 + (i/2)*32], tmp[i]); ++ if (i % 2) ++ tcg_gen_shri_i64(tmp[i], tmp[i], 32); ++ else ++ tcg_gen_andi_i64(tmp[i], tmp[i], 0xffffffffUL); ++ } ++ ++ tcg_gen_addi_i64(addr_start, addr_start, 32); ++ for (i = 7; i >= 0; i--) { ++ tcg_gen_subi_i64(addr_start, addr_start, 4); ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, addr_start, addr_end, addr_start, addr_end); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEUL); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte4_len); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++ tcg_temp_free(tmp[4]); ++ tcg_temp_free(tmp[5]); ++ tcg_temp_free(tmp[6]); ++ tcg_temp_free(tmp[7]); ++} ++ ++static void gen_qemu_vsts_uh(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte4_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[4]; ++ TCGv ftmp; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ ftmp = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte4_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte4_len, t1, 2); ++ tcg_gen_andi_i64(byte4_len, byte4_len, 0x3UL); ++ tcg_gen_andi_i64(t1, t1, ~0x3UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_andi_i64(addr_start, t1, ~0xfUL); ++ tcg_gen_mov_i64(addr_end, t1); ++ for (i = 3; i >= 0; i--) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, t1, addr_start, t1, addr_start); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_subi_i64(t1, t1, 4); ++ } ++ tcg_gen_subfi_i64(byte4_len, 4, byte4_len); ++ ++ for (i = 0; i < 4; i++) { ++ tcg_gen_shri_i64(ti, cpu_fr[t0 + i * 32], 62); ++ tcg_gen_shli_i64(ti, ti, 30); ++ tcg_gen_shri_i64(ftmp, cpu_fr[t0 + i * 32], 29); ++ tcg_gen_andi_i64(ftmp, ftmp, 0x3fffffffUL); ++ tcg_gen_or_i64(ftmp, ftmp, ti); ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_GEU, tmp[i], ti, byte4_len, ftmp, tmp[i]); ++ } ++ ++ tcg_gen_subi_i64(addr_end, addr_end, 16); ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, addr_end, addr_start, addr_end, addr_start); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_addi_i64(addr_end, addr_end, 4); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(ftmp); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte4_len); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++} ++ ++static void gen_qemu_vsts_ul(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte4_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[4]; ++ TCGv ftmp; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ ftmp = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte4_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte4_len, t1, 2); ++ tcg_gen_andi_i64(byte4_len, byte4_len, 0x3UL); ++ tcg_gen_andi_i64(t1, t1, ~0x3UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_mov_i64(addr_start, t1); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_addi_i64(addr_end, addr_start, 12); ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, t1, addr_end, t1, addr_end); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEUL); ++ tcg_gen_addi_i64(t1, t1, 4); ++ } ++ tcg_gen_subfi_i64(byte4_len, 4, byte4_len); ++ ++ for (i = 0; i < 4; i++) { ++ tcg_gen_shri_i64(ti, cpu_fr[t0 + i * 32], 62); ++ tcg_gen_shli_i64(ti, ti, 30); ++ tcg_gen_shri_i64(ftmp, cpu_fr[t0 + i * 32], 29); ++ tcg_gen_andi_i64(ftmp, ftmp, 0x3fffffffUL); ++ tcg_gen_or_i64(ftmp, ftmp, ti); ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_LTU, tmp[i], ti, byte4_len, ftmp, tmp[i]); ++ } ++ ++ tcg_gen_addi_i64(addr_start, addr_start, 16); ++ for (i = 3; i >= 0; i--) { ++ tcg_gen_subi_i64(addr_start, addr_start, 4); ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, addr_start, addr_end, addr_start, addr_end); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEUL); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte4_len); ++ tcg_temp_free(ftmp); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++} ++ ++static void gen_qemu_vstd_uh(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte8_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[4]; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte8_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte8_len, t1, 3); ++ tcg_gen_andi_i64(byte8_len, byte8_len, 0x3UL); ++ tcg_gen_andi_i64(t1, t1, ~0x7UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_andi_i64(addr_start, t1, ~0x1fUL); ++ tcg_gen_mov_i64(addr_end, t1); ++ for (i = 3; i >= 0; i--) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, t1, addr_start, t1, addr_start); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEQ); ++ tcg_gen_subi_i64(t1, t1, 8); ++ } ++ tcg_gen_subfi_i64(byte8_len, 4, byte8_len); ++ ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_GEU, tmp[i], ti, byte8_len, cpu_fr[t0 + i*32], tmp[i]); ++ } ++ ++ tcg_gen_subi_i64(addr_end, addr_end, 32); ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movcond_i64(TCG_COND_GEU, t1, addr_end, addr_start, addr_end, addr_start); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(addr_end, addr_end, 8); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte8_len); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++} ++ ++static void gen_qemu_vstd_ul(int t0, TCGv t1, int memidx) ++{ ++ TCGv byte8_len; ++ TCGv addr_start, addr_end; ++ TCGv tmp[4]; ++ TCGv ti; ++ int i; ++ ++ tmp[0] = tcg_temp_new(); ++ tmp[1] = tcg_temp_new(); ++ tmp[2] = tcg_temp_new(); ++ tmp[3] = tcg_temp_new(); ++ ti = tcg_temp_new(); ++ addr_start = tcg_temp_new(); ++ addr_end = tcg_temp_new(); ++ byte8_len = tcg_temp_new(); ++ ++ tcg_gen_shri_i64(byte8_len, t1, 3); ++ tcg_gen_andi_i64(byte8_len, byte8_len, 0x3UL); ++ tcg_gen_andi_i64(t1, t1, ~0x7UL); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_mov_i64(addr_start, t1); /* t1 = addr + byte4_len * 4 */ ++ tcg_gen_addi_i64(addr_end, addr_start, 24); ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, t1, addr_end, t1, addr_end); ++ tcg_gen_qemu_ld_i64(tmp[i], t1, memidx, MO_TEQ); ++ tcg_gen_addi_i64(t1, t1, 8); ++ } ++ tcg_gen_subfi_i64(byte8_len, 4, byte8_len); ++ ++ for (i = 0; i < 4; i++) { ++ tcg_gen_movi_i64(ti, i); ++ tcg_gen_movcond_i64(TCG_COND_LTU, tmp[i], ti, byte8_len, cpu_fr[t0 + i*32], tmp[i]); ++ } ++ ++ tcg_gen_addi_i64(addr_start, addr_start, 32); ++ for (i = 3; i >= 0; i--) { ++ tcg_gen_subi_i64(addr_start, addr_start, 8); ++ tcg_gen_movcond_i64(TCG_COND_LEU, t1, addr_start, addr_end, addr_start, addr_end); ++ tcg_gen_qemu_st_i64(tmp[i], t1, memidx, MO_TEQ); ++ } ++ ++ tcg_temp_free(ti); ++ tcg_temp_free(addr_start); ++ tcg_temp_free(addr_end); ++ tcg_temp_free(byte8_len); ++ tcg_temp_free(tmp[0]); ++ tcg_temp_free(tmp[1]); ++ tcg_temp_free(tmp[2]); ++ tcg_temp_free(tmp[3]); ++} ++ ++static void tcg_gen_vcpys_i64(int ra, int rb, int rc) ++{ ++ int i; ++ TCGv tmp64 = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra + i], 63); ++ tcg_gen_shli_i64(tmp64, tmp64, 63); ++ tcg_gen_andi_i64(cpu_fr[rc + i], cpu_fr[rb + i], 0x7fffffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, cpu_fr[rc + i]); ++ } ++ tcg_temp_free(tmp64); ++} ++ ++static void tcg_gen_vcpyse_i64(int ra, int rb, int rc) ++{ ++ int i; ++ ++ TCGv tmp64 = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra + i], 52); ++ tcg_gen_shli_i64(tmp64, tmp64, 52); ++ tcg_gen_andi_i64(cpu_fr[rc + i], cpu_fr[rb + i], 0x000fffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, cpu_fr[rc + i]); ++ } ++ tcg_temp_free(tmp64); ++} ++ ++static void tcg_gen_vcpysn_i64(int ra, int rb, int rc) ++{ ++ int i; ++ TCGv tmp64 = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra + i], 63); ++ tcg_gen_not_i64(tmp64, tmp64); ++ tcg_gen_shli_i64(tmp64, tmp64, 63); ++ tcg_gen_andi_i64(cpu_fr[rc + i], cpu_fr[rb + i], 0x7fffffffffffffffUL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, cpu_fr[rc + i]); ++ } ++ tcg_temp_free(tmp64); ++} ++ ++static void tcg_gen_vlogzz_i64(DisasContext *ctx, int opc, int ra, int rb, ++ int rc, int rd, int fn6) ++{ ++ TCGv zz; ++ TCGv args, vd; ++ zz = tcg_const_i64(((opc & 0x3) << 6) | fn6); ++ args = tcg_const_i64((ra << 16) | (rb << 8) | rc); ++ vd = tcg_const_i64(rd); ++ ++ gen_helper_vlogzz(cpu_env, args, vd, zz); ++ ++ tcg_temp_free(vd); ++ tcg_temp_free(args); ++ tcg_temp_free(zz); ++} ++ ++static void gen_qemu_vcmpxxw_i64(TCGCond cond, int ra, int rb, int rc) ++{ ++ TCGv va, vb, vc, tmp64; ++ int i; ++ ++ va = tcg_temp_new(); ++ vb = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ tmp64 = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ if ((cond >> 1) & 1) { ++ tcg_gen_ext32s_i64(va, cpu_fr[ra + i]); ++ tcg_gen_ext32s_i64(vb, cpu_fr[rb + i]); ++ } else { ++ tcg_gen_ext32u_i64(va, cpu_fr[ra + i]); ++ tcg_gen_ext32u_i64(vb, cpu_fr[rb + i]); ++ } ++ tcg_gen_setcond_i64(cond, vc, va, vb); ++ tcg_gen_mov_i64(tmp64, vc); ++ ++ tcg_gen_shri_i64(va, cpu_fr[ra + i], 32); ++ tcg_gen_shri_i64(vb, cpu_fr[rb + i], 32); ++ if ((cond >> 1) & 1) { ++ tcg_gen_ext32s_i64(va, va); ++ tcg_gen_ext32s_i64(vb, vb); ++ } else { ++ tcg_gen_ext32u_i64(va, va); ++ tcg_gen_ext32u_i64(vb, vb); ++ } ++ tcg_gen_setcond_i64(cond, vc, va, vb); ++ tcg_gen_shli_i64(vc, vc, 32); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++} ++ ++static void gen_qemu_vcmpxxwi_i64(TCGCond cond, int ra, int rb, int rc) ++{ ++ TCGv va, vb, vc, tmp64; ++ int i; ++ ++ va = tcg_temp_new(); ++ vb = tcg_const_i64(rb); ++ vc = tcg_temp_new(); ++ tmp64 = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ if ((cond >> 1) & 1) { ++ tcg_gen_ext32s_i64(va, cpu_fr[ra + i]); ++ } else { ++ tcg_gen_ext32u_i64(va, cpu_fr[ra + i]); ++ } ++ tcg_gen_setcond_i64(cond, vc, va, vb); ++ tcg_gen_mov_i64(tmp64, vc); ++ ++ tcg_gen_shri_i64(va, cpu_fr[ra + i], 32); ++ if ((cond >> 1) & 1) { ++ tcg_gen_ext32s_i64(va, va); ++ } else { ++ tcg_gen_ext32u_i64(va, va); ++ } ++ tcg_gen_setcond_i64(cond, vc, va, vb); ++ tcg_gen_shli_i64(vc, vc, 32); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++} ++ ++static void gen_qemu_vselxxw(TCGCond cond, int ra, int rb, int rc, int rd, ++ int mask) ++{ ++ int i; ++ ++ TCGv t0 = tcg_const_i64(0); ++ TCGv tmpa = tcg_temp_new(); ++ TCGv tmpb = tcg_temp_new(); ++ TCGv tmpc = tcg_temp_new(); ++ TCGv tmpd = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_ext32s_i64(tmpa, cpu_fr[ra + i]); ++ tcg_gen_ext32u_i64(tmpb, cpu_fr[rb + i]); ++ tcg_gen_ext32u_i64(tmpc, cpu_fr[rc + i]); ++ if (mask) tcg_gen_andi_i64(tmpa, tmpa, mask); ++ tcg_gen_movcond_i64(cond, tmpd, tmpa, t0, tmpb, tmpc); ++ ++ tcg_gen_andi_i64(tmpa, cpu_fr[ra + i], 0xffffffff00000000UL); ++ tcg_gen_andi_i64(tmpb, cpu_fr[rb + i], 0xffffffff00000000UL); ++ tcg_gen_andi_i64(tmpc, cpu_fr[rc + i], 0xffffffff00000000UL); ++ if (mask) tcg_gen_andi_i64(tmpa, tmpa, (uint64_t)mask << 32); ++ tcg_gen_movcond_i64(cond, cpu_fr[rd + i], tmpa, t0, tmpb, tmpc); ++ ++ tcg_gen_or_i64(cpu_fr[rd + i], cpu_fr[rd + i], tmpd); ++ } ++ ++ tcg_temp_free(t0); ++ tcg_temp_free(tmpa); ++ tcg_temp_free(tmpb); ++ tcg_temp_free(tmpc); ++ tcg_temp_free(tmpd); ++} ++ ++static void gen_qemu_vselxxwi(TCGCond cond, int ra, int rb, int disp8, int rd, ++ int mask) ++{ ++ int i; ++ ++ TCGv t0 = tcg_const_i64(0); ++ TCGv tmpa = tcg_temp_new(); ++ TCGv tmpb = tcg_temp_new(); ++ TCGv tmpc_0 = tcg_temp_new(); ++ TCGv tmpc_1 = tcg_temp_new(); ++ TCGv tmpd = tcg_temp_new(); ++ ++ tcg_gen_movi_i64(tmpc_0, (uint64_t)(((uint64_t)disp8))); ++ tcg_gen_movi_i64(tmpc_1, (uint64_t)(((uint64_t)disp8 << 32))); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_ext32s_i64(tmpa, cpu_fr[ra + i]); ++ tcg_gen_ext32u_i64(tmpb, cpu_fr[rb + i]); ++ if (mask) tcg_gen_andi_i64(tmpa, tmpa, mask); ++ tcg_gen_movcond_i64(cond, tmpd, tmpa, t0, tmpb, tmpc_0); ++ ++ tcg_gen_andi_i64(tmpa, cpu_fr[ra + i], 0xffffffff00000000UL); ++ tcg_gen_andi_i64(tmpb, cpu_fr[rb + i], 0xffffffff00000000UL); ++ if (mask) tcg_gen_andi_i64(tmpa, tmpa, (uint64_t)mask << 32); ++ tcg_gen_movcond_i64(cond, cpu_fr[rd + i], tmpa, t0, tmpb, tmpc_1); ++ ++ tcg_gen_or_i64(cpu_fr[rd + i], cpu_fr[rd + i], tmpd); ++ } ++ ++ tcg_temp_free(t0); ++ tcg_temp_free(tmpa); ++ tcg_temp_free(tmpb); ++ tcg_temp_free(tmpc_0); ++ tcg_temp_free(tmpc_1); ++ tcg_temp_free(tmpd); ++} ++ ++DisasJumpType translate_one(DisasContextBase *dcbase, uint32_t insn, ++ CPUState *cpu) ++{ ++ int32_t disp5, disp8, disp12, disp13, disp16, disp21, disp26 __attribute__((unused)); ++ uint8_t opc, ra, rb, rc, rd; ++ uint16_t fn3, fn4, fn6, fn8, fn11; ++ int32_t i; ++ TCGv va, vb, vc, vd; ++ TCGv_i32 tmp32; ++ TCGv_i64 tmp64, tmp64_0, tmp64_1, shift; ++ TCGv_i32 tmpa, tmpb, tmpc; ++ DisasJumpType ret; ++ DisasContext* ctx = container_of(dcbase, DisasContext, base); ++ ++ opc = extract32(insn, 26, 6); ++ ra = extract32(insn, 21, 5); ++ rb = extract32(insn, 16, 5); ++ rc = extract32(insn, 0, 5); ++ rd = extract32(insn, 5, 5); ++ ++ fn3 = extract32(insn, 10, 3); ++ fn6 = extract32(insn, 10, 6); ++ fn4 = extract32(insn, 12, 4); ++ fn8 = extract32(insn, 5, 8); ++ fn11 = extract32(insn, 5, 11); ++ ++ disp5 = extract32(insn, 5, 5); ++ disp8 = extract32(insn, 13, 8); ++ disp12 = sextract32(insn, 0, 12); ++ disp13 = sextract32(insn, 13, 13); ++ disp16 = sextract32(insn, 0, 16); ++ disp21 = sextract32(insn, 0, 21); ++ disp26 = sextract32(insn, 0, 26); ++ ++ ret = DISAS_NEXT; ++ insn_profile(ctx, insn); ++ ++ switch (opc) { ++ case 0x00: ++ /* SYS_CALL */ ++ ret = gen_sys_call(ctx, insn & 0x1ffffff); ++ break; ++ case 0x01: ++ /* CALL */ ++ case 0x02: ++ /* RET */ ++ case 0x03: ++ /* JMP */ ++ vb = load_gir(ctx, rb); ++ tcg_gen_addi_i64(cpu_pc, vb, ctx->base.pc_next & 0x3); ++ if (ra != 31) { ++ tcg_gen_movi_i64(load_gir(ctx, ra), ctx->base.pc_next & (~3UL)); ++ } ++ ret = DISAS_PC_UPDATED; ++ break; ++ case 0x04: ++ /* BR */ ++ case 0x05: ++ /* BSR */ ++ ret = gen_bdirect(ctx, ra, disp21); ++ break; ++ case 0x06: ++ switch (disp16) { ++ case 0x0000: ++ /* MEMB */ ++ tcg_gen_mb(TCG_MO_ALL | TCG_BAR_SC); ++ break; ++ case 0x0001: ++ /* IMEMB */ ++ /* No achievement in Qemu*/ ++ break; ++ case 0x0020: ++ /* RTC */ ++ if (disp16 && unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ gen_helper_rtc(va); ++ break; ++ case 0x0040: ++ /* RCID */ ++ if (disp16 && unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ read_csr(0xc4, va); ++ break; ++ case 0x0080: ++ /* HALT */ ++#ifndef CONFIG_USER_ONLY ++ { ++ tmp32 = tcg_const_i32(1); ++ tcg_gen_st_i32( ++ tmp32, cpu_env, ++ -offsetof(SW64CPU, env) + offsetof(CPUState, halted)); ++ tcg_temp_free_i32(tmp32); ++ } ++ ret = gen_excp(ctx, EXCP_HALTED, 0); ++#endif ++ break; ++ case 0x1000: ++ /* RD_F */ ++ if (disp16 && unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ tcg_gen_mov_i64(va, cpu_lock_success); ++ break; ++ case 0x1020: ++ /* WR_F */ ++ if (disp16 && unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ tcg_gen_andi_i64(cpu_lock_flag, va, 0x1); ++ break; ++ case 0x1040: ++ /* RTID */ ++ if (unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ read_csr(0xc7, va); ++ break; ++ default: ++ if ((disp16 & 0xFF00) == 0xFE00) { ++ /* PRI_RCSR */ ++ if (disp16 && unlikely(ra == 31)) break; ++ va = load_gir(ctx, ra); ++ read_csr(disp16 & 0xff, va); ++ break; ++ } ++ if ((disp16 & 0xFF00) == 0xFF00) { ++ /* PRI_WCSR */ ++ va = load_gir(ctx, ra); ++ write_csr(disp16 & 0xff, va, ctx->env); ++ break; ++ } ++ goto do_invalid; ++ } ++ break; ++ case 0x07: ++ /* PRI_RET */ ++ va = load_gir(ctx, ra); ++ tcg_gen_mov_i64(cpu_pc, va); ++ gen_helper_cpustate_update(cpu_env, va); ++ ret = DISAS_PC_UPDATED_NOCHAIN; ++ break; ++ case 0x08: ++ switch (fn4) { ++ case 0x0: ++ /* LLDW */ ++ gen_load_mem(ctx, &gen_qemu_lldw, ra, rb, disp12, 0, 0); ++ break; ++ case 0x1: ++ /* LLDL */ ++ gen_load_mem(ctx, &gen_qemu_lldl, ra, rb, disp12, 0, 0); ++ break; ++ case 0x2: ++ /* LDW_INC */ ++ ldx_xxx(ctx, ra, rb, disp12, 0, 1); ++ break; ++ case 0x3: ++ /* LDL_INC */ ++ ldx_xxx(ctx, ra, rb, disp12, 1, 1); ++ break; ++ case 0x4: ++ /* LDW_DEC */ ++ ldx_xxx(ctx, ra, rb, disp12, 0, -1); ++ break; ++ case 0x5: ++ /* LDL_DEC */ ++ ldx_xxx(ctx, ra, rb, disp12, 1, -1); ++ break; ++ case 0x6: ++ /* LDW_SET */ ++ ldx_set(ctx, ra, rb, disp12, 0); ++ break; ++ case 0x7: ++ /* LDL_SET */ ++ ldx_set(ctx, ra, rb, disp12, 1); ++ break; ++ case 0x8: ++ /* LSTW */ ++ ret = gen_store_conditional(ctx, ra, rb, disp12, ++ ctx->mem_idx, MO_LEUL); ++ break; ++ case 0x9: ++ /* LSTL */ ++ ret = gen_store_conditional(ctx, ra, rb, disp12, ++ ctx->mem_idx, MO_LEQ); ++ break; ++ case 0xa: ++ /* LDW_NC */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld32s, ra, rb, disp12, 0, ++ 0); ++ break; ++ case 0xb: ++ /* LDL_NC */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld64, ra, rb, disp12, 0, 0); ++ break; ++ case 0xc: ++ /* LDD_NC */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld64, ra, rb, disp12, 1, 0); ++ break; ++ case 0xd: ++ /* STW_NC */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st32, ra, rb, disp12, 0, ++ 0); ++ break; ++ case 0xe: ++ /* STL_NC */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st64, ra, rb, disp12, 0, ++ 0); ++ break; ++ case 0xf: ++ /* STD_NC */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st64, ra, rb, disp12, 1, ++ 0); ++ break; ++ default: ++ goto do_invalid; ++ } ++ break; ++ case 0x9: ++ /* LDWE */ ++ gen_load_mem_simd(ctx, &gen_qemu_ldwe, ra, rb, disp16, 0); ++ break; ++ case 0x0a: ++ /* LDSE */ ++ gen_load_mem_simd(ctx, &gen_qemu_ldse, ra, rb, disp16, 0); ++ break; ++ case 0x0b: ++ /* LDDE */ ++ gen_load_mem_simd(ctx, &gen_qemu_ldde, ra, rb, disp16, 0); ++ break; ++ case 0x0c: ++ /* VLDS */ ++ gen_load_mem_simd(ctx, &gen_qemu_vlds, ra, rb, disp16, 0); ++ break; ++ case 0x0d: ++ /* VLDD */ ++ if (unlikely(ra == 31)) break; ++ gen_load_mem_simd(ctx, &gen_qemu_vldd, ra, rb, disp16, 0); ++ break; ++ case 0x0e: ++ /* VSTS */ ++ gen_store_mem_simd(ctx, &gen_qemu_vsts, ra, rb, disp16, 0); ++ break; ++ case 0x0f: ++ /* VSTD */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd, ra, rb, disp16, 0); ++ break; ++ case 0x10: ++ if (unlikely(rc == 31)) break; ++ if (fn11 == 0x70) { ++ /* FIMOVS */ ++ va = cpu_fr[ra]; ++ vc = load_gir(ctx, rc); ++ tmp32 = tcg_temp_new_i32(); ++ gen_helper_s_to_memory(tmp32, va); ++ tcg_gen_ext_i32_i64(vc, tmp32); ++ tcg_temp_free_i32(tmp32); ++ } else if (fn11 == 0x78) { ++ /* FIMOVD */ ++ va = cpu_fr[ra]; ++ vc = load_gir(ctx, rc); ++ tcg_gen_mov_i64(vc, va); ++ } else { ++ va = load_gir(ctx, ra); ++ vb = load_gir(ctx, rb); ++ vc = load_gir(ctx, rc); ++ cal_with_iregs_2(ctx, vc, va, vb, disp13, fn11); ++ } ++ break; ++ case 0x11: ++ if (unlikely(rc == 31)) break; ++ va = load_gir(ctx, ra); ++ vb = load_gir(ctx, rb); ++ vc = load_gir(ctx, rc); ++ vd = load_gir(ctx, rd); ++ cal_with_iregs_3(ctx, vc, va, vb, vd, fn3); ++ break; ++ case 0x12: ++ if (unlikely(rc == 31)) break; ++ va = load_gir(ctx, ra); ++ vc = load_gir(ctx, rc); ++ cal_with_imm_2(ctx, vc, va, disp8, fn8); ++ break; ++ case 0x13: ++ if (rc == 31) /* Special deal */ ++ break; ++ va = load_gir(ctx, ra); ++ vc = load_gir(ctx, rc); ++ vd = load_gir(ctx, rd); ++ cal_with_imm_3(ctx, vc, va, disp8, vd, fn3); ++ break; ++ case 0x14: ++ case 0x15: ++ case 0x16: ++ case 0x17: ++ /* VLOGZZ */ ++ tcg_gen_vlogzz_i64(ctx, opc, ra, rb, rd, rc, fn6); ++ break; ++ case 0x18: ++ if (unlikely(rc == 31)) break; ++ cal_with_fregs_2(ctx, rc, ra, rb, fn8); ++ break; ++ case 0x19: ++ if (unlikely(rc == 31)) break; ++ cal_with_fregs_4(ctx, rc, ra, rb, rd, fn6); ++ break; ++ case 0x1A: ++ /* SIMD */ ++ if (unlikely(rc == 31)) break; ++ switch (fn8) { ++ case 0x00: ++ /* VADDW */ ++ tmp64 = tcg_temp_new(); ++ va = tcg_temp_new(); ++ vb = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], 0xffffffffUL); ++ tcg_gen_andi_i64(vb, cpu_fr[rb + i], 0xffffffffUL); ++ tcg_gen_add_i64(tmp64, va, vb); ++ tcg_gen_ext32u_i64(tmp64, tmp64); ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_andi_i64(vb, cpu_fr[rb + i], ++ 0xffffffff00000000UL); ++ tcg_gen_add_i64(vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_mov_i64(cpu_fr[rc + i], tmp64); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x20: ++ /* VADDW */ ++ tmp64 = tcg_temp_new(); ++ va = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], 0xffffffffUL); ++ tcg_gen_addi_i64(tmp64, va, disp8); ++ tcg_gen_ext32u_i64(tmp64, tmp64); ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_addi_i64(vc, va, ((uint64_t)disp8 << 32)); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_mov_i64(cpu_fr[rc + i], tmp64); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x01: ++ /* VSUBW */ ++ tmp64 = tcg_temp_new(); ++ va = tcg_temp_new(); ++ vb = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], 0xffffffffUL); ++ tcg_gen_andi_i64(vb, cpu_fr[rb + i], 0xffffffffUL); ++ tcg_gen_sub_i64(tmp64, va, vb); ++ tcg_gen_ext32u_i64(tmp64, tmp64); ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_andi_i64(vb, cpu_fr[rb + i], ++ 0xffffffff00000000UL); ++ tcg_gen_sub_i64(vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_mov_i64(cpu_fr[rc + i], tmp64); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x21: ++ /* VSUBW */ ++ tmp64 = tcg_temp_new(); ++ va = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], 0xffffffffUL); ++ tcg_gen_subi_i64(tmp64, va, disp8); ++ tcg_gen_ext32u_i64(tmp64, tmp64); ++ tcg_gen_andi_i64(va, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_subi_i64(vc, va, ((uint64_t)disp8 << 32)); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_mov_i64(cpu_fr[rc + i], tmp64); ++ } ++ tcg_temp_free(va); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x02: ++ /* VCMPGEW */ ++ tmp64 = tcg_const_i64(0); ++ va = tcg_temp_new(); ++ vb = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_ext32s_i64(va, cpu_fr[ra + i]); ++ tcg_gen_ext32s_i64(vb, cpu_fr[rb + i]); ++ tcg_gen_setcond_i64(TCG_COND_GE, vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_shri_i64(va, cpu_fr[ra + i], 32); ++ tcg_gen_shri_i64(vb, cpu_fr[rb + i], 32); ++ tcg_gen_ext32s_i64(va, va); ++ tcg_gen_ext32s_i64(vb, vb); ++ tcg_gen_setcond_i64(TCG_COND_GE, vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ } ++ tcg_gen_shli_i64(cpu_fr[rc], tmp64, 29); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x22: ++ /* VCMPGEW */ ++ tmp64 = tcg_const_i64(0); ++ va = tcg_temp_new(); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_ext32s_i64(va, cpu_fr[ra + i]); ++ tcg_gen_setcond_i64(TCG_COND_GE, vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ tcg_gen_shri_i64(va, cpu_fr[ra + i], 32); ++ tcg_gen_ext32s_i64(va, va); ++ tcg_gen_setcond_i64(TCG_COND_GE, vc, va, vb); ++ tcg_gen_or_i64(tmp64, tmp64, vc); ++ } ++ tcg_gen_shli_i64(cpu_fr[rc], tmp64, 29); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x03: ++ /* VCMPEQW */ ++ gen_qemu_vcmpxxw_i64(TCG_COND_EQ, ra, rb, rc); ++ break; ++ case 0x23: ++ /* VCMPEQW */ ++ gen_qemu_vcmpxxwi_i64(TCG_COND_EQ, ra, disp8, rc); ++ break; ++ case 0x04: ++ /* VCMPLEW */ ++ gen_qemu_vcmpxxw_i64(TCG_COND_LE, ra, rb, rc); ++ break; ++ case 0x24: ++ /* VCMPLEW */ ++ gen_qemu_vcmpxxwi_i64(TCG_COND_LE, ra, disp8, rc); ++ break; ++ case 0x05: ++ /* VCMPLTW */ ++ gen_qemu_vcmpxxw_i64(TCG_COND_LT, ra, rb, rc); ++ break; ++ case 0x25: ++ /* VCMPLTW */ ++ gen_qemu_vcmpxxwi_i64(TCG_COND_LT, ra, disp8, rc); ++ break; ++ case 0x06: ++ /* VCMPULEW */ ++ gen_qemu_vcmpxxw_i64(TCG_COND_LEU, ra, rb, rc); ++ break; ++ case 0x26: ++ /* VCMPULEW */ ++ gen_qemu_vcmpxxwi_i64(TCG_COND_LEU, ra, disp8, rc); ++ break; ++ case 0x07: ++ /* VCMPULTW */ ++ gen_qemu_vcmpxxw_i64(TCG_COND_LTU, ra, rb, rc); ++ break; ++ case 0x27: ++ /* VCMPULTW */ ++ gen_qemu_vcmpxxwi_i64(TCG_COND_LTU, ra, disp8, rc); ++ break; ++ case 0x08: ++ /* VSLLW */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(shift, cpu_fr[rb], 29); ++ tcg_gen_andi_i64(shift, shift, 0x1fUL); ++ ++ tcg_gen_shl_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_ext32u_i64(tmp64, vc); ++ ++ tcg_gen_andi_i64(vc, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_shl_i64(vc, vc, shift); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x28: ++ /* VSLLW */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_movi_i64(shift, disp8 & 0x1fUL); ++ ++ tcg_gen_shl_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_ext32u_i64(tmp64, vc); ++ ++ tcg_gen_andi_i64(vc, cpu_fr[ra + i], ++ 0xffffffff00000000UL); ++ tcg_gen_shl_i64(vc, vc, shift); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x09: ++ /* VSRLW */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(shift, cpu_fr[rb], 29); ++ tcg_gen_andi_i64(shift, shift, 0x1fUL); ++ ++ tcg_gen_ext32u_i64(vc, cpu_fr[ra + i]); ++ tcg_gen_shr_i64(tmp64, vc, shift); ++ ++ tcg_gen_shr_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_andi_i64(vc, vc, 0xffffffff00000000UL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x29: ++ /* VSRLW */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_movi_i64(shift, disp8 & 0x1fUL); ++ ++ tcg_gen_ext32u_i64(vc, cpu_fr[ra + i]); ++ tcg_gen_shr_i64(tmp64, vc, shift); ++ ++ tcg_gen_shr_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_andi_i64(vc, vc, 0xffffffff00000000UL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x0A: ++ /* VSRAW */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(shift, cpu_fr[rb], 29); ++ tcg_gen_andi_i64(shift, shift, 0x1fUL); ++ ++ tcg_gen_ext32s_i64(vc, cpu_fr[ra + i]); ++ tcg_gen_sar_i64(tmp64, vc, shift); ++ ++ tcg_gen_sar_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_andi_i64(vc, vc, 0xffffffff00000000UL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x2A: ++ /* VSRAWI */ ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_movi_i64(shift, disp8 & 0x1fUL); ++ ++ tcg_gen_ext32s_i64(vc, cpu_fr[ra + i]); ++ tcg_gen_sar_i64(tmp64, vc, shift); ++ ++ tcg_gen_sar_i64(vc, cpu_fr[ra + i], shift); ++ tcg_gen_andi_i64(vc, vc, 0xffffffff00000000UL); ++ tcg_gen_or_i64(cpu_fr[rc + i], tmp64, vc); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x0B: ++ /* VROLW */ ++ tmpa = tcg_temp_new_i32(); ++ tmpb = tcg_temp_new_i32(); ++ tmpc = tcg_temp_new_i32(); ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_shri_i64(shift, cpu_fr[rb], 29); ++ tcg_gen_andi_i64(shift, shift, 0x1fUL); ++ ++ tcg_gen_extrl_i64_i32(tmpa, cpu_fr[ra + i]); ++ tcg_gen_extrl_i64_i32(tmpb, shift); ++ ++ tcg_gen_rotl_i32(tmpc, tmpa, tmpb); ++ tcg_gen_extu_i32_i64(tmp64, tmpc); ++ ++ tcg_gen_extrh_i64_i32(tmpa, cpu_fr[ra + i]); ++ tcg_gen_rotl_i32(tmpc, tmpa, tmpb); ++ tcg_gen_extu_i32_i64(vc, tmpc); ++ tcg_gen_shli_i64(vc, vc, 32); ++ ++ tcg_gen_or_i64(cpu_fr[rc + i], vc, tmp64); ++ } ++ tcg_temp_free_i32(tmpa); ++ tcg_temp_free_i32(tmpb); ++ tcg_temp_free_i32(tmpc); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x2B: ++ /* VROLW */ ++ tmpa = tcg_temp_new_i32(); ++ tmpb = tcg_temp_new_i32(); ++ tmpc = tcg_temp_new_i32(); ++ tmp64 = tcg_temp_new(); ++ shift = tcg_temp_new(); ++ vc = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_movi_i64(shift, disp8 & 0x1fUL); ++ ++ tcg_gen_extrl_i64_i32(tmpa, cpu_fr[ra + i]); ++ tcg_gen_extrl_i64_i32(tmpb, shift); ++ ++ tcg_gen_rotl_i32(tmpc, tmpa, tmpb); ++ tcg_gen_extu_i32_i64(tmp64, tmpc); ++ ++ tcg_gen_extrh_i64_i32(tmpa, cpu_fr[ra + i]); ++ tcg_gen_rotl_i32(tmpc, tmpa, tmpb); ++ tcg_gen_extu_i32_i64(vc, tmpc); ++ tcg_gen_shli_i64(vc, vc, 32); ++ ++ tcg_gen_or_i64(cpu_fr[rc + i], vc, tmp64); ++ } ++ tcg_temp_free_i32(tmpa); ++ tcg_temp_free_i32(tmpb); ++ tcg_temp_free_i32(tmpc); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(shift); ++ tcg_temp_free(vc); ++ break; ++ case 0x0C: ++ /* SLLOW */ ++ tcg_gen_sllow_i64(ra, rc, rb); ++ break; ++ case 0x2C: ++ /* SLLOW */ ++ tcg_gen_sllowi_i64(ra, rc, disp8); ++ break; ++ case 0x0D: ++ /* SRLOW */ ++ tcg_gen_srlow_i64(ra, rc, rb); ++ break; ++ case 0x2D: ++ /* SRLOW */ ++ tcg_gen_srlowi_i64(ra, rc, disp8); ++ break; ++ case 0x0E: ++ /* VADDL */ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_add_i64(cpu_fr[rc + i], cpu_fr[ra + i], ++ cpu_fr[rb + i]); ++ } ++ break; ++ case 0x2E: ++ /* VADDL */ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_addi_i64(cpu_fr[rc + i], cpu_fr[ra + i], disp8); ++ } ++ break; ++ case 0x0F: ++ /* VSUBL */ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_sub_i64(cpu_fr[rc + i], cpu_fr[ra + i], ++ cpu_fr[rb + i]); ++ } ++ break; ++ case 0x2F: ++ /* VSUBL */ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_subi_i64(cpu_fr[rc + i], cpu_fr[ra + i], disp8); ++ } ++ break; ++ case 0x18: ++ /* CTPOPOW */ ++ tmp64 = tcg_const_i64(0); ++ tmp64_0 = tcg_temp_new(); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_ctpop_i64(tmp64_0, cpu_fr[ra + i]); ++ tcg_gen_add_i64(tmp64, tmp64, tmp64_0); ++ } ++ tcg_gen_shli_i64(cpu_fr[rc], tmp64, 29); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(tmp64_0); ++ break; ++ case 0x19: ++ /* CTLZOW */ ++ va = tcg_const_i64(ra); ++ gen_helper_ctlzow(cpu_fr[rc], cpu_env, va); ++ tcg_temp_free(va); ++ break; ++ case 0x40: ++ /* VUCADDW */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddw(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x60: ++ /* VUCADDW */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddwi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x41: ++ /* VUCSUBW */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubw(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x61: ++ /* VUCSUBW */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubwi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x42: ++ /* VUCADDH */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddh(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x62: ++ /* VUCADDH */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddhi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x43: ++ /* VUCSUBH */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubh(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x63: ++ /* VUCSUBH */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubhi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x44: ++ /* VUCADDB */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddb(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x64: ++ /* VUCADDB */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucaddbi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x45: ++ /* VUCSUBB */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(rb); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubb(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x65: ++ /* VUCSUBB */ ++ va = tcg_const_i64(ra); ++ vb = tcg_const_i64(disp8); ++ vc = tcg_const_i64(rc); ++ gen_helper_vucsubbi(cpu_env, va, vb, vc); ++ tcg_temp_free(va); ++ tcg_temp_free(vb); ++ tcg_temp_free(vc); ++ break; ++ case 0x80: ++ /* VADDS */ ++ for (i = 0; i < 128; i += 32) ++ gen_fadds(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x81: ++ /* VADDD */ ++ for (i = 0; i < 128; i += 32) ++ gen_faddd(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x82: ++ /* VSUBS */ ++ for (i = 0; i < 128; i += 32) ++ gen_fsubs(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x83: ++ /* VSUBD */ ++ for (i = 0; i < 128; i += 32) ++ gen_fsubd(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x84: ++ /* VMULS */ ++ for (i = 0; i < 128; i += 32) ++ gen_fmuls(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x85: ++ /* VMULD */ ++ for (i = 0; i < 128; i += 32) ++ gen_fmuld(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x86: ++ /* VDIVS */ ++ for (i = 0; i < 128; i += 32) ++ gen_fdivs(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x87: ++ /* VDIVD */ ++ for (i = 0; i < 128; i += 32) ++ gen_fdivd(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x88: ++ /* VSQRTS */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fsqrts(cpu_fr[rc + i], cpu_env, ++ cpu_fr[rb + i]); ++ break; ++ case 0x89: ++ /* VSQRTD */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fsqrt(cpu_fr[rc + i], cpu_env, ++ cpu_fr[rb + i]); ++ break; ++ case 0x8C: ++ /* VFCMPEQ */ ++ for (i = 0; i < 128; i += 32) ++ gen_fcmpeq(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x8D: ++ /* VFCMPLE */ ++ for (i = 0; i < 128; i += 32) ++ gen_fcmple(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x8E: ++ /* VFCMPLT */ ++ for (i = 0; i < 128; i += 32) ++ gen_fcmplt(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x8F: ++ /* VFCMPUN */ ++ for (i = 0; i < 128; i += 32) ++ gen_fcmpun(ctx, ra + i, rb + i, rc + i); ++ break; ++ case 0x90: ++ /* VCPYS */ ++ tcg_gen_vcpys_i64(ra, rb, rc); ++ break; ++ case 0x91: ++ /* VCPYSE */ ++ tcg_gen_vcpyse_i64(ra, rb, rc); ++ break; ++ case 0x92: ++ /* VCPYSN */ ++ tcg_gen_vcpysn_i64(ra, rb, rc); ++ break; ++ case 0x93: ++ /* VSUMS */ ++ gen_fadds(ctx, ra, ra + 32, rc); ++ gen_fadds(ctx, rc, ra + 64, rc); ++ gen_fadds(ctx, rc, ra + 96, rc); ++ break; ++ case 0x94: ++ /* VSUMD */ ++ gen_faddd(ctx, ra, ra + 32, rc); ++ gen_faddd(ctx, rc, ra + 64, rc); ++ gen_faddd(ctx, rc, ra + 96, rc); ++ break; ++ default: ++ printf("ILLEGAL BELOW OPC[%x] func[%08x]\n", opc, fn8); ++ ret = gen_invalid(ctx); ++ break; ++ } ++ break; ++ case 0x1B: ++ /* SIMD */ ++ if (unlikely(rc == 31)) break; ++ switch (fn6) { ++ case 0x00: ++ /* VMAS */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fmas(cpu_fr[rc + i], cpu_env, cpu_fr[ra + i], ++ cpu_fr[rb + i], cpu_fr[rd + i]); ++ break; ++ case 0x01: ++ /* VMAD */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fmad(cpu_fr[rc + i], cpu_env, cpu_fr[ra + i], ++ cpu_fr[rb + i], cpu_fr[rd + i]); ++ break; ++ case 0x02: ++ /* VMSS */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fmss(cpu_fr[rc + i], cpu_env, cpu_fr[ra + i], ++ cpu_fr[rb + i], cpu_fr[rd + i]); ++ break; ++ case 0x03: ++ /* VMSD */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fmsd(cpu_fr[rc + i], cpu_env, cpu_fr[ra + i], ++ cpu_fr[rb + i], cpu_fr[rd + i]); ++ break; ++ case 0x04: ++ /* VNMAS */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fnmas(cpu_fr[rc + i], cpu_env, ++ cpu_fr[ra + i], cpu_fr[rb + i], ++ cpu_fr[rd + i]); ++ break; ++ case 0x05: ++ /* VNMAD */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fnmad(cpu_fr[rc + i], cpu_env, ++ cpu_fr[ra + i], cpu_fr[rb + i], ++ cpu_fr[rd + i]); ++ break; ++ case 0x06: ++ /* VNMSS */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fnmss(cpu_fr[rc + i], cpu_env, ++ cpu_fr[ra + i], cpu_fr[rb + i], ++ cpu_fr[rd + i]); ++ break; ++ case 0x07: ++ /* VNMSD */ ++ for (i = 0; i < 128; i += 32) ++ gen_helper_fnmsd(cpu_fr[rc + i], cpu_env, ++ cpu_fr[ra + i], cpu_fr[rb + i], ++ cpu_fr[rd + i]); ++ break; ++ case 0x10: ++ /* VFSELEQ */ ++ tmp64 = tcg_temp_new(); ++ tmp64_0 = tcg_const_i64(0); ++ for (i = 0; i < 128; i += 32) { ++ gen_helper_fcmpeq(tmp64, cpu_env, cpu_fr[ra + i], ++ tmp64_0); ++ tcg_gen_movcond_i64(TCG_COND_EQ, cpu_fr[rc + i], tmp64, ++ tmp64_0, cpu_fr[rd + i], ++ cpu_fr[rb + i]); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(tmp64_0); ++ break; ++ case 0x12: ++ /* VFSELLT */ ++ tmp64 = tcg_temp_new(); ++ tmp64_0 = tcg_const_i64(0); ++ tmp64_1 = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(tmp64, cpu_fr[ra + i], ++ 0x7fffffffffffffffUL); ++ tcg_gen_setcond_i64(TCG_COND_NE, tmp64, tmp64, ++ tmp64_0); ++ tcg_gen_shri_i64(tmp64_1, cpu_fr[ra +i], 63); ++ tcg_gen_and_i64(tmp64, tmp64_1, tmp64); ++ tcg_gen_movcond_i64(TCG_COND_EQ, cpu_fr[rc + i], tmp64, ++ tmp64_0, cpu_fr[rd + i], ++ cpu_fr[rb + i]); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(tmp64_0); ++ tcg_temp_free(tmp64_1); ++ break; ++ case 0x13: ++ /* VFSELLE */ ++ tmp64 = tcg_temp_new(); ++ tmp64_0 = tcg_const_i64(0); ++ tmp64_1 = tcg_temp_new(); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_andi_i64(tmp64, cpu_fr[ra + i], ++ 0x7fffffffffffffffUL); ++ tcg_gen_setcond_i64(TCG_COND_EQ, tmp64, tmp64, ++ tmp64_0); ++ tcg_gen_shri_i64(tmp64_1, cpu_fr[ra + i], 63); ++ tcg_gen_or_i64(tmp64, tmp64_1, tmp64); ++ tcg_gen_movcond_i64(TCG_COND_EQ, cpu_fr[rc + i], tmp64, ++ tmp64_0, cpu_fr[rd + i], ++ cpu_fr[rb + i]); ++ } ++ tcg_temp_free(tmp64); ++ tcg_temp_free(tmp64_0); ++ tcg_temp_free(tmp64_1); ++ break; ++ case 0x18: ++ /* VSELEQW */ ++ gen_qemu_vselxxw(TCG_COND_EQ, ra, rb, rd, rc, 0); ++ break; ++ case 0x38: ++ /* VSELEQW */ ++ gen_qemu_vselxxwi(TCG_COND_EQ, ra, rb, disp5, rc, 0); ++ break; ++ case 0x19: ++ /* VSELLBCW */ ++ gen_qemu_vselxxw(TCG_COND_EQ, ra, rb, rd, rc, 1); ++ break; ++ case 0x39: ++ /* VSELLBCW */ ++ gen_qemu_vselxxwi(TCG_COND_EQ, ra, rb, disp5, rc, 1); ++ break; ++ case 0x1A: ++ /* VSELLTW */ ++ gen_qemu_vselxxw(TCG_COND_LT, ra, rb, rd, rc, 0); ++ break; ++ case 0x3A: ++ /* VSELLTW */ ++ gen_qemu_vselxxwi(TCG_COND_LT, ra, rb, disp5, rc, 0); ++ break; ++ case 0x1B: ++ /* VSELLEW */ ++ gen_qemu_vselxxw(TCG_COND_LE, ra, rb, rd, rc, 0); ++ break; ++ case 0x3B: ++ /* VSELLEW */ ++ gen_qemu_vselxxwi(TCG_COND_LE, ra, rb, disp5, rc, 0); ++ break; ++ case 0x20: ++ /* VINSW */ ++ if (disp5 > 7) break; ++ tmp64 = tcg_temp_new(); ++ tmp32 = tcg_temp_new_i32(); ++ gen_helper_s_to_memory(tmp32, cpu_fr[ra]); ++ tcg_gen_extu_i32_i64(tmp64, tmp32); ++ tcg_gen_shli_i64(tmp64, tmp64, (disp5 % 2) * 32); ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_mov_i64(cpu_fr[rc + i], cpu_fr[rb + i]); ++ } ++ if (disp5 % 2) { ++ tcg_gen_andi_i64(cpu_fr[rc + (disp5 / 2) * 32], ++ cpu_fr[rc + (disp5 / 2) * 32], ++ 0xffffffffUL); ++ } else { ++ tcg_gen_andi_i64(cpu_fr[rc + (disp5 / 2) * 32], ++ cpu_fr[rc + (disp5 / 2) * 32], ++ 0xffffffff00000000UL); ++ } ++ tcg_gen_or_i64(cpu_fr[rc + (disp5 / 2) * 32], ++ cpu_fr[rc + (disp5 / 2) * 32], tmp64); ++ tcg_temp_free(tmp64); ++ tcg_temp_free_i32(tmp32); ++ break; ++ case 0x21: ++ /* VINSF */ ++ if (disp5 > 3) break; ++ tmp64 = tcg_temp_new(); ++ tcg_gen_mov_i64(tmp64, cpu_fr[ra]); ++ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_mov_i64(cpu_fr[rc + i], cpu_fr[rb + i]); ++ } ++ tcg_gen_mov_i64(cpu_fr[rc + disp5 * 32], tmp64); ++ tcg_temp_free(tmp64); ++ break; ++ case 0x22: ++ /* VEXTW */ ++ if (disp5 > 7) break; ++ tmp64 = tcg_temp_new(); ++ tmp32 = tcg_temp_new_i32(); ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra + (disp5 / 2) * 32], ++ (disp5 % 2) * 32); ++ tcg_gen_extrl_i64_i32(tmp32, tmp64); ++ gen_helper_memory_to_s(tmp64, tmp32); ++ tcg_gen_mov_i64(cpu_fr[rc], tmp64); ++ tcg_temp_free(tmp64); ++ tcg_temp_free_i32(tmp32); ++ break; ++ case 0x23: ++ /* VEXTF */ ++ if (disp5 > 3) break; ++ tcg_gen_mov_i64(cpu_fr[rc], cpu_fr[ra + disp5 * 32]); ++ break; ++ case 0x24: ++ /* VCPYW */ ++ tmp64 = tcg_temp_new(); ++ tmp64_0 = tcg_temp_new(); ++ /* FIXME: for debug ++ tcg_gen_movi_i64(tmp64, ra); ++ gen_helper_v_print(cpu_env, tmp64); ++ */ ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra], 29); ++ tcg_gen_andi_i64(tmp64_0, tmp64, 0x3fffffffUL); ++ tcg_gen_shri_i64(tmp64, cpu_fr[ra], 62); ++ tcg_gen_shli_i64(tmp64, tmp64, 30); ++ tcg_gen_or_i64(tmp64_0, tmp64, tmp64_0); ++ tcg_gen_mov_i64(tmp64, tmp64_0); ++ tcg_gen_shli_i64(tmp64, tmp64, 32); ++ tcg_gen_or_i64(tmp64_0, tmp64_0, tmp64); ++ tcg_gen_mov_i64(cpu_fr[rc], tmp64_0); ++ tcg_gen_mov_i64(cpu_fr[rc + 32], cpu_fr[rc]); ++ tcg_gen_mov_i64(cpu_fr[rc + 64], cpu_fr[rc]); ++ tcg_gen_mov_i64(cpu_fr[rc + 96], cpu_fr[rc]); ++ /* FIXME: for debug ++ tcg_gen_movi_i64(tmp64, rb); ++ gen_helper_v_print(cpu_env, tmp64); ++ tcg_gen_movi_i64(tmp64, rc); ++ gen_helper_v_print(cpu_env, tmp64); ++ */ ++ tcg_temp_free(tmp64); ++ tcg_temp_free(tmp64_0); ++ break; ++ case 0x25: ++ /* VCPYF */ ++ for (i = 0; i < 128; i += 32) { ++ tcg_gen_mov_i64(cpu_fr[rc + i], cpu_fr[ra]); ++ } ++ break; ++ case 0x26: ++ /* VCONW */ ++ tmp64 = tcg_const_i64(ra << 8 | rb); ++ tmp64_0 = tcg_temp_new(); ++ vd = tcg_const_i64(rc); ++ tcg_gen_shri_i64(tmp64_0, cpu_fr[rd], 2); ++ tcg_gen_andi_i64(tmp64_0, tmp64_0, 0x7ul); ++ gen_helper_vconw(cpu_env, tmp64, vd, tmp64_0); ++ tcg_temp_free(tmp64_0); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(vd); ++ break; ++ case 0x27: ++ /* VSHFW */ ++ tmp64 = tcg_const_i64(ra << 8 | rb); ++ vd = tcg_const_i64(rc); ++ gen_helper_vshfw(cpu_env, tmp64, vd, cpu_fr[rd]); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(vd); ++ break; ++ case 0x28: ++ /* VCONS */ ++ tmp64 = tcg_const_i64(ra << 8 | rb); ++ tmp64_0 = tcg_temp_new(); ++ vd = tcg_const_i64(rc); ++ tcg_gen_shri_i64(tmp64_0, cpu_fr[rd], 2); ++ tcg_gen_andi_i64(tmp64_0, tmp64_0, 0x3ul); ++ gen_helper_vcond(cpu_env, tmp64, vd, tmp64_0); ++ tcg_temp_free(tmp64_0); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(vd); ++ break; ++ case 0x29: ++ /* FIXME: VCOND maybe it's wrong in the instruction book ++ * that there are no temp. */ ++ tmp64 = tcg_const_i64(ra << 8 | rb); ++ tmp64_0 = tcg_temp_new(); ++ vd = tcg_const_i64(rc); ++ tcg_gen_shri_i64(tmp64_0, cpu_fr[rd], 3); ++ tcg_gen_andi_i64(tmp64_0, tmp64_0, 0x3ul); ++ gen_helper_vcond(cpu_env, tmp64, vd, tmp64_0); ++ tcg_temp_free(tmp64_0); ++ tcg_temp_free(tmp64); ++ tcg_temp_free(vd); ++ break; ++ default: ++ printf("ILLEGAL BELOW OPC[%x] func[%08x]\n", opc, fn6); ++ ret = gen_invalid(ctx); ++ break; ++ } ++ break; ++ case 0x1C: ++ switch (fn4) { ++ case 0x0: ++ /* VLDW_U */ ++ if (unlikely(ra == 31)) break; ++ gen_load_mem_simd(ctx, &gen_qemu_vldd, ra, rb, disp12, ++ ~0x1fUL); ++ break; ++ case 0x1: ++ /* VSTW_U */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd, ra, rb, disp12, ++ ~0x1fUL); ++ break; ++ case 0x2: ++ /* VLDS_U */ ++ if (unlikely(ra == 31)) break; ++ gen_load_mem_simd(ctx, &gen_qemu_vlds, ra, rb, disp12, ++ ~0xfUL); ++ break; ++ case 0x3: ++ /* VSTS_U */ ++ gen_store_mem_simd(ctx, &gen_qemu_vsts, ra, rb, disp12, ++ ~0xfUL); ++ break; ++ case 0x4: ++ /* VLDD_U */ ++ if (unlikely(ra == 31)) break; ++ gen_load_mem_simd(ctx, &gen_qemu_vldd, ra, rb, disp12, ++ ~0x1fUL); ++ break; ++ case 0x5: ++ /* VSTD_U */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd, ra, rb, disp12, ++ ~0x1fUL); ++ break; ++ case 0x8: ++ /* VSTW_UL */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstw_ul, ra, rb, disp12, ++ 0); ++ break; ++ case 0x9: ++ /* VSTW_UH */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstw_uh, ra, rb, disp12, ++ 0); ++ break; ++ case 0xa: ++ /* VSTS_UL */ ++ gen_store_mem_simd(ctx, &gen_qemu_vsts_ul, ra, rb, disp12, ++ 0); ++ break; ++ case 0xb: ++ /* VSTS_UH */ ++ gen_store_mem_simd(ctx, &gen_qemu_vsts_uh, ra, rb, disp12, ++ 0); ++ break; ++ case 0xc: ++ /* VSTD_UL */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd_ul, ra, rb, disp12, ++ 0); ++ break; ++ case 0xd: ++ /* VSTD_UH */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd_uh, ra, rb, disp12, ++ 0); ++ break; ++ case 0xe: ++ /* VLDD_NC */ ++ gen_load_mem_simd(ctx, &gen_qemu_vldd, ra, rb, disp12, 0); ++ break; ++ case 0xf: ++ /* VSTD_NC */ ++ gen_store_mem_simd(ctx, &gen_qemu_vstd, ra, rb, disp12, 0); ++ break; ++ default: ++ printf("ILLEGAL BELOW OPC[%x] func[%08x]\n", opc, fn4); ++ ret = gen_invalid(ctx); ++ break; ++ } ++ break; ++ case 0x20: ++ /* LDBU */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld8u, ra, rb, disp16, 0, 0); ++ break; ++ case 0x21: ++ /* LDHU */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld16u, ra, rb, disp16, 0, 0); ++ break; ++ case 0x22: ++ /* LDW */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld32s, ra, rb, disp16, 0, 0); ++ break; ++ case 0x23: ++ /* LDL */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld64, ra, rb, disp16, 0, 0); ++ break; ++ case 0x24: ++ /* LDL_U */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld64, ra, rb, disp16, 0, 1); ++ break; ++ case 0x25: ++ /* PRI_LD */ ++#ifndef CONFIG_USER_ONLY ++ if ((insn >> 12) & 1) { ++ gen_load_mem(ctx, &gen_qemu_pri_ldl, ra, rb, disp12, 0, 1); ++ } else { ++ gen_load_mem(ctx, &gen_qemu_pri_ldw, ra, rb, disp12, 0, 1); ++ } ++#endif ++ break; ++ case 0x26: ++ /* FLDS */ ++ gen_load_mem(ctx, &gen_qemu_flds, ra, rb, disp16, 1, 0); ++ break; ++ case 0x27: ++ /* FLDD */ ++ gen_load_mem(ctx, &tcg_gen_qemu_ld64, ra, rb, disp16, 1, 0); ++ break; ++ case 0x28: ++ /* STB */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st8, ra, rb, disp16, 0, 0); ++ break; ++ case 0x29: ++ /* STH */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st16, ra, rb, disp16, 0, 0); ++ break; ++ case 0x2a: ++ /* STW */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st32, ra, rb, disp16, 0, 0); ++ break; ++ case 0x2b: ++ /* STL */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st64, ra, rb, disp16, 0, 0); ++ break; ++ case 0x2c: ++ /* STL_U */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st64, ra, rb, disp16, 0, 1); ++ break; ++ case 0x2d: ++ /* PRI_ST */ ++#ifndef CONFIG_USER_ONLY ++ if ((insn >> 12) & 1) { ++ gen_store_mem(ctx, &gen_qemu_pri_stl, ra, rb, disp12, 0, 1); ++ } else { ++ gen_store_mem(ctx, &gen_qemu_pri_stw, ra, rb, disp12, 0, 1); ++ } ++#endif ++ break; ++ case 0x2e: ++ /* FSTS */ ++ gen_store_mem(ctx, &gen_qemu_fsts, ra, rb, disp16, 1, 0); ++ break; ++ case 0x2f: ++ /* FSTD */ ++ gen_store_mem(ctx, &tcg_gen_qemu_st64, ra, rb, disp16, 1, 0); ++ break; ++ case 0x30: ++ /* BEQ */ ++ ret = gen_bcond(ctx, TCG_COND_EQ, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x31: ++ /* BNE */ ++ ret = gen_bcond(ctx, TCG_COND_NE, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x32: ++ /* BLT */ ++ ret = gen_bcond(ctx, TCG_COND_LT, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x33: ++ /* BLE */ ++ ret = gen_bcond(ctx, TCG_COND_LE, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x34: ++ /* BGT */ ++ ret = gen_bcond(ctx, TCG_COND_GT, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x35: ++ /* BGE */ ++ ret = gen_bcond(ctx, TCG_COND_GE, ra, disp21, (uint64_t)-1); ++ break; ++ case 0x36: ++ /* BLBC */ ++ ret = gen_bcond(ctx, TCG_COND_EQ, ra, disp21, 1); ++ break; ++ case 0x37: ++ /* BLBS */ ++ ret = gen_bcond(ctx, TCG_COND_NE, ra, disp21, 1); ++ break; ++ case 0x38: ++ /* FBEQ */ ++ ret = gen_fbcond(ctx, TCG_COND_EQ, ra, disp21); ++ break; ++ case 0x39: ++ /* FBNE */ ++ ret = gen_fbcond(ctx, TCG_COND_NE, ra, disp21); ++ break; ++ case 0x3a: ++ /* FBLT */ ++ ret = gen_fbcond(ctx, TCG_COND_LT, ra, disp21); ++ break; ++ case 0x3b: ++ /* FBLE */ ++ ret = gen_fbcond(ctx, TCG_COND_LE, ra, disp21); ++ break; ++ case 0x3c: ++ /* FBGT */ ++ ret = gen_fbcond(ctx, TCG_COND_GT, ra, disp21); ++ break; ++ case 0x3d: ++ /* FBGE */ ++ ret = gen_fbcond(ctx, TCG_COND_GE, ra, disp21); ++ break; ++ case 0x3f: ++ /* LDIH */ ++ disp16 = ((uint32_t)disp16) << 16; ++ if (ra == 31) break; ++ va = load_gir(ctx, ra); ++ if (rb == 31) { ++ tcg_gen_movi_i64(va, disp16); ++ } else { ++ tcg_gen_addi_i64(va, load_gir(ctx, rb), (int64_t)disp16); ++ } ++ break; ++ case 0x3e: ++ /* LDI */ ++ if (ra == 31) break; ++ va = load_gir(ctx, ra); ++ if (rb == 31) { ++ tcg_gen_movi_i64(va, disp16); ++ } else { ++ tcg_gen_addi_i64(va, load_gir(ctx, rb), (int64_t)disp16); ++ } ++ break; ++ do_invalid: ++ default: ++ printf("ILLEGAL BELOW OPC[%x] insn[%08x]\n", opc, insn); ++ ret = gen_invalid(ctx); ++ } ++ return ret; ++} ++static void sw64_tr_init_disas_context(DisasContextBase *dcbase, CPUState *cpu) ++{ ++ DisasContext* ctx = container_of(dcbase, DisasContext, base); ++ CPUSW64State* env = cpu->env_ptr; /*init by instance_initfn*/ ++ ++ ctx->tbflags = ctx->base.tb->flags; ++ ctx->mem_idx = cpu_mmu_index(env, false); ++#ifdef CONFIG_USER_ONLY ++ ctx->ir = cpu_std_ir; ++#else ++ ctx->ir = (ctx->tbflags & ENV_FLAG_HM_MODE ? cpu_hm_ir : cpu_std_ir); ++#endif ++ ctx->zero = NULL; ++} ++ ++static void sw64_tr_tb_start(DisasContextBase *db, CPUState *cpu) ++{ ++} ++ ++static void sw64_tr_insn_start(DisasContextBase *dcbase, CPUState *cpu) ++{ ++ tcg_gen_insn_start(dcbase->pc_next); ++} ++ ++static void sw64_tr_translate_insn(DisasContextBase *dcbase, CPUState *cpu) ++{ ++ DisasContext *ctx = container_of(dcbase, DisasContext, base); ++ CPUSW64State *env = cpu->env_ptr; ++ uint32_t insn; ++ ++ insn = cpu_ldl_code(env, ctx->base.pc_next & (~3UL)); ++ ctx->env = env; ++ ctx->base.pc_next += 4; ++ ctx->base.is_jmp = ctx->translate_one(dcbase, insn, cpu); ++ ++ free_context_temps(ctx); ++ translator_loop_temp_check(&ctx->base); ++} ++ ++/* FIXME:Linhainan */ ++static void sw64_tr_tb_stop(DisasContextBase* dcbase, CPUState* cpu) { ++ DisasContext* ctx = container_of(dcbase, DisasContext, base); ++ ++ switch (ctx->base.is_jmp) { ++ case DISAS_NORETURN: ++ break; ++ case DISAS_TOO_MANY: ++ if (use_goto_tb(ctx, ctx->base.pc_next)) { ++ tcg_gen_goto_tb(0); ++ tcg_gen_movi_i64(cpu_pc, ctx->base.pc_next); ++ tcg_gen_exit_tb(ctx->base.tb, 0); ++ } ++ /* FALLTHRU */ ++ case DISAS_PC_STALE: ++ tcg_gen_movi_i64(cpu_pc, ctx->base.pc_next); ++ /* FALLTHRU */ ++ case DISAS_PC_UPDATED: ++ if (!use_exit_tb(ctx)) { ++ tcg_gen_lookup_and_goto_ptr(); ++ break; ++ } ++ /* FALLTHRU */ ++ case DISAS_PC_UPDATED_NOCHAIN: ++ if (ctx->base.singlestep_enabled) { ++ /* FIXME: for gdb*/ ++ cpu_loop_exit(cpu); ++ } else { ++ tcg_gen_exit_tb(NULL, 0); ++ } ++ break; ++ default: ++ g_assert_not_reached(); ++ } ++} ++ ++static void sw64_tr_disas_log(const DisasContextBase* dcbase, CPUState* cpu) { ++ SW64CPU* sc = SW64_CPU(cpu); ++ qemu_log("IN(%d): %s\n", sc->cid, ++ lookup_symbol(dcbase->pc_first)); ++ log_target_disas(cpu, dcbase->pc_first & (~0x3UL), dcbase->tb->size); ++} ++ ++static void init_transops(CPUState *cpu, DisasContext *dc) ++{ ++ dc->translate_one = translate_one; ++} ++ ++void restore_state_to_opc(CPUSW64State* env, TranslationBlock* tb, ++ target_ulong* data) { ++ env->pc = data[0]; ++} ++ ++static const TranslatorOps sw64_trans_ops = { ++ .init_disas_context = sw64_tr_init_disas_context, ++ .tb_start = sw64_tr_tb_start, ++ .insn_start = sw64_tr_insn_start, ++ .translate_insn = sw64_tr_translate_insn, ++ .tb_stop = sw64_tr_tb_stop, ++ .disas_log = sw64_tr_disas_log, ++}; ++ ++void gen_intermediate_code(CPUState* cpu, TranslationBlock* tb, int max_insns) ++{ ++ DisasContext dc; ++ init_transops(cpu, &dc); ++ translator_loop(&sw64_trans_ops, &dc.base, cpu, tb, max_insns); ++} +diff --git a/target/sw64/translate.h b/target/sw64/translate.h +new file mode 100644 +index 0000000000..e93df0815e +--- /dev/null ++++ b/target/sw64/translate.h +@@ -0,0 +1,60 @@ ++#ifndef SW64_TRANSLATE_H ++#define SW64_TRANSLATE_H ++#include "qemu/osdep.h" ++#include "cpu.h" ++#include "sysemu/cpus.h" ++#include "disas/disas.h" ++#include "qemu/host-utils.h" ++#include "exec/exec-all.h" ++#include "exec/cpu_ldst.h" ++#include "tcg/tcg-op.h" ++#include "exec/helper-proto.h" ++#include "exec/helper-gen.h" ++#include "trace-tcg.h" ++#include "exec/translator.h" ++#include "exec/log.h" ++ ++#define DISAS_PC_UPDATED_NOCHAIN DISAS_TARGET_0 ++#define DISAS_PC_UPDATED DISAS_TARGET_1 ++#define DISAS_PC_STALE DISAS_TARGET_2 ++#define DISAS_PC_UPDATED_T DISAS_TOO_MANY ++ ++typedef struct DisasContext DisasContext; ++struct DisasContext { ++ DisasContextBase base; ++ ++ uint32_t tbflags; ++ ++ /* The set of registers active in the current context. */ ++ TCGv *ir; ++ ++ /* Accel: Temporaries for $31 and $f31 as source and destination. */ ++ TCGv zero; ++ int mem_idx; ++ CPUSW64State *env; ++ DisasJumpType (*translate_one)(DisasContextBase *dcbase, uint32_t insn, ++ CPUState *cpu); ++}; ++ ++extern TCGv cpu_pc; ++extern TCGv cpu_std_ir[31]; ++extern TCGv cpu_fr[128]; ++extern TCGv cpu_lock_addr; ++extern TCGv cpu_lock_flag; ++extern TCGv cpu_lock_success; ++#ifdef SW64_FIXLOCK ++extern TCGv cpu_lock_value; ++#endif ++#ifndef CONFIG_USER_ONLY ++extern TCGv cpu_hm_ir[31]; ++#endif ++ ++DisasJumpType translate_one(DisasContextBase *dcbase, uint32_t insn, ++ CPUState *cpu); ++DisasJumpType th1_translate_one(DisasContextBase *dcbase, uint32_t insn, ++ CPUState *cpu); ++bool use_exit_tb(DisasContext *ctx); ++bool use_goto_tb(DisasContext *ctx, uint64_t dest); ++void insn_profile(DisasContext *ctx, uint32_t insn); ++extern void gen_fold_mzero(TCGCond cond, TCGv dest, TCGv src); ++#endif +diff --git a/tcg/sw64/tcg-target-con-set.h b/tcg/sw64/tcg-target-con-set.h +new file mode 100755 +index 0000000000..71fdfdcbef +--- /dev/null ++++ b/tcg/sw64/tcg-target-con-set.h +@@ -0,0 +1,39 @@ ++/* SPDX-License-Identifier: GPL-2.0-or-later */ ++/* ++ * Define SW_64 target-specific constraint sets. ++ * Copyright (c) 2021 Linaro ++ */ ++ ++/* ++ * C_On_Im(...) defines a constraint set with outputs and inputs. ++ * Each operand should be a sequence of constraint letters as defined by ++ * tcg-target-con-str.h; the constraint combination is inclusive or. ++ */ ++C_O0_I1(r) ++C_O0_I2(lZ, l) ++C_O0_I2(r, rA) ++C_O0_I2(rZ, r) ++C_O0_I2(w, r) ++C_O1_I1(r, l) ++C_O1_I1(r, r) ++C_O1_I1(w, r) ++C_O1_I1(w, w) ++C_O1_I1(w, wr) ++C_O1_I2(r, 0, rZ) ++C_O1_I2(r, r, r) ++C_O1_I2(r, r, rA) ++C_O1_I2(r, r, rAL) ++C_O1_I2(r, r, ri) ++C_O1_I2(r, r, rL) ++C_O1_I2(r, rZ, rZ) ++C_O1_I2(w, 0, w) ++C_O1_I2(w, w, w) ++C_O1_I2(w, w, wN) ++C_O1_I2(w, w, wO) ++C_O1_I2(w, w, wZ) ++C_O1_I3(w, w, w, w) ++C_O1_I4(r, r, rA, rZ, rZ) ++C_O2_I4(r, r, rZ, rZ, rA, rMZ) ++C_O1_I4(r, r, rU, rZ, rZ) ++C_O0_I2(r, rU) ++C_O1_I2(r, r, rU) +diff --git a/tcg/sw64/tcg-target-con-str.h b/tcg/sw64/tcg-target-con-str.h +new file mode 100755 +index 0000000000..47edb3837b +--- /dev/null ++++ b/tcg/sw64/tcg-target-con-str.h +@@ -0,0 +1,28 @@ ++/* SPDX-License-Identifier: GPL-2.0-or-later */ ++/* ++ * Define sw_64 target-specific operand constraints. ++ * Copyright (c) 2021 Linaro ++ */ ++ ++/* ++ * Define constraint letters for register sets: ++ * REGS(letter, register_mask) ++ */ ++REGS('r', ALL_GENERAL_REGS) ++REGS('l', ALL_QLDST_REGS) ++REGS('w', ALL_VECTOR_REGS) ++ ++/* ++ * Define constraint letters for constants: ++ * CONST(letter, TCG_CT_CONST_* bit set) ++ */ ++ ++CONST('Z', TCG_CT_CONST_ZERO) ++CONST('A', TCG_CT_CONST_LONG) ++CONST('M', TCG_CT_CONST_MONE) ++CONST('O', TCG_CT_CONST_ORRI) ++CONST('W', TCG_CT_CONST_WORD) ++CONST('L', TCG_CT_CONST_LONG) ++CONST('U', TCG_CT_CONST_U8) ++CONST('S', TCG_CT_CONST_S8) ++ +diff --git a/tcg/sw64/tcg-target.c.inc b/tcg/sw64/tcg-target.c.inc +new file mode 100755 +index 0000000000..982f159e23 +--- /dev/null ++++ b/tcg/sw64/tcg-target.c.inc +@@ -0,0 +1,2109 @@ ++/* ++ * Initial TCG Implementation for sw_64 ++ * ++ */ ++ ++#include "../tcg-pool.c.inc" ++#include "qemu/bitops.h" ++ ++/* We're going to re-use TCGType in setting of the SF bit, which controls ++ the size of the operation performed. If we know the values match, it ++ makes things much cleaner. */ ++QEMU_BUILD_BUG_ON(TCG_TYPE_I32 != 0 || TCG_TYPE_I64 != 1); ++static const tcg_insn_unit *tb_ret_addr; ++ ++#ifdef CONFIG_DEBUG_TCG ++static const char * const tcg_target_reg_names[TCG_TARGET_NB_REGS] = { ++ "X0", "X1", "X2", "X3", "X4", "X5", "X6", "X7", ++ "X8", "X9", "X10", "X11", "X12", "X13", "X14", "fp", ++ "X16", "X17", "X18", "X19", "X20", "X21", "X22", "X23", ++ "X24", "X25", "X26", "X27", "X28", "X29", "Xsp", "X31", ++ ++ "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", ++ "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", ++ "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23", ++ "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31", ++}; ++#endif /* CONFIG_DEBUG_TCG */ ++ ++static const int tcg_target_reg_alloc_order[] = { ++ /* TCG_REG_X9 qemu saved for AREG0*/ ++ TCG_REG_X10, TCG_REG_X11, TCG_REG_X12, TCG_REG_X13, TCG_REG_X14, ++ ++ TCG_REG_X0, TCG_REG_X1, TCG_REG_X2, TCG_REG_X3, TCG_REG_X4, ++ TCG_REG_X5, TCG_REG_X6, TCG_REG_X7, TCG_REG_X8, ++ ++ TCG_REG_X22, TCG_REG_X23, TCG_REG_X24, /*TCG_REG_X25, TCG_REG_X26, TCG_REG_X27, */ ++ ++ /* TCG_REG_SP=TCG_REG_X15 saved for system*/ ++ TCG_REG_X16, TCG_REG_X17, TCG_REG_X18, TCG_REG_X19, TCG_REG_X20, TCG_REG_X21, TCG_REG_X28, /* TCG_REG_X29, TCG_REG_X30, TCG_REG_X31 */ ++ ++ /* TCG_REG_TMP=TCG_REG_X27 reserved as temporary register */ ++ /* TCG_REG_TMP2=TCG_REG_X25 reserved as temporary register */ ++ /* TCG_REG_RA=TCG_REG_X26 reserved as temporary */ ++ /* TCG_REG_GP=TCG_REG_X29 gp saved for system*/ ++ /* TCG_REG_SP=TCG_REG_X30 sp saved for system*/ ++ /* TCG_REG_ZERO=TCG_REG_X31 zero saved for system*/ ++ ++ TCG_REG_F2, TCG_REG_F3, TCG_REG_F4, TCG_REG_F5, TCG_REG_F6, TCG_REG_F7, TCG_REG_F8, TCG_REG_F9, /* f2-f9 saved registers */ ++ /* TCG_VEC_TMP=TCG_REG_F10, TCG_VEC_TMP2=TCG_REG_F11, are saved as temporary */ ++ TCG_REG_F12, TCG_REG_F13, TCG_REG_F14, TCG_REG_F15, /* f10-f15 temporary registers */ ++ ++ TCG_REG_F22, TCG_REG_F23, TCG_REG_F24, TCG_REG_F25, TCG_REG_F26, TCG_REG_F27, TCG_REG_F28, TCG_REG_F29, TCG_REG_F30, /* f22-f30 temporary registers */ ++ /* TCG_REG_F31, zero saved for system */ ++ ++ TCG_REG_F16, TCG_REG_F17, TCG_REG_F18, TCG_REG_F19, TCG_REG_F20, TCG_REG_F21, /* input args */ ++ ++ TCG_REG_F0, TCG_REG_F1, /*output args */ ++}; ++ ++static const int tcg_target_call_iarg_regs[6] = { ++ TCG_REG_X16, TCG_REG_X17, TCG_REG_X18, TCG_REG_X19, TCG_REG_X20, TCG_REG_X21, ++}; ++static const int tcg_target_call_oarg_regs[1] = { ++ TCG_REG_X0, ++}; ++ ++#define TCG_REG_TMP TCG_REG_X27 ++#define TCG_REG_TMP2 TCG_REG_X25 ++#define TCG_FLOAT_TMP TCG_REG_F10 ++#define TCG_FLOAT_TMP2 TCG_REG_F11 ++ ++#define ALL_GENERAL_REGS 0xffffffffu ++#define ALL_QLDST_REGS ALL_GENERAL_REGS ++#define PUSH_SIZE ((15-9+1+1) * 8) ++#define FRAME_SIZE \ ++ ((PUSH_SIZE \ ++ + TCG_STATIC_CALL_ARGS_SIZE \ ++ + CPU_TEMP_BUF_NLONGS * sizeof(long) \ ++ + TCG_TARGET_STACK_ALIGN - 1) \ ++ & ~(TCG_TARGET_STACK_ALIGN - 1)) ++ ++/* We encode the format of the insn into the beginning of the name, so that ++ we can have the preprocessor help "typecheck" the insn vs the output ++ function. We don't have nice names for the formats, so we use the section ++ number of the architecture reference manual in which the instruction ++ group is described. */ ++#define OPC_OP(x) ((x & 0x3f) << 26) ++#define OPC_FUNC(x) ((x & 0xff) << 5) ++#define OPC_FUNC_COMPLEX(x) ((x & 0xff) << 10) ++typedef enum { ++ OPC_NOP =0X43ff075f, ++ OPC_SYS_CALL =OPC_OP(0x00), ++ OPC_CALL =OPC_OP(0x01), ++ OPC_RET =OPC_OP(0x02), ++ OPC_JMP =OPC_OP(0x03), ++ OPC_BR =OPC_OP(0x04), ++ OPC_BSR =OPC_OP(0x05), ++ OPC_PRI_RET =OPC_OP(0x07), ++ OPC_LDWE =OPC_OP(0x09), ++ OPC_LDSE =OPC_OP(0x0A), ++ OPC_LDDE =OPC_OP(0x0B), ++ OPC_VLDS =OPC_OP(0x0C), ++ OPC_VLDD =OPC_OP(0x0D), ++ OPC_VSTS =OPC_OP(0x0E), ++ OPC_VSTD =OPC_OP(0x0F), ++ ++ OPC_LDBU =OPC_OP(0x20), ++ OPC_LDHU =OPC_OP(0x21), ++ OPC_LDW =OPC_OP(0x22), ++ OPC_LDL =OPC_OP(0x23), ++ OPC_LDL_U =OPC_OP(0x24), ++ OPC_FLDS =OPC_OP(0X26), ++ OPC_PRI_LD =OPC_OP(0x25), ++ OPC_FLDD =OPC_OP(0X27), ++ OPC_STB =OPC_OP(0X28), ++ OPC_STH =OPC_OP(0x29), ++ OPC_STW =OPC_OP(0x2a), ++ OPC_STL =OPC_OP(0x2B), ++ OPC_STL_U =OPC_OP(0x2C), ++ OPC_PRI_ST =OPC_OP(0x2D), ++ OPC_FSTS =OPC_OP(0x2E), ++ OPC_FSTD =OPC_OP(0x2F), ++ ++ OPC_BEQ =OPC_OP(0x30), ++ OPC_BNE =OPC_OP(0x31), ++ OPC_BLT =OPC_OP(0x32), ++ OPC_BLE =OPC_OP(0x33), ++ OPC_BGT =OPC_OP(0x34), ++ OPC_BGE =OPC_OP(0x35), ++ OPC_BLBC =OPC_OP(0x36), ++ OPC_BLBS =OPC_OP(0x37), ++ ++ OPC_FBEQ =OPC_OP(0x38), ++ OPC_FBNE =OPC_OP(0x39), ++ OPC_FBLT =OPC_OP(0x3A), ++ OPC_FBLE =OPC_OP(0x3B), ++ OPC_FBGT =OPC_OP(0x3C), ++ OPC_FBGE =OPC_OP(0x3D), ++ OPC_LDI =OPC_OP(0x3E), ++ OPC_LDIH =OPC_OP(0x3F), ++ ++ OPC_ADDW =(OPC_OP(0x10) | OPC_FUNC(0x0)), ++ OPC_ADDW_I =(OPC_OP(0x12) | OPC_FUNC(0x0)), ++ OPC_SUBW =(OPC_OP(0x10) | OPC_FUNC(0x1)), ++ OPC_SUBW_I =(OPC_OP(0x12) | OPC_FUNC(0x1)), ++ OPC_S4ADDW =(OPC_OP(0x10) | OPC_FUNC(0x02)), ++ OPC_S4ADDW_I =(OPC_OP(0x12) | OPC_FUNC(0x02)), ++ OPC_S4SUBW =(OPC_OP(0x10) | OPC_FUNC(0x03)), ++ OPC_S4SUBW_I =(OPC_OP(0x12) | OPC_FUNC(0x03)), ++ ++ OPC_S8ADDW =(OPC_OP(0x10) | OPC_FUNC(0x04)), ++ OPC_S8ADDW_I =(OPC_OP(0x12) | OPC_FUNC(0x04)), ++ OPC_S8SUBW =(OPC_OP(0x10) | OPC_FUNC(0x05)), ++ OPC_S8SUBW_I =(OPC_OP(0x12) | OPC_FUNC(0x05)), ++ ++ OPC_ADDL =(OPC_OP(0x10) | OPC_FUNC(0x8)), ++ OPC_ADDL_I =(OPC_OP(0x12) | OPC_FUNC(0x8)), ++ OPC_SUBL =(OPC_OP(0x10) | OPC_FUNC(0x9)), ++ OPC_SUBL_I =(OPC_OP(0x12) | OPC_FUNC(0x9)), ++ ++ OPC_S4ADDL =(OPC_OP(0x10) | OPC_FUNC(0xA)), ++ OPC_S4ADDL_I =(OPC_OP(0x12) | OPC_FUNC(0xA)), ++ OPC_S4SUBL =(OPC_OP(0x10) | OPC_FUNC(0xB)), ++ OPC_S4SUBL_I =(OPC_OP(0x12) | OPC_FUNC(0xB)), ++ ++ OPC_S8ADDL =(OPC_OP(0x10) | OPC_FUNC(0xC)), ++ OPC_S8ADDL_I =(OPC_OP(0x12) | OPC_FUNC(0xC)), ++ OPC_S8SUBL =(OPC_OP(0x10) | OPC_FUNC(0xD)), ++ OPC_S8SUBL_I =(OPC_OP(0x12) | OPC_FUNC(0xD)), ++ ++ OPC_MULW =(OPC_OP(0x10) | OPC_FUNC(0x10)), ++ OPC_MULW_I =(OPC_OP(0x12) | OPC_FUNC(0x10)), ++ OPC_MULL =(OPC_OP(0x10) | OPC_FUNC(0x18)), ++ OPC_MULL_I =(OPC_OP(0x12) | OPC_FUNC(0x18)), ++ ++ OPC_UMULH =(OPC_OP(0x10) | OPC_FUNC(0x19)), ++ OPC_UMULH_I =(OPC_OP(0x12) | OPC_FUNC(0x19)), ++ ++ OPC_CTPOP =(OPC_OP(0x10) | OPC_FUNC(0x58)), ++ OPC_CTLZ =(OPC_OP(0x10) | OPC_FUNC(0x59)), ++ OPC_CTTZ =(OPC_OP(0x10) | OPC_FUNC(0x5A)), ++ ++ OPC_ZAP =(OPC_OP(0x10) | OPC_FUNC(0x68)), ++ OPC_ZAP_I =(OPC_OP(0x12) | OPC_FUNC(0x68)), ++ OPC_ZAPNOT =(OPC_OP(0x10) | OPC_FUNC(0x69)), ++ OPC_ZAPNOT_I =(OPC_OP(0x12) | OPC_FUNC(0x69)), ++ ++ OPC_SEXTB =(OPC_OP(0x10) | OPC_FUNC(0x6A)), ++ OPC_SEXTB_I =(OPC_OP(0x12) | OPC_FUNC(0x6A)), ++ OPC_SEXTH =(OPC_OP(0x10) | OPC_FUNC(0x6B)), ++ OPC_SEXTH_I =(OPC_OP(0x12) | OPC_FUNC(0x6B)), ++ ++ OPC_CMPEQ =(OPC_OP(0x10) | OPC_FUNC(0x28)), ++ OPC_CMPEQ_I =(OPC_OP(0x12) | OPC_FUNC(0x28)), ++ ++ OPC_CMPLT =(OPC_OP(0x10) | OPC_FUNC(0x29)), ++ OPC_CMPLT_I =(OPC_OP(0x12) | OPC_FUNC(0x29)), ++ OPC_CMPLE =(OPC_OP(0x10) | OPC_FUNC(0x2A)), ++ OPC_CMPLE_I =(OPC_OP(0x12) | OPC_FUNC(0x2A)), ++ ++ OPC_CMPULT =(OPC_OP(0x10) | OPC_FUNC(0x2B)), ++ OPC_CMPULT_I =(OPC_OP(0x12) | OPC_FUNC(0x2B)), ++ OPC_CMPULE =(OPC_OP(0x10) | OPC_FUNC(0x2C)), ++ OPC_CMPULE_I =(OPC_OP(0x12) | OPC_FUNC(0x2C)), ++ ++ OPC_AND =(OPC_OP(0x10) | OPC_FUNC(0x38)), ++ OPC_BIC =(OPC_OP(0x10) | OPC_FUNC(0x39)), ++ OPC_BIS =(OPC_OP(0x10) | OPC_FUNC(0x3A)), ++ OPC_ORNOT =(OPC_OP(0x10) | OPC_FUNC(0x3B)), ++ OPC_XOR =(OPC_OP(0x10) | OPC_FUNC(0x3C)), ++ OPC_EQV =(OPC_OP(0x10) | OPC_FUNC(0x3D)), ++ ++ OPC_AND_I =(OPC_OP(0x12) | OPC_FUNC(0x38)), ++ OPC_BIC_I =(OPC_OP(0x12) | OPC_FUNC(0x39)), ++ OPC_BIS_I =(OPC_OP(0x12) | OPC_FUNC(0x3A)), ++ OPC_ORNOT_I =(OPC_OP(0x12) | OPC_FUNC(0x3B)), ++ OPC_XOR_I =(OPC_OP(0x12) | OPC_FUNC(0x3C)), ++ OPC_EQV_I =(OPC_OP(0x12) | OPC_FUNC(0x3D)), ++ ++ OPC_SLL =(OPC_OP(0x10) | OPC_FUNC(0x48)), ++ OPC_SRL =(OPC_OP(0x10) | OPC_FUNC(0x49)), ++ OPC_SRA =(OPC_OP(0x10) | OPC_FUNC(0x4A)), ++ OPC_SLL_I =(OPC_OP(0x12) | OPC_FUNC(0x48)), ++ OPC_SRL_I =(OPC_OP(0x12) | OPC_FUNC(0x49)), ++ OPC_SRA_I =(OPC_OP(0x12) | OPC_FUNC(0x4A)), ++ ++ OPC_SELEQ =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x00)), ++ OPC_SELGE =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x01)), ++ OPC_SELGT =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x02)), ++ OPC_SELLE =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x03)), ++ OPC_SELLT =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x04)), ++ OPC_SELNE =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x05)), ++ OPC_SELLBC =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x06)), ++ OPC_SELLBS =(OPC_OP(0x11) | OPC_FUNC_COMPLEX(0x07)), ++ OPC_SELEQ_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x00)), ++ OPC_SELGE_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x01)), ++ OPC_SELGT_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x02)), ++ OPC_SELLE_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x03)), ++ OPC_SELLT_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x04)), ++ OPC_SELNE_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x05)), ++ OPC_SELLBC_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x06)), ++ OPC_SELLBS_I =(OPC_OP(0x13) | OPC_FUNC_COMPLEX(0x07)), ++ ++ OPC_INS0B =(OPC_OP(0x10) | OPC_FUNC(0x40)), ++ OPC_INS1B =(OPC_OP(0x10) | OPC_FUNC(0x41)), ++ OPC_INS2B =(OPC_OP(0x10) | OPC_FUNC(0x42)), ++ OPC_INS3B =(OPC_OP(0x10) | OPC_FUNC(0x43)), ++ OPC_INS4B =(OPC_OP(0x10) | OPC_FUNC(0x44)), ++ OPC_INS5B =(OPC_OP(0x10) | OPC_FUNC(0x45)), ++ OPC_INS6B =(OPC_OP(0x10) | OPC_FUNC(0x46)), ++ OPC_INS7B =(OPC_OP(0x10) | OPC_FUNC(0x47)), ++ OPC_INS0B_I =(OPC_OP(0x12) | OPC_FUNC(0x40)), ++ OPC_INS1B_I =(OPC_OP(0x12) | OPC_FUNC(0x41)), ++ OPC_INS2B_I =(OPC_OP(0x12) | OPC_FUNC(0x42)), ++ OPC_INS3B_I =(OPC_OP(0x12) | OPC_FUNC(0x43)), ++ OPC_INS4B_I =(OPC_OP(0x12) | OPC_FUNC(0x44)), ++ OPC_INS5B_I =(OPC_OP(0x12) | OPC_FUNC(0x45)), ++ OPC_INS6B_I =(OPC_OP(0x12) | OPC_FUNC(0x46)), ++ OPC_INS7B_I =(OPC_OP(0x12) | OPC_FUNC(0x47)), ++ ++ OPC_EXT0B =(OPC_OP(0x10) | OPC_FUNC(0x50)), ++ OPC_EXT1B =(OPC_OP(0x10) | OPC_FUNC(0x51)), ++ OPC_EXT2B =(OPC_OP(0x10) | OPC_FUNC(0x52)), ++ OPC_EXT3B =(OPC_OP(0x10) | OPC_FUNC(0x53)), ++ OPC_EXT4B =(OPC_OP(0x10) | OPC_FUNC(0x54)), ++ OPC_EXT5B =(OPC_OP(0x10) | OPC_FUNC(0x55)), ++ OPC_EXT6B =(OPC_OP(0x10) | OPC_FUNC(0x56)), ++ OPC_EXT7B =(OPC_OP(0x10) | OPC_FUNC(0x57)), ++ OPC_EXT0B_I =(OPC_OP(0x12) | OPC_FUNC(0x50)), ++ OPC_EXT1B_I =(OPC_OP(0x12) | OPC_FUNC(0x51)), ++ OPC_EXT2B_I =(OPC_OP(0x12) | OPC_FUNC(0x52)), ++ OPC_EXT3B_I =(OPC_OP(0x12) | OPC_FUNC(0x53)), ++ OPC_EXT4B_I =(OPC_OP(0x12) | OPC_FUNC(0x54)), ++ OPC_EXT5B_I =(OPC_OP(0x12) | OPC_FUNC(0x55)), ++ OPC_EXT6B_I =(OPC_OP(0x12) | OPC_FUNC(0x56)), ++ OPC_EXT7B_I =(OPC_OP(0x12) | OPC_FUNC(0x57)), ++ ++ OPC_MASK0B =(OPC_OP(0x10) | OPC_FUNC(0x60)), ++ OPC_MASK1B =(OPC_OP(0x10) | OPC_FUNC(0x61)), ++ OPC_MASK2B =(OPC_OP(0x10) | OPC_FUNC(0x62)), ++ OPC_MASK3B =(OPC_OP(0x10) | OPC_FUNC(0x63)), ++ OPC_MASK4B =(OPC_OP(0x10) | OPC_FUNC(0x64)), ++ OPC_MASK5B =(OPC_OP(0x10) | OPC_FUNC(0x65)), ++ OPC_MASK6B =(OPC_OP(0x10) | OPC_FUNC(0x66)), ++ OPC_MASK7B =(OPC_OP(0x10) | OPC_FUNC(0x67)), ++ OPC_MASK0B_I =(OPC_OP(0x12) | OPC_FUNC(0x60)), ++ OPC_MASK1B_I =(OPC_OP(0x12) | OPC_FUNC(0x61)), ++ OPC_MASK2B_I =(OPC_OP(0x12) | OPC_FUNC(0x62)), ++ OPC_MASK3B_I =(OPC_OP(0x12) | OPC_FUNC(0x63)), ++ OPC_MASK4B_I =(OPC_OP(0x12) | OPC_FUNC(0x64)), ++ OPC_MASK5B_I =(OPC_OP(0x12) | OPC_FUNC(0x65)), ++ OPC_MASK6B_I =(OPC_OP(0x12) | OPC_FUNC(0x66)), ++ OPC_MASK7B_I =(OPC_OP(0x12) | OPC_FUNC(0x67)), ++ ++ OPC_CNPGEB =(OPC_OP(0x10) | OPC_FUNC(0x6C)), ++ OPC_CNPGEB_I =(OPC_OP(0x12) | OPC_FUNC(0x6C)), ++ ++ OPC_MEMB =(OPC_OP(0x06) | OPC_FUNC(0x0)), ++ OPC_RTC =(OPC_OP(0x06) | OPC_FUNC(0x20)), ++ ++ /*float insn*/ ++ OPC_RFPCR = (OPC_OP(0x18) | OPC_FUNC(0x50)), ++ OPC_WFPCR = (OPC_OP(0x18) | OPC_FUNC(0x51)), ++ OPC_SETFPEC0 = (OPC_OP(0x18) | OPC_FUNC(0x54)), ++ OPC_SETFPEC1 = (OPC_OP(0x18) | OPC_FUNC(0x55)), ++ OPC_SETFPEC2 = (OPC_OP(0x18) | OPC_FUNC(0x56)), ++ OPC_SETFPEC3 = (OPC_OP(0x18) | OPC_FUNC(0x57)), ++ ++ ++ OPC_IFMOVS = (OPC_OP(0x18) | OPC_FUNC(0x40)), ++ OPC_IFMOVD = (OPC_OP(0x18) | OPC_FUNC(0x41)), ++ OPC_FIMOVS = (OPC_OP(0x10) | OPC_FUNC(0x70)), ++ OPC_FIMOVD = (OPC_OP(0x10) | OPC_FUNC(0x78)), ++ ++ /*translate S--D*/ ++ /*translate S/D--Long*/ ++ OPC_FCVTSD = (OPC_OP(0x18) | OPC_FUNC(0x20)), ++ OPC_FCVTDS = (OPC_OP(0x18) | OPC_FUNC(0x21)), ++ OPC_FCVTDL_G = (OPC_OP(0x18) | OPC_FUNC(0x22)), ++ OPC_FCVTDL_P = (OPC_OP(0x18) | OPC_FUNC(0x23)), ++ OPC_FCVTDL_Z = (OPC_OP(0x18) | OPC_FUNC(0x24)), ++ OPC_FCVTDL_N = (OPC_OP(0x18) | OPC_FUNC(0x25)), ++ OPC_FCVTDL = (OPC_OP(0x18) | OPC_FUNC(0x27)), ++ OPC_FCVTLS = (OPC_OP(0x18) | OPC_FUNC(0x2D)), ++ OPC_FCVTLD = (OPC_OP(0x18) | OPC_FUNC(0x2F)), ++ ++ ++ OPC_FADDS = (OPC_OP(0x18) | OPC_FUNC(0x00)), ++ OPC_FADDD = (OPC_OP(0x18) | OPC_FUNC(0x01)), ++ OPC_FSUBS = (OPC_OP(0x18) | OPC_FUNC(0x02)), ++ OPC_FSUBD = (OPC_OP(0x18) | OPC_FUNC(0x03)), ++ OPC_FMULS = (OPC_OP(0x18) | OPC_FUNC(0x04)), ++ OPC_FMULD = (OPC_OP(0x18) | OPC_FUNC(0x05)), ++ OPC_FDIVS = (OPC_OP(0x18) | OPC_FUNC(0x06)), ++ OPC_FDIVD = (OPC_OP(0x18) | OPC_FUNC(0x07)), ++ OPC_FSQRTS = (OPC_OP(0x18) | OPC_FUNC(0x08)), ++ OPC_FSQRTD = (OPC_OP(0x18) | OPC_FUNC(0x09)), ++}SW_64Insn; ++ ++static void tcg_out_insn_br(TCGContext *s, SW_64Insn insn, TCGReg rd, intptr_t imm64); ++static void tcg_out_insn_ldst(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, intptr_t imm16); ++static void tcg_out_insn_simpleReg(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, TCGReg rm); ++static void tcg_out_insn_simple(TCGContext *s, SW_64Insn insn_Imm, SW_64Insn insn_Reg, TCGReg rd, TCGReg rn, intptr_t imm64); ++static void tcg_out_insn_simpleImm(TCGContext *s, SW_64Insn insn_Imm, TCGReg rd, TCGReg rn, intptr_t imm64); ++static void tcg_out_insn_bitImm(TCGContext *s, SW_64Insn insn_Imm, TCGReg rd, TCGReg rn, unsigned long imm64); ++static void tcg_out_insn_bit(TCGContext *s, SW_64Insn insn_Imm, SW_64Insn insn_Reg, TCGReg rd, TCGReg rn, unsigned long imm64); ++static void tcg_out_insn_complexReg(TCGContext *s, SW_64Insn insn, TCGReg cond, TCGReg rd, TCGReg rn, TCGReg rm); ++static void tcg_out_movcond(TCGContext *s, TCGCond cond, TCGReg ret,TCGReg a1,TCGReg a2, bool const_b, TCGReg v1, TCGReg v2); ++static bool reloc_pc21(tcg_insn_unit *src_rw, const tcg_insn_unit *target); ++static inline uint32_t tcg_in32(TCGContext *s); ++static void tcg_out_movr(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn); ++static void tcg_out_ldst(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, intptr_t offset, bool sign); ++static void tcg_out_cond_cmp(TCGContext *s, TCGCond cond, TCGReg ret, TCGArg a, TCGArg b, bool const_b); ++static void tcg_out_addsubi(TCGContext *s, int ext, TCGReg rd, TCGReg rn, int64_t aimm); ++static inline void tcg_out_extr(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm, unsigned int m); ++static inline void tcg_out_rotl_Reg(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm); ++static inline void tcg_out_rotr_Reg(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm); ++static inline void tcg_out_rotl_Imm(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, unsigned int m); ++static inline void tcg_out_rotr_Imm(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, unsigned int m); ++static void tcg_out_cltz(TCGContext *s, SW_64Insn opc_clz, TCGType ext, TCGReg rd, TCGReg rn, TCGArg b, bool const_b); ++static inline void tcg_out_bswap16u(TCGContext *s, TCGReg rd, TCGReg rn); ++static inline void tcg_out_bswap16s(TCGContext *s, TCGReg rd, TCGReg rn); ++static inline void tcg_out_bswap32u(TCGContext *s, TCGReg rd, TCGReg rn); ++static inline void tcg_out_bswap32s(TCGContext *s, TCGReg rd, TCGReg rn); ++static inline void tcg_out_bswap64(TCGContext *s, TCGReg rd, TCGReg rn); ++static void tcg_out_qemu_st(TCGContext *s, TCGReg data_reg, TCGReg addr_reg, MemOpIdx oi); ++static void tcg_out_qemu_ld(TCGContext *s, TCGReg data_reg, TCGReg addr_reg, MemOpIdx oi, TCGType ext); ++static void tcg_out_setcond(TCGContext *s, TCGCond cond, TCGReg ret, TCGReg arg1, TCGReg arg2); ++static void tcg_out_extract(TCGContext *s, TCGReg rd, TCGReg rn, int pos, int len); ++static void tcg_out_dep(TCGContext *s, TCGReg rd, TCGReg rn, int pos, int len); ++static void tcg_out_mulsh64(TCGContext *s, TCGReg rd, TCGReg rn, TCGReg rm); ++ ++#define tcg_out_insn_jump tcg_out_insn_ldst ++#define tcg_out_insn_bitReg tcg_out_insn_simpleReg ++ ++static void tcg_target_init(TCGContext *s) ++{ ++ tcg_target_available_regs[TCG_TYPE_I32] = 0xffffffffu; ++ tcg_target_available_regs[TCG_TYPE_I64] = 0xffffffffu; ++ tcg_target_available_regs[TCG_TYPE_V64] = 0xffffffff00000000ull; ++ tcg_target_available_regs[TCG_TYPE_V128] = 0xffffffff00000000ull; ++ tcg_target_call_clobber_regs = -1ull; ++ ++ //sw_64 callee saved x9-x15 ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X9); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X10); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X11); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X12); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X13); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X14); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_X15); ++ ++ //sw_64 callee saved f2~f9 ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F2); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F3); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F4); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F5); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F6); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F7); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F8); ++ tcg_regset_reset_reg(tcg_target_call_clobber_regs, TCG_REG_F9); ++ ++ s->reserved_regs = 0; ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_SP); ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_FP); ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_TMP); //TCG_REG_X27 ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_TMP2); //TCG_REG_X25 ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_RA); //TCG_REG_X26 ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_X29); /*sw_64 platform register */ ++ tcg_regset_set_reg(s->reserved_regs, TCG_FLOAT_TMP); /*sw_64 platform register */ ++ tcg_regset_set_reg(s->reserved_regs, TCG_FLOAT_TMP2); /*sw_64 platform register */ ++} ++ ++ ++#ifndef CONFIG_SOFTMMU ++ #define USE_GUEST_BASE guest_base != 0 ++ #define TCG_REG_GUEST_BASE TCG_REG_X14 ++#endif ++ ++ ++#define zeroExt 0 ++#define sigExt 1 ++ ++ ++static void tcg_target_qemu_prologue(TCGContext *s) ++{ ++ TCGReg r; ++ int ofs; ++ ++ /* allocate space for all saved registers */ ++ /* subl $sp,PUSH_SIZE,$sp */ ++ tcg_out_insn_simple(s, OPC_SUBL_I, OPC_SUBL, TCG_REG_SP, TCG_REG_SP, PUSH_SIZE); ++ ++ /* Push (FP, LR) */ ++ /* stl $fp,0($sp) */ ++ tcg_out_insn_ldst(s, OPC_STL, TCG_REG_FP, TCG_REG_SP, 0); ++ /* stl $26,8($sp) */ ++ tcg_out_insn_ldst(s, OPC_STL, TCG_REG_RA, TCG_REG_SP, 8); ++ ++ ++ /* Set up frame pointer for canonical unwinding. */ ++ /* TCG_REG_FP=TCG_REG_SP */ ++ tcg_out_movr(s, TCG_TYPE_I64, TCG_REG_FP, TCG_REG_SP); ++ ++ /* Store callee-preserved regs x9..x14. */ ++ for (r = TCG_REG_X9; r <= TCG_REG_X14; r += 1){ ++ ofs = (r - TCG_REG_X9 + 2) * 8; ++ tcg_out_insn_ldst(s, OPC_STL, r, TCG_REG_SP, ofs); ++ } ++ ++ /* Make stack space for TCG locals. */ ++ /* subl $sp,FRAME_SIZE-PUSH_SIZE,$sp */ ++ tcg_out_insn_simple(s, OPC_SUBL_I, OPC_SUBL, TCG_REG_SP, TCG_REG_SP, FRAME_SIZE - PUSH_SIZE); ++ ++ /* Inform TCG about how to find TCG locals with register, offset, size. */ ++ tcg_set_frame(s, TCG_REG_SP, TCG_STATIC_CALL_ARGS_SIZE, ++ CPU_TEMP_BUF_NLONGS * sizeof(long)); ++ ++#if !defined(CONFIG_SOFTMMU) ++ if (USE_GUEST_BASE) { ++ tcg_out_movi(s, TCG_TYPE_PTR, TCG_REG_GUEST_BASE, guest_base); ++ tcg_regset_set_reg(s->reserved_regs, TCG_REG_GUEST_BASE); ++ } ++#endif ++ ++ /* TCG_AREG0=tcg_target_call_iarg_regs[0], on sw, we mov $16 to $9 */ ++ tcg_out_mov(s, TCG_TYPE_I64, TCG_AREG0, tcg_target_call_iarg_regs[0]); ++ tcg_out_insn_jump(s, OPC_JMP, TCG_REG_ZERO, tcg_target_call_iarg_regs[1], 0); ++ ++ /* ++ * Return path for goto_ptr. Set return value to 0, a-la exit_tb, ++ * and fall through to the rest of the epilogue. ++ */ ++ tcg_code_gen_epilogue = tcg_splitwx_to_rx(s->code_ptr); ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_X0, 0); ++ ++ /* TB epilogue */ ++ tb_ret_addr = tcg_splitwx_to_rx(s->code_ptr); ++ ++ /* Remove TCG locals stack space. */ ++ /* addl $sp,FRAME_SIZE-PUSH_SIZE,$sp */ ++ tcg_out_insn_simple(s, OPC_ADDL_I, OPC_ADDL, TCG_REG_SP, TCG_REG_SP, FRAME_SIZE - PUSH_SIZE); ++ ++ /* Restore registers x9..x14. */ ++ for (r = TCG_REG_X9; r <= TCG_REG_X14; r += 1) { ++ int ofs = (r - TCG_REG_X9 + 2) * 8; ++ tcg_out_insn_ldst(s, OPC_LDL, r, TCG_REG_SP, ofs); ++ } ++ ++ ++ /* Pop (FP, LR) */ ++ /* ldl $fp,0($sp) */ ++ tcg_out_insn_ldst(s, OPC_LDL, TCG_REG_FP, TCG_REG_SP, 0); ++ /* ldl $26,8($sp) */ ++ tcg_out_insn_ldst(s, OPC_LDL, TCG_REG_RA, TCG_REG_SP, 8); ++ ++ /* restore SP to previous frame. */ ++ /* addl $sp,PUSH_SIZE,$sp */ ++ tcg_out_insn_simple(s, OPC_ADDL_I, OPC_ADDL, TCG_REG_SP, TCG_REG_SP, PUSH_SIZE); ++ ++ tcg_out_insn_jump(s, OPC_RET, TCG_REG_ZERO, TCG_REG_RA, 0); ++} ++ ++static bool tcg_out_mov(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg) ++{ ++ if (ret == arg) { ++ return true; ++ } ++ switch (type) { ++ case TCG_TYPE_I32: ++ case TCG_TYPE_I64: ++ if (ret < 32 && arg < 32) { ++ tcg_out_movr(s, type, ret, arg); ++ break; ++ } else if (ret < 32) { ++ break; ++ } else if (arg < 32) { ++ break; ++ } ++ /* FALLTHRU */ ++ default: ++ g_assert_not_reached(); ++ } ++ return true; ++} ++ ++ ++static TCGConstraintSetIndex tcg_target_op_def(TCGOpcode op) ++{ ++ switch (op) { ++ case INDEX_op_goto_ptr: ++ return C_O0_I1(r); ++ ++ case INDEX_op_ld8u_i32: ++ case INDEX_op_ld8s_i32: ++ case INDEX_op_ld16u_i32: ++ case INDEX_op_ld16s_i32: ++ case INDEX_op_ld_i32: ++ case INDEX_op_ld8u_i64: ++ case INDEX_op_ld8s_i64: ++ case INDEX_op_ld16u_i64: ++ case INDEX_op_ld16s_i64: ++ case INDEX_op_ld32u_i64: ++ case INDEX_op_ld32s_i64: ++ case INDEX_op_ld_i64: ++ case INDEX_op_neg_i32: ++ case INDEX_op_neg_i64: ++ case INDEX_op_not_i32: ++ case INDEX_op_not_i64: ++ case INDEX_op_bswap16_i32: ++ case INDEX_op_bswap32_i32: ++ case INDEX_op_bswap16_i64: ++ case INDEX_op_bswap32_i64: ++ case INDEX_op_bswap64_i64: ++ case INDEX_op_ext8s_i32: ++ case INDEX_op_ext16s_i32: ++ case INDEX_op_ext8u_i32: ++ case INDEX_op_ext16u_i32: ++ case INDEX_op_ext8s_i64: ++ case INDEX_op_ext16s_i64: ++ case INDEX_op_ext32s_i64: ++ case INDEX_op_ext8u_i64: ++ case INDEX_op_ext16u_i64: ++ case INDEX_op_ext32u_i64: ++ case INDEX_op_ext_i32_i64: ++ case INDEX_op_extu_i32_i64: ++ case INDEX_op_extract_i32: ++ case INDEX_op_extract_i64: ++ case INDEX_op_sextract_i32: ++ case INDEX_op_sextract_i64: ++ return C_O1_I1(r, r); ++ ++ case INDEX_op_st8_i32: ++ case INDEX_op_st16_i32: ++ case INDEX_op_st_i32: ++ case INDEX_op_st8_i64: ++ case INDEX_op_st16_i64: ++ case INDEX_op_st32_i64: ++ case INDEX_op_st_i64: ++ return C_O0_I2(rZ, r); ++ ++ case INDEX_op_add_i32: ++ case INDEX_op_add_i64: ++ case INDEX_op_sub_i32: ++ case INDEX_op_sub_i64: ++ return C_O1_I2(r, r, rU);//rA ++ ++ case INDEX_op_setcond_i32: ++ case INDEX_op_setcond_i64: ++ return C_O1_I2(r, r, rU);//compare,rA ++ ++ case INDEX_op_mul_i32: ++ case INDEX_op_mul_i64: ++ case INDEX_op_div_i32: ++ case INDEX_op_div_i64: ++ case INDEX_op_divu_i32: ++ case INDEX_op_divu_i64: ++ case INDEX_op_rem_i32: ++ case INDEX_op_rem_i64: ++ case INDEX_op_remu_i32: ++ case INDEX_op_remu_i64: ++ case INDEX_op_muluh_i64: ++ case INDEX_op_mulsh_i64: ++ return C_O1_I2(r, r, r); ++ ++ case INDEX_op_and_i32: ++ case INDEX_op_and_i64: ++ case INDEX_op_or_i32: ++ case INDEX_op_or_i64: ++ case INDEX_op_xor_i32: ++ case INDEX_op_xor_i64: ++ case INDEX_op_andc_i32: ++ case INDEX_op_andc_i64: ++ case INDEX_op_orc_i32: ++ case INDEX_op_orc_i64: ++ case INDEX_op_eqv_i32: ++ case INDEX_op_eqv_i64: ++ return C_O1_I2(r, r, rU);//rL ++ ++ case INDEX_op_shl_i32: ++ case INDEX_op_shr_i32: ++ case INDEX_op_sar_i32: ++ case INDEX_op_rotl_i32: ++ case INDEX_op_rotr_i32: ++ case INDEX_op_shl_i64: ++ case INDEX_op_shr_i64: ++ case INDEX_op_sar_i64: ++ case INDEX_op_rotl_i64: ++ case INDEX_op_rotr_i64: ++ return C_O1_I2(r, r, ri); ++ ++ case INDEX_op_clz_i32: ++ case INDEX_op_clz_i64: ++ return C_O1_I2(r, r, r); //rAL ++ ++ case INDEX_op_ctz_i32: ++ case INDEX_op_ctz_i64: ++ return C_O1_I2(r, r, r);//rAL ++ ++ case INDEX_op_brcond_i32: ++ case INDEX_op_brcond_i64: ++ return C_O0_I2(r, rU);//rA ++ ++ case INDEX_op_movcond_i32: ++ case INDEX_op_movcond_i64: ++ return C_O1_I4(r, r, rU, rZ, rZ);//rA->rU ++ ++ case INDEX_op_qemu_ld_i32: ++ case INDEX_op_qemu_ld_i64: ++ return C_O1_I1(r, l); ++ ++ case INDEX_op_qemu_st_i32: ++ case INDEX_op_qemu_st_i64: ++ return C_O0_I2(lZ, l); ++ ++ case INDEX_op_deposit_i32: ++ case INDEX_op_deposit_i64: ++ return C_O1_I2(r, 0, rZ); ++ ++ case INDEX_op_extract2_i32: ++ case INDEX_op_extract2_i64: ++ return C_O1_I2(r, rZ, rZ); ++ ++ case INDEX_op_add2_i32: ++ case INDEX_op_add2_i64: ++ case INDEX_op_sub2_i32: ++ case INDEX_op_sub2_i64: ++ return C_O2_I4(r, r, rZ, rZ, rA, rMZ); ++ ++ case INDEX_op_add_vec: ++ case INDEX_op_sub_vec: ++ case INDEX_op_mul_vec: ++ case INDEX_op_xor_vec: ++ case INDEX_op_ssadd_vec: ++ case INDEX_op_sssub_vec: ++ case INDEX_op_usadd_vec: ++ case INDEX_op_ussub_vec: ++ case INDEX_op_smax_vec: ++ case INDEX_op_smin_vec: ++ case INDEX_op_umax_vec: ++ case INDEX_op_umin_vec: ++ case INDEX_op_shlv_vec: ++ case INDEX_op_shrv_vec: ++ case INDEX_op_sarv_vec: ++ return C_O1_I2(w, w, w); ++ case INDEX_op_not_vec: ++ case INDEX_op_neg_vec: ++ case INDEX_op_abs_vec: ++ case INDEX_op_shli_vec: ++ case INDEX_op_shri_vec: ++ case INDEX_op_sari_vec: ++ return C_O1_I1(w, w); ++ case INDEX_op_ld_vec: ++ case INDEX_op_dupm_vec: ++ return C_O1_I1(w, r); ++ case INDEX_op_st_vec: ++ return C_O0_I2(w, r); ++ case INDEX_op_dup_vec: ++ return C_O1_I1(w, wr); ++ case INDEX_op_or_vec: ++ case INDEX_op_andc_vec: ++ return C_O1_I2(w, w, wO); ++ case INDEX_op_and_vec: ++ case INDEX_op_orc_vec: ++ return C_O1_I2(w, w, wN); ++ case INDEX_op_cmp_vec: ++ return C_O1_I2(w, w, wZ); ++ case INDEX_op_bitsel_vec: ++ return C_O1_I3(w, w, w, w); ++ ++ default: ++ g_assert_not_reached(); ++ } ++} ++ ++ ++static void tcg_out_nop_fill(tcg_insn_unit *p, int count) ++{ ++ int i; ++ for (i = 0; i < count; ++i) { ++ p[i] = OPC_NOP; ++ } ++} ++ ++/* SW instruction format of syscall ++ * insn = opcode[31,26]:Function[25,0], ++ */ ++ ++/* SW instruction format of br(alias jump) ++ * insn = opcode[31,26]:Rd[25,21]:disp[20,0], ++ */ ++static void tcg_out_insn_br(TCGContext *s, SW_64Insn insn, TCGReg rd, intptr_t imm64) ++{ ++ tcg_debug_assert(imm64 <= 0xfffff && imm64 >= -0x100000); ++ tcg_out32(s, insn | (rd & 0x1f) << 21 | (imm64 & 0x1fffff)); ++} ++ ++ ++/* SW instruction format of (load and store) ++ * insn = opcode[31,26]:rd[25,21]:rn[20,16]:disp[15,0] ++ */ ++static void tcg_out_insn_ldst(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, intptr_t imm16) ++{ ++ tcg_debug_assert(imm16 <= 0x7fff && imm16 >= -0x8000); ++ tcg_out32(s, insn | (rd & 0x1f) << 21 | (rn & 0x1f) << 16 | (imm16 & 0xffff)); ++} ++ ++ ++/* SW instruction format of simple operator for Register ++ * insn = opcode[31,26]:rn(ra)[25,21]:rn(rb)[20,16]:Zeors[15,13]:function[12,5]:rd(rc)[4,0] ++ */ ++static void tcg_out_insn_simpleReg(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, TCGReg rm) ++{ ++ tcg_out32(s, insn | (rn & 0x1f) << 21 | (rm & 0x1f) << 16 | (rd & 0x1f)); ++} ++ ++/* SW instruction format of simple operator for imm ++ * insn = opcode[31,26]:rn(ra)[25,21]:disp[20,13]:function[12,5]:rd(rc)[4,0] ++ */ ++static void tcg_out_insn_simple(TCGContext *s, SW_64Insn insn_Imm, SW_64Insn insn_Reg, TCGReg rd, TCGReg rn, intptr_t imm64) ++{ ++ if(imm64 <= 0x7f && imm64 >= -0x80) { ++ tcg_out32(s, insn_Imm | (rn & 0x1f) << 21 | (imm64 & 0xff) << 13 | (rd & 0x1f)); ++ } ++ else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, imm64); ++ tcg_out_insn_simpleReg(s, insn_Reg, rd, rn, TCG_REG_TMP); ++ } ++} ++ ++ ++static void tcg_out_insn_simpleImm(TCGContext *s, SW_64Insn insn_Imm, TCGReg rd, TCGReg rn, intptr_t imm64) ++{ ++ tcg_debug_assert(imm64 <= 0x7f && imm64 >= -0x80); ++ tcg_out32(s, insn_Imm | (rn & 0x1f) << 21 | (imm64 & 0xff) << 13 | (rd & 0x1f)); ++ ++} ++ ++static void tcg_out_insn_bitImm(TCGContext *s, SW_64Insn insn_Imm, TCGReg rd, TCGReg rn, unsigned long imm64) ++{ ++ tcg_debug_assert(imm64 <= 255); ++ tcg_out32(s, insn_Imm | (rn & 0x1f) << 21 | (imm64 & 0xff) << 13 | (rd & 0x1f)); ++} ++/* sw bit operation: and bis etc */ ++static void tcg_out_insn_bit(TCGContext *s, SW_64Insn insn_Imm, SW_64Insn insn_Reg, TCGReg rd, TCGReg rn, unsigned long imm64) ++{ ++ if (imm64 <= 255) { ++ tcg_out32(s, insn_Imm | (rn & 0x1f) << 21 | (imm64 & 0xff) << 13 | (rd & 0x1f)); ++ } ++ else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, imm64); ++ tcg_out_insn_bitReg(s, insn_Reg, rd, rn, TCG_REG_TMP); ++ } ++} ++ ++/* SW instruction format of complex operator ++ * insn = opcode[31,26]:rd[25,21]:rn[20,16],function[15,10]:rm[9,5]:rx[4,0] ++ */ ++static void tcg_out_insn_complexReg(TCGContext *s, SW_64Insn insn, TCGReg cond, TCGReg rd, TCGReg rn, TCGReg rm) ++{ ++ tcg_out32(s, insn | (cond & 0x1f) << 21 | (rn & 0x1f) << 16 | (rm & 0x1f) << 5 | (rd & 0x1f)); ++} ++ ++static bool reloc_pc21(tcg_insn_unit *src_rw, const tcg_insn_unit *target) ++{ ++ const tcg_insn_unit *src_rx = tcg_splitwx_to_rx(src_rw); ++ ptrdiff_t offset = target - (src_rx + 1) ; ++ ++ if (offset == sextract64(offset, 0, 21)) { ++ /* read instruction, mask away previous PC_REL21 parameter contents, ++ set the proper offset, then write back the instruction. */ ++ *src_rw = deposit32(*src_rw, 0, 21, offset); ++ return true; ++ } ++ return false; ++} ++ ++/* sw*/ ++static bool patch_reloc(tcg_insn_unit *code_ptr, int type, intptr_t value, intptr_t addend) ++{ ++ tcg_debug_assert(addend == 0); ++ switch (type) { ++ case R_SW_64_BRADDR: ++ return reloc_pc21(code_ptr, (const tcg_insn_unit *)value); ++ default: ++ g_assert_not_reached(); ++ } ++} ++ ++static inline uint32_t tcg_in32(TCGContext *s) ++{ ++ uint32_t v = *(uint32_t *)s->code_ptr; ++ return v; ++} ++ ++/*SW Register to register move using ADDL*/ ++static void tcg_out_movr(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn) ++{ ++ tcg_out_insn_simpleReg(s, OPC_BIS, rd, rn, TCG_REG_ZERO); ++ if (ext == TCG_TYPE_I32){ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, rd, rd, 0xf); ++ } ++} ++ ++/*sw ++ *put imm into rd ++ */ ++static void tcg_out_movi(TCGContext *s, TCGType type, TCGReg rd, tcg_target_long orig) ++{ ++ long l0, l1, l2=0, l3=0, extra=0; ++ tcg_target_long val = orig; ++ TCGReg rs = TCG_REG_ZERO; ++ ++ if (type == TCG_TYPE_I32) ++ val = (int32_t)val; ++ ++ l0 = (int16_t)val; ++ val = (val - l0) >> 16; ++ l1 = (int16_t)val; ++ ++ if (orig >> 31 == -1 || orig >> 31 == 0) { ++ if (l1 < 0 && orig >= 0) { ++ extra = 0x4000; ++ l1 = (int16_t)(val - 0x4000); ++ } ++ } else { ++ val = (val - l1) >> 16; ++ l2 = (int16_t)val; ++ val = (val - l2) >> 16; ++ l3 = (int16_t)val; ++ ++ if (l3) { ++ tcg_out_insn_ldst(s, OPC_LDIH, rd, rs, l3); ++ rs = rd; ++ } ++ if (l2) { ++ tcg_out_insn_ldst(s, OPC_LDI, rd, rs, l2); ++ rs = rd; ++ } ++ if (l3 || l2) ++ tcg_out_insn_simpleImm(s, OPC_SLL_I, rd, rd, 32); ++ } ++ ++ if (l1) { ++ tcg_out_insn_ldst(s, OPC_LDIH, rd, rs, l1); ++ rs = rd; ++ } ++ ++ if (extra) { ++ tcg_out_insn_ldst(s, OPC_LDIH, rd, rs, extra); ++ rs = rd; ++ } ++ ++ tcg_out_insn_ldst(s, OPC_LDI, rd, rs, l0); ++} ++ ++ ++/*sw ++* memory <=> Reg in (B H W L) bytes ++*/ ++static void tcg_out_ldst(TCGContext *s, SW_64Insn insn, TCGReg rd, TCGReg rn, intptr_t offset, bool sign) ++{ ++ int16_t lo = offset; ++ if (offset != lo) { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, offset - lo); ++ if (rn != TCG_REG_ZERO) { ++ tcg_out_insn_simpleReg(s, OPC_ADDL, TCG_REG_TMP, TCG_REG_TMP, rn); ++ } ++ tcg_out_insn_ldst(s, insn, rd, TCG_REG_TMP, lo); ++ } ++ else { ++ tcg_out_insn_ldst(s, insn, rd, rn, lo); ++ } ++ ++ switch (insn) { ++ case OPC_LDBU: ++ if (sign) ++ tcg_out_insn_simpleReg(s, OPC_SEXTB, rd, TCG_REG_ZERO, rd); //for micro-op:INDEX_op_ld8s_i32/64,set rd[63,8]=1 ++ break; ++ case OPC_LDHU: ++ if (sign) ++ tcg_out_insn_simpleReg(s, OPC_SEXTH, rd, TCG_REG_ZERO, rd); //for micro-op:INDEX_op_ld16s_i32/64,set rd[63,16]=1 ++ break; ++ case OPC_LDW: ++ if (!sign) ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, rd, rd, 0xf); //for micro-op:INDEX_op_ld32u_i32/64,set rd[63,32]=0 ++ break; ++ default: ++ break; ++ } ++} ++ ++/* TCG_REG_TMP stores result_of_condition_compare */ ++static void tcg_out_cond_cmp(TCGContext *s, TCGCond cond, TCGReg ret, TCGArg a, TCGArg b, bool const_b) ++{ ++ if (const_b) { ++ switch(cond) { ++ case TCG_COND_ALWAYS: ++ case TCG_COND_NEVER: ++ break; ++ case TCG_COND_EQ: ++ case TCG_COND_NE: ++ tcg_out_insn_simple(s, OPC_CMPEQ_I, OPC_CMPEQ, ret, a, b); ++ break; ++ case TCG_COND_LT: ++ case TCG_COND_GE: ++ tcg_out_insn_simple(s, OPC_CMPLT_I, OPC_CMPLT, ret, a, b); ++ break; ++ case TCG_COND_LE: ++ case TCG_COND_GT: ++ tcg_out_insn_simple(s, OPC_CMPLE_I, OPC_CMPLE, ret, a, b); ++ break; ++ case TCG_COND_LTU: ++ case TCG_COND_GEU: ++ tcg_out_insn_simple(s, OPC_CMPULT_I, OPC_CMPULT, ret, a, b); ++ break; ++ case TCG_COND_LEU: ++ case TCG_COND_GTU: ++ tcg_out_insn_simple(s, OPC_CMPULE_I, OPC_CMPULE, ret, a, b); ++ break; ++ }//cond ++ }//if (const_b) ++ else { ++ switch(cond) { ++ case TCG_COND_ALWAYS: ++ case TCG_COND_NEVER: ++ break; ++ case TCG_COND_EQ: ++ case TCG_COND_NE: ++ tcg_out_insn_simpleReg(s, OPC_CMPEQ, ret, a, b); ++ break; ++ case TCG_COND_LT: ++ case TCG_COND_GE: ++ tcg_out_insn_simpleReg(s, OPC_CMPLT, ret, a, b); ++ break; ++ case TCG_COND_LE: ++ case TCG_COND_GT: ++ tcg_out_insn_simpleReg(s, OPC_CMPLE, ret, a, b); ++ break; ++ case TCG_COND_LTU: ++ case TCG_COND_GEU: ++ tcg_out_insn_simpleReg(s, OPC_CMPULT, ret, a, b); ++ break; ++ case TCG_COND_LEU: ++ case TCG_COND_GTU: ++ tcg_out_insn_simpleReg(s, OPC_CMPULE, ret, a, b); ++ break; ++ }//cond ++ }//else ++ switch(cond) { ++ case TCG_COND_ALWAYS: ++ case TCG_COND_NEVER: ++ case TCG_COND_EQ: ++ case TCG_COND_LT: ++ case TCG_COND_LE: ++ case TCG_COND_LTU: ++ case TCG_COND_LEU: ++ break; ++ case TCG_COND_NE: ++ case TCG_COND_GE: ++ case TCG_COND_GT: ++ case TCG_COND_GEU: ++ case TCG_COND_GTU: ++ tcg_out_insn_bitImm(s, OPC_XOR_I, ret, ret, 0x1); ++ break; ++ } ++} ++ ++/* sw ++ * step1 tcg_out_cmp() ,"eq" and "ne" in the same case with the same insn; ++ * store compare result by TCG_REG_TMP, for step2; ++ * step2: jump address with compare result. in last "switch" section, we diff qe/ne by different case with different insn. ++ */ ++static void tcg_out_brcond(TCGContext *s, TCGType ext, TCGCond cond, TCGArg a, TCGArg b, bool b_const, TCGLabel *l) ++{ ++ intptr_t offset; ++ bool need_cmp; ++ ++ if (b_const && b == 0 && (cond == TCG_COND_EQ || cond == TCG_COND_NE)) { ++ need_cmp = false; ++ } else { ++ need_cmp = true; ++ tcg_out_cond_cmp(s, cond, TCG_REG_TMP, a, b, b_const); ++ } ++ ++ if (!l->has_value) { ++ tcg_out_reloc(s, s->code_ptr, R_SW_64_BRADDR, l, 0); ++ offset=0; //offset = tcg_in32(s) >> 5; br $31, 0, do not jump here! ++ } else { ++ offset = tcg_pcrel_diff(s, l->u.value_ptr) ; ++ offset = offset >> 2; ++ tcg_debug_assert(offset == sextract64(offset, 0, 21)); ++ } ++ ++ if (need_cmp) { ++ tcg_out_insn_br(s, OPC_BGT, TCG_REG_TMP, offset); //a cond b,jmp ++ } else if (cond == TCG_COND_EQ) { ++ tcg_out_insn_br(s, OPC_BEQ, a, offset); ++ } else { ++ tcg_out_insn_br(s, OPC_BNE, a, offset); ++ } ++} ++ ++/*sw ++ * contact with "tcg-target-con-str.h" ++ */ ++#define TCG_CT_CONST_ZERO 0x100 ++#define TCG_CT_CONST_LONG 0x200 ++#define TCG_CT_CONST_MONE 0x400 ++#define TCG_CT_CONST_ORRI 0x800 ++#define TCG_CT_CONST_WORD 0X1000 ++#define TCG_CT_CONST_U8 0x2000 ++#define TCG_CT_CONST_S8 0X4000 ++ ++#define ALL_GENERAL_REGS 0xffffffffu ++#define ALL_VECTOR_REGS 0xffffffff00000000ull ++ ++ ++#ifdef CONFIG_SOFTMMU ++/*sw #define ALL_QLDST_REGS */ ++#else ++ #define ALL_QLDST_REGS ALL_GENERAL_REGS ++#endif ++ ++/* sw test if a constant matches the constraint */ ++static bool tcg_target_const_match(int64_t val, TCGType type, int ct) ++{ ++ if (ct & TCG_CT_CONST) { ++ return 1; ++ } ++ if (type == TCG_TYPE_I32) { ++ val = (int32_t)val; ++ } ++ if ((ct & TCG_CT_CONST_U8) && 0 <= val && val <= 255) { ++ return 1; ++ } ++ if ((ct & TCG_CT_CONST_LONG)) { ++ return 1; ++ } ++ if ((ct & TCG_CT_CONST_MONE)) { ++ return 1; ++ } ++ if ((ct & TCG_CT_CONST_ORRI)) { ++ return 1; ++ } ++ if ((ct & TCG_CT_CONST_WORD)) { ++ return 1; ++ } ++ if ((ct & TCG_CT_CONST_ZERO) && val == 0) { ++ return 1; ++ } ++ return 0; ++} ++ ++static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg rd, TCGReg rn, intptr_t ofs) ++{ ++ switch (type) { ++ case TCG_TYPE_I32: ++ tcg_out_ldst(s, OPC_LDW, rd, rn, ofs, sigExt); ++ break; ++ case TCG_TYPE_I64: ++ tcg_out_ldst(s, OPC_LDL, rd, rn, ofs, sigExt); ++ break; ++ default: ++ g_assert_not_reached(); ++ } ++} ++ ++static void tcg_out_st(TCGContext *s, TCGType type, TCGReg rd, TCGReg rn, intptr_t ofs) ++{ ++ switch (type) { ++ case TCG_TYPE_I32: ++ tcg_out_insn_ldst(s, OPC_STW, rd, rn, ofs); ++ break; ++ case TCG_TYPE_I64: ++ tcg_out_insn_ldst(s, OPC_STL, rd, rn, ofs); ++ break; ++ default: ++ g_assert_not_reached(); ++ } ++} ++ ++static inline bool tcg_out_sti(TCGContext *s, TCGType type, TCGArg val, TCGReg base, intptr_t ofs) ++{ ++ if (type <= TCG_TYPE_I64 && val == 0) { ++ tcg_out_st(s, type, TCG_REG_ZERO, base, ofs); ++ return true; ++ } ++ return false; ++} ++ ++static void tcg_out_addsubi(TCGContext *s, int ext, TCGReg rd, TCGReg rn, int64_t imm64) ++{ ++ if (imm64 >= 0) { ++ if(0 <=imm64 && imm64 <= 255) { ++ /* we use tcg_out_insn_bitImm because imm64 is between 0~255 */ ++ tcg_out_insn_bitImm(s, OPC_ADDL_I, rd, rn, imm64); ++ }//aimm>0 && aimm == sextract64(aim, 0, 8) ++ else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, imm64); ++ tcg_out_insn_simpleReg(s, OPC_ADDL, rd, rn, TCG_REG_TMP); ++ }//aimm>0 && aimm != sextract64(aim, 0, 8) ++ } else { ++ if(0 < -imm64 && -imm64 <= 255) { ++ /* we use tcg_out_insn_bitImm because -imm64 is between 0~255 */ ++ tcg_out_insn_bitImm(s, OPC_SUBL_I, rd, rn, -imm64); ++ }//aimm<0 && aimm == sextract64(aim, 0, 8) ++ else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, -imm64); ++ tcg_out_insn_simpleReg(s, OPC_SUBL, rd, rn, TCG_REG_TMP); ++ }//aimm<0 && aimm != sextract64(aim, 0, 8) ++ } ++} ++ ++static void tcg_out_goto(TCGContext *s, const tcg_insn_unit *target) ++{ ++ ptrdiff_t offset = tcg_pcrel_diff(s, target) >> 2; ++ tcg_debug_assert(offset == sextract64(offset, 0, 21)); ++ tcg_out_insn_br(s, OPC_BR, TCG_REG_ZERO, offset); ++} ++ ++static void tcg_out_goto_long(TCGContext *s, const tcg_insn_unit *target) ++{ ++ ptrdiff_t offset = tcg_pcrel_diff(s, target) >> 2; ++ if (0 <= offset && offset <= 0x1fffff) { ++ tcg_out_insn_br(s, OPC_BR, TCG_REG_ZERO, offset); ++ } else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, (intptr_t)target); ++ tcg_out_insn_jump(s, OPC_JMP, TCG_REG_ZERO, TCG_REG_TMP, 0); ++ } ++} ++ ++ ++/*sw ++* call subroutine ++*/ ++static void tcg_out_call(TCGContext *s, const tcg_insn_unit *target) ++{ ++ ptrdiff_t offset = tcg_pcrel_diff(s, target) >> 2; ++ if (offset == sextract64(offset, 0, 21)) { ++ tcg_out_insn_br(s, OPC_BSR, TCG_REG_RA, offset); ++ } else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP, (intptr_t)target); ++ tcg_out_insn_jump(s, OPC_CALL, TCG_REG_RA, TCG_REG_TMP, 0); ++ } ++} ++ ++void tb_target_set_jmp_target(uintptr_t tc_ptr, uintptr_t jmp_rx, uintptr_t jmp_rw, uintptr_t addr) ++{ ++ tcg_debug_assert(0); ++ //sw not support ++} ++ ++static inline void tcg_out_goto_label(TCGContext *s, TCGLabel *l) ++{ ++ if (!l->has_value) { ++ tcg_out_reloc(s, s->code_ptr, R_SW_64_BRADDR, l, 0); ++ tcg_out_insn_br(s, OPC_BR, TCG_REG_ZERO, 0); ++ } else { ++ tcg_out_goto(s, l->u.value_ptr); ++ } ++} ++ ++/* sw ++ * resut: rd=rn(64,64-m]:rm(64-m,0] ++ * 1: rn(m,0]--->TCG_REG_TMP(64,64-m] ++ * 2: rm(64,64-m]--->rm(64-m,0] ++ * 3: rd=TCG_REG_TMP(64,64-m]:rm(64-m,0] ++ */ ++static inline void tcg_out_extr(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm, unsigned int m) ++{ ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP, rn, bits - (m & max)); ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP2, rm, (m & max)); ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, TCG_REG_TMP, TCG_REG_TMP2); ++} ++ ++/* sw ++ * loop right shift ++ */ ++static inline void tcg_out_rotr_Imm(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, unsigned int m) ++{ ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP, rn, bits - (m & max)); ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP2, rn, (m & max)); ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, TCG_REG_TMP, TCG_REG_TMP2); ++} ++ ++/* sw loop right shift ++ */ ++static inline void tcg_out_rotr_Reg(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm) ++{ ++ int bits = ext ? 64 : 32; ++ //get TCG_REG_TMP=64-[rm] ++ tcg_out_insn_simpleImm(s, OPC_SUBL_I, TCG_REG_TMP, rm, bits); ++ tcg_out_insn_bitReg(s, OPC_ORNOT, TCG_REG_TMP, TCG_REG_ZERO, TCG_REG_TMP); ++ ++ tcg_out_insn_bitReg(s, OPC_SLL, TCG_REG_TMP2, rn, TCG_REG_TMP); //get rn right part to TCG_REG_TMP ++ tcg_out_insn_bitReg(s, OPC_SRL, TCG_REG_TMP, rn, rm); //get rn left part to TCG_REG_TMP ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, TCG_REG_TMP, TCG_REG_TMP2); ++} ++ ++/* sw ++ * loop left shift ++ */ ++static inline void tcg_out_rotl_Imm(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, unsigned int m) ++{ ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP, rn, bits -(m & max)); ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP2, rn, (m & max)); //get rn left part to TCG_REG_TMP ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, TCG_REG_TMP, TCG_REG_TMP2); //get rn right part to left ++} ++ ++ ++/* sw loop left shift ++ */ ++static inline void tcg_out_rotl_Reg(TCGContext *s, TCGType ext, TCGReg rd, TCGReg rn, TCGReg rm) ++{ ++ int bits = ext ? 64 : 32; ++ tcg_out_insn_simpleImm(s, OPC_SUBL_I, TCG_REG_TMP, rm, bits); //rm = 64-rm ++ tcg_out_insn_bitReg(s, OPC_ORNOT, TCG_REG_TMP, TCG_REG_ZERO, TCG_REG_TMP); ++ ++ tcg_out_insn_bitReg(s, OPC_SRL, TCG_REG_TMP2, rn, TCG_REG_TMP); //get rn left part to TCG_REG_TMP ++ tcg_out_insn_bitReg(s, OPC_SLL, TCG_REG_TMP, rn, rm); //get rn right part to left ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, TCG_REG_TMP, TCG_REG_TMP2); ++} ++ ++ ++ ++static void tcg_out_op(TCGContext *s, TCGOpcode opc, const TCGArg args[TCG_MAX_OP_ARGS], const int const_args[TCG_MAX_OP_ARGS]) ++{ ++ /* 99% of the time, we can signal the use of extension registers ++ by looking to see if the opcode handles 64-bit data. */ ++ TCGType ext = (tcg_op_defs[opc].flags & TCG_OPF_64BIT) != 0; ++ /* Hoist the loads of the most common arguments. */ ++ TCGArg a0 = args[0]; ++ TCGArg a1 = args[1]; ++ TCGArg a2 = args[2]; ++ int c2 = const_args[2]; ++ ++ /* Some operands are defined with "rZ" constraint, a register or ++ the zero register. These need not actually test args[I] == 0. */ ++ #define REG0(I) (const_args[I] ? TCG_REG_ZERO : (TCGReg)args[I]) ++ ++ switch (opc) { ++ case INDEX_op_exit_tb: ++ /* Reuse the zeroing that exists for goto_ptr. */ ++ if (a0 == 0) { ++ tcg_out_goto_long(s, tcg_code_gen_epilogue); ++ } else { ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_X0, a0); ++ tcg_out_goto_long(s, tb_ret_addr); ++ } ++ break; ++ ++ case INDEX_op_goto_tb: ++ if (s->tb_jmp_insn_offset != NULL) { ++ /* TCG_TARGET_HAS_direct_jump */ ++ tcg_debug_assert(0); ++ /* not support here */ ++ } else { ++ /* !TCG_TARGET_HAS_direct_jump */ ++ tcg_debug_assert(s->tb_jmp_target_addr != NULL); ++ tcg_out_ld(s, TCG_TYPE_PTR, TCG_REG_TMP, TCG_REG_ZERO, (uintptr_t)(s->tb_jmp_target_addr + a0)); ++ } ++ tcg_out_insn_jump(s, OPC_JMP, TCG_REG_ZERO, TCG_REG_TMP, 0); ++ set_jmp_reset_offset(s, a0); ++ break; ++ ++ case INDEX_op_goto_ptr: ++ tcg_out_insn_jump(s, OPC_JMP, TCG_REG_ZERO, a0, 0); ++ break; ++ ++ case INDEX_op_br: ++ tcg_out_goto_label(s, arg_label(a0)); ++ break; ++ ++ case INDEX_op_ld8u_i32: ++ case INDEX_op_ld8u_i64: ++ tcg_out_ldst(s, OPC_LDBU, a0, a1, a2, 0); ++ break; ++ case INDEX_op_ld8s_i32: ++ case INDEX_op_ld8s_i64: ++ tcg_out_ldst(s, OPC_LDBU, a0, a1, a2, 1); ++ break; ++ case INDEX_op_ld16u_i32: ++ case INDEX_op_ld16u_i64: ++ tcg_out_ldst(s, OPC_LDHU, a0, a1, a2, 0); ++ break; ++ case INDEX_op_ld16s_i32: ++ case INDEX_op_ld16s_i64: ++ tcg_out_ldst(s, OPC_LDHU, a0, a1, a2, 1); ++ break; ++ case INDEX_op_ld_i32: ++ tcg_out_ldst(s, OPC_LDW, a0, a1, a2, 1); ++ break; ++ case INDEX_op_ld32u_i64: ++ tcg_out_ldst(s, OPC_LDW, a0, a1, a2, 0); ++ break; ++ case INDEX_op_ld32s_i64: ++ tcg_out_ldst(s, OPC_LDW, a0, a1, a2, 1); ++ break; ++ case INDEX_op_ld_i64: ++ tcg_out_ldst(s, OPC_LDL, a0, a1, a2, 1); ++ break; ++ case INDEX_op_st8_i32: ++ case INDEX_op_st8_i64: ++ tcg_out_ldst(s, OPC_STB, a0, a1, a2, 0); ++ break; ++ case INDEX_op_st16_i32: ++ case INDEX_op_st16_i64: ++ tcg_out_ldst(s, OPC_STH, a0, a1, a2, 0); ++ break; ++ case INDEX_op_st_i32: ++ case INDEX_op_st32_i64: ++ tcg_out_ldst(s, OPC_STW, a0, a1, a2, 0); ++ break; ++ case INDEX_op_st_i64: ++ tcg_out_ldst(s, OPC_STL, a0, a1, a2, 0); ++ break; ++ ++ case INDEX_op_add_i32: ++ a2 = (int32_t)a2; ++ if (c2) { ++ tcg_out_addsubi(s, ext, a0, a1, a2); ++ } else { ++ tcg_out_insn_simpleReg(s, OPC_ADDL, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_add_i64: ++ if (c2) { ++ tcg_out_addsubi(s, ext, a0, a1, a2); ++ } else { ++ tcg_out_insn_simpleReg(s, OPC_ADDL, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_sub_i32: ++ a2 = (int32_t)a2; ++ if (c2) { ++ tcg_out_addsubi(s, ext, a0, a1, -a2); ++ } else { ++ tcg_out_insn_simpleReg(s, OPC_SUBL, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_sub_i64: ++ if (c2) { ++ tcg_out_addsubi(s, ext, a0, a1, -a2); ++ } else { ++ tcg_out_insn_simpleReg(s, OPC_SUBL, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_neg_i64: ++ case INDEX_op_neg_i32: ++ tcg_out_insn_bitReg(s, OPC_SUBL, a0, TCG_REG_ZERO, a1); ++ break; ++ ++ case INDEX_op_and_i32: ++ a2 = (int32_t)a2; ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_AND_I, OPC_AND, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_AND, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_and_i64: ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_AND_I, OPC_AND, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_AND, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_andc_i32: ++ a2 = (int32_t)a2; ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_AND_I, OPC_AND, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_BIC, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_andc_i64: ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_AND_I, OPC_AND, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_BIC, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_or_i32: ++ a2 = (int32_t)a2; ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_BIS_I, OPC_BIS, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_BIS, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_or_i64: ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_BIS_I, OPC_BIS, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_BIS, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_orc_i32: ++ a2 = (int32_t)a2; ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_BIS_I, OPC_BIS, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_ORNOT, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_orc_i64: ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_BIS_I, OPC_BIS, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_ORNOT, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_xor_i32: ++ a2 = (int32_t)a2; ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_XOR_I, OPC_XOR, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_XOR, a0, a1, a2); ++ } ++ break; ++ case INDEX_op_xor_i64: ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_XOR_I, OPC_XOR, a0, a1, a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_XOR, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_eqv_i32: ++ a2 = (int32_t)a2; ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_XOR_I, OPC_XOR, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_EQV, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_eqv_i64: ++ tcg_debug_assert(0); ++ if (c2) { ++ tcg_out_insn_bit(s, OPC_XOR_I, OPC_XOR, a0, a1, ~a2); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_EQV, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_not_i64: ++ case INDEX_op_not_i32: ++ tcg_out_insn_bitReg(s, OPC_ORNOT, a0, TCG_REG_ZERO, a1); ++ break; ++ ++ case INDEX_op_mul_i64: ++ case INDEX_op_mul_i32: ++ tcg_out_insn_simpleReg(s, OPC_MULL, a0, a1, a2); ++ break; ++ ++ case INDEX_op_div_i64: /* a0=a1/a2 singed divide*/ ++ case INDEX_op_div_i32: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_divu_i64: /* a0=a1/a2 unsigned divide */ ++ case INDEX_op_divu_i32: ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_rem_i64: /* if a1=17,a2=4, 17/4=4...1, a0=1 */ ++ case INDEX_op_rem_i32: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_remu_i64: ++ case INDEX_op_remu_i32: ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_shl_i64: ++ case INDEX_op_shl_i32: /* sw logical left*/ ++ if (c2) { ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ tcg_out_insn_bitImm(s, OPC_SLL_I, a0, a1, a2&max); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_SLL, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_shr_i64: ++ case INDEX_op_shr_i32: /* sw logical right */ ++ if (c2) { ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ tcg_out_insn_bitImm(s, OPC_SRL_I, a0, a1, a2&max); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_SRL, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_sar_i64: ++ case INDEX_op_sar_i32: /* sw arithmetic right*/ ++ if (c2) { ++ int bits = ext ? 64 : 32; ++ int max = bits - 1; ++ tcg_out_insn_bitImm(s, OPC_SRA_I, a0, a1, a2&max); ++ } else { ++ tcg_out_insn_bitReg(s, OPC_SRA, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_rotr_i64: ++ case INDEX_op_rotr_i32: /* loop shift */ ++ if (c2) {/* loop right shift a2*/ ++ tcg_out_rotr_Imm(s, ext, a0, a1, a2); ++ } else { ++ tcg_out_rotr_Reg(s, ext, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_rotl_i64: ++ case INDEX_op_rotl_i32: /* loop shift */ ++ if (c2) {/* loop left shift a2*/ ++ tcg_out_rotl_Imm(s, ext, a0, a1, a2); ++ } else { ++ tcg_out_rotl_Reg(s, ext, a0, a1, a2); ++ } ++ break; ++ ++ case INDEX_op_clz_i64: /* counting leading zero numbers */ ++ case INDEX_op_clz_i32: ++ tcg_out_cltz(s, OPC_CTLZ, ext, a0, a1, a2, c2); ++ break; ++ case INDEX_op_ctz_i64: /* counting tailing zero numbers */ ++ case INDEX_op_ctz_i32: ++ tcg_out_cltz(s, OPC_CTTZ, ext, a0, a1, a2, c2); ++ break; ++ ++ case INDEX_op_brcond_i32: ++ a1 = (int32_t)a1; ++ tcg_out_brcond(s, ext, a2, a0, a1, const_args[1], arg_label(args[3])); ++ break; ++ ++ case INDEX_op_brcond_i64: ++ tcg_out_brcond(s, ext, a2, a0, a1, const_args[1], arg_label(args[3])); ++ break; ++ ++ case INDEX_op_setcond_i32: ++ a2 = (int32_t)a2; ++ tcg_out_setcond(s, args[3], a0, a1, a2); ++ break; ++ ++ case INDEX_op_setcond_i64: ++ tcg_out_setcond(s, args[3], a0, a1, a2); ++ break; ++ ++ case INDEX_op_movcond_i32: ++ a2 = (int32_t)a2; ++ tcg_out_movcond(s, args[5], a0, a1, a2, c2, REG0(3), REG0(4)); ++ break; ++ ++ /* FALLTHRU */ ++ case INDEX_op_movcond_i64: ++ tcg_out_movcond(s, args[5], a0, a1, a2, c2, REG0(3), REG0(4)); ++ break; ++ ++ case INDEX_op_qemu_ld_i32: ++ case INDEX_op_qemu_ld_i64: ++ tcg_out_qemu_ld(s, a0, a1, a2, ext); ++ break; ++ case INDEX_op_qemu_st_i32: ++ case INDEX_op_qemu_st_i64: ++ tcg_out_qemu_st(s, REG0(0), a1, a2); ++ break; ++ ++ case INDEX_op_bswap64_i64: /* 0x123456789abcdef--->0xefcdab8967452301 */ ++ tcg_debug_assert(0); ++ tcg_out_bswap64(s, a0, a1); ++ break; ++ case INDEX_op_bswap32_i64: /* 0x123456789abcdef--->0x67452301efcdab89 */ ++ tcg_debug_assert(0); ++ tcg_out_bswap32u(s, a0, a1); ++ break; ++ case INDEX_op_bswap32_i32: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_bswap16_i64: /* 0x123456789abcdef--->0x23016745ab89efcd */ ++ case INDEX_op_bswap16_i32: ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_ext8s_i64: ++ case INDEX_op_ext8s_i32: ++ tcg_out_insn_simpleReg(s, OPC_SEXTB, a0, TCG_REG_ZERO, a1); ++ break; ++ case INDEX_op_ext16s_i64: ++ case INDEX_op_ext16s_i32: ++ tcg_out_insn_simpleReg(s, OPC_SEXTH, a0, TCG_REG_ZERO, a1); ++ break; ++ case INDEX_op_ext_i32_i64: ++ case INDEX_op_ext32s_i64: ++ tcg_out_insn_simpleReg(s, OPC_ADDW, a0, TCG_REG_ZERO, a1); ++ break; ++ case INDEX_op_ext8u_i64: ++ case INDEX_op_ext8u_i32: ++ tcg_out_insn_simpleImm(s, OPC_EXT0B_I, a0, a1, 0x0); ++ break; ++ case INDEX_op_ext16u_i64: ++ case INDEX_op_ext16u_i32: ++ tcg_out_insn_simpleImm(s, OPC_EXT1B_I, a0, a1, 0x0); ++ break; ++ case INDEX_op_extu_i32_i64: ++ case INDEX_op_ext32u_i64: ++ tcg_out_movr(s, TCG_TYPE_I32, a0, a1); ++ break; ++ ++ case INDEX_op_deposit_i64: ++ case INDEX_op_deposit_i32: ++ tcg_out_dep(s, a0, a2, args[3], args[4]); ++ break; ++ ++ case INDEX_op_extract_i64: ++ case INDEX_op_extract_i32: ++ tcg_out_extract(s, a0, a1, a2, args[3]); ++ break; ++ ++ case INDEX_op_sextract_i64: ++ case INDEX_op_sextract_i32: ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_extract2_i64: ++ case INDEX_op_extract2_i32: /* extract REG0(2) right args[3] bit to REG0(1) left ,save to a0*/ ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_add2_i32: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_add2_i64: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_sub2_i32: ++ tcg_debug_assert(0); ++ break; ++ case INDEX_op_sub2_i64: ++ tcg_debug_assert(0); ++ break; ++ ++ case INDEX_op_muluh_i64: ++ tcg_out_insn_simpleReg(s, OPC_UMULH, a0, a1, a2); ++ break; ++ case INDEX_op_mulsh_i64: /* sw not support */ ++ tcg_out_mulsh64(s, a0, a1, a2); ++ break; ++ ++ case INDEX_op_mb: ++ break; ++ ++ case INDEX_op_mov_i32: /* Always emitted via tcg_out_mov. */ ++ case INDEX_op_mov_i64: ++ case INDEX_op_call: /* Always emitted via tcg_out_call. */ ++ default: ++ g_assert_not_reached(); ++ } ++ ++#undef REG0 ++} ++ ++ ++ ++/*sw ++* counting heading/tailing zero numbers ++*/ ++static void tcg_out_cltz(TCGContext *s, SW_64Insn opc_clz, TCGType ext, TCGReg rd, ++ TCGReg rn, TCGArg b, bool const_b) ++{ ++ /* cond1. b is a const, and b=64 or b=32 */ ++ if (const_b && b == (ext ? 64 : 32)) { ++ /* count rn zero numbers, and writes to rd */ ++ tcg_out_insn_simpleReg(s, opc_clz, rd, TCG_REG_ZERO, rn); ++ }else { ++ /* TCG_REG_TMP= counting rn heading/tailing zero numbers */ ++ tcg_out_insn_simpleReg(s, opc_clz, TCG_REG_TMP, TCG_REG_ZERO, rn); ++ ++ if (const_b) { ++ if (b == -1) { ++ /* cond2. b is const and b=-1 */ ++ /* if rn != 0 , rd= counting rn heading/tailing zero numbers, else rd = 0xffffffffffffffff*/ ++ tcg_out_insn_bitReg(s, OPC_ORNOT, TCG_REG_TMP2, TCG_REG_ZERO, TCG_REG_ZERO); ++ tcg_out_insn_complexReg(s, OPC_SELNE, rn, rd, TCG_REG_TMP, TCG_REG_TMP2); ++ } ++ else if (b == 0) { ++ /* cond3. b is const and b=0 */ ++ /* if rn != 0 , rd=counting rn heading/tailing zero numbers , else rd = TCG_REG_ZERO */ ++ tcg_out_insn_complexReg(s, OPC_SELNE, rn, rd, TCG_REG_TMP, TCG_REG_ZERO); ++ } else { ++ /* cond4. b is const */ ++ tcg_out_movi(s, TCG_TYPE_I64, TCG_REG_TMP2, b); ++ /* if rn != 0 , rd=counting rn heading/tailing zero numbers , else mov b to rd */ ++ tcg_out_insn_complexReg(s, OPC_SELNE, rn, rd, TCG_REG_TMP, TCG_REG_TMP2); ++ } ++ } ++ else { ++ /* if b is register */ ++ tcg_out_insn_complexReg(s, OPC_SELNE, rn, rd, TCG_REG_TMP, b); ++ } ++ } ++} ++ ++/*sw ++ * unsigned 16bit, ab->ba ++ */ ++static inline void tcg_out_bswap16u(TCGContext *s, TCGReg rd, TCGReg rn) ++{ ++ TCGReg TCG_TMP0 = rn; ++ TCGReg TCG_TMP1 = rd; ++ /*t1=00b0*/ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP1, TCG_TMP0, 8); ++ /*t1=(0000)000a*/ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP0, TCG_TMP0, 8); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP0, TCG_TMP0, 0x1); ++ /*t1=ooba*/ ++ tcg_out_insn_simpleReg(s, OPC_BIS, TCG_TMP1, TCG_TMP1, TCG_TMP0); ++} ++ ++/*sw ++ * signed 16bit, ab->ssba ++ */ ++static inline void tcg_out_bswap16s(TCGContext *s, TCGReg rd, TCGReg rn) ++{ ++ TCGReg TCG_TMP0 = rn; ++ TCGReg TCG_TMP1 = TCG_REG_TMP; ++ TCGReg TCG_TMP2 = rn; ++ /*t1=(ssss)ssb0*/ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP1, TCG_TMP0, 8); ++ tcg_out_insn_simpleImm(s, OPC_ZAP_I, TCG_TMP1, TCG_TMP1, 0x2); ++ tcg_out_insn_simpleReg(s, OPC_SEXTH, TCG_TMP1, TCG_REG_ZERO, TCG_TMP1); ++ /*t2=(0000)000a*/ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP2, TCG_TMP0, 8); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP2, TCG_TMP2, 0x1); ++ /*t2=(ssss)ssba*/ ++ tcg_out_insn_simpleReg(s, OPC_BIS, TCG_TMP1, TCG_TMP1, TCG_TMP2); ++} ++ ++ ++/*sw ++ * signed 32bit, abcd -> ssdcba ++ */ ++static inline void tcg_out_bswap32s(TCGContext *s, TCGReg rd, TCGReg rn) ++{ ++ TCGReg TCG_TMP0 = rn; ++ TCGReg TCG_TMP3 = rd; ++ TCGReg TCG_TMP1 = TCG_REG_TMP; ++ TCGReg TCG_TMP2 = TCG_REG_TMP2; ++ /*swap32 -- 32-bit swap. a0 = abcd.*/ ++ ++ /* t3 = (ssss)d000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP3, TCG_TMP0, 24); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP3, TCG_TMP3, 0x0f); ++ tcg_out_insn_simpleReg(s, OPC_SEXTB, TCG_TMP1, TCG_REG_ZERO, TCG_TMP0); ++ tcg_out_insn_simpleImm(s, OPC_ZAP_I, TCG_TMP1, TCG_TMP1, 0x0f); ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ ++ /* t1 = 000a */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 24); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x1); ++ ++ /* t2 = 00c0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP2, TCG_TMP0, 0x2); ++ ++ /* t3 = (ssss)d00a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ ++ /* t1 = 0abc */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 8); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x7); ++ ++ /* t2 = 0c00 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP2, TCG_TMP2, 8); ++ /* t1 = 00b0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x2); ++ /* t3 = (ssss)dc0a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP2); ++ /* t3 = (ssss)dcba -- delay slot */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++} ++ ++/*sw ++ * unsigned 32bit, abcd->dcba ++ */ ++static void tcg_out_bswap32u(TCGContext *s, TCGReg rd, TCGReg rn) ++{ ++ TCGReg TCG_TMP0 = rn; ++ TCGReg TCG_TMP3 = rd; ++ TCGReg TCG_TMP1 = TCG_REG_TMP; ++ TCGReg TCG_TMP2 = TCG_REG_TMP2; ++ ++ /*bswap32u -- unsigned 32-bit swap. a0 = ....abcd.*/ ++ /* t1 = (0000)000d */ ++ tcg_out_insn_bitImm(s, OPC_AND_I, TCG_TMP1, TCG_TMP0, 0xff); ++ /* t3 = 000a */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP3, TCG_TMP0, 24); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP3, TCG_TMP3, 0x1); ++ /* t1 = (0000)d000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP1, TCG_TMP1, 24); ++ /* t2 = 00c0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP2, TCG_TMP0, 0x2); ++ /* t3 = d00a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ /* t1 = 0abc */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 8); ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x7); ++ /* t2 = 0c00 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP2, TCG_TMP2, 8); ++ /* t1 = 00b0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x2); ++ /* t3 = dc0a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP2); ++ /* t3 = dcba -- delay slot */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++} ++ ++ ++ ++/*sw ++ * swap 64bit, abcdefgh->hgfedcba ++ */ ++static void tcg_out_bswap64(TCGContext *s, TCGReg rd, TCGReg rn) ++{ ++ ++ TCGReg TCG_TMP0 = rn; ++ TCGReg TCG_TMP3 = rd; ++ TCGReg TCG_TMP1 = TCG_REG_TMP; ++ TCGReg TCG_TMP2 = TCG_REG_TMP2; ++ ++ /* bswap64 -- 64-bit swap. a0 = abcdefgh*/ ++ ++ /* t3 = h0000000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP3, TCG_TMP0, 56); ++ /* t1 = 0000000a */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 56); ++ /* t2 = 000000g0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP2, TCG_TMP0, 0x2); ++ /* t3 = h000000a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ /* t1 = 00000abc */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 40); ++ /* t2 = 0g000000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP2, TCG_TMP2, 40); ++ /* t1 = 000000b0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x2); ++ /* t3 = hg00000a */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP2); ++ /* t2 = 0000abcd */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP2, TCG_TMP0, 32); ++ /* t3 = hg0000ba */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ /* t1 = 000000c0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP2, 0x2); ++ /* t2 = 0000000d */ ++ tcg_out_insn_bitImm(s, OPC_AND_I, TCG_TMP2, TCG_TMP2, 0xff); ++ /* t1 = 00000c00 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP1, TCG_TMP1, 8); ++ /* t2 = 0000d000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP2, TCG_TMP2, 24); ++ /* t3 = hg000cba */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ /* t1 = 00abcdef */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_TMP1, TCG_TMP0, 16); ++ /* t3 = hg00dcba */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP2); ++ /* t2 = 0000000f */ ++ tcg_out_insn_bitImm(s, OPC_AND_I, TCG_TMP2, TCG_TMP1, 0xff); ++ /* t1 = 000000e0 */ ++ tcg_out_insn_simpleImm(s, OPC_ZAPNOT_I, TCG_TMP1, TCG_TMP1, 0x2); ++ /* t2 = 00f00000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP2, TCG_TMP2, 40); ++ /* t1 = 000e0000 */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_TMP1, TCG_TMP1, 24); ++ /* t3 = hgf0dcba */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP2); ++ /* t3 = hgfedcba -- delay slot */ ++ tcg_out_insn_bitReg(s, OPC_BIS, TCG_TMP3, TCG_TMP3, TCG_TMP1); ++ ++} ++ ++static void tcg_out_qemu_ld(TCGContext *s, TCGReg data_reg, TCGReg addr_reg, MemOpIdx oi, TCGType ext) ++{ ++#ifndef CONFIG_SOFTMMU ++ MemOp memop = get_memop(oi); ++ const TCGType otype = TCG_TYPE_I64; ++ ++ if (USE_GUEST_BASE) { ++ tcg_out_insn_simpleReg(s, OPC_ADDL, TCG_REG_GUEST_BASE, TCG_REG_GUEST_BASE, addr_reg); ++ tcg_out_qemu_ld_direct(s, memop, data_reg, TCG_REG_GUEST_BASE, otype, 0); ++ } else { ++ tcg_out_qemu_ld_direct(s, memop, data_reg, addr_reg, TCG_TYPE_I64, 0); ++ } ++#endif /* CONFIG_SOFTMMU */ ++ ++} ++ ++static void tcg_out_qemu_st(TCGContext *s, TCGReg data_reg, TCGReg addr_reg, ++ MemOpIdx oi) ++{ ++#ifndef CONFIG_SOFTMMU ++ MemOp memop = get_memop(oi); ++ const TCGType otype = TCG_TYPE_I64; ++ ++ if (USE_GUEST_BASE) { ++ tcg_out_insn_simpleReg(s, OPC_ADDL, TCG_REG_GUEST_BASE, TCG_REG_GUEST_BASE, addr_reg); ++ tcg_out_qemu_st_direct(s, memop, data_reg, TCG_REG_GUEST_BASE, otype, 0); ++ } else { ++ tcg_out_qemu_st_direct(s, memop, data_reg, addr_reg, TCG_TYPE_I64, 0); ++ } ++#endif /* CONFIG_SOFTMMU */ ++} ++ ++ ++/*sw ++ * if cond is successful, ret=1, otherwise ret = 0 ++ */ ++static void tcg_out_setcond(TCGContext *s, TCGCond cond, TCGReg ret, ++ TCGReg arg1, TCGReg arg2) ++{ ++ switch(cond) { ++ case TCG_COND_EQ: ++ case TCG_COND_LT: ++ case TCG_COND_LE: ++ case TCG_COND_LTU: ++ case TCG_COND_LEU: ++ case TCG_COND_NE: ++ case TCG_COND_GE: ++ case TCG_COND_GT: ++ case TCG_COND_GEU: ++ case TCG_COND_GTU: ++ tcg_out_cond_cmp(s, cond, ret, arg1, arg2, 0); ++ break; ++ default: ++ tcg_abort(); ++ break; ++ } ++} ++/*sw ++ * cond(a1,a2), yes:v1->ret, no:v2->ret ++ */ ++static void tcg_out_movcond(TCGContext *s, TCGCond cond, TCGReg ret, ++ TCGReg a1, TCGReg a2, bool const_b, TCGReg v1, TCGReg v2) ++{ ++ tcg_out_cond_cmp(s, cond, TCG_REG_TMP, a1, a2, const_b); ++ tcg_out_insn_complexReg(s, OPC_SELLBS, TCG_REG_TMP, ret, v1, v2); ++} ++ ++ ++ ++/*sw ++ * extract rn[lsb, lsb+len-1] -> rd[0, len-1] ++ */ ++static void tcg_out_extract(TCGContext *s, TCGReg rd, TCGReg rn, int lsb, int len) ++{ ++ //get 000..111..0000 ++ tcg_out_insn_bitReg(s, OPC_ORNOT, TCG_REG_TMP, TCG_REG_ZERO, TCG_REG_ZERO); ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP, TCG_REG_TMP, 64 - len); ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP, TCG_REG_TMP, lsb); ++ /* get rn[lsb, lsb+len-1]-->rd[lsb, lsb+len-1] */ ++ tcg_out_insn_bitReg(s, OPC_AND, rd, rn, TCG_REG_TMP); ++ ++ /* rd[lsb, lsb+len-1] --> rd[0, len-1] */ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, rd, rd, lsb); ++} ++ ++ ++/*sw ++ * depos: rd = rd[63:msb+1]:rn[msb,lsb]:rd[lsb-1,0] ++ * len = msb -lsb + 1 ++ */ ++static void tcg_out_dep(TCGContext *s, TCGReg rd, TCGReg rn, int lsb, int len) ++{ ++ ++ //get 000..111..0000 ++ tcg_out_insn_bitReg(s, OPC_ORNOT, TCG_REG_TMP, TCG_REG_ZERO, TCG_REG_ZERO); ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP, TCG_REG_TMP, 64 - len); ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP, TCG_REG_TMP, lsb); ++ ++ /* TCG_REG_TMP2 = rn[msb,lsb] */ ++ tcg_out_insn_bitImm(s, OPC_SLL_I, TCG_REG_TMP2, rn, 64-len); ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP2, TCG_REG_TMP2, 64-len-lsb); ++ ++ /* clear rd[msb,lsb] */ ++ tcg_out_insn_bitReg(s, OPC_BIC, rd, rd, TCG_REG_TMP); ++ /* rd = rd[63:msb+1]:rn[msb,lsb]:rd[lsb-1,0] */ ++ tcg_out_insn_bitReg(s, OPC_BIS, rd, rd, TCG_REG_TMP2); ++} ++ ++/*sw ++ * get val_s64(rn) * val_s64(rm) -> res_128 ++ * res[127:64] -> rd ++ * warn:maybe rd=rn or rm ++ */ ++static void tcg_out_mulsh64(TCGContext *s, TCGReg rd, TCGReg rn, TCGReg rm) ++{ ++ tcg_out_insn_simpleReg(s, OPC_UMULH, TCG_REG_TMP, rn, rm); ++ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP2, rn, 63); ++ tcg_out_insn_complexReg(s, OPC_SELEQ, TCG_REG_TMP2, TCG_REG_TMP2, TCG_REG_ZERO, rm); ++ tcg_out_insn_simpleReg(s, OPC_SUBL, TCG_REG_TMP, TCG_REG_TMP, TCG_REG_TMP2); ++ ++ tcg_out_insn_bitImm(s, OPC_SRL_I, TCG_REG_TMP2, rm, 63); ++ tcg_out_insn_complexReg(s, OPC_SELEQ, TCG_REG_TMP2, TCG_REG_TMP2, TCG_REG_ZERO, rn); ++ tcg_out_insn_simpleReg(s, OPC_SUBL, rd, TCG_REG_TMP, TCG_REG_TMP2); ++} ++ ++typedef struct { ++ DebugFrameHeader h; ++ uint8_t fde_def_cfa[4]; ++ uint8_t fde_reg_ofs[8 * 2]; ++} DebugFrame; ++ ++#define ELF_HOST_MACHINE EM_SW_64 ++/* GDB doesn't appear to require proper setting of ELF_HOST_FLAGS, ++ which is good because they're really quite complicated for SW_64. */ ++ ++static const DebugFrame debug_frame = { ++ .h.cie.len = sizeof(DebugFrameCIE) - 4, /* length after .len member */ ++ .h.cie.id = -1, ++ .h.cie.version = 1, ++ .h.cie.code_align = 1, ++ .h.cie.data_align = -(TCG_TARGET_REG_BITS / 8) & 0x7f, /* sleb128 */ ++ .h.cie.return_column = TCG_REG_RA, ++ ++ /* Total FDE size does not include the "len" member. */ ++ .h.fde.len = sizeof(DebugFrame) - offsetof(DebugFrame, h.fde.cie_offset), ++ ++ .fde_def_cfa = { ++ 12, TCG_REG_SP, /* DW_CFA_def_cfa sp, ... */ ++ (FRAME_SIZE & 0x7f) | 0x80, /* ... uleb128 FRAME_SIZE */ ++ (FRAME_SIZE >> 7) ++ }, ++ .fde_reg_ofs = { ++ 0x80 + 14, 1, /* DW_CFA_offset, */ ++ 0x80 + 13, 2, /* DW_CFA_offset, */ ++ 0x80 + 12, 3, /* DW_CFA_offset, */ ++ 0x80 + 11, 4, /* DW_CFA_offset, */ ++ 0x80 + 10, 5, /* DW_CFA_offset, */ ++ 0x80 + 9, 6, /* DW_CFA_offset, */ ++ 0x80 + 26, 7, /* DW_CFA_offset, ra, -24 */ ++ 0x80 + 15, 8, /* DW_CFA_offset, fp, -8 */ ++ } ++}; ++ ++void tcg_register_jit(const void *buf, size_t buf_size) ++{ ++ tcg_register_jit_int(buf, buf_size, &debug_frame, sizeof(debug_frame)); ++} +diff --git a/tcg/sw64/tcg-target.h b/tcg/sw64/tcg-target.h +new file mode 100755 +index 0000000000..3093e4fece +--- /dev/null ++++ b/tcg/sw64/tcg-target.h +@@ -0,0 +1,123 @@ ++/* ++ * Initial TCG Implementation for sw_64 ++ * ++ */ ++ ++#ifndef SW_64_TCG_TARGET_H ++#define SW_64_TCG_TARGET_H ++ ++#define TCG_TARGET_INSN_UNIT_SIZE 4 ++ ++typedef enum { ++ TCG_REG_X0, TCG_REG_X1, TCG_REG_X2, TCG_REG_X3, ++ TCG_REG_X4, TCG_REG_X5, TCG_REG_X6, TCG_REG_X7, ++ TCG_REG_X8, TCG_REG_X9, TCG_REG_X10, TCG_REG_X11, ++ TCG_REG_X12, TCG_REG_X13, TCG_REG_X14, TCG_REG_X15, ++ TCG_REG_X16, TCG_REG_X17, TCG_REG_X18, TCG_REG_X19, ++ TCG_REG_X20, TCG_REG_X21, TCG_REG_X22, TCG_REG_X23, ++ TCG_REG_X24, TCG_REG_X25, TCG_REG_X26, TCG_REG_X27, ++ TCG_REG_X28, TCG_REG_X29, TCG_REG_X30, TCG_REG_X31, ++ ++ TCG_REG_F0=32, TCG_REG_F1, TCG_REG_F2, TCG_REG_F3, ++ TCG_REG_F4, TCG_REG_F5, TCG_REG_F6, TCG_REG_F7, ++ TCG_REG_F8, TCG_REG_F9, TCG_REG_F10, TCG_REG_F11, ++ TCG_REG_F12, TCG_REG_F13, TCG_REG_F14, TCG_REG_F15, ++ TCG_REG_F16, TCG_REG_F17, TCG_REG_F18, TCG_REG_F19, ++ TCG_REG_F20, TCG_REG_F21, TCG_REG_F22, TCG_REG_F23, ++ TCG_REG_F24, TCG_REG_F25, TCG_REG_F26, TCG_REG_F27, ++ TCG_REG_F28, TCG_REG_F29, TCG_REG_F30, TCG_REG_F31, ++ ++ /* Aliases. */ ++ TCG_REG_FP = TCG_REG_X15, ++ TCG_REG_RA = TCG_REG_X26, ++ TCG_REG_GP = TCG_REG_X29, ++ TCG_REG_SP = TCG_REG_X30, ++ TCG_REG_ZERO = TCG_REG_X31, ++ TCG_AREG0 = TCG_REG_X9, ++} TCGReg; ++ ++#define TCG_TARGET_NB_REGS 64 ++#define MAX_CODE_GEN_BUFFER_SIZE ((size_t)-1) ++ ++/* used for function call generation */ ++#define TCG_REG_CALL_STACK TCG_REG_SP ++#define TCG_TARGET_STACK_ALIGN 16 ++#define TCG_TARGET_CALL_ALIGN_ARGS 1 /*luo*/ ++#define TCG_TARGET_CALL_STACK_OFFSET 0 /*luo*/ ++#define TCG_TARGET_HAS_neg_i64 1 ++#define TCG_TARGET_HAS_direct_jump 0 ++#define TCG_TARGET_HAS_goto_ptr 1 ++#define TCG_TARGET_HAS_qemu_st8_i32 0 ++#define TCG_TARGET_HAS_not_i32 1 ++#define TCG_TARGET_HAS_neg_i32 1 ++#define TCG_TARGET_HAS_div_i32 1 ++#define TCG_TARGET_HAS_movcond_i32 1 ++#define TCG_TARGET_HAS_rem_i32 0 ++#define TCG_TARGET_HAS_rot_i32 1 ++#define TCG_TARGET_HAS_deposit_i32 1 ++#define TCG_TARGET_HAS_extract_i32 1 ++#define TCG_TARGET_HAS_sextract_i32 0 ++#define TCG_TARGET_HAS_extract2_i32 0 ++#define TCG_TARGET_HAS_add2_i32 0 ++#define TCG_TARGET_HAS_sub2_i32 0 ++#define TCG_TARGET_HAS_sub2_i32 0 ++#define TCG_TARGET_HAS_mulu2_i32 0 ++#define TCG_TARGET_HAS_muluh_i32 0 ++#define TCG_TARGET_HAS_muls2_i32 0 ++#define TCG_TARGET_HAS_not_i32 1 ++#define TCG_TARGET_HAS_mulsh_i32 0 ++#define TCG_TARGET_HAS_ext8s_i32 0 ++#define TCG_TARGET_HAS_ext16s_i32 0 ++#define TCG_TARGET_HAS_ext8u_i32 1 ++#define TCG_TARGET_HAS_ext16u_i32 1 ++#define TCG_TARGET_HAS_bswap16_i32 0 ++#define TCG_TARGET_HAS_bswap32_i32 0 ++#define TCG_TARGET_HAS_andc_i32 0 ++#define TCG_TARGET_HAS_eqv_i32 0 ++#define TCG_TARGET_HAS_nand_i32 0 ++#define TCG_TARGET_HAS_nor_i32 0 ++#define TCG_TARGET_HAS_clz_i32 0 ++#define TCG_TARGET_HAS_ctz_i32 0 ++#define TCG_TARGET_HAS_orc_i32 0 ++#define TCG_TARGET_HAS_ctpop_i32 0 ++#define TCG_TARGET_HAS_movcond_i64 1 ++#define TCG_TARGET_HAS_div_i64 1 ++#define TCG_TARGET_HAS_rem_i64 0 ++#define TCG_TARGET_HAS_div2_i64 0 ++#define TCG_TARGET_HAS_rot_i64 1 ++#define TCG_TARGET_HAS_deposit_i64 1 ++#define TCG_TARGET_HAS_extract_i64 1 ++#define TCG_TARGET_HAS_sextract_i64 0 ++#define TCG_TARGET_HAS_extract2_i64 0 ++#define TCG_TARGET_HAS_extrl_i64_i32 0 ++#define TCG_TARGET_HAS_extrh_i64_i32 0 ++#define TCG_TARGET_HAS_ext8s_i64 0 ++#define TCG_TARGET_HAS_ext16s_i64 0 ++#define TCG_TARGET_HAS_ext32s_i64 1 ++#define TCG_TARGET_HAS_ext8u_i64 1 ++#define TCG_TARGET_HAS_ext16u_i64 1 ++#define TCG_TARGET_HAS_ext32u_i64 1 ++#define TCG_TARGET_HAS_bswap16_i64 0 ++#define TCG_TARGET_HAS_bswap32_i64 0 ++#define TCG_TARGET_HAS_bswap64_i64 0 ++#define TCG_TARGET_HAS_not_i64 1 ++#define TCG_TARGET_HAS_andc_i64 0 ++#define TCG_TARGET_HAS_orc_i64 1 ++#define TCG_TARGET_HAS_eqv_i64 0 ++#define TCG_TARGET_HAS_nand_i64 0 ++#define TCG_TARGET_HAS_nor_i64 0 ++#define TCG_TARGET_HAS_clz_i64 1 ++#define TCG_TARGET_HAS_ctz_i64 1 ++#define TCG_TARGET_HAS_ctpop_i64 0 ++#define TCG_TARGET_HAS_add2_i64 0 ++#define TCG_TARGET_HAS_sub2_i64 0 ++#define TCG_TARGET_HAS_mulu2_i64 0 ++#define TCG_TARGET_HAS_muls2_i64 0 ++#define TCG_TARGET_HAS_muluh_i64 1 ++#define TCG_TARGET_HAS_mulsh_i64 1 ++#define TCG_TARGET_DEFAULT_MO (0) ++#define TCG_TARGET_HAS_MEMORY_BSWAP 0 ++/* optional instructions */ ++void tb_target_set_jmp_target(uintptr_t, uintptr_t, uintptr_t, uintptr_t); ++#define TCG_TARGET_NEED_POOL_LABELS ++#endif /* SW_64_TCG_TARGET_H */ +diff --git a/tcg/sw64/tcg-target.opc.h b/tcg/sw64/tcg-target.opc.h +new file mode 100755 +index 0000000000..bce30accd9 +--- /dev/null ++++ b/tcg/sw64/tcg-target.opc.h +@@ -0,0 +1,15 @@ ++/* ++ * Copyright (c) 2019 Linaro ++ * ++ * This work is licensed under the terms of the GNU GPL, version 2 or ++ * (at your option) any later version. ++ * ++ * See the COPYING file in the top-level directory for details. ++ * ++ * Target-specific opcodes for host vector expansion. These will be ++ * emitted by tcg_expand_vec_op. For those familiar with GCC internals, ++ * consider these to be UNSPEC with names. ++ */ ++ ++DEF(aa64_sshl_vec, 1, 2, 0, IMPLVEC) ++DEF(aa64_sli_vec, 1, 2, 1, IMPLVEC) +-- +2.27.0 +

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�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 z z)IK<1)(0hqj`I3nNk6Ly+L?`eYY{5YBYBC8#Gl1fh%WO3aXuKB-Q9{cl=<3rP|gZK z5E*kn^YBZC)<9eOCI1nV;WHW6Rfi_B(C2I#40et_xb*8HpViPXZDx&q?_T=NpcQjc z1z59_C|TR~Ya->d7F6y-LSuGL&Rq`8IFgUvuz2MaoG7S&FofEqsqh9~>g++r-VYRc z47`bvZ}@~=R0cz!pB<@FQ1>^9({Whfr}$dnmS24Y-K8sZe2Jvq4_Fmq1vwb@V~S0) zQ#N80lx1iOH|S1Lu>uuyv;*nkt~H1_c+W24ZUdglIlX?A=!$Z3@+l<8N!lk~M@)da z(4|XB=>ns~d4}uod2FoOXiw*gAvREM++*a!ZoxLb>Jg0x{ZKOvT3tF+Q3#f2mBTXeLRZJAQhMLi%bZpr73!@fx5 z`vw~o*xTmq_Feu=ekbf^{yL5DQn}`f6HVys>wzED%Ut@pACyUa;5cD&#KfKjs33n!u+g5%qFJWQzz9MyA|o^epd3@+_^8!^+(2 zHPj!|4|3nt=t`_adx59tUB=C{U74N!a=~ey2aAyhS7h{a< zGi95Cq#Z+OkZGzk{f#*fxon~VIrZ$WcEBx^0PchOFWJ-4{${FVMXR+HlvE{>p5taQ zk~iQItLHw4hD&bpNA4}`@j3b=pu(SHpQ~MkX?w@VWdeJaq9F&6DK|(n-x%(YRlwm^ z1O-ncXvkn(h|u8Z*Vi897zUl%@IY+07tS`C&M!6oT#_w)&!x{~XB=Ft^hR4FCSrM_ z6O(%qlm9uz$-D-&1>Z5RFVFI&i}uCF^0jB*<|06tnHl`&2i=^qt_(-Xl^-?hiq(7)9;Hm`kR}19bVU|zq#v)HjO7GF zDbzXatjOddGa?&YarbC-1F_<&2Kj}oL(5D*M$0lZxQf5EbOzU!T+fuDzIl;tv0Atl zd}|o&z(T=-xO|y4&N`x6=X~epI6K!b@C+Z$)X9a=U_BPe<^NUW1Sh?3Qg#wr@pjZg zm6A^&BEd;S{S;EnJ4ubYIn@oQJZg+HQ8)D;PE5L| zt^bACnL&0K6V!EydM-4K_y2LpuS$g&tt4iVL7fON{Us$YN+$`%(QFblN5dia<5#aS zL}!lXTOI~`DHtV1-JnKgi3x_x%>elWpWY+Lv6ajFPgllFevIP3mp9fcMB7_1`8TI_ zY38vT)Mcj{#26bX9&XJ6MB*{tLs43Nw)cX04JmRn6*ou8!LZiNc2#@^>i(dC3RNkRiG;rn*S`YEM1A61!IX=X?=jUgG z&5ssa40w`fot(l~6!Bl$czJc1F@b7t6+fo1Z}9)y?xDZmC9zgsI?&4yO%QDB5QEer zURySTgprSx{4luH^X>z~U?d9JCgISXTB^j!%oDFv(@=dw{KK}89wa0$K$e(ZzTT^= z2=T{AX6flhoo4fZ2dL=Gy)mz_CRAXc#M7DX&f7)a+cGTJCYKofx%Ek~byW$>(CO?-oP1cjRvwR)XDu_Z?l=3S%X5n+b;p4jnAM>wo)s-&xI1fY?~ePILn20P4FGTzQw}z>Q^*ARowW zaE^(w6&b&cETpO(fL53u{15Qorotx^m8{baTDQFDDb|;S6(v|hU>ExMcIvK#1Ss>; zY<^bELbCNl2heC#z)Hhy@LPK|suH%qMAT@1ZJ7q;N`KAC9=`{9>T&641;W4(p|jNx zm9(W2f9AUz>mLkhmMQe{9$7CC&9D=>5Z?$!(UyxE98~}t&kb-s*jWR2i)O?L3i-eX z3Vy&^>16PL4}FoFJC|7&pCB7Y;&sGacMI$772DC8KYys$AH0MJXxx50dm>vO}DJ%R!PV?Wy7Q&FrE<5M z`i(0$_5Hg@wWQsJKp#SfMX`0-c&(qfw!g(eU2v7kf`$r5K@vZf)ve*VTbmQNLph~b zO$3q^JB?I3#nDl=*+@JDW7F&cQ%60sR~0o2kX5cqt@$&UB>OB{Rg1Zh62xkwzV}S9 zjv2VNH(YZMb9TS4x?$!AsxHlGh|r4S&%yb6XN0z_?p1%mmWk}uYsXUaj zONPAX!g~G>+EpeMHf?r-aB?T2#WM@}8wN_wD$runG?>B}npK1#mNO zlF5;%4saH|3s~Lsl3BH!FajShR@@&4pMt57*YX>|-3_p2V*q8_7wtHyF^LwUO~1kRQXlaqS4xIu709cl-vbTfsKo zGCOmi+ys4uT{USzv1h(%X`_8dee6gj4;nqnV0{FH=jc@R9jV2tgO72fEuK~+7Ctcsps8*9P%MI%( zSmraEx#-?@0OzALWR`$q`mgwJG2nnE)rjgt!(&gND^}?<@TYrVaH!6}xtjB1hz)2{ zYT@lD$q4nMb=B$`aYu>VU>Gf^k%S+7AQQ?u?)?E=6s!ePbsP0G6z|<^VhRqQZZ1JI zVHf`sa@9jow9YGj%BOimeu}H(e6{TjGahZdvhZ+)7f98>e?^^EUPB=UqZguVRPh}F zd#%Bj5N%Xn7u!gv(MbpZ)N2t{b4a#ZC+N)Ywmi9)mY!=4soB_wrJ3`oOD^-?F_kt( zJ?WV{`)q%vFVYubA&e&92ypTJW_3f4B66jG^F8|nSXY7L3yrGi|;k}Rzb!}74*Gcv|iyh{<&P+ z5XRlRXURr=y2A}T$oFox5q->v*F3P0&-j-1ag2qD$8|0puM*o>mwR;8`4YjF$B;(2 znH$o0v}-lYY`ck>ur1UvlCP{|!H@r*U>PN?(E6zs6+OQK8-fTH^JZgS(E4*@8DtS^ z5j6=?zDO&D4{KG-T*Dj{^ViE`0id+vLGLG?N>l#ydWENt5N+G%IR9>*>X!Zp`t_jw zZ9n)Ixh)t!4l3x>ooQMk1jnciUsmrJhvOBwN$SGoTirFmvUZ@N0)Y?2!V>}C^Y!b3 zFLo8jn4U>Xygrm!jB4gck)TmOXL5ovTD)e{1jDmiGye8&5?RK0NZbc&_p@ZVs7>`j zHU6l_!Nkf%8OjjM4h|iK4`B*y`2LohwW<4Ab0TWE404CwCJ)ymm9nA6ZPvS0$Ia^P zL{^R&>a0aj03l^N>dQz>1!OS#RMv)5{E zSPbw)rrX>MgPaix6O*lS_*!mivrA_7($JIGPsA;WI=`!n{t|EW7dW@}m4&YFu^-mD ztD%Ow&m84mKJq>bJOH35@o@X&c01i|EfDb0V*o)wzQ6NwkQN4&c+yj>-zz-!JKV^^ z3*Q^Q^$MA_R{nU1JW}DD&P9daKQ76E4{(RF{{L7;nF1o2bWe3yp7=ojeF_`5*J&&o z>h0U-u1?LZgJ$6DNa|A+DlcWXM3Ae}c&%|9`>4{!(laAL(vF;80{)=qchu;L;53+M z8$98UQJ?#+?*H;87$B_~CJX4_#l2nhyOsNC?5N|iz;b=6_(bf=;mIG4w=)M>A->K)9~G`B{T+0jFMkrsfg_n;+Lk4>0C`fDn_zhUca*rSMvOMfml3 z%_*Oq99FlH_tG5s|ODq4znQPuUt@OWUU_OUls$E1VSF?s}TpPW7&%%3kL)Ny_=zPMO#ezKpgTLzPl@v@S-LhIO)HX!rXWi zC>^KwMofXu_|c6(RiE#)dw1ALjsgj~>qI?#IxVzfw#&1xstu8anlLW>W$FM+DCeU_ zl)~7u4k0noNTqoN8>Eih+OnG!5K*Tz+B=M-)+x^`2#J)w;qFW3SsGW(KNmRE%h6!& z71n4+gTctnmq6$znbB2?2Sg0A)@0Q?I!33&n0W_y&dTjHCCE7#*u!SUYR#z%Yw&tr z>!~NH+z>S?(JR&(5Vb-FLRja`LQWC}WC9LE*Q0^)0RBWRKVfHC`B12?G<@I&jaZ+Z zbrNfn^bt|g31Ey0iZBjRVcv{d3!gIZqW9g>M}G`Q*5MtC_AY?&NY+hUQG$^QzySRB z6OTawTzr~IWPeLVS-8O!gSjeUrp@=pv*y83 zw{BP)#$)Ywofdk1?M>sMP=O4ZD<*GGb%E-FEVd=6m_t9%P4De;ps9irPtuc{znkx| zi?LX*&o-hT4GqujUoQhWb8^ZH$nTh2sUUxUfuznu(8c@YaCGR&yF-v-w*KSdT+aF; zQ-&Ezc$fIKGBq_(pd92)4#IO~fb{3kC`T;V+Um(KhA3N}*G)Y{%NA zasjs$jYyteB(JM-g}NcDa0UP0coC6GKu}4>)1#VuhO@~}k|>(fb{`X{sG=#)vhA&b zWNl!TT+B75eX&@DdqbSa2pTc{(c?Ral5@2M?40ok4Y=aw?*hHc=+YR9>ASXPRZry2 z4iL5~w-bB`4X3G7jYR*k54GvXKL%y_*VTKM!~l4PFI{rm4Wjn^kR@-wS{0j9rabkt ztLSNP-#-C?KOZ&N_-*CmWiA){oYdGKyeYiEZk&5I-j4T$_hMD zWb2Y4hHLJVboFF&;VYL=g{POl2kAsLc#bP*o*{@XWq*(h5RTOPC7+dc?DrcsBu-n% zLc6v0Jhi6Et@}23hK~*#p&pQ01sTxZRm&i_VZ_$DqTj)M zRPH@Ke6z*CaVO^25}3E6_dht*ort}j=xQpXJRrebIiAl6sz?1B#po)s$#p5|ERi{s ztidn6Ck&DB3ORX?dUaAP+iG<+HtJ#2f%amj)8n7iAI17Litg@>t?7m8G zNmcm2c83Wl&ir7{{52$3Q;2nI`}A4^@J>0JM_^A+wTQY$;>55|cweEGRBBnpFIS7p z0x7a|htWLo1{Don3Zfy)*DuXCS;?v`uSX;$|1M!xM!P#EsvOFHOWBXeFfX+PP+~h9 zvVHdN#8{{G@078r&avQ-=4q;-(UnolgUv}Hoil~Yp*=bS5_dvC%GVEi;hU)ubF~H* zu&)16gOb!u@s3QDlsD{xDV40i=y2Mf?pQpBl9?H$9K+I;b3}(N3T_PP>O9@9F#Bn! zF;BP`rtHV^gR zPpoDEP+l2v%!mJ2`wjk%UYYhE6~Wqa#c2kIs_rJ~Bg6-Q8~x8C))uq>>SIXHW=?_3 z!8t+~`F`-y8X*EQ=2CWmjD$t(sJJLC>D!ZH)~7g(FHYQ7DURM--gZ6w#B~>MzCkcT z%3l&j8dZABo(P7s;~XrCu!?U2W^42%Ck0AruT`Zv%V?kKf*A-gn19H{AYK&$P>1?> zm#VbS&9&-+UTvP_*5vk}sH9oE{9+`eZ1|)xl-e8bT=Xn}cvQ{G(3ur!WJF8E4qr7q zbXbh1{?9w;2t>L36+<35zDG#Nwe3HO?g`c%C$^k(-pO`QUK{+ytb+mSO3*h}Hp)K=nt}HRVV5}`P%-Sw(DEs>uj3gU|<6X82x~gPqGB)$I z>ZhSpM(d`Mc=MO%XF2Nq^c;_efw#W^CCC>4>{CpRQdvlo4N`hOaNZxuK4&VXw9+mMK?~nUGxNINqw6 z0`ml?PtcglIIcg|%tP~T01_#5`7qtRQD)(SMN)T9@t)N_2wX64e{->69Iz{jR2sE$!1@Bk|Z$*t( z^sJoQET6=kmx`SW`gwclgR_k1!!2vTCs@eDs2w_!2jYeF%u-ir)Am8AZ1poj!Yxl_ z$)h%{wZwjEeCsM(@qwtdJ-TI9!RXeQEik^q%40VBvwITcf-}TVXZ@eBih#aCjR#)@ zJrr&XObXFkF}bbXZ<9aDqDA64D#OzHk`&ofzu}O?{Aqt64|SX4o?L=?6_Y>)omViGmDg#~m8|4-?iW*NCbVNq{-l_VImf!|F7Ox-oIs z(ILI;iiHnwu-dXzSPu+WU)-7Rjn`(sKF=Iug1?d9y3mhS5!ozt&bU#s(RgpN|CFa9 zzk#8T-YjRd8;j0>Uw6GqU!VK{HNEU1F8p9!e=BpzPm)Q>_!{2Kn(PCd&fhbU(Fy+9 zRIZ*akb$Ve>*5>pLycPVwyGttnWKmK3+ifAWp&%`R}f>~h`n)uPe!B@+6v3% zCuTHu^Q2r%Y*>&ax*LUJXO^G$9pC;<%Ct{`p22N!3Fz`nZ#0)zSFrNcRiy@N;Mi+B z7TbrJ&!_gCLnG!o&&vLiGq9Z^lkU^|AXY}$lzJWjYz^Ogp4j^SsJ<USzEyn;yUxZUq=*e)kty&W+`oF8>~Zz>mzsQ$sl!Oxrnu9x~8 zAbIXZtyM?me8Q3{7C&Ro^Z9|RLxg9TNgRi%{EVAvf^stRNm`2VCL`YohiVixDR}+} zLiaoDjb4xNI;=R5n2hoT39J7ceTxCtfw9UEp#x({AzSPY#&T;{F>xCLa^d_^+ZvNN z(S+;bhusft>d#%EHCeJon!E1E-+yH4>^9*jVoZ8c!Rio^{_^W^h_~lLcH~uX<1ZS` z2VTgf>sAN+yI=3hZ&r?`7B2PeR(BQx>p~FMHU}jQdJy;q1T6mad>>$$5o$PKWqjN@ z`Lk}6uSV=-0}uWe<5iV&N=PgdAvjgV^}kto{&Cc@5teLR(j4{DuLX9BzM`{vM>b9W9yC_b00p z8m#rB8*{YDo(SPhmSY57aWd!AV; z<>okeDQLaf2~cP-7V`m^(53J&D$5OvSfah}UA+Zm)0B=E*x&Wz{W} z{MX45F*%V#U4DFQ4-a@;VYZg)sQ1l#%*B89Mh#J!IxAsFbsTRhb#s~?h=HX0TpyY^ zup7s=XV@7xE7DFRjc$hNp!*^Vg5|2!36^wr6w|2i7kflP^U_+-cieK-8ckJ z2Shfx(ojku97f7)rr6n`Wx27&i+x!JTG|mM+Pi0QRO84;MQ|n=V$$^R`dmb!iSM zigkZdbYrIHv}`sjTEWoXqkC77^n_@jh!$FjE8Gf=3ABo8y&!a?vx|qIZR_@g#45Zn zR~kvS!H~HZw!Gftk?%L-fFdvPNOmurrRvr^Hn}l7oH)EyLo3AiCl;amFkza=b~GXt zp}S}$ip2ou@efFNy{HF<(7!$mF0xDzA}yV(BGuFUgxg~;l~b+vgMoK5>w_cD@JSyT zxJcqB)o6@U-)JP7Ya$kpnd@;w}Hx$ z)3y&*J5u;ayE}y%fj_Nzrzh8gTht^BtQ1Kn@5NvELI;e^wAR0?6M91ix3% zhb6Fd0g8$wfEpg@R`ps}D1{fg{MIjR({yiwcq`t3~OJAIRJ=S(XHN`R{fE1pakmNvH zjD~elVTO`OW>0B0HwNWfEP;ljz!yc7Et4EU5os1@NC&DRw+i+f&h9p577d77dX^iJe$WN(G^I1@DmXY zs*w}k3(mDCqM3EW>rJHw<_S=9IJ#+6mSJbA?v)%#$Fr_J&P|{?d}?TyC|6eSYnbXj z$rrW~H#q}AYO!&1PKf9usk@2k!j5VFUA|I4c8{}E3i z`e|*VLNXqZb(c5%XFgid|5X3=MboiXOW~-32WUJEE=;$|nz8#+wD?!TmMt8-6X0$s zFvUzQVd$rV@rhNb9qKsaIPjv-OD~L_S~N-dD~4t=Z+@2;zZlhl)ESl#FBZI7JHcVl zDw9<#IVXr+8B!VwYjW$~Cd@1zw-l_|EQ0;#CF$`rl~e0Zuc0I(ymU8=ux%`t5PRux zi9$XVc;S3uQXfbr8|jDJj8zM5gAHz$0+x?8HyNYpN0en8$k>O&&X=*pbFO)@j@{*e zac8@SvCGyp_;4}!OIQ)#NfhHa+KP|i4{u0A%7VOk7JmQuBrZ^Ide=y!3XF*ND=J*d zW@!pBfNe7b>s9ATc*PN2kvQ(u7A=FO5QujG%F2M$HKDD*AZT!(7TmN)*YFzqt|5*H zIY=~U59v8{f#lEufMVS6EZPcFFV>@!p<3zam?(=RK>38^Rze`I*sWIOQNa8?xQO>j zgxK6AKK*FCb`4T&b;ys;iE=P7Cd>UBxS9%-O9muGYR@&1%JZ`Rb?y@KhNTyG7~NXP z?mJ16_&x6*#ln(Mi5=m;{#}Pm@)1@$Yl|E;PR|fnjVS$tHCzgsmOp$&puMD?XBTZ1 zA{#dFdq1li&@&wn))VQgWGS9YX9SnkT>1+yg^nK-J|c^7-k*Rn?bnl-3cK(>;Aeh1 z#9^l;4z_1~YIDmX;SKm0q@f3#-UdicGhD##slpD6j5Ubf=D+QoU&Jj_vH6=+YuEC) z?hG|-2nFEQ!dG^w5KQTQ5mONkC!htJq7G-ePaZB&gBPjC$&ZQG?hMkue?JC;`q?Ej@J#52gR4=Icvz%G1P+ss zRZ$InzFG^rtRdYhLpa34X#q^k=Nc69r}0m2{QzClG;3` zT^&W+)oFCt>y9v4fs!uFSov}gS7LM0x|XYK3$Tyb9p@39dm#tA$KffdD}V%r_!5AX z-MeVbDQMma#_KQ4f;iEV+mzgQ^{v}v5%$9vLO+`D=pX0Dp*Egi$1wd#FpDS3#WL10s(zorkSkT*Xl zM<9eXFT;=;?3AjG**L+<6-}KEM9M343}|$fbB}Emci_mO#M=~PFWMHD&+i~JVp$_9q%adXvE1dr!rC<$^I|&ej!Row%g~3Wq znj6sl>mBL@nW>o=Y%UZ!L67+FCuHoSiYRMprVRBM>Awo}w4=$6_QcPUk+JnS{nbV% zv`JEeOC$2(pW-QLyRw}i%O4}?!63cVLHpnLH^-ud{znEEOvrF;qCgqKxFmRvn(4_y z?a<;9I)VyOr&S-5YV(X%T7x5ve-vCCB8ez}nb_pc|ircFnhd z3v~O~QWlU%oV*$=2`{P^8`qwe#A+}445RaKI3hDu^Z-UDzsKfypqv?e5JJ{e*% z@=leade?k);xE5JZ5G|FP?yxqKm&JrqM8BTEE96>n*UkTXjK>~OTlCQVE`x+Xsh6+ zgsJuoSg|04$U)gHm|i|pUw};7iul$`Hg?R(q*IrMBKmt5(d?E&2RfId)>^Yz)x|?_ z8b{dB5jua_Sflc-N{a3yUP+$CM1#Zrs4M6y32`a~eII|cN@^ru2_Kf3b}0Je)NF5- zkz5U_k8Y>kSqQ}sWTul>pw%~KhX6)@+Q$1cmlTS?XQd6h30XKbUZ+EuDqdVz!(h14 z2vdeqdPB2OJSkc2|A6L773nvr)%jFZmKf(BCF&%lv)fORhD{4pibWYBm}cA>0JA!;8P*xFrn+f>THWALH-=!`sEWZSv*evGF~E_Geehd6eudDp%HP@G(?MVED55C(BvyDR zPnK>1RV3afGI}O^^7{Wq*@iKNIE0tScc$viT$w?6Sq>@@Dym;h(G{dEy=Cm8meh%@ zr`EVUPDtm=1!Mwr0|0%-$hoN(*G*3})+4ZShj@+;(W?@~Gosr=)mp_iKT8{1;a1Hn zk)-zw3ml2*9x>S+6A4>M7T{F`TJ0S|uYC<~T&WlqKC_(Ca?txu-iN7_!UpG+%A+6} zq(U)`%vy*@m%6skuFW!ec%~6bi6D0{pjsMbpc4k~Vl?Vg&{v+>*bbeDzOh;!ibx#2GN4iXynjTT!*aEU2QZ4j%`FEfU^4L1%;#18K;CiD<;`qd;lTbFv zW&zkjsRfN5xQlLeSf;=!&B@s{9Af>N9+g4qCplBS)q5GQQgGc(8U{L0CFw1dY|^1> z#s&}nnJOzIKB2r<5N@)yKj1wt@wr_FHqGq+d@2;C@L*0cth6?paEQ1Ar;J76JDVsd znVm4^3!5%r1aZ1PkV10YrX|x5Owf1|U;F!5Fob2W1h+IiB75i#daL+!N0a(rT1m!8(GXG|uVBEGXHE7j z)g1(H=*3-lb)L34gx9-P1Pll6zHz#IckVAsSkis~3-vTSqWLIj&a58B^d{##ccZ=s z*KA|8g^5_zhS0@EA$@90JFQ66oM*y}YLC8J*dlwT^Mz+pZNzJ`QU@Ls^fO7AmX7xW(T^Fs2zS6&pAt;#4T?9s2*gvfD~BI z6o!T`)R8)l`dCv-V7tmXiQ1UALNe^rh2{POD9KpAWBAW!;KLHJedyPV*`2y$yPV2r zF&bTE_6jDqE*?6Fh+utq>9y6|lidDQfP~?P;&S2QHVxlt->^?WYpf`$XF0?t=76=BvSfFysHqR3Oos~c~6zfFZa?=*ily7aWan%2HLBbOK zKc6;z?cMR@#r{mTtftMnG^?E|j?RV{ARdi-fx0$yf4Q&%u5CG@jWIXxj;)S4P5Opr z2zI*ytiMwVptoN^Df|#`*shWhOK8nQbHUE~Z3)#l=tk@Ty7LDVX7p-jrsR0swd)j! zy(pJ8zNM7WZ8OvmnLhHr67c1gPdOfTq`^*X$9@20d@ zxAI;(TIkK>-Sqgoh(; zn-G?q5}h4mx3@d@3CUt_(1A$^VloRsQU%jg=9?>J*mGf9Zj zjBfQJoBmus{bJ$Ke0#;;!M#+)N77HU{jOlfuQ4elvT5GZb)IJiekd8f(%t3o5hE_X zBVG_r0N6wZ$3t_G#B>ta$Y<3V9T!soEKXLjEMOD7A!ObNsUnOJ|7LkSUb9GmUB%(% zvq>qmY~o9pBa65)*#y2ig$nP|0fws#2jPkN5(0r~QDIJ*q>ZHD$urE$9~s`@>f&No z0|uVdjNY9`!URbo)?@)}!(mCib&hb2*VNJB=`8L4HzI8zwKRO*^T23u1sRmf!J(U( zb<(~z?&!(eA@A|QD0e2qlabRRPX5=* zWV=v5;Pxr2CJh@gp|^yAEp&+Pen3ej%=8GnRnqB(3?h0HB#KS(%lf4z@pygFHIrtV zj^yTHZl;O5oR3`o$t50(1siW|?}?>&U277TKrF6YPphyEhtkBF@4J!j0rxG?tC|K76>Mtf?=Rjx> zd|@#WhKqBIf@XYAhUXmXdHlm#t+yv5$L6-&qIA&*#r)rw(XDn)*}(G-khT3JAhnwO z3#r;RzXi*d?9k~Ed!w2jIo4VIy6cNrN8?JC6taDq=5r+y%!6J z^+WXS_Rp6%VOB@0Pd<#t3SG{3A$(kDeWBKpxQH?eGr`njACWaNIu_u%HU-j(4{zYz z%7_9D1qhH{6_F|lNv;018mCeq-U!=BP2^=D z+sihYJWBOaAS)KDOoE& zWLWYWB0t}uZx79YiPo3jUhf+zv#KavHdt2TNOx$&dVKNV1=csNijiiOJq3Tn8;kMS02Yy@4k3_uBWqJy`;Y zO5;&7NT;BTqs|5;5WdCy=43N5<8GE|7o)&mH8k02GuFnwfDSsW?y?CR5U<;(H`g@d z>d7aIv*)uEQ60@z2yGVVCa>SWllAgE?wuisT1gU*9vetOS6jhh3caZt*soZ4`w9>4 zAMWYjk^)ZjN07wOP(lm!N>OaD6qvBHPEMuvPV@Pjgv6L-(yu9bd?&c8QFrhxDap!@ir%u@c&kQtIrl978ytq1b*49x4Wo zNja*-g?765CDo9T?wt0yj%60YFyeVmCqCgtxYmj_yTx4kPXwEAr+36rGqWhGbXJCcxRt)(tg*^8+K$=SYUS>id%vHF@Q*1%m}+N;J^a=`zW4|>wsm<=1zfJ zY+jai0e+C(JCx+#uKPZUH7~(zM-_l{OE*Y_?Zk6Ea}dK@33YJFrc?p024zq0?Uh2n z{(wxN#ng_MJeNkb@TzTA>pkaxDB^r?(GYONf7Iq!#8`HZWB9-Q5xONr0nm6V%@Ly& zUo5|*=veDpd!1JnXXzv!bj-@Fs4$mfB6`2&R_-JeE7O}TmCqACzPHr6Zs_72BaE7a zZ8oiwejbwrD!Zr0^9Q*IpQfJ`oW|VVfGNOwD=b-@kniudAWG`+=-e?H5W>RpK0pzN z_ctDUyoynQwg1=9E53Y;I6_p9X4f3#JJ%haI0bzOxxdyKVE%+tAH6etWo?sJ;i%Ls zy-diIYA*0e>gjBF1xQs;L{BV%tg=epMXwiU`ZCva{};)GVb?*&KXv4mG89-}`Iglz~VksN@&%N?&0w?rYL zbM#WXLH8E(@eR@uNw-=y3<(B5eNZ^EmER@3)l~j`B$~9VckjY)=TxL-iv(GDs4cP? zuU zMRb-u!FTHZl*qM^QrkG6E{c&HZ%w4b*PFKEu|}3#5|dN%mEYrwSF#XGv{S-_)?>TV z<`2)}!NWvK*z0mOPIcBP4r)8Sg0y^%R{uq%a_|}?t&@rV!d`FK zUg02H`y6oHzSNA(`7)Ev%CN*oCwuQOWV6^3{oHu5V{V^6pzwVSG}#Xsy25Te3JUnH z3Gq+x`=C{P{M%k?8EUnQklzq~?;YcJD+4}u7L#aky_XgVEmLB_2oi(0cnOOW=h2`? zI1{Jj`~=eC@iS`fHuxpBRRcf;D7>B%-`qF4JbZj3?=F>!SCagE zRB66|c_&!E!?(SuT#e@zx9ToM0P9D~SnSy8)lV@B;i&CYB;%tr!M7)Vp8yq!A35QG zS6jDp(LK_mwfaR*<{v7_2JNKuTve7%^@hLkS}6>&&TGr?A`R=KX0kF<8qb`a?CCnjEIs=rj&y_fY_puk-6Wh0k+?#pZ|ZZ~Zi#0%jUx3Po{G^a znTBssDFiMF(_^4LY+PdI$ylEho2u?RMSa2Vm-uhRPd3ueaVP)bdfkav6nUww9=U+-ZKNE%@ErRroKi z2}x0tYqd}kSKn~+*SEQ%cxF^L6{!~VgoR*%&D^eaqKqsV)ic>nbiEId-1+lXY; zgz+`R3xsNn{N9kWwNZnZ|CFUW&KnttByUG`)vG&##XG^&*eCJ#rL1 z+xl`CA^7mqc##p8e08_>^x^|JC3tAaIv zO3dMJD1H&}aeVshdG@V1jB6jN#AizJaAz-POPp>K4US4go2#BpTFQwDFDzBcdv_5h zhu{T-!;8kvvi+eu#thm|nj?BgukZe%>_;Oe>MAYpjEVXd}3 zM7C;Up##&5(dP?Cx)li&GlT7PFLU(Hdf|k2El#bT&aOnr7CrDnviu1c3bL*&sjx6( zXe-KwVY6~zH&!TMuDreb+QDKg!ay8KDCW*4W03yoxs-WBf|r^u7feh#YX6;;c)DBR zD>GL~UGbjZLJi-Vlu;gV5w`ts$!;KJtJifV z+n`=DqJhW1oQJ-z>!=t)5MR}>+jRPfa3UqjICR6C6Yxlk&arpwq zH>d)2z}b!sYYeW2>7xz9a@zqsL=a^q-l}iLI$=?pDr|C`SM7^{s_xPDcuIqSauHRI9Y$*kj_wd&4!xltk^NPHB?G9dlCEb+3o z0AgzlV>V{G8wMD`%Po$s9v?4%QI(iy8mTa^bYU))G9=DfSy_{cTjw8bj&ok3Qe^kk zwifbd$o)7~D$n7{3Rnr09jW>4h=z6NeY}=&7HES2CjBqt(r`c5rL>De-Fz9$S%6<6 zWShQAT8eg|AKn@C<$;l!z~ttyo#YJm@{~1T6!r14l#h4LtrRiO_HaemGyG9`>h%m+ zM)lGpIif*tR|LZD^$X+Uq}nz21wn2>(u04=M5kG}coxmr?bNgs;c44=17;6#&S{6x zYvtNQR}1o%JvX8TzSo0?0~JCyIbfAHosPV5j{L~vi=|(=Kt{%mLy70!(T{#HlLfp;|Y7nSxyXkSCgF!>hHY4dTlejM`1hS z%_|8RHEXE39hFWuEx8v~o{yBZO6kBhsvA7_Zn<&uS5A`M8{sDd62_>5nVRvL(p8Qg zBB>NI4!PjxciUE<#o{%hT*_5hQevP8I~7@sIqWv0>UvEQm;E^)-T|Tu15|`IaDKwZ_8(J(qCz}`KS+{ zhgaDdPE}U~sSEkQid?%;Xgp|um?;wIj@~|gMAH^s3dvedVU^}pb6KW!Y;ay~GCS&t zV8|(YH4{Z^d73Z%HYAE5as>OZ1I)TNh$3OZ(0+5N*WNY%?YfN-<4SDu$^D5J9;^!4b?Va^3>BtD-5I*3?|5hD} zZK1?}I0R@B9Up|fviUZ2T;Iz1*V0}qcpnWWU<#b45c011P906~X^o&!tgPY6zd;lF z`E+;!w%0JR8_0#KkXeeg2e=v4sMH^|V|J>R)em_S(q zkQ{VL66nlv=ox}@6!vTN_8N39?s&4+`OA^?cFoULZI?1I)dDu`zYEOyS-$jcMbFof zAR$?YCBLNrS(_{{FWYt#55CHIE?gutQggL0YCauv%k+8&sYeKu)!5mS@ltRDz9to@U( zz#L`Veepr@QBg8n~yNPQm z7I3V*sEWy}12_$G*sl}T=}hT=3EV$wXBj1O%xyMOcHRL+l!pPQa)244h4dOvB26q^ zv;~xkp}DJu$O)=^4c^81MYy4FCU)!K8ABht_Fi&~d%k)&XD1KeVkg===72NNh2pVZ zl`~zqMMi4KB@^1=m{0D#vz`=|5@nq|>Br?>25Mx9{a;&u^G&SXu};AP;9xmDiYF5A zQ`J-D0|pHx34Q2(sdK(uW;DujbbkWHIOvd5EwVz?Emf51u8d2Rc8Q|`Noz+%tKrVa zL@K#Wg_%%rl>H2ACi>U1eAd zy?#cA43J-g)^Jpz$@b$UX`xZ(v)2)LZ2&$XqHUuL9D~d1z#0IenGkw?{Fz8mq5Ok5 zt{dn;Vh^^6Or^aYG{h&rtb+7iV*G|cbJ$=Kw4v~#zEGA#(@+ipQw zn8~xcFqCSa?`wB=V{SSu@6Xz9m$bHmrEMW!Vx6H2M+M)&CCQRg4my|>vupSzHfu9^ z_mRhA8agRh7DIUowRE$mR2;|Y=Q3Z-CbaN4|NLlhpYYp@}mklg|X3x%ZVd7 z1jo4fE0M9TelIWLjk4Wc3O*=R6=khaq<@O{cC3Q9rb8F0s4DR*KtRZoHTHc}Co*%^ z@JTrE#F=4dkZh@%IKiDn-%km^B}GEBYhds^_(uy&a5dnh(I@-WK*?BV5DC1j0MC0; zV5~y7K?sXS8Bxaa=G4WVdq;Wfk<5}+4v2})YP!!%4imy)gvE@yj9f7WLDeBz2uKp^ zXR_0;9=|jWM6Bkw=>H>azKq&{zDXEo=*B@nGe5$SAkUBm!a5U><7wE5;R=^s^JX}0*^&q4@Fav` zKlCnt-PktW+ml1CQR}<%VZUWZyl_j(!LwgbMhk&NCap> zW_t9D`irolFlq<9BpLLiQG=$8$vva+ui~+ClQIpjy*wNSwTgl3q)5+Ov)fk9+uK8< zw*w>D1R_$Wx}TR&)G#d>AO`;tkaJ)-QBlcrdNk_AqAiDR7^8NC#oYRK=o_9@ta4HU z>|i_zUfkj8p<(RCM5fAK`syH5TbeHxtDZ;ov5XZ*mP91df3n>2UluE=`7=?e^$Dw$!#ix56e0Mb$h zD%E5z&G*H|=-w%;4qt1intA9L2#Oa79P4WGr`E`A_dK&o`|LX0AXPoE z1ui5B%?<9y&XFTcP9kxS<)qC1FXa232)ZfKt;uhH_>PH3*ra%V(j~nF&;GJyn3UL1 z&31A=&SaPY5#M~{r&AAaiJ3+`mzvWZ`B-WfySH(xr)b{F7eYt-e`(S32XFSW{?-w_ z3vm43M?mJ(G?hh4?)`u!_LLBfi5l%gOgI`=+`Aa}Bv zCE1eR*b2E+$r%6umb&f}mn3GHQ4^4`Bt3Y<=_$e*vp1y45~}vlwwlrn5Ozq^*i*j; zhpaKBBkOi^2*)69K^#8|32%Wu+^B5UbpH^g1t6Cr*zGj%_HG=8_>W!^5#6fEGdp#| z$Me;=qAmeH{vZz0?cHkf^Q@QEawqa;C-VwRDIWnHVTa z&-`Po!g27vz#H0cVCt2$)_DhXUM-D+2%2eCU$y7is-6+F;c&gXbo!uAMO&z?lzVrpA<>t_2>T&c@i zDh@Yj-1+ULQ}l>Ki3tHPfN!SBlIM(kFqRjSkGS5(RGLzv_pIE+L83|JqGwiZkxVTw z$B@u?jkK#%<+M9*#fJh zdHPZCC-fQW$HS@3mYtHc4U7winR%ITGz?lA9>EC5bxM>km&DxlIGe4FwPxQjoC%15 z)t5!)+6WY5APjA{RI_&oYOMnPGZ(f`O{kqYE}U1h7(J(Y?wn?xRb$Qi>m$bkPNz<; zG&EB4x}x#T_~m14^bG-EjS%iqQ^*Nqs45Os4obn8ksz29-?`Nzn5929XIY$G+z?iD zL+Y2@mu1w9qn<`D;zY!!EL=@SqLG`?^bWPlXY8#w8(sQXT)4| zf^w&YXn4zf2@hTF>Y6Zdh<(qhH&R=tDR<;TmG=F#9)*oxc277?e9>Rc|4E}6ApoMB zsk~nIudnKgGcEAqPi>~<_wTYL`rg1!t(0g%cOO|k-49C<@#3WuXAuod>_E^{oA&`doJP?l24OX#bK$~ z;i_r&^84u1w9w}1gmK>AUWyzGHduNlY@~NL<~=s(br)L<-+&FjaODCd)6oimycBVO zAKp36s?J$|z((nwbBE5%Ble^!5 ze7op#vOVUsbTHR+nqOby!xm5RK9ZCsVMk$3^kB7G=DwqPEV)vhx1b)X%m*lV>R*BQ z;0CK2(9)+?-*u9Sc$`lv7zf+{&EmnXA^QQ#o;Iov)6l2hX7QP~=|bA7NXQ zDArax7HI60p6$xqjn37C#aMR>;O5GI@eZ9WXhaDt=oxC>&b}yDrXCjXFlNli%H%Rk z1od8QF4G3xr7o>-9;fnHbown4D?bmNp8&A1q|&Z2-b8Z}Ltwme>b z)<)PZy&@Dy?93%a%_rHe{npp#_% z$+leCrPxe3n3Q>?;m%kbmE9jOGISxVCv33$$tAK8J`{$3efaq3i?IC?(e<3I+Rt!JY_VP4@08no%zvYPD%$d+ zfjkm7uLzhLy1}H9d4Vjh$%a{nRpcIHq7#0u)W{&15m++;Xj zWsCZsb7$gj)RPb)(4@)R;clB?qeh3FEQc5^ybWZgy4O8b+Ov9)V8y#=iC_yJ!Bo(> z*2};<44?%!Ru$+=nRO~bjK!E@>Gz`@Nl!Yioc^z*+Zzxq!{Y}Tc1E!$7U&%t^G$Og zA{xQAty$}bUAA(=uamn|lH~1A5KT4;k;UnvGlqhyy<1eC!Cs(MZ6(iI7#^T(Kn_## zO?4v8Gjrz`rh8d#Er8Gb0Xq@Qj@m!Yx#P=X(;|8|rt=|sw(j8!Vl^vu^2OPmNANzRV+SjU9F)Rz5z0h*tnG1y>wFq1VY(cme7$rtTZ1r+=?cSy6uS;gBi zB?&$b_^{Jp+TFxo04Cryj3Ub14~xjbF|njCI-}BfX+;||g}*b+RunvIK%XX&uEsrI zmsfO~I_6`&-iGhfgD{?~W&rT-N~%!9iL;t+bQ8l>XkxcMe41JI9L!Kf+0*Hs#k-<> z_Ol6bZ`+|z`EC5711LBp5xf@e4k7_UT~dAz3Wil=ALbuYGw!fRL|w+eMUuPdN(bU0 zN&>w{$hHX%WsMjk>0fn`K)F@~2084>l`)dfMezQFF9c6qADf5Y9;e)Rv*;)=pq>vS zBG8cE@n>>`+ypg-FrjA#??!a?1%k-4 z#Ti5wdl^@x189E8=`lep$hYJG2^QZg8yO4=rDhTRk?~k6us^-pbSXB~2)bjI`|$5Z zNA6Z&;NN?$=R|=kyAg9KDMG^5{&PS0p|O4Y*d^v%suJ#?68EyVA2Zn&iV}xDac4!2 zUapA(duYu!X-7R2bd?x2+w2-S>C>4o9Yld!+&tM!+>B zpfVEd6&-Wjx_De1xpXhgD>TFhB9kk`ghNkIf(DoERhV%};_Ge1ljDa#P# z8knJ`vzo8~dnQO!v@}BO>*}l@%Icu7=#ZQeUr+rOKm4yPb4kN*8HbH*xl5U}G!_ms zG~7Q;NVwkWWK3pTWKiyCeGDTlcHqiIwRvs|jnQI`@cFy7_>$6(4)}qzpfzW#e%4;^ z@$=>3!~}m3eI7VZ961__h=ubI1BEEuv^Ge>WS_4nu({Cm`Qhla9bBB4oB*~34$YrK zGl>1BTaWF z1Fso*@^W)qjNFH)%8NXDh1fUOgB5VX*Uhh5f1xJ1ZL0kvI46mG+~5H^f0a3|HAi_f z7GEGkO9(EnV+kwYNV*iC=IVs%2V0SX+1d|ptIBcXWSPS!99Uj>dH^Rr&mzu`IF{vM zUyaperyC~ki%MqAm%P(s_;TvCuqrzI`;gz%-`6)V2jhVtZ0|y!qC!pkILX5e(wkoC z1(1)pTI}*?4N-vyANWzEuGqn6mR=p-&|eZaadE;|ZlwqUB{QDZ_G=vFO*bSaT--xzfBjQ=1L=gd#ZaU$Zr?F$2*SZ~GSw6c)-TuDQ zdpkqe!X}7+AWuy0PAi4_K0ivWvTp(}JHMM#VR(t}9zG4BR|OuhAw)=(VTpc)SjiIO zZpEth!yw1#R7oJTdDg1)0AAlI#g13rwDr|xxCr6^XJfUKf|Fe4W0C5k`sxclA9Vg@ zQ6D<}T?=%9Wl(X0u65gI`!1INogeANXa|45;{A@iP{CQanx<-lb3AG)vS$q?7mT{Q z)mLu%$vxw`=gM!&FiOHyiRXf36`S7~t#)!EIsJl-e~MS-n!YJ-WPZWLQGOHtL4SP# z*uhQskXZjpCPv83F?CD>z5*)f(++2iYwC^*4pj;EVF>U0?(}j31CBvDyDs}9vf&@l zF4;n7%R^BJzQvaNl;$1t!ea_B_Xcioyx1Dbvt(%XEXTAL&KXq@jh}^SHZJzjeeup} zUFMel$%r^k8vt+D+Cq=oC*H;p*RHwK^;n}%>u3y(lW8NckM1oVx(vP|2b!VW?#!*{ z8lBo4V?AVNLU;RU#**mjv=``zCC`uq;=vJBmJGyevke>Ky_KIrWDX?kPamyCYVD*> zdTgis+M>%=U5jbX8`@?`8$!`rdEK=g#b;vrN}n}~o0Z}=afJMq5)=7?u#A`udN7qK z3Lw6@Ry4lI-mZ&G43pIpG*5cS#8`)5u5NFN^)G}tHj|P+TU+ody?+=XFppcNWn0sA zR)HVc>Ik1+bpGf$4GOkQkj=7}KIe$M#;Q znX~5t!bD9q^|Z@0P=i}NVyE>H0(4nnwlxptVyXctqHQOA-mUjdiLJRWE{BIXEnqL` zC0s$WY1`u~cJz{u)U{EaObE%lgJZU7L+Dt1(eGLbzx@bZ)8{#CQF6N>{ZOrsJ+L;h zK-4NK%X`>->toaBOvcUp8W=9K7!ZS}k}xjpDoj*N0BKRq7Mrr!sB3`plp2=c{sw@W z=UhqKcRSDebdFcpT)!bYJzjT(E_-4}!Xeb0MC@&W{-`;fv42vbap?7u3z$xOu2}+P z5YcBixTaW<=>uMZNxxzm8!Mbcrk^QvoF}vXwO>@wlhflHz@r6S|H2YeaIx~6;woEq zOKRVN$YP9SE;4ZJ%iXsGRH%J-BAQpc@gTN6F`?W_>4~EWj!7Gv1|Y;rIRt%I7jEZe zwj3u%YnO@|ClqRU%ELVh@iE2td1Oi4@F=;z-){5o!HG-=o}!~sqd#L6XsP|MaePwj20 zRL|@xW*W}aUVjl%!osw+B!*+v5THYebV}`^TRmJhfr#FMMXN?AUk)QVm<2-6(#6o7 zHx+fjT}IM25c^vH!UaG@!?-)VhrEMGl_#A@n#tg-q4^NiV-u^Z7@YN!p^|nsC&DL4 zS`r{m{iZU>)d%nNUw;61Zf(g`o9jXZEM-DvH{Z;@UOBB{(dRb)vMZ|1RT?iL4(P>g zI`0KL=i)w>ldPi{#V7#`LLH%>Tum-FV=7}do1YC(D5lvGX+ke> za@stlX!TvVq1+v)SM8qTUf4$nYodtxE!gJqV*+z@qW<2@EBE~1(TVS)@DTl@P-@PF=@2wHY z;7v-nru!^cCu*yw2eMH^TW^)TFbap)0-NYy9D%WQSf8t7B*>%@@V<#dXAJ+2SyXjC;6EINf*rRoR3*t9r=hxGZ(+uUrp(Lu?XteQd z+^3-t1VUORDU>5-^2X5N2_!^U`&l)(Wc*(ZQVDu-aNjNf^4g42C>vt?`Jve5xnwySct7CS1&&$? zeH;S`w9>ltokiifTI8Dbgy#2%C-lpia4LC8l`qEheQ6Xyk>eDhl<5ZbeYqaWJu0gTBCnDlov-?8p zBjhjqdg8JbIm#HpxrC6r)Nvpvg0@i3iWj0xWGbP8-UNp$pA^C>;YwHcYq(q*m@r-< z1rDwEzu#s1Zb{3=MdpOaf5V7Bj&B*yc24Ci&r>Sdf*m`^&$+SuC?IY&4UQEuED6yg z_S0I5RMnnnCrY0vnUQ+W8cU1xx#Nvgr*WW3fCutJL5o5>o5 zlZ@owzh?m`y;AjSuIOZiaTBsgh;Y+$3%CxhdokUYLOfP}u_)W|?Zm}3Q2-Hu?tgy} zomiZz-aJZOQ6aJW-Yp$0+!}S6HU1rbqm#PAfqo zk_C(`&4`ueRU&OfHNR;j!&IT(Ocbgf<5p)Fm^AB`PVA$a3u969$e zu>}#xzMMeN5k*!moxj1va)RhZO5|I52k*K&M!%1<*?gd~o3Q@-C3#h2Wk$Q{JS@O3vP!^w&_Q56)egq?%H_Jha}mSDrlr|HD%Ar>4AjVv zng=A$%XMxc7ScNOMziN|Asd%oS(b$rj7^e@zX)?vT}^=H6?~x$9ZR|TR`x6!r!=)gDReQFrRvxogTb?2E`iVS z=$v^K;P9@|RdUI*_F5bKP=Y$I86@qmZsb9TbA9UxpXyC^_6+(hE_!jyXZmGa3SxUt zAW-WB*7Sc>d7)Eh5Slu3kLa2l>*N2$FDiSBlTsU^7Om7r?7sH%e>P2lqv*W~O|R;7 z>m^~}fOaWe(pbZ%_-A|!s}Fs(MnXfJyK7e0Zsm$>A+O@Y4Jda8mN~t4k3BUU16gAYxH^iW z4>AVFq6Ad+>Wxs%Iv4lu(~-Krx4;4yE6i~`O^sBHzz8BgXNT&;I7PIZ$@9#0>$PR5 zg$X{%j)zEEoHU&1I<5}GJ+S3&IwH)TYX}bcr}`bL^0u5)sssZn#Eol4QCDUcbaERy0;X{vYSi@#YHc+emL?N4HDh-*R(KkstdtA($h?=%& zW_;Aa7{q>m4QqN4u`q;}qDM61@%G6kYw;oGB!_g_Q%Hy4Juu+aESQ1!XHY2=xY?BF zS*I2Uc1Ry8tIx^24cIu3mqU+sKY^kY>O)#^E{{6|1u~X4CajT!ziLv7UDNkh?*V9x zMp-Zqmz5@lxUWHEhQ{l#reoB}*7Z5i`U>x{QOC&%QeX`|1})%JmUVP{%cXB`u+ix? zwJ)vInqlSsL(poLCsiPOHh|p8fdMn^f|T}HDOUSsN_ie%LqXaKLmf^`>!05HnyOplPC764?&s(;Od;)eXtj85{Q|s<)6QLAM5+{^JPCM(HEOKgB zNfsgXFHUX1*@e;!^vfW77BVOY^B8B4LshEl%}@eZ(=xV6Yj0SQ7^G^+Gfk;g{BSuV zyI>|`X6~>*r`W8eENjId1fIH|7LWn)tLGr1fW{&2>qAK}Foaf{mQbChaQ)HLUe>~< zEM9=kQ(su_T1C$?nuiG*e(gjzm~gL0t}s+yNMGMw7p_y#meT*!n)#}sitltHNXk>u8$6o zs6P$Hbqx=|aau}&33Cl8KiiB0!Bw7d#JoN7qLCB9$fMuHnN0S{&>O@CS4&m0kiYF% z6VctzwSy>^5?L+%YH+MS!=Gtz_DmQ^Rum`-qcNuk;nJkCLB$- zXi1>F{H6YrXWN={JiAl0#HsoxvfpyOxKnNXaMD{iMJwD(OUm-#itj|x2 z5#jpp;`P%vc~P&8w8~a{4uq{1v5IbzFBo>u0bR6>H zEhKCP4(6DPfZl?Wz`gE;hZ)v_oGtZ@n_;WR!w83K^T_d&^eeB42%+17`Um}>Z8uqd} zHPM6rYl?}%&DGsy8LJ)~LtzlkI^!k}VzX!mv&!z;Z)NMs_DgI6uaRRZh^%6`#A1qp zBCY`UFd8CQeBwLI$0qnpy$4Gtiam$A+v$0(i<5jN4`cn-kJLbizxr+-lULafA@|{{ zF{5#`TITvB+&p#&nY>o19_7fNX13p?)=xfbf(j_@uJbUfKxI|9)krIt4nsQ2K+}%H zeavJaRBVL**Zs@Owik}`VrRKOsS7|z{-s;AZl6PXZ+Qq4)HD+(i?G})-5sm3F1x~m zyswqHJk7S^6x};{jgLT(AX-vJ=%l3T#EEJHg_otbz?xWEY4WlP;^K)JWn^Zq^PQ|5 z#T)tfO|zt#^Fve~out4zmDzxKK=9{{lXXfB%o!XP7&>!)Uy`NFkcr9BJC-~KT73c^ z-j1&4@|aA(E2_0bnI&rCFeke82B}s-Rpn(UTo`S57Ex5DDS7_$&X{;D7y$Q(lsI5) zOMY~ekH;%9-zxS$l}PFifC34tX3?1trU1+zWs7ys4upfX4m>c+f6 zr82oL2MB?uhT;vsyLj|yZ3u1%y^$v-${V~lNQ=EZKBP!}0DSUF-2E&uiJkFu?&48J z7*nOu&}dOmo~9F&a3NRdtX@bXhNOe4SNv(DqqX9LMSLcNt#hI+WV zW1Zj53Xm4{X9Y4nEZv9kqqHwWIJ7$<|0gU3-I&+VZ1zh9lW_lP6HYtk z{{l$uu8l#@WB{AQwURN^m{Yd`tk|f}XucA`9T(J^O2(+meHLB4o+pjd*fbwI{nIV+wuxgjYE)i(_`XC6bmrBT_(T9-! zyWkc0ZiBszJ)PJc#4_4e6RZA>LHH(HDjAiNp!1{m+tfIinTF?K&d|E6wnPImwu}suo)@i%#C)srm$dWY zZBHBpS^u8S|# zrCI%DzziYrxLi4?MxkbI0b(^nw-^I-e6N8%yg{!zNqr9eZ+ zPnDw40>;PvhS17RC1CQ0WiD6?c=DGaJgP? z6V42Y{_BlL`r(*vUdWa-vV((h$`)5Ox(B7*0RI;P&s27RO>z37BQ zLK-D+qmcreUth})G7)j*;@4KGQM)32Ml(iyhn>f>n~2P_KVWNzbgFK>IU$BW@N$5y zCV`h6Y+2(4`ZlMnRp({9yU=8|q79@Qqwhri9Z+6YmPhO?B*s*=*L)C0t<_komk!n< z`Uf1~E!c|vb|zW(AodJYlHTm8d0_f1;uDUzHl3(~v!WlD?Kb^?Al_N?+OuPIg$j-i zG!tc6OS$y?IPlr&mo&4ZJ^!S;!mSc`Oa8wqeH*a8ftDu#L|;xnjLRRpa8smUI_2qm zG-shKq|0cK8W42WI~oxwJ6zZT5Uzu_ zb;l5X-Xc~t=ysPw(_m3`Nzth@1@E61)=wL>6f;V&$$zqTaoy?An9R1et14Pt5|!K%Gq9n&SOci|5mbtf)r~TH#TFFvl{667o}*`do`{*H zUn%>!K|WMeW8n`sCUs7~pA4Bkvn;`1%SyuVC}|&2%neOAAVuFj-A2^9Zk``bvQLMY zOx`3A$S3lv<5V)&VzT@81t;B`Y<%EO`jKS$g+XH1O1Bw;y&#?;=6mNA1_z6wcpKC3 z_XszLDF)`!@HOI*eoe^Qui_Pt9vEOg@4TZ)_*M_>cW+lcXqynKb}=w41FL15kg2?A#`AxYhrn zkwT?^G6P;cg?J%>p>6hEki^^h@UV29UQPU`d*{L$ z%_XcVdhMEC&IW>2V4q@LWS5nUqx}f^(_ZYr{JjBAIn#;Pap*>(zupUZIV?|RVp@|I zuB9&E6LJ5bWai%?n&BK+J5{)0PYXWAmsQAcsV%Y1o-&w}pg2XEW@)gN(q9=#ZuC@5 zX-1yxDr7tVAG8K0Jx);3orMQiUp*AbF3zoPj&YzM7v0gROTjt(zn>~9 zE>Rv@b$lJ8;zWBMCDV&-?-fXYGL?&}sOLM{1gRw@7l?B@D1}-URE_5(kCUycN#VNY z_uEB}8U={@mn9NYTDtIoEA7}4`_7TsC>PKaIO!4p2CLRoeen)hJ_j0oPer*-e1q7h zFN6yZj^lx8rU07;%=gXF*-QKt@*{)^wT@O&>|vWhGU@2$PQuD*g|z#aq@j; zOQxMrzD(|`1MvyKjQGJ-t0wm-!MaO3q@e#4991#~8cvw^E591LEi5Za&3QD5+gv{h zli~yR)XH1}E!fqsv3k_v6uMmpAI6A*Hz!3-=|2Y&lZ40v;)Y3cbKde^jE^ASLw3;I zK*kUN+P$L>M#f#Oz=kSNVJBQA*mk*U4gM?53=OTW&Tg?(Zk>njTzlIboI6PhTX~P04`6Y2Pf1!VcJurAl(F25szL06^h#O@+j4RpDST9Y zEgr)#a#v@DSMMfg$m_E8+01>$Gzfei2_KE!X5%adlLDrBBPi+3>BI7v6nl{y`W^6E zF>}yP6kyis=rZ~fJffvXlWc`cGlWPWU&@e;6L%;jm-?kotO0CwA5iI2`tP;-$|6yk ztnt6!!uWJq=J0-?f;VcM-^Zo5lE|!i421?5L|)MJUhl4Iu_D6^Z%sCBp7DBH%ZL$w zhG@p_U>qBsM>>*rfd-`JB9a4H##3Zi53;C*h7vu@HqxiEFCT{?`>miIUMSi+ZLAYw zKk^kBzMYO;6z~^+^R#HdS@O+R)(Usy39KB_R|&ynLELBWQ9@T#xE3_XOb=tXU!vJW z^H(}rlwq46Qv+;temQo)(CMdnR}G}yBtoHpUwGKmfXY(gisxhN$1vRhdgKrVq*e7fK9D7tGc!4l5m ziZ+=F$%+4Hdy@W1fmYYDCN1_&-~B4YedEP=V6f-rMBTlw53fTcM9b&jsP3k@|Ky2V zsGgHXUfGW3Jy-es3)ZLcM1Wr?WrXDl7T20>yZfMR7J_Pwewyz=# z%38~!1@xZ5pNCC*XCu8r$+-alAcT4Nb)HW%sa@Bwfn)tcG5Q}rK`{us*x#HlP`7s? zQfOAhZQW34e*`>d;&=?I`}8BY>K~_PWi_H%tWw?P!7?KAFAniZF;2&?!t34Ra_tb$ ze~0_{BmieHNXQ~^vhajcq=Lj9@#T3^y0uz4A zr)7>xMtp=O@UI7B9vwd%XA|!;IV?4pcP4aL6IbUrbA52+4BZ96lVDDix;kQfd=Hc` zlX#`$09hW@43vqrlTLsH_VADtR<#!P^UiwqE9lNo{Q+3rIpMe&b2OS-P&KMSC8kDz zrsYg78cqom!d-sj>qlNE6Ham<-iH3v^K`}psxuQq1_nN3P9Y}IpJAoTVN8f-we8_- zRzvbOX0GOr-{{MZO)738F|^Yfb)K6Rt7aH1y$mnHNKnTJCJI zuz9JED=bd?xejcmPsXwOH*pb2%K#ihlA&gc;0S(QcXJNrQSU`Sb)8^L7tt`6%3&n( z21}>N|A9nF`3-ZA(w_~1E^d_mpjgSNaaE%K1-P z$(0_GFol8QFm_@l%484Tnt|rS9~$n()!bE}4(%KyS^xZnl9}tW3B$Rv1+4e``AR&H zyok-)+#U+NfN}7PT;ti$CC@5olG^yK>wI0r5u_PZ4&rTrDotFsdof59b5wc@-u~{? z9Q(B4kBPM*|8Q6H+{cqrvaq##pa;7?c5#_vSJ!4)V`SpcBfb7twp^FnD38b8xAS~* z?Cn#>On}O4zkHYDmkOkmI#tF`+mCHXT>}=NI2XC~$AlnU)D_)e0B+fjf(*45u5e=* zl72`i$iq6Ut&?F@81`zhJPVqT<+HuJN9RrcQQ3JmZM@*q^%5DS2+GplW-Z4{wYc@Q znpPtzY#(~H94~G$z!=ZZGB-6r^ZpHAZ|AM!qPh{vS4fUfxt87Mv*^ODF4KW9*yg!J z#EOMgX+k6rEbZZ3-j(4ASXpq!Y}kDDfNE%uEy#MT;P4xjqqR&XhWD(kJVmZs(zlfK z#e`BSsFq?=NdOu&t@_*qyj-)^p%cvCj_2>*O^vE0^(L!=*;T3If=wWLvvzV6{zt6AT$GC=Fa1j_H>Xh9-EhpL8^*4L-R(%p=Ip>svw8+P=bpDzH3(CKzMT zUnMN_5J(nxcM`mrGG9=~0{1H6Z%;9;=xt@M8+JBoZqq^#oOoz&BK;ZN7KQeMz31J4 zy$c;Q3Bzb6Lz5P64t^}Hnlb)kMg^Nvf)YD0PWC;@&veVD>g?MUiDN zCNtgp_fIx+gE6Pbt|FrDuK`J!2+D)5F|hbNlYN!EMam7^Ooq7Q z4WDf!2vr-16OXOWLeJS-w&M+FH-iCUHtU3nDPNjwIulA5KT~Z~LW|03qC7{?(Cu|0 zleSqOCWQJ-23XGA_Z2xIMvPY|E3PB?D~khf)ICWmUp0(ENQEL?1Q*`p_OE8H6|_}N zS=NTnZ%D!Ekq1r0M(9kss;V|eMCUqswx>CeZ_!DXcJrzlZ+yP7C|#rXp=u`Dm>uqn z{hH8v1II&Q5`MMzmX&Z`b-M{v2bo6Nt#M}ENzSM&vwE*Gibk~lZ>*j*V}{64kH;-? z@n1Y^&=UarCqSGch;_9z0ke@h^qS~l+pcx%EUA4(q<|-wL+OSO?inqm^{JGUJI^a;Swkc; zN$fkj3%odrr~nGgSz|f_h=e8zi7CqLTJDBio&%U-A*_1*wQ@GF2iiVs(l+)0DV_s- z@Q}x;_Pr4~{xcFdyAW98tUlu{iZFq6dj{+}{^`M=+>u~s@ZAz$rEoFbxUR|lHbtgY zk=X1L%aSGxRq#z2{*sNLYktI*(ev8aI~#CXs#N1zf7BRXi_NOHr^Y)*=$$>`H06-sJ3+M<)HSiJDxp{tBT40pw)&0irnU2=!C@ ziP)F2`0vH7W21@==w$+8#1o1FzBf4nCS%^?ZO9)r(09_LVsTh)Jx)q zj*OC)*uD;8OYsY;bT%A`je9`~Z!>CsIHKHJJ3AFN#Y+9IR4%oyj>n#Zx=PWDz0x0# zAS_u4j*7e1!F$cliW**E5~)v^&P4z<14`>Yig0E&d4n}BanIHHy#kuDMOg+}z^|na zg3EA3gmEM?vmU!mlhr&C$a7rIO2gpHnrYDW7oC}wSN1m{>6yxe;x4K|Cy4tZeR2N5U8Vn6klruxl-0su~Y>q0GhS|0s8M6lb~v58@&G&_{b>WeE(F!=cx z6i*(a)e_^)^NZ9OZt9Pip^KqzNqD~_lOXw6$hm%bLl+{<<1H?twK3gh`ufH0gh4>1 z+yU!P@L5Fw?k0V>C3VPM2hJ44FbRBef^Rg|^(8eBB_ndJeI{j!+!KV;`bPJtw-|!C z{?TdJXR9Ic{90WN%i@Ssv;3R}j(U&(nX^^;L0<@nki-1_PpM2s#V#g_wObQv_V&I6 znYS8=+Xt954*9PN0uL9f?4c#j;+=XCd^P^Pw@CW?U*Q{iKc1g$S>*UsrWow5QOmbig(`4HtzX z^!(zVUvv(OkrIGt%Y>`Pnz-=~D$s*Ytnf|wqH^b065Ku4rkT+#ufFK*l_=@F>x4(R zP+-Sy8y_^_o7QpcyWkjUfoYEhnU<__SN-*u;!JFCX`*7a!Vn96;(4pP;Q*_O4?IXp zHliaAw`bTYlLptSlQ*Q0{n4hq7a=%XN&%H$tlCeybAl=0s!jK%{#UH(H$-}W3i5Ty z&d=TES>D~mscns%$2GAnQH#(4y62_piD%Xp_432qGXQSk5*>wI zbsP7r{C{|#I(42?7few=;b9Fy>jJq?y1YcC3d7W6T0cliVcAAJMI8mH^JcXmTssa0 zrWP(jkI_50(5B=y_<#k%#w!Snz4kc0#WD248_&F9QpKu1M@RnSg>~0wnCIftmIeII zs8RH=PXw5HOjLoQVHl>uZ}H`y%QqHSn`PV(+7Pr~)<`})7J`qY1|uUh7k`s)0@v?ovoSY^TlyPEWylVehE7VKW?^SPkIev1U~BA%tOzm?DH zyUO_W{H;R9ZP`Rjj{qnH%_pfbR>Wg|kg+v&3QD>q--5aaLN609nRiGnr$@r9kz6!G zd^4;wrG05uXIzGmKmOXCoQ@p%u*&S2A-qMP&cf&DBUsjVLq(-uurdS+yuYXi9TpkV z%}7T`P!2?qvH~a4x2%kvS4aV7`ZFq}eSSFDYs*raqc%spotidIsy;Yy_8@kVdpdX2|iFM_1iN6q^xQo0eezBfqY?~%XofZ1|(!LX_r+ES*LFBll z64^iD(x$iSF)uXu)@kl_&tZ+6!#9njOT(CoUXk7J7Ipvmd?@*(hDh$%=as&@X{~?! zBvj|vH7W7j@89_Hrq8FDg8c5SJLFHgE7CO$qADZQ!Gw23jbZeB{ zSFTV<6d^vExC04QzsAu$dU&TOdtYxTC7O^n?UTL+x0*ep;S`w2 z_?*Eb`fGSxXFMy~L7?FryrwuFz7);L_wLxCqtX*eqD4*H2py6L8ul zB~oU<9xsLqxKX>@l(EJ3AgYZplJw8f_~IP;2;Cz`mJ)cu6WUI6_nq`vI0jlrHS z@qIGu8kf~)Vd`rR>8Rz$acX~=@P+H#Lo_V}3#2jYOm}}HIykniUDvYQmQu@`A8|W0 zipmZk0`WKg?70Y`<(h%lqhdd1LbSj5hq|W5fwsXy!&s0$L`HU0bnp_s_-TTJcJm@1 z;D*RbYBKvyk$PnxQOF>u5^+2ZpxIq%6AUmcZ-?X%0<{Bw|GBQ1>l;IGacx zIfLC4b!~Bi5of{6=O62m+#htolNz<;`gH2XV=ipJizsD;o+Vm`t={7QY&lDJ>SHkh zLlC19-X`RLfXKEO<4OhSTh@M8)WPe+F#_Tg3h*?nv-@h5Jsan!WHjgDh8l|aDlqs2 zM3(iKLY>o*l1n6mj2DO)Bpt0;YEZ>UONrEB)-7dF5m#sI%v?6??uR|3kz8*CH};24 zz-`9SB9J5XsVp40XhV3C=#mS63MYhR^Bfo`mImNb7Se1UOPDwr+?i|L9l(zR3+VFw z%|I365QqLW_?j;Uh_3eIYuq6mdhp**V$^E#18oD^{KMab3|Z(FaeAB^%cPs8h$J-o zR;s85G1qZC*tdyH8 zTw|OPytxfg#hXf^WnXVK=ge7Kfas`q3#bVb5|!q3{krMpfe%;i*UQN8t%vY67A}DM zPaJEXReO}Ly`T|OSQ*DAEU>m#&(DRcp=1OAVK@!jHg{5>n>i3cDHOA zmGJ2rNVL*(r?!h^4i|RW_p6f@sjy{Nv`J~e|GDZa>hDdnpgT5Mn7=(9hNkqo_bM0L-dETVeeMLHX8V zFHlLSJC8#{_!G9lz<+;@v^<4L9|DmHVqbxb_ugdOu-H*f3@>*_^hZ#Ah&0tP`+C*C z$sW3*fj7p-1U!EuANw|+kRKyXG=U6>M&FcotbfodCdaSdnd$%oMDK`I^1uIo7#>~b zlh@M&nv&kyjV0#vjT&&+G~i`+x-ZMxIq0~#Le_@+MoYOUBe*EFD;kxZVLGu`P^N(OW);^avY7W6mE`l#x04v8 zv8i7-i{0SG8EE*b5|{oV4e*ZYHt)?Z%wg(<(_CwC2wC>QyZP8Rwx;$uCM_MvS3R-~ zrK|m$)kj+l&Hpn1-{LQ%wgbOvDb7=2)X45&)ILQ?AGS19srBVQh$0=1y_m;C!2RdTs8f)0ChPml8R zv1!#n)Xt*J9vBp`OyPJ`;_q>Vb>luKj?;&Q?op=Ijq^8y5p7l)KVEGa{zL7hU#w6biF7UYuv!q zp#?d5o<5f})7efwxg?WfJwYz@X7bXF(!0ci7fr>bgqpHE#$u%~<&}}V8Hx+qX2em? zL$POq2$#vjB8YtC$~8>m1X9+ijHSL`4o@<${Z%8oBd8t{Ww~sp@;<_h|Ei@%{OGF7 zH@0FAKRNH3|FK-Tw25>Ilx8PE>nmmT`WdsQ2eo}a&Hy0}P(W4-1f%w(RPnxLDyEXi7W|hijM&hgLpr6YBZ5VkBtO6hx{Vqq=o($Xk3i!P(%XhOt)S;U z9KDo?#0C;9;(*0z=_r+^$fl26|DQl3+eKE;QGIy8T*(wK;NKcZbuu6*%p^N8hcg87 z+yF^Hw!c#J7Y1n2S%?;Ht-|PIl53Sx3$rdbNt@e7NQl8Lss!#f~oe?aXwF{I0*oo;e9;vZ0K>&$=~%)SvuDBLNXUMQ&td)jU&ON?|Hq zfgsTWx(Mv#E94;4Y>h`56O>J4rbkeW>K`J!7`XZusbxm)zH4=^$2z?RuG&QIm^zY zP0K+vop72`d)X~@2Pj{xCwtnVkbe8Nyur1@f_$12^3kDpqP3=qsImttc9DEYtsH%* zocFZ()(!=)TB$UDrbD#_LD*e-FGrpJa`J#ZL&G{gn7bgumW~7CYSxBb`rXI1Cu9c; zu(6WC%1B4mOkeGlLXJ69ap@#(Ph=#EW1?B0uE{^pT?ogTCXp_k19KzHG{{8+838G& zMyv_<>mum%HcX_=$Bq%d;XTm`f(%4`b1o3|d3f?pH`kMt5vmWZ6Tr8LX;~6*=ged? zjHrGv8e1gfm(OhS0S8Wmvzw9AV3kI6!e9ivIzpY19L;M|9wg3?T_y(&^pyT_2UzHn zIG9HF#jV(_pU|09yg#$+EPJqJBh$lBi1rZ>jYe(p78i24ocaMrl0FZNryYvPO=|ZY z%2B_=m0Br0mA*Q`yW;(|wo@H86CVo-!>c9mJPNWj5;6}rX4Ez=C+UN)hluS9*nRkh zPz#OlK8e!k+XtNTU7o0#mH_75M&i{=Vu{<%bH9m0idLQTA{BMcyF{j*!>$k#hiL}t zg#D+6kn&d&d%sY*YcYR6v>)Ahh^K(x=Z*WQGVFxkvg>Sjqza)Vn1vpUeUAvWBPji6 zS+G23Q>N$3#yKGsA?cxQ=|?Kp$faS67&W(fDiTTt)|vygCs5-IOagF;umIc28sfaE z`^(M~h#`-+;{XV78wI4D=MK(4Nv3wd)rl#+L_^v(O0zEWq&D+P%CznmCH_@<1iy_& zn@!wNmXcfg>@?l?Kav7U3Y_-KC-98qS?X*i!EQ{4w%)`4DIdnSWfy&A{vFsDg^8fu zFNYCDDgs21llg&Gj)4s{xl>T+fv}wDj3E%+LpC?0B$%8sF_|TxiA;98D9M|WL#>6w z$<=gy)?M_(Ka!mmW}NemfGNslOjoxO|Eiaaumah`YJQ;c-NHz{-8^@cO_FhNH1KE@ z(GFEXF33PvPRtkwSIN_bGM8QO=_*2p^DmRmhMT7$LX$HVCXu_w!lQQKYE4L>ce`a3 z0YjhlqB1kM7&Eu=t^zAc3Iy4GInmBh!<~x6@B>auy3^$#{tzSSTo^bwB3d~Q_0`NU zL(B#P=*K-eFvJiWeUl*voX@EbVQUQ=YQaAAmSz|P33G1|q%Fq~_fgO9*~#{%sJJSD z!!~`XSB<<46A21Iyh_RfsGF zfVhhx&un%3ME|t6x4;nJOz41=W~_K)!B6rxewpYdD94KqSp{c=mggHCZZ*ytdlq4b zbQ;$6e4Tv56Q3#l}0Smoxq#botcWQz#)^ZzoA3lFNWYQMs6o17`s_)@?)unBh;)%mCj?apqKgA;F*GnivGGXYp{^6Jh;?ZBBoT#Q75vU1b_ zj+;MsTdgmyS(oP^5@%ff9tZpqi2WXMQeq7iqPSG7D=9j^R?^DeU0Hyz7@XIv6|Ig( zDj060?ZJj0eiH0A3K%>fEKXP|P#~4p+rQyR5hHlzYt})a(op}3{sdW}-NZm`D}RY7 zY-+njkEuPM&O2OghvZdmF6>n1qpJPImjqOCfnLY3UqzmF&IwHsqL5Bj@AS467y`-q zn17~^JHZ^Ym-5H|P#a4j}>p;&^`FxT6Kxr%19`)ct~2N6K;trA!N z8#hTpgj4BWAJKlT_#y-PJc;-1+lxrMlBB1Gj;1-uKU`Vs$`Pg6m?G@2Gg~u6Y8jHp znMJ=(L4_A%E6ScmJ@v(!kkKH(c9wtmF2&d5g=A9iaU)1+AK?iM^P-a>`arfF2#Q~{X)o!3=BAa6^g@ldGa$_rtC*i z8BPl&@~}20oN>6NOhf5C;F&V#OTIOv-Z}oM*~bYa>DJyi))30_N)HBTB*tUM-6H=A z#I}i=f%O~vP5f%IW@Rf7+T(gLQD}N=;|t1|N4#n@R92L`v_P#Kf!fux3v8je>3vS# zFu&po-Os_;=nZ`P9v~|sIrThbtSZt9+QBdDBheqchr<{Coe5;Hg^%KEC#vKOJ-0f7 zh~+;bnaR<1eq6oHaD6{DS?3pUTsPs`r@tIVT+(IVTvEaEjQ>+?I7!%?Fo%%Nf-E!)!DCYs&^Mt8wke!7u zRdhp44nz>TXT2QWiM8jAf-~ihR!t6xlT^H6?(Cvognz%EGCPN~+YN177zxucn>-7E z!*wMo1-+J;o)OSX2` zJ}AT)X~PeGuuZ^@CrUE2gG=PW3N8>o?IQs?6M;~40v^u}U+YDCSLXmZ=Brl6w_9{Cci=|7)jJ~77B+a3*z1pqG!={U6``BD} z1=-^9nd$NNs_He! z?u;n|?UD0Wd{44;zxsA+xdEK$N*eUl;jX`;V2~QHKg)9X&hy`M-y?>auQEFyVCU^_B!+EszdM$ zKnE(JOFsFe=V}J{jgY|EQiOY_gpg>yRy(w=j z;&lRT%_cQ_+tsXLkx#fn%T?ws<(N_WTkN_+CQp@FOz_%yfgaG}KdDzOI5%a1+-M(} zrpPz%{09BLcqRPZxedyN9;PyhY)G0P=p&;IN8F<8>0C$Z!AZ=Y>XN2a6@5t3A~n&S z3(<8MHHL=`l4IZ+Y8z<>dAztQMNMZtDE)n#sk#eGQd!q28V7RVRV*JS2wM=}pA#%z z@%Ff{jxPE=OhaYrCm&;{0W+(Bvt7@zKZl}Hp$o%DJN z_)jE}OC_$H)*@nl-NJ%-1dd7fxxp2BK%O`Ir;$o);-z7l~vkm`N6Lzp~CvBtqaSs1K1UJ1i86OtOx4 z*LJHA9XpC)*|7<*ISek$sHxZhF(JN(mxNI&wD{tSj=E098z=_%RYDJ7+bJe*S;{@~ ze_2V6Am!UN0Ic*hjpOl+znY`MFFsi*Hr{APS>34{vS4_35O=PQ;_k`P3?)H>dW zAIjTeN7<=wMy!TZ{rpF>9sMA6MRyM;Igm>Ft^k_vaWF{gfo~N}d{qn1b=wl3f*}G> zhL}np;{B}L(LdIVaV*^%lNf-``uDe;Uhhu@fiK|GE5CmMmn?d7-Je87Sk9O_{b;ag z|3`=9;sgQWed`iVUNHl_%*uc(HT4lby|kp=bK1m#h(?O*PwF9;6+krg(bGxJ1!MR; zDVaf{I1{fm1W;_|B=o4{3r`4 zXe0R1mW<%124O&K_75}urxy{}v(>A2-tm;=Y+Qhecw6F;7e+#(&aP`uV4*w3eE9ij z1!|Sfyo;WuToeNUP}DIOX7=0nrB#&n2-v(o$yhxZ3)<@ej5q{AW||PUIF}Merv$8j zF=%D-LDq_WGcrf_V9l`xJZTYh^CjjEBJW-72MPUMi5)MWHklI-*E;K;ji|C36XstXmOK?l`YXnTo9}nYAJfn4{_@d?;zW zc<%TWZsILl7F=iGx|8hF7G=glE_7hhM}fa%#JrN}Qjteu@!%x-ERD=#OS^;4`{MS4 zi_jxM#AG0YTV1Vck7e0pI!Wa`6i7Y@0jmdebHU#KoJ8%1!$_ht8gdIu-NcC-zM}G8 zzOiu=pX@ZmhRTr)nkQ05NN)oOF=s8!YO~Wyf;B4G5?feZ^0=UB!0f$LyL)d4&dd@} zHy%k>QT^*Kw-iUN7lAWtnyLI8ky<#@(fKbPBsuH@Ys#QHAPKV8{7*-ui{ng{_#&fj zJP}R5*gnJZigE(CVGgy6H^Zie1uhZL_Py2IGFB5_`0~?=-<)_Be%V(5P~v3)ggHJ* zT(!ZAM(=Zb!=4bygvc#Y)kXBED0MRx1HQufhsdBipoBdH12MUb#Z~V*4Qx0WUFKD< z8Hb#vP?P>=?~<=t`mFIp1-Ng)yPLER*hK4n`)S~cj}HIpFzJl;tz?tVl*q!O+9CEG z5r!o>hTE5}Xg?QgQJe+ydrUF6O7YM6@5RvyRn`kNm?!zff~uyB^CXqQmzb*5kS;gM zvLg%t0nvlz#`|p33Y52;2SyCigxG^s$tPvJ?j0)I&JgAb|GMmS99-%j*NA$qg|A{g z80SX57>6Z~25fNaKuCI_b^v~@BWG?p_wL{H&I&KMA<}tz-oQmQ9}V$O?xBBcC#zAJ zTc*ci*wdKN;y&;;{Pnw<*eCjLOMl71z|vdXYz&Yv(^;JpqU#%haH~s}aLGHrkQ;_| z@UcqVe5CEG9Pu)3Ga_>;d`BU92`Qqnc=m>O@m=O8lwAPg5f9qLIzE@E!{O=KQkMS0 ztm(8c6bdt0btVob$JEQLq1WYla$yAhgN8>iN}lrLTz49P1a8h2q3;#I~7on_t z(~{|Z6Ubf}T3GWSo+VxIxtp1((h%kjwNs!+_NhR6mmWWynLa2_S5DV6;O znnK02_kh5vOBgq5KxBa)2=!;G3|+T1D;9`_FLr?U z?@8Q0Rz2L`;g3M#n<)){vPs{fGAUigGVDGEtF&Bw<|ADC9VPE3WM^kx7ci@sJ=$YC zmHv%X!A9$3@*S=M1~=AUw)Opj&WTfMn1?#(-jNhWSx7LO+M)lgO10KUPix0;OHU8M zo4&{`<1IR~+N1r6(M+#7VB3d%3Nd>%N9R&8Fl(%9RztfKvlVxCAF#UY2|5%}KnP^H z<9C;%l~tV*8MEUh=Rjjnao2-=J%;VXg>;+QXDI|uo?jXVhR%5|CV#UWlBa^SxY>g_ zw1L2!{!?38zqdyv(#HBs{Z^YT9;s7}K3-wNDRpu&9z!+`yDx5Jk%$%92F|pF^#8Uc z`pG*$Z#Ap$<^R|kidKCurNZ+v$^}7Jb4TaI68@NO~HK=#4yeZa1ArssVPUgXuGB z&hl#RtE9IC{J>O-@$p)Odr+^U(pzgXJmdqYNMAxSCRq43ns3k*N_VcpMQFe+yf(w~ z(00mSMGO!I^so<(A~bR4qEC`btb5;@#d%&_y9~-qbMo4Y$S9 z9D$N(vpxkmahxA&%kL|(lh`UTG!m@2D?L}i{0ZewX_88#33=-EL0XQke+mVadC_Gh zl!uTn(rC0oCBf$Y*L>j3!%lS%rsAcxjt?ygq+ebMPmSClJD0xBll63D#GU#Bk(v5Dr%(` z>>+~~f;Da0P=_93KArQNno#)`UZ&_3Qp*!6ZkB#FJW(}EeLGelI({`PV56}okNC5_ zsXa*XZC=2~SRS_?k8C_(^?5%9-a1G6CH3z>K3tJC24)H34r||9T5I*b$MG9C0_;?0 z*BT@=?tyWL2u5IhbqJ8Ccr60zm$8m95lW4_=nBM1&AN0wVToYgj<&zlp(B_Oe0!Cy9c`mkF8Qnn;Ri@bEZUf#TY0 zSS?Q@wE>$)>)gOQB)u!`SCJzC+zpzcsYt#8AD8FgoxrUC)$;2mp^d&GNl1i%g#m#{ z^6V&2v?|b=&*GmP043|B;XoC?EcZoA9P5mYvY{XRSB2rkX>_+*&OiqKUN7EtSJpXUblQOmv9F;-6o{sLq zr4+c|%K>~tsPLgLtr(;vy*uGs&4r*AYE|tl43mcu;#iPTJ#0}+oVeX|vYA%A+wq~S zr=Ow_F(+4mESr*&VAzN+Rq%uaIU#RTjY;Q@9Zn)nK{J0@wt?bx`=2(FZEb?ErG&?4 z7#wjtm7vzel1GY6Zdu&$8_YpvucI)R2}BNFTKVm`0|3sb?wz7wnUAJ7igh7V=z+2~ zK%~h(XQAmg(xXr3=7v0Sxs{1vgTeF75lgujD_z~}1I~+*WH1KzkK6@Xe`v%RI)LCJ z&|HeHMB9=!tkn!nk@PN|MD{;{ZxHo;%}Yv@#GuF&I5lXQ&kCAUO5n}(9o(~DwmDBy zlu73RDr`RMZJ7sjl|bPTIbOIFFAT8id8SCWfij9;F-l0jeuG971WGA&-E&Q)+K1J$ z>0bpjkYkA9t?-QWTKfHV-H95WZ0x~}860aE%)>EjoFV711=q-{dm0>s9P7OSr1s;abeXT=ZJ*G zIjF6qFNye^~N*NR+on8LD7_=luR-81Av&%zEZ9Y7kMIFRKzD}- zx%PqIUdT_zWCp(EANNZjoYHwpd!D^#>B4b7XUQ{0acmHhd#Z?hTNn6<|He`177BU{ zNO1-lz18{8^&sn-75k~G3w$%qiKqSt|2)^$kUVbQOoSf1|4Z>!8XS4h1P=)pCVnY- zubMpW2lDE8?+wxl;qb=n{#A`FI5Mhkg=NUx5Aiz#uFg-fLmE~+OD{~sZq1Vn*6z_chXa-1{0 zE;=>BHE%9dRYi={wkH{8ExvvWYTJAJ;u^R2}V zM1hj&UwlEX^wwhIQE&#?|6vkND4_yxR+IwG7YZ2VLi+9&1GA`q<*T4|!v0@Jf3b@% zC*}MJ4CFJsuG0T`JzelV(k2w=hCato&;Zoo{KG*XWV4pN!%`&`BHfj-;y%ywl?C!_ zi!bR_u!%yOn$U-A@1NbVvt$`ZN^&e#k5}StaK`sK#p?^shUVm0)wl!&CFNgAkw)YbW2bD3x#3C@anCI5IA$X_Yzjwld)azUkso z;-N_?tgcRHvI`a}9B9&5Vh8>sjLPDwQ)cvS&f5NAE4JTR6kb_cv+@pE{U&Ja3_joj zJLFge64Bw&H2itLH#m+ctl`P7k<7OjMAJ##(*EzEV+RSiQ)zBR7gN%ZKn^erkRl#> zn|KAT0$`hAiKYQ2TIlho3=UF)J=KoOHuyh9FOl&b!Zm|8MNe}(NLGM!T#}0FnW%hyg!&;Ff zk2c*J(*zx(ui4Q;d!}}bP)RJpwdYYJWy@Yk`qiel&P%?xTLMM-XvqcqWRivIh*OW`&$?cBjjsB!;783dXzAr2aZN>XDNj~V&xGFe!Y z7}cU#He!@Rs2PH(+r2c?2)lScxwnApzBURt6ko?UVlaePs5TB|g7A$N7Z=6(b(Pni zDw?(XGQC?c${40_m`pX7W2{}>ATzoExu{a0)qWa(vKp{4&UZgiBVL@Fo{m|Z>?qMG z4A;u3;@0#gQ6VpZeYdJoz<8(3MVQ73mx{!E)(}6xzsoG&%jleD1VE6vcu>fov`tkn zk_P6szrksrB*8y)-T~Qn1nAaERBSvT4-5^#@3(~=!BO)_$P9dK(6~|x8twJN97Lee zy-yup+pNa^vLZ-!^zmm(RJGx)$2Hifr~(V5dOijQK*_24(R!bdfw-%csJoRkyVe)`E}`nF_=D_ z`{2XzKg=-N^*yGwbV>fOY!Y=ax&@QCn;#O=)Vy)h&Q@WU;_wPA1;gWpJCJA3gQK|+ zHignEA^TUjmH~-?Gei&=C%INux71E)t%FB?mG#M&WwJD=sU_N6kzcbKD;q6E2tL~9 z8^;40-&EUK2ynwNnYXSr5^*l1aFG30dsY%t{FIO%uaffWxGw4XkGnU+(ohb#adjBF zARvw$gl+OJV|&0#z_4m3>$4k&PKcia)I%mc9iv{5=pFWYu%JLoU&wq_+cAc;e%Gic zD@5OZUb9%%I3G;EUt01tOT@M~X)80%s6Yv6g=fX&C8!uytH&u(udo3;34Ft!alMN< ztJBbH*e=j0&b^63O#PCL@5&;hM@I49RXa<4}iN7 z6?F`$*fb}qL7T>EY={+dOq2B1MV4?LTWwy0AYw@q$V>@EWp<5N(*qN zX03Picb3|9jGtVyCfh@~uLeUKh+pN61tMYJm+*bcktW1C>+Uv&$~#>4kOcz~mV#D% z3!B$Y=SU;LWeHKycBtkekI%8W;DOr#c*6uz9Hg&*b|}0h&@_=U^SjTyg3#swT}?2X z1SjN68QIKqb>DT)A9!)<))kMmyF>-~*@clRgFYweQM%J^{lb{llGY}=%~P)H0rkJa z4|^BbF~4v?ijYR8eZY#}pK2}S5RZq@UHO$W6+-r7*Sk`xMq+iBvqvM4c`+`~nE%eX zgqg=}iPcFdKY{#D#Mv>awmje!&e+!&Tis8RZynHhod$JrkWVWQxXW|2CCsuxY*3Lt zwEr3Uo`gU>o1AV{T7J_)iI#^AH-1aQ0k?Go<+yi*3ISB*N>nSz z7arG&faj^rPh3116jY;^-?t8Z3<>Iq_t6WCdk*wCf zVr+{3+--&Jw6BA-G-gk8#q{wX1Ro*X26Sa6+VQ(?5Mc7PF9!rj zC0xg>&BG*+u)$DjCU{`%V6@@QTPg^a4Xs(7}d~x6a5OH zvw71YIyGh360~khR9Wcj8hbm6Yvhd{td9dwCy~>leL3BRiQZcho^hEjduKT{DNgCS zteCU0!{{^xFZn6bjzH@2(f|)$rSzAG1Swz(fOU~gr(M`Ty}dlpqRM0jhzK;>dQR zBR4ZjcOs$gdm&A%xWQpQ!|DLk%+(G`-oRaa+EGNib*#P_9oy9jiO#nZL#Ku`jZL-H zRBOfU3A(H;NTTR?p;Vet2b{?Qd~;UP22FW+;#zJ_fkFAo ze0Omd9!=U4J>lE2>H59YsnblWQ6jl|GrS=lxw<~4KTahm3p=h|Jsgk9R*rb1jBgca zn?F=cffSE7hr#Wv; znPxkm?d#)IhT%{$e=A@3n_2j`JtH6t&?)Q}#|78hVvZfJh=LhMI2$A%yW*;ud296pv>Ba^_xaXF zqhA=j*>N;vhI7vSpgG2UBZoPCq6&D;jg+t0Hh4{I1%=JKDfvfw3ac+_(B8@p3|s8w zS4G?q8{*XR`WIe}F+^8$hiAjMfRNI#p?+GX(D;d)^l<&=H&HGMz-M9np8E+G%)m)G8E@hMVCq zrhb5pk+@NIXc1bV;4YU|^|5N`tm|NDj)JzAA{z>u+U5mg;8R&ICqx)_=A^HJD6&U` zFb>{Huvr4BDp04q4sA<^PlY$!E05n{3yQ~jgevr_6bJa(!4-57(jA{4SD;uHq!n)E zu~9jVk3;RZkdk6!8N!G+YWr-&;YVGwH}qj8eRwUGd(k;vY{s#9hC%#*S~1jkjF1ER*Sm_=IsBCG;^pd6mKL zJL&nTeo%55%Ypf&sv955%o~Pj; zcge|fXm%Ys#u}F zF`7v@K_GNizcVx?(#Vth%#XhW)$4jX20lBG)M@0AYOl#^p!{SZ*=1}k(`~T8_|g<2 zuOKz2aJ0NKTj>TEOp)hMs+s1#6W!N`w|i9N!}BQo>O$1S4P|?Kp?eI3uQ-hHo5ont_DRb)>7qto?wbKElUf-KZFVSrTLhcXl0EY&eboG=R zs!{G>;D)Q7??1zIx{w|B5c<+o67zd{`I9h?QT7Mkb+rhrel+&`>Q)XcyCEd5Nbb8exlTs&=tF{tJ# z`?1z;0_Bt?=vJV&>&{95ilo#JJOW~*kn}9lH^u*Eo=?dzGT57yh zxzVkkRcc(ONa0S?M^{+Bf#hu=W?8^RxphCT-?}lTL9_0Ba!<6_PxlN@F)*)G5-du# zhG#7dX;4GjG3nvo(0W1oKtAr)%UvoI*2CdwpXi{frTaMmqs49)yk!2WW!{K8oKyB} z;IS`5dImSTjD8iO5rM+srrO-vnH-ID^&dSOPscbykbQuuNawy%bQ?8dWQ4ulvpGY( zDIJW5d4Qt^{LT6kf^jb%Nyq*L9D(Fplj}$>Cf!avxE{_>$kiTk;v*J>=ylD;P26ir z_zR*6 zbFR7}z-buEMUM^=I8T4h$C3tJ?L$ZIuTnKfITPkQCyEYeRojyti`9VEB+onQ2l_s9 zE4TE@jjQV!tWE+wkLkZBT@zE&q`=V|RAIPnAwj^6?XXCj>3}p48-mt;rFMm9IeCQ) zX*$`E&;_@)Fa5~}m#@VVK~o*Gb#3eRkE5{0lOB>#*B55xJf!x7(kfFp31WSnEk1Kr z^AHW1s>17xzeE*2X3~E=#ue+Ez)syaD9I=5x!I@mrM|%43LN0P3 zJkV~9@|LwHy1Er^c>L{(C2r zbs2c0(yn}@=6onekrH-bI?t{pka)#qqY7nr)GZ&o(!IgrdZ2?~DJtSSXpUcxcbDS3 zvU)m=3=ojMxod3i)h!y_RI~2N1Xl>zKz=`i1WOg4$eehF@DScWba0ekpMRkQqDvv0 zDWEXwc+Z(6mJ6Eqr{k4?oeQ1kCT6&dC6ODwnAFeYj*a4AG4oM~4&x&4S%K$TwvX^& z(PM0Nr@8BOIi_nFo)QV&-m;27R{|d<%|dRoQX106g+gF0PjiCRT2JA+2q6)#=u?C%LZh$Y5Rj~zV zExCKLinHPf6>d;VN%WXZohTlUIJl;dpNwB!{mtO{ z9wmh1Dtcsr_-r({{j1a8qch#FblVfVbEvCp9V=iCH-%q}CeouWzItXsQz`jnV9iXe zu=qP}TeILXnDv9`3A}eNEl==CRGrk@rUVQm)INn1^S#6SEu`%PKS?Y`r`!cN`#$U= z^WIkZkM?QQHb&kgyxmfb%OoJj$zN(B`}O?brAExqsxK7$44p7Pzp64&84hk8v1VyA ztcJm=aeP^+C4l=Z@#tcU$jq}lg+|~w4V(yfK`tb5q)aiq<|a;_-54NaK9It8t_o0k zW#^|h$^W#??k8TCsjWvVgHtiIhbseO6b{$9am!{j$>kxr!kNeO&%lPaXJt1~`a(~| zJGTHKQ_!IG#5Juz6Lrv!Jw<(2kstBjEj+lLvw{%-fAE|IfzsZa!-Xh-7vYmmfz2M< z0!E8miA>k52749^oRnN8Zjnz!|0@Agwf;)FyUf-|c!B@#4d8pD$_Be`*vzUVYRr}J zXco6g^I$mCjeh=+CmU@X(xkf4XQjp7(vMkc_>CFYREBPOFEAemA51h z?=HV@FVZh`iUzZrZa~n#T^*rbwkK9__0?^sVj+kxVkX<-sVpH6Q@cwW;4;nUQs^&v zJCvn1XM|J>&xu6P3ZHDB<>a_v-@`0WJvR`TjXy@N@k5X88|WCin+C@WOYYQS=y zSYs|m;g)`>uOe}1@VcLLzCdl}pCnpdXw|Lv4+bjXbueDfKwg?snIc4C(UBsS85Bg@ zZ7uHy-!tKnwkvndJjB}kVKa8@c3LWM)XAW!tB|8n~4-h+UwizMv(BMfYrMG~ZWa zS9zcq0)4B)7u-8@MI1a#3u_B?r%6eHsYa5N6``L6K1KUe%;ih%(M*V!lMzO?(Pi z{#`xA@j5en+>@fVyuw>BX->pmpFbET9ZAk8dRGl&2AqqVV7f5QZ8DMeHofz*al9`4 z3wJ_I!}M3f$U^hz>)y-WW`y;1Q}r|H@c#uwkY;*mjp8nx?CzLxGHE||i1wZ&VojSu zqp#rwrq!W~PTN#g*A$!VXbKCfwhA`M?~cBFu36j3+h=L0u2=Y&@akW&nYRH*g8J8w zq8(&p+LTh{AUfhA+0Y~(I5LY>x>JM*%6NjOk=t*eK-ZFY8r__XDx}qNI?g&(r*9H2;pFM=j4L{KDU~eDv zd4`*GrfNw8_?QOtb`@Zw`t{5U!3n#WcH)!Hr4j(>$WEN|TQ817`(bU^mMF>754Trej+8F~)hRka;_ff}O-;jb1`5U%+KD8R72`(;xs zQmDj!bHiEE>slVDfhTs_wdhMd6XW<-S}wsO|7Lc+Zg?x7imWxSV;QRByj{DuP?viu zXTH%LB5b%yH3DX;z^4}C|fa=>Q&geLU(c8|nWKMpX>%wB44W^y$y8@orIx`E6Z@iNF2@o__)1YC386E-xYxxUmSYnSwOKdqaN@4J9X5Rd7pMPl7D$6P>*@`{fI zYVU3(f^*}c9;&CpN?c<6sVT!7W~-6@q!AD($d5Z*8dmxXYEjgJe)N>f3 z8|Tf{S%BIV5m#qw4=TZwemqz> zW|I^vaboww){4c}%G)@Czi6|(n z5t@}>U&1UHfh$U>?`w{%z^^SO%62+WgxEvy{IsSN_?o*o9rfFv3{lNwrS#Fe9FHN} z)M-%Hx=7x3(;3D&6cE%XCn57oky=;&Zqep(nu(>2%m~SxC)N8AD}H>9!J8R$OWwwo z&}aPr{|}tDljcXZcPItj(CBY2k5uqUSJ&7H6q&+jYBJ`i#nyt=9h80pc3N62&OiT@ z{_JzHnh7h;1xIwEn2tYvp~2N1c5l$?UKr9!m>Z2CDKR#7gBKvZCf|Oa32W!z=W#?Z zN5KRGd#VDN+zIx?-f<6T$c`Gr@9I6*OxL2)e1~Dw1(Vte9QAT5%1;r1U@Qj!I>jKT z+=7Bs-XA-Dehc}9>)`RUo3YKdcJ~)QpJi>d!wy~EbwS>Aa~6Q(3HEXqG<*ZgQys<}UPmK58E&R8PY zYhCNT;0g&C=8fmgg`)+bEt)QZg-J?_5R|Ij0WnqZsAx9+lLls1Ct>T@9Fm$z0NF@t zoBv&Cc1K~Ur%kK@fWtK6oR9#{FQ=gHsq$Obyi|8r!MC6bze`hc5c$2uowlBwA(Gd% zuIYGrLm5cJBXrlInP7Qm$(G{bKM$4I#@hW3OIFJi6UhddKUOinuS_XBYB!6zGf(bG z685R-#mj>HbcRBe$=;a7O_plVR(Q^m@%ffwTv6grq;C-ecilkZq{0h8;EsTjr~={N zXL_rhSLiJ$_28piSRACz(jpwMer-zwF4OoCi*#;Kj}}PAzbrb#VV zTJ*MeIZ_oWg6xlQZ21XvR4T`a+G?J9M!S(T>)2K)kWVV3i>ng8xEPR~+v3=<*!2rJ zYTHcH3}v;87pgNz2Y-jaH9iXQNi+*3KpG@b!@|5K_a64-^-|>0Kn2b|hVznxMD!qc zA45r*HJj`19ECS5Y>@_GEfo7U4wLL5QbIs<;o>bn*Ry)bw#+gvLvUVWKLn{yyWaJ) zWCEa#uldyZuDs$Lnl5K~%Kvo|ILRMT3sY=nbsljps3gM69IN`6O4m#_vmZ5qBEJ}! z>849>R#V9dRwu>e-oEoug%15`M`FM7zw9RfJ2(?w)Y7OwKgw(_;|dKSw)Faat2elL zp|7qUBt#2*8B~)V4&_hvy-Zr7U)eLN4i+w)E@GM-JW4oc7i0&N=}84i&WbY(m)K>Z zMye8q=(2|*p)Cej(McpHDZH&Z`1#21sM?&KzA*#eQ!Q=4YL8gt+PDzze)h)vetkJN zjfN^cC1nhK@pCGI7O|1LY1&-DQVjl^#>=iyzMi%l2AI}775!&e7?(P$- zv5rsuoV8Y<#~Yoz-Zs0ENtxL(2GDMy*=HwFeERouh7(>9PF#K~bJaMOvdO z06z8<+57{B0~UJSg%YyvTrEvna|g7SS`Qgq?<^oRYJ6gqb7xu&jyeKm>cYgE)$*sB zkNqM3HbbmM`qv03L3(y+FoqmxW3(=awyaD3HZ@hGw+h`NB50Mf9c!)4#&|Pn_qJ5Y zVX~Gy^Wv5Ak3zV|2T9Rw;wA(h^rEt- zn6J5Ac@${z8g5~J2i@x($56;WUkOLjZawuCq$!G7*ll$AC`7FWA3 z8(tWLwFl(xujp1lg=^@4kA2k^u|~&m*~Rco4*EhL#cpyPU{XAVmxW*nqJ4t|;cbGo zEkgE2s`D&DMV*JFk(Dh}j2eq+*sCC8ChX5-3&(NH9*}_*f|&J)@z6W<-3Hu!TFlPx zCn2pxdNq^YH{_2`!r#Mwee29t!7}Es3KESqF~r0VvZ-Y?tg%+R22@8`lhFC)BNtbr z+$i##?GWyIYt}wFE5@*lwOo$&a!3)R1~>(gzat&teLKG5I_}^{>_Cz$Or%OT7b9tn zs)?8(GuUzvNR3~TG$zj|cV7lt8G#@{i7}lfndtW5QpXe(q@z0DX&U!;Q$0cWo|eMaNv)$+3!~+fRqyKQ>Ar~| zG&DxZP!#d#3dLkoNDtSa0-)rAt><{J%;kSVCx0rd?QFA4yl0;m`DG;K0=c)}QLen% zjWfbb=?Z{A1M?+h_$(v1 z=Il(l$-aP9ObBVHNqD%7mgVZrjaEV!+-xj$B2ymAg|`EtlkDnI0CPI zgO4njZgdrnF*3bsy|WAAWTC$fU$q)N=eC}QqZew@O_6&bDGS*iC_GH(w^yjj z*{`f-pYxF1EbNC}dr;8VnzP8c{T&D#b*BZ(U5+<5HJf${1%>(n#HTXq$Jp$^Ru5%m@ z0)C0Mn&N-``SbAcM@o|E-`wiRk9=tPwg4xSUDpb-o>0-1uZZ+(pY;1<%2w74;MH2Sv$K&k;F$v zY(6BYL?l02Gn#ne_#Gk!bzJBx+yjbZ^rh+|KQ4aNM~dz~EW0L9L)PgAN(n>d16tZG zyfg}J_6~ABhL4P2qcj{?uoJ_JzrA@R^Qi+Sr%_|E_6a^T5AYb-Qk1sWL!;FXm0@#@ zDP^L*ZcCqi8D11bbQvDPJA>uR1kTviX`3@yIMy(s7H$&sYP$?AwD2gt@-A4plD1;n zJm}g76;-tniLyMD{G_R2+~0+uigy)Ud$ZhNACaolLf>=}Ysa1mr@n=JB=R2L2*$ocXYgtpt}H)h(ovk#>f+Km`7Ga|HzQ7Nj zPGH&9ekhE?wK|DVGn@#;EBer58}X(}Myc~RnpQ|FaciMl$!p@$xHw;MBuO8CKn1DX z*`r2~j%9iU`{%TfAe~r?Q?QQ0ePk;QiG)4KZ#{dv0C3{+8N~D=SI-{Jy2BA`a2z8^|fHwpa8auN}e=`q?ARjq0y;AMtwcQ)5k62Wd2m0)DdLG1>Nd4{Ff0Up{NVZ*q(=^-bre4se+->-z0q}hMSOXxkedt6j0LU z(T;OClFIESsBL@d537%Qs)Him_390)a$jQwa*NkbMFJpU_KZ~Q3UQM@1v=`C2*^H; zm8D1O<9I;dPF~^`m}p7o}X**bsI}oI# z_+2otGh{&q5#U{(Gb|sJGECFNitEZNTBeBT4TFfyVrdE$0+Oow0Q+Pt9etnkv8<;r zfohQ8(fda7iWO+JDsmex?`8*bbHvCKfg#N^J=H6L1mWEPt;kBmXGACNophRSPttSn zz8P4UHxEJ)NMK2OV`M{Z`@j?=_MK-$tyT#@f^INcgxS>(mJ!{<3&iz%KCQkk*>?yB zFklW53_{9d5MRtJsDcChkR0J@5miy)8! zp}FKCq}os}8)mvMZqbLQ%gIV8oDw@sO4?e##Q-hNzMu~B6@3vv(k;uaFOo4&9kV-g zNk>EXNL%o}N%Uhz#mO(YE+y=OwQk-K7s^evOnoZ2`eOqPxp-u01hTA zor##X?)LkVnEBmWX1@PjjqwrUxy1gq0!dTD|0@1Avs2w_gnfXaKHR=mXCOZH;K)X9 z3;wIRVU)m#Y$VRzO7t=Pe&2odIL=4}VeIeh==8s!t~>S()ks4u<{#3(DF>^vubPq^yOy$oNd1=R;x~9k zi^&ZG8H!#)f4wVHKK=1LK8i}rKb|3;M{#4Vq!X!bHs?YHOVLOEx4IvYAl@uqXQLMm zu7wimlQn_6&;xiBuz}7JB=OvUR=3&m*4B&!I)Eg3`wSNVKF8lt0)EkU%Wc%m_l<4& zJ%ksM@@gsL@#C^3wJ9I}i}6Z>`eJInNY=nc@`f_Q)4KIEjTVokIXeFdSv(U*nB$x} z&7~$mea~OXk>kWl{s{a*Q9^$rhmIRByXyKf`Qb9}seBjWUmc@^(1$P)qWYRUZ|T@K z4P!oUVhN}9+gXI{-(Q=#;5YZ)`hX%qN3$4k#jk1-^!>TSx0g2mFoFb2ss(oL&aI;o z*)``~%||jDnSyFTOF9Y@#5T?JDWK#*x>6)P-|ljN6BVuLKT1K5qHE60Ir>;y-s)}_ z?#t@yCc}ZP=%??M-||_SYN2$AUsL8`r96+3p|p^zNvO{+O$OEX*E?ZR9r%GKwbI%; z^$L=Wm}XM~pN?vpsoynDx&c!(-mJ``7DWYY6d|IUGx>^CHQf$Z?f06VrpUTul10f3 z!*=U+`1B!JVI)*Ak9FZzu)4!f3BmFRFvXRSZxulc^!Q$amvknF(vxQW0{?yuYC^oa zla#b`qsroc=$F;f&Fq%%Xf=Nn7#BhU!nWh*c7Z)oLm@_=HNHz~y7O}1r6{crcw)b! z>yy`jWJcNHz;jWJKzb{k=igAP>#0yYp1ts-!_b*g!11@ze78f_?!G-iP%jjX>(f&A zgFI(I8_wDcgY<9Yu(xlxKty!7xO02fYDODOXZv0=~B%aigXCX z6Kz8@2^08u=LgHeZ|UKn^8!R(vB6?CmT`_`QCbECQRkdJKGocV9W-5Ak1%VBI`APGYJf(9(lqMQ@WWps2 z;E8gSbD2>}4oirGdPE=z!139eV$4QC@-PB3Fg2*(+4&Gz0u~;qM6G&B zTEWjm$?U&2(VxT?ThYlM7=YXUg#q`2x8j3-S>l3qzVt~GDP20~`dGUrg6S3JIS;T< zL)(~~*SAzlQV`HlaKDUQ#V{Cv!WETdX7OCTuk3e$df>L*pQ|jPi1AFzG4xbpI_ZWq z`d(r_YCC-{&H+N=QaU0Y4_7>S-Z1^o%ScJB zlGc1T6tywPk=#HEW=vO=N+Zf9-h>%OHR7q$Z4Baey>$ueM=`TTg`Smm1M7WM2jx7r zXP#BT=H=@?f3VB9LZ6z5mSec>gf zSlRT|OZqNp=i0=5tsOg#O9qwQXxxg3eSC=->G)xG*Nq4mzh~aM%?C1qBAgOz0b)ez-Qk=h z+v9qCT^IfmdIB&r02MQ)y?rV;BL8Khk`UUyL;*{Z1t6JUnl3Q3*M?4@p)|A zT~=D{=$&456Y(ioCf?%iA-m;YcU?{kZv^+j#)Al^$n9l7JUG-L#_fwyU25aNZ~fXf zqD(L#xe8!o8_7t>0>tyUa>GPc4ZyzF9IpL=o1_yE;jM`S_~qoDfahq@4>5qBTHgXE z`1)=Dj5|P~a?_Sv2AEkvysH#d+iA-g%l;uB0!m&l2YTN++8h|0(l!;6R%BA8xN=`| z-1=EreSUSVr`7A@WPkgj%b(&kUM4ITJ~gbcS&^#dFTyy3r<-d6Ir%JyNz*t0cK7-i zBqcAOM*G!q9}RzKJL}RX{}eeypbf(Cit69ih`bFk)jSeBoPc2Bhy z#SCnVM}y=ntFD39PHgR97B?us%xi+iuM&Ri)P#my@IadHSC4**U)V3E@WU~)Ul50o~}=P@p1R1R5DYDy$cF1Avf*q$TRS@VK zDIw(f<|SAiuIj4a<3BS^lUDX}ESN=_r0wOpf9|uEz_lx;X9bo-KSAwh@Y<>c*L-^^ zahlw4?f`zSRtjAjz9GS|-`D^a7gt}w1hOo$uh=hnA8bCVU2=BDomZIf`COZ{Td6aR zvt>3`GlaNgFExzPleZ$0j=WnHi~q`mZs~JwyS~}(G{c1D55yakJfVwk_X~XfWN0GR zMfhSI&v^W2yIr}j8LHL`teDBndKJLrYp+yZ09Am`Dk86YDS;LYBXndUtKJGo?!8mX zyr{R+`A1)k{6^0U=e!R0!;dt_$GRR(qy&r5nejE>h%!-)+QS>pW6$1EILGgV7GJRW z20=arg`VqX%_w#1%4yh-Bfvv=ELtPSGOpxpb;`Gn0fO0`B=s6%jTKtN9~(ZctWLjj z5mBK2G|DEVtO2fiG_CgaxWN}k)@fIiDqb%mCcuh?kpI&?>qw7Zu=QlN0#VW*4&Z?u zPhk(#51&A+U(}0aaProRToy`zzDxIBlPS3Lo6z{>LI7c;&Ne7}F(Y1IL_I{aTkVN%Ksukm%D9UCH3aG^0QuzJ+5*hN%6XhB=cUkM# zabFOGt?a|DA&7>>qy68=dwPs zPYKAt&uGP`JPWvJ)7oz;|8`NYI}jQ0Dp7RV@Y-b>Y~#}C|E@RI3jewkbTaWg2aRpA zD+nk;J8E`DxKk_UBKY!uId4q2a_uTeRPeb0Jn1!$`n2vxwIlygl=rhv!EN*0&Ajy6 z@%z~~p6j|#<2hy@*Y3oNUurl~1fqG#`i}AB=3PboD*zLK?0=l-o}Au62WQ2RX(q=v zA%|ut7_y>ts*qlpJ;O+_Nr_#g+}|7DIe~ot!A|_cmoQGH%{d)f(21t*nKvIK>1GwA z0-iblA*>HX3HV?7Dkb_h=o32!zP=6V*&*WIy-hE;K33QPp;-TZBd_6QY#lf30~-H6 z%X?D&RXnr$tD|FOi=$Mx8xH3tok>fq@{&R(id4kR zt?wrDMcG^2HLUoopyaXt2=^^KOr-|cyUqjm<|!!~d~Jqc;{SW0yHlKwQRFH+`+DBx zno&W+>)a?P5AQ?Ft)=X;#~s$5jGb3+C=Hc;w6RnnoUS}hr{%1K?qXG7g|)?e3-$2u zw^~dcat(lLEMgz|1#hfBfu58;WHiGMEi4f9qHxRYG%H7Ir%*Mn7Swo2y1JwWOqft& z+y~{YOG2aNLW}eA$bj%_U&Q1v%1!`LrSVCR-Paw}2_sTy)pOU47yOk8<2@jl%@^S` zTpLp{7tIzX=3c=JKTP`R!!>*0y=!%zUFkv%@;M%<^c2z;YZ#UyEFk^K7+SlGw$^T& z*RWFyBS5nR-6+*1Lbmqpj&*~h_7R!y;Bl(T(rx|QWo6%>*X<*VLn$l$Em( zG2h_KJ8;hbJcCi55dQiaR`iR&Ja*)-F#ZR6HrTjvy5F1iO_D~H%;0WJO_NKGqL z(|2$3O?YSRblbSisEP!KHa;mZn;fAE;eP9Xxp|pu#hJG&AOYpBHxW0IW)ng^YztxfIb-XA)&VyMnWZ~B4@@Pz<%E;>@xiwaN`S4jcYv~oRW z^Y>$u0Sjgyj?>V2gjW4qv9dDMvg~UeI?xtZVEoF5e7rBKIBnm0SEjHDMk5MbJd|eBOH({O6CK`n10Ebj5etw|!19D1uQvVII5UGN8H z_b%7&f|C-L z&w#*ZXEtkxa9;7HBd;t2mP&Q@4aVM{f?exA!4x#MUyD*xZ|^M<82rxszqt`9K%U+% z5;#ZMQ>T>ysbvThWQ8*Y^NX|2&TbC>WnMu~NO!L_h&p2@m*)Y*X`Bgkir?Wk;KdV1 zUY5Cve2J5To+X82EdcsfcEpi5KI!*D>@3fsAQXbAfQ1yVkn%RxR90yycg-`j=5p=gKB_o_UR`O{U)!6pt5i0JVcR7O z=pOy>)G#qMsi?r89xVT6Bb+wl-Jp`p|DUu`|% zZ3G0)8~Z~Sep-|Jps3;q*)*$@dlO+G3`rQnG8W1xa687UTY4$v$yHO&>_KaEl4Thj zhEF{HYH-%OU##F63jHqXL9(cJLvgthIg@O-?c`Q+I>pGO9k~csFp77xplq=N8`Z-C zC;43E158H}lJ$dV0cG{PzT67z&V<#nXK#;J0}+-OFp!7#945hcG0MhSPAxOkQ`M_l;G8s`<+Ig0k$W`{~yDP*8Y=Qd=SVM zblIt{kWhoXvDzk=D-fRNdr?$4s^p~cR6l*y%Co3}IQFY~^<|uW5Yu|9bi<$D5$^hy zVU%9TRT;vM2Bjd{*Mxnr!k^L!yfonMF8c)j&nE)0UTcsvxoKwbkq0oI!64liU^)^& z@g>-lpeyE%QmxNE#3)uOM>Og>P~)7d-NN?)X)Z-{> z^PFu7>42!0CVG7sWw?0xSR`g2dP2$j@Orw<`~>)IHwqh@`K3~cN)+|1$Qz4htj@8_cGW?(Os0Z?!MdC z{}%LlMF9!C`AY(ZoJ2kPKDal5|HMLo0%_!#c7&zfGX=3q*%!RvSuV-4cbW*?sPbso zP;J1rlEL(gN|Elhk%X_!o}kH%WFK^I)F)#>RQ>~9_D3g{F5@FA&lgKZ3zqt%=zE%fI$dQj#Pi|v3h;B!0Lj!;`H6+tmCuoa$- zJw&u1{xtR%KtEabMeG!diRfrRPxe;?^b5`k`^Ue}g^O+%&;Bk%k;-%|LSDM1te}OD zOhqXSAfjGx0*DMvTQl(}JhG@$HfZ)_?My}VWk=OCE$py{R{w5ia5%cg>4g@LuCu!Sg}8>!?)A%(Xp zK^S@pwXBoacPVrD5DW#AB5(Albv|$MYBywDWlZu%o3g@dSiN>6q*c#U5{L|Piz+ve z@O!sWEL)m5%>ges3>MuWj-YQ$^Y%`r5yul3RC8r8 z3xYFt{RSKYC=`K{f{EcCmPBm%I%`C*08tqj9pBxPUy%gls++%uEMO(uZ_K^>D9;Su z_3_o4B9wPCJD)x<$kZcfPOVMPR7pp5`;M4YXut}C&%*GSI1dsh6FGHnS)}*%afl8L_QYJK+*7PLVHfd&d83W*=o;yq=lX6>cP)IQAnrGB!;h`O(+OT&QYk~#ng_wvFSlFb2J{oglvFRew-rRqR9C>%Z@`2u=*Ba zx|l8lmDQLAzx;5`OXQs`-KZw_U_VJ30m+k>nC9*x2>!@IpR|}`84?rL!a35)aFTHo zu9Ab!@_iY2!PXr`5Mu43P9{VB8c`Ss-0tnH{X=7IW(~b@urHe1o%rh-_6JQ)#b=`ZI4AZcaNRthq0}3!^Vcv5xKRA?jaB{88 z3K|Pj6=O=r$X39aUwtEB+O|xd=e>uXdpC?e7somUWlMm|Q$F~8zbTui1`qlv?r3~=$_lfpqe zoZT^LE9M@O2jDCPX#U~O<^^luhU7D?(+7Gq%$;Mfa@CTLnihh|`ls|?e18)lq;t&~ z+DM?j2q@5w)}iy2n&~|Lk97#y?~WpOMT1o99|{&rHK7lVeJwXPj~7aRajeqaPVCq5 zfC49Gzjh*I?#n8MzPGRfr{G8Sm}mj`M3IM#B2QLxX%3A#iiS9H%?x@^FyF&I2%Gj& zYdwaO$9uU#&8FH&<0NoR_oKLhv6aKsYkVA*K6A#^0W!H0471m{pNal;%0=k_nmZMH zhsb04de~M#YQ%uowm|8-*;tTV*VXwG{-Iqj#1+}0+UZkellcbDRkRy46tfL zH>ed_Ob!!gk5i`KyRF-yKUGA1e-0kqoUWapngn8`Qjl@-z=3_Bf zYI*29vI;!Sdbn@YZ;R?jq)eWSc{vo864rWHSe?XJXGl6@O5sErBQKfx+@aJJ?_*Yu z7&@(?_V{}HKee;k!N@*;jCLBdGXF^?#xqbwX?4Xi{^7J~`D4eK$k}N73Aocc+GD^_ zV47LkDr+wOLSnXj$+tW~R*vOMiAYC*b#c~>Fa3e?A>2pKGMWtc(|F-NtUE(rzP9?1 zFM@_eeL#6;|Lv=UhRBk`UsPd;_>B~C`x7H6wO+ovSeSKTHWotCd2k`GZmKv&s5hL2 z#y73lNdoJ6{xP=0WY#fLg#kwljrp`$O>;2!x;DD$s;dr)-MBxvC>`tvrkwa!AGK6ns}=@m6|8+ z%}y4p>+P#@8U1z=Qu%Hu<}UaN?0@>ABT)dXP%AkdQCNNw*)7dP>H{dne%oQ|3#RoJ z6aUTq*Wi|yJ)Ph9MFd9BM*?*y$P&jk)gCni8X=rgRN_{7U(LNE<(8sVj<}%n;@{!V zi(tmo87+6J{q`s>PLdsXH;Lb8;mvhbu_0D6#X^~kk_dagUzjg(QHn06+DV&_=nD+o zJfRETa%`WB8nY*avS@;OMFt=yIkSoS%g3%SO3f z5i6Om?U~%`8c9r6W}T9J?_j9?+xhH6hfje0*5|3Uub2bmbMc7MW*=vYl0jP*95@qo zjM^L#v<|>YwB4*9nLIZfbHAA?BYg5gOcq+jlycZlmbNr-25;k9xSW_<9|eAN7?hKh zx~BNgJSS8pGmvMOi_%N(kDWlPMtTxoXhKVs&|3torrO{tzQd1%=Uy@&M~PaUXQ^0i z()hP1xppKq9q$P_i#*(L%aSrZ6J#_BvIMDBOF=cHMLxT5LA@vfDhiuTw?5_5&pJ5; zvBl)3!?>A@Bpb#K-%+5ZZoL|jq^W7~7u6oQ`$dK0=N>=Mf9TZ*L~IRyrS1(&omIf$_UdO{}}1&OKPmF#HyK-0-Yc8(`-&h!msS2OLZ-bJ;~=RtH`>x}?s zjCOe8K&(3|ng_IzR-|(!F3Ho41Ds9S7;o$*9y0Q{CU?~`qCg;oAPFM7-lpW%+2ZLh zgj>3mPL|u+YWy__33J2rPt%Fm7iG{teX^u3NcJ22iQ-onI46VES}1mYR_gk=wQz`g zMBk?t!?l?Z8}VoW^0fi+zgSZj!4`a07ZT(fxYG7%fTbAiHoNC~NjLySaAw}-UCg7+j z;EOquI8iZR9@cntDg)&<@CKzLd)+nh8u}19|IHHYDL@4CHt!r;^u1>Jm;cit2R(*vJOCgKyJ3lQkZnq_4(#dKF4ZKwG^I`>FoFNGa z=2}_@@38Ei6umR!F*fF_;(MEqDPKElXvmXAbWKzIn3O+7aSX1jUf^q`7Y3r9AyRtE zc=J|wk;uCDgGS4Y1%K;@MbK#+e&su-Dxmj2!ZRR-dt8FXVf?Rx&fV7hk%krSaeAkOZX#wb?*Hbkw%EcO@d}Q%kEqZOP z2#PXaP63pn$^+pPPrIeHyjMf+%H}Mcm9vAdVfZ=6PIp}4&ZuOzmT?YXD^YvmI7hgo zU{hvC|I{~$2a^($@@1!u)>*Ie9+0Kjf%T{7L-QBTDdCty5;+TU)@!sYq;gP$xMJkM znu3vX5_h<2w|lHAuBWa+)gmlj{h9xSihy=M@Y1zc;wz)#+QGt18V8SBP=snQ1!~~D zPNM$a^4ATiXiJbc0@fzyPs^y=cJXhyoSLf`!?jj3AzAG83)oq#-TP(Vym7=X%z%Qj z-5vZlH=1AYA9>OaoAd3-}E0A7m%DDSzD?S9lQ;&>tWV4 zm$2~yQ5QpDG1KR7R=mgmOEY7!29gBOfRPy;f)xQyniLl#qixY8*Uy(KjtmAnul5d6 z;nT8#2;-wdE#ON(j>p0<>eWmN_bqRAv2MhR!>?mCVKEKg3AEcu#eFnNowB?r1gsQ# z?=D_H{eqzgB1u^s{i1I^@T;L)F=*$rqI~yot!7%?U z;J^I@6$do3JbNtfLyVE;U(lAm=rF?}DW;Qsml0+!cQ6P4#+h{poQwiQm2oLeKMNJ% zq!f|PfjkT%H*o^ z&fC+(^L!MlQ>^t{F1pjJeP7I%AGQGf9?F*!8Fb-15aQ*Ug(;u>_FD9Wbb1H$1BB`iML9=(uE$c6>NzdJ^maSu!W{?ChAiK5xHYG7z< zg2fkl*)1T~NiKls1Ak|d!|rmcuq)zPR9oArJz>Xo{k)hYejLVC4fzq1QDzW7SM%%k z05_Fa(yLB(QYX5E!F-v_su+VrkXAzID|q~HUwc5@vpC9sXRC=Md>SWtaxNi*eH3}3 zJohq7ozz0ss~*zF+y}W*yBj)Z_dgmfwa1__P7pFsh4+C5M=QiC)bV#pAuxz~bJ~{1 zWa~kbrhDSF9~QYfqe*H@;mMb`Wq96MK6cChV>~*9v^w6qAZSUiR*` zN-)A8e6LYcTpVkW7g6m)zLXk*HDZrw%KuQOAThhE=@8i6fCDgE)dwY7OI~`l#Ungz zdi)S-hN*Ocjg=#lVBu-5CELb+emA!dkPGPSrVWSFp(l0BGEHk6HNl`gC?_A^y?v4_ zMlN0?2@p`-@T3x%=*5^3Ui51YM3(W_a8A->;f{GDx-+CgGau;1n~G(lUU}e5F*%{{ z2v?8?gH;b*K$bd1^ZF2!U}p*Oto_>wskC+;eHuVc{NV2;C~=cUYPi=pH-O!TrD4{b z*6kiV!Q+5gf(qE%Og?-Jn)!zto`Z<6hcSP`_eC1vUJ9s{Mo6O8dAr9i!1Th0Zz8Am zGhR}9^6$^hVuyv!1}UpjUyQE1YZ?@+RXmg$^YeZe>L1(V^(?xkyg-8Q+D5M$-ryv2 zWO-u+va1AdxW|%rhk(O9ZYsc~%Vv+68Bd`E#yuc>i2uZ4!#&>3 z)~WQTstuE{6`#Ux5!#*cGuNu3q*JtV4Q7I~v3g{SP!f%J;|6JC@+U7s8+4eIFMu5V z2Ouup8bc{Q6QjGiu@i@II5m1nVW1|5I-<;?CQ-g0uJFPm#7R8aRYyX8E~FevL?7JUIul98JCy89PvDRQ%%l-+H(l#yvRHktPjpiDe%ZQV(_AKzW0 zzLa~uH+L?BK(t_zf_|@^cN(nED>apLu4s;N5>l1GatbF?m+oYw#+RStk5-!wVZlat z2&5OiB-X)n=yO36z+s2Ivz99y#6zvK;4bNUV;F<-hRlFG z+tvF5pRz5pcBd89wCYfJr;QbvV>7H>#Yp#3pCXH{p>mE7Wvjq zi4!*&b#E+W*Ad8k`0@BGZG!!uq7Bw+ublLOhBU@A7SL* z)cNd=#Y;j)*Lxh(G zR07$FYUs!zO$6W2P|RQQ5*pV}`C=6HXj;;`-MMisl0NVQ@J`%nEfeV2C1Ycr9W4(2 zY2$@@GsGH|sI%UDo#J5Znd7OfW*JEqS3ymn3wxlBYR#hN3gUbN zf5VVnV|3+3;TUieHL;Q}`#;5An(DgzFmQ*jPAjeA1|dSZrTQBpQD7nqKuByHAg$sx z&2-2lLi1AMW>HQS?586&M7$Dz9x5_%GK_=A>R~!ZRV)34HsZ|;(0@0+H%UkI{&B05z#SGPrX_q6R)}S9b@#Wf5Fnlb!4P%c|xL--A*ot&akc^ONtTT->s>TplVzu}J#O=Mnq-F9dNX_2-|yrvn#X{}4`2La$3wIm4RU^R@<)z=F9&v54*_3Y>-_@klmsb;sGQ(2f4F z0~3m8a!+Z^@&rJAZTg-(T-}wL!0IUkV;h_!rS09A)Ta~0@Xy+A@e3ymj^QJbCHTLJ zsCyUr@4iOCH4FAr#A;0R(!OOOoqMsi5Ey_9z?Dw+Hq&~1IQM{ zxCbu*A&N*+*Bke){gnc(43QK}9HU7yC|?wC1`fdib~_bU*XmW2`+M$wh#p#Q_&+`f z%<*H~cB5`dwc{Fs-TYRqgW`Fjo+Y9hEV+K(X;W;)3!E)eZGb>|TAmO%-7`(urYwgv zUz#t6qBCWSLh)j23c4gG6bM)^$3On$>!)cYrUHP%=rYTDI1vs18Qq7H5uxhP1_-hYSv8E~x) z;hscxn#2y?E{U_PXmOG`14eKWi}tJtNrkAo18G?%6k|Sh~1&2%USNCHZ#lVUxhKRIvX)R7>nds4(=0U!*cQ{FnK_h!5LwU=l6&Od_l>7 z@K&X+2s%|;p2aJp5}!h4(;G*q98$HsgHT+jt!((twJ*1~Zpr17VX>JlyTAv~2`R-s@UTPDI;*T9 zu{;5rpeO3neg+=~uBZLq+=$=W(@mRfTleC`W0~Wth)lJ8ZqUhhLyoTs#ho`)gWUJu z9wcdZgF@}O9ve;%Lo9O@S(m<*&Xqga+a~MqIbJKo2@%VwHYqVbrgF$s!gY!3ejivO zAzs~-%`@!O1bG<;MQO@i61~zeb?dqZ`%KL*q*mbIn`z{|O)^&VE)V2^cCHyhtB#v; zP__T50Yxg~ncKHt^;Gf-7|eNZ=6ndxXr%rz9jZI9z7=leZ*lX|xNyLGXbzNW`sdr(lOE^HMAmmc%z*iM^Ue``LclVKuGunG4qf zik^5;gSj)8YmXi|`&&V_5d~Vr8>a2vA4Zf#W@+J`K7hDF8~!^wk-@GRVZeP zY4Af=-CRDr3cx4T&!!OVR6VzHrfsw25x)W=5WslMT4ZHfQhSH?V_UX{-&GQUQx6E( zQGMAa;Sy-y^&f-8+z0hbDzMF=g*Imf8P!$*us2*hKnBS#61dmi=}L5YQ?~F`F|}%0 zTZ||X7<%9M%haFf(NRwb+;=OiX_iDc`qE6#Xl`8fotTrx8e9D)kbhH(ct@{68{KIJ zZ~5{JFvWU+9TK65^6roKYbqxeg(5u$rWD*g5oOUayX}Mc&fJldfMzTVyw1Y1K?SxM98f zm?|<)ILdp;MDh{;Wju-FzGuue?~V?eo_PhI&m>*7(Y}4c!-I_n+EV1djlZ-UO zmb`k1EgtoP?>ALnBnSaxbVd1|#I!04^ceUOxFHdSfE)bNu6HlT8B2UwiQ8H{01@O@ z$ghP-L~3?x&jB`F{3Gv`ZD4Nm%`nHh#B4R+$$?@lr0B~QN64iM*X2qVeV&K|lU27Y zjj~X=9e>b+dSfzh8RirUO_JP{vQ^gsviLn+DePuX!JFFQP5odW&{ zI8drGN4lK`G;NixD$74)n}6uxD+>4}lUON%T45<{2|jZO6X0rCeQ9vQHR&H|x-P=I zO|XZcr+q-CJIsyieIQ4q76BQv>RtcjybCa1*=f@v(vopyf3_F6v6hNS)D)-6y6wEv?Rt7gnD$pVHU^@7pk6Unz=O zv=OIU^E7p#dmvLJpJq3$T?4>$1o4NT#@#DA^V5Fq8`Cds`mYqRE#mAGN=V_rH(New z;j{y?&exkbI{E>WS@U<|_L3&!`6=5y`$+6}FbM3cMBZ|bn+>DsW&!5y>w2uMM?S57 zLYYN|4pSO}!lt`E1??OmEuB_OIdF9`D}WM?%}?HwCIk#Cbg!jB|96(_jM7k1l{o9z z7O&5>E*CJf{0*V+Xnjjzx5b|>s;O@RU19NAO}b(^PBAB};DaxG{N+$iqNJgDRz?G4 zUwTf~&UbYRr1Wm4t;LKFCe6%l?KaT#KJNhB3_+MQ&Ml&J!T^Aqr1ua=IC2?=nL{x4 z6SfumEcFjuUtb#IMGrgH77HjAVC-D_pVc8fg+`?e;eK4*-J!=AuRl$OFA6cEx}a|Fq%on=Wg&D-{VCse!4Fn|Vw z{LP%vo#~u|RKw!~h@Zq4`4FR!rK>Of+Vh&vX4SMjZenz;QWzakiF-@Z>z&HxIkE@; z^a!wBrW^Q1ev7iH&*H9|@-354A7oAeB*1CEF%_rG0$=EAf_`BoSXKHE1#1JUGa@q6 z{`$c}Cx3fmRpIJ8&y|ehDr&zmjU4`lWT_`@vU=^J%rY+vq2rO z)1{WhOhop|46(=p8$fu()-8w!U*%ZV0vd}^>(w@Gd`j78O|;@;cbOjU%Y8+ zG0TIjPTn4-QihBk4*-*%V$slgMtZ)brC=J>dYg-4xAyz49O>mo07O8$zh>B!qCrj< zELW<(AMG_1smf-*#%(E~I}SaYfwh4QT+*abZWs8cq=JjKZOuo(tZLS!ao4IS{heDM6`k8W=vuc@F4XyG|Gz@1l-v2rAVRFWWP%ZDCcJTrb$;zOHD)*5@T|_<;iPl@JTH>Vz2$#l9ihq5k)-vghT=*3;h_Gum zk04f`cf+!{mDcl6rVW#KoM+n>Q~jFg2K@(b6jU2qf=*3@_PKYNpPmtA{AM*+UtsQE zP*<_ad3e)UIU8^9a6azKV(xsH%S=cf74rGofT@wI*>bC^4&9<|8)~Yt1s-`YRc;iv z^WwzZ7g|oAekuePw6nBOQdq`Pamm@d~=QO-a=kYpj$28m5}*- z70C?PcR=@rtBqukNu*Lj|KJ*3u-Baf-w(H|B@fup5+N~do4+RelOCf?gvX)*IQxnv zCNzC0*JwpA!m>5!4yS@h{|JVvForhq%%1E08gc^{$>>}ZtiNpI4!KxPT|F$;kkWz3 zFp@!W*PZ*s^4H%8PNzSdpS4nKx?2IG?^RX4jCqgY{?VslvyXhOTR_Nia9m0xar(w# zsZ*{7N{0PlCZ%3H!3OxG$0FZh-=kQ7Y$hP>TfQ$u6^t=9uQly>*5Ld;tY<`AoT%(q ziDn3WFi}tjO}=VQ-s<1`GyRj7BTtYB8OiU2a{;i|S*;FS^VPpRU%^@xWv`y)l2HYk zE1|nn;du36T%R0r?&G%JrXhKSrF{|0W)Idb#5vgo+CI|3 zq9mnLqeivXDTzrKK@YYq?u5dF>qwLb1}9OD_q>_&gqx|Fn{7ojOU-s(bb#Iu&iKnV zv++D}H77J8d|Y#7AT^04dN8KGEYlu z{sl-4eN`pZk9un(fSI+AMg_e2iA;N>Lqq0gk439cnHU>u$OM%KQ=s1La5PwXrJsu{ z(UTBu$m-E#NSL?#oWprx~M2k zW;6PZawA^A!X80|n%?#u*Bb5$xhf-ZiEn?m+|4s3*ktYrvGOL~i~~su66w)#IW;ld`fAJPaXCtey##%s11`r#E3uZp!R>tfQ_NNEAoZ2n51J8FsAg z_;7|5^R;503kq#EbA@G{J1YY(K(l^@qAReB->RUg+0QGKSBEO4UD;VA~IJKq`=M`0oFyU)*)`+WINv)pH@v|% zR>grQi?^6LIf{I_G#Q>5-;<5K!Da>irB>mhUP1$lDG@q#3Np6sehUf=u0##?sy(pn zYCEig)E?mwP)Gmc!GWq9->)TZgtrA4mXL2&1*ITu^-gp;=0taDhauhasdFNQj*l4p zv=xY~SF2wpS>MsA0l{+6C)!n)4fXS!b(tQ|ij{8+PoCk5F(xW%Cy*{Ii1 zi%-AInxy^tSU6^3I^r?PonkD_y?Z=bFS-G|{~FRC97ehbuxMcQ*<4h!jez1;3Y)>P zGV-Co_I7Vu|E40Jj(OO|AP$=Pn**f9K!xAQ{s!Y`JQ%n$Ssjyl+ z+WisuJOF4tKF~G5>~+v^S}+LkLq18M!%)wwr@1H6l6{cN@Hex5$3gk2$56;YS-dwNhU zr1cD(qCntVjy}?1bJ*=e{o8Eg&?+h-SJRE7E1l+%{0Rn|SEso{=U($bP!@3VpYl#q zWG(1gik;&qR@A&?eC^>j)j*~QXM=8Y;vo6n4T$_8S2X|7=ptXKVr)-DCn-x#? z(>799{_r%kws8L9JQ`b)g-cEHt3&^5<#i=;5$!tzWdC6nbWGAD#&dQFT9AcE(8ufk@Q;BMgo_By zwu0OZb@&?8u-c_&h}vjWws$y_?F{hh9%F7o;Le@!H(s2J4gsURl4}97{H!;TQ`z3l z1Ua-Ur);vxQ78{bjPQ&~m{aL_tb@rx^h%A~<&gPnc=hUh!rCC%6lny#9QXkGcX-2y z5^eQ-oY|t)q6KeHL!(c1SBX9vhUjqU;OR_@9PBji<97enFu;LknsBMR^=$=(?knMR zyemX9oh4ULdIy@NJ#D*PQMuiIQ+xu&GEH7|d;AKW?zHh%{Vi|^OLr>)WumVZE@KpX z79P3qBGB8Vz>od?FcOhmnv_LxhUHkKTS)XD_X(;4`GBA@UUYmQK+iM2WpAHI#^dC@ zCx84AjqO2gld@e8a4a9J*=Jx<)%Nt2C|S1hGnYsTFk}j2h#_RHN_cY$55p(8t0N&* z_%-L@yRvl~%HDM~^_SeLx~0}w1fWhqeS2_e{rQRVt?|1joz2Ib31`ODL8mlhzONoQ zrJFCp_>WUNa{K*-4>22nKS3TI^vqK>2P0ij;CAY@@8H9R_=TDvzL&k-;#HD;jg)*( z*ZLbNfXO!77Mk?}50<5g_@5(x4ok_f_B_qg2VcDa?*VeJuH&^)JYVd-A$dO+LNb}J zVZp5JI9ETWCz{TC3U2h%MHSsW}6FZ&n_(b2Rl%BQPEi-+m1V#(7y7ZKUCUu+E&PGLge|&QiGmD#xa{_SZFCpq!ib4a37xrjaAADv z4p}Bp1+>wJThtbFYjZFE`E40*NNFdS3=gJ^`R`g!l12&RLqPBgVCU@X9qo+MKgvQV zV**h_*mQM(*=%i`cPG5O=?|sm!d>H1J}Y4IH0`S;oh94?3dMFF+B2FXAu{^CZss>S`NKR<4t`vyNpJoA4!bisAVs2c~r zP56mYOs%zq1>p+Fm}BrjmW!SyhL_|q_bwV8z@tEI0)lc*Gbnu6#^76WHIiV7ERo0q zE&T1ffoQ)oh|cu_7DwygsyUBx6uQWD1%ERi{CD--xi#)P{wyTeugN@6&#$MKrX#Xi zHyX@MxscQ^%}{rz!-jxm@HGzZr9weyT;x%~sAU~?p-jf;);HuHY3UNIm1_vQmK>Iq zeZEis{9nMdl^7BjN$w!zh!K=M*q}Xe9fNovU5RS>j98t%3#f0_x|?Ieh61n|cT&(p zUp;e1oh((>$VDwkRr#V1nL~5(J~+)0NSR=pu3{!1{Ay*LR!=^(q%xY9oHjf(F&nJW zf#s0W$B(%6*z3Il%9WlcXW!QPwq9)QYK-osPE|WsU{ap+L%%F!@812x(wMNbyF3K=^xVdt!&Vs? zhPHyLJeEgC<0W(m3UoImsSvhXEscKN!h?CvMBmYNZfU}1j5SsrhpKU1 zv^tUpck#MU|L9^j)`@;9&=h6(+x_(3We;?6;UCll5?4b*dl~YC5xJXJII%(4VI$!9 zgA&;+A%G2wezq(T!VXohh;rdBB`~3+1N!>$nx{mD=6HD*`Gn5pl{{9`{*6JTeSe^s z1M^SyRjJLDSq2nJh-r?I+RAI{p>gK9@9$Hh+L`>$n#-1E!;I*#nFRHH^ki36f$;2t zZpE_q=`*Z<_WhVr#)EU_%v!6Q^g7+Ru>x-@55^z!h@YMZGU9x(ht2Kv5xIuGN$WX| z%Ba%gGs5Oi0K-2wQ9KEt!_sLgzVB5&b{xw>UmW^~X5Y}rNA#QdpEl3+1~g2oqLu8> zGdZ)-lP4Sa)H|k9BYAdj{nau>pRK-E;0}NxwkxKXcA?RupFE5HeYP>@tQQh>3j0IJ zsHIYs1z;s#k!n#^d>_i*n%Z}L`lpEc86IzDvNZc!4V?)m1aG4;WW%+f8#5Uw9I--7 zgN@?HzLm9_izlyYCiiW6Fq_gbq65FnJ9-ycsKymQ9j)YsMQ$T6>VDTW?h}kx34a?| z7TwoFg?`-J*!)>G$>hfe9;U;(5I>*=+1cARvT(!=cpi(xQst)5#=7y+%zsuo2jWue zXUU|5agb(u3)x9)4w=xw+~cr~woBM*nyA2>c-czkTP5Sa#?cyfO>bKAf+7Taf=lQF z{*lV8mB0lSzm9jaFt|+g+8;WoyxZCK4VEjC9Xz(^x(b$54YWk$`prejz?v^kYR&29 zvT8xYhMfr4`qDz^mm_V08k>VU3C&M>)1j<|KdV5dO#F}^^s#=x zU7D1b^o~^ZsF2iUXfh}INN;aGXz~iRawG&@KD>g5fN;Tq=OE$j+Rhyq|FYuZoSCkF7a!OLD?R%_(#Donmwmj zKm77cBAV~<6!jd%Dj)n7sCh`1jgEwdfh#UEG ze#NbA;65Jw!Nx5r$U1bNdb?hY=Yn{aNk<;=nqmc6%flS6LZ+&%jO>GLitSrUrRh5z zJqD=C&ejj4zXy!Piq+>L&G=C~;)IUmaKr}_j5#$%b~^eYmdRf+B+J3T_#4_OL_)@1 zUym~s5o6z^?=2+Js3AbLEb3GCo^-L6NQ4Yua5LLVw0Fo9?tDN*?aO@_-!+x;R%Wb$ z4ow#e9)^_5YfbR8I_xvS#j~J}s%O!y@UQsHD~B~;NVW%A_U~w{rSyHuclxXvzXVs4 z+>7@7e;U}INq{Sa0Gy{UD@N{^Ot3%rMp*kt`4su65Z3QHowO>hE9dV{K?3>>?-zDM zg-3vfmp2uu`n@>ncch5WQd?t_z`>*_OB>28Oe3{>Tu={aAn|&P0pU}>w08~rRFvu~ z?O*krW~tPSWf^4+V|R+YK;!hH|29~FFa2*(1aVxUUq2w0Le zCVA(_G*-5kpnKgbbl<>&?j!Qv*AeWMCQIG3Q3(ufVF7 zcA&jUU^Q>_ZUS$35me?Le64rTIHN9gIdiub^JkQ=^UQc*p%GW4Y>beosZ!NJar8W- zz|I#P%xi1_j%54|avmCWLiFQee{eup3%fE9bSB#3oc~ooXSd4~l@z#J{l`Bv4uQUL?N!8>vKXuUmCD)dHpXw( zBh4E-eq5JGtr!J1V2<5bX~}n2=Z{Q{a7z1vX&K+^j9H4*po5EQz|k%VZ0Ki9Jc7-= zzETEjs!JxcEy4oZ$sZvVIz%bT4~qI4*a8rel9Msyg7{_HNCP8bl=|_!n{uMz0N)a(AO+R9%?QL2> zd^yh7^I=qmDi>t`kNg9AQ`msHijNnXHFOt2)YO{mv(~TU&~*;~D3!8IaHzZms_tWi4uR1~TGzt(!~nAa}sT9_fO+mgHBi0hJUcU*lVz z;>w;|bQRCZ?w^eTjKz{+aAL<4ZTWXGV;RviVh$MOHpF~l&eK{%sHY}lt1;S2D1X5KJ7t+H*`st-5dONjE>?kTMvQn6{*jd4r zk)SHd2oDPh2>2uT0Dto)s%S0@=G0)|HUU7(3xAa~9QB2l?yfx*=Zy3kHAe#L@&e5k z0g(0L44ey6>1Es8(lR?>S&yKT?ufIsZ*Hcs>zx6?&aczT$>01Q)iNM3;esA0g3jhBQ95K|0kIgA4%5ljHhnCtjLa72&) zCOeC(knog_et`Y>9TX`GuRc|PL9BYV#*F}MGr%$D>4|sze5S&rOVyihtKqqErDw{u2M5C;%mo*{ z!>?XrtN;%Z07lkE8{o3fapohry~`)I6U~X~f-2hjT~)Rm|JGFsl!%4rX2m}oZ5*IR zLAIL60vz31D7hA6d=tthu7-BdvRg2}wvWmXhZ%=T{m7@#tlh6sC(MB0sMbI@YUMPr zE3qofN!A|YF-(Hp4)RIGgIh6-NP;T8j;1erSXKb$r=3yt;;D-ial zvI#UzaQmyfZUcAH3$sBt?mmh!o4=0daP&l&6MnmS6O=habxq=)RB<>yXQ-Od=qnS?`y(Xa2l+@9 zoyxdAqyF||UWoF1zw--3A8ystg)`LtG~a)^t8_Cl1WA!n9_XZ^ zayNA=-j{E4vr*7BeN^Mc#9`rgzmAPRtK_No4L$LbWtGa=Mqgcq4kEEtC-K7Zwk1|AFYpdD3GOC+3ndP++%==>vm?BwNG4LqR7rUOf8w*tritptH!XeWk_}rW#L8mK#PWpTM4Q71n?Ru&2&`&jJ2NEYP;w4i<+(UUY>Qpj zVsV0%lq`PX>u!9LBEsJ)7-h$|5ikRTskdq@FW5s?y(ubMVu3LovY7R@28oFju z69js+>_TV?^~IhSK^WtI|D@p9XL`YI4mw=Aq}kQ(Qeo8y=VQC}Uy^9k&c6M09L`I0 zXfkAomHQ>j=Er$|mf3<(2<(scN*`3vgVW(w1G~MvBZWiqFoqQJ_mp6lW;-OCOP_=S zP3qOTP2ZUCFWevbj~Zm>`jbh}hS>F$YKVBm+)=61rJ2-(7Jpz%{sjx4h@A@n}~wk{lZIQDAFAm z@}cd6wrJK&gn~1aTC$)@Lz~)Wyi|V`qyG5U(x~S(54GVgMgk%S%R1F00GFw*OoHnb=6cI{voyi_^1@(in`f#@79DWobZh zPS?oGtSj@V^GWD^e*PE$J-mQ>N^BMLGOz*S`d;V4sHfYGd?TP16gZcoU}au&$CIHY zyk_kuTduDUu|JNhpPs;Nqc*Y&xeKGsYTpaeeiU7<%cb7N(N}uQym4BzjcS9bj0i_FJMh8ZE%uT#9?fNcg^RVg0; z{^HrBt4JG`sf9~d48yrd5{;j#G&4>~OQRUMzjHuG#U2{B(4fbsmlE>XhFwGB{=Qwo zH6h>9;khN$8@9^DRHWgBs*Cab`QdfOZ@yc15;3O`s*&H`rzI1Bry!Jg_MY;QKkr*s zQLluC{c=~6n=i$u_5ChNY}S?JTFHGo2%-;%6+}{$daLq=PzY)z@oEjYqUjvghk z9vzd_a$;g(!d6cWp8xuDNn}mL{7Q;634BPvu!o?DM|rV5Xl6`gPD0A|c<(Mv_<$+g zfaD=SfVEDsw;}fY|0jl+V2Hp5CUPwoPT&THQst`_7|2*sakE;?o|SJe_-XMlqtD@2 z9Ft7`2K#A?>|pqh;s1;zG5-@b%Hi}KQ<{=X#YZdYHa>sW%`K)KR#OloF7EXjIe>b8 zQI!&Bka$rDKN8j-pXx5kxvFnxRn5u2Lv3d z@CGCN349CE`n%Cscf0*n;b<9v*Kn(%)P5}Inw0G?B-E!grvDdYf6)B-Vw6knHh#slGnP=GtFdIp-?qBQqpKo`XO6@%c7Jb6}8U9|PDUH=2 zPZJnn#0!46i1j$6R*d&?(P?v*g@b5IQ39e`^@t%~j)t~zm>5SS@cB5dz*Jo`wZHsx zA~VW{MF;q3I8p~b>dj!>O(giXE->{02i@o41G0#?8&CVyAf`c5Tf(I7VE7^J3Y58t z0Ai|%uhjX;ENt3qw70nI{X?)rja{c^!{NF!1#Dw_ndWXG&c(J*U#COU4q&u}Nn%=UkY3N~ zH|Pww^*y1?$yEU4MqzePJY5OmV>^rn$fn>@OWUfxUuu<}H8gU#ci0C)KzDLp^)0=+ z;SN&l5jMp98}vZt5DR?Db-%`Gv+%EIt_-%0wPbm9RKi!Gq(VgyDnNSEf~^t1fT>58 z33mGJ4A5%ZJ24FvEWmhse4o<;;X^xtLu2W9`~HQmWo&PxLFZj;x0|ZYtwue=iLgLz zfOv6#nQj^M@?EV7@-Y=DBAY{Y*4D8`3hw~qm3BbV7;zgq;fW}3AY9?nl`o>5k> z;)H!huko@vIBlg1)GXDN$mSLdG`{{^Gv<*nAB4g?)8$S-TI z8${|6r}}B$g0qFnT0XaOU9ETn>-Zu2lN3al)b)*eS@sTjNHU8Zyz+fS1~ZlV)~3KU z!kzctHaUc1#EfGhANu`;G7?s zQI{KHLf}u&X02cE>u_Itw~^la9KN;9V4VEfPp)>FMDjj=>*w?+!~58X83+4<@|&( z5A(EB#gDt1(nv04&jmWHzrm91Po~wA%1C2DTl8TiicH{8w_}m4A1QLc5IcV`)r&E{ zYfoPI1(b*5@YB+xPG<4CPVS^?uX${|$SCCasguxA{kYcdBRrJeZ>d`_0h#cGjYTmZ zW{F-1Sk#5J=PA&5@>m{u%{~+jwwAUs1F-yOLJjep-RT3W*l`mkK;t;r+*4oaDl?s9 zcvxILBzG_M{Z|dc)!eO#LQlMAHEU+$g83AoV@)+}GN|(#_aCz_GyJG>k~D2}b$`mp zs%`haM9|q6c(7gn#0qg4OPcJxatIr< zrev)}z-7&qYTrS@%6M-~Z*_6b)$AmVP;g`V(H~CEpi77{oirr9X-w8??#ha0#1UeI z(DZ-AptR;vrCNFBAl1zd?}t90qLR58k+_)Smb67QGM&0A@c-ntO6$b1K#ueWmb$GT z&Yyv`rKH*q@*>ic3`X-5rR0^eRr5LD*Ge}Ua=ZI>xd7kZ>OMv0g;UM$)GaIfhq)XY zl{)KJ={n%^=*556zG&su_Ob61lX*9(6PHAoQ?fZIcU)oF+zO`SbNC)aRcFy-dT?UbPd=08J4K?X)Y zVTX=haok)FEJGkh)kUFC+bUu4=qwj+1sYeGUFB?Os1zcLYz6 z5HWnn+KS_;6ShKv>?G_{?}wIsNBbmMfN`rK1i6#Lj-7X%Z8o8XO*2S=_;!->%6e@q z{teEfrTIxo1tiU$2k!%+kYA+rwOKi&@&T*xn(T^2Yn)(WXAB&V>D2294;zkBHmrlJ z+g?xZethm%7S78RzzPo22n=bWR0_!g%5%c7@olwxTn5>g*H|zSR3}*V6{<=Eumg+k;+|EU_Rcs6ueG3i$C67Dd?TUZ#9 zB`CK6lb9kaAxz^0V#c?cDV(_-dbIIy`WMCqd*2W9X^si5E%y&&U{A?|%CLu@*k4WY zF66l`tYly^U&-7PQgC&+pps*K^?FzGYl|LJv35Ty@>>RQ?`-+fP)2wBPd0Auvl9`y z>*5RAv@HoEKbB+8M2cE z;^bbZg=yY4*CKol`MU*2z1Jd7Motn^B+jJ8g@%6T^I;l7zP!vxz~ zH^yVpQAw$Vy7VYb?+i2llSn%6AqK%Q0v6|RvrM@$;h?+%*pJ@dCZS}Orl^F@ZDzB6 z_x+yE7j&zVVmQN)TMhz7-^)8At;r=-i2%qkPd@ZZT|#}<5}c(l1ok@JE{M(kT(Rkd zCZC2R5EwP<56?pwJs>I_Bm;|&MouhNav8M;t8V$~0&juc_X>_9+9WC8c=ANlKdMuvVG-L9Q#E zr&J(O*kHQ(lH|AX%q2CN@jrE{VVXnei{>_tBmT{Hd-9v?aaEV##P==Rj<1oLW&?NCnIZh;2r7 z)=cnd?_KDIv-?UO3_ApPyQI2(wBjFXR8x-r${3OcLOTvT0UZ1J6b{*aXl14FtN3NK zUZ)1RE4*}4#B6CsB+bZZT{Sikzppgu(s_!4pnqMT*IJ+jB_y##xo@??5vtW|+TgtY z{`Wnfj$mSbe_nqDn9N<(<4SsCR>_YuW1n@M?}eN2C+9=*_=(M=;URoPP)k!5y6S8R z*#Pt})yNA_|9ZsyHv5GyW@KDn*p(k6hFz0oo=uGKs8~LL9h$QsLmTM|EO5n^+Mib^{)r*M(Lpb-zTe- z6g1=6!LY^tDQ8bO3K14M`x1ys|VG}#sa%7O!kJp z-U*!j{+*_J_e7aVq$iVM;_`z>Zfo&(Eyc0|oVtMn0nHie!P6DrJW$xI!Y}%#*y0#mT~_Tp zuU)V^k?n7Iin)BjD#bHK-)F#X(U(G;xtcP7T$B(-BdbJMzT%j4*u*ggoHGAKQ9=~p zGL?LnvP-WGM;fh>|7~agmrrdp#5u1_)mpLz!*us}1lgW!dvl6+KKPAN_sOzlTPfSct39;Y1?GM(T=>p8PGeO#lLTvA((b>>Zv4KeZb|onYuM5O> zs4cr_w$oY!el$mvaP0bknH%ihYIA$YN`#orPzXnw2(;Vse>LCq$g(nKgyhmRu0BsS z+1idfW|Rl_%oYaLfo3^PWEuwb@*ZJfSKxCqrDw}3;-FElRwgLdG{11*n!nXkn31_2 zsq;ay)Dq+d9No6mp4ouMb6Eq6Pnn!p&!D)v`pN=rkZgVRJ^_V@+u+EDMNxP-*16TxXA5y0_de+e$WjgZHB&ONL;8Ca&cDt_$)lse0F*oR>uu=Z+b5q zSiM{-o_&Qpt{r4d7_-_A4STT)<#|&N36!7&{m|1E`@Ia0$8o1vm88SLBYG-xj)@*~ z&l{8QN`6+)Tpb<)`X$%#3LWmzD5J^Ur-@g_RFB#kq0iH%^Mi@=T#V)DYWJf2bV!K= zc8VDA-a+!mtPl5RhbsgDO-$D`YgRp5E5PiE3nlxXMmd3^no)0r|`;nf>@WYkpPOe&!znJ4eE- zugZ*;cNbj1CqzNEj5iA~-W!WX+*pnmD-tcK&FDR=MIKd7REyzXg=4LKaP;OWiA|T) zNOTH1^)-l%ji$If>jVz*xj+*2B*-=TljRF&qD9O^?3EkCmU+I1)&vm##=xUp@Go22 zukfoU_86iH#$y)V1qcM7hqLfN_(LgO0ZUbg^d5fwJVc1-Orpu-$NiJWiV=NV27>dD zm%J+DL=HFL$GA*3;ns1jMAf8&oQYwcw^bQXig2ffZ$bkGq}RvnLd|Q*RL@ zJmyb8EBR2MWQ-ONORD&NV?0*o$^p;E@#dcCb)Xo52ld1UvWO6C^4Ad6+~%PWBBFG za+nneB4qmCCR+mWTKFK+?cmr!$T3Ybd;?0(YKfVm!J-E&wkk$|6qnW#>{{V6FoVYS zS>Atfz_}}{<%M?n7R>TAb??Rg|JoHfMN8m&MeSIhOTNuG^kc`w(PBK>cD5eFn}ll7 zHB*nx2whr*k%MPIPI%Nvd!8A*Mr?SGpY}c?`!Z0PviQ-n0{54qYGzj{)#B*< z4uZwuiwc<-LCadJ=XQMlBsM$tu=rUuI-8X z4!NW*;jA+sND)is-*LJL{$l>46kGdNs@~)QLo;tg={zlB`difg9_S7QY52V!Ui)v` zpagDThb5_zz=ehhe%&DqS_!)@FUW-ni#Q%*YR&b-O3l7^9I=@P+|nLLK|Vb)szO+^ zMvf)JI)Zps{Isc`?lsW$y*xW_WX6P}&t*I?A-dQ3G%sK8ul!H5Y?)4ax#p@CDQJ+0 znM8q$4?{z6@6BrxJUk2XS9F9a=ALiXYz-)iu>Q`mVg;%_EbDp0gUkLrlX$_3KS$al z>=80;IK5YUo|aow;`*OpP&gWu8{LB?CU0!dUl!I zKm$-?K@l&zYj_m!GOj3KD6cP z((XF?eFJ^*i-bUQQcIOwu8zNx3DME9pzzD~iNnDrUvp3%SL)M-fwf3*GN``wJxSUv zdw-7xD)S2kN($~l23r_Mrv3Z!{>T5R)l`v0%&%aoaM0{HI)|=sAF*7I+{7Lc*Z)K6 zB=?PG0vR~3O)c{aQ9+M#Q_mE8a%-@a|KrugoR}mThJh}c^K$5llWxsTM2(>;@AY!k zr$5~>5d?vlb;#ZeN1%IlPZ4Na-}KV7p&D{wI2C`QGqW@33Vmf|WFNN~<7F5MPbm#R z*?~^91s#0fqCHloh~-h0?{mu=yBUF3yu z&~MK+gs7*Lvw}`V4x(?jND#v{J-jUjk)%c@odL15cMY^f9a?H|TZO1IwK~vo0}5=o4~xe!mI>g~wfXnIc1#};Z1iT zN;51D{YKuan)wyZKVXa;_z<^?kkjRBGi>gi@xM_+Yx;l$k!1bF7ELx-L`s8D} zh470}yQ)Im#i!^)@+9#E*jv=*H+!CbK!X2(DL7V0eWVlv*SALPm98T7qt8l54bkK%9QQ^+7yHUCR6|@` zmFmbOf_meX3-ux{TBV~E*iz`!B8HGF{sMAg@ujQ?>?<7aqmerjcX$Ow%K6R=YTJ9# z48_D7ZXbIl`buJH5-)&!sh~|@3^53}+fwJSYg&oTjP9_b)!svQE$2i3B>Qhw)e5rH zY6l=jYoTMvn?c(N=H@#}Z1n=G2i{=kpX@R052sza%mG)-$4tDun=(&!GsK(iG*?|j z2pkf06Sz9!BQMeo|n`8^7Xu^qxijXq~!YbKfPX&O)C+hFDC zcJe}RxP`p=JRidXI6*1(ywBU|sl-;R2@@fTztYLwwZ{R=$}>HRPLCRUtL);0icGWL zQ!llHR?!KLHGfX2)6>dy_;Yqiuhc3W6n%e$YKJX>%Ak%)fr}o4Nv>(~2->q1s3fgThuh6RmjMOKY3C{k@`sr3=6P*M&RU8i@iaInE7 z!nEa*miL*;m`?Vfh!4_aRD#ppA{HwFnp|SxO=Y;nJ@Lt3;5uE)OHi6H;)1lCuia3{ zJI>R@qt`^s9&4|!dkpQ*r?~YvnHXH8*lQ^y@J)wEb03Ki`pdCD7x}Fy(v)H6sxN>L zRI{)4asRBvl_|MM7q+|qXSs@7 z)&HiAI99@){$9XqcbUvA+R~!$#&n5j9lXDd`?dsv@%p_bl&le~4ytae`+J^ZImKl%sH@ zFoAv5+gW`hm6X0cedDr1dNhQj(Bi>^dy9ELvfUrQA4Ilm(kO2L@%~8@g!JYwj0y%8 z)q*S2ge6vxn0-oykENfhf-W@KxcZ#3nH_=aL*>P$C;MoF*(Hmiio5*Zj~T*>NH=n= z*x)O7=#S7(0h-Xs#~EM{#%<$sS@j~1g3x1|@TRqyuH`(L(_1i6^G<`S^`XsAs1>Ge2)$bQLka{iol@A+*y7Bf zUVb)+^4`>1q7q|%FBa9XA^+$ycBKT;#-SQ52zfrni*rwe2UdfxB||Ee9U4iyoEL_; zSN3DfDY)f~E2loZpfzyfQf%-tszC88qBr}>h}>agK>EyK#UD0m)b5US5zf`8HlmrS z`iG)$H5pXvwyiTh@lz8EI2?2-5_f&xgWv?rb(}K_41k zBsy$!V0ztAPbmTwDRVqBR5N#u-@oosA8vnuqw{YPq5>tT5rY{3UkN)i% zlF;h(qtqnHqO;0Jyz4c`_r)jmz`xqEDb+s(M@2n7d3EXlB{L(oo6TI+qcA6W`hI}GWT zeO0vjJ2sFMD^;_9*BgqZ#jDnLEluB$V1Z#ME-s_VXTBq4FMWVqQn1**ZI}gnr#g%n zVE(ElvV{QckQwih8Qe5xxUGUf=GMaFWKtLUGiq-ayr(}r{^!PF1juIB`h31>*jmQ+ zgd4+z9IecdMkYAe)c&>+660|NGx}rHW-(;`NX^9#DYtXYvT)GNZ88`HnHlS(%_m8ZMAszGn^mil{C4ZK(vrAR^L7 z3RfV+n?&v2^NK#%h%SX@#}shxEVFw_QkRY%j-8*yIJ}N?-e16AD9TH;+r0ZJOAW&B zY9FnU$@3r_2ntX7;q-{!-#=T`P2PvMVA#~sy^W-sAAofTM;C%0&N^9G?nSj zlK-jn&Cd@iv}jzAFdT*Yk0Tr=XyD$(Qa9_uu6k)GUc3#*;QXh^*k43Wx z84QRrcu)h1_B}&Ur0WybYloE(^#A@>Vse@c=H9^~#fvpO{3RCh^5hKtM4lcxOQcBu zOYgdlH^~R`R7%L$XaF}r$iG%J8+|`ghOS7lAgsKuaywzwKhW)wB$1Z(l^z9a||{5$4{#*c_aC8upoIB-iR;(12D4zdHkt?38U)j(obxY@UJGa zL+kWGlqwKl)y)_Uo)#bTnuLL#{iO%CH8_Uh|=boQlq z#`)hbnbhO2=jjYUgFGah45SAPAWW1C8tpBDXryW|?5E zsd~0$(B z+w1&C%pZ2|jS#?y*HEqkLaa2vgZA_b!TqtJX7#*3$JJ4EE1G@N#W!zM>la=>aBmZY0? zx^BG(1EHQHvaMrosw*JvB3tK2OG^g=Z&TNIg5SE8dOA-~144E&x8i^#63bDEx1s;t zbC*wcI2BS{Pp#%Kt;r_>KW7$tC&9750qfPH8tN)iu6W?PF=pakKA?m!N+T9?f*ILJ zSOD!Ph4M-|r%W88w0E0)!yJ{%7UKV10~%z-VnFbOlgbW3?S_8|GJsWy2Nk|za$(#= zFv-t>ik#*YT<0AVJa>*$yOC#WAC75PyS-j$tJb1?4kAm70`ZrmS0^rE!;+1o02e=sGl5VlDHu_GKIgur-I5nYk}v3b z2%&W=2ST2gv!GKZAjb|i>R_KrF$hh0xYokmq}20LaUeJ6Jfs%KCzZ$u5Yq&U8FufH z`?ALyjVwE*GZzxbAE`^;83>4Fv%jyuSdU0$;pRFxUBr4kx{<7x(B?%3 z1scxz!q@aMvudRE>(>7PdU8mK0x`d@64kL_b66Zi3U62-xr`5~kBKC|gNzRyj0)oo zZjHtHLuxx8_%%&(8~(3E{A)Tw#P%4$RLUyia!emH0U5O0j4Qo+qGX$_{W4J$ccY8) z>sMu&Wh9ho{HDrb5WGb_P8+*NKjcA>?}iI>+7Wd1~>ME@#wE$b!r z_qYk}s_jeOIqO%%^K>P@UY3B~`+NeZNrPJ}F(ZoyKYL#f5^Y^VA=zWhs1?aC2T)B? zg1uqaV}Vhg?vd_apIr%9QkL->6 z8M7SK;S=T#@H~|t&}y{}VTS+0mdg1TmxX#;h_MgGE8>AmzlOQ%HG7e!KWCMsE?u{Q zR}U2mWxcSj1!GJrMhXwbut24`5;ieS0VY7m7+fK}a)LN?wA-q0nZrt(p09p%FaNfn z;c|5kVI2TUEp|FvSr z3WhSx5pUc9MbhbOSEIX`8AvI1+jGa7rl!%tZt8+a0WTAYO%HVK{QIoy&ZOyy&~wYK zECvXwgRGofP!;wp+>}hoQ=BfY7vJ^*@0f^3W~eW%^c0sjnHq`ApD21o?%(O60N(>S z>f~6+{97nby7vLT)h7i555U3;RhnZS1E$PY27GYBQ$j#Rl%%6S(A)PMilBr^hDLRt zk$T}Zdg%zrw`m3=^)ygV$j0w04tNcp=|C*|%9~{3PK@;`K6bsIx$E!QWkXpxIT!q< zyU*pd!5W!?L+%c{&N2py5!z7K;>~m4131ZUAx^Rp{;@PQtG`k6>ur|#KUi?=hrc4c zP81TIgtyYJx7M6bR+A^siw&5GqP)&l-A2cmUAX#zAQsf%oXRi6Oo}}}C~9?$7rV2S z;Ag~l1CJF5^+$FZd>O2z}vH)CqynH_(I zg$VaS`pRkcO)@m5=r|c_rVfb9?z^EMgs**$vzX<`fPjM?Y3|jrFf1v{9>EqQBsY#^ zHNvLBGuQ8a%6Vxiz<0ikAZao=P3{4s?NkpfJW50Xgzh1vGVuzFm92Fu#!#x}C4d4q zlxE>yW_kp!2R#zh=m9=9q^SOXu)hcnP#^lEFZOaFQAPfWUf@n4b(J}TQ$zR6Iz(u7 zx^^#%cG1NhB#k03Z6wub;45;tSZ$QW$tjGav|=d+>6FSr_XS{&e;-J637O6D@(U( z#={g%R#PUnL<&f@nyXAALnOT>l9w290(~~0r(OJ7?=>?XeI41df$9}hy42Jh<*>+- zd8GF<8_!SA+}>??_xA$6&*mYe*^048hx;(Aa#53ToBcw2i6q=t#xBwl%7Vipk zrRcp*_x8nVc)w16)3o+{mLb~G4S4ZmZC^nyHMtF7u$*gG*!;YwblSYY-Mj9`CLPzl z&rh4+Sz{y@;5~}ub)Lsm4di$WW6MwityN^F2x$!pzV+eRY*N;pG)j>sMUC932Uc6t zcUkyd8Yg`#voC`aYg5B2tFaB_>GZy|VMEuWrK&Ct{z(?0k%YUB$HB8D9*c3@$uxGA z%rcbk^Iu)%0edfyD5v425dm1QV+NHEUrl=}-2eZ#ea2i~e%9Ng<+V7SU|)1~xw{kf zEDupMZqUJ_n(0FmuQsxCBEJb=sH~+5>7c8}f8fq?$9K%ckI3!#DrU}gz^#z^OWmC4 zG7O@~%v&5JSIpW3#icI+j4)E#P!IoM3>*R$Q4qSqAGl%_7u2|J!o6Rm8R&`6hllRI z$OOf19cCZ?!lmqj4uqQM+3Q|uD!U%Dt;a!Rovakl@YLTB+B_QxZ&@7d04qYueERfW zm@(PUiQrx#M>~DuAZ-jLN^USBge%%TmZ*EF$s>hxGX`1)ETRrtgHsK0OY>fqFI5|l-qPs>2{PakNyKg zV6!G>{2)(G`bm(BDA47ir?Cu2AWXa6x!`)f1TT&@Kc>{e0%~@y4r}(jDwuJ+*WV*s zSH5o|Tqf_d-M$Ep2htK81z8@Eq-*;Vs@}0e?#e zOf95U%6jH}f9OS!;Cj63Zv=Ca2Zdc2)j?)91=>TyU$lCRRyholMjK~lklVMuOlF*@ z-%Wjge1B;TSSY{d#%gk-@JjD2Zg?WKnC(N2cRAVXR}v+q5?a!@m%VHxxz#$+?#H;A zJ(WtdN#-w_JBWX!gRo`9NnW^BH~AdYXuL8oG`h#L&q$iDE{UkEc?S;>F~b0dFzzi2qIE1i39BwBu7t>i@LN~!Mmc&!mjn+vFnh1cJ&N5nheP6urF;(1 zs$p10;(AY06DDb*`YozMEe^_UFX-#I={~_PU+@Kpjc-rV0b|V=p+sYrx>Y$|I^47G zud;@nO;XBRMLU|t@qT}|w1{RBgX)JaLfd#@K3$tOAATnU7IZWMTf1+0Q4vCLxB~CY zC(kMcPnk9IR4t4ncZ9&)!)a-AN@olcJJwd2tu@2Fh=5o7p<%vGoCxHn%jW#9{7f-D zUD;#bs*sxcXxQRd&ng1hkw&t_TUxlKnqmENFs$$#44=T7F6E@!dPl&?nEQf#K&X z9g-g@4*p(zxVrOt?KLe8>j8PV{{O?e-jc)*JR`JM&swRp8)YhvUw0{L(#TEs-rQis zwHMESxg%($^q!;HMrTtRSF79ppwde~wI=ao^K5aw`J{*K(w@9VS2#biZ2I7aJ!-N- zj=-K@6EY~H;g5`O!o_c4TyKhAx}>9yQ-i8&h3|!)zWOO6S9}>89LL*oVKzDD1rQ5hxB?qECHL$#V(kQ(hcEW2nwnd3X=Vf zF#Jl{?W)aSIZMjre3m}M@heMnt9i#x0H>}qxxjcBi}k~mT0vkbtfPUu;=y09VAo!# zTU<@Di<_GxtFHHMUZax}&1yqsH6FM`ol5w+*YG&vq!Ap!Z75)_;In^BN znN%i6xV#zkAs}Y5nI*y|%*u?s9P7XU4S@205-hX9`R>h(H!XaPKh)=XQrY$49@!wz zepXK(rM4A&vA)lQ;rOBdl%a}yVnf=8V=9s|5hdL$HAG;s5TT}G z^S$F#*Ux!NA_bQi)J?VnYrXkpeKYA@*no}!r*SHTBzh`Vc}SVgFqAuKLA=d0dJl_P zLj%`NpD!j{z7Vy8pHqf~K3gmtyXzE}zk)_7B5*$YHMs)nRSC%0mqKFv~AIP@?W)eh7ynGqkUg73K6{#J;cV#pDTt{-@*2D zx5qLRSOrwXjGtdaFn?WtRQ+SDBCqFw&Hc+PC zEHdsYlIMG@lM(XAxP+rdWyxz)JtI+;7B>^S`x$s}ZDxjaR`fLBkBxxE&jz6~GGsD8 zMc%R|-bXG#z>ldPrK|V@>*BC_1w!LCf3ekZOK)uWqV}n+1vtNI&ijY4X4K8#5n$vK z+XfE{JCSkPXJIu$6c{d3_9}weKNBYk(9z*QdW&mngf2EAW|=u?+#cV^hM)49#08K|G6je^>3Z9^ z1UV7R4PsF8Mray{pc`D5W<@k?Uo8x!sM#ClLv-^GfE5bN5_ny6XFalh2c>|txU^eW zZJ2o!w8cF6 zxi%r-Xjin)LJS=~%FuAF5~vt^?{k-29*vl^>vPnS{?t_Jy1T zx*;{Q+SHI_p&Is?Q)yo;qc=)1kNFa5{K-{e z1+1H#K?3Ko5^dT-EC06>pVFgR8u+?l$tRg^5&N_LEDfGIcMh8NCz0vGn>1T(3Ed0> z;7L-+Mgq(?u$uIQb93-B7b0lK@amiG2{(>C3P7ko`$OG#!tlTB+Y*q4gaGpNB_LGB zrg-gs4H{g$9qgC1%;Z;qX5ik6{h$d3ZZ=3?-j4k3L7{J3WHS5UFf3)ic5F^j18x8N z)LwX6lHC+ZhydIUVgUT>K@EzbSAA%=s(3QENX9!=cMcV6X_nWDx zSlRW|S)=&#s7i#!{Dhsgkj9sS)&^k=KWoZM(AE2N>OC7*(9QAQ;`bC8`aAZ1A(98C zXi@81McPf32Vp@|^0cyQ2xI-SS5c1}8_c0T&nPm1af83dFB-x9%!Sv5Bx_nW7@_MZ zs3x+O4#7I=E+Ea5EV-6%TDhhMkWL4~_0q*%k8->zZW$F9Q50^NBD6}j@>>gDM~yCE z;`ipqKW>^lURueOc+}k($t)yy^I_OG;xqw0^hZHY##=jk-<2MdsO^Mce^${r3|_?r zyMIJ=lqi~;c+@>zD^X3Dx?iF}MibIC{4>>FJK<2;w)ZJvNUI)_DqT*&|Av!GotrS% z1~h?T$u0&~FMT(0k&iWCWHJRd_azk3WP;$9Qv{P*Gr9m}80GEFx)h&#h*CDUWZ$08 z*97wT$ZP)&Vf3ClOAsuB>P1O>@73y1pNF={G*lwmjd1b({lx+2 z5t@EG-L43HH)lSOi!`QM)}(rpWY;YAm)C?32MTYc;KC*M&K$#GbRyULS31HUk8WPJKmSGby~clj4(BXS~I(gLp< z6vq%E&C37=WZ1O-yy`JRVvE=r`w9K$j1Bl4)YgNL>zBW?h*L%jz5YJj4nZ`0mK{X# zQi>mm*CMnm|FA8T6<1Qm7#i&Las=Jc8w4~??59Ts=a-qMAMN)1WCknPBF~D1W+-G( zsgu{oydQtr6zs&lv-5)wPNs8U5tjC9yM$HTj_r>zg@GTMj%~&vR;;B|@l) zl~79Fk0TB^e!q%ts4VU2nPdy!kBi-KT%g{F+a{&Tc)|&ziqW-!ir7S2!f$#=!~7Oi zuk{DEH_b7?TXqU~sHcc}noO^hsUY+q3rqo%!{*9Fax1msjl)xCzS-Z*kjQPb9W2A$ z$t)HO;%iw=ad7shl~A)O<(FI8)Nz2uQKm|D3R8(oRr=-p#mu|BlKkc2!o-{U(j8Ob z^B}rGJe`6;%m(=3f~YI5hput}q(J!85xUGZUpUy9)(N97 zZSg_SiNpPJuly1JthvfA-qkFUVV-ixk-9uxY$a9qxkY0OYw-WW(ZKreq>?}AnI020 z63+MeDh-c@|C^l?Y*dc4?zv}gGx~!>SUJgCs+O6R(8whty#>Xj=yX>{1D3pr$tK=n z-uy{drTtb8c7jFcLAAFcK>1O+Gs4jk2xy?JP1;5e?4D*Y zMDS^pM60P8xkT>1N0V`~p&k~dC1s5lbSSf!D9wgXv=R~Cp0M?TU!|ler|7OC`#H{3q_v z2W^zL;N-7qmv0ftg5|ELm6zoD=;(aq2*xXHN_{?KHdHx=jwaz; z_QJc~>?hI-9r}%`Fr47ipQQY?bGn1M6y5e)MiC|z`)A^I%_VO(3fL0Ef(!9NNRupg z{pJ;?mNnzZQzgqxG~`buhjV?gqywJA@8JNnmw-fmmb@dX&Eo_mSN0xvf_~~NrQKia z8$M+APStWunckyQNLb7@By;iEKKa+Db2cG1!wT+4$T}tLL%}X0-T&^k%|KI%RbJn5 zrjaGjMMpUAy7~UG2PBsVI^-@n4K8?>RbDgdjxfGRdoyW=c{i4r^MX;Z9YsmTPLe73 zBJdJbfFSO&vrh!yQXnM{WKV{Stju!jNU6(sDBjF<6|08_*U9RKPTC| zD{~U{$c!U~K*e_u*t1-xmakv~)o$%%L;Y9Ib{E`F982@Anw=V@vwTDs2>Ze)sYQMA za#(kNzKZYl3<3OEHh27Zc<$ytO41ennZ})VVRi>zv>q37pwE7(DXhs;DdI|lQbi0r zjYN!hb#IC+L2n0O2l6GDqmR7W!|L@z z-;7{A4Dm$R<{Q!$WJLNhf|4Tm8%U8*CHn=&5bBrrf6a(uz%&rZjOZsZac(whj|iaOn0lkeXtehom+~5@yN#b~6WEB=Wqn#mt5^OSN2w+pt$%6T zr^(fHI)M%Bl5l{ORZ}&|RXZA;)tigplN(vQkNaRD?aHSx0sGC)_kp&2RV?MX-$&+H)&o0gb-gU8Jtu`TO3EY~2GtM`y^5y)5~qv=5R0OF z)uXH3V`^Kqg0Usp7HCe^8Ow&sNM-AYROS=oGUb$>jj$LK&BppA(BGjRCyW0;ByCs_(Dkf3N zuQ^{|YYhmMY793s%dmHD;nJgA9o7`+)YFnh_2JfGd#@p!raM6`$^78wpT*6Hwk~CO zim_HH!D&@f;Kft95qk(<6H#BNS(!?f6|n@w5y%JHLICDMvlDLok|Ee+J z)y2#oL=o%Y-rNlbxW71M*!{)ru zVC%b>e=dq?G2#w9o>N-z!(oZPoofnlJXkgy41IOK_dQ&9L+Q`Iu&oM5xZ0xBUnZYL^M9Gb=y>3wQ>u#FZ3GA75hGW_oo_qLjQG9WmARw{f;{Praf#FHL4=i z!14mRzIf@ZF~Cj2DQrKQjx^<*vIJBLPFN&Zsim%-N8 zi}%#|o68eoxKy?4i>3-+Gzqwye=ymA|A)2#>L1{mnV)?8D>VhydlkVE4?V0?RY={t zK+7+3f+*H4I%z_q`=Vw(DbfYQli)E5(lvBfS-lRID4UD+0z8Vsp5qf2f+wx0TI-fX zdJ%p`xv-A#Tcd`(i1}6M^{PTVDil)z?IoEvsqx_n21N_9lKxHm5H7soOB5(u8}3m7D(l!2tlFV!dxi|TqTkA6*GUbi>I^! z8^^_aUidF4RFaq^Cp?1qrE`@zP9mhZmrihz!#p|yB5F&=zPS}-4z!@M!T*D<#oE-$ z+ItFe?70cF0{E0v=K7}?xE3`7hV}i;){C8maY=F|?PCp^9(kF+Xaza2kQ0Pzs>6{h zL>G5HgAD7=YIVchuqlfA7Iy;1VUtpqN%njy*s+#MFEpQOk~xv&e)JX|BklCA)ls$D z?3?OmVP5M_mmG}Q0>j&KKpzMCjELs$=^FTEf*Ot2{`+c~+t=k`a$WG*`1tqAu^vhL(h3gf(EG1@O^TGrH?&T6_CSfn=rNJIniqZ&8rT#-ko4W@uMcs}h0~Nsz#a*oHtZybLjoq* zjIK?L(Y>~jT5u6pur?buamPQ|cisMKLVB@FG@;xWwP6lN~6!zjB^JN;u&$pJn?Xk4e zYld@9E>mHo1pCEA?o}?}K{7uDlDS)|a*_q>{zoCqq}{7-mnv^2m^<7x{sjFP#u+7y zzovjn{t4p8G*mTOa$v?ZLl;E|6oEp<(!O6U#6EX{fp){dR^m>D+ux=sbrPq6DT|WO z7Oh7W`w^MDcoPx*HdKmM* z=G2Uo8aWOD=SM|+`%Hh5w+-oyG2S*b;1y4^)8t!TVbfVZSh8`-{iS=&J$WvgZ{`=8 zMay?9{LL^j(|4eez0g*= zt>$lTIxJ&>>fgVvfYBfEI?Zf(z%q^rG9zc$NNn={tZVH5tk!@m%Uje2QwazrhV z1Md1SXS$*<8~CSo+Bs>hR5?kx(|&wMfIW4!3&<|^2EP0W0B2sH0Cz=OzNp)enCzF- zCSux{ty>pSFR5dvR6e{1G=Q(bMyIEigFQO7a=wk$FHA}$rph^D76&i}7f(@fkCPDwE!n|H>t(*-#$6IgHWe#pP=_Hb1+IX{vW{)6>AV~?s$Z%Lzc@>0% zN222Jx9`4EQ{3lbPMW(KLg%E@dL8aQM+n(8Dr^lW+++}HyC&ur>646BIP=Y-5Y0sR z{H+NBYTaqFqj$d?uLVxoMS~=;X4>2oYHt=@E1QD?{%#QkGAci>(`ugB>gl5zL*Tvhmg#76}9EJh0 zwT}&P&PpBs>ojiBLxrWLlOIRlG>%;QYWxTA|xm}^XQR_wCr z$;5u+od4AHBsP1agL(r#=~c4Om$GSE^<9WTnY+PS5sG}3+Gs#GZu~fNmkgVBjs8G7 z!mIPB{%gh&JWyDw&J3ZyEj~EZd3kKrYneRWw*Ec#Z1jJJtEH^932iSxb-p%N(Q#?R z;iV3K(IWLq=|7DU-TmNk#aZ-=S2gCw&xnUZ%rEZlMR_ENPjrca-j14e^nva2KUGtT z2SG$?hH%Sb7|;D%dg;;7U2W8YwS#M}dhW|0E&kSSHXZlEdW##w=eHh-iv#T78ZJ#N zc?*qMZ8g0we>x5hBAY$_deYk%ee6$j9F9`AZg#Vw0em0A*YA$Y;RIY7+JZ*^yL*(h zr$zJ;;Mk(Bu!zb8E#XFaKK!R46RGPq138c=wU$N4@imVrso1J#XC@(PEI|QS5u~5R zl4m(RyhJzW%iEyj`(N`#D<*su(tCw~G4=)4#hRdgj-8!VsA*XHhG19@V|Q-a5SB`1 zOr9DPQta!YajcR&4?up$vFV3`h`ZDHwhG>pS~errOyATAUYnyhma{8spb3fCLfcTrp^8;z&D;k-GPZi4vhR zq+hg?0pjxmTQz^j-PUi7ui4&`Hs>rY@Vo)v?Beaf^Rxcm$9#y8EHEUs=(WWpIGd7_ z^B1=+AAq2U+?ED)Si3wUmb09N%<_lTt1&dkxLnJUo6p=$whFcZJ3)~l5!#@%+cida zaFRD6?qhznU82ZgAPKeBNfGmRLRfPY$+rp(9$si5&W7Lfu~t2Qsi%!sb4i)4`o+I{dXI}O(49Czz)$}2Rpqp~ENku^y#PW&L8pIH8 zmZ|0XjVJjue9pnGzRm^&S4w#+j~C%331j(gArpy#lmQAab=*n@6ec`NEZ20j;JV&ix_iX^iZL4m@p;5!eT2- zs>*ZHU&+2Q-{8i*Z3+ShJ&rr7{id#Hu}Wft`<_ya)}g$%*fT!rb({PcaTnTLF*3e~ zqPS!%T+(^FY(Hp?@$`?e5xKht#cU?jei@n!9e_8x`a#OgAWR0Mpy^F@eze~&V7%2Er>HQ~BP^gAmw7Hw_)B@- zL6z1Kx;fgX^uH{;nP{UW&j!hyg-<%}eLC~x>7lRno*&_o*r19? z!)KOZ$X||MlvgYxrWFjgY7s*%NLC7WRPdiiy*( z{O~~fWVcvfz`{S=&z0>RtrO{6esE`pw3f-tsyEvL7z`=+rohXqo$Prx*5`VF ztr0_Q$ZVk#{(nmlP(WIfhQHNK6~@KzWhMT133iPjtS)I^19BJEysko{EA;ojCS$)1 zH6Xh^#Bmi|__zB$#H^*|Bsu55(d?_)P%bqQ!cznV(Zkis*eWB$@7_ZNgKC=7%h@F2 z%5UcyAD^5iVP^X9w6)Z}v2urQcl^IJ8BkM`Bd)!RWIR*5LRP{#`0SHYHJF}K=EYH< z4qC>E0J?=DMK-N5ysDj0%YIwpcGM!s(R-wkFGYC4c2sElHQ?1ZFu(R3=d+M8U-ID{ z=+xFNG*81%Zvzf}65ffe`!h7|OdBd%T;eS6R0yMV2on4aM!Spg7}Q7{2Nr3_i~Ny^ zsN`e>Mq9Th8P>o?S*9++{3VawDf_@9jaR1EjN-kR#aUt*`^FhSeySDy?Pa_@g)1NQ z#6~D(LS_7MOaK$G$c@^lFiA7Eae_`f4~8^1*$w>=@~B zf8-2_8^)mLq0fm_xjlI4t$$d(REj#XymwpG--S7=zcGWC^$me0KocQTO>>&5zK4dS z8#>F~E~R)o1B__Jmygs@o%mO%=iW2xM$@WFrZXCpxTQprr`YAEL3&@gwT?vVNUUa& zwdXQ~{c;-VV=H`JN{)D7n~c7zimC)U_?v~u@+#O4Dz<{ol&t9l(? zd!Htgdx>c4P&SyCZ1eKNHruMq!2E6cSB8DsA{xGLy-8N49 zKR-(cbX0+uf8<5G=M59_I?U_xK?4G)io^Of!2O4;OiZCTq#64bon(`m&|*@;*gd?w z<&8nIe8Zc`gq7D$dcRcMG({k8*-L7q-V(T3HU&F$ThX*g9l~OwNp+e@5rRO4$^>5s zg1%PDsdTfF0U1)#F)}*Dj@RUD>Dva(c1|-g1%Ymp&onLufQjG$P*S$R3L5^t*5%*X zJ+c{AN2o%@P2|Uh1mN4PTM>3RK`7J}Zk9}HrwhcoAch>W6-MtYrwz|ac`rEd z!;##kFv$kN9MowJ^hAMQSxO9iM~Yoi=FPa)c-y2CPxBP)Ya-KpRb=`6tR?_lNRGkL zhH{yjaoDvTOrx>@M089ucML8uBJ8Cb3Gfk*$aDZ4as}j=CUa~IPlq)yAN*W6Z=$Po zukmtE7Bz&?MA*G1lTGI&?gy#`ctck5%$0&Y@0{+Bgvx>?W(S3+kau=YkaWh|rwPGW zl7^Ne;JlhPZ&K$QV2b{TBtYqpFFYu$_V_(F!PpVS+q zl%)QhfI~B#5bSzl=RSgfjD37JuWQ-2q4c~$2a)`8!v)pLzxK2mYw9%&_c2=$ylaKj zejRq0HN@P)7cG5))5WCpN-Q(~V=5b;TW~(>0IDb7W2&rkxM1N%i9?U$^s&J#U%cv15 zR|2sOjB6L2C1tPQ*j;iD*fzFarJ)(v6ueZgm+9oJM_886J*}tO^!?w91f88A+Otu? z=}>%!3ccvZT0^@f1?)`2uj$>dJH#UI#?#-iz+NsxL&MJ3B(^?3kxPjm+KK3fnMx5& z-4$z&MhWjd4#SJ7h40X=*y`p`obbuFxf+{@Zi>3swAOTgDQ>FQ9wS!tup#gC>50o2 z(ocC4M$on0;+G8*7oGnRjtWNsaKz9@%1>Yo4aNcmr%W!$T6RLA3qBqlZk9YwyNcjH zo~kcA;^30#G!>SM64o`sDC3+K2)ZQz0UNeL>>+yRuhZC8^B@jSWK&GwL!gF~I9;&K zSpeK?oaDTU%hjc3v;>6DU9Y1@e4~6LI5{04`U)dtfcm>Q@@qwyFv3hEm%ZDEPe8Q48J_-}R+02{)tgFRM~ zF0e0IlqaF%guq!GXvC`_@W)LM&f}3qlH0)CkHPMOoENC@AjG{~CZy6%ugl)ZnI4B= zVzMSqk>EwxafX=+P6Kd+bc;qy)fi_%J}8Nyld7Zz!e2X#Rew;SGH_p79`|Y_ElG-ZVx}3UJbi$H#UWGmIi0Z9l^wXx zu4!Dhd?AcV&F>Q%N>cPs(Wd>QFr7h)LD&ALXek=l1)t!p zs%fl@V4EKa@ip^O3*n+rtg(h$ZgibfoGcS+mE}@yfgOEq+W{QBG}aP79;b4?B8oyh zn#*YZ)Xv10g?ee58_RIt9o;=33qI<3edg|eBJDE+3~_|rNhQ$k*vz6+eq$g|2C8kF zmXLjo2->o63`G61*J~{>gffl3P`Tbq8(nje?MjtE|1lP5E zyHCChlQ$$n=>np=8Y;zAc zKYt<>lANGjM4PdJ7*v&`U)ZWZzspIKz%(aL1OcaA5k*@_a{QDg!ZF$hpCE%Es2At4 zs`D-OS`;hS$HO9{kqX<)qMah06<9#}&I(m9e_o$-%#*SY^gA3oxdHv@(@Z$qai@i? zfvnf~v9iT#8I9=)==pfTedf84&_p@MU%ISl1A$xO1gzO1cp={k(-W=RJaAmXxv+O*j>Z{9UYgDkPH>Q;Ay)&_u zo=fD3f6)nb*?ExE+eBYI28lVidsd{7@wOXpF#}$sBlRaVTm69N_H^Xm3$D{pw@V!B zlP(mo@7ce&fd#7PhsV@g7^#d}NDvE*kOtW7=5ugu*2X^#x;gjiBAZN0VQ(!t` z!IC5}spCdg$dLVFAdjwPpNZwJ&Q5loR~0-XdO=MJb?3jw9ED$Yh>F|Llx+2P=Vy!G zXY3}ZLMyqe0(XjYlR~VhUUr(IgQo4{s-pKW-0%-?D&B5D%>fbVeC7lJ1 zFzVJtIj-Gx_ubay0VDMJuCGB!A=j@oOao>NTKNxDm0T>Vj zRzb%`{?(h4_b%}PH11KeOr@++3;28T-E9aYKE46Z7|L1Pq8=)8+@+V!i@|D05-(Sp zHbm)rN52vHSBqcFG==F1FVI^>1U$oiBLL1SVej_)(DOJDV&Hi0m9=`Z3G(+mjZv^) zfq&mja?iN}tA&2#uK1 zA$>=hyZcQ%$CG4V@yDALS%SS+A5g%dZ(bNxDtkpmarGOASo2u~f960QtY{A>D^;PBqfZ>&L7=-#h`ud1U# zxo&c7EBLKmASN*EQw?ZK_`o8Nwl~nBepb3beC=+^ggBO=>8w6y`L$c;g);Sk0vNq` z$>UK{V6=$xS+_l>5uZ^wncN(9CjYd^dc|{BpxC)_TWAFJYKVynZNjS`qJ*I#@+h*P ziL#qehD4=>Kiu%&cz$F6na2PtcoJ!VGf=>j)_RZwPtAK$%TYtZ7QzW}h-=lT6NIh< z4uhKcwHsrjX}3%GCy7K`%x(mksNdszXIT$QLH)$vk7Q4bdE_iZM?j6ho0v9Z&dsA> zJK8+=`AQLIChJ!i*M9*Fd4D~NxJXOu^M^bNVfKOCve}y0P()Z(3Yz*I7G@zqStUWo zGvhibUNT|Snen2!*n*}tO|7@ZcL@%D-5FoBCRQAxlF?-eD-?-76PHXdGGc=40~I7i zX^N*Acg;oz4pp7emq1!~$J&3%I_cni<6(kZpNrjJoAKZeO}7F^Gi8m<SYHEdqAb` zk-jt^fMs)RS?xoQlm8mqz=xKj_I6|o{$8L4Gv0;#v?`7Ia(f$b8SMIA5p7g<{zEgs z3Mo5Jgwd6Ba(pJZzNmU7yKYBratu z>3yZ*4tu^EaKcjh!ZirnU5eRHqxU@@KpjI{Bw$v3EkJX?aTh$y$#N7_%^XjQT(hcP zp)L3^+#?si_Fe~ljYM~tz(3`R#haI}kkpEoV#?hI$oCd3z zG@`G#kOF^ND)@$RO%UUv);1>b+k|!Cq<%I%8@UyR^eW2xTRRanzgeZ+MX9M}^?x%HyP6 zgYZm3sgKfOJf=KdGg9j!Q$?&uj^WTPG8xFo>WsyeIJkQ6eJWNw4?JFh_gD{_jWf$= z^UhSSbeiKZ0qQ7|*AX9F%GP2#_*`XxE+K{*7-n*5j#UTCD@=RcD0se`p3DZ+U* z8RhfS7TwJD7=GmA5ux}|Kn$4qBW5k=>E%z_eU`e{`+;84p@Af`!T2MVLawfHvorAT zP{nx^2WFF08n^cN>hgl?RQV56*{=f?xPRLpr`5s@tsVCM53C1EvV=bguKBw$8}yn( zyiGNHL5)G^N;$sXfa8(Y&;?BX$IzeQatb|=3eOulYwBhXp4My=x9jJ_!^}E#B=7t@SSZ)lV= zF3Q^gZNS~Kb4_*N{U*4&u3sMKi6eV&UA*dZ5WWC^)L-j01$V(iE7dU}jLjWfHS{@Z z$1}6fwh0$bg*PaHxd^oyC9e1;GR&5MoB{ zxWX?*cn$yuSDXX4B?LI}P1~D8ZH$K1(wlofTA7mE!nPN=LCyRdM8(;MXCGp38?PO2Fz0AJfdN@=32WPSblB*ybrG*GpsASeDTc+3W7D4P&=7P+0*RRS zJyo=+<6M%!Xr=RLUwv3`g_cNs^eR*usMBykmv496tBI3|MPpxTcy_o9f?x7Rxxmww zpJOlR&YVIrE3^TE_{P0@vl$6Y;|ZVuBvrY!S`6+UJPsehPX81FoWFe&W5FtD^KYkD zE5v{E6kuF|{}7|g569%WKMSFZ{Rh1GRq(E*l$74j`TX7S=h=#n6t#A=G2(OAuYVs4 z2<;ust1f{QzYd3`P62fKI~vIqnL27qE;g#~32$1V`jW1O>LuOwpvLf^({#<(Upylj ze1lItY|w&8>otd3V7ylWCpCE%YvMycsU+QwJ?EP5nzlK&k*{0GB&}?1$DedDd@N=o zFTMvWO&eQCZc!AS?cOA6;#T2>#-`C?s;T{YTk0r5qvSffL{aQXi4-AOlAB{10q~7b zHz<{|)t;;)Qkc5n!p_f+w$|UkLV$xKrimhvB%cF@jFo00sjwpUf<`*cuP@jkP6%8R z%ui$Um$WOEtF^q_Aa~%<5DixDtywy6ASdGNHzi9)F-v2j&_RG>y+7E6voek4@w)>y zuW-AW`xg!CWTAsqMthd{{Hl*`F!Y}bET{K5R^0PCfS@6`BZ(R&f>PJJQVDkjobZQ# zCHY4Dh3MWlP>k{s6Zw)Dq^id=9gSteF|+zK9=}*&2(pGgA4>10V;7AR5WlGbvuA`; zTH)=ifx`bVaYF-^6Za-6yd!<%k(l?kuDE)z(3<}l5@lQBzJgs?q4r?G2E&I?Gi*+l zDQ(X-hzbeftatOS&N%5nhnCQ|*@{A)EsuB#;NbXrk?YI30Cz-jL@BejsssT90|7;Abwf5WWMP zx-^xpZuMpe?gWsMSbKyctoP>&ft{ZWfV7I7-gF2!eZ+cMF#W7LjXBVBh8oe6!1IzO z+@M?#Sd%c4yHm#U5eS9r@C~o_6$~Xu+y{&YU&NX)hbY;48@g|A)8L$i><4te25h9W zB%Z8+t0cW4Q6xz>4ITY2tU!cZ0ta}Pa~&_S6C+W+&tFef`8}b^VPT$*9gH(Zab4b; z=BCR_`=>vzSt%j+7_*<}0YU0N%Qk=MnbcIp^aILI<3!*daHGoGQTCh?LQ@dSL|EYe zrG{W&=51WXamqumJEjW{rZ`Ib>KpVLgdTgA9J(^)gMesLc8@S_m!wO%+;{yEI?stEG-gm;;c(9a#$XQ6Y*H4SL1B?wp}(objj zYSjAF#+8!L>kt?sY)XS;u-^K(h;g1}%y18DwnFbw&f{PMzM^?X=ger#^>z!^AreYU z5DZE_XpEWt%@=bI#>9}9h7w@vXIE9?$M3?hBla#P(1d$Nrh6&ixukcxtrtI9uS5 zh%&GWK_kt-%i$kWhD?3Px;=eods28IR^tMT{aLzk>cW8@{6|5EI|C-2#a5Fp6)0R9 z-9!^&c24=D{Hs-2r%rqHu#2nqQ{k6uv$Q+M}XGE}oIb!f-&R>Ok zJ0Do~gVBt);B&Zt%XyMB1W;QXp|@kM{Xoj5Xs4!j)Ct&GYasfjtxw%B&xG|_b~LIq z`tI7;tkwl;V~%w01={`QZ~LZXbbJP>G^4FOfm>Z-W^Ur<=jiQE-$! zh_R)-b$xl#tQ&bcx4j5j9X1H>E|$2upOOQ$xlrwg!V`A0PB$^Vo~xl<64l}Z%-_5N z$Z$g10fjh1Hqqk9F;IsPreR=nCYuF61ifr$vrQ{i_saWJBCqI8?;Ofm=*-#a2(#Z3 zS)0rblr&;fu|@RLtAg=HbLaT-{NQC7x9+XlL^d9pbxxd5oX|Qf0gi0&~C5| zC!Rc9?!;7Rf3?p)gv|}HA?%p30@Q@Z;S!#THlVU#F?HEr>sZXN^vh6Il#Pq?PDT=z z%79N!zja2T_rnPS!ygM5X_(_{;wZGCOXJ z8Ay}sly-c}1#!ye)({zr@}%E6tpiaxUZiGyk3wiN!E)?5>jLNZ2{819rIBB*15vGXF3=Vr?fj)cuqD z2NA;_N3%rMi1@tMxl?9_#~sj!JVqLbGcbQ%cD;v%YP{7s{CXl~*;Nslbt~LJ_`rJE z0u-;IGwEnYy^6&AO9jAGYX%{2s>DWl{H%DQT8ciSWzqbXGxF}O!H#%p_#|X%ONIwZ zHPfZ+2ZT$-XAUCUKwji`xlMwlQX>DXG`mDy6|@_!b3hz2cBQsBxXO^V(k4Pz`o)^L z?BO|rcDM$s1u4wmZUKf5lqukn6?N(BkjqyQ%pQ1+*E@8l+j6h1J}aTm_=^FyL&kG4 zG>*n%&^enbQ;EUb$##Tj*n&Ix91fE4{!x}%KUNmT+#fIhVrYkWJYrxpZQDZx;YT%S zahZ1G_G81(b{fyKb$VlO4=vT>Kfm>ayncqd?|WnL)IH~N#^Kmn@io5kiALLMeKD3H zSK;JCq?#+$;c^m@2VA~I@FIghYl(IJe5HtPN8u5RA`Xfw63^6G=CsH zUrshkx;(%Yup`!wYTPVxLpNg#0vWK$YSSMkFXvhrqX#Xsgs>buFZ^Gml%^_!oLB~Q zknh|KwMNwxzpjlA_Lt9SF)yX~4 zFL$@}J(3do%=TEe9UFf_OJ)U5>l2*TKdq&{MRXHz=a+;xa#txj&s$5GIumvb+Dh+h zUtMS3i2$IZ4vJ2AE*q|i+T|fL;L7x=9GKd&R(gGgWe&8{WX$Zsvqe`O*QrsFS6dtaO5XGRAx}|rYP8MZZ2?RQLagaZG^T%_zTM7?QBp^ z3Bb57VwLN#`=xt)IUTJlGjWyjCoTtKUMn)20+qLyJ3PLuS03qXnZJ82pr>xhOV}?Wa3xVS1*5qA4 zOVbSr&24Hn`Wu;E4s~X_0`6-mHCQGmf=OOJqR)@h_L<>o z1P2Zw@Ey_=tqSC&a+SVBN(M;&R?2$~dxFBN1OwJtB+nrhP|mU2(MNrAE1!)fufo&T zC$S!tMO>{ZuFLcA$jr}7HI)fE)MTj$S_2ao*O>`C{DXK)_yEVF%5nbLq;Z6PH*Wzw zu>w8eARXQt3A5G<AtZ8(~L8pK0vmielQ z{*>C}b`ad<4eqUN2GnqUeD%fWM&FQxKrAF|!2N?a6_@&%RWZ1{J*pZV_|BhUUpr+F zz5LpI5w?-T1Vqc5Z7<1MmkfN@de>40Q<`5T30P*Kx#>?w#%f%8TuZN+VBWY9WOx5u zWhpatE))Ug2NId&b1OK#r|PA+9t4_S=mFLfA6F~Z(%}wFrA8>>W^t;bZ$rSGsR4EV zsQ7U*T72JPu;@)P6qc$PeawqpDGkLYbX--w)Zl)o>V*m@;9~LWo|}N+K_YzX>R>?H z>OK8oFPEokLLjD4oht+GEFHT6`Vfu$y7?`b{HyOjuCsm7joUqW!Q!Xi2~X7Ie8X}5}k zzRU9hZpfCR>o-G!i0ONZ^O-rii(5E3!Tuo1-T zCFPt%ck_$1?w@g8##>Vk>Jc(r z*SsZZ5u(p5)_O>m8t}pX3sY~_ZiY;wS^cnI%JaO)6J;a#Bm+23-o?5@KRJh8#gfM$ zF>BRucYN@h0HK}9X+<3<+p~Kj`9#2CX~mC}e=uX-?a5Ei79O$XN)Zq|pX-U&P?AVr z%{IqsyUaWn6)$9F#2<8b$;wGXT-nL_mEcY&Ujh*#xsB2l=)R-m(8O>oYUPpP3`tgi zW7gbH>QDI!VZ3)q9eE>h9Uz|pt3*e#XGU^d2BKZ#E=9i_*A7e=j1$3VVq01s`zhw1 zsR>p*<|4NpU>Wr<*+}DQCf-42tQu(S!Y{_dmbiDrU*Nlvr@Gytu(%cGpJ8;nv5Y|E z>%@|;%)qS?LP2S%ljOyD4;O#M?H|{HsKsVnHtiGRPYTJ28G}a3{FZ` z28dj^Uf6EllZlHl-0zBbPU9$%^TgUnyLK<0Ez{&Uq+d0mB3;HGJIV6?X1*Qdl%3Uv z$jIE10Fi@1I1QHWE10yYWcMI}0Nu{)OZ& zv@J(IwgH5640I1XUA`9d z7(0dpHXKk0Vy$iD=*_|%Hr5K4G~-5|8QRBMusRZWPn15TDGXFbIy^yQ;v$DHvDo&+ zh_c+%H}jpKY}2Yk)RArYOnqKT0ZvJ1C~u8!{<9o3v~+%pBPR6EfG|-*jgtTu04i zOO}H-Y6_TTlzTF0q0y_jXP-+8e%T(i6`C}4=QW?C;J5ri@P6IK9EoBqo}<2;C`;ij z1$$dc-Zche&aAZBn+Y$Kdr~kM2HimB2<_8;M4SW#9N!S76(O!_US+8Q5Q$TwP?L#Z zT`Hd>m)E1!Gkq6EqJZF(z_OJ_DyR9Kq({5&zb=8HJ1K+@Vfv5h2|!r=vFjrnxAOHow zv_kxRr(3yHId^m{d~}2axQ8*YE~7`kl7J-%J1qdqq^1*A!G6<9yi*7m<%+Mj=dH03 z8W*vmn5dV2Hl!qPJ4A`aPQsVDIB-;Y$kxDyOXN{?_w)^LD$mIgJ35vTuGh)VEKPr{ zI>OeyM(a6s8Xvrr`0KYDU_#(=C&Pb$vp?1bm^-qlmC|0K6RaC6va<0L&*oNMPhI8%xU{m&oVVtYH`Bb4XNGlvh<`;Mv=#$MLCzXx`nOj!!O9b8IMrj z>-v70D|pp-7zT*HilXl$^@5&aJ-4V5z^iM1&dL9@dC1p$ASN6GE*?Lsc$ZcB`)GN3stfsSehd!nnsDXp64%~*_+ zcCp7oMaZEa34Y7wPNB1(iR1pMV}u){(p}liy0Iq%M$=@a2Gqf3VfOgi)tEe3)JkLb z394^md7FdOyQiF3ORh3UMupyui$Puz3$tB}a6+b}Xzthsi$Wo1KHOo|;S%|vjB9l? zrJa87Fiwl(98ulKtNtCQ$qduV-7+AoBnDeO>^1&!h|x6h=%7Zb^IkG0Yu*ebsSauu zhzZFhQ4*8Ja~;~UCbS(aA`VxSC3Z?h>OyaX=r zJW7_Bj4c+acw=Qm0|K5XV)38ccl{}OD{l#@0J&oYUyoGVO4*LVrEq7;r1L%nl#Q7Q1l0LpzVn-e%=yfAO-qd`CCvm9z?INGJpHmD=>Ikr8J*>e6}9I1KU8sF6R$}0;FKyjzg16{t8eb% zKeTzP^6OS@`gX*xfGr+AUcTL%1RLsDH|0!eq?n%F-R%etU5X=NB~&GVHnUsm_otTT z^(mKbxW=9!Hmtaf@?9%5lx==yc6lz=G-M?P? zlO&nyFj*VfMh!s_ci+KS27Udm$^=-DFD_pI#@D^R6g8Yq`&|d#8LqD{2LQ+Wk-T*j zF43;;#cWN~RHI*}kwpw@${YI04+r=!bW*6TLZbbPb zFP(pA)xu_1gKQdSZVN!gboXc6(qf!Lr~aSdG!l7v#)`?2s;Vlv4s6+9UQp{KAii3- zv^Kx^F#^phn{ArQYJ|}y>st9xtL&ct+BRXpqD7iT5_rmDn|otgKUK|jMxhQ; z_7@!}#4&0;Cxe?YrGh7BesW``0-m0Qz*_^70J=?bu-GkyjB*3wAMUgzjZafw9n#03 z44j!2;_lS4?_J0Qnf-Tkbpl9jL(OmVr3$I$@ubK;)!dXd{p8y~fQ{A4qOWHFdng>?S0 zGEg+nl|3_h{NJwbC9@i}3$OcsA&*BjU?a#BAjN9*{_$ipLLyppK*Sx6jPALEYR!LH z6wEK46H?GrO$qniLZAmuF=)K%ifdI+f(&?@-TK5P9e*%ZDdoFFM>h>4yAR# zZORAQ6AN6!7W4oyO4JjufAcNKhBqb?p*0)jej#d}E+kF1aAIYBrT)6L8l)S=eO#~F z2-wFPQR&jfluyaL46*6g;{3r{u_Gn=f`z)7$MR&ZA6`>vaFUl%c(IYz>N5n2-;zS~ zK87rD`1dS(>n!4$3wpjYS(Y=GLQfFQ;?ykHSJL_bxL284dy;i7q@V5kbq{UDECN2G zU=wKrXU`?WiiHNyK7-XD&b}p5!T}aqSwzMHf;e4_fJe|&K*l!|i}S=w_?l!U$YgW7 zzgA^NX?w3co?U_?gX;&qaX$+QZD+@c}BD|7DIZk>o@I_&u?LB2`w`dj>Bx z;>9aG8g7z%7a0enhiPr5#WteF%fAJEOJyZS*x$!&ChnW>T`<@@zQ}#!R@>=_rcQTW zF`%Q8(O^sS{{ybn4_o)~2-c#53T1}L8kfT?a1atnHFv4~ao>uXR5e`Wt)BA1t6l*9 zo8gC;t`qtiD|NGr>c$}9%3HlWy|bZBmlu4g)k32+-k`CQNrX9knk)VE4yZIasrdpq zx83ZZ^DCgpo!XsJ$o4yZr50$aouTrrtWw5jbf%;N!4 z8J!a&Md~OCFEJ?y1(_`Y#&-QX&^_Y?MDPC4VI*KgTM|cf8k>XcF>InfnQhnGC*P>T z)8qZA;0cO2E{Q&ZH@gIOx2@~M8huj4RJB<6!trU&LM^Ee%UL?G0q@CoGfq$VtGBrO z9}avAq2MAPK?Gt&$8*aRq<1?VUp$@1giDte$*cIIs9VITyw%z*<^b~kQ1?TDt{JsH z2@DzQbFyaX#2Fo-gA;mAwvR#6eoBq(MMM4DnGW_r2GoqdSzR3XPzz?7 zF4$64r*on3WcZJ2FC=Fz{bQJndULgE*D%&MwXA$sUbfQ2de*9xbH~iWs94Q!9`eIyg4;!G@Yd3J0XgOZN1}@X+>RS;8 zWsWdSW~&rBP>VVyTXJa2fBUjgylG)%CVO6G0Z||ePp+1ug&XUSye`bfM`$W2)N9`? zt^RGOE(jAH09&Op0HK=vlgj>(pynB?MJiE*l3ZZVfSc#MVb8u(1pLy- zGLW)eA$JR|*EuST6fK=TeG_%oEK5NW&yU2Dru>0AK z%ADX>T4kCWi=>~)>`Zd(c@c-ytY*@qbH8Sj7Eiyc0V)E0tS=01ZA}$|`6l1{fO`XnVMYWl;c}4b%kCTu zsC*78zNc>gI`Akxznx!@_sO|AY8(0RH5#;TN`D})*BkuA$QcLeAUloyc@Q`P7-&s$ zT3_c=Vb=3dHsUSK`Ez7`8vtBgu9E6wa+8kQw=m&J*pWs%z1q2d!fa`j&6WMaA64p| zqY!pXk&sUu8pQ#@2~aAayPXx|7?RXN9t{{jkIvDq+`I#Vm#G2`D2UwenBuT}s_g9i zi80dD_?TU%2Zd|!^cOL$^v~%@Csc?CQPY?u(6mDr_65~k0a8&e6VxRM@Tggakl3bT z@qzf*7E*c$bnG?@+WGHSc&@%ZjIFRk!j=u9Qc zIR%Uuk0H!?gR$t}XovQsiiJY&sLQq>YBB%juz{tWB8wIZCDc??DyKFcz06=9Q+#}we>{j z6^DieR>@Xn{wkEZ^|;NGxkqs0UAmBt$Wf5R!b>f#b6XIGeXUY`+7E)2>|)gN=9i{* zn?@M@S1I^eiDy<{5e9qfRNf{%H-i72V*!IlL`X)w zOHg>T5!7)8n!2n|&#}lYR_>>N;Anq_!Og-jPekE^3FbV78(>8|S$2D@9fmeO_>$@U zk)+=K%?kV;n7t8k#TJZG*>Xmlhq_j44r+hvNnJJeBzie?>&6H_VD%Vx=c%_q#?a z6>|`moVF{|6bQHN20$OHuC3_BXV$=j{-GOi8U6lRpj>VKO$>P`8CRxmV_{Q9r7m*< zTzNK;RX(p}sb%nYQrtw46;g8aau#E_&r?@IkCGKi_iONrI4iu%1YqG7VNA%e$*Fi#h-Vdz@~RbaeG=z zZ3YE@Y_U7*2bM2(K=PU?{xv%Ke8AHflvumHU8KLy0H5l}Bdp+)R275u)sY?zBLD?R zJ8~{2mqv;%y%6&!_aSv+E&qaSWTTC&OH$-FBRq8nuRjDmK|T`T%ktaN#yCh7O*Vzx zpo+VYz;STG+Y;axhD0v^zEqb>OM)CJ__TGtu55Q@2*hbWpTTE~44#5BmA;iG%B2eC zwO(tEa7OO*_aNx`L7Y{f1h?QsU9}S|YT1^#{8~&Ox;9tm8>8xK+wp7(-_7m%@=bXh z{Bib}a(@1qLWE=g7Rmg?#t|L4xA#>s5}TVLl?Qa?Ux$KjbSTHpuP_A6{tmJf>=F;* zrX)h~>~;M5^N$XQ1QvYjIPMD~%nDoOo-Jhpqi2%;_1+d=<0zTa-tS1vLP)5-^GArS z`TR+|acI29Ka=s;X}z$G_!m;qR6^;xg>l8NjF&e5%_Ya}eQ+$7Wz3+#7h%zw=HBI=84dLT$OZIA+iK%0-d0i`h5@s_Sn#31MNGQ2r@#4Sq&dy; zPi-hr!lu(>LvL`IMj0zwyXxiyFN62?c>bO*2$8dWprSyxQvLU*jEsbhU?@)w>wzn4 z(iU=w0dR)8VQV>R1?E?6`sg5rT?!)U)cDTUVukapAiJZz05j1Cw$-Qc=9VtD*;g!9 z5HGjtiBHP1Ydps-xE`5+w2i(+exg%1=dX#_2n_?e#Secx?jI{b8(jw5Dig|+nej2* zU<`e6bkit~p|#~9r+h?5N7X@x9I$?4#G=)laFd_-dZD5kuuY(2pj9j589Jkjyx}yN z3Cz>_8P8Nn8d|=a%81(MJ4IAA(9>9; zMoVFsitnz4GyV0`x6X=a*lN&ZRqg{*6W-(8*MC%>(C$YSP+)PYBJ2!iN~rfX^{XpP zXod%PrIXSg{v_wR^9@DhC;;3+cg6CIi_sO#dq50ay!##Pq~CH9 zvD^+?+ziLFm7fkY9gh407wxR8u>zkD{tw^kg*z3dm-an*dwWg z6b$4VCKEX`r0pfpQTEtC7Cb7V-42z)gH0P#cy0E+Hw^9zT25qI@c$GNi+2>x)?o^N zDd6bDjiEYf(jhTudeg%4q?eV|Z$UgBayeDC+Zr}6sbyBPXm+$Mhpztj6IHT|u9tAN zqDW*G&2>>3-P|NJzm{E@eB-~sR3I}^2WL7xPXL-{1)9R9Ka0;*TC z+L$|yri1keQ1xQ(w<4~#DbtP->zt#V7Mi9-E&C%nJ1rA&wlN-m)^cAbQzg6&*1Sqp z@la)Bv=F0AidoQebcg$yHk&x<@+yk?D4$Zf=qbMKK5OLl=T8iNB%jk;XY{F%W z-Z#+Y0w5@e3>*1v@K$)T+`n6C)ePAc)_SS~97GzY*_2A5+WBc0uxg}P+%c6#w`eYA z*T%t{jf2KGG`d!Oz)M4duFRFEG~EmL0pJrdau(oE@>!WVt%P#@z3CX!=K3Oa0a`$v z16^xL_j{{%h;{e`*iyP5qCRO5@X@isIBO*a~UuystW93xsgvomg{@AH8qH6Ai<+Ot|a{eZd7>bFjuYd8Y?g$dvN=77)xTQP>Z z-)rglX<9mN3-CSB&~NHOj{$3*VVmv>CuD`Sfk#q9r&$wY-0^zw0!^>;|90lY07>TC>uC4An*an)Ea)?P%UAz5mO+smtA3 z-v=rPi{NXbr`V|5M=t3T?VwG6UqO>^OqTYx9g5XiaVDzPUX`WEOWvExd76yxK@dkw ze>Xzwj%s3=Hx{fVlJoeEXTce=J@&kw+7L{Zf1L!XC*xjZ4n~B-USt1Cy~g^rMU`{h zwR@BK<_I_Ywn?Fy{-1#uw4iJZPP$}PpuK1F5_0w0@?dMe6blaR2ce76ot4q!!ylVR zN(DYuHmSz!%n-LnT?J@l*JFjKsjK%f>5$u%S7Y{+9_oY)6r;n3YUw~92yg2MWa=9; zSsoeGr31#yoKswa>FxImVAgi?u`f5>`uz))<~0)yX!1ciKW>c*4vnI>=12LC>E02I zt$TtJBBB75;oFK|qNR*F1TT&R;+GKUDW7HAj!GVb!4dvkBc;2A4vwD!Prq`3Rld?4 zgp!2HL&E?DHTW%CgiwK*XVy8v)zV(iLq zdVI5llF9{!F{N}K$sDudi4YkS*gj%-w4j)C-@e^XNQ}PXJeSc{Bp8O9K>G6`dm(2jPcX;YS8y`Q)^5i!Gd3{?lp}0oM3R`to_kI=vm1=dztg^gaJNFDSST+%0Zv^W6@&|3@`brn*5M6Um8C7i@l1s!!2;^PO!=Xj+M*VvKf zd*zeMZ^F5&E*dH3MJ)3#z2Ox(1u{AqYW&}?tJ`s9Tb#Mg6k2peO)K0^W)nhUhTt1d z)=9MXr0)fUyEWB+;m~U55bMzKA*syO0Yj{G%@6*p83sW`IO>Me@B*0Qd>}G#o_#_JA%Qy5Jo?iJl6JTM#B4T1+A$5z~0@XnZwhN^W^3aeR+Ers%ij; zPeXJ4QJb4Wc8Nt>7x3=n?a1ezJ*WX-#a8KR74O}e5dZd`=+v+W#X&F)Phxeqbsdz} z2*jT~2zw2ZVuf1Bq8x`5)E!YRhXz6AW@?>~6*Fb??Y*Z&Fr?so$FU%8IISLI3>lGE zHhL7SWguGSY%Dhy{SMquUcGd1SB3A5{dMg99)y%0RYxEACm5EFaFP|-Dw9vqzJi{1 zDB=cW7xu;lQiBjGF=faG^NqMp?FAht>ma^%bZTSq5x_k0Ot$Y|Vr+62Gr3SuNTlCE zS2$#I^N5;HI}2_it8O{lTWUMkf?21rwrV#qi#aA^n3u4!)kVAI4`^*>g4(S$n&u#S3dMn!s&2E0^StrHu6yd}%Wt5>F^iQXlt+5-JPpj$>r zIz)u&2nA&N)i9%-8h-P^PGFnj8+&w0SBxw_f7Wwc1D)dZ%iowQ^Kh?j6I$^W^GGjg zj6-0vAm6Ody&!+5Btzw;j_&y`SA8zQngf%d zLq`D>`%+f}YqfQ*^+H#x;ux~~1$osu%Ma%`^WsZL1#shaHX&mv^a(yeRtD#Lgt_NThvj2w-9`M4B{0kW*6ID{fVAW6q z{@PNnttjfw+hn>fwyS9M@A@Q*f&!4?F|v5M56)`-r$>N=L`6V=sClZLmzOI7uy;W1 zsa|8Boki}16JP&;3+5XP4z9fDNYZhkMn`(cm?J+;=0}YVM43ZGxbaeXm~tkX>$6@9 z&7T@n=g97JIc?H85D-W}huk|*vh0>a_RrnBu09qR3yJ5LBNH%O>?X{9YzwiRVq)RU z^U7bM`yvNiNGZ-HAq(=BDJC?^_q#(xu=U@&Th#MuSGV*?PtZN%1~XJQk^(dwI!rxo<8>|$@2Xfa+&&=@b0!lhtpdGsnIH+c z-l5{3Tf>;VlHD`~;|DqQ==PhPFZ4j|Q&avc;L~9V7wLO3yvzUSg2U?XWJT7JQsHn} z!mS?M!#m1;yxH?zsDx9eN}BGWZZV-S!xB#cNm0w&15+LZW1vR_pHp?^`n2N_h@Vnl z4+1S<`<<&m5fJ~__GGT30z*+(dYdy58R^cU~iIX5mXM=@_^ zfOegn!0;?SStW|Cx#AB@MbkNhA8!>d?_f*DmU5EBoNr3}j0Z5QU&|PKDDyEN2O|zJx6!#13T; zWeKQH4W@A!_$NQy{o`6OrmP-3tf(gt@^wN8wbvC_zGXzvVEssy#Ma&u`Fr#vs>yJ3 zYCwjNBBC3vkF1Ck{iNW)>LbkfYcR1s$8G-|W`PAI4Foy+I~Zg+O@YE~9AP(f+zOI6`D)wQVm~ z74W3(E`FO18)a&cL}s~i6w>x3E`2v^`{L<9?)Fa%XT;~c)74|E1|^sM-hfn>XWcWe zs4HBL|9D`c+P;6dQxwvBnVWa+%{0LRBGT|z-5#`iI*IWcA(<$V z+*4SJx`6F%-*||8)y(~#P`4&zlWwfIh-YJ2*46VT53AT#n#Iv&mKh-}6JM5TBA9yv z(T%fgGw|yHL?81jq}k;b;_(eE=FA3bPdFh`!`BzCy1m0z z`GBz6V$s^eK;AAUC|xdrqldQqYp(h;QBcX<0CSkb@FfEtzL9LuWo)C;QW>X0 z2t_hCFOB>?cII1#5_8IScGA^SP7D2`#$rjVoNDGTRWX_j8j64@j`*gd3aN6U6AMf} zwt0=6dqadKX%sQ~hY8%Y@|?vL({Yi&0H215JRJ(iTq7b#EIf|>D2rGZMzp=G%#_N_ zpCf(R2Gic}E1HvJfNW~PyHBLvXr&X0BD>^UZ~sC)BOq`xm(=fjfY;r0HdgH`i}A(d zKEXjRtg)|#(fg>>78scfaaXPPZ$Xx9gd>Yfv)DwJ7H~Y$g%d;J6(9u2?y8$pCIzZ< zIbC8RV9jT^y`sSH##CJ9pkzkd(|DY=pi{(;bidwk5^#&OTR1+7+ptvY?@F{1BH;Vud^-Jcdy2H@fd6h?Y_Ej9ITDkJ3~~+ zsHOI<)eO$@0Yw0s=%aX`930aS+A7iA6N!2gMsBQ0@t%};3i;}(32QN$_x)YzxXaRO zc7|sWD{F*%z~-dL35$j&SB2;dV|P3kci1$bD9H&~)LcDs`ej`0DQ=fMSLo-RA3%aC z_kwT->UPbICP#{4i|^*ITwyUPwz8h1WwRLMHbxG~*EK5jc-LDBLP$p@s3LABY<;}U zA|TbH4t}kBI07?v;h3!fp0^f}gQGU|vy-CSIlzVcbRET>UrW#i1`qg!Ku{T_lpUML zw|01hImRs%DIkkPufcWTIKE?Ce%@H5@qS{7#M(jzLztoZhpD~)Tk+puYZT(Rw46tP ziPm2D2&YBr=po;d_&4lvjzniQ6mJO{FQq0ZipBZmlo%+4_syUZl6b4>Z3wo{4%?C6 z+)RaHu&F_N-tgZ&BEMnKnUL_Xtp4Tpu(b~br0~r^nJd`)%HSZw(Y|x}FI~`oZ74tz zeA_QBTK>dv0HH__kzgg8MBt+8^lwd^_ZA`idt<(!=aU;(OasuS?QJ6>v#_>;V?W)% zThU_mJNne9=9(W=K1(7o9=?5;Ex^0$p@r;F&WKq;GYLES@O0!N!d01 zX+oQey)N;N(c^J8J6l7+Zb|H~rl)?N-;4SKRg4Z)c|+@DBu_Bm(u|=e8o^N+-7~>q zNT91N;17ukJc#r61Q7iUGWwGHJ&in&Ma z8OingF?>w_8f+WflBVHX98Xjf?dN&NbW(%qX+GHLwsDH!pVLSj38IqDf9OnUJeU!jG{mcMb%)>AKq{Fe>Zvtd*$u+8Y#hHLk;xYNn^Inbm@#`W&LP!!`6rAcmw5{(YjOlT=x&L3tnmWaR`Bt* zyhS!e+uQqdzWNg@A!5c&VTZ8ZuX;^n63Ad zX9T=@!3BSDI#5yQ^L*`ASdp&^9fu+h8!xc?7{HYwM_E+ghafo!P17UAFI);oMFWgL zIK~lX3=G0AJwhBJVSiYb2i+~f1$Q`R>Y1xoAajD#6rFh&KD^a(h;)<8$ufXr!#Bg}sbvCJ@2_x~G}#%7(c0seMo3lzq~+ua#?Z#Kyd7VT1>y@z z_vP6X)OE>Ozw^kMs0n?sZ6>=dug)J53f9tukL7QkTRmkE447LWVkTj$vTL%Ql(&lR zTt}FlfO#s7c&j&NIv7%R6ZJiu`_3I>Y#Dz7b&wM8z=t$I0yDkg^$`8v0h~hri%ObI zb5>I(iRDv3xV2lh+@IEz)sL9U?WN6AkAi@%6s|WKiw@B2l20@&-+|mHi`F8FhJNm{ zdslKeSS(u*N~m^_fe41}G?=iAkJ)v;JJa&1Y>n9&Am@^KbyKSHCns!H&M=|_){!|q zv!k3FI1Jey4m#~6(B|INl-2xOakjMxN68j(aoohBoX+UbcF}$4-nd2dA$9)`q}g zm4UMcLRMKDZAf>Q1L&+IKW*pFZqPhDTxCqE&%RO>wW1E1ai1;{b;Q9vWkfi1Vc}<& zv9dFJL992tX&DCMb3&mn_eb<+P?9@Ow`{YOOyNmkn>>QO3+_`*{{$iw!U7yqHl(o! z_USHw*@HB$=wMG85N!$de1x*=YRk*yeediIVJsKFnFofe8sOLi-i;+8=&?XPG@;Vp zxD^3*wE3P#diS7Rl7c;Wp=#Dq1(k$cHXAQ1i!+=~8weJS^`D$4sfoF=c$-jVsXioQGF z25;AXYmhkG=DMdw`n+na(w@m{O@ql$Uxc)Lo`g47fR!2Zu{WkG1v>QAbg2p5$ z8JV@+1zp2B0;L%^G&r9WxM#Q~mC82^(e#UVu_wadzn3o-+DSocJCN7s$Kmk;k&gd* z$CSwF@%5D^;C z$0infc%ozw11;?Y+_EcaA81b^XUz!_4^HKXn!j2Lw~tL_1G~&ZjfcoKh@Smz^0s*5 z*XE+lv7PtmwQOnAbr;n4w74@%0nDg3U(Q<>1}woZih|Qm#?X28Mxr_q`NW;^J2kKT z1b;;VgW{3$s;dZ#yEq1Kjj^jAkX6Pq&Z(7fekkEivgUsNTktjeSit6O!m#CB!tUf^ zbbauGf6%B=A0!90@ov8gU=n=c7x}mI!WtnXhtzHpN?;16+8$h2JKt z5E`L4xc1$`@;mG>w6_wdlKmqq#0x&v>%e4Y6B&U3LT zJSF&2;b?sUiimNO!HqC5x~YS4e*u$+?+R+eqGGA0gJpH+;0sAIj z5k8obv6dcIHSrCnyHsWey5niSEg?U(cg-?P&f%-3Ygb|~R2cJ5(`I;)dO8IH+TVai zy!5AF&I6jP8Zwwjnz&Y>#(iJjaC=%m*fHg>`xa16>tlRs;SNE?f8Nl7VInpFV05t# zdZVCp(e{UE!bj+D)Uh;*1lTNghdy#++N@>HMqGCt0BuZs#3WojlWV&fRzSe?49!a> z+pu<#(vAbK4mgVh0^3jqkY5w3$S@>zG7`137~*Bi zFqJ9aoi<_19F{@Qg<7~AlUAtwN}{>l&dz@Fr>uje1sU;M{ydaYeb_bG_A`jtaR6tX zd0y6-AEM6%O`JQ)gO3qa-XWVZA`4V-;}0SAvsQP@ zv!+7_Pv(lBe&k-|DFS{(p+#Rb-%14Wi!z5`p)z6Spy3+@0LdRIK{SW@%K+=jidQz) z>)tjweG+!%!=mVP4xafrk>wT=dV#%q?W10G+9cn?hiP45{OF7Glb-&6gb&5m>9Dl> z2h;^rpWhZ%$i3J%Vb(oj*e+K@nmLx^zgAvKQ8CrNqumpMvBhDhgxDsvyNdmpHXtWP z)yy#J%gVia6}Wiaip3;Fki>lgF7#_T<4|%J*lCPU!xi&Q|53V!O-PzSHKz%8P^I~) z;;B-v-ApU9B=%Z_0ZZ1aaUHF9zC|XV6-p)nxCW~70(}k;IJ2*@zH_7DwWIshztf$v#{`k{fcZJ|lK^lYaOfxXYY>-J*Cu0B0 z5dt+4UV4a_1%a|p(qFYsWabcVrZ*hwQ=%4Xm`zZzX|;7wJhpi3`%wc1fRb9y$b(44 zMnWZ5Yfc$cgrC4EQZ>_AH-=Je3YEhcen$`ke^ex`)udp^d*`kZHFkS!O6kZWzcbTu zisrzaqTLrdl1}M6h>AHmQf`(xt-=jn&WH)TZhpf5eq}oEiWW;hta%RRv63(# zF2CRmbk?bcy~`8L;1A%1sTZ1=!^E9<%i_xaydbnGnWQV1NqJxiZAO{wD@f^lzvh9raA@EkvOk^>iuDHooUs(dswO)vf%aj*I=DWDUDZs%zD|ycG!7UzlRg&NUt{W zM@yE)V%^r_vtUN`hesqDoM8FiSOy!lVcLp4**WR&cnXiX9;3v-BxlAFhgNw{jmn-M z{YH3anhh%v$_bvf6*LI#xYODdxduqG^kpNSn`> zqy{MA+ZOt36o@pTfBhHtUfU{&v}&8M z0nx?uZT67G&$*4;wG9;kMEb(7Wa2cU((iv&m>;!kIYIE9U(Trsw(7xFu;i|JUNi6C z?_*}1iQK0W;EB!!si;zy!)lPFr@I_2d(oUl{|F$8FWv#`ZvZ({3ua==vnOIJwI?o% z_tE;9HnFdHhR$e244E%Dzi3W&?Jr}!&xcAZXS9G76px|Z;VDavcYP_>64Pay7Y@`R;N0zVqTT3?hp{)oR*`e0KA@diN?Oe~jwvBrf z70pFLiXG7RB`jOKkHe|F&)3Ed4$WHKaG{ON6V-#MtH-TXkAyDPZ3XLHugc|vS9E(H z^PlNJNK1sZZ4K|6*_D{QB9*Gy^WKdwC=$>?i3ap#Z%CMF1M0hs?%7gp)0R#cx{($} zFgtoR8VM)kG@)mq-5io+7qaREUbp;x-r}3ruh7k!ud!V}Ssh}Q$jtq^dy_*d*UA{N zh;Rg&BksuLDt3IGT|)J!?Rf1@c)7cK&qWNKY#KOlPQsQ=XhPrE4C?->C|5WzqigL8 zjf9+4Q_L3G^8#RcWRevxr6*7ZV26J*&IrBOh^Pu|VpEpEOk93UFp(WTFDc{nAY&cJ z?0!s6vUY2}!E6Hq_mmZ#qOeS0tp&J$?^cy2wH2&2;g#V*K=D;}`HSxM7JmmN>YudH zDHe}8^|u6_rj$R(@$n~9&;!CWvaX*_mo>2^!B9sbh^)Qm47E(SzdMC!V_Em+?{7#{ zc?UD+7&p7XqE0uXiQ&`$b@5^1S>Vt}Zh)AYTG?>;2AFP*iQKR34@BbkElx&r?R_9> zj0j5LTWMB1K^z!8s7qD%v#@N_%yL z9HJCnUF<-(cS?ObXVS~4&5JUWvu!w#m2SX!g7bM)G|-5Q9$e|mfQA@Y#M84s+GJ1W zsjcfGxHvm6^YtVBB(+MA`uNw+6jU=cMR1j9BFmZoH`I+tBIDOcMk}XXphFWP2ZPi) zqLDq7?n~3<_F0K41SOc;7h0aCH0Qws@FG1 zGa&Mo;f}2U3xM>09+R^K&I;88udMn2p(VDxFM|ZI9#>QBVrX|JK5 zSWb3;kehQRWgE`k)p%azj3t@H2^kth3_#$yHa>tYhJX~J z={K#!(8Aro?7$YbbS#J=(38irN{sX-UYE+3zLI za%OKwzhQXN3Iwcm&u123os`nZyjNm7dLk$L7-o05aE&jXezG^^rZTmqryGsh*W)#b zReRXtGJ@qKR(o$w$l|K*du6BnBnvHFTR>YNZ#c5nfv;bC_R=p=u69{Q0DY&G_PQ+1S<{IX>;7-o0L%t=dznY{mfRU1j~7^Q ze*({^<9_n=02Nvg%KDBh!3nC(fv?KogstD6-ce4l8*<6eVgY4h&Q@JB$&=A+jIwA0 zCic@=@D%Mp%_%J3*U9({As(@*`x0j#a>?r8byE{9s&^abn56s`mBwWlyl0 zUTs5G7x89!DUPY6qfgYv%u2SP&uAje-v!BtY3g!4`B_Ipv zC*Ke6o*5IBMWQS-YC<=g*=~cN9y6F%oGxjI&CV7|JQgnK{T6CJeP)j5yu`asTM2JT zi>1X)e-e*!I&WpmfuPYn^rla^Wx*L&P~G>HNgl$x3FcPg3KfePgl^}yDPVfHRrm_j z9-s#K>}|@uYYS|;@%2#@xiWiXnhKm#DvoRO4ru%E-Ub<&{(B~|6f2q4zb}(|VjAuZ zA=!Q=mE}pg>6Gf;$Gm$VPOOffn5uGMgW+<)UQe-goM9e0PIgU33g@BFqspUthxei) z1)x{QMYm(|T22o_INTP=ZxJ|c!{S|Jg|7caJ(O=mZ`J*?Bzbhm(ErbfhgF-VxYv77 z1d9=Z0fRhG+D1m?!^Ui3$uIWH>DKFnI@h#&|u&k4h_{ zVaZJOg0NqhbE$tWo6kVgX(o?K&$YlNc2h@>P$v1VcaENH3DaY|0#6gG!UjtH8Gl+X zM+@uwqv(Qg4~@sSs6)Zjf-T0QG3jZmdrs$7ArZNm7mH6FLeV+B%wbEyd4GszaQ~az z&8WD0E7$EQ)Q(N~`;fj)C;Fm9y?vkCk&u*bTM=zRnTfLb5>VDO#LQMQH1o>-7-Fr@ z8^WBpBNKEgNMJMTx2U|`X7G5_&arx~Y1#K#!!O%Z#!z+$zpt&UCkddC)XzS5CSaQ` z9>Auy%J15h?+OU9)ap8kmVqL@9aO0DMOGGqr2x$RFI+NlCpOVAf1x<-a?O?Ov>_Ar zbc4mP5=GE0<`3bOr7i*=uI1VI(P>w6=MJtcX^L*2?9OWT;Duy zIUL8<7^ZTioQ`rp#06J9L2i5Q$MLV3A*IS!6C=25iL@03V|pyawCVCu0$!Iqu@o&Wg(qd|TzN8Pbmj5_e(NI_KS{(rlvFI7u*?rc^RZV{P^STlI5l$=2 z>B-SM8T|NM5F*fC2XnfDEO2wkE)-NrYP@>zxgbN87T(xYO^n{?6+hT(OGyt_>L%QH zJ|Y3&r<0o*&2R2jB8{OzyJY#}HEbh!`+yIC!M9gxV2_7;92u{FmBE0AB7(*4(;-xm z>VAR>-j#{zg&4e1Mw5&G+1nw^)>5z}d@-|iSk?`>HY3tKT}OecU!dYuQ~1c*+xVpx zL{6bzKDus|x|!*D)9|BVJH4+{h2%`|)fyhNcQIG8x))8=)FQaw+n0kp_c&V1;ayMA z=GwD(o=N5=gxXh&b@$M``y7f!{xDB9L6AQe@WPJvMEgtN%9*$up}IV^zZU6#SVDW& zmBgCV>gD{~Aw{yzY`=*Dy1W9pv&AlWIYR94VZO{-i}GO{2Sru_IScE()ZODK_-#CY zi+UnBz#em*vLHqcjhNVg(J)WQqEv^9CJ#4aavuk*99`&kWc!rl9WPNNw@;$K$UnKgdHT*w)cH5__F1e*M&*7OX;$?!M{grckp{ej~v&vI!0(?BX6nG+eu=x4UQ0E23* zMsORq)Hl*79MieE*ricTW7j%K$Zs2&#(9>+W_45yDYmOy0db*&xu2J=nbb^j&Eo2A zttbw?Fa_@$1m5?_{xRI3EH?(L!HVeCgO7j+E zW5l9={AGg7Zzp1oIR1`~YVI;ZRk5%}Ll8D55k1zZd8}~e0HgQx?7=~xfmT?|O z6;5$=0Kee;i3^(_`cC+k^Iaa<#h!VP6B5wex7HSX=QR&LM}$SM+~XBf==gY{IVtwv zSUb(355HCb-vPSCfm;bn!r(fut0T#jtSY>;PjX?&@f)UhCoM!gBoEV$9>2@d!L5=& zXrH`&ga0*^$UjE1ng8Wq=x&w-%Z%oFG~pdlM&V6ceMBtfX=`R$(OK13*B_V^?P?&} zOWm}?RMnU|L@da&sl!vD^D9J9r5}DvSi#D!foMRsdfhB%(uGQ+2r|c-d1P2}Pqrhj zGk_vxb+*2)KQhSvup^SPUF8ppZi-=Fkt`rrGu z17V4;iViJp8M}Vsr1Ccu6V^!4cUfw9zW#$)BCQ2i3l9kv(L0@TM$xH95Vewx(+uXM za3FUWl3p>(_R%sUu3j)RyDCnl;md^L>smVaP?ZigOS=eioqwF;#nDsjL6>rIuF)%A zfOwx=U!LR6MTWo^Ki4sE>vBy{zW0orXkBLk$2C*)%P!~@TcJw@4KwXTyN`vsONq{B7wcBCDo;1|fE7=3dl27VJw6ia6p)%=bts=nNA;(e z!*81Iy$Y$X5(``>2GoqOQbaT8+q85VQ8_R22qlCz9hEZ(=Tz-a>;Ve)(lJ_|K8mA2 zawcKgnnK=%0MkWOaM4!zv0b`3CBY7GvFVTsyDTNdeCp@D^i``^1+^uJ<>~=L384@j zD!Roh$_LkAQ(pulpjsoD0)GA}ZH)D;3}-lCg%#cV1&%k=gxJ&+CG);R2h^X;6layn z^7e%$kF$asJOJe|Pc5I`JfTpQpS>d?Sf0zT*FpYM-DB7Dg>a{NwwWkVZ23m zQ`zoEZEX==5mdj<_O4{L^nyEmC96vNbUrd(UuLJ%ZZF-1t|n3ELx248%$rHMB**{LdVD~YQr@C4n(a#oeZk7o z-YZjdZJ1GM<O4${d)%UwhGA)UB6W z2dA_sXuVwFq*A5&?sLYL*fW$y*s)t*aNvbJMXGLs8xtxqfBbLI*BD@~IN0%>?`^6P z>ukT-DfYm3WzDfdT~c{jCr~!}7hk*qMS9zbV*;))rxbK{wc&G?rGEwDMPLR>S>ca!5YMWK=#pr=g`IJabIA)fS)`0#wifs#fCJ`6);pvO)U>sNXv76`t)k(S ziOpTzP`uM~&Svk|_J@MYga19r`#phD{8W^Iw9Hac{Nh0PR`6E`h|}q?Et@qh z1{RQnCESwVPh9ipRMtb;#lG^8mG(txuJ-fh5TIH_=*2xv zYeRi1U)~=$t}Aj1nJFuq0w9)B$GB@avOzUJB9_l*2TSVH)QzKzZ#?SFH*uJ zhMef^dJZ_Vt?Z%qASqMAxdnlR;)CO;e`ZRw1gD9f)k^GoWDWYiX zT1-vY>ON^QRfRixgY`K5H+kmfPC2o#Cl1n1PE@%?*p?~6D<~+%MsOPlT?9-4;=kxl zm`4E9@55l0;8ynQsi>2nKIclwK;81rvcg1r^f?r8=?ZBJshrdB3Gi5i_mvW> zj8ntR6A7ffHM>`~&qBf$tT29y)Qvy>oIUPTPZGmoaAYp96(L^2OSbCzG#DJ<1!1$< zcyeq)be*~$DE5ZP62KeZ#9o^9LjQ2LBt(YHvK?cG<3mK|SIX+t`gC;)RM<`2yY`Gz zvF<4iB@HJ}NHqH#Z*eIUf#O15pV&k0@`<5p@I}>4i3uIMI5T`>jqkY~sZYg(W>`qHe1pz82iKhlZ)E>;Z>zT{( z@%Og`J1i9*$!zl5bva0b2+!$KAwyiQdsuoS^FmvBc=>-nnCin=X4~8oTVOLh&*hk5 z>VUT*E0)wEZO#62Ba~~Xrrpx+=oTGKpkgYfWDzO-fW7 zd<(`?z_i=>3n#Hew(uz*MKLmw_(L-ZDt#L+m|LfbJ$_A3S&#IgMh?bDN|Spu@s_0oz}wiX-li2@74}(?3vY)vN_Z?K8{&KmW>y z6%VlZT_Oy)sG}>9{y&JsUKzx8bO8t}V%fvR+L4HTX`Thqy<_)OkaSBagsyKgI39oO zsMQs{ZtGf^rd$VyC>OL_nU{24dEC}B2lpr{zMY3i1-)-zo}n#mK{jNfP>96qX!|dj zqpnGoST>}`s~Ay;Xtc&+?l{@=MKWLLh_wxIrLI~Y)(U4W>F`-VWi?Lc*1Ek#^aR+@ zVlg_4{Pzp5VBOPtWAw#hK?D@ooMrEv_5~R{NDoUYxNk#CiE6?4aTEkw+!yJ+3X@Xr zpA73YlhR!fB+V~??ompa$GU`}#ff&c1l4Ox+6p^tPwFCa{jIY%u2RGSWF!SlcIXfb zS4efHHkGZu;9)Sdsb8&ncAS^KwB)H*4 zoxFLJR9b_a-5XawM+YwYLta$JobZJ zQOu$~=(Tn`t+mmL6myO#l&;eV0Cd82A|Mmo(<1MLL(Ee97RQQemgQXLHeh zRj+6D&wPjiuQ5X|USx6|4b=5QPRM&Apo;aFr0nf8Y?;%8^OG~zjU2Oa3EdwXBW zqZy{Q`D}C}txvwbvJm5~e|k0JCsh47kf=>nql;Ymj8Wu$UTaj;hmx8nYIHp*AaJSY zeWaYAd7M6A;U9{lif@=`D1HH((_@2{vaIHuv^e>FXK_%a;4zg-Xbt^AFchyT+DrVa zym1H}NyH5MjLzZSp8pcz_bJ=Pj%n~|96$PV0|J77@}Z?7ZNqcJ8Afr3%+UmR{hk5% zE6G`A2fO=+&2GRJJgD(zn)%IYh@emdDSR`A(%~3GFQ~eP+?@O_`<|{wX|A>Y-9xGS zLv8t6FmTZhHV;PBn!y$=6KD+8*CACe|0l!$ua?V;Ym)dXFb=lC-0#Dbq=>C%$^yZ` z{!Jl}pcI;@YXVazQ_6o>yC6)HMcUV{bY+bi4?H{QGJmn^%eZ++!rFPlh(Pt2GS6iX zdq(4)^EYwQ56S$rqXDyk1GAzCB);WnrN--O$0D*Ml?;g+lFz8CED5Bavt!uNZnizt z0R$wM6Ig@{g5e8kP85Y{>_Wzkrfz9gHDF8Cu|!wna-<# z*q~l2*z5d7MS5cH!#%WdW%*hN(kyU&brV&Z+#el zLtY5>tN$%c%*?&d>%o`FKRe3bshaHfVboQ>V6di8FRZcvOb;#>j2YoGAiXn^;7+QZ zWxQbgK@+X7KJKxopc6Om_eo3G5~g$K+9W_R3|BIV24b`GrZ(W)bTVn~-(D4Pa4>=V z*Wsv|vw{tp2`39?2~(xffqceFY<>UcN3cOd)iN!+tsP|ZB{GnIuqn!57@0qT1NG9Y z)6doQ^+AG9ezOM*C(l0l#Y9~8TMO<8UneLg--)}-&cd&W1%Z2rU5s+?H*_h;?gN9E z`?JHt<4W9F0)zf04WTQ18MtUk_fvq{IEb}Il#FY=5y47k^heg@uq0KNTF(GdYZB<> zj{Sx-)C>T5->U|sG7GNXE&nr7{JEgS_ZS6ga5Q~mpvE-OUTPqrF~$nie1GzV6 zG^Ok$H}Q0f2x9sQ%F*l_r^jkBPkUpD^UosAyy%0BaN8GkN z*4i2#bE^D?3x;G*Xv$oZRiC#)_^ zP2ee*?hBo!jygO}hJyP4o;$moG^R+sCyJ4yIX(_!tFF48rx35x<~v`qqV3*W>3>p! zI|-b~*16uNQc1tfX>fN`hMQ9 zYNFzRDWg;3zIx>oL)f8Vka2i5IN|8Cqb~^=%UX$<<*zIvs zWEbV!9pP8k-UscJJZ$)u7K(kv1>I->lq=+h3)fT=Lfi1@Yl8jV zLW}KcGT+&fI8x^wfM{+Ue~SZuUdwda);Scv7jc+wY@p+wa$v{Q42G95Ty-BqHdF*-6|J%%=D#JFdg z;GOl-L8}!!K^+mCnfKFjkR|3v90`529(MYhi#pXJEZ)n$43h|_Km4X`SvXyLx-GT< zMrqR?>>=DLKfKPDQ$2^W486mHH)tB2paaRo4|M=MiYOuDrCE8dM2KE&2(lbCqx_16 zBo3q2wpw=xeXs&uCRhNLO8A)>Wm(sc)=j>hW)wV`2MT$9C!ZKn64BLyFV1sa{4DzsG1yN-JBx}|7_B$CYvF07j7iFyh?ij zViAh^%4EUa-)l|jvk3^QG4=i|aBI{BB)R|{o=+dwp_=J9|P&0AhUCVKaB z1HA1Is-&#qdKlvl2a#0Vf@65C*ya1W*GBcpCb)FoqZ11L%>O%Ws;KAW6Z#{2(pIBL z`TUjKL6P&isd7M%S1a;t`8_Djs*ONbMa|}Nr&in-Yx$p5k|`=@P0yLMgjIWdB6GkK z=xiHWQrVihQ?O{JSMH6B6he42Gwnn^heF8xy;wePVfOz@J1cJZ67)i@dV`H9w26Y~ zO?FPpJ7p+x0_h^JNH07)F-^BljqkYsU|hW zuOI&s0k=cYMq9HSpv#&bm+3}A`Fchff{Lf-kV>}JbQfD$iI=sHqKJ?Grw016`a3}{1<)vam17)#`nmjs3TX+IGt zMeH$KmK=Aon;eRCI8u?`l=qPv=r zG>=m=P;qDfc)Q88!)`Y}838o;@7BH1lc~c;I?&A@=aM#)qkjP##yk#l3BT>4;Y<=Y zf-4o}IvKLfKEyyT`8XuGj))-P1N=dgoD9UQB75~rM}!33H39+w8D< z5I8{_n$oPyt(Z?B#4Zp9xHEwJy#Q2q z|CO|$zX#-Qf;mrlU!Q$uXST1`1)Xy8DFv`)q~{v${u)BZHo2DP3|drAJtb}+vV{~lg*%- z`?$@h^daRyjFCFKBBIJ?~| z*Z}S|a|UzP5fnkk@@^p;QeTnwnm3@*SIfwR{fF4=WS6Z*Pt?jCHKirSNbz)oUJGqQ zdSK`opruciU$X9XNChi{R)agAqWGUVvr6*P*jA z@bC=;@draXyTKR$DOlgR^J%si6jop%8yx0UTsYh#rl+Uo*{hM>7I@1-dLQbFxfjYg z33_~7(!Xt{o|ndax$W45^zH+adi|F8#7;RKlkB$dG<6$=_KKDlzX(s8PtuhCe4MJqXv9y0P0S$_ZbE?wQC9e>uQCvKcA9M<|1 zq1rtq#(c2iY3=pH9oVMBS1Tuil!@o@0PX7YoLqG|w|qGehPlZixQ?dxm`32+)xzi} z$=f9=5pkm(8+N*t#p#6MGZI~6zxJO(A6Vo?_>`6+A!b)a;*0eM=axLlVI*wB^73}> zh9UQ(490pEw7o2c@wZD|K|l1uB_q(4A4Y@iO~9!(h5~lS_w&1NbE>jA|N%eIV?e$2Dn*g1MFVXN4ass>ciNAP+Q^k-gS<*62c$oc>A%>j@@=E-&k ze_Y$X+S9qHw~Pq*>(P7`4G6_R&ZTO<9rh)hZi62%p;=ws(}M=^vD0E^xY&Xhbq*9F z23r}&gR-XSq-Hx9q$& zE#xnMq?KQEKR)o-ij6@y{e=|^pN6~nEKJJS!P?%n63s@Jht3qbzWJpX=KupHi42=`C1bQiF# zwaad}MFWi=C~N$6-pEhw_=XWZUn{>}CkHB?{=qe?`I6Zosc_nHl~UQ7Xv zb3tcS`Ck#`*6FPqly|5vNvQJs&nV&xb=`1!?b+8>HuR0W!Iox-Lg(oK_CjvlutJ#7 z$fyGfnr~0uf;E*sEamyUCin+gQHS;&i|9uPrOvZU34muMDaiS$@QC!m@ zB;o|8rW}Y-GI^8u?1m%EY4Orjr8A+ zuT5ottO_(>h_mO|O}_9Ssm#ZD%!_Vkz1f$rmXHda+N%M#+Q=#s#tF=0Rr;SZtj~?K zQjjR&>Ig3NB7x0dAmcj+duHYwOd3T(#d54&B^uO6yH9;3z1oYd11frT4Uq!zGu*ve zbym-4A2mb94ie-bXETlQG=A0K1>NE4;xc{50ZV*nNCN>e>Au!X=7P#MCXKWI za^tz}_z_@mFnP~YyH|J{Swrg>!g6=!Ca&J8O#dxv(oMECEi)QkFT(_&v}>k5zRu2E zTfsy_$QeM1{f(7)IH2A5_s+Fg1!T)KMAsg>u3GiG=moqz8Es~1T^2Q-F&C>s_oCwG zHm6dpB1hh09v8_HieSk9`!~rQ&%zqSY*se2RFZs0ir%K1o&WbxCl+F$7IYq)#6FTQTBpJJ)s z0Rexd?i2cSk&2U9A|R#w9_w+TfXS>jzD@WgZ~_lYX~0g9}q(BSbk{+X?H#= zc`N)B<_9q|=(ii`ohVso+EW&^C}kKU*G}&J&1JYpreO;j0w;m`qNbuTGhi&TY?g;7 zd>Q&rJC5DDJhK=sVJ$u<7eU5XmGDkESV}GR6Gx9Z>Nmt~vi#v1A#Wu5;Ib_n z&gD4oCMFbGvtoB!B0zH=)gDJ75IEMCZ+RFOe#T`VQGic9OsL2G2C8&6 z^UvqeK2Ei;6sK*D3Iy&K{2aB^HHbQtQx$%gdUor5 zI}IQ|(L*-7RV6V`h78f@Esox@BL0TO{OM7`^J&N6x>&jqZz(hz)b*K2CzpJC6R>Ds z5Ycn1=|yOhzsihl>1MXaG>ygQU9~vLtV+NlWCPtb^XKKhdrqe@?rNqBdJ&;MdGZW?p;{Y-otoNTq{+OKny@1~si+*`S-(I8e5G-V%mK>F^7UX;eVnEST|1w&7M4&2|8*qWa zgc<0avH#E8F3D#+fMH>J+`n6a|EA@Dfbv3#35M1JTImk*quxVp@EkmcKR{}FP!Rs< zQq@*3cUMTRK;G2p>uhud$9Hu49z0G3YxpT+C)XdzwT(6>5Q6P0;7|^&eMJY*?OJOj zf@l5eRnxR!&3^9QXVv+c9s)#dpW?d`t!s))hG z+FamuJYN_R1NwOM_6xPpPMTNu3}&@qA1C@R(GLLNYB}Vo8}cU}6pK$q z12FkhL$*4JX0{A00XzyzhMRGw&5+Y_lP5P__zH;3)+nR*5-gkKbF+!Jd;m#6w!f_j zr;x3LCwthn=^%_`DNOUce%Xw}DB6FkV~_Y&qYD&%1v`#M(tkFx2f zVYF{KyNtT&*WM*JAm~qYjVN7B^U2rLP@e{JPh$OTNlc0-JuLfaw1|a**t#8Bh9Ie*9Bg|ECI0zw(?BFEy|)_tW_~`&J&gg=I9_AAc>1ZoqUS>Yo z$I_0b{-asqbQg5jdi3cP@3(uj@1657x8;X$p@~#Y6qc*MX(*PMLe<{DH?&iF4DlExfCzB0hZuYT zn+w(=_Z#~o6@QV_+d%P2;M7G*L>V%m&SN+AAZ-*z2y(Aq<~6rux1#a)f_fiPt+ryM zB^=i<*W5+;Qsusdv9bG&{Ss4W3kA-)H3ia%mvvf_)j)ypFmVbh2VbNq=_OQ+n z?wKP4Jd^}D+N`W2i#iM!2wMdo}fGp!aKp7cmtB7#9)jtDtZZvA< zcWcKufhLzX%qq~@M6<{v-ZI+XBJ-s6l8OPLRV;J(?_n(>BhHWDEWOvuB$YAC({Doa zzY=3VE)NM1H2lN;6)n=%-#K8<*45rhnQssCUx>JV^H|qNPR8waBVc5Pl21X_(63Km z`-$!jC`dg`_y!tgD8hQ<6mDrURguJxK5iVR79gg#qe#Csre@LjF5z+eySsKqDvhoQ z@t|f-ZM4;rjqbiZFg&;@kVj+h~ zc4>VDxivZMAWw3m#M!*^vh$nASs(u)F+Guk;H}fz*TgXmMW_Of(loF1lVC+B_jQu) z9gcs$8}9ETT@z}hs8Ecd*<0Lg8z|Gr47^!J;tG;Y9$>20G$X%7=MRF!*ud{?%wPLn zg`j3QPnL*WY4FYj8+lz$7vinLaQ^(T@7U-TrKI+Wa{f9AqjWCkjE`X9KC9bx$C4e@hX3*s7h$$6H3b~ zgaB~>07New@U#f7`<0C6;2`~Vw->-<+Ul~B%Vv{E_N0tf>Fn|E?qA6tozR&}QH1zq z)JgKES=ofDa!77c%Ub{(qLOL}=LN(LFZgz`t4ZCsF<@(ci?zjjH1sLNv;sNYC3Z0k=sW0hW!hA&rmQOM&tnHcA4?66x}xrz z@96yoam~KQT)T)FCI;}MF~^&$+^}Z z^#|^c5;&ryaN76;!NQ~OdH$L)$p~R!yj(7Mrc9S66tBL1stkbn1i8TH*d3jhvx2X) zI4h*^{oPYuO+#UrZY=d0sC$4J?xd-u7NorZV4Qs%U$k3ao?iT2v`o^vqQRY}@4Kur ztAdXl8F4JnprI3*p6lUEX}OFd&-vVKjv>+X7{3P`&PuHHh7Kxi>#5r7ZvP^$Y>Y|# zL7R?tliP|QyZZ6EZBQ7fMmgFP$1R#4$eszAL+UC_I?=&~H-&rAoKF;I*EesfPpI0B~nSOquQA zxqX$NLq~phvOnznFSrmE&)G^@AD|sOupLwul=RqGdE|k56J2aoj2dm$TeGn7-_ymt z7|Dmlgr%*<-GDjmXqr%;R}8ijVjgb%0o5%L4zIWrB*lCvs}rCtX0~xj>CYTXM^k3A zg=zvsZ`b)@KAz``JG@$N4cw1C>r%F?)Uxb2N&0o*W(}3$`sfJN#J&Z;Q_;3w;)3P< zFs&pB)GH$ak*Z(^8)Em;7F=ucWCO17RKQfeS0Z`tUw1W47_vB&%eP8)1;QxqHYFxz zQr+5)(hE@e$4xeA;dE^qmsZa0Y%?c|xw4JMXiE5Ve8wLv;IGgQ1=qG)pBoJ539^Y<^!-@j6B zl$K;BUv3fN2$IVOq1c>#W7ibgjK#~#8(#LQk`}<*?WeTR-*xa=GR?p=iQoG`pW_KP zO(?5Lrsm|8)QVjJJbDf}I{HZ)C)WynMVVed_hyYHEy{TcFxy_f4hyWO`=}Y?&6q># z$aC7vm>{_fR1Z*eBrN4MEuNDa$m)99F#7Rj*Pm+_qLfjUuYIA_2G4X?_v)A>biFyX zQ8S!|MYLb+v*hoRDIk!e|IluA@R}=5vQZVVTzZ_J8w_2f_ZFVUx1V8Z5|)iM!GBlS3>qpXVMunT8t zN>xco=^`b5aG1sR!aBZ$oh9y{hp7Wyjfon;z}Y~d@~jvub@Kh8OHv$utF=g%KcsUh z7kx`bIn#5c)4Z;9#(j@{w=s=1zDSOmbbq1}=Vrx6BdC+SbKu`xPVk-Krsds<9=Wjx z6sV?ZZ917m+w`E@|9*>v2P65Lrfj)NLTWG9*wZB3^QHuCTfBk%8%@1iAwSgvog7Xl z9;0oBQYt-(Mok_BjxL&R<44e^_hkvvCWlsT3}$1KKK-XCEarHG8Y)}kxw`pIDhkE# zcI*1@0snJtQ^K<<_aK?|l$=nVq3vAmo`WB8Rz&$)ZCu5)T$&<!iHX0l_e-E3pcV^mYl|1WLrDTmBkM>Wx#u_QY zkdBcj%su{kBr`t z&L9<3*KAZzAlDbEyjgb>*DoWh3i7R3wMd9OU(}BNE?NTfBKv0K3dd zAq5M7+vX}3Gd~$6=Lk6`TuQZwZJVl9a>E{X2IMZkT3Ar;r6qGh$lRwqD7~5=PE#+Y z`9Umf)}`B;qK%-ORvl=khSCZ+y9h%CRroX=NYVC4hQlmO1xqytZLK|PFCDpypi1H{#cM$HHOk$8EGY$_y1}5R3ARCJOzQgptAo|#i zk1Zx*$?!@!qN4P6J3@?vK+*gX;t(Ky@fQ1Zn|IQZy-}j1v*N91!Lx5_ z(E%fc0p|y+_!8M9DO`TuO1t54RyANJ{>Zpo63mPx>{y=6t6L(?0h(9^eI-@oUJ9C1oX~107 zY~lh3;_wxGiPYEXpPi_oY^GVha|-$e3`%AQcqvsJFPhka0%ado2v6aic(<9hI6S&f z-|0XkZhIxHFXq>2U-D6PKc{|^^IvU2$jeQ?D?3%v9x4D9$N=oTkwe!Bzk+peq+TWm z&D>@S%Yw-0tJQ$C+}}^m1^=g&M@1A@1iNF`)`gk+-WTmVW09kPgt2hmreu zveA@)`1Yz&SB7hoSC13&^oxZ@+;)^~!hD7_d-_^e5f)(={vmQjG_N5%reSA5x483b zkDi~pK`FfPz_D_R5<4ph(ao-;giWdU;pVxzm9l!L!s;B@`F3&to78K_A@eQ_i?z#j zcQT`2jh7w4U+f<3^~vd}PDnkWrEblf=|twEd<!^5IPk@X zbF%BlH@4*Epk(oHazY1t<)lj6oK0}IJK*A3A$W$36tM+LmA(ogrW3|2`~Ur-969#- zSYlj}kNX2VkW*JI{U2oNRxJr@1D6g0g)D>+IZn!)BT8jNI}^hndcGR5=VHAihC<&I z@=}IF$>V(h?*i0ft6^g5(VvAa*3M+EYO{OU$21<9g|)H6Sp@*6XM1OrMG?7BoTnj-sH zM<-8bbLe!V#%5|@L*B`g$o4KpXXy>#(=;6{3wfqq<$3(F`E z`>Fw$q%@R$dgZQrQw$u;dauK7r3E->JOq-)gRb_wn@5OfmCM4^;pFuQP8&i8_4w4Zo@s;Ej9xU7mbmrO z3cxvo?J&uS`9m!!|8?ci^iBXruq>JI&@m!!+;QY!nlA~g1g)9A2qY^R5eh^}^B&f2 z>FQ@rBs1A*R80ZqZD?BQIE;WEpyUCBTMCWOBywM9 z|3+UyNcfD#gS0CDrQ$0|Zl$&}#a{st)hm>f-uJ@!H}MO*ByJ{O^}xy$4aD5}n$*O+Ih zi2ZYKdR0VS#o1O^jABM2OvUf$`DsHUoD19dpYu2s9rl)=d!<6xQ6}CCV`VJGC-ez-Jwx zi<#6C3`f-Z<-gB|r;_3faT0P!#ESUq%b5?zLv+TK4bOf@suZkL!UzpFcnSEcI}qrv zg@&Lg@7KNvXGbRwY%G5f5s-h4f(E4(zyyx*%2ANRZ8jf$gGF^+Y?2m0-2_+%X6SlnTgaeSEhO66>*tQ~7)W za={)#l|Gz{1)^}U{hP8y@@hW849LyI-lNEzGP6O{JWw?hA)Q}}Ehl9NbOs3pMg}%J zN#%+wfe}UGS>NLd@a+pLX%~zz0eb+H zqoaJOif;QWXKXr~SF0(Y*Lj_pJ|%Z8GrYZ$YL8pFHTQ$<;WTQ=uh6lP?37IW-$?TO zBP>JjF;2|bId}ZG$54~*7&UCcSqr~mS*9Z&zS{`NHbR%`-p~hrQ`1(dWCh%tJX-?5 zH1ieJzP$Lsv-fYxC_VaXS5^5n6`N{Slz%v8wLq7HZc$Pu6n#j{zd<0H3VmS=Z7-&q z@>-odjj1r5GJ^t3Eo%PJIC*-);|d<>?&!Uy6k4%aaxwDH5L1i71MiEJ^>0|*NW6O3 zl`)4h!$MF>;qL$$sp}Z-7R=_Af;l*uOwL4B?MmG z*F4+ckAurQfX4tIbk50^ORwz)Ua{j{-z#YKwswc<|0Q(Ov&Odv){O{)y_RnZTJ4bF z1XW2sA4Lf9-vRU^2&%BSy`3P8_3id|fwQCd3*xlq3fn5QRaMz^NJ=D&3KR(y!0EfG z)9_qT&yOAy^clC(b9*&4ZH5X6)bERha!N(cY+);hDYF#&=ImIusf>u=2`)T}xVb4x zMv0D47lu?9?VbMOv>1o2}^=w?aXR@i*2%@?N@UbwQ2BPRmf-`2qzzj5YO zldb7E`$Kh5t49#SF+k>vW!ukGZyd@ZJ1+IkhM2LW=2>Ac!q?X51uWI4!74n{Vtr-! zgs=|Oa{JQ`GXIvK&ONcnA5`Jl%51nCKs?V^ww9B*WY&!o_Rt9_j_klXs}0Gx4o~X| zX{3_sP<;BfCd1QVHlXvrByP5TJ@PQu71Jb~%ShlT&Gy{QD=hxo201^qo>Bo>HdbX# z(f7&Z;{Ov@8RcTcTF9j1oWosG0vs!DSkbZs3qzXf{dx*z#P_^0~;)Y~fdY)y?JCS;DGeq?k)}_SvTYVsG zM*cPTI_W*@w+BCE*(wJujsfYZ=k0W?2Lc8CO4un%JNNm(7F{I9`7^sL20C zMfvR1(x`8{Yz|Pel`VwN<&&SPx_T869INJGaTGjn3iwV?DT1AqZZcA~gc@Eq@g8sf zrYUrfGLHpU2R_P+)=S>Le+Y%m8V8Q@kYt2rYpW~n&%Hndfi6zYhh@|pqm+4=FuQ|i zqMrF(&1rj8hr0eFtoLww zbEJ3pJnP_3>9aO!q8-IoUy#tl0bWZ%Pho# z+_L{VY4WSIHy?8sS!%-5i$?mkyxMBLHMmvbL7oxzf_On|{WqXu;rx}arbd!HA}vaY zM}65(IH_v-n$~AmXzYjmE2(7&wuP_J@2zwy(rHB^@)&h4Sua| zxd9NgT}0}`oPCHLN>lkJAQV`}k!?e%Ik8I}%M%sSl*c|`@{`aL6E!jD_}Z>0dR~gf zkCRLRO5$Pw_zgo)wEVnPL!nvsUYrv4*Y23IwqT8_!_!GE9x9SEl8 zOaMU6s+{rFe2=IM&{fbrbDxyQQp?g3lB(V0YC)EDMlR+Xlay-W1&Alg@N&l1MLo9m zC6k9_?AE}UQxK}CLYs1cJkZ!hh1S`ZUk2Yi?ESrFMWGdiWul`9WT#$v+<~r0LVRlU z3qDF;od9C&K3+T&O~>af+OFW zLoD@N{cOxwv_Q%#(!^F%CI&3k{1qAvoZghJV5XHJacLg2&pP2Xj@IS4fMLyTK7D@- z?`h@p62OHqv~^2%z2#eGmkRp!bP7f8s{}SxH2w#7Z+WcTa0#TsPZ^FHd}SAO88d%^)iTP%$0;wPt&y>(xUrrCA~c{B;L6Tq3O0NLl3Foq?HPKIqWjc}w1l{>}SHs!GO zjUuV+MuIFzoubKCLtx$gxU78y_E_@!&B*rWJ?=r6{ZTe8(Ehs?Dd12X(sVzzbEeK= z+81-I6FytMnv7#tGjSMI^-b800+y+;#;Fo`J^r11uPz!?_2&os@|1Ew2EZl5 z+rhX;SW^M@lnbq;&%9`Klyl+1wwDv_o0A26BsY8~L6n0fpq+{XT*?$06eWRNutr`{ z8h-L|_J+iD(yQ)%$P4ODxHr1bLE$P~K{OT_WqlW=ipjVSJ0Y=LMsW>>PZuXRHIx}N zy#m)XJXh>$;V^#VF0%l`>z}5@z?JD>=V9j&RbnklCEQXz=Qiv<%Lm*oOBt_=@)SyZ!vsw*G)ODBWV}Z!# zQOu%*fjDV5l%;5}WWPRq5rJX5S4jq`ejmyxTk4KRcWQX9?ARD_biwI;`#Xigcg-(c ze12V>AX>J{+okioUnUH&tQp~73D<${oTm{@4;hs@Io>h~(0s|6R3R6dkeFe1Y zZJw7-n408aXtE~YAxo~qxlw2(9q@wOT-Ff&^ui^WC*}3jRK2#FNq9NoRHZsBhjn`^ zrm6J2TKxXddZJg_P_`X#E7rfC)VZrDKe3unHG-!JJ8Xukw9_cuT~U{hJH6W7jb7{# zj}wP?aSjH~wFFa1#I3h7#kedaJTd^pr8ak1#wp@1A`}M%eyknkgW*WBMMzK@5aGuI)^o8LEPJH{J0Y5!%hg# zy}o>Cr1S*E$h>)@q(JSOgm_^w1`^>p5@pCeD?a(zrTY{j;OJNksH2T^Q%aVM_iI3t z5tE6?-Z!k(`LQ=Jw;5=5q@cf`6l1r0ffcDY_6gFBO0=)XKxQCFlk{xrMb7;}S({tf zSOP9lp$itzY4Hlo?b<#`juk}t!_~(40&A*VvH2y7c;yel_g|(C3uUwC0XL+46}oq_ zNXZ32IM6D}X1m0~ZcLZw17At6qc)ZkLvlbC*}6z30_+d(5^{0Y#`H3czI{UC(TPDF z_?}y-|FY=Mx*(S`NLVgzsiIUB;8lN+|I;Zi%Lpd%`&5}!v-5*Sf^1NYzDWPlG_U?- zxR^e<{=4u^a~}PG1nf*!jHKoxa*O_qWVkzPdXHjpU$pLlWyP@h^wWUSRcY&EpCeeI zEwMf5jCTCWQ(F$+fX~QwC^5M>62z_6&3yxN2+z3H@?$C_P&_4iMO+Cki?BU@TStCw zho4-0$J)0&NgGTe5u8TbhnWjRgRq0Y>Gb-mYw-pH`jVC^IWh?#AqRd%fU`GL>fj)m zVj9$ii7;*2Q|?VXmJSCh<8-=eo}P~a`?ysfsUyV&gbCabPp4XtV_AXOE|jzRI#<#8 z^6(Dby2d@{tT#?dJQ;)GQ4}QvLHbhn?U1dhW(S)DD&Ebk-}uVovh^C!9T|crt!s5w zY?*heA+HdJl{mdbtM}8aLa@$smYZ5Sf)OM#ZaKqLCC-<`5jbalVIjd@=bo6U&+i%aK zK;8AZDpX*`KF%E2;NXu*K!YrmzuhDk)dPpEM{N-l5c>85_Y0W%*rN;#ONVj$Gqtso zQWGmw+D%HA`g774}8W#%r+1CiqGM%QMKI0aI}@i1s@$ZEbjOUi3;p$ z#a>p?_1<$=sV4j1RdyG5^=G17GkcbbKex7}Zh1TsC*Gvz&Y>f+!OL@!_zO{dB0nlM z!gFt+F7NUyNhCRaR&^(Q^F-UNdORDOq;2P?>*3F3nWh8kFy)P{*Wxo8c}StuMNnsm z<;+VDG?+lh&iAggo7@wcqpC+VgjsATR(wY1;VlmOcz_~W!_%fteSlW8FQ6A=L!@hHTq2( znRQu5L=QAViqSEUW$)k90X5?cXBS>V`IYOT%uxBAi!>-jxtU0S(I9>L~6CFykfxu*rFE>}>J^5rq>uJ(0;*GlF*4(+jIjYHNC~ ztfCQvdPfYBkh+z#oCC(!^<1kcqB!f33iN_xT#^eTTe$}8P`Arer*Yat=lH3Qu0T0W zjpf2aBKq)#4f7O%C}kwHf`+8cC&jM{HoPY^W32g6gc@}>nX|AB$dG`21~aLN3A=co z{rUjo$URR=R2sl_v~=-gLJi_jdGTYzo~h@Tf7MPpA4urnxz&Gvn{-4s{n*YMirBQu z!c3qTxD515Nc)my&N2rz1)_(VEpffu0=2wt^+hh%tRgHP%ocS+z9&taP>Zs=mKJVO;1B)>r@=#Py#I<;^mcXO<6<%C3xWR8fV{WRtGjKuks zc8#_xkCqBxo#UZReGsz|YsbUhQSNqnT|QFV{{n}Yqyy$# zvkQ#YjLU(XRj1V_n z0<{IK$%P_BUua$V`w&Pph{)@=?xfoXb)iYbCTBB@wd&(JB?0v}n!di4I( zwQ3iH?sE^iacZIW0HaFi8!t>?#{k!W?aYA2+l@wAG~!k;7)yg4#ver03Y_GN_~%v- zwb*$1f;e-hhl=Wh4d+Ne|LcMlr>A>Ee5up}Hb#i>UK|d82=wECSJ-6wG@q4Ca=O7tM*0O9+{- zheEb5KZl!|uSsh|wFy`?g`#xn*eSN7a=;&(Sh+IUF#Xv?V2|zP4b3U59i+*Kce^;b zkN0fn2$E-WfVGd-W(5A!Jy}p8$Ova1ErsFLd z_9RhW^|kgbONX>25V&E7GG`B7s46+}%Qj*Nm7wMldEvnkz}az`94$Izpb5m)s2~Pm z!v;0=SH`{mX3^E9=*btezn+4+BvMGdZ;KzoDUurN__pHuuyQM-R126n^-4a6_pl8| zbH?HpfWRq`KQvCqtHFgHn#kh+(}2%r+N*fMc=~FH%`9%S0j=5L5bdQ4ik*y_+h>ZE8y_A?;Rb6fxW+?!?!EE1T5mJTQQaeU` z)EK6_^JcMF+kWln4yp&bbg3ReN$tAiKi%b3?qd+}Hs7JXW)1#TgA9*G&meNc!aR8k zb5J1IB%0cFQ^6ABiB|GlKBKN(5MV?VB#;;6_LD^&rSUodQ9`o!uHMti{^r5P zfM!uPRh` zyCoW>>O@JEHi6Q7+JA!aiIYo3bIlA`@BynHJ(fNFKlTixwZNab{S0rrRo#I0p4@dZNeE#Yge zs{J&Xca-u>ci9rZji2=UgH!;M%K2fN|57=taKI$kfSCu+Wl=Q-FGIH;LUAjq@@xw0 z9X#5b?kBeteztWFjYRRvfrU&*gm^aMZe$p5n19}F)w0yGk-<16c}yc8?;>Okb-3ST z-MrD4)k+aru!wGSD=z{$rDHn<>n3TFC|8hnoUS1xD#}o|CdiWHuT1@y0c)J7-pmJMR=_9SY1Oa_eL>*y%#bf?UN(@SxFk_943KPLYnC_!|K5x`dE3_@hNySG2@fl zoIB+Y(Y#CLz;)l-)qAD;th)T0Bg`KO9c6}Q+VzMVADYs(pqJ4t9Z#zaR;ECBu7zNXiFk;1K5Xz z{N)zJiTh<^WHaf&wGI5{0}S*-gUV5sas7N0^*#e;N1#$_nCx8hu6*{JgU}5Iqhiy2 zukG3M-CZMr)gI-gxU~il5t68(p%^9#b2_Tf0F5Y@U6ieKwc-C&&0N%8u*FUYoCuD3 zXarFMn>y$#w)u4A;oxZoQx(mz&ks#i?nR>Qwebizga`qtV7QsTQ7xn~S5a)apr}D7 z4`gFg*DYPQHd)hn*ov_OH6-neR$B7*&5+SJ3dtNkPYs+78e#U}llIa;9Q9I}R(2s_ z!%KiVK?}zU(W?F-1eSI%XzvpeG$blVUhe2&b-Zwx=A?E}PI4-?g{|l+f zsJ5Oaq=P>Kf5ROBML`~4^6R}%1Ei9;vxB^~0*MW+vPHi)*uYI%hUv|hvVUxK@d&72 z#?;=ltW(2+Q12)74XrruP%Zt1CD9HclPQ34FX9gw8U2Q6Z$;#q zlZ~HyuTtF0lpcWB&*W;QkAg=YWLrxI+$vErGz#iKe@$}(WqFs>v{BhmDLug@att|>dybjb(W zRoOnFwLJ#w4~&$HRViBmYZB?slj8q@ zC=PI!g`dO(;8Xry_#f$3Yd@eD?vNRsj2XEdk~mwkXmi`w{582zQd(VBu>Se2_vSG) zL?C|Z*k#$9-{D@dk}|zYs06j$ECS_cfWENztCQqW5UL{NZl}6{b_QvoU3$tj6@lbN ze=EhWfT3J{sfFz`TeHfqR63dFf=>>XEMH9#q`6nvB;bswMIYqOXlQ#RDy_|Od88E1 zu|oTYJ=i*rDblY04Iv%2nQN&JE(aQn%mz%uSEBlfnPg$x$zDKwAO&vQMx5YvTRA)& zJ_}<~xxMM_vEH)u{(_yL0gi>lDiTa}h9urVXi}X4>+Xp&SeBTEI#~#%Y<+xNpz`6v z*&z1wwqFw1yyfl{a-s5)Os90H-|)`Ax~~K7%=~+D_LSNfky_MM?IY0e<`Wf ziWxUKQ!ZfQ&k9{Qo%qB3e`jei-KuOP=;mdz{cV}Mp*Af2t0#q67Xe^5Ti(P~u_IE# zpLTn2N0iMoyNDOK6s8)7H?3MKoA5BcmMni4h{pKs&$aU+COI>6{l=s0yhDc@_msL% z=wK0y?7B{Zi4Mnoj0Bg-9}mN&&7M}#*!tv~5TUdj@JxThX*aH}AW)a7=*rxLr<2@= zMF}`pKu7XeLhz*Lwgx+J!dVaM>}bLe8k<~lb#sF`)Sur>Lj`FSV+%l(ZztMvfemL;~3E2GeFEZxRQS^G?0or7`E3=wY60L( zdR9D3)#uy%XyQ7q_sW@lxc z3>`$Xr^)0?cvLYn1X90ErUt!m_9O(Zz@Vr=XBhfY{8s|KLj}XuWG0$qqZA*1OmvCD zk$C9h|7}G}TRm%PVoari&aS76&f0kzl=ZQ1-=(SbkhbWc{We{l&aU4Vg|kxFM#4!u zqGMuK10n>^@mO)AE<>BhV-IgI73Nd3azV`g1Rm_@*gcYK!6A+M0cc);D{&Y8|;YD`*x7<7@H%cSsDIxxff>JpUS2}zD5h0Q%q z$wp_ZTAWrG375M!^DgD^O!;cxGN4`bt#^$HP z-nQ_Nq@mop`a+~GgsvIWl_ z78|ToEKaCknu1U_{t9TBrYA=KRmfLn0w3A?{v#Y)w3f1aR3gm6BBfNPC>_OE^hrN4 zH*Brf|1;zh`H`w#K8RL~Wz5eyvQgmfa!#%*e*I3R9h8P3HuV#%MScwd15_S3C#Y(A zXQF3)IlqC_URe(w1yLC*lfjEkzkpIP!9a6PLvFGlz?kgOc0eT#IUM~3A^6Xo#}r|( zB7N}^+Ez#v-_I{Z$oMCfxtX5JKJYRyACpiN2h0!`ZG~~Us!UWflcj-^QqN8ntb_&m zIlxO3u=?9Pgu6z3&DY#7cVEU zCiB96_(5M6#fa&FiQ2T(WM?xT#dilUiy{xqlwgF*rCfMkpdZ zQ2X7@AAo%|OI>Vwj`peW84R+hE^U6x~Eeok*Ep1aAR}-#=&{iO4c142E|b*Ww%U(x!>ok2 z{zYg`7o);M(Gfv8?0@LIU$zIR8!$r_dgjPzb5v#|Ma!8cHse_C!)QSud}K5ds&;FJ zU{7i1TJT}MR>BZKXzLx*lX)3#S=}J65Cyxtgt&*=20^1^Fam<-*Pjkn7DJt&l;z9n=hux!t2nbhMHWL2FbWEnOiUV z;v7CbVFA0EYW)GfW)-zRVq@NakV7VMUip*rUuOEwkVB>bxb;`u;puMm8rhx;KZ15y z1Sv@^?BRh%NAkr>ZAKw*rMq+zLy_kl5!dW z2pd0N$U9(CneP~@tX>wkfj!AwMoBW#JzX7wNSk{q`92>aB~h^#<+~9JW{4Fw^I7nl zvSnKH15x@YC#*ML4qDRUg@M8Z{1+FmYU~HrS~?e};EfMmG-3ae{K$yH#$7Ff474S= z3b+dI@Wgb;pDT_+-*amt2GVfUizgt8s4cR0sW_hY)1*WxBr57gfPKlKBH$M>#)T>Z z9&?3$El!Lj+Xw7#qUVa#hTfGkKEHLO*Z6{aTD1=^Q1vT1l4iX_>8ArPm>`16Z(sxd zFuR9#2X%OZuXeAj8pC)za!nC3b{bw9UA|^FZiI6ojIKqWHeGR9a!nrCGO!X=j9B=+_7$n|K=!PK}Eu2!3V$w;nJNQ0=PQE<3tAkk=Wm{gDnZ{n+7o zVUgq;I4EW$-?(@i{cc6LM2V-m93|v353~Ox1 zQzstwar}cYLCp1mm{orDd)UeyW;c&wh-v=_H02;WHX-DbSI4g)Ia=D1A{f{X9xe~z z@?>9Q#WshA2nZGbt7WkG>k!}i1SmRbstO|7+0O?(^CVuI z7!nH5Ff7(VMGgn5d>8pi&UR4fF-WOruM`SmOts!DF@<1no+{H`rx)0F$CqR5`sFuF z*{niYzF?E%JoC>Bb2{!Ew%UVdr-x#yba>}!e~0_g+LXUSRn;__>Z=E)O)Se7T~v#M z?zngvf(_Df+ja}cI=+_jbSS>7FpdK zprRTwQE_kuqDAcs(D|dDLd$!uIF2L!EtS~-)bk4C;L*CK8=%DQ>QTd0YdZe`1I3wS z$5*V`$Kj~FH=(bCN*de#(b9C^?Bx|{=5W3A*~p5UoI%?F3!%n44m0% z0W~eVTS381bhwNXfOkbxcZF^vD6H}uvD933s#ykc^*U{$j$2fb{zMpczrYZvI#3#GT`0+jjr>7H?SI(WCB%AqdhD-cK$aKID~%A zSsPPtj$_iU4WQodi}oYELGI2Rfc5Zk-tA+e0Dv<*KTeqO9d@=rO(*D1w) zTIu7HT8-h)dyLH@dayzAp&ymLcg6hrjg(@)0vE+a-*5!m|$l({Yp zY3F=&BUO|th%+N{#a-OdT{6{I)-!$$GavXq@%iEFNP}9%ekrnzs**Ry8`cVGqq>m~ z|6T{R_(d-j*pS!NN@-vdlsDoBB-uA0(Z#6h6n;b=OLlWq#&Iw^U1Tm78 zn~Nr@cMecv?8ppe1k-VUNyQ>0n<75Dh8q{pefr#7RNM$Udm`C zkm0(Lne)TFoJUfyf}b3NJ44{bT}X9j!{<7sxe& zmY4X=^&?~+4V?nDmeAhH@9_6DaWEBfC7rrX4zC*!*d zJ~?AQd%a*7kw-GX$M8X|{lYQOZY;F@sT33_o8w~#scSTcwz$P zzgKs^Qp{~*%S~&1PI2GQVddF#J|V*v|CzuF^ELp!S=Fu!>_C?>q=-y~FI~m0ICv$V zHUpnaj7)p4uJV81)2Wsrk^t*WC}b30IlS-*{&uJiJ(_O_7DFjO8*0gG!{s=swgkqc zEznhvB!eCO=!5ll1=%*M(l<%xL@3pQT9;%QC@>d^MoRe#ehroK^E}$30cdz766fUN zv>8guEivkPoh`~Dy2Tq&(SFnRRL%q5J3SHC=UlAkCXhuuUB+D+L=cR*THu- zT3FiB8}f{k(pLC7Iq_;>udF;^A_aEZL1W0az0S&qn76!yDf1#D0VdISROF#ddA3pt zlmDu>)85r{sdELJQqe`<)~w81J<55|)g-yd1-FQS6=lM3X8_d!VWdw}x~dC4lK2{V z?ZXBg;0Tiz@?Hs!i5#hds(bP8oRR0DK*5Ba15r_>mNOH7sJGrc1Xz_@CVK*((GQ-G z3+oI(4EEQa65(kIPKde1P6voBBrEQjNidAb z0nr;3x?!!wa9v65&hE~ti^+LUNRf==%yr}zRJd(9<$=V%il}#Hy-hENS0AMq`O#AX zst!wgele+m98BfQE?n{c)@vCwU9B3~fjS^nq({BU#T@+k#W5U7+A#nKz0Ui zl{Lw`Cs(&%_jQ&;i*$dNH9bP7Alm?Du{em5C%P8B^Pm^6(X(T_2?3gRz`n3n`?Jm{ z=1nK2z756;Zf;$fnb1Kpf8C@>ctT9of-|W{7&4*EO7pzFZ0SceKXe=rykK42+i+IU zsdcNoJh!R7sPEc&tM1a)u+lo_D8PT!ajU}k>4c1cz(?%kI5sHdRmt5Qn{f2MCmcd# zlrXP;x2%afun=k!r!x&u%N|_VCbjprx6l}`V15n&@>Qa`rQ9AZp2g1gx9dZKf02cg zL7R&I-4sKz-MWL#c`vBTo?`@6t-$j7*JMB>6$S{*(~HA85yJSXm=7OBE00ptWCl`s z1<~qxY=F!5VT)B6!GP~BJu#ZJO(s3LP{%*6e&27ewZGhDg{-GqZ6VgwI0@aaFq2XH z6!Lvs&J5V;E9At@-8o`k-rA3AP9(7<`p0{97d&QqgFb1JZq z&PuB@*|z0qZ}YUYx{nyFL(XN+gxX}T_Awx%GTVhXP93H<{4n5guw4|ybaHc&aj7>IuUDU1M>KmbqdFAfhP z+HGSBzZJ|p_ay~S^NokNig>YU)enbSL*c;^YE>Z*!c05|aVfw$U*m3VNFmTer6_{f zlp{CGoPP>(@8FK&qMr{(>AHGS3YJKgJ`$yxZvzXBni}n0yo*u2?yme6Cdip7L*`=?(>q+gc!G<&8oYf;Oc0gqRmbo1%Ao=wn+z%VXz2g z2wzcQ6U7E>l(rydsC4e|Z~OPCS!B$;K~1gFpzni?<5SGVLk9{G&;Ni#7m=l?*~kfS zwEl-zg=2#i2Jfrobl@j)9bx|fVb|I%#@D17^N&3gk#_tBM4uIM;@@;uL-)Uh!7SC@ z0!CK63Xo@n7f3D#hGD;hq{p$uRXKc0dSuDZ4(tdfr+m7~olcTGoVH6z#lNmP(JH%`A zx7;%lnxRV;TprEj2@>doR8E1Kt#9xH?E_+rT6hs@gc-_GuM@xCh)7E?XYfLd_6AN zu?XxH`%Mt?P)mKa0mTKK>%1R>CNVDz!)4L&vnPxwRy;i@)hm@-_ZAt} zw_e190h}Hy;rYQSa4Ljagrz1CGeu zHrC-a@>;g^L5dQtnk1+a_bd7R5b(Q6HZg=@KpKHMD*pv`%$ZfGlZ+HCb9f$F%RA1X zY?tu2gCq$uHe%-BWQLy_3k!&`+H0r|vsBAGVR`DS`I_SYmF1L^bV*TL8ErhOz_`tAMKMc-S>`KVpB>KSFTH&@QQ3E6&~PPN(!88rUD& zfEaz8xDyDkc!>eu?sIswHPE=)!V1%1AGR*xHr&u(u_`n<*1Oy0T&Iyg>nMon%8{lx zRMd0JvX(0)Bc~T;#C>5Ia3nM8GZ8yiq&>R?wvW(bW8U`{z|H{w%rLkKu=Kwz&zOz^ z<7|zc7c5WLkFc*A|Na$-#>Oc4lX$w31%H3s=usWd)G47WT1)v>(*rcGy_3APwL z{I1n|n??CpwoI4FTDU4daU3hF7K55ooHaFuv#U?q@lc%^1^V!`Hq2s3SPyl*&m{q6 zzwGG^n4y(LwZ&kAS6^rS#+Vcfq#|$I>*$FQ*jL$7P>I8QmRy9u-D>J%bhj}y0#m%- z=2-?UHVhbIPN}EwJ21nd*HRwFxQjqd&xX9(Kii4GF$N)%pG{P@-+Yh$G)KD*(jJ1^ zh1fyqV^LBV|BNrh@Hyo>my%OY^Btn<_iSp)CLlJ@!#Vy{7oj(HR8advD=Z5s*7xds z$jrJMFs#V)3XqD@&jMltKw4v{`mA-C095}rUfXXZKsNo?sTL5aObSh$ecQ@rGbUp0 zb4w!z;i1!r<1!fb6*N5vA(h%1z6-vO5Ma7VtMChca5;^;`^&&vqeh;Ea#O4UFLDSr zi(IO|)9@5w9MyNR->s*2!Pg5~;j>5DF+8!8mvX3~XCw9#6|#?QEby#-ndi516=xR1 zD=Ka(X0JEWvGt_~oeOp&VV3jS)Lysr5Mw*$S8huJ8}`-zUM@BzJqBavcPC2FcY3m- zC|3ny!znR=VN=l)=>PvMW0)Plyw5u942Diob|Edpfu@UXbo^um0|3_CpQ(q*gz1yY{QV}gKKo%#51 zn9=Q%fwb3{^2^;xl&O8SvpflV`Lo8=^?fE+!3xXqs;kc!+F|{cUv0pj23MZFR3cRG_AgFGVoCQZqL~M`#~}7 zK`7AcZiZ-1wLHW_8tF?n{UTpIhJ3%?DRrtWIRd<-snA7Y1dskHn*b1i?|(YIN_ejm zx7JV|_t#T>kRD?kY2cxt?a^@f;tNFOO5zl+G$xJ*+WLJbuzo- z!0gIqji>ZwbRcC2PeM&YPVm^ba`^GyGw&}yMW zzRMZlWP+yRM#Iywt4&lkBg&<;*1)#l-n_{%#L9k;resT6PFhaD=zGH>obcsy3447* z*h^wJe=@Ch)3@Bl6R0I?;-63Q2q#h5|7n)gi#Q5ME+LN~#bo#6b%M2pe-U=DsxZMiqV zw#1dR2ZNvYyVS1Lx8*(Zvvw5Bzyq#+tFbZION2Lwy~mA>$@=XkTn7irh9Ep)Ke<}}ap0=WM_GLquQ3^mS z!UZ!-Oq#CGlX+Tm-9*5lM8q-$0M>Yv_nIvvWsdxQq|fJ&Wj}?@ky`|)PiQ|h6iw%# zt=5FfAC>!7%l!ozJGsQlbg8S>7>*vjHVT^A8z%W_7){1G+yGTcr{!7M1l`B>N){h5 zaoWfQ?Kx}hz3{axI2@`$?P-hijup+Lz_&M0Xym|QphdBi{fazL6zRZfjc0WrO z^$(Z-Bdgy99`UCLf(`FfOQ^m!h)ieM(|b^+3x>cc<~?@nWYRBB9<18nWRqZxa9wG{bwqJdDrIV?jPSRm=A@HedaZ~Hd$ht@8{Wo_0>)>{Zaiqv;@YxCOO zH_GgCN38_|P4-Nzncz~kc?VE4KN-%y{CCP{aCSq2I+@qQWL7i~^2bUyYMu1e;)p>~ z`tDBk$Rq`=p9XTf_z~~b8;NXrz`=+eM?^ z>Whi0s!*%tpN#{$?=*lyOU6@{9}+?y&d)>DRCtFN`Q$nlDl}?jHghbmXtoG`00Hnp zt!UqiMIv^d*7{kaa)*NHnPHiB%FbW|9Nrzzd@!r6%1eI7o|dnOK%Oi{t}q}+)tFWs z{tup8cbptXmY=Ka^t7!)x&}ygAv(v;c&&-blR0|Ghw4ickesS$ zFc=459mi+sw6Ug_^Brq;io;fvl4-SSjA5OpX2QZ1tf`u#Y?xVZp|pG}(QxX$ z9?I=sqw{WpX&-big`7FmR~#dkaYP643N%lGihpA|Dw?eVkNIWsGjM zbT0~0_Z7qrLBQ_m1wu{4Z$TPXUt#0^5@^ej1P}T54oII2^C0W^=%i*hJFoqWJv$=INV~aT!AI}drmGl^Ol`VG!Tvpu`659={42?p|Bb=;q|#6g>czBV-1;~$QFAsP;~%A^6Jtv z7z=g!R+F<9vvnAfE(@h<*Aqg}OcK9H2BSU>UUDb$9(wF_wM#blaUe%mI z7>W}|tmv*iluyV;ejmO1X_VkLL+A6fIy?5{)^i$E_-m1=64+4;BQ8Z^(%}=+3KU