From 26075750a3169cb9146b1f766d5a4d24aabe0687 Mon Sep 17 00:00:00 2001 From: Alex Zhondin Date: Tue, 14 Nov 2017 22:22:07 -0700 Subject: [PATCH] upgrade win_flex to version 2.6.4 --- bin/Release/README.txt | 10 + bin/Release/win_flex.exe | Bin 561664 -> 564736 bytes flex/src/buf.c | 2 +- flex/src/dfa.c | 11 +- flex/src/filter.c | 9 +- flex/src/flex.skl | 44 ++- flex/src/flexdef.h | 36 +-- flex/src/flexint.h | 4 + flex/src/gen.c | 4 + flex/src/main.c | 13 +- flex/src/misc.c | 89 ++---- flex/src/parse.c | 18 +- flex/src/parse.y | 18 +- flex/src/regex.c | 18 +- flex/src/scan.c | 668 +++++++++++++++++++------------------- flex/src/scan.l | 37 ++- flex/src/skel.c | 671 +++++++++++++++++++++++++++++---------- 17 files changed, 1002 insertions(+), 650 deletions(-) diff --git a/bin/Release/README.txt b/bin/Release/README.txt index 3b315c6..cebffbd 100644 --- a/bin/Release/README.txt +++ b/bin/Release/README.txt @@ -1,3 +1,13 @@ +NOTE: +2.4.x versions include bison version 2.7 +2.5.x versions include bison version 3.0.x + +======= +versions 2.4.10/2.5.11 +-------------- +upgrade win_flex to version 2.6.4 +fixed compilation warnings + ======= versions 2.4.9/2.5.10 -------------- diff --git a/bin/Release/win_flex.exe b/bin/Release/win_flex.exe index 9e398a135f6610cd16bcd5d10d7d75a154bf210a..ef81a7d76fe6a7be96a41491a979d2c490e72aaf 100644 GIT binary patch delta 213183 zcmb?^4Ompw_V)}7I@;i1f}(WjU1H(4zu3$0KHq zmi@1mWFPi%%gPGu3)4i)%FN2j%5GMhu$z`wvAE9rTWjqz1AW~8^S;k(Ps2WI|JK@T zuf6u#`|Q2XIg20ev-p)ho88U{4X2~8bm)JF98u0QoShtws2GQ1vWuxp3!@#5I3!a* zbL2=m%HfD{I62?`>(~&y%z197xv6f)0LqB#;5g*G`>ZaWln#!yw}G>}+cEF%vwC*j zj0D6){y}gqkUhGb>%V4!AM_ju=OUwGf@ee}cd9=FDp2tr{B0LJKdN_!VQxX38JvMD zM+c}3#y-Kn;R+@5Rci3*s2-iDYzK63EWqD>&wms(*y;Q=80{JuRp1W}b!9{?^9Sd+ zCPZE14?gEQH}BU1hflSKuu$x3q$_r~idB+7ni93EK$tmW>h$e(M;7Ke)Ugj8jy;!K zM=B22R~$*N$bRZnfx|J$N*?w=uy4%3sO*+tQB0T2#QiSE=hISie)7iUrsh=aaR20; z665Pu;7~XH;&N2G7F5)C^aXNLv(%mQqa9W=3aSeE{gaG>MZpJSE*i=Tg`j&VcCsi` zqT+!BZsv?yA4pTJZ=h1*BB=D;{$RIu`JE_f5z8g6t+N&duWvWpxhS~4-7x&V+irNg z|F70`chzV9`6bpOSM;x$i#&@8g5BEpPpYafJHvY4dQUyR&*5l_EwVngcBxknIH<7T zRqcCp@*H&`?Qza<&9rvTxbL;+oQdY7V(U}uSfH%AWXZ4O6Xglk+v@I*9S)zdVsXAh z-TDFXyEBtFz&@Pm=geBlyh1W-Rw1w2^8$2sSlJKbA~5l|mF}!ri=-9rOxqo}yrt^I zqBEmE_P*%qn7Q3wHYW4k@}I5CTg-}IJC=EBmJx7b^G=uBX~nK4X|D4!x0R0!#jL}{ zl5M|0a)2|ccKbaQyFzLEP9CdhcHWX+RH6nf6wA9|`P2ZHZ^g1o`A+Nd;{jJkE3YMb z=dz^sXnwZ#x+PHl23ToNFm+vA@L_k?u_(s7@>3L3?Ru5!0Z&)~S|IPZw|9=i+q;s8 z4v}lcyRBHRo5!72U$t*h0@XU$;!aHjixt02D(+gAwi}t9@J7n|6Xx$A5X{srYR6wS zv+1qe3%cg!Hv8kEw+J^iiMrF~_ExTsFjH0=g`M7|%aC0Z${_DjMc}fIlFBFi^Tis0 zj0DPRYG*OT$|eQS5W(h-y{KiZHyT{`L4;#wgX?bkyVKRxF=KljyU#W6IUJIj8cr33 zQ{$0>)#)E%Owpv`66+J|mr12l)v4Q}9W~UMpi0__s`^E9E3#g4_^+B&ni42$QJ*3k zIacR)C#iAhUOx5r1yDR;!>Qn7XY?|=5y^0vd5%fyvy-6^x-%HnidI7NGmn<9o>V$r z-6o>6)9=wbSU+ceX-@U_b`-03$~X`qZp0R=j`oFrRIz$qE{dz_{T+)T5Ag`rnE=obyEySN<%d;x&M9t(6gPUTLx_~ez+>2dz zTd|wI3Vs}0*mKyoIgV0Sb=6$-&0-&$-zZ@7-V_|&sn<0gwuC#hY0n4>CP+8sbYbZof@~|-%WtOPA<76Lq^%}}RkiVh@f5yc+jCv5@5@@)QMkmrRjxM^SYYDeC0R}-?1-ahJ5>P9$?t(?v zQS{Dh$w510?)0t*wz25{V$jUv) z)VdR?ZoARVpjqaB>nlDW>{{=?xmB%45NqpNlM^&ct(_B(2Rs!uPf_ztJZyQKXuPW3 z-paqD(WLqAZqx$eolvsaTla@bkzhLJx zyPN3RXym3d|NphmezYxWHGN*ITGdl~|52?>o=74%JP3qct+R>M?&p6a*5B5uP5W3A z6?zaltjgTwU3oPEGj~=@VEb6;ndx_0?GV{7=3Y2PToOIe*)DTp%Od9&!I|-W%xN^8 z_Pl9NDWWK~7U5hq?+8yM_E@pAVJ&-3tk7EmOey}8@VrA>ssKzXokviful<8tm_%)) zEMlg}(Pr`lgOF#zAafD4)X5w5gbiUY!cAF!QuGXAo=in=jWCaoFjH2T*|Y;SCiN(K zkZ{k#2&ooExZ@+-lojS~%iJstIgj+ti7y(J(yMniP+Ya6cX4 zrYS~S?lAK`!n}Zr-ig3VBSpR6v|?+~fj1HvMn2EVAlsKzXYmaa1}RU4$#*m~O5HN8 zq)1u9I}^+kHxjQs>HOClwuc-Jr#=m*_J&hC!>L!osprC}O-Sjf3C&GvXT^7PIMn>l zT{J-nrgY6V@5;g?^FgH7mFwR=HawWk_Gu*3Rw zTVqsO{m)NUWN$`}!+(wyy9^2IB9|Jz$3fG_nAy>oHSeJQ^g}5$<+&HCrivCh9TnNH z5SzE^O;i(iBFAt`7P}a2Rd#*aK1?!JzfqCB7(|D^OVz%zE}8F|<{4GH7qzb*6RO(g zcUA54=ZatbiG@BmgX(!~2G^5n_y!2NP;OjrRUt~&g`k7+1+_Y6)TB+Bb6ja$sWY(t z0BoS#*9YI}mTLZ!>T%%p{isu5hNt#0{-&J>tltI5sEl<~{r9#Wr_2`)g5=HJRis{Q zq#0!V;_TU|oFnuCiSwT$XcpkjZ7wlV7w0)joodU~tglbSF;`sEg+`&|{14@rJ6t|> zLh%g<^NJXjP%gOnwuJWtrpxuGLV5}Ee8xHe)rHqZQ+atr!9?}SYpL8s>s8XOD&$?c z5>33y=Do2d=K(lnb4Rm02~3@tX|U?YOdhrKHOzGgQR>7^&6(=hRa8tC-R*yZNorH9 z`jRN6gVpgl(Fmk0Y=@^5_Zh%IU_G)ik@cx0(Ye9(Jh@+f=1K30+cBLJYeE~7Oz5qA z4w+zE&Qd$72O+g4l{DPp$=S$>=8mkXp%Dv#KxRV>Wzs)gvj*0M2>z=ea1_Cfhsi!? zL2*#}YXMm-AhBIjCb??x-`)ErEUj=lYACos^9B-u`^&F_LwlUpkKEwx_ZzL;Wv-^4 zRs#2m?N+QGPW8UB;+NuHO`Uu;uzjk1xB> z@IzoJ{u2Rd`@lM!i;b%qgYFT7w8iC(55cjRafGF_`zq=x<*5P+I70} z1q(U+X(fgSfg+SaH_dA7*VLNo4Ai4~4XLeC{)N`#OmxpLxl_km3AJB!Kos8R?_RUI zF*vTtb}U&VR`?a&GSY=l_MBJBuigUIZtn&YwXp zl6l%&btjzJI(_m>yZ_I(`#*Q87-k!+dN7+uZLO8=Z`%F;o2gV1_y2dGIQstwL_z;o z7_h?qzr^nTFCdq@f9HR~3akY>>&Y(~%b~{~>#$S{ybl6tL>U1cCbo`2S4VW1AUgOo z%QdZaD7JMt&(>k(SE57kU%mTu#W?1$)=+e(`@T7PDI?e`r8`F=zuCqxuU;v&+{aGt zQMbI*HZHEGe6dRvYzMnonqvbv!giTt>vRKh*)F>eL8odOQBYT_YBLhSttq|C0=S56 zpE5+Nvsqk6H4@_fI3PMTqN}L*-vS~H82hdujX5B0h1o!Ap%)d_2^0suBr{>C(#&B}+hXrRkh`lKb!RSQwSZC&e^6tT-XALw*&m~D7 zYYiDH^HrM7cvoC^ih?1}C}w&qY079@?!1a@8j&1}VpJvOhNxui6sqM0r& zPokOYj#BE?Ey1(ab-DgX95yn3!m3c(KCGy%f=+?Uk5^ym#2QxSuih1pqjKTpzZ#nV zTNC3lJ!?_Cx2gh}SSCco!SdvMUP838)?%*L-_WarV_aAo{00qx_5a48H}!m49iBNO zkeF7_>+7MI1*odEuo>G8P3=N4ehA}%Zx;FmR(P5NtWst+P5jF{sSX$^wU!H;t1od@ zC;j1idvDAHC#i3WQ0^``FWvZiK!S$Bf28&>wQ}Q0xhU#rbZ3IWWGg({k@-`3{3^>6 zZMp6Xxb7ayd6^$A`hhEo$_LV;#SUejfG4`@L|Gr6LSPeSCTF37_-p0G2i(>9PT4on zV~V%(Nfcns$#ZM_RMe9Si_sBL7h1#3`orqvL$4AQMb)9zLRv#h1BuHG#79?qqFHn7 z9YOhFR`wKB$ND6=p>KRQ^gpwGgX>PJ*;rKLGi&5VOLM3r9^?9lIQ=c?eaewTJe%cHuPv2<@^dTOS87+lq_S7-LP$Dg%5 z?!jk+ulE~22oNiQmL6$IJANtcVeR$?Xef}qp_8A;rcJ`CQ^Dc=yLExdq7PtU9eZ47 zpqJ&wU}T)yzfYXdTM?`K_jG<9e7yfyteqd}-wSh(GX|U+HLqJRbHIhPlv_UFcF;}? zs3?FRQ@ppT57DBpX9+KoSn11_oYu=&WIx*2Ie8%SsCUJ7TxRmkjko$Gq^nLWxXyCD zu=w-fwsX#b$fk3$5(xaoWhJ2(j+4lw&DICBJ6$9c%{sbeIO_EOM}6 z(@v!AtNLuwBrBHorlPBlfR_gTWdqOeP5qw3S}-(h9bEla+&{wRr00Os?7XLSJv zdtsj~I?sBQSfgpXtn(n6b&VU8di4dJbkC1lf*$?dQ{lT)-a5gy0;%(>v%G}&!er~M zc+jqr>Ul2oc*`?9tv+qvsCJ76$mV18DSJZbebLk2@>HY#y9b?eUL4#$cpQG)4=Epv z)m(?a=aLXDPtWhU^Uf3^jL&Q?|9ZyMnG}Vr%a1nhz}!j=hz&k7q+i^fAD}w!&^%Yg zZfB9Yt|0i$kba3!H!!_LMbUJpnOr(l7B@-toE1F#+@VQl7l4XYHP`ao5uvPU{@z(b z{XIivEhWa0CBYld?crP!44iwmb3*VR=bnr7!E@6u%E8!gWeg}RaNJ)}KYL>e5*7O# z8Dqb2Vo5y}S4-YHZ#5$HPmbuLHG^^8<&6NtH_}DgXP8xw_7$r~-VRj0amb+?q+2~@`CEurqHDrcDrgv#QOrKV-x2|f^v5$bTR8N5c z(T=i?bq0|)fo!!a4pGpAiT(bHMTrjoFusMlHC`>^2_r^ef5*C2gkSJT@Wu0bXPv|v zKR7@?vpP35(PwO+%o+$ot5_>ilc3}B?J#lL9<`wznuo^Ta>7h}B-lBvD?D>RS}*6Q z;P|xkJiTw#JPBtHic8W?Sa-x*<6MENqiCnVt4HvQd-ckWSdttyKh9f8M?Pq&<442} zm|#DoZaA_uSf7^SMbbCN`%#q(L!)}8SMbNQuI5&ZYQ;tY_5SZCMk5(lf#jE*96-ta zoXnx*Zcfgo`jHP%CC>+8(AknC8*6!%RD}2mV%*%S{U# z*0q4@&D&LExGPD_yU0d^m56eepp+6(ZX73BxsjY?<%V#QmFt6KO%CL;NEpKwTB2@e zq3H&lb5UhuqI=lU!&~_Z8YMJ8j8Qafy0HND**7 zPts9`vfUad_BUqZKnWJ0-lm$k^+6YZCu0^@@KYgcn^ZDwC(~>@tu>kWoDhqREx1(Y zq4Z*P&SX-{Q>^a7pf0}FF*M(090H{2CUVeXH57pW7#N`HBY1=1Km-9s6(pWLoRVA1A35 zJehS(Qa|}@?UH}jBBZK1StFfdVl%~@w0EYeU!rt}*s?Uwbg0JwsM|q(V?CvgQYuKP zEMmWcQrz_}4d<32#gU1(SJT5gzs**jyZZ9I4S9QWp>jjs{sR7kQ#xq)dGVonaq5X1 zFj=2Srb&B8-4YcY>@y+>GldIB42?QDIyi4ca+EnGc-M%b&UL}pNAzsB4tMRnwgnH3 z7!oyQbkI98xo6yqZ1SD1H0->leHNIOn#lEjt)(J3e&qS+*o#K4pg7NNR;(86B9q7C z^h~14$wtM?Q&Z3c=Y1BsExuUQ7LYV|C^t1ebeni)v3j#O+^Q2`YyefYSecT?;QQhZ ze`4?x4>%G?D8i86jp+qNdW4~Whk_4`8pt&o_ImK$QT+{S*0Udgd3WI;fVv2&aJa9@ zLg&KP2d&sUFySljS7M#s_G7fwaPmNP`p#9jS=y09H%lGVCkWs0!HOT9WsNgw@rou@ z$bXpgQ&e4EaQX#j<&Q^AF~gyGU-KBu+Px+9rA}|>_C*ctJ7A&^xYVsu36ek%-r~U| z$vP02>B+=78XPCW;GO*c?Gf|VF zJA)5qCYa+cWJCFk$wVB0K@wV>%R~>|<>lluB}r3^1q5>ntbGL59WcFI@6Ope@`8N( zma@)`w9lLSma!R}MG*e}Xem(*c{3Cm4gK}ar?+wi^ncBXpHUf9zw&Eq(h*M6c8~N7 z^RC%eWbA?j2)Nr8@WYPa%~=D?8T#6Ap>k>*TiTtU$ubt*4~A?Tu$PqYBLL9*+VlfN z?+7}GaZKd8_Zdf;x@X8K3j5xp>Oa)l*|dO#x#>~bxw3Ef9MrrLC%C#1oeo(0}M|k_{{>pO~Y3Ju1rDwB|F+gNdpLW zvA~KnY!1Qbj0RbNg-s(=UqKB5rD8`86`xJOVFHY2U?l-tPr|vs@RbdiX}Z; zTg1f1#b~rz*d)Vo(ZJQg80=6VBb-9c%h=HI8OuoWMv?qDQBeMCV^IFHf?C6H6FRB$~}$KuFL_9c7-nlx%PuNXK!IbJQ3S)t5yb zCsDCdU>9BB02Y&|5(U_jN%|L%gu^feYV?AfttgfNkmx?2)IngnD_TnrNPQzqVcSt)iK05?wTNvAFyTcz- zYtjykZ|iC*^4vFg=%URU)f3gRVo8K`fMt$BGzm;U7`@HgIXW=T9bI4Q@-;-C;fQwx zFd80#wt;aTiYLj$gwq(+7e{5rCZY?LcU4;^VMySN>Tyw-F+^SXy_JA<4%0ykPBFZ& z&}+^rl}Yz0lo6o=$*eWJ+k0_TwQCjb*aLY-0`8hrNUCNw^hVJ=J9u z_G-c1JI0AnL++g|G+vdV?6K*T-5GOoV-a%PQ2@hj?ii%6vV}5{3TCv!0s| zByqmzZ9ZezXb#|IBgyr#$Mybec}bL&ObrjK2MX_ViC+YApLb~| z%zepaH3+uBMW;}(5KHHzu??}nyi}I2P7VTsd>Czmj$vKi3{zCx(BiDV)n(Re#eH{IMlM8FYyVd=exJVJ>rH+}W&Dd6@HT|6nwI)B0zOvb+ zt^>Y?Oll>tMPf-MYw}XJRk*~hE=I1sW_%^u>Cy8s3{jIBJj7aPD^Tw~pW2yQZzG}} zVzSNCANzyU?eoZnK4X*k#Z`=lU%dKC#4idp(NN?U!$tClh~$g3WK%YkvAGSAC_KUD z<87W_5Y$0*MEK4GA8P@%(oRIzFBnOtw%2VqQiakt8>ttv%Qj?ampvP*F2+JQxhPr=El)>j2_8&hZAn&rfo{M}%x#bQ*t7BCk1?Rl6RjE_P*CA|T#!Mzw1_ z)}SsO-z@=`gSNj+rwaysG3az)A)+7H?ifFswsF|oTv)E6#dbOg8jy=X@i&m zJ2%Ct%OiZ(g3sP&a)-CR%ye6=Rdre|G%{A@yenoR#MWH~`m0gw zZQn7G8~W4;ZfLzL`$z5Vt$fts=s^oX&)Txe$;S6W7J~Ar;M|J_ka>!*S?yd6|DfKs z76@=m(;TX{7L$-DRmj)zKAg+G8ug6+89pwnvgLKi9-`rxdyPXj&Jnvae_e=nHw!lcMFTjU}I6PdYaHqImC2qIRsSH$K9%Y{G1Tgjx z%ag+LtY+C6X5npOZ>1B%o7yC7E12y#vH6AVuS7AS@m=6kO9eKEVJSI)T_Ui_TKaV? zeVE=UFQW~-Q4B65@L2-xufbWON=5cA#5f1<5PKLrkHE*#bYTBw7MBT|b5o)M9nEbz0n(2*o`kf6MbN*@EECsAE!{-2@R z{$~PKu>(DTtM9G62+^r-3LzH{Kx#3iZbeEeQ^)$xp`1;WGwnAyg_LuUa>i21H5RFn zlo~*(b1B6)BdJJ*VokdD5JEf?_<9&YU3ASi9a7}+{$QO#Ip0%iEu{`2RgvxCu-dC` zKat*{%;S{WPN|e}NYzn_OMM0@x#6kHp&au;BD5;yE`qY4DoU}SJ1E71Zl)Ah)HtM?(pyU(PI)Z7KcxnYodj4iC0SG#q(qcjfWs1Kq-p1pA97|c znhBH%M1dd9L|oI@LctDWtT8San$Xo${e;+&iQMmgN@oGhL&DC~5i-<&j&Mm|f$TH5 z=j|5YdqhD=hY?)V$AWs9QLN8KK|QWfuW<+(DJpF@)nme7F$0H-`ND9!W?0D#i51z0 zxsPIdn8QX{L7ktBcd~D|VV2SLces|@z0WDdw{0I#ie>Mn6sz?*QlZ$?$UQ9rANFy1 z?SO~ce6hA{TZ99Dbb`)NN2ls)=>~7>E8z6D%iZQv zXFngDdT9@uZ|7@RiQmKPEVZ=o($ukT^Qe4B?IHZ=0SkxkYDljfpK%moXcgu-j=Hl3 zKGs0jNOnTgm+4g);_GW9c|p3Hc&Hv4aFGd$m~Wn*}Ll4B7jjLX^% z&$nub49`>1xEP+Vitx<`UwC*9pN`3~m0tI3$fP?5`@m%{Jb2fmBy8U9Hm>Yhnn=cB zF^H?OGVhNE@u%b$kReWu5Gg%vDeinoagY?#soF*GiGtTFbc=?n(6=n|>;6(9vHmWY5IVif zL@xdihbgzT0kWRgcsS~t$WpZ;W}W6R;!%F%B)oyCdKpQV-P;_+n!LP^gURr&}}k zA9ibgs7cbATVXZe>Y2#)*oU~H-u#Ab_qZk-E2z+wf?aK6&5r6(0^cv-g*LdJz*h^{ zu)!VGUpZj8RVm;l#(q(-fb%g(Jp7ccV1_1%f;~h|N<_|iki*_acjE|D;%-A#7g6J6 zU)|o^00&_e)bF26}Th+tmD<>|jffu) z#ZSN}P^~4ED$n)o1RfoY zf7yk4!J)dUnN~+LR%7hIm^{O&nyiuOaq23b?fteKGYI z^!}Vx%bnF1IhW;j3{?gvOzA{(7l(g=y)fU&UaF5#nQ&BI0m0m8$!UT_~?< zh^lWzY9Ue&`<578vQ=JI0XIfDmxIPQu*vSO*J+X->P4T)eWE+sjyR`(aMl&cYz}Yb z{p4Kf5DcXgZBF)=|DdKIMn`IrfSTx`F-kbTJxkY}?^NCvj`uYYb^jVsLR)Ju&d@^K z7MsJIhZ?B+h2_Br%d;F<35O4NQ&idsWISzZIIL7JIl3T!zIsd~TDC+s)jW}SYeeEQ z@ToflJ5!U5qbR+xH~NlkvWaR6Alm747i(`Mnis*jVhkVtK%KL6QEK6%>_@7vi0xpj zunM?Fnv`n;cq?h|UY-6Tq`R$AE0R9$EoM+@TGD5LpoG^o-QcnH;eJ@w0rd%{vVC4b zTv5*mIH<|SE(lc%(0afwieOg}wnDJi+E^Yi3I%&v1Us9sC4$Ygv5pBeS*1Y?g8N0l zBRROan{E(8Rp%*V*aTQ8-lx_)LY9fEo~TqQ9!gg+5UC?$IzgQ3i(b0w7cdkz3gV_I zb<+S)v%7_F7vZKjUNM;nytP?%!dqD%F>YCGc$)YGs1RMLMZ;U}MKDr<&)KLqFxlfX zxPZ&x55P{*L|{vS)%~wTI5KSxlLws?Vd)oP8A;-MqFbqc!qL&@;HdB;41_ZNoh%(6 zWwhtus5`9gVe<~6hj9m^#o6$x-t>y>y?iG-qK~^xbmXI`tL5Z6+@^3b>OpsSF@+cw42y(neP7@@lLAR3rbJRFt>CY_j7lXws zED4%rpv|IJ46zDIWuHhQy?J5p3m5>D!$g7Jrx143k@JE0vzX3^j!!WoCBLYo`+4{@NTYtRBt>z z^J=z!#mOb{^swGN-LU9DN3LLqzD(0;@gfkv%aOv;bI}6^o|?PQy}VNANH~ zexU4#y?SyBQKui)e%VvI0EjfOjteVx5>>c4pk15!@HJ77*~TayuucK&gv=+ zP_M2J7R?stDjQ-iv!zHU58t?)UhfiKY#WF{xs|(I-U4nM+wfN2 z@!R@*)-_z8A2^`6RrP$TkBNto_(|FXRjV=5Th?PpKz%kw7+(NmxIUq>!}gP7i#0?Y zT&Fd(Cj-{Rqok3m&Re+_8rg2Gm0Uzhn)+ei^4@TP5s|_!(pom&($?znZInC(6GO>R zLb!IF|3t}y8lpy$k`s^OJ{88aT;_9u+&Y(im(r@I-Hd{v(j%HrdfIZ72jVIwa!-4R zqsjl;)6)8LPg~bVdfJ__($hA_nXI|p)zpSKzP7if^HopWd+2WLAE`daMAbTq{mH}V zverjxqLw$7QgOvG9d4-)H95q=In_|=?l=0aS-ui!e` z57A@%i3n-;O2@}OL?Oc29nvOzRAVb`KIhcYrn5F4A3@9kjuyYCYerS~KX{{(>}QjR z9)AyoxMQLlkK)Hjyes}m=X>NhzugV`TX;j;`}P*Ouf$jYX6V!27W)^7g~nF8z*=u; z|7NLtf0wXte9IBWt^PKztxuWHYK(aPy=YQ6)w&4d(_jpHet0YU4h>Kr-_Jup8=dhg z7x?}7OsV6_RP@w8aI*j0L{4U^;kE+&7+_Z@02?MTk-h9((fogl=dY)-mkme}FYAw& z5KuhN>eSZB2FtbVibTi8(fe7JWYbX;I{k)`ZXr(e@f4@b!!dg+#q6ez9LrlDJ*~dk zi4guqpiCJX&_EQ$jWfmEYR6h`p@`gtScG7q9Mo~FPEOTrDx|xE_H05I`{r?sW8uiI z1ACMX><1_>fez_Nc-P12Xzu}W9`Bf1c!Xvg{7iy=pWl+K=jh4J8hVq7<=I@FwYkh) zLkm6u*K0t2ivV z)vz1ey4F+;5zop&Gs3g-BYac97aF8rQs546!}Qe%wd6i@_++Xc1uRrNxURGpKMu^} z7CoreX59KfIy{YA-*Av}tEwB?s9oX)nZVsrq7P zk#Su2wcVYr)Sa#G8tH5z&hBWh)83{(hF>6Jy;oi2q*cN(mGxz(2EA2%#krHz$qwjE z7z$lLxIOg}bT~rjmP&JcYBabnJEd z;f81z^;XhT8w{M2>qKtt@}Iewps;^9DvOk@WdC~E(2@%!ao9KTb0i1UmwV^~R$)`8l( z&tvUdxz7e1E-EpO!{gvSTkawE8Nlu{4!+sSeWrlPb{`sd=>%(V?@fv3-MC;+p=k)5 zWt?XepB$C#aXBOzK0HWgCF#*se}{^!=kQ+I=gK;Ae@80dv^{B*zr0Owyy}dwAI;~` z<5pb^+mB2qo~lYvqcuhx>1?zc9O;}0V^r~E2Wz9=Yhs^&sPnxSese{&BU9(C&2@>I&VNd$4BmFiKjiC2@ghNp-G%hjx zkPTnTg+%KkctrJIoy()fa`^hVj^6Z4hkrlvDRSOc4yIfY2O9$uvV)DjrKh_WT_nKU zuDT`O#M?5E!$)optg^D6#bdpAsGrt(?C$dW@!lbkj|SH>c?#uL&s}5tkGRk0(lhmo zH{L*d!F_gVBKSTW3sDId|+hiTg>^)S%_Na+Q^J$tbCri`7uE?J0(gD0j(qRC*5(R5Xc-Q!6d z{1WxENAjBR=2}l27W#cAza|aacsuZ*uNx$+DmLV%@?DjB2r<7R+XYwA58=={m%p$g zdjOHj#;Id(a=9P2lW=3ylXhESdK6#JL=T^H+=r;4-W2fTLPysJxG6zBE#!M_8A+Ew z#%&^Fp~hli=`IdDZsld2SOIV4RZvJP=Z2WG98+zzMeHIG z4~mFKA|hUb2=xSm)k;k^hFuEme8Jux!CHh}B-pEM>}0}@7wp6cb|zsjGX;FU4PFK? ztez?4-b}_0+a{9X5*ZyMGLj$z)`&b=r0zik5Am5cqZvG~#%B_Sd}@S+n-6-t2t68O zZ@iDPP4$YMpNM>9g}0hKXgzrvLLN_&N0RJF`kF-2*JNFqPSw#rRk592?piI>NJlBE z5KRY7E@L9M%WOn2ZcN;A6$wj*&XpbA9>S6mVL6Y3o?G<+yx1sY?Uh59qoyrq5Ky6$Yze!0Mf)WZ`hy9K5mg zEo=n+jzp1LaBWW`%BW-8Bo1h@QBSIDWvr?2nqC{ckHBvV_;DM2fWRw7@ahQmQNrFY z*o8LMAnetGH6qx*0^6z=zCvdLyp@lWMa}zmhu4+7mGn-0wFc3W*Opqk@GZX}%r8H$?OG(|luo!#A9+@oqtTjq55^zDG-_5D7;* zQOUPo(D<*jD3HlXf(&)}hhdfdgVk;OHPa=+^pY^GY}^he+=!K+A2r1&$2V}$Y=r^U zfxYG^v>s2wF*(6<+Ln4P;|!7EXBpmQ7DP~$m$kI5@&dWGkK+urx6S)iWT$ZKPp-(` zPetKW$jBnJ2_7m6)ftq!9Vxx%?X9eK((Mb~)o)$J%V@KHvy8S1EVPXFphJcb_3Ph= zom;Sux_&J`9JT>4-v24Qle(eo|BQmOTJ&5qA{4O%3-9Po>+?CdK?{s`s~F_#J2E#v z*ena<}cmZBBRH z+k2z^Zu6)Yf06bZZ}P}pq8=53ZZ2;XtxD@A^H$MwW@^}L+-Ku$y;`X8P9gL|uh3}{ z$9i=Zy=s##%ZGq1)aI`xBJIsRs(yHtB3uft!1Ffqm^if3zlz$(16nQ9Fud^j)b%2K zV?_8199+?gx4m!bp!LQ4wWp}2UcR#Jy!Tt_yy(>yF*ZqTu?l=^TYTag+#}nOYC=bM|naJ(q=O~B~S`HASyGKqC>t2h; z{wve4o2v%fvUr1=S{AapMP!`=SvAzZ(V^%S7gaFXs2J+!Web7)L4pGI$64lrAr@FOB`KqXRbaYVHR zkTr?f;ArL+5;jtVjgAQONtuJ~G7k}~v%tDVVCM)d#)dT$?0c96WgPuA+$o{}gN+PF z3f=({k4Gtx{XS=t{|{Np{%<&Pkee>KTR0b)agqs!8ci~$(6bnSlR{QR3V8q_5wO2% ziZPd9GX-`{1a_OiCJDvFsSCo56x`?t&L_CRwzyh?brx8+2<#jV#ORXpc2qL%DTyUM z!!a2wUxj%*S>P1D+CXvB7l*1A#r*HNAR8T;8Z(tb8Nh}8MWx_j!i6*y4DHSwbz+>!!<`KA` zfConk8co>Yf=#fo%Lx06G=n38J(I98f^9shEwX{I?+SLmsi~;#w+JG7F8#raY@nBH z7VgUHgyo?K#};s?#{_HH*c~K(o?vf{U}?st?hx!u8{1q=%MG~#o)7^~Bk-jHPP4(% z3k2IMf*l4dVw+5-8{Z;-Nf6FcCv-1JDnThy?jK7PFnuv_&AwxYX*yXkeZjGA+TNc6IN!Y&%c7`UK#yk={PQVvMz*9NI z!JlY+b9k$MiF6NdH*2l5+XrN<&L1D(N=Z z8ABKG)F3oRxu3fDb;q@n4JP$35sOb|B0Jd}69EbekJTh&B;ooCZb$@op}>0DuoVPz z2&`QMmME~}KkFu4O|VbI%3o?Cn(7#001ABv6ht@#_@@Z>oZxCBxVHrNs4Z>_!7PE@ z9f55Wm}$d~5Nx)*;E1vf5&yIgR?ZJgr@;JOMdDFQoJU>$8(9Kn7R z1N{3ZF#zh?USMBqijfLfBYp5m?IjYuEZ-PFtS<=b%MsRh5Jq68$8A=&(n^7?j=&xj z*isudi=AmZRH0KZ2VgxO5x0m~h=iT<-{MxWHm<*uw<-Nh;fX zEL{DL0{d1|jDrMwTVU^l$n6g^eT}#P?OwNW#|iha;GT$xdqrStZJ6guz!nOuA_7|@ zu$yhz0D=_@Y+3|%;|a_#Q0fF5#|}1Ba2XNYcoBED4fByWx4=3@U?~D?IjX&%9qcPH zz;~L6s-8kDK%pNp1tY96i^OdeTzv$$PjFA$;<)*P0=qu~ds1L`+Awz4xdOW-0;8~p zQfJvPg9^<%X)^WV2yVLIM%lPsgrfls%&8IB`2suBhV3QTNio2GehfFiS71$=VjLmZ zUV(i?M4I8kCJHeG1?;eK#|ihi;GT(y+a|E}Hf-=zz?KSZSp@b!0=w0QWf5$uz^;nG z<^x7|SeM$kT*9Rb?t%!eP{a+eVUr0KE3hsRSYLrTZP;9beJchy@~^N-P9tET&`*Ve zI}AVJUKiY(5!}ZdSlp_l2(jV~JP8M;M>!i2qnvmw;ki4)vk^SuMR$FU+*?WC?NWzjfl7^EJ9r(Ea&M=V-vA-lR}dt97DmO`Utk2jonMwCb7t|AHtQ7 zmP*NVNd53s$e?Py&j3{GIB~rwT(3m9-bIknEEi+gvoa21m<edhZB{KxJIhP?;^LFlxA!i87tugNUJC7w|@=BL*Z9c$t7# zY9ji@24MB9w^}%EwmEnOxmY-+ML2FG=~oFh&&G}<=>vb3#vT>{k0o%1fVj4^s+-R52??#*?LavAixt@f~c!Jwwtc~3;ji&Sc z1w14Iz7Sw-FP6kR1bbMMjl)!*-GY5Dg8d5NfL})m zw+jBas;9Z0^KeACgObSRrgu+%i<9g

N~irl`BYc?r0xPMF`?+j3p?9bD~Elvd}N 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•X(Qh?0HXbCH^qRnQ$ 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%0AZ8Y^ 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 CY+RWD delta 212325 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

Rs z`9w&Xj%V59<;VbIka+hUatK`_n@IS`nXlO)B;d$_K!PDCD3*c)YUo!c=B;Q=}?SoHKK2t$K-{|xblWZd1Is&s9Oan#N%aHt( zJhq1+mTh&k7uRfE^c-1ZrI&cTah5r*wcJLlqkT0q%Q}*qWnILrsh$Ym3Dc?*m|4~> zj!dFs6p{GB<7A_Cq-LV^MP{Nk4#Srd;s*@fjO+Xubh3%)SaHq9@GUT@%B-@2Pn-jI z?qT6djg8nUI;G%=A!e#MFHbODV1souS%+QkxQ^J+A9NKzSi&sDo?&d@J?)K)mN8CJ z$uEBJEFp)(K&*8d%f))<4$2YF9vCT@p|RpipC=>@Co!_Jo02D|5hwBiSQ=&j53T`T11S*qJjy%ZI1{hYkLqix$X6;j` zfK9M4a~xMH-xw*6)=d0{aTC7+-^}pfp!smk(l7DE8ZUzt+{W4z1}&ziZg6&Zh&?O| z3!pjC7W^px4fCy=FZ7OnkMwXgIIMkdf$#Wyp=;0eCBWG!Cn$Ftym&^{=kx&#pc?_l)FG+W`QSR#zxp4#`iSid;4|}xJO16 zVuey~iv>*!iUuT~dqfyPcNpYzv#8~;V57OA-oBm7DG#Pt2NqhDe1Wws)o8462EZ|g zwm#VeqQ8QTcp(gaocK;>fe#MzJ{ak>uD0BR*xX6V{1`}p4)S}L&1LZ1 zvx*R4yV{e+JRPm2V#hJ1u?48+B*0EUmOE&# zF%m~(v^j6VMwpj=%^GGYC+$8#9d z=WcXm^36RGSMc6md^9zXY%egdx2Nyv@%=5xc@+@Nfxe#~6B1*m`!Oq+5Q#_fHd*V# zxAgTT6$vBb`=WT9ajs1FcIJzMZ+BnceMLgou)}A4a*;4l=<9p8NVoz&2aAN8!_wRO zQWgkL3HSQeEf7XZ%OM{K_7qoyTxHKq6qvebG=hs zELerGsJ`!%Ny5Oe@GL2(^16(^?|e}z+#rOFZ1P>>62@P#>d0911JhxKe9EFE+Fj0* ze;Kl;?2w~(J~pj<&$xuaVQ-G}mEIlJ$M=&=LdG8+O_^s7y%cJLVI?k~bw^ zS?mnwGdmJx0t^N&iW*(E)p;gmxA#H3XnyLH?}0L`$G0VLZ5R6{pumEU{0VlkXQ949 zdm?dh0=dU*6cuNPeLtAH@Xk|@-)UnUFaMr(v)SH8<-@-S7NrjVblul~tKyc>;3499 zY{I+h`c&hS8Bq48(eu>Gn`oezvcd>oD(Z^bKi}`KrYJ(xAnC<#r92ceoFFO61lfx$ z;}?WN797X}D8-pThvR6Ok{Sy7IzdvD36kvpD^a14Zi1w!jlM4{gt(i6P48FHo7hvb zJj_lZ`i3*r6p#@?nJS71kM6d1=q@uBRp^Xu&IvM(MHuJQ4}7$NHu+o+4sM@-tz&nmsTsGoy{3=vDl+ z2HKadx2{4{XepSXyzvfdJ8G5Un#J^k9s;0I^%*oza?Dh;5Nl_n#(O3-iyhlSZ_z@H zjji{6wou6Fwe~V$ z=XW+wQ9gfwG(EvH7KWN=rG;4d`%LKRQv753nTIQz4@WEMNFMwC{9NW%iOa6{pf!W7X(BBbc zPleB)_B;yRUWT_`(9-|&S50w?ap4RljYX$%Vi+r0HWG@1mT9v7tx)iV%MijH?8zc7 z-AK#{xOBtj$YaAe=$!R+k>WdbRDMm~?54u7T&2GWXRlFy8m2r}D?bK}()P1AfOrc3 z4wRpqAF1pYe9y{)C+zU&zAG0C3Ed&Ya;_z$QOY0#)Ak&E#cigDwgH@gwln>0(A$`lUz;k?Hxv~71g#KWB&iV}~qzy(TLm|Cl z!ZD+K;}!A;GxjP_7%i}u{EMbV%|$wUo7?;5E)fbi+N&+2J@vDOc8`HJto=K`FA)X_ zVO^Vi{VRmRu{Sgb7BO~AuQ)VdV#hXo%wX?D68xcMs;~W|QC;+?&dk(yzRxR!Bq7&S1HU8-tgU3DU6+H=|CJ=Nl)0hq@}NLj^uTR88L+((Z$FKV}DBDOHAe3!%F=A zd}V4|!i_a>Z+XS{TcyxX`~ZLqJU@Jk(ypy9?HSB0|BZ$k3CS_B=u9)VIc8Kvl4rj& zTDH26uEj)?zU8k$ty`tw9{&_pkVcpyR`OlamW zPCfBoo}2C4eV;xfTrMSRZ|qEwlUQ~(VipsNafA5!X3PZ1vSE0{cKokih0&ec@8~*Z ztz|vB(pey?#IaooYxUcRYiQ$1qTi|tTxrk3no`7UkSR)`S+VkuCt$3WA~Q~dss9EC)?%b9LU)$K3t;aR+{38tfnH{bT9LRSgQWw|z3 zGd31~AbU@eRVkKGJTa4%7rq`gml4Pc2wfOX!E-1moz27GGh!&iQpW%%ST@SVjR`|& zkuU2)(}#oXw<>|~_?R$HZj9KC(yyj4dRfDt)(bvm2diFah8!cRDS+Yd`1ioM@;@WK zmpu#jd#WkaYh6`{Dd~juREeT7Iin$^(jfRDi;B?o zo3*&BoJ57@`aNtx`RmRfZ8j4k5g5j1)8-4x9j@e&6MT$qKp zie7BCI6JyBU&JM_DsWVbzRl7QQA>FUKj4kd$kUS+@vP$i|H(@b@L@Q4?>761l9ex&LL4=3z z@RgOJcu^;f;YDpI zo}oa67)7A?udftKBmXS4@s^*f>fOT#Io)9kCG=aDA(QK7#AU-FW$cqyKASdO6@H5%;`Rcl(FBF?Y(BxNDk!$4@^bG^8j z24DL6o2JNTO4n1R^e`G;tCxuDHS>=j4dwV4!RIOmSx7wqAVZyB0T|bgXhWSRDG#nQ zX@_j$nX~1^HmYA{+|u*$RN>?p))F|NxS0HS5}$SXg`yrQJ2CGig|R+?)oFQGy=28( zwkVY>t7m#MUWjlWuNueld=xZ1am&K@Rn5g1!q3WfWO|5F1G* zPHbAV7sY@-M!WPk>c^b1o;aauE)BE`;GrI-sSXT_10nHCTB;_@WgqSLl+QI0(o%w zk03eso?>DJ4`=9%#A=L0VhDJHd#m&fI02x%;qINY*B`Z}Y>?xria@ETTs#X-q9J^e zhBWdoo@r8S#)$=8a$K43Sg=BkZj5=IXEII{{osKZ=@~~`3MKl7}Lc3?@=9co-6oc&HMue$_hac_Ec*(4^KaS; zaK@A_kfNy&u|AI&WOK7Cb0M0K8hqs-`x!qk5G$B$B62c*F8Y-uvN>gAR`>=@5Q_lV zDhWW|x&**jKmwAfTbT}^APGFjr|nPtk$|rZs!7_cw&g*^ODm-Ue|=m?4;k z%d1#JbAsb#Wo#60ZbWt@%=c1Ggm3mZ8%b@lk7ZH${sY;XWA1>c|M5&vE>OnLt40oK znj6TWDTDI?W6t1F9REZPmEba_9JZ$%W*-?@4y$>6?L2Y7HSzgfS$t-6TR$dSd zFX<~3{D3qOQowp*_(rdFp(k6ZqQ*#`rlizEGIA4YidK`QPN>T5N*6FSa71{lojuoH z??PvFp!g8g=mjUaVrBf|>^j=Rbj+3Mvp8Z#(~t8E50WPwOOGM>&J=HEzccU#8a`RI z@8Y<*r3EJO`4Yc7w9e_A~gH}ti^?~uu?akFxbGc4Fi89Gz-x-^W=4);L z=cSuj+t1KxRUChM+aIGCB|^PjizT8;-)lvJ5$FP~-G7N!wnErQc>>Ep;1WEbBv>Mh z8MlLq;`U}ah8k;mcM6z|drpp_rW&m+^K*$udJ-3U;z~1Ew_O}pO;Ry(5urRR!OERB zTjg^4HbavWM8xER#N`7yp0otshOyD#*=rX>%k>z(kEGleCCO=#1ZG`r%qZ$HyTB-$ z{;Fth;6WU|*<>P>O(xL#LdklfGf86rajTDF1_QV(Ov5IMub<91Q`FTPx4P_UU*8w8 z=ARroiSR7_21ZTgcp7z#7GK|hZu@7?(nbo4sl%jXh#!wR;wyZkhrwj5FPhAYt#th+ z%n0!SC7=Qw_HOW}4Ezq|vBl$7fJhAn-liKt%|Lu6CBsMWo)`k@?4?(?CSthnWM$Vak`->)=_z)Q%@p zwfha9{1P6LjHZPmHi7fHPlD_XG(&!U+YrAu&P%gVd7FD{@qm=iJS zS<~Z&I3w#V&=oXGp4hR}JAK88=lfSPNqvIpD@giRlPs05X!1$#mqriS0j*HJ{|BTo z8eKEjjoIm3H=r79QSvwW0P?3yfQ>vkjWiKG1NzsERxIavtnX_B5samL4=fiFgb#g- zmSfQmV#wHnin_jlX(Jm&7$eW^+g&4*p#YXVXRPuwIu;C!&iWm+oOz3DBwc$J>LUn% zQgV*5kHPxDh1cIZAEs)E6_pcnXq6yteBk!<`!wLdX5uN=$WuP!v#9R1{HM zP!v%>S==w87tOuY_eN%>_qwHm0p<0PvUSRqSHkv1OLMCX#lYOl%B{spYv`I`Zn(t# zf6qMk!bPj!`-jhSpXZrp=FFKhXU?3NIddku*n}JM8mU2?twB^Pv2eviKMJ&n`(b+4 z_9vN@_90)ikzY1p#Y*^kei1(M!vy3ieg~}Tsii9Ed$~E5w`1H_Q{K*Zc=_ij#IRrP-A-4J=6hLNZuLsTE%!1m$e>(A{O$HN5YuN|*K}|98BVuPV*+yP)k~ z#A2q9}n8N*<*oS?w*-^;*B?!fpn2uwks zCHhCqyQSbqTuPF0`pGyUCQHoE2#laO`Q+76EE!Kz@CIkXUZ7)1Jd3Zpkwm(D6qB`& z$hh_!4K>U3bBOWXcM|B&G7#A4e?j0rE%2~A(DEw+H*0}A+<}SJ2z*%v#)%E?(Crjz zM<`^rS!7_itxcH9r4!7O?!wCPr>`kJ^Jh9TF+1?u^E3?b7IV8O(wr9(t^}qjN5m-f z;7~|n#KkcTOP^N6c0yu{1W8X=Pg9Lig}M4n8bo3FLj6YMXdumE^cS+ABDeu|gLLB$ zysq@f2ifca1j!z-Y8d^lk-uy4E0)6of+pCqJM>3l}|oJqC!;p>~lSdHCG|4 z0wlN^IEp}G^lSJ?YeE5(8KkhW2rKiDT+W>}pi6QgAQ&H=4YM4GhzTD`5uwA)Y}ta( zdH9EyUBWuB`dQ>wST}n6d3-RYci&^O=+3*MY;i@gB1)b?T)>JHijUQqq8k{ismPn} ze?v)bK`q8+sPv(xqf{FayUORx03P|KW>rGPsTTOj^C!LO+;swDC`&{^XyxayEG@nL zg_zZ!;#EBSKAuQp(~^APNupYxO#o~lXrtMU=<*8;q%CmqYgr`;7@*;%q` zDK1|!*O@?svP8Ly_GEuq`YNBZh(Ldi5tc;vN1Oa;a3ogweCz()O~a&%3zHfNH@`)d z4?Rf${`Qg4Ar5c+MwH4*8W$avo$s#oGOE8)s`)aiSTX-H@T@7N&@zf${WIJjsMhEZ z$c#=na(I4EMTf=IaPjO&hH9Gw+??^wgfqxZ%!WRIsuR0j0St_H4~ucZSPndL6R*f! zWNZNmf82=Xa=MwdiF!cvg$=*MM>x0gPv64CbFIb@-{Pi@(Tge15Gr}eW^wFAq6$q` zdc)613L4K*08d6mpx(`5)gj3M)uhY`Ci zv|w3ubDgcbdThrW7)XfMKv+lA@;2(S=qT0jC?+MIMu?1`B5MhWmi;1nyr@InSeuEy z(I9&}`DXhQGXCOGEw_E*#W-kZL!+ZXO2YiRzfgVyN*5i06dR)yU4H3h$wJn6O>HoX zb(3T-Zx%29AfY%DD2DLUN>JrPZ}cag2n397o1wjvoN`G!5t|6HtrIaAC?lUwYSFK1 zi;S-R$E@LI67v%Xe7*sK|5i0RgSBq9{|y=@8m71x2guD{yI~V7j&WVa7509rt{tv; zToZBKgX>|0FU8%C>p5I6;yQ%u46d*bQg!EXZ-#pau8+6CJ{MO7E?ubnEH90Hu(3*sLs641C>Y zrIRw5@7@duza8Bcvqgzf*uhjj_CsYVyRwIW@S(!lu@pXHD^hX($W~yjAHy&+Cu;U@Yrj)@*bCra{RHqL_?1tTk?cq%AF@js z+N2d)nR8*Z2;ysZDIu}9cF=2#xQsh;BRha<85A#ml=p7pB<^V3JNS`ZN;@T#U)-g1 zR95qrpJHv8bR2?Ki}8_~5d#QG71rj?d3x~+LJ08pxVr!!lR@#~fV_7T6}X$lC)@eC zPnCYGdM|HNu0$(S`H*sDKC9Wrx0NfK)BA4Ia_Ek`D~BpAhY0y4Mugz*%Atu2iWiE! zcN5pQQVy54@{PNdKCJpler~t2Pq~}Fw?`SOMDj~}lo`rmKE6UpLb;x(P$sZ#Tezb_ z>6SA}4JmmpGDEj=&l&uxd(0*C;537*RP-riS_Gvpwi01#<;uE!XjTgi+pBP^TuHw= z)7WfL(TnUZNbQEfMF4z2^Sr(2?XGVoY`rrID-21C^z%=mUd6f1{FA*(+p&AKZ)#=) zYTe+p`s&5|?x2wRpqI6vA%&HOq-py3yTAfsHNu>W!osA)SG@WG|LZel1lzZZ53f|-X#d{(vaH3Ytvwy#G^ue|w1g}# zSnj}-sMEGZl<<%$(0(~LRVmRudLsHRlJ#~!P$=p9`MzFPlP)d1VTSf#`$VE@&y0eW zV$U2ZuJ++&RbcNFeyIwLXAV!;hZdR6C+}0TS?xx?aUT|oP1_FbgH3^QFHhXBbn27& z9{gWq7+`WjQ)ePkz6Rp8#5+ZXbdn(<9w8z8$^Br?Z{Oty_A6aj!B_n1ex+y2CGX0T zRXswbr$2RcpPjm|`Je+z%Z>%#q=I%U5sG3!=bR%y9;ZNBJ)yVh$NAC&%0TwVJKMG+ z2~$S#qlc81N&**$lqe;HH#w}dWtU^Nbv>-iR+@}FkxE0z#1s7aBg)3$?s)wJ@V>yM z;%a+h+g(SM(cX%MzxkE&o-&M2_*xmRc=58YmFtQ(f9V^=$)0_KzkFQj-Q>Bm64uDG z+fE%<9%Ss-SNW(@2#+}@!)wlNv!7CqDZ|J7n5whkdIr~rxX%BOstY=ks_TdADBcTk zZ-V>hxOc&Q3hvdo-o)j=`$5DH_z7Ese&VlvtK8N9Av`O{d-~7Vm4RzF-oL`N8PAt- zUypkwt`J-=;C%q@DTuG*4}PbFZOi@+Ef+;<{R8Ut98df~sb)7@@D68`t;!I7>Wnh2 zNzr*(f~@mA?MH-0^XoqU_3IJpf5sm0m;fL|b0>lai%;!!v(Y;(L{&zq9Pck9YwNa;l}#;0o^! z>H&BfO{WY z?eLs~?@Mv@Mf}0%`IBdr$Jxyw-r=0GPT9zJol{a^?CCtGeC>7AnaYp!KGWX;!?&#R zqfAJ*7*&f6%!S(?uSQd4MVI-R-;^Ce)3E|*41!HaO5kkc4?fcwf6JjnC}v*eP!=hJ z_~7%9E`!&|Cf2(gFf`+Xm$~)45*3_wDOEQK*HK)7mqD@1{I&DSDZci1rKQ(b=QH_R zzbo-x-{RrB-<3H1SyaLfR2aR*^5hFj6L#wfo^=7XrJp~+AG)A)_d1WS?_5y&vR$qZ zs`jBNfWTNx%6-1+0xVBocSW$eB2W!Cim=udVTvmP<=!a5#>ch1mpv}?ZhHCl2=}=n zB)THpx;?@;SA=%12q<#nERtOj{Iv*P-oIyZ{UsRQj^JZ2Dec2zK5{xUS2}eNwad`+E!_A)uuP71h(8K(_ExTaLF*9&;lTBWaI-Ii9Xj8&8@{>*hHhaFnMf4dHavWUmsfa)=r z&%dDzi@mX2lG>huUc%bG#QPI!nI`eGJDAMRLYxb|#lhwLmm5lFr8#eQQweK!!!8>e zz6R%r<-E^L9yX}`cbO}nqGd)?m zsHuw;opVd{8^}(K#WR!ujAb6ukvo}Rs{ z1o6pD*w`Z%E}YZJEBfl*!tS-q>{ahk2c z>jm*==zL1u;_I?UH(!b)xvbt_XE`GD5xmt;_>ql=!DS zel&oE`X6w;SLE?O0$4G#cP9EpBCjfq!Vl#o{_Z3d)asBZq*|>;%%PR zoE^q!Dky}t=$!tlj1mje{KFzqzF6CUrAkJfp$;x3!Ylo}N&J_O4q>y{U-$42L)Zqe z_g$gvhz~S@uHkGv3wVyN3}+F_5B%kDW`>G?C7dl((znftU=J$FfBE;3Y*p*NFJnAU z%i^%W0qMrs2R=tyX^rT~3)--c+1XiqP+QiLmCxFi+m@M_a)rOqj>Rdj^KaU*w#{E( zhvcKjsZ)g0w%6|cym-sZ_3hbO=qk^*XXqJ2x9#h|{1wH2+p%aCqk#0cIC%f24Nzl&j=6g&6sf|8i| zq%PpsXuhNi8-XVHSr>Ln`HQdb%KEXBqxi|L$aogl$Fkz?f2?uhtOje-jHCtL%fqoK z?Fw_R8JvpHYa{tbv8+GaJ(6FIWoz2xtwz~kU28L|%WtVRF$9e}X{z_K zV&bGAzP=mFVEadK(TzQXVe8B|Hb(h;+m<-yr?4Bt_$S>#1q&bDgLPuttN6kmtQ|DA z=X$U%>~a>bKyc786&XyaF{>lS*}aWodltXZgXJ{+?<2%UC)5*SBA*b?;!#3-JR97% zeuWSlL@Lui)>(AjFiNl;R8NX8Gr{-RrQ~fNwFP^if~WQ>cUfLW^SXGJG<*>vkRI+d z7I($GqlLOXY?S&eN46w;MmNkNK2t7r6>_$+!yoWy);LqCN+$uSv!`#6gM;3@uqVjt z%|GbL)+q1s!M#{pC@a%?v91uzt9!9Q%2)hz=m_l9Y(Bp?dw-Ejr>B6NY?_UHI!`wU(tts zmVEyZYMSqeS-49GdJV#Oyt^RWzfZCKo+E}(3|jy5?tN&Jg3^jtctHXShyM0r0=v$p zvu(UDyXB>{=T8qneJ$c!2e5QyCBHR*J*@QO`AO_9c6=Z|oy1xxar{aW;xygXav&S1 zutS-Ad@_q-Z)fsF$t<#YEtY(y(awRw74bT&ADXe5zn;tn1b;Pv#$Pk*JG#9C_@!hv zdC&}m=ZZ=A#b8sPG&OM9&)_>Kry>(!QjAj%Dd!au5JFrShdUyhMKmuN#Ktrqnt_<$ z11#*K&s;Q9RP^V641(zSEOc9|!7Nzmv^o(n(B8ocauY>!>D}^$5Q2j>?`cyfVxayG z&rU%bM}bpVXj~RP(gvfoTWKXE3}mYi<2Gnp+gyeQBQdp4tLYPl@!ct`*SM3fVrGp3 zfl8In1U%5+HEpICtY__4nCzW|P-}M)`2zN_TB3iag-!|+150Vlh!q!l%kvj8X)qEP zIgDqfvbKI1$e3R4Pi52c;ds*?pvNz)zObLb#~Y6eTVX5Bj?3u)w7U#Sy!@_)>hLK$ zXRL_(km*Y41vz;6P}(wj!&I#rKo4rYDXD8Y^mt;I)sq|9=l zKCRMcJa$bf*N#^C(DqVVhU*}WKaRu(P|T$LWEQk5z>HYNG06m?@JGd-Oc{B7Zco0I z&P&o*$8OlcGu1vk1m=99Tkw3_lCc^}1k6!Sg1{*G_h~FHNEQum^%Uk2Ls*o49?fP` zq}m~D$Y`KsPt})NXol0CYA7YxQ|%K2t5Usb+S!G@9X6LT*M=>X*@eln&dj;S;x&j# zAhUS8AuL?~F)F7%2io84&H))<%bY!c5+Vbt@2L|jEQzRBva*zu?oUqFW=DfCBh|2I z1e+8}L<|Y#pn~{_3Z`O?;zaCJy|L&qz)DHV2wWJp6TE{Bsp9&2+>$5wQ8X&{dg$U`$&REtHfIH>T2A=q6+(}h28;v+KHBqLI|YA+ib zA~X4i87zj@Pe|Tc=fVi4ubc5_h%BrbVB*WUNN<_m!2NflIn=X$wp^DBb98s7iWR{~ zWhrQg-^(+8J8d10vIce!28z*WJNeYw%dLYfYdz~ior2Cs#zRZEni|5aL6o2<9rD2y z?A@>)=*Z9lWyAp#aS|c|FsuY^(PGj@OoG2iNV(Tnx&b@@6NJv%+Jy!{O%2&CSTw90 z+%4u6Y8`4QYLR8JnCw@uHU+7nRpGP-;o+)H;;BuZ<#=VX##8Mu`PRTwY5=j2S=RkS zS*&}02Y}TA0X$pO_Rz3T9*1Z;WAPWnSE1AKqVB(T(jG7mPp~>^T{;I3v3p>sY%K8( zDw~P7G7EkjL3lM;CgV};dr4xfO5va-CjlXoOR0h6owW2MTco^krI%vL?n)m3wi`W+ zMduIFkn4rcqr|%xHX#o~3>BYcYtI&K8orlOU|zQ}Dy?XWaQ6=H{(0TyE|%32VMIWi)r8I(Stu0S z5a+@`Vd3qEvz~MEw24&NiB!A6z?@qzMJLKELXrR~OJ~z3Nyt_|NtR|K*)S!O zj~UBaLZrvP50KPAED~CcL|*>RNY*(5pGy`h{}AJkkt{QCA#9=> zB%OGZXN+R)N%Rwq8ptD(V(Zz@SX7G=Xe>CwPh&yJqK|Rex8q#a0MFP*>SIT`VoQdd zj@VjPZl)*M+D76DRLln(%V}~ol-i?O6}!itK&=+Mom7eC$8WUgFH>~+0f{K0j9y9& z+3TC6qtwe6;hB|DTJ=b&6}Q*`5(Igy%7@sV{!045$R%HHMn028P<+pa)knO(X8wT$Q4YwNcF z=P`T0IK&V?W2RBEF{Q+#37*Ibbk!wa%m zNWYnYlxxlr@4P1UUYJcvl24n86qD+cXcU$kigTVu@kaBFCKf*4UA*r*Q}Kv!;us#a z;x*YtO-HSBG{3EYL{ryZ@B$R5fv_bLl^nr&+icc4qs+@)!s=J+OGp*!SrU5yRiP}M z`-DL^SI9y_x6j7*kSxHWGOh(A==M}b!u5_aQmx7|_InCt?1dkfd!z_b*NDN@QxI;{ zZep)tBbC+`i?6zS(5j>w>H!Be?m-82b9JE~fO15d(rM~`cxPfjBdiP9vM=ASwPJC%6* zyV8fb%UK{3OED{DFn0SAI%CDJuiReDs&wi;bk&s@M!=TdvI)Y#8IK+i_7*3xs}N?c z?kHu5k|V0onP_URvG^F~Hwte~GZyW~gDRW8ajSw23B@@GfUGDQfqQB}e{_Q=_g$z? zsJdmwnL(AD*SAQ#$7s7sc8)#F`h-i{nwoFtW7RRrXG$xfQ*Vef&)PwjZU`{$$u^3>_H?9Sr?Yx zP9NjeHnFzzz=i)fp0%K^$W8TL^#EP{-?Qdkn9M;CJKXonNnQKa6Cm3>{(4e|k( zUTYi^NonBeDw43UN6sA9%{3EXIqNxEjUS;64>qoM4-XC=G>g{!(nQvQgebL>N?Rz@ zf}nyWiq1N?*O$VHB11CwF^l1y*8n%{s1uwJU8ANE0U0G)0;N{O-G0c2}Bt zu#K|Rpkazv`@0fb2a?$^?CZ`E71f)01F(+Czq^aIWqTue-Ce9zIHfZd?*@G!Ce68@ z)&fAD!I*wsJk5JeVxwVVvT_n@kv0B0q_0%AUU&h=&|zS>H>`9mD9}GcZyb}MFQezu zHTZ!$AzSb?d%`LrPXdL=%}dkl@$|-jn8do&Z-FsO-&fgUb$4w*fql@{bQoW8^j4$x zWt+qYZ&Oidmt^;A>4$YG7%X)(i?8El0mZ3xI7&ws3gj{Uis@d=XCL_iHIMmh+P_uV z`_NRe%M~DpxipD+wziNzIvJ}9#r)ODn4c))`zN!}MoGZY!XF^vnQR#EJcY%LpA(L^ zzBH?H)%K;RdLC~uTeZ8+DMB_^3YL6oxGA`z)gbN*E1G12oyNB-s% z7BT*2YXBQ6okX}+q3Q?Xg~YKqh)D28+OGQ zDted8nLIU=Vw!gqwB@a*vb(W1yL>83Nj@?QJ@&%DDqqkC9^m9eow(47=95FJGRRs& zCw{IpAWpNd|o6_^65F(lM5Pv)Dx9F z#}S%PseHuBnE;!x39nT?6sV=%;Cd3zhLI}2MSiA8^e0xzK*|B5MOR>em?J|812Kb7 zpU&EcL$Noe|DayN3EY@MsXtab!z{Y+m!`AUNeP$b$k?1iLzl(RLb1ozDon|bs#Q;5 zr=AE!-D7fRMWAA9imDPPVMGQNEJ)5B%Kw~>87^d&3l%9>BYPc3b!QFuw-pHE9=HJal3X1puuy`-jG!h zzUql=3(+}Otx}K0R?7TL=1#dnZOC)UlZAD4wlD$|cF|+%CyReJgLSx9ax$clu?YOG z`=|(vDse1Kmd4`NCRe@S@#rE5T$oH&>N;c5dw5ZY+$u3CF5|=4Jtd31bH$S_&|=7~ zAqEX-j~G1~i+unTq<|SP&%PTAyt(|@yIJ?4^5mJUt3L&*Cv!hV_=7W92MR~z!ODO5H#6CPS~#B|8vuBn zF(?^^g5`laYeMO`HGKVpETsAP0&QkTDl#;Uz4r;ebQT-hV#VJinyDoU{tC^Drh}x` zMTv&+8?#t{Im>OE@0{mt8R=R6J%eQVVRukbSm(8(U12iqGti-wh`HD^=5t!iT=gOE z!oi9)7NbW$)eGKT9X{J>ylk>e08#2`a<3L0Vv-=Uro?S}b&U7U$KV5SHcKVzu-U9- zf272=`4t9yqPW!=7^Y2|x`QC%EfH^)0#CS=$%L>$r1LTVVJVRkS(BO`sOs)0+YJ8B ze^^I^+lzhz;Yy3968 z#%O5e@7^ywLEns?H7)V}tFV@2=_*?g~Ns{u$VkkFvVt9Ulr2aIR-xk(+{~Pu9 zXfcUYdib%z*ajX$h)BJ^6psv~Z9~?Ug^R&HK_K=DA2n0&fP+?ickrS-v@t9HJdY(r zXk~APvcq$3V@|llTi*wx6j$xzYopr#gq!YTZG!+%*1J(1rXj!!?qd@`tCRP^-l7k0 zGKc-(TeBcdCye~U9IU^7#{=(Y6Pj)JtU}Hg-p{%+la;@6KkJw<9?}?1uyFY;^cIth zj~yjZ5} zOUNZO-bAg(_qKLG=m1yKn2$C>BLvHdKQsA*b6LnR@&KAGE-sLgUc-Q-YI?1AmYm8m zKHisx)6gI+5d_x9a>lb*S@=qvS*7yBb6GnVpBkb0tWSHbj!*n!z5xkb zna4WCQpVNP8GGhE|F*nwgyI450v|h%_2~^%Qj-p2-8(%HZMnn@|8ekbA&$%>g6XGC z0vG348rAeTz5_YAFnZu0TUkAwS{SKa7610sT)k`995wCoZr3NMxd&t^Sm%!w)^O?UpqK+re z#}eXE&n#Z)rB!P?zF~IVSXCtTCN?Im7m7bcD9P|Om82WM za?P_XXCH)wgcZw&3yD}EjzGDSmO{#8NMIQyNvgFr$rYcWgG7%BeW~1~vXFUxSP>TS z^evHP{VHB{Pl+0d558hPYyHp2slEOehBu$jDg)HYY}n( zO)yu-$!PV0*@RY0ecXUWEa{&>7iekzFVGYJ0rdVwEG>=5l;&r3P-?id6tJzkdk}52q1z5p0=srST)sUdGpsEg5eZtLiQD zcJZ<$ti$Y1V=>KmkeI`zdB(s$TCmhQu!mUIsoa?7l3=b7%!cTa>d;SmZ*J62T7Ggm z?P!qY)?pZ5?>B(~A-?_$=G~UEu9-<1wf?CQ25x-XL#)M+f5@RG#>JwV!uc;bRL1b_53vqSXME+(B9|{*#@b9G$i`yw z(&Og;`lda_4V`-Fe`~gVw21Z1)}>GJKbEofgQ?;}mcp#cwFTSNy3Tf%s5h8hXk&(k zUDyjMoKCZNkeimn3~~*BeL0JE_bhq**mBqk_UGO!*vNcz2GlQ|TkO#x!Jq~@qPjxw z%rJP#nQrmHV%qSS4M$lhD>}GYACWYMp`HP|G#7O;iCLI&f+6B+#3L_LiDJxZlJk18 z7$NpVwL+bOq5YD4VZl2MT`hZwMSW;fd4K-Z3U)u+X6HllAqQN;hosq{s^{?GE&fzK z>*Z2naY*o;H1F22zDECz;yzk5S4++@7QupCs{T@+od>b$T6Tk9BAgPu+AkBcYS%4i zrAYVJsv!2dfY>TvX>HzF=s`Nc3^dBD^!cxQ2=-n9>^d>j`lf)rq3q)MD^bF^{LPiH zhMdbkU&%V)_WMc}Gg0FuSfAWku5a7_Pv!bhi*^Sm&3%})K`tc^%go+?n8i`Y2gcoj z%>KU7Hq$^sjY7St2QWsqOrOh}7s6=Zem^ z{SUbQ-d0A!S^=_$)SFTr`-597xhE5e_WwekBu`c0WewiH6KIJRsh&W7({Cq`?Li{Y zi(NDV?U_adda+9bf#T`AdltY=pyq23uMvT6&f__cu;lLGBU=x*>~na;{1SL;qNZzE=zzhoR+FTXVS&8y#n$T4P5< z%=r4+6NX}JY!;_5^ws1(CTerxhzsZ}$JyZ8JVIn+PEWuTowPM9jg(nWLoc9p?Kx)a z40TE%`~;%o9^$RK^r&=Q$#8|Q&tnl2^kDh=&-K#|Adrc8EDw&a>q+Qn1@B+#aoK(# zYT?NXMv322j@Vdfkj9DzImLwV_j$xBmZc=}S*zGw_i+E@D)xStj6WnT8ixA`T7X$} z(;i&I{SJJy9a>KrKV@g_VXXX@9rHZ#YkB+CtYakl5)9EdM$i!57Ji#r!e_2#Nffno zH5*4q-9S8uzmr9V)*88JG6h=Qzf9Bo)Jnz#p=`}Cf;c;Xk5F0P?$o8V97RYhiMx}C zCQGy@U(DqjRTkA7_)J5FP2_a>RC+8UUlQ`klI5A8gUr+bdu_G`OYK@gU}Su!P(2x@ z6+|vC&{W006y;qlE+nh1C0Mh%#?6{fqaa$}d)s7)$QuK{1zpQ+arNT3zGD%zJ>@nx z6WA`e1{QsUuQub=cm&|awQ=*mePXP-rABf0)Ql(Ru3gR2s2iIW`vs&Cv?RmvM&gM4 z+nTwxga!Q*5(OIcX`t0qn+?Nb5^5iP<8=NT5EZ;G|O|7+Ba6^T=l|lJq8sI+^II9SzAnf@e1dfi=n1I_ z^w3Ef#H;*`Cs;>~qU}g#H=0&UVi^~;fKICnlL=oQSBcFtBy=ISVD@aN4 ztvVb8iJpE5FM5*YK&?3OB&JX|^VUzX3Cw>Sw?4)C1V=++Q;mE`*i+t5@tsexanOH^ zPh&#!aX#p25T-T1=V|N)8O$Ghnnh{zr@a~rX}63X%MU!w2C!=%aKC3*T)=ZQU~-kp zz*C=LZR6IwoJM=T7vol#Tq`TTt;Omo8P*x8alp{Hb^tGV1~m(h7SFKeajRx{itGER z+i=9IepyKsi^6g&n><0p8TrL$SjXO5(Y9&o)B8CGr=@dPoYxESb@VO6uqupdd3kMN z70a8PE4J`q&$6C5WAV|Ac;$4Dd|hjJmJ^=YS({0WUEgM}y$glQc_~d7i|Z*|KjG5x zFP>%X_?c&!H$UxUP54dZGvOb^$jJarJ~(0O^f7c^v|#iI%@5H$w`-jKuT#Iz^CHeB zLP2l0jz#broHZZNL(Wams$Ks^t9G#_v&H+WM-Tstf$|P1fiIbok&xna@oRjN-tB7^u{}z&gjGX`AE>X8joToL=&S zJOhlD`j>{N7xSWX#k<_}B8$cjjRtN#$XC9|ItC>@a}xXhAOGNAmcWSj)~G ztFRB*k%A@7g6k>jVYhz(Ocux)l4tQ5Z8(#!T+5mVW2Q!vsL?1T;ho2ydWm(9Yl?7p zE6c|LiuKAExO_^*+PV#Cx@IWA1GvY(y6wVCtgq61*@O(3B}CgZqFn3QVi525U-kq` z$>;n3%MOIshG*#dN7Apc=sLBX(IK&4jLnAIkWqZodbTup9#uONeZQ3iFp1#*@PVc5 zt$u5@@TI3+;pW+Yp$vhJHe~+g>}4s}zTf5k-dBDP;b%6mmb}j^EG@W3i}Bkj7lg`L zeAO!~en{9gnd2Mo@S<6skb7DZwePFk-)GA2Ax_`zgP{mqln#bYg44Ipo4U>bY!K#asN2ae4{m)<4|0TDk4 z1B+Px=WER5R=2ZWXN%a!@AKWSW7FyNqx}2VF;_B|8{c5vly!XI8*D)AG%O3zGIDwi z^k`{QOg3rKruaV0`6DZu-=M9r@9@$$*oJWRh)mF+y)V@QXo6}V~paT z+F5JAubw46rIw$u!}yk*4oIWgF-bspIQ^v4PYQl4QMDdYw)@RGY9QiW?4`s4^~N;a zyPMKMhpO5AQo*%uT1E4aIU98CyCN$OzA}My5(e zDoi<3I^hIU;aOUUU!rGh2@E|>dBl{Gk?juHuk-x3SvOyLnK_rg|2FGRd*5*8JAN%s zONcM^l~5>wn5IF@qURhJMB6tKq8dq*gROh|WwI2VL=qtZtFv+MurbkcF%b4NaD|i^ zVhxrS3ovwo6;7q05C-a(l8=`0_3yC0fhUk>j@Xm{{vp>!HvY>ytXtBHGSuo0?TnagX4=B~xuQeP7lMMrguW)%U>yZ!`^)5tK#C6zl?E|J}(Ot?TOf?&ysW6L2exQ^v zzB4{kRdm|ctjKBYAyy2-q)lQIYsVs|t*MxYH}@cW~7;sJUmRnUh10=EV zxB<8N4yC0Qg^6c*v-ep0sgvIWZngI1H89n0DQ;%buxEoC-jS=4GxBEI6KIO2D*Y^$ z?{wn9{SrlTn_q4$`qU4zOEXE~EO?E=4OQu9C|cf3k;NZ-kF^ZX)xv3e0Y<@km>UCF zuhY50F_f3T$J){c6nd@Dwgnf~`rEuWD~|7IL)r<;1YjerP+LlD3=W^dTC=rzp4qa@ z{pGJK63@oKX;U%?Y211m0O78D2N*zS9D1_%Rg-w>3m1{C<52Z{>P8mX-i1Wxe@JG6 z!-tnPvX=S%>(d5Vwzx6Kkr)_g3>9Lwe5C~s76UcJ9L<*pSqwK^<>>5+yZpSrHK?I@ zfm(3mLaZ86ZxVC9u#V`$dv9W`+!QmrKWpC<$7wjfw0+Y6^o`4sBgk<@_C8r=vPsI& z9&<%+tyhq&2csXYV{FWNh1iGOzG;VI{EPTS#-Rs#`@rk zx{vCaHqBpd*b{cDw=-MZrAcxKOEZuEfQ5IEsYv$!n(BtA)=1_65zSx_5zN1RpGCC1 za@frz9u;l8#El=Y7Hr>P-uVL--2iR;KS3+tb3Xu&Pyah;OaGK5EnI%N8#uaK14qx0 z9|Ao|Kqwziaic7GT1d33(qV5VS=%IT9CG74mHeC8F0ZUZk78Ifm>V{;=58J@{5vox zxe0n@>Sh)dx27J9N6}xq=t5RB;@ijhW1CrcVCTb$#-mKk<&YsQm6qd zaUFqwo&p2YS`jDrn+Bq94zx@_rJEqSA~oQ!;K^aEwK*CN;3d z0sF&tdsUk9{IdmS68dgoZSt4xg=|k3RR8H`;L?#^N1c(c+O8s)_7kbHNlHDmo+4i+ ztjbr!NUUHbcT42UhTj;g2Wn)I$|84oV8j!05a#a$! zKJHkyA646Vb@{iqSLXUbvNGM`&O;Pj|3jm6a)rP|&4NFS}OMBs+K=ukbx z6EDC)=R+!-G{V~TT|VzamKC%2EmFX}9Zg+vyw^d%FRxkanR~7{kj&3~sI54WI?L0VXuxhMK71QX%SUf)5~=9kv>9OetLZwh45Y;vsqz?$L1O4Q7&=%WEAnBN zQw~644`vj|FOLDf%p#*{2^c%=8aCLep|=3S9^g%1G#3IoJT7dDXgg}~N#yU20|c2A z_B!~cB_U4&od?6}pV9-omk)g_qc;rB)Bt)Yt;J6&?0PiQ@-ReT@I!!GZ0KctDx)N& zdi>;+4AjH09G(NTCq9(g7q!|JVg@DB-E{R3eH}8_N}mWqwv=K| zoiwqce?TIhJmGXBIQM(NY1IhMh2LCoW)mQ#l%f+LVa8O}&M0Ju6$$@QC<}Rfi4flo z^hEuAEj8R&A_)|%&UuW?OPx|-)6jmK64awzz+c+Q+Kg4PL3xZCO1LKdX-!X*rLeZ| z?=zjgG*ts+>0^t>r&ia5rfgC#Y9@g8||RuUlg~- z5W18;4xY-($c99U1*}Zr5l+bQOHbHeuY&Twcb3toR*21bLNmkOClx2KV230n#Zb&g ztOL7YtmS@H>D3p03Mc~osVQO3qpB1TAe81!z+1+~R!S*6>YWjgFpwgL+yuZGffQK& zT?hxg>wI)b%0M-g&@4PZ5;M)QKI2AkuU)Kj3l%~pP488itkdar#>c)#*07P`DZ5xc zCb-LYu?};J`%x9klQ&z4VTmB0$=xd3zzsAAlOsOg0hF~2aC~{G1$8GI#ayyZv z%BK(Vrax?-c0IZ35o4U9b@-tAsgcuFKIT&vo{tzw*RAti&7>1HYX!NOd=;Q*`JfB4 z%Vy)^&1jGnu_S-r-8hzPGm@E5gAw9El*baS6+tI5&e4e^k~HWZTARg%?H1(WG1-tS zCmWnkgEFpYuoAT=!V^wXKiVye;&0tvk5(nB3lvp+CZOCZ^GY+==j&tV8?fhvN1qAVcm%)@Hj1{udCRLPDBxe96SQVC{C282KP?$`3NQr$zy=YwucOnZ* ziOgvJ>1rgUO1inC1?(H!gRR_OVzn>1;6j3K7PH`n*Xvqg-@S&|AM7&BF4Ll7Dxg*6 zn#J@4kD8C}3$hisYyLWq-i;;nMbX+UCv2~19Y7>Bo{pm?<-*ojWbi}jl26d&wXqn- z&dQw)H}u9w&3JZ3KQrMdbdvyCj?b+|OrOD=>)38d5eJresaQIjzj2pdJb}3(M+-He z4{^$B7onVz$5xRAKF+1WnL&*qt^Qj`S#C)GJD^k#K$O1=CnrcPar)mO)t3KV;kN#N z0LpifY2)8Qy8r(Jk_*u6zXcTiPk{1u|48r1zlC%fozlNislL`iwE90TH3+>+R=Ak} z$m+#ffNJIL3<8LyJvo6_SHK7XmJiU{h!KoM+pw{>G!X;1luDl&^r4JilF|*3KllV8 z6OfbFL72209l@&PILvIsm5k{i0;o5YkhF+%L}ypTo?1k$RXJK}_c3-#ov*9(?SM0- z2ssVV9Pt^vhIj(HSNyO`V}sa6fP%(U`p(IaV9>8LK)6>F-UeZ=cyEtMx^nTgT2`i<$r@?9MTXmp{=+h_RwA!ng}3A4u5wRP&912aZ|Q z>^9i7shBHW-2{HjHx(umODM*Y_UON)zbEYFF&4q^nTtK5M1n_7V2mhHi;W|mglI2< zT~T7ye91yC&LBcGE*BwNGN!%QS`VTTu9TpCBV;ufR3HEynUI6oT#W+dL;=QEpw7rH{BdDN&uLn@xt_r%i$s=_vq160uQ9^cYXo9kxD|+M|7@|m>OUC$%WAGw? zHK055myHf0+R+W4k=#E6A^$-w;V3OhEsfV5&D1>_-CW3zqBF`Kdk<{ApvKCN-0dDZP($%~n|-X+FyaZ!KAyH!c;*1AjB)s`)=Bbcy`ffn zqi(@p5an3V-`_P2xEniwUzyQ`7wltU`Pt~UW*kVYP%0ldd!y(Dln%-ndhzc4nXQwwRUT`C30Z0gbin{k z`Oud}L7LbD__I?&0hh%m?U`J$Xa8KsyX+($CQl&?2V&t4Mg6j`}>PRAf1LbqnTCrBjK{}zJ zg}4TP6qfaFo$267SsSGBa+K7i7+JTwH8fKr-EHol4Z2%z?Tf~*xt0mY&n(`JmHHdh zw@HokH=HdX&lSU+)HoSiywugL${CBW$<`^R5Nh@6TrUl^>aGpdN8=W-Cigzby0%4z z@H`otVJMSz?MuAkxJNY`)Mj0v>GDwrS%fblfoS}JgDjyvo*QU~q##FR@s~DViVfAa zFBXd{55gzj2;kK)*%Ng_TDoT*i>RRh3~NJk0JUB3lL;yd5Tk z#9G?mN4C2ZnE(+>(#uV1YJ~HsF;H&|8pZEF1gD+Yb$5uR8pyHgUi;8!Ybo{@Tswqq zUjSmVC!%jWSE%n5bctdG|M3v65*} z?;7Mf=DFrBTp;AY8B& z2?<$E%wiM&`M@1(Q9&54i*+H`Ejtr0VlAEu4SNkRpdbq9MHD}D6kDxs6i6@2r_|7= z5ltIxZ@`mu-M1bO4W9p=!&}*l_;GpeqfErkP(ob~V_>{#$rs}Z$sIf=$EE2;TE6HnBq*LJNl&ywxEF`{G;To?=N% zWAQ=Y+51bJX(3YhyI--+abyjcVJIxu!&pL(kD8?yJ%R40(Hp_c#0`5SSH6aE)OOH{6U9fk#^I_x>c zF?3KWQdW(xb7tzxC7ooQx%4;-pB7sx`L8fvdO*OkIp)JiaO8?0 z?V(_Koz6Otw)1MuSs%OK9`JuQ=VaL$*Q)&Tah6DZ)V1&7&w|Rg2PP=?1ZvQ5C>REZ zf(`E#_$HK|IG+(B#IR*ovg|TgEY=GU%o~bRRz1LkWaE z`6zy|XcnHd{MPaoCEiKX$|$^yqNtVHneZisq-@K_2oQ+@{I!#;S@*Bbr0E{R^(n4r zaJ`SK64zU}w&QvcR~fEDxPCpue>#b+{_YOb;_`1|#%xp$jHIH=WR3Lqp}p1CRPb>y zLbQ#}sHvoV);RHMN1Cp-MvKp(P+FqEhV{Em*X@_oYS{i{m!48^>|7D%*~s}<#VeG- z0Bi3EwYsruIH4&P)eTNO##A9XyCwm%*1N@%<*bk>*$V@&#Tn zB^~H?4ATSA4r}b|qFN;A_%T8}@q_ezo)YfG4m(mj#BBF&+r?e*Rw6+!k}+r$5t^r% zOk$A+)+APKp`->kVh0cM8>d-wWjJs4Ella@kicwV!3awd&vv9&d3`CeEkmh(G=DX1 zAuP0pP7y!1rk9dPdLzmj?UaTd7E?pqOFj*84O+ZFYe=?bTtk$jhytvdx_li+iH~37 zyS{}lc9oy{mbLE;9$o12Jtz5f6U4I`K)k%Fm3B|H> zhAB{&et}-M*SR#^d|X+$rr;WYYtK1;<9jrh$;cS1A!X9GL|YlCh7to@-4kVP z^)%xsxQUwX&W zSIcq{)|@Ndn@JjYGRp6g_lUBUF!7KiRuf1N!nFVm6+MM4C03J3)Y=ndEocH)Jpe&_ zB(^GPcPU!Ef8eqQ$ zQ4E?x1MFvl80JgPu&yz5;B`luW?T+eGJ5QtF+TQRaEHd2aEKx2oV_UsiA zwbuY>1~5pvw(M!kgf+-!sg{j~Nr5%k5?Ggyh%>cdF;L?msO^?-36zgzEpGK{>2kO< z22sSVFqe)_V`p>~nl4lH`I0zwzpzjhFV`#5)yVd+Ivk)odN+*B$(@0?NwaxU^C9BO zjnz$?U){}!o1*G6`5!;B9;5nW`UJEn8D)T_hS?^ofChA-7CUYqwkxqPZ;FF%tQs<4WI$^T+XsE+9&SV-mM8 z36IhvD8Lnj@l}WQvQN3Gt=pQ!Pufta_-ek*SKGH_7SCRbBnYC_(L|F8+1!A*ah;>~5WP#>kODR3C@~E>gW2ELL!;qunIY}>*DApX@XlT7E z`|^6UD&3LZ)u{h>Xi@J2v|eyWUDQF+EqBLsX#2%ix6c7xVW_p+lo!ARxwJ;HO=4^Z ze*P@$+!|&kmNknrbkb=C8T?EDZ$tYQ|KV}xSm!RftTb3wM?GCI1PA8{Bbix;LE!2z z6Nw`wcitt1nnN!(ZCieh?NYi>LghT_D&OaVsB}amfg^+~(&J(qw&X65j=2@~0x#T&e2;-P~drBGo$|yf!VhY$HyL0kW*=2m8>1LbX zc1*wF+ypw%Pke(yr~#BpMm82%6>WL9y9J@X?E?s z54IoR1k1ke*x|M>v2U~$C4t2QB`N4X06x|UDnIZW>pEVb2};bZ%`}+CUH*mD@s6Rg z(2^4E+|U|D$#t}Ah_a%Fva-jIuHgVcu^z4n$EMA<56>G;m`Yyfhlm(k@a-DzvADm0>ol%+aRpxC`+sM1y8w6k zQ?JA3Dw!%l+>QPM2U+bC)f7(lHIY<3e8vUVE?-yDtEHCTyc6oK}2wDiTbp zusrST?*UgQKO01TQ$_a~(E2Z~*KuvcH5Hc`*KAyKaV@;c2mHZS_@aDhMSRyE>DhTP-_|70m1u|wl5wVtIv{=U{9oBiZG%gZ;?bnoEWiEAG&KJyam z5SnlmbyZVXXSDhh)&<%|!MloR$6vg}MteeTX^GdtL6Lg`s)-BoDjsnemSM$k>!2c>3@}_;3TxASJ{&2&oQMAa`|tk`D?i` zSp5dk*C|&&6am%mi3OsMY$8bZX*wXN8biR(}7Zk*uyxi z=7_azu4R)a+VdogK()fHY14kGpw(_E&Q7i0^yob^oKlb^o^>F$Zv z<#!}n#$1<2L7_w1DijQErKMZK$ymk2vKo4W*vjvw)WlX<+uerM`vCE$F)$sv5q5CU za8K^zGTHCIYeOC372N)Iyyo$DYvF+`O3s`YMb{wnQoWL;yJTG9qr)Au=`&}S8WjFV zEqb@PyybP)$?)kUf^W!!uU2fFyv}+Aj608YhXo;K=K_P+$BVCHy0ATe`#R%ICi@Mc zjh`ug+eX~L*<08VQ~ttXS0DTF zNB?5ik?qPlW*T+#7nw;eW%58RXfs55LmXnr6=#>o5<5CzBj0pOAP}$T>Co4R%z-!& zas+0=tkE+G?K4@tjg!SSTd9GRcwf23CpuZXtS&d{+>*6yi0%Zg09=!C)#2KUi+K&v z>3n?^UteE_%gfi>*VhN*u6{m4baA-a;_8H}zaQV@WCO+w!}G(qcH;U2S6|;DF#J(3 zn#Cs6QgOK%`#wa|5<;J*Jmj{I=GgY(FTAc%l{K;X(DtGVx%Z>y>N6v}%BXu@*r~J@ zx59y|V1AgI6mSbK^Upg1WoSvnDmqHxU8+p_kmRF-fHf8uAV7_zbZP>Hlz7`n>SBDI z49X5RKKdPA>2x^EP>F{ZAu?G}fd#Q7LC6*F!FN-hH>u3`Ik!C_H^YlY>XbQ$4KT8xIEl1n&i;7n} z1BKUzv|(Otl;?Re^J>-mwXu|$K|P$O6rR_Mei8B&sz!|1cNqh%L@)vNCg703A4#b* zn6V+n&b<2JZ1mmCt3`fCEqxA*C2NJ{GU?Jdlinpu|MbfcpO8U zp6)!7FW(lw8CayqFtC{kK>;q#1ohFfUGbYc+r@axx9oG*XQw!7VBPd*?-S7m79l!$ zu%4uhwI41}xl(($y(LfH2mVZ@_K@GhYBj$BqSD%T3~zaD`2~H`zM9@GN%g5J+$}0u zYxg0@PfcE4;*HbAT@$7VdkVDKV~qvugw2~buhdOjYYA*imtWW6EOapDzgAN!hmRJ} z#FrCX+dXpSPxq?*m@mK4UfO`?C3L?_+;Ir9LQEAfRKHon3FcL}KLQI?IiU-sCzW$( zHIGE3jTBSUizYaasHmaD6ZWVF&^-BxnC!_CO2?zDHpn?;or^7w1#(snWu=+`;|lwW zDp=QLpq}$8`9O68#+4OF*DM!Z#Mv|UU};dRYy!azyWaj6)P{h03&pw`1FRs&BHr}M z;8p|MNUB2h?>fPZEV%1M2O31^!dOlzjnJQaBY{1IKOzPgS#scKzXHJow{=Jyz)D8f zmKhn>2X({XxqAl?UF>iF8aK(LiRU}8CzQ>ik2iZsG1eaTW;u$oO@#We5ap%Xfj%r+ zk9B0KFPnf><{e)apqOeu@nz9UaPCj4uB}N&tO>vrE8?gEdHfFC^2&nr=SGSUKbE9- z{wT)zu`s1Z+~vnC34hH~8!e~)Nb4`9bl^USC41y(c-RJ+N{p==JVS-jiIsO;*>xmN zQ@0&Vhj=+D-gcHg7+ zxC7@vju!R+G=IIQ31E@RL*nxQR&F|fcWe0lVs;?HKM@syY^FXmrq&V2_9{w@s0n5k z9LCzE3+s+MT8DIDi%sR6f2!IG3Z;n={-F$b`V?xEm^L+fOo@-S(3ESDknte71n>5h(JiPHx{bDv099x` zH%*K7-#seqp(t^Us0n5Fo5C!uHF{0-4Fhof`IVRy#v(Eg-l2w&Kks{)e*q zsx%S*ud;%~jxd(g@rT>hda1dbxLy1e#=1oA)cpP{$tKNT8bnGsi!9AKO#t;)H~EPV0QN`-TmI_wwAl^`^|RH>F~6N zmS=Yt=ew~UN>AY%!6qwr3QGj*ri>L85iG@Tu{sls*a{D7zhk~+;&22@(4Q(0*CSZL z&H3%8{7jVJosld?c~z{9WKlpDTO--M;cw=vqhbFx?W*-x?4qX4yF&9TkdKOy-PuPt zq)CZlFXDpS4N>fnGO+fpXiNnqw6-FKJ*oIqd=AWo{shj#(ia=cN|iohGdcK*)4t+> z#GV&vz1TLKzw%ozR^+=vMb4bAti?I4qeM|Wd&T$g7_~C+oC41$g0=UpA7NADVzs+=n5n z%sK1uk&5`TKZ{ky)!yjOgyQ{Xt~#6$a}5w1lF>V>L{l=$3EK(M79(%ZJcq+`(lU<_ z_SvlYNiWeag&p=PODA%^YHE6|aR3{nm~~@Y3p$O0R*Bq!EKYyyWAV^Hw#qbIZLbjp z9Y_~GgIK5%C3+2Fw@jD=2y&H_&C_yF(s-Gx`N?--e+4e9NoT^82E9Q@eA#eN)x$>W z{vJ9~Hx%vxxO3nZ;mN`C$q=z?5L>QaI6{m_Wtn=jUR0#A*itrPq>dgx*E0rg`zI3L z^pIcDKf>Jc+zS-B?imC#KpfRxIW^iWV_+=`p$K72f1E((I>ssfsO_4Eujo6N#oY-J zAucz?@A9U3epn5MW|PqHI8+tn>AUHMdH2s|+ZEmNtJi=;WE{rs*`(u1P4*Ncr~uZy z(FCVb{ph?W=~Oj+(spXl55q7yw}C3Rw*ZTno>cn73?e#9R{`s4@y%cs)=B-!R%G!_ zk-Ri-z06Q!d263chVN0He7t{PDSg{ZqJs-6V93?78~N|s{hc9xAKM@Q=bF`O>?{N1 z__#jOdN1L4fB7e^m016q0~OhS%Qk4&$g>v%J8-70@iwGDjaDf5bOb5FeodG($SiHEd-Wg!TYpyfE1V=qxW%-3@Fe$}BGIpB+ zrmVzJtS>G6G_HC^B6{9uD*Xmbrr)rM^qZ1PzeC61citlbi&e*Gf$D^1tBxTNzyE^#84asAXjZwGs7)O346VAFeRI1 zy$3o&sq~QFqFX={PlM6*f>Ym19R&WC2XacWn9k#f-bqdQCn(v%LM$w|NpE<_T>JnM zye*fu3hGKt<&WI)SC_K@W>!4o>Nm`GjKa0M@S>PT0A)DDh0u;?@ zR1OzQEro|=A^N~Fkvd{N%A>*X|Hh9cmttj8tn^Fml1{E zA{Ua=ETtEk6XJarLihFbV3pRqqN1^44^rxYHu(Mh_-oG9TE(3dys&;^+ zz%Is*VBxdwQ}Zb41^IT2WhIiy`+i5I(ZxvND6p(0uj%l*da^L2{zg5t4m8)Qtd|Q= ztB)y#S~Z|2t!kKunU~3aD)ag)ue|c{+Wz9`2o~xai#8o9HbT0A{C;QR`Uv(=>4(5W z4QQmCsllIb*)k(8YfGx%UWR;ED=NAw8~Or1bR`~T%S<|JC(>uWiTaQm-HH0QMvJG` z%Z~1$I@!MKh6u;@(ZL#?@;gAS!&_@!CP5+^)3yGpxN-}N&p~T&S=88{(mw=Zbvo0U zKzKKncwIeGO-RHsuPXC0uxA9YC#1eHG18V0Ch(@voi%!RM_@U#BG(6Qc-fqDKzg!gSL=VL06}(B&d~-?*|RE zHbojXBQI@%!YsG291uxZcf`s}HautyF}b!L6h((i(RW?;%+`H)*;9O-$)Y{4)5mpB zVaQ_9@tCM?V#8vd0tyG#75Kx_ZmwJqZLY!-e-?Z)hE?Qdu@NbhrR_p&Uec+NUSVc5 z94h6UHwmlzuDpvlp}EaKJ2oE*(kJc5)`hSw{Y7IITippsZJ*%^`x?ABJnV4A^ieD; z2%poZy{^;Yf{?qkgt$E%iFS@+DS61ow$Di4pi5A*E1As^)s%TjC)>UV%^zT^Q~g|r zBGH(biDG$5yUxnpLb$e}Tl&{#WV4xyKk`s~S3C-|bN&ZZ+;>M0RA~FHEX-F6Ig8>{ z&)OevWm^>e#60ojXqFN(F;AsO=fGJ@KMU|I#`8#?_nABdN+^x zD_2Eh9-9?|Ch1E0SVG~-*cV*_s*(_U3i*&!l4j#kF?J$^7ZKuxiL4i#rittwe{`O5 zzt^QVFs|HwtpUw4M~F3(*aL{5&u8yFhb=K^ka1dy04ICJYhu3R>aJe*mj_<7{CHF zSdJfSl!lEIk*o(g=E|c4IX>j!1R`kwCOF+++%=hXRr-s{$*kKb#e zd=)qYvN3m@K9})fyBKWyRk1pz*C^8nlL12~?FZCWg_awW=uD<&-*>(30chC8$t*1q z#U#}Ox5kk@xier6@*&kCtvt4$ozBA5%(0zf15CeCQ{7(3;<8Wt1sfYsVqXDZWKGGvgMcp z!-`l}6Pe9uWWKymJGTg|yYi=~oCcA=GvfPcn2h&`&eK^>z0Zl-A=AOyDlN5hXE0pV z@wwPMlO=>Elevqv)5f|;EWV@o#+|BbbY$eqEYUoZ1$!<14#WYD2iz$9X0fCY_630c zRSpECE1cF~CprUyS`an=5z}U|9-RqHKfyu(&jP!LeNchCAD5A_a=({Vx)I7ld*gJv zkuYB*%w{E>yP#vg^M$N@Klmiy4_59ohKToPW2u=ThRk8pOlO{GZQz^Y)j4d0zIlN- zKZmUjpTA(Ft^`jdo+t1;k7om(*YUi!Ks-8^#riZn-kSQcW8$?rEJ0kH%ly4ecaJ2~ z_iH-QJcosf*m-PD`0BfW`|!Mi=WRT-cy{9X1kd5S#2fS2t?{eYw&pkCbDa*j0ux_m zpff-kb(VLu1t*E{JJ=>u?PIM8Y~t`8Y?3Lz&8NHQYhm}8PCeQh=e625EUZZJxv#3# zYuIPCZ(1;}wFBp~XZdXl9vDfSOA*%a^rD7hz2kDR(b1d)3eE1Eh_FID)9}#yEZ0Nt z^vrX)T9^n~$j0OF+64>QPq;BI?_Ty9#6MB@vHMKtR<;&jQ@im#lpfIcYn5R1ms@PD zVT;9A_p_$bkW4zgKDjY#h$3g~1ETcDoCg;J%X8TPg9E`nIeN3!9Zah51vzhz-&|@QJv#h((D-i&#p)@lRA< z2`htIitU1#W+=r|j)*@OL8jdI6EX1t_8q!wz+zTn`t0G>7CbLLSj?uI`jeD{CPfj> zc#K@a*6IsSh`%31o!$^fmarj^CHp+ce%1RPSAF#}mWrcGSepLyNzw5^HdlP~5F4kQ z6h2E?yx#juF?cD?KzF) ztcYCs%h$TDx{Z{V{lxBT9+k;;_9ole;q&(;+WAv0$)a=_>plZ%tnW<6RixTj&CfIr zGEhbYq51Nv4;YL0A*xNfqGsew_K+FhKmkj+7TURotv&+F8!eN-wzeB4>q%#d+Lp0( zXiJZUNkVy;1q2|RGDJ^f-PF=#m}}!7W-IjQskh5mmq4I0-&&sC1Lhy@xEt$}#W(H4 z*v(<4<*dsTS329-2v-S6rCJ4cR81V^y1%j9!Uz;lxKY;{ng4s_mu`wI%9b<#qMLGi z^QH(|m2GGB|DGG2nefk|dlcNXXq3DQ!&yrpO)A zzTH3kTj6Dxu&(HIkxsEuS>iK+R=qMH47I9y^izcqXElGY8wkr}nL%vaR9x%=y^|IC zG!VQ1=3r@hx}5Z2LY`&*2G2JaUOeb*H&K0&_c7dbB0` zd>erJMpaJpcnc=3-Nwf0%Z%c*jjc*}b-zwmk$K(j;YZc(Djr?Qx|t5$*IJ!t#P*de!t369{sqefQB4TT1jx~CDT20&v~rf&<@I-4 z@xgm1z~89-I-bzVv*no6eqw()sPEaL+bT8b!=i~heRqn+ zRqReANnFhm;1p@jn$^JKe&Y0M)*p^<1?4K!F6Khy>b_Y!M^P#m?LT9rfIE;Lc9#ijDG`n%~^(5E2tU*tj4`T(Gm(y;qYz0am?HY1r>q#1gvTxk>|s#upvzibA2nHQ=n%$FOE zAV*Tgs$F38LS44jq4#h;l=Uo#a91w`NC#Tr8mU@XMgea+(y-AE>r(z^rNk%;#5+~& zlkTyU!~3<=iK&@JtqTL>MKsuz_(SpZqwLKvf}{*3w#<54*-|A=XC0Yp^|xjeEBW~o zpzNLY7+Zx)M}B;aWh&Q1{8~0o@f1(2WfcRry`o}yj3~D^Iet#6&!s=v7cJ5NuIM~w zsn#juVSJ90Tp%@gRg8a}b?$Z$$XAu;8K9?icw-jGQeu$o&Gh<-uszOFvgeUcp<|#8 z-4COye4GVnl(TM135p-I_H~)2M%7YJ-b5KSsuowp!Io^Vr=MW{rnz%l8{SVuJONsD zj#%;po20jRi6c+2zH>e`3u+8}eMDLQRPGz*Ku?8N#`8UjfV@ z)qjWP>0U6YuK&#urWzX#L&pJcHiI^v8CY=18Lq5b4jb;0}Mh<#aYs(#OTDXCR?TuB~|ni;yS! zJ750kEh3&{(HZK;Y%Fh@5YpS$Xjty8({WfbLu^~424}PnHd3%&=ZGlwwA87=Jw(NG zEOO49utad-#0St>So#`N%~f%HEBrHEFWx5aK3>+zsP9&>xR`VXQ}>P z@H$_EADH=709w;K)eJ9uK>jx7QweP1GK4iNmEJV;S-(wh-zB)-uDTkYY|r1PVq z-chr0_>*@vrB?CMLa}o_3o$*c#tWo)w~6o9v)4L6(22c4Fp3)}-hPpFF>RjQ+NUMr z*o!cHd0+hTA_Nk@*M_|W;=|{CKwTkeE@I{H`J!|K%a8HJ4T1281U#U618_OsQXD89 z{cwUTBdvp~SCnJKUmK83xro{bg5+b7yOEv4+Me<<6#r|){+C(0&p37GlnGfS$=gL> zHCtf%C9gGu?c&jD7S1OiOHotJVl6Rv0}NrZeFw!CY-mVxRUB$b?0~WF{W9P)$GH1X zkIJ0WMD&C4IFeX7>8zbswWv#{IaaY6u?V04ox0-{5F~VH_eq=62_hg(Etdut$L=oJ z#6nAf2h?@U>u$gRaFS8=2q;mpiZwtJgXPK(CLq}MnG-oV7CWt96v&6?!>3SXfi(W7 zIniEp+RoQgHE^b`?+0Uyv1Q*~RGA{|-yD+|>kc%5O+uWavuiQ}g5xSO`o-DZURnks z^cB`~?D&nCcJ^f_*A)E>rBIi4MY&ilZ1tF9jJ;7H=TTiqJ7%UnI<^6Qgg&6V=%o%7 zCouCCkG}$lA0Xa*g@s0;c;62)jIp5bN@haJ1KLPy-8lkzwVvWXuRyf)^mrO571$RG zzgJm!+$M_KASWPz@-1qM5ced!_BrK9l#hM4wfV2IvHCDK;>NZpGggxTd2Vd$*w={N zn?V47Cw|+^iu8F;irm*>OcEhFz5x@fbkXk(c1vKNC)(lX2;C_!Sw8_XLb zwJnGTc)s`sgyXVy{F^L=d&OkxN{oXmrpAcJ-eE&spQ|h};>&l~U9L}CNsJg>!~S%K zJ`y8x-evvVpJg#(H9qwhwu>F_vd@QwZXc9|x?#@U3}=IPe~8j7iu5lQulrcxK{RgvX9&1D-eVe2C}E9pZ!cSxRtuIbj$3 z5qtCbiFz1rV%4b1sh6J#wiWdKZz6juI{@R<&f8d(a$0QM#>Og7);4d0Xx!+vfuRTJ3>4HdWDg+9P6ju-@2JDGGML4CY*I)eaceDTU(e4?&&}5m!HC z_ZoU+>a0(Qw?AZE#HyWaWO6iC{AT(YgAn=pQqVSKOSsO;>`*u9EU$p(uvAdE1>u&x z6lrDc-#b~50^7uZT`U6k0uR{5Zc|eT+b>*!(d| zgY@#;$Ivg7*AA*@S&A}Dl*}6 zY76!N6X^}dMOg!TME}5-V)%X*B4YQl*$e0+dK)?WJrmQBh>qNxeM7A-pL0}nH< zHf0|(DoU0Zwx3OCSID#bS!Ddnc0g_;nTXrVcVdSLZ0M(%VI^13;UN zV%Gt-ULSk7w&);xMo}IWR}QIVrhbZH3p*q%pMs)2DYksdgg*VC$o(3voPL;H*T)_Z zMW3-nu+{wHGq%9o+Gx-^e^!>C6dTYV3BRvwtJcZ?wOYYF#dmu#&E7h~o&#KDA4MIn z)>a*5Cl!5oqqyT3n2>1k)-kqP87ES{V7KT^pNJ)2uoX&$xc&vZvt5T!uPdL5wO=y- zfA925V#k+g)hco0OZFBu?l^m0-)B#4!3nlO!I?!ZCjkl3V)$3+f}nbF_g5?xK)?Ab z_NqPwtIpT#W96+{^C?!W=)FD?OHaedbY+n6JHcryjU@!ZgIQSjNo%yw0z9(ty1$2{{Z<}{woc;3TPhi4a_J$Uxv z*@WlQU&Zr3qc0z?Es^Y?UfEom?qK&Q%B0$w3#_|7YwVT(S;{*AVQF~M@z8sQ>!Ejg zvR!V*6%l-qm7w)i7hw>*Uu?bz)cUG8coC+X0W-yK7txeQMNBgw-Q(8U1;{9zNEne1h z`8e(8ACXODx7mOwfuabBRP@yv+Iq49M2qA8Oxi`)>H| z7LWP+A+0Qjv~uia(83)uh2=5}kNHoAtB&?`h|EBLucgY>jMw-@pmfNJmQ;$1HWuaA z0N*_(FgoXO%^UnDi?f&6FnxzY5%CA?WuFz9f3U$oB4vND1xmg6CeajXVgF&qc+F;VL2f-Wc?n*71YHg+JL~gCCGZp|F8qEX96m9P2;czE>51=E_6R z)@gLw^iA}p(rN12r%D$BWN2Ida+s@QA&!Bx4^)7Y?6))$@}L&z=t^wSY6$WQ?fWV{ zq7GE%bC44_KLvXzrWJ{rYs{x~cU!V5cb?iF`E#fiZGfjt_B}-v!Vt<)SVKX)8jAy^ zz-!?ZLks#-UlIw+hF`C!VTNK)Sg+w0?*N@Hy_m`QLr_=HpG^MpJa(Y~3XV|cUAql= zdIKmmFlbnzfTz=jTcfI*{^z)Pw}cvp8bFmERWe#&wqEcN?aWJ$npJYt(L*uN2DP zEYJ@t$W7j}MC{+Jr$qqi;R95e@SiK#bO&(O=G)ai{& z34vf9DMc61Y&Cl$yC=mtMN2;-4miPll*5OJ=(TD{ATpOzQ?=@SsaCH* ztKT8iuP^Ec=Dx~$h=5bA;xZ!$>MnA)mi_3qOoEV!qq`+B7D_q!DZxE4n1M1DQHu2> z(DJ4KKnyCO-8CAFm{eQ3~(f z%}v>3Lcqe;>Q5AYL1pIF%4K!VfR$$Pq{0jI9{J*e!k<*`6=iy!5cK(FcOQ^-n47y= zB^va6Sc1xPm3Y{5>MFdjwcQRgd7Z+EE^Sl0p_iE`__*Xo*$B?i4kid=^RCVDNLgMxN%ocb-y?9P&2gD*!r;{$V*p58Rqk%M!gff!{ zB&pp`69=cz8G+GgUvIu#hCYYTxvSjqi4?}>W+;>CxgXdL?o+F0A0 z3*@_=Xp#Lh+t0%xE|`BJ(QZ;j1dSPfv1F2iO^z2Xh-n>om%OQ1S?wpUp6YsvgtuVx zM?w)~%!S#@GsqQ}bF0_Eb##N#%P?qhETyQ3hNJAYXb|xL7EiH8R-Y?B5(hf)Zg*(# z*@Hxm*6S2mwX&g15tTYRUs@s4F0{8eOzzy{kvsGcvGL>&{evd^^0(wt*IykBP;~S5 z(TGWX+E?Uy^DZ91N4_@f(|H9_u_h`OC-pc$=Llp)egoJ0zfOuQRPw3>L_KT7=kKdmKh z6?G<_6>%4QsKmu>AsGoM@vsxS(;Fcl3ikn0$`YwQm^#VgE+5`g|DW^XX&>Irtc|d* zyQ5Z$PkeYZBK^mQ$NV!ePDFG>t;{05Bky5AN(eKHJMtM&GaT%Qsa+`k>IfLd77Je< zPf{RTQ)1d*R%{S;#GvD+Pa(aJzomv+ziWWg30b`^LZ>5@gEdJ031h2bFG8e^aVnI5 zhbRp=%ENk&Y%g<>17OB}VWx69Rw+nOOK;AwE%6s!_`(?U}C>PZFPFg zKM6V>9Vvo4@xe5V>K8h43=4+L91RWrv9+Ps&Z)2m=*FyabtHs|wm)xRa(tr&N(tA6 zphlMOU)(dzhX&;SZvW&Q+{?U&J;N9bN^|`=XKxj7Azh+DhE!&y%RW&EdpI5I2^RGZ6yCQp4;>J(m@qKy;WF5>(jCY1=udKF ztm&5W<){ac&}vLeyw6jn(R-roBbImOefu5$ftsR{70>n1>Aw0EE3VaCm2*yB$Zy3Bl-;#;fqbw6CjU|p|1clR z6hw5(m%_E?+dbBp(??W#RCLB=;MOw}V3_sB8Xz5y%1rYbV>$x7*Ra8>%d|wRD=1NK zBr>LtqA;7&U_CP)iL8Qm;S;@Fd9RBVGrRC0y>5+ounWHjmv#TA3t#36U9lxrEDYgE z?#~UeVoL~*S2l{1A$-W}S zUjNYec0S!YC}+e2UHPrx26uPmF(WVuRB^7;dQLWgOak<0o|6wEJ?Y?^DYKqxW_D|^ zTl?Hu&OC(~s_Fvzh}cjx@vL|zl=lEu+!f0E!}%?gN9!~EYJ=N|s&im>E{l%c}d`ACcU#RmJ{2mbRSNO2&&Y#fhU{VaC!d_&m zWND2+&Reu-l}U1&IMAKHme|^}s!eOIY&wSCJ>LbC1t`#!KpLpTC^y}ZFE@*gQ9LlX zEmZ|Yx#C-n)3}|oMtl~<$D(7yqtV17P{*4p1)QXm0~Aa zxi`^q)rh;kCl49?z-Ml#&F}-pYCL}#YXr1a&p-=fp>4^#)}rhrXFdjK3t{!Jtr(8V zl%0U*op7oK$Y3gR0dFtTsaOj zX(3|d%S=%h%kR)1TPPyq_zC^Bd&IRkUfO4_iS%+H=pXb}p%Z4RpaaxK6rK0Pnz!*8 zWCU>Ok!pA$S-jSZhj)PouKgi@T?xaE23Q0NyBwc`E{F{8>xc zaGmvahhLrq6+-IizLa%g(kZ+~(`&2l)NPc|Q(TPaArY6r$X1ndyC>nY=6v}Bz7d(4 zilZ{nvbY2ut}dszz@$@oAb)GrIaCssmoF>t#X!o3 zkRPgUYvQThtZzbmGi5q1?43)c0Ad}@YLB+l>XV^x)x+H3hvk^)0)nMUamGSe|6$j$ z13;yk3s3h|p=yuIHWLtR$9XNAlEuXY9#V=Xan58hxJO40-%d#aoL${sAMlJ#X zTAJwd1^T=LpUxC@VBSUoXUYcht){ev4I9ZHJ<~y^A`^A^8qOEtRjYTqiUSv^(17YvGF*{ZC>%(J$PV8$9tab-(N8sIkcogu@6MgvTerQ8uhB;1g^f8rHWCTL} zs8XEdr+0)zmy(~OlPkKpnl-;T0ygb(`Tf)X_YG)$w*RhD=`# z)sN9)HlgEY1v;I($PO|!rAoeq{A4nT_6n=%-OVF<0Bq#~q-{X_ zj)@3wFsgl=kL?;q`|<>zeod_n{o5!yB=V5LSkw)mx^XWuYDIIPLPKmVWPs;rY)w&X z1Q-(iwVmS9ez3ZIlnAn-M5^`uz?dZN1Rz0z>m!yW^61{H;MrcV8$r#WB)OEN`%Ou9 zio;0KDditYKIbk^T6nh)<#Qq%X3L-IMgW8-*V`V9$|Blx|#qteTDD-u_s3U{=_l zXD4J~CIV>yU-(gKI64Dbunre+Cp|5u~@#vEnF8Ki7X>$$!%jY47gR8DY`Na{)GU*C- zHe&0Bx*$OtfyU;`pFox6%kiV>_aWp9bUTxXR)5-O1MFyuK$Z;~BVuuFm2JN>zu6bZ z%Xg)3-7Z}W9e!To1M5YsM1{CsgCH*D0#yaqy5hANuVD5xuU|2C&J>y$m1=;5MI1b8 zR1fl&FfIc&G*_yAQ~}GrI4DVT@gwiYhOBMehMT=#EsHuJtMww&HdP({2nD7$d?&Z7rX}GTqRshujaZ}!|h+;z=Cb!%>leO6uDmw0P8$i7zgsi z(umg7Ram@Tsd3ctf2F?hG0jUXuuy8d>$3bpEQYI%tbpdgS)dub1p+4)7DFw279xK- zoOF2@5cnaGdsXF$K*i*BcbHSu4&+;lP)97=uf1y1ikW_+c>bHvhz1vg6f2vl? zI}&3`SpEpb@DU!vc|r>2M~UZndHD)D(hZ2fvA!Mcgr*_YK|S(Ju4p z?igz+#!T@ZGFKiHXNL0w0bt+I7!d;oh!lv|WU5wb3&L2`@#o!UVj`WQs{zG+< z;@SwFKpkyw-gq5M>n%K)_Fl?P(C1(cX9bQQ)%B-92B2Rt_umF$Bf1LLGJ)0@LMb6; zYjC~G_&R8P>`rXLbF&0VrzqoX$hZ?_Z1-=UvH0s2-X#*5IK14sol(iI2Fs@G44usG zjGcu@o-&e0_Cs>oHwe_S0NysA>+m3SrmcCQ=r9C%u&2#(%>aao=bjoAD`b{U&TrS7tXVy+_=J)5q%wxiw{;J_)BXb7#`2 zK}Erpne}yt)bG7G!ml!O-{`t8)L7@v#ffi6^B|-8b)h*<{5={qh!b7M@Vk@)qH+wF ztPjO2V|X0&0Kz~9N@opF3XX96wUCxZc3k781_A}!;1 zijpMy`X#x~s-(Os^&cHoyQ35#~_@G&Miz zihWfJ>WVsG1L}-jfaX_G@Q1lPTUjUgc%Ia%4*(J|!yK|I=d8>TqsQ|tofhI!=hpRk zyh@3BP2hQGXVC;y3|gBBd>ot~Ch&DiyjYya=iuv`JRSqdDW3?Wu|OnD>+XmK`aOw4bZ(xm{#A8NMCcZasUMdw0v$M)(tdMMSEi}_!22_AwB%=Cj@ z!}*hW#4TDbH*Fer<#XZ(twAvQAXEOEdOCu#P&11dBI+hX@}|N-RR6ZdjB_Rbx8WZ| z$rI^k&=8Sc2n^^arWNwQ*_Xc8$~0<3Qh`eGeoV6pM6a8UR*%rQ^d=6)(q^AJtzB?! z_c?;dm^&SSGylZarh3Q3e9ITqZ|WF)ktR+Q@<<0A(XR4H{mZWEX}hJj4IzXOIvwZ5$JID-0?;tle;STG139 zuRrm;STlt$?D}M+x@6$2bStjIF4w-S-UTq%5CKzpmi|j2il*}WXjhoSP)D2AuB69C zlG+&@ zQR>16#j`~`lPIPlKFJH6N9UYkZ{*NvygQ7qXG{aqen70A#;1p{Zm6>3Jr!_m7eYbX zSaEX!HfV{br}KnPSN71PCN0Cau=Z9L!C}*RW(bB28|1akp9QiSyccQ^>@=8D#d@SG zMR+^C6fWB~gJ%F%a2k4Zp7D>AzDaaoj?jS23}omm{0nW%E@N*GSizIs*Ov{1Cn;`5Mj z`fP}qW{D-Uq1Z_lPtWGz>By#RX(G0k(Fr}UQn{Y%k_HT7zs-T3NX?{s z;_82GQ9Z7eY|AQ`>Jtpgj@De%ha~ae%;goxW8OTlUpVk@9#0(j&-y(1rIraayK4!? z`aoFNs!pG>7Ly-C|o2uRUm>bUI zcaMqihj>!|tCXfezJd@crKT;$QXG;6F_nD!TVN#D6iuXteSQazHBLZ8m@rKfdJB|O z$)b;ick^;Ss^!u_!R z*TwQXdFMjc>`5>2DjObR<Bogd-Sx8P3_QXGt5dwKMgFtEpzyUN8g)FHSGU z%C}W4E5>*p6wele5=|E8i`8k-Wj>HvvKTU-=j%VUi*@t)(8zvkfXbWM)y~HN_wD3P zz;HltMmb#kJ|7fovItqgi}V*ZiX{tRE%TK4YymHrsWx1RmJ^Z*bCqqAZ@dT0dnOAvF08g{ZCtn1!C7dy!QwVEIPU4 z_FYXdOwv*9;0Ta3*frGF2%z13u`1^z zZX*Krm0D4)mKs~c!wY%HpslM246)qm@)o>`tr&r0MsUL)*fouEdsBaEdE-=cLG({J%DMS zERH|GyOTDpxI@LnLA_j=R+J2i*Rt?i4D@%47`hnfJz30O48|0Yv6v4F?w$?R+xaye zakzl*t}-1yX->$&B4!Cs@kfpo8L9EMYs~5gE*aK zs!f`2;A#ZN`ELO`P$O6Df~%Unt$$Emly^MHBSzlmioZ;aPcZ9PnlGEzQAKFm+5fQ4 zjBU*xX6|7R@#Lbcr;wyUUVca`-wD@c^L6kecww3O5jRe{ac?Z`b}pdplEHGfE6JhO zBlrG1-9I{|%>7rm+=*nu2 zxc(5I=k=clv4kbcD-VkKOL;~@4L&tVuzW&&HKMua7m;Y)dO_7K$}NurCRLr(simq$ z%ej<~BP80Gq3_kfcjZc?uxA4DXfWq2<9&j)u=oyZGM$4nFIb1QhQ5K&{#s~4hdkM0 zMgIVN@1+PiQq6$~NNl+;DXPjmnG5?1B7#JRhk2x*hRC|PapuLvV#vdMAe}CNEN(}W zQ*+KfFo7*QOSw(bauaJG=A(iTrPwe%tqJI8+2YnQm@a;On0G534j)3Px3z@??odYu z+I(77Va(hSAoWe7#w2MZ@B?QF8fb%_OX6(%u3J({DCp{AhyUB~@@J%NPs=W+)Y`a< zM@sqVD5QfzELd|QG{;|cG|Jp3Jx*LJ<>@2gC%2+1a2B`C{D06)6|$JmX(3Pn=Ae*;~5YhrZ0!$d$Cx)oTnv2@@HafzE8ILvad38 zFOKi*VVhxuHJr)OtS(6Zr8#O|t_n57Rsb3J;p7sY5VaNhEH_vOw=H8N$EA&PQaZmC z&#eGwZWf=efT(MOU^bqr|LLe0X5&G$m|{q=_6FzTmJ3*8UVtI7jmP;NuWPp&sjSh< zHvT9Y(QhTpSdJXQ2;q|Lax$&WwHOG911_7zohx~NmxSL3r*>>w$z#T@uWgqTj@BtC zpsG0oS~Mv0b3@s{`!G^iBW}awH07tAd_ZqMS**{K<8_!6stO+al(R)}ISh4nh@s`Y zOII%>aV>RUzOODYX|@~AMLx3mUU6?Z5A;V7X^r=v1!8Pnl^+w&m-E{}pj;{Ed1lNI z1X}HrjKG9J(o+s1b>~KioKt&!6-EyoFtmb~VOP|y3LZ3gGgNJ4 zN`EM~vglA{(Z0%}y>kCZm5uc+Cp{Xh>~rN0ZXeR4Rb}qYm4A;EzLmUQ@4QVMt>nR7 z7Tx7;2vC)3r>!wG^Mrm4k2B89)W!3ULT8GkHGE`@)^Dw7d(#4%A8v}KE*J8YhPpxN z;)OMQILs_gui*=nARIKp!_1KKptY?jw~9q}-aYQ873g3!(->40Y0+m%5Xe|Tq8mr;bXFfVyAMx-2FNx!d_F- z6~NSGrxjMoI+PK$hw=t(St>t=6$PlD#qtBZ*ajJ_-tuF-HR)8^Xsg)r2#*@@&hoZ2 zCGTMGF$f#ta=F%wRq~#;B;zT=W&$N)r~>cUT@0%N0r{#}R>e0cx7CI}%16-P&3Ftm z=(wnQjL*b6dhszHfQe*S%VT_zDebXzSuXSugV*w@2or0058t=fW$5B}_7aobt-7)pv;vH&Tp zM)$aiua1ZnKRm(vm!^~L?8XeuN!Oeqs^exuaAXjqzPIBNa$Apd)Q0p#PE7{- zM4d3TgV8&V1Y67BH+$~{C^`acE!QD$&%E500Ie@uc3oG}L5PQ0XYtyTyt85vA3h1r zC`NqqBp(>+78$5!Bvs`SGL{0|@6Me8i_Nu(>-cO%`9iFF3Upwh@O&B+(!yskz@TH& zv(fh8(bfQbEMH98v0I+Tkj9F8p5_tLp)#tbbNtRP0^TkgnnCTccET2}za^bOQdrn% zAU_4lCv<)yjbJWr8&d@?a@?CJqQ&l0hFr=YBNbeUU+M#6Anbi08(L$FJS~2Gng{hJ zy%f~QCBc|xziGahOuAru#dCm;2yZ802jiXP)KNmGpF^Bj0@vpDn|hSN{{ z`Wz1}oiw!_{sIYCP&_ox{+Cp6B^u5(R`=nIO=~E*t!y#Qc}aN&SQjGMicDvkYKvs; z1VaS?n!Ooh3@i^QJn0nK9zKdbNi8y!^i2&T`=yee@(4&I;IO;p_fuMnJSZxk=RHWm zBOiJWW2k08y3Q*ld$okt9>v&$CWk){B8n^D^^`{Z`aG`#R(S0NKGRFX zF&!n8gX?)i*dJ)1+nQ`1a?#9?vC7(E11El4&x=b5EHDiZ3Yvyl<}^dP%V)dh%pX@ZlVwaCW^BI$7SQ;ymU*ZwBx&l6jP!R3o zX@+E%Prc@2Of!HJQv2X-%_lL~b z)~M5AI*wlfm*Wf|+qUxhYBKDAbg;qJgWkwCOhuri4iPPzK&<=W_zG1Cmir11@%#Jf zc0`XF>7iHD>9QW7J!;yA5`8%tdCE+zckNVk;`A%LDYq(uu-X`9T;#^mvUY;dEnB_&PtTgxAKu z!51pZUh%@4ut9!89DbAE6&SQ$>kLRKRO1y`ERv1d_$@r3YjHg2oW?Ap0(MaAjO7>R zK+QlsvV03K)^8dje%ZnsI=$Bm>)QBlLZf9JB`K7@i9K)ecND+c``+ef6s2G7gc|;` zUg=Z&$9rIql^?~ht$caAZS?!L^2qqq4d_wVxdNN8T>SUB0&A~nCmBqy_20(3GVGgA ztmBv4<2YKuaRauO^Shu6!Gpx_=HVeK?3H{!4{LI(=*@N^fx3A1Zipt#!nlX8fMeeS+Wvd7 zdk=^fvj}g1L7Q2mG{AF^nBM?(iCMhcz()n&v$!2x+Ae_b2b0hYlE%E3=PUih9ec6B z{2+eV%adv&KH(ua^;)Fu1NYKjl`kp2a2swkf(gml_|}?k0Rc|KL6S&l zL8)If4kazqe4mf}K#kd*YW-DvX2JshLPsMMAFhdOyI{iLwCY1ZNrf!x5+>)U>D3Nc zpuVbf?jYfHh$m`-P{?Cj6ziuh^{tFvD8?P)aSI49Y`7hZva)>!y|2T&rTI6fbNd|n zEXQY)!Gc#a00?H-brh?ijshF%rqb_53f1PP+s5{VUajr6fO*htY-gkj^QSx@XklC6 zkk-ICuE318Kyz#0)KoF#Q$Dm5HL#k}e4^p{uI!2RJT+_~%JyAJmVmyshVa4Ao52lr zxgjn$nA~}(VP?42FhuajOCH4xbj9dI?)U<_OROG+=2R%p}^vD=hJ{Czq=kc;Y2^ra1l? zpc+M2N8qP&XfS>?wN*7$hz^RYOo_#tJa8TG34qPGGqXjKw91Dfuzi)PyQJgt-MXnU z2B!~2cKFrNN7}xn9pm>o4dkUos~k#0>R3-QD(#>A+Ts*TjsUHsijR+g%}f=}BRt4| z%3MH`u3ClK0KD4+7Nm+^M?p2-FLI9ZU>poF?; z5%f7v)*J2+IiK^%Q!pIz(b-Vjgi&@did_r`N8|w|f`{~7`96SZz7Kg0u?HN212i$J zawtI@_VZ(?X+TSi^Y;uvb5#$5BB<0O20wj_hlG9*NAyEgW^-;{@o?vWVy9&(668T~ zTVoajj`3)(w$Ite_{h>X&>)TMTYkX=h-;hYHWlWbRpoTKip__HgAD0Dq_IwN=2?h| zf=Oo!LbVF!%ANJJu$nP6#;T7fnIp^A(%m}3xs77U>9bI|X6%!Os9FZ&!x1BTe8J6r z54zKpuzbg<0{Oeh`hxc@-7^#8+{(QEdWVKR$$*h)gGyl2jnQa5itAnMAtUXGO%gS? zr%C>XQk$IyisZH!0LKY@gQN{eGJuj0&s0Mh4uY?0#o!^oT!R2{`3oLt%AvSKdwF0( zQ{F1L1)wQXTGggFeUR^xr7h#TqB0~{7#e91@5tg1)C z{VVHz*X_3NcJWYjj%R=z+?Im}a!^Gez}s!M1Id6Dpmd|9nJT^O9#k6FNr3%ZIt2^r z=Jb-=Y(o>{#G>OMc;dw7<4~|XFZLbh`8_ajr;4sWe`U9^#Qgl3v!{Bmgb#KLK97$p zyUisXPW4_pQ;a;p&xTw*Obw&eS-q|z`VmlvzAIOt^Tb-k5GWoy$pg)k&hH2Rzt%QX z4KC^58Z-_E;GQ|jyL3dywF*L)oVV>`vup@Z!nCCk&tY)TI`!x@X!nZSEDOl2KqEZ@Mvld98&;;dJrXrH zC4H87=oAn0vZ&GOBIbyVr})fNE%fC7A@A+u+N#h0{{w_HR*-Y=fa6P|0@ZY%SX1}!k(YJ=)T$PC5bFcTm{?41LR+om2 zf973KY52T98*V_}{4-x*C=F+i77!2#Klfgw#_^+u z6>@u#Kire2Kwrp;H?}gIIck`nMg||rAGf`@c4SftaX-IdsM#NllPO=CmAvs%%EFDK ze9&7K{t?L?uO|1=vomo%X;5RmJ8H;rm67i2EL(Ubiv6-`CyD)xY8%9UJYo;a3?izb zEPToPh9yh%vU2C~t+}#FEhhY}wUcixl4VrB<@mes&i4&Pu}QJv*bfXHd=~wq5BNj+ zZFhdi-Q#WHi$3I=y4%7peMot?g~vXm`_19w#|%#$c|{=d1CmFcKX!NcoiQd|efWzp zy3ri2`p9r@%n!oPd}PSyr{9kG*l@HX!*FA zr%ycNp7;DvrTkrT)^$@SHhd|>Hm5(QR1Y*GRvCFqv=0N?p;4=Xox+Lby*2I zBOk|`cmyeL7eAkqW=MI7b&Y2Wjr_y#$N%*SK>PsM+Hl($arP51_BYzlK&XYv7NEuMsfGYh9CToVcju}L?_gdu;Ikm ziMa54vGGN-6*ZyxHF4q7L}>r@rTeC#Kn zw25Evdn-qY*_Wf-_ij!kp8S{X%u(`|UC<4?VE}HfT1)NMD#I`eV=xXAFbPvI4a)qrN&+OpJje>I zQ!1}nrzBw~gBe08{Fe%8U;#V0pnr0`;zP3_2XY|~@}U3rj3wFa0Oo2Ix_)r5K z&fa^a^8-k2L@p5_};+m_+#dWl6-2%o~>z8NsjV752YX={CSVGb zG}4E}w6)(+k}%AW3Knod7UV)c6hjaifeVxtXosE90|PJw*FpyjL8^x`zz~@Edc90_JAX1!b(R6-+kKsW4xAsC0m0CB+uIZyy)Py>z73Z2jmdtel%K;kB6GCCj! z3ZN2JH}GFGw1Y(2rRe}V3=@#R-B>f^1bF&&d}iEH*o9CAHCf>ej`-5h`n8H|`h%$K z_Cu%v9YN#K2~^%NPoew(m!jm-=7_>O$o< zVHV0aER|ezE*i?mI0mB-<&Wr;Vw7(K^BB6d3V-sa)Sz+)wH}pU`ffzIldLqO3(;0o z-YmAG@)g%k^hC4^U4(X{C!u|)8SO{qtT=#jG!7{ZG{zD<2JuKihtQ?y2)Ya%Lr*~` z(BO{v;7dnNyQA6HZ z#e*iIUNjjEps8pkYDcrsEc7%q4_$*6qB&>{x)yCf*P+emdbBNsaXLmPx&hsVo`LqE zdFUSWEOZb(8y!aT(J}N~bP_!uRnBBkp$X`>(PXq7O+zn5eP|_`hhB>oqA@Hap)w2u zhOA4o&>GxFpbhA3v>8o6+fYuvN+-$zQ`v=bP*nO*Ipgg?7ovmciRc)bhEAehG~p~- z3{67Upeg93CdRuDBZeg_4>h2L=q$7hJp!#kXQK^h0@{o&MB7j=x(mG&?L%W&+6GVq zx(}U&j-W@Ni$^jV!_t?A8c-KH3(Y}~K=aYrXc3x#R-g;f zAnHY1&={7;4)h4L3!RPjpb2O{x)9xqdeKodCd8UKiE)Iio%vjVCZG$^B-D#q&=@m= z3q1nOLuaFf5{{NhcnSrPaI{gv(H03u+a)}e0!cX9BjIR28j4AyL=u1wNdP*E##orA z;*U;?KWaJ$e>>9@JpwhOv(Ys1chO?vMsvjNqdwwBi^QEpi-{Wzisn$zbJm`s@T0X# zi+JQwQqg?oD{5$9zM>1!{&RX?@W;o^4zU7eE9#m~IhC=(wF=);R0h}`)vM02nd(jT` zX|xL+KocpTY*IbA??LyXm!h({$*wnwyHwm1I0l`-O+zTt=+&s{+iR6xRE`01EHLAi zs>w0HAiHH69K)W7sR7ExM@hLqMjG>ao>-#2)z}pKxMNEqVfqxBl-v`dyZ^& zEx2z&O1x z(Vgf{^rvVy`e$@EdOJFRj-dO{U!f!D@6d7d9drtP6EzgARpdM7iRkNSG8%dTLk=cO z&{RCi(IlEs4kUKmm8cw0ch?7dqj?8tI%BBwGvK7RrRbjn04 z3HUzRfSxB2@J~mZaqmDUh`$tV!@UKSvt$a|iF-4;3%waNbKOd`5BD~74|*NijlUlq z#Qi-q)QN`|V;GMnG#9r89mD-YbP~M+RW9KN6_Et=TWB#EAA=_0z7tJB3s4IhMk@$E z7WLu&0a{PG4m20{HE0dt^JM-P;Bmf0z+*mIjQaw#5^WcMv;}QOe}uN9U1%fm7oc6Z z3nd))acB?j3&o!deP}=K>(RaFL+B8CIXa4V$f#=P!sGFnz~dr`fO|1Ijk^prZCuN5 z{!ml&IW!gRMqOwhnv4DxEks{LJGp)#T7kO=?Ptk<4-Mje7HvVFLU*D+CVyo&#$9L^ z7oLFb!+ke8f?kXkQxh9Hj{8b<0CyHTh5JUd8Mg~H6|Yqq(N^4UbRO<&(QeXBM$Nb{ zLDSGGv=9H#i5M{j)8tq2o(0=q?bg-D+vK3<(kNeOu^f7c2eHc|r)Hf&zCB5&S6<+_MtMDccU`L`%zhT2P%7iT^c{fbi`%qvTMi-|LM~BMaQP) zakH+xe)ZBi{t+*@eQo&E%J}C`_%9E+nSJEkgrkynS#_HFFU#yBRU(!0UUTFupbQNpKI$3GaC_}A>-*Q(?H z7#kDQ`_tO^xbjdA_Y8}n752aYD2?lsED(1i+OOHBYu73H&<;Z&;S;FqyX%x7^nv(I zqf(UA>r@px7rO=;p;hxIZb<3EF$FnI>ctgkADFIRrxe02m;n3tNC3KF6wEi^hEA9O zSF?J3A=(9#np-mO*ha?CU%5_6`2IR26^fz#`;>MshH@hbKt1%q5KM#lrgcg#R6;xK zh7mBeP#`D-g@lD&Aej~67lbzGfgzZNv?4V;@dp$D>fz=P7YtySZYD911iH{ZnAF_j zXTC)Z6I-a+woa+QuMZMisSWhN01Sc@Na9JYO}A1B=z=k^Z(FA{!zhHzx35zgpbrvx zic3E1f(fzjpw^(=$wkl&Q&1cxF-UC3h5?v@th=Zc41jVs6@qq{0@pqCI}AW_2Vt}G@cobrVJ|56k})*GAeeqcWN3vENb00Jpc5v+av!yUen`5Xv>*o>VF;2QV4Ofb zbb;P7li1^Dgw`qZc2Ya&fI+BOrZ!#5gA#!-v=R1!>BlqS(!52uTVWUyAEGs&74)Vb z#+EdcE(!__&;^rV{t0P?_^%yC!2B?!gf5Um=p~iJrtp)5%#V->^n*x_Xn{`9(==^kyxO$zNYP(4x#2psY&KKr3kGD zeT27Tcf(#7hlFmzAP?-!f=aX%y1VKBy%>{V{<&6iv<&J&66{2KG7>{_;WY3T|_ zovBqJb_29RCk(>8=hSY@LZ$zU(0b6jN-spK7H=Yip*NG%!nKEspb_+oda(DwWR#yY zVdC>M1F(^CBz`HHpWYgJhFSO*LnCy8tdaw0DD?%FPZ)&M7bz{sCNhAIgEGK+4F%8y zyI>EDgYpt%0t!J7Ys8kso6#m*Os~cUgs?ev0{*J791yBx;Js07Jx>O zE|PRYT{t9gQ1jGFHicUvm_JojPrO2Nx1oJ{*k9C2q@eos`I=ua%CA%N+cV?G9hARn z7o+;cg_>Vul;42nHx}hLZ$iD+j_TJ|YJROze!Dflkto09&*WPAKMQ03#Su>iNR;1h z&2J>iFX3}FV+*QZTci24YTBcP9UMNQg&Y3HwV`D*3GAz+FnG#%D3d_Kqzl@yMfGtp zj9a?QFgeqYK5X%;(EQ|Dz03OWQ~s__TS+GoI~9Boik!zWWZvor4q3z7@!KVlWNe@^ zU?e+(X#0v_mIj zWgJcXH**^FzCKhM&4dp@%74^!iqRlQ+>oAO2Oh&Pr3FZ{>&=<;UrG+rHTkGyCTo7X zW=Cf_fZsGE^0Cl7;AvOfgXi{?X7{1fnw=Q4KBN@JtXDcfA`WRfg=WRBSDHcm+tCq7 zja#qO!vKhXl3_g$6j`tIfVjs{OFVI)4+cQ|2hn6BHsnDWNTKaTA^H$Uljb3wQu7Yn z!yqT2gjuSlqJ_`^-7o^O6H0uOX}w~HT+q{~!0v;AC_jlij@xhq1%jdw|3$V_v=w&4 z7|feZ3qS?5!9GYhk_?~~cEf~6&3p{ooInAf0=i)eBs1Sp_(2y;faU0!>w?&!cK+)I zWeyoa8w`OtaVBCVb}MwjI9TScR~lh2NFnqZPvN#4Lm{COTA>FjX8t2$cfvWPNDS>^?0_pSFXzlakfKTF_jO z7S_{}c#-p8F#)Zx^AHha2_C>-zet*X61NQ6v=h}PwWEbl1C1aR(wA)g@X;aR>>>Jj zqfd2*_9v`2*FFOD%=A{7i1JHVM3X}*NJd#`0qA2#KfYDqHvkh7ei8)(J>3E9QHY%X z=a~tlRw<~yvbi){GAPo*YofxNqQbkd2Ve@4PNpRwa$S@yZ(3V4|2|YIFpZ{$7ORnS z&|=MQMEhX~Ml`=kP1Ba}tzD1|YBX)uv`^D1O_Ne+703sPUx`Y_O=!R77cwnXGxnhp zsSxdiE*OD%%NRIN54&It%%`w&K^aKPb)tI9?bGbURGJ+m&0@3@h9PM=1%hUvf+3|7 zV-k{9sF7WoHfp*Dor2_*TnJ6j2jd`xkPH&jR4vl98SR8F*aM@Gu!@3%#7{*f+_EY} z4YUBgv>g&i&4;u|Q>a{&vYG-wAv8fZ>;vUgni-0q8FoP*$Tbsal7);w+%8no$U%eR zAL74e&`Z{a-2;0;E>Nth=AsoKwGjU{Y>C&cg&!PGDkT*fCtM$pQ`m-d3IqiZgit&G z?FM~?lYL$0_z-?+Hr8>7Y*6SRnC$AD&q3#%qOOV(SK<`n*9CjNAvrett^2K}Fc zVTW9hnzd-!jqZannAZGK9n=OSUJcp;U7B0`^trzWKm8~-jV<&3;KC+4r6M6#F^pWO z7Y{f%;+Xi8fXk)E$wwu#K6DTcjz58)#Lsfm%pms+Bz^^ULzKG}dtOLu!X6xZK@O7% z9(6U7L~^hzKoXERLCtQ7^6$j%(fs#lD(MVrwjMr-dm3b=)C(P&=T%FakBVpX`Ci{h zf`rLQs0-Z(6JYmg+5j@L_10;}-LHj@qRKiJ8jy45*|cTbJ^RWAC%L%23kQM`9s*s2D%F5nw^@C zZlM2V(CPc~lolYHiY!9;XUq(&HqDlSB?peZxb?%v2(~1gny1#R0o4n;3tJ!U5@!H+ zFrTZ2m!X}Yx4@9* zKY=EmrxwtH=0d25|MccB!)^q*aVWKu8cCS6ihjHjKY3p-@8>&-D+|qDR1cT9vWHCJ zC$`i&sbHq7%-B+iJd{BgQW`P(LHU+?;>kkWpa&$P%=vxT6JR-C^~*(NdNqo|08BvA z1-yxY3TT6VknLE~8NpTxRXa`7oI?6v_Tw@myO1UX z*}9__phEmQVIM>)@NHF7P`yk<|u zXoj62pCRooeJ}-5^Ze48+Sg<2weQz#$z)y`1p_He zKH3F+ntNK)q;l2{kP5V;lc2{*2yIp`PSvy!)oUpIR)PCah3dy&3Xr(vz^?P*E`aE+ zYr(A-evfABEfkWHOR4ofQYskLApQ+#yJiofdch=Y8h7ee)_u^&NGG$m&VJURa<+tdOiqk0W3*o_d~jC-|s(k+H6^%}hyqgybGFez9e+6f~d zeLpQ)t%en7S|7q_(HuQ!(aAG~Xd$D0_|2=KPoV-@L2vGz*m}#2X|`UVw996?G#6V6 zRF57!1w+ii1Eyd%k;Xu&Wt${SE;M7ywA81cWGeoG6f&3aCWtOvH*URfBbu!jE}?FJ z;X+C(jxuP5T_B0>MWrRiP+8TaTMo{2UXarb=&ezMt!LP!*^=Q9w!UIcVoUl-+o?2k zZ)g4wV~m08a@Kv=1$$uv^jcB7Nj*5KC) zZ6Pi`R1Nivl`GYe-AFU1VmCn-$iN&$rS?fzscS*>VpNP@5O%^oFg2(J(-)~E%^fPn z=z>8Q2h-Kkj7&KOUK+MOICHS2Q2GKTO|73B#6L*5OhGAVC-x*HT{BbAT~^$Iv*q+-xSl}-dRQa2ezqIX{7v6eTQIuylJV0ElZCApCaBp`n2=13 z4m|dNWH60NS41adzhNe!LTo*u7R}ac)r~v)+Hu^5=9#l$BQ0UZE%D1xPSX6nCB{zB z`(K)?UyCG#n>Z+33YqwQwXnJ9*L<-=DI}~3`d}0cH?qd8QNLRvX{d1jH-!LkNa^IG zQ~d+UGW_-RzYSZjko>rew4}` z&Zzi(QSnC(ia$9MFQimzAFn3c66&qx9Fb<=M&Zmdcj7cu1mgo<~qG=^p9$N zgcXB+T@!ZX{*S&n=>5|}z$7HyqV`b{8eJH@i}cTN8whU)J>lKhdP_xj(>VT;uBBB? zH;6{=|42XSeI*y@pK7-fVK0n;ByPG@T|QG#J%fDg=)&orbXP>hX*(#6p0-h5UM?N>u zhg&k7LZdTG{_%nFig4>+LTJM7gMKhQq}r)yWyB6Kaxn%Vp-Tj@ZxLwzAZ zntPfs-%lw7G=U`2he}JBex`O)GU|dnDAW8J(4Ei?(wdT%uorja{*UQVrWh1JCCEzG zi0Xq-BKP5rWQ0yabX-d}0~ey>cj4CKk77s1H~*Zi7>KXl|CJ2d@#u!gMUQc}6U09c zl|qT#h~1^R_2qa1xA_-j0D8P;>=8)nnW>OmUxT|F24UXgY{ie${}ND-V-H9vm0waa z&|9JayBH*1tAuHbiMR)GPe4kq+8w!QJ4huCn11+8KvEyqLk<+e{?C7EaCE~kNWV^@ zl1RZ5G%d72KS-wgG&Ma*Vo(Ncpx1r?JLy;WgDm5Xs9ZOMT6WJ=O#DJkcyz%8xSmok zkgr;rXjX}kk6%4VD-5CHm-=gJ05u@~EoeU^JWW@C-ZeGYJum_iPw7{$H>0`G+E4#W z2?uaYK*BR>1j)pVT?{)x-l7koiO;Ix7BmP=uv7EfgHA)rb7TgU&<1-n_Xuj*LyLig z=c5&SLd;K$eHx>vxTOHf^QyYg3h36{gJ{wVYFHuK2)keeEHBdk&%U+$SaXYqNaw)(xZYh*LpiKMN?-`sas0)gq9@;>< zP2%fuqo-*<;gXK>M_LnPW;LO0f29ArF(hy=I;`1KXwIML4ycFSun+VCO<-GIW0?iH zwis=JK9~Z_kQ!I!y2Q~7Re*mzbV4M}kd~+(VU&OgFul%N54wL5w!U`PVD|{rLNXu0 zmbo8YtHD)G9|0horgH>n_m%J{Dt_JH2xdZy6{juRezd`cds3qTUiL-oQ$ z-m2lQgeGVQi6hs_-v{*I*3)UfnDc-1{w^Or_Y*<(_z`px65e8hVZ!t-$VhoU0n<1rZJmY*mXin`!j++zoYPei%puZX9k z;>&L;7(SV)kXVVh^$N=m0i2f{EXto8rSc~6z z8|i4J8N5APsl?wvd`pP`8N!y@cV3aLjOcONvXxP6d0B4GR>n2|#9OkJNzHD&AzOZeC6fN& z_p=ofwiI-vGn<5BT;+1X6IATEX|&vaJjnwmDx%@ zw!FHjeW7OO(;a1+J$NhKp~dfS&yI|;kkme(jO+DCG<)=`34a-igAZi$%a&{SamqFP z808wJRdm4`WdstBTf=uSu|a;aGb?qC(hcSn#D^>xgb7Goxkjmhth6xZ1up!aT1<(q`8EOWt=pf`f@P|YvZfEZ=Pc+_X3fC+%`ocZSjIQ2^ zWyaju;dy^Dn&W0)bWyLa$S=0N1-RLmJUwrZM*-G!fJjSjQ*6rAFMQuq<>W&?C zr6pBW<+aPrsi&@3bM{&174Toqic_u2mDx+m$~SMVDmQC!4-uvJlk<&#jFB9EU1;2N zbnMdl@S-io6>&?emEQGRjO9m#8-vD$M{TaIHP@DJDX*=qu2sU1;1#>HuJ^^D@u~RG z(k13qD^{%m^W|GT=DPBrd2`TT>X9xXte|3Roq6-t%5pPWQ(IkHURPIMX5Lyw%*)Gb zODfHE!ICZIb*r`bx#hLx<`M{2lxsn0=8`(|rt-R==;>zaYc4CVE3MtSsocX)bu8sq z63EDGwyrjBmR~-oyR`Da%z_oQ)!VmJnAe~6E%P?Jxomsw)~YR%fqEU6*3_1-Dy`mD zv$e7$xV4(HNtw*mo7Du(XIEA3FmEde9uLtkudz8lLNV!)b5bBkF=m|wfVH5xpsRMIh3cVT@Y1{E#(ZfNHL@~bZW4?Hbk1KC0k0iRxOXT z$o?kP8-1I7wfRi7={A*b*;-X4Euc3S?R3S~%1U~7W^6=8f>t0ZCM^@yaEmXxNUhQ0 zi!WYmuB#52uP8T{Rac!7lqM;!-7MorlHXsD?RDj~=F;l2@|lEBBTKz9dcVpTmv&)* zsJ&lWT@|ES5zkZwWR(}cB=`Cdu)$OIwHnb}5Jw{5K}U0q6bBQrt%TV*z%MjG3; zl~)DT8Ctr%wiZXEc+#HL+qMQJu}BX~LAI2K^eLj3Nl$R==2fLDSFWm-r9_gJ?%!Np zSy_FBv|yyd+L|Hbm^A5$H7i%@b*nRmr8nCYSHP1zLMZsXBSY@Lnj(Z zPph$-V6BugI>E1`r>8}mWuIM;D=QCexxc8?KeCvs%}AoPZgpzS_PPpfC5dXes_I}=I#FqaJ8zz~;LN(!=KUA$&v(<-y6UP`n`*a~v6R!| zGxPDna2R$S6+7cFrnd{|} zs_ol0kw%$0l2T;iRMu6ib5TuMU-+tPX9km&V(NM2GK8yEm!^fx<-t<+QwCvKIm=*W z-RkJ|eW`Q^fvYOYOUjtMGN7|%b&nLDIav~v1!#L^nOTNkNli_8Nv)KES--ksapXXt zjy-MgRbP5Qa%Lw9E-j6WtflICAhLEzc{Xj|T3IG@ri4mHa+l+Uwv~o!DvT${8pPaX zk=Is$RqFIwTexOzegU45DXq=9)Wu7eEMC5U8`|IIbcnoji@YM~sq_1w=`9;=iFwVc zy5Nq;f)h!Z9WQD>DA`&@gH*E!Ur`|`MiMJ8V?~ZEUE2P-I{e|4#`f^Gu3dC^7Tf$NOUr59f;vD71N>O~jr z*s-y+ww#98xM@3kL+!;Er%BWkuQD!L7D=tVvaUQeWl5SPE$yO)bA0AsRIwPrCAYqixAon*s1&G(G9(4kvoYt`1^ z0WET-eIuuz{Bzf?JH7Cti#8q*{>_=`17_xp&&JJ_Y$$5-;iGRbp0q+M#8)~dDxyA? ziW-b3rv6_!>UoA+Z!l)gIjCpC&zwGMo>6PFM{h8i55J@P8;r@}9Zkl$;n2&o66b!U zSHdSRopr39bj{1Nq-KX();q5z?VsLYOboBM+PENr%l1#J@Z7waWRtHpo_zQXQ2c$P zcjY1bm<>_u;f*Xr!E&uZ%)gtpDD7}cy}ykcuQo0UFSyaTB>eQ%#(4Q%z60i0__Q6y z`Ffk&d$n;%$~U)&HaP2VG@g9H*Nh8RJ+-uF9xy5+-iMX=$c@J3>YO^bv^#dNTFSdg ztvP;ujq$j{D{#S0#+9-Nd^JVN6`3$vlEuHDwcvki;e9t9YE9IW-N^f(+LD>Xj|)Hj z`&sdaKd1{^j8-u>Ldxi$Xlz_9{y@&B;=bj*uNH}-C{iDM6w|I{?&`y zVNuD4yI+|#@9+m_`z^-h8^5NzrPS5iwVC?WVn>3$x!l?~HMM?yCQ|mV$z*@fVP(?L z`gQAr)T6R|{~_VlR^x)hZ=ea1l}$KK$ry#-zhol4ZEai-hOhZanqSXD2CnbmC_out!CQ9!>+v;aJUb z=KLf#navkpd}jFG+l_P2I%LO4ltcBs>i-QHhfiH^JTCn4kntF4zN9we%9Fm*H<4by zyreR!&sRpA-;i$f5x?b-sYZHyCRO@-0mI_|NHW~pW?X92`XuF!Z=7M3)$ALQ_aib& zS4N!wNAgD_5a4i!}q<#n47p^ z);t+=6=CC&3lEva*DYxO(_*%lmOiJoMiB zKkTc`?O%Ty{+iwC@VCFI_OCwx@?I@+1e`gnCEj)T2f&)U4s{$jU|qlL8smZ!zM+BD z1?l0tj0^N>o_P1yy^#-=aEG~$B3GA`X;XdrwOI=fV`Y~v(|WP}?n526wWJR`3+D~} zFE=2P@A>*>E;ubaZ|!*-&pPeQwOYYDhh`nW=$qHS-m~s8K49#%-f#SE>_Tqr#s`fVP7+(kT|eTew@3N(f>hU6R&V07L+(SVNpr`ONG06( z-%?dx#vP^bNe>&7!jC*?JZf!J3fzIz?>fod|6p}+M-3khP#U>K$!+Y&4XZM4&T(Ig z^!0mJd{Xk+kBtj@fBT?ud5r&S5-ermi=fQK|u_SgWspY62^-_KsD)Ko|q$qqIR8_sIx`tcwY7JifiSZ{f zi@0FD_F+;1#6JLhcA{u_(i=))bWdruuTUU_csT<5H! zV|#zNVOHpi?@>P_C-GH%bMF87947S1}pH@9%s4^Etw zdU^HMvgPLRAGgmk_fBn})n$-RpzpnMR#n1kGCi#{xSgitv&_hSWV(gkKkWzG2o2YkEhAX8k0l_trONy|}oy_}{ZeV+yNJdr%(#5c$f9e1T?|XFm;3 z%9kP(MGupo>*rw;N=m#*N%{MMVe$w7d1$zcFjrJqxZ}UG&RJv5RR#^Yk*5~q%$4u+ zM7^|c!6aT3r*vNuryhsBg18vN3rtd=b$ zWm{DwiNts%hXht{Eh`C@q{vejl$^QokuPMdwpdCx^Qm*L?p||lK}zA8(u<5j>RM?%z5rqfza3** z5R$&17e~P({wY^pd1cuq`S^Z<=YYwVNmkbeOH)pd)LWT6!0+3Ubf=>I3e);mNi#$h0m^7tgFY6llgzp5mbt;1|{PcJY%(@{aKZ9PL_% z_$g+SQp|%XR;zX78L>Qob~o-#b&;Fy%7iKM@Ql@4Hg7GfOQ8^aUfhbOnQJxA9g>cs z9HA8R|LWSh+R_w@JdXx^eRKU@jWgXr}? zjT9vI$GgH$#+gov`9e*y_)E2%j_HWTT@#ZNzADaiV%&JFX2cma<2>ECBQYm@Mm%x0 z9-9+B!GN)4o@QKfycSe@oMx<9k`sQD1Y?g&32&HXS`>GaQ%kSTr5Z=*lwbKHkz+&aRlRAQs^hB0IoE56SPIqT<8Ire`CMJD8Cext5z?!*IImx(`ozBX z-SCPdD9h8|*Ww;?gKEUSd#_r`+wamsZhJ&C{`pfa%EQBIl+xjx@I^HBtod)}DAu=C z#|c}%$WaocW$|8S&fwXrwf5T6zE%VSJ2F$OEo zQwz^M)^uz*=~&b8*(b~1HuLKL-`(L`3*#3oNS#Ti*v>b9Gx#p-sb19j7W;f}|2$Jk{Kd<1BMHY&nL=t2oN8xGc0T@@OLo2ofNVBa&Brl--1VwCb(2 zVzXmJUTsl!J9gwF6hb<&PtxLaVapSWV;?I4yoRu4Z zlsytoXjEssBv*JPA!s9hI%9Fq8(qUP?GraO2(nvY1rz@%Hzeb&5;;v zwo!H-wmgGLUIo}EtEN(ny->3&u@`H01GYRgN?xtlnW`C5+GiX}7j~8!pzMmWcVnNX z`43=cYxce|E@nnq7c>hGrK=*=5*gY5o>TW6nw^jB(d@Dye_S9BQj=Fb0Rh!iTClyE z-HGkf>>g~tW)EPeYW5Iz{Y6%G-9h~Nk%m`2gJy$6Fc&j16Mb8;jJeh8+M&+8VJ3} zLxguhj?cgY=M6k~UbXMg)N!xsK89xs`w9&_#NNQe>zClJ~Abx$oWH zn-`mY6%(WMZb&gb855Hmj$dY4dg3j%yKJx6{%re;?Ms`e7A&rkNTeQz2bY#H{zT0P5T!3&-HKg z*ZA-9Kj?qn|9k(3{!jh?^3Mv)2`mrT0%ry;4D1M87q};IU*M;KzQA7sUj!Crreyju zvop`i+?cr~^QO%9%ttbNGhfSmC-YyKvf?$x@Rrvy&yr`k)^d~O4$FO(hb%w0{K~S| z@+ZrimeBi_e^?Z2ymgM%Y+YeJ)#|oxuohS^w3b?f)@!WSS$|-?*V<+MskPTSV13m( zWPQi_Pisv2qV!GaH>Cd}{hjnL(+#%cZ7H^NTc&NTt-w}c+hMz%W`EH3nC%JMlufZ8 zZJ%#nMbn>V-(WAZH`u>xzsbJS-eZ5){;~bYP)2fwBO@!LI^)KS+cUZ|p3HbAV_(MK zGEQ==qDyKV^^SKOA3FZ#usB`LQs-^X-OeHBht9t`t*#N*xa)J*0{1HSneJ`w>)nsL z_qj*hlkP9viJk?XlRQg3*`9Mf7kRdOeoPk(d;a42!gGQ*&AZNfwzu57-FvO~e(x{5 zp_jdX@{W5QzHDEqFX+437xumF`-{N26ztn%D|5pDm{7?Fy@$dD&=FbSM z3FHMz0@nm?3fvL+W8mGu-{^#xOjG7DnI~kPn^}~(IkP77%FM?yU&(ww^RJm-$_60| z4&88+CCBnDOR42@OM~V6mPafvT82WFFD(Wde-Vv;nl;~gmGyS(FRU+FKd{E8Uqch$ zoc^=)zVvw8k+#LQ<+f98>und>8f-V&9zN7u~ zBdyfuf6M=g|8xI|4AF`}DDY_DgTU;}WtnSfg(ot9o%v^Jfh-=2NDCZkSztNYl4fyQ zvMpy?&b5?;ESoLcEmvBux7=cBXJkHRdCD?idDZfk))&^({s}=OTRq*+VuOW|g9K*0mV^~#qZub1l)61|L^2B&g@t)`1;;r%4 zdz-yCd++ex<9*Egg!diqN8UK!F+Q^|!{_nk_%<`TuJ*P1?)3f0x6Ajq?wwcbJ_@3Velot1ua`ttNZ`dR50q*tfk zl73hE1L?i#W9bPthb_l;rmfso$t>@)J!c!Vy=HsI_JJ+dZnDp{FR(AN+wJGsH`=$@ ztL(Sge{6rwzSsVa{crYZ`@9T$hBsqv#>R~AFwu8ryuu`pbsQIRWH>fBDje6+KYJYe z7_G-Sm$S@PIqt85B-e76-Q{-WxK4K!xGr>+y0*FM zU5&0AU2U#=T|aUC%=Lup*RBEAA6&z(4_p(jFI|dzw);4`bD7)X_RyslxG!^G=l+TN z5AG>2cXZ@xF^ zy~^9<{l2#~($_n^k9eQ;{>D4x{oFg{jrA>~w=eJ&`*!$l@ZIP8sqdG*-}(MRC;!*C z!oS{M>u>SjM+c8GU%vFu4J-)-vI6G@Dp^kM4?M)w=?gp+cp>m=;2qZXxtXgootbB6 z-jVru=F6F%$}}qG?*!@JdGxK=t{5{Q|bet@iKP zAF%h?hv>Jz+f5mX8T@K;Mngt>#^V{k$@nm1IwRS!*s;>#cAVq5!Eu|T!||Zw7mnR@ z-BHe^&U2ha&hI!cbJjaU&WBiR_Bdan>rSMrw!6ZvAGw}#J)yB7 zNuKVQZ>jjzR-WN-{#Nsm-?^pxA}kQf6o7k zf6AX4a0b>f!>$R0t`FQ2_$>`S6nL8km(4US)0*kZ^k=TgJTtQ_^E;WFK`o z9W3Vq>2K2^3vH*^(%3Oww(O9t&~~w{#`axX3!COIY){*MYx}D$&Th6Zx396EZ{K9U z)P5Zu@-Q3bXZC;E|7}mmn3r*UhB;$t#!4pCw=zmHwq#Ug1T!AW=*t+&ct7Ls88MEd z9Va?YV;`txAGpnKhd|)t(zX53v^Z zdH(H*_s;gtWv(Q9moi_@@)me6@?KAu{lfb@@3hzCo6CM;@dfCj%YC=|I((1$p7*^H z^1b2v+;@!sc>fZ%+B$!|Kjd#>%e~!yw|}?)S^rD^zxfjbCkK3ije)BIHwIb*9fAJ9 zzQAW}x`~;`(^Vce-P+6@nb)!5z8TqaIrk_^Ba?-$inAPLIgTx7r6q$7yVcTd>9sr; znKO&5YuIl?71j`a)nk3d`iAu%*2S!OSEk>Z{`2(y^ykyxNFPoAclr^wMB9nBCAJkz zq|*dT7??2UlzW-|f zPJb`kPkbPaQ_h8f&4FsRq29pLfj0xQGEZSnRA=6k`C{g%94=dV$Tv;A)N+pHYReC4 z*!L`7Se7yVYiZLvtxs7;t%mgD*hki-U&!bWrQe_aaQaC4654USt;%+XZMW^ckZrcz zYA>{h*eqVQkI;;(8Pg3J53tyLmXYMhbZmC~z|q4wCYF66-+6`eUgz`9ap$ovkE_Jh z?0S?TI-BFS#hvHg>b}PPFzxVX_q2PK=O~ZGAln&_CDu* z&--t03P-*wU+5-Zr*E%s%y*i9gFoN@Ee_x1{;L>%-5kH)WvQ4SSQ^+sJ6soN5A0!C z{va^UR=hZKW#+Y+-^=XCd@%E=%#UQib@C_Kw1&dzCYKi3#UcAe%b;b9&2}X_Y`*mo z>tmduU*Q-tY)wd?&mrda^o~$^Px^1!S{0kwwvz4DXWMAoVtc?gWc!Sx^F{Vj`wsiP z_FvdvwZCnDpB3N>dtAl|EXbE+T$6EI#v>UoWxT_DKhd$&;dgx7QSG?J@ngrMwAbg3 zFCA&lHJq6*cYfd5;p}maIX`C)HM$aA3td;b?%|;G6mMZdzhz*(;hJ{EuthF)uXa1! z*}Rh}a9`ps&U2^d7oKN4fAai| z!*z_;$YP!5&1RUL9(t8q3XWqwVz9Zp#~%KS$PalXaPOrPX51v7T?O;yutWt-rGV&ic0X3u{vP ziRp{e9gOI_^mEeBProF+nO+=DkK=%ThV9!d;=SgMA>-(bq>RNGX&H_X?|n986wsd)8MTc2?`5=R+|BXm7a9M`FgWHq z7COxI?WqnsZ&Py}`Hl-5MUKlHmvf%I+wr91X%?1!yg&N8<4ETcdOO#7zO%x)&3Pqf z{X3Z{-Ok6I&#|h!<@~_;PtLn0mibi9P65|C*9ER3*LPf@%UunwYh8D-<`1$fC%EUb zyyWwSs@eUB`z80V`(yXN-A8&Baqiu~x%YY&l;@aC|6w|<^yYXsc^kd=dUt!@;OrCQ zGx`?M!>9Sy`PzLiFsokSox%j~6u$J$Wr1Jpck+Jf5)Qf5Y{sqrcK^@)y&+clKlFxab3YPJ&%*G#T4iaE*|4e^p<$5pkIf)U%d;A?SH+< zF8+U%vB4}zFJyrUmlI^c6kMSZ$k^}A`Og-9gbZI3ZVL~Drx3CjF`bxMOcL{mg~Sq6 zf+*^u!?>s}))pIz&BXTN7h?aA8>a%fR)}k1$2-J5(6%FR z7(M}9=n3zeAfJ|hhxxsblavC=yY$UgN_(XT-E+J$gATe**{__TPdrdw&?mCPtxKwc z>Zu>8_0_g8qKUw`IqCv<_K)fw^?>@j>fcizt8oB^JX$eL0yNaqT4-H>4c}@D(LuIC zzyCx7d9JdKS<3M> zV7wURST6cew0^WPfP8Rt4kUIrrFnzGd>V~$9H)K_DzXE(e4sOunw-h}TTT1<39f&J zqP*igao#uyZgxtuWLTJ$-H+VHZd+PWA9o0VWU9N^{lVSNe0)SRdIg4jC$+_xgbsKD z$I;SaQxA?wXzJe=UQktO#foB0u`iV~k-Awbeh=>0Eglq)Q8Bm0C*n)0C9{-UDghIT%X{RZSd+0K+wRCzmJs-Hz1Nyh4Ec)t0^>N_K zx%zVbd;I|2=dA8u&~Jk?pX;yn^hOq=v>^a)Y~wSdyD@+onPMz7)-#Nb8K;cfFoWkt z=8&+7rfpU<8-hIBnf;+`qs=+y5=v#adB{9&-U!8>ELI-6lgwnQ#8hf)eP;ColTNS} zSSx`(`>f;EY3q(}J+WR`iFR(gfGyeY+sSrw`%|#M5PPgW$zEiCZ?Ct1wolQ<9@uZ} z_-G=PQ!Xk+lcOI;n@77Ne~gUIVq`6k?u`Bdp?f>C(mC0jcbqbg>R3#!CKOUn0Mu}2 zuCtUPTIcKt%ji6C%D>Jqd*b}-MBFrh*|u(XcLY#2)ty6Q+X|rl#XSz;%i*b>4aM(* ze85WuRZX~xwj~gaW@a5Goi*xc-IlGb@)u^7*1hkc#*;84qrq%+uHc%U@&DGXwJ2g>D zV(JvpN-=dbP(>Bw(S}-Ets`pOAnIVUHVx9Zh~}_TTLaSAOhp_7-acds<<%SMEvSM4 z;Mrwx_kg$ms~0x>(uQn!Mm-dkE|B$M#yH@|HhRKwU%;8Dq|dm~S)> z0OIbNZ;+^pS*m5hHQHH&;pIzd0OzfHu#GH0*}nGRkclsafgiVT*bnUtV2r9<_wLbQ zD0vGwupdxb&if#YOpKspAZ};pOJ|rfg)`dW9C3bi&O6tfN6u>?Zw@YbIhbKZxM6L# zlRFe@xWHZM9)%p<;(Gs&11bqUl;9jS5&8lEI0dbB53}aHcQsI89^%b#WJNhJDa06E zIJ7>3KOI@?C*e=wk?;z-o<+lnKgGWt*~3Ij)=rX=JAL zf24k+?tm0N^=a{0w33>LI#?66Wr#Kr{IFc>!EGI^PYwCUO0dFC{gi%=Rvui`bVh!f zc^RXkQN^fjv@<%wMn)SGpz$li!#fUeyhJ;H4L!_YW<>@sY?cCtN6l)$$L4VQNeE{P z&GqI^(?4Jy1xemAADGWTk_lE4XtE3^>wzZg)8apa@(<(QPPAsDysSo9`^7qnx^^36 z87MGGc0s$C{hn=w3T5+966kFYLWNn4An?+*oa!8HbFf8MI{EbQaBn;RI7z_9kKMLD zOn(tH<|p^2o69TU6-6(vg_Y{T+ST4cIv;KHBznO^I(<5jW&!Qp5NF!l_z$(l-1i<@Uu^;Rd>uIR zXYGV`i97y6OVCT}74&5NL%oUKio4z!v1gdR3Wl)@vF9Z9b6LMZ^<<)UM1)lrrOt0) zv_z)sW2DgQmmtucFfJOmKm#w~9U0BQLn%n{lrw81&b2bzn_ZCTzBZ>L>Tfgm)9Ww7 zLSm?zqSQ=9t2xd}FZjm@YpnH+wanUU9kxzVEmy6Z)Ji5hr(GBgq70hdhju%=likg? zzqEb(1gg<>`%b7D^^1;(j*CvFtIq?RmT?rPqVti{#Tg9*SWe$Q=M)2ZPItd^ms2+f zQ5?=g{%+Hx|3Tc&?&bDm&-E(P2kLu`y*9M$-t>b}VKps5uiNVFMYFpAQNHK>?fIb# zkToV!m|}_mLvsrSh0;QW|5WhiLL2%*deCNZv5PcF8j0fi6SDRNswK0WT^3~>aXVSA zMF$wblpjZp%xB7PfNAWMd*P={R%R(nl(othWiNOCCPXm+fPs3~D;Vp3c;c(n?dm@D zta_dE&Z!mGlIiR1U=mXhD)uwcuQSU7h?lH4NY|B9L#6D`CDwxV9NX0#qcMO%(*5#4+*1NhhI zZzvXvoFAOMI5Ll&s%{;(RqBHw3A=qBZ{e6oYaVkV8mWZQ5Rma649-FS`3sxy7j6kp zgx3twD8#(I*c0t^CKT_mcoK3RC#9E?0Aa(W3CP|@0bGAce=|-Kb-gl`^ou59rS=l@1t=6P0O5cso$UPblYr=zl5C zlteWt1Y#OOUM00Im-G{^=SX$DIzyeSF2fAl1xUYw>iW0(KQ#jlypGnMOF0BdWTCby zl=V(%SGB*O`_Hv_6eVBPE!>`u^p>1pPkj*FKb13F!u{NWwsZ&Q>=_U&$tZw|ZWxa7 z0lmFP2-L?T&n`3889R-mob0U-hP^>sDHnpUWO{l#v#Z&U6P{wGa>|RintPy#m%!^; zt(;bVBtg?hAE-?~?_%{p!kuBwwZ6B0Jg5j7lf9PP)a~f@L`Rqibf4ocb=Lsi_j9-J za zJ;aAJN)}Al5{gU-2E(GU@+mrU{}3e1QC28xlxfWjr^9G-oed83I;2I9&3pGK@uH~l~70^Ttt%>%D_Blm4LK~;e@&Oea z85V~S>~3rKL*AIE=hutqWpL2n$Jl8QmS!(TMqo(JqBJ+c9)D+OJktvq#Stfxv31%S z9l(hr!HM5cmMh?o=K&knjem_|%n1kP7_fr&G@Oyx-~86uogd!qzVDFk&}TrD6>K_v)Y^(+KYgwOF~>7w>iM`2;CRM)Df)${6~z>-&LMtmj#gRqI# zQtPDkqVG)##my}wGp>f!6|X0uNEo`Kx6wbQ&uo-4Buc6! zCDqFq4%G|}C!$$02>K0eYMRcHDtvMyxFKHU(8Z z&?345JyNVG)+}p2;f~$bA?oO+_1KCaf4<{`I%L~ss@1j|5;OSH9tOpnOn+NM`eQFy zgNr!p50EFaMsq?kO*-6%Ot&sj%(19u-$qx%SN5ZvT|^cQ2xb9L-;7y#fM@<%0elXkQAvBV7RgLnbcbvAdQn|($`jz z9N8nC1P|W;;k=YGAaex{iww_6M$Kp@cZTWs$X#F4-F}caQCx>Y;p;h0bKq9Kr&LgE zCTka^yV4K*^9}X2LfNhO&q8rEFRIt4K%c>2-5GSS?daqu)C-hVkOs(rrdpcrRWXeH zbV5xX4;xwpo85<+dJ&uE1v!DFP}LB07ge8tgvAl;+1tUENVG)4xd zX-T8JQORiR)495ais~pd)rHs-J7Bp->0Wn?7bss@(7kN4DrQ9!de>X)W)^ViEV9>M zW;QFI^{!QuX4M8Ky0{RTPdVlB#Ux0Cd-p8YEBW2ccwWDFrkk-zoEJ&!g&q%eI{dF zw-Hs-#U1TVA$hP0S!}#q?Fg)(&}_>TOAIeo z$jDGEKsS;BUd=G6--eFXP)27^*K^^KmI8LQ!X=$g)MY=D@B(p{2jXin7rBFS=<3a= zmT^qL`Dk7nrG1E@m!v!BUJ*GRm697QT%9S{6r*I2Jc=4wATK42u#c!0^Y1!@DYKFb zvQ$N>jf2vKsW(}fqpZY3xd8CGgNqucW(Im`D5J^L$#CY}40S1d=!E)*dXKh~6aAwC zjVItjHNyG!6~V9tWE9qGyHGohYyWC-dM1>wg0LY)uZQ;4LGQ1p_$Z>^>zj#}9Av6p z##v1;au~%ZjaqoCpQ3*B2&-cz9B2=E*G1@aI`q(@=KE$%xX-6}E|bWREeBZr$|$>U zX0~#nfk=2R&0xuW;5&1vhONk;*Fe#4tO9s00g7&eoCT5^X@7^BwT(c+ZToM$@kBth z9{m6a-90*hNWwItCp)8ua9v*jpRzaw(Lj@(`c7MCs56cswKz1aGCc(I=2{<*nh;Ehe&vfOS?O zuTWB`AvC~j`2s0qn6MGI{4ie2W%Q7T=meWqQin~xp zPl=b&Mq}tEDxIXM)Q(P)g3>h;$$T|F?JuELa$fqMlu?e$BNy9LcR+#~>n{cKZp8ig z1MX7HmLn1^o5290j)aQX*!CA;o zzW`w`Sbtg%A(-hv{2n?!69@5DNJ;}CH%Jv0dcc)&dzxRHcQt4r%Atp$oZzR{m>n5r@P?p77x(pjagH*jox+gdxII(m%_QpbiMX z{U<|Z5VJuzYl>q?oXtUgPM{T+MrLXVupA7uoQTc6h>NvSzNRgP7yJa*D@}QBGmpUS zZiBL3Akc|u^nr-e6oIaz)iVswd~MCKR{JP*JFNZxvGPYDFE5Q;Uj=t?nmw0!_#?pT z29GLpG&iZ43WPVhMtjn%dOHh=Y1}0plh^g!DsD|mZ#~k@6;gJYC_2}x!Ef*A^$Z)) z3gS=K@uFiQ%@N)*3rR>d#~^rqTCu9wnh@g%aU8#I4Uqd3af~OJc>fbiN*^MuPvI9o zW&A`KHYqT zf-VJ|PF&#$V1w_RmCi=T-|w6xI~t2=VUsXw0_*ALj>4>1$-~_4?m=?CijVfjO+w2E z^sqW!6B4A|ynb}|;V2l}yq`l|lZT7B9TQ5?*^r`Dp|7xzT3U-?x<^P0rmP{h1qb+{ z480JG`z+Pe)+eUthv0D`hSu5tdUqwcE>1-+(qqFZtsQWdQ^a#)6$g^i45ZivO>2;n zs?2AaZw@`v%gX&w$;eJHz=obQQrlx>4FN4qz{uJJL*B1mM8>*9T;N}<@J#=S*93cm z$)2K3N5T4mK=0xI;urC-<0g=h?zp5uyWXxpq(4+4N!AL=F%Na~Cz4}9MCl21Bi>9; zb5=3MYnXLOTg)(*n(Md$r#R3oM8|Y1O4gzSL73jwOe}{VtZk$XFded6mr0L3K;_6r zBBltwxRly?R6-tqAd~qXmS|?;lf|9JPHXJY;avI^c;2U-OGLw7z*w`n@3@7T%O7GE z^u_aDgbFAm|30GWekOd5 zX)uYT*fXLC85@YjL>B_k9m#T>xIkQqd$|X9`zjYBUdkgC!+R3wwD03_cjOF@b9OEs z!eV(XEb}6cWpepU`Dw^Qwb3FT^CP%on`-C}}11ZVMWcEyBSEE$RZ zM2^RV%Lvz{vIw3{;SEC|fQAu8U#@IaGj@9iyvXI4$Uy#BH>t0bdS`e-$<$~{LjFwe zAu4}HnqZ>+wVgVoPC`L{uiF}_JtmCPTjEh^43V}JWi%$}SISgn6uQYB^?^D@D?wDG zJ@WK-W);q&BPgkFbQbbnumc<{q*T*#5SPhs6}F075g|6*d|6_A>GTfr`_QTbd<3br z-;689U8L?bXq9=)5@8 zbi^M3aF2*d6vcT8M32$Xf`vpy&%i8;M$6Owst~sA8J&U5@qi?FtdkxZSrfNn9yM{7 z98^9`qp!KU{$WP&4K8nNXo45^1cb<1FvPBK#NpmT0^nOPB~D;UTn^!VZ1D6WNlfA( z5UP^9Z9+lJ7gkdgfslQQ+{0h!77;?BNkoy$;wlZMaejwZu}R#CuYFytO{6eTCMHU$ zzBGsAZ7_ImNzbJm$k-*3DC?3;?v9A8gwqLAi88(!i80c7dA!g>P*^UoR*5%wO{)cp({?$qWi^k zlPrF7eTKdiS?j2t6REi~BGxivGcNOGqdczRD4e9N2vkQopc~M*r)B}9fY#Pmblrgb z??;P@!$i)4DHz^P+h8^YskP5Jn2q*M)Tn^1-KJ`uVhX0C`{qUhC>@o3NZYXJnlQJY z6<5iEoON}2;r)%~9?!x;{vPG&Ft_<)m|=N^x0E5oQXjePvHhlzVfzlEzlB)UKKBI5 z@(sdOiCzwziISjfoe@`^JVOhjFTxce81n_hcZrC4-1_8gAa!#EjxuoYdmoB9J0!(-}IpF4h^7+X5D;7S7?@2`)Ceb2@FTL%O_$(lsq07i_obd{{yW2-9G&Io%IV(>4}<$EMNHH6@H(INn)1&+U)v6k7*Nk&ZvA+(0HbS0&B zgva=rU`RHvB{!juH_v+*RDZYFFr^kRWP;rGL>uceP$441vIxK=~c)iCRU6DClW@$?B5SpPYi!bE`mS_<zfL4Gx%gS9s;4x$jX0q8)2~1_{P4OKU5+B*gvpNY?`d3dh-oYXoXe=`NqA+ix8vdrM zX2C-!%9L$}fv}3_^NZzQvC6=F=iAF5I{QeM{tnT}9IY5_O2{Mddw*t~<|+}7=h32Q zCninwW6b%^&LjfB$3tpUJIpqA0}=&b=$;$#3Wl<8GFHwsx+it>)!Y6*h39iwOiSvk z74e)sg!Qia{Q9TFLMtLvv>{bJk&d?@wCrxm&-nehl%hnxS|CgeN19l#>?D=*JJGNE z#HlN*wSh4G)f7bjCF&M66FskxHkNe79KtpiwYK^}l=qAwx-4Uk50&;)<}~Yb4tzwk zaJVPn2d7<=i?G~j1~u#F4kU?^0&TzRJ_FE|LB4k31iy#i;E@-Z7aQrt4{AbxcnM%j zS5qw}%q%4C!zLS!53hjd&PWVYfIzw6cKbZ>Wu$gbMr9hEtiWYrXA0ZomoLfIqxD z_yNy@U%LwpmVaV|wB*b3fs#w&3OK?CwB>q2W1$1YH@IqF35!9^2gx5l7cz3$`qGBy zgoeOQLO?fIt$K|HTU4q~2zi(^9{4<4S^~-4N*MVNVp(wOvdVsL2JU*&vwP$tMEIY{ zHF1NRk=*ZJO@b+>X|xs9wJuV%mj%%SF0C89pn5cWH=6yt-Or>JuX`Rt~*y-^2i z8?+o6TX}gO*Qh$Zye*-A-UA6k}na ziT)$QtO{|_zQ%TApO0|$2Rh1M*!OA7#868qk3V=E1?3(Y^e4oHU!j`E6Z9yEpxKi! zR%@JU^idfqVE5=q`h*(HY<=!?_|V_{==2>oZ0@IO*y2g|Re( z6wdovEuxl7z% z9_nh$`JHf_LnJWIvNrH640vY;Y85k70`keIjpL2!#zwl}Ipa~7wJ2bgF=Yr$J?xJD zrau8UcQ&EA?WTmkG1;09ZGFmJoPhr|4*+}<>7fEEY&~GDBM=?FW3b+YzZNGmLDZ2L zJeB`2Xnm2$Pz2p2bo<=^hX_tmF36-psWy{3Vrur6hsfJ=^Kc6i zNUKBd8jUx8hdr^}#8wNZc27wt;s-f}3c+(?nW96u4H_hu=4;EewV2<>w6ip=d!$mH zpwPSmk;dx@u*&gzK_0+lV;Vm=EkTk#NH90eye#j{w0`IJJ?Ho30QToc!&^pxD1Zt>GUhKSEP0AGv!1GWTMx_%(iLToCdn3{(A{Qg zAp3m@E{`TAk&ei6NtQhf?C6$gJ)Q6c`=Iuu0FtHz7OeJ>l|fOsi14RmEFV0t)?9843M?BkQ>8#!p>{|`q|Yu)0)7Zub=?LH{zx_Tk3 z&t)XB??qD`H>k-Wagh{0f}Q4ejHwA>plKaY<^<#FwNhAB(GD7iuAWbW&J#4e9PeMSHU{zfsMA80NF*jX=L8pi`T5au!HbNI;kWQ+Zr%% zZh3+7B^~z$Hr{Kb1_P0|A<5&e(SFfg(NlD$;=~E~W^3ZYH)X^LUBsK>4fK#Qz_t1C z?S+IS{veN)JGE}@gq(gUjEW~Tx>vNicz{(VJ1Z@ZzhGBfD8ucS14JMx9})#_q--!T zEbRB#&g&2YnYaJW0~De1Bv?|Fxip1~gupV|d(oTYoD5FnGOw}YubU%GrP9w)>sM$* zw^>tu7w#1M63I9 zZVE1l#(#o&JQa#|Nj*lEi{P{*c=UzigZyT)aj6Z{P^Tqs&?I`) zUF#W@n#BEzvahzzeg}Q9B^mV1(UZX2Y)%!o8JjWV2#_yF#lOQ2R8Fsm_n!AYiqRr; zB7Z&Beng0m91eeZd1h4);Zu^ulcZ_Lc1NYh>?hf1?c-3{eyhPjP~j478-q57o`*&n2tE=Kv*1k_4fT$CZ#cm}$meB=297YwlFM0)FdFeu zLEBP(S-=q|!0mZh3@U>USqFu4T9~8X#vaCDD*F<<7{Q8Aypx$QS0UjC0C(QLFVZ?W#AC;{SNg98Rl(3N`;t>@32zk*$IH`UDz1|Q%D#)h>~HF5Z8z@($pji3tbfH4?QQ)7qdrOY`Dly-tloCf=(|2FrFyh3 z#AHr%J;dZ1?J=X1%PB$2X%dEly0UJvguSQ#q3V{TSqRu%4Ot5qNa}nfZ}(UM2|3B; z{{>QMG3bJ&*m0BaXqqDE1iABZ-uE~(f%SFUyN?_gAKA+n&l2v1R~7u4gn)+gI)y#L zQC_C-8nqy4QW@EBw@-iU>0MNy`AD@H&Mse|%`l9v_Za_SM% zIA^r{0E4!ic97Z{qfcV7V=WPgzqkQOkiYMd^fH>IX}f=#X)M=jZ*}vnA%y+P6Tkfg zIdweImpp7+c19~m$4fPuIK3fXW!)A;o>t;R-E}*`sQLQc;v>!Z_!K~ONhk*!8p zDd`7!r;?qB&`|Y|+EB~N@@z6INGYT-R**B!My{usS&f+QSZp!fIY1=Ff8o>s9@Rky zoD6MU<$?p|LZ}utJ3d#;y&HvE|ejW87xdKQ1_}w zk!eZ+KMw*o|JJ&Nq4^Q4?fwcU{tMwM8xBE3HYWS9p|XLIQ^@Bb+^4WC^vf9R-+|oS z!sIWmI;R;j@sWOfpO1yTgk`c|xs+$}{trEAC@F>K+8h941xmLS`J-FB%_I{pQ&lX( z;PnIp!fn>=6z(4^K|Dji&J1JjjZ%8RKF{DO6=peVxqc%Q(Qn;#G}D8uEok_}h%)nd z^A7*vY(f?2=q4c_F|T%HjZd;__8114OrWb3xx&Ew^>EMN0RPnZ_=@7Ju@NOm=HDOY^E8!rtR%IhxHW9TL!PqsxL|H@g< z8*R=zJA!$?hS&S>@kq!6k7~>d6H;LpctE@2L!huj_?bvFnKh*rQbbeYUH|BP!Zo2i zFwd99JbLR!u5Wew7mv4kMtu5_Dwoka)upI<)8xJViu1Dy( z0~&X*F6j^e`yzUtWwT&KD4vw+DumnMvbp!m?&iv`V%!o%N-vHdqTO?F<`(G%Pj ztPvOF;#QK9akN_^2Hch&@h%iU20`szUKcZ2o`Y|9 z#Hu%pe=5sd9rfe-2+r~yUXwAv9B7Tlvigp+_CBkut?gUPpl$g7|DcqM3rdOjoAK0>;vUV+y31AG6;g3oI+ zAIUn^8j8AIkCLs7WZfGJi$BDR_kvp@5}o}57r!66$Pl7J`3TDvN3<*}jaQZ-0`A9c zOw?ou^l*Hl+Uy^V#TJS#WsSZFhVCrl%x6g11TsZ;`0h}E;bhp=CNmFml*wLET{cgS z5#f8mz|D!|9?6>ePOpT&V+yBc=$&vgoscF(52FQXY>SH66cW5fPjhtpET3 diff --git a/flex/src/buf.c b/flex/src/buf.c index 4d5c962..185083c 100644 --- a/flex/src/buf.c +++ b/flex/src/buf.c @@ -259,7 +259,7 @@ struct Buf *buf_append (struct Buf *buf, const void *ptr, int n_elem) buf->nmax = n_alloc; } - memcpy ((char*)buf->elts + (size_t) buf->nelts * buf->elt_size, ptr, + memcpy ((char *) buf->elts + (size_t) buf->nelts * buf->elt_size, ptr, (size_t) n_elem * buf->elt_size); buf->nelts += n_elem; diff --git a/flex/src/dfa.c b/flex/src/dfa.c index 0fcc5b3..ab10314 100644 --- a/flex/src/dfa.c +++ b/flex/src/dfa.c @@ -463,14 +463,9 @@ void ntod (void) /* We still may want to use the table if numecs * is a power of 2. */ - int power_of_two; - - for (power_of_two = 1; power_of_two <= csize; - power_of_two *= 2) - if (numecs == power_of_two) { - use_NUL_table = true; - break; - } + if (numecs <= csize && is_power_of_2(numecs)) { + use_NUL_table = true; + } } if (use_NUL_table) diff --git a/flex/src/filter.c b/flex/src/filter.c index 4b46fcb..e824a6d 100644 --- a/flex/src/filter.c +++ b/flex/src/filter.c @@ -375,7 +375,7 @@ clearerr(stdin); if ((r = chain->filter_func (chain)) == -1) flexfatal (_("filter_func failed")); - exit (0); + FLEX_EXIT (0); } else { execvp (chain->argv[0], @@ -384,7 +384,7 @@ clearerr(stdin); chain->argv[0]); } - exit (1); + FLEX_EXIT (1); } /* Parent */ @@ -513,7 +513,8 @@ int filter_tee_header (struct filter *chain) fprintf (to_h, "\n"); /* write a fake line number. It will get fixed by the linedir filter. */ - fprintf (to_h, "#line 4000 \"M4_YY_OUTFILE_NAME\"\n"); + if (gen_line_dirs) + fprintf (to_h, "#line 4000 \"M4_YY_OUTFILE_NAME\"\n"); fprintf (to_h, "#undef %sIN_HEADER\n", prefix); fprintf (to_h, "#endif /* %sHEADER_H */\n", prefix); @@ -557,7 +558,7 @@ int filter_tee_header (struct filter *chain) while (wait (0) > 0) ; - exit (0); + FLEX_EXIT (0); return 0; */ return 0; diff --git a/flex/src/flex.skl b/flex/src/flex.skl index 4ae3f4c..786c977 100644 --- a/flex/src/flex.skl +++ b/flex/src/flex.skl @@ -6,8 +6,9 @@ %# pre-compilation stage of flex. Only macros starting %# with `m4preproc_' are processed, and quoting is normal. %# -%# 2. The preprocessed skeleton is translated verbatim into a -%# C array, saved as "skel.c" and compiled into the flex binary. +%# 2. The preprocessed skeleton is translated into a C array, saved +%# as "skel.c" and compiled into the flex binary. The %# comment +%# lines are removed. %# %# 3. At runtime, the skeleton is generated and filtered (again) %# through m4. Macros beginning with `m4_' will be processed. @@ -61,11 +62,17 @@ m4_changequote([[, ]]) m4_ifelse(M4_YY_PREFIX,yy,, #define yy_create_buffer M4_YY_PREFIX[[_create_buffer]] #define yy_delete_buffer M4_YY_PREFIX[[_delete_buffer]] -#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]] +#define yy_scan_buffer M4_YY_PREFIX[[_scan_buffer]] +#define yy_scan_string M4_YY_PREFIX[[_scan_string]] +#define yy_scan_bytes M4_YY_PREFIX[[_scan_bytes]] #define yy_init_buffer M4_YY_PREFIX[[_init_buffer]] #define yy_flush_buffer M4_YY_PREFIX[[_flush_buffer]] #define yy_load_buffer_state M4_YY_PREFIX[[_load_buffer_state]] #define yy_switch_to_buffer M4_YY_PREFIX[[_switch_to_buffer]] +#define yypush_buffer_state M4_YY_PREFIX[[push_buffer_state]] +#define yypop_buffer_state M4_YY_PREFIX[[pop_buffer_state]] +#define yyensure_buffer_stack M4_YY_PREFIX[[ensure_buffer_stack]] +#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]] #define yyin M4_YY_PREFIX[[in]] #define yyleng M4_YY_PREFIX[[leng]] #define yylex M4_YY_PREFIX[[lex]] @@ -105,9 +112,16 @@ m4_ifdef( [[M4_YY_REENTRANT]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]]) m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define([[M4_YY_PREFIX]], [[yy]])]]) -m4preproc_define(`M4_GEN_PREFIX', - ``[[#define yy$1 ]]M4_YY_PREFIX[[$1]] -m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'') +m4preproc_define(`M4_GEN_PREFIX',`` +[[#ifdef yy$1 +#define ]]M4_YY_PREFIX[[$1_ALREADY_DEFINED +#else +#define yy$1 ]]M4_YY_PREFIX[[$1 +#endif]] +'m4preproc_divert(1)` +[[#ifndef ]]M4_YY_PREFIX[[$1_ALREADY_DEFINED +#undef yy$1 +#endif]]'m4preproc_divert(0)') %if-c++-only /* The c++ scanner is a mess. The FlexLexer.h header file relies on the @@ -120,6 +134,7 @@ m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'') %endif %if-c-only +m4_ifelse(M4_YY_PREFIX,yy,, M4_GEN_PREFIX(`_create_buffer') M4_GEN_PREFIX(`_delete_buffer') M4_GEN_PREFIX(`_scan_buffer') @@ -155,6 +170,7 @@ m4_define([[yy$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'') M4_GEN_PREFIX(`set_column') ]]) M4_GEN_PREFIX(`wrap') +) %endif m4_ifdef( [[M4_YY_BISON_LVAL]], @@ -170,11 +186,14 @@ m4_ifdef( [[]], ]]) +m4_ifelse(M4_YY_PREFIX,yy,, M4_GEN_PREFIX(`alloc') M4_GEN_PREFIX(`realloc') M4_GEN_PREFIX(`free') +) %if-c-only +m4_ifelse(M4_YY_PREFIX,yy,, m4_ifdef( [[M4_YY_NOT_REENTRANT]], [[ M4_GEN_PREFIX(`text') @@ -184,6 +203,7 @@ m4_ifdef( [[M4_YY_NOT_REENTRANT]], M4_GEN_PREFIX(`_flex_debug') M4_GEN_PREFIX(`lineno') ]]) +) %endif @@ -214,8 +234,8 @@ m4_ifdef( [[M4_YY_TABLES_EXTERNAL]], m4preproc_include(`flexint.h') %endif -%if-c++-only /* begin standard C++ headers. */ +%if-c++-only #include #include #include @@ -1664,6 +1684,8 @@ m4_ifdef( [[M4_YY_USES_REJECT]], (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size M4_YY_CALL_LAST_ARG ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); } YY_G(yy_n_chars) += number_to_move; @@ -1896,6 +1918,9 @@ m4_ifdef( [[M4_YY_USE_LINENO]], */ void yyFlexLexer::yyrestart( std::istream* input_file ) { + if( ! input_file ) { + input_file = &yyin; + } yyrestart( *input_file ); } %endif @@ -2057,7 +2082,7 @@ static void yy_load_buffer_state (M4_YY_DEF_ONLY_ARG) b->yy_input_file = file; %endif %if-c++-only - b->yy_input_file = (&file == 0) ? NULL : file.rdbuf(); + b->yy_input_file = file.rdbuf(); %endif b->yy_fill_buffer = 1; @@ -2435,7 +2460,7 @@ static void yynoreturn yy_fatal_error YYFARGS1(const char*, msg) { M4_YY_DECL_GUTS_VAR(); M4_YY_NOOP_GUTS_VAR(); - (void) fprintf( stderr, "%s\n", msg ); + fprintf( stderr, "%s\n", msg ); exit( YY_EXIT_FAILURE ); } %endif @@ -3398,4 +3423,5 @@ m4_ifdef( [[M4_YY_IN_HEADER]], #undef YY_DECL_IS_OURS #undef YY_DECL #endif +m4preproc_undivert(1) ]]) diff --git a/flex/src/flexdef.h b/flex/src/flexdef.h index 96ae058..9ed4d44 100644 --- a/flex/src/flexdef.h +++ b/flex/src/flexdef.h @@ -57,24 +57,24 @@ #ifdef HAVE_LIMITS_H #include #endif -#ifdef HAVE_UNISTD_H -#include -#endif +/* Required: dup() and dup2() in */ +//#include #ifdef HAVE_NETINET_IN_H #include #endif #ifdef HAVE_SYS_PARAMS_H #include #endif -#ifdef HAVE_SYS_STAT_H +/* Required: stat() in */ #include -#endif +/* Required: wait() in */ //#include #include -#define HAVE_REGEX_H -#ifdef HAVE_REGEX_H +#include +/* Required: regcomp(), regexec() and regerror() in */ #include -#endif +/* Required: strcasecmp() in */ +//#include #include "flexint.h" /* We use gettext. So, when we write strings which should be translated, we mark them with _() */ @@ -109,6 +109,8 @@ #define ABS(x) ((x) < 0 ? -(x) : (x)) #endif +/* Whether an integer is a power of two */ +#define is_power_of_2(n) ((n) > 0 && ((n) & ((n) - 1)) == 0) #define unspecified -1 @@ -843,9 +845,6 @@ extern void flexfatal(const char *); }while(0) #endif /* ! HAVE_DECL___func__ */ -/* Convert a hexadecimal digit string to an integer value. */ -extern unsigned int htoui(unsigned char[]); - /* Report an error message formatted */ extern void lerr(const char *, ...) #if defined(__GNUC__) && __GNUC__ >= 3 @@ -882,9 +881,6 @@ extern int myctoi(const char *); /* Return character corresponding to escape sequence. */ extern unsigned char myesc(unsigned char[]); -/* Convert an octal digit string to an integer value. */ -extern unsigned int otoui(unsigned char[]); - /* Output a (possibly-formatted) string to the generated scanner. */ extern void out(const char *); extern void out_dec(const char *, int); @@ -975,8 +971,9 @@ extern void line_pinpoint(const char *, int); extern void format_synerr(const char *, const char *); extern void synerr(const char *); /* report a syntax error */ extern void format_warn(const char *, const char *); -extern void warn(const char *); /* report a warning */ +extern void lwarn(const char *); /* report a warning */ extern void yyerror(const char *); /* report a parse error */ +extern int yyparse(void); /* the YACC parser */ /* from file scan.l */ @@ -1118,7 +1115,7 @@ struct filter { const char ** argv; /**< arg vector, \0-terminated */ FILE* in_file; FILE* out_file; - struct filter * next; /**< next filter or NULL */ + struct filter * next; /**< next filter or NULL */ }; /* output filter chain */ @@ -1131,10 +1128,10 @@ extern bool filter_apply_chain(struct filter * chain, FILE* in_file, FILE* out_f extern int filter_truncate(struct filter * chain, int max_len); extern int filter_tee_header(struct filter *chain); extern int filter_fix_linedirs(struct filter *chain); -extern int filter_m4_p (struct filter *chain); +extern int filter_m4_p(struct filter *chain); -extern char* add_tmp_dir (const char* tmp_file_name); -extern FILE* mkstempFILE (char *tmpl, const char *mode); +extern char* add_tmp_dir(const char* tmp_file_name); +extern FILE* mkstempFILE(char *tmpl, const char *mode); extern void unlinktemp(); @@ -1169,6 +1166,5 @@ extern void sf_init(void); extern void sf_push(void); extern void sf_pop(void); -extern int snprintf(char* str, size_t size, const char* format, ...); #endif /* not defined FLEXDEF_H */ diff --git a/flex/src/flexint.h b/flex/src/flexint.h index f9fa80c..43bb3a8 100644 --- a/flex/src/flexint.h +++ b/flex/src/flexint.h @@ -58,6 +58,10 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + #endif /* ! C99 */ #endif /* ! FLEXINT_H */ diff --git a/flex/src/gen.c b/flex/src/gen.c index e0dc776..590e5d8 100644 --- a/flex/src/gen.c +++ b/flex/src/gen.c @@ -509,8 +509,12 @@ void gen_find_action (void) indent_puts ("yy_current_state = *--YY_G(yy_state_ptr);"); indent_puts ("YY_G(yy_lp) = yy_accept[yy_current_state];"); + if (!variable_trailing_context_rules) + outn ("m4_ifdef( [[M4_YY_USES_REJECT]],\n[["); if(reject_really_used) outn ("find_rule: /* we branch to this label when backing up */"); + if (!variable_trailing_context_rules) + outn ("]])\n"); indent_puts ("for ( ; ; ) /* until we find what rule we matched */"); diff --git a/flex/src/main.c b/flex/src/main.c index 58d7868..a3918aa 100644 --- a/flex/src/main.c +++ b/flex/src/main.c @@ -39,7 +39,7 @@ #include "parse.h" #include -static char flex_version[] = "2.6.3";//FLEX_VERSION; +static char flex_version[] = "2.6.4";//FLEX_VERSION; /* declare functions that have forward references */ @@ -283,7 +283,7 @@ void check_options (void) flexerror (_("Can't use -+ with -CF option")); if (C_plus_plus && yytext_is_array) { - warn (_("%array incompatible with -+ option")); + lwarn (_("%array incompatible with -+ option")); yytext_is_array = false; } @@ -369,16 +369,17 @@ void check_options (void) endOfDir = path+length; { - char m4_path[endOfDir-path + 1 + m4_length + 1]; + char *m4_path = calloc(endOfDir-path + 1 + m4_length + 1, 1); memcpy(m4_path, path, endOfDir-path); m4_path[endOfDir-path] = '/'; memcpy(m4_path + (endOfDir-path) + 1, m4, m4_length + 1); if (stat(m4_path, &sbuf) == 0 && (S_ISREG(sbuf.st_mode)) && sbuf.st_mode & S_IXUSR) { - m4 = strdup(m4_path); + m4 = m4_path; break; } + free(m4_path); } path = endOfDir+1; } while (path[0]); @@ -1685,9 +1686,9 @@ void readin (void) if (!do_yywrap) { if (!C_plus_plus) { if (reentrant) - outn ("\n#define yywrap(yyscanner) (/*CONSTCOND*/1)"); + out_str ("\n#define %swrap(yyscanner) (/*CONSTCOND*/1)\n", prefix); else - outn ("\n#define yywrap() (/*CONSTCOND*/1)"); + out_str ("\n#define %swrap() (/*CONSTCOND*/1)\n", prefix); } outn ("#define YY_SKIP_YYWRAP"); } diff --git a/flex/src/misc.c b/flex/src/misc.c index ffff096..8cd98ad 100644 --- a/flex/src/misc.c +++ b/flex/src/misc.c @@ -30,23 +30,9 @@ /* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */ /* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */ /* PURPOSE. */ - #include "flexdef.h" #include "tables.h" -#if _MSC_VER < 1900 -int snprintf(char* str, size_t size, const char* format, ...) -{ - size_t count; - va_list ap; - va_start(ap, format); - count = _vscprintf(format, ap); - _vsnprintf_s(str, size, _TRUNCATE, format, ap); - va_end(ap); - return count; -} -#endif - #define CMD_IF_TABLES_SER "%if-tables-serialization" #define CMD_TABLES_YYDMAP "%tables-yydmap" #define CMD_DEFINE_YYTABLES "%define-yytables" @@ -156,9 +142,14 @@ void add_action (const char *new_text) void *allocate_array (int size, size_t element_size) { void *mem; - size_t num_bytes = element_size * (size_t) size; - - mem = malloc(num_bytes); +#if HAVE_REALLOCARRAY + /* reallocarray has built-in overflow detection */ + mem = reallocarray(NULL, (size_t) size, element_size); +#else + size_t num_bytes = (size_t) size * element_size; + mem = (size && SIZE_MAX / (size_t) size < element_size) ? NULL : + malloc(num_bytes); +#endif if (!mem) flexfatal (_ ("memory allocation failed in allocate_array()")); @@ -229,18 +220,17 @@ unsigned char clower (int c) return (unsigned char) ((isascii (c) && isupper (c)) ? tolower (c) : c); } - /* char *xstrdup(const char *s) { char *s2; - if ((s2 = _strdup(s)) == NULL) + if ((s2 = strdup(s)) == NULL) flexfatal (_("memory allocation failure in xstrdup()")); return s2; -}*/ - +} +*/ /* cclcmp - compares two characters for use by qsort with '\0' sorting last. */ @@ -316,18 +306,6 @@ void flexfatal (const char *msg) } -/* htoui - convert a hexadecimal digit string to an unsigned integer value */ - -unsigned int htoui (unsigned char str[]) -{ - unsigned int result; - - (void) sscanf ((char *) str, "%x", &result); - - return result; -} - - /* lerr - report an error message */ void lerr (const char *msg, ...) @@ -362,7 +340,7 @@ void line_directive_out (FILE *output_file, int do_infile) { char directive[MAXLINE], filename[MAXLINE]; char *s1, *s2, *s3; - static const char *line_fmt = "#line %d \"%s\"\n"; + static const char line_fmt[] = "#line %d \"%s\"\n"; if (!gen_line_dirs) return; @@ -527,18 +505,14 @@ unsigned char myesc (unsigned char array[]) int sptr = 1; while (sptr <= 3 && - isascii (array[sptr]) && - isdigit (array[sptr])) - /* Don't increment inside loop control - * because if isdigit() is a macro it might - * expand into multiple increments ... - */ + array[sptr] >= '0' && array[sptr] <= '7') { ++sptr; + } c = array[sptr]; array[sptr] = '\0'; - esc_char = (unsigned char) otoui (array + 1); + esc_char = (unsigned char) strtoul (array + 1, NULL, 8); array[sptr] = c; @@ -549,18 +523,18 @@ unsigned char myesc (unsigned char array[]) { /* \x */ int sptr = 2; - while (isascii (array[sptr]) && - isxdigit (array[sptr])) + while (sptr <= 3 && isxdigit (array[sptr])) { /* Don't increment inside loop control - * because if isdigit() is a macro it might + * because if isxdigit() is a macro it might * expand into multiple increments ... */ ++sptr; + } c = array[sptr]; array[sptr] = '\0'; - esc_char = (unsigned char) htoui (array + 2); + esc_char = (unsigned char) strtoul (array + 2, NULL, 16); array[sptr] = c; @@ -573,17 +547,6 @@ unsigned char myesc (unsigned char array[]) } -/* otoui - convert an octal digit string to an unsigned integer value */ - -unsigned int otoui (unsigned char str[]) -{ - unsigned int result; - - (void) sscanf ((char *) str, "%o", &result); - return result; -} - - /* out - various flavors of outputing a (possibly formatted) string for the * generated scanner, keeping track of the line count. */ @@ -696,9 +659,14 @@ char *readable_form (int c) void *reallocate_array (void *array, int size, size_t element_size) { void *new_array; - size_t num_bytes = element_size * (size_t) size; - - new_array = realloc(array, num_bytes); +#if HAVE_REALLOCARRAY + /* reallocarray has built-in overflow detection */ + new_array = reallocarray(array, (size_t) size, element_size); +#else + size_t num_bytes = (size_t) size * element_size; + new_array = (size && SIZE_MAX / (size_t) size < element_size) ? NULL : + realloc(array, num_bytes); +#endif if (!new_array) flexfatal (_("attempt to increase array size failed")); @@ -823,9 +791,6 @@ void skelout (void) /* %e end linkage-only code. */ OUT_END_CODE (); } - else if (buf[1] == '#') { - /* %# a comment in the skel. ignore. */ - } else { flexfatal (_("bad line in skeleton file")); } diff --git a/flex/src/parse.c b/flex/src/parse.c index c5a2e37..32458e4 100644 --- a/flex/src/parse.c +++ b/flex/src/parse.c @@ -112,7 +112,7 @@ int previous_continued_action; /* whether the previous rule's action was '|' */ do{ \ char fw3_msg[MAXLINE];\ snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\ - warn( fw3_msg );\ + lwarn( fw3_msg );\ }while(0) /* Expand a POSIX character class expression. */ @@ -1717,7 +1717,7 @@ yyparse (void) scon_stk[++scon_stk_ptr] = i; if ( scon_stk_ptr == 0 ) - warn( + lwarn( "all start conditions already have <> rules" ); else @@ -1827,7 +1827,7 @@ yyparse (void) * erroneously. */ if ( ! varlength || headcnt != 0 ) - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); /* Mark as variable. */ @@ -1888,7 +1888,7 @@ yyparse (void) /* See the comment in the rule for "re2 re" * above. */ - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); varlength = true; @@ -2537,7 +2537,7 @@ yyparse (void) #line 916 "parse.y" /* yacc.c:1646 */ { if ( sf_case_ins() ) - warn(_("[:^lower:] is ambiguous in case insensitive scanner")); + lwarn(_("[:^lower:] is ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(islower); } @@ -2548,7 +2548,7 @@ yyparse (void) #line 922 "parse.y" /* yacc.c:1646 */ { if ( sf_case_ins() ) - warn(_("[:^upper:] ambiguous in case insensitive scanner")); + lwarn(_("[:^upper:] ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(isupper); } @@ -2881,13 +2881,13 @@ void format_warn( const char *msg, const char arg[] ) char warn_msg[MAXLINE]; snprintf( warn_msg, sizeof(warn_msg), msg, arg ); - warn( warn_msg ); + lwarn( warn_msg ); } -/* warn - report a warning, unless -w was given */ +/* lwarn - report a warning, unless -w was given */ -void warn( const char *str ) +void lwarn( const char *str ) { line_warning( str, linenum ); } diff --git a/flex/src/parse.y b/flex/src/parse.y index 8aed868..5a07320 100644 --- a/flex/src/parse.y +++ b/flex/src/parse.y @@ -80,7 +80,7 @@ int previous_continued_action; /* whether the previous rule's action was '|' */ do{ \ char fw3_msg[MAXLINE];\ snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\ - warn( fw3_msg );\ + lwarn( fw3_msg );\ }while(0) /* Expand a POSIX character class expression. */ @@ -305,7 +305,7 @@ flexrule : '^' rule scon_stk[++scon_stk_ptr] = i; if ( scon_stk_ptr == 0 ) - warn( + lwarn( "all start conditions already have <> rules" ); else @@ -400,7 +400,7 @@ rule : re2 re * erroneously. */ if ( ! varlength || headcnt != 0 ) - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); /* Mark as variable. */ @@ -455,7 +455,7 @@ rule : re2 re /* See the comment in the rule for "re2 re" * above. */ - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); varlength = true; @@ -915,13 +915,13 @@ ccl_expr: | CCE_NEG_XDIGIT { CCL_NEG_EXPR(isxdigit); } | CCE_NEG_LOWER { if ( sf_case_ins() ) - warn(_("[:^lower:] is ambiguous in case insensitive scanner")); + lwarn(_("[:^lower:] is ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(islower); } | CCE_NEG_UPPER { if ( sf_case_ins() ) - warn(_("[:^upper:] ambiguous in case insensitive scanner")); + lwarn(_("[:^upper:] ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(isupper); } @@ -1018,13 +1018,13 @@ void format_warn( const char *msg, const char arg[] ) char warn_msg[MAXLINE]; snprintf( warn_msg, sizeof(warn_msg), msg, arg ); - warn( warn_msg ); + lwarn( warn_msg ); } -/* warn - report a warning, unless -w was given */ +/* lwarn - report a warning, unless -w was given */ -void warn( const char *str ) +void lwarn( const char *str ) { line_warning( str, linenum ); } diff --git a/flex/src/regex.c b/flex/src/regex.c index 2eacacc..38e658b 100644 --- a/flex/src/regex.c +++ b/flex/src/regex.c @@ -54,21 +54,17 @@ void flex_regcomp(regex_t *preg, const char *regex, int cflags) memset (preg, 0, sizeof (regex_t)); if ((err = regcomp (preg, regex, cflags)) != 0) { - const size_t errbuf_sz = 200; - char *errbuf, *rxerr; + const size_t errbuf_sz = 200; + char *errbuf; + int n; errbuf = malloc(errbuf_sz * sizeof(char)); if (!errbuf) flexfatal(_("Unable to allocate buffer to report regcomp")); - rxerr = malloc(errbuf_sz * sizeof(char)); - if (!rxerr) - flexfatal(_("Unable to allocate buffer for regerror")); - regerror (err, preg, rxerr, errbuf_sz); - snprintf (errbuf, errbuf_sz, "regcomp for \"%s\" failed: %s", regex, rxerr); - - flexfatal (errbuf); - free(errbuf); - free(rxerr); + n = snprintf(errbuf, errbuf_sz, "regcomp for \"%s\" failed: ", regex); + regerror(err, preg, errbuf+n, errbuf_sz-(size_t)n); + + flexfatal (errbuf); /* never returns - no need to free(errbuf) */ } } diff --git a/flex/src/scan.c b/flex/src/scan.c index a2e1deb..445336f 100644 --- a/flex/src/scan.c +++ b/flex/src/scan.c @@ -1,5 +1,6 @@ +#line 1 "scan.c" -//#line 2 "scan.c" +#line 3 "scan.c" #define YY_INT_ALIGNED short int @@ -8,7 +9,7 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 6 -#define YY_FLEX_SUBMINOR_VERSION 2 +#define YY_FLEX_SUBMINOR_VERSION 4 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -16,7 +17,6 @@ /* First, we deal with platform-specific or compiler-specific issues. */ /* begin standard C headers. */ -#include #include #include #include @@ -84,10 +84,16 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + #endif /* ! C99 */ #endif /* ! FLEXINT_H */ +/* begin standard C++ headers. */ + /* TODO: this is always defined, so inline it */ #define yyconst const @@ -119,7 +125,7 @@ typedef unsigned int flex_uint32_t; /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE yyrestart(yyin ) +#define YY_NEW_FILE yyrestart( yyin ) #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ @@ -215,7 +221,7 @@ struct yy_buffer_state int yy_bs_lineno; /**< The line count. */ int yy_bs_column; /**< The column count. */ - + /* Whether to try to fill the input buffer when we reach the * end of it. */ @@ -285,7 +291,7 @@ void yypop_buffer_state ( void ); static void yyensure_buffer_stack ( void ); static void yy_load_buffer_state ( void ); static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); -#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) +#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); @@ -301,7 +307,7 @@ void yyfree ( void * ); if ( ! YY_CURRENT_BUFFER ){ \ yyensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer(yyin,YY_BUF_SIZE ); \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } @@ -310,7 +316,7 @@ void yyfree ( void * ); if ( ! YY_CURRENT_BUFFER ){\ yyensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer(yyin,YY_BUF_SIZE ); \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } @@ -1837,9 +1843,9 @@ int yy_flex_debug = 0; #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *yytext; -//#line 1 "scan.l" +#line 1 "scan.l" /* scan.l - scanner for flex input -*-C-*- */ -//#line 4 "scan.l" +#line 4 "scan.l" /* Copyright (c) 1990 The Regents of the University of California. */ /* All rights reserved. */ @@ -1913,7 +1919,7 @@ extern const char *escaped_qstart, *escaped_qend; #define RETURNNAME \ if(yyleng < MAXLINE) \ { \ - strcpy( nmstr, yytext ); \ + strncpy( nmstr, yytext, sizeof(nmstr) ); \ return NAME; \ } \ else \ @@ -1957,9 +1963,9 @@ extern const char *escaped_qstart, *escaped_qend; if (!indented_code) line_directive_out(NULL, 0);\ } while (0) -//#line 1959 "scan.c" +#line 1966 "scan.c" -//#line 1961 "scan.c" +#line 1968 "scan.c" #define INITIAL 0 #define SECT2 1 @@ -1995,6 +2001,7 @@ extern const char *escaped_qstart, *escaped_qend; * The user has a chance to override it with an option. */ //#include +#include #endif #ifndef YY_EXTRA_TYPE @@ -2206,16 +2213,16 @@ YY_DECL if ( ! YY_CURRENT_BUFFER ) { yyensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer(yyin,YY_BUF_SIZE ); + yy_create_buffer( yyin, YY_BUF_SIZE ); } - yy_load_buffer_state( ); + yy_load_buffer_state( ); } { -//#line 158 "scan.l" +#line 158 "scan.l" -//#line 160 "scan.l" +#line 160 "scan.l" static int bracelevel, didadef, indented_code; static int doing_rule_action = false; static int option_sense; @@ -2225,7 +2232,7 @@ YY_DECL char nmdef[MAXLINE]; -//#line 2227 "scan.c" +#line 2234 "scan.c" while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { @@ -2285,39 +2292,39 @@ YY_DECL case 1: YY_RULE_SETUP -//#line 170 "scan.l" +#line 170 "scan.l" START_CODEBLOCK(true); YY_BREAK case 2: YY_RULE_SETUP -//#line 171 "scan.l" +#line 171 "scan.l" add_action("/*[""["); yy_push_state( COMMENT ); YY_BREAK case 3: YY_RULE_SETUP -//#line 172 "scan.l" +#line 172 "scan.l" yy_push_state( LINEDIR ); YY_BREAK case 4: YY_RULE_SETUP -//#line 173 "scan.l" +#line 173 "scan.l" return SCDECL; YY_BREAK case 5: YY_RULE_SETUP -//#line 174 "scan.l" +#line 174 "scan.l" return XSCDECL; YY_BREAK case 6: /* rule 6 can match eol */ YY_RULE_SETUP -//#line 175 "scan.l" +#line 175 "scan.l" START_CODEBLOCK(false); YY_BREAK case 7: /* rule 7 can match eol */ YY_RULE_SETUP -//#line 176 "scan.l" +#line 176 "scan.l" { brace_start_line = linenum; ++linenum; @@ -2328,17 +2335,17 @@ YY_RULE_SETUP YY_BREAK case 8: YY_RULE_SETUP -//#line 184 "scan.l" +#line 184 "scan.l" synerr( _("malformed '%top' directive") ); YY_BREAK case 9: YY_RULE_SETUP -//#line 186 "scan.l" +#line 186 "scan.l" /* discard */ YY_BREAK case 10: YY_RULE_SETUP -//#line 188 "scan.l" +#line 188 "scan.l" { sectnum = 2; bracelevel = 0; @@ -2351,46 +2358,46 @@ YY_RULE_SETUP case 11: /* rule 11 can match eol */ YY_RULE_SETUP -//#line 197 "scan.l" +#line 197 "scan.l" yytext_is_array = false; ++linenum; YY_BREAK case 12: /* rule 12 can match eol */ YY_RULE_SETUP -//#line 198 "scan.l" +#line 198 "scan.l" yytext_is_array = true; ++linenum; YY_BREAK case 13: YY_RULE_SETUP -//#line 200 "scan.l" +#line 200 "scan.l" BEGIN(OPTION); return TOK_OPTION; YY_BREAK case 14: /* rule 14 can match eol */ YY_RULE_SETUP -//#line 202 "scan.l" +#line 202 "scan.l" ++linenum; /* ignore */ YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -//#line 203 "scan.l" +#line 203 "scan.l" ++linenum; /* ignore */ YY_BREAK /* xgettext: no-c-format */ case 16: /* rule 16 can match eol */ YY_RULE_SETUP -//#line 206 "scan.l" +#line 206 "scan.l" synerr( _( "unrecognized '%' directive" ) ); YY_BREAK case 17: YY_RULE_SETUP -//#line 208 "scan.l" +#line 208 "scan.l" { if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -2404,51 +2411,51 @@ YY_RULE_SETUP YY_BREAK case 18: YY_RULE_SETUP -//#line 223 "scan.l" +#line 223 "scan.l" RETURNNAME; YY_BREAK case 19: /* rule 19 can match eol */ YY_RULE_SETUP -//#line 224 "scan.l" +#line 224 "scan.l" ++linenum; /* allows blank lines in section 1 */ YY_BREAK case 20: /* rule 20 can match eol */ YY_RULE_SETUP -//#line 225 "scan.l" +#line 225 "scan.l" ACTION_ECHO; ++linenum; /* maybe end of comment line */ YY_BREAK /* */ case 21: YY_RULE_SETUP -//#line 230 "scan.l" +#line 230 "scan.l" ACTION_ECHO; YY_BREAK case 22: YY_RULE_SETUP -//#line 231 "scan.l" +#line 231 "scan.l" ACTION_ECHO; YY_BREAK case 23: /* rule 23 can match eol */ YY_RULE_SETUP -//#line 233 "scan.l" +#line 233 "scan.l" ++linenum; ACTION_ECHO; YY_BREAK case 24: YY_RULE_SETUP -//#line 236 "scan.l" +#line 236 "scan.l" add_action("*/]""]"); yy_pop_state(); YY_BREAK case 25: YY_RULE_SETUP -//#line 239 "scan.l" +#line 239 "scan.l" ACTION_ECHO; yy_pop_state(); YY_BREAK @@ -2456,41 +2463,41 @@ ACTION_ECHO; yy_pop_state(); /* This is the same as COMMENT, but is discarded rather than output. */ case 26: YY_RULE_SETUP -//#line 244 "scan.l" +#line 244 "scan.l" yy_pop_state(); YY_BREAK case 27: YY_RULE_SETUP -//#line 245 "scan.l" +#line 245 "scan.l" ; YY_BREAK case 28: YY_RULE_SETUP -//#line 246 "scan.l" +#line 246 "scan.l" ; YY_BREAK case 29: /* rule 29 can match eol */ YY_RULE_SETUP -//#line 247 "scan.l" +#line 247 "scan.l" ++linenum; YY_BREAK case 30: YY_RULE_SETUP -//#line 251 "scan.l" +#line 251 "scan.l" yy_pop_state(); YY_BREAK case 31: YY_RULE_SETUP -//#line 252 "scan.l" +#line 252 "scan.l" ; YY_BREAK case 32: /* rule 32 can match eol */ YY_RULE_SETUP -//#line 253 "scan.l" +#line 253 "scan.l" ++linenum; YY_BREAK @@ -2498,17 +2505,17 @@ YY_RULE_SETUP case 33: /* rule 33 can match eol */ YY_RULE_SETUP -//#line 257 "scan.l" +#line 257 "scan.l" yy_pop_state(); YY_BREAK case 34: YY_RULE_SETUP -//#line 258 "scan.l" +#line 258 "scan.l" linenum = myctoi( yytext ); YY_BREAK case 35: YY_RULE_SETUP -//#line 260 "scan.l" +#line 260 "scan.l" { free(infilename); infilename = xstrdup(yytext + 1); @@ -2517,19 +2524,19 @@ YY_RULE_SETUP YY_BREAK case 36: YY_RULE_SETUP -//#line 265 "scan.l" +#line 265 "scan.l" /* ignore spurious characters */ YY_BREAK case 37: YY_RULE_SETUP -//#line 269 "scan.l" +#line 268 "scan.l" ACTION_ECHO_QSTART; YY_BREAK case 38: YY_RULE_SETUP -//#line 270 "scan.l" +#line 269 "scan.l" ACTION_ECHO_QEND; YY_BREAK @@ -2537,23 +2544,23 @@ ACTION_ECHO_QEND; case 39: /* rule 39 can match eol */ YY_RULE_SETUP -//#line 274 "scan.l" +#line 273 "scan.l" ++linenum; END_CODEBLOCK; YY_BREAK case 40: YY_RULE_SETUP -//#line 275 "scan.l" +#line 274 "scan.l" ACTION_ECHO; YY_BREAK case 41: YY_RULE_SETUP -//#line 276 "scan.l" +#line 275 "scan.l" ACTION_ECHO; YY_BREAK case 42: /* rule 42 can match eol */ YY_RULE_SETUP -//#line 277 "scan.l" +#line 276 "scan.l" { ++linenum; ACTION_ECHO; @@ -2564,7 +2571,7 @@ YY_RULE_SETUP case 43: YY_RULE_SETUP -//#line 285 "scan.l" +#line 284 "scan.l" { if( --brace_depth == 0){ /* TODO: Matched. */ @@ -2575,7 +2582,7 @@ YY_RULE_SETUP YY_BREAK case 44: YY_RULE_SETUP -//#line 293 "scan.l" +#line 292 "scan.l" { brace_depth++; buf_strnappend(&top_buf, yytext, yyleng); @@ -2584,7 +2591,7 @@ YY_RULE_SETUP case 45: /* rule 45 can match eol */ YY_RULE_SETUP -//#line 298 "scan.l" +#line 297 "scan.l" { ++linenum; buf_strnappend(&top_buf, yytext, yyleng); @@ -2592,23 +2599,23 @@ YY_RULE_SETUP YY_BREAK case 46: YY_RULE_SETUP -//#line 303 "scan.l" +#line 302 "scan.l" buf_strnappend(&top_buf, escaped_qstart, (int) strlen(escaped_qstart)); YY_BREAK case 47: YY_RULE_SETUP -//#line 304 "scan.l" +#line 303 "scan.l" buf_strnappend(&top_buf, escaped_qend, (int) strlen(escaped_qend)); YY_BREAK case 48: YY_RULE_SETUP -//#line 305 "scan.l" +#line 304 "scan.l" { buf_strnappend(&top_buf, yytext, yyleng); } YY_BREAK case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE): -//#line 309 "scan.l" +#line 308 "scan.l" { linenum = brace_start_line; synerr(_("Unmatched '{'")); @@ -2619,16 +2626,16 @@ case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE): case 49: YY_RULE_SETUP -//#line 318 "scan.l" +#line 317 "scan.l" /* separates name and definition */ YY_BREAK case 50: YY_RULE_SETUP -//#line 320 "scan.l" +#line 319 "scan.l" { if(yyleng < MAXLINE) { - strcpy( nmdef, yytext ); + strncpy( nmdef, yytext, sizeof(nmdef) ); } else { @@ -2650,7 +2657,7 @@ YY_RULE_SETUP case 51: /* rule 51 can match eol */ YY_RULE_SETUP -//#line 342 "scan.l" +#line 341 "scan.l" { if ( ! didadef ) synerr( _( "incomplete name definition" ) ); @@ -2663,42 +2670,42 @@ YY_RULE_SETUP case 52: /* rule 52 can match eol */ YY_RULE_SETUP -//#line 352 "scan.l" +#line 351 "scan.l" ++linenum; BEGIN(INITIAL); YY_BREAK case 53: YY_RULE_SETUP -//#line 353 "scan.l" +#line 352 "scan.l" option_sense = true; YY_BREAK case 54: YY_RULE_SETUP -//#line 355 "scan.l" +#line 354 "scan.l" return '='; YY_BREAK case 55: YY_RULE_SETUP -//#line 357 "scan.l" +#line 356 "scan.l" option_sense = ! option_sense; YY_BREAK case 56: YY_RULE_SETUP -//#line 359 "scan.l" +#line 358 "scan.l" csize = option_sense ? 128 : 256; YY_BREAK case 57: YY_RULE_SETUP -//#line 360 "scan.l" +#line 359 "scan.l" csize = option_sense ? 256 : 128; YY_BREAK case 58: YY_RULE_SETUP -//#line 362 "scan.l" +#line 361 "scan.l" long_align = option_sense; YY_BREAK case 59: YY_RULE_SETUP -//#line 363 "scan.l" +#line 362 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_ALWAYS_INTERACTIVE", option_sense ); interactive = option_sense; @@ -2706,64 +2713,64 @@ YY_RULE_SETUP YY_BREAK case 60: YY_RULE_SETUP -//#line 367 "scan.l" +#line 366 "scan.l" yytext_is_array = option_sense; YY_BREAK case 61: YY_RULE_SETUP -//#line 368 "scan.l" +#line 367 "scan.l" backing_up_report = option_sense; YY_BREAK case 62: YY_RULE_SETUP -//#line 369 "scan.l" +#line 368 "scan.l" interactive = ! option_sense; YY_BREAK case 63: YY_RULE_SETUP -//#line 370 "scan.l" +#line 369 "scan.l" bison_bridge_lval = option_sense; YY_BREAK case 64: YY_RULE_SETUP -//#line 371 "scan.l" +#line 370 "scan.l" { if((bison_bridge_lloc = option_sense)) bison_bridge_lval = true; } YY_BREAK case 65: YY_RULE_SETUP -//#line 374 "scan.l" +#line 373 "scan.l" C_plus_plus = option_sense; YY_BREAK case 66: YY_RULE_SETUP -//#line 375 "scan.l" +#line 374 "scan.l" sf_set_case_ins(!option_sense); YY_BREAK case 67: YY_RULE_SETUP -//#line 376 "scan.l" +#line 375 "scan.l" sf_set_case_ins(option_sense); YY_BREAK case 68: YY_RULE_SETUP -//#line 377 "scan.l" +#line 376 "scan.l" ddebug = option_sense; YY_BREAK case 69: YY_RULE_SETUP -//#line 378 "scan.l" +#line 377 "scan.l" spprdflt = ! option_sense; YY_BREAK case 70: YY_RULE_SETUP -//#line 379 "scan.l" +#line 378 "scan.l" useecs = option_sense; YY_BREAK case 71: YY_RULE_SETUP -//#line 380 "scan.l" +#line 379 "scan.l" { useecs = usemecs = false; use_read = fullspd = true; @@ -2771,7 +2778,7 @@ YY_RULE_SETUP YY_BREAK case 72: YY_RULE_SETUP -//#line 384 "scan.l" +#line 383 "scan.l" { useecs = usemecs = false; use_read = fulltbl = true; @@ -2779,32 +2786,32 @@ YY_RULE_SETUP YY_BREAK case 73: YY_RULE_SETUP -//#line 388 "scan.l" +#line 387 "scan.l" ACTION_IFDEF("YY_NO_INPUT", ! option_sense); YY_BREAK case 74: YY_RULE_SETUP -//#line 389 "scan.l" +#line 388 "scan.l" interactive = option_sense; YY_BREAK case 75: YY_RULE_SETUP -//#line 390 "scan.l" +#line 389 "scan.l" lex_compat = option_sense; YY_BREAK case 76: YY_RULE_SETUP -//#line 391 "scan.l" +#line 390 "scan.l" posix_compat = option_sense; YY_BREAK case 77: YY_RULE_SETUP -//#line 392 "scan.l" +#line 391 "scan.l" gen_line_dirs = option_sense; YY_BREAK case 78: YY_RULE_SETUP -//#line 393 "scan.l" +#line 392 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_MAIN", option_sense); /* Override yywrap */ @@ -2814,12 +2821,12 @@ YY_RULE_SETUP YY_BREAK case 79: YY_RULE_SETUP -//#line 399 "scan.l" +#line 398 "scan.l" usemecs = option_sense; YY_BREAK case 80: YY_RULE_SETUP -//#line 400 "scan.l" +#line 399 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_NEVER_INTERACTIVE", option_sense ); interactive = !option_sense; @@ -2827,237 +2834,237 @@ YY_RULE_SETUP YY_BREAK case 81: YY_RULE_SETUP -//#line 404 "scan.l" +#line 403 "scan.l" performance_report += option_sense ? 1 : -1; YY_BREAK case 82: YY_RULE_SETUP -//#line 405 "scan.l" +#line 404 "scan.l" yytext_is_array = ! option_sense; YY_BREAK case 83: YY_RULE_SETUP -//#line 406 "scan.l" +#line 405 "scan.l" use_read = option_sense; YY_BREAK case 84: YY_RULE_SETUP -//#line 407 "scan.l" +#line 406 "scan.l" reentrant = option_sense; YY_BREAK case 85: YY_RULE_SETUP -//#line 408 "scan.l" +#line 407 "scan.l" reject_really_used = option_sense; YY_BREAK case 86: YY_RULE_SETUP -//#line 409 "scan.l" +#line 408 "scan.l" ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense ); YY_BREAK case 87: YY_RULE_SETUP -//#line 410 "scan.l" +#line 409 "scan.l" do_stdinit = option_sense; YY_BREAK case 88: YY_RULE_SETUP -//#line 411 "scan.l" +#line 410 "scan.l" use_stdout = option_sense; YY_BREAK case 89: YY_RULE_SETUP -//#line 412 "scan.l" +#line 411 "scan.l" ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense); YY_BREAK case 90: YY_RULE_SETUP -//#line 413 "scan.l" +#line 412 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense); YY_BREAK case 91: YY_RULE_SETUP -//#line 414 "scan.l" +#line 413 "scan.l" printstats = option_sense; YY_BREAK case 92: YY_RULE_SETUP -//#line 415 "scan.l" +#line 414 "scan.l" nowarn = ! option_sense; YY_BREAK case 93: YY_RULE_SETUP -//#line 416 "scan.l" +#line 415 "scan.l" do_yylineno = option_sense; ACTION_M4_IFDEF("M4""_YY_USE_LINENO", option_sense); YY_BREAK case 94: YY_RULE_SETUP -//#line 417 "scan.l" +#line 416 "scan.l" yymore_really_used = option_sense; YY_BREAK case 95: YY_RULE_SETUP -//#line 418 "scan.l" +#line 417 "scan.l" do_yywrap = option_sense; YY_BREAK case 96: YY_RULE_SETUP -//#line 420 "scan.l" +#line 419 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_PUSH_STATE", ! option_sense); YY_BREAK case 97: YY_RULE_SETUP -//#line 421 "scan.l" +#line 420 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_POP_STATE", ! option_sense); YY_BREAK case 98: YY_RULE_SETUP -//#line 422 "scan.l" +#line 421 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_TOP_STATE", ! option_sense); YY_BREAK case 99: YY_RULE_SETUP -//#line 424 "scan.l" +#line 423 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BUFFER", ! option_sense); YY_BREAK case 100: YY_RULE_SETUP -//#line 425 "scan.l" +#line 424 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BYTES", ! option_sense); YY_BREAK case 101: YY_RULE_SETUP -//#line 426 "scan.l" +#line 425 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_STRING", ! option_sense); YY_BREAK case 102: YY_RULE_SETUP -//#line 428 "scan.l" +#line 427 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_ALLOC", ! option_sense); YY_BREAK case 103: YY_RULE_SETUP -//#line 429 "scan.l" +#line 428 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_REALLOC", ! option_sense); YY_BREAK case 104: YY_RULE_SETUP -//#line 430 "scan.l" +#line 429 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_FREE", ! option_sense); YY_BREAK case 105: YY_RULE_SETUP -//#line 432 "scan.l" +#line 431 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_DEBUG", ! option_sense); YY_BREAK case 106: YY_RULE_SETUP -//#line 433 "scan.l" +#line 432 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_DEBUG", ! option_sense); YY_BREAK case 107: YY_RULE_SETUP -//#line 434 "scan.l" +#line 433 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_EXTRA", ! option_sense); YY_BREAK case 108: YY_RULE_SETUP -//#line 435 "scan.l" +#line 434 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_EXTRA", ! option_sense); YY_BREAK case 109: YY_RULE_SETUP -//#line 436 "scan.l" +#line 435 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LENG", ! option_sense); YY_BREAK case 110: YY_RULE_SETUP -//#line 437 "scan.l" +#line 436 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_TEXT", ! option_sense); YY_BREAK case 111: YY_RULE_SETUP -//#line 438 "scan.l" +#line 437 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LINENO", ! option_sense); YY_BREAK case 112: YY_RULE_SETUP -//#line 439 "scan.l" +#line 438 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LINENO", ! option_sense); YY_BREAK case 113: YY_RULE_SETUP -//#line 440 "scan.l" +#line 439 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_IN", ! option_sense); YY_BREAK case 114: YY_RULE_SETUP -//#line 441 "scan.l" +#line 440 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_IN", ! option_sense); YY_BREAK case 115: YY_RULE_SETUP -//#line 442 "scan.l" +#line 441 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_OUT", ! option_sense); YY_BREAK case 116: YY_RULE_SETUP -//#line 443 "scan.l" +#line 442 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_OUT", ! option_sense); YY_BREAK case 117: YY_RULE_SETUP -//#line 444 "scan.l" +#line 443 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LVAL", ! option_sense); YY_BREAK case 118: YY_RULE_SETUP -//#line 445 "scan.l" +#line 444 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LVAL", ! option_sense); YY_BREAK case 119: YY_RULE_SETUP -//#line 446 "scan.l" +#line 445 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LLOC", ! option_sense); YY_BREAK case 120: YY_RULE_SETUP -//#line 447 "scan.l" +#line 446 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LLOC", ! option_sense); YY_BREAK case 121: YY_RULE_SETUP -//#line 449 "scan.l" +#line 448 "scan.l" return TOK_EXTRA_TYPE; YY_BREAK case 122: YY_RULE_SETUP -//#line 450 "scan.l" +#line 449 "scan.l" return TOK_OUTFILE; YY_BREAK case 123: YY_RULE_SETUP -//#line 451 "scan.l" +#line 450 "scan.l" return TOK_PREFIX; YY_BREAK case 124: YY_RULE_SETUP -//#line 452 "scan.l" +#line 451 "scan.l" return TOK_YYCLASS; YY_BREAK case 125: YY_RULE_SETUP -//#line 453 "scan.l" +#line 452 "scan.l" return TOK_HEADER_FILE; YY_BREAK case 126: YY_RULE_SETUP -//#line 454 "scan.l" +#line 453 "scan.l" return TOK_TABLES_FILE; YY_BREAK case 127: YY_RULE_SETUP -//#line 455 "scan.l" +#line 454 "scan.l" { tablesverify = option_sense; if(!tablesext && option_sense) @@ -3066,11 +3073,11 @@ YY_RULE_SETUP YY_BREAK case 128: YY_RULE_SETUP -//#line 462 "scan.l" +#line 461 "scan.l" { if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -3083,7 +3090,7 @@ YY_RULE_SETUP YY_BREAK case 129: YY_RULE_SETUP -//#line 476 "scan.l" +#line 475 "scan.l" { format_synerr( _( "unrecognized %%option: %s" ), yytext ); @@ -3094,28 +3101,28 @@ YY_RULE_SETUP case 130: /* rule 130 can match eol */ YY_RULE_SETUP -//#line 483 "scan.l" +#line 482 "scan.l" ++linenum; BEGIN(INITIAL); YY_BREAK case 131: YY_RULE_SETUP -//#line 487 "scan.l" +#line 486 "scan.l" ++bracelevel; yyless( 2 ); /* eat only %{ */ YY_BREAK case 132: YY_RULE_SETUP -//#line 488 "scan.l" +#line 487 "scan.l" --bracelevel; yyless( 2 ); /* eat only %} */ YY_BREAK case 133: YY_RULE_SETUP -//#line 490 "scan.l" +#line 489 "scan.l" START_CODEBLOCK(true); /* indented code in prolog */ YY_BREAK case 134: YY_RULE_SETUP -//#line 492 "scan.l" +#line 491 "scan.l" { /* non-indented code */ if ( bracelevel <= 0 ) { @@ -3131,17 +3138,17 @@ YY_RULE_SETUP YY_BREAK case 135: YY_RULE_SETUP -//#line 505 "scan.l" +#line 504 "scan.l" ACTION_ECHO; YY_BREAK case 136: /* rule 136 can match eol */ YY_RULE_SETUP -//#line 506 "scan.l" +#line 505 "scan.l" ++linenum; ACTION_ECHO; YY_BREAK case YY_STATE_EOF(SECT2PROLOG): -//#line 508 "scan.l" +#line 507 "scan.l" { mark_prolog(); sectnum = 0; @@ -3153,12 +3160,12 @@ case YY_STATE_EOF(SECT2PROLOG): case 137: /* rule 137 can match eol */ YY_RULE_SETUP -//#line 516 "scan.l" +#line 515 "scan.l" ++linenum; /* allow blank lines in section 2 */ YY_BREAK case 138: YY_RULE_SETUP -//#line 518 "scan.l" +#line 517 "scan.l" { indented_code = false; doing_codeblock = true; @@ -3168,7 +3175,7 @@ YY_RULE_SETUP YY_BREAK case 139: YY_RULE_SETUP -//#line 525 "scan.l" +#line 524 "scan.l" { /* Allow "<" to appear in (?x) patterns. */ if (!sf_skip_ws()) @@ -3178,12 +3185,12 @@ YY_RULE_SETUP YY_BREAK case 140: YY_RULE_SETUP -//#line 531 "scan.l" +#line 530 "scan.l" return '^'; YY_BREAK case 141: YY_RULE_SETUP -//#line 532 "scan.l" +#line 531 "scan.l" BEGIN(QUOTE); return '"'; YY_BREAK case 142: @@ -3191,7 +3198,7 @@ case 142: (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 533 "scan.l" +#line 532 "scan.l" { BEGIN(NUM); if ( lex_compat || posix_compat ) @@ -3207,12 +3214,12 @@ YY_LINENO_REWIND_TO(yy_bp + 1); (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 540 "scan.l" +#line 539 "scan.l" return '$'; YY_BREAK case 144: YY_RULE_SETUP -//#line 542 "scan.l" +#line 541 "scan.l" { bracelevel = 1; BEGIN(PERCENT_BRACE_ACTION); @@ -3228,7 +3235,7 @@ YY_RULE_SETUP case 145: /* rule 145 can match eol */ YY_RULE_SETUP -//#line 553 "scan.l" +#line 552 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ @@ -3246,7 +3253,7 @@ YY_RULE_SETUP YY_BREAK case 146: YY_RULE_SETUP -//#line 568 "scan.l" +#line 567 "scan.l" { if (sf_skip_ws()){ @@ -3263,12 +3270,12 @@ YY_RULE_SETUP YY_BREAK case 147: YY_RULE_SETUP -//#line 582 "scan.l" +#line 581 "scan.l" /* allow indented rules */ ; YY_BREAK case 148: YY_RULE_SETUP -//#line 584 "scan.l" +#line 583 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ @@ -3294,7 +3301,7 @@ YY_RULE_SETUP case 149: /* rule 149 can match eol */ YY_RULE_SETUP -//#line 606 "scan.l" +#line 605 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ @@ -3316,15 +3323,15 @@ YY_RULE_SETUP } YY_BREAK case 150: -//#line 627 "scan.l" +#line 626 "scan.l" case 151: YY_RULE_SETUP -//#line 627 "scan.l" +#line 626 "scan.l" return EOF_OP; YY_BREAK case 152: YY_RULE_SETUP -//#line 629 "scan.l" +#line 628 "scan.l" { sectnum = 3; BEGIN(no_section3_escape ? SECT3_NOESCAPE : SECT3); @@ -3335,13 +3342,13 @@ YY_RULE_SETUP YY_BREAK case 153: YY_RULE_SETUP -//#line 637 "scan.l" +#line 636 "scan.l" { int cclval; if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -3385,12 +3392,12 @@ YY_RULE_SETUP YY_BREAK case 154: YY_RULE_SETUP -//#line 683 "scan.l" +#line 682 "scan.l" return CCL_OP_DIFF; YY_BREAK case 155: YY_RULE_SETUP -//#line 684 "scan.l" +#line 683 "scan.l" return CCL_OP_UNION; YY_BREAK /* Check for :space: at the end of the rule so we don't @@ -3400,7 +3407,7 @@ return CCL_OP_UNION; case 156: /* rule 156 can match eol */ YY_RULE_SETUP -//#line 691 "scan.l" +#line 690 "scan.l" { char *nmdefptr; int end_is_ws, end_ch; @@ -3410,7 +3417,7 @@ YY_RULE_SETUP if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -3451,7 +3458,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ YY_BREAK case 157: YY_RULE_SETUP -//#line 739 "scan.l" +#line 738 "scan.l" { if (sf_skip_ws()) yy_push_state(COMMENT_DISCARD); @@ -3464,7 +3471,7 @@ YY_RULE_SETUP YY_BREAK case 158: YY_RULE_SETUP -//#line 749 "scan.l" +#line 748 "scan.l" { if (lex_compat || posix_compat){ /* Push back the "?#" and treat it like a normal parens. */ @@ -3478,7 +3485,7 @@ YY_RULE_SETUP YY_BREAK case 159: YY_RULE_SETUP -//#line 759 "scan.l" +#line 758 "scan.l" { sf_push(); if (lex_compat || posix_compat) @@ -3491,12 +3498,12 @@ YY_RULE_SETUP YY_BREAK case 160: YY_RULE_SETUP -//#line 768 "scan.l" +#line 767 "scan.l" sf_push(); return '('; YY_BREAK case 161: YY_RULE_SETUP -//#line 769 "scan.l" +#line 768 "scan.l" { if (_sf_top_ix > 0) { sf_pop(); @@ -3507,12 +3514,12 @@ YY_RULE_SETUP YY_BREAK case 162: YY_RULE_SETUP -//#line 777 "scan.l" +#line 776 "scan.l" return (unsigned char) yytext[0]; YY_BREAK case 163: YY_RULE_SETUP -//#line 778 "scan.l" +#line 777 "scan.l" RETURNCHAR; YY_BREAK @@ -3520,17 +3527,17 @@ RETURNCHAR; case 164: /* rule 164 can match eol */ YY_RULE_SETUP -//#line 783 "scan.l" +#line 782 "scan.l" ++linenum; /* Allow blank lines & continuations */ YY_BREAK case 165: YY_RULE_SETUP -//#line 784 "scan.l" +#line 783 "scan.l" return (unsigned char) yytext[0]; YY_BREAK case 166: YY_RULE_SETUP -//#line 785 "scan.l" +#line 784 "scan.l" BEGIN(SECT2); return '>'; YY_BREAK case 167: @@ -3538,17 +3545,17 @@ case 167: (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 786 "scan.l" +#line 785 "scan.l" BEGIN(CARETISBOL); return '>'; YY_BREAK case 168: YY_RULE_SETUP -//#line 787 "scan.l" +#line 786 "scan.l" RETURNNAME; YY_BREAK case 169: YY_RULE_SETUP -//#line 788 "scan.l" +#line 787 "scan.l" { format_synerr( _( "bad : %s" ), yytext ); @@ -3557,24 +3564,24 @@ YY_RULE_SETUP case 170: YY_RULE_SETUP -//#line 794 "scan.l" +#line 793 "scan.l" BEGIN(SECT2); return '^'; YY_BREAK case 171: YY_RULE_SETUP -//#line 798 "scan.l" +#line 797 "scan.l" RETURNCHAR; YY_BREAK case 172: YY_RULE_SETUP -//#line 799 "scan.l" +#line 798 "scan.l" BEGIN(SECT2); return '"'; YY_BREAK case 173: /* rule 173 can match eol */ YY_RULE_SETUP -//#line 801 "scan.l" +#line 800 "scan.l" { synerr( _( "missing quote" ) ); BEGIN(SECT2); @@ -3586,49 +3593,49 @@ YY_RULE_SETUP case 174: YY_RULE_SETUP -//#line 810 "scan.l" +#line 809 "scan.l" BEGIN(SECT2); YY_BREAK case 175: YY_RULE_SETUP -//#line 811 "scan.l" +#line 810 "scan.l" BEGIN(GROUP_MINUS_PARAMS); YY_BREAK case 176: YY_RULE_SETUP -//#line 812 "scan.l" +#line 811 "scan.l" sf_set_case_ins(1); YY_BREAK case 177: YY_RULE_SETUP -//#line 813 "scan.l" +#line 812 "scan.l" sf_set_dot_all(1); YY_BREAK case 178: YY_RULE_SETUP -//#line 814 "scan.l" +#line 813 "scan.l" sf_set_skip_ws(1); YY_BREAK case 179: YY_RULE_SETUP -//#line 817 "scan.l" +#line 816 "scan.l" BEGIN(SECT2); YY_BREAK case 180: YY_RULE_SETUP -//#line 818 "scan.l" +#line 817 "scan.l" sf_set_case_ins(0); YY_BREAK case 181: YY_RULE_SETUP -//#line 819 "scan.l" +#line 818 "scan.l" sf_set_dot_all(0); YY_BREAK case 182: YY_RULE_SETUP -//#line 820 "scan.l" +#line 819 "scan.l" sf_set_skip_ws(0); YY_BREAK @@ -3638,7 +3645,7 @@ case 183: (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 824 "scan.l" +#line 823 "scan.l" BEGIN(CCL); return '^'; YY_BREAK case 184: @@ -3646,12 +3653,12 @@ case 184: (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 825 "scan.l" +#line 824 "scan.l" return '^'; YY_BREAK case 185: YY_RULE_SETUP -//#line 826 "scan.l" +#line 825 "scan.l" BEGIN(CCL); RETURNCHAR; YY_BREAK @@ -3661,23 +3668,23 @@ case 186: (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -//#line 830 "scan.l" +#line 829 "scan.l" return '-'; YY_BREAK case 187: YY_RULE_SETUP -//#line 831 "scan.l" +#line 830 "scan.l" RETURNCHAR; YY_BREAK case 188: YY_RULE_SETUP -//#line 832 "scan.l" +#line 831 "scan.l" BEGIN(SECT2); return ']'; YY_BREAK case 189: /* rule 189 can match eol */ YY_RULE_SETUP -//#line 833 "scan.l" +#line 832 "scan.l" { synerr( _( "bad character class" ) ); BEGIN(SECT2); @@ -3688,127 +3695,127 @@ YY_RULE_SETUP case 190: YY_RULE_SETUP -//#line 841 "scan.l" +#line 840 "scan.l" BEGIN(CCL); return CCE_ALNUM; YY_BREAK case 191: YY_RULE_SETUP -//#line 842 "scan.l" +#line 841 "scan.l" BEGIN(CCL); return CCE_ALPHA; YY_BREAK case 192: YY_RULE_SETUP -//#line 843 "scan.l" +#line 842 "scan.l" BEGIN(CCL); return CCE_BLANK; YY_BREAK case 193: YY_RULE_SETUP -//#line 844 "scan.l" +#line 843 "scan.l" BEGIN(CCL); return CCE_CNTRL; YY_BREAK case 194: YY_RULE_SETUP -//#line 845 "scan.l" +#line 844 "scan.l" BEGIN(CCL); return CCE_DIGIT; YY_BREAK case 195: YY_RULE_SETUP -//#line 846 "scan.l" +#line 845 "scan.l" BEGIN(CCL); return CCE_GRAPH; YY_BREAK case 196: YY_RULE_SETUP -//#line 847 "scan.l" +#line 846 "scan.l" BEGIN(CCL); return CCE_LOWER; YY_BREAK case 197: YY_RULE_SETUP -//#line 848 "scan.l" +#line 847 "scan.l" BEGIN(CCL); return CCE_PRINT; YY_BREAK case 198: YY_RULE_SETUP -//#line 849 "scan.l" +#line 848 "scan.l" BEGIN(CCL); return CCE_PUNCT; YY_BREAK case 199: YY_RULE_SETUP -//#line 850 "scan.l" +#line 849 "scan.l" BEGIN(CCL); return CCE_SPACE; YY_BREAK case 200: YY_RULE_SETUP -//#line 851 "scan.l" +#line 850 "scan.l" BEGIN(CCL); return CCE_UPPER; YY_BREAK case 201: YY_RULE_SETUP -//#line 852 "scan.l" +#line 851 "scan.l" BEGIN(CCL); return CCE_XDIGIT; YY_BREAK case 202: YY_RULE_SETUP -//#line 854 "scan.l" +#line 853 "scan.l" BEGIN(CCL); return CCE_NEG_ALNUM; YY_BREAK case 203: YY_RULE_SETUP -//#line 855 "scan.l" +#line 854 "scan.l" BEGIN(CCL); return CCE_NEG_ALPHA; YY_BREAK case 204: YY_RULE_SETUP -//#line 856 "scan.l" +#line 855 "scan.l" BEGIN(CCL); return CCE_NEG_BLANK; YY_BREAK case 205: YY_RULE_SETUP -//#line 857 "scan.l" +#line 856 "scan.l" BEGIN(CCL); return CCE_NEG_CNTRL; YY_BREAK case 206: YY_RULE_SETUP -//#line 858 "scan.l" +#line 857 "scan.l" BEGIN(CCL); return CCE_NEG_DIGIT; YY_BREAK case 207: YY_RULE_SETUP -//#line 859 "scan.l" +#line 858 "scan.l" BEGIN(CCL); return CCE_NEG_GRAPH; YY_BREAK case 208: YY_RULE_SETUP -//#line 860 "scan.l" +#line 859 "scan.l" BEGIN(CCL); return CCE_NEG_LOWER; YY_BREAK case 209: YY_RULE_SETUP -//#line 861 "scan.l" +#line 860 "scan.l" BEGIN(CCL); return CCE_NEG_PRINT; YY_BREAK case 210: YY_RULE_SETUP -//#line 862 "scan.l" +#line 861 "scan.l" BEGIN(CCL); return CCE_NEG_PUNCT; YY_BREAK case 211: YY_RULE_SETUP -//#line 863 "scan.l" +#line 862 "scan.l" BEGIN(CCL); return CCE_NEG_SPACE; YY_BREAK case 212: YY_RULE_SETUP -//#line 864 "scan.l" +#line 863 "scan.l" BEGIN(CCL); return CCE_NEG_UPPER; YY_BREAK case 213: YY_RULE_SETUP -//#line 865 "scan.l" +#line 864 "scan.l" BEGIN(CCL); return CCE_NEG_XDIGIT; YY_BREAK case 214: YY_RULE_SETUP -//#line 866 "scan.l" +#line 865 "scan.l" { format_synerr( _( "bad character class expression: %s" ), @@ -3820,7 +3827,7 @@ YY_RULE_SETUP case 215: YY_RULE_SETUP -//#line 875 "scan.l" +#line 874 "scan.l" { yylval = myctoi( yytext ); return NUMBER; @@ -3828,12 +3835,12 @@ YY_RULE_SETUP YY_BREAK case 216: YY_RULE_SETUP -//#line 880 "scan.l" +#line 879 "scan.l" return ','; YY_BREAK case 217: YY_RULE_SETUP -//#line 881 "scan.l" +#line 880 "scan.l" { BEGIN(SECT2); if ( lex_compat || posix_compat ) @@ -3844,7 +3851,7 @@ YY_RULE_SETUP YY_BREAK case 218: YY_RULE_SETUP -//#line 889 "scan.l" +#line 888 "scan.l" { synerr( _( "bad character inside {}'s" ) ); BEGIN(SECT2); @@ -3854,7 +3861,7 @@ YY_RULE_SETUP case 219: /* rule 219 can match eol */ YY_RULE_SETUP -//#line 895 "scan.l" +#line 894 "scan.l" { synerr( _( "missing }" ) ); BEGIN(SECT2); @@ -3866,18 +3873,18 @@ YY_RULE_SETUP case 220: YY_RULE_SETUP -//#line 905 "scan.l" +#line 904 "scan.l" bracelevel = 0; YY_BREAK case 221: YY_RULE_SETUP -//#line 907 "scan.l" +#line 906 "scan.l" ACTION_ECHO; yy_push_state( CODE_COMMENT ); YY_BREAK case 222: YY_RULE_SETUP -//#line 910 "scan.l" +#line 909 "scan.l" { ACTION_ECHO; CHECK_REJECT(yytext); @@ -3885,7 +3892,7 @@ YY_RULE_SETUP YY_BREAK case 223: YY_RULE_SETUP -//#line 914 "scan.l" +#line 913 "scan.l" { ACTION_ECHO; CHECK_YYMORE(yytext); @@ -3894,17 +3901,17 @@ YY_RULE_SETUP case 224: YY_RULE_SETUP -//#line 920 "scan.l" +#line 919 "scan.l" ACTION_ECHO; YY_BREAK case 225: /* rule 225 can match eol */ YY_RULE_SETUP -//#line 921 "scan.l" +#line 920 "scan.l" { ++linenum; ACTION_ECHO; - if (bracelevel == 0 || (doing_codeblock && indented_code)) { + if (bracelevel <= 0 || (doing_codeblock && indented_code)) { if ( doing_rule_action ) add_action( "\tYY_BREAK]""]\n" ); @@ -3918,82 +3925,82 @@ YY_RULE_SETUP case 226: YY_RULE_SETUP -//#line 937 "scan.l" +#line 936 "scan.l" ACTION_ECHO; ++bracelevel; YY_BREAK case 227: YY_RULE_SETUP -//#line 938 "scan.l" +#line 937 "scan.l" ACTION_ECHO; --bracelevel; YY_BREAK case 228: YY_RULE_SETUP -//#line 939 "scan.l" +#line 938 "scan.l" ACTION_ECHO; YY_BREAK case 229: YY_RULE_SETUP -//#line 940 "scan.l" +#line 939 "scan.l" ACTION_ECHO; YY_BREAK case 230: YY_RULE_SETUP -//#line 941 "scan.l" +#line 940 "scan.l" ACTION_ECHO; /* character constant */ YY_BREAK case 231: YY_RULE_SETUP -//#line 942 "scan.l" +#line 941 "scan.l" ACTION_ECHO; BEGIN(CHARACTER_CONSTANT); YY_BREAK case 232: YY_RULE_SETUP -//#line 943 "scan.l" +#line 942 "scan.l" ACTION_ECHO; BEGIN(ACTION_STRING); YY_BREAK case 233: /* rule 233 can match eol */ YY_RULE_SETUP -//#line 944 "scan.l" +#line 943 "scan.l" { - ++linenum; - ACTION_ECHO; - if (bracelevel == 0) { - if ( doing_rule_action ) - add_action( "\tYY_BREAK]""]\n" ); + ++linenum; + ACTION_ECHO; + if (bracelevel <= 0) { + if ( doing_rule_action ) + add_action( "\tYY_BREAK]""]\n" ); - doing_rule_action = false; - BEGIN(SECT2); - } - } + doing_rule_action = false; + BEGIN(SECT2); + } + } YY_BREAK case 234: YY_RULE_SETUP -//#line 955 "scan.l" +#line 954 "scan.l" ACTION_ECHO; YY_BREAK case 235: YY_RULE_SETUP -//#line 959 "scan.l" +#line 958 "scan.l" ACTION_ECHO; YY_BREAK case 236: YY_RULE_SETUP -//#line 960 "scan.l" +#line 959 "scan.l" ACTION_ECHO; BEGIN(ACTION); YY_BREAK case 237: YY_RULE_SETUP -//#line 963 "scan.l" +#line 962 "scan.l" ACTION_ECHO; YY_BREAK case 238: YY_RULE_SETUP -//#line 964 "scan.l" +#line 963 "scan.l" ACTION_ECHO; BEGIN(ACTION); YY_BREAK @@ -4001,24 +4008,24 @@ ACTION_ECHO; BEGIN(ACTION); case 239: /* rule 239 can match eol */ YY_RULE_SETUP -//#line 967 "scan.l" +#line 966 "scan.l" ACTION_ECHO; YY_BREAK case 240: /* rule 240 can match eol */ YY_RULE_SETUP -//#line 968 "scan.l" +#line 967 "scan.l" ACTION_ECHO; YY_BREAK case 241: /* rule 241 can match eol */ YY_RULE_SETUP -//#line 969 "scan.l" -++linenum; ACTION_ECHO; BEGIN(ACTION); +#line 968 "scan.l" +++linenum; ACTION_ECHO; if (bracelevel <= 0) { BEGIN(SECT2); } else { BEGIN(ACTION); } YY_BREAK case 242: YY_RULE_SETUP -//#line 970 "scan.l" +#line 969 "scan.l" ACTION_ECHO; YY_BREAK @@ -4028,7 +4035,7 @@ case YY_STATE_EOF(COMMENT_DISCARD): case YY_STATE_EOF(ACTION): case YY_STATE_EOF(ACTION_STRING): case YY_STATE_EOF(CHARACTER_CONSTANT): -//#line 973 "scan.l" +#line 972 "scan.l" { synerr( _( "EOF encountered inside an action" ) ); yyterminate(); @@ -4037,7 +4044,7 @@ case YY_STATE_EOF(CHARACTER_CONSTANT): case YY_STATE_EOF(EXTENDED_COMMENT): case YY_STATE_EOF(GROUP_WITH_PARAMS): case YY_STATE_EOF(GROUP_MINUS_PARAMS): -//#line 978 "scan.l" +#line 977 "scan.l" { synerr( _( "EOF encountered inside pattern" ) ); yyterminate(); @@ -4045,7 +4052,7 @@ case YY_STATE_EOF(GROUP_MINUS_PARAMS): YY_BREAK case 243: YY_RULE_SETUP -//#line 983 "scan.l" +#line 982 "scan.l" { yylval = myesc( (unsigned char *) yytext ); @@ -4058,27 +4065,27 @@ YY_RULE_SETUP case 244: YY_RULE_SETUP -//#line 993 "scan.l" +#line 992 "scan.l" fputs(escaped_qstart, yyout); YY_BREAK case 245: YY_RULE_SETUP -//#line 994 "scan.l" +#line 993 "scan.l" fputs(escaped_qend, yyout); YY_BREAK case 246: /* rule 246 can match eol */ YY_RULE_SETUP -//#line 995 "scan.l" +#line 994 "scan.l" ECHO; YY_BREAK case 247: YY_RULE_SETUP -//#line 996 "scan.l" +#line 995 "scan.l" ECHO; YY_BREAK case YY_STATE_EOF(SECT3): -//#line 997 "scan.l" +#line 996 "scan.l" { sectnum = 0; yyterminate(); @@ -4088,27 +4095,27 @@ case YY_STATE_EOF(SECT3): case 248: YY_RULE_SETUP -//#line 1003 "scan.l" +#line 1002 "scan.l" fprintf(yyout, "[""[%s]""]", escaped_qstart); YY_BREAK case 249: YY_RULE_SETUP -//#line 1004 "scan.l" +#line 1003 "scan.l" fprintf(yyout, "[""[%s]""]", escaped_qend); YY_BREAK case 250: /* rule 250 can match eol */ YY_RULE_SETUP -//#line 1005 "scan.l" +#line 1004 "scan.l" ECHO; YY_BREAK case 251: YY_RULE_SETUP -//#line 1006 "scan.l" +#line 1005 "scan.l" ECHO; YY_BREAK case YY_STATE_EOF(SECT3_NOESCAPE): -//#line 1007 "scan.l" +#line 1006 "scan.l" { sectnum = 0; yyterminate(); @@ -4118,15 +4125,15 @@ case YY_STATE_EOF(SECT3_NOESCAPE): case 252: /* rule 252 can match eol */ YY_RULE_SETUP -//#line 1012 "scan.l" +#line 1011 "scan.l" format_synerr( _( "bad character: %s" ), yytext ); YY_BREAK case 253: YY_RULE_SETUP -//#line 1014 "scan.l" +#line 1013 "scan.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -//#line 4128 "scan.c" +#line 4135 "scan.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(SECT2): case YY_STATE_EOF(CODEBLOCK): @@ -4217,7 +4224,7 @@ case YY_STATE_EOF(LINEDIR): { (yy_did_buffer_switch_on_eof) = 0; - if ( yywrap( ) ) + if ( yywrap( ) ) { /* Note: because we've taken care in * yy_get_next_buffer() to have set up @@ -4349,7 +4356,8 @@ static int yy_get_next_buffer (void) b->yy_ch_buf = (char *) /* Include room in for 2 EOB chars. */ - yyrealloc((void *) b->yy_ch_buf,(yy_size_t) (b->yy_buf_size + 2) ); + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); } else /* Can't grow it, we don't own it. */ @@ -4381,7 +4389,7 @@ static int yy_get_next_buffer (void) if ( number_to_move == YY_MORE_ADJ ) { ret_val = EOB_ACT_END_OF_FILE; - yyrestart(yyin ); + yyrestart( yyin ); } else @@ -4398,9 +4406,12 @@ static int yy_get_next_buffer (void) if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { /* Extend the array by 50%, plus the number we really need. */ int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,(yy_size_t) new_size ); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); } (yy_n_chars) += number_to_move; @@ -4552,13 +4563,13 @@ static int yy_get_next_buffer (void) */ /* Reset buffer status. */ - yyrestart(yyin ); + yyrestart( yyin ); /*FALLTHROUGH*/ case EOB_ACT_END_OF_FILE: { - if ( yywrap( ) ) + if ( yywrap( ) ) return 0; if ( ! (yy_did_buffer_switch_on_eof) ) @@ -4598,11 +4609,11 @@ static int yy_get_next_buffer (void) if ( ! YY_CURRENT_BUFFER ){ yyensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer(yyin,YY_BUF_SIZE ); + yy_create_buffer( yyin, YY_BUF_SIZE ); } - yy_init_buffer(YY_CURRENT_BUFFER,input_file ); - yy_load_buffer_state( ); + yy_init_buffer( YY_CURRENT_BUFFER, input_file ); + yy_load_buffer_state( ); } /** Switch to a different input buffer. @@ -4630,7 +4641,7 @@ static int yy_get_next_buffer (void) } YY_CURRENT_BUFFER_LVALUE = new_buffer; - yy_load_buffer_state( ); + yy_load_buffer_state( ); /* We don't actually know whether we did this switch during * EOF (yywrap()) processing, but the only time this flag @@ -4658,7 +4669,7 @@ static void yy_load_buffer_state (void) { YY_BUFFER_STATE b; - b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); @@ -4667,13 +4678,13 @@ static void yy_load_buffer_state (void) /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yyalloc((yy_size_t) (b->yy_buf_size + 2) ); + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); if ( ! b->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); b->yy_is_our_buffer = 1; - yy_init_buffer(b,file ); + yy_init_buffer( b, file ); return b; } @@ -4692,9 +4703,9 @@ static void yy_load_buffer_state (void) YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yyfree((void *) b->yy_ch_buf ); + yyfree( (void *) b->yy_ch_buf ); - yyfree((void *) b ); + yyfree( (void *) b ); } /* Initializes or reinitializes a buffer. @@ -4706,7 +4717,7 @@ static void yy_load_buffer_state (void) { int oerrno = errno; - yy_flush_buffer(b ); + yy_flush_buffer( b ); b->yy_input_file = file; b->yy_fill_buffer = 1; @@ -4749,7 +4760,7 @@ static void yy_load_buffer_state (void) b->yy_buffer_status = YY_BUFFER_NEW; if ( b == YY_CURRENT_BUFFER ) - yy_load_buffer_state( ); + yy_load_buffer_state( ); } /** Pushes the new state onto the stack. The new state becomes @@ -4780,7 +4791,7 @@ void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) YY_CURRENT_BUFFER_LVALUE = new_buffer; /* copied from yy_switch_to_buffer. */ - yy_load_buffer_state( ); + yy_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } @@ -4799,7 +4810,7 @@ void yypop_buffer_state (void) --(yy_buffer_stack_top); if (YY_CURRENT_BUFFER) { - yy_load_buffer_state( ); + yy_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } } @@ -4823,9 +4834,9 @@ static void yyensure_buffer_stack (void) ); if ( ! (yy_buffer_stack) ) YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); - + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); - + (yy_buffer_stack_max) = num_to_alloc; (yy_buffer_stack_top) = 0; return; @@ -4854,7 +4865,7 @@ static void yyensure_buffer_stack (void) * @param base the character buffer * @param size the size in bytes of the character buffer * - * @return the newly allocated buffer state object. + * @return the newly allocated buffer state object. */ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) { @@ -4866,7 +4877,7 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) /* They forgot to leave room for the EOB's. */ return NULL; - b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); @@ -4880,7 +4891,7 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) b->yy_fill_buffer = 0; b->yy_buffer_status = YY_BUFFER_NEW; - yy_switch_to_buffer(b ); + yy_switch_to_buffer( b ); return b; } @@ -4896,7 +4907,7 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) YY_BUFFER_STATE yy_scan_string (const char * yystr ) { - return yy_scan_bytes(yystr,(int) strlen(yystr) ); + return yy_scan_bytes( yystr, (int) strlen(yystr) ); } /** Setup the input buffer state to scan the given bytes. The next call to yylex() will @@ -4915,7 +4926,7 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) /* Get memory for full buffer, including space for trailing EOB's. */ n = (yy_size_t) (_yybytes_len + 2); - buf = (char *) yyalloc(n ); + buf = (char *) yyalloc( n ); if ( ! buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); @@ -4924,7 +4935,7 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = yy_scan_buffer(buf,n ); + b = yy_scan_buffer( buf, n ); if ( ! b ) YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); @@ -4946,10 +4957,11 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int ); if ( ! (yy_start_stack) ) - (yy_start_stack) = (int *) yyalloc(new_size ); + (yy_start_stack) = (int *) yyalloc( new_size ); else - (yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size ); + (yy_start_stack) = (int *) yyrealloc( + (void *) (yy_start_stack), new_size ); if ( ! (yy_start_stack) ) YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); @@ -4974,7 +4986,7 @@ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) static void yynoreturn yy_fatal_error (const char* msg ) { - (void) fprintf( stderr, "%s\n", msg ); + fprintf( stderr, "%s\n", msg ); exit( YY_EXIT_FAILURE ); } @@ -5002,7 +5014,7 @@ static void yynoreturn yy_fatal_error (const char* msg ) */ int yyget_lineno (void) { - + return yylineno; } @@ -5113,7 +5125,7 @@ int yylex_destroy (void) /* Pop the buffer stack, destroying each element. */ while(YY_CURRENT_BUFFER){ - yy_delete_buffer(YY_CURRENT_BUFFER ); + yy_delete_buffer( YY_CURRENT_BUFFER ); YY_CURRENT_BUFFER_LVALUE = NULL; yypop_buffer_state(); } @@ -5123,7 +5135,7 @@ int yylex_destroy (void) (yy_buffer_stack) = NULL; /* Destroy the start condition stack. */ - yyfree((yy_start_stack) ); + yyfree( (yy_start_stack) ); (yy_start_stack) = NULL; /* Reset the globals. This is important in a non-reentrant scanner so the next time @@ -5183,7 +5195,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -//#line 1014 "scan.l" +#line 1013 "scan.l" diff --git a/flex/src/scan.l b/flex/src/scan.l index 7c9f092..66db864 100644 --- a/flex/src/scan.l +++ b/flex/src/scan.l @@ -74,7 +74,7 @@ extern const char *escaped_qstart, *escaped_qend; #define RETURNNAME \ if(yyleng < MAXLINE) \ { \ - strcpy( nmstr, yytext ); \ + strncpy( nmstr, yytext, sizeof(nmstr) ); \ return NAME; \ } \ else \ @@ -207,7 +207,7 @@ M4QEND "]""]" ^{NAME} { if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -263,8 +263,7 @@ M4QEND "]""]" } . /* ignore spurious characters */ } -{ +{ {M4QSTART} ACTION_ECHO_QSTART; {M4QEND} ACTION_ECHO_QEND; } @@ -319,7 +318,7 @@ COMMENT,CODE_COMMENT>{ {NOT_WS}[^\r\n]* { if(yyleng < MAXLINE) { - strcpy( nmdef, yytext ); + strncpy( nmdef, yytext, sizeof(nmdef) ); } else { @@ -461,7 +460,7 @@ COMMENT,CODE_COMMENT>{ \"[^"\n]*\" { if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -638,7 +637,7 @@ COMMENT,CODE_COMMENT>{ if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -696,7 +695,7 @@ COMMENT,CODE_COMMENT>{ if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -920,7 +919,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ {NL} { ++linenum; ACTION_ECHO; - if (bracelevel == 0 || (doing_codeblock && indented_code)) { + if (bracelevel <= 0 || (doing_codeblock && indented_code)) { if ( doing_rule_action ) add_action( "\tYY_BREAK]""]\n" ); @@ -941,16 +940,16 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ "'" ACTION_ECHO; BEGIN(CHARACTER_CONSTANT); \" ACTION_ECHO; BEGIN(ACTION_STRING); {NL} { - ++linenum; - ACTION_ECHO; - if (bracelevel == 0) { - if ( doing_rule_action ) - add_action( "\tYY_BREAK]""]\n" ); + ++linenum; + ACTION_ECHO; + if (bracelevel <= 0) { + if ( doing_rule_action ) + add_action( "\tYY_BREAK]""]\n" ); - doing_rule_action = false; - BEGIN(SECT2); - } - } + doing_rule_action = false; + BEGIN(SECT2); + } + } . ACTION_ECHO; } @@ -965,7 +964,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ { (\\\n)* ACTION_ECHO; \\(\\\n)*. ACTION_ECHO; - {NL} ++linenum; ACTION_ECHO; BEGIN(ACTION); + {NL} ++linenum; ACTION_ECHO; if (bracelevel <= 0) { BEGIN(SECT2); } else { BEGIN(ACTION); } . ACTION_ECHO; } diff --git a/flex/src/skel.c b/flex/src/skel.c index f449468..0b43266 100644 --- a/flex/src/skel.c +++ b/flex/src/skel.c @@ -3,62 +3,14 @@ #include "flexdef.h" const char *skel[] = { - "%# -*-C-*- vi: set ft=c:", - "%# This file is processed in several stages.", - "%# Here are the stages, as best as I can describe:", - "%#", - "%# 1. flex.skl is processed through GNU m4 during the", - "%# pre-compilation stage of flex. Only macros starting", - "%# with `m4preproc_' are processed, and quoting is normal.", - "%#", - "%# 2. The preprocessed skeleton is translated verbatim into a", - "%# C array, saved as \"skel.c\" and compiled into the flex binary.", - "%#", - "%# 3. At runtime, the skeleton is generated and filtered (again)", - "%# through m4. Macros beginning with `m4_' will be processed.", - "%# The quoting is \"[[\" and \"]]\" so we don't interfere with", - "%# user code.", - "%#", - "%# All generate macros for the m4 stage contain the text \"m4\" or \"M4\"", - "%# in them. This is to distinguish them from CPP macros.", - "%# The exception to this rule is YY_G, which is an m4 macro,", - "%# but it needs to be remain short because it is used everywhere.", - "%#", "/* A lexical scanner generated by flex */", "", - "%# Macros for preproc stage.", "", "", - "%# Macros for runtime processing stage.", "m4_changecom", "m4_changequote", "m4_changequote([[, ]])", "", - "%#", - "%# Lines in this skeleton starting with a \"%\" character are \"control lines\"", - "%# and affect the generation of the scanner. The possible control codes are", - "%# listed and processed in misc.c.", - "%#", - "%# %# - A comment. The current line is omitted from the generated scanner.", - "%# %if-c++-only - The following lines are printed for C++ scanners ONLY.", - "%# %if-c-only - The following lines are NOT printed for C++ scanners.", - "%# %if-c-or-c++ - The following lines are printed in BOTH C and C++ scanners.", - "%# %if-reentrant - Print for reentrant scanners.(push)", - "%# %if-not-reentrant - Print for non-reentrant scanners. (push)", - "%# %if-bison-bridge - Print for bison-bridge. (push)", - "%# %if-not-bison-bridge - Print for non-bison-bridge. (push)", - "%# %endif - pop from the previous if code.", - "%# %% - A stop-point, where code is inserted by flex.", - "%# Each stop-point is numbered here and also in the code generator.", - "%# (See gen.c, etc. for details.)", - "%# %not-for-header - Begin code that should NOT appear in a \".h\" file.", - "%# %ok-for-header - %c and %e are used for building a header file.", - "%# %if-tables-serialization", - "%#", - "%# All control-lines EXCEPT comment lines (\"%#\") will be inserted into", - "%# the generated scanner as a C-style comment. This is to aid those who", - "%# edit the skeleton.", - "%#", "", "%not-for-header", "%if-c-only", @@ -66,11 +18,17 @@ const char *skel[] = { "m4_ifelse(M4_YY_PREFIX,yy,,", "#define yy_create_buffer M4_YY_PREFIX[[_create_buffer]]", "#define yy_delete_buffer M4_YY_PREFIX[[_delete_buffer]]", - "#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]", + "#define yy_scan_buffer M4_YY_PREFIX[[_scan_buffer]]", + "#define yy_scan_string M4_YY_PREFIX[[_scan_string]]", + "#define yy_scan_bytes M4_YY_PREFIX[[_scan_bytes]]", "#define yy_init_buffer M4_YY_PREFIX[[_init_buffer]]", "#define yy_flush_buffer M4_YY_PREFIX[[_flush_buffer]]", "#define yy_load_buffer_state M4_YY_PREFIX[[_load_buffer_state]]", "#define yy_switch_to_buffer M4_YY_PREFIX[[_switch_to_buffer]]", + "#define yypush_buffer_state M4_YY_PREFIX[[push_buffer_state]]", + "#define yypop_buffer_state M4_YY_PREFIX[[pop_buffer_state]]", + "#define yyensure_buffer_stack M4_YY_PREFIX[[ensure_buffer_stack]]", + "#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]", "#define yyin M4_YY_PREFIX[[in]]", "#define yyleng M4_YY_PREFIX[[leng]]", "#define yylex M4_YY_PREFIX[[lex]]", @@ -90,22 +48,17 @@ const char *skel[] = { "#define FLEX_SCANNER", "#define YY_FLEX_MAJOR_VERSION 2", "#define YY_FLEX_MINOR_VERSION 6", - "#define YY_FLEX_SUBMINOR_VERSION 3", + "#define YY_FLEX_SUBMINOR_VERSION 4", "#if YY_FLEX_SUBMINOR_VERSION > 0", "#define FLEX_BETA", "#endif", "", - "%# Some negated symbols", "m4_ifdef( [[M4_YY_IN_HEADER]], , [[m4_define([[M4_YY_NOT_IN_HEADER]], [[]])]])", "m4_ifdef( [[M4_YY_REENTRANT]], , [[m4_define([[M4_YY_NOT_REENTRANT]], [[]])]])", "", - "%# This is the m4 way to say \"(stack_used || is_reentrant)", "m4_ifdef( [[M4_YY_STACK_USED]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]])", "m4_ifdef( [[M4_YY_REENTRANT]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]])", "", - "%# Prefixes.", - "%# The complexity here is necessary so that m4 preserves", - "%# the argument lists to each C function.", "", "", "m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define([[M4_YY_PREFIX]], [[yy]])]])", @@ -123,126 +76,372 @@ const char *skel[] = { "%endif", "", "%if-c-only", - " [[#define yy_create_buffer ]]M4_YY_PREFIX[[_create_buffer]]", - "m4_define([[yy_create_buffer]], [[M4_YY_PREFIX[[_create_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_delete_buffer ]]M4_YY_PREFIX[[_delete_buffer]]", - "m4_define([[yy_delete_buffer]], [[M4_YY_PREFIX[[_delete_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_scan_buffer ]]M4_YY_PREFIX[[_scan_buffer]]", - "m4_define([[yy_scan_buffer]], [[M4_YY_PREFIX[[_scan_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_scan_string ]]M4_YY_PREFIX[[_scan_string]]", - "m4_define([[yy_scan_string]], [[M4_YY_PREFIX[[_scan_string]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_scan_bytes ]]M4_YY_PREFIX[[_scan_bytes]]", - "m4_define([[yy_scan_bytes]], [[M4_YY_PREFIX[[_scan_bytes]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_init_buffer ]]M4_YY_PREFIX[[_init_buffer]]", - "m4_define([[yy_init_buffer]], [[M4_YY_PREFIX[[_init_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_flush_buffer ]]M4_YY_PREFIX[[_flush_buffer]]", - "m4_define([[yy_flush_buffer]], [[M4_YY_PREFIX[[_flush_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_load_buffer_state ]]M4_YY_PREFIX[[_load_buffer_state]]", - "m4_define([[yy_load_buffer_state]], [[M4_YY_PREFIX[[_load_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_switch_to_buffer ]]M4_YY_PREFIX[[_switch_to_buffer]]", - "m4_define([[yy_switch_to_buffer]], [[M4_YY_PREFIX[[_switch_to_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yypush_buffer_state ]]M4_YY_PREFIX[[push_buffer_state]]", - "m4_define([[yypush_buffer_state]], [[M4_YY_PREFIX[[push_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yypop_buffer_state ]]M4_YY_PREFIX[[pop_buffer_state]]", - "m4_define([[yypop_buffer_state]], [[M4_YY_PREFIX[[pop_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyensure_buffer_stack ]]M4_YY_PREFIX[[ensure_buffer_stack]]", - "m4_define([[yyensure_buffer_stack]], [[M4_YY_PREFIX[[ensure_buffer_stack]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yylex ]]M4_YY_PREFIX[[lex]]", - "m4_define([[yylex]], [[M4_YY_PREFIX[[lex]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyrestart ]]M4_YY_PREFIX[[restart]]", - "m4_define([[yyrestart]], [[M4_YY_PREFIX[[restart]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yylex_init ]]M4_YY_PREFIX[[lex_init]]", - "m4_define([[yylex_init]], [[M4_YY_PREFIX[[lex_init]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yylex_init_extra ]]M4_YY_PREFIX[[lex_init_extra]]", - "m4_define([[yylex_init_extra]], [[M4_YY_PREFIX[[lex_init_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yylex_destroy ]]M4_YY_PREFIX[[lex_destroy]]", - "m4_define([[yylex_destroy]], [[M4_YY_PREFIX[[lex_destroy]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_debug ]]M4_YY_PREFIX[[get_debug]]", - "m4_define([[yyget_debug]], [[M4_YY_PREFIX[[get_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_debug ]]M4_YY_PREFIX[[set_debug]]", - "m4_define([[yyset_debug]], [[M4_YY_PREFIX[[set_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_extra ]]M4_YY_PREFIX[[get_extra]]", - "m4_define([[yyget_extra]], [[M4_YY_PREFIX[[get_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_extra ]]M4_YY_PREFIX[[set_extra]]", - "m4_define([[yyset_extra]], [[M4_YY_PREFIX[[set_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_in ]]M4_YY_PREFIX[[get_in]]", - "m4_define([[yyget_in]], [[M4_YY_PREFIX[[get_in]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_in ]]M4_YY_PREFIX[[set_in]]", - "m4_define([[yyset_in]], [[M4_YY_PREFIX[[set_in]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_out ]]M4_YY_PREFIX[[get_out]]", - "m4_define([[yyget_out]], [[M4_YY_PREFIX[[get_out]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_out ]]M4_YY_PREFIX[[set_out]]", - "m4_define([[yyset_out]], [[M4_YY_PREFIX[[set_out]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_leng ]]M4_YY_PREFIX[[get_leng]]", - "m4_define([[yyget_leng]], [[M4_YY_PREFIX[[get_leng]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_text ]]M4_YY_PREFIX[[get_text]]", - "m4_define([[yyget_text]], [[M4_YY_PREFIX[[get_text]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyget_lineno ]]M4_YY_PREFIX[[get_lineno]]", - "m4_define([[yyget_lineno]], [[M4_YY_PREFIX[[get_lineno]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_lineno ]]M4_YY_PREFIX[[set_lineno]]", - "m4_define([[yyset_lineno]], [[M4_YY_PREFIX[[set_lineno]]m4_ifelse($#,0,,[[($@)]])]])", + "m4_ifelse(M4_YY_PREFIX,yy,,", + " ", + "[[#ifdef yy_create_buffer", + "#define ]]M4_YY_PREFIX[[_create_buffer_ALREADY_DEFINED", + "#else", + "#define yy_create_buffer ]]M4_YY_PREFIX[[_create_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_delete_buffer", + "#define ]]M4_YY_PREFIX[[_delete_buffer_ALREADY_DEFINED", + "#else", + "#define yy_delete_buffer ]]M4_YY_PREFIX[[_delete_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_buffer", + "#define ]]M4_YY_PREFIX[[_scan_buffer_ALREADY_DEFINED", + "#else", + "#define yy_scan_buffer ]]M4_YY_PREFIX[[_scan_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_string", + "#define ]]M4_YY_PREFIX[[_scan_string_ALREADY_DEFINED", + "#else", + "#define yy_scan_string ]]M4_YY_PREFIX[[_scan_string", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_bytes", + "#define ]]M4_YY_PREFIX[[_scan_bytes_ALREADY_DEFINED", + "#else", + "#define yy_scan_bytes ]]M4_YY_PREFIX[[_scan_bytes", + "#endif]]", + "", + " ", + "[[#ifdef yy_init_buffer", + "#define ]]M4_YY_PREFIX[[_init_buffer_ALREADY_DEFINED", + "#else", + "#define yy_init_buffer ]]M4_YY_PREFIX[[_init_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_flush_buffer", + "#define ]]M4_YY_PREFIX[[_flush_buffer_ALREADY_DEFINED", + "#else", + "#define yy_flush_buffer ]]M4_YY_PREFIX[[_flush_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_load_buffer_state", + "#define ]]M4_YY_PREFIX[[_load_buffer_state_ALREADY_DEFINED", + "#else", + "#define yy_load_buffer_state ]]M4_YY_PREFIX[[_load_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yy_switch_to_buffer", + "#define ]]M4_YY_PREFIX[[_switch_to_buffer_ALREADY_DEFINED", + "#else", + "#define yy_switch_to_buffer ]]M4_YY_PREFIX[[_switch_to_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yypush_buffer_state", + "#define ]]M4_YY_PREFIX[[push_buffer_state_ALREADY_DEFINED", + "#else", + "#define yypush_buffer_state ]]M4_YY_PREFIX[[push_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yypop_buffer_state", + "#define ]]M4_YY_PREFIX[[pop_buffer_state_ALREADY_DEFINED", + "#else", + "#define yypop_buffer_state ]]M4_YY_PREFIX[[pop_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yyensure_buffer_stack", + "#define ]]M4_YY_PREFIX[[ensure_buffer_stack_ALREADY_DEFINED", + "#else", + "#define yyensure_buffer_stack ]]M4_YY_PREFIX[[ensure_buffer_stack", + "#endif]]", + "", + " ", + "[[#ifdef yylex", + "#define ]]M4_YY_PREFIX[[lex_ALREADY_DEFINED", + "#else", + "#define yylex ]]M4_YY_PREFIX[[lex", + "#endif]]", + "", + " ", + "[[#ifdef yyrestart", + "#define ]]M4_YY_PREFIX[[restart_ALREADY_DEFINED", + "#else", + "#define yyrestart ]]M4_YY_PREFIX[[restart", + "#endif]]", + "", + " ", + "[[#ifdef yylex_init", + "#define ]]M4_YY_PREFIX[[lex_init_ALREADY_DEFINED", + "#else", + "#define yylex_init ]]M4_YY_PREFIX[[lex_init", + "#endif]]", + "", + " ", + "[[#ifdef yylex_init_extra", + "#define ]]M4_YY_PREFIX[[lex_init_extra_ALREADY_DEFINED", + "#else", + "#define yylex_init_extra ]]M4_YY_PREFIX[[lex_init_extra", + "#endif]]", + "", + " ", + "[[#ifdef yylex_destroy", + "#define ]]M4_YY_PREFIX[[lex_destroy_ALREADY_DEFINED", + "#else", + "#define yylex_destroy ]]M4_YY_PREFIX[[lex_destroy", + "#endif]]", + "", + " ", + "[[#ifdef yyget_debug", + "#define ]]M4_YY_PREFIX[[get_debug_ALREADY_DEFINED", + "#else", + "#define yyget_debug ]]M4_YY_PREFIX[[get_debug", + "#endif]]", + "", + " ", + "[[#ifdef yyset_debug", + "#define ]]M4_YY_PREFIX[[set_debug_ALREADY_DEFINED", + "#else", + "#define yyset_debug ]]M4_YY_PREFIX[[set_debug", + "#endif]]", + "", + " ", + "[[#ifdef yyget_extra", + "#define ]]M4_YY_PREFIX[[get_extra_ALREADY_DEFINED", + "#else", + "#define yyget_extra ]]M4_YY_PREFIX[[get_extra", + "#endif]]", + "", + " ", + "[[#ifdef yyset_extra", + "#define ]]M4_YY_PREFIX[[set_extra_ALREADY_DEFINED", + "#else", + "#define yyset_extra ]]M4_YY_PREFIX[[set_extra", + "#endif]]", + "", + " ", + "[[#ifdef yyget_in", + "#define ]]M4_YY_PREFIX[[get_in_ALREADY_DEFINED", + "#else", + "#define yyget_in ]]M4_YY_PREFIX[[get_in", + "#endif]]", + "", + " ", + "[[#ifdef yyset_in", + "#define ]]M4_YY_PREFIX[[set_in_ALREADY_DEFINED", + "#else", + "#define yyset_in ]]M4_YY_PREFIX[[set_in", + "#endif]]", + "", + " ", + "[[#ifdef yyget_out", + "#define ]]M4_YY_PREFIX[[get_out_ALREADY_DEFINED", + "#else", + "#define yyget_out ]]M4_YY_PREFIX[[get_out", + "#endif]]", + "", + " ", + "[[#ifdef yyset_out", + "#define ]]M4_YY_PREFIX[[set_out_ALREADY_DEFINED", + "#else", + "#define yyset_out ]]M4_YY_PREFIX[[set_out", + "#endif]]", + "", + " ", + "[[#ifdef yyget_leng", + "#define ]]M4_YY_PREFIX[[get_leng_ALREADY_DEFINED", + "#else", + "#define yyget_leng ]]M4_YY_PREFIX[[get_leng", + "#endif]]", + "", + " ", + "[[#ifdef yyget_text", + "#define ]]M4_YY_PREFIX[[get_text_ALREADY_DEFINED", + "#else", + "#define yyget_text ]]M4_YY_PREFIX[[get_text", + "#endif]]", + "", + " ", + "[[#ifdef yyget_lineno", + "#define ]]M4_YY_PREFIX[[get_lineno_ALREADY_DEFINED", + "#else", + "#define yyget_lineno ]]M4_YY_PREFIX[[get_lineno", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lineno", + "#define ]]M4_YY_PREFIX[[set_lineno_ALREADY_DEFINED", + "#else", + "#define yyset_lineno ]]M4_YY_PREFIX[[set_lineno", + "#endif]]", + "", " m4_ifdef( [[M4_YY_REENTRANT]],", " [[", - " [[#define yyget_column ]]M4_YY_PREFIX[[get_column]]", - "m4_define([[yyget_column]], [[M4_YY_PREFIX[[get_column]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_column ]]M4_YY_PREFIX[[set_column]]", - "m4_define([[yyset_column]], [[M4_YY_PREFIX[[set_column]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_column", + "#define ]]M4_YY_PREFIX[[get_column_ALREADY_DEFINED", + "#else", + "#define yyget_column ]]M4_YY_PREFIX[[get_column", + "#endif]]", + "", + " ", + "[[#ifdef yyset_column", + "#define ]]M4_YY_PREFIX[[set_column_ALREADY_DEFINED", + "#else", + "#define yyset_column ]]M4_YY_PREFIX[[set_column", + "#endif]]", + "", " ]])", - " [[#define yywrap ]]M4_YY_PREFIX[[wrap]]", - "m4_define([[yywrap]], [[M4_YY_PREFIX[[wrap]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yywrap", + "#define ]]M4_YY_PREFIX[[wrap_ALREADY_DEFINED", + "#else", + "#define yywrap ]]M4_YY_PREFIX[[wrap", + "#endif]]", + "", + ")", "%endif", "", "m4_ifdef( [[M4_YY_BISON_LVAL]],", "[[", - " [[#define yyget_lval ]]M4_YY_PREFIX[[get_lval]]", - "m4_define([[yyget_lval]], [[M4_YY_PREFIX[[get_lval]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_lval ]]M4_YY_PREFIX[[set_lval]]", - "m4_define([[yyset_lval]], [[M4_YY_PREFIX[[set_lval]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_lval", + "#define ]]M4_YY_PREFIX[[get_lval_ALREADY_DEFINED", + "#else", + "#define yyget_lval ]]M4_YY_PREFIX[[get_lval", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lval", + "#define ]]M4_YY_PREFIX[[set_lval_ALREADY_DEFINED", + "#else", + "#define yyset_lval ]]M4_YY_PREFIX[[set_lval", + "#endif]]", + "", "]])", "", "m4_ifdef( [[]],", "[[", - " [[#define yyget_lloc ]]M4_YY_PREFIX[[get_lloc]]", - "m4_define([[yyget_lloc]], [[M4_YY_PREFIX[[get_lloc]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyset_lloc ]]M4_YY_PREFIX[[set_lloc]]", - "m4_define([[yyset_lloc]], [[M4_YY_PREFIX[[set_lloc]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_lloc", + "#define ]]M4_YY_PREFIX[[get_lloc_ALREADY_DEFINED", + "#else", + "#define yyget_lloc ]]M4_YY_PREFIX[[get_lloc", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lloc", + "#define ]]M4_YY_PREFIX[[set_lloc_ALREADY_DEFINED", + "#else", + "#define yyset_lloc ]]M4_YY_PREFIX[[set_lloc", + "#endif]]", + "", "]])", "", "", - " [[#define yyalloc ]]M4_YY_PREFIX[[alloc]]", - "m4_define([[yyalloc]], [[M4_YY_PREFIX[[alloc]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyrealloc ]]M4_YY_PREFIX[[realloc]]", - "m4_define([[yyrealloc]], [[M4_YY_PREFIX[[realloc]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyfree ]]M4_YY_PREFIX[[free]]", - "m4_define([[yyfree]], [[M4_YY_PREFIX[[free]]m4_ifelse($#,0,,[[($@)]])]])", + "m4_ifelse(M4_YY_PREFIX,yy,,", + " ", + "[[#ifdef yyalloc", + "#define ]]M4_YY_PREFIX[[alloc_ALREADY_DEFINED", + "#else", + "#define yyalloc ]]M4_YY_PREFIX[[alloc", + "#endif]]", + "", + " ", + "[[#ifdef yyrealloc", + "#define ]]M4_YY_PREFIX[[realloc_ALREADY_DEFINED", + "#else", + "#define yyrealloc ]]M4_YY_PREFIX[[realloc", + "#endif]]", + "", + " ", + "[[#ifdef yyfree", + "#define ]]M4_YY_PREFIX[[free_ALREADY_DEFINED", + "#else", + "#define yyfree ]]M4_YY_PREFIX[[free", + "#endif]]", + "", + ")", "", "%if-c-only", + "m4_ifelse(M4_YY_PREFIX,yy,,", "m4_ifdef( [[M4_YY_NOT_REENTRANT]],", "[[", - " [[#define yytext ]]M4_YY_PREFIX[[text]]", - "m4_define([[yytext]], [[M4_YY_PREFIX[[text]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyleng ]]M4_YY_PREFIX[[leng]]", - "m4_define([[yyleng]], [[M4_YY_PREFIX[[leng]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyin ]]M4_YY_PREFIX[[in]]", - "m4_define([[yyin]], [[M4_YY_PREFIX[[in]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyout ]]M4_YY_PREFIX[[out]]", - "m4_define([[yyout]], [[M4_YY_PREFIX[[out]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yy_flex_debug ]]M4_YY_PREFIX[[_flex_debug]]", - "m4_define([[yy_flex_debug]], [[M4_YY_PREFIX[[_flex_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yylineno ]]M4_YY_PREFIX[[lineno]]", - "m4_define([[yylineno]], [[M4_YY_PREFIX[[lineno]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yytext", + "#define ]]M4_YY_PREFIX[[text_ALREADY_DEFINED", + "#else", + "#define yytext ]]M4_YY_PREFIX[[text", + "#endif]]", + "", + " ", + "[[#ifdef yyleng", + "#define ]]M4_YY_PREFIX[[leng_ALREADY_DEFINED", + "#else", + "#define yyleng ]]M4_YY_PREFIX[[leng", + "#endif]]", + "", + " ", + "[[#ifdef yyin", + "#define ]]M4_YY_PREFIX[[in_ALREADY_DEFINED", + "#else", + "#define yyin ]]M4_YY_PREFIX[[in", + "#endif]]", + "", + " ", + "[[#ifdef yyout", + "#define ]]M4_YY_PREFIX[[out_ALREADY_DEFINED", + "#else", + "#define yyout ]]M4_YY_PREFIX[[out", + "#endif]]", + "", + " ", + "[[#ifdef yy_flex_debug", + "#define ]]M4_YY_PREFIX[[_flex_debug_ALREADY_DEFINED", + "#else", + "#define yy_flex_debug ]]M4_YY_PREFIX[[_flex_debug", + "#endif]]", + "", + " ", + "[[#ifdef yylineno", + "#define ]]M4_YY_PREFIX[[lineno_ALREADY_DEFINED", + "#else", + "#define yylineno ]]M4_YY_PREFIX[[lineno", + "#endif]]", + "", "]])", + ")", "%endif", "", "", "m4_ifdef( [[M4_YY_TABLES_EXTERNAL]],", "[[", - " [[#define yytables_fload ]]M4_YY_PREFIX[[tables_fload]]", - "m4_define([[yytables_fload]], [[M4_YY_PREFIX[[tables_fload]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yytables_destroy ]]M4_YY_PREFIX[[tables_destroy]]", - "m4_define([[yytables_destroy]], [[M4_YY_PREFIX[[tables_destroy]]m4_ifelse($#,0,,[[($@)]])]])", - " [[#define yyTABLES_NAME ]]M4_YY_PREFIX[[TABLES_NAME]]", - "m4_define([[yyTABLES_NAME]], [[M4_YY_PREFIX[[TABLES_NAME]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yytables_fload", + "#define ]]M4_YY_PREFIX[[tables_fload_ALREADY_DEFINED", + "#else", + "#define yytables_fload ]]M4_YY_PREFIX[[tables_fload", + "#endif]]", + "", + " ", + "[[#ifdef yytables_destroy", + "#define ]]M4_YY_PREFIX[[tables_destroy_ALREADY_DEFINED", + "#else", + "#define yytables_destroy ]]M4_YY_PREFIX[[tables_destroy", + "#endif]]", + "", + " ", + "[[#ifdef yyTABLES_NAME", + "#define ]]M4_YY_PREFIX[[TABLES_NAME_ALREADY_DEFINED", + "#else", + "#define yyTABLES_NAME ]]M4_YY_PREFIX[[TABLES_NAME", + "#endif]]", + "", "]])", "", "/* First, we deal with platform-specific or compiler-specific issues. */", @@ -322,14 +521,18 @@ const char *skel[] = { "#define UINT32_MAX (4294967295U)", "#endif", "", + "#ifndef SIZE_MAX", + "#define SIZE_MAX (~(size_t)0)", + "#endif", + "", "#endif /* ! C99 */", "", "#endif /* ! FLEXINT_H */", "", "%endif", "", - "%if-c++-only", "/* begin standard C++ headers. */", + "%if-c++-only", "#include ", "#include ", "#include ", @@ -369,14 +572,10 @@ const char *skel[] = { "typedef void* yyscan_t;", "#endif", "", - "%# Declare yyguts variable", "m4_define( [[M4_YY_DECL_GUTS_VAR]], [[struct yyguts_t * yyg = (struct yyguts_t*)yyscanner]])", - "%# Perform a noop access on yyguts to prevent unused variable complains", "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[(void)yyg]])", - "%# For use wherever a Global is accessed or assigned.", "m4_define( [[YY_G]], [[yyg->$1]])", "", - "%# For use in function prototypes to append the additional argument.", "m4_define( [[M4_YY_PROTO_LAST_ARG]], [[, yyscan_t yyscanner]])", "m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[yyscan_t yyscanner]])", "", @@ -384,11 +583,9 @@ const char *skel[] = { "m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscan_t yyscanner]])", "m4_define( [[M4_YY_DECL_LAST_ARG]], [[yyscan_t yyscanner;]])", "", - "%# For use in function calls to pass the additional argument.", "m4_define( [[M4_YY_CALL_LAST_ARG]], [[, yyscanner]])", "m4_define( [[M4_YY_CALL_ONLY_ARG]], [[yyscanner]])", "", - "%# For use in function documentation to adjust for additional argument.", "m4_define( [[M4_YY_DOC_PARAM]], [[@param yyscanner The scanner object.]])", "", "/* For convenience, these vars (plus the bison vars far below)", @@ -420,7 +617,6 @@ const char *skel[] = { " yylineno++;", "]])", "", - "%# Define these macros to be no-ops.", "m4_define( [[M4_YY_DECL_GUTS_VAR]], [[m4_dnl]])", "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[m4_dnl]])", "m4_define( [[YY_G]], [[($1)]])", @@ -437,7 +633,6 @@ const char *skel[] = { "%endif", "", "", - "%# Generate C99 function defs.", "m4_define( [[YYFARGS1]], [[($1 $2 M4_YY_DEF_LAST_ARG)]])", "m4_define( [[YYFARGS2]], [[($1 $2, $3 $4 M4_YY_DEF_LAST_ARG)]])", "m4_define( [[YYFARGS3]], [[($1 $2, $3 $4, $5 $6 M4_YY_DEF_LAST_ARG)]])", @@ -1056,7 +1251,6 @@ const char *skel[] = { "", "", "%if-c-only", - "%# TODO: This is messy.", "m4_ifdef( [[M4_YY_STACK_USED]],", "[[", "", @@ -1931,6 +2125,8 @@ const char *skel[] = { " (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size M4_YY_CALL_LAST_ARG );", " if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )", " YY_FATAL_ERROR( \"out of dynamic memory in yy_get_next_buffer()\" );", + " /* \"- 2\" to take care of EOB's */", + " YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);", " }", "", " YY_G(yy_n_chars) += number_to_move;", @@ -2163,6 +2359,9 @@ const char *skel[] = { " */", "void yyFlexLexer::yyrestart( std::istream* input_file )", "{", + " if( ! input_file ) {", + " input_file = &yyin;", + " }", " yyrestart( *input_file );", "}", "%endif", @@ -2324,7 +2523,7 @@ const char *skel[] = { " b->yy_input_file = file;", "%endif", "%if-c++-only", - " b->yy_input_file = (&file == 0) ? NULL : file.rdbuf();", + " b->yy_input_file = file.rdbuf();", "%endif", " b->yy_fill_buffer = 1;", "", @@ -2702,7 +2901,7 @@ const char *skel[] = { "{", " M4_YY_DECL_GUTS_VAR();", " M4_YY_NOOP_GUTS_VAR();", - " (void) fprintf( stderr, \"%s\\n\", msg );", + " fprintf( stderr, \"%s\\n\", msg );", " exit( YY_EXIT_FAILURE );", "}", "%endif", @@ -3049,7 +3248,6 @@ const char *skel[] = { "}", "", "%endif if-c-only", - "%# Actually, that ended an if-rentrant section", "", "%if-c-only", "static int yy_init_globals (M4_YY_DEF_ONLY_ARG)", @@ -3735,6 +3933,151 @@ const char *skel[] = { "#undef YY_DECL_IS_OURS", "#undef YY_DECL", "#endif", + "", + "[[#ifndef ]]M4_YY_PREFIX[[_create_buffer_ALREADY_DEFINED", + "#undef yy_create_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_delete_buffer_ALREADY_DEFINED", + "#undef yy_delete_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_buffer_ALREADY_DEFINED", + "#undef yy_scan_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_string_ALREADY_DEFINED", + "#undef yy_scan_string", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_bytes_ALREADY_DEFINED", + "#undef yy_scan_bytes", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_init_buffer_ALREADY_DEFINED", + "#undef yy_init_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_flush_buffer_ALREADY_DEFINED", + "#undef yy_flush_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_load_buffer_state_ALREADY_DEFINED", + "#undef yy_load_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_switch_to_buffer_ALREADY_DEFINED", + "#undef yy_switch_to_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[push_buffer_state_ALREADY_DEFINED", + "#undef yypush_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[pop_buffer_state_ALREADY_DEFINED", + "#undef yypop_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[ensure_buffer_stack_ALREADY_DEFINED", + "#undef yyensure_buffer_stack", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_ALREADY_DEFINED", + "#undef yylex", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[restart_ALREADY_DEFINED", + "#undef yyrestart", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_init_ALREADY_DEFINED", + "#undef yylex_init", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_init_extra_ALREADY_DEFINED", + "#undef yylex_init_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_destroy_ALREADY_DEFINED", + "#undef yylex_destroy", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_debug_ALREADY_DEFINED", + "#undef yyget_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_debug_ALREADY_DEFINED", + "#undef yyset_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_extra_ALREADY_DEFINED", + "#undef yyget_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_extra_ALREADY_DEFINED", + "#undef yyset_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_in_ALREADY_DEFINED", + "#undef yyget_in", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_in_ALREADY_DEFINED", + "#undef yyset_in", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_out_ALREADY_DEFINED", + "#undef yyget_out", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_out_ALREADY_DEFINED", + "#undef yyset_out", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_leng_ALREADY_DEFINED", + "#undef yyget_leng", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_text_ALREADY_DEFINED", + "#undef yyget_text", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lineno_ALREADY_DEFINED", + "#undef yyget_lineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lineno_ALREADY_DEFINED", + "#undef yyset_lineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_column_ALREADY_DEFINED", + "#undef yyget_column", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_column_ALREADY_DEFINED", + "#undef yyset_column", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[wrap_ALREADY_DEFINED", + "#undef yywrap", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lval_ALREADY_DEFINED", + "#undef yyget_lval", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lval_ALREADY_DEFINED", + "#undef yyset_lval", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lloc_ALREADY_DEFINED", + "#undef yyget_lloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lloc_ALREADY_DEFINED", + "#undef yyset_lloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[alloc_ALREADY_DEFINED", + "#undef yyalloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[realloc_ALREADY_DEFINED", + "#undef yyrealloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[free_ALREADY_DEFINED", + "#undef yyfree", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[text_ALREADY_DEFINED", + "#undef yytext", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[leng_ALREADY_DEFINED", + "#undef yyleng", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[in_ALREADY_DEFINED", + "#undef yyin", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[out_ALREADY_DEFINED", + "#undef yyout", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_flex_debug_ALREADY_DEFINED", + "#undef yy_flex_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lineno_ALREADY_DEFINED", + "#undef yylineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[tables_fload_ALREADY_DEFINED", + "#undef yytables_fload", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[tables_destroy_ALREADY_DEFINED", + "#undef yytables_destroy", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[TABLES_NAME_ALREADY_DEFINED", + "#undef yyTABLES_NAME", + "#endif]]", "]])", 0 };