From 0f7d978071183ea382ab810eec63e87713cac389 Mon Sep 17 00:00:00 2001 From: hippoz <10706925-hippoz@users.noreply.gitlab.com> Date: Tue, 25 Jul 2023 11:52:47 +0300 Subject: [PATCH] implement more syscalls --- a.out | Bin 33634 -> 33783 bytes grep | Bin 0 -> 86904 bytes myfile | 6 ++- sam | Bin 0 -> 178000 bytes src/main.c | 49 +++++++++++++++++++----- src/sys.h | 104 +++++++++++++++++++++++++------------------------- src/syscall.c | 73 +++++++++++++++++++++++++++++++++-- src/syscall.h | 8 ++++ 8 files changed, 175 insertions(+), 65 deletions(-) create mode 100755 grep create mode 100755 sam diff --git a/a.out b/a.out index 30df6b5787cb9a52062f1e13193395080a0e464d..8e995ce4e276d6a3e964557fa6f46bd61d340411 100644 GIT binary patch delta 4977 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 delta 5133 zcmb7I2~<;O7JmOrSX}UdT1AnqK2RYdD7B!VP-6`W8f~grwTj550f8i1EfB*C#27Zc zb*WqJjGpOY9Xo05*dl6OTDR8DFjhN9Ez>zQsnt?DM-5#v_kY8TjVd*v`57UPt^@_&dlA8LZPNpz8Y@iPh zBVWUg@EB47$8lW@SHp)q(ZhP6+Zy^r#Irv~LP|sedo2=*BZjfZBCYiie`odUF{8u& z_)wVl^DX#msm>N|NVO76jzVxmn6vqjHG!YV`H>MQyTb(=`90zyM9SN8LK#N5&uAkR zmi_!TWFJiopp~fN18tXjA*A6Xg+I~Ltc@VgtVJDDD5HM>AlVDB<@W)cc!>bhFaQL9 zPmHN&B&lAYoNhpvNFsV?3b}d53b}+%jeZDS-r*LWMx4$&T!Hue^8F zcI*iXKi|7May}OomGP)-+v}1c3!U5Wmd1?4PR0CfnmA`RukvcH^=g82c+5bbAk!yE zA09_ap?G+NzLc?GcQ}t@%gYLN{#Y0laR?5MYvBE8*<3xLXsqH(T?tMP!0=HE%cwjp z=c^L&QJtu0RP!}QCwcaZDhQu+qE4{wz!1biaj61J7)VQKvm*wk(7^A}BZ)bD%GHgQ zGECALY*i(yWm7eJ3K`D$p#(eabLVj?qDM;7Dz@qAfYCJOB3&Q+8OdETTJ$IAhsNT#3OUdIsKsZJ0G}>|k5<&rYY@qT*$8M9Y?2 zU7d=kf&bfnst=GuDo|`s`;`! z9wW{Cuo%O!FGPW&QIET0{*1;TK_z-BePvjG|KT$HQ3+gbCTelyu;xoN0@7u_`wJcd z>@#~AE_`PZhg6g{%>23j5xX02PkK-{m@|eW?~%{Vk4wuVa!#|oX9uA?y(n+X$EVz0TK zJloBQ*N1iBgFf`O+h~eTTtg6@oYstRWr>0ozbvh^z|4Vq5q`|~7(PR)T8Z(l;)elT#wvsG}OdQllO=G-|Z-Nd6G7>9_4Jj)Bki{sO4E%<0SXx_U7{eU}7x(2IF84d!uv0j%9c$aoa0sPL0du^$6%OMAoYq(Ni@6eq<+$S`q~CyK^_T-`9FM>UAFJ=h5clfp?e ze3q0b3q=ik7M?6;gIH91Ds6r9RfTycAB?iLR{}9e@jbo`wvLT`a-Ar@q!3OAD$Ggt z3X%L*+b*w~60VPp)u&Lt zH!hRSae!@HRB$}Cb+FoAfG(bGv%w0E41MJ6)L(pCsxMUa_VF=#+-87AmD)DZb21w}? zSepGJ{sC}2yMowYT+S5yXkVSP4xjgPzQVr+{yEct(&uOGz}NndvvTn{U75fs|EtYg znuO+fW%TLBEFF!#p8L-tk4}cf?vef0};} z&=t_Sct>}RG}^jsiHbZfw&Xn6^L~76t259i|Kj6XNp;q~%gV{@N2MRY#ClWL`BImx z`knHe^Xd2nz=eWZeao$c!pgkT0uPL$BY&)Ct?bAb{{*3Qc1J#TpX-u$^%@ zw!)0!O+&gPEcHp_rEs@c9a!G3(N^Y{uK{KLP|U-`cDM3$`tNMD-&!B4>^T~OcBQA@{^jn?g@P3yki`(LjwG)_ zx;lfbfEx99G8x`iPiDuz3wPCpBpnu&PGX?sr%b;p2NkJ(UPdtb5Oc6nH|y&7gq9;s0mZy?8>GduorxW6W)M| z@)`Kw3P;N4uxTeCq{0%>-NzE2YWj`#!n~y#EO{vWqhh{iT=b5b zm*DJ|RVR+B4=|EuQcKno6WL0(5EHvce7-3@O~g!IAp!-1HPxB@(E-^_Hjzzy9qMl& zn}gtT_3H&Qo5|)r#_2#d_cB)QAp+UWq7I8_0lUc#Qb&*{Hw2i;ULs@}*CLvqk)GZY z^}Y5H3;CFsrGm7PG-JTOz11Y$M9$*MxvxoTB-_dBWIIh{FI=nP$0V*to{1blOe5LG z)=Ev!)UpODKWvbg*}BYHKld*!Lk%S9NAea5_DU0)HR5d`^`t>UzmAv^6WK^MQt3|6 z>tEzdD0(fkp0!|1TZsw2*GEjwJ%lANQ|$&L)m(i5=_X2>M7r8cYAIDEQk8$hz(j5Q t{z7dN%vx7LZo=_(4)Pm(WN?x_@KNnIWGuWU%m~_UM280Qj1lW^_&*<_93KDx diff --git a/grep b/grep new file mode 100755 index 0000000000000000000000000000000000000000..8786dae688cb205700561d653cba1081f3778312 GIT binary patch literal 86904 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

w+Ld)&DG3>ln8p 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 QI0!QPSyBux3b^op0gZ`*S^xk5 literal 0 HcmV?d00001 diff --git a/myfile b/myfile index ce01362..c15ddd1 100644 --- a/myfile +++ b/myfile @@ -1 +1,5 @@ -hello +stuff +stuff +stuff +something +stuff \ No newline at end of file diff --git a/sam b/sam new file mode 100755 index 0000000000000000000000000000000000000000..ab8e0b318b523331fb4c22a912d7e205fc16536a GIT binary patch literal 178000 zcmc${dwg6~xyL%%rq<{&+v1 zw|vN~y)Mss?(12Xy>=}2t$&ZzU0D~49pYkjU-?-q_TVY8#?pl``*++w?T6=}=apMX z2Zir6t>-s?bJHDqT-Dvw738~{f}o&3xz45_zAm|6Iu_)Q4RSN4+z?C0V%hfvh2w&} ze+qKtST+{q?unOIdKi?Emq}15vF^lN`LIN98GM4g@5)0S97lJtV(ZMAF}ME%q-Li{ z9k0|}rH)dn>nu{uN^Lwe9didN)m|XAmr}vEDBVq|=fTQN+q;fF>ZdHLsf=mIgO=9{rv2 zgT|P^g_#P?#+kP&4wV~+jIks20NSL{KVXH5h-SCIssH}Bgt zne=a})!Eb-6y`NG_E}?V^w-lXIF$Q$Ky~G(%lxaK(hC#d&Mo89u~-ISw@kT%WKg&u z=AM`k5p(Q|bhGMM{=AMXgK4k2(QoqGbFcJjfaYDs^IKg0npkY;Cewzcb?Ig0Sfcm! zx69?KKI|8i2NLV1qbb?l6YDOkLwgdv-xy^KXaiV`Lbb~r8LXPu)E4B=Y)b1-+^s9o zV?mFh9tUS{4eH+VHF9sovdKs((a+LX=oPhY%azYdtcIoZvVy<4@+UJF=gMbgnseoI zGG`U{M@Ll6*p>V)1ipb>M|M+V9n(VVSQUz<1H(yNehQ3qckbA(bfjmn^se+FpO(gz z_9IW`j2-2`qg&SN=+JENn9_R=Tb0$T2sWU+%z-ELS^alTTGZ=eae zdy@nB&n^Tp*xMBFqklM$tuPex(T_Y}9Ai+Wfx-GIlU2mOX^&2yWQMi)Nc`a}$@1)N zL7^?Qu!-*k(KXHe*qjTi9k zn2-!fUdT#%HvEi7cgdy@x?EYin&67)!FQE(-~Dqec3*GPvFclGRmFAx6__p7XWvy3 z)_u>9O?#9B#-?_2!j)8``>e3(1p1#AAJMpY4)SpIBD-e=yFCc{c zD_tW!HKtr1)r4dTxa{R@?D_lOW3kewWL&vdT7x`HhO^yp7SZcRQcHM;zvm0M7o;)< zooOAQntUQaTENxZBe)iSrM_?|MqJ$eKUdR+DzVG~#Zi>^-4o$bsg!hI{s#A?c~wPy(mg#|eNLRx4!zdxUWK(AAx36#&|r^} z`e$6~gTJPMZqswL%H7*u89g%38VeGAYa6H}Ep@LiV>B5oto<#Grq8gUD!W_;k=rmo z8Zd+Wtftn&CG$;OZ)5Tr1X~NYwhG9tY8e!YjXVT-Vh4Ll`KLHPgtmIY=GXG-Yr(2E^Athh1hq&7g(Yz%Fy;sQP63W_VHhNQ<4Sea z&7UAMq^jCHSkc`mk#y&tMms5SRm}@)q;vT-5A%0u6WBM(Hss~aHg@ycEWaT~(KrC$ zNR_KTBk3jzG9FS5<>88WQT{&9U-w!Mpzi^618yJ+zB0Q*cv5r-b~9jQ8IA6zD+H*U z;1COviK3^(Z*KvJ{u>60lax}`TFYCwSgpt$x=jLb<@Xcqmf@8mrB=YT0qvH(7%>jl zLvS|ZG2B61bG+aTZ|tA5SYf?yI>~3 zXGkA&+ZJS7!X5*}qOnGbLQ(?_$)x-ANv5J*VpEXY_SHo1dYb08os#IiU1ETxfgjde zMyTY6LRDsjzt1ajM((+vws?cMPyhoH{#?Wr(d&LcT7isrv*B<}gT>9>(^p(>V)>!; zKJ8VZt@cv(xEphVAkJf&$H+=lEn2#pW{8kTn;TsGvz{Wx?{*`|VoVYAAPD6*xTimF z6=rynnLaK^EWeH-L~m?a^Lq7Rbf&32zlNbJw&EK3u*iXA=Hw@t-NWA8HdFzPXp3b& zQgy#yG>sKg!LU+c5>H)UMR^hC(os;8yEi>B!q}emuKKRfuh4UB=mLP7tg{WEX) zmFA%YMQK85Du1e$TN+eIP&LO;f+p;_I5JsLP&hFRHcDSmZ9JpK;Z{F={qMU~Yog~n zv2(l0W?!LP_=}2^1$vT;{sl~161{n8OX0G37-L;3W|bQ=<8$TliRH5;%uT`B!$IL9 z)NdUniC*cbN_&q|)7r9yQw@{+X6AcXui2%wGc9N?hDexY-&fl*mYGo81C(6XbbPQ) z#*@oco6%KNBzmu)6dB+^_Ndk8?1hk5Gv~b2I0Z|>A!?nUj!MTru`UECML*6DZFm*t zDrK0eu^<@ixkHTM-(b&r`=tr+D`RsSG(38BeJb+IO!Q5hqJ9+g>|^f6RzD;e2r1Hu=aO!iBuBnW*onb42h-2Uu8}+YYZ#A z?JFcTO)$?rwYD_2zcptJm=qfN8Mymd@CQ0u2d0&W9_RnxfM{2tsBY=2Q_4CUJ)WbE zBg;?9Da?{nXizFpsxc}|xsL>9^_|j%*&zG8NXW01t@Gsk(^h^wbz*jBDBK!T^o1Qy zWG3gY5jL{@z3*(a)(;X$#NAhW4fU>pJ0$5 zCvG1;7hOLnaXS;^Sa#gB^+vy&H4)3P8JLEtQ)^?D9fqmQL8zFlJynp?lB!MxHe*6l z;`U6_K^?DW_VU3C4ZCl<1EcdimPbv&&319q{Tu3|Hbegl!tGLy^-^ht=~d-8aTY3f zE-D9WDl?e&(5KjXP`x$l(;y(Q(!sPOl4K-kAT#D3{WV1ltm25eh=vG$lU8A~g_yqo z!5+mU`d8@aDaYcm*un|LCLZ0n$3}X(?e;JgFlY!OUQQGpwN@e?*-2k|CUzx!6qab2 z?4SdEEg4*;6ucu){V$Cw;8!(f9*g9w1?S4@X=Jt*5#f68098?^xQeN_qT2gd+_E^g zu}|@$A$MpU;~}AMqx(5VX={ZFf_U@GHL2nyvGrlrwxAJ5wx++p9A*LeaLyX!aWv-aZW1NqNk!HdcYk`zY9Q~f?q(apUE8B3|0cAL z=p!`PIEf}>^2xv~?kR95UQU;=sMY=C)-cs421poj_uJcGz;!6C``~!=v9sw6sMBiL z8BuI^o*s4)+huA;fg`f#SJpBP4n^^hEQ)BoCdhdn(L!yuks$1hnvS~v-D5dNSmy4X zJs>)1>K7PREFo7Ju6Ze3r?6%+v?4U!sJ0v!0Xy_nB(NDeM*uvw0`N&vrEf}hSgRIH zN?)-tKy!T@&f<9Cz;N(g5RV35)|3308)h*Kk0mSjR%7O@+*{)_XXf6TfIMw%8Qm5d zR^P+s3dHuee^8)neWPHX}FV5 ztmMzg9unjqi|mO|V9?ZJQOJgN_eB=GN|!*jA4s?Vk4Zg+PyhxiaDqW$p(mL2j9hs_ zcAt?p`aCq0j*TFgHa$qz&>f7d4|)!EX{7ODJ%kQG2hRsx@RL#6bR)AH@x*LQqZj^- z=m6cAWk?U85upV9i0-8zq{e6K%l$)t2D{7_S*|=u$8h%~-{)TR8Q?~6z4vwvi~tVP zlJ0x~el(oC%5xdun4+%6#PZ*RsRpS3si`nnzs?9iUaFse0;bP0-p1Wnxf)Eg(K?q+ zHhLSID>Tdk@3|~W&5-)#`=NbKEHk6RjqE{1*g)+_f!%IL@yMW?Ml!QX8^l*4$>py} zUCAACfsE;o#>C9iZud(CS0o!ISPbY?fc>!}1U9tBLdOpvJ$RSsokXI1Pw8)fHIeYRalFlM{$f3q%I2aM;HUOU5HQ^wifc|uQ6M+A>dw_!Vw@eG&vXdO$-y$#c$ zf@Q#iq0uF&9S{aIVuS9fSFM`{e3oxf;a-WMBm~Fg0D}~nVF>;pWz$}*4gtS{Jop0? zW~%BeC`_{8fyH9YyArFere{2u9-1HN8P+JjWXxLqh+Mgc8T=owjLu1Hpq>94+*kL( z^faWSvp$SDPX4Koj*EjSHCMcNhHPAV4fz`SedPw%(MHEWS4Q2o2%nYnQ7Idl3Vm9) z7_DIhw-OX?d!EPUEqa)pU-u6lRBbkoXXI~xU5}d9L1!bnB66lPJ6!q^5uGAuXY=p} zkM>l8YozQ-5pyfz*ko$VI!oAE@VbqOJFowJ)t8FwqPH*8+t9CU(Zo$Tob-=DHicf$ z9|J9#q}VDp9s6Wz4xrZjLpB%lapfIopepCKPRKruSvRR-_Y*iOrn^`GzyQQfVeuBA z*o-i9u^&jQquvpjBi*0=iTk$w(cv{naBqftFEFGQcOR825EX9ECzPTSjg#SkI;a-= zj%+ch(&7bX{ni504Pu#7iXWh64L4i~8{^re<3*C$t9Y=lq)e%byO&DEqser4l7cp3 zIUi)F;Sq{yFhY4I-R-cwydK;MYUeejYq|@2GGS`X9?`bdX+&#f3{`irCCQQ4EIq1t zsIZ};q0#{YaG(`dwT$F=Acj^j$YA3a8QEw=B||CiD3zvcItrm74)wa-e}D<}cA{E8Vs z$dnJ@jDtA*ud%7MDsiFL>2 z$}Nf2h0)snY{UiU%7-LY2MjZb-f44=){}%;?Pd2dr70X`z-Yql?E-GA_6qO-Z3^XW2fSF3L z&)X5#@)`H2x^BFfoA-|9=H8e>C$w%S4A{J6Wa9xm0gqj1Ob z#t1|44rl4GuUaNm7tVUMVXMI`Uqa1BfTGKi#z{iYIDC^_7L`Vmkt-jX==}k(bLFXt z<$dVqT^hvmzO@P9upXxBnhIa)*xHkyv54 zz|e+z+*D2UP8XR-EQs)BJlM71=%Z16xUXpdHEoob zjQ;6aYeoXqSHBD@!Y>HeuifjmkF0xvN)*w`VYHYH-skVPa)Ya?3v^Kf8_=OL3}67knFJ zZ2)8)vB(ll%su-dpM{ST#yHn*ezLoT&mEg>OSN&J+%M%#6^`ln+rm*y3N*fr1U|$; z7{yT!7uU;+1%E{U?+sCKPr>pXdOm08Jzqo5LZM@G_KNZ*W-E)wNt;pyjyZ*Wx&qMX zDzRM5C~j1DPrU%QKIwU5(Lg$w_Oy~OPIq7S1h0Pl`1QiiRFK%``Q{W_!`*p8Q!-v zy1)L8enDCBOPUzi7N<7xSKJQV=@0o-+T8)KtlTC7$Shy=*nR*Pj>(NvN&rZrZzwZQZ1mHM?zh!zLs`F6ZrWfCJw8Uu)iJVHj3p98ZJMA?zZrM3Uf)tx>HiI*20M#DQdZR ze@T|<1|=glA+_yXY>-56VzM#x6mS;r(F_dL1ml*W|0Zk6FY5qJRts6Fq3h{ha-9!M zWXqz_EaJ_%v&2OGX@yydl_w+0+&d`rm4GKF^F{DFCzkmPaLy4NAe>X)G_%m&F?`WM zv+^6lxVFjE@A<=GF+mlHsNaO_6QWL3bnT3a00s$N!F`WPLag^j;UiT1KD0s9I;o8;d__xPw>If;~MG&pD_D>m5njy#kWvA}a!WOF4wt z{VR#DR6@d>jr#X#o9@)uKXf&f=fKLWW<_&ECUh+EEK~1cc=^kgn$Cspc!RbPXzWq^ zcG}aJX=lgZ7av1wHOn4f9`IS2zj*X-{9ptDg0XDF(pTxepC;CCuDr=MEIh|H8@GD2y!+bo@Po(_;iZ8-#sm?v8lxWq4QF5;0{VlK}A+hJ2LO36Coe2xqdk zJ$5f#l2kw`DWwMdLpIvi0Fy=&{A7(zLVWP#$*5{<=n;7`)5t%&*G>t@acblZ@VC~#pf>D|IX}LxTK-uiHqOIPvOF3 z-4>W4Gy^6P9ow?WYIdUc6_8R0exM=BraU1ZS~EM58>D2~)6-rpyv;% zf<~oyh4hH(by6GQ8}{%PHr86+5ajw{5mW2JrL7%r<5$}fm(K<7;{M{p15d#R@@&L~ zTV3idT{@Wxh0iw>&Tq8yp>)BfOe3-2m19J*^XB}u@sjQ|vrf7X5E@!HgEJu^LdDOz?QyYKBMQ;lg%$Pq%J(K@VUmamM~z} z4E~R!DcXiix&|W@nM6ticASu?^-bPWRLHF^pZ$P|NmW+3spbol`Dc*8I_X67JLV6E z{u9o^4U{3t$_In2$@&Z1Lgp9FLw~W>_hQkyJ8D=|cY3n)2WiSBavjV;F}Pnrg)qrK z)2FVjhXvL#B2=G9&J-lEe1-UOX{aP$laf65cqnV4atrupU=}7NQcjgCc)cO6l z$70paAOZacLE>&|KLm$i_#DFUyHq?z#j#}+zdTp`=xmye7wCdFv9)#l zL3E3dXj&1@hYL41E%SL@;XcwFEZpXw@kpzZ?llCUdB_}y>Y~5JQ;V9sxF?8feXRZE zdwgoP`!p$S;!I@?1K&7zpst_ouKVhzD35Sq1Qbgon%vy_4BNtd2APvbWgkwLqcK{|2euROcbqk&q;#yYknuDp&c98?$Hy=bQK`jWAN2;`UOL_DR*GGb!IQw3oxYQj{zvl^o-EK9JgHGn zh0|Jl`e{Lgi^gR!jvy;)ejJp18Z-%K8+?!oZ@2X*r1d-)^`gVdjZR{ z=}{`0F=Zn~?qw!{w)Mi~vV{T+pqngxMF>WFJj7mFyIF zqIZC{0aMQOC^})aL!D$#bB|zZRJxj6!Z>&BY-_WU!q}4ii=xe~`4p$qCr(iwHLYmr zU)&Fmqb92!zqmt;g*G-&BJjC->!#igbl^vJ=yk81QjE-7W7)ln_3HDiy%C!yyfg~< zn4@ClG@ErOX1nZWRrd^kq|he%m_X7^c-C-QI-!bFodyw>@!D|VJ{&*m4y%;8RoSgF zQxC@dFUD3{NM}Xy)h2o#12Z`4waS8PPA*U*mbI|smtnA&Y zA_m&MbK52)mVZ=IKYMtv-g*$}(Fr9xTt7z|lo@M+FvXC*+s;yUf_oK$A&*^i&Kam6 zKx6bXf;}{;7?CDnVh#F2x{F>(I zV#5F&n`D|eqpz-9H<%lI82y+ubRV^R1$9KLvKxY6TMQ`dfXfS4yMB?OKG27VFMeHo{6Eo%X|j~n~l^W5n z0q78b_Wcb&nx7p2tf>H4u_J&+)I$Wumb5V1D8(XyeuA^@SozPC)H|%V$$^J;m;R2F z=<}_VqLqHaR*g!k)iU48>RKz27h4k0mr`(7KcG7~IQunuljnJ~mT54BX7UY>O8(&< zqQO~u2Y85H4^b&Vgbauv2ILyVzg{&0VkQ3%#NZK}rFS4v+iy+gU-pNQzFuxPH#g(> z^?T7x=5U?BA}4XX&*^v~>kk_zwPoSUDz&qZMkAv4guKA<_L-Rja>HkJkI4;Rx@1yr zc&1XHUos&#+}gcoZn$IV9ya=0e3aiKCL6VtwWK?mX^GpHXp^-&cDX3yz0KXNhCxR& z8CcyGW?OP}u_a@tGYI4MKc=~(T!|yQ^tA#3S`+z?85ws5jO`%wBctUnR zH;HCz&m>=(r=TtF9*2QL|B)O1Mt0oV36u=|nQiv=%(K{D`XY{L4WF5L)N1#sopjLs zr+5y`p|u!EyHHHKle8#9->vRi(2!3)TR!{a2TR!|B{>vfQ8`NhIG|6ro8 zBRBYtdLYG5(k+1=>tyJL5DDYq{=hGtN+b997Gpyz**a9(=^e0lI|N;pV>ocx@X&bq`D}W20n@r`I8Qys}&%OA?NZO=+CKc_E=D( z+mt&G&gHh2^>)&FRCE4-O9OdC&bd^amAIX=fw}V8**)9^R^gmP@9-#s@7w1!&2pbb zSg<{@^3#@ORi(MdNa6E?toJshOi#D}{YL9WFOg%rtS6c^YdvpH;-uUtZkLrMdVeIc zZo6cRRr##D8&F`M{gAs(ke`&+LlHPh+ywaWaN(G9^A|Ujdayz;UF2R2P259VejfS7 z?&Ta@G|lc*4&aEcRo6z96yuj)uaYrgBAh8tn~~MB?XGbJq7TD3c#(9 z5bED$8SXGxoM|YczzEr&SB<+8bxT*tM6^7I`Yh6^K0?5l+rp$F(rp>TY%*hR0l0{h zW8CTg@Qf;NaCeD%Tm!3}{W@BcnH1ztZIEuxwlHc_X==pGp^|H$;kf{ub#`6ppK7Vs zCD0A`Yw0LrN%=#WlUC5*(BJ8W>AqrZ+XQ`b-iTh~qTW;g)xBqE{>Axvfo^-E&(H;q88NN?il) z7jKlyD>P1hUye?;Z^O_r()=L20%i68&}-&k&Qm2;f0tyUH^*NNTV)pHIB0cj@j9vf z&shj@kC`gkgf=vu{32UYN(cExEbD3sD!-@!SJlO9#ncm&O<`(krY}q#mbuk^3sCpP zrpo$gGaq#UxuO5?MsevF7N*hyEZIKtXog!B;+&6URU=f`oCsX9C7Kl#NmnF zJ1lWT=Dyt4*2MB3^W>ra2{?kv%O0)s%u;h(k6Ai7^FnUxk>IuUsLT_&t!L^FPL)-t52ymD-+g9ew@|i`XLE)wjFLF zF~^@V08gzAAF1pHcinv`s4wFcy$Qu%i8Y_PTQmw!O5ih;upU}v3IPiHiEOF{Y=I1_ z#RsiL$gB!w=g4t@c58?VoZy@lKoO*lJK&sI$1EJ&&d7a)w0yv0UP z#dbNSo$6b8pttC_CWnO?Z*NTc=cMcXH9Dj^ZXY4Vi)l2It7xq>Z|%E!SIq;qH_}v; zm>OJr2&>gSAUwF6VkfY^|9^w^imXO7dW{TyC%(#0~i)_xEWJ)ahjn%W*KA1dOu@6;s+>HXH!%7 zW{hT7>K3N>w*b%XrS31~U5o8<*N2`)2l-_VSIW;;eg>EQmcRNpxa@a6L24r@>Qjlk z$vPQr!j}fFT1+0Jm&P>SrdY1Fg`x(Kj;*XNtH}VTpx&a#G%jYoBGT6LG&7#9sos$! zbVfmo+cJCYozF1m!e*Ed7gy#Q!zgKRTb}jirxOrXTwV3Arz^4=-2bXhXx{2`j`exY zyZZ#9&6HSn$05B3#GV?6c)f{JS{sQo70mhrD+m$;o)#9P@M(})%q8ps_h&40@{d? zjlfoWk}3C9Iay+G5u|@44Naf4Zb-sSA`@0+SeX|2!gBOPtJ(2X=2T4yLZA#3#i*lX z{<-GOlpi5(%5x$=>TD^5nG-9Ky;poL+;n3uSmjT&1T6eF|R56PN!04J{R&J8DJ4z;wocGe$Ojit<5hpy~?4 z#e2&}P{KxcGIK?|K}wQ_Rs~3FO%t|Vw5QjDd8}7dYgAd2-8cV4h!sD=(KG?q%r5X- zwQWKUvPrWu?%{9Z?$+(rz+$aNgR83WTZ)#y<~`-g`fjaUKlTyHHUC7&!;vU@{w-Kh z`ked*a~>V8AaE+}$UM&573JNfJnuJdoe7%fC}5D;k7VaQAv?R=*4-pkfrOvvDmOCS zW8S^}+?X8hadmhbN-BPC2AOI4VFo`Pjqc>k?E*w*NeRDSL+N4ry?AZaowfx@Te)^2KLGT?7YLzM^v~t_v ze)$A?sMFs-QD)t?j{6r}t48haavRiZn#1t)4s>2Xd+6-)C@>C2bsF5%$GytVsn*&_G&4rE442OdmyqM& z6De(HEio0Xs#V%Er+Ni`Z^ixLV7Liy4uHM5EVG~|e(=||aUz6W`Z;nOQrVY`3IIr?niI(d^ z`-w~kiW=3uIOy)NxCMO=@|>0rjf=O6bjXtr}V=n9~UC5x(fjsj2mJ*VTfiw;7r=j82%Kk4n= zO*c>-EaUD&!cN;(GW$8X^0|rC(->J3y%)jpT)8vRyO$--$(&z2Lk94RUxe5JTJHv$ z=YTenZ0yR0sW+CQ{FP!LY z5m$Ex&APaxLI_{}33H&&xMdn^cd4PKRL7Riz?J0Qj%DlV{2ZX*3bZVmxFSKp4vydh ziV@@pyyrD{hHI;M;dX|W0B*%f2Qj0-=O#6*v8uA6-ThC<2tCbrH`)_~*O2*$bT{vrQfE@SicZ>!*L(*6qw1sct z78cJ}KtDwe1x%yCQlVTbx{7zf!x9!5(Qub(t5~!jsG@i2*J@CTZgSKGx&<4w^EQB2 z+t_eD^1it?oBDZwJlLZdmHxqfzgj28rrp^`i92W7k&IRw`=eXAKNQ~X<1f6Q_zse7 z?U16j)m~Qnd*HPX6z;kg(1kVn+p#74d{DUS4)s-7V?Sg)=&#n*sn2Tgs4=bjm~>wl z5?4S*(fH605dR`{0|uT6u;}GhKSI{DBj&xp#<|4uFOCk6cQR?16BKT4T1LCbpZt|t z;kw;i#VKY#HhOoNB`GhAUFformbN*XQo=oQjL4ZBUS7GfX&IRuzep^_}fS1mBR~A!#6ws zmz_pCNN}^j&TGoJA6u89Tx)Jr&+KhoW$nfCx$fL+fSspJbxewA;M4*hY+>z zKnfx1{or>CaUwj6XcGhe3;#bmZ(6JU3Lu!ilAM)avmW$h?hoU|N|)jgi(|=g-*i0c zFf}CF6@^T&J6P@%xtXIytzB+h_`U*=j%Ty`_cf9*N&fiAYWF2=_}bdk(4Qjfewd0w zMQHBi3mV$Ol{=s7zHv4B)Iyni^hNsqBn4gsy(=_ct(DPnF~e-TdDQHUr>@LL{uOb4 z8&Vg8c}2U^t~F7Q+gFF2F05VefzMj7rnDcuO9;290B6&!!mAhMcOziB#?+)#mj z)6^9{phLfDniW3mOpRun&s=F#NsXozJfujIB2ZqLJglldEhAVfc>36O5*r8jc7n*& zzX-Xr|Ar>Feaw(s7o)IQ*X|_U=3k;r{q&l+>P-c5o)vY&fDp6wZ{{6#3FWFYn?A;D zWl8HSxH*@y#BI}O=G%M9%czsctyIl|W?z}iDY^Ca#o$N7EBj$ROGaHr^Mm{97pR;ME>)!l7$miAG25emzTZfF^vQ}R!vHQnk}$0xsZ zrG(02FZ5)oC*KW2mt?+K}TpQvhnM59>UTctP5oVdt&uNm{U_`hGH74A2srYU!nJ#MhIF!!mYRW-rJ+f7HP ztJ?~aE`OfqSvzNzW?2y84nx*(u~XVGmSH@o8_sW>%84UT$Dy)zg`10qm3(vR5Jl);~Jv-lN#TU|=G8_Ha-MSDZN3@iz8XpcVky zN2Mzcz@0BZEmLNY7p)`2-KTw~D!Q*#E4VL^HkDYHrkfx?O@l!z{hI(?jAHNC0xQ-4 zdOYKCRLd<{PK8fX=8g~~M4xi2{|nR^%X{Cifsm|5*Bxc)aD}U9l(q_gsk^3J&O@=qhKe67NjLo}L(ymNDVsgMy@_61V$5~Wf=>py9J8!?Sw{$9Y5UNUimKAL-z0JRM7lb(Es-6fQ!Begj4xf-CwR$r`DGB z4}YmiDtkb2rF!^v3teBQ)V-*QY#QySE+Yw-S@;)N-dZ=wWPNN+mWFQd7@5^JWd*7; zGI!mL0N3Zc!tZi@uoj5DSi-cLBMVW5>~q>~AFO{1sheK3yK`FdHA`Xkhc~-^jU$yI%X<)8^!pK zeT&qCN*$!Ur<6LDypmo;DgI24<5ln*r4CTRZlPz;QYIFjnJl?u{f+7q*CYeHpTI%d z*+|%uie+uNfznoA`WzEIe27jCh&rxzRQzBK_n2(VV84e$o2Wusz3`s5soMpGOE}pb z%Y0RrM_yRZ9OE;be{ndTl7SvT#LF7!{J&scl^OsxG75Z2z zpB85`AXo0nFv`x4b|lY!i-YQf7%lJkX>Z)P01eI0)n02i6%2+R3{*R-+UtDn`r6vn z_v7Bagxc4`CCGa@Sj7^n@J)r?FI4yO@`uCIJ~G=rp=-?fkqwMsY-Xur^cRKLAT0y636^IKdZ~T{Rl{M1fgrU{uAELFyxNF~eM-ZltAk0`+|Yv>~#he#!(g61UB;-~N~4iQ6Vl8Bf;u;c1VCpnHZ7fK||<4wf_&UzUoGn@QSitkk;rBB<~gxZRvu@ z#T|AED*8~^jCT@!ecD>!%_3fNm zdd;YTY0B%Qm%OjIkBDj(Q7bL0PaF(j+>hybng~eksBV9Sp8?Th@1FE z>v2?K^&=p|BY$(l2y>AoVwpp7!*!YIJ~~O!g_$y1pLEyd@u?l^^?$y@S=)Oifl~dH zwo&QuUDcj@h2?s~U|5JoGYP1Drne=#P%J#b#rdyi0IR2{>WK4Qk9}UaL|s+D zMPp*p{qxT>MDCd%_7$VA+uS9}G{4zGcQ8_G63V zfPnAUd7Zc`2+~5@xt5r-_1n&-)F#HY&HdvKS2TWz=&|_>yjSJqdm3QMq{E z?)(FFy8dcW;Z6x(!{UC$lSKMg{teP8sI6Q$uH&tRqYC@+JIwEdj;FGhF@L;)mimWE z&g1{NAa?_gIGDlSyZ@{b{spUUZc;id47UNAzCeixEMgcSc6ZYiJ4XTU| zEZe%fCPD9HafXO{Zcw<>F3wYB*@PXMQnjm&G-=G6DhMG)g_{jNu;!|MuYCxSFLU^o${<@GxT|yiKB6M5>BAB z05o#L@xIC?`5yy|vpTPjlB$-bmp-b8-Xy&s3A zgP-q`sjl$EN7Wn8BvWdcRQ+=15 zee2E~Cq5qxDislsJK9&sua&0fqdjoXkhO|ZOXonER;MVBEx9|?ISs|(#WnU>oe9|= z3;KrHtPqC^xOu&B^cpqv9rxrO!1tDiP79h#Nay^QZ{o7N*br;P3)^lj( z8M-moqfpE1{58h6YlPO`cpPVh4xlvl|$1}F5U`LH*C0VyC7xf^M# z7>0*vvo5?UzNkDFh|G1LQM)9@iq#KkhSwtET+5haD>--jOxe%a&xjBH&Ul7^o12!Y zmym|4n?Q>UjtsT@80__(h1qt0yl_Zd{skOb1SYbAXm26uUVrAjB=bC7=N}*4W+eI@ z;lUp1i@cpkm0bn&9IYoWL%<>C?zGYUA3jsWQqvauv?>W_E3J z!|zY5ega2Hj8-o%mPoArtvNNhw%qWuA*qW26-?2%Z05)EDRZl<1ImCk)r z4D+fKnfI~2Lbp4dM1)2pY1DU-8P@F-PTLf{|HrLct5}PPp+?fJFt!apx)FNE;%6Ak zvHu%XkNpmJ;00(<*g&Q?vv{^f`*oi}cz#7+8({Pnhob_^XIo8k74iL{OUQAq%^iA1 z1x&fW2BDSTL>mlHq+f0~YvgseDvXK+N{}|h)cseL=Q~`p9CvRa(NYS=MGSj_cwq+z zxQEoF#sPkFbrqodX`$w!K@$Bv)gx&6cSBpx8;=a~EHKz+4OkYmK%;fdNO%nVwBw>Oh>TGPue>+02^Z1tdMJsMHB{0#gPUeU`(*t$*Mx)XC*;BB6H9tE$bYvU zwDRAT`*4fsdY69VqzT~F3Ksh2S|qKf3AEi9k5#wZ&QmngsIeFpw5egv*ZuczP)fPL zNGZjqonKA-_%EqS*n)HM-@bu>xcf2sVc)Sb6JcA@8b@Ejn~>SlPpUxHqI0*;X;qx8 zFI=4e_}8v`KFN0W{fsHXvpPlj6uzrM!Y^&&gagi9wCW!mq zxfO#qx`1&57@BwvG(FVfmDUfMZE(=CkbGEJDd}zso!4yl8Gx3a=H=AlYSA`dQR;7b z%nk3ASgp@|CVKbbZ*F+c%)YtdNr~k>6ygZ}ffV(xbUn}R(+mXp{^P|X9FaJ~3P2M- z?wm~wq!F`t?>u#(XyTP~zi!R71z!@t8t!{Er~7ey@!{^4SH&p^3JD-UTv6YFE4~5v zVP06f`%#|NJ9X}>@1Uax-Rn|6m^jC??p%cA4dJFW9`2lx($Y1TGE{%FMT2|f=Uz~A z+=mf|pBb-Y6T9@&*C=2qHH5AVYX3Z6<2E0mwX*huHzUtIE6T7-k0 zJKdLbyTB(F72CzH7f~*un=bxT@|ZlAM~F`c`MT)(xyW-wM>4)J%QxX$2&|EEw|^5O zup%NFotzZeX)Wnhzbv==*C>~wj=oRKP(QyRtCO>qxTP~yy*eposkdQf$Hv4}4~egX zA8F(#*4fdY=#{_cTFJ^*-72libDmww)(HtowaiPOG4aX0(rAQh}muNY~vu%9l zrZ6=jbN$Tndi#1pRF>%d6hmrMp6J!73-0T#=Wj8Fd|YNPI`wbjb@eI7+{h7E!(=Nz zL*=39(5CZ}l}dd-4{0Dfe8;FkDU(T~J5|&~+UK$|e4e`8pT6N!v)xmqN?*|Gg)O?{ z4cXk7%PUU;r_&gT-hWChXg0?UGa5-dwOT&AFrB+l53>NaudjxaI>ndNc5p%Og*3V= z3Q9!aeF9uV`7Q)hPbLp|@raF>azu9QTS%(H2&TR!b}*%6z}dYiDpeg9_I z7H%@zfpYhaQ$hrz$%!@$#6oc*Wv+yT>NdFLoK&uoKrbq(8wRVD=OYgmTGIphCz>~x zve6Tafw_}xvY)u^(mGpEK63m!=jM4e{hm<)E6Q32NZgJ`^#`D-J~6C5v#$Sn)}N=1 ze?4*Ag`@gkOj=@e|BDUdUuUO*-2z{8CrvLI*Z)!jt;VX=77}CnUyNI#e*BigV9@`3 zl1xCw3;zr}e15|0x@z_`<=Q3IBfCl=MBN99i()a4%W!+YE3t5EA^ZNgukQEz;bY2x z&BLs!c@n$WP+nqNCnl)f4wS?0iKug{iQ<_IAYbmw^}N zM_&zvG2CAj#t?*|9|A}BZ}*hTJz*Z0MxQ#pjO-C3New=}wyD5u5HdoDx@1))y{q_an=yM|!?J7BGiTfqPwEHm_RmACjKo;z2bbFBPt{73aBr3aK?ar?$ zYjxv43KZ`WQm*++2xbG`4I`@TfX=3ooI(nNZ902N{e3gfrp1G9+}ExDR&6#W-F{IY z=UR34jvO1{Ww%|Ak-oZrz*WOC?W?EUm&59d`4P4{bX)AziY_0|&1W6`$h}RFL=i`Nz{Mjt%;^#dR4)y!(%l*jsfD z)DQ(>ae=E&S6`owE!eO4BL3XH#$myCRRJYGfkFQ{_|j4yD18~{ga_cRirm|cOa1F-4fMUV zJKi&V14u5JQoI&{;0@yLi`vaoBp=ngBUFUc z=ic5uGn9LKx6F&&sqm8gHNL!&)fTtdP(YQ{c!Fa!R{EN$r=GJ8hF+k0N`aX1Tt{pg z)iD5q*pm624AS`pzM{2d!DRB9X8X5 ze(R%G``LS7{q=qo=?%MTXZ?2gmBerHwpdt_Np?J!{p*NQ<0`fIFrs4f`2Zx`V$dpa zEEBb@M{yNGbx+W~Dwy};GihlVR5i7BB*qsCF7q!z^XrRlTCamoQ zk&+F()E(xFEb}ZJkXN=4_w2_F2a>8tSkj62 z{N?XGOHzs3+omjIoIjV9OZ&~QX+R}3Y7>%Zt9>-c)QnN?)7l$=WFT#X;~J9nR#MFw z7T&JmcBASUmSDuaxY2=?-?JJBB(v`5k|uYH)C2dc)tRQnGG2@HJuU~>t&A3V)r687&@o9{-(i9wCTqo6&Zl%@1-&ZuD$=*4r z(S#k}aJqptaO=PN(ZiqXVGe1_Z$Xuv0<8VCc2#E8TKZsY9}dS8}rY z@;f>OFD<{a6t{rNF0rstJ*mR`iJRo`g}lw3vh8mzjz$>(Du8uYMz zySYQ_FdsiFtmQVcpTR32s_FF+(Gmn&Xi_T1(KWT@k}E9;5wiOmK^hW$y8fdv`t)ha zEi{RHrMA!p%`O$2tL;^v_Wo0;4eq19zBhPx+%mo7Ks;+-DD<{hgNUtnXDjzvG!C4i z#rZurVcY*wGI9H~@mpr*J5G_=5wu{xP*18)X zX6bnmJxFthA0A-!7pk9Rz|Am&bou|EQQA&y8U<~JQUglALiUu|R}4z6JHePMwJD$O zoz98AV0NY8MPI;e0k68xU(7a5{giHo3t52M$eNk01G_XOW*^jQBRzBn9Pk&^Zn7d6 zyMLj5I-zI=ceugL0XO%nuqgYN;v%*b`{0*f`|P{~%#{U9K1XAPTlI(rpotpW3f#ac zeQ>XI(Y2^?6Gd;Ol|<0@6{CYjeb{%o^T#O$1J+sTQzH~^h7Q~>>AiYKt$LUJQiDI#(mgG4_Z=P4G5qBpw6S`r zz~@5nDR=*Ay8!?38t`7fWUkd2XE?rT>60(jARz?R0L}Vm2dKIHHW+#EN@ke~PhWk1 zys+mPU9R%tXc{8|`m5=vP7`ePpnoI-X_QZD+AYnH{-;=8P%Ty$R0C}NVJ!Ou(!zLQ znh*WL$?LR^Ej~}dtAA;j05Ht6cih+Nb-QYwonz;}zDazRg||WQsQZv!Fzu^s#eT`vNm5dtgxz zDygR@t7icXZ}k7T_&%OTqH)Hk5DmG~?et=3lrrYhcEUROpN@Y;&ToKIBO3R6?RG_2 z{Ow<1vCy}Uq{$V8#1@@}CZnq}6lN#V6z-iYUa6*{Vh!b8h&TWH&Sq|&RbZsxFLQtCXYX<jwDS+Pv>WUY{{&WrRW@>aebY{ozGgD^PJ<`dNo9VE(AI1K0 z3!N?-ZT6wBveg@3h90q&>rd*qCv%sY-)3yz5kcJ&mDFo=9Fcmt7PXL@6_iezwy889 zrRePV)5Xb|&A;o+dwG=pZWEb$6He(xO%S-)rIW=n;fX-B95WZ8APd5zd>dXt1)t{(Z~_R}(YaOpEoBTvrrZ21v>=km)9TtZHJ1KY(5ujl8%q3Vq-sW_Ts(bUgn=-DVb5_UC~wm`wKNV9LvszShtWQQH^1U4aa8 ztem44Y*X4(!9?(2a5^8d;08JcyNGAkNq|pUvVB-eAdpPJ(S?n zS6YqQ(EQAfHR|4~%|VBkC3>}(6Xxn>nfzaS9#TR6*mD1SV*OC!ijUG1TWRU+cwq6@ zs_0KH?k)5uN9d2hycPkmpzf{C<_BssJyuWgQ;XHJ5mso@l5y5ow`TFI5@=0e0k2=_ zvnAVmUQ+vjH^B?%bG7!ZF^ig)v2gw9juqAWh>C{J7L=c`T+$?=g z&bZ2f{1K&-syT(0bv=I(Rh@MkI-B|M=mVwgC^Dqko1t)RhYm|;>{8D)(xB)ckYqo6 zR;^+hQ}~YZzf|(ss7s_JsqB~0VLo;-MF9UcCj=NVI3+RfT|-z!v>9&Y43C`XEuiCJ z%Z_T$S@((ULobJojY8=JZvl^d(#dT;E~WTF1bDQ0w9aoaf_Lj@n+X~a_ah8YF6=4D#dP&`aZ@XD9G z5>%_4G;O^`@U~s5R%iacx_3IBOmq=nUSG}j9pnC6Yl#=`nRhwU z&bqy;K&xja$ovT?AJoyyjC}GRY zjwdr8e-FJi+Du#Dxi{pwiKK=zp;~sKmTejeY8hr8rDJpE+raG+gW(5p!xy-1y}qA?2@eB{u+AIZY2!F% z_2i*x0#IHrC64NIhxmtpzWU~H{6!^;C?PCHoPLuT19dn)BV?^*J+Fa-i^b`~eo zi~Dc$l1vK7d_B;#hD1>CixEJ7l}dJ-5nhb-B%J#?@!T(<|Mr6b4EI=Cd4ZW}ZDQR+ z7%=-=HY&|ZKDFJA1hfIm0&1dBrZH>>!8PqJ2-`K%PS6_N1++8GkRxO5Q!26hfwZxh ziUk$OY=u!K3K&%{hH_q6O4jN&Do)7vbA@?pJ+x&fQ}Z9fHZyjxZVWlhoaWFM2Q2kz z6T96Y?(7O9FI_`Vs|6aJ^s$yY;7j}12A*irfuX>ZT)Sd}{uB|9|q zEO358u|N;~XYm76blupXo=abmh4j3lAc8rtCL%3;UHijmF;x?mq^UU;8&1QP%(cb-6XnIyI+Y5Aci|!>8S9ATWNrsI>lQVxHZIH1AJ>?V{ zvS31SnSfa+8Wr(LUR9|#gFY7FiKP>|`D&pzM}2x%W?4Tt4jdF=VbVL6A!9YmA3O9M zQse}KY8b9PWf}U#d+Ig7pa(0;#>>WWPgqcp}Voe-^0sAEI@lu4uYF*-& z=*{w%*O|!Z)$-5rqe*5iJYK4wnOIyS3{EBh8@iEo=Lup9<9a*kcZ8Ov2ABlAG_%$9 zTgMen>?zCtWVyP8bLRTW%*D{w9BnJa-7tn!`lP{nK-a?Le?RoQVz-!albI|X_($Dk zul~|3feVjq>Qa`=r)T`RZLlye z7Z*!|bW=>J|K^$wf%EvVI&3qoC>&#e-qoR4=YIL_ik04X=yAJ^Vp?K2R6X8qPDK*T<0Q&BEub$dD*i-$y@MiZp-7U3K*PmexL=fu zH#oz9CqFq7bHKO9-Y}8Prgqo{o(1++9Y?t z)+NImW!I_O@~^Hdr$j!#PW(zGZzk{_R3-Vx*J%{xA4rcLmz)<>Dx>DyDLgrG!9~9$*pY9pnC5b|d8tEOtQ$_J z9R>jYMh+uN*oOJ$r3f^Q=MQCdM;QTHnvR|e z;ZiYx(gX3i@t74U-3I~z89p!nJs^_wq~N>CqcG^l*4}fRMy9LTSbk^)7tp(e|8mz# z@-Yd4a2-RtCUN0gl6+2yBc>}HgBGfxEA&$*!)J|;T{amBj~C**V3=u^CG}M1abpU$ z57-NKUCBI(Tiv$E?F;|GJ9%vNoC`5S?=N8(?Y3rWenvRN7s=o&QufPnpI_Ll1=Xc`@&O|e;5p=RbNavY9phD z(V$xw=A_5FJNN6aDM4Nx^7W!jIul|w0&qN$ovOorUhn^qPx@s-yeNU_UHukGUhi~Z z(ZoXE^ga*c>8qZZ_;@z8=5no`;w8z?XB%4@M^Yaa%noS+Z3$lakf%5BBZwC3}Ue7st@Ly)~z+gVXR_F^qi@;<&k%fiinGQ&Zo{|A}?Bg?!khmA&@ZN=O`U z%`+ODw3)C=6(=BnRXI%wJqXb|2qAjLHUA_p>lxRQBzc0HdA+_Vm^|uJnHc zRVE^rn?nx3W$7VP95)2FXfhAIC9C|W&{QWD(Li;sjN5@Qcay`H3UWM!6)?_D=Ovww~w?*6P{z4^U+uMs%xco_jQ_meUz`-)m`gG z;M2jux6beE0S(%nO>_A#H*WHJkD+kxa{jQ_;q~hB^4xKJ497rcB-`3ewuR~5Rg0DN zv;0xaEx4jyi@DzONFXj(aw;*oQn%;M&}%rHe%XUkHr}23(Qf3(>_6r1fNWe<@!$N| zw4Zq)EZMnt_7r9a4azR|TZoj=h1@0{?3{loP3!PA^+?e!2Fz(Xn=rNWSrg7tvDC}i z%PXj&lkDC7c}^}kQCL%^0sOxfg&+JsiNdEP41>Ln#41{LM3 z?+*yIP-DSjgbYb!sVd1l))lDa#IMn~C+qOqL*52fOv#Zqx!ClxE!xbM3c zh&Pn%A`r(&@_Kdic_SO1Ly8a0^259yIKzL_r=Z=_tx~1v>UJ`vQNQZD1Wf$o+Yxy&R?eSboW& zB`b4d?R6!3zx!wW__wl9>VL(u+FrR9mcOJ_`OlpP<4GT68$585aCXbV*UB86@{gz|Z?%7BBQ0Pj7&ik)kZpUI zO+gq0ZFcZk{#t<bKZA6_B^z`H(OCdRTIG2^jOTy7n zbbY}9K7A}rlnV``YkzmDc^a7=t?#5}lreqRsSFFuUr8Jr)o#kzIx0A|*WQys=_8}k zy@D(372O3vGzJ+P6ZFt3{h}neb1?f!zis)Os zS$_Zimk(#ZVeiMVh}cv6nS8yY_DU*0BDtTeoNfN4N>fnI4^e6GvD51v!{{8mo$vL& z$eaHZ%L_nMX}Wfibgn+kc2Rp?uRd8zk*DCGT?HYYSVBAI)7^Dg|NEf9ZnB(ZSuz{J zWZ@v9U;SNach|y23;hr9IcPsUdYadV^*RWK4G=Ex+jEPu9FaWP^4+O<9#lg{^&eL* z;r^0)IM@GsaXGMmh1S!fAnw~k6BpRq!)Lg_o(GMHRkZ0ZK?E4}{l%C9WJHMdFD?VQ zs*;$n;Xdn1kR$@zWqu@7RHmT@%Zjyg6+1ULov$OYnuT z4!h+wa=2dZ6w%T1li$UFl)5#4t?Wqb^`GzceNNNYqS|x))3M3-%g>i#P+u0ez6K%- zDWH+vVr2CXz+2WRaRB*qGbvpd3Y4^n_AWM(*SE!RaNQVu6SwhbS3SV7yNSBCbwFsm zQz5@88^HXvj~3`|um-)-ryddAqjOx*F%uZHT2%8pzo&Lq*RJ9vfQa4Yb#i56ooWF7 z=4D=7|9$WWOiiaUy;(${Apb0fuZ^Iu4w1p5Netj)trWYMK8Z#{Hz~Q}m_Q{D68;6e zA`j@fGt_g{Cj!sk+8AHqkPnV+C;VTN6U^oY{MH}80AVw=M#Yf~r-NoV#^>8=;$9%O zb0O`BD=&S!u)&d&7sa9*hpUK1r=NbMu?R`>ujp$YS1Rb5_nk%l18z1wan5b3$F;moYn*AP{ z1&F}Gr^Oba&LIENhs9Z31XYs!On;k*^xE+tZKL)uH${AsR5v)j&ji{(Uzs+MiCPuc z2q6ts&rY}me}Q|L>wj7gZm{RRETv-hOZgv4!Ju;~dTvP1O8)?I<{HS79zDYAtKz{m z4AGq=eElP|+f2JrbKfGxq6Nr0RA~@wCW(3%`hV9$(D1NrL%b7{4~h&n--K1{KmyHx40r9{a6lrJ!H@-K$;JXP7@%sZ?e-1ID7&kU>5&v6!X z&0Jz?j+Jwfw9KTPO&y8G(IxZDYO|rVq<xOwSu z>7n@oDzgc~*9|>aW+Z=Tqw9SmIgC}eAaiM1*aF?-uryM7gQ*e@zzX4&Mo$o?e%mdJ z0p=wbRYnt~n8w+iTT}mQy|IiG;KrGpxSF}Sn5t_IahU2@e1q;0pf&n|?Ms#31MS+a zkY!}O=?%VjL8&O>x<&>PF$jHb^+A3Egu{T2f(D2<52`dO5PzAhW+sov4;D033>6w? zQTKwGQN?Ig^Rz3<(NnO%5ot2V$r?vH&+-PRdV?p=e1)LosUx8Q2j3mW>?|`IMV@im z8)B`cSOc$|!XE0yB4&L=gMv1)+i6cCXfS^Rt;NLv*2ToRBZyn`{Qw~~RE)|Wv%a2R ziFDH=!=iDFNwukqO=a`+sADrCksfA4&B&;+e&M@CZeHm#Y$h6k*p^C1Ic0f!f)oC+ zEnrhJ5&V9X-`n(}VG18;ZXKal0kp;r zLi(Be0=VIj8injzPJ-)NJQr>7e*`Rmy|(emE=4sqUXkpD1OoedhHe10IdD0sncNYs zYz(@Rog1vO1)0Nx-}5ptO$(KWpp1W=! zRV}H71nbJ%^eb$6Ue7a+RsQuK)JMEa%Gi19we;ktEX3gC4Ly&Ot5k5*72vq<0|u|t z*8_#+#{x@DYf6JDqzC)xCjs5>`Rea`Gz50_1DZe*#o)293wRK4RsJvy(6#kM zaY^8hbh}FbQ7ViK0%><#yoTI}f;SvG3~VczI}lu)_PJiAoEM3cAq_gfxzL!$EO~ak zX!c7mQ|+mYfv%IhwQSh00tv!}wY$y3GYr5nQ%otwl2?aDR_ z95})GKAjz&#lj+CmwpMgj=*oU6)hn-+&rQwvV?))uJeLY=Yj@*D*Z!YX!xbpfe9-j zG5N^hZw;TZ-10y^^q15?*Xu?kEnq5fo&WhGgtu%yjG)FxmX>Gy;mnp{yVc@4SPm6? zIX}wGrXR~=?K8?{$BQE3dwpBWRLK~4pIh6JdJkJoc99H6-5YJ`c4YF1{wt4R$K}>b zYsEzVx&tU+wSk=1o20yV>&3OccQLR5$wHFp$8$SzXx*Op!Z=~an%=+RfVg>j^}Qkz zgK&p`V}r}zVU>BeuBc6qUy(dgn>GmaO1kY_-3#)C_0@@N#iT7%FunzB+woH}5Z%35 z;!>upM#qNP+n-haVnkx+`@wTH+FcFLCH{_&s!dUXEfwSTxZ^~+6bUo%ESc23ah|O- zkn(J#lcB^M3HeU>v#M1-wLaWi6 z#ib2)bG_at;d{l->nKUKGUd5T$wU=nu0+-W>dqbbToSA02 zYen^j$tOT2I&gd<2b6hz2Z^IC%W-y5l3x+kppXY;8%p+A^v__iq4c=i!~BY2dd4q= zj$Usk>rlr)EpoJ3LDve{i%52%hJVFTNbC39*;=xS#o%`Tp_3i#jsVTOGKDIY zseXHCVXfv55K{{V!MB4J?8R&cAvQGLP(*pkqh}D zIg)<+qSR@j<+RGrz1P-g7!R0@OZ?KM0iuSEcWbvhqjM#DwqfmDB=kmJAk+kvYp%}* zaD>atD*qZPHj??P5H^Lvg@VL$&>&&H`8qPrZ#}^kpfZ*_|9mJYj`_q$pgAej~HsRw{d-OIOJ?!^7dz~kGdFWfplP>9A-7*eM$>x^-=*$aJ=0> zh0IXV@k78GE(Eme*33UAwlh%4sIY28BF3cotRj;%Z-rFSz;278b(z3ix2wRs?{uMP zIc3YEFSuwt#bR%xYC~jd^5+R5smXuY2Mc88l;<9DEo_G0ah-Xwt`LrbP!y=HVJHgx zcETgk2NZ59`g2H{x?zCdxr9Yw6d17y*B~Ek5i(do_?>VAsMO|fqG?Y0PqtwZ%%x|X z2oDxa;Ib$9sb3YaiBxFHLPVPp+@5h0S!FM2(62YRq6QFTe~2UJpxwol{!g%D7KWU~ z_yIc^wBL0J4~Y=Q&ZTKZLuhnq-r0@*0C+Y3%JFJQzQ^f z#$FBCT>MMl--@ZwRt!u9-Bq?~@YehVRz%h^6R>E*1IUgm!+Ku?bzlRVJH2i3IuKQBW-Dq%74{Q!_z4h^gil~^C9ni10<`JyOJw~$Fl0&S5c zaAHZmRr}xhB+y&M7cv(IO{BApo2G>HH)Pw}K+jy0?T)-h=wt&jRD7qRY|8$s-^ed~V&1roEV(FF^yiv7`vH<1`B}B}?~S zo~ka)oSgcI$h~6jb$)(l!3qRgO++1CS5Dt`?WqcV&Wiazh33`2(y*c@8N;uZe2;e;br&|O@(U^)(cXDT3~-%OuoPfLEb zC?CscQ_ExW9knuc^1(C{s|>iS{T&j3){vIaYAy2}Hw9h_f4sN!>C7#~b02I3Bn!s9 z{5Jr_58y3LRuq6nIxXWE*}KZ{Wi^9_*dBiT*LnC=|HGi8Yn@prF0A+SN|uhDzVibvWxSU3l_c7N{v6mPHjVf zvj}w!{u||>hZ)9%q0n}U9}n`zsPd2dCv4ISflZRecVZ*Olx{-~p8@lQ<0Xc-w#K~> zN|>_Uql4Z69hci>U5jG*dRKqPn3#j@?7QhtCE(Ya&FAEYoHLyr`vp(qg}4M|O77P4 zPsJOt`!kuZJxdK%=r@1Y6A+s|Gp8^Ypjn$T3mD--=6>)gK=wRF7XjtMx;V(LTA+bH z&EX*ba_ZAW987_!PXzC{e^)Ake?7T_CSCh-)+Cl?y_IquVM8`|AvpuEIgBH9z#z|^ zQK$i$&&dyfOI_|a%)ZclaY)XI1Gq!{zFdFeKILI@< zvy!Lzl$sZ$w6A=eCzWXG+!UlWt-MPdyIf7QNA?-vgfVm#Z4~ z;Zh_Q-wBz?6OhRIEOdgfM9t&FLB3AbMwG)&=f?ZPH<}92wI6geAd2|T z<>)w?0r(f&sR^cavve~k*uF5UUGr%sH%%r09!h}htf{OqznhCI{fF{JnR1IjjD3TV zA%4d>F0}R4UnSVMnCU0deyMg8!Y_1AmA>sr%$g@t{#NxFzoUsMucZG{p289PiNsK@ z?6n`K|5l!P;e?&xI(cHvJ~&R##ProFXfm+cli z)Q&03-p!g;H6L*0U74Ywzf?`RCuo8OUi&3Y{6b9#5&$+}f}$ne70EfX*=c>dd!OX2 zMCR2*>63}ZvF;;i5cRo9P`d-3+#{|pZ&N}oxTKK)iAy|p5d{wG@> zV~HuR?wb8E3;mwnP;SNY_k><|IE1xJ-mMWHyxdS`2PZ1|k)D^m(K&Ig>2+>)l6C%N z2eLZ3jZ*$S`!E5&p2(iQT}oVoThPZCwM>-SN0vzBp^abev^bUp6pm+8G=}BZ$p|gl zt`&A9$^a~Mvtvqu*3u47>)j?3BRQEZqvKlG1mu&9zUkq3tJ z&L=d;>SR)5tei_#AJ&>On4~RE#)P6~*v@|&L=e3%0An3+aK&;^U001-odU>pVN)zg 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 literal 0 HcmV?d00001 diff --git a/src/main.c b/src/main.c index d5372c4..1e8e523 100644 --- a/src/main.c +++ b/src/main.c @@ -1,4 +1,3 @@ -#include "syscall.h" #define _GNU_SOURCE #include #include @@ -18,12 +17,14 @@ #include "mach.h" #include "tos.h" #include "sys.h" +#include "syscall.h" #define ALIGN(v, a) (((v) + (a) - 1) & ~((a) - 1)) #define DONE_ERR(M_err, M_ret) do { fprintf(stderr, (M_err)); defer_status = (M_ret); goto done; } while(0) static char sud_intercept = SYSCALL_DISPATCH_FILTER_ALLOW; - +void *data_segment = NULL; +size_t data_segment_size = 0; extern void start(uintptr_t entry, Tos* tos, int argc, char **argv); void enter(uintptr_t entry, int argc, char **argv) @@ -45,14 +46,41 @@ void handle_sigsys(int sig, siginfo_t *info, void *ptr) int64_t *sp = (int64_t *)gregs[REG_RSP]; int64_t syscall = gregs[REG_RBP]; - printf("syscall %ld\n", syscall); + /* + printf("0x%"PRIxPTR"\n", (uintptr_t)info->si_call_addr); + + for (int i = -4; i < 3; i++) + printf("%d: 0x%"PRIxPTR"\n", i, sp[i]); + printf("donezo\n"); + */ switch (syscall) { case OPEN: ret = sys$open((char *)sp[1], (int)sp[2]); break; + case EXITS: + sys$exits((char *)sp[1]); + ret = -1; + break; + case PREAD: + ret = sys$pread((int)sp[1], (void*)sp[2], (int64_t)sp[3], (int64_t)sp[4]); + break; + case PWRITE: + ret = sys$pwrite((int)sp[1], (void*)sp[2], (int64_t)sp[3], (int64_t)sp[4]); + break; + case CLOSE: + ret = sys$close((int)sp[1]); + break; + case BRK_: + ret = sys$brk((void*)sp[1], data_segment, &data_segment_size); + break; + default: + printf("unimplemented syscall %ld\n", syscall); + break; } + //printf("ret = %ld\n", ret); + gregs[REG_RAX] = ret; } @@ -79,7 +107,7 @@ int findlibc(struct dl_phdr_info *info, size_t size, void *ptr) } static char *program_argv[] = { - "out", + "sam", "../myfile", NULL }; @@ -93,7 +121,7 @@ int main() size_t text_addr = 0x200000; size_t data_addr; - f = fopen("../a.out", "rb"); + f = fopen("../sam", "rb"); if (fread(&header, 1, sizeof(header), f) != sizeof(header)) { DONE_ERR("failed to read file header\n", 1); @@ -109,6 +137,8 @@ int main() data_addr = ALIGN(text_addr + header.text, 0x200000); + fseek(f, 0, SEEK_SET); + size_t segments_size = sizeof(Exec) + header.text + header.data; file_segments = malloc(segments_size); if (!file_segments) { @@ -125,14 +155,15 @@ int main() } printf("mapped text segment at 0x%"PRIxPTR"\n", (uintptr_t)text_segment); - void *data_segment = mmap((void*)data_addr, header.data + header.bss, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); + data_segment_size = header.data + header.bss; + data_segment = mmap((void*)data_addr, data_segment_size, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0); if (!text_segment) { DONE_ERR("failed to map data segment into memory\n", 1); } printf("mapped data segment at 0x%"PRIxPTR"\n", (uintptr_t)data_segment); - memcpy(text_segment, file_segments, header.text); - memcpy(data_segment, file_segments + sizeof(Exec) + header.text, header.data); + memcpy(text_segment, file_segments, header.text + sizeof(Exec)); + memcpy(data_segment, file_segments + header.text + sizeof(Exec), header.data); if (dl_iterate_phdr(findlibc, NULL) != 1) { DONE_ERR("failed to find libc and enable SUD\n", 1); @@ -144,7 +175,7 @@ int main() }; sigaction(SIGSYS, &sa, NULL); - enter(header.entry32, 2, program_argv); + enter(header.entry32, 3, program_argv); done: free(file_segments); fclose(f); diff --git a/src/sys.h b/src/sys.h index 8b7f97d..54b07fd 100644 --- a/src/sys.h +++ b/src/sys.h @@ -1,52 +1,52 @@ -#define SYSR1 0 -#define _ERRSTR 1 -#define BIND 2 -#define CHDIR 3 -#define CLOSE 4 -#define DUP 5 -#define ALARM 6 -#define EXEC 7 -#define EXITS 8 -#define _FSESSION 9 -#define FAUTH 10 -#define _FSTAT 11 -#define SEGBRK 12 -#define _MOUNT 13 -#define OPEN 14 -#define _READ 15 -#define OSEEK 16 -#define SLEEP 17 -#define _STAT 18 -#define RFORK 19 -#define _WRITE 20 -#define PIPE 21 -#define CREATE 22 -#define FD2PATH 23 -#define BRK_ 24 -#define REMOVE 25 -#define _WSTAT 26 -#define _FWSTAT 27 -#define NOTIFY 28 -#define NOTED 29 -#define SEGATTACH 30 -#define SEGDETACH 31 -#define SEGFREE 32 -#define SEGFLUSH 33 -#define RENDEZVOUS 34 -#define UNMOUNT 35 -#define _WAIT 36 -#define SEMACQUIRE 37 -#define SEMRELEASE 38 -#define SEEK 39 -#define FVERSION 40 -#define ERRSTR 41 -#define STAT 42 -#define FSTAT 43 -#define WSTAT 44 -#define FWSTAT 45 -#define MOUNT 46 -#define AWAIT 47 -#define PREAD 50 -#define PWRITE 51 -#define TSEMACQUIRE 52 -#define _NSEC 53 +#define SYSR1 0 +#define _ERRSTR 1 +#define BIND 2 +#define CHDIR 3 +#define CLOSE 4 +#define DUP 5 +#define ALARM 6 +#define EXEC 7 +#define EXITS 8 +#define _FSESSION 9 +#define FAUTH 10 +#define _FSTAT 11 +#define SEGBRK 12 +#define _MOUNT 13 +#define OPEN 14 +#define _READ 15 +#define OSEEK 16 +#define SLEEP 17 +#define _STAT 18 +#define RFORK 19 +#define _WRITE 20 +#define PIPE 21 +#define CREATE 22 +#define FD2PATH 23 +#define BRK_ 24 +#define REMOVE 25 +#define _WSTAT 26 +#define _FWSTAT 27 +#define NOTIFY 28 +#define NOTED 29 +#define SEGATTACH 30 +#define SEGDETACH 31 +#define SEGFREE 32 +#define SEGFLUSH 33 +#define RENDEZVOUS 34 +#define UNMOUNT 35 +#define _WAIT 36 +#define SEMACQUIRE 37 +#define SEMRELEASE 38 +#define SEEK 39 +#define FVERSION 40 +#define ERRSTR 41 +#define STAT 42 +#define FSTAT 43 +#define WSTAT 44 +#define FWSTAT 45 +#define MOUNT 46 +#define AWAIT 47 +#define PREAD 50 +#define PWRITE 51 +#define TSEMACQUIRE 52 +#define _NSEC 53 diff --git a/src/syscall.c b/src/syscall.c index 1809b22..75e4e23 100644 --- a/src/syscall.c +++ b/src/syscall.c @@ -2,10 +2,30 @@ #include #include #include +#include +#include +#include +#include +#include #include "syscall.h" +char *errstr = NULL; + +static int check_error(int ret) +{ + if (ret < 0) { + errstr = strerror(errno); + fprintf(stderr, "errstr says: %s\n", errstr); + return -1; + } + + return ret; +} + static int mode_open(char *name, int mode, int perm, int flag) { + printf("open %s\n", name); + switch (mode & 3) { case 0: flag |= O_RDONLY; break; case 1: flag |= O_WRONLY; break; @@ -22,7 +42,54 @@ static int mode_open(char *name, int mode, int perm, int flag) int sys$open(char *path, int mode) { - printf("sys$open(0x%"PRIxPTR", %d)\n", (uintptr_t)path, mode); - - return mode_open(path, mode, 0, 0); + return check_error(mode_open(path, mode, 0, 0)); +} + +int sys$exits(char *msg) +{ + if (!msg) { + printf("program exited successfully\n"); + exit(0); + } + + printf("program exited with error message: %s\n", msg); + exit(1); +} + +int sys$pread(int fd, void *buf, int64_t nbytes, int64_t offset) +{ + if (offset < 0) { + return check_error(read(fd, buf, nbytes)); + } + + return check_error(pread(fd, buf, nbytes, offset)); +} + +int sys$pwrite(int fd, void *buf, int64_t nbytes, int64_t offset) +{ + if (fd != 1 && fd != 2) { + fprintf(stderr, "Oh no.\n"); + exit(1); + } + + if (offset < 0) { + return check_error(write(fd, buf, nbytes)); + } + + return check_error(pwrite(fd, buf, nbytes, offset)); +} + +int sys$close(int fd) +{ + return check_error(close(fd)); +} + +int sys$brk(void *addr, void *_data_segment, size_t *_data_segment_size) +{ + size_t new_size = addr - _data_segment; + if (mremap(_data_segment, *_data_segment_size, new_size, 0) == MAP_FAILED) { + return -1; + } + *_data_segment_size = new_size; + return 0; } diff --git a/src/syscall.h b/src/syscall.h index 188cc81..dada2e0 100644 --- a/src/syscall.h +++ b/src/syscall.h @@ -1,3 +1,11 @@ #pragma once +#include +#include + int sys$open(char *path, int mode); +int sys$exits(char *msg); +int sys$pread(int fd, void *buf, int64_t nbytes, int64_t offset); +int sys$pwrite(int fd, void *buf, int64_t nbytes, int64_t offset); +int sys$close(int fd); +int sys$brk(void *addr, void *_data_segment, size_t *_data_segment_size);