From 92e18565ffc7e2a9b4d98c0f0a569238c052c8c4 Mon Sep 17 00:00:00 2001 From: "legoff.laurent" Date: Tue, 15 Mar 2011 17:27:27 +0000 Subject: [PATCH] add constructor --- postscript-go/TestPostscript.png | Bin 270694 -> 162113 bytes postscript-go/src/cmd/testpostscript.go | 11 ++++++++- postscript-go/src/pkg/postscript/Makefile | 14 ++++++----- .../src/pkg/postscript/interpreter.go | 22 +++++++++++------- 4 files changed, 32 insertions(+), 15 deletions(-) diff --git a/postscript-go/TestPostscript.png b/postscript-go/TestPostscript.png index 3039bdac7f7825b685bc4717b0853f0bd739fc38..0906fcd855088046dada43bccd18b6135e1c3874 100644 GIT binary patch delta 13 UcmaEMNZ{Zn&W0AoEliG;05C-b>Hq)$ delta 109449 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�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 z zoAy6q%vgGcIxeQ2;jh(^ip}ww!{}S4$XhD#-vv6#7nAE=pr;n+Aq#`o7K38n#W5ac zslZ&k66mGEj5{&a7_bKXoIT)zK*%HELO#~~|Lna7d>qxee>VQ^%Zpd^gEWxhXd{UlRW5<=(U}g^~cFLujEGuyOAd+3J1OrR{CD z{?9wo$}4HhtR#amdi0y$u6C#IoO7P@mgf!A;lHn$ zUn=~w@k--=vzX2j2V%f^uU{;SBc_4d&o7u79_Sl&fBE767(<1#PV88*ga&3Uq011h zTp09<+B;~y!dWf8k6NKnk|8iOx~^E31B*eUIN}(g5`{;}_R(xZQRjytJz5IULp-ld z)=hAa;vRVIYp=ofjP3CK_1}jR<`ZD!Z9w<>hpx%vB+WeSN%B$zWm z_c?EGf6)*>;WsjcStWl&W;ifpKUcieZ(!L&)R{B8!Rf?I#}%N{EeDI`d637<(y?&u zU;o-G)^2Qj&fB@brjGl&BeaYc9Kpk+({>S}RZ7Un%q)gN*bDB^^MtU)x2(+s&4dJ1 zDn|)7%1vNlYm`kuLWOQa)WE`5Bvtr~S;>1Tf0|z%gtX;xT*^T9M8Nj5H{@*j?QH>Q zyiZpWDVS<0L$_Ge(u=xNvE`#;5e|nz{e-RO+CK$)K6gN2TH{sa8EJXaf{=2GqE@(g zQ_Cr9`rT!A0)?Q=C{eJr-zDr&Tn~WXO3YlhuX*hCq40<+LH-x^p1xE%C|SmzRbW zMXCT_r1kJc20LGv(XS}XYT)v+j&oVM*M+`7y{oP*5F8%Lq_sMhI$yg>Wi5v0;5jf< z*~XJphC5j3dwLaUU%Ue{J(ZHq4}tMt=&r-;#D8R2zfvt&=;~|pwTbW1S|x5L*NbAM z2Dt&$v|6;BSp!z^g?z)Wjl6c}FMEIaxa1R_!#L)G+%GW{e5>GY!zRPe2oZ`K9U0Zs z5#4)vY{IxGBssXASX_3jV~e`?(0V0wky$KxjdqSWGe=^D8atTP6ph=$?W61BKGD(@ z3xABc5=mMvA#P+q;>%LI+pe@<2|v5)XX5*-Ph2g&`UD>^4bjJ0ngu&i#eJ!m4XH3D zlZu<-tYze|`KWRJ(MG%3^m)0gw6ZB5pb46q{sb-;4LLaz51y05!WX`f=Q{P6%Y0>% zF{M=_i}gYlya{IEFqy5c0}ZnrO!9Q=y?v{KJFUYRCQd&&_MiA1vJIcWBUYM$^mZ8^s%m&o@ zQM2)MuVfJ!2m;m%Bm+h$1iQ}df+u^Qgl1E-_TY9A|HMxpK z0f!|#UIlmPRp{{LfGb!IJY7j^CZw!`bo%KWQ5w)P zg#-vKOc>0Lj~iN?QXv(!#(ykCROU{n7Me#?i3j8(b+}VaP~C&yXzOk_hxJ zhh@WSk>2&gTtU9vPy^Es0mS=5f9a4q`@fdE?UCiGl!0|P0m62M?s<78Y2(v~hr%!c zY_n*Mnkk~LMvN1~kOM@tbdUFqLQow3Tv~xF0eLqtrHMI;cYlOvWgjC~;b0gX zhqpEuH(x8Zp9n3j4;eqMdQrx|05W#C-W|CvBe7Xf%lGpf|LsHBUtV;-%6P70_ zo*E%!Xg%qmR6A7~L-tAY3mV5sC+N zH)32?)D0LFRaDKJ=n+xYDp~8x!xoMP7hR)La^?KE+WDKtH(}S#U0@6w!AJfaSq_ky zM!yT#1HQ$qETMaB!u65Sc)E3>z1}cnXU}|q!P$E%WHAaltA9>WGjvJ_?_;gQqy3=_ zGy=shX0+%E9d(D!z#xI*-YOb{a{Iv%+%3jC^$994$WbziCtYrk?A}R;mk;te*%a-o zR6xRHCuBGlxQ7BlnqmXjqp$>nV%!x11JDV%fp)KV%5m}Tp=Om_;tz?}B~^wY7AO7A z&d06`F|Lmp=6|Q_RKx+Df6?B*;*@N-wwKn_(5fOrjEw16tCGPam#aVekh|gK+*mbV)3)~+d2F{)XU zvCrr7QKw2IN%6oYxL3Fh2Cr8tE5*!2PR7ANa9})M3tfhYY&IK){6i2TfAf{|8Jo$r zu4TAo2l)zFu<|zJZA%yF7cDi>rlma1FP6*X213r{ZN9eW{sKKpglMo z@kcsCzED@l6Y3=YcR7wbj#!_!?uYqctonM@bDBk(P1tEgXPW44z##SL#0muxqlmfy z5STqU{+U<}rDvIu9bl2AZ8Ey`p#Dl^QTkGHu% ztrugR=99%kNDXTKM2T&NTn;KiWa7obU`ZK_g^FUbffFr8lQpXnA*yeM(h1Q*)o96@ zseg>ZklzoPY1U*M4)|Sv{F@RKT{2lbvair3;uxhStB}$r9i_m!-8`2<#B5J~V1|C!my6 zN=XT!KkWB)f2zZ{Wy{3cM=?yEqId`f?SH^9()cSy(QwXqW%ZA2N4mbGC{PwC@=~V& zN&wdV!+`fhm@H0;s_kY%4w0C7FjIg4Ezl-~iA-QDgq?SI?I z65nBU4lGT7X}W3Nm*(vtWN3M`Gmh%{jAQb+ONbY`5zw`W>D~Aqw+W5}MlbY7#9^=vVUeKK+#XMYGHxhW{*d#|2H{va5_KWbjp?__%;1}(> z%NA8d#wG`{G1sxoKW5e;z@qA2Z>wa26@^v5vgm$KoAdMTbM4Di^Cju>%@!~_5Xl%? ztq?d-ij{gOq4}Q#egf| zGY@33rgwK)>c6!}Rh^x|Q59uMSw$JVcQrUJ0K$RD>=lcjp{{ z0>wBfBxM(hV1X-PHKVxj);tCLC(n_0(&j7nlYFlt^FL^=ph)b?d>tLYS5%x|!A4Io z716XxEZs!Y=~??HJZgUi%=)Pj6!tjCCetn;C0l{ibXWu3W;cR z`zqyVMX`2oJ7f?NnaDzw47k5j&Qp8S-ta?$If69@$#6d7Y#cTY-;sS&_CMuDc}j~B z2C&N%va}1%;`-=5j4c+8pjlex*=(%&R+GE?yYW`QV*o+KO z4L>k40*rA|(zTtMV9jUQ9Pkn%!Y3(@g9rwlz%UbyJ~A$keIUXX2OP(nH)xkj*Jp@> z0d@1QA$b2VHz9wSeVqqKIY+VtJp~Y(%tT;eWoSTV&cDcEc;fubiCL#vcOA z5v)0+g@Hd0yhDi3e`jsa`t5~E^TzB$RDPdKu%ckARE5tvgTBLWSsK2xK|hb3K{gWx zy1$KV(1`WY(Aq4@b8Kj|ZvBh2ciC0M}GZB$o@wf`K!w z!vT1>%LhY63Q!a((kg|6R%Xmb#DMwPMkI59%;-|A6A6NM(c_@_+)~h!!j* z`3zly7*LNx41Qj!IIq)&1S?)3J?d#mv0mMx&&q;NNC=R)bMY%~1-||xM*JckiNUWd`3x6b87>Ai|CSod3+x9}}PiujWOclo$Cycwk+FVasRc$zoi}-nKU2%g%G>C}bX*o2-f;mm44$v;mVu%u_Bm zik7a)1PejSjk0G{i>j=aT@AMyHqDz!5&g+%@-{(@szy{}k0O?cmGNa_92RB@qJOX` zW)nt>HzQD3_L-4gv`h2DC?k0}xuI@G~4LFsl(u;9%TU^z+z3 z3f+LQ+b7!Zr3{*o(36bU>|CKRQkDRGK}CZ)g^QjgZEY!e{!bC2WFxmT9hG*B!^Ad> zZ9i27hIGK>_#jYp2m&5Ege)=$%KIUxFhij70E9mB58&?H2lBGSdRMVk>4XaLHK0Qq!F&QD`Bax;lQWOkepGi%=nSTP^gPCLQK@4g~ zQdAUUjY7GGsANMt;6M^jn+vUC(fF+o3rfu3>mjc?LV9u}y89Fy1vit)#;+W43kxKL zSo(&LIdtn|Wro=Tw}=p^MQ@Ye_N_SaRjI8%qSfl)(gyX)+lyJPZbI>Qu~gX5&=l7o z!gZ$6r(lZX7V4x!Hh;+T?Sw2K+kzW9BSm25){{wMj6@BW4}#E3UgPUkVdBJT;^!~i}VSm1m-=<%q|3vgN6d^>? zgtk#B8Aj*|jF&Ztz#3}Uk4jOErWG{Rb45n=SKqWW{A}aQ;d3b5h4m-aJ&1$|B^t08GsaFC(LG4c16_gx ze!oZ*Cub0%fPW~8mQDs<*G%=ZK4>Ty88wM&(|kr3=5kQe=ZDcMb?G5m`2mZyi$cUR zsCPIS({ZJt)e7KtkMYVCaVr~mTUsV&4aOk2f6&Y@)f2vyh3v4%{|bCWegI0?SQ2^| zUho`&SNZ=W=Q;W;QWQ(tRO(4vyK!^XcU^TOH~E^(n}0MbDy3d$G}{j~tuWyIa^2NeN{CFd)k#6HN`_X;@h+)%3Io z76RKJwo}x&LkS0przFchqzkd$qcbRyx!90|QGZqTr48y8Q>|7}`1||GcG(Guo2-R9 z|G*Qd{S9zOL%gt_lk{TZ2|fR;ySHW>39WTKnh&rlv{7DYZUl$9n{A_0NN zL#?Xl*o~wIYXo9!)N~;#tP_HVWD3PVV}Fl_gCJVa;zzV32U@v4jHIiWQDph+-2rnJ zE4L96qEADss$4;d`gJqO5JrtGAT$9>Yl#yr{0+upyQWk75Z#XC=Z(#Y>j4zO3~P+hmT44@!@p6FKnXj6b4@{stbZ38 zC0t89pv$n=xTXAlq0e7w-PgE`QHE>T{K6bAdo&#|4v;vZMe3|rxML!sC2){{MXgqd zE?<{eZx93CX9{eqhDIxSR{|_8QN8y=h&h5ahZ)1N*YYb>jp`GzRxAY0W<3oaP|izk zeL|5#v0R5bK1o2i2C+D88X1brQh#m5j~YFl|EJllTUx0~nW;yS0VNvOAZh=EGzKNq z5ljTMelcA#NhN(I1KnO|)hQ&z2D9znOQ8N#tYSOfvtBY_p%jAn{WL6GE<&oJ7Bnv* za6@De#O%OCF3mx5yr`T5qM!Vq9mkD{=M>Lvc&S6fFqG+pv)Az{Rl(^FAAf92gJ3CU zk&mLDU2LTWjLpQD%DBMCC&959Ba<`^(^XH|g0`#s)Qh)PF-oP_rtrB8TkSv_CpLYd zs|%FXiNiFVdrvu(@)|LCO66~a|3f_tdGgdra$1;qO=OD8Wm~!2>Q?gp31KjjW82q} zC!^h2z=WxwMZ-hbbhUAtdVeS|BwD2q)ynFG^$BA?!x${wX0qOuJLnD$1O|q}k#LZb zQF0Sw%F@cUQ#zF#6i$ml*6t2i+(Ygy`FTU(NkvBIFpfEbb+IESXTE;%;u~ylyzy)D zU*bYk?;}Jj);i;p`ZfAHCx6FR@!)ABB&#|($rANlk`NrMbLi{#iGNx>QX#Ka7XQ}l z>%Z-kb71QdO;R&Jhj1VWHvU5Z%}g6Cs@bBwFXBF{nBm^{O% z9?vMSi^pdKEoQO6LVwUXaVF8}ijk%R6g(ABE&yN25{My~ShMj$9$O0X2V_nh^7n=# zupy0!!$^44)psEvTCirAc^eB)d&DF3Zt76iUR$QF(TNKB#-nCfdN=@8tu&N4bDB5QK?|KELm?j zP@wU(w$@UtY>9StzK+abvHXoM>>H1r!dNRLQrIrA?qD=Ka57N;Djp&b2|qXZ+((}p ze(D7Np9z^cn=&@dFIAN0n^;pZSvD7Q#p~7#7qa`FZ-BP#RiHi54WE5UO(sC2@>fXC zrgf1Y0?ZMti+>&c{pVy?UriT&?|c6Y3=aOZ|IdHk^M0RFJXrQweyv=f`~<6ICon1O ztWmfyRjo6wm=Gv3+fG!QP*j&D^CVH$A%)8^7Hokc=W&j*j~udf-nv>pYCDg&e{!DT zBta|P78ZW%_%t|5S55f5lPrfx=k|>GG%N}ngX=SogMU$z+TG~r4Gb}qbXf^>%b~UE zVj)(Efae$+1BTWnjGsbMl*rmPB|nUi0jYHjQTaWQrE8`@5`~0z@~??U!ytUT9$d79 zKt=^n(S>RW21U{p56R-lW)qoKS+JhGc9kmNg%&T|C{g38FZ4bu?@EBLKNR#fu5MD! zzrMh*Hh)W0t*1tuu;!_LxaD*a@KGgL!t0lKb+DubAnz9)@R$1-pi+3V=r)B&7Ak%J zg3bJZ-OvS_lrfHvCR~5 z@zvdvLCvVyb-Hz5A_VI${C^0B`kxtjraxwt`+v7_+bY)QuK(Cap3S>awzGTnJRy%f z?{XNSN5mC8As%_B)4}=xz<27@AX{46VBE6hG4-ldCAQP2_k+iizP7*xgzv0x zP_sf)p(s==o%|gVB3uGPfrQyb*g-_)9TLs9@jG9;FQqotWY8*F(V}G(T?g%*t4b1+ z8h@RRfvzqguD;b@dbdJf*_8>;J)p}0vtbz=v{eE%*ahW=rMv^$G%5$K)ZR3z8%x zhIsyX?_(FuSY{)hZ)}_wzE_jaC$B%g9e?=_W9OpB!fVI%XPa>K2mB-TAK^0bzO=LC zocjDwlEQj4;taxL_$<$&p4DtZ7!HP=M;0{7_4iVmMVpHml}cn%+PZ%D{O|m*wYwO| zlNNW|0znU_@-5&jO&l#C^bCZV*EKvtYq+hUr=gUQ#v2;^DtL>z4Sk{$J`V=%DStJy zCafQ@L#_Q_{g=2L{&MyFA|yYP*FkrnJLneW7jVJi%$aPam@PO_6V56Ixks}JlR?Mm zYRGzfPr6Rxd~pg|L#>vbww?Q59C`7f8YmmikY_B`Fd8jtW}(9SGlS3kw9(htE%`z} zM7TIx(j2D1bNX~2ouA)oy6UQ58Gkoy*v{nSbhwTjxu~>9!d%#_U7`IPMW*u$n?116 z8G?v403(E4Q5t4ckdS`;{Db`C6!thw=R*7Z)s36ulr2MW z?_VgG=T4o-)~&Kb*RsTf$NAu~7PWO@o-8;7w^1*FQbLo%XY#LsYrw`Xobp{d1dDPv zS?>*6`>)n7stlXLywVrn;)sOm#gTt?Y%y%o8{`Jjk`xapE*dT3oPP=&#W5OMQ~Uhz z^N)~!lg3l+bL=}}aa*2X<*Xq`p0lJ!=o$V|_mBRAe3f37(1!$b1nUC?_mLybit=); zZsp1wl~q-rP}bJw+Z>JqU^aW-?{h;44MLxOy?&!yNtNEmQm{CWgVltrRN8{jXb*xv zn-z;VWAJM{H=k$;B7X!YSui`wIs~mjkkN#+rKxpAF_g?&z?qKkv@~umk596+S_Zni zCt9&Egy=QvWf0ND-DK)@kima2a|v`ej=*K6?kR(`+Z~Jqo{lI@G@Fn~;(&{Te;FZH zvpvXPY>3tnM6!g|BK#jUxuQfUN`^2P9)s4U1olUDy`tNC2!Dyfcrc8Qif4_w&@Q_~ zz~2_LCdEuivS3Cfp1Yfz?@RMzv+4pGGHR}uHF~kZX@3X<(fAGV6r!I=p;gs^TaleyFune|?o&U+@u!fbIyn^o)fYas#MSFar zd%$_JRVJf%S1Zd!PeC9|Ca{4KP|>O>>taAVmc)rEwviAf)|6kw6;V5FJ9nm9w>8k} zdc*q0OL_768cfkYbKteZXMfwQHAV^?&LOd_h4OUsAHdFn|8X=ZQN49Phm`Gahhz!!ehK`T?hevd}ZcD7%(k{!G<1KmKht; z0MOpz9eP3Cdn)2%5^2;EvPYgu!6g zc_O#n-+#H;+qS?SvaK5ScIEW@S_B7ev>0iOi+{WTaGYd@d>z|56{YuNDl0F`WmKxT zfm3TAF~iobgkhCa@a7U5SgOwxo`BU#CTydm(y{BLP4(`)T#Ay*{2>9ZqV}eIUY_(+ z!7jypq=T5+mqj8W2#4K-U`?pDGX)ivosC~nEiRF5m#MD!^%c-{qzmZBXfiNQ9h$u% zZ-4lAmYwy>V&~kh-$+W=5@6%k}yU)x3GPsFy4$w|G1Up|ew3 zfvyV#N4=xba9!q|WzLW~FQ(JxNoRf;A%9x+gcvyrI8nVlo+b_k#iz1jA&^{on-deY zWI*eevzRj-d2@u2tf`hPjfMd;ndxIpRulsxGUzrgPwzOSgYGdbg)H+yDA1kHtm|zN zdb3Y)ac%b~7>Z%Wu`&dgIxssD2}QaD2xFvX!<}|90`CP9EexQ?1P9ayLxL$43V)iG z?a;bMBJ&h+eNEWT{DXc`B4x5QIbaKcb-JyeFL9+^|1%M62UNYn!1f;X{JRVJ(uG;HLXq%-mG%AbZ!cwl0;IJQ zCwSnWH-sUSF)A$;bUGm-2tcbwEq_1W2U=T|zVcCt2U-gz;UE;r<4a0-!vKHxE`@#k z7s-8$fBbM*5J?st$FdYfxpi0Lm$a*^gP#ggYrnP@+77gV<>waQ1Mw}1PudRDAEw~% zt7rvV!k280evUN;`}}?53h%MN;>~T|Hc75R1=()_S8%nK(jGnLIuG$pAyx`Za(N^TE=@s)Q zktBu?n}rw;G8_Oq`JYl!BH5V?6dV`UdWLRz+Td+Mt}J9vVzcEXdCvzI%CuLXI-a!efdpO1Kg2lpmKUL%atb_ zg0o6L*dsyEgfNJ8b_fP$zhUroG%hLGg6rV=N^)(p;l4!c(jkXKyl$zkx)!fjjG21B zTzl^oqC%@Yx!3Ju@)xLbF9mh1x7)gEs+BehR6`d^=wXCX0#q@x(Ji!$hJ4LBVfH{SiAI&VnsoP ziIS(Tz_9U&Ay_sjT}JNtgV@Ml28=4-rp`>zjP3PS_~0#_dM!d z`OoHq#v8wXsrR&)|4y;mmbM4}?F#*(Wo3NX718g|iiO%(@vK+~C8dOcz(8CAHW?~L zr7lzyencpn^hRCR)43esoAbtwyf48mmdu^ zHjY;Me2+ovX@`Fvf9Do082~2*)GAmCsv`i%03D=*k7ubu@`Ig!s%$~*)WbqpRE&-- zmmw8mX`K?@wC^oz!`AYN0})!U+S#Va1Y) zZgQW{!iQF`4-3SajO4dLA=Vyp-|>Aa3<>_ema7zT1Amk-;Uw%0k7xCUgJH1lTw1SN z^Y4{hR<<}2BLPv)n$a2QP!?LR;Y!wF*KCQF1FO{QiDm*~Dt`8{Frb$}=(w z^1qx92Y!D5ww&7nd~jmhAJLCMKplXfJrw-4uhU}*Ii9du|M9{W!tYsR zm(V4?P6h_Td%_;^zQrpFJsB!mr7BPqTwBN%x_|dM_8m*P!5k9egO~R`hjFz1^Pk^c zP+tB~ML|Js^fNO11O2L1H}l2C>umGp-EaQc&;Ce0eow`1hMyeX+q=zp;GHhtVyjjxDLR-FS|{ljpo=5y&CgXO>y#L4lfFkhf=YKfdg%eekXCVA?MOk@^+k*4@CkuSk%imR!^(SN`K!l zRJk%GnFp}2@uOP?K`0)ry%!iB#)+udPewr@|CuB?Y`AGTF?`n}4!y`a_kf>gIjcecyd(@S%fgUE~}@%n_^)GWP8o za$a@Sp9sPF!Q`*FoSdAjn{N6&Utaz(%ig{JIr8YE@99j$*X{e~p81-~Hzz2FyuMfg zr|MjAYE1iTGB86B$xp}|N?9-(3%+7@BDxj1Y19TpvSK47>+3s48h%b*v41ug0y7GS zhrJVuI)A?EF#KGLMVS? z5#K0c(&m23^_^xT&Jm>I^9|G(afBr=SYsOFBZ@lei}i$bN* zT7{{AZDf&p(dH6G$$!pO`c*I1IqIJMUH|W%P2*BO^!V`D*e_9Z{qA?a_H=Y$`6>|+ z(%JjEM>XHj`rUw#I?>+07;f(t8w1f-n2AgTu2mUWxVJrjDG@&)>o=_!RF@Q0OcH2 zGEN1`F$^WD(RKa)Flb!V6yHX?nt8rR7*4KDuZa$9RKPFp4#08FD_X=*RlSfb7mL(` zX!%N@(vB`lj01}YEQf;%>G9&z&?1M*@9`Eq7B2W6x1CLGE3~X(iJsWw;r+%1i62@e zV;7WQh=)B{S%2_@FMI)>``-7U@x~hylB>z^E?o+{zy5W2Vl0+uGIBVM*SzDIn8G@S z3HKnf-KhwN>C%A#h$Jg3XSc%;A$3}<7VJ(Z1jzFx3=Mkus-gJxS;pY$ig;{$*Pmr` ze!?0qzi~bxS2LQ}N3xA@GB0`CbAcEBw7L<_eD=Ii+JA?x!5DHS?(0?m08LA)z!(S& zfn1*26FN#>6Sv!?G!r*;!$W&u=dzt(SZsj(f8Gy|KfJ&Bv}s$l*W1<6+4%sLN)r(Z zhT=X*m^Fws2NMCUT!fsZJpakiGFruQ&GJvoSI@sb?TtU=m?KypbPNr-TqjTdKKd_` zDn_FLp?|k`d=-q@AFK=V-iMxUW&U`>jy zjVq8&vM`=Ro;g|=dOE;C$9+{s^;dS<8ob`~0}Z+edwR~F1ICrzTG;^q;r$Vmx4sAw z7l!P|2M$;p`X7T5)95|GaV>$dWeOUUe()?v-+vd@qceR!fiYER4MNLM zEYNC&F3#8zJh9tcjPeVpw>6pUq0Sdt?~rVvfb3~P7=OHRBRockm7S2K=>X%14qkgL zj3gj$6-z6=p;Ez34hJl@qJuI%a>+SA@%ZDQR;%GuPY+OpX!(2F zdVjc__(AEu!C=U`d+9k^@uPr#{iheOdc&*JWO)wt09*b@Jkb6Cmw569hAGTw;=3O>5Ne*xs2!cIwyEL*-?aQ2)1jc<`q? zn@=0Atwgfsbe{MvK-+jHBTz!Z0*UAf9DndjFY%KO>YR12T#y}K!k7zkzXageyZ4xW z)28k6j0`cLl_H%vrXZs^Jer1#kQ)q{d`->Gs-;V7Lo9njXlO{>o6Z6hX_U*!V4sH!stMeH7|4#w?J}~xluRXD2Q67B;V>PYEL=ZS#+%+a>VIgw zOer&}m5hwzC^CDEh^|6>A4P^L2y2bau-Lv6RD+G+8nQve=>WNX0BEwzv+jW#T#v%G zGIPxS0lHrj0tK`pWt6fr9D@DV(9n&iwPl)D%;q+xJ-fO%uY!6l_72=J>0D8=p ziw1Ec+4_CYh`WfF+m$kzl1(Iy|9=4h2Jc5z+|gC}w;OJN&YN!@54N5zaI{_a#v5W> z-Q;*M|4_jG?hV|8^sn=ExAb`GrkhnXR zED_)Tt-c;wI1W6`FZc7s{S(}M0e27_2df(x?R}tGbY%&nQqQV9JO-(|%72Y;rqlyI zhZRO5b{LY`;Ap80URY;?w?3N*zLN8@1ZdG`O{Q_pt0>&RJKLo4R!cJ%5=a#e4FpC& zo$2aaHZ$DVGw)YuxF<6%d zg7#y_e#2K*J{%FT_dp{7=u*x^=oA_m}Vme{A-^S4$MYP9jNJdO0lY@WF{B8GnQ5D)f-;l@bfq zBFW;bd68tXxhyc6^dIxc<@)OHyz6ZJmN%4BS)f!!vkBv&C^JNsMz|3gp@oo|ii*S& zb>s&@N}6e@Jj8;cUI3wXdgIgHo8)lCkAsjAxj377n%N7K$A2rceBR0kRovHSFX-zF<=JeUQ4oy9ENhY~U2w7Bk!8!E{Ke1WDxX%dJ>6PB~w*A^QwKo{}J7IHet{n1U6?hj*ZqY*Ib>Q4Vk2Gc>M9l zp)JXMGzS9UCnW1!Z!hd1>j^z(i?ZTGWvnB_`7S#ogL_%8u5BPI>IGkF?#?E03<1yuJEpmBUWR z+5**r@z2x|HT>&02OD1Iii!kK`C42`y)Hh<}d{RU# zT|#H`)#qhFD2{^QND!R$j73xPnVh?gM##&`f|{Bdc%r!(%n4%T{Dh>OIeQjfwAsL+ z)q?ZHBkk&iL!uUeDD&`6O@nIQS518Js9@)80)Imu&?3*5l}Wbv`G z=}42twm50*SS)%miU?TicVW>gxN+6pG9)dtgOf-4rrYN@k#?M~=WsGV6Wn z`s)EUY*?izEqz^GQSrCdXP^BZ95^sInC1euBGAIIV-op~Zyp6caW=X5l(JfZhg? zdFMc}en51i$jg)kf9mxO51p|0esq~GWvv{wnifm#V1ejZcVaAL@^C<^q5Z~_ESx?g zfOFCG%H}w5qAD#G|AOPBogNWjYk!S$OL<0EC>Zen&|jp4#8THW$mL{gF#JH4+JE!4 zk^k?{S@I`e-C2M9>nm#*jT*QWD-@0uD~isN^>B$osH^kq>g$Jd`}-YvgMorAvtk0bAQwu=M?vFfYsumR{u`utNq>8|&iPXO;rN~q4P~y^|9L*%_Ch3a3>E^dRPK;FZhgXZfiYkwY$yJw4}bbbHD>0J z7UnEimk{hOSF>s5%FoI5dOm2k!{QSsplD3}c`~vH(OP%r40Mssd1S>3T2WlQ+)!Kl zai*Zag~84TC;quQaTx3hkOG?p49t6ut3OihYy;Uk!v3f zQ%VcV-UvX6`~8c8 zxEBou=OLZ0_bkWtbcI6wBYwZd>GS!?=*y{S`hre8jbzZ;M~I40DA|BA1ss_m-T22p z!nI==!^yzYwA_8x)qm1)H9sCJg_8%NTWwXAU!ymSjKHGYT=?$c!_XVY+A|p;(sy|3 ze%Gg-@5vb1S=6j3{+e1s4V=h4)zC{uo9>c%W0&lLgnfkO$r6f+qI*)R1?#N)?9p#@d;{H-@2QsJrGhzvbt$2@*QHsrW}c#; zUvVO#GiPQc9fhr6 z8O=h?c#5w_%YVR8o`Rz%ozU%%z!9Dh9<{Vb5og~xNkn1MbW7x*GCZojyH5py`^R^H z2`5guW`ul@x2*=>83jOj3&^v9?J&tThxS+-*W_@SlViyy1Iz3T5+aFOT9aX}_xBbK zOjUA^2TbiRaxsus7lMZB2!yoKo2>qb5ANKnc+bnpn14ONz-d=`t0i#lNQv?eQ>AKs zb`DoyV5rfecl&G)Hf%JuNzz@Kj66j^bJ*r+DCU=BmB{ikDt8SIoXF_+hl(?$1?Uk_ zSopc5g!3(4Y#3U*HmiN>*6epb`q9iIH{PgyedS8#b+vlvm{!}I>cHZfG;CyR(W>&u$Pq#!Ust zwV`@^JojEQ;KVXWCXI?Dx?7PQUImiN1G--J)azE|W3j9}>wG2E(TUNlK#R zIc}#c9p2Ke0sm!vmcVA0LH==NjryvbT&_5S%%Ug!xcx$(-NgPQN5fFl?t6q#mx`8c z2rFm>lSv!3OOJ(xBYcZ3P?0lZoi_}KhU#jSYx(kwzKt8Ro36Pg`(!lMtE5DDM}Md5 zKc><2Hn41OS2#Q{7zm8m1;OnK1|ytU(_EVMB8QNgO42rkp&=L|#3qc#O#sXY&fdEh z*1q%--1f{faAkWtC?gS(SYeDBN~ zZ}%$pIG=^|ZDL@NEEJ{$G%nj=Eg^gMxL{ zIk)BBO~$0XYICy(Dkq)a>3>7cmcV zTxvD&gfyw#Zpb7AtZ;A;swCVaDQF3JdVcfyh$6UJCF%$`j(@UQyL{7V9hnpm`ui-_ zxBu=iZT~-cj7l|Y5r0f*aYAw=&&(9d*h~lhfl*^S60>Bm{(Mh^p>>1gSTWSJlFPG1 z7h%F<`}@iFD$(7Sa6kGU2(J}@UZw)y6Wzd_C6l}ut5`7T30f>K-_zawi@&8hrwy77 zYkpnz>x3k%pPY|@F~oHdN>y_2@^rO6*zw@Te|i7alXB%bB!9$QkozSFZ)@w*QG(TX z^Ud%Ziv_-V>{wEgRYp4W6|cSuhwi#-!sp70idwF)@Ofor<&);O-ukZa;)@;AIj6zb z2LGyAqWKDE;-=Sw#sRISfiL61UGEkH*u@wv36NEEi6(uVNlJy>TL#`ouLb72&x+PJ zHj6VH(=&!I?|-(|f45duos|*);6+6WF&?Y5^gL0@D`)fjfZ#rb8QC?S3eYiBQN-%C!Y)&M$&vd%O+f$PfZMifM?IemDk2TA`*WIB_&tkFox|3NeerB${T^Z zw-9LUXnPLTdVp&=Pp-n@09Y(L{#y#ULIgqqABvPFn$!fy{#aT3bB;&|rE&(H-nVRT z-8V(|)|qO}3z0m+W4hRg~(d_buvG1D*=xEcX``eUH5Pb{*U3VhF1;5)Df6zhk? z|7n&6-$p~tx0*bixAzE&&5JZsrq7s3sMj+vIOu2mcaLK?V&{SrKk!dN0QWH9$`Wg-%5}?3t$>B|)#>Y?-f)h_2DB>#qlz4Ae`mxdwK;@B(BUKb~+qp|(~eSBUZz zE1-XE$r1>?-9P09)v}dE*ZpFD{lET@H=$^8EHD!d2XoA_#SAr6_r^h9X0<{AnS_*) zHh>E%n)7icB9)8QS;H zcP!`je^IEk?fFN&@ya{L?^%dEf8xCwdj^grI z%iF*0?!Nyg($0!pN6_U7L;}Fc;!hC5on1DHgbt&T9 zIg8J1{ud!wWB#Ntr%W4iiy1!%O_O&I+&V@ru6xpA*sRZ{Wt-vNsSLQcE_@nnC+7e=q2QVVb< z@Q~jQEs=QNB%RX^Yqy$NFz!}PhEdh_ZOdKf-`ef_p6cxU zudhfsrzl4JBc5O+2%J=v)G^>TObV<05yz1if7tcI`_tO-91>!VU|phco;>+a&GO}+ zj&0oTtFD6oS6K;%>*{}C&C#Q@B|>*vQws zRLNx|W?3jgib3z*RxeNrN>qSP1b&+tJk5`R^4)~VIPqbQU#Wjyu9vI&HyP)Dv)$Xb zL1_fad!&wlnZ$ZnzCBP8zy#AKA>Vu0dewLqFAQvQjwe=356c%jHJ)!Xag>~^2h>-8yp zK0)Dj%kqvj$a}(?fbqKP#K>rh=f$9N3^-2&{0(s((tv-be1}#g1)kppK#)8y=w9S2 zDkNDC$Iq!%tCFgHg@v7YK5>|2ATUgR1C(xv&pRDC$3cDXRC48S8w7dV=sk5fj_qh| z{VE2lrzL^V3%#P8Z*;`~03gjtL_t&qD_xicGn6Pw5`N$5?QD9w<>`CVJ)b!w#vH-A zMA84}Kfixq*tDrhSy?&W>tl^VIwuEC>U41SrkmiYQ>Q>r1_(|NpnLv&@RFITKxT#L zHlY&KBa4DjsW`)i4fl{)?nfQ#*8OkS4}bV8@^Q)%4((60->xx`gbQ zYi=?WpW6?fztF&+{iJkDR%Y^Hj4kDJ&z16U&ly+8Hdm0o^>Y1qN>f$UdCOYOB30ob z-ac@-pdYs`4F&>n3mON>0CvEpH}lLUM=`gebe$m^t$b-|NL>twfNY#Ox*8e))~|=5 zp&@^Wkijw;!BW=Oi*CKb!a^AA>VnA0lc1z-5c@7H`GJAEQG$i2;mY$@|7Q2Oqd(r5 z&|1No&2SeXYYU=QmKmU!@W#vDdJA^FhXiXnAZ->HLQ0^b0!=9qnP7=-K0X``kfZe^zzUvFSVRu4#h&iN>Ihlq_7ZKgswMAqWxi}H^N65&T1byHk1SqVkQC)-N z$KUN2r4u67%OZcPs-gx+2ilV$Wu48+HH171ZQhP!E-pKmR6t0E@(4ybL_!gAJ%UKQ z(5f|I9l{~yt2@CPss~y7JfI@UT@8QXhydONPeWK~5%-m>_%xl(>RYqrx>t`m8a0-n ztR$ONim^UpGg`D_bvuNP!uIoW4U^OCn_OXcy?a@UH}Y}+a_y%I@)cE?Dn>mm-39Di zXEUXKTIT>X=L)^Ws2NITBhQ%Ws;gkls#OsA``jO_USFU`MvbeiWghXj}-SeGy&O68z-*|NJSERYui zF?cl;5>un&1&3ni86gAJopNdhC1cM|Ep; zSFu@aA=V0{RWukamxcd*%^K<#_udPNHESRc$C8spI$5=xQ@fev9-;4mpEX5N23w(K z780$HI|Tk-zxe;;Y(x1xD+J3AgI^d17&ZbOo_bHh;0E7EehccGdPP@c&=M4NxPrDI zgd8E!QWjf=M?5x7j#Gc2Fr8FU%YR+F-TRS_ z68;`jm11QV7uNdeyB0P4sQP!0{j5oc-hLiI<+N3eJU3Tk9^57d9R3~VTxAo_zve=#t6 z%ig_EOi0^o;k6}8V5l~k9q!@;5>91|s|{7qQHu&=s2DQo3X%JsPKlb?2D%}It}ao@ z9rdlIlfj4~2;oOu0hY;38VQdXgMNQc!dikjN%8qm?<&6a%;RYQ>M{=aPs9(57alZ2 zu+4F}vGK7R0rr0+R)9{8@XeVwe^W2lPce~o$-7`@)lTTj>;kn@4cgG?C3gv3P{^Um z{M3GApKagM-|75LT5(`=kcK&ebqT}Q&@iA~yLK%Khfe+uXQCKMu&Xy9VLd-Ak^hDfs?#<1W%74o# zS1ryVBw<$Cr-sppGgl-b@fLy1$}w0R2^cO|$4ofb^Jd4_1gOg1y8haKLd*PC>)*CBsH6?df)jK_|_!ZBCZO!3e1ayW4J z-S4TZOe#)U_wJ<*}e}oItTzS)$7g>l*sn+C&0_Za+C8SAMe@FfRf7f%h61 zXN3ixaU!TFDv}(?9uM|6j#xF#i?dQa&t5Mfo65v)Uaz+acz#rjc`|&y4v?!dfVzhR zT0ejFT)l6$LHJeSWOw)D*9QVSW?UiTmdsneZjc+s59B3(53YU?p1JoKFkfkg<~7Z5 ztm+u#pUsDCAzO@7jL~@>#~Ig|T|a2~!L4p^&lPgM0GK0KmpBv^6>`m@MK{FzP9#|b z7%-a1?2aAnxHXHcBV`bwd7k6T%GMf|EV+M$Eh-Y62M$cBZRk1TX;sy#O8GK=2@(-c zcTQ^spP6;n$36xlBO?$mJ<;*#qj2-qt>7fzx98^ToTrouq5#ocS2%mhx zEI`m21V+Q0Cqv2zFjZDy7WV+NsudX0Q85eqfXPbS|6qs9Xc=Jiql@VJ?2jQ_c5;6V z{9MH-yoHLa<4PIx`WaW#NQ>8jzNB+aGX+|&VhI-p zj+_1Fal+*cI%kz|p)5p}e53Z5gKe+}TV+{nSR5!Yi}m6Depsr}z)q_btb`2Y#%NU? zv$I34&}aH<)Jw)q3>dhZ$K}P<1j>J+GIVc;5BG=W6;5y`BgyK|&4tqA$CFk$NQDqN z-xqUo;H4XG`2X4a66m(7JN=*5_axc!Cfl*)HMSGmsgsaG5&|I&IY22C!g3fW(CL)_ z&?znbcbIa{9C}V$hBjqdIbE>U`V!-`&hgH{C zmGC4cRMpLKwecjWeX@UtMrhU9RWXf_R#$8D3tcbV+U#pajZ+2} z0GTBBzj5?D`Q!_^t5<(dS5s3J>wWIMVhblcRq?8RLX$H-!!6vh*vWsLk{qWV0~fzVnd_h@}T#Se%s*Xw2>`%`G}&$P_Aye@kU;C zcWrSoZFe|Gty|8vwj?!{NFeV^H!1$uI>3o)?I(4MM81fL|EqnwAct&dzOPTCo*^j$wH_>bv|ExRuEJItI z{iyE>&wlWww8YVwXe~J-~XPjffqML@_3Muj@Pffmim9zub(PR13BPTbz#8$ zqGcouq%K{6SZd^Pa1V2D)C@}Iq3??cOvUR%J+FgdFOJA_Q@y4U>*I%E= zF1FFQ^=0cr;t^HDYOJ{T6_l~Md%7^#1tx@Ye%eCcI zMM4p`Md3ZN`zLhEkShg1jajeMQxTi=lR=OE1bLSnA;rQDqP$@QXc;q6P|z(LBap3R+vLPTjwVM~owIQX(MGlqoEy8%WFI=> z74+tJ`y9tM@%MaVZ^MJJqA{7h7A=?0H7lyq7ITs4^0nwV6upiKoBcHg@>%=C1F5|0nn- zwiSM}@Vb&)OI~suz2aQ{y8Ggm)??9mj4gjeUs$$`uG_JLx*Vf6!=fis3K1p?UVUg~ z!^1Q-d6x(kb0=IrM&ialtUn`E-NoSTmM+^Vo`y_~o$8GOc(eU;)Wd3*~=_r4> zunevji^sw}TOeWal4vg!#{6RhJ)iog z`B`3#hW7?^Fk&yKQ6w`25HQ}PSYpJU9Sh`%SLdbC<24hYYR?HB{&pZf?1B3qWHFv+ zd+Iwg0j+Q#pvsJ~ba}&kV-6aB=E#3(^{E1VmZq@+5-Yrd&)Z`4l?@IHU#+asEi9WV zfEoXX6J1%_B{4JCU9K~v*GE@S0`N>J*mbSZ#MT0vNP6$&1k2sfN#eJw&X2LvPVWCY zH)uP&cm442^T+3MzOk^iVQYJhzNY$D>wiVfcQ(iUT;98R^rJ05n)33Z4bFd#{vG%H ztnX(pr+Z8pL?c76E)vu}^UO;*mtJ~nGM~ldi3xtD#;E{Lf@hW_tngIwC0s2n$41_N z|Hr+XH*dke%m20fpL5q0JmDYxmtK8sLtGJ>@{tj`nN8H25!USQa|q=>&Q7H8{%L{Z zsB%KGxguX*v$!Pk{gHov+jk<@dS#T-t8wIg%k>Ja^YW}Ei*zbo!V?9d>h<<= z?-GcY?W!$w*?pZUjnjJ6NWoV&Qdxg$k^>-F(4ztnUYu(PF%i0bcKS$mFoHQu6`Fi9 zk&>2)@jWtsG#)&@>!+)dD)B>wA*odJ>f!mMfO7@G6WF;%=8hrB9Laz0@V;Fr!O+=Y zbnE_Z)tk8igJy9>MTL#bW|2fuMQv?P>gvkl;-5}$izRr!-;i~ALq5+(`_{N5isq<_ zW0$Lix59~~fd?T`R26D@BZSxhxe|m*ZdAAzFoN}H)r6+lJ6#mq5gZ@x+;eATBYOg`4ZilRP2HP*c_GG>K{PTU z!ixlBAAInHp`qc6YJ*`$GZIxq$cvEL+h@#&2u;55Xu$&jYc*azM>zC#bxmyFFJ?D2 zeRb^M!N)9*|K>@BR#B+V{q5aC#bZI0c6z&+5G=X5^b~u>oBn_C!2z9G`KeVfceVyx z-u|Xeb@nPzU%#|krPIZg%2(f9ROS1{h({AqdOeoArhF@VerfEe?V6xx;B&hAg}K_? znDP|xbeV+-ZaSduq{hGNV6RfMq0EJqCdR-iN@>7J^$TfcWO?L`ugp1j<6;wKJ0c|c$By~IB_xZ{BfMXop$B)4c=5|S(QJY08n9e)kuYuC`O$1~(=evzpn zyhz|YdbB%x<;o?Z*_@Om&jkguvw6r6xhAk?69HijR2(9w1l{eqkf|i`eZ&Joi$Y1s zLVaW7y~cmbE?aE-z`I$@IUe*4>56p~4e@()Ov2r{-zt{1&uRq>$N^s62SHLajGham zbKaoynBFFJm0P{NO})N>HFn?V=RCrKJB)_9s}=~wWqC@CX4*kem5BvB6kgRXD9}3J zJk}xv%{=4@rReaArhrglXcfzfc1c}cyX$0&i8Oy&qdGfo4w|iQHx;dGoz?jWx*++g z&XDJWCelsn=%fNvBBCU`$J0Z0pPh_q{M8ZKX+R+0C0QQf z6@`i5c6X5|mQ4{fgc8+`TvEBS$!_2ISa*N-rvFUO*~i9hrrW;ZHF!;ju0Is_GY$XS zKsQ-$;;;7%@A>T`=N|dig&b1`(a3nPE+P!?-w!X=Mn-y)UTDzp6_c-oGH&Es%`n-* zgB9wMAMko7!Vr^|Fmk&>6MQ(-27}tTYSrChZS5DGAFceg!PgE(?IyEUZTBSlGDzt*A)a$kW zUbjE!_4+6n@C5>XKk$CgmlO|WL(_K#Izn}1XrS9Ug zvInQOOHvk{I`t*e=?3Y}J9qL%>izv1Hstg9ct-b%`o0f-Z_T4Cr|mOQ=ns{G@mkCJy03i6x0>~92(-Wa0uIs0zu2DPZm!vYZL2^%}|)~UQTjz)i1hb(!ljh!m7 zF{sL^F3ed`TgVoTRD^rxUAPEd5fIl%2v=8>`wotHHJV(lR=a>#D4}#*1)>-MwOFD) zA(k{8b6Y*@hxVSl*|?(4pgte|&F*a=$7qnUb7sFlD#|THX-LmSgIOfyx42q3>6)!- ze6o{Oko{hN)h{Nu^CW-WZP+gw#UFXu#htl-wPXFS(F_aRMSVRe=XW z1w$o8y)AgJ(9aP7*@E#C`gaK7;ZS#17YP-y70u@hzQLhj;3tm$qJmrE<|#;$iCW`0 zYE>#hskY{5DdJC*D6c9RcsxBZJzVH7*wOLud=Z&|IbfzmyB2@Z**nfod!ytpC3M4! zH&CIfkWP=EKJaww)0pq0b#F4b;K&fHiwuMN_We}f&~Tf^Xq>UlOgP|i!Gz2!-rCxD zI3Za*tPsL;La<1o1xBb`8x>UAQshJ^NLN}~X1@QSGW*V*-uw+4c$Jmc<(gUmJUv#s z&$2sb^x%yrb+vzMs`S+b4Ji#I4bWPKsQlwG${%9H$U|f+Bsy2EBU4%^_^)azQ;BiMX+&`AX3&>=Dh42gZ){-@)eiE3z-C!Eaa)ETOZ1 zT29%2AHTwACIpm8REZ@CJtIAJ`Z_N0fGS5+JEn>S?0bK~fS3Kg$&ri0`g$@kQghGd8(2c^^Mf;>F?d%v;8a0)I8gshZ)Qf8G?0@VPwme zk8_)vo-Vld+J|QIeJoI%Xt4>HhfNqTVJFJ9iUlkf;Y0)bY#gf7^#2KQ#EZn5=q}L?4q}?4pPt6RZ-y; zESwr>9wo?UlNYcP4AYQA>kjld(=)P=2p;2#;@<`Q#k+@hw|-eyYpl?f7nQ&NW$Gw> zlB%!iPWc=G+o4jbn3P~h7vRA{??6->hKrddgC@aD6^t-h;`D-x1oC5cX^ZI+uZ?QN z>Vki)SN2+6cdbp^H52K~YqVthQ9udvv%MDAGTt3@6&DtPaBqJD z^1nh=ji&2wnE&QzlTcd*=^HPZD378ECGvf)9IT=%wg%}hdpqg1yRyi+ctWNNRhA%D zGZE3iB42hm!2(3FnwNyf6GNOjzEVw={Pneud3wE94edF3i}ACyMK3?7ZRvZF%5G^U zT?$=CTDDiw(t%s16x^Y4m9C0FwCsOCPF9=LMm4(Fjd9~)2_t8gAT*njo4NvOBkhsc z;zNbB@?*`=?z`xMk#cyNVvd1b&k);06J?MOrB27&*IbCUI^0_oMz9bH3>^orL9Af3 z@Cw2RPb;Ju_~#e_RF$OWVMJabQULfqL){*bR$$r3<^gnD=peCTkkk<&Yk7Y>K+aS3 zq^o@p>5)_0J+?v8j+d5GQrV)>fQA(cMb1OPliO9QY(}USFp@NJ9|qaA_$2}C`d8Y;|YBR^EBrZu>_?+?+(BF%oE*D zyf~j@${-qHet_6deA8g}*5=VmBe#8?-O=h3305}ha>rg6i>qLqw%1?8!7f`5@^ zRhZ@#l4-FJV8LM9XWWHCovrH9RTb_TKQUPA_u1=vKc72ru#9ZM9@2l8j*)tLLE|(? z&LFk@?oz7R{Y}y;1YQw{$vadLsAI@&lW<1=O!_N4?vCq#U$`fp>2Ootm;Bw;vSTyk+9Lx zy_>tbez-ZQA1jTx)pYAuOgB0-ktT!q302u-j_ornLJr5tWagOowEGz3hveBoe#XAHzG zGC6lXVQ?icH&B1=Hqrn8^$0zA(>WUbd{a{25z0#y9=XHKR-0-5Ca6iH;Vdk0l$a+2 zkMWY?|L_h4t{&cV>UMc`z3|c{ioWgbh!mYWe4wCTx;(>^3wfUIQ&vdHGOQK2?DL4JQF`|ry_6^*&hQma0?P#_kZ zY@Fk=iyDPRX4M-9hve&5&0qK8c?4IYk1$Lk5fTOlsY2Ki_gB#C_u2<{5A8;xz4S?pD}(9y dzW@LL|Nj#by%AOwhpPYp002ovPDHLkV1oKMu-O0r diff --git a/postscript-go/src/cmd/testpostscript.go b/postscript-go/src/cmd/testpostscript.go index ef6091f..80a780f 100644 --- a/postscript-go/src/cmd/testpostscript.go +++ b/postscript-go/src/cmd/testpostscript.go @@ -6,7 +6,9 @@ import ( "time" "log" "os" + "io/ioutil" "bufio" + "strings" "image" "image/png" "draw2d.googlecode.com/svn/trunk/draw2d/src/pkg/draw2d" @@ -43,8 +45,15 @@ func main() { gc.Scale(1, -1) gc.Translate(0, -380) lastTime := time.Nanoseconds() + src, err := os.Open("../../test_files/tiger.ps", 0, 0) + if err != nil { + return + } + defer src.Close() + bytes, err := ioutil.ReadAll(src) + reader := strings.NewReader(string(bytes)) interpreter := postscript.NewInterpreter(gc) - interpreter.ExecuteFile("../../test_files/tiger.ps") + interpreter.Execute(reader) dt := time.Nanoseconds() - lastTime fmt.Printf("Draw image: %f ms\n", float64(dt)*1e-6) saveToPngFile("../../TestPostscript.png", i) diff --git a/postscript-go/src/pkg/postscript/Makefile b/postscript-go/src/pkg/postscript/Makefile index d4e0cce..1739d3b 100644 --- a/postscript-go/src/pkg/postscript/Makefile +++ b/postscript-go/src/pkg/postscript/Makefile @@ -1,16 +1,18 @@ include $(GOROOT)/src/Make.inc TARG=postscript-go.googlecode.com/svn/trunk/postscript-go/src/pkg/postscript -GOFILES=\ +GOFILES=operators_array.go\ + operators_dictionary.go\ + operators_misc.go\ + procedure.go\ interpreter.go\ + operators_conflict.go\ + operators_graphics.go\ + operators_relational.go\ + scanner.go\ operators.go\ operators_control.go\ - operators_dictionary.go\ - operators_graphics.go\ operators_math.go\ - operators_relational.go\ operators_stack.go\ - procedure.go\ - scanner.go\ include $(GOROOT)/src/Make.pkg diff --git a/postscript-go/src/pkg/postscript/interpreter.go b/postscript-go/src/pkg/postscript/interpreter.go index 73df4a2..9987b2f 100644 --- a/postscript-go/src/pkg/postscript/interpreter.go +++ b/postscript-go/src/pkg/postscript/interpreter.go @@ -7,6 +7,7 @@ import ( "os" "log" "strconv" + "io" "draw2d.googlecode.com/svn/trunk/draw2d/src/pkg/draw2d" ) @@ -47,21 +48,26 @@ func NewDictionary(prealloc int) Dictionary { func (interpreter *Interpreter) GetGraphicContext() *draw2d.GraphicContext { return interpreter.gc } - -func (interpreter *Interpreter) ExecuteFile(filePath string) { - src, err := os.Open(filePath, 0, 0) - if src == nil { - log.Printf("can't open file; err=%s\n", err.String()) - return - } +func (interpreter *Interpreter) Execute(reader io.Reader) { var scanner Scanner - scanner.Init(src) + scanner.Init(reader) token := scanner.Scan() for token != EOF { interpreter.scan(&scanner, token) token = scanner.Scan() } } + +func (interpreter *Interpreter) ExecuteFile(filePath string) os.Error { + src, err := os.Open(filePath, 0, 0) + if src == nil { + log.Printf("can't open file; err=%s\n", err.String()) + return err + } + defer src.Close() + interpreter.Execute(src) + return nil +} func (interpreter *Interpreter) computeReference(ref string) { value, _ := interpreter.FindValueInDictionaries(ref) if value == nil {