From 07fdfc46ffa2fbeedc9303a9d73313090a18d016 Mon Sep 17 00:00:00 2001 From: Anthony Scemama Date: Tue, 2 Jul 2013 00:58:47 +0200 Subject: [PATCH] Cleaning in repository Version:1.2.18 --- src/.gitignore | 4 + src/build/temp.linux-x86_64-2.7/create_man.o | Bin 373624 -> 0 bytes src/build/temp.linux-x86_64-2.7/error.o | Bin 160688 -> 0 bytes src/build/temp.linux-x86_64-2.7/init.o | Bin 115808 -> 0 bytes src/build/temp.linux-x86_64-2.7/irp_stack.o | Bin 126632 -> 0 bytes src/build/temp.linux-x86_64-2.7/irpf90.o | Bin 283936 -> 0 bytes src/build/temp.linux-x86_64-2.7/irpf90_t.o | Bin 1510504 -> 0 bytes src/build/temp.linux-x86_64-2.7/locks.o | Bin 102280 -> 0 bytes src/build/temp.linux-x86_64-2.7/makefile.o | Bin 286920 -> 0 bytes src/build/temp.linux-x86_64-2.7/module.o | Bin 820184 -> 0 bytes src/build/temp.linux-x86_64-2.7/modules.o | Bin 134024 -> 0 bytes src/build/temp.linux-x86_64-2.7/parsed_text.o | Bin 2284112 -> 0 bytes .../temp.linux-x86_64-2.7/preprocessed_text.o | Bin 2902120 -> 0 bytes src/build/temp.linux-x86_64-2.7/profile.o | Bin 223160 -> 0 bytes src/build/temp.linux-x86_64-2.7/regexps.o | Bin 69856 -> 0 bytes src/build/temp.linux-x86_64-2.7/subroutine.o | Bin 402760 -> 0 bytes src/build/temp.linux-x86_64-2.7/subroutines.o | Bin 162832 -> 0 bytes src/build/temp.linux-x86_64-2.7/touches.o | Bin 147704 -> 0 bytes src/build/temp.linux-x86_64-2.7/util.o | Bin 656608 -> 0 bytes src/build/temp.linux-x86_64-2.7/variable.o | Bin 1862528 -> 0 bytes src/build/temp.linux-x86_64-2.7/variables.o | Bin 333888 -> 0 bytes src/build/temp.linux-x86_64-2.7/version.o | Bin 38984 -> 0 bytes src/build/temp.linux-x86_64-2.7/vim.o | Bin 94280 -> 0 bytes src/create_man.c | 3912 --- src/create_man.so | Bin 170349 -> 0 bytes src/error.c | 2334 -- src/error.so | Bin 84319 -> 0 bytes src/init.c | 2404 -- src/init.so | Bin 88423 -> 0 bytes src/irp_stack.c | 2488 -- src/irp_stack.so | Bin 96260 -> 0 bytes src/irpf90.c | 3053 --- src/irpf90.so | Bin 136512 -> 0 bytes src/irpf90_t.c | 14596 ----------- src/irpf90_t.so | Bin 602757 -> 0 bytes src/locks.c | 2029 -- src/locks.so | Bin 78739 -> 0 bytes src/makefile.c | 4550 ---- src/makefile.so | Bin 225846 -> 0 bytes src/module.c | 7953 ------ src/module.so | Bin 354573 -> 0 bytes src/modules.c | 2567 -- src/modules.so | Bin 104446 -> 0 bytes src/parsed_text.c | 16797 ------------- src/parsed_text.so | Bin 945925 -> 0 bytes src/preprocessed_text.c | 20889 ---------------- src/preprocessed_text.so | Bin 1181453 -> 0 bytes src/profile.c | 2710 -- src/profile.so | Bin 114943 -> 0 bytes src/regexps.c | 1546 -- src/regexps.so | Bin 51530 -> 0 bytes src/subroutine.c | 4223 ---- src/subroutine.so | Bin 184986 -> 0 bytes src/subroutines.c | 2224 -- src/subroutines.so | Bin 86826 -> 0 bytes src/touches.c | 2561 -- src/touches.so | Bin 117536 -> 0 bytes src/util.c | 5800 ----- src/util.so | Bin 283908 -> 0 bytes src/variable.c | 15213 ----------- src/variable.so | Bin 769023 -> 0 bytes src/variables.c | 3746 --- src/variables.so | Bin 159148 -> 0 bytes src/version.c | 1176 - src/version.so | Bin 31678 -> 0 bytes src/vim.c | 1912 -- src/vim.so | Bin 71514 -> 0 bytes 67 files changed, 4 insertions(+), 124683 deletions(-) create mode 100644 src/.gitignore delete mode 100644 src/build/temp.linux-x86_64-2.7/create_man.o delete mode 100644 src/build/temp.linux-x86_64-2.7/error.o delete mode 100644 src/build/temp.linux-x86_64-2.7/init.o delete mode 100644 src/build/temp.linux-x86_64-2.7/irp_stack.o delete mode 100644 src/build/temp.linux-x86_64-2.7/irpf90.o delete mode 100644 src/build/temp.linux-x86_64-2.7/irpf90_t.o delete mode 100644 src/build/temp.linux-x86_64-2.7/locks.o delete mode 100644 src/build/temp.linux-x86_64-2.7/makefile.o delete mode 100644 src/build/temp.linux-x86_64-2.7/module.o delete mode 100644 src/build/temp.linux-x86_64-2.7/modules.o delete mode 100644 src/build/temp.linux-x86_64-2.7/parsed_text.o delete mode 100644 src/build/temp.linux-x86_64-2.7/preprocessed_text.o delete mode 100644 src/build/temp.linux-x86_64-2.7/profile.o delete mode 100644 src/build/temp.linux-x86_64-2.7/regexps.o delete mode 100644 src/build/temp.linux-x86_64-2.7/subroutine.o delete mode 100644 src/build/temp.linux-x86_64-2.7/subroutines.o delete mode 100644 src/build/temp.linux-x86_64-2.7/touches.o delete mode 100644 src/build/temp.linux-x86_64-2.7/util.o delete mode 100644 src/build/temp.linux-x86_64-2.7/variable.o delete mode 100644 src/build/temp.linux-x86_64-2.7/variables.o delete mode 100644 src/build/temp.linux-x86_64-2.7/version.o delete mode 100644 src/build/temp.linux-x86_64-2.7/vim.o delete mode 100644 src/create_man.c delete mode 100755 src/create_man.so delete mode 100644 src/error.c delete mode 100755 src/error.so delete mode 100644 src/init.c delete mode 100755 src/init.so delete mode 100644 src/irp_stack.c delete mode 100755 src/irp_stack.so delete mode 100644 src/irpf90.c delete mode 100755 src/irpf90.so delete mode 100644 src/irpf90_t.c delete mode 100755 src/irpf90_t.so delete mode 100644 src/locks.c delete mode 100755 src/locks.so delete mode 100644 src/makefile.c delete mode 100755 src/makefile.so delete mode 100644 src/module.c delete mode 100755 src/module.so delete mode 100644 src/modules.c delete mode 100755 src/modules.so delete mode 100644 src/parsed_text.c delete mode 100755 src/parsed_text.so delete mode 100644 src/preprocessed_text.c delete mode 100755 src/preprocessed_text.so delete mode 100644 src/profile.c delete mode 100755 src/profile.so delete mode 100644 src/regexps.c delete mode 100755 src/regexps.so delete mode 100644 src/subroutine.c delete mode 100755 src/subroutine.so delete mode 100644 src/subroutines.c delete mode 100755 src/subroutines.so delete mode 100644 src/touches.c delete mode 100755 src/touches.so delete mode 100644 src/util.c delete mode 100755 src/util.so delete mode 100644 src/variable.c delete mode 100755 src/variable.so delete mode 100644 src/variables.c delete mode 100755 src/variables.so delete mode 100644 src/version.c delete mode 100755 src/version.so delete mode 100644 src/vim.c delete mode 100755 src/vim.so diff --git a/src/.gitignore b/src/.gitignore new file mode 100644 index 0000000..acfae80 --- /dev/null +++ b/src/.gitignore @@ -0,0 +1,4 @@ +*.o +*.so +build/* +*~ diff --git a/src/build/temp.linux-x86_64-2.7/create_man.o b/src/build/temp.linux-x86_64-2.7/create_man.o deleted file mode 100644 index efa6af3e4a0783e62491c9c2ea39fc563c54d036..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373624 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 diff --git a/src/build/temp.linux-x86_64-2.7/error.o b/src/build/temp.linux-x86_64-2.7/error.o deleted file mode 100644 index 34bdc901cdad30a541b9b4557cb41df677335afd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160688 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
Y9Qxy%WDK4|B{R)7n%OvOXb0HtL2FUYRx@>U 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 diff --git a/src/build/temp.linux-x86_64-2.7/init.o b/src/build/temp.linux-x86_64-2.7/init.o deleted file mode 100644 index b51c246631abdaba8f32b488024a298425608ef0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115808 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

Bn!%| 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 z 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 v_pvFSQ;yol8N3QQNO-k|9&-MQRz|#~c diff --git a/src/build/temp.linux-x86_64-2.7/irpf90_t.o b/src/build/temp.linux-x86_64-2.7/irpf90_t.o deleted file mode 100644 index b4c08da38394f4cb8227e719ae3b3b0a1329e85f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1510504 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

a{0M#AHwgKz%0Ghq#pkCdG!gmRm46ob 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 CPb#$l diff --git a/src/build/temp.linux-x86_64-2.7/locks.o b/src/build/temp.linux-x86_64-2.7/locks.o deleted file mode 100644 index 21b36d85f7a49a141c1fdec32e0fabd3eadcc935..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 102280 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


%N&15H*JXV7cXLB8 z*z39DTY^3t?#BP2sO<_$A46Y4`jI(pUqSk@^wp$yf3LHF^#7u7F8v6z!NIAM^dHgp zkUoj+86tgi`ccxaw!?=eN#CA+y7c`@+bhhIz6Skb>3_&&`$Xw?({Gl3I`{Xlyxu(3 z+spI41JW;Hy`7N0CiC{Q^y}%bN&gi6U(&nZ(-r=r-4BzQO=&})2Y2h|0OJ>zz7u^} z>0jmbgvX@sPhU^^-xuEnqf0zEe^q+IPze%5i?Y}MkUiwU<>^gDl zp)h>}ZZfleQs@gyUzWa%^hf9)mA*o>y}i29pP_Fg{o{<^PWp@VU8HY8-(UJv`eD*{ zrhi3xcO0ik-=F>+>BD(FVWISy@fFg?vpwsj&(G)6BZvE`1kCgr?`e^A-&{vec4SfyiFVQ!Yz7u^* z>2K0^mOhTYm-G{vpLpr})4wGBV|@Min)LDXZ%LmQUm$%=o>wf9zBHfTKb3wo<7}0_ zD*ayR6X^df{oW{hTu(_qmHrp$pJ)6(q@O{5SNc)(*9^C5mOhDog7hWuH>E$q^M^Uor|^2$ z$I|a*oYm5wqTeEY3jJ>BZ}51MBK;Biqtf4I{0q{bp}!)1SV_AM?nr-;KJyrRxmyo; z-RnQNTR*Av4@w_JA0z!u`pVK*q<>s`_j+#=>Fd%zBYimc-)_=3qaPrB1pNr>g+B7<)li>G#t2k>35?rQy;?alBrZejZdIa=hM`KEyg%CcS$d zc!Ttj^xLI>o$c8teH8O~Ncvb_A2=iZMb^)+(mzqqPTURcna{takK_KBbF2;A`l-bB z7r@>63FmdllF~0?{PNNdVtZ;zKZE`W>5sC0T1g+r@#-jj-`sYf-qI)150<_V>urqm zNo>zV=?k(wGo=57{ypj2vcF5Eckg$smHtcSbDQ*M82?M@U+1_Sls=aIJudxothbBO z$1u)S>3=U}Z}^_{H(764$Jxu>dia3t%#XYElYkeKz6#?%EPaUg3#v-rn8%-3=~EcL zsq`BP*b6#HKb8JD>8o?U8zlWr`WK|H&-TA6eK_0yhV5H*Wvb8nT|#XQ%MekA=<(#O)bm3}6Dcj@Ek`$@lsex&pX^y8$T z9&YF5b?K9spT*Mm;q!H(*PEM+;&EfM^lKin+^v0D_IXGq>tluyq~47$^Gk^ z^ojI;NuR*@;p6RgncXzoe}+B}?$*Ox9?y$=y;(o*R95<}W$Y!7dA%7wmMgTBz5w&z z+3VBRGsml!^v^N>@#4|k@5YIb=e(#JS2-3 zWc;Jz<5?#c#LIAeuZ!Q|eVI^#-7t5&7Dn6ixy0+UK8uL+@_wkS`00{%oX5n=;0h395e27>327hx8K(&Q zwNLyo^Ke>xA@h7!{4~$&vQ9`p{xQ~Jlz0jHn&Nfr)kAH>GZ(cNEEj*1^^+pLfc1P) z{1=`-WOz0Gc4pyz{gC*#Y)@VB#@sJDi%%_PuP|CX8|!Vp_#i(2t`|S$*1z~6?!V{7 zpW$)lj`;7q-;sY}`u%-}?T-<^Q_yye#8)#;Pw`=SY(GgnS6S-|#M@`GzDc|c>-n(w z7d&4&E56X&L4wn5@nKo4M^3UI-Ti0-+gV+_9_#s8@g2<1aPj#Z$G60{u)hn%8?!#Q ziZ^GRqv9df&t365%zuf=>Gvxq$NdrUNvxm7;vbZ<*Y7SK#rC``?!K?`eR22wZ2QEs zMA`ArieF$mGryL8`@hFy#B+1J5?JpUf~y%~d4>}2;}OiC_ObWzwWyk`*?*K|J$CM!TxI_PtE?i6AxP<(`R%TeC){?^(Y#1vEMU2X=c0<-80h1alXHJ0_WXF zH+~ZSIUk+3F&h?~PS_9s+-?ek>c)k#YN)r zJa5?}o)~U#H&r~2$KjmZzT2KfcvtZx4&Yev2p*Tth{yAMBWEUi`)>SH{4wzvJP+w4 T?*88QSn)U>_>#rl&&B^A8@+tc diff --git a/src/build/temp.linux-x86_64-2.7/module.o b/src/build/temp.linux-x86_64-2.7/module.o deleted file mode 100644 index 2edbf83cc45168dd9449a352282ccdac88b4db46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 820184 zcmeFa34D~*)jvK1NCJox1vKuX1dSUKmkQ#-Xo3?R6crV>hAk`#0m($MqN15ph7pQ& z?_yo*Quk`zkc22G+Pb%{xX{)mkE3E;(7H6g@Aus0xz95bjQ;)n-{1fL*7t3A?!D)p zd(OG%o_p@O%bZ`68r>rrjhO$Uk%Jqs*DWwQB$(yH~H zONXIevZXy;mRvomj3D^8T>fodRk|{^{Q`a;o6H?nmdt)lz~0H`%4m9zWbV*%CO2iW zsb4a8PC0-|JI4+~Nog|s*2&4-f>A);xpwN(WbXVjU7CM9wmsTErJ^I5omufQkfyRz zDo76M11kG@ZT4@;md0{v)=1HE1s=00+oFE}8xISaO`qZ7aM9Jw21zQ&GD;3e?GLPqf&)XEeQcGS@Si zJGWd4vZt1#giZHnVN;3W5yGizKl#*^Q+2z-d483a*MH^9{{F9g|Es_MwGYZJh3rFa zBQZnSuab-RRR(EzRlCP8ZBM?Ve6cED++Qj;cSe&ws#whvNsT{euuhf#hQ_wfutFp` zQd)gbzGKxNOUqNI+VW#zmOG?STX|*lD`DE>L8Bix1`!6|rQgm5`M<#4Cr(HlpExct z?l>A@Sk(Cyr3!sZdosH+mKoNQwi~%x95q#)ro1-$SS)i^k4U7Z>h1j2V_Mdy`_?uO zjm9!pfxedZSj#Q=H_^N*T08l(RCb-ImSnZBG5yrQc5ji)jVfKg;5I;(ru!~9x1uhV zS;Toyn#_JAm1?t(KiG-?*u?fmfFlkqO=UkxWWtqD-w;hGypuAI}Wqm zx@@nC&SQqdPI6$+6d?sob3MRBn14s7)O(36NB75dKDLbA6L7Po`7VvHQzKk7_b&(z{d- z-?BD~2|izm$x8Kq_5OXDwyNdK*ZfGdCU$>mP3Fm__ZN(a#4?u0P}QpcJ0Zh zCQeD5n)qp=Zl$2}?)nd;s06wXKeOwW0@|y@x1l$gebn@bGhUPonsED(YVwp5>OI}sG>XMdO$f-qFLWOLvdE=3p$_*j^wYdW-qy}7` zd8%PYUsVQ``LXnVT8FD%NM=`8wW}hs2TgXxF$O{!nplDEj(G8J*}C7t=7x03t)Qv; zP;u&A4#M>3P54|&e`+oLDL7T1)1Ue{g#?|d%G&I=x(ne~`E;&KSE83v+398JjgrkZ zk?5F~x0Bh^%hMaxHutKCrm~acRx`7&(AmO-ev0zApo23j;^@vw;~%>IoU||gTy6Fn zx52HF3K5*JZ7Qti1{9+rsgWY&^v()isT@X~sh-{hW+K1B>aP(G#-;Au{PnPK)_#$m z=O~X?;P_D|>Bs zEK|)qMVnt|bu7ano63nPPAS7%^<>oxRqLxdtI_H((otEpCY7zO7*1L+d{Y(W{8Pq1 zP`QnjYQeHXN7B0`vyW>AtDa23u4@)i3@M~HuFlSx57iP9YMXbjfGu1GCE}p#r^Zp{ zDWs`i{j|ZM8A-ORfo@{7G*#(w!d@NAUQMz$#R<&neb!FJH9O_!Nrl#scMS06;jMLg&HKp(#$L&v$p1QOa zMgt>}88ygQ>KhSn2-9jlsim&3v$IN0<}}kYG65Xjn>{A^Mq;#H+cR64;>~)gS!9{a zKrZ!F>pO1z21Z0ibu9DK5{t^2W<+N`@LO?;WMcDJlzkk`8M#lo*4Wn0L znVW?KAvTQWF9wY>Ekap00Zp}7mc%kSi{)~Bt-!pZCo0jISmqfaQTNL9@~Rh7*$Ein zj~l8)T7QI7p-7n`q=ck#<<}w&VR=u07Phh*a)B62Cm0miKQoS}yG>!9jb$oHk8r(% zP|oQz)4N!!J2e>SM@dtF_I&{YF#SIl)FD_1gic8hr`^QeMP8oPxE6=%Kx* z)8Y`eh~XWS<_^fMZ7xA;sq8$sGj9KiBv%W749yGJfN(m^X^OL{GA`6dlB4x;k`H7c zj0T=W@)fCpBKS}JSwtsAS%sGN1Z>&DGUh5Z-_267DZXl2-X4?vPb~8U%|daE+ff&S zBgfG3v7n{KZqx;_py=lS3J6Zr=66Epc<3K(oH4IjM`!xv{stn~(bsn>O=j`h0Krmo-)EyW#^R(xZd7Gc?*XP&;Nx*y2+7Ye`xj`X!E2!uiNJbqb0= z-pkMmXa1282kq10uo19V0MQm~Ph`|05|YYxqFlPZ<#ZYn6&7KgQ;^htzQwZ`c@BQ# zGq(gy7ezv~B-7|L^?Np80RD`E#NaAJqCVyZyK}o zNlCq|QL{)j+<@J`#H`Wo?d><69fuAaJ1mEP@^={a+|1u=nYnqt*8Sq<{W8(|2r2!m zQ2I8A^-jVRlV}~t+`l;VL&?11QnZ;V626e1e?nNEZ&L@ z_j$zuaCzrId{S_Es9=&QxWp6)W8ONG-^_gWrT03r60N&1{j|bN(DmN-lE0gi&)hze zyN92<-dhj-NVHb@SrGYpk6M>#-JZE*!^qX6TMp7iQpdBDvhz+5wEG!o^civdMsV!y zV_xrNjWXWE+!qwV6vZ4QA#P(~a6v$@;()q<7#bXd0Nz9gEe{TSe^CO2pGz-`tcI-I_rxu8ds>jv3J*jGNCs zA`;ciL{rNfA?4nC!nR|uC0zY#Rvni^B z5ysvwEH2FancoNm;_3SqmLkS3Gt)}O&qXctti{PDe}|I8Sg6Zt%w+i$ZO4P;WsehK zzgt5#ljI|G`;b{eMCp86rlm8M z`Ku4>cvgj~4S@VAwhpPgQbI0C(GXPE<2k#114{NbW_ z#}zv6d0Asvr<*HKrzpJGb&eY*Vbeg7+em+uSl z+uEr+9a@)q=g8b0SM+fLVl*((+7B63YpOov^u?8MqO}ilyxH=(DL;qFXH4L{!IJ2& zD|rKv)JyF|tH}kbj^BEno!)v(lE!}hc>1;3NB@iU>!UtDmVPbK`gQDwKc;?tqUiJW z>kVWC^=l1sw0`}QpGv>}E^u1E-qMwV`ekydUkAPy(yu^#zcPua7vk00F3qnf_YDq= z$}bC7mRti*LAH)o4TZ@;R?E*}X#9-;@l1AgD#I`YF@MbkBqIIEk$}QZO6Eq|Hj}tY z%$D6CkoD+Rf(|uS!>(X7VPUgiEvnN0Dnk&;I9s)FW@4EPFu>Q$kH>s0%sFv**``E3$m<&tsm4qwLj1 z#rKxgZ6~)x7zH|xHH_RP*wZoTeLY?w`9sjU6D0r=iN(~RmX3l~Km<^tT9}0Qi5~+oD zDbCW`k&tO@aes;-H}h|ZUOkF^5zK8#t`oiA0NA(vl0^Ue^>^Nxr?$3qlPLPI1 zMbNj)CIhbZd`9fREJl&`U<-(aH2SCXlW}%ydc5L|X!&N%@BT5mc)F9sVRh%0q!3C_3p+Huq#a zE;~LHA(Nr9BLH**ISP<-^O?38Xc#t}gbLb*M+JhzrsXUwvz-2)?kBSYD;N+MSmE6( z5)qB?Gg~E7xetEsRX!+#DV(OAdE2WGr9UIM>C1D`mz=n(-OLM->Fwp_v@oX>Ijz^? zYuOa=LIcfpaO>qJ$J>qoGnt$u0PDRE3Gf>W@FtU2+T^oL-pOP=;Jvq)JkGD)={?Py zTINg?gc!iyL(Dsfc@rd$(GFyv&g=vHZ00Rt-pMY)8svoh3HYhC@OtU0YDX0gtL(3E zv!(e1Y#E51H2Nkcd^`A2ZjZN+4VCvcI9Z@~O^s0{u zHpVm}Hf?hhg&a;8z}=*R7)GU-1yN!I)jt+O#74{f5mbHMzBDqxZ{KVSefqX053Thg z4d5Z@Jx7r%TWk`8=g_e0XW9OVWj^r%XjFwN4>kj;XA|0GpxN((OaSx?39#RpXUD)o4 z%`7J-V?xtTjL~0x?B}dL5D3Md;x%koV)QMS3JtRHEu3CC32g?S7aps(#J=~Cg zkjQpuI~zm?M~tx0aT+MYm}z%bi+@E#uWdfz{fOQwt-0`^rKj;v{_eK302GYBbjAPL z|7rf0(4!8-pOzhsj_5cIlojLu62gBM{}%%&z<**K&K8*X<@q>=iU7yOYzF^>H`*@t z?;?H&Cz?Vfh-L0mRnmvn!swJG5h<9v43-nR<156>4Jw2RR)*q|f7EkUN7-wgoo%mi zX%ZC6VQ8b{*tbM1%M9>8UquH(E#4yhcZdaix*^ZD*HI_`EAgklD?Z1AOd-+G&)S9A zQ2q4zKz))0uxlpFpaM~ewMLdAGOH5_W9p-|@cL}c*Ua2T?9v~^p0MQ(=EsPy>v*Sk z8my0F?~Q%W-|NId1M`XmZR|MR7U+S$XVj|$qPBlx7G6f*MA+Rb*fkxkZ?IRqS%5U- z5tcW*k2sk7RB#r{Kh^dEaqI&e`DJa-+3!EK{fpl}Vg4;`Z!(5HJ+H*P2 zM`Qf1bJqBV?+{WH_8VWrD8zt~wjP7b3S}i^FGo?xZ^UNyeNsUr$a53)xaQE~GJ=q* z*AhtB{0|06p(rar7LO@}_r9g_XHr>u^f^5UW0}|Rg#+)7OC=H?E;5m2;@f~wOaDh% zt4RNY`Zk~XFwOT{ns1f*=mek{K_BE@3|$`2nRv6Q*OH&>3D1{~6d z%3!IaE1x|q(Rwguv1P}yfq)@om^Fpo!R#>DtS_)GDP$&=VN(n)U^5@V1#IT)-~xj; zU2Wzs5SH{IO$EpxvbVa6{q`?I`|T+>9`Glv|F{>^uB$i~8Gbz28?WGveeymH))z^& z>;wnL@lm%xQpZ8exdCraxkklC9w zGCZ~+a&!>DH-?3Rp_NhIGMQiMaDxNnrI4Lyeas*RLhk{{HPKqiw&`HVj&c5~L~CC^ zC!bBUZfufrA{4v&Ce4-mRG=M`eJ|1aB{7dRXuN6CTyF#F9U*PKOrRqT5NS9VaJAXD z60PsD=qMD)NzO#;3kH->{iXKbOqSl;?({lDTHBabNYIOtwS}AYCA1x?32c9XOM{x>p7AFloIi zC&ZPdqhaD1&IV_M9iw)eMlwoT#z97}&De)jwu4(=m0SR0**k^H-kBAnxB$kf%=tK< z*}Q5zS1u3}&qH!gdX&T)xsYbYb+S%1b|e3Dmitk25;Fo*jQ1aOsI@2T;}2yI3R%?@ z(}&*SVA;37A9|CJR&WR4D|mk(aeUPaiQ~{W`tW6$?Rts#a7%hA1B1pDzr&xg1KtS) zp7D#!QjK%XQOuTEg>id&I3w_H;jB7csw=(2Vy_udTV7ev(|;C(DaE)IsxI?CB0Mz~ zHzWFXqOnIbW0@v_U<9}Z;b6MEhXYbicze2)91r#z$sZ(2VGh97l<^evsW14AzXzy7 z591%mm6MaX8afDyXs%v`ArO&0G;Z`%90r;1MLy4oW{TWX*?$=EQihMCL}*UWwoE$o zZcln?m#LMjWD&!2`P^sK=idVUbO>gF@L6y!!8;my7MOo7fcBV~1N!Pc0)S-BoLi8! zzB_+0qVJ}6K=q}G*5lB{i8ij86h}kCPQ)klBYHv5aNKu79X+3_fG@|%Gl|wM1qt+B zRI6#ZKMeDCCtA0#rTOcDM49Kwl9@!6{NhAwg`{eb^5&xr9E7qN`P&n%Tn;7LMzi=- zDNafTsn%22;eN(G0&$F=FF8JUUl$sF-OFF?iUGA`} zu9%K3pO{r}UUr$_>k!VvzJo&uepM-=+6+P+ zTGurm#W@hShHOp6GSgW@M$nP?Dzq#fcA~71H(*)D{#y@j5Vx9j1m{*hJpuo{x?)Z& zGe~$CjxEIj08WcqCT{Tc(-v@{0G3P7 zxW)+RUi6`s3e*S(%0+j(56Ej)vCJs~sEm7o9$g8p3+4B+$ZvVY0wAylrG5Q_9e#9x zkyZtm4`2}O`WodDDo^H?SCB0mGWXG7ujy2%v6A6NK%%~PT86Xb++p$BTwVE?+%#-_SMx#z|1b(d zt>U5;MW0k(BRVH*&4FPl38rtUyTBwX)qwWGs~U{P6+>T?@=Nf%j!(-G%nX)) z(nT~UYgwkiwk>4*(Z6WL1?tVI58;LT4hldB8xDXF`-&S7(+i>9p_jp&~fRrJp@efFjAtGTt#;Ds8oK=+&}w@bRa5)#Dx}TB3Es1gV;G_ zb2`F1^ISC%4mq7ZZF3X@UlWit1Snh(ymnS~h2Qzy-zD*uUEl;> zj;{g*UGRj@{+&fAh-Fs663RKZ4PT3aMSKg8dPvP+TWZ)GS*+PUPP0c~#xCq=8elf7 zcN_JvU;xXp2%_^3i&+%8_Yh_!xKtv|?kl2Edi_-g6AZ7PQZbJUFx(lttb$sb%Kcsp zYAW|9vDB$trecBQr!e7VufS*9EuaVIIwm}X1g^(@NI%oLvsR8}X|m-79wgZnvVI;4 zfI&SW=;!eg9eNJk%?ounx6!dF>s=(dSh!r0_NMYplJpOE zd<48>$Z4%`+R0{`An6I@=KGsL$EG=neO$gYF#Q3 zInZ5+fE=(^ddoj|)&n9}Kub4yU#cZ(HFO?$Qi8|(MEU;)ueULrV5|phn!df89>sKR zE`j>E+$kLh6)(Q?Ca`0d94WjANv90ayebvdcaWH{%cF2WT9v}fWEUJcX!!pgfLRGtl$zZ@$6 zQp&Tq?~P-5N+s4H%jlbln|Mz{uaKExx1ryB`g*Sq(DwoL&!J}z6oX#rXY$*q(w6=c zRoeF78=>@|FM|Aj#d4m0K_CiNvF%^5#bK+6IlY)&q%q|1^FEiJL_a%v@;Bgh__OpK z9%}zWrk#4znHG8s6>S4J5rhmhNpegyjxdmVQgja}l9*W?sM1Fh#_?0>G!Mm9V$m7* zO>tnjXfup~hy_KQMy1jlT0IJ#zic118j+SjV)L6OAVV1uqE=NAVZUo zcM__%-KS?%UjHUr-tD+2=jh@)KR_3cgFSUnbo>Amj9WM;KKubFo&|djiZ$Irf$pI8 z&9UPu8^rQPx3C0Jj5a9jXlfBG8*q2n{9U?7ifV}WF9aiFOJ0MAqi$F9Uq)`zzB|=+ zU3VI}8;#_zcEt2*w-^jd=`2{9wjEKGg#QdUy;l+GZ`;|)p>h>vr7LBZO{M!WQ^-2H z<#v9lnD+*hUA%%~_G1>Rw++zroJ|T(hl;iJaC3%`=Du#uNyst1X3SsPOhANRq% zn>*QWMFzDs4_+gq@0qKUTnbY58iSL#Ot!=|~_BkZD`xebx zgt;_e`P*tVCLYfyj;XMdy+Z{}(ARG}2AHfQFY6MWWf^#RwCf98$}|0Ax~8p8aJe(o z3sldWzpH}(icv9#9Bsv$boE~@!gRu7z~XfnxJkJ z46&jjv6|s6hw6)AGuYb}bXVYa74O1JaM{j}+#QZ39A@8g*@(zt?KlA&HCQ2e2YsL$ zR^HrFah-x|T=Ej)&YyQ4MC;xVwAC^GPq-wr6Wj*JK*zd;&W<6vV%{n^bPkHIMGoIZ zQ4q!DxD@E1`1S{&IEMEMp$*#0{aLpdab}ta$jZMl(>O>j{6R=2&;a}X_AkFL66vAY zpu|Da`2!^K3QeF-M@hHn2=1lxf;h9HZb zt=UKlRb0ftHSv^4$D4PANmyNkgzw}3>_GzIp+w|ul#X-JfVYLL^4Xi2^6<{$gZfu66LikJtdpg_yNu<>Flr&)HpWBlIJ#j&~zwf~D#z0oG&C0DU+y zdq9N^JtL}*ZcuOWB_0%qi7#s^sW-1GU#a)zli3&b!TeE(WYe38OHF)KnvY@ph_%$p z36t~6u#0#UUBBF!@I@Npsayk&0_m8$+FrT#ZfGeTI_wYZjJ5-Te%aORgIs-Kk^5G1 zFCQU(Udj*N$d6@s5JztwJpnq@E+-c~rcs{TRM&{OclUw7$i@KAhU3!W>PO+xK*8-f z64{=T%Ufp0(H@Hx;;s-z1;u)|o!1K6;Su4!XvXZibCD~f*i#2 z{P13ds40vwDw`=Ux)6mjOP}#!hngCV00X zh^0C!2Tm?6hGrBvu<_L=K!qEh`kZOQm9(=aeFHn9>9;;x`AZ~T?PqxJp`MKg zI{0}-F_}BB3_H@%bY*M_Prc#0M|yzTqy8NAlDW~cHw~4?`>l-5;{#`kpr7V|KGX|& z!184@y*vK);Nwi~O_Qx&tgCJQAZqN4RK-4r;8xn|Y6KdHWq9d~b$kqN?P0MDUo0m8 zj>^S;u>_Lfp|>~>!l_GO-ltd~C0dt4Qnk5W6}nf{Vx%_Pt0LCIqeO1k{}Jg#>q1n> zKb>g(x$R1CloVWJWiF>{6RkY5ooHhxc$<(FM(FbR@Y;D=4B|*F-UEfQA}lo@m?czB zIX}iMp7Iz}18+Gd7vow$axt&I+hfmo=uWx^ryNt+waFaLOumpFogA@OdMKV3FU^0b z2J^XG=+}c7?`SlvHi>62ua0>K3NhH!NbS;*eB?{Ksy%L1JfB0SnsW(F+oiJq#I+I5 z6u7oA97Scx5r>tfvD34%H2;o%`nKs+GqTJxjoQ!{Th=y%?L7^#OIM-)@fbR2$K@ve zlU%$lS*{)Ndb)|Np`j69@B)=?ZAWQsZL)b}B>fEclt6Jl`N-Fxxcc?D_Yx#)@ZueH z;ssPs`(~sjrqmD#^v#b{Xfx|gpdih=x7kMwP#2tdRRH(xMc{pcBu}40M!LQE73#RE z*jOAV*akgq3Z46@?_t5L_WR$$JOSg_vJRHbKWHg-@K;<_cZK+uQs_KSz)Pw&06-%i z2moMk#xlP*bvT89C1~Y>wdey5z+tsHJY=Hp#+Sr0pOc<7+HQ>FNP-(-Zs_dV%V~?Z zQn(WikZ~2m@cn!SS8X*l6J`*fWu>j?28|&mgP1Km%${P-vW)NmydGqUJ%=)qCr| z?E(#`p}e%vQaKs?vCG=WjQA*a*`uWh$=nN@6}!Jf5q2if@DAq^n%v^d9bl+>&zBL- zU~DQ>@fGVAgeuu@f1nGhz}#_8?~$B!nw(S6G9G(gt2kVb6rOgBWxf@Qp*qf$HZZLq zrjWGZSS+`lHiJ~Ca|fgGnaaN7-3fHc&*WPohEwQ|9XNVE=tFLuE&UgX3#Xp9lIg9h z$IX&v2F8ofc0aR(#|z?gp~PY0MA~Sc%pSSuqT$Eh|%v|&tB%a=+sD2`&i~mfimWcuWM!(A}g`{Y``a4 z&p=)8c&W7jpMm|zje->F_Z+Q%um_6W{m9K!+U`G&Q)#>ZHzEXoPN@8ArfGa-a91Wr zj>X#+Igp0K<wAb#d_CuD`N7X}6bu6mFlE6Df+%T2Hv&umf zPhp-4_+KQ@*o*VgqT zRX8&d*XJ9AS^N>h2rtG)EHgY^;k=~rcO=7}-1~eQ?#UbF=rAW+zCUcvG4Ns$olCDT z{9a36vGdU$d#(fMq4MoTU)Gooq7{JY9z!wu#Za7{;0`e7AYHZ@J(E~|wJ2O8n(_AG z9H-AUSp9exYUzl-Oy&%;o|MxS{_-+^Sz`HFf{zN!3n;gUQjd_lS!_coKHeQaO!68u z+yWU7$gZ{7-tm%WN74x>Q7@?bow+me*bI+UB$n?db)}hMrtTaxkXSyIb+-xTO<`WC zRLn@lxtf;GAos-bpW8fn`XaG>bICYe1M$6##PUxuohDjOLmn-e+|9x>>XJ!7?DNV) zl*>CLYX-9HB2Fqa3YK?msbt!(!e4QQM&Kv`S-W26BoIO%j`g`P|t(R zAxRvXM?L1@z9Bzo`g!$Te${|>J#@7WCVCXwG4>*VKhuG8jqrrh4It5;G9ya51})=6 z8LjE7vHF{AKCdhqThfW%g*ORXGaj$<;;!!QfROf@&tdroQhst=%Bb1KzPIhQ2}lnv z^Zp2KIzGKlMs-3p9BJE+aAvI4M4Ir-pO6EO(B8Ly0K#yu=(O#FO8M)8_jjv0x#st8 zz)Uw{q{zm`G83>D!xIzM0UOA<(R6MJ5{{?BI-_ElY0wur_JYYS35p?$g=^U-IPW$d zH_0$^P;vlrA|89&_iwAQe|bPn%agpc&C|!GoeVTJ5HAp)D1}@bFQ7BP!^)V>$KtJ? zxbV^ZC00T`0jAxznT4KUpKG-z2=8G(9*E1GQ>yRH+W>$Z+Wi{5YBcx39~d*@Tk)tq z*Deg-cUCTp#0ajZ%Ydn76dV~I6pX~G!5ZFw#XU6|E{Ng)%icQzye+|!BVN(hcEHG} zB;+x^^LccnkU&peIs-s0zoM&?I}Ve?SJ=>MCv~}5<+Zs}p;mnK3Bu5B;!7aSnL17& z^|*biAKMx(jR(Br&#%!kfs0qe{w^vL2rMfy5r)ZsN`+2RYV?j7@r_96Gm%hwH%JE# zr?`ky09-?tvmZtRbph#!$LD+1JYarD;VBdM;Y;9;o&5-e2NCiN$=HX-LNk}0k9sw< zUWlLN4_cZUsa)O6T%a3JxDe&P>{7C zK($?)MUbsQvgF7g{f;^$&3tM7tF6Hv=6jo-qtfHld){~~>|$iNL57hq_x}50-cd-3 zza%0^CPyaWH2ogp!9BhwFt0xX)0e79N>I+@>s9KUq@Az%CX?&`{Ys_%cvc3}z7?_H zKQ{?00V64jpUUn2M5vWbfx?)hqK?Rm7y=4FbsdIV;lWR=YruuFCm4`p0a2TME}8u+ ztyQJ?;n^OJv@^eip!}z9k{l{>Ij5J^bCdj#6Og_$ zlfT_}T|9MDScwTcw>T8ccmocx(T=D1nkbdF43w99w?iPcn6gsYw=AeY82}1h>wpF5 z0@o;jYGqF#+Wzc!!AAsMO)}p>=I88bW4dnw|7IkL9m8EoKJp;8iFe;cV*^BL7E`%v z*Ggr`Akm56(rd?zED}+-Eg=Pyy;5hF0I|w$!xske>W(c}@i>4gU&v*zjK`J_;0Eh< zIHY(6wKjJyjA7k?#HyD#S1Q^GcdbhFEF+DlQbin;uiFJTmoDCGiGI`g9AdYZs zm)IWfd_csOkY5`S5|gZ^A{(Vwrf*ADKM$}leX9DXPy=I}2GBl#e8Q!0K8r6@2-Lnp zXNbjg0R%;4X&Z#Pa8!guZBOT-h7iLe5td-niV*HyO&p6cX|QsC`KS4-sK%3w)jVMu zu=TyZ@E>ZkuPes)CRK{@54{wSsqAk{Z8k6IdzYf*VRW_hHHWPX8T7NYCg@s4g@4Ce z?L!#|?m)fOamuBpiT(YSDROq|Q*xp*|7%6VZax6!67Mb)o;ObUEbD)1u5jVy za1Xyt`sah*8r;|9)BFl${{m zF3UjI`R=i`u;Nm!L>VWA)P#7EiWQstqz;9e829l;AVExi0H9gF!@9_Z6QZ&VA=G1Mn=!(h~zs<#at|pFtKg&%$vGtR2K%yN>Rp_+siF76b95be_W>LRs|y(*I143Bs9~LL+_~o+dBZzp4d8e6egHTJX>1J zJN)QJ)At977{sGWj(9(oc}ei%=~K9-FpTJ3?V3KG%3&KLvxS&VECfe%#9FRoYq{gK zdpcTD4Y*y{pxjfLF4bEZ@5!X4FD&4JPfmOI{kiA-Y+C4mKtqIu06e>T{6h&IjWz!V^N5hogb3Qo7E{^Z_4C8G}Z+n5Rro`;;0(ysoPP2Zi z#bJNk%OJgRWb62ok9TL0D19E0YAUyn^?6haeBBfDpeL5y3Te0g4O%Tmo{J{wCsGMg zF}iRx-E~l}0dB|3=j)S>m;bVq`tGZOw(ee#S`cW#|tD@s)uz*$V*xFKEdkN3cPXLAo`W2gS%0TPp3fQ1&v5p`EuuTCJZO?Og9oK)&f@ zTF920F$Wh>V{bnIV)2rpxP3i;%3$jBHrFkP{{PwJV}aM{eGSJlwuFyG84Xe%h&V~D zR{&NV4^dpAU-k$5k>SJYl&<%n>zh7}Vnop`yjV*3l2pcL(F*NT(>B_1CsaXiSy%P$ zwSr57BsyOLE^$|pLnl6#8Hyn$zA1|^Kd>2HbOqW{Mb>Sd^pJ8}4a~w_g&w|a^Z+hL zn07hPw1!3erp6Le+oL>J>)gHbx~Ah+lfQ?%aO$<2RXQ?@B7=*m%4Jst8EZ6|uYsp@## zn4RBxw;){awS)iGTaeH?AtceSk1e4skx5rj)Mf#A4FJ71C}Kk5lUy?J4R9G1gwis% zZK6lno$0vIOY2rjb{`oT(&4CVhKUpnwUj=fSQinm_sT#TOnyEiZTxK^HuL$)6SNf- z0MqdZvRYZkSMv45=)D9VvGp_-+ychLS8ey=KnG9kD@x&Krc(Z$)jpJ9tpL(5Evt!E%OhpqDg$|;K>%wY36C@pqUPAEGK%poAqnGS&>`rO-@ZYlRn2qRVopKLV z^paNw*qeNW%DgB)0@&T31l>|vLl|GlBq`p%NGXL*?$~va7SXC$W-3}Sp}} z^r+zE2?!Ef5j|?Z+Do6qT1Uii|39>+eE>iqo$BmA@ZPo-}d#e1?O^tlSV3=f-af z7n)`?$1=MjHHP8o*K4y_zn{W8)c76Mwi5JODu=PYjCNA4y5O>TC{ha7%8!&TfUY{8 z=e?4&m&iZC*l}*0$EDQXA-|1Foq!*jf=MaEq|@;+3?2zlQPMXtJIN*W7CuPl_}z~o zY5fb!KYvZo@UP>+^fQVve3xbT2Foy=j}i#TkuqQGhkqX!kF6JJWy5OgQ1n(&WrHGq zMRiwa6Z(p>4M9s0gvoW>8)0)Q8{LA~{Wu3HG4pn%RV`Pc;ZVCZrd{AZV*^V5j<4i= zRNY92?e3u{kaoFW06XxH+FTQUJm??E=8xd(udmHEAr!q8TGyUwHIAmsW)nPrv6(F; zD0KI6;b|HG_4|+R((7t?Vj2_IOZOp(^_-0-p8yZQUEj@R+A3aBtXA1KHf*F!iJ(f8YzJ^(6V_an)jkSzH z7IfDBFg)DmQfw_DcTD#07+V-&GO}chwZ*Kq+2Ms>0HmL*&TXiE$t=O79Ma$OkyT88 ze`+!QE}*}M0jcTd%(gO)A+PtEw_>nZ4R@%auGb&4pu%$!?7na%MR&f^EN z9ld9F2R_w=N3+cn7BY=r0n(`%)9n=Z7zS0L-M$dH#q2hA2HgF}Rd5f~_&88pbgSY+ zku>`_=67DadvQ(5+Al{QQOeVhpBXLoTy>YWXZz7Ug{-$2?zR?m*|O`%9WN?ANsnoN zdcOP}GAr*_(EI2wIWK~htemjGqmE;;?;tR!$BDncGTa(`EXLmh>cG#d#WH0S4Sa_Q zT)|JrF*~L5e7Po@#KBU$8K1&dOtX60s5XmXCPkI%;gQ`z9uHip-&8$^`)vBR&L(p1 z$Iq^!Z_~B(3pNw;*woLc7IY75biC^FrE?sMR)GhxitWwZhxblkFLDHy+Dtyn%WvncEh$luJ zOV^{&aIE+4kxPME%VJC9N2Yaf$XVL^3r+{$Gw_;3zn5JdQ0+RPv;+4>6a`#8oPDf> z$H?)>%_re8&Vy*D60ubXTH3?zFGn{8L|zxjh&#j|`N zPpisHIW4=3%Gsx4ww0tj#)g$Uv4b$X`SbzqtQdJd?(l!RmFEqXe{T|QffP3ax6%ms zkTe4O0@%(;2-^6_mEGvYD%#3>r2sao+dxb}H3xiw$bgTl?GU2*t))?Ldk>N4qSh)E z1Sg>vcL`iw2wVqXYqj-S}SiYuq5j!e5(7wYUxJA7f>^1TjN+xCq_gck%3s zL82&ih*-H~egL$$nGl?#IR5 z#}Pwd;w!;&K!m5oB;-_s4d=t+Msy<**mj=EB}(>LX_7n7eEB}5_Nn=XZrJZ9x zV{SYyqvLLKN;~d>EkZ33^A!-B9}2NQ?j{=;HGvgGY`p- z{$d5Ym(YMmclA%LEFuEVU7b8e*e|sfBiuI{|*H9ggQgFYk&pkKF%_=+`PT-!p(g^5t%QQ6Ttf%GoRQz?OcYvbLuD^RT z-r>;8kcz~+WN_msG|yu`&DPy>31j74!XOcIHLVQ}mD(#>9DFTmd+oJlODWGSVDQXN z&wB4qpjXWU$=taZy@yez-u8kl18``C^+vqUNsn1%!#)!96^SCCT{AK=ycOi%OTwAm zSoU>fu|pS=fOl<&!qM{f1_9!Ci^)?V0par<6a?aM{y7Q7@nBFR@eBL@;X$Cql^=iQ z18J)d{2>uPesUbN%*;EYhmXZtY65!5fSuJt#_g5dyz{|EvG@#6vAFHeQSDp(yOC)> ze4xh1m9p113Uao3a2?=${E!Ws->Fd;WjLlh`wWa0+*QJGRx`}SpiIuV?PFL=99AKkOR4$%TY_0{$RXf}w8 zr|z}NeHZBSV#Un4kqu(Kf}loWcXAb0osn9?_k)dEIMJPl=h08%iBI8Qlw;WHL}0HVtfi0Z3?qZdZr`ZuIsTSn9H@bf;>S|DX(G70?C&#!Xx|8DacM%Y{z2`WbW ztvYyL!`2hq61MWCD)QcSGe0%(A9~NY`Mr%=uJ`UozSYJ-zy!l5{vB3W&^bTmXj{@q zz4q8$>XcZR;UkZ%6L%OX5Me%y?tCfJ$=fyar3{{NJ^0T@Ju9vL&IB#DFkb} z?I11ZunIz(`ml}WS*a8Pv1kk4(Csja~w>RJ|s$UAK_1<>KJnsx~WmVG;;AxPD7ogO87fe1p ziZWP;?!wU)n&?sNI<5z+QBf9$52px{RUrAdA6~@dB1uXoEk}e}0iI$?@@=ZE)6rJ` zmv;V@pM{cN=q+=eslZQS(~_A@{Vl|-jZ!xpZ$&e3?0LhHQ876_WPei<*BE)}skc-R zUDGS5j^-IqM*Z->fl_>K!7Vhrj3CIl^|8|iZ=#zYa)nhby#AP9<&Xc+x?>gZJKCSX zl$n&zL9}qU$xLtb`+kD7^4rvX$A4iyQTH9Em&%5ix2-@x5^~@1O({PeZVJx4c+b#3NvIUOpIWT{ z(m%5u$=L+U1dco$D(0w5ZyOwOyij)$q42uZ$)~Oi=)1n(YxP~J*HcBu%>88SJV&McSc6{BGQ6c8Gc>txs+wxLT*PwT5;PC5MT<;+@3^2pj&$sg^hd1aJP~H09rIwS z&AMO9op#B}T{+l2+wSEVLZga3)7yvo;2H4MaoH3Rzpl@#Kkh~9r=eegU#PwtDDw}r z-N}FMcKeI3@V&y9S1&Gj9R;CBu|r)b8WnA0^XvlvH_T=01gtpvhE^485? zq-`51`E2+eTR(th^diMEBnomfH2<$is@G*xH6s?M(OcmR^Y zkMeGZc!BtJ0W6RU4qCy9=Nfryi7#?rSdL?GY3;un0CyeQJCje?PvI`T{LUpFVB)V^ zj^ed|l~b|47d_SWc=$zrfYkaETy*KXAG{=!*NGYN;YDhC0FS4uf4M39k{G6GLzc}d?OuJ4?3zw(Pd8GZ7u`n1nLUL(s^SKDg zE;$p}agiR^Yw&ghUk)+np+idlIO*gAg-YMG!-NMS_^SqPTZapdQNcK`4AmPI3L^`# zc^s%MybSM~Q}0+L@t%vK?@3{W0e3|rUk=g!nD|?Kmmi|wbI_&ot4SWudr@B6A47R6 zH#x4#q9{wWT_%!0802{OV@;iC`;DK$yX1+sEBp-pxN@RxoMh~eDs;s$>u`7(ON&Y0 z@zg}mehR$G4zwK0Pp2~ul_rmI5Ps?694l*jHz0B<-B@We8206c{^_~I#Z z1VP^8)0TdI#jv&~q%AdX;EBFrRh`Swm}&!-EPERgdhyPmua59-!if5+-U4L8Bam!* z&e+i5OO-sgoNN}`4`1Ocrqmu);1}%lgmwC<)GPs(UqQzEcM>&Dsy5gnerAaRa86(O z>y6m`<0^I>KCWW3Sj#}l(;rWou2|-&t;m72fM0qPgq+p1jeJ>3l|b}dxpkR;PA&bH`$!6 zuB=Svc9ZqwPQbI^oH$PB{syoM&e<{2gmV{-ShAi2_w*zE+9fdLmm5FT+D+T@Exa~k z7=Vv~l!*;!%5@~y<4Y3;kJ?8MtJ(=#)ua!+r5K_HUQ-2s)uqeZ0m`7}Z>bW-cWMA1 zUoJ5C)Hn&lpW>>zSLVR0Xh(IftOoI61V5CPXoXgM+U^;KLgSDrh>q7!gj5`L{9_@= zLm`kQg&XB>cmJQ?!g=S%xo1hqQ2y|oi6Rwl~k7F;s zP`XDP-MqYvUUAXcgR{tgtWZth*x9534zw70Ek z4|{|cp_0ZrR~qc>c;;BuAk&JJ<%R8`>U@xD+uHzpcVa0C?GqZevh1A*oYvX5KAXrb zC5ZPG1EO`@F+T@cvS!Pd+%gzfNFfe!-0xDjA&K-eB!aDDg+#%+txKb|GQ!A9(zjjF z_!%#aDX()2ORmCZriiN+XsMvd2fBfbDzSATm#974?e`7z!%n6}NT$DZJ8|{`PO8}} zN2^|c+$a5T6!{8`S~o*;SCpb({9LrZ47pYhsnu|^r=s&LPD{U<-!5q*<9jJ2` zCGjpxFynMlXP8r>$BCj{b!>L*@Ko0P>Sk==;UXFet$`Lqk1IRrugAC%J%>z&icBBM|(vV`5UDS z#5m7}fq_Znkn4BX9k%23E7J-&x@I$FCxXO40Ki~{^Xf6aa1QR0uOS*$EOV9*W7;wt z4K2!1n^f2UM`sW~MI=sekq3B*p+wod%XX#kLtG4SxTq0;VqN_0E(Xcl__9I^8o6Ji zC}6{-Urv+?8{lGN0w^v%sdSJBxVRN1ii=AGCd9=U40R*SLwqFg@rX56w$l^M-83DSdV-M|AjF=E#O*nLCNID4>ijSSmilQpY*F!^!@pTq* zH^|qn1n3@L&sTJVuiqjjX!x3o3dQ-_wJ55hd_9jTuCTv;A+zNMbng%XbdN6&Ga5B; zgErx@BYnOWIa6Rz4-YAdswiI`X0<}TZkG9R1ALuCfbQ`X)$`^C`TB5-&)4W}dGdY=&p6Q&Q?`Rh?qh^i=GwE!*Tt3*(5Ko1ve*=@dd256X=K#Q_KIGG5w zPp4MDn30lPUuEt3NIkRAJ#5UbQI7YkgvF=H3{0 zN%Kj@m-?atPN}AHO>v&kWOweUP}@;h;qIV5y(Q5#w_iIha1dTx(CrjbQ%b<@%yjTuYh)gh_k|IQX!eueCJnxjwoL%_eXd-`&OWkjRm@bs0 z|4_tV!mD z0^w~Oto&iPabMeNq_Pfnd$aJH#R2v50Y_^<)j%}>T~Xc?ZUHN1Evp#ZDqdt2y_Amj z1_jA${(!AIS~9{`KCH0vE7(Q}K<{Uv>Gy@2x-|^Fw}sxh5PCkK9ii_TCTvezdF#T; z2TM~<7x{z@H_&=ydZ%LxIUs1CtRV*0j$`jYfp!Fhb-R{sKG1)6{3C=Gp%D%Exd6K6 zL5{I@A<4ZB5k@m6g$eeVt1_@Y!53rKI>4SUxGf8z`TI2iXutn!3ZaLEp%a$JqYI&X z0NUx%pM~|*uY9swS?TF4Hf2wFdcO*fLBH~NQ`vOzA{>(r$kvBF)`wNi^bT{h#&XnO zrdjlw!Mj%&?`syer@*ok6k49t4v5tUjapDOoHGE8Ex8s6<*+?9JVd=;^$jf5WQ>_+ zuKhP)jjPW2&T;6l8cWYA@I3YD814P|zDzpG%5UimT%LVJupz_VTlni#ZfeXsRUO8; z>@zfNw~)OSCS5z?Q@svUixib;KETOqxqQA3nBNRjc3Z3wfSNrh(XjpGij;2}_cj#{bIfb~)g*+(QxUlzZ=##L;N=i4d z67i2!%$uj2nWi@a252gh0UcdyC31l)5$R3(0p9wM2>lA@xfPTM2MDxOR$>P4THs4u zXp4SP7`&titiy+UHO+^M(TU$wCQP__7&@}>Ws)yBlgBa ztS5DC;GYkhoUc9&snKgzG1|khuMw659gl4CW=knR<&fL&J_>b~k7Su3F>}HYFcld0 zuiDn`3b!^vD0AfM!`|V;Dyfd@8umtkH3ai=Z*x)b${>tZyLQm|JFj^n_k^tJLUJ3E#um8^1fQqRb!ho;a9;gIUjz_VUD(B9c zKIHC(ec!1#DNLyk9S5|L)7}Cmq$oS&gKZ~BjrvdOy7g@|pz8V&0$3E|R)$Q2w0{`s z4wm^hUEwRt7lkqV(60t$deqAyNo`}%W(v^`3lp)Og}$W_x<{A@ANqy>5r2Luqyau4 zL(+Enqtu`$o>&PCM1Kw2UI=||7&>lAemX!zjS%6CSs!hyi&hEvymeg?@n8V$M=yo| z=>RJI`IQ;9z6Z9mpmm7wp|1)UgDb;m{pHhQgVw0d3ovn9FQ}h*?iI^?1QKeS&*yRM zfATXoyWIRvj31Kbu0zWr#B`K1n=cU_hdRH}MW#`ISoI9^@;A%*Ifc+KiXC>w zf)72N*X8cj_z-VY78;=`U{VEtBRu@%?k z{Mm9l&4pI#^PWIE-1^Yms6Xn+rUtPiX3 z?%g%sqYbPtk5j{#S6Z46bD){g?}_Xd{nlU1Pr2hgEq0 zDX@+_e7t`&u)aL{hcTaEX};NoR=6(;$k*crP)qzC6BtC#2IUOY=o8w8DK>7`G4I;zBEVTnF4vfOSIH zN3OL^o#R$kO>NAk`~Yib*thj7&oh;cv~~&e}}W$ zrv71H_fX5xG`F&9YX5LkK6Ject%Nrv*wm?TRDrzkzafovvu00;aA8vPza94Ye*c9L z?GPU~eMVz^>WrE7@v|m2#;4Uc)X$xmuAdS=Yesr{JUzWWK4b2jsUwEP)3ayK92zgI zAOBweZK!_rQSl>>8W$gPRCVp>6XUhx;)k3VPbQA6b{p6sa^|ebb&cuzIYU9$(5Vqf zrwOzVX^hl2Oo{ucc%-SZJ|5XMvO|22UH6EO1_$^za!CEO84Y!F=FUEI#+3TGk?Q)% zGbe)I8M7NAH4RhvKfiFa!WJ3b)G%2fYG=)vIb-sSbY$$@+0*7uoE15C26F1_X3l7+ zj~v@HY3}T%G(V4PtdG>yO_?z{T~~*X84WYk$E=BHn>h^=XVuF`y1r40rqoYX-CJin zpe|iMFCD3yUO#b41SlrYY?@Nvh%YDv&_qNnB9Xd=`uZvLQ<#DnP_ENwPMnJb_?#w< zMe63(H_n*SG;yXz3*kiS05oIbBvzZ$G-KwJI%dijBr|#9%$Y_MjgiT-XU&=j*$Ag3 z7Q$|%hD4}2WQQMV)SEhUVme*l5Sgll7ve|Q;U9p`h*-9ij@6|jhCTc{mz?9@v*yka zjMDbZ#`N47b0V`Qo?c(qIHO_O%zAtyE$ri;GwbWpv+@6PB0^M1I<9c|-58lY>9qRE z>Bt<23sMx32gcc)x%Cj@8PghO)i)B4f)xWT}9SBV3Ddh#HmWysdHz~+5@9x z_T2OyyT+BY~wrq)6Db?7!M3W4+%P}Y?rM71D!;o|#p8|Py0S7}icOr}- z)VmJG!yRTt+Yig#Z@;)c>=mJbngdIeo-qp&t)JV7j$p^ko(d(E31a6VL#u`j!|<3g z8-3Qm9+;S(JUu?QsUcKJ1U~uf^z_*cb(3Z^Oug z?})MGjcNkZwQa73+so87^qYBe;+#2{n!}|s>o%sRz(0w=_NU{GXEzSj>3F0sIzyRg z7~c>lw&8F=KuVGNc^Ka_&n6<}?1-Jy)~ON34sA}Vk8|>Fm}dLZ5N~UR8V~snx-`(T zmdAb}f5rD_bS0Q7m3TMhAR?q~9IQ^Bt~`XaiE9=N#b}30m8T9tu_F zV=wcuw{~=lA;XLTf`g{2=p0Zufv7h2)0l_re@B>>Fbu^7_=)~^U;Xbs`rp0vzm~KJ z9jLRr<<+WW_M@tHmEGB|3C9_Z<%=wVr+4x_s@nAfUcmRQzDINH z(GIevt6|=m~;M3o6Cb4cqrK%m%%$iTjd9syYTp(Z`McV z%d9)7Ab(y*Rr^VJ>Wb`?B}aS_%P{0_S|4#(DV_&Uju>5_f4BF8eK8`unGXh?r-;gE!mIb4YSqi=Rt7_Se0BL$Z-@I^+r6~R8rMm zlWA{iNRD`>sdrU-=7pxo^6HW!iu94@R8a7NrKUdm^_`}T&}5!cwqoB-i`{v+DBt(N zC>qW8gcu7-^t}tXJ}xeP|38H5ZoA!;3$Ee@|LcOj?#l1S=J$UJU!mR?*B9Jt4*u7L z{CWqWy3~WhabCRL?#kuI=A*mgqq}<5-ErPsKDyg(cjesO@m6TpiuYT0<@Y}|-U{dG z;(T;hF5QLuvGt(4d=$=u#rf^-caP9ku0H?RaNU(lcj3BgpS!Cs-R<8Wdt7#R9CeqE?)F=E z^`*Q0(OtV6ROYTz1$Ht7`rq=9Ktjp?zso1YZsfObn^*&%H19GT;a3xd?eXFP$mv-s zTHZ4%LhIQ>rF!X1u?#(X$N=osYoi$rX;hGupy;`H7Eq|qCH&ObHY!zle_~$m(%-Wr zD!3%SR~3JoL7I4Fqgb>VnbP`3Wznf9=rLF)2Su-uWT`6MTqny^atoa-SIKgnjH~39 zI$5cbTj}I5mE2k{ zQ)z!yG}4ECd?`|W7qLo2rizXJBpycjM$0H7SuJezu#%QeEmy)SRb}m}_sgI%ze0uH zrBoBaOg;rObJ>jK_Cz35at9!{4-%V@3Y117y{27?zgkzdR!W`yOq~+cIS`4M!1um& z6MXmV)r*yTmdZaud|An93s52imYjYNKB1mE^$VzUkHMu8SvN0?mQ+WXBYjy?6V0N|j5Fh~5MTpvPdP$|b4jDoH9;E*TSDFG;1! zB}Ybgfj8J=uu|ocqoNZfsZ_aSY;=|+l`5BviyjYFdT3QHIWBsNB$XVex=MFTPLA$|0c~}+H>|Af-jlC;RQ=iujb zdR}z3l)s|WXGi}k>9smNKYFjw)1lMnMpsDsW1T)PT8^j0dJg_lr_YzZ2md`(4=;#z zLKnclPG1mxOYkq%=?kNINnfSY&6>VzbvhIMLdtK^>6Yl8(*E5#{qtx~Nk6F57eyDM z-!V3IdZCub6FQyM^gO52i*))GozCg>TAjXFr#p0du}*)i(@R7P!M{#l5S5)JTD|uZZhO zx4(BOD=XM*2O_6;=~nowVE3`G(!zCYL5%x^lHYqM8#t+HYNX^wQVQcf5C@PWB{z|L z825oVxgIIGS+EZ-Q(Ah9O7V3_Fmx;Xw8!AMO5LVX6)JVRa$qV|>JE|$!>v+xs?>0m zx=W=-snp#h3szgD?opJDkMv=~|3;C_dQr{qz2r}^eqRhmv3Kbp{8in(C%%-Jq@1W=j0bmXB@+5(nj=u`!xfaS%o>vwM)DjCt>#Q0k@fz2wcM8;> zEYvd=O0Wv(=EI{UYqkaFiut!Uf|}bo_Z^i|4nxViDy6&SJ(bek(xFniTRfH09q~S` zg6)X>o6^;~BR)_m-4P$Elk9wAum+TPT7<0M;+A&D$;2^CPQ5x$WgUd9EA<-9!Vpz$}(fJld zW%OnN(inG%((+n%ca6TGP~b0!+AZ2gOps=G_h>K3&$7EmbYDqU>h^|4%h8Mybyf5- ze8Yvu-$CLf43KfHO81K1Bc%^YDP31Jr>N4sqt8j{OZcm-&Bq2}fP85Kb{j}kHTH@2 zfS=U6v=o2Uj88vPSsof+4YqHTj)AK3ljy!uWu#OgM!KSY6_=p>qMYSaz2Q-sLiIf& zN`FLs?;mXud^y243;5`Ix>!a=Zx)C<1cGLh&ZlaTsR1NHV>`gXe4z7vP?S!KYVlx) zs!`5&A{v8J2>Xw}N*Ht+2hhdx8`C%riH;Q5goUN^uV6XN01b_B?^2GJ-lf#U-lbF~ znK|R7L+Br)2nxEBTD|Dh&WjPZg<7eyO0ovURHk@n~axK*}y5YCrA3k6r{5JeafhAP*pVY7!WIw z{W?mgv}c*D>^3d$yTugKPTz7hovT*+mb(sV-z{e;^3?>^cPqXhylG{>!B3gm{VLqr z{VLqrrc5#4Z-~OBsO-0s5=>lp?YA>m_B{qysCN2Q&1O6Cjmyg+OM%#UOShekw{+Vv zWvZQxw_+tMCL?{QTa`%kT|_}E+#APV79RR}XDA9~ksjXE?IS!j_qaeqsvLPxpK9HIaNGZo*lb!#F z$KHDko}@6^wxFh#>iE%;iN(#9;pb@sROQc$va4Cg(mM{g-Vlms7h_4uvDv*CU*23!J>&h zOrj8n04Esni6O8mm&%RqAM!nxj(3s?%V(@96#>hJUEJi;wctXnxF`BU_}ut1|y(|4G1bljv^L_rzX)v1*66o14g4!gDsk< zSYnzb7+VaQm?#P+{?k-6_Qd~t({^^|`#b0MeutRc&yVcRcV3$}Z{Ez#maCQ}*)cVn z$&&1tni|=B*)cVpWl45SO&3{`9aAF=r3IRlsRq65m>LzQvSVsgWXg`IQIRP-re+JN zU3N^3ic{G!HCytK(nGmsE2;eq>6Mz^_mDp}?;F>|yU}L=wwx2unM@$jmJM8x6I@}- zSzKTm%8g>7MnyHJ>LPE1>V+EB%HlTJ+HIq1?p`r963wG@Lisw1>f%G=OG&z$8RV_NsNUA8XF-qQycqhtf zQr;<9d8cIMotm}mG$T(*S{OGNNoQmwospHaC~Mi7MiTYawq@TiQu>tfv_^SOxpccS z*3h|Qb>(V0ilC~llEI-$Dx}M0oeJrK42SCKtB9+jz=NX$3-~+zFXr%CMKG9?_*UFw z@jqi>RKnlw>ph#x99q3+@EH%Ot>;GZ8v;`dNttBePptMnB#M(V!ElB?t7DEz0d7ry z5Kf+HZF}~X_W<~Fp}iY+jp99fbNKac7_3i~mP309!uUQS+(sCBsL0g%oJ~`t>m+H? zvzL;&PEZP&@>DXd>%|`2_7jpwj;5x+A%Lh(mfjO3dH%kTpcUK^OQZK-1t&)F9ikX* zCxkrOGmfvO3aR6w3kfT(*LMnb{RJ>}b zSSNCX?#Z6gWoOWb1Er=nM72DBvuBFGW#Jooa-xtlZ(EkVBh+k7uUAI#yMkU?DbKg2 zH_@Z`J2^x7m#X3LUIzPcWKhZirNt{cgzS2tt!9oFQqrNSpH6BDp^_~~S-|o$4 zWcP4NE7I<-ZYiBUnMtNa@mIwPf(Md3i*^)VcwR1$_}u-)FA-~BlKy-bUK#PP?+IMu zVI@kZ+NGT+xxdhbdHA<8Df+#jjE~qwLQ&K&J}P-TKB`|lJ|4u@a^CCDmGLWGVohWp zR8E+RJ&f6Q@5_RkMUDV=<7yk-vv?pdKccR;~%&3^)6zi zNTr>o(x;!h@QC3btN*J}KTv{{As0mVl2mG0+1XJeW?@E602KL z%kv-qxD&4xltnvHcHd34xclBw?YYUQV+A)G1x35>_F9?Bq#c=m<4fwKlWsRcx%+Of zwY%?jxq2r??!G(ZJ_MIY{hda=-F*v5YDo9p--KnakPMF2`;BF+?*XGvcHe`hR(0Rh zuEo3WM9MkbeN(&I-8WS%TB7Fv%BI>ypK&F zQL~LwRx`(_DcXq(x)$%mFKjD?E-*s56Bl%~J8?l*dkik@YLCG)jC#8h>q%-zCpI== z*^SDwMq?Q__dKIdcH;S_R&`>(ZpAxsN16z@6Z>_uJF%Zwe{)Ci7)(p7u75Y?;U9P6 z072PAC%$YtacDQ(iHq3;5;fE)Wi@*kHAOpdWVhm-xH+vfSm;P2lsj=`H@g!@cC$Ni zR5!a5_cH43PK-%vNGBfDgk`5H%MLP@adXESeXG-u%>&N2=st~Tk?Omdc~< zd~aATDLZvn8Ec|!1zYF-;_Yb7#_pOZtmf*S=)&t5VUsA$rOoR2*tATG?#bO*A^(Q) zKk;#fSC*$Z<&&K9$)+p~J*)fh%T!;nJpRSgyZ7FiLiG-X5Ba`2*^_HWtWu>BkLZ(U z^~p>6D?5{D%7dioPNs%9q`{q=J%BI+)YA`5TelC&|jr;fz%{J1W#| zSE$<|rRnfe6#YIcik6CL{f<=sZzZEaWW5FS@3^wXQN#~1ieKlQWNZ?j!M0Zz(T&t} zV@Z}FI3Q&*1g8;!DV%Rp&r{UrSOgxm88GahA4`s={BsFuSZmD4IFXx3kMtR9-!WvV zfvkU&ZrhKjkdZ(Y!+H4Gzj#6SpHp<~wFlvQ?ZW?TL;uLo*iX^!eK?)$!&?OIFD~o; zRgSGjRX1dzCNd3QO;+4MG-L_&5I2GxW^DBGK4~!S{wJ{-IUiHuFG7yUI0oV3&a~Xd_!cpiDIGn~i*G*gPiEE!oJ^aRccM=S#t)iQ zXO$C)Rl@<5)EWQSs&`+zqSMCiMGt#om6Ze^V;}{-By-5J8JDdI;&#o|5 zaVTd<_Y7Or(Eg+`V`)S9Lu^QzA-YQ*vMR-PRu~P!%&=HM9;+zu-l7=v z@yDHuhvm0vx|hB8vDii@RtnNLAj@S=ed3hMopL*ezoJVv zy4st1v2KeW@3J2oAK$IUcofO(Fq2bY+IDl>?vy-5+s1Mq!*XA1N^S?*BXWm^t()c6 zNgCJQkpfQbHR+M_f2P4FC;_{sFgN&o3G=`gUUHhvliziUM2>p9!@1K|nc7q^n+~2ldUx?lCKoe zvOLvdXn&-z#a3>5#E4Jx)gMxshWDQev-4Wn5ZUr2mb~r?qgETm`S*f4*~eQh34C%Squco#iC(_s*<~e`XNyn3+jdl9y=-F+Q!}(Q%QiFv-uv z(sEOgdh|yrHcIHAf4E=VL`I!SqpYm(6fG94o>AVM+k`i7B&((O<{F2%W$DcZ+ne(Z zvGmpgr@YX3OV*#^cyp1dm)^WYdGnjtoA;AR(3>yF3ggX8AH1n57g&A6UC@cBcm(MA z$8^CqrXuZv-2rxx!bq^;ot$EHCV$*jS4ceV6_XUp3QuIaD>E2qD5~2UeVgdMgNEzw z>uY*|T1|r^Ez2I*$<)j8E~Y$M(DxHP5+5OJ` z<$c^Gkd*PWeAh`4gucb<*}od9ir*C3SLHr>v6` zQ!gWbKqu+!p`EnrjB{77jiTcPeKVxWsE>KLX4bz7TWn2cJ1cB~ zg^f}e*qi#q9*&I}&ax_^S4ndadBwT0+E?cJL5|xxsg;#M4gZRgJuMEnHG0_?9SHcJO^u zVRrESKw)<9-LEh^_?}W&Q1ETnzIgDB9<76IyY@QM$ly!MGMKhE^|HK!Q{K@j?_|oP zf~M}B+uJkvE~ZvW>(^e~up~lR?%$r@7~!8R4{+!Q3TbKmp!V5N+||^}Q2a@I8H(R; zFND%RviyK4`}rSB1-+4^lrcQor(LcPyz$sKuNBDP~6Mip(xf&sU;ofFcsN zp33Yn+}G5kTG^UoB`zINuLaLh)ONt1pGq)vS1F9zVz8Bf?qP-5gWx%Zkq+Yro*gRa zqAin!@0fyj8_U#WJjzquA}Pz=DY{0fkdvgi?_);> z?~6SkNz~miaa+h(__SiTtzHkX_Z4RQw<8Tm6$nONox*Io-BP;D+W&0oWVx`sx}tby zd3TJ?ELT@#GfP^QWBWU%UY4(M%F9ie45Cc3qQcH3*P2?%{XM6Aom0MEaI+vu|NV+= z=D5MsZ!ffURGH&Lm5+4hsBI#1{HUVgfTEe>>r}<=x5Jk6#`OxPpflmjyTXr3JTu?e zp~8dkWgwG-?_G(zySlXpvI)F9DmN%I(VHn4OIX_eg6$|bl&4ErNK1E$Gn|Vt=l2vR zhdt#k1v` z2W#h_+b)|e)3S7aqpX+CJl_z@@&!)$EA6HU7wTm9)pprr_cc>5oqu&Z>HHP#6k8L{ zpGYRNE3xxWSGBgIF96uLjg;)jUM+FQ`QwT>|K(K5F4}U{&C2Ny#rOpEkl|`5CADYEp})Q%yy$`1`E8?v`^oUHqWIA>Uvf0<-E@mHo^cH#%T3@1zflJJ3lvixsT_Af-9O@4k@ z(dEP+s7emQ)br!lM$ra^le3I}IT|X-4K6)Tw0#ZEUF34@ZEDl*7_Ts*HCgaWDQ2|t zM18r$(=f?KK&CrMUUUGzpoM<%fk%)l_Efb)_E#sgFG`Q<9j;0vCaM!-13z8Xg*d6@ zG(h-ek<^sbKQm}l>@KOq9g=i~Sf4|S2OayW=57FdyFajA^T{% z`Qz-69q#sLJfvb3Q|JyfT{?Fl8T-J&ps)zn&j*%>FvcXi#Z60;fwF-3dfHfEGfeEU4`qbz#`KvUj{rW zNz8eqJ_g)_|l8}Cwx2U+6@BE?MPorbc75#_(k@_Q6ien_( z#Xo+6))e@0?s|#Sv#`nrdyGC}>`LkWps=&8`%pZ8ak~gp3*&z`aru)RtJf+2HdiP^ z*^D?X4-@78n9Chm{>0GBa%@%_a-C9^S*IkXR#KOnb%rdrbJighre3Z?PE{AD6Wg&d z{FCdDIi~EdL$+x5?}-#)=Gjx@-kM45qRiaIvr}II`>Tq*6;8cjB8a_ww8ZV9!ef25 zfU}bsi~p(;LmgwpFup?J=U6yT`oENTcE~NTh?bHKFG?bJc7I>MV0PzOwfiwLLgalb z*PH>SHjT4=6-L^P6Thf1J4R1Y7|Aqrive~S;Jq=$jC**Ne@Wt5H%QaPpiC=Lof}e} znbAqMsxk3Y6OTn)`6WFjo-&U)$T5+YWz;@htzT@G2%f_>-xX*1qJFUv|oCo$@Qy+52>_nuk23ymih)AnQ%N z9J>$JPulOJ5VL( zP0HXV{&;yXQsVKDG*|OWj~SX1Fij-1?mtCq{qbh{MyKIkw>FBdO*PX#qWsYsJLKHR z;Wg1;gq-oVrA@DB%;dvlMwECzlx${a(16bjAaYJR%8nL9UK%}J@|G|A@{)>F>iD%$ zbfJ<;Qj9iEq}NK^PGX!$?-lU)OpkEFd|HXI^D*PE1DwTwqQqNE8W!K@qpm9WTqhFR}j<=VtrTag!#-5&T zBDmKHqHD{ST`S&06nh<+K4jj(lE~#fTJzo{dBu$x+i>Qcg?YcJdFghvbi15_O%P`8 zp0WpiDLINdoRz((lsT_jyf0w&XohRxW+w^{xQ!buVP4o#REQbI=H!|4NJ%1`%~zx} zJc^rto+NJ4{Hv8Ij`{Zpm?Pg=rf`#=R6JHVbHBbNVX}$M_c+=7&L^p^r;*9#pJRpIcmUaf3QBy6KFn{Ic29RzqME6ld#bU=4ODvyS~{IMN;Npb*x zZVmn7(KBcfJ73ivd@h|Nhg?kmRwkN!#i278J#@18cO3m2A2vEmF-p^V?~~IcU}pjA ziT{4_gm_55c%oHZwlLz`C;E=|h$e2g{c)DQf*N6NpABUz;^Jj_%}{UXWqG7i9_5tx za?1NS<$ay?hELraNSLkyAd$l(!f3Hzo3T zTOzIyDrZKK6n}8?cM_k_BYS%?p|t7HL|--x=WpZLzj#Kn_%sTUWJ`$-c~21x`K>w; zaz^x0^&@uFCqwkfUi#!V!oeIK?XLJ)H^%&bE*to2kN(ziGuUtCM~BQ-SU; z-nrLvr;@#QtGdHof+07ln!unXelu5(eU$=?ydj4-t%8zeH!YzMPnKOpha(eO@utK) z7WxZfYi}+y9@3@V=_Gihwlq`V?PEtED}p~#1b+$Oyo2#CiPJ@u zF_2+$4z2I3_GFgbym%Wx(a2QJQfZuo%ZfbN&kK*)ibOoo$ctmsHNT*SU8ZVz)kk-) zcmdks!<2;Y1KlD>ocnPk__2&&djk8Tsf6b2Sq z0WrsPpF=DZs8*nB9zf0Jb{i&CDXy)Tjf0Vv^H``2J}kziIxl zE|;m>7x$^pl5RhnK7c`AGQCfHGNKO~7q60^pE!WOM2dd#!Z|c{SF73~Yt+f1uh2=^ zK8Pz`*XssSWJnFOKk!+I{2ifB^l?3j7_mXsn`r(s#T4~mJDQXFY)2tQC*$d}@bV7I zAra+~_=pi5RXW*+9pV1sk9r-(EvhE@{PT<&vAL=-N(<|RQZa3(0mV<$OeIMaLo{qM zJ;U?6+H-ueiD&UAP=v@C@=5cwyIYpC!BeJQmY;UY&p74ZnzHQV=fu6-9cZL1f9r3IJANVKnOB8;M!6n_@rtI(Vz25%C z)2Z*w?*4GMhvSKby17>G?#cR!_vm7-_Ju4eOl^h`T0vTQhWBTd5I04sd_>-4pz&*? z=v%UeuaXSDn(*5sZtp#?pvRz~b;PhX6*Q34i=TMv|0B&pTRrInmPz>h@YoI%qhzAk zGY}737;{+fC{;@bgMYl1p8Z$2+;1T7nOf$e&&LayF4tuW7n4Ay>CANt;9~se0B0N4 zD%?Cmk+I=@z{S#P=3(0gC|vKLWLq>w*2<1F$^6(6~BAc2gWZXYW|Skz2ZrM-t-AVdB&d$zfV4-xFe6!c*iF0LUmlEXM`Qi zeV3t%>yrvTp@;JMpSZ8AmnnE>LoCa?IOTrkCXB4_@7$yrVCrRR-n&|+;?dQti+{u4 z+d`h`f8)W`lh25vLu+Ybt3r|tCHzS zPE=1311Bo;oR!@Z+^_T@HrF@?$uTaHMHu?ppc?kif+f*97?Y6fL#DU_S=@JgEL6aeGkFy7kT?!|9_` za>iFQ%+;dgkwWpOW~WmI8_F$>9}$0fkx$+7Fj4=gsh8!)3bX+wezN?yQ~ztHyxJ-M z#wkB3{%9c!l=7Y`WN$q_?a)8tl%I9VzjeybIr4tz*uTapKkt-ZC}f}f{k^GI3!e^h z6b%QA|53U9)o1D8EI_ZOA;qV zW_A$ze9s)wVb`<6Jwv3*Gau5a^vurU?@DroF@aZLClY}&t)46Sw;;vRJGp0DcXhMp zMjqeEy;Jaxx0}@TglAgLWX7B92AQ=idwGf3nS4kU_7anuv6F-|9$rfL-iqAX5#R@O zkC(7mYVtiNGI}I6T>LVNOujt2ND!;}pBiSZROzZ34fLcMOn9soNS@J>;fz1(Y17#)nfuPV%TQ`5a_Sbq*wtN|+i zE-|?%G29VZ#$iB;4c1j*PD$pPjo z7jkMz%W}va*eUzfjWLE^)*s}Q$2#RhobsWa^lqx;Kde)BDmmPtKf)=GbIM0LP966;<*w<1%zM86xlTRLr9}7X&)3TfCkg^N z1-wmM(#mC~Rd@=xywf7q5IhC!<4ytGxcG`rt5{02rhzAkgQJ;3-Q-N3240i6oil|_ zF}FR?s2lbJ)BT2Or-wlT_NIq163$EyOg_aY=UHQcf~_>ocfG$O;WSYipad=9=;C4Fm{Mpxc6T!*(+(y9jF;#9OD)lFTDbr=ArFvOiPWKV4 z8`MWACh8R9$&(dk=hHI)_6>ktt1wb;|a)L#9;e zD`Gi^q-B}Sju(GXj0MW_35H&lPjt#BIpvd`@>Hih%_)D$DbEmpvM<$tN>z5wIn|** z%_+}x%CnsEY$LA^D~acb_R6-M?zDZbQ*Lm|^PKYhs_doB0#m=e(DjFo`-$Viv7Ubx?HAoz~%}O zbIO(%>Tr78bO)X+pQyT#H3UzV{`Jyts@AcDW=)ju5eJW88f_-G@ANA_^w`K?_($N=m9CT55bI5IKRrCRI$+7gZ8OO$>>()lm z2}GbgZ4&tW6dTKu_(xq)?A*xX#lszfw`7Y4-s~~*SFfcF@UP1VaHjnoF+9qLxzS&g zFo%~(+}>5+mj#i29MM_{EF}rwQi3g*FDvhnu(_!dycRb*o2Y9~*=&k|S9SS2Iru~^! z3m1&`mw=`XsRTn;afx&QNi|qcg;A@GCeL&G3nIOMv;u(R;utBxjf=A+tX>}zkFXo1 zmnx-ptX!`!+x_{iD%mDy$IwhnzC zr@Wn0-rgzi;Kk#yPI;>;S*z<0Hf8@q1Ouu@Uq(xUPu(c76TI9i>HST;C}=QV!K=RomEUI_!K**K zRkE=1HI~w>72pTN!Rrzlh-NJC3b2N34_g7=Re2K8wr~ab=gOO!A%u)YE5Q3J|IrK~ zlu*>-?I)M(e!9?%2ICA~$MhxwHKczHX$XisSL}ljL!0a=LZ17Q%$bDI6 zZbq=R!e*We6_2%uxQXB!i}COl)gzL}WFVTSjT%}N2Gq-sBbG=KTMiRxmDHJt@v3g#c2CoN@rS@ zamTxgz&5e+D%n!IDZK%hS%`(ByKM);2OT^)rx7^omzQj)A3hI z`2x%1zgO7V7WRhb<~wOdW;2G}JEqd?A#qDLfdk0SlFSYbqw{p~-b zvNFDEAXmvJtd45p39DJlbx0m%9+Dc$UXIhU49PFrPgqSb#4^MtI^{{`2`X8CjPr!m zv8G;z;4F2+uc4ZC^Un{#2%3Q5C#;?~9BClUT^mJj2t50QRYG0O?V=W#OxHtU6f8zAr}Kj(ZU-VgVfCXT zAvigeobgo}g6B06f^)9bA$XpNA{l~dS%%>Gb_jmO5X%tzstGAs{+bhV7n*u?31vb} zmcMPve&}6Xy(byj?Ckf@ie`r1N@BaXPdtg~*X9|?DLK9G#{9la;BjL=U`;wLb#?|kd`5HGDFvOgn-(ja(d zv>RK{oJlny2GhAXqnXjqPkIiv>5Bz};ov-UyyVD!dzF{<=O|HpdzSC9o6NJ!=t!{} z3~@FaJuh)P+$bA8nT<0e`ERM@Og7@oEhog0O{~%0y-CO7NVBYxv6z-+IE^y(vb>j5 z-p7>taQDXhie;Ci-Otp?^8QYFv{|Cb`U9LL+<~TEhVI>J3Ae&5;bc;~&MB`lW&dT8 z@#THLPl46M%OvNN&t!_gTaBFk!8Cq(`Gq&2QIH)$DDFEkUvuLABeIs`UcP8Si^ohn zP`TJlKC=91Xk$|&)r=iE}`_cFevNNg*3a(znTnHGqB9sUAn zHt(61a~}RnD$nG@kBk{>0rOn!>16-bmjnqF=n1eDgCNcr*RgV}b15`@FL3d7Z4-zc&-n zE2We~qP^%;yi)pTG)}Os=@n0-lURz~riUzjiO9AW_1pDO@0z~VT~?iEs^06asy8Y3s#G^x#{x=!-4VOT@Wy z!DW&!Ix-d}?A${f`P}}+zx}1&ULMp#Z)?bDYgeZ{*eMU;?~jO|q~EPa_GZoQJ^ru4 zt{>{~@8Oh(8G1SWE$gYotJ@?WZjmj2;*>`idfAJ^drCPM7+jXWYs$lUy|Z>l$F-!<2)I}ZNE<;shq^pddTe#8a_NCn ztjaIcijYp_$J_SUlS@OkR}~|5-HoKj6dtmh@S?DQ*QWg2hljBHi%;%x0U6-UaC@Ig z#6~J_2?Z9Yk(>|gUp%eHZ*?R0zJe-EFf3ggMGsLG_oVgK6~huDX`DjrUwqLP18*lk zJg4v>kLi;K^vNCSL^y23T2&hHcXcwHQ;+?N@9y>e+el;;ZZ~ zzXW?ZNg$(X-l1@@I^Fo~e41?NXPEv&z4N$Y5*y_flOd{GPk$2e(}?)Hwp)=;SiSxW zVHE6gJ}qO}6DS5U^M+W#9>n(CK#Vd)y|9H&ab|itR!OxdQ@+L6AaQ#s!SF=}Hm&A| zv@->HfAyX_wAO!ap%bHN^t!cCv?kSTtodt-4P?{#NB)jUmTY?Zd@sS9V|ZW+8-;vh z?*M`GjXk4pQc7yDSt(|k)%4DPhRkFK{qhcZHVp}0AFYuJP%tcA8%6(+)zqKHdLHwg z?-V{rxj1K8G$SdF4g)kc10@PtfAK#PlFEN2se&2AJkw=PtIwtCZ-{C;?v2N;m7M&j zamE$Ke*U`k6CS^*X7PV3Ud?H?@<&eVQ{%XLr>3jNG+jNtc=c-Pkj1i^@|UrgKR3Em$glo-q0?t~)i{g4o zp0$SX@dD3&lb^+(ip8I&#M@S~`0pt387m3DONqDX*=fI)a_qq6CHkw1JR^pz`9O+y z8{7GA_CdC>?6aK&E^f7$K;-XoXB>E_B#MWn@Qy@ts^OK1HLc~VvP)&HJ(x11k0spN zq=aVzB)s8DsE^by`LXDAzSCzK!*5jgQn>BsrR2E561N?96TycIn77t>Ic4o=ouuU0 z(*U>WTq9q3#aMKOsc)mH%x8XR&G}=~)S=*$o=M|N}{{N1t&D#1SiM#%PO29>I{fCi-BCzv4qV-MMI#AN2tu?*1 zpQ^EYi|s$gaAfVDD{DkgBC-D=@h02Z<6b!$ zc;O>@)!4C%s+BnxZBQ!0tW5;x{~9z^JXL8wdg@rV_U@Sd`03-w)2ys zQfu$S`Cu1?pKbNSQW_-tO5APd6aj;FHYho6JC_;xZaZ&KHEuf}mw1!y{7X@(9|5V{ zpS7!W1Z4YjXNkM*JW#-(oyRCSZaWtl`EENeRyA%r@056x?R=`J)OA2AxAP;zk!@#} z`$hZRb`BIUXy<;Co)Uj5hsWm$3in6Sd{yJN^V8<#w(!9I1UAw;xK} zZD)@MxcQ)+yNHVH-XOR0AcgzwoUCfxcAhKoCfm89sMNcFRBq>L!;x+0s}gtH`H6r* zJ8K`5@$dHMt_t_tIa<}Y?VKU;CfoVdqEf#Dq;fm&G91}<{#xR0JO3hJ(9VyP9JifY zJfz3JJ3jlX8oQkwN&8EjG}lM!Hvy3HYIKgkvmY8dU(u2whW{#soo!wBWS*_zZ}dHw z5*fy4Qfv=x3@^T4m$>a6UNlEPmC;UmjEJrR6H8qqf*0id6mC0=+qA#H$I;Rtl`$ce zVdS2c@{iP}W!kik>|B--8O9q@%v`#cFMI5qiic7y#!|Lujli?h_g@w55-UwHZP~-@ zfpKMvE$h1rOgtQoEoJYIP(*gO9iCzt#^MEI_tLfW0U*h4?~L#=^bRAH6BBRJWER-J zG}Wp9Ur<3GqKbKyx~$P0#du)^$aKLF580@y5t*`96$ z*p&dg1;~2{&^-(2{tU1W0dMs${7BdqU_%vV`(-SkI}TuT0rnMzkxxxWHoY%qy5nbx zl}s_LnWVyj`sb9$Fn*X~CQvzEy8P1j!44^Alw>ddNy)*2C>xh=8F&-@5M@na5i4KA2ZV=raqC>?UJXh`>4%$c9Ff2alSM+)@ zzr`cf50CjgW$wVmONd6?PSkfE>*K4LZ87~L*>))F-PvZ7=#FLQb@kEHAUYGGvmiPf zqVvjlt2;Ga+AtrY3n04CLB+k)uRo$1U!mH1M%h^erFsO_otmnHqFPk;J)i1%P1Q+J zomuv%PxWt26)UQ<%KqU~^?6j;Rj#PcE~_OdwM(}D9EVq;iygfZUE-6Dm`B= zI}7MJ7ov?2JrAPim;I^CwqI!P@R(|4wbFh;*#|)TR~*Y_d%g7}`g?6eJt}I(Zkn6*5LG&t! ze%l#Evd6B5=yxD`4Me{S(d7_b0nuwA`n|FpGl@~!dmTithv@eqdILmngy;_(RP@a* zt5x3=RNvfG){7vwZ*GR@EfD=7L{~!eR*2pP(c2+<2So3L=#LAz9htCaSi zm7PG4tNrH?{RKpS3DI9c^brRYHnn?F+0;?l^k~_?fK87<^l^y(8qRyGA^HTIX?_FI zCn5TjgNjzYs9Uv}YSq(as|j*F{fvVO-X2dWk91bN&z7|($mRX5vyPDw`W!@m2hlYU zeIBAOK=k(z{R2c_gyf@nvGc7kX%L^p$I4MaOb zvqCFtGIYhUBXitdtg6NhI-3p?;A-Xk0>ma%fM7M=#ABb)T(d{9+ z14MU(XkUo#1ks%#x(h`6L9{f)~n9)xJeaztAX(O*OKV~Bpa9g=$+ zL{F_iwBLqkpZ19MHxT_*0nt9z0iiuA5qew|Lf`F((9xX`x?=yec%8loRLsBr9kzgH_%y)ziq-b|1?Tb0*t)yYRk)jkf;gKIlh`?TX~ z&j#qUTC@-OD70ZUw4q&BWJ8y($cD|kA{+X5MK)a075U+^uE-BhKpTD!ZFm{l@D8-$ zsBXxHiQSM5-|U9`aBVl_ha0;gKiuC9`QdHHh7Q9wr}w{KR8ez`x~}Guqh>ts zR+r!KJZ;>?u`Jvu3rBHH`va0ID!59NI^P_#W<}Vg>&Zn5Rl_W@j@w#=PCHqJ+GDIj zq1q~R-O(y^JA=2MmC|lY?7{_h;VX9GBD?T)yYLOWaJgN$+A3^z_MP2XDcvBU!|7$y z_>j7-!*VJg@+alo@<@`s*R7r)i|pu_*}MHh+)jwkrOH~?QOkS(6CzpLbyrz?y{Q!> z{7*Dd@OK{?$ML;fy^O^va1R3cQF;kZ5|r(qmw$C9=64TMRgtXiF-pGg8uKk8Su36< zSG<2vy!?!ZtQ9sW-e1M?{iU&)T0y58Qaf8x@VDnuew(7(v66xx?w9y6(m_YWu~KuQ zGJ+p-mO_?OlWX~(3DL2V`mi|WJEXFjU8&mF{zYXY->Q74L*uwXOUQ`dORD`kR|@;3 z+RbZJBxok(*qQ_5HCvE5A2ZH@=>B6`=``9c3SQBvQepMTc*Fn_+-EJx#c zzeQKsZ6lbhAGcb$XJD&Xr93 zM`2|%k`8pne~DB4qu8s)N;3YtuU2cN;@U+q_j$~J{MFW3J4@>1zny9^sc;*u@*4jY zOj*l9Wb{b6TkbEF@}I1%-GeK|KfAK^ss~?F$%Eg_wpCZEfE>=a6_DNbRt)@ho$!4v zi_7HptvX1x{H~ldOgK|Wkzv$(rnoPx(qH?ZDVhA5noKa#{;Kh^{rvWdoieIMNt|C^ zlO1JQ*!iC-bok||wASXYy;2&;Z%$bTS~;Tj3aNqLiAgC`Uv52LR`NS9Qo;3fg(T0! zu(zVFZZk>CZ>UHUj*Hp-?O#xBPNj=8ih|DZ_SLmjNp-L4qbfSn%QiI?^!QTuD5>7F zYDCpRwe(Kqc2QN;D59V>j5;kuQM=6urDxpvz*OyP;%MffmlpSPf6m6~qiY9DPOHHWn7)3peR>9GW ziiK3~mP(6i=~e^C4{RVCQzsaDx07}V6YJ~PKg*iAl_A) zTdB+)(k|MymMz=O$k>%6?(T`u3`0{7GTR=KZC4R+!%|Oj-SDkQ+mZ266%(o^ieBEc ziVF1H-EK-}y=3MljHJ`3Gttv4v|1#+ozB)p(cYEfun)^)muPwWrdCQ%v84TUhp}Jx zPc7P#2EypHSVoRIz_>&A-hr%%8ON|@3b*JWwwdLQl@Wv5_N<;VHx8Fs9=%-8%0MBi1+HKV>r{>U$C7=uVg99X`t@akq63AX;UQd zMH}GO9c^S+vATK@o)hRADw=3&XyizIk_~C%V+KUZI+DOjk2O>R;3iGBX_zsJjx$tZ zU^3+W%A$po*s?#uYO)ArM?mM&#F4m|v*GfH{&4gP8$suBBrXu`DrOuXz&Ork;&Wyk z7r=Og%jlL-i$gtw=v?{0TXFP-04nTL!0XB?(xSRj(z&w2S{d9VOz121;whF_(l%u* zzqDaPEZ&bgz>5iOQG5(kGXES#hK27z^u2l-q%H!YeG<7m$J#)5Ac*g^U%c6>cc zi;TuPw*^Gk7hr<`Hq6D6XyMZ?#!GsSkT4_=DXwz`7HJ4-u-ApqKvw}6V@b5^-X$)b zTP}+Rc{e4%UWLn+L>)c};cF3{t2B;|2!gy}=5pai1L0s00LWv^t zxB$o}nH&JQBrx`6 z`r>oC8SK#H>mL4HtNFY*N2Na`*pay%3 z6=X+_r3ZP6oL)aD))DjRFeq>(Al z@GRynAHdQLZcBJ8!7wUpg(nP?Z5qaU>m+c&1iXlw1cZ6c2=gqU!YVy4VzSbi0h|Gh z1yo@nd_)LY2o1Or1zn51j}eM;E{#t4DP59`6af@i>mzc5vMyS zpu@b2+}u~krDgQ&a$AF19M-~C=WKNaAen9io!(@&5p;TCfOI0P1<~jYOOQiA55V9H zn`VK=KxYT}2lyh;Wi28Dt@6x;P79$5v@A?M7M9a~EG%!Ea;H6S>kHcj8rjBaIUNR2 zn};$U3Uo&+leMI$Jkwet%o|dr9(g6T))SWBTHrJ+%+m=t;hh1`wP93Nw2D(~6%ZaY z3u9>>D{P}j6)Y@}GjF57B|I`M#IuMGJRuCAKu$!K*RZCZ9zlAVOP|*+u)&JV2_$o^ zfUyZe$Aer!=oUR;HGmG?Od1qOhva!TozTrLSAHwsbHcm9t`WE+Jzv9I7m`YI>O*FQ zh)SZuQ!7FULuguKe3eI)FLlmoVaad$qL8oiJ=3Ch`8*x2{LlF?K#>Yl8W=4egoSxz zK)&l$ED4NjZ|^afGej7$G*CVw3uz?cqpa{m(3lG*%xg(=Q%ZB`^V&sesWB`q1#am0 zhO{Vqd0B)eSTu>(1nTwVxqPjhmB6+hp05F+YbuI(gawYp5b;11SRn)&5he^$ffN*y zEP<^+e261Z6Df)OGBn$S5$3g|x!I$+^m*-~Y*QbWZNe#CTR?~AhFsZgR~i|QfE?A9 z%u)}9Wg8frn?y2uC^VUc5vGojXDEdtthvdlx%7GMq7=2ECdftMl&&o>IKbo=0=crA zk<8FGM~y4bEw}PY3TGPE2ozAjsfaA6C?GvV5-lF?^@1scv8iwm;iurdt2#ilzl^5` ztRHqYz^_d~LYEVS3rL{c>;A*p|5b#(W5AQCD~A{2Q+xC+v^hR30O0Hn`>kRv^yY4)gLVk`9ajs{#lGbvKZY%m`^D z;-lr?54}Yg1cSNrn$pyQvZ*>`SX1_os zEp>&PTDXD*Lj+6o`=o8D>-t2LQHBYeB?8G@wSgMpy4G970viBhZWFwhX9skTN0r+>L5ow|B99fUVS_n?+>^VNfh$VSh_FRw3#bAO^TdwA6jMgXd-64u7djw*_hd9eU`Z z4$z^`dJF<|!(5CuiPyT=ruLyz-$2)5u#1g%0ewbqmpAB(l&JGTmVy_)f!W3*1H!Nw z9%mq#>m1AmvNKracvM)J$BD^2X<*F+=cPdT9$A>MQc|IYhjoZIk0VhaI1yP+je+Sg z&Cs37H*K|>)=bmKn0%1O0A&P?eJRQ_6hv{IW0SGTH;dz5WGDFnM3Iya}f}H;N7(u z_SDKwcb}gNy!~yZ7xO$*?rKp5y!T7iI2&={tey<$jgcC@XQ6C&u<#i8H%;U z5U*88DQFhZSz6AJ7{VI8&#xjfgnWUEaLTHeJ=3bPSLPm3S=51TxiUl<( zkd-zCZfl>be?Ux!LB2Em9S8WKPV{slBy=^D@(LWt0@r)^K1v&*>X|n8q#+s{6e){5 z!=v6?K?Wv*R$s}sx&q{nFrRr#pAw1+-Wc@b25{hn0&)xB1P~fbKv-_;JwF64La|+*G(;9+E8?Tgy@_6uf*|6~tF@`D z(^Oq4ZJ@NWsKRS{QS@w|Hq07-YpgAEIB^4pheJWn47Ftr_SbX z6my_A_<{-ZYHeB=nCy>RZ#IyyK03TJ3D?e1emQ+fevk z8h9aC`zzWCV}~IK!xd<%87ZT|{DG9$APJu_*7k zi|~D+p+TcKuW3!?o~G(hGn-4F*Jd~vy$KpwNLlTzB$q#7oO%HQsQgB5Iw{k&4J@}> zkRH7hhjXECgy+@(lCY!!s9f3Tv6E(8gx3LiEqNp6X;A}CTL z1Ib|ccyR!!f>Z{Z0d#r_S`r+dFl1To*baJT3YzZ?Rb&_B%&#+u6WM{VFxz0}1$`dq zjuN*ZNL*M$v5Nu~1d@4v!%97}+~FPAE1p8o>w%`0loM{P1holSi!c})o`x_gEWdSy zA)N>-akqE@gLQgjEiuE}QVSH8d+_96gXHH7n(bgX2I)lIgfO51lX+Ufq7MjzRGuuX z(hDj~mRB0MhznEz+nLu4q%$Ov5nm`q_b11%2vHJvyC6hVsBMU@xjX#LrEhKfY5)I_ zuxGQtZWwZiYcPyRZ~Oo%Ul5qaLJ~5_(P5LiZ-JK@L$AhjGP)KtV=KN6@YVnfJ%!@& zx_qG7yhn)s3W2vfjR}1XUe^}eg$yLjt-)u^*`{Xn9=hjW=Ndxt5M59&yRtx!f(bIL z?@(F*102k9zEvPoc+*)v*{C;)eQ?biB#_Xz-U}4^RK~qaTspT5v(smGOUJb?xOYL$ z0}$xooK#_kf=R@Kf}5C^Gt5-r8ZQdKtPF>P$B5dP+bnPI0lY7W6b6#zwhN>R55jf@ zk-2uk&hR`BsC+@7?0_XtOn4b38xOw1>NDNEc&p^%Xjk!xgcRk zU>%@C2BLV?QZ__fywGPbLc!I{LFV0&@flw{B3iHCejWBia=fRJuwek#3BVcL{ zgS;FBR+p{?I5PuD9)vh^OAnd~pttgJBJ*3KAg>)@g^o-^7+?i0z?@!p0%7?%ff>0& zBk%ez*!sK*;GT!)S8Rr-6L>64KBV%*V=DrU^~j*k5UP+Mz^1nH>X)`e#{_MO=50Y! zdy-AnA#b!cecm>L85lsQMS*0rk$O_TSJmL~0uk#$zAswzAaxy(hgRK#0NpSb;|&t; zlcKbY_Xt13<-TvA+ltm-Vbg}tmjgD0yuK&CuX%hRk|3SiOdR$|=Tc86<^|WP9u&w) zEeO*J39(DU1jdnPGt_|^g0Ns_NSMFVt_|$839gDb@*vbMKt?SH(;7_J5+%s!V8xKo z^%T;8L(l(?H0CYgqJmlwrZt!l?ArzNqUHuOL&E%>;eU)8SqGPtfy-Erj9L(;HJA{X z7tD*A8_Wy|^LK`SV+2_jN0VF?01D)!7KCXHCIq$w^CF{znIWO;DWm~}4;bE%3T*v& z@eU?Yu=NAQPYE%f+Wr1wmk@%e@sJQ26V}!cDr5&nzgy`c?&bjT7&2+aF0r}KQ@ zqV^(3BMc0@B6>sZ^XRbJ(75u%g-1pUSVOG~rSnE<5hsVzh3ajiL&-WkghKnH)O4Z! z7OK}93Ps{?lc96xSDZwGZZl9*ukx-(A&8Vf!rARi2qs6KzDp5Wchn9(A@kA04LaB15}@d zWx+bV6+)b>C!#2ShLdl4%j3p5UJwz`7+rUi2bhE{3G zyflD38ItURx1m7q1wQQ8#%Xs1>ZmpkeVT`m*Fv%2F!kQbK^i_IY2JW`12@<>PaNQE zNmS-_WlMB=Z9?6Lu$CzGzRVq{AdoC~w}iE+lvMd!RBBEy_&_tUPLC6j*}00(5e?Wi z!DL?0f{mKbKPPHIC7fuR>F zF4#Uu=r;_$g;y6s=hA@p&**(QmnsVTz5{W3AH5)~#uZ1{<^Zb$SkUW%^eW(+F7Idg zVU0Fp*!x~6z;1H;4Fn_(zFHI>Ahs&loYG=wmhuPGf()wy!Wkx_*U zy5;5wM7uLZHtOnJJw@oe-5!?@?AIjG{A0ZU;a!LpeC8jh!4iG@yltT*nuqQ4|9}X{ zM69+2gaP*XB;M!XU6QiM-|Tj2Kn@5X0i(ENf?V|#(VVF8Nl!0!T)Jk&c}X{AgT!FOO1Fi_80+Tq9RXVD`Mh23Fg{HR*g1zQZVH@(2h3O2V3bd@G!opnbEkd!WL1Z~K zf_vXBFajpFDY;Ga22!AD`5OgN+eXj{a){UGEooC=5418F@GXoNFBRh+D6O@Dq2`f+ znF%(^>*Byhfo_NLJ;MU!W3m!PU!a0OGUyJk?a)JByo6C9!*V7xxbcGIhglXZuJnY! zK-VYmNucl@An-IKWDcc+%tb)(ESB3k;DAcrR;%b!sOaN=HJcRqpENC^9aBPfA9U>u zj;_Fk8b}O*4>15vZ`=l3n_p*s&LC@X3j&pTeE^~i>{0~kgzMXoUI~2k1CX^qrDqsw zWlJz%E)oa2Adn0w$S(}(3>oW)53Iuw8Nvct={D=U6|Q-18OcXjQ~Sb*9%0Ru(G-2& zc7VZvOhs5AE8SVVvGA#W2SFGHxebS0UaEt`z@u_y7uz5$hP(XGHn0K=fn3?eY$%4i z{4Lzn9R%c|&EFb8=iTHWTReF#U+|V`=?Q&Pyn7sALM(RU!kb@%3BlbFpchbK4Q{j0 zm`50hYD9)GU~Y&NKqI{34ZOS!A`7t#HIZhWJ3lr1Ax4C?#tcCDd5>z(LPB@*QP&Be z{{ZB3dFv?9eLh#wvtVS3Zi|VY_xyzr*Gm z=z1V{7VsHCa`!d^aYh9T(~U*wHUni7kVcDb3HV?0#edhwzxKylAwFF(%|2zQX4GV; zCB#?6c+C=*5Q0V2`rP0zY_v=uQ?4BPmw2-6to zut2h~$n+*^xY=GxDsc5xI`P;yt*R2PQa(2t105Df77}w`NVge9=)9#iQX9$(>3l=Loe|;;e5e;U&1Vj!E7D$HU<+?W`ECG@ zeUTgP^;RuKEc6K>Hw0Z{kO~mIV11mQvnBGqQBYFLaGN}xfn+6ZXMUZS(;NQ5j?C*0 zY=5;()sYIgwI?0S$=EZ9C|I+>k4~ig%4JFCVlMdaa@*m5ZW6-F7*|x&{KD zg+Z<$5MRLT>+PYV)`nt017f9H zSaUlBMuL}?kwCZgU~L-)xq^z_qwf%%6D^5g^2ou`gf!Qnux7L}m1|VkOLpEqjVmU1 zatDmA><-b{&F`>MvNT~p6IE_A;MN2h5$GmqC>A)1p)Ib#o7nwQ|AjwvW0kN$pdsi+ zZ5^P?{dCQL?JJYua+PnlqSv0i3)YQA=yoJ{UI3)k&+4u*Tnl=0B^b#N0vA%AEZ09M z>p-i(B^h{O6HtXgz;*xuSs_N?MtZ^m$--RdjR0_49So>erlOqanjb-x6I?Rv9FJ_{ zH>pjd?kdzpx=tSv4Z=VUKx7Ehs`L@j1d0b_;dh>}UT^0b3Jkp)1q{S$y<`T}YM1FF zT$~XndT0mTLCjAFm7u0U!f?BFOZAb&1>PttVoV^n)~An18t7c`Kn~(WSbk|?oPnmb zI$4;t*hAj4L4jl?)d_?Jn(>*C=?KV0#5^#nzMwafvyW~K%g1kgFVO{ zp;)kSpkD&*^~ivakhy>?*jk`7$Zc>b=Wznda0Bw1p+}NFV(H#O0+WHB`>*5-Y?Ma^ zdJ|lrW8ZqhT0n+a5eAHdP4IT)!x*v3{6XZo2pEfXmXH%G@EV24^cd7fL{swnoUMGr zHLwd%QxT?JqmN*PmmAVD^%3b0yl;qD5f&(pZbSYs@aB_u%L1v@E!0Ou)7;yCNCv{1 zE4Q`jwGZ?W*$n1tL>7t#ilcjuuXYOTc5nJew&*76Bh1nu6#^(M;{!$y(#Gf`c)1GP zENcN2vWW`BYy0#ucbdt~s5R?jiSA*-{Rx0br{s&YN2%@GGQSIGSgmk(| z`iK-@U-`EP!0mL>iRip*iEvi$UOZF*LDV)#7-|g?s2!<~hz2_p-DdJu-(+v=(?KPu zA&?MUgg`nZP@d)vQfdryPAN6E$&v{RM|oI(Y-}oQYgkW)*%~HmV^g7a>*+=x5e--r zz^xK^YjtXAPjf{ zks(a0(nmxSD8ALn=+brR5^bnHLa;@x@V1L+Ma!LwU6u^%36J zAz@b`$NM1mN`AT`P4fj7F%f_1$7k2g*GCeEKEMOOA{GX6Lp|CEeMBliSOq`L<^@_w zIZG-GH{Bbdn-E#+IybPP`J)3VKv-}udwrGPHlVY$g_XAHfzm*uFsB!5h)ib@eMB@s zBe-_jbU3|@ic*^fmZaXJ{J=x-Mp>&H>xBWZEWd+V5*vX{FQvCboY9gddA8>FEanVU z5JZMFAPmGUCIj9L>|>7%bV8s`Oy)TRGz#bhVlRfx+gPhFg$df!BgCM+Oc@J(BbhTR%xx>mwoy#o{PP z90-n9=R{4=P1Z+vi32X7LLe1_v zVu9l5jgarI&}Qi)(m{mRh7w*EL>OqHHcB6naZNq8jp#$M=F0uN(`z5=Bk~h?)*6w8 zVu9l59hQAN289(-o)S#CEQ~VHNbNR#gzNs0m2N1bCrfMA$6{aPD~4-6eGD}OTrq3} z+ootU^|6#wTbL}ZSszREE=?)@4rFO-^|2y4JwjiDErx48eFPUk5b~C!fJ)2M$6_`V z!!@5ig62cW3t=rlAB!n0hHE~33=60*DlJnVi;d@ExaQMGcuNkaaR2qIBFsKv?j`*~ z^w&6RwDI~#FJz(b57y~=eIz>cJ;On|ULT2Wm_FA>`c9$$cij*nVMriST&IQWBk`h! zpay%6fd*>9`UqaM0)2zuy~1cP`{#jByGb9x^bdyV=i&7-Y@=?cKEkUZumcF7BeV>C z1UrDbN*__4fhKrM3c9r&_$CcV`H&ge(lWwO&7pMKYx;;RhTa1^I5}To4ik?J^Q znf8i4V(DN@%G=Tbi3)7rv^v$sHkE??^~KtI`Uo119Sgh&ppD(8R_~;?Hp)l=ak8oU z9>s4criX<-hVmggEkhp>4am2pC8I$f_%IpL3%S7p2|u{!D{h7kZ@GbZf%}S>?1_VP zx~udNUjGm$dUJCld~g(MMt*^W%>nU~kAAbYqx6w<+`B{<^f4SP(w3HpgvzyL`iS&` z*aElq^K+I|Sbj4wr?+LY36Xh2IoOk4t6I{>p0LlvMW6-PjyA99!48hdWe5XH9!v(j z?Ooz-I-H(qn{+!pYq2A}OA$=wNdqGaT)>A>1*&WTSqoS}6RaNYG8`Fj)Y z7SFU6M7$>pxf@}ir+^uOoR}>CVDVZNb`K=D0U?$J3j@Y_@&g@&$u_U<+93QO8SG zl+ctAQO$jF5H+v4GFqEHq}|{e63jHHwFm>!5E(rp_;zJr4}0ruB+zXsXabz=!Mp;X zkTtb$0orK}yjf1Wp*|(vz4z&SOT0ZWuoc(JkZaUNeoW7saa?5?B z16u)vi~wXner~gl$jOOJ4H1R-5Jn5e5kbp|QYvjKIUplTsT(}D9ikFE3kV?BP!K^t zzt823OrOLHr~q@&eBnzDQ0_fF=}Ku~O7~K0OCBpGUQeED@Bdn=hS@G;iU5}frJW4G zkU`@UVW3fNKV!C#u>^(}7Uqo&L>6Kf;-hr^BQIU&71mT5&MT9yPp4LU77}`*kGeWQ z{{hJ73h6$d%S&@%aSY-!z{s4L7mT)mhPWhc$v8N@yRHKr0D2oo4j^>Jqalv4ynK`{ z?(qg=USX}2E-ns93}A?RklQXeQoZc#b9sruC;3#}Imdf0O)a{39^|UrWL8?PVQ?tI z>*n#fLOv{9(C7?Y8X#7L0dc@K*F9L07pNd9g+WMuhz*F3($bS&A3+dt=hfO&{%WeO zls3>p=&sIQ(~F{a__Sfx_`7x}BO%Q7Zdh~xDqj!?Mh|kia+>Ih2^c_t1dK#qaA~Fs zKZ(=Zuur?%BD9o)gf3@kS3q9c1zX3(7De7Il{Uh(v)cTqe9^+7NIfdgP}T%D@i!T= z&%}^0r+FzG*_u-nNVrIPSgJ;x2n$x~T{{3fTBM+LT^soNa*z?AQ)au=! zMjA?NT%b5;uh$J>RH#+CN13-~LDHdJL7aio5E;V43;|2fP)0B0fh=TLDAodTVNF1W z0M62qg+w3Hh%oS=1tOzs#J#<%Cq!6E+nRfA*j)Nj+6vZ>$UStyxw1T$BSBP!L2fI- znArG`YgDl(bc*3FKk{`b=E?%g(=f;v8#Z8@pULzXk>hL^u8X!Fp2 zn}^yGfYqZd3GX0BmU>KiN?W}JU||-fGmI*~gTmy0zNxTxydc12`Dgz?1s)l2Ha0DU z69gU>7Sc{&8IWH}Dr{>=!vi@3$v~ShXNVi~a{@DRcL25`#I?CqmePD6>%Xr>o2sYV z?9$7hHc$MIdqOu~A5jtt#XwF2w=|HnHcst-KDK$t_6BWXd3T3CUmn^B4G8p*N7j;o zS5jeM;pxf8y&gywq9Dv0aL)9s2$dCPmv@Ud&=+A=CM%NL zQ5z8kJ2NmcJjVtulz5!J^#o@bpz`9n1xAF( za$O2P5C|U5EkXx;=si>nq_v=tKx65kBCYhAgj0w|2E_&P0_F=sT^x zo?t@A?OKhbg<^s4QNXm|z2F?G6w$T1A^8;qnhSh{I7{1mA!!R)5sHCE!TjUdffNAF zO^7V032yI!HCS%QmEF|)Rlt=lJNO8@PvWIrkUDcizB=$d1+WVg0{ODRE$Ez(FWZZa z+?@;!*7X!Agu2iiQ)=7Ba3 zw0WS-18p8?^FW&i+C0$afi@4cd7#Y$Z60XzK${2JJdno&FYd?pug23YtT_Itx)c2y z$0UdTj|a|gm^<*a87B^$e$q(;&lomz%Fx~VpEhIG{4@GbpEZBrZUgohIAhjHr_Dck zY9uIC!KXZN#=M3MNv1Gx&Z2o=nmudqfIXsU=IoQ_pEh;CN!*Zzc_*Jdb=rV0u_^Nw z&6(Ojr(`9;GiK9i5=CU1KAp2@&g{AK2riGJ*(aVd^(1vZb1KO`*+x#D+Hlfb8<;U` zo?UF1H+ROY={7QN{+!dM+Q4Zu8Zs=?=AJM!LojDi!@LvbO_k=HH2Y+AHh5{qNszs zH%k4Ptl2(ZaNeZz&VOLrF{7fg^0;C`#dL98O8=HktGIRk)_iiydxc{ToH6mTLwA`t zqp;P&!h*{i4!(87NI^NEV%fpBin9rlX8|8xPHu=dw22l@R1SHwYC~WO$$|}aBPR+sE_J$Kr09Zcl1t`qSd(;`kleYX(B*+WC-1RO(qme( z)r8lQ6C1fRW=9!o5Ydi(w(&r80sWNEUhrZ6vg zbavT*`0~+7hsI=WR9Kp9R_L;q>~+zD^D3@S#un<5Maz?imK4?`A4G-a$?;>8x@p|8 z6$2`gRZG?vYLC7k=`}AosIa~;YGR>w#K@tA!Q=P7e^N4c<*$-n`y|6ynVn9+`wr!lutWRp|2Nq6C&aB^e;KApsAgpkXY_zm| zKA#rO<$u|lvP%z64lnB)Cmjo`l2exUPlnYqTCr06TiBKlZzZo!+mLi$nw(OfbZ;yy zNWME|eX_o;k?U?{2UZp~6t1QJC=U|C|E$oZ6|!`Ea^}1vc0R1YH>LLEnnQkQgC#gJ5XE%6o3HO&9#wA33%*qkTnFEpm zjmgB7$)fsXP-Ak$%4E03Tav@-lWiN5lUdvEqsHWf!h~CrG4;vN#$@cuX zG5H#uzD-0I)A65lJaJ{RCG%2m6uKl;OADh4lSJ#MRZz#&Cuht{7Stz|qHiizRa{$G zmYhB|xpK({4w40h2iOVhp0cF6P$!OaMIoS@q@QhorE}*ko3H(q#gL{J)N0pL}C$p@;_JSVB5YV{?Vz zqj{p>Av7=Pw2IPCVc?i#^0a%|jAZ*&;xKu6Qnf1i){??BTk20wSfBj7cT1(NJgYE` z%;&i7lAJlAaDQ^&*`$V4%^I*K=~7?lT6lqtsCcY`9C#azyeT`6IieukB+|ijf|BlI zMI%lw+aczYTMJvAoOG+#f#?RNDHp^Dr{T>SMCaVkXX2lGk~wVAw7rv=6j#&w_fM)C z@4h8DeOl6KUeYkFzff2$MpM!t2A6;&zFB?pz#_`P{{`*%)tQC5HOb}^3J)Z2&s(2d zQYCs^q|T0o0V1U1ib9u)Ckms+T=ve#?7w8kX*!+BteQ;RQ0Vi-3YsE1aGY|o;5_<* zNRM&F%8KNMC58GC$%XL%n#)8$5{bxMCeLk0!>BO!;QO8u0t#KkA=zFH3ofllCKn!i zo6gEaG|$=acCsZ+Hp3n(=nj|Jlq8Ep6es5|5j~&$C!*-TmEv2fEYL98MvUQvvbC4V zrx&CgIn5;9IpLNS4iWzz#D>ru$K3HcQJA$MIekOn@Is%YSE25jWMN}+^!o26yEeX@ z^jM$#V9EMq-14MPV={U9h-8a-$;{<@j7WOSOHQHU(0R$h%aeB&)BHu_fhVvvGGOFNg~LPxzO#g=#M$O@a!Gnv^FgIJ7mh1Dl8jlO%;wCxArc9#f@ZG5Hq2|* zrFx#=UM^EJ^~ror)57;C3X)S-k}ZwN{glHf-P$>PhsI>m%H*-A@s_iaMJto}^WNc< zJ*+Vqvoaakm>jnuIc{Y#j)om2<`q*FbmN0BWiiupROkf~aH63{ik)kUK^%aE?>_r|o$#dtdvNQF|XRS}JD^D}^LMD`<&O(!l+i0E= zQ-VxqM~V@cbe6sSPo^%s_D<4c`Sij-F3e3P6qeqbY_lpkZB_DYLSx5TU;TCA`s7;$ zlO*)Y=GMX_p3EESsYfW0tGqx-K&`yQGU^2x%ySN-Za+dTud?f*6&X&kW=fu2$SWeb zn3_8M@#OY`a4iqgvZTZEib7*W(sLz+`I^P6l54~gO0?6Y7P*9aeX$(1G&PGQRMO3g z^3K-zmg4+F5-%55g(vv5(7^vDHKOueK7T8Ddf|rTHVUC<7p_d6l?ycLADN9r{0qY? z3R9E$g|W#;G|=a)>_1`;y7H2vhlZdWJd(H~d1Emp0vaGM&;Yr8$;$r8bF^N%b;-)) zchT4nZ%L*#CO=)Wravu=8k2DwlH-ZsOtG>#jaEc7HnwX_PLkN)iDJRZul|6RGlfBg zg~?31Oc+B^czB^p|Kwq+e17M`(uv0&pPVsZVqxHvWL{%o`ctPBW+sc~t(ijWc$ygZ zzlx4uqILf%d@SqJb0o7@3Wk zJ8UZ8fW{~)AwG#w96-?+1MVxL!6gQieQx(vsV-18LUtH%7B!chO`0c@&6CKOdKS7hCDyr_NvbO6 z@^^Crx{7XVn^QE{NpPP!JE>LPOJ)mhVZ+*fCer^2l>Yct!;AAaBpw>mXpE-GZ?8*A=uEOmmfDCKbh z1|9N+WPsVGLW+2rP*Fpx*$;6J{+vL6f&2vNJ4$a)c|F}dBJV!;H~GD zo{Mql*pVa0o5K*>QBO=`nqUNj#wvpl&TC8 z<^)(n!7uuwOX^ESz-T0SLYLHvG9r4BN(&-ysKv=bgD*nNC-agM^345t+~=Zw<$C!w zJ&d>!vHt^tA5L_T{j_8USviXBM<#UF$+Fu;sglE~FnOk{ zFmcb4y*l?aYx20$%4hdw`@7^2Zm`LI2bhO1PoAA;rf=wB<`ms{) z8xU^KEphesnc)^}*|g@HS(NU6xa;KLgOh{1n!4oRJkyx$m4{(e>L_#feB858Z_i7f z#@~9-E&l;q`hKI?khg`tARJh}aV%5sjah_KTEQKRIu)6X=%rJ~nkVLmh56hQ<~1%w zJ!rd|_Y-iTyXGa2%`=M;%6>I(0~gKQoVUg7WcUWaU(Q33QMw!9y|Xn4xS&>;Vzr`xjJPrJh^9X+k*=>Rp z599Oq^IC2+&p?t5{OEB&f54+B@c9D9;Sh+m@H{9E+aRt3h@ENS*rFL7_XPa+Ix8-f z%{LDseEp0I_H(fLG$`0TV6u&~Spob#WU~^VZ;%8p=WTg=#xnU<_snlIEGO z`4J5!?uSy%IYii>IQ)(|JOd6RfoBQdw+MAyPu~tGqCvSSr|&;1f*qyl+mV!REPXq{ zK0lYfpH^hLf%XCB_rH+tD0Ij4;Lj}Sulf6%$cH%oitj$g9c-3H{V+PKL5hO%E;5Ip zsxAreq&Or5E*lwaZOPv_c1O<-&Cf`GA40XYtq8`<&GV9{!;s$t@Eg|k>nQQv(DfUL zac(Et5AbN!ydvUa-lCa}Loiv`Wkm9{L(JB)aR~4V&%pG-kE-q)ITAx?^3mfjIBDYP z(s7UX0qO?bGv=t!J0G^iEIDPwjMR}!CtytQ*D}n6&P7DF z;*?ZLs@FF^c@BY$IcbSmSB3!S&Qn^)nueXGTXy^dW^U`0shAubHx`jP1|ubJpLWMk zvnjFG+%`VhAA02x@y4d@=J9=9|K5UeXJ|x>3Ehv(g1nukWqvj_aTCQ&5d+{P$G$oa zR^QDBC#PDQo6g*9R*d4Hkb|UvpkTFm4g||LoAsk;4g|b9EeT?38d?8g9s)wLjQvyA z;RPKeYaJ7aa0sb!XKuCw>z(=L74l-+PTslE+%~EO`4{1{$TVQesKmT~a%$X0^Azys zfIr0|!OhIK(~G)?Y5U#ID4N2Z=6~kzv=f3**lK8;I?Ft>HIcF%3*Q~d-&0LAD9oCx z^S1MBVqSi(Kc;a!Pmh~N=W!2XHsxWw|K7Y*i|x{B9RHsL59TmwkCB$`f@m~NW&eo& z*j^PAWK-9gK`@L0{L5kr4P~XTWiX-6i0=->=MPKZtYJ|lrV#dZmRSP(dcs_Sq5Ik% zrf1gtcr7f))ULg*2M^!@(g1#~*^-wvSMGy?Zk)O#b;zbvvw5Q1&ZUSUG3djj8wRK) zJRBO&QEy&8{HmLrt6gngn7R{_o~`CtjL)B*UvkQtv1gj%RO_0BFRmGB*1^)v0T>Q8 znr4gzxu`T#=7xf1W~;fe8NvS%Xp8u}-5e~#5T3E21&3Sm)*|X(OA+VM)c*UQcTwr< zW?zcf){%nDniE-VQ#YH$Ci*k=HuFo%5R*x^{@oU(I<$FrSrEMrRScXS}m zKKomn`2uM%$)4D0uAaa1tK?CK<_v5p$DK*DH=H=jiFU?87|O5KWUBISH&4O+kKb(l z=~FgbHB~&!FkN^ODS0vlQ^^!%mrR~?0DttPfGN+sKM%`Hrkm}VVI=e{-?kziBS{av zC^d~^&%Av2!b`Wm-E2NiEHMvL8+s7~m`CYL=c0KSm1X;zaar@=F;#GgFw%+R%st1n znrkO*FpZ!&GiwGjsX4X{sc6M=LJPik*f9N2ZN9quIRFwPd7uXj;pf zjcd&Rc4be>{Tu8)c@&4F`P=hh|D`hcNKMwW5Nl-O%=`o)*-QWYiX3^X*uCwPXe5vB ztG9H7bY~=n-iNK~9|SEo*TGea?>pVvR;s}agSnYS)tF`@*~|meTFqnl+&HboT+^*2 zXWp?RmDIwXV4uWL<-mM|ovAGnqQM5fO4zoQvrjDjv9PeuOU>4K+pS6FndR0bdEA_Q zk4sR+QzA)33hXhHMF&$h$rG$)x{rfRWopZ3rgDRs27{o9d~~7(EoRov)6BRQ^T=UU z=8u(dLJu7_&TOvSVx#RQxIb9)y)24!-&`ZwnlZPTJjO~(=A5d6J-?7xk{W6z>@*7x zYcapfVB(~z1m8={9huhDa4f^peczTHW^Rjl^9OkRYGta$tU=zNRHilzK*zoSrpJvR z!T%ekb8C&3;YhxrdCLz|Bdw{L89cN!hq9%yYHuYfTI(6G)?CtRo`G||u*Lic&1CIu zX3J%%apt5VGp5L#w4F>A|3=V1%bMoO$@5;FTxMQU7I*KF-`T>gD51G(narH!RcBhf~v3Xu$$j6g9CVSwsexXYRu|rN>T`--^6CC-RmFB@ZkN9<0bc zc%RFH6$;{wk3P&OlRTcBb>1$%yDLxp{&j8qJ~vGeB~8n5Xr3F*t0?Ijl=RgJ))7@< zb}{umQ>;05!$xyEq<$At-|nPN;Tkd9D^usBSd-(B5j07+^1m0g{bp)nf^jY z&LP!v;v_StWn|eIV@95L#z=F(2vEn1kt!T1-P)r`hMxfc}{&B=Ob6xp3 z`ecSzl_U6e-Jm!QUR~CXqir|%YTlA$kIv?;dC8u6=B(t2dFabFm?N=Ti+3r^>|~ET z^X~{{ zG^bABs@ z)h%b3$C53aqj?!?&P;|5bNSfuV@=H#{^+s=BmOMpfbt+mQ>qmcu_d_2c=Qhm65}y+ zI_6@M6O#bw*Gn+d(kE*!*beE;qgQM&hZLDhi(oZDPfPBK+?F-+TyOhT0^_C$=iPuI zA{;ShBDbU_j5J$oN0_?~EHQ85^VbKC8)@FCZAl&U)f)4g1G%SNP9xu{m;Om_nP4Po zJ5G!_4|ZP3b=@n_YnL{T9I5=$HQfV``0ugem-cmji5w@j;iTDod_cBl9FtM|i0ayx zhr9OW^0o!_ox}-~8pm(hXuclXVt(4a1fSy3w&Z_F$~R-EJIynv%Ob&yo&OBn&Vuei z8*O13P@_bgZ)S6o#+(L!erX;dM`IqyLw8w*3Zi^5(L~)#GS$HREosu+emwcYd(e$; zIlc&=B`L)J-_El!L>{7Fw>Ebmv$o23?RYf%?@@v)QG)Ni5@4~`3Wac%v$FBYKj}M$ zTi?|p*h9UU*D=fRy91#@7cDq<5CqlChDKosu1zaO1U!zzFe@LkYg`=|K-;lCR(0)~ zE23g?ANf;fbM})F2;7AcsC6NjyR-o{yAb}9x)F3qGu!q!$)1PMZHj6mh>=e^0P{8o zkI_V0&8tUNnfoq*`TqIHaptj0wvRQvtQ}*3hu29qaD?YtAkVSrIW8<@r0z`~tAdUe z1RcN41HT3H$yFe>x${VLcb6clcnLY&kjB)(fvIe&(M$%>J}m|VazrSYPW{Y0UD#so zN+a8X60@nW#5|m)7$v*Y>|0{aX-N(L95Y5XRG|UMZD!aO^IjrbLy8d>!NDRrt`eGu zPEEBD2|YKw25kM63rAk0@W${vB@|bGWCpa74?-qOOnD0$Jf_&jnF}G$(eSc2G~vq! zm#wyg(iI(cE`=#CCB51zf)6}E7EkKdns+Wk>>oQ4y`uvd9$1Cxq#0P{v2Ho*rq+oi zm^H37YrC|XTir1D14Sza{ZlV`3B9{JJ zv6^Rtqo<1lXY~9?@xplBttZ?~YN5GmeimI>2_}VD)L_NmE`|PLKJ_KHqQX-HXujgs zjvLI@xzHWH-_~&_n+O)Hs9No8pmlWcovp>G!j0yckywZA0Nk5@>62$PPc=^!V8HlCbHIid z&9o8gR#X!w^N(5VSCh-%?mU8ydwRM=q@b zg>Y>7YkLIF-T!y_{{N}qa{?v*f1`~F=FSdT^Y&$}Bh9J~Bh0&(W$|)NcGHIlZ5yl1 zK_gP*&pp$;df8g(6~u1rQjS;=FgJr|7u9(hTjuoGv*%3T5w4LI5Zs5DUdT1-HOh{^ zHOJ;@-zp-nm1kPpvc}pXJ!<0T|L(}Wy&HPmJlDR>)L=gjvLDyBW%3`(gw56tbq-+K ze=yg7AhM<}sz6KfIM*i$wxaE0nd40=pY}FOYqGYE_vJwq&zu^Y3trA@ljuI1hz0?9 z=EHfGd7~vW1-Z=448iud6|pSOYOM!H6j%~%!}%R0x;f1<-f@K@GmDZeqS?=~6pQ&b zislrSug2!Nq-|#Zkg_*3g6iB4XOg6iL(7(#*1a#E`d!NLN`kagDIqyw7sK7b3dd5YW z7hv`$AAnbOtOAP>pSlc8XE49S-r=vBHj)o?H_*Fk75Ec8#gtYN-qSza$}}7A@)Yeqax7QeC?ZN0bvD<| zM+%vb!;hBs#VzvEo44<*?pNj{WW-DWW%%*eeycP(B|ZZ)S^ zVR~AoSl{-W%y#RFt%c&}EVk5dS=7|obdNiHgW$jE$PZG>NUF2w&(riLbsPOXf&L7j zKek7-4lQ{+*H4nCW%J|%>nt{hL#)+5f0?~~vu)d6ZQHgL^j&#wZkHC17bhu0n#c4@ z_=?DUjHS4-EyX{z4sLQ~{nVn*GT+5*Q~gW$9&Gu3-Bx70fyIgUvlM@GLjOYW28;i@ zZOZF(VZV3j@CFj|dtY3}Z6RxTL#$z6CbA~B+*#3ItQ8rt%6md7U+++27Ij#gS~C)n z<<#+J*JVr08c^V!U*S1}m!r(OP_pOkLvBcqv0%RoJ%3gbOYt8JJ(R@smhMd*tRCKy z%6~pY_>|>h%kx6$(JIM6ytQ?i=H*Bl+qqgUuS8NvzaU(;M$xFEz889ayOqQm=l0N} z+qC>2g&r-6lz&Ggjh26BBt=;MZ=-0G{NIP3w`lnn;XPKWPV4Euvo9f9&0QUOgqK{o z+Qa%^5=o=wUm8gfmVa3kjgo(P==u9r6084Jp-1m%`R@undOlMA`y*+z{0~M_gymls zMWf{ZUFi92 zg&r-6lz&Ggjh26BBt=;MZ=-0G{NIP3w`lnnh2pgDY@8B?pEiwHL#CQ{=jypE)%*5sLvMaxr}31&TBC8@^z@4?xD$$Vs-PB+Y%oo=W~_qCfn zq)!_rUy7$?$}1CPbJDyoL{)QLMIzl?*W8q;?47Ww>e5Z=bZ!02OgdYS{~H9Jo=#U; z9-3}ud1H0?l$s2%GURwpCVOr+Q+sY*7GLW!jn&{zTTIl|Cu%cIP32QF3EXh5WpmEs zy(%cp5bS@Uxi&(^Ory%Ux+bgdLvlowvRBW_Ohuw;MjHEQq?>B0D>8{}Lwafk`*UO) zQTm~?E7GH}yU0-5RYT{TuFGU9GnHwStBKNAqcn+%`gD2Y)QbA%x{#DZ+_JsHm^2009(R-IShML29b1Zfwe8vly!Ibkj8K z2r{L)ic&Y!&k8CK!uOPd;%l$m*WQqCjNL6|%-~VQ=^+`~IAzS}Vf}w7@aLRArf_f}_Pi4u)L<~xdB_`2%#G5E6|Q$pln^$ zb=6sday#gxt7^)pIvubzu!N+?igZ(^ys=_hx}v;dS|(9P=2lBp6=P@8p` zS?yU~Z?doIsyS(D#@Xunx+XG#DdkNW%D29%DxF1RudS$co`c1hO6~x=<2cEi&?0zW z9LRuHNV>PRAaZabyN`_^rGeFy21Zlb%V`=SRMen+?MdDTDy*MbU6~0Q9VD))ub8g$ zgwfTMLsAqh(PSM)y*Ml}lfmURHN&LrfCe^(74BS!v&SlHGO#sd1TiZ!NRK+BHdT)% z2VZhV1GhQ-)zDUqg)kEHCNs;a54Z%kKKljI`l%ye}f+)VBk4m>fXiagw`Ml@)& zx+=6cB(9d$EX@~Qm-j|uZ(xnMro47aWqF!>4t8Ej+gsNvRg3G@C**O^M7Wa>mBL-N z!>*4!%oYE?t|xAAk+Qm06#1}kdt#l|-b3efBH8v&RM){1R9B{_XXebRZ-iNsOSLLs z+ocZ3-p)*;slmTy)2Jm>e}!$l)XCX;;wG$;I+Z4>;O${GxlVW{8gEUFGh?Unrc8}$ zzG7ePDOlS->y;&*(p+6rNirtb$FbM1uB*(P`NiW)^b zYmq%8T{#KWn3!4JB;GH`2+l8?&D15FGop~>{LEA&J-@yVUnINIV(QPEYcmK_a{Y2; zeH|(gt#Nc?b7mCxvbq7)HrHgU8*1iI&)Nh92`|+^f*7l>?1|>;rI>HDJO{^)@HP@zV%h@EHIgn4O zosww`bt2_WX^;XXiBJup;3Xn6?8laAtV659M+50twI`Hn46G6bscOvNv$|qBI!Z)i zxsYNHynjTdRx~#LL7A!5b*^DGCg4bO+(UH{)N&}AD4TOpd1I&ond_+LDUJ2bSp-Ch z#_Y^YV-xi%Hdn-iFhbsCF3p>}QT$Ygj-kB9*$v8FTRt5jA0jgju}P8K_?$6C=r*d8 zvt8`4`o>zsYc>s(x!e9yxe2tqax}+~cwn)cP$5bdrE`Rh)V4(;R#**fK-WN3O^!~U za1_-mQQkDCt^&TaA{R2CnNrj`wHoQr$^)xFH^z!=sA&!F)!jrz#T1f0%oBKMIXV=ix;!-2yo)9Pz8r_8Lr zw0zDfm6@5Dn)(KEJ*QMRHdOWR*@I%UQ<@s7RHGr37!kVTa^40|bdVb;xB{`hU|WHf z(&?NB59C3~Y`JW3nT7LgN}vgIv=Q*mbyl!B`1l~gOjk@p3Uov{eb@@zgCR;pgKLOLJ<=WCvoXDE7sjUu^@|W-|h>sdbskLTJVf9l?l4xnvKu4R+AkJOw*WRySlN zEX(!w+{3{|ttqBd7TbsBp@{Z`Ic?u;kHdT+d`rW(-#g5i~(iaA?olO>9GktO? zQIix|(%!H5A3EkpngX=kz!@~{)|_w6Hfyl^@0tKjVWkoK*18&mZRR2|2w^KB2yPqD z$5_$Cy-CF&SyMv|$|T;AeNLdoaP-e%dM+Ke1)hOPPoG7>MedQz{yFQQsUXXf>jHsX zEqZs%Kp{?=8JKDjY#qk7ayH3iMe*VD`c&&=7$ z366mf4@`ymHqPN`r{0NS=avo?2P#8a7}wnT+9}nU(40%!%5DXYHk)4lJP|@XL;{UU zXcQ~W{sLYpR3=0}b@g>~;nNaSUihETgi1p>#x1vO_^)|4sa+G!B z6bg~I$W~%3)t;#ZGlXc#xsbNBpX%#)lppjs6e-y1$<#Jv=cK31$)XFEnO^EzdFN~* zDd+VOlEenEX_|+rg0OfPglgww@!&l4;%#F!+vj282YquIZ3?qN&KVDEXpotX#yNv1 zE)*@Ju{Qwj=jyiBxRRtQBd|C%rg2K4{T+W9b8Gv z5hJ8E!(r(7&@9BHge;^>8sTC(g@#+X`I*vQGJ}HHN&07~2BQz>Kts_kdw>Rv4sHKQ z(W<{@G72^hC(iLuIAWpZA~g^dqN~_crvKq>F`%QqIahJjJk>*eJB_MCZU$9fAvRey zXAsZgmtlcN1(maNe0ZS`@}ntMOs9e;YT=W(FxCSnun42vGCUkYf_CPPA{yhA^fZKq zHNi|941tES!9BNu@WSxSwhKgd{vcP zEX^MA7LPAs_$ugeb+fyYwzbV%w=M0ghNfx~7?NS)7i_6jV%-eGb{iq5-E%2zVLgNhJPR5LCYEx2q|THle^4)&NWuCX>dyL8>j%*G8^9tIxhjuUQB&W9wNa5pH48s% z=pDHZVwuCP5U4a{8nbhR(M-EcQb9Pm{Qt&~m2{51ooRLPCMI8aQT#L+gt;JHD>PWP zz{DKY@F29Z^zaNVfT%I0PJs%w!yRgj+}k1w)T_9=ZGlk(0%iL&2kQz%?w_Ym%jU4} zq`*nMpCw^aRBs`W61j$XVZJb!$bu)tuqHRBg(E`Li~%YJQKaOGg2UK%J42+@ADFH( z+N$&vigVa)Y4wGiy47(z9lFZImbcWsRZ!}>yHYpyD0TH->c$kMZv0T%pR1FXWGx?M z!NFwzY2HMkrF6X!0ta}n1g4m<{Eac7bJsJ~jI2!oZ3?l(HKWLFXQ2wrUi14TmQGt( zRP&4Q)HWevSKCmbSP0X%mo0?1I(LMUOqFGHNd_GRlYfXB>nl{tb{a*!C!}kHzO<1<4t5&m zVETb<8=8mQ&KHFSF+pA0SD+x51ZHZBzg#u3i>9tO_u>{FX^*~} z&fo76gPKHan0qJ6qS1=AZ(T{bY2jEG8?`QLzVy~ZAvv8Ye~{azkx|cuIEY4N>7g_5 zR+Vd6tcvh#7~CXcfhxPm)tsBeg8kN(H%<>C7FY_+Ir0DqA*PDxm?^C^21QrvcLC-C zexVACh$~=vx>p~HVeBk^C6;>dx|<3wZRNY(CaPt(aceA9;JdAMd4OrP>-;gBp%s!- zC}+a=x)Q7FW;9o0k}W7xZf;3&7$y@*LRNa3KaA#%37rAeWN0A88TxB0h)pZeQfwp@ z1o<-h#X~Vws&a(v z;(R&BP*)r_&CuuvZAcbKWouiK0pe3t$XwN^ z`l{?Gyq%b#Rd0Gh(!TFx)s%}H2ic();`Pid<*@@}LjwzHRaQa6OJrn$PMvm1*S%$A z?_95K@A^35>3zChZidl5bKSbVqrRPL6q7j|r_o_&E^+ux*4$X`JbnubuXy5IIk)@; zz3G9UZ3&UX>0q8I`l%~c^ix;N=%;IL>J*hd?+ePmz= zxtBrVJDuk6mDEJFN(OiicdIH%U=HbCfi0wa!4M!MuNm01(8&3@0S;a^6|=|&FKA}d z&d#!F$26OEJhN#RH)hi=aLlG%`2ju{cs|mvj(Kq7zV^rJByP@77TN(Zp|g zsUpKSAPv2NNnVa)hx2Jx&MGr*!j;#ADE!UY31&m%Lq9(Rvy;-{!C2Z&B3l#ZZfpqm zSk7>C)Ma~Ox2T0`lvxYB7(s8IUN9=%RA=YHT)53mpZ>V@3=A&CtxyN+-gGXnPBU_nAAqU zuC366&`YYKcU{LAo?(o@0U?sXP0~thZZ1*0GAST8eadA-I|ctC>h)mq%RyH|>nc1| z1SRA3X9V{=!Q$F3BnhI9!FIxgT$9vQ&~f5*9a@~l`wAGVPYt?s)s5~Tzh!NANd zwpxtSlt~~U6L8eXFyO$KlRpHG)Hy_b%57Z0B5q?h{tn{QJvV%R6 zLAdwD5;R{!-VUFQJni0o14msU=EJL1ZEFik#_Bc}^11K!-WKKvjEeYkOEh7+1#iAfh=4^b%(!PTj< zBw+_Yqso(~71@L$@*-}wo(_CAJd194m z$hjd%2))Ie9^Bm6i1+_O8fb4s7+YzW-NpO0JS|IJliHA;KhM1?t*Q{BNz9k!7pv3N zt}R(hOIQW-DxpfIVgjbaDg-)Uq z6w3&$AZR%j;Wr;C1xJI@F30fCsW34)n5N{Z)HnwjHG!AJ13r4hOMxLd>t?Y_>2DAq zs_{SarZ;Y}yo6WPUARjx>Zmfx3up9_m6XsvjBY^v!af_59`s%)89xNHL7NLEjQ)@3e&UfV_eQeHFR9ZGC1O{%ftTlmWjWWCFT7U|ev$Jmk(px5Id{`PshbM1^HBqF(5emmhcu-SUPcJ)%rjmk^!BOVM zFWkgbgYbU(U=yht2@KQoW|q*+*atNL^Rwd~j8>GMMLm`)XfTSO zkMcZmPz<%0MN2FE8#ntfI)`AMFg=sa(Rmx&DP2&3{<{$k#tv#AH$s-`3i3|cvj+Ct zUQW^LLtu&MroF!1AMsI0lc}jeEjvqPL!cG7ir@z%h?^0Bk&IXiN01vbrrcW^p$S`g z$Jfasugr3w!j_3&-N2`2@WwlQNFs60;K8RCb{~?NQe9qWfB)L!)Dz@~unBv0kEcki!Ik2Gf!en;ug4D=;3UOOT z7_RB`XT-t|SDVs;!o|tUKyc1J7Z#+t1J2SjT-Edk>90->Dd@J)3@Io~mhN59ZE!*7 zfke$RtRNa(z6_6BI1weoYx1l;8NLykJ&^&&((>iYP$GDg4CCZkdoo-uG&7gwLHzo%abi2U}Dk!|Z!=Qrhi#rZ1=y`Siz=D1Y_Zm`AX8x16cR{})1w98A zbO#AYkz`OoY9QO>cHuRL@*c6UCp7PoUPmn4>+1YV3Krxo?s$W_zQc`4a|~oi4cTW3{tn|ZOcMHEQYKy*hPN%l znH^9D6w52a(0!=Q-0gVbd#KIyOb$nzK`TO=8MsfPCmz2hwB1Qg7zhi9@-KssH8xFcnLig8>xbgJe#%3m) zBa@N(K8N+)jd-8JkXE!E>Pp*<|79vA6)gq4ykFH4%6+ScQJfh?#;((AWETZZpe?vYaGS2(E? zq}OBei6D`9f<8UHM%eKP6RFqX+!h;zSDF}d-vPH@yLUn7!8yCQNocMWnyZs67wk7V z*9k`QuM@hZRMrt!=U?ApO2OoXdy)0rm`r}amNpKLwhP^*)Gi?Z4b&d4H$%}ebwFdg zntaK^{2>Jc%yVeM)c%lF;6sM&1Do|h)Mg@4ihl$4!XI4eAK?${2E3#F)Hwy)aE!;^ zk&X(zo$Yg%2)_ZiM|&x}3?8ZmU+)(D7gT3l1_*dP`9moK8ur5ca|#;F$cQqG+$T8# zg&6FYY))Gcc0~Ptw-o;1+DU(0JthCnZidR;Po7^zpPo&$X=@Ae%#t{xK=SVRca89S zII!EG4c#BuEo7s-9~RmtJGs1bIv?u$)fIW>#Ey|VCpVO+#J>*22iLg0@yDyf9KRv9 zuR&Q3Cw^@m^}v0g&PW_=N$wiS=dFWWKJc;8wlbvP{yg*RXj@^qiQhWm*LDBh@;j#h zdUz`puLtrs`%?LFJstQP)PeLH24Tn*ow$clAbfTqCr*C=>2uf;t`&)GOs?{2pBLKqsBORx++g6V$q#V1yqUUXcsv`M?hx9yPX)krJu$8h z&M8=*GQeok}WFq>Fj#G{>}%JOV^qG$@kgO=kZ&X34

(Td#JURXW$MFwJDQR0PjwSjb&+!jSIXU`;LhW0kUluy- z_;rOJbxP{^AE7Ad_yX{T|2JPV`!je%PZQ@#sfA`ms8C5+Z$%*Krfc6H=}gT+vr`$eG{k z#gxeaxW`xxhd)jrf@k3nS>_R36*z=+MYT7h*d~&WIvb^J0p3F}Ey~p_GYWJ{9?t^j zL7nlrR&KAum^}xyXAJVa$PO@=Sc0i)4&f#zK|A8OM6}bCXj#fy?Ahf;#=rtuVTF>Q z(mE=h^Rug)=bqLD$%AGX^cV$6YxV832^vFFr?x53$H+vt_2_mYPbsiNfj#$hlv0xJ zq)M?iqB|G3A=5?5DO3g&ATNH1#v9G(6Hb9W3qFNrC7FAEf}-GPtqR6Ck(b)-8F@Vm zaLtnQL(uP^R!Z*oS6~rKe*d(RJLemkJhP>e>-Vi5y-nna|8tN2k4Jyu(c3+Ghev;@ z?omKrlm4$Nxjpr@l+)m@Qb0X~w++%q2E~yu4$pvdOK@@0@r=uC8Qe&SG!E|jSh|aW zad2-UnAhcMAqf>Yl3%f8XESd95GjM@L%(1ifDtF+IN}Bq?v7>L;6v|kcY9w(^l_}K z)XEiSFjit==QB3f!thrX*$&Zn4`YxaBpcw0$&FYZ^vhBN-#{3l6nx91vwfO6`!X-s zF8AmwM4tGUd-PQveYHog@aStidZh#x>A%(szEx6A!MC9j1>YN$g2DG)uY(D`Rz)Q3 z1>XpQQw872ENKPbJdrZNcPV3j@NFPG7<~Up5_})BE<5z#Xt;^4-(5b8m2w)FFXdDJU6zkB_#yf&p^N>)hG%Lor`*%S0i2(LS0Q-!w5=-A+!zbN| z*|j0`7WBWJU4vV-F2v^?1P)=$Zp(PaAkL&MGa0k(SxB0i=>pe&-3W> zJ$kW6FY)LLJo-Xa8`?|yFRJL~ouyJvd8Y&Co#!f28+G34nIi98Te0}i^zzQ>z$bYp zbNSlREHf-I^DLqA^fS+6EZ~jfw-kJU%=075dYPx%V9Q22RQEGa8)C830a`zR;bdnt zn2;cB>Eom-TwPtv^{Qmz`35C#;d00bGFmaqKB;g#Q8CIBvg}qi&1-9Xh-z!*^1IYG zxpDmRAR*7zCMLhN9R&`z32iurcoOpI43_n}ZHa=_Qc;?S>GuYyN?_dXKF8YWYp8_u z`#u$`#+k&klZEUA{1;<((!%XKhN_*6nlfg~9>N&7Uy|Dh#_Z%hF~B#6F*`9{LYQau zYUZ?SemH==!kAt2Cx%blhiSeRq&zRpk1n_TnbH-R5Cr95aNELC;)0_^v;1G;@q?is)J4{apJtU#h^k8U8 zsE0^7(LFu7$fJ9EbRS8;B;VId(EX&mg|hnOiu8AC#qhAhRPyd{JB5MorQdN-e#@nH zpX?I})1y_u2RH(3d5oJugd1N&xWsdwN)jvMSPS$b$kK zvsBPY!=QEG~T;zMJMt{2RjYjU$xTcrRj|vwfxt)Pb%{Q+o}TGISvWC=Z?$^x(eS`tTYi7UJk!-KZtfe%+ZxH(ae z--KClS$3YVnh?OqSVg!W8EX}sxL10W*}d=mzh&*}W?Y^gynU(!9xfrPA47(#n^W$sAr?qE4ZPNwG|)O^>Vy~` z8yJoM9;>^ChmklQ!|rJ=1t$uQBj;Vh;ow4I>nl-Yus;Ig*q@!jRsJfTPNL&E&D{Jc z`UjH?=4Q}9AB-t5jTic_WF+sL#mDK+c_qW`97Fd&rO~TWPV{RY{kliL;n8nqxSjP@ zhTBa~Ct-zgF`RHSoXJMDL~fcSE>1MM#Ew~vfo)E# zfM;UE@wEe?Ptc^`+8?0w`LMCG2s_7LEShmy`i2(6KV(as1OOy zJ;b`8kCDD%%*Uf2zlSnpfX6kAJ$iEt(S9~#-lrxCokyl0xtFFN)_Dl(>%IyMO_YOL9y5~CuoOWBMp!NhQW6U zFu=frye)x;k1jeq4}^JQiHo&U%5MW+bIOp&F`z>1M4JPSbllH=D5fsBSGq_{+XDln ztLBG9KMa^LZ7hsA@We1Y&%k}P5**8yD}1y)cin1OWdJ|U7~~K!DD{YS*kmn%{?+r8 zaNy~J5Kc4IqfK2WD4ERVOYN_5@XpooRN`dF%;g`ISl{;G{5*@;>@ODZSbv3rM`teI zT>_7njUvHhcEDFi&uBY<-vkNHHSbeN!UXa?<0V#5Va*jLYA;B=eRZdle=CYLr}E6@ zSK2LZ3MEHdB`_UCoj^fe!G8Xf8ne)i)43YE)0~qWwEarMBsQSa?j+n^dgDg%c?GL2 zhQs~=vwPctzgRmiOnH&&`PnfDr}Y*mk#qF7Ev8NQ=+~iKs=h(O<&F%A%;mq8WSz*x z;Bo0mrv}_CUF_G;FUFsnq{K|w4+XH787sA>`;Qp|n?&Ca0lsLGZlB?+9>7{LX6x${ z;2Xu5ZOdfCC%uGAisgjc119*z%k3-=Zj`n>$(U`=TZS*}Zj7)!hDnUU2+KWLIl>>7 z9SDZL#gI{t_)*A+B?FlQ;##n=jKQKtu;~H5^9WOe-f&(MkiJ)QVm=X_&ogJKRnPxv zPD~8K`3-a0R{qTxMjXjs~NL9`C-E+ z{fF82W5VrVf@GSIeRmU^-_3cGvDut;MK7kUrm6%U`$cyiu7{@jrds$gu7(qzb7+A0 zB*vi)!jD<^e8#Pil5)(tH|lzwCScZm%_=!y*8LAx1ARPD8}Fnbv@r{|MLcd=>uimn^;7j+n9PV>ppEM9ECAyW!*KUS?_Z( zcs$%>%)0yi8YDQYo+{1|tOaAGcKkC2^$XvT0ojuSvhxD6mj+~S4#++d;CnTIZ6(Yb z$$K^GWQW|Ts?A;=s!u4+Ytq6_jM+KkP=kdXjxjdPD0715Ji`3}c_*{eO=jw=7%%TW zZE6+kHi?w!`ZRM=-f7hBcFJzRnC*bhjM?2j*zif)FejZ(_Cv(2{^AI6`_bYz6)b^s}meL zj+r2uq%L&mnT&%&Md1>I2`@VNR>tW;6MN!*oJ(x%b>S{^XOx>ky>GX&E@56q=n&u> z$e3-+SjOyTPB(mMM$7+}%{gs?5gi+j@0<*MqN`7bjqxK~TJ$Vm^he$S8<`sLE?-EW z;Y%=11WA}l@n{KVNE5^+3WmT8ejai0_aiE~!OeD#fe<*UEZh^cP)s=qD%tLsq8_z| zZ@%dh;qg>#IKBom^of?70WBTHr9(n&(bavY0u$UT;C@D;)F6$8UeY0jC151@%5qX{ z_@Me))cp%12fAbomljRpivj28iwpI|Rr+GJzPLwUJkA%RUgQg`=gx#y zzrkhV%avee3n;+_Qtp1YBPTPib_e|C6I_wNd8q2#agcV~N5?|`gm)Ok{62=!Vbo#t zT%*+4VIxBTU!NcZzB)wG#|E~+p13{~yA0oVjKMgSF2HZKuw8(~hU1$xL!am+^nDHX zOHl>B5Nj|z#9I%5w~hmT)T+MtvhN~&0}2;%A#JGW_C@RK-yeYGR$?)Mfs0LOo|uhH zPUJ8{Z1{D_+R$MZwBa!>9q^XE_>eD-egQ6`qI;QC;ZX7~2!}5;=l6UeEyY)}^aB=b zDWns@^WKhPV+}5DY7Drv0Nq562h+htrf(Cxc^B(aClK~h9KG-s6}qlkU|EAM-!0al zpHR;zUr%*#Pl885PjZ8sW2i)J;jOh}K(>*h+Nn3g(RF)z2ib6Zr)}sHJq|ruw2MoN z{?Hdy*v~}`^hImF7|@+BMh}3C47gQu^bzV}UFm@1G|v>i7&VJ8u1cX$+Ncb;@fb1$w!nl9 zzANYk#cYj#=&5*#6&x6IQWr|ZhU3eGL!W5H9I*Q$?be(1#l8CC3BDMxfiFgHf{VNi zt?cHbuLe4j2uOID5g14FoONi^J{ngAUg`m_UxSyzz(u>3_-;H%fo(*uTqN@GtMo8e zg65<2EA{rIxIyE#Mf!V|J#tG#cWgqGoTfwVz1|HPKZ!h*|LoDfc=WFx{hLSs?$LjE z^q(I6w@2^u==~lYQ$O>DO(lCH^^0YOj(c=Q4s3bVhxjvd-0ykHdHUc5Hd!`*wkMyH z<9>OXE9JdWEXvEdZ4tb2T)KOxLi^|7AN&wK(4&WW^sHRs*8G2Y<&l)PK*s1azGdqS z!Kt2egjTt|`utdo%&eC4=pxJ}Yf6vQHR-?PryAl%8QAB*!0t6KG4)>s_)$slX-V+& z130F}wS*i0;Y85|Q#br~l%2mZ|9&G{fX$YHWU~g6%{YUZoQ~D_N#ClXGx(v{e>qoF zHTO91oxGQe7RCDIT#_vK-CVHnfsgX|W{~QERP>1inyg_ifB1RAH^)E}*1IHb(?>60yJ8Nl~v(3f>%I8Rde+uxag7Me_$BXwah&?Q0 zEjsZ$w)(jg2z2Balx#~Z_Si$oBUzHZB1(|N!>`kbC3E>A`ztgQUaCvrJkB!~Pl0dM z#f~7BJjJy_ze&Gt*4*eqL3c1`sm1wQ0LzEKhN0kX`5O}ozBC%UGX{U8mf-=u6B%1* z@y%k)w);ZH>}52%ZMET*F@#Qgn(+i*V@$kDg?>!@s9-rwv!ep@KrYzGc|gJqO^|wV ztJIE|>;S+p9!0Q8v9zWaQM76*i+X3{7bsXS%B@Jn8wmeRGHMU0o^*3GKE)cnINr)a z=o>x9E z&hOlVJD2)WZjZ$pPP%_|s3fc}ak86=QZC_c3PI@giZ~nEfb-?h2yuMH2Y^ zv_&-nSX;upnu?jzwsUkqdMaafzbs%3{3GF+dWwtX;_rdrdQJU)O$PmF+)J8{$GXJe z6OHbW{AR<_%k+L>bO(JO7VQ@dP0N&Hq@3t69zE8h$9eRz9(|lgkN4;kJo-eTo2gb! z=z!~Yx}K=6$*z++49h?Uz0jG|!CkkXEP9Cl6px& zy(T=$=#;o9F6}UL@jqD1PsdPb&ytB=A7)6t&QIh=A!QcKjLy z)7^|H(-S*yQ^&R!q^|@rSZG_ctK+}Qpd^VUQ#w9g1|{HH?uolE)IHIVcQ3Fapbs~I zHg@YS(oKF#@{3r7P2NH#WG=_iBVoD6MopVbW4WLYD}bJ{;leQ7!@yE0y5b0hJFb{y zSjCFD1`D@4;f~`l8@k8Loe4|3&!`%2%Kq6#MXw`_{;RVzF$mN*9NnnETiv0^k-7wL z6cjIJE?-reHBA>`Z-gtw_2CM|rq_km6AX8eJcgur@fpVK6oX1W)pfz13Aa>TQ&d>) zVr(UTyMUb5;`~84%4w(yVMBzQFR8W*p%^KG4GCc58H0q8yulYJCVq>xUH@B9|IMVq ztN#&Gm&6`!PTtboAKB9dI%JP7`J7hW)L3iPjr#yxQQ-iv_W_7E4&b<<=}EY4Gv1Lo zO2O{ELHOO>X{-jkCRSt2EG9g2IoM`mCSDS|J|KYgK18@(FMdDu8nfFA%&h_JM}vtS zxap{WscQZKHyxdb4-B+=pD?eV#xtjF(M-nd*jXIlyEcH`8<2fIfW60LjAnbCWc>BWxaEjF6Ess8b84$rfvclU#IViie_)yHammu9WARyR(#D zf6;nuxs(%qwMVb;=xc=Tt@N!_&p}6Hh`N@jqe<5)c}AM(>pc2;@0scwq{}?AQVF@vj=j^Uy;5Nh@e#Yx(HNJmNdr~*5NdUf|FJj5x<>Q zIN8T@Cc5XP5-848jQM-5Q>mV+Br0FxVmtUhV$2?%-v{_&5L2A>rG9LLC~w3JwxVuE zNce^^21YmwHtdux=+o$~R>^ne@s&EX?`ow(xjRc~n!@dFDJS|KkG|KV@AK&UJ^De9 zUhB~hwbBb}s_)@e?(X^#kN;7Re$1mE_vD{wH3i!VAJV_hqn~W$?uMU|@)jr*9p9RU zQG?b<;)m!a9({_?hauAoSLq7>5(9_eM$G?2`&$hGUime)L7E}-budiIu_0K6|GPe+v_PjVsB2cy3ZX`oj&PxWcwt_;+c9F%}xK#u%Na_cTbJrk|?Jv!e#DOV%E-*m0vy&z!K!@l0 zFb^I7EWA$FaKF?Lp1;;M%m&`{=dWUa{)!%II0!YAY3>>a5}3{*sW^?ANx0wez|rP6 z4PV4s_3xh@;64i&{CpPp?Dg6+V7#?Y0sT60)Qx)zUjGb#(|H;fLGG^|-@CM!V4dJHmGF3{$;~>O6W#;=5YwmZi zomTZxvj4NWAF{fM7M#~_BHL2V>n{4x zINgl_<3gm+y8lwCz1l%I>n7D|-{|%Pt6NfV5u~2PAhTsGsI!t`nh{U2!oIO+H!mXjI5b8A^9IHiTG)dDz6}As4;cfeiN5aweES3Xs;;I1vCxuj5x|NVvu!>y zz;`lZ3oL!}7%R292Uke{CfqDalB|uMBtGhjzB(;oPj03XyMu8_x8j*ogD>hOUygqIpk9uC zQBN<=XgO+VS}<*wa-w&5^p_s}RXulG{&gG*>Hpa)|HYI4RodSh!y@`k(Rw-hyOfeQ|M2KP>$%I(zoeWFE#7ND z%g`b9Q8|8y9^ujVd-TH|eOUvN*77qw`bnXw-Z!}3ErP4%>goU1>xO3abr{KLXbOdD zVT2FN_SN;_BDRQ1{I#6JGa<|qSnu85;9=lRcfE&81zHJTdYd->QZYWf6282CW#CPJ zB^*AzZ@y*BU(T1x) z6{x|3TNzj?#D#sa!kvZvXu~QtOf}d*bP0Y^&nRIwwb&m)^5*}S@6>K73cKYSs^0r{ zX}^scAC$yufIjx34Yv!!gADArX1u~3*UU7m;+n;bfy2XXKKPpfFfzWUYRCoBDz#6@ zzDqSX6P^^XQXC33(j~YX5bF}w{D%^ozkHrfFvOa*cuu}T#^<9~vWR}{-{cG253SYa zpc3&lJ}dn;%h9varBEcyos6c$|x2$O!g2W8g!LFp22qM(p472e|4v~wBMIx@AFjXI{U$AN`~~VC$Xx0%1WX>%4P&{)#-=l72U%$V zyE-6yXMpeN0NulxhL&88g<8ME8bg)uu!h7sn?uO|dF{);ht6MTWu zDE*740Z$QbwvN!v<=}q4q`%OznFPFD?haOOH{v(O>?}|Lc9S^k+Z|NMnC-mogwb>< zT|Ppi&Wm*>vb^oAxk1il8ZE=FTgF@JrBtj7E|sEZ%O&4Q4}DDUq@OLPw?MR$HZ<+^ zo|AH-pZDnX<)-k$jLKi|%3t*84IcfHN5A6HuX_47dgZT`(+gv&|Mhb2PWlax|4om6 z%cI}+ETl7Ru{uvxcg_U=HYaNF$ES(!C@xjO$HN zgwlDzMAwCi;w9F6H-s@e&5bvF()QGON~&0CLM!xiOEdMbCi@m;y2e)awM(r^EzI=rf=e*w5J}q)rH80mHKJD(vzebl83Nku5Cp)rF*f;sS~|)1dH3XVTPZo!n(ZNzMt9MCxoRsl&tX-1&b%yjbLk5=&CzK zO;saxIX(a)nfnw%oe5(;W8f*_TNdD36X1I^z_&4gZ3$qz1Nt%{9b-J%w$x(Go<-U+ zX3sXojDhQ=9b*Xd-j|JY%lTAtz`13WtwHqO$937W*m}mmc8RGp$CR3^8e;!N*F|b) zkkR~^Sgdd+(zwJdoTjfD&x%FY)8=9LnRRrRyMLph&q7){pG%9D@x_3Zd{KNdWmnn%$JRW=uKt2z3rnNmXKEhn9HN-X-gPZI*4QsPY-pB9VOlcu?`=mn(-glP5g zcOB|2)Z%@j%A57-)Oo*DKHS=<*(a1&^-i*_-dtl{|d~b=}oXWlvv~y6)Dns+9Lu{;XCP`@&=c zT8k9b#X|fL-N&Q*d-TS7#I56o}%S~!$QEc91eC+ult@N5yaOj-7SJ&PpeTF zUS2;}_a`)JGOQ5sBM}k0^BI;{f#vn{bvr>#X)Uj1Vm=fkFxc%?BQCj*Cp_USB=MW+ z-|IezwWb+-FxiKKZ&DU25##}_oJXEHV5Y<;m;6vSRE(R_?Vy&kleqd} zuTuK)``&@*Zu~eKZRB}L@xZ)Aw{yZgp=NiZ2;Y#lO*7$cRI0$x{)I}Mv%7>kn!l#~ zhBKr74m!C_V^Z_uu1x$tk9i?$C0BT-qfmXxn9?a9I{XJVIQw&vH$@C1G4Dsg@NDK}UE%~G=FxMg1iDl_fbjA}7!QD+AQ%QIMx$zr z_sbq{Fo)e=pD||l&Ci69w9^yG3Gq+IH_1P?!a)ISTmYNFm~G%9gE_TJg|`G0J;oTM zjV&K4VbU)^MsawwkSN$C6}<|fp!(vvuF9UDCf zU5B)83o+o05rXYDm_!|JmukPQJYkPJ$naiL#Q}O)A|t%|^KW;UN;93LH-khSdloTP zYT3AwFfY9CVNN@Go@2~jZM+-M_*FpmFT(!WFzB&~hJo$c!x*!JZbAT?9gw{!z;{Cc zdoUoofic?&9~xQd<~Zy~ej(g+vx#~<4wQaVXM^fxd${FSFWZaL%l0~HI*N6{sX1!h zDfv-TkL~)XsdXoP^g~BYhNfeLHd0P>TaRw%(d|9DgGYDt=uRHp*`vF7bXSk==FvSo z`Vf!q*=bk?x<{|gdUbM-ii$k`-X7h@qx*XD{XG4}UU`3!r$fU5ou-H_1J$*$ZIDMF z>ggWr=^i4wsjr55^20oOcqjK5>@X=Gibh1eRUqLd(YJap_Pf)g^I_voAL6g-(W^ZA zCXfEZqX$dtkbD?QF{C9*`3eB8V=$x=A6#Y zp@ww6>lFXJ3lg~9fz<4H<{QHOUW*kcoWI@Qx#|Z{Yr=O0?)h8zdxqAX&i=oU?2#O? z^2hp~A@t42e^5(VPVzQ^0PXT{g%Ui+6L;Y0+di8g_VRS4@2!s z&o|cu{aRMv{Eb@5;+yY4pe(+r4^0$)__7lQqVFC;Lx%yKJD-CdO7keM1l^u^9@w|@ z^JP$C4g;S0NDt1HlEkIk@i1TyH7#@bMrf3bnH&&<1{2yA$|C!jhfCXiEXC> z%n3I9M;NXQwPWl9x6|5|3U~Ujw_z14MluGA;D6Gu30?s+j2-F`5UL>MBk>;+j~CAB z=8ZkN2w(pu4MfEiKIJih!(B>n3*TIqEV9p$Fr7T6ZNYqTd7KgAMEhiK*L!!(i(eE4B8GZ!%V5VV?(N ze`0Kb#h0^{JOKKnIk?^JO1RlDxf@-vaX9gjZ^PY<-kHhOfQeEK;umZ21h1{368oMh z{Pj1Heh;Ky4ro0ZwsYSwj!xxws>bb_@qL}y+o<96x&*rvpRi~_r7(2VuTx-FkR}(g zq>YWz{LbPPdw(jGK(_3w6D`7}40|^k-Kq8LreUE@L&&*O|I@@1FR^Ue6u`DKX50BI zW6<5Aul#4^30q%7#voLrQ=K!7VrE!qF(eG~S;VA95%$D^&vtI}By?Knr+v51)GOGV zjM)wNf-rBc_$45n_c=8m<{{D8fHAvuPV@T{gQxx&BPOb*2RTavoYw?7@71W2PaR|4 z)+~3~+2aeY!tVZG7_&W<_aACMv{j5QBrJ3JdRt>x=CnOETyr{gPt@otTYe79+xcfH zW44v6wKNVUvFTyvEVb<1s5y7qoZB>tE))4ZEN{0x>x;zDufv$_kB)@V#M(E;9~{R+ zsKg%L_}Y!rv;e#_1|r{Ec9!Z=$G~eeij8qboe&92E3pN?=-;UnxObPB1fH%+sVw!P zj!(hnw@!Wvc5YS_>yEyP=C{^6W}oh%%FmW^qR;W@b3J;2M=$i~5|1wR=tUlVo=2bW z(ThELiAP`H(HD92Qjfk^UeQSHy`;5!N_MHozs#dA^XSVx`71pAS9;~kJ^8Cz<0%<_ z$eyb`dWA<{A%+FU)9<@3A;|p=_IQ|2dZ74gzaeU(%*P=|2A&Q;2p>`yfeWe}pqBuq4Qw6U1)qOnAy}9TVmW zoOFzDb2sp&Yr67%;&I8-ZFZGG3Cx_KGnZ*?yL@xdmYmaeei@V`vE=f$&z3<+5}(}K zHvVn;%}HX(<86nOK}ixzUT?ds3`&w%GOyh`WmTeb*Y@vph<9rfJQj)r1BbcnePN$d zn_*a_*>J}&JjB2Jnq@o`CP1r=bTwc&fi@QVhP zO40QnE8KDY4~A7-7J>1c)g7M-k+9a35@%tk4kD$<*#e>qrcpKI0%?^xDY`%x{RZn@ zX#xt}tV>`QYy!j4jfV#>aTB12MI7-hj6+ljjwddEG0tZ#&W$N3S8bP!2uH3f;~_cR z0~|)>_8tJMo33EFX9cSZ`$@h3Me4?lGUNiWKpp;3srO`!djAW{sjanhc!{OE>{8mz ziC%1R&VM;T@!UyD@J%Z%sRT5t?F;S$r5rU6wItze4J{5g4sRlwrI_{4k|w*q4PCjC z)cR*-&)C*LUFtM1q5nRxY)WDcx;olT-At!Lkmsaf=#tu8Y6lNGqzB{ZXt#sV9b>6f zoz$Q^K-vm+c!|&~&48=L(SEl+dqv9ZIg%=#p zZ{lL;1Sgum7O^Cqg9D<1Y=OWV3PvaT*e?<2;U_E zeX9d}4+r>O3GjWwm~G3h0AKtkod%38H5jwo);fUo4ago9z@`%B9pEkqa9+unUGr@Q zlc;tM{$ADUKT4TYeic2Kx>6?$94IY*CeNfZP>_GD!+&7?7diYYn^1cJTKnBxJ)Y~TOInB8wxephYxPW+n_8n^x2 zTXW)aLh2sLoTZjMQ#2>0C*fS6Q9R}r^eT;R2Gj}kGzro430q>fZWm*=b@4wa_HED9 zA}n(`S|J+S1~`iY*l5P=TBZiD1p(PB1K4c=*>wTz&4BC|gwco<7dmSkT&Cpy$=!~@ z)m86p)vBd272#4gERRcv!dh4}hIwpB^>w7g^eLu~&WziB92~%oW6bVc zOnM6$Pm=VOb8%_1R-@I=2vaD*z0aj7GxmOA3MG~L5xIqu3fLlU=_DlvJCre-?^woc zH=Q29&I`z1OIWJD!*TbV%_auEZ=+UBz=LZ)a9z+P!XCw`r7#4-QHK6*D@^Qf5igb! zqjEH3(Dc4~D#ge-gK&CDsFdKBSr-}!(R{tZgcr3u8q|XRc+*JO?Jmjs(i9|bV?hQv zg5na~;ndoaOG`a`0O4MnZmAQCO?32uoK&4Un}`E$UT~iMo9EyCb@4+>^@pbOh}x{SW<(qXD=rv?}zj72Spi6y%wz_;7*l{FsQz-=u2O^KM-pD=HEo!T?7!=#UVB@}CpK(wPzl<_1e zY{b-S*)iw3aLy!TLYN+E`m#^0n!roab^Apbb+ff}-G2CeHff@3B~6zkT~D#3zOLU- z)zC#*G^QZ=JwE^Lqwnz|@6J-m=pL$kY(YjLUg+=8#)&+YAM4S_dGvUXKHj5G z@aPjgdV)t!^yrg3dXh((cN6+%;*04Of-eXiE z<-M_;QE5TwrBnA6uoL(hyazn`5s$tAW;pt^z(3LKIz!dpJE{<>?_la#)uoqs^w~m_ zp3@L8A~~UR7dn`Mw^X#)ism_3$M&Oi1`& zvX@uYth^IcCAo`668(0V&(pOD8-~wxi0Dict3f9<~eJ)|G{F zWx1{ECoogZIjiWVa_C-rF2e3kc4OC=f{{Thk3;3)?xeSN;mXne zL_b#9fHgnMc+n$#A@PE@+2X1k!X{RXx0>3YsA|=$d=S5d@uF+=#l?KlAK3@oCvu6m zh_t9Y2vvk{E<0ds6;(d}Af%71y#64hPp-W0Af)G2?p^7hxBJq{=NyFe&6U?3g!Cho ze>n*0S1Wfd_~-5ZwDPQjkp6GwwFe=cQDxUbNY|{=w(>u3cbh8H4nn$LmAei?`hlun z9fb6PDov~W^LBq*byE7$$Je!!6U@rPt1Ut4Gc=xJI?7ko^_v~*iygB?z}X3ZWkVL1vdD3Z3Q;iu|f#+q(g`Tyfrgc3tQ^{5I4#= zY%OdyDM82fRVDZ;6oFCixS#;OlW!IYz#*G&vM4~kD_O7CGi!r-(cag!-Yb*p#e?ks zDmJxP4toVFuUcF6zkk};PQmOf$J#+GV0i)cj1TKsNU$4TVogE}-9pu-yff(KGXZi0F=_Ceod(ZMY4E&|2G5si@Z{D#aNFCZ!80lip0m>6xh@T!XN5=N z5%a=_3WodbokWNwKL$%MSaa%8(0ei5kYR5i_9r;q7@n-yQ|G~p6M0f6uV+cXYh_bN zGVqh(xFwD{L2k<{*w3F*lcQd16N_cnR}FS1KWEB9uQVVgKffKKU_TY$>~s_f&;!wj z>)9Ws=kNf>9|u{iMBJQ&SwJM5e2mZRKV~GP-_hDPsdC@i@0lIHCSjXpWe{tiyx`n7 zQH?QJLx>FtX{oPb3fxBNSc}BTMx9uTlf+`i)px9cUVK30QuZZ!eIv1YFZ_T;eI|7z zX$p2gUPJOh;&? zoTNy#g4zHu%u`3mm9Y3N4KZh-- z-h>i?6(*u1%}7Pu0SP?UJ5NNKUnzD^J*ZF{-*KnAet$v=GU2 z7~1fwJTsJtR_tfk^IxNu$_MU<6VG*{ zQk>ib8^#!TQ?LnI%Nl!GaaIt$IH2<;qf?xd5T`FFCT9|Lc(9dUk|KZX?k7>|T(P=( zD{ebl?LREyF~oxb5^gG<#Vk}zzCoBgt})`$%DW9F z#$!I(K)5$R@$l_)(oZ7-(v7J4DT%85Hr(;4CroKk!elst6!@ua2Ej>(=3*A}Qrqi%Cd7wDm4 z^fwzlSEJ}`(Xd>jt8DakLY+{FC*yprQCu8LU4LtIosCv)$3XzouHkK^ z(a&wPpGFti=+T76ODun#%2=s|oy(Y=MXxZJgqbsvF|eOhOlIpXE!srVbTlsLcGhXv z{i~@*_{z6eEsq1A)Ln*coWvHII7aDmlCm>ekbtibAe*^AyLpAdL?6zocauJEl;bk# zeUS)lZlrNLh0P2COds(M+}#+4(rk3O5NNAIh-ElY_g4zAGfcD`LrR_W=QJPF>)FKQ zCyT2U?62EU;2sw6(!>i4duieuf+bB@y99B{-^7DJ-5|DLC2PW!tWT^&#Bh=O5m#h?dxTBfPq^2# z-3z_W7hO0}HSL7%NPKvyx58Bb3qP8CG~vEqX0sYAVT%}=d?~AgV-z_!RKHFkT-bp1 z#Fcgf(4ZY`kQX9(ooN8-*IXqoEgA@i3GU8}*>gLNBpD)U4jwdYA?fnRz)ezxm?S^1WTf|IOeGrDjBaAu5}ggT?To#xzVXZ!xl30YId)iFjo?3L6m5}AaY zaX%^c{q?GXLpfs`3wWOTnPJaU^}Dh!)EA%O5!{J*9M25Va!YN`j1O?mWX$%~;sD>Z z0qouY_IyC!dyLr!oL>iI{|v}h>PADtwyz0eFfOHsdl*c53!kHtFs;xe7MsRQ>WLC~ zLPUL=jK{&EW)X4F5rLp9Sk9hO?h0Vf1hCBkY)1h5gD^_C(u9P#l=k4TYtvmh$Iokr zDwv~B8gVQ!J8?3TFt526Xw+F-U1#JS^TZ-tW<0ByaG4?XzGLKs71Psqx|T9b^ipx^ z9r?f>1HMLvc3JXq67q|!foIG04d_0e)&Kh8$tQ=Io7rxIu0PdIyci|eu)iz~9P zgLVBKtP4%9)+=G4Bix2z&u51d?8c|qjyug#;;?Op+lN-Ww-1R#e|RM44wA@#pWB0# zR|dR22v!0a%U6}U%M6jhW!gI=0~rSwYxcqq=h1Jt6yjN=uu-w1gtoqPCfpc9FowUR zmiB~E&J=WzMt_4YlTg8pldznsS#V$Mun3Xx5Vn*!njU1c?5SY`V_>QX{W!xSoL}}z zy`vM8YxP!caoXS3U{aBz&WU}@4<{%IXMEsYeIlJ8aQOiQoa+9+Ct&E%hwt!gex3DF-=w!{Cfqa%10IwlJYTXe>+^n~=O>&oJauLN@DnQ$s0C5++Qiq(Ld(YG3c9u z?7xctxo;)~Wy|WD*HKGZe6tP&jBg+jI=%tg^Uc>bKg_}jzUc%K$um;({#c!P6QN8V zYICLv-3P@GAH%pk3E@OMn{oB1vV9*c3SAmdhC+9x5?U{XW?Dm`t&FQTv_MUg*nbSv zf^&4M0m`lR9L*cRIPPD9C&PV6#yJ@t#hAVOnjFB+4#-{>;JYQj_gH}MwE*AN0N;;{ z+1s#kkTfZzjGt;V27^t4L;WfyMQyjtghyewkaau7r%9D)Y#w#ccVzU30Q*DV^@DQE;8v6Fh{5%WEP)1PJvz^$%X@SMkFMy^`5s-#qbqxK z6_2jk$Q`NGyz=TEUBjbmHX4>;`>&Q)UfZMVcy!%H?j!Q`JbUVUbOVoW=+T9q{zjhu z#-6=Ryz-`=zGjWw%+*}VX{p(wQRtEN(Hv9yQS&h#J>H`itIUmlq_k0kAAqN<|jSXSkEkJ zAL%{SqfhtfWkMf@3jc4oepJ3wqrju`U8GMX-QlD1#UO>r5K@TX_^ABZg2Up;PFx3i zRDQV#8in|%{M`nZ6rSajqU*WwTid^J-H}OKD{-If zl_8fko|s%(TB3ago2`%u`Au#=cqNmXY)`J_fbDp&NuyC|d*Nt50H11dCrVFde2CA0 z&4$jp(qpCn-nn1hOIDIVyVqCijPH2v}*+AzK8^rO;f!)Ti+u?_I; zQ+jQ{uc>0izN4b~O@Fj2Nao2;Y^Fpj)~0I(FovwSsOh|;)9}San<>!>`0ge>U*MNK zf&QG<Ck zl6L*iCcryde3gD15?(9vaEqqLrtN_Q>El{XItb}5E!P}`^tmm!9fb7tE$bbZZoAbQ zy8U>)x2oJ&A4tjG3h&}P9Q5G=*gji7$zbvd4PcnhFq|9M@D*YB4g*Vt_#1D}D%|;v zw|5MyoO^z0Fo|gA%j4AFzDvO3E?IAd5*O5qTh0InB^k_8FDB`HCH z)>L8(AlyF;j|;;y!|;V+_@+b{?^$`2VedwqcNDC@s=y^kI`;9RdbwNB5T z55xBCQm_+y`2NKF3Eb(ljll#aU5~A6M&naj)TMn;q76iGmYs zyGQGxZG~eScHaxE&8i;Zj}l>Q$$uI4+?6$vV!-RZHUuYhpEL)@;|av%3|u%5c88-# z;N4wINFoE?)eS*`w{@wzyVfMTy9>wV-6Z22G-HF-6K5m_|3x>DF!XXyEyZ#eKR8 z&AW~@dQ;L`1v@>9v+ZW$)`zK1XY8P|gqibCuE83dxX6`GtamCU0qEG|9X42)0v&b& z75W`^j)IeP*b0&fblAPD&Fioi!sh5HH+!PO`^mGWs>ZpqcB!}SsZUJ)J*=8WWf}x;FRX>Y|OIRYMhwl<5FE2eK1u6RHD`E2b2QA*G3KL_m`e`%< zJWsb}*bB+S2u?OMCb5(^G%nIovaUk|y{TH_4ks&T^sZyAmWjCT`9Fers99BF`um<` ztn?R~MllXMJ?WJigwgj6g0|Ht#FOD2pix|>2=6$JuCvh@gyJ`e(iB`kt|r_LMf~-Z z6bs0gNrIjWfCVHzB>*=TTgy z=XN7Uv5Hd5p_3W2C*!jXCT1qg1~(}toQ%a`nCzY)S?VAu!BM@9N^Dnxq1X$;hPm}; zVzc#P@Kl(A&Bum^O~PT^N%15OnV||#cs*1ymTPBi0KC{!@K>gl48xtHFZQZHJx$%EEWA--a!~owc#vlg7qc{uPNVs~3rx_u{w;|*b2ZEPU%rS3-rfkW`c+KsowX(znJ7oz-^#$-bT0ZJsa~h0Vo)5u7aOSr zt)H!Oz2XR_K_q-5CzWA~UN3`{PGydkf_W+1DxoeeL7z635_jg5u>W6_Ylq=?jZ>_Jp#V58ga zyY=82KkH6KhfC2{-MQ#nE}AMuZFA`~`JxNMG7%{@5 zU+(3Wzb-WCxtH~U zcl39vboW9D##cAN;UAR1x8WJ^wicZEb2h>f#Ee|nT%zLk(Ks7BHe>nc3(f7C-+>xX zf!}4o(FE!l1xqWFlChcyFg9nN+nC(wA zzQ;bOQHD}o&;|-jBS5C6FEgvhEeqJCgIhsiaijXSP6**nJT! z`KPJc@tDE#%1T&nF9U7LbH-AH5yFRbhv4AzKheA%H5Nv(gu9;y4+3VXA5T{P2?2h= zVQqh+vwPeP6{=7hJOK(NesGC>BovXo4m^cnZ{@u(%)LUmrN>aW_Jg{4q+y9p6U}<+ zG$AwA2c!UBz9VMfQw~3fVsQrE)8g<{2E|yDb%3Fs4pFssD%G_X_0-8mr13ktktB^Z zi#4Yh%-qqkFm^7(u)Ve6tHSWz29^r(7NGSCckXC;->`}eI}IjHcc!w01&6~X{h)6F zg4J$JdE`#<$iI6f^uviz2)>M$dOkjjaNoz$Fzl=A!aRu&5xl%e_sNsJf_<{XSRwxS z&0xm)rLjt&3k`Pqq%_t%4EHgxn2voiTH#KgOf{@x!vcdj&K9DKeF6*SSmHw>9~Z^X zhug9a@Q_Ht6w&d#RF7tqLIM^P~=rb&yle+loR74*ilU*g}W&X)f_^&Z_P+nV`n`4?rJKlv1g>w;O|8WALV37RDW$) z{e!IDR)gwaW%YKosQxonZ}X%2U&8A1FCZt_YEXT1g{xoL6Cb1cz6y7($38iR^w@!q z?58ukZ4I(73A5jrg#D2)`x^mvJgWS!!mXgBAt__P`PKJ``i}XNHnaDH;E$*NSM>!Rt#YZbVO&??B^GLw2d<9po-Vy7E&wX4ugpbUj>q!p| z+vM)~(lCkO?*0ctY1YvV)VzPD?}f{3Nn>q#^s9 zkrh9_OL9&kM<4u>hQ9nu#0R3UvBKQkhx!H+p33F@C88ywj(36z&Fhd*-zhIQrr!!c+QUT0mb(Kp##|*AVU} zfcpa~UN9=c?!;Z$SB6R2{fEJ12LRt-EzGLAEbNdr3U_lK4xE9Emv|}2F~=dq&zK3% zqw4%jcpJeG#xPx}`!JmwGO*%jxMKUDJoQH3srZj@#q}?v=Ho1f-@XNAfo_ULg@)6v zGA`%xP@YI2SX8y`I$aVFPu%{z87v3t#-dl z)UK6cYy2|?<6r!Y@v%kWDqux^H}n2O54OKTxym;B7TEBPAQ+Yf6f?%QiBe*)IgFK9 zGul$dN-gZh0N+~1!0FPaml%UK3HDKd@B082yHW;4Q7rGT*&V!J!5qMJgnO3|2ynpa~RHBpQ>5n!%0+5{MZonKT#z$Pf~RDom?E zO&c(SWGvJSIO9yK*T&Yg#Ocy8wrH!3SGzk`V>dDC&AkrX_3gda-utZQzYfn?-`c}D z_3`^9tIoTh_kEvtSnFHgu)qCwklhKoKM%P30QaXLdkADl+&;{~H0KjWvgw>YVdaIFe2G>AsO{dj70`9c|oJ zZy2eD^sQMU*38-42B5(y!C3Lb6U8yMIqKdwl&^c#eGu&Z{lp#)~fco~HY^_pTV` z1l#2HX+!zC%%3yBtgY2~6MK2)-!=v%%)fv9!Gul2{G%gJ)3f52N7yvye?FA2%lsd~ z-p+TAXF#6$Sz}Pb{6*srCSCE`k!rA8_Lt&-S-W|YtwmXWFk9fn%&)RPC(;1 z^T0&5c6ayL(FfCMYf`-9Jx%!MuS`$&Ck;lJ8{@VECN!C9(l1*p5A^q0_`Pu;gb%YH8uBmzck8vKFt?P4s zaL_U->HR}-NLxcXUM(4uzHa>Sg!J1+vXH&8hlcc_fqZRG{M-ne_Jm3LvqSZi^keRb z3jt>OqpqaOn-E!o|68=*eYiF&&D55NPl)DOEbOWy~F+w zSshpENdwv7+GjqwYd#qluW66h4AoQ82gX)0(?2l&ctYf(BUzg1UmM8RX8MyOY+4wJn1NmASmrrbr zd+RNr-yC>9IFzq@`1*yBkLh0h#Ka!ws98=wHwGn#ucJN?XaA&#PZ-Ijj}#5V=MClS zGW>=CW^ESUFtL|s`0g<%Vfdrt57y@U*GHbFbMc2GY>=(-G*13MW&q<#Hb1HTgb!*? zPMgTa*ybJUFC59ICup+-Tr`wVH(FDNZy$(9@7E6dfHARmjOeFZ zsYCp|H?MvQj5MwJnSp%m!KC-0agb|LwdRj;sLi_o&lzhB*W3yDmyAD|$i8tTn_h04 zHyPeMk`IoN(;2vZ{K4AVjX5-v?-wVaaq511A{%2HPycfyA8a8)A;t>-H2z@HQO)hv zCm$N7B%aJSjX3pO?-}EdC#GI7k{y^@44OB^Tr`qTm+jh#Y)z8a{4tK8$@q_rHJXeE zAL9^yZT!hZ_Q{cKnoE<1|2>iq!kW(bwmW0IlRPv(c=UvUe67RNM%ZcNz3_7>FPzvI zlY7lXwkEbUf2;}gonwtO(2tEjnFRVPBiS^UCeQ~)aw+&{#ve=qZ6?H(&E$IVK)&`+{JMz|4!WWHwlOFKJ>8%0AAd0M)a3f-M)K){ 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

$nQOGtR?0_|fpK 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%0AASg8H9ff?{4{g!i&LwwtP9^RpI9>Uq^To_zTOo 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

%ZR<={8V^YCxT3-E8ri}0Mztpwjy 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

u!E3~9YwC5?T?Q54$?NN{euEfs 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≪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%0AbwpJgQAbQQ}`Y|cJQY0sK(86HJd4N6> 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�O`IS3F2FCJ^ZHc0PP!z8LTU-rZWbSRS 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ℜ_lg3gAl$j5z|90sy+0chM)=&4$RBuba^2W^mse_9|POOQ<9 zma1Il(^WH6H%$W*`_PL8<#J2`od#*BoyG?zl*_Ds!37DF@qUe(F2=N4&FMjyO84a~ zK#kY&m$gt`nQpDqzACJjRnm~o`$%8rE1S@Fb>K|sDoRWP2#3LN2~JN0ziEMSpN>{6 zNg={tqR?KcNDzT`8_t&S)l}lZS60sKSounx{X!uXo>MdqQY{*shkt};80$U8J3c-& z`y^%dy=rL-#j1alY(ftS6wv7^s^1c!; z>yI74YG!tqV!kK0K%o%U5`NGIB~nG#7F|mifi-b#6s2mUK-OMXD1pDGRAX25T9^>1 z75v!}2;7{KpC|EldP}*@+pzHEjs(DBZYo!b{uYb)MGEEn8_VUFDM)KHiFw`#(cD^J z>)oS4j!A`Ur5i@VDaj}C_*A%BU(u1dn%C25IC+UU-I^BuPTK^TYA6;WNB0VOWr4Gi z+8_=&uU_?Y&eL^j&$bDr7{O9B#)pU_4OYR^{V6~#6>!+WG9|4HmrNrv!u?b37L8Vb;T(P$S3o4l$jWXP?7b^EXfK^&-%3|Cy3MQin8r^b)DZnW&Lq>!DTo zCuQKLL#uKG%sK~tE>-?Z5(X3kJ{!@Ld`!N(8gw%%tWgG156ej<0_?HNH zfmI58xZkRe#?xZQa(<1fUG5*8mDtF^d`Cl3rAdnELhH01hH1$Gb|wU;7^$WNM9`m& zwzX!-34UwGL{4ySIyEssrea42CoTn0MfnuFdrncDZQEd)je~EIE9#pL;A z0c_VwMh-{V)-SM>O+*ynkD7_lTF;GB3*=TtvNAkJ-%cn152@0*aA&R}@L)_f53pA7 z#9Xzb0N2TH>g7-6`i)XW=d%`Y`itRZYgvK`%LSDAC$MOG=}CH3y=8WxQ%{ASMi1n0 zP!;#>2EM(Ngp)bWPzX`?C7R5~23k!CFDJP@Xj@7Shew(#zjhncY>z3dV*<7I*_V_3 zda}2LxsGHP(}j3hcoD?}s6^VN%#R}$4Y_iX0kf|68`y18vudf@pBa7hc(1^zc)Ct+ z6MtuelJNQUmBg25Ln-k!7N2_iyqlO?Q}WX)xy4WkdXDB^NhNg?9g`?Qdxtf$6zedH zd7SkzNMq2{G^!tJJk{skWh4X!@ zUZyJDkvuM&+BF0ufpZRQrHP_E^h&SRfE2NX_53InkFrC zDvD&su4WFIwrw;=oa+s_)p8rYfFnm8?d&qUaQ>`qi{y3@#Ug%C1UQiDwy0jNBW4^G zS!WelG>Faewf?2Uw_#@c+}Aqkha^A&-N0nH6lHMCuJcy?u~@CH^=c5-cqhiwb;^%z z8y0HE54b+5y!s=hEA(Us&AnaT9@M{~!gMlZ4h7n#-&2#YH`EI5rGf=vNe5_xy3SZ` zj{g|Cj$3|JoE&M(ZHx{7FiC1@J{q5mX2J9z_XE5=XR!$ja1ZWMIk(Y zYoOv#SM5w2*bwA;rr@1ddLHw>H@qWgvza`4W$y3R zDv)Q#_b&~v*A@HWYILqgWI>N+fjoO=sa~UT)}ZdgSQT+bu7FyiVe^=PzV9O=SS06kk~KI7_V;g*$wQV#N%oAT6TpeP*A|7SxU~ymvOK*j!sk*&D+*l zeh$Vtd=01VhkbL+-_S?qOtISOyWl1z!|ROZ(ZBc1a4q3-hTGa*=h@>C&okP8GWl!( zRf;fCR(s~N$WdOyF-JF0$zeI@Gdz2ne0_SDiw1JTdFo`pf06z#x@vIOuZoI_t{GJQ zT7PExWoK5uTD@Mryr^F7S%0N+#NdQh!HGY)fJrR(=Kjumv2(MuBzqRCldi3wIL%WCD zUkQyf=`}rrBM;ET;Ma}~>mO&hw{}sQe2ZU*-#MPa7k-w5mpVj-?-O>{O2TQ{xNvaf zL7Jc{6FW|K-5bcNijw&~hq6Uvvz5XRz9-A?En+nFUY zSy3)Vz(Vap^GDdXKw}|)qHW)|cOKZhqJ1LF% zI|T`fH8&BQfs-G8ek1pmpCY?YPX%Wj5}a^|thq>;Ty-e3ov9LsyTkmv$~;BwE0OQF zOr0s{5#1Pzly8|SI4$LnkwF}}L0${)(zz%Rp3w1GdZ$xxQj6f&7SgbfvM2erYd)?= zTFaYg)|GK{Q9F6#BHQ6qgl>qP(;!NpGG)!{rKC@A3v#Bcb3i^j-R+Sa>7y?8s8_|4 z{Y#Kb*Rn}|q$V@3tE>Aa0)ADv^f(_4k9OL@5s=v)h|EQyt))(`XrtYFvikZfx;Q0! zPS52@_uCe$yq?4sXmq9sND=%z!zkUcr;MTuf5#t%GW~RBk?Q{~zSx>yAxEW_IR&Sj zg5X$$kB4ACbb38(_wGd(pDlG47nGrHWVP`a@2s%>Zh4|T^QK7temR4H*Wr05n*F^j zz~AXK!eNDMxEus(^Qq3!&*Polagu|67Shr1(8h|XU9E(C9NsHWO*R38lfQJk@&8qs zH}0OJlkB;yU^uewmNN4+1j8dcL(eHSkC8M^0g`BK+0s=5%Is4S+G&5i{H%o2um+#2vKH_vE6yuCn2>I_K#Mwu|G?V>@yNh{xkBhtF9KkK1yP2`ANm-(;ET zOM2C|v}lgJ@8(FjU3F9OTP^ROx|J<-x5t8jz@t)B_osaMQ&Yq zKW$FPW^Y^UE?kj=Y}TTalQtv5u+p(lD`G0h9?8`SfpB3S3@#0o$$-4B%{FWzt(Z&>s!34zy`lka6@O5vyOKnoNs{jNAQ1YPn|$Une~(zo0{oHn8>j& za>7rfuAREeq0>^1h?JTxUN+)L%W#e6clcX@D`=}sI0cKK+4uR1ti7C_id+HgQb*Q_ zIpGN8bnPA3JON6k7IGIyNe>r)i+j9cm)ry_Y_s@;=3#X|`nW2sy@ri0 z85?dXcib^*$TIW-s1i6NKZ9Y~7p@~*Hr(TtqSo?BGq`AV?dqjQ@1mOagc5JEv@}s- z)pj)2IK7BX8;91oK3p3&I-ij~4lh+pb2;Llz_bcK5t}e_sG>LJwT;aRI^ccM9Yx=T zHM$)u!uk{^?CE@=viscU5TW9+%pK8IuZ z)AH}g%dCP24HJDm&m&;A|BXR;aTDXV@Nazh_$G8v_TFD(XyfEF^3gqd?V=hE_*|Ya z%^S`Fakw|vgnTDd;(<_hH}_uYJ#LwhN%uRI4*Vy0HQV6GpK3!*Bfx&<>Z=Z-cYYEo z2h@i_WW0OKQx4SFpo7CJPl+D#L|+w84uBsUZ9Bsdt@ZX({A2t}el)VbT6AprOx=8a z!hI)E#;Igf!NXhFk;>dyLJbM8s;geStm4x+ma>)n(d=f5kv-2|G>17}6}a=VH~Q0@(53CFWbGA{P}&aO$rUV(c1S)i&sUJs_~hfh z&_;xd3HKr!f`J>UN-0$#b}NPI`q_d)=vurcTI3f*j$nTLli@=*7nY}94#9e>fx%JA zj3L-)68w!-_Y$j44VmxGKUYh^LOdyt;gl8p&@mgi(y?Bv46CKJ7XAy}TnpvQI=R4l z;A1|1E>M>AxmsGIIr$JpoLghFu_GC>CaqO_AQ{fjSAH?5F%Ip(VBMBb<9aMys)ggw zvoJWSg_WG7XL1EOMP;B|##o64@M!=}q;s@h6P4u|%V2xWlVo^-49KA7^peSa3L{_S zs!YAxw4du@LtaV0qVf%r9s^`0y$Ya50Hmu24)C9GvZSnXRojK-+o&U|$^0mNt(jH8 zpAT1wD=Fpfruhx{E=K;cd^w3<_OTc=OWi^075S3OFXI&(S4-VW>b3cDtoqZ!n?j?S zd_k(>>N-72ROrnP0^hg7b^BUU3u^QuTo(IOzez78sRxlvES#Lj;aaIRwD1An9e}*0 zo{j)eo!@wtL%gr;lVsFV_Q|Wvt`}6%{TMj%yy+4xPiO&O-5=uHI*A+~7Z}9e#$v?{ z`?kImTCNtX+(TG`*rN4Wc=@ZWeC6y{bf;7)`wgX8QF*Z9TB>-UlY)8{P@nZtPjfG8 z3^#NUsTU%?=tSyDZgJy8sdVM`7rnj^F^$ttP=vv0SJyYI=bng16A6rVX6fcBuMT!T z-IM|9?wv(L^qpPKQZ|kYse9}!qaa-HvV~Bgro1h5su>Bif21T`(91;$Lte8ATCh7Z z)NP5AQmWv^;0Wm3XT5o*qxY8<9i5Kf*G6f9v;&p$&M1F7e5*nR+*}&ARo>#$KW`Xe z5_{KdyI%Brzblh5H>B_pj zQ47&8&LD4;&(<0SzCV2DEjT15}1;ws9;}lXkz11f(Jdt*-E5sfHP5 zw?G7Pt1)q;ZZMjTwNkqq9g~?wFo6jr!*OTp(z7}6!Qcd*d*0kd`fGzpCzK1elppDW zPmu^m-(?r(csuk5r9r;Axxw=(H~y?X{Qe$wgK59A>LyUwPC3<>fd1Uc77U5Y;RXRt zi;oix-w((2zDJ&S-ss?{bS{t;rHQIq`KLBwgf@bZ8i|=3qCndPXMf3FQY!|KO31ok z`F)1H%QO2Je(e<8WXSz7EYe+rC_it&54et?(#kNDdKVfaF4^TWKiOOpmEdIdelLGo zRcN)os&n3L&`pu1xHinwh^lPjXQ?#|4m4$kH^_a3m&3bO!WP4J)n$$@3^pFPUeBq( zf!ZIaE}Q1n#S$nV+e5XYbjc{k-mf>5Wiqvbw{f$Jxe`Z@$_ZCmh2a~RZ^CFeRKJHV1yS6=t(J&CZbZ-eYc?IO;5u7DG>j$wZm`=dM9dz-0xR=#@c zmgV;|0|wn%)r6?2{e{c_5UAk0U5D{2!I%Q*P97mC(>ddr^ zO%2su*H#;sMmGJ#=sY>zT5I1s7mA!OF6Hdlq%~_ePX?VBi=XRY%O7HKM!~tft^yq` z(Gh-$NJ60M<<{Se<6Z0=YT9Qu01m*P)6kKM`hGVjUEC1l9jkfCfb;Mu>z(pInbh9j zV7E=R@RuRzjVEjN(On{tGy!o?Sl}l|jK!~WM(1C|^#30UX~{ub82eTQSP1$w2F&;V zY_qJU5btQ1?eg~<8)U{W%B5@R39|jhq%8VH0h!{}jZv4DlA$1bhG%;>N?aAvS`)SL z0k+b%y@wy_Te!5*FBki9IBoi4y)0I%`VVA?C?2!E4_oXg&?xRbC=s+0MmE=Iovvs^ zpn-UEN5%m30)(hU5U>yn7WO-hNpdGZQl|4U*xnyN%-ba84Px4ugck}rWpD;F-8VDs zNAfJ>?mMn!w>x91?{^>nnJ+<#7xCpx|H%hrE#s3l`YA2~@WBtYg}y&0nJ8|m;g0&U znU~l5qS)f!@XEa#7Wy-INa-Xic0=b7EQP#6r;BoqNum7#bzi(sN><`gQYH~V$*hyz ze7Xwvp$rTy$9`tBC0X}eh8$fev65iNc}$Mxkc-@nEJ6Lv^G7icHlZ- zJh`5?KY@n5PC7kz1P+(ApZ)94VOnYb7p7GA^%FG8wJ)wp%5Suqt=kzohywF(^nS3) zS7dq)9Hp*d!wGUMZvHsBbeLvShZm{KLY@Qer!G+?XAtok32*Yes9arf4!xfP-*@qI z#MY8Jljr5-f}e6U&>%3MU{tDzn?u_{hVi4OYF0@(KZU>sOAgdorL4A*unTxs{2NN{Fh##PD!6Jgm-|{ip0R1l6 zrjZTj#Vu?yoQEVPg~&aHRu4wBRN7~T@K{AJPEwUHxe&+0nOtqGP^z&8Xk|bfiaz&t zKED{3cPVM(O8X_p5$R8mer351Cfg<=A0rFK0(fM6Jd@=es#4AHxWb@Q zcao+zr2mmSR=G1clhc<6b-Ig4)mnB-`X=s^%&xUEnsxz~TddL1OU7%XNjpi>*`!Ic z6Unpm>%~gPu#8micN8b9^0PMTl=jO@-2qJ|{v)0`qj5dQjGoOBz6au_M%VKUUgm4y zMFO6|yU^owFnx5llzhV%(J!>OyA9=xyyV~M-u~or9_1d_x>NaZ_W|8=CzrdJ4p%pw z8$U~SkU!PvjJ}oYOa}RRd|ck3@NOKYq{3n0bIK|zkfCf=OpSBY%p~8eOtxWx{3r^h z%4?tlbpEg-%>!Y zA;z~46-r?MjC*%r$vsu)**;P!(>$EF>Bp%6TFg_Y4X&T^)wAy&_JC-g7|ReZqqfiT zd@8=Zs0H&{5=wbG`=l4{cija;%JsA1FuGsZE4zq2eK&gLc(h?HmL0^NcX_THyqml7 zO;>gawWFWYI}seHDqZ`Z691O!*6L!i7&yb+T1`?qM%UP)tQg&?SkVSevrU+%EWg8X z`NrN+kGGkwx2vD0p6Ii6lEEFqPAYcV^INUDQ$EwXXO)m1-q|^uC{yS0%g^F;c;^B` z1}bEHqGUd%fp9JMh5N95bpH~S@obZ#_08%=Xe&+OL-kN*DOh>+ETe?g@yna+j<1~s z$;IyX3fzk2*lbPEOgYAB%fX<%K|P_Q>0d?Kz3C!aB);2w+VPv#Sc!#=%ydfrIXL=q)Z||qWbbHrE_%_dXXl@& znDXrPOy&hD#SXi+yH1`O#chvWi^4YHiCyJw(iAQ$-JaE4i{{XHZmqC7I2?V-S%{c+ zT%b)CHhHH&#xv3P8yo zmH0s+MIEHkWhhMW#G29f`uU7y^wuS?fUw+_^j-J%Sx0^^TYhJhjqx)8gX8` zRdu+v*P++`vXXEeVosb`*)@T#Tb!pVn_W3_p|1(@SO;UZCw6xBRbaR}4eV)sZ%C`d zT<=lbsr52{4@5qfoR;DyA*>2tkq`T+wGtORDL}i%?gJF$k775TXCrG-oYV!draOf* zS*8ursi8QpL!O*ixE^g6&OEwyp^A-j3(_mJQeIc~V){Cs961fleM)pu%)$ut5i-Mr^n>nhiorA&$z^(@u&pM& zAXbc3vl}ORes&$AXD1;KWO4@T#|9O@E}Bk8bsU8jL^?vW#j#f6Q8pHi^6Z4X>)_fTlb<4RH;^0^6_8F<1iARBE&jO}=> zCU!-atd!!cgtzhDuaTHJ*n@tG# z?)==?3{DN6+!!G`ufFRLN1&yzLXV`9p%@^zvmGPw(Ws*zl)Tm^!9Y6dE>{16T%+?f zD?s(ruP={XZTdDMS-|M2QmcBZGs&RG%!$cs@KC52c@j!A$@SFSzuLf6%t^Tv$qBk3 zT+Rc)p+tb15P@!b0};cBXjLv(CKW~g7({v^5fEF9mU>Q+|KjlNUw$T+BbMMt?IFZr zgUR$2`_Mx?p<491QWSl;$~n59=M>f4;!4vq@xDgFqGp9Ju#H8pAEJiDy{10##6szb z=2zw-KJF`3W~E;4?(QqC#w>(}(r7h4;C^lma$%6nL}F-nP4lkXU?uIHOXY7!X%4;D zx0Ub5fKOrT{h8!_L+{{w>{2@GQ1hRvy!8MUem09u_Aiygm2GXw=qsd? zZK}waOFSEV)yYnm-fR0hHau<$Yy+~(Z_l-&piDi>Wo7UW;6NvQ3~e_6Fy4 zlRI8wxwp!PTr1m%0cYuBPjLs>m-_alJbp=7U)@#CFO{*U# zl_NQgeg=;3PZ&8=oqczb0~E=LynC%hl&)|UZyf)ayO_oAIq--zh3RRJ-X)PubqV4a zHDY)Gd#3k316`A4{>w6)YHQ~4>W<_{HAtwM+W7b>%|3FT|J*A9akI$>kFi|J(M{5j z+kOfVDqJf?;@)^k`wGm)N5E6U71vnL;Y3vHfJQs6vW{en9;aZ}eU9j#P*VLuRYB<_ zi^-)XUga@oXOnz)RG{p)nnq2_T%Y|!x}xo5lWT8eU^q!3!C3!s#+qW=XRcorQ1Rog zUpbZ$6Zy?7!z0H6Kt&<-^36K$PiEJKes!O!+$VKfSTI6%YCPI;5033$HwhT34L<4W zOB}M`kw3!?kCfkgW@;(B_?miT{b^OILaoW0_jQu3D)GAmFID+y)j=Jk4@b;?TzCNv zcR3b^K2Eo7|BP-U}w~YxC;}u$n)Hbkg2uKORe>0^(@ZGbs$G2dxOnM6^7b^HO-)4hy0Be*ULXQ^h<@q zd&+~O67?uymC4s*(50B?{no@M?*pHzp2RaxM8o4IFYf-nck-5JPu`WEI-H<_$vgQ8 z+WV23f)VoVb&{drsDm@tvoHBHGcl%8a_oZkxv`{bSE=k7)+Ii}CVd($9Hwfz3Go?b z#Fkqoeuh22wprm6Sj@r+8Wy?%r|LxN7RWq9S%DaJJYJu}Qmj|#7mk3Gbm zi^5Wyn7dE+>VHO6BGCDd0@gd8$!tV-vV{*{r^D!OJIamb-W%#W{!WxlI&l4WY15gv zn*m|wy`o)Nqg_cT)|ISj`bcw>YmN^z2calO4tTyIeK_>l*bHgfN1AE!r%Yf%NYkut z*E=;??~!kd#kIE?xLsDP#T`+b1?$ZhY;H95Ue!t$Qt5Nf(A=urlL&kB8*G!e`NB=O zWj5i$){}?l4VQW2m~rnoja*PThu|FOP&MP=1gOgC)D5hM@77R9J7zcmvNtxxzYbG- zM=jP{SIH1hccRhYaFu^V5ifW9l(D^5FOu8XX*eu&h|qOp%=T_JJVM7NH&3Agj>TZG1M_H@WP?cf~MrJvfbKI{p(JWgKh3|=(%bU?OIF*&xO*ym7QSa;QQxGxwl z)fgHDXA@-%ihleoU(D;8dan61UbH*nNc8Z>s1WWLC&m)GhU!Q!&S5Dw?Vb0E-aO^ z@}a@&)V*^d$*7)kn-wH+sXEWwAvJX7`AJ#Rr!>MXPlL9YV6{*l7)S~TCc=e(i9^CE zX^BI_D%gI-@<4Ot(__7c{?1HLpW0^m;XH^4>Pcw}4^oSSmhvmGK2HS5sO4@$)&5Sa zfPD5$w5K1C)?1K4J|}t&d!Dgf10ES<7(|$U%Uy5!kS8l6E$2_>L`InItVL{XIUaex zS>bYZKQIad)v7SknI{N^r|k( zw(Obe!YC*tWisr`eUshP%h|0O!>VyKv9GamA>$Xx(2MSjidE$M8)RSqi%vG;+w=<> z7nB(TNDXzBi1+e+VcX|->~c*P{y*fdu%XJ@jstZG&Ow(dPt`~lHb*tCgi2sn*&!t#;I5d+7HHi?~?QRQ=87_I!6_!q#}(% z-z8Lz&Kt`wf4`rtWO;LZ&))A&t7^SUwpKPg!%;eVIY%iWBu_BKDl3PbE%%gY^R%Wi zo1CrT1ZvK~nv)QYG%Y9hS0jJz#N~MO#RtvZfgQ0Dqo;OH;3_Zg>D};Jdxs)Ariq3F z`FnFi@BgVUPFfz=UK@aeJwjL2Pp)ow>RZ$4mZ*1yK!3ona%Asf z$4E)YmlYAa(cQP|l@P8p48c)w`jLg4QaP4FnM5(Qa%cXFt0gCiIndF6Hmu(rdAQ5z z^xQoR$1FX}V0-0$7iGF1xJ$4U7j=wbZz%kL_bUAD`>wXO0dcQs_w zvmDx|h6Qko(;DpVrpA^sMGyG0xePk~`!CLSlS6x0<~LUy7|&)uc8?bBp))h!=7c;Q z0u;jEZMFz~|wR+v7j#RRx7ntP2V!!G*F~l_)vQMg?r{$i4jQ zP`#UehkL2SWeabce9{!*<-hn!D|cd@T&clgIjjy|n2StNN8lcf>*XJV3|7g&e%ey` zT+g>r>87knlsv!@iaoUIo4_! zg1~T|dP|fk8X+GCbu!UH9|Yz!;%%4j9rDex__^e$w9phn@4Mu$NWM#3e2@N&x8(JK zky3IjQOptiZXK*GE&d2@23TCa7FT5snN7#l((q1Ghe@wi*yhMf_@>wo(}_&XQ)Kug zyEnKn68XJ;gX`!zcm)diGeS>T=wm_?ErdoMdpzE#cUM=-Ep-T(H0NU6L}Qd>Gc4L3 zNcj&ma%F{o#zu?ussbQ#-nu&}GivZ^7scmeh4X zXD;7RPPJW?+e*9Pti%cfr(?uHcO?#{omDVG*S0&x2Y%uh9i8*!Yj65n zhRQyd-K2}&IXXh%RyC`Fw4AI8b5h&f2+TMu+Sb z%tWoAl&@_TLOXsjieqf}26i+;&fUXI(5dTg|qaG)^eM!_JHguLp6_3C)rI_t0BT!tRnmsIs0=KpV1&MA>ZLz zo6%H={^431Mg>kUtSuR|QQfQ7Y7(P{YV2r^+&kGoT3{rjD(JJ;(5t;tMP^s^UKv8o zv)x6xHt=U%@>j3^sR&ObiKw~cqD#G^rd3w48TCxSE$QVw$Kk{`EUc*DCTx_W6h}~g zvYpyc3r1qPQ^y@o{#syUz*2kxyqVWWB^u;)m=CBtoYf!;FDR9vXXZ+jD+{$FJ+dXtULB;x<6AHyi+!o2gjZPWC; zN91Lkz67#im0Kog=|4HqCJ2m{wlN{ucrOL62(MS?5NC9~)VXr2&>?$yRkL~~sE*Q~ zJR8PwG?J2<2uI^0NXat|6O)^~wOfJf-3Ps()!j(ykrK=kwf>u}5f0xFkDNT@RV!ap z3;X>Va5`d{?k>b{Qj)H1e?m8TU=0lFUa7LlMeUqIXypX&@?|X?0__Sb$6p&C35P6R zMK&%zf#AheW3AqDoaAuemJk$D)-bCI)g)?qpHf*Qg)$GF5ZB{@thK8W@T%HM0bvF$ z|2R)imPWjKaGOpQMdQJ3KIy=~sep4)9|8{oZg`)31t&GC^;Wk}q4S^k;TY#EN|qw7 z0JarxPpV)~s$oz4_C5VpFASQ1M7sogh(f)2xeEPz1KqKP3q)A(+b=Aa4IN6j5CBqF zKBRH4^s8T{Q1r?*X;Z2?BURu(977ClORHr;>1AYTu*$ra`izr zM&nDQ#za?(RTXC{ZTk$RB(2|Af!Kc(teNY~#&(q5t_P_nA3aWIa3cT|%~qY%qXX*L zm%_&~nenSoBF_XU4#`TC_Z9x31@dNJpv}g_;zz0XzFN$WSUa6vzEqF}~@9ysJRAt1{v+@EqqqP^YGZoWGeZmgS@DY+E(mX_yc7Hr zR2H|B%^dTfB2Qvi8aq;6=wIV_Dfp#QM)nG=KWb7vv005oZv{EuA%)u+z)Aa<9zq|5 zpH}?f*NmOYF*LqeltBp|oEDv{Fh;Uv5vr8$?s|hQf~EO*=M=}n9c9(j$kEMgyqHFg zZoEZH#Q8YDT^p?0@>eT^!%4O;yP(VEF^&ETXB?wfm$>sKI*cPiFrs{!^npxYh|IcH z22Nv#-Mxq%mQYe|Z)k_LnO^a=(#xsSAE)`J6=8R;dHky1HMZMgbi|~i;G6=tJFyP7 z-Oq*HrM@nY(tdYbx5;21{^C@ea6ig_zvSv)nH z#5%DSRO!^P#3|&w^&S%tFRONM9j?7ioXs|7v{Qf|XfSYG)($`#$USFyrWf}LFWN7% z!n!3;OBHo|OFrgCYnQQ>9ib=O)O+~Dp&>dR5K~+los`oG<-8icR@KE9`)lY8LKoM# z&X(1@OzKaC%tO;>R1JlpRM_E6`EwyWI#mk=$l<7(mip28DcW|WI!x`M+pe}y8%)4j z6iSCWJU~5Zz`g*iO4_aBs%iO%MSpb}nr@}$vW4p^A|bDv(oEGhGU^6@Yz}DM(8$aw z%UEjv@^Cwhr|TbeST0;|#WU2Wet0Rj*_uGW^Pch}=26n@u-a%o$CmM^N$LhMbO89#N0et$OKDg#=hG;x-vY z7|iqk@2gWgB-@p-VP!}x&#sx#cIE8P zR9VJK>r&B+Te$2*x6)XVm)vxYkI~ce^qvStH-~pD1CSdS7TcVfS3`d{hXsamSuoVYJ6Ou%1vR_AUWN9FYomqAZ; z`JKnTT?JL_IKl-DC681s4=UBch_O#K4_C%Z8CXG9qknK}7>tnHG{!p57lAy0Q4!?T z%Sv9=DtYxX82q0aU{v0lZ09KxE!J%VX(lDI$hB`bgD9<)S7-9=TQz)3C|6}5h3&L< zG7;$o8ljr}uqG1%*+Zh#jt!LSG@mxL21oV)uO4_O0B_GLd{Cs^G(x$u#u<+VGNHB^ zhL9gsk~(<~sf57g)f{AYb4TAtwd5%;tNQc2=DF8tlVPa3yV;r^fx5Cy&Bc&R*|^l^ z6`oOTJ98)3p%!-Eo)HWG!_+1nyEA-G3$j51%{9)a`v5g@O>r-0Svbo_o0I>$f_`bq zE*y{lvHQ#&*H(rr&dFi1Zq)wXDvv&$eW1d7aMZ@u z*16`pw_jxOW#biE;TqMnrr*~BUzQDq1B4&ThZ$N}rdoM127u2cIY4qA}uMS!aY>^nT?@T}tbw&Xq}FT23GLu8s_)x@2v-eM=|%W5)CNXK&G zvkEPX+ARGo3crQGa2K{rgM!>4vYmjU(GU);Ash;oaA>Vb>c@F#KWe=byyRgG>>}_G z9OWW%?cuX6lvWY}JuW#!HE69g>&-J%b_6e^PoX`(kzBPU=AD9@7s@yHTYKaU0@kn-U2;xPDb0uwMxxS*b%mNtdbouh{UPA9J~RS)k7 ziBGmW0x*7B2|(Pyx5jX+5K^EX)0IL@SZIwBPpa8JjL2QI=s{Za4bMS5pCQu<&7=l8 zi!|^wft4`?3?Iek<`c!O3zWZzC?)*bK_R7ZAW$z) z(rcgcT*vq0kQvLT1fJBu5K?xM@(9l_d5+~-&vUdePODu2Y6V>^&Apn>CTQS20xxLb zWlEi=byQO`#Vgx!ry;d{koLEeSwz00se5TOmTfMTdmK~hs;#w@1Lgw_Od;^T2Hqzy zMFCd_%=5Q2iqH^&pNFPIRAbpf1TCVGplV6>JE}0&YLGu=7$e{G6r5tp~%Hct& z5ZG`KK-I1pfhNf5rDGx%Y+A^ABf9^stZ4n=43-v{+HeQL zft>{2%7LBW`8teg_q!QfVDJkO#&oD2i*aG;aBo+wds`zMh#PB(AOx%&9FaRvbGaFoHG2t*bAnQLCvb2TqTvzE6?v3$zGb)5TcJ;o zUtw->Kk425+6h!OiMpBfzeqFPigXQn_ z^>Re6{4rl31dDNohF{Z0@A|<}R-L?zNwYJD*m68BK9)N*JX_dMZ)uem zZV|Tub|||BGch_ToNE>C0q5E`?oZvKF3koGi%LAA>eu?oc=UK1=Kl*d-o0C+EeOjS z^(6Hz*MDlrO=qXZ%M}~0RHMI*13+JZl1+gYdzd%q8tp_zt=YJzt2YVBr1v2M09iB~1u$289-%|pmrx4=fe*76V! zm?4^Fr)D9P4Myh&IU6bJx-G{mP@>4@P7Vy&G%KjTz6WT-!STI9H3(uFfyUlSRrFkr z|6_dMQTo=Ql+J9=)sXV_@`mBRL!FcF4qPwp3s2jb(v5cm2dRo*+ z?d+)9s4r{P!(7<9ku)$;AKju}`W{2lw+U6YVm1f+P(F7sH=tElua`2f{)Y)j40!2C zXJ)#_-tMw3-i4h=W~)51xtXa;%I*!Adc^w}rjmWNDi@ycM>rIbZ^?pGV+;=3(4N-& z8^$Kw^2m^j>7ETw%)3s8{LY&dZOgS@4BEQW3(-k^KeaPcV^)~gCGzKhrs9HXrm6{|Cy!X*Lu~6y;Y#6ggaNMX-!KQiVqT)=#3mS|nx7zWc+a+SO68dT{JqN><)a=#kYmuv{z%PF`I1oSkm%uWuA9z4-jhfP_E#^YBAN8W)Q zzg`*CL}{JYQg=vRvjE^#y_Y@1evf{Lrf%npQ?W^8PwtANV>WzMvLyH%x{R*1t zDO9W;xzx)*YgZSXexh{TN^Vfu#;?$n&HpdC4q%@sM8upWW3@wCs3hx7z*kehtE^gc zu7~hf{ehtUA#zl~)JrbDsHn>W>JzP3N_7VYKAwQC)am){XUm z7Qfydkfnlpb7Pj1;;A(oyA2uo0;MiRCaL@s7!Iji_BDsZpeaTgvBfrX*)@o;|D>ta2xdH$HU+> zQo(mue%P|2@x_LmK-MkzVxa_1jsu+4tYM7$6Xz8b&9<$dyo+!l{@^i8=ytwE8oNRb|Bir)FL2zniyrwZDay7(__XfhJ4bwCx z5mbPt;W9AULF)vy>3qyuo!o}%uS~tm7J0g^C^R|D-0gU=_y;j4_zSm0EDzgvkkR|u z?j=L;=V1l3^wQVpiT6tr$NKHl3bAst3imfZ8HA@J0j{f2)6B7&W&!!${82+7+8gB0 zINwUb$f;q2S-zj1SJ}RE$|5Q!C(MnmUPz0v94Qo6REdZqL-!(b<38J|!)*Xptyz7z zm-sJ8uu)-(>96jsnEq`IDxR(FgNUbYzbb$Ep`K9Ys4B<_@(z~ymJ^>Mb78f%lL@NZ zhH>oMnKyVLTxLnyB+^VcZo=wgb)X<}oo6quTazAI9X%d{0Tz;XH=C`f?hUB&Vw8J8DI}Uy_b3kst8L6&Fu)P;-Sx~FnsDyQ zM{LJDVACVKfs~bQm)Evq>=~jKQ=oekA_x5G)TG;_TMu`09j$m&bZM3$NN6l|qfN4S zpRi?@hh!R87}f5V?0lK#mm&9{X25yz7aVNd&;Fk$4-Zci7A;rp33+%szC8C${kx^v zfLm$3t~{qpc>Ud1$V}9S-`Xd6xh$X=X(Jt6+@ru$E^lvB>(z1hqa-sFw;5LE;%z@z zW_oj_O}-TQ3KgglZoj-QdAYTz8u9qG_1r`Dai1jX0Cj_wvY`*Ac}yc?IT13nloz(W9iYDZqZ}H&Z{Zkzifs|^gwmr_FK)I%Qa~7@E)%Vc zuOS)nNn3^EOsu~9YO$~{!@YWetQGPp87A3HoRu)D+!kx*8RL-ZYr!;`e;)Wofd5qw z`WaepD`62)^Hqz2JC5q8FLzT{S69DQAwK~F3x0D5H&V4vbo&myfP$RMqS)Mca0IT0 z(cm~Lm0YhT&X_RkkAc~;RX(7*0$O?7-EXDVz<#mRxQ4Pm4(H?R}OY#7->0TYo6f<20G%uuwEw~3h>%cy? zp3zs5Vi#2I_HY-hCpgXpml1rV{3S}b83oYkWyUXv5`8Y*fM zp6IG#&3J47lC@H0pHwwZ^~@`hcXUsY>gLI-rN-hn(?uh-uXYf)m*;S9b>B+3SR>aG z_)1r&_QEH;jMvzqIqGQME~1L|Y~4eb8_ts6#{Gtf=DpwKyJ?+r{1#~8^ak}R+u?J~ z!+f^GF+JfG?aOvZU9m3LD&g2c*4(S}WemGgq|s)37E%J+v+C_yWt{_EnFDst%It06 z4wXYWg-5Ybx0V%J_hIS|Xqvt=)81mHy|Rz$FU_OXwK=ISVa4QF&Bp&XHrqD3wa>zX zy)5d9+cay*iztyjrY+e{ONMIT3%YQajJy||im34#^)Z2o8hH3esqj|Wd8fZ{VaP$S zdECkB`_5T6xbx=U>RvgZN_xP=Qfd5#So>t;ou#!XbZ$PV6O3rPx%CH5t@wxgmVVa% z26(-{JEQZZax0sJPOHQ8XYif+duyTmL_L+6ro&eURcSQq>+6FcPzK*wDmxF-9rG^D zx=?*$P5lvDhVDO;31C`PB2(y_iM)KQv0u_9j&qZlUjJ$JiMqt*U*j%m6VDQ>ep%Q? zXIy=6_E8zhjS#tOz`g^&g%gQLgN= zb%s3GTl-@nz+Y70i^2Pc$u#5^ZxZ#IM$INLTLYUY80yN;OxNJ?%0T>oR~_GTp-tF( zwKnD01-uUuGo=@$))9D419J&f_F|0QAyBO`ThrDxnb9y049d*=t`)AlGEkwYH_)%` zq;)T96#avkP4sbAR~jDmeow9ZQy65e#C}jl6WE}EXPFbjWCb3wo+Rp1je6(5GfkdS zEj)Q27*iBR9f9XGFqgmuJhxE-fTda^hZ0amO9~UQhY9b{$ZZr`EqO}CG@hbvz4@_- zcb~%%s|)o8q*?pngH9W{n2YmdkL#yKo%#bvVOG~g!*0%Tr>a78dJyBqTev*u6X*tZ ztHLT7xgWi`SGH;m22!8h8b}e?tATH6>Huvjm6IY3Oe5(ac)T)O)9C?uRHMIP5)D$A zI|!W5a}JYk8{tR&%#vaaR1z~+C*4c}wHmXN72=5Z^b9k$F162ro2QA5`_?Ugf5^le z7j|R$LyGh)k&Oy_7=<)wU?KtCg4Z*8y}6o7ds>oqc@|c-&xA?m}Y&6z;Agzh}?pWMHXq~*X(k|2!*jjX5-n( z<~PJ|e)5P0o*?Ec-Iv}1Z`CZ15wS^Aitd56it~;vjKC?GDQ+_0piH23Z&Jo`=G1G0M-$kffforZ)W8%1?`we5UbbssDd+$5c7_tupfP}x-$by!9E4rW z7x=LpekTq3;-H$MaQ*V&=)>hn%o42k4U5Zx!=^0ngn3Hppds}-`7(-uD|$OVbz0(> zri7IbVwyP1{Ec?Xr$q+{j*h(kBhHkGdSPI9Y1lWc=@EAA+3W6}%jU~tJ(0s>v!H?N z&%Ec>F4cKGyUVy1I6Pk{2iMG#TRY7ff15&*4|*pKS|46R!YhkQo`Q)#j8{Vx+u4Aora}CCIO;V4^MdB28$0K`QSh8MLDx$`%bWQ)u z!4Re42sx+_$Ajo9Dp#wE?2mWWd~R|2p>XDlPJEGh`=M|C4Y>DQg}6FXgKXH@Z(34z zx!G^=(y~*s-(vahhdoL!OpVnb-X1MKmivD!tTN2!`xkb`Ag;W&XOEugKREz}*nED& zR=v;a%nhD8gUXCKqw=S2-xcZbJ9Fd`PY2~uyf1Qu{yiUij;2>cD081^QU5au(dm$Z z7{#~}Gj9$@b=&Q~ms?wG-oM-rH?ⅆkrOPUE#p|-pC|4VPUwHTkv+dcV^ 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 z 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 M82BaR_2=FFKkrzmtpET3 diff --git a/src/build/temp.linux-x86_64-2.7/modules.o b/src/build/temp.linux-x86_64-2.7/modules.o deleted file mode 100644 index 8125b5c4a006eec886bffd771914fd9e1c8aa69b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 134024 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 d#O-$jRuNy*Hm0McMkvAJwdWTm5x0F!{|7lPFc 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 leOkPcJiX7xI4m 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 z z__&B4Wqcg`uZW*+d=@-I%goljrmgW($@ zeuVMS@a&tCjz7it2k`t6zrgr1c*BTaXM791b;R#BehA(!;!hYq2Y)rk8%O*q;~U_uBmP_Cd*JON{+RJo@Q)(?g7MV36Z3Fu#Ai018-6(A z3mGp8KNs;8j8}!H-<KJbX&mZwEjkklBi1@C?d&BRD_`$}9!`npsXycRMJtO`D z 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 diff --git a/src/build/temp.linux-x86_64-2.7/profile.o b/src/build/temp.linux-x86_64-2.7/profile.o deleted file mode 100644 index 757836508900f6bfb1aa2202e7812f579e00955d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 223160 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 z%0D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

-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�Nau1t8l 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⁣?zDDS85WI!Ze_e6b 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 V?)&LEn*6HW2h;N@x&D7g{|8xzV4(m2 diff --git a/src/build/temp.linux-x86_64-2.7/subroutines.o b/src/build/temp.linux-x86_64-2.7/subroutines.o deleted file mode 100644 index e2cf72812a41141b2fa8f49952644308e598c2df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 162832 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�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 diff --git a/src/build/temp.linux-x86_64-2.7/util.o b/src/build/temp.linux-x86_64-2.7/util.o deleted file mode 100644 index 43453951eef91c257452d858e9cfa5a4f1a8ceae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 656608 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

Ig+ysiT3 z&WVWgxPUt^uur>G&5JnCN@5k>wbUnD_)b&!Nfw?PaqiT@Gx@|iSoSVSi&P66+xKyb z-|?8*Ue|CmtD(2!9JQV0@$BBziSj$IH>IS{jlD@%pOb;-CV3tRyofVD@Vr3in7002 zdztftSIt#o!%FVz-hTQuf%HH0rX4BHwSg-CD5R@!bTi^yC-_>uK3CzKX2iKZz{;P6 zzT(^<&$|k{FZR~I>w52YI$n%$-ZJp3y`gSatvVghR|M&dL~OS6>{$_KKwpmV$`_tJ z9`(5jZ(%r%2@mPM429O zRtarwQ23d4RQ1b;b>$!V*_*$e!}>T1hJU{e>Vpjesq-fn-Y0oF%iCTZliMFPy3WDZU3_3r@e~zlfK2geYj@o_^?XKhkeGL5ymDc zFJx(KB(gtAID7Ris0e2dbkBX@VE5843)BOM&!3M$tPip&u*P8Xi*J!c))I*vNK|Kv zhM|1U{c&Ca4P|+XxGN&$!m8cVy?l>}3e@!{!^A=gow_^7)^Q+mL#V3+Rgi{Sq*`HD z(jsb=AN4CJjE8r&jD6HkT!F{vNB!7^`J;?~oCjNcZOA7Qc@SUWPjleUa^TPVaq8mZ zZ|p~2_@n-7_x@fhPeN;MtF#Ij=Qp1jk7-6oMrQ|QlmXBSq*bRBXCt1+%I|UfT{OS4 z2y!l(KL|wdXGqbafQa8h@qMNE_@eWq;Q9E?f<7PJZjD5a_NwsHcSicJH9gpIs26Y$ zOcHv-*n0l_&d^#IiFj$ZnY8l?^lR)*K$dEj<4X!UIFfZ5F#fAH$Cp?qlMAc%CV2S@ zpWwj<3#Ahk*36TKe@~aNh2HDstA&2lMJ;q=7i)8x z?soB1^C(od2oZ`IYCI*=`+G>Q0qF)s!YLXr`Ew+%F=f?G#i2Mue3X8-VIx#fXmP%# zJ~PFFXh4_4(18eA^Q7_{FT+o}(NFXG7W*|QhqWL!P*k={SPMp)ZxnSd&4IgH zX}(bumZlG@G~d*GmCk=WWQE_#f!{6)OY@zgur%NG@>QDuD^h7Xg{67NpiZRuq-Nwx z^K~!7m*!`F+7?LDIW9+-hj5->=*L+LAs#y03a;=nwfG{eGms>!*8e_8Fvm3~T@Z-ehPV52^aa znX@};_HzSn_@J>e z8UA|!Bf??im_MHw9)iJJF{DL)gQMRzCJkEh6fhobQ!|J}4$;jyB^vzgET!!G8@U|1 zw|O{xn0ct(nGYUwvq00UAZ;pOH%2^#{&q1I>h1@@N`bP0g}O_0+IR?;@e2JoefI$$ zCz;$s>+QpN_90^*t~3va|Jgi@x)Tq@m)&#zsE6dC<^03fSe$>Fha+D%53KvhcLTst z9|1V>%Rox)*#zPgOzw~Kuii@$;2nCi$vgB97Ri&)H4sV&@NDhx$aw*!y{=h|upTB= zeAzAdGmb6rEr!A9e+4;UF=~H4dHN8qE|!QK!WGm)KhA@c@8>4>&|OS>>jvYYXw<>@ z-Q63-uB+|O)Y|Uy`v;V9Je?N`l65H~5J}+#x3h1Jb5g*A6wQxFSP?mz3&OcSTvhoF z4A#Dk%%c5lcELp)2a7_73@Jc_rJTRP86J9s$*nz>poytDhAnGx;PW$&zmgUbd z{S%2S1U_^pODdk!Db|1zHb4C_YldTV-Lm-qWA8iQv#QSj-}@eTxk(s-fCCrcUSYV< z1l%YD6h$;38Usln8j_g7P)RhXwXFkOwL?Iy){!`BhoZIG))pMKwJqA(_V2GntsQEE z-NXO$oN@1c@A6eWrXmNAq0L|BRjF9OOt@ z*c0#l$+{zG&q%E`_6#=o;^l)S=3YU)DvyelN5{&0$IANz<>`{&zWrH6?`*|wzo1r? z_m{PdsLBWQPoG2`7}Tpt)OGzS#Sy!k`tyZ93jXQ-$8%doKi5R>LgiTk3xleL+B6tE=Nn zj;9nn68$vN%1xLM6mof4bBRs@ctHGfoJ*)1ud;mVC1eZf6R6BH^?fBcoNonzYAw^I zY6g+{0W+vm;MlY+kipBeE47U1BKtN?7KL>NtU_y_)-W2V0zdv#!=eM)?*Q$;0bU_> z15T*T5q|q<81V}th;c}_#0(B7uX;e{#l=mNOvkDokiNJG%PO>Mf_hb67%MM|m1|?= z3uEQFSb6aPnF~l^#lJpQ-!NdR&e^KIF;;)^0JDvyI&PEX=gm~u%`xsRv2yEx^p3kE zs8=2IeP4ClfBNiF{wVl+8vfS-3TmD^{3}-eO+cskydIS0d~JV9flAR$fmuN?bJh(C z{GcKzSTzYdjSTmziFt-J5^&-)LO*qAC81jX{>;=?65?qfU^2#kxA#o$^baL%-RzJ) zeU;FaPyY~vPSCS?^YMH_;GRMm?KD=LKa{yL-3Pwnu{$VieGE)P3*5zRsJn5P&qj78 z67NZkk3|Z+j4x`ixb06vLt3Cj!_x8Wz>(q7X0e3pd-!5I2CcXTKofRk2*IZ2ytqu-O91Of$ShdLvFVUV=lKAWYMm`fO_VvlRn&QySyNnDHu& zt{(Q8UJy{SlkU|hj3O)0JZ_Zei_2jjNPK(G}Q}QFs&mFpCp};rtbj& zRtjJ<0jvtZmW8lDi57BgT0!pu98O0zeoXkIxDR@V%QwBE_oMmLfC8&U&k^bb0QGCa ze^Z~tSuojfcr$X!M%_ye>Q-@hD{{yt)BW!vIGOI>9>!-8)C1kTB0XC?X)7E1lTI<@ zxW&i2awH_IB3c?|(3JLW@g0(oVKz!r7xhV7oS({Tt@y|Lx)?#5>60GUb(6Zx%^mut zEKYLl_X0lle0@>Bxy-I7n+C^o_KJSI-w1IcG5MEKLw1H>c^F6X)t179Du(Thyl11Y-4V)JSKE)$7cjAt42U!c*nlNJHM!j}E!K zi!njMdFLWP=OJ{e1X~*jHJXb&ND!ZbwkaBG*8N2dhf{$^GZ6hq!_8DZ7)sJ+(X8tG z3Nt>x+4&^Z16Zm)BokGbXZB+?N?XKN3_nG~FN+N4=W1Bge>~Uxl!8b5KxD5ooDO_3 zqz|S84*}SBHH>r$@Ltid=#=9Rfc67`S47E$6G4=Ae+`S;!hLy)f`_(*F~O!Ti&s;2 zNc#I^m|S10g+!gWPQ#+ceNDrnbEgd&wj$z$UuqaB9XRGa4I|@%=;fd;nxc&6Fg1^{ z4hzZl*VR#0B>;B1h7tQ9{P@&LAd9_ny+R6|CcScC2CsZsVfR~o4gKO)V8>%xP}B!6 zXc+k~kjG~_-_!6&T=OC;4QDWoA3@ZoEy2df8oApQm}Jk?^7!;H4?^;scv8L1be<`D zdZ&7+KE!=JRq!G1rE=SBG@W!*cYD(z?qzB#O>L~bu$9AHn<#IqsnH9;d8&B%U`~DB zi$T3A|1fqw>!n!zk7DJQgYtCA?KPi32fJ5YU7I|EK6nyFcd$4*dHDIdyU`3sbMq)mmAN_cF0}h-{l8R)%`+QQN-Ez7tz`Uy0Sbb)`6>>@HUDx11iFlg@FrP2ezB2=6>j+0brqai;5 zI7cyyj~^FDWP}}XEOEa<)#zsfWM|OX__%K1Bp$vV)x2Xn?VB_QmBP%>d9*S8_d#`- zMgFT{(QL@tk07U!D`hkXIn{b`6Ur z|3?7qSq&pItY|rs?f2fy&%8nZDy15gH{Q%o-=Gi6Y6ve2uQp(f>Or+dc5T{5wg><2bgx9(2F`h^R;1Z#WU~(9csSd3ZX_ zoig}w=X*21k!5Ay`L2sfrnrmuJh?~+fE;9`XIg-X{P*(ZKzdzzge6o2+`W}&pWmKk zBH-@e>7$B>u&f&Oo}gYu#8*^VRo)j=s`C9odAf|42htvNb_NeF6?RwusX|4BDnA%d ztMWrJ{D)%?LLUk0)o?IL9}<4Oe|nr9oJudB7?kbdXCy$ zXlOkmwF|wjVcVDP8)Q+E>3U+(ds;)a$qFrsE6qokB6jjRY8;7WzfejJ#w3QHs^QUj zCGXExYq)yY9eV4^EWqU?RH5K$iActbKG+pjguI$HFG{C@E}zmcYL)=@MGcEChaLiW-v#_$ z0eFAVu#9sHZpXq|%6L*PFqG#U`zv^K(a%nwrqRuSK?#^5Juu;XT}>hbSW_q=fL#q> zUkF%-v=4@`wEoB=lS=b> zH%gQKXVYh~0k20wUIFY`4U3KxKi9A&F-KD>){mhE7Gz!%UEX3+<-mgUHBsiWN@arr zd{rJCD-Vg43uEP>vGTB3xhPg19xIQCm3NAjcaD{JiIsPal}EQs5ZSb6`LtOF!%sLO!`=}Xju zf_k-JIk*5l6+5$lIq*jfN@vB&<*_nx{;5A)2^wy_1^Y1{aqor5mUPungaDwXxZ4J@Z2{HCl!b#!f{q z0(q?imogjk_D}FWP@vL`F69rkNyW*?UUkkL_#`uNTy@G(RkqNc=bKLU`++8D1v&C< zV#y6bB9Aiuu@3iTt^sNuF=zn^bXAj0O-MDzR2VfAgUmECXktD!cQdioss`%c8^TUA z>XR**?gK+|dXnz=c$<4C46Y?>KD@pAt$w;qZs@ifFFYT3;qQa2#=4a%*#m?fSd!LQ zX@#@{n_K{mb;01g3oofeoA?A#WNp}25m)jo`84R~ym-Ds zg7u7#=IlWwZ^7TDX(FdVExu1;zCYJ|t?d&|E`L@uynz!Wm;MV>%hPl>O^4kTJgOS! z?_)H&`G$ay(P_FS%6vY6EeTKz76p&EHK^vPb*HM1&bZl+-<9CBQ+m9W@tPJA zwTjWZZFH7Bv`RW5lk5XjbzJtb5}YQRy*x)@_gnqKsbQBzXlp`Pp!>cDMxu>ZLu(aM*Z>(;K#yu>)UJVYKhQ8TB8V8C{k$3H8CJ8% zU20-&E*~IVl|e9nha+`k)u@4J{ysqor3MWZDpyc$#Q?Joz&Z@|t5NFP43tLAkiJvX zM?L!;gGrGSV!mpi9DafPKWh4DOD7hp){p8rT*D~R0@?#KEE*A$6|CRt%cCa~&N5Iw zuMo7hmAjTHw0M8IMS}G=%~0aW%;0g%U{j1i5Dwfe-%&Ja>-sd!IByg!QZ6A=17glT z2Pt?wi_g^PDjUkjuKiYXYhu+|LaQc;Ml0urTNJ$C>J2J4P(!C_(5dRDKmKkp=U|Vjz*wVdbu|CZs35s<97fXAz3r(IgUErG+0+XZ8c(|eZ8!;E zuHkaG1894XVIR0cYnxfr^BF|_LBk_W6R5&DGyg(uG8sui$h$$*@2RTN2FnQ=MivEl zQ#35vi{@%rw8zu~+71ni_R3oU-u-~zQvmid;P)or_fLQ~_#zehQQO97Sk#UqH7u(0 zG!2Vpr}F`Ai-O4&LFmD2G-g!tmjK6yH7x4s?*Z7WfZrbhEKwI&oH?@g)kq{Xh#c;( zCo6cy{yI<9$1}!d60GNaD)xg&TBS(RBJRr?M&dK;xG_WunEfh*1$uKPdtbrhd1T~b z|-VaFIG;7GGXC|D0sisdQK3x`$SbA_jj#kr`95o zXo++_nn-kLH0l^Z`&)CeuLQipHhTiVUed5=5B)8G{SD9-GzI1d8FViVi%x|P)39h} zI0ew2t6|YWvH`$W0@}|3yazNaD)-wVUf{f~zb_k@_D@Y3O-O^OX?Y7M3LB$gbm^&x z^Fnq#CA}>q4K(fqu%|VQoa`tf2zg$B@-Iiq#T!p>9T^1rlq%x1x$SjbiNtvd?v10t zjsNiOK(LL(2eR44s#oYt$kO#wxxsmvpURb7WuD3nmcJIky9UMl$IDzkSk?~-@Kw1m zRvsEF50gKP#iRol)K6zEy?ye~ld!TpWrKMVHX~L(BPj1Dxm=}>ag57Pr#m86 zZjF_%3(6-mVe3-!Bz?VU&^OLCGQx4<6qe}qi2S-WbhTtOsoS$6H3g939 zu^_Jd<|r&~oyMyuFsYJ6W1w zAFR16@7PPSbMiARyeCe6hzPQFaskxR*~teHc|>+bCtFXA?#?^+((L^6|5)Rm_~%8X zBW-MP2-55)Ed;5YIRp=cIy!r23XyY|OUW61V+G&?dFxoN<1^k2z5I#1r)e@|Kl1wU zUVZ}8^~AyBh#(RKoJG@IOy$fjz7}ff?BWN~WoLA<6@cH$`z6ifvhmLaOxF|toJIse z81&3L_d^|>z4L>pWLkSoWlY>I;STfHhu!8-!yshX(1yehv$g25}s{N*Ay>dL4w48LFTN;8H- z>U#41hhIY%$Y7f9YMRJC6@Q<}Zxy&7z346{X4H`avW;Y}*P)tQuEE%?K{xA1 zFU6;JSJknned9C{p$FaQq!1Pe;0f;n1rHx+hVuF0<1O)O>M2QoN&3UbfFV;nV^hF) z>3*gaq6Q9>d|Sh!ivLH$XnYCqhOSgzA#Vk+eF5xf4U6)dpo0*!zd^M8K2fL z>Y4%Uc0l_Gfc-$hRF@5?U(=XTFT4w2;!4}%oi!|K$-x>H<#()xMZGW!;4K7rmjb*S z0Nz~y_Dw+hJiz;ZAzoVQ4hq&!Dg-swJKmXV^xNH=MyTIUYN2h4eG~NYUKz16nSQT- zpXjv_j6~nK@@4vSCEd!`#($7Foq^ub!xbY6c`993s7hUgrq5oHLsZpVt${cy~-ii~VsC++!aHrJB z+RNL5obX4=V((rpqgSlHyp5;+{szh-VaB0kLhJjqFJqza(G{!TTM^Ea3LlglwQBFX335%W6BJ3KCfzn!<-J1U$xO(34Z^ne)Mo_pos{Zv- zI&b1doWfu9T|(T*uIP}*;4?KiG8JVoyHCDPcPa;R{Nue?_$#6-i^EU(HX#Rk@xFLA z1@Z=Wk?6;Jsqom(7=QhODubxvA$6xuE7Kw;));&!2A_n%=W1~5i(;BE_|q7?4uij` z!7&AYh{11Q@V_y*i2TCs8smLX01g6^eWEbQ!~C0Y(T{i6&3Yyzy$t@hQln}pqg2onYo%5DYdFP zY8=l(uaIE=HLg%H!vogG5bLi>q=;{0USfjhLPlw{?>Nw=u46AqCDLdQlJKp|Js|^a zjRS342HHCvXx9T;_VbS=JS~XWJ#PbacI}|+V_^$iyRXEt-80pJwlV|lRSvYbXP|w? zf%fMaX#e9tJK_dA9N4voNVw(NlS1@h@?9=r@(sEmqL@VkX7Q1VjQ))fJ&^dE zgr!U527X7uqY1;ZAhjwmIN&!@!qVRXHtaRsjyq~&~cfnj6OK$ z->bPfpb1k#+7oeR{8WGh82=12{!>7+6~;TSmK{P56OmNR8W*d|xW-cgn$SISLs;6B zCCxoo21v?^z`3^t73nT}NWtR@{2)XRSiBa(GAq#k#&l}~>Rp41bOpvKcwB)~L-c^f zybzXIfvW?gmO5&*j%!0rUFZvfbH0QPGD>jtnCE&OCo~Au2IfOu=y~>h_$q5t) zAyn#ouAwc^v_~h)0PQhI?&l0`zNRfnehSc*#=NhznUv&Rr%)ROoeXi0g}BE-=0YV8ibw>p)(=$3rkmAhZ!eFNV-2m|>eCv;}6=)>wX*etG*#+Ao8&UzQ|)PN2{)D*kWR zScMvEY4U?KEY;4-;E1^#LN9^POCj_!2wef8Z4lZHp_fDG6%g71p(`QuN(j9QLa&C< zPeJH45c+8d{S1VD7DBIu(CZ-ddI-G%LRUfPY6!g%LT`f5n<4ZT2)z|TKL??=LFnfp z^a~LBMF{;8gx(IJYanzjgsy|oJ0SE<2)zqJzYL*wL+Cva`V|Ph7eeoY(EB0u0SN7c z&@Kpl5JDe<(1#)P5eWS%ggy$PUxU!EL+Cdk^qUa+7=%6!q3a>^2?%`>Lcax}PeJIn zA@peoeFj3m1EJrA(C}y2>k(sZh+8@5c(X1J`bTUKJBj_Fw`eg{6l|mezhtR442zO8(g09O)&^I8o zpdcMrGAy}A&y~zx#%V(iCQxKXwQiS0qS9bZ(=)0IhMbXxbtdnp^t<~NTC#ecD%_(A zv$$r!6tOPFRkAenKDl3_5%YKF%@bW1HvIVvg@TC@w1HzHg+T{K3jW|op=cR@DUW7d z)D|tYM+;X)3!jM=J{v7u8!g-%E!+|jLH3jS$Bq~V39ctdt2 zlYhf-Ha`9*&>_?Y-bq?%vr=U6B=3pQ>`U4SmOqqL#BxGXEq`Zy2xl~--9+1Q8eVXM z(w8@qwYSfemhZY)RVaV$vMi~Jm5dh=ziWd!v%`;9L!k;oF)BJ;QR*h1r||DH_*#!$ zmnbYgnW?C?;JZC*XfUpkMtM;i!#}(pqG$#K zUeOHrSKd{ve49wq*67-cOsxsek?Ol@J$|-aw1)Ia=ny*1^Z2K@Bdl}?o$N81_cc># zn&c#9@e2W5IdZo%yk8K=OZmH!xr)c`hbwpf$KcAaGL?s^%Do;i(q)iw1R0DY6b7GY zk*zP4)Rp=BDG#5;m5W27L1Pu1f9*Z$`4NX{*YGdD7x9*_>6S-O59D7yS3OW$KTV1L zCc}f^*P?fAQkDD-UaE3%9^LV;lE^=%sowAu9v_HMs;gES@H4Fn|MF4DT{%aid|lJ> z&mBr_mCCxAZ`UEhXLUmcCdO{owS1~BQmY$$y65pLT1p{h?XJsJoAN7KY4CdGOa2)r zo6&im$8YS0c1Mlhn#Jxk`(Q(5EZ^GIr{az<21^J{*(Fv@Z{KJOmzA>s* zN#Nr!ibsA?aK{}a(!WO!(Lq2@&Xp8x)~nhqexx4pgG}u6q~*RIZHpxLu!APNq29iO ziweZx-3HH24W*Mhg(-UMxKlz5KBl0gU@GY%_DK{JOePGP3F%uuk?22!p!D0Ed||8s z^gED)3kry+zeh!XkmAsPYSF}ens-s!FJgH9=)}~bu|!y4M9{140cioF4AP{;mPrTi zM-+6(azAoep~UQOgbXe6q(n(JY=pP}KqaK8za$w>jC^GUGaA7NEMO-hV;+)hXRQY* zN?$pp8A=m&Eg}<22PP6D`$fd;b^t+lACyS!9_S+Z>_J68)MigDTid@^F?om8W)(+C zf>Heg4Z z70luIJ&5K^sw^*L#ZhUpBO zsf@q^rUgnFkCiD2w7Ln6;Z~esyG48NH02gDGm$vGSVxQs$3$Xgv3Kl16QRm_O?C$B zKL3cK-x)SFEHPjyzygUjr$a9JlS}Wqf zLgxlp62MM8H;TiA^yM~DECu3xoAya2#;r{QP$4hD^G>HvGO?6$VETt(h3ODVq=}_$ zaN37pqtXCW$bg6VA-Or_7uU^8%#MTlCAN68E&s)_yo6jHM!`&YmIL7#Q6j!)!ZREQ zn60>ZO0S+^Z%PFr=T=Z7~O z#XpK`*Z8;aY{e`;fW`uz$KC?8aful$8kH?xoDS&fCFaGkGO2GN#tA`VgKom??d}W^ zZT40-06z5+Sz^V-p~eu2rI*vNoc_r@Vmg0X@7viF_$yPpS-A@%+Cr^N4BVZmHLcW# z5pAJXGVl`T$FZ1~ogaFG7?ldEn5fYLD6-Rc>s_x4!|bHVU#U@6o>Jw z)j}i~Vu%EfiZdiyWJn>vvt|oW!8jpEzMKkN=20O0tUibHVutkYG;U&!akFrI&5Wag zum>Q_EXxjKrF$=7WeJe$v&O>8TOxCd7WXseZZ(G^8VDZ%a%6_ltUv|{7*kqC0oCH} z5sADHtg#o2m{_9QSZiUq3bmD8{aAY(h%^%kfY?i*i(I4&Xg<)%5G8^+k^(dU!U8}T zS(yVYSt>JI2uBW^ZzERX%5sq_4 z03);2{gHrviTnprPOdU)nrntt;?t%+xH=;S6#6E&6BTQwiKi90UlM+V9OE8E5rANE zI+#mAzOq1ZMt-6(G44SBgOOIqWv+?yKnf!mRN9)tVajaLfJ`JHrzTkw7bFoV24*SQ zQ)bT$$;_#LtUL&PVPPS?5Daj`XqJR*twii;6fLp(6hZ_Il}kNxIcVlmFOY<>cdTK; z)}mJ%65{~Btk?T!pCQgax1*@Ft%FC=xDwdc)^Gt@34$!bEaf4!Tv$E_IZMB6x~~rS!%fBM0X_0bcg?QS_yS^kJqp-`jeC$Gox_yLdAmJl&c2^tvgh1zsr zH^*9$;{Kc=g3xmoM~-prQ0v3iwpsv0q$?o^3yZy*qSh)5gr&2I7BfdmH&ubrR-1wL zhCa0jk)~OzWpz>KO>c`br+Qh7Igs&?Ku5H=zhGlno(EVqBhdD9Y^(|=ki{!bg)$t$ zM!Dd{aX``oJBms~_ttbNV0zrVi1+ta0Qd&N_@XW*Z zp>w77HdCBjB$^ZSLdMoVpqb(X8S>gF7rZzQ?B-UObD+2^ZLC3nREVq_p!4)noZZBZLC=cc+ZXi5;v=#<& z-ykvs14BVC(0W0dTSc;U2Qt8g7ie+B3ZQ{SE22a&N7C$t=9tnN^&E|IQzL6EM=da# zHTpWDWf@dpQh)_ozJ~6xurM>rNM|)H%3KSuEP!@`HL^vBHFHF>?98=?EIpu|Sz@^a zBXSRdLA|V*KB7dh?74v%DPV?V=F%I8KZ1dk4??5o!Y5i2FNF9}*wE7_aXrQVC~N{} zZf23g#48SBr9oL34AOHIGF4BN!aJtj&s#5!SXga$EEN7`Ynmhgp%hqhdKW zWG~R%x~@~6cTBoSSvM`RUk_Uij+6i^ImelLA7!)woqcPia7^jgc;JZ`2pE86@po%Z zH!N(Di(-A0(V(JlU$L6*lj0#T++x!$59KsQon?X!Wp#C^8NkY^Nm(+3x>~%jdt7>Y zPWfXstR}%|KwFE_O6Br;~KyQfa1cDf*^5VG{+qhC$BgPMT#I8Uy`o$Q;B$mY}#eq!LhJhe1P%^acjLo)MT2u#iwd*@qU3IN&4TT{kR8=K}s8FG@FW zxM6K`%bf*S8O)I~w`kC7*{TMZA#D-Nku=tu(3TQhu~@4gn~`O790jSJYnc0apXRmM z>PLr#<~tD+;vy%+Y&GeP_j-CtsHgZyx1RFoDgH;{N6=l6>2#9m=e|=gWT3ugfD<*z zdD;y#?ku<#0|z{_1li)i#MlDGsWKh0$^?(ogVur|YjXi&Rm9oH%bC>51dr3ZNd%6XUH8lY!Vq1Riyj5m$HzJM6a#{c6BO zp!7HZL#GT!0lZxRtPsGg*G}oMpRHh=(D|@m?h$QOtasc%=wvz{XC;}B5Ye^_zV>Io z$_kD=uo(!^;@AUP>-Ytj>1C2@(Z-EMeH-ZJ213jb%#E8H7UGX!Zia(rkS-u35S%J< zL<5vN1jtc+gy!abD_Rk&?85?3Ittif(A@m!xF>9(fxTF4xkdTOMssTwE0JKQeeBU( zyn#&5H7r{_zQ_K=(fSaYddQ(6LmJ3#7i^9JCB^|!P@Xs$4z8zKcW zE&6hgb?x!cBH%R^5HqyG0jL6e00HYyj#tgSe8| zE!KVoLUVbFNb`xqB#UcA($nSgNB0H@8{aiLS~bJkYgzf#yh> zTcK`Vvl5*1wBDjbR=UEnmkQQ$?m{ga93#>h&2bH8>48je9JJ!?4#)r~PUWb8W8wn> zb1MLIa~h_A2|!(dg=D(I9HZ7zD$o}x5^rNb1_B#`tbherPT~L~3lwLBY(p@|Lu&MN zb)U5^G6?Z7CqzeOXrBA`wzyyta-fqCLfqFCaX%+Sq_(rogy`%=8!_$$qzZ!d^ug}7 z#_!WHL0^|`f8pBJ{GM&wdkO0cagk{L>JR&uFu*s=WguSEFYC?&HALTBnE#xuVFq4Mq01zPLsalNgSDp~ zm%W3XM0!20AOB#>j&u^~W2j);f?ZXSSkew=&elF9Al=5GxbnzAFd0E;)c@n$=mmwjaTp>6 zXjy|0e-|AP9fE=WfY4k-0#=|OA?|<@p&=L`brg!YxxySpt%z@C{SXH>8S=kp!1RlzM%N;VaCR0caR~VFF`2%1f0gh-{dfWL~rqxc) zlsSIjo2?=)4nqESg*kQ}N3?CN?bbGWk;Og5-`4s&&M+L&;@W~f2Zp0ug5nxv+LOry zkJH1+I|SlovOV*6#e+iP>VbA~1KEsR@F6Qub=K-ITV`8J?b-6Ahe+?`f2f8q z&03uJAM+AmxE| z9oYTMEf(0%wN{PWT#4;15x2+o*21kJvy3HdqBZt`IkPjR!ch| z1U3qAo7Hcywt&)_FXfujNdOY+3WIL5qyj7?0HA?JcEifDuYhTzv!>S6Hn)`7bAujp z)Yd}l4KvUMEdJS>i76cgrr6a(KGeXuP7+?i*I;OM+jqI5r0SE>pAhc|~fq2mt#_84u0YU^bXoQwa-L|$P zf@Jp;KbN}FPRkJ~M@L$bg^YVVq;IkE!`hjG*Twr9yBaC`QDW3SkGQ#tpD@lXS=K!LSsrd>rVzx0kB*fGzs z1dE-sWjh>Vyd}{X269a=&|D-svIm(OQ6iWlY4&J<(%Fv=Be^xO0p*}5X_O(8O<^YP`X%&bfx9`XPs7=xkt=a z<({s}w>5sYb~tW;42-j>KtO?w6${H|WW_VqJ6okJ_HhkROvQ14aIB>R zVI1Y7+9V>m)_b+QSCa$^T8JOz{*9$zT;bgBwg8T{P-{wnLj+8ca*t?hm(#D=XNA#s z`CFasS;)}eb89k?8*er=0@I5Dj$cIKOx-I)N1g32M*|%JEKkT>n-l_pKOtTQ zYi%h&LCDZmYj=Lu(gDhKHUuF$Hrwyo;)tZmdn@8VFmok5n;2;V5nUO&;yDXOh;eHX z4q5R!^40Hvug;A#gv8ELun%l)dcZJy4ZVa#>nzt9G1o%k?ST{lV*=PZ`&eOF!!^*} z(G`wpKmf(Q{RKq;&rt$GgCd*}-C7yS0A}QtTMvw|8rxN4S3IOk)*TD%jaUXCfnY2K zUjhJjY~T}5YvTg8Ue;LFiUI0X5qF{+R&TrmybrVhAZrVNf@f8`ZGa0Y>^y+bii->~ ztw|M(mE2)vP{Z?m3DvLt3u)(ROI-WFB{ZkBhqu~E>C zmg#O-8BEGu3qUnMk8+WiYh{5NpeM(rx==WiZLb zkucXm&Yu>aG$qE~YRDp;De7Y^JBpADMjpwZ3c0;t? z0Bz0$wA%oC(Z)j-0$PMd%GmteHOz!*yTVzxGa{4?%f#C)% zhL|X<<5?5o5VIeFM-NWFvI2kV#6GJ=A~skVJcBMdM%?i=gwFZM)OL)RS6!RaMkIS} zAPR=8xAnkR;Dcp%FW5URM|)={*oLsSFM*v4*k)m7FOZrvuh@ z6c*qZNKR--0)oNl0+B>`ZZ8jkSOV+-7Ssf(>w$jO`{Yx!SDe527krY z$~7>;Ei9-8axX-5lL4`;(F|f)`nq9dFu@lVVLQb|luGqyrg|EL_6QKkh$hsT`R1doolJqn}D&HWp8J1)X1SXvNzz9P3ag37Futb-C~BDz(RAA z>4t?xx&-7$(_>vU%igB{1xhPia%)s>xq%=8AS4sPz%&H*0>@D>`&e^q14lGVT}KxI zH0TaXjqQ(xTXUN#<|q=QxrBzB7cqa!a*XDp2Bx$G0Bs#9G1|6O4TSa%t%l|9?6n0A ztBox7b z2w;L+pg}CF*|8Qb0pm#Nhz2aro)XMmoS9j>cH4o{+Q{DyGPl2-aHBALOF_hdc89&d zvK=3ELfe{F&wy3|MX;ej6H7w&%p7H6G{>NHM6(hPY#0|Ta=862EC>c{74WVl^pj2L z=#Jc?fo8EDAUHM)?2wMM;34HFo6>3o*ljH=*amh9MM2n zfz|_9m_P6kn02{$qXz-wCczCWO9QYs+(f!z0mXnDEne9x=1iHTW+0}(Q0mF9CysD4X}a?dJ#Cog%F2b*17^M0IzH}(A*5iCb?*aDS-jm zGBcZ?<_dp=9W2-Z2$E(9ZOh-i!h^)vbynAgw3$qKug&<$T=APtu6TB@M_Ol4akVW4 zVuGduARt&z6i@z};UUkwbqWDTHXN4XFuehfb!T zwRvK5Y`hGzaZEUqyBmoG*-e(g9qs`Q1es_zS2#7XCf&fZu7oIxe`MtwGSvoV2qqg5 zOdyEiz3s+GbM2iJca~tk0DvGrYzhoQXrGOVIoia?+pbze#}d%i21$XAfYiOmw1cNd zf^4_-h}`zaHnIrn*-P7VuDt1%=89qiWFCZuV2-4@MMH|X!hj|Kgt!?Gnk&Kq2^*my zm?P;&f`;^Ug#m>D2yruxHdlm$6R-U|kWzpRL=1a}=uDk^(Y@kmTx_n0nJWx52^iuK zw~vO>I%t?{)f@$Y2_aaS1FUTMV>^KW7d0H2VKhez=9=&{SHum$K>UICN-?Enyd#>k z07v63JsgKEtga;#_C0II!;zUI8d&&aN?^NFEI^~OrQGJKISOz@1GYO;X6quykOZoI z+$gPWRA=8>eX2L!_*gM>^qCWyv%4Kb8936B(h)7&6ow6TQ5VLQr7h@qVB~Vea zD_y$jinVZK29^kJE$%{y72CFy&}A+nvtL+XGjke0RvN)FEwt^BZCvbxjp7z(78bUA z+qSTq{#Y{?{~$`UFg90&(;JxM&p$%bt)K05!*W&Ejhh>mt4!l&bA{;uM41~1oOsC+ zWb`vvSNlZ5ziO=^GFMk(@H6v>lw@=|$#7Q28PQl|u1Gxu%cq}l(;p|zbHSshGPgCp zae%oZ8xgEuB7atadj=qxN-128`WZG)T5f{}T)_$x5CRY&v_MX(gC=kj2e4c~wo)IeH$0AqMxbP3yfvm} zAhr=f`yd&%{=kEv8(D$nIy(kVbz^T4##M)p=iPxIIYHvM*j^a!=0wYIw?1p@30l@# zOM{Isn~@dbAlTwmD425%i_3Iv8n<=;R$GL&202URp!LA!j)i4wWGM~YWK&s;!8c;W zsZjgIah!x(PKWeNpb!)4&xFN~JQXjwy0c;ll8wFqo0N6MH zn;3_Q#L}m|IFJ;y5DA7DBEh2oKV%3p*m4Y1FfPDL%#MTlCAN68*T$i_N33v7H_5uxxg+Sn3Bp1Ol@XOu@ zkfF2Wj{_nIk5woGe`0}g2W4nf*B_TX*M*;#a6+T#w8c8o_R0(>_>;-etvRiS8DL=t z4w@mCIzIGqMyrTh0Q7Lv)=?xj3aC*Y*9=oyzQt%jfc5Suv~&AoS%yQs{^zi)h6Is_ z+t#9VL<13mSz27)-Fh7A1D!95V62VqCHR!N|1+Vy-}y9w7sI!`fT{3IM@}gMO#~T2AkZ3s+`RyWK%nuPxgtA&Dj<}%IVBR{3fqBAa8r#M&;FGeck8Xp zj7S|D)marc%djR^iY2M`bG2M+jC3Kv_A_&Y2+So~^aR0b4M6H>8dAi$fqF#@6a;1< z5dh6uWk3r-mW!bTU_);dHc8Z6NhbW(HAf&)rI#$-$&C%>ij)ES<`~WD&0tS9*Ob-+ z2_yi)9ChmjsiWVJ1Xma^0`?PY(;HwRnE=hvs_fC+-W~@00U@%v?yGxy%;~OQ?^J#Z(zVBFzthgv2=4IMA~NWaX^U$ zSlZ?m4cLwZn1D4`Fm28nWO$k@l8<2Es5C;OH};oU`&tNbd%#GUrB2E?YuyvX%UnfY z>WaAB3DLByxw?9KYj3U~9zDfJJaP@|sZO6Xd=nGq>gs>+S~eo3uV$E@X9cMvF=Ci& z7%5n3D~O~JW{ETAvCf#^bH;qg8S@G^Ow;D(3I;{6iWP~=JkX+G9qR%zvdtCh0A{Q^ zCdgP}u3%8kOEf1gOB{%v_H3mpXNlo#Vw=Hxu?lV`n@Hg1z3j4XW z7i_T2720De%@wl#&}k@&e8bUP9mPAyvcLQWeRIyo5oUa4u5RIxHI@-$t{{a2kij-r z7&2Bg0xZM8T!9^?%3J{#2Mtju7>?%ZB>Y1skw6&;vZ6e>VJjnSm^9@&CBl zWEtS*Z8xl(IwO0L(U{}=t(_tS>$f;LI3JfwP+s^OR}PYG6cD9gE&@PV6I#6DN+lB$ ztTSob0~XiAErh`7`EAH3N5}BKL@KI{y7X^if8<-~y4R%_6XRp$cn}PUeaZY?vGN`< z`suN9U$M^veIDrZK%WQtJkaNXJ`ePHpw9z+9_aHxp9lIp(C2|Z5A=DU&jWoP=<`6I z2l_nF=Yc*C^m(Aq1AQLo^FW^m`aFPlYje}s zy4v|;7cN*ZcG<)uD~>$;(7M|C)@6q-tZyBAc=1tVYwH)(wN_OpB&IIdnDc8}n$u9y z3S%3Ww=8O?pHO^MBGKAXTUWe*&1-I{s;aIjUc`#DEN`rCrd!gHz_kr@D-sD(%-l9E zZ)|94A#lG$qGA4p)eH3f;%eet6@^q)H!o<40&449qQ&NxrrP?2QAkT`V_kI=P*>ZW zMpDyMxi}4>ad~q~WlObEXF)@izH6XNU2=lPr0lGb@O5?r1V1vN{mravJ|H7QZOc`e;0iLP8UcCQt?`{h3s zyOkQ{*80*d<8+x(Yf}C`;+yUMv^h6S5{2bVPU48w&gGI*e&_R|z+dB!zn+WF@gIM_ z{5zHYdg4NVnwYj()U7EIn-U#lTCpeQtr3TJh}$poi^YgF;-b<`VnpeiBEPt{>A z{7(N>f9{M!ru)VDiwp*NCw69H%ZlZT;{ikqE-H6f3Ad+S%rS7Sk@wzl#)J-m0F)# z=dTtQPZR6gyPa`g8`bSECb63;C_cm`H7DIh*F_Xh7xFc^_wZ9Ei-O`OTK(zC{f7Km zw04X7?pDHF>K7m4zj%#!*7IBZ@=1hz*wNEhww7HfzJHnDErw4MbuD6eY4X6G#I4n< z#7@b5IZ#^sasGp>thjEBjFYuL6Ms2R#?4xhPfl+U<4ZZXJn@}GOQdmIQg=$S$44jk z^Hz)Q^E$-!V~XioEY79qdN;v5yi_^4py<$ZC4+~_3%hl53r(MQ-3))Sq#r1o>|E1i z+^3RVy2*TYqn8pVbW7A9Civ=!bJS&oyljzGgEx!2+x;3**I6R=?hxm9ig%;}$y8@b ze3ff1=oA|%h`!mrLA;kJmkp{Sg2O$zCMD_#X?geiqNZCM-zlCU+;6vcif8++7kh0G zmE~g3X{}RNmdJjV;vndk^2ai%UnB-~`0M;9r6L7u{4rwJHU4NZXpPA46iYirUQ6w3 zWg>rCnHV+A;H^#WJDl;?YO<$x=jfv1UgCQTrpa5eA+gF|lH6b8t&>1q6mRbq;D5eK z8|mx#9FyRGW5hS)jDq`<@L|3r`R;Id!u+}!3Oc|-HYj3Dt_ZBY~rcA zS!%6cRH6do#dGJsdjtI@w@qf#I#eds;=@zk!a=L^RD1iSv ziS>UHwjZUTw-Vj{xU$oaE}KrEr1;0kl(X9hVt+=AyR|LOd0+}&=CGBd>=}oTqQ&1}wD9so(DgLcJZ>3XOb-O(y4Yvf(&O711+ZW7Cjx%>+Cxz2V*el^k3D(-71EV?aTNgaws zrPRnI^R2kPU3Om;v40}Uoj3TC%Su}PEB!^j3Nh-`BRBgq#4^ruVz%G%TB~STHHS${ z#Oh>+zd|(l#q{?;8cpWV|GlWxE^cq9%cMpB+lc8Kp$>HI+dq>leJDPMK2^(nEWLll(W zC%W5;OT?$Vj?=_n+cuSmeG5R?&ha^zM?io7*E0t5+P z0ST#$5@-G@9*aCNDV$btnUcoC;+uQ>c*HP&1EZ{^<|9w}!~Jo` zP&p}XN-{ht`%+RRyKl8IohtlU-0F3UKkV&y(m;CKJn7qoG#_|yvKX|P{%qWP&1!MW zybeMsrfaF#KUBL-M!8r^1Gp5m|7P)H>OcP9yPjJ+bxz5g+BZtn)Uzgay7*y2VhOPa z_X@G)331Jy{+dh0^39WGw9k?M=FR!)oH=vOK6mxav#DWEpSb!ae~bTw_+6zxZP{6; z5fx2`WJ*iDAq!HfZd7$IhRQjCxM-7TST9D^hz)K2suFQMnb=xN^FvmXJ^p_QzsBEL zoKFM)!)??UzxF!BU6dX#r%qNRUT7ouqwOu!n_uGIJd}!e$m0KT@e(TDLrqvBe&n@? zuQL7XL{IZmaSQR-t3zC}d9}EIuT6fJ-z9!hNsW7@N0m1a+vNDc;Mj~_*=w} z^Zk|^8J&WUV>mLe^z;a{R*dpD_~YiBQzmv&@ia}vm5S+w{s!jPBA#krPm`xox|S~7 zc+MnoeF04ryIV@>W*Uw1{wV*B|Bho#crGqpYf0|!`D0f;=eN!gw;$NKQQTbFLG~2W zwOBNCi{+&pi5~U!VPfaaV!|r1_h!FHsw(Z`C?ZzJiEp)UrapC~j8|$Ue{=*VB~GLH z&S9Iy8Kq*ZjC7e@lbtDlk*IGGH?*%gMvU(eXRHxBb%+b8uy2Prk1n70*NBaaSH1AU z7V+4y4We+Bcw#Y|xWooJF zt47NRD^D-BT%-IDT86RX>4sFog3-76*jHp-v2QT+4#4srG9V!G1omGZYl;c4qiZWB*j z(=M~Z`?4@f-m^;FR$VfKizj`5l&me3wSVFJwY0|CKtUtt53T;(GD@cl${zHGQ)N<4 za#i-1gIG#5YYqb?hd+y3mUfd#Eul}RP7)LSP2|xj)aw8BY0+4!vqU}tW^5J}bUBay zw@_?dxL)kjA>L2$Krd&&90?=DMO4*DDBn%^rT$2gIm{m}uF0bay}o|4e;m8`Z$rCp zlyO2m=HH9`(ia%`pP?JXKe@^2{sTsscj`=|H~&ICe|)qC7vACA)0GS z#DOMf%2XYhrYfK6X{xwq@dokKu=V0%nWw}-vSa*N%wK=MSXx8#jiQdPRf!j=$;Cc? zO$iyt!{$_)lXP&lSlS};ruj?!^JuAZB|DO{z!GZG^Ddqt*L+DO-K?M2z2jfvk9c8W zbP0V2t*&^HKvS2LxM2OHl1U|J$YOWOKVL=xb%s^6oL(q)R;l<7DJf5eLsDEhMCM`f z??!dKa)`7|4&!nq68_DIo=Jcz-Q8q)*G(`ce)o6;mkBmZv zN5k=h{*%*BBP*X{7HjX63aSA}Q;0pAdsO z#ZNEvJG-hEZtN0WBXs)xTDw2&`4=`uox`1X9shY%uR#A^BwI-8#Z%Q}8Lgf_Ro5Z@ zQB+LVQc+bSc2@&dtUZtJ7F!r$^Q$_uEN)dah3T!&d%wi?sTeZE~6@F5D~@(ae-4 zDu+n;6`st2YArEK&H49`HLu9T;HjF6WDVaZ#jo{zfTsgV`G-X$!#}juz<}f|HYT`C zRi$HhlEA%X$zREZ^uOYNvpOPwxp6HwiH>TGi_5tpnlo38ttiWLc) zaq8(Rl`4dz4)Iu$MR3Fi?khkwLk3^hRt}iO55*> zDb%py^@YiUJYr1lzItH|-E`BnT)egm<)HUgaNXCE$+MNZYU0mJxi{rZEbvCur`&6{ z3{lZ7ZfI099Yx6_h5xGA1EcFz*U*q$cKXF+c-eG4T9MkOmv(A7N!fMf64DT>nP8U~ z$W!z;IbWFE;H6|jF%2yp|Jd@&vI-_W4IC>+Fwq?LM!ESSR5$0< zrrM2>cj72D-i1(cZ)D_KCEl*KCuI};X*|hV)wNQr9=VE|{R?gW`m*0{5#PMDTrVPc zhyEEac>?91O*9b~FRk#4!>%gs9^en7UM}9`oba{w4)H>w)PGFvhYX?M*_A2FJH!E{ zG#6bzkp`u1F}YOCVH-Az z>l!yuEEUsLF5$!*ZM4NDUT@nhMsJUP#UejBgPwnMh@I4Q=X&0Q5WCP07rRBR)Kpxn z2S0N1r?$R$R!Ixglvqk6$+Jf$rxeyjh}3XIn@^nB39lnXTFo9OmXIsR#=Ba@LYf)9 zA}jsk6g`(x6D^)tO8x8B%ggZf;z&viwaJN|n8QBv#2RnSZ;}TU%KN2cA>aI#cFLM* zJ7E#PONDV!BzA+;^zVCFd|pPL$+Ny2+=jc($4v zOZ;La`-%Q9PEIol*QAnrj}#@P;yiAj(KP!zr9&Le?Y*AYp67KO>$g5Y0lk^5tn_Hd zIJw9ZP05v>CuovGaoe0c-xJqgnym3?PjRUnq#J9a|E>yGo1a|*?26p(D#=fh@-q@S%d(*!R$Yoxd&IoT7pUdDsjdm?$XcRn-IEgdwP zTHmbaM%yA*<@6_PUg}nFT}Dl> z`?vUp@Q00OAJw*qcT~kqqE!4J_o>Il7pOM5ccJ)ul;pDn6j!bA*B>hWoh+p~Ihht$ ziVkrdJt8ofgNhyEh6sS|6W0vrpct6X5ppl(hW$Il9GY72^~Fm!lQGwG7al_obQsFl zHDZqrv4A@~UpI)|Iz%-MqI`WTu|afSqMGiS{yLL<;BiAgOo`%onRiOWx)k}XE_obv zv^CU8j`NNd9c?WXVjbeqOPSTR^vGw+r5)mj{b>3{SE<9%9pV(0%GV9z$PO`$OMKnH z4nzz#CdMUAGg+HpKzn#E^%>Q3>ko&7Z% z#b;_dsHuwST1rn@OAbATjvg?Vza-h7;8EMFE0R+@dO}(%mzQ(7N_31|wNczp^qYwO z{+eQOXFD;V6Any&|HYf4TR&qr($>$tg_MQ=O~Ji{P{iMox|`5*z$Xrs``Q$hYW*$p z<;+H=J&IYmY!`#o-s<~e6-{z@Y)H}wB$tza5hohRO&*P2T&MQu<&(5z@_?b@_bVt* zi@b8NroCJ$a18YkIfoXXPO8~Q_X4xQi^y`iSVmr=|Jf&e-AFa zD}LP2ttOPTKRZ;f;e2|g^-Mjb#4TmFMmPJ$(zYNyS^HigZGSiTrClp;B+{#guK$TR zywpENoU!RA;y|7$j`8jj`_XXi6JT_ynD2KUE%xdZRsN=Ml&jgbik}p(2)zsV&)L$P7HX8(%t~e# zxwWPyR&V-a)ae#}c7EYz8gUnHqJ1DHPx;*`3enOx=+Vd;F?2H>8rV#k_D1`G%^1Jq z4ROY1aY@H&F>F)vsKNf7;!EC|d&HA%<=WZe`}Ex7`=*CHNrfMo!owa>@4orVV(1!i zZyRmoQYR9fgzAOn`RmV@tkfdSY*{4_7?w&NS(H4Y=!=tSCZ#5Oa?i#)hS4YUA2q{1 zhi_$H{w;0fmeSO0A5UCKJA&)!EY$Z~{SLb6T?+9_)IEFov{?nb zPRqLbSLp4OzvOxxT@=iO7hd$b~k&f>WZU(9`S7{&~ZPRcg z{Z-O~GDko9`#yC#F|hP%-aGkr|KhdHW#YS+bc*XQQ`v)-+S)z*+*DaGgfH@$c5?s0 z;vYg+h`TP6BLR_UPyEry4M7hlsZxwIPF6#QSfJE>Y6Vv|81l*HCa|y6g8ZBJLTPUDul_zA1_tcKt^Y~Aq+tF&1UJqpRqA@E7h?9@fBr$ za{ofHDe%c-bd-|i$h}`WYGjnKkl4*w$Y#~p#ukv@Abj6&P{juk5Tv;-SG5_2;S2V2= z!#4Zl){PZkU$KhNMv2yGpYcck(!YfZ{^)Z~7J2Iz`V$^mdk!(9(}VO(>(C9f|4WC= zzMEJj2GQ8Nv|Qxz0=B+foHNZom-b{k#8I1z{HKaa#*Ter-CBR_oYPM^E}10DD=He7 zFRQqyqN29Bs&-**OJe5o3VBw#rnP=SqN26FwYj=#LPDX{S2R~tG}DRh3O)x-z?npQ zN_ETBmg>b*>s#oyzPhQF$hf+`A+fl+xw&#-b%F|#-OS}P3(Cz>y=pkv$> z&2_a4suL}Z6$`8BaCl1-DRJ_$1r=w}vFnrh%s1oJl8nTHhKkCjg$o*5>su1_^D8Q= zs-l`TG}8h1il*wC1yntA`B{88z2da$rNKQjG%_VWCFl6&=IW-F+J<^1jLoMr-BM_M zV;!9vC!USfl`ThCUwn=YHJvQJu;Jy$xGX6HTi;u`UONz2G%xL zEL^~5)YLXLx6u0n?52w5MRXQ?erpYLYHV0q-J~V8RE!@N-i{A%Cy+_A)sgwxC(b&& z;-qRmJwN-bDH9VFQ)e|&)3vZGn&nx0!aZG{`>&X#nu;yc7M*h1>`^CKJBbi&pi3~lV%z1D7tGGTqGl!dxONOsHo>a zuh2Nt#~&Ho8LOs`CwJF1EVxM5EU9QAHJeooH|U7hu0OG|u5Jpq3xyehj&CAEYm~34 zkpdRf5o;Qn3`5o58d{sEcc>n?gfy+KYoFDynLi)Y5AyieY0-#o_#7NySm*{FW99>G?I>4VN}i2ceLxpw4td=ny6JE?=7vQV5&7~Vfs-O6w=j=?DdL8mGxD1)m4e6>dGo* znT)!c3fTZH4UL*hb9G%!$S_QIvSY~JURz&Py^LFclHH;O4T~Eqo2nC(m^fmZIq;|( z%_4@B7n>?scF3-}zN&d?ZObC+r>9p)Csz=NXwF*1dd=dOW7y$M)r%`xj7bGL6q;HR zOKO`05xE{!aOLzR76(^PFjYB5KQ3eWL%GB37JKcyT(`9JUsF{-GqURW_c zL1D|_naj_vY)aE}erqjRQ%^2e8NR7yNp(|m*e=tLU=PWcnJTK~fI}A5Q`f4j;|!xm z$iMZ zID9#vR3=lMF0rt-PA2xi5!9`uu8noAY5GdP%7IQgHy8&_Ik94P{aG~3UBsg4HKjzD z_*L|tNgl3UtVdrtT+tX#(M^WR5zdS#Q=2(_65N!PP0MA<8@s4sarM|GwHH<{A6r$u zq`I!5kwb56ZBt{-(c=!~>^`=+iLK({IIW#zwv=BK~O5?Po6MDF zsCpvgzSL4VKcZlD%keaa(QPF&#NtNj85)}B*HzYElxVGQu3cDPT{Vi-FddvTKhK)j z$%`A+w5WAHy^vQ+XR#vQFbPhj=`fecgu;Un4Th=>XV=fCj#4$9Lqo-VgpElVG$hEl zq0pvuHMhE{fqcv9%8WLgP9mm}MO73L>1kX= zpY)C5NkipKp4%NC%ps>wm=Mp8+-!2}h{Qf6cQv4#S%!bs3WpXdWx)(VTr~NLW(YL{5-_w1lE>G2zSpTvolj znVrb9NaZBblg5(^=^wdA4)Ht{4ks!UX^pjNtWhckBXJ{TLSj|fOaoVAV`v{yG&j}} ze?7M|y}6kN(`tGrl&10(7cJ#6#5jUi9ZK2An1EV?Sj&aP{MsOahN(_Y*J<^`%F90_ zLCPkBYI#srB8Ue~=Q)@YEfkKbJ=H8)CR3_iNUih#S$p$%E2s94f7fX^6{mqn!fB#X zX{1b@=D|r(2o^*Xx|U@Av-P*Sglc?se~b?TOQ&x8ZQw#KQ4%b*9%aZ4y0t=Xb~457R!$ z_!$$%4I5n)F9l?Dm7!!}OuIGcBfi|q8 zO>)W{GY&IMJulCG&ogT)b%lC#27yQWvNBt=me2nI0y3QcZ%-(u$?_ z7o4NhYz!5W-zoTx zJ!sLmlF8ExhE1O=vtV3JhP4EJ?pob03@ZuAq2~0Wq7i*3Of1@etdSu(UiB1BlZUje zQFShnOK$5h@}+l`Da6F-U3Abxrch%$e*fuOrb-ctGt6A$psJ%X+CUshPnZ5SeJCu@ zHZ&siL$MwtyIf3EWu%fkJlm$3y$8se#KdBqOUT?Ote!}XDf>#SW66}s(w&Wzg@N7! z;_lO=ujoTX|j}(thULeg>Z&-AlguiE|iOw zsYMC81`OS3vN8>bQyj5{x*``kVF9RzG*u~;7^7Z$(@ZEvoZlKV?07h}AYZ!&>0i+; z$OXI%?nQ~v_lE|p{eM^&urpLCkqjuhXiCv|S)7r4*7%XK{5BcK80jZ<;D~lYszc;) z>NrVyNu4>Qdi|h~ZgaFv@3pVCF(`aEym-PSYp?R5%|hhuXuT$)L03?mWT&+UX=uYy zsQssR2^ZV_Wg$eDK;lJdNb0y^WPl7!(w~NH9>ynRwIgKDFkIJK$y(Pg{qm`(3L2bU^4fhw8I zh{70+Y!LIZ`Ggj6?0Yrwx~9`rm%&DKoiJW5{Km_MAzBsmNdl+!3>&NoZmz=Z5!>3uW5#O5S&oj=i8)kvI^>>tQ$#ohQYd zT=vi!9s1kJ;Sx3>!(Utlq>7}M#QmpBw#MNJJp)+_sf@>(%#agd4K+7;WhJWuGSf(1 zWJ#`u$zHP5sJuoN4AU`097+x(`L^zw-v)`#x4C=1)T_(L+!kT|!4%d6q zfGNY`6im8q$;y(jx+oj0gv7-~HC-J}U{OE?GVu%!rHd9ZWI;E3XCiu#_2-uu(u0O7(%h6OD)T#`syl~F5u>B zr5(wWz<8dmO>1W$A3nOc4fXC#|xOm<+YzC1gFQE_tm6XHxRc1X>ai&=?67EzLU*QOP& z^Q_)$3)1ylodTn03Dq&JGsUt4hHgoyE=(kC7KA=ROJTxzSu_@dnn@V*2TT|_c|f>S zwjKn1NBZd2C9cv+)hfD}1j+T50a6ddByt=pkGz7Wcd3%I+PI2py>~pao;x0C_pKht z^-CDc>?%c2vVrf{9fkZYka1Qn`3uAwn}sHqs8S`LY&zBxQZ^?uuB~{89yxSbap(-Q z|I}qjsQMDu^hr9|MG?f#UlySz%M4DNqtv3&Vcwpsx&A&^xQ%BcTgZeqsdb*zC5`zz zs&LXM6hw(+N<1Mg59O8*iZtqM)JjdNVpez577+VUtF>dPs0vzZIazJ!8Twn(g$(C) z!{m)Pv0x*xyp{Dbi9M`hB-0;O0;6Hcx6^gP6hD(2tI2m(MJ5-tO|o{$cQ)!zF0h18 zF0dub$psew3;pRj9iw)aJe~toHj}=Q6x+AZ=!wVRkJmGP1_4Q;S4gJ)mJ$Mu22XLz#vetfixQ z9s0>`p-Z%!#sJcLz=abFOGasuakU_8^tw3LZ$QDM@$uTyrXgIz3);5Q`*?A6HcS|7 zwMJ&6Y3=TG9bb!OCYS7o&C=*M{N{E;UM8yDmq@8(unB*0~YNw#;=c@gzC<>3)%nbJX9-g+sXg zSdhGPI#uS2;Q~yuQ0}eE_+hm;v}nmEDiP_#L}mlE#)D2;F2K}#S<91Y&V{gpS|F&}9r;FOYa;h8=bTlo=w4;`bpWB~zP-SL(@*D^1mIBr3Tt8`dV)x=0sob9{R=>g!CwVy0zAh8S6}uUt z-)a%Pt{a^m?oNlXR3^m*R@?Nwb!)M^2zQZmy+poPGD)tnrGf zE!QupoBRb`r%aqE_eHrNQaAm5a}52mtuKXx(daM3x@9coz$clN)ImUJ(Bg>yQlSW$$HnfaI!2vXwjY?rjiAE0Vdb~R_&85sDq3PVa>{_C+^y4 zZ!K$dp%I)FzJkzw{D`i)sH4f3%{V3ZCFxSWHWz7Xy2d(snB-rwfyXaR zB|VY+Q%xAp!X-$5S%tP$l?k$pjY+@sF7caql;E_MD$DY6<39FF10>S%7Y-~O)?F61 zr%QF8EWJ=_=}FR*>=O&(N=UNyoaw&XlHX>(>#U~cI=<^$I+lf92aaYY1WLV7EDcAw01kSV45_Q0rq{(uaR;kmHI7ucv#qw1Lxd4?4BBO5X0_19&)^WAl3H=QgYtEEQ!s&9; z3~S0Uc{CAD_84KbESNk@{0q*?x>KxTmVc5($r~e~_J)5_&t$?z6Q@vU```PCb;53} zj4T)(mi&@gtLqcm1@^$rLi8f3Rmgn(f?f1Jn2PsMsJMKS5 z+C(7CKID|*@e}mBBWV}fq48N&PWG((ud5}SckfBP!?Lj6{?#u9>U>(KB+@i6@`=ge z6J%vkuOQ@RWmsp5X$g}#z7mTo$nis&UBoW{7EBGrZv8|YrTYz+ac`njGybNiHJLC7 z!~uWw@NhtVO0w$2Xs9-%Zhh&9UQ}Eh#*g92uWQMbkxVnR`pL}(xmuDLaJ&hG8~(UZ z?yX&YiF8Rt@--a&LS3R~*RCh#HtAM0Y;@uH_;uG7?VI9zuZhIL*fYG`j58DErqw8S z_yLu(m&o4QHH6p0X9wZ6mAvYohVZl4opWl;FW)(*&YY~yIl1KvtLD@Z(m5x)OErP< zt=bt8&PXJGI$PN^u-bU7Bd?3_zOTN@>2u0YshX4Br&_KYu2d#ruKw#Yr^5WK{G8lH z<%>kny_%rr^0!exlkmB2RNiM!<@uF{te9 z`CoIINO309mq=(FO|VV(^=hNf{7Q=}49gihr?O`5wdKoyC5h}@P3ud4=%nItIh8*> zCp)2eUV_iV&!VUDyu0Rkcg=Ijjro>4grGStcD6~w-TU-Vz7zoG5-l=|C^>u;WXJP6tUF(*Um-UlGs`6=BJF4AYyQot*fXcJeEILHhQvuRh(!9L-qjK&NcFTzqRG=nWw``q$*a2q* zft=ei%w7!21?PqF3mh#+g!hHR|6H(vIael6)7-Jc*~3f%M))0#eZ3K$T;h zXp$3Y-mHkV57l_Gq0;K4;b{3&j;5|Ch8N?@XZj%p?FTtDmjkuw&)@b^RFy-0vvYFo z4PK9z*Rs-Y=V!abId{U??&Px5;u`a%^gZ|w4%Boa$HvW7hD@@jhgWUO@9^n zv-qw2wR)H@Q5pZQ{vf`d`zX`>wbSI|vf{s`G}0#ZqIHd5`ye0xLSbdaUvplh-#Fu5 zyFA1B`xZv!{V%1Tk$#j&=$y$#AtaGlyCzoLCI7^dQU7z~&-?$7FmF>(Vny$GUa1~X z@Y?(2v$EpvzeYm(z#EJfA*1jlnP$^ynIwv{7qhn@o(xD z&(-wn6vfBCS(vw}XS_Tr#{Z@K+z$t@eOo>(EB<}ubP|)gF3|XOzUAZpT$tKyC4U_5 zx;e)GU+thMSp4?7Q$8!}{DqkO=rGB_&a>B_jIYz)jI@?ZoI5PjcePMsb3A`j z!)QqI~}x)_jzQ zeUs+xTDGx}a-uJRDa&saW`z+bc}jSr<3@Sn#q@DjqB0$&-ex6pF~xeyTeV~7x5h^! z1231z#j#x%Ujv>89rFYw>;w;&$-Y?#&fmcbC zVqTOB`-RZ2L{l~WB;guwtLjl0uCwLs)zFV}`sLu89Df+RzvFAcw>bVTxFjtE^JhEw z4#$55pB?4N`cO`Enm--na}8#vI`}qcCl`E=T}VdhBXS&j}^ga&|6*eyGzghkly#^8xTJF5WfZt(^Uh;5(fD z6Y$wi|1J1F7w@0otDT){GJa@&)^YrB@KVQ{gKPcOVD;)0@CA*e5i(C6ay z+Q6$MhC;U*<76rHCD6%X2v31Gap_$TzQm>XKj67e|6lMt$A2?Bj#rThyXNOKXa5lJ z1&%iaZ{>Jv@H$AZL>EFA@Lb2w0GFRp3&Hfm%)a9#;2j*l96ZnQYr*Y)i`g#)@9*@F zfDdx~C2%W8v-1}CD5w7nyu|Tcfy+OHT)bw1RPd+v#}pH?nN<51;g<0rYlhiPI9z14m;N9lF273E*}t)A$g&fMfcckYWm1MlVZcZ2r@ zw|E}`@8|413qHW{_2B0?J8y%Z>-ZM%^TDkoz62lQ^t-@^I{iNI;oz44RipsRNsSl_ zZuxU4xQ!#$vor;t4!!Y{z^`z;FZk7t7l1DXmuXK38z%5;4zz+wvc&CBqf}5Xnz-0&3 z5G>vs!R03dLNNRHg12?{p8~gW*79c^_^D3+E_hdP({BUs4KCF?gkQnW0=M!lFCCKR z|GCb74e%l0*1qb27lMn~5ZZ!I0Jn1K3a;xt8Z1B00KWv>@@+WyTyV?h@!<2pExohA zb=`>VUk!d8xaI$H@MYlEjvfWK^&0c@1@M*7Te{u?e-zyO`2>8GM_VEqSKWG52%fMfD{0{Ifj^6|Rw&M?if8+S$;I>X=A3p$b*U z0I%;7ybipN<8Oe=?}Ma;cfc=j{DZ)=lk4+#(#OyjIQK(xuMGSkxxrdixg3>&x68o0 zWZo+VR+vhuUG@S3ttYr)0QDL2uEQwW9=C2|J!7E0EhZhIN*nP|^0^=9i_K zXDR70>=_e}%iQbTDg_?C)J<7&dNR7?2KAIPS z?Pw;O7L&p@J9HYWXQ6u7CZkScJ2*&{NLJdo$4P284eV^J^`t~9SJDToA5m{v7muti zBvV%Q&NKE{sAUN~u^ha{K1dpEIOeDJ11M`Frqu2#W;Xrd)YKMSEnBy0)zPvb>1uMX zbIM}dUpk^PyGG0Iq@A+%#|=&=caKZYP@m(LhapETv!en32t4gi74zSA7%0vTbg!|rr^Ym3x9MWb+aONgv=ZAFQdz}E zr9)i}`mkdbeQwVkhY$Dvr3~5tUlS4c;-}N&)87$TTWFJ(8r##HPQunbT9MPLU%OV; ztfH&jtZjF^kdkCsrJgAz^ZqICYdCyS5LdJx)yF!&LlDyIl+!{RjO+qSY= znYPE6?ExB3cP%u-;J`n7p+z5dzY7W1few4plRpJ zU-EgXbx=#7TA!@Xy2q8-O4jSK;o2nnl5D}rjn2ja%gJ=?zjs|yoL=-|o~J}|n3|Ku1KPeuLF&g{Qn zNZJ-MBCs8L^lfSfOg)Nw1}D98oxCdc|D^_{_)(_RiK$%{`+YJSdxm2#uE7`IpdJ`Wi=edwySBZbnzz{lD@k}Ec%J5 zxOf!OPvYL6u;b_UX}?zo4b7h9{IqF<9*3WLNV>xPyndSOH{^h(0eVEgZW1@|OB%5$ zl&I1tI|49Aw^7pFCxp-?hE|J6`{F)PK_Y^uIihEdPTlyp_%V1jwvP z{|5^)cd;ltM9L+SUF2kWwhqr8{yP5(=G)ib|em(KYG z{d)8m(0yRRz|LLryUX;Y>`k=dPDr$eY}})y2Yz-beU~8n-I%a9UGmbOeiVtBZXljI z#!gDndfa$9My;zUasQ?Gne1Vf+(TwSoRQIv)8aw;4AOH-%DT zNF8kx$Unm(85Mr7Cu|?ZDbS6$!p2DhQ@{LWTT^4Ft(b=74lgl@>Az?eCCQbn)D~f3 z&%*GlEb%nAJyp_^0lE#gIjOq@CO-+kRZ+%nQAq(dw2JwfejaV$BTFH=W!ZkarplIC zX+LijQz8YHwAVv_nj^JqZ5dnFGfJL@a!&prL$a_!Qqy-Qb~_89;4~Xji&5A;F_mol z=_`>SF4@R2S^U!b#2nWWx4H;jdL>BPnoQb8+HWewYFmK)b+L_8YR~QHIPCfD;F5)= zzX^ikPycbvWM+pQ{;b-?st{_9ZT1$0Wo)yVjDvo_N%8|50VRJ8B9*}dbVv`s{Dh>X zqR7`DEyCW-$!wOI5Vo6({_nqofAq{Y-c6oH+b|`Wm3+{M_#lz3gT8U(b`02!3 z5g(I*&jL692Ww;!t{{DDvU8);%Wb_7mOHM`Uu&@aAk@z`WM@0{nl62|)$;#GaMkN~ zFO64J2PG(PNBlN$efdTHOn)cwUx`0LcG{DjTBt8-|9Ij}!PUhqc! z)J{j@Gf2;Nt|ZQO9w&Yx*;z;SPa-}SrF=d4}}+QE!$?R_=uD&jpKMn7Kd;hmNz4aSANzeYb z#}{C|KPMCaQ{pp!iivC7OVt?(7lC_!W;?z4a~0{?pASgS?ducbe@T4iPhG8;64ZbF zuDkJe#MP$}@~5FAxU%k4E`yxj`sWKs&;9dw;@pqTC*GgzuOi-qcvpPUR{c4HxIX8k z!Rmhn)T@_Ce#C^J-53h#5o@xBCg-4A$qtuSKjQ4qMZ`JY8=ZaYCvPV`_mjQlIRFis|L0J?jRMznolpEa zaLb1g$cJU5Xa65^`i;;(O?vkKed0V$?a9Ea;ma)MkJY!j;F>O;hv@SP8oWN=@qG9> z5L^#AT^Bn2`_NxRdQR6hPX8C$>20KE`|*3_DL<`0f1UJfe>=Eur{5Fjc6z9Me^!I# zgQfQW6b*|=&+T-Md=FHE`pNy| zP2lP$_mdxktDoFYeo4GM`8fa??(G+Xd;3}PeLW494_1GwfvcX&_i(5GLk)HE8 z-|4OX3?x0&yl+rJas*Pn-obN%^{>~J~mCOy}mKS|H=<{lE$t;uIQCxiQX z*pKvV=Q844-yQ?Ea4ziL*cd5a)Qi%J=>>n0+hv)4+YX4{`ckDECpM zXZ!P<-pc)Y(sQ{#<@8qWFOr_^e+=%+{cGY}?ltSg^!oB@4DQRT1L-;5^S~|NtXzhX zp3CJ*;#@8dI6Eh!-*}Sr+;4n{2fV%izk{1UcAcMv2hUW`cG`k#db$7UOnUBr)@9It zm_dI|y_nBxU!Q5R`dI?5{tPAlYzF;18T8x1HNAR?b{q1o95%kvczGS8I=IH$k>b4& z-0ZA|oowvWXnd5Mr{SL5@Di?nd0pahaE+JOC7vZcuS>i_oYy5@C(iai1o!^buAd0O zxaGsyj+_6hz|~KlAASU``NQ+W$_=7@pPx0sRnONKjY!Ye7cGf%dpw6Yud^*8`)Tb3 zyu8G#aktZd5*~MaDfml{n|=eh%D7$EYZ%NW`@?Rq(+FG-xxYHW>8-!&OnSCI#Od$O zit&vkJ=>q|^k#n!>Dm4RPH)#Kk2_v3E5`dY+2MFM66gH?o;b&QNTX;^^M~j8$7bN& z!L?p-eYk-*_e(3t4);rcf@^))D}UC{ly58t5|n3^OYzrcI+zc2 zkn8_t;F>P3{|kw8dhgA^*AZts9~0;N`5L@}#LM|J?wFLHg_Pd8;F>>r&L^l3OGrPA z^!GUZWIaj3!x{A3o!<6%-%Wb%5ADHbUyhZV#CUu;9uBVg%>70YxVkr-{6DH`wBzgB z<=|?+viw>7S&%{ha0dP0W-0qT-W7wZKRn*e&7fbJLBHbIXg`z}rR!nhr6O5_b%9mH zHC_AU91U+1=lWm0dHh`ShsVu>!PS4R=f{wq>t}1?T+auQ9bTszPn`RW`-zXB^zI@1 z?C0OaJCMG8i9}ZL%aQws%fU5X?jKsUPU$&6I}+#o91QOBb1HF8*Fxf) zuAjkuy8a+uiPF`+P4v^sYk53OoCvP|@c7l&>DQotJ1c{Jl-H|42@^@r<+}u2^O@`a zt;D(huXpxG!2U+E&;Ebz^y{Jjmh|jT?Y6<)u%5u>*nl{fV;^ue%kAO~ajrkRiF5stZ*hfSe$GVso&>Jx;(p^2aNjN#lAhbeYO>Gm z?j_=tseaaKAN}$D=hfim=b9)>T<^H`GY>ev5$SpYT+_w*{|<5Pmv%WjjbP{R47}3u z(J{5pom&<(OTrNF2L_0no&L++F zbOZPPoJXAVd0Gbk8gcgXQ{tR&Stq9QpY?T#v%Uv$)?YxJ^}SDu_O%{zeeO>@o9gqu zC#Uq97gj$XcYJP?B{qVqmhs$3x;^!*kaq}2(YeyDuOUDPt(-XbP z4*N6M>7Rl>V@S{bTn+B)^DV@={@hD;I#PcAL3-|=E1w!2R{LzHJ-E+@eBz_XehxO^ zv-~*#?Y%a*+HXwy;ZDB@`8I}lsj!m|j2~PHuKsX-K1_Q3>~7@eE2QWAteO|?nV$op zuLZ7$+`lydH~qo#xrWwx;U!$Vu>JGEO>gNcBwi|~4o12z1=n~vUAKdq9ZT0Er000M zb`}E?d_Cz;oXdAOxW>!%WEHr@YvuR>>A79+Ap2ae{w6)wlLNX0H}|{m(4IKk=|Y_S zp9WrD%xM~CMze|8;L3RX{g>0vh5jDLt^K}6b_SJ8U6*|YuKCRKuHD3W-c_+{j7ar7 zA3g|N{p4}~$ZkW&TXN}XM zW8R;J;8tFi-e!(lKc7c-*q>qGzWq)h&h>v5+2QtkNPc>`Oh$el;kc!%z2mkXcnY|t zm;1vDh;zAIMx4|2xU+BmtajY|+2r{97)Q2{efH;n#JOKOxNq6zbu74*S36Chgi|x{ zo@9s9bqVp&)Q;}Sz@KvVt=@hC?#umq;#}@6PLKYY|CXQa9Jl<;cf2{$I}qHL??k7! z@opyRIUjBZSO3}1ZKUV?$?jLS|J5Bg|BrEeJL%v z|5t)*db$69f;jj8uM_9~{{ynm{r{XZ((}js>3CK;w{p*O-12RfbL^A5+Yz28UnxxIfuoc+li@+;}N{br-$ z`Sx3jIJe(U;O74?F*%7Ij^i*f#PO%lUyTL#>AizEm*Xa9=U~{`MS9MMh8Lvgv$gkD z;6C22PH*|#m-K9Ziql*FGt+Unmsslfa`?Z3>~p!VbNXM@VF_=Mp8fgN>E}jy;xEU| zpL#>0K+SSKw*$BGoe4W9Id1c}Gsq76GY8!F151c=ySR(&a6eG5Amu0bGi`{o|NV%w zKQoB)bn?9bstW4g?~)t?5ATX~)6_*~S7F5r5| z{){5d>AI9S=i80o=8yFo50IYy{}9}l?^ndRd~*sDA*i3c?$-_6+c|?c+nEn;e*O~8 zCKfwx`F4-v2P5Ae2KV{);jomSypFe4> zj*Rxz4v$A?gRB2MUut_{)GKFydVqU>PA5J4a}II#r}vm>U-Q4R{Mq+gz8D+1FUKFi z)gNxxg~d^CcIn?IwX8;R`kW&2YH-20PD zdiJL&arWnIaEsUS^I6Bup93eP=bQ0sOCnc)^w~YTZ+;WF+OJ0ZcH##RzaL!l{}|#u zCr10eT+RXa`5>DogrIuPhhpNK4-2P8z2(EQc$hf+;&g8LlQS)yTRzkUSATe()&yMr z;d*$Rvt#w}gXz(}PwyAtKE2)Egz1=0B!kZ`7j9F z`#%cY`(HwO_J2BY_J7`-RQ`;mdU6Z6`D69)hj}S|A?dTPOr?w0-wq{SDw28!M%_`w zwg1^Cwls7gu4!JM6>uUCT-h*+cd*kBR)K^O8T6Nvp8c$~AfD&zTQ0bo9YpcAB|Tp+ zpGchN+Y`tR-*>y7^jy#HAkO3FyJUyQ-#x_H&yEXYy3~KZ?#l<)^3~6lBA z1^TNTH#^sZt8JdotOu_moYVU|={a3Bt`eaHukQ-3_E|q7gMK{eIe%Wtp#O#RY`@yo z!JYm5=?uP~Kg5fv{#;3%>%;xTdEW98ah~tJ2d?>Z4%y#EdY0QA3R(AQoZ?Wv6O^H}1X zpS_54zLkJmK74|Fm_~Z`^J=Hx1^o>f^!F2If7XEe@_m!^?B{pH*-njXQu)x0%C{xB zrOWcaBk9MHz7X7(?`hXY`^tHKdoH-UM*q8;UX<cn*q1mnko z`*=Ho`*4xaPuWyTpv;8N*z5g$hp7X8t(r91xJT4r2 zQ`zx$ARUmpJS9++4Q(tXoo?^>c5HT=T86{MkI`X>j$Q`~UUens3}c9C4cf z31-LUbr*rFp66XxgR6bMUb}(xJTH2HIM0h-1h;rcsS^?oTOMCEUY`Fn2Uop*X6>j0 z>4#Ch?d$Z`pPZFJe(x> znRk2q-21Z_T=Rhasr0X?xBRsFP#@geX$tP`e3?PNGlTxpJ7TYWke=(w zv&6Zcd_tV3V}Wr)#t0 zmafknw{-nXobCTkob6}bt+|nUUfAsCIBxbEg6lEw>(avMZT5v*HOQ;94%1P(EMg^u@40-*Kz|i;34EJJ*9(kn_3zuOPjC)=2+JSn2qPh!f8^ zz7+cPjxR#G{_Xe(*xBm%@(S^TZyc`&{=MTPVCQeg?fZ~b?}-9!cWUBf{U@QO<7Ow< z@rR&q;rJr(c8;5!u8!ON!2#fUI*(r$IQ<&fALICBk(Q)(VlMMVD$IYLgGVnjay+0N2ORo>Vz@J)GV3M)NqpH^}tWd zzz1fqKg8)9!OmF6b&X8JB^mhK4EC>a`gX8$o8vlH(C}ae{!|A0FFL)hk!kq1yPlfk^fuqP%JI1|`HAZsH~Tkbuz!!!FM^$ih?fd8f1V^eGs(}_NUv$Y zvRmRU$IYJ)$PTCXd#5*lekHE{)RR9Ae~}&br~3WzbE^-_<6+_u$IYK3!F~Rp;PmFt zsl-dg_Q|l{o$RnbgGjG&+zow!D(?65y?IKBC^iMaYR6ZZc@cG#btq*s5Qg8oOx&7a@N4*OHF4h56mg6>0z7ky1%J*CEBhJ@Z z&pA6*|2Jmf9}urBaeNCuzbCG7oBzK$ZvG$mNIcQ<$L8UOf_wi@AkO~xadvFpJ~#s} zBF_F_N}TX^Zyyg&Hr~Cx9gOTz`g(f5NH2uJ(iwtgVC-V zW#BD{v;X~wYf0Pxct*K;%sC(iaq6KDIA95?%yI&SuF zAkOxe5oh~%Id1kJaop^GNu2HPAkOxGa@_3y?YP;m@eLQFvrb)Bgf5t zE8=Ybc;ak7&vCPVn&W1FByqN1Oq}gcb=>SA2ZnN1W}y zL7eSxcHHcL=D6AaojBY7hdA4>@?@$$C^!2DJ8t%mBhL2Q6KDIK95?%Y95?$##M%B> z;%tA4<7R)h<7WRh;%t8fakl@U<7WS9$Ibq`#M%CTh_n4K95?&B95?%wabfP;?}5bG z{-KVW{RWPk{Zoju|6Pf*{l1Qy{XveK{Sn03{uttHf3o9d|1!tT{{6(+{-ea%{HU{Y}K#{)fcb{x-+W{&$X>{ojbQ{lAH`{mQG#Zojo0H~U8tXZwwav;CHioBtgh zH~Zbe^}2??S2-43b%SVLF@y9c5}!-_T;flG`}+SJarS?`P{X8#Ds&3*^sdnGEnt~`}E+wbML*&pDz*)Jfzm+Ti2 zXZsTzH~TXjH~ZHS-%IvyCeHR(IBxbIa@_2%Ccc;Kzet?zZ*bh~Z+6`5e@=Wa+5eh2 z+yB9Fv;T+VX1~%iVpM{!{|69f`-eDg_Uk)t_FE8V|JxF0`=>Z=_Io*Q_D2(E`xA(> z{ppUI{ke{t{UyZN{!PT$eyQVT|3Syi{xihc{tLv}{_BpL{r4O<`=1eK``d}L{qG$& z`@cJG_A9O~yZ%%o&h~3NZuWB>H~Y~v;C7DH~T#uH~RyKv;A|4v;EQ zoBbKY+5T+eZ2v09&Hjy!oBb8U+5UaR+5Y2>oBcJ8oBa*M+5X$a+5Q&C&Hh)8oBbb% zv;AL*v;BV@H~UqeP1QryoBczGv;BI++5XXvoBh^~oBdOWv;D5b*?wQg&HfOMa0?u^~Bl!a>vd7 zeU6*`CyBHDXNj}@b&i|;w;eb8TZyy%ZN%CBPRGsuua2Aja%)oM&h{%4XZtlBH~aM* zH~US9v;CID*?tGd&3;$M&3-@PZ2v6cY`?&9vp>dhvp|f`&*?)*Q z+kb*M+h60j*?-+}v%i@*+y96-+yBaOv;V#0X1~e{W!InT#M%B~j+^~Pj+^~f#M%Gj ziL?DY$Ibp}j+_0F#Myo^akf9zakGE9<7R&`akhU0akhWE<7R)Q<7U5g%>K|{H>Gjs zV&caVuLQ2^OO1(70N3l{|H+@NdrT#+_r{ISC4Lz3Yr)n2(Zug2eO=Gal1dS>DBj^F1vrOcKG>`jd%p+|D5#f&u-#uXSy1Yp!uNp zip~Eu8TdEEHLpxx5#L|dkB=f=8(holY~uEPYSrfwx8H47e~ux3JnSgv{5*x?txx(s z8RE7561@FONzdOuxsy28|NAN41{CjBaJ8@BS+M;1FWKSen!hJKKd<^5@fKufnb_6f z{kP|;J&)={LQI4<^O(MoVE2>tP|IK_K(4&kVEU(_ZxV6fs$Z)&$tC24|0(_3IPOJU z^(FNq7)o60#2VNiMO^g>bZoPUtNu0U7Z6u{|7sDG5?8&ola<6(pW7yawZv7w9ria6 z5B{J$wh>qT9_V)vSN)!23CLTOseT{y*?83#)wilH|0LuRSG_(fu0ih|XfXZSE8}q< zan);`)1ZB$2Gi%A9FK<**SeC6bd7R6Q8DTlINk*MCB%Wk30A-KW3}H3AFg)#1EcxG z7UHV!0R1-NijX}qv*g(9=Ruzx3Mq0$hsmFYCdAc#FX&qlS5#lc68aNYeShc&5m(eg z#S*3wSN$O9XA@V1>Xs-auKJs#a2e`s=4KOOp9^edL1HIUvW#8rO<^u36y{b|tmC$9Rdp)Vn>`cnN+!ZhNFmIf;M zL0t9tT34c!xax0(el2m;V>vgmfw=0;&JN10^%XPu)l=3qK~0}jJWF8Lcf~0qHWM`As+PL z+lZ_FTkr(t9hN^EU_YCTRB}lDO(Cp`LFb9{f=w5;hT6y*@LqVGnWDTferCxa##h+pd!xG}ExBmAQ;;L^8{c7T> zw|;poan*N#ej9Ps*9lHZJ`q>F&c!uk>!eD89;&od{xsAeu6q4WxrSE6Rlg}viJ!RY z^;%TJAmXaeg+D`ytKP0lXA@Ux6X+KZSG|5mM8itrDxDUn^iRZ9KLq+s#8saSzJ<8z z3&HmhSN%Tu3!!R!QJLy>&l(N6#8q$OWfS76*F88i^dheM9f8WcjJWD`&jJl4#8uxx z|4EoeT=jFIzlFF;^Pn#!uKM}VuO+V1UeIqKuKGpL?;x(y{?P9suKMesuYv0rJyhvR z`O{E`xayZd-+{R52f={Q}}D9R>Xo;;MfX`p1Z?^cMNk zu$s8)S3$ppcrXpVjkxNc2e&U|>Y?gO;7>Ld)|9LMCFq+FSLrn9TM<|Ndg%KTSLqV@ z(=dp*>Nh|?jkxM(!~SgIs(%amQsOFI0R2khs(%Oi4a8Nt1o}>(^YEY zV-v@R!cHFX(3EkV(2KaDRvqM@grUS$Z`WO;h^syq3z@TtYm`=A3mo63iI7lAT91}rp$Irz0Vb`6i z*Ez_ZBciYc>1__E$gT^`{=}RpwCg$Jht`X{M|?^8IR*W1U&r4#B!YpC&pS2(yIwK- zpFls%>3@K}#PJ14=oH7-qHtzAKKIZF7CT;ocx^sz{>-lxh4(rATI9n+j#ojxJ>&Sl zkBnfw=&2uf@7mtp@FP*+G>}Va(VEUVpt}sC${&t-pOH@ZaGJO{6rLNg(Fg_jE z1G?77d=Bc5t?QWnN5rdZ)U3a!dOX(eS}GXS1&u?=4 ztSC?1U zH*|bVjmXIN|%j&b~Ely6JNe`yr;whnK0entOzj?;&RAg2s*d;;Pf?sz%W z=LwG6b?z+3udEdPS>*Uthw(-`kg$Ir&N^M~WT zV81H*Z!4F}F@LS=_(?c!=6FTeKhg0Y8%BTnI6e&gJjd4|AI3OdAAZho{8ZSv%JH#{ zkpGVViF*Eksv{3*w+ zzk0=S>#sIBZvEBgj&H{CPRBpT_)-(?((>8n@h3Rm1MPH}6+tsQN)S69lr+U zZtGnZZ!gUE_B#FD=x6F9e$$_X{LFX!>1HwFnU4Pl_3%l@e@6TN%<+1duYT)z1>{?8 z^tiBH*S92Zji+r+2md&J82Y^f(ckOGdW|px?euWRZ-hTh9bX0iPjLL2axvcSj@Lka z8{qf`)Sp7fFGv1QaQs5Fqgjqu#`u1<dhk7t+wac&<9J7udk)&Sl~*rZHyz>l5xFtm=8pG+{v^joH;?*0jvt8r z^jydDFb^N)_!X$< z%!+)6~s8g@ND$cmafB*4|N=GW9`N9+x0{Vr#k)!?Duti9LD#-j{l1KJl64h zqxr-P#}7b$E_D1S=x=fSQtT%I{hALPKNanLr{hH^$KM_AjP{U? zc5nHABl_z)j{k=Aws8De=udXsu0u|9d@uTw^Bm7XKQP*J98Yt6EBcuQjxWGGaH-?J zARnG^{7lrhO^)A!eziQ>x8+Y~T#z?)d_2bA_Kvqiz85-vCfdt5$Df7&(;eT9<9UwP zgFp8y?J;5N0V4ZR{;WSa%yIMo z7{|^3_KuIlxYO0~E$FY#aQrp2_o0p-fc|!@<8{!_Omp1)obR~#xzusX=Q|z$9rgS% z$FIYD`$fkaBmXx#z6trT)$w!DFYR!ACdRwHj+e*0t^&%<+RO7euI2btjN`eEAAo+Q zrQ<&$zLOpQ8`rIU9AAO{aFF9Q(LaxLd~dT@52rX@0ruxQ{wmtnt&VR*`&#Sx3n;I@ z9lsa#q#DK<%eQHW_b|r?qa2TMdiD@x*LRLj!Mx>n$1j0Dl~J$F|HIKg)ONf(>Q5ubs~jB*puq8q z(B8&7{tnv3EXN-~dKWo99r3Pkye-=4(~f_Kp6+n`W#s2x$GbF( zb}HgL%eNQMu8(%SDXw=~J3a#W*46P|NLN3{M zf9CiT6=M1R*YOt-?_S5(A)hP4Un{SR!5cXKB=WPR39L`&vyI)q<5v`jdFwe#IuesL;k;> zfp2#FIOP8qj{gRKc7tnjFeHSCe{~$)aH0~{O)Vb|M7ulK@kdbK8aRFh`kxlWcgLiL z|80otb!bhDmmR^)Pc)-MSEp}|4^AUJrXa!o0LP0F_xWT;{pkcgg1Gwg4UA17u6p|( z{$%2+xBlcZ;;J8k`g4urw}an6TGG#xJL%QVMHr`cIlYz3FOJ_HtRxZ@ zv5sr?a3JOq=@vImB5K{ zj<=8U#HG%T&7&3)*L2zQZkd$k@RZkUDU(( zojy-K)9{Joiz7~KCp#MNwTSmO$A19-%h~A-I|pOjGe0i@KNj5b|4W>Ig3~X7zLVp+ zr-O!`WJmoh#5jHiam@$2z8g$j^)EwTNL=+c&K46_eJ=XXi-@b<`uUl}Reu@umxEhA zJR+ZIxWn=YTdj zZsS*V#BcWP{&HK#tDs()zovfzd?@KPsc=6r$#HZui8;j8#7D4mv*SC#A9VZ=@K?aC ze*WD+j7fOg=@W?fL&yI{yZDUkX#U@g1neNLL~=Mh&sgE8)O zC$4t>fWAL*)n9`3qO*vrz5@E4p~O|+1oIHP|8M1(1AU3puY!IGakX##%xvOn-@bP= zkGSfspIJg&^)F)G;6~!Aw|=jbxazM#e|QgZ)sKOlhaITOebDm z^f$xKV#ogteyii3gWu=4{a)%*jvs(_z0q;Y=P!t}|KB@q{_i8M{+|u|2Q-TLWcgVP zp6mGK;O!j00lb&v8^O;du5AO$V+p&zr}3))xV%nW1iiJR)o4ev$d3A-z<52+@zoe- z7n2>W=cgR3CrP;x*LrUK;hn@)e+TsU5m)^q=*ONQuKF#|KSNyg)?d9sT=hR9!LJin zz4c@75m$Xv%q#vwT=mwEeMwyP6QTcxxazGR`-!;fpN9T7;;OfPtbAiRkYN44t*2Ke zuKGGCuUf>_{{2{2Ih45St>0@vT=myted8G7s<(cx4RO`my5tGORd4-X7vida6b+*% zan)PD*Uxe5_s#~l_VNkpVS&>(#QMX9PTvsv%N(BszR2-~;CDIx0QhT;+xN*obNn~x ze{#GQ+DoOQCGiq0T@AqNI^G@pIO5uV+lI4c{CC{?pEHST`?c?>k96GjcbMV$lZf|f zaO)qs)Ql0|?DT7)zr*o!Fi*aZ>}Y*xk9qau#I-(H|FDL*>c58mW#X#0`OHS*sy`Cf zLGKb*z4Z^DId1*Hx5U-X7})uqxZ1IP;CJGx-wOTzh^yY(U6o_xK!UaF##lGWA+CCB zcZU&I`xBu*lDO)v-8Chy`q!XuNnG{T?v8id+TAJORzH8PEGJ3m;rIvO1&)6YKGX4R z)Q2UGw*kM~aeJP@p3}1Nt4nkz@iytTU0D792;A!J(gyK_uSu`%VkqL>?f7rt_B@}J z*TI;_{^RUhy{+0L#$)>R&{rp}`ET{ME^#fdzo9>hxazImHh0|W?Fq!yPH&70ClgmY zR&RR}SN*fl=Mz`G)!TE3tG+_6{F5-4xazImUPxT^{d47?gks{Vw|aXqan;|QEB_?S zB(8d^w{so0dV4jv)!Q4ggPFuq$EScl?D#d{Z#upb+@AL}`|pAOR`jOCIOI-E#eEQ9fzY04m!K;c^ z{k#r-KJK{9%k6nJ%OBfk=51&HX4wC)<9CDq?6~=J;IT0wW?%Oz)zHlGbHV#MZtG^l zh->~#4OV1)Ca(Eo&+}hNT=mnSznQq|e?+{ii0e2NF52Yf1;?+isvjm2uY&8L=JVgk z=gp4Wy!jKy?R!f09Fo~-k9o}ZPH*$4-yC0fjCv!Xd3-TDx#%COIKCRZmgD`K#`6yc z*KE;zcttZ$LNn59dwDF-MB)VEnh(oh=VWK+D%ct5xIOoAz2he$pYL+~6xdl!T+s~p z^9phGzYzL&9G?jOiQ_xL_c&e`{#0lYBeMKC7QBw*J;7T$UJBmP@ru==-Ok`D+bw_D z%_8sT_(1SMj+cTLI=&0M7~K4SwQ96K-SHp5uOU0y|394@^~)W%@7t_&yaelw&ysy@ zcQ!7(?D!p7(f%7`XSbmCsQ3SId?Lzeo8vEnf9v=>9RK9_yEy*S@v1GOKNaw**|J;y zX5#oL$A83e6UXNt7wxnL*ZkLfsD<>N>iA!w6OwtH<87cH?zr7o8tb^(zYN^`e--{L zaC|5DHO|f~_;Z`%Yr$7K{vG%Sj<P z*6=)W%^zzo>l|N${Mnj;?;@`L>`~(ykUq<2vy<(3c7-Uf0dD#E6ONB`{M6P_-@@5h z2S3|8{t+2li zsxN30?Hok>M?tqXjr>UBs=o#LhQw8G_t9DsSN(SA+Y(p3UB6pBvif!j7UsG-y(ZAyZtKsBh^w8| z9o34=--)XoTOU|XT=lP=sOm&w1##8e`oKfPRe#k=e;xICH`)I|?Cg<04OV}xJ~TWf^75!h z%2jXsoL3{R>ADR18sO$<;Q`Uk(T>|bJe?e03O~=xHwLVX@g{72!|pI=B^^))-i^cE9Wz4f;j z6IXp7=w}jF{UObxohyl}{TSIEjkxMRgZ?k#s<&~ZGQOZ_{o&zQ_&b2O>g_(}p~ThxRnXTXuKEU8uReyj z>iZ0le-fG#SABEnPjviv@b1Lb&JD2Bhq&6Y@$M|*s(%{#^N6e7#=9cos^3;1|0Ikd zu6i5qrVv+slR{O?=fqWS)$48;RUE%C3%~fv_i3gni z2Mhp@JALmOQU9FN+jDC#JN>h0k8e8tskqPkZU+5U((5>DzpwEXam}}v&_8@nT=V&? zVbRZ@o&6oSua`JJes1}B0Pfcu==fpvqpq&w=YcnO{0rnyJ8+vPY|@A%bR({Qu7{t! ziEDaoKjAZptNst@&jC08Z#_splrY9|`#$_cvZMChFjCMsV||=-_DQQOED79r-h4N9}Kd{nv@B{cmA^BXQN+_xe5{uKMmH^h3FS3vT{& zM}7Xq@hzx_e~}%v-zqDZNgRNAxAlATV814D)t5kDm$>@#JoHC_n?GCOPfOCPoyTD3 z1marH?fdp!h^zfSVZW!df6x)~p@ag*+k=mFJRkgG$A^Q@aeOTJ636e)4bdiUcl-tL z2ONJ5{29mp4Zhy-t>7OyUR*s9!jF#M4ql~0{M_>YIq;($-vWNBPju(Uf<@hb&2jTk9@?j5nGskPA-|p#nC-8xe zj{qO*xUDlxbNmD77dhS-{aC5vr-47^_<7(P93KPziQ_gd?{VD5(~2ji>WNPEUXF)} zT8^XnCh8H_F04BGy;hEQ0`KPdO7KCB+x`Z{j#o$jIoI));I}zG2>eOM=YqfK_*U>Q z9RCOWe~vdgBxX=;T=!eO8UWtL@j2j~9A5)|j^kf|k9R!l&=~J^j`st<-|=Gb*BrkI ze6!=PfbVhKo)52#bqh=H$#tSXM>;+d{CLN&2Jh?mGvGyz{{TMS@#=@gco#d~4t#~< z=YX$r{ATbs9JlAFKXrU7^uIV>xo-5Q+$ngK7i|~!g4cFD=kTa&>UbycQyiZFeum?Z zf)_ddIrwzPC)bPd&Uf6N=UfV|o>VH9fzK6K#7hWj; zBs@S|^|g)(II)Vj>W7bt{5j&PuY~sdDsk2KA072?5?6f>%mY6luKM0%qJArJ)&GNX z{F=DxUmqLwJBh3QZ`>F7mALAwkBj<0h^yY#VJdctpKEYtnt z^>vA>-qt-D6IcC7B~jmuxaw`)qdjre&zcnVClXh^t$TDQuKEU(qu$n^G+nB0 z{<0}ie;#qw+qy>)akc;S)TkdrT=ll@F@?D5cU>IyGl;9+);;DCSN-J1p^|lW4C2`d+yHx&3_=dRZZNB#tan;{ATmDJ-jkxM>Lp!aIr=P~}b(hNP z+5`1S`jx!!624ca`hP0Lrf0yI4=0^L!I^KR>qJCPu)xj;^-LO;F>1U#THXyy`Pokp!ljjJDYyQ-jA8_IX;-P**pGREvJ)rLn zZhqQx6a|jgX%g*UNOnT`!v4j?)&6|gpY8bD;0ql;dDaWq_f7kKnz&~?*6Zo%={{&vA zTY5g!MZ0e0_;KL99RC!2u;Vt4Ttr;^u`MyW#HEhovNf@QczMy5wVex$MO5zpajm59P+lh1gIUw+` zKSztRKc@ul`m_1NzTL~jyTUh#bARkh@zKa%5nl(-SSxA&{0z@8-oJ>?l@y-?=Xr1U zeCPIyD*1S93i9-SlKVU6N}bEtel8K`^--V8%WuK{WURKo z-}Rfz&ztOjP8qn%^LRW{;4VLMiqB^Y+~s*Z9v8UF|AG8NfxA49$IFQGxciB~U7d;3 zqA$_y$-rG59(Okk+~u21cj@SR;4aVO?)HJZ`~u`V2k!Db?(Q47%a@rMeTi-Z19y2I zpAHS&<(t3Z(y`d6z+Illr;`JB`DC+PI=UVqaF^%t>4Lyr{xjs41n%-YzFR5IM<%R^o9Fiywd=l{&0{Qk?ZKNS$k_b6xU$A4}G{zP(&t_J0xa z9GE9n#rgLuTZ;4j9RtKyqs~y`RF+~*VD_TqC2D8V9E1&YJ}vUMSimQ!|+)_ zol8;O;n+^D3f#4m{l6}7mtTwg$AP>2cUZ2^;cWk4Jnp_A@9LaHo$mv8bu!G4zC^dv z;!nbV58TzslqNAAyBfHw(+&9>aJFX>+LNt;|2_H=cv11q@G|1OZoU?r^L!j0x3TzY z_)}7c_1lTFeov`$5OtoDd`Gl%vN-#HiFgLA*B=D#wqw_Qx5N&Jb31kn{@?cGZvP9v z1bMf8i$nbj;txOO^M3?&E<|(<%XKI4E0J@1lCGiuJ@)eh3;oX-19$o5g}mnq+|_S^ ze4fBvp6BC=1n%-R7W+CS0(W_Ce=3P{`%^1$S7+K%U#EWHt`7I}pAOvRx4h%?Z3B0C z?*I1`=YIYRfx9|iukdvS2kz={KYw)KE+4+-=|Dv3+|maJRfe*7)Dg zAGpg8N4{9#E`JpHQtt z%K69rCdglkC?3oEOWdZubA)L#5 z9PNK6$h$g;Cz_*g9|i8}e1tmN#P5CI{ZjNf5`nuq@ooX5+kwDcowmpyhO<3a(4H&e zC(!@Nn2u+$?di|C>LD;f2N1VZPN9e+=G1ye@p8cx(7r zalT(-u6X|PzJ2eB&w_7*yVdGS^e<~hpWiR}lGtxNB3=eBeE$&CaqHvs_kEpT19$bg zKY1l^m#?$I=l=}c<#~L1S95>AYp2WKLOxaCF3rY%ddVgWyF3P$wR zHzYqA^W?0r6kp4+oyOT&Pnza91byXTE-UINS3e+Vhn7 zqa1hfmGFV$+u&p2oF`52xKqVnfWIMiSbx4a>#vYHb5LiUe-ls3^*5;R z`g0rl^G@KdKR4rX(>(3_mCO6&=lmA$3!C-x8D=T<?(+BVj=n^k z?emKQcX|Fng;jyO{BOs7eqG=$&-W3361dCfIqCD;19$nU=>PqJyZk@D`23;3U4AL@ zKLqab#m@Nr&w;xhrkf{=i+nz%8H88@S8!xTaX(F25D|Qh~cXk83Ig?($pG`wdOiz+Ill zHT45``Ej{?zDeLN&*Pf5fxG;y56{=Kq3|6JfM&)3O^1n%;WSMd1} zfxA54hcYp6mmgix=cfhk@_Zl4yue-l&&Pd!QQ$7m_o1v7=lf7L2JY%~!Uw-@3Eb7; z`%rcV?(z>e@{jvv;4Z(~bL?o~E^LVzkvrzBsgkN0zuAByMGtCAm%{g{6xUp?skS^OV(F7dN1d_GU$u6_dQ z7Y^L@^YN#Bz6{*`V$o$M31>rZ|T&!E6v{gbHw zs?;xr{&_>ZA^ctOXW<*fhr_pv&xU^~z7T#~{1~2heiOd{zb^hK{H_ksLPj_C+rRL8 z#M2G-xkBO@T6r%4=lI5>pQ{A!`t#K`etc_-Ki1ZJ1F8Qg>h}!tZXAcB{=mS)^rCLT{ZF^^ z{c|C3*AFE#`}%(d?(zx9{|o2%w(jQh_jL5%>0jaJ`|zFZ>5uva19$bmMg0=ub=&)P zmJQssb1mvr4&2q*k92FTzx}r!m4bgLUJbq%?)uq1?p{3ZVeyOb zqj0u|^-qek{spO%xufr&>yppXDVBK4jPI<^{x2wgu9we0BK~zB?~lXXa=G=9+tr$Z zyX7s5_SBO)*HFK+c-G#&{!8K|;G@KA!l#J0gU=Q33STbX1k1HSyes@O@xJh{#9x5_ zAU+cQhxo+)etB=f|63n1Z_{Ev(i7lW0>2QIID~%A4!7COH-K*u?+fSr^{wVyKcu#nmF8=pi|0G2JI-)&U0(b2h86SO#ZV!vEk5A-SymB)$LlU$4F0@0kC(>Slc#jC@=6CVM;Bwnz-uX9tpDm-fse?R-J6TGPSD0ma`?eO;E zKfqrUPu9Rc-YoGP@YUk=;D^PB!T%P27oPXoq|3$kAyg8t+|cLhh_{4y5+4p9A$}VE zj(CnnzWxW|W#Ie8+rZC@zX`v)XVT>w*VzA@M|=*vjQEG}TH?HpwvG4^`Qk(2>%=F)cZx5B9}|BMenI@d>q>hkombD|x}|%>$H5DVZ-w(X zgZ=yyoW~jTjJR&*RjJb)K25wYe3|$J_2R{22UO@xS30#Ao7lo>YC4F4r}9F7b3YZ}*6J zE_gNZ7VsA0UEw{&U&i^8q2iO^bHrD`H;VH-(0=j1kv}Ki2(LT+CEgF7vR~5vSpvUb zoaYrPiI;8Xf4_xz6Znhbqv4~(m%*os^Y!kv;wjtv$K4_x2R|bI6#TmQOYk)PllH?q z@ND97czx|r@pAC`;?3X##QA#VRPhbSuNCL(iMz#bAb&=@Xh*+1e~8zFXLv5@^7e)o z7as|)F1`ldQ@lqfUw4%FEcjIMb@1ilhvA=ypMoD0zXCrke%CX;J%5R3f~Ozg@4qYh z=8iA&z~jVA!pn+Rf!7vq1aB+e0p4G{AN)1(VemQPQ{k(`_rbS`FX-%-^Goqf@Z;jU z;J=9{!|}<#;)~%K2PW;${MawgFJ2yAQoJd=vUnSKUGYNLKW;Cc9^1QK;sxM?#EZj6 zi_gaP;!W|?Sg%%#7lCgVuZR9RAl@1Ny*TH`8SzOk`ujQWBM$fo4IlAsFaF^%xke>za^2d??B5;@I^^ji&?(&N|`}*Gn?()2z?Ns0{ zzqgCe{}#B*^Ln|ffxG;Su0DSwaF>5MOY|kWC40etcm3@0xqA3~>cA88Iejim;4a^> zr_W~(+~p?}^7(v$yZne=K3^zsmw&pT&zBC|%d*U_hg^{E^wFU^?s)Ucln2=`TTEzyF9PEyBfI5k3jxL;4aVW z?vi2q$NArRhOeJGaF^$GcUb~=^@qLT^VtJ;d0ux{0Pa!=(ZAstqA$^{xa4`=UD+U? zEXrMXHnbD=X*5Nu zHyHO_;_Uwu;_1fu<@znCpEys@pEm+`{W%qndoysCk7e_9QoiiJa~#hjpAOD`tBmb% z0r8D!PqCnms~?a0l>&F|nLOY3a}DvP3%u72JaL|&PP4#Woqh{_zAc>Xdd-%w}U7bw#MPH)Zguq>$Sb}fQR5;r+5$#zkz68EYeBT?cSoHZ7 z;wRy!;2f`Vc-(X1t>KrY4(tCV&iW|_`^RVfVW^WH&gHs=aW5*){;w{ccD%1!Kd7HL zPtc!j19$zo7?0akeDEUQ&piWAoF}L=FmPArcjSk_+5Qr{Vb!Gg2&2 zE#`~&fG-Z*)rrgQ>#q#l)mec2S~%NN6YV)5-VT0Rd@cOE_%?X#7614g$0K;$wBmok z?}4*Dtbd<4>*tp`xtI8HDI)n=824J@?EjA9uOr_hsPFo-Bl>et;I2QPz~jCexXULX zKPGUOKaBhYIG1-Po=296zmN8;4(cS%6V%@lxT~Lbsqcqf>dUNI}a=YNE=o&7MrzXW+#XE^Ho5xA=}26gy%Y&ai2fhQjlg`%5tS7$Biqz~NH`5F1l zaJJ`lw5ODK0=$-ZkJ(YN=+;Pl6udK>?acm;?}y&vkHepnI;{V)IO~s*Ivr7GlH~uw zxUUjt|L+t}F~Kj_mqGo+d4m4@F>u$Pqwu)DiuYUYm-k%Yu1;J|U;ldGuFg-$--2^o zuA@IwzUqIEqWNVN&9C4ytw#kcrEeI;qApw!(S0ki`QXhh(7{fDgGRM zr}$6sAI1NM{~?}pQY`V7afJWQ`A`C0P`p08j`$FGC-K?vm&I4Zr-~nduNJ=q-yxnA z+mqAcmEp-oCS9(P@CU>Lj1$?^qdlSZAX+>wFftt5XDZz7?+sKP%oCep~z*cov*5x+|*f>JNq& z6dw<-D83KgQ2aRj8S!b;eLuV?eg!^WJQwzp7l;>uuNSWj-!0x0{)2c=_+|0sc-=<7ThxU0kEtt_4^dvs@Xs}ARK{j%131IhC|NOQ?ASmN`Y z#1|)ce>SM&_P6_E!~KHzTKGh%a}#xDikDsF>#q>c58ofSo9iuo_ry*F?w((U!7m5y zw)3o?3FrS^%=v+Y=u31f8Mv#1)4cz^Kc4x+2`(M|eSjeE>Re248jJM}+|?O^_6!Z& zFD(XIQRcAqu-`Wz6tV60#6bB{&3V^AGoXkHS!-z{kYujQKQdG7Vii@V$}IT z@(IYF5kCmO61bbsJ3sLa{Zs1yjdmu-el+{JJmz60@lo)H#0xD=T&!3n@v87<;_cvl z#23I{5O1)|*B>p;{3LPa=ZddG{pI3E;2Xqmz&{huh4y?UUKxH$ob5Ra=X{G{JN&13 zJUlkeFE_{KY1GdyJ{JCn_($*>;=jS$iWh&|Ki)v`f$;I-o8XJY@4$KfgzYc-tiuai#v z6L@xbx+vz_GY0LsU-IjaFC#u-k*{An@U#)(<=$A+z} z;0aNE-rf(~J?=5&_ld{e^}lg4@PvrsJjX5t?&{=2KJ_FYV1L$u-ye8F6p8n-Skb^; zonFX4DLx(EGVp{b-!b~@fPrf;)CEHiBE;^6JG{D8F)g} z#CY_>rNCW3e1UvwyiUe`I04TseidF=yyI`Z^`VJALH+N%2CPy+1Af8oZbI(ocMTnD||Ioo$AAd-zg#y6D%hME^Rb_jT3< zdAGmX(R1u$$yY)C3(5CD{-ESPDB$n-QSx~CF!rnDYi08JYm$#c{hN~Kb>?Z`@Bue2 zuKg$z%L3=}^1AUnlFy3zg(d%E9)Cv#abB-pQ|hEaoeq+3hJNcW{wo^#s?-_o79_fj zk$lQ*-e*WYO>*z^B)=2q>))099M?(FZN21Ar1Ji$o-zxd(sJ~D0?U6q%`GGj^ za7FTn$NrK0P~=nNJdYbM*Pj^1SR9<=wF3F#lFx_-C@1+1$UiB0O!HV<$!|mcS;?at zVgn?94zI5clYD8kXO85*#`a;EK?N4giz@ok3u{gQtY>-)o!zl1#h-aG3zM81mTdE8W6 z>UTo^DarHollGGT6YEPa$$#k`74>dkC1#v&$026FNpTcmVA5EPmuhtS$v_@ zlK%?zKa~8}sr?JMahrD^I$E>=SKS*OTKg=U#Feq z%OKxP@<*^e87TQDkRKxX!PxMPlRQ4wH#S}J7qFkOQ1U!qwp{XC(LWm`KN0QOD*1}o zuM^ zN9?!8#l5Za8@2DgB-;r-B`B9kv9VGu4+TTO+@8$A^UXc8g$PbnL2&^v? zBtHiEnUc?g`Ljs!?;*cJ@|n>;A4z@#@&_ef1lxxnCI2V-=U2(!b}!OIw`-E`hx#`q zzbw1Yr=9D+yOUyFB!4g3KV0%C6PqOYqR7vZ{8r3|C6dS6YGbP;{{{Aw zH%b00)c;!YNAUc9Lh}95&@+->RnXt@hvZ*I{PJPKZ$(2wn}V0o8G9&fLVt&w~_>_2Rld>yoBhvc)N{f8u<3i-2=&z0LR z?+wX!LO#=ce?P}J8JQ1eEq*AUlQ{n*#dt*=fgu--i&Y;bK}eN1vw;N z2Kk31-x&2Dk$f@q&*PHsf%aF|d_Ld4CX(-n`mH5j5&7Ge+_? zk)I*?LCDXOd^6w$T{_mo`f4-4CkJo;Zd|&MUoRj=i)W0tI zYdAi-YoUJ}&WAb3r-O6;oJISyOa68L>#;b=r;YP>6qh`o@5)L39z5=olFx+ktuOf^ zSYKL6eh~7{NWL-lm-Hd^xBeomHrW3*?kPdb#>Nl7Cmw0~fB>98L_mq5b%&V6qe-!!Q zl5d+UmUx>a`IE@cl6*;w*AmI^POK80$CmtswEm7wl0S<4XOeG${fDn4e+KP2D)}|& z&tD{e8TpHn-;4VHO8zh8Q!I)l-Z&rL#r|q$IOk8|lTwt-CHZ~We=8*UG}sR>DfwRu z`^T#+`Ao>yl>Bbju;|uI@;Q)iEBW(x`~0(#Pw*TYAo+bo{2jw2e-QcCB|iZD`G(}< z(4Ga7PgckmS}FO$$bTUD?Rebnk{<-$D|x;@l-GIP73Ey%H10pq?WE-AB-)=I&iQi+{h3qpXHY+%mwX50XG^{? z@(GgfkNj%M^Yz{jB|jed&m~_Q_4i9YEnd$*Ci#}gpOSnotEbe47;hj&_ny z!0VjdBwq#X87TSTs6RyVZBS>N z*e7{DUmTJAt2o~IS@Jx-J}Y@XFWiuPJo+K_wtsxihd0pw8Q`2h9g)9J^4;?I-_I}k zc+AgAlAnw9rB0A{4;k;v#GaA-V|ae)7vvM7Y)8}|B>DI8d_7ux7Pi~d#XrUVTY~sO zoEKXoz9X-1=w|WN*zWBXzn#+OzY%{6J4UC(fAR6yCGlF=4%`&q{;>arwD0)u9LHvO z-223DqkewzEoe_k@rKwRt}LDh`+;@En-=g7@U(bl?1yv_pM~~3C;kn_eW>^-Y)>YL z_jKu{-TlT|$#+Wa>l_eoi1p&K_<7`0VuzOfe+1j%T;kss^7S7R z--7-2YU0O}`FtDk%h<0NDBj1%V-v)S#`!x=i?7G}c=x;hezw0n>gN}~jO}eD@p)J; z>Wa_6cB8ZS9n7oI;$^XYn<0K*LEpZW;vZwZ_*}d+`u_*_3K0Na+rq)#P?&pI3?Z==NImXKa2j! zyE5tW4njXXA^u=dpKBrB7~|Vlym>yKA1l5*jrV!t=P`daiJwLOr1)Aa*WcnzuzuaY zD(P~q!o000UL5nPrFca=@4qNM8QZt<;=Qr{E*77U`k#uI#`69s{yE0wU-6B2-8<*% zq{}r2>uD+RE9rc$k@zw!S8wstZo?Serig!xdAnM@sL$^cFNStr6u%JX^I7md1J}GO z(ZA0z-^z-&#Qd)&-l~YN(?+}^p5F(G|B3oj#W!Mk-xuGF?d><>`>|f%^`3uxwtocX zc~0?W=!Z(;C$N9wtNh>ldiXP@d*be&Ys%fY1JmOF<5&&;bC$+Cv{D`7Zc*is7@xyW;01hGVnw-{W>e z?jy<5KNatRpZ6JlSo~T1e8TYG#CziBYliejrv{0S--b9>%3$*-$(22cJqYo=lf0RtdEbU{BL|&f2~oU+XL2N{ck0Y z%~I?qan}D^9Gj)sU06X_pYtlcIOkPXagJjNaqLFL%8PUUS2Mh>IM>^!#Mz#9;+&s@ z#4}(3hKrYh&lP7sFA<-G{2IeQ6rYFucEk6G&qw~Zz}LY(#6i!=YM;m?V){Zqu_(N4bZ&gHENUm|(>O7Rzw|H$x9 z#fKxm&+xBz?$UR!()^88#|wx8Zs@^_GbS)BbdLcAjSZKB~b#h*idq2cd{&p>-N z7`{b(1M<5KKPb-Sy(rG*{ZqUN+JBeZ8I5l2PkLJM50KAl`2FHs-XeyV7T<>Dt!#J= zaV~FXaV~E!aW2=3h7T3*fcA_te42P)?B|!oS0ewK z;S5r>Hplr;Iq?|5e5CTH@cJf0`QJTAatLUB%fyeZ;w30yfN~v4SzNQFnpXik5}I?e7^WQsQ<3v>%`whev9Ed#n&Q#$naz0 zw{Sf3r#R>TZSiavUtX`o?F>D0`lR!U^-GAeetB`$sb+Xx@rG#6Q--$_UxEJVW%xkx zUC0kLe2n-U^yf^&=ZW+9_8r6D6K8*ZDbD`ts!e7`uiKi`RSd{2mTeK}|NHF3^|+lHsQC+WQ6e8^&WF7fZN zK0ai4aq$btS1`P)IOkhian83c;`d{G`x`z;oa^r>!zYMydpO(hh2kyIo)w0#7k>`( zXNx%J!%p!V$R9NPsCatx|7pX|i|0Z9hT(U_t08}P#-#JA1N>fb&d&!8FDTCWS<3JV z;+&r~3~wOL`PtI&j^do3uZYKE+((J`f=?Cac5;q*1&r?!@eS~m;@m!bWca7z9N)d- z<1k)di*vkw6z917BF_H5Z1`W|?EjRRlFlD`2JvfXXJK*nXGw9cUzNq#pEbnUpG^#J zCC>irCeHcaSDgL%ia7golsNlysyO>+jyUJ%261jbw}`Xf_K5R&`H=X0%;z5s|3#eV zDK8uTmpGr_lj8yaK9AGy7U%iP?BaZW=k>F!!}F9yB~LFSo*wJn6Nc9m&xd?d!&{4U zf1|57_bd8{b3P9e=kvvIan9$7hR+n=i}o)x{2lT0$gem2V{txT>=NhtazLEhrDKNw zEY9`fg5iINbA8E#>&Q4yxW42N=eQIwoY&>CPJQ%GdC7CUs)%!YQqOQ+@5cJ2usv)q z`RC!?#D~M56K6laEWRK4(S}bF=l1F?!xxLQ|F?>>|96SA|Gzf;xcETy|1W{Nm-=uS zZ|q{=?xit~%b(&Lmt^-QeV(GH6X!hV`x@PNg^&B70$OLY&*f4dNWfE#e%nJ%%3= z=lb=7ILGU>IQ##S;WxzD|H-o^omcd`#W^lH4bLmi{;w<^!+F*k;<@2X3~wdQ^V!`D z?cy_tkNJZp3-Mg_39c-x1G%`s)q&&iVGYIOk8w`;u-SI8QQ&v;M>4`7y6biC2JE z5@-GD;scOxBwhgh@U-|N@B!k*QD?9?+cQy|?U^ag_IxPL{@g0g{@g3h`d^Flx}2X3 z|5f~TEY}so{}$hZdtj>HTZ?o3 z>S}l&an9#);vC;;;vC=k;v8RoE++eV3i^MYf_#Tf{j(cZ#pYd^lwIF>!7;P8)t+oZFKdhTjqA z^>gX)h6t`l^ep0>Zx0y$kT~aCDRIuX3gVn6H4JYc&iT{QaDI*vmy7eKx8&*1i*r6q z5$AlEEzbF{M4aF`9p5y3k@&sH zuQq&xcvj@M8@@;UY2<$qXa8Ri-+})5%W(c(Uyd*9KZrNz(pkTtIIll0Wq1YgBWO=` z!|RK)Jw3(Qo&n?fFZb?a7MI z;bS{HqW|v~?*uPwcuDcD$X7DFy7;rmH#WSb_&Vgf7~WfaJ@SJLA1?kr@)Hf8DgFWS z35G8hzk&P?arXay@h-@JXZQ(m*1sjr`YG{wLLB%0sGrI39OBO-pWpDJ;%rYHaki(4 z_$#R2&hW0{laTLk_#ko4hf(4j#|h$>QGb@<3&gp+o5Z=i+r=lN{+EV-BhL4eoD^sK z&xo@~l zF7aF9I67b8e~hKd`~UCvh`)<`F2nPQuSWh6!^?@EMZTKhb;Zvi-@@?r;^&d?Y4`x~ z3&>9vXMfHTUx)l6!`~HW{V&8>|10t3sDIq>Q{r6S3x@w8&i34!&p*&z(Kk0w_TX`I zi~j&GC%zH>g!m449mAW5pGLl|;a$XkMZTZmFNt&hOc!TAyd{1K_1`vpjrbMhKQ{a` z@mt6rF#KEb+sL0X{H*vL>MKW_Lban`>TcrrJ1Zs#SsrF_VLcV(RygJ(88 zr+7xZzpkL+kBDbNzM|pP#HSI ze5W|yUwYW^@5LLSe||OmqWB=>ZyKJWVAA=(zw?;U@a*F3&qu}CpOwX*ME}$=yoosb zv#sG>#BZQ}KXJ~(m&DosBMl!fUK9QKhT;62ORit+|K*aWuN8kC^*0;-xj6g(Cvo=w zuj1^_tA_t0egOTMvQW}_azEOcL7e@W!|*t9&gWu=mlb~+k6Xp?TH@^IriQl`Xa9FI zystR>f1Eh`f13C<^yhrTmx+Id{93~|igUa^7w35G6EBYb{MPWF#Q8q?-wnSa&iQcD z@DzoU&MWq3oH+Zluy}X$Pg%n&i9d&YEyEj$vp-vlvp=5^=koS3`~`8&=MjdF6X$%M zY4|*G_UA@%_UAV7LFk|Th942<=T@9B{5Ns-=T&j`=Re}?&y)`*ohS4R;_T0y;yp3X z^NO=Siy2;4oc-BYoZHow;#}W5i?f}*#QAr|UleEihl&rxa=j@&HLdTjMdC}~s|^1@ zd?WIo8vcbiw^v__b31cfoa6Y5IG6W=IL9kZk)-n>0sW9k{6qNth8GY|f%pHHH2g8~ zl*l(1XM5U;^Yb#g8_vIj!Tkq*@bO^D(?^Q4JqhA$&vNk{>3l!FZ}?{M8_4f6{D3&y zb6$KO>RcDU2)|=^>Y_=<{a@s>7@kXH{vX4W6;C=JZX%z-@ND8) z(Es@jFDhOd`ErIoA>I!8`i3_bpNf13!@G-fyhe+2ye5fryyh65AkOt=rQz?3vpt8z z*`8zKY|m-K&x^Bux<_Q(v7OH%&iW4+{*ZVr^nXdi9}|BX`6mspC(i9j3&Y!sb9sk| z=f^yMO?(x6n&EGX??8U3;j6?s|2G-FUAzMNXTRY`#JRjz#5slpJw-1fQJE7lNit}^NJB#!41bT_Tf;wZw zv!H(_i}U&SO~V(7bG&wnvwyx6XaAfPXa1@<^BGG1-}t(w^K;*_iD$jr=kgl zA2qzPczxtsiL*VO#N(0gZTR!zHIW}?_*ikaXPG$Lvs%17>TfiBn>gFE-|!>iY|que z-G169n1}y}Z-=KU^?&2*^7MPeQ>XB`T!!ZpPlNmu;%rY%@dId26T@4HA49&o;r+z< zxfz2EA1TiECy0NJ$6YSY_P=lVW^uOvm^kbIEYAF`z}@=T81pJ+>Hix?=ls0F%!cO_ zZF!7t84DcMxa$yNkEOat$ziusG|_5oi4b@gb4gXsF zE98GP{1LA4CB6vx zW`?&BPlfGIH^cjibH0ri=X{$k&iS@Lob&B%agNt|agNu=;%v{i;%v`P;$yLWIBWP- zac+NZ8J_adr1Ru0)X!{qPVx7UFJO2v@h^}sZ+I1P_J2Kb_J1>RuJ0Yhxn6e{{}k){ z0K*51UqXJ2;giL)V10bk@I~U>o~$zb195(y={Cc6i$9O{95(!W@#)C_YWPL*MachS zc(QUy=NmtVG=t&U#JT;9GrX`k*T=HrTpufmb9-1zoZG`j;(WeqZTK_d+#dEZ`~~qT z*d7iy{B?0|KW7*|SNuKHf7|di;@=|wvEiSI|BC#VhJPdeC-OfV{<}E0|JMz_DV`J0 z7ir2Torm;H;@mzL73cQ3jQEGxzEv^2mN>VEO$~1?ejfF^8s0~o+s~K9x&0g=&i%uQ z;@p1D6#oF*!-a;wBhKyZdc!{!KZg3d3_l=#2Ki%#|15qtwpZs3zb>8=`PgGJf8c4v zxjnzv@Z920qD~>hONci`zM|pP#K$7v!0@NUxxMXV__N~N-aaqR?d=fp>uAqd!>5RI zKlUxd7mH`a_GGo;8^pQ&-){IGaXv2`G5iN{K3|+M{IWRrxBoRfd4;6&kk2po7=E8P zpI`DBUPPSFFOM2tS)9)obqsGJ&gYA^hIbL?^F=?yUlQl@#Yn@)i}QKm4a4V)^Z8<< zIG-=JiF5nBU!2?LBjVgXpA_fz`Hc80Sii0tep8&=htw65&MSIGac&=S8JT;dRARV10ke@OI){-+LI|U!3!Qh~ck^bN){;e6~2}|6;>eh;zQ}66bt7 zAkO)AT%7amlsJ#4E{b!${VC4zP4;-w`NQ!|C(i!APn_G;2gSKPEMj1oh;7reM_9 z&ga=K;vC;$;{5whW5rM5_;I#4+rLn}Bii$+cu5>be<5BPe%SEu#mgf9o8gzl%OU@- z;mMy!I=+t~pV9E_;uVn3Z+KDh%E*^Dyoz{Do*neiu&yg?<)RKCg1MSE6&f`%4+!i;?2>XB8Hb1 ze-`=5hSw11=XNzSyp8xQ)bD0^U-1RV4>9~T@pZ^gF?_c8hsZB8e6{#KrDQHaw^J5abJpkAxQ!=k~U|;Z?+c z#QIpz@MhwiKYhhHe_j-?gXg=EhL0EL{CPv1^Jl&|=g+(1oImTtIe)f@bN=iU{}}V? zpg8BxQSsk%`|7+QifL$ zAA)=h!yAZCLB6Ho9mPxJ_3i0x`19gVAwSIUvErQ1OT;;!SBi5!e`NTl;+)TW#W|n9 z7Uz8aNu2ZfS8>kgtKyu`|A=!wr>yS#^{(h!vgjY@a|ZD{nEyEpj}w0-tFK$s@G|0? zk$=MQn&JnrU2S4`EAbzY?_zjw@q*Z{zGV0?@uJ9&H+;HyOXTMpzD&Fa@@oy>D9-KA z=i=P{>=Wnq=R3nsh_A!;=d9sZ#kV4V%kY#nlFq{)kk4dz4smYx@*7@MoZG|lhF1|U zj_qe%!<&jfj(j`AyNb6$zQ5sv#JeLu%J2!|E0LdN_yX}w$iHj&I`J%d{P=xh_zv+n zQf7|di;y)w5$?)yswKMzi{?hPo#M>c%((p6lBay#m z_`l){kWXDF={%%o6n`K2T!!Zp{}K7(hCeF)C-PMduOprnuSYdEysdaq%%V_K0=(Y4^J}u z4e^d>PlDmg#rgX1`-X28=Xt|jh93~0i1r*a{Acmm$e%a-y7*e;?--uCVbXc{0rFW4 z&n5mT@(&qaT>KXD6%4N`o*n1=>Koo%ya4hY4DT+^zau!n@WJBEQGc}Ilf?P=0_PZ> zAU*~4R~i0+_)O$KHT(2pE;=Eoc zkKu*HdHqir!ygyt^&T}1Zz$dr=Tll6{*3rD$oDb)1#zA~8gBUO;%}q=48!M&Z$kcU z!`F!OeA6bww~HS_{r!d?5kHOm3B!LA=lQ9thW{g;4Ch}`HBLGY>Gz1IMn0$EdBu7D ztGMBhikCzEc*ARp^ZZvc!`p~AME!1t_Z5Ez`IikJAb~Y9}wsHxMPO@EdDdBIgT)7;{%FG|iSvBo9K#dDC!qdH!`~NQi2PQ= zcZu`-;~~S3iGPIprwu|i7V-a~{sV?TBz^<=l7>Gf&hwj3 z8eUI4W1Mey3&Y!s$07f$;m?WleCQCvUlXs0`cn*_E#46M#fGmCZ-)E^!?%ccLw>j6 z2gRo#|AXPD#b+Xa$?zNEesoQ17uYP${p!!fx&Qo= zIL}A_D!vWvziRkD;yizvvU$?^K+hmvIg`)jG(4|3&z}}EysY>us2^{5ZE>CtZ6?n1 zm~F%lp?-J6`-$`X=3w!=Gy8rRDbDlzlg0m=KjNG}i^VyAR)}-{d}#Pq@#gpXcJ49! zkT}mz{UFZsO{c|EWcBqg8Gb|j9^{if<$sUcpAztN;$`9441YlU3FHfl*MXN59|Nys zcy;l2kZ&Z;^IT7hXUyi8v$Ns7#ET>UqBzeJ4Ha*X{CLBsi}U=^d~u%lStgzmum7(z ze3LlOzw8j_d5ZnweBZ%Q@hW)T`=oeIy#9G!{7LwA@%r#PhNo_kbRM=qK8yGWcrJ0i zK2}h?1YWm!M7%7#g5g!gpFqC8cn5fMalZc3QJk;;^bqIs%kzd05$EeOV-24o{y1Jw zm}~eF@p{OwG5kYuzCN>EoUg;|5$EeCM-2Z#oUfmpG5oSPUk~}$@Z?V?oo~0XycrG8 zF3#6O@)=%4oPUSDoH&o8pAhG9aUH{(h?l|fMLTgGw{{ih@nC<$2Z{4|;qQz8f&5m(cZqYq`jFwr#4})j`?TTb#kqfe!|*%e+<(s9()S;q ze~)6nF~2zXhaVBYj(j=sjM%@bD$f0%I^x{_X)ey~Rav_Yki}QN0JL0^K zD|M@+^Q0&0-)neo@hQj`6z6qWkBIa7tBT^BKh?xJe;SH&|G9-Y_ivvO=k-@T#d-bJ zi{jiL9xBfL$?=9y7w7)ueDM?5&s-*c8ot)>jp7%P|6H8cHSH5`b)O&a?+ia7&g)yw zimyhUtKy%*ZyTPfb<+99>s2y~|A{&|#nWc@zyFZo#l?A@$z$T&FO3%;fco_fZ!XU3 zNjix0I*{(-yHS6j;jf7E`j9c=$#VF9m@J+R{+8j3#UDq0wK%UE*&yB<`R#`95g&s5 z5%Kl#AH=u7&lrALoY!^yE6(dWlDA1Z-%{lCKi^~ced6~ZpI4m6DG!SmK)$TumBh;+ zUrU_FJB`G7{Ye{f9=~)JpNRT>4S!L57V;y+KZ1`FKMsGx@cH7Ya{2yWF3#&x){67` zlg);IF3#&iz7pqk9p8!1MSD&eepY-L@_&f)x{F)lJdR7-Ht9U1XBO|0+vn~#ynuLL z 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

V)WuKsKc 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 G1^$19{YT^g diff --git a/src/build/temp.linux-x86_64-2.7/variable.o b/src/build/temp.linux-x86_64-2.7/variable.o deleted file mode 100644 index 4fb602319c5d361fc7b83376602e494d20cf149b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1862528 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%0Aw)}fl}tEqi8ZTJ7H`2BC^ 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 wz%jT=plX~O*jE(gT@B6q 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∋;|J+NxagKo#A?lVK} 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 z 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%0DJV$}s`j!yq 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�Uz^moC@OpV3yjh+PZ_`&Ys}eihu~SHnGi4cz0` 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 z z$$_s|ow@K-VUjlwo-NOZ_mxk8d%vj&-mLgyc-F6y_bq|v$xGq&@-q16@=Cbtse-$n zYPjpEfxDhsxa+BdyPih4>uG|!o@Th~X@R>QFZ6gkIDb0bd7L;m)52pD{Mc zn-70NUI2euUI^bQFNQmR3EcTh;m%(Mcm7Ja_iL))-j}R~d%vRwzT%Rk9ctm;&#Hra zKdT<@{j3JK*OMFJ-p^`+dq1Ta?)B{!xc9SCM|U14Zl5&V?UMy}`((r2J~?o=PcGc; zlLvSE8dV0q*uGg1dc6;p5crWpE#FIo$ax;NHKehI>Dy2JZcfTDbGq z!JWSm?)*(~=Wm8Pe+%6C+ZVRmhLF!c-d{*}?>w%&-kt^bdV4n9>;HLh=g)^be*xV2 z3*pXR40rw#xc5g&;m%(Mcm7Ja^H;&0zZ&lRHE`#zhbOI`N;SZ}pV-*JJMJ$u!L?kG zY7V>wK2C3ZE!KHl&zmQGKOQ>1Z;k>ozouVpmwb4h{;ZE*du%4YSYD!M=PB2p{haZR z@4Hg3JHB3ju7ek326o#+e?8&*_m#IKFCX?=`B{2){w&Q0ye@6`{KxCb_HupSZ$h4O zoyWaSdpKU7&;A)`d)RAr&|c59Hy@kCl_9=Z`wP__Jd?uXVN(Zh|M7=Oo+GqAld;Ty Sd0G#g0QdjTVl~|V&h-Bc_qV+O diff --git a/src/build/temp.linux-x86_64-2.7/version.o b/src/build/temp.linux-x86_64-2.7/version.o deleted file mode 100644 index 2b2642655b68b6cc8b04d9aec3cb0182475eb705..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38984 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

Wn(3Bl)xVJVuM{n%# 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 q*; /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__irpf90_t -#define __PYX_HAVE_API__irpf90_t -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "irpf90_t.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases); /*proto*/ - -static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, - PyObject *modname); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'irpf90_t' */ -#define __Pyx_MODULE_NAME "irpf90_t" -int __pyx_module_is_main_irpf90_t = 0; - -/* Implementation of 'irpf90_t' */ -static PyObject *__pyx_builtin_object; -static PyObject *__pyx_builtin_property; -static PyObject *__pyx_builtin_filter; -static char __pyx_k_1[] = "%20s:%5d : %s"; -static char __pyx_k_2[] = ".irp.f"; -static char __pyx_k_4[] = "."; -static char __pyx_k_6[] = "IRPF90_temp/"; -static char __pyx_k_7[] = "IRPF90_man/"; -static char __pyx_k__i[] = "i"; -static char __pyx_k__Do[] = "Do"; -static char __pyx_k__If[] = "If"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__Doc[] = "Doc"; -static char __pyx_k__End[] = "End"; -static char __pyx_k__Use[] = "Use"; -static char __pyx_k__str[] = "str"; -static char __pyx_k__Call[] = "Call"; -static char __pyx_k__Case[] = "Case"; -static char __pyx_k__Else[] = "Else"; -static char __pyx_k__Free[] = "Free"; -static char __pyx_k__Line[] = "Line"; -static char __pyx_k__fget[] = "fget"; -static char __pyx_k__fset[] = "fset"; -static char __pyx_k__self[] = "self"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__zlib[] = "zlib"; -static char __pyx_k__Enddo[] = "Enddo"; -static char __pyx_k__Endif[] = "Endif"; -static char __pyx_k__NoDep[] = "NoDep"; -static char __pyx_k__Subst[] = "Subst"; -static char __pyx_k__Touch[] = "Touch"; -static char __pyx_k___text[] = "_text"; -static char __pyx_k__crc32[] = "crc32"; -static char __pyx_k__lower[] = "lower"; -static char __pyx_k__value[] = "value"; -static char __pyx_k__Assert[] = "Assert"; -static char __pyx_k__Elseif[] = "Elseif"; -static char __pyx_k__Irp_If[] = "Irp_If"; -static char __pyx_k__Openmp[] = "Openmp"; -static char __pyx_k__Return[] = "Return"; -static char __pyx_k__Select[] = "Select"; -static char __pyx_k___lower[] = "_lower"; -static char __pyx_k__filter[] = "filter"; -static char __pyx_k__getcwd[] = "getcwd"; -static char __pyx_k__irp_id[] = "irp_id"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__mandir[] = "mandir"; -static char __pyx_k__object[] = "object"; -static char __pyx_k__End_doc[] = "End_doc"; -static char __pyx_k__Include[] = "Include"; -static char __pyx_k__Program[] = "Program"; -static char __pyx_k__Provide[] = "Provide"; -static char __pyx_k__listdir[] = "listdir"; -static char __pyx_k__Continue[] = "Continue"; -static char __pyx_k__Function[] = "Function"; -static char __pyx_k__Implicit[] = "Implicit"; -static char __pyx_k__Irp_Else[] = "Irp_Else"; -static char __pyx_k__Irp_read[] = "Irp_read"; -static char __pyx_k__Provider[] = "Provider"; -static char __pyx_k____init__[] = "__init__"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____repr__[] = "__repr__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__endswith[] = "endswith"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__get_text[] = "get_text"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__property[] = "property"; -static char __pyx_k__set_text[] = "set_text"; -static char __pyx_k__Begin_doc[] = "Begin_doc"; -static char __pyx_k__Directive[] = "Directive"; -static char __pyx_k__End_shell[] = "End_shell"; -static char __pyx_k__Irp_Endif[] = "Irp_Endif"; -static char __pyx_k__Irp_write[] = "Irp_write"; -static char __pyx_k__SoftTouch[] = "SoftTouch"; -static char __pyx_k__get_lower[] = "get_lower"; -static char __pyx_k__Empty_line[] = "Empty_line"; -static char __pyx_k__End_select[] = "End_select"; -static char __pyx_k__Subroutine[] = "Subroutine"; -static char __pyx_k__startswith[] = "startswith"; -static char __pyx_k__Begin_shell[] = "Begin_shell"; -static char __pyx_k__Declaration[] = "Declaration"; -static char __pyx_k__Provide_all[] = "Provide_all"; -static char __pyx_k__Simple_line[] = "Simple_line"; -static char __pyx_k__End_provider[] = "End_provider"; -static char __pyx_k__End_template[] = "End_template"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__irpf90_files[] = "irpf90_files"; -static char __pyx_k__Cont_provider[] = "Cont_provider"; -static char __pyx_k__Begin_provider[] = "Begin_provider"; -static char __pyx_k__Begin_template[] = "Begin_template"; -static char __pyx_k__create_irpf90_files[] = "create_irpf90_files"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_n_s__Assert; -static PyObject *__pyx_n_s__Begin_doc; -static PyObject *__pyx_n_s__Begin_provider; -static PyObject *__pyx_n_s__Begin_shell; -static PyObject *__pyx_n_s__Begin_template; -static PyObject *__pyx_n_s__Call; -static PyObject *__pyx_n_s__Case; -static PyObject *__pyx_n_s__Cont_provider; -static PyObject *__pyx_n_s__Continue; -static PyObject *__pyx_n_s__Declaration; -static PyObject *__pyx_n_s__Directive; -static PyObject *__pyx_n_s__Do; -static PyObject *__pyx_n_s__Doc; -static PyObject *__pyx_n_s__Else; -static PyObject *__pyx_n_s__Elseif; -static PyObject *__pyx_n_s__Empty_line; -static PyObject *__pyx_n_s__End; -static PyObject *__pyx_n_s__End_doc; -static PyObject *__pyx_n_s__End_provider; -static PyObject *__pyx_n_s__End_select; -static PyObject *__pyx_n_s__End_shell; -static PyObject *__pyx_n_s__End_template; -static PyObject *__pyx_n_s__Enddo; -static PyObject *__pyx_n_s__Endif; -static PyObject *__pyx_n_s__Free; -static PyObject *__pyx_n_s__Function; -static PyObject *__pyx_n_s__If; -static PyObject *__pyx_n_s__Implicit; -static PyObject *__pyx_n_s__Include; -static PyObject *__pyx_n_s__Irp_Else; -static PyObject *__pyx_n_s__Irp_Endif; -static PyObject *__pyx_n_s__Irp_If; -static PyObject *__pyx_n_s__Irp_read; -static PyObject *__pyx_n_s__Irp_write; -static PyObject *__pyx_n_s__Line; -static PyObject *__pyx_n_s__NoDep; -static PyObject *__pyx_n_s__Openmp; -static PyObject *__pyx_n_s__Program; -static PyObject *__pyx_n_s__Provide; -static PyObject *__pyx_n_s__Provide_all; -static PyObject *__pyx_n_s__Provider; -static PyObject *__pyx_n_s__Return; -static PyObject *__pyx_n_s__Select; -static PyObject *__pyx_n_s__Simple_line; -static PyObject *__pyx_n_s__SoftTouch; -static PyObject *__pyx_n_s__Subroutine; -static PyObject *__pyx_n_s__Subst; -static PyObject *__pyx_n_s__Touch; -static PyObject *__pyx_n_s__Use; -static PyObject *__pyx_n_s____init__; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____repr__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s___lower; -static PyObject *__pyx_n_s___text; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__crc32; -static PyObject *__pyx_n_s__create_irpf90_files; -static PyObject *__pyx_n_s__endswith; -static PyObject *__pyx_n_s__fget; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__filter; -static PyObject *__pyx_n_s__fset; -static PyObject *__pyx_n_s__get_lower; -static PyObject *__pyx_n_s__get_text; -static PyObject *__pyx_n_s__getcwd; -static PyObject *__pyx_n_s__i; -static PyObject *__pyx_n_s__irp_id; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_files; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__listdir; -static PyObject *__pyx_n_s__lower; -static PyObject *__pyx_n_s__mandir; -static PyObject *__pyx_n_s__object; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__property; -static PyObject *__pyx_n_s__self; -static PyObject *__pyx_n_s__set_text; -static PyObject *__pyx_n_s__startswith; -static PyObject *__pyx_n_s__str; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__value; -static PyObject *__pyx_n_s__zlib; -static PyObject *__pyx_k_tuple_3; -static PyObject *__pyx_k_tuple_5; - -/* "irpf90_t.py":36 - * - * class Line(object): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * self.i = i - * self._text = None - */ - -static PyObject *__pyx_pf_8irpf90_t_4Line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Line___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_4Line___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":37 - * class Line(object): - * def __init__(self,i,text,filename): - * self.i = i # <<<<<<<<<<<<<< - * self._text = None - * self.filename = filename - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__i, __pyx_v_i) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":38 - * def __init__(self,i,text,filename): - * self.i = i - * self._text = None # <<<<<<<<<<<<<< - * self.filename = filename - * self._lower = None - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___text, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":39 - * self.i = i - * self._text = None - * self.filename = filename # <<<<<<<<<<<<<< - * self._lower = None - * self.set_text(text) - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__filename, __pyx_v_filename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":40 - * self._text = None - * self.filename = filename - * self._lower = None # <<<<<<<<<<<<<< - * self.set_text(text) - * - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___lower, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":41 - * self.filename = filename - * self._lower = None - * self.set_text(text) # <<<<<<<<<<<<<< - * - * def get_text(self): - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__set_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":43 - * self.set_text(text) - * - * def get_text(self): # <<<<<<<<<<<<<< - * return self._text - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Line_1get_text(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Line_1get_text = {__Pyx_NAMESTR("get_text"), (PyCFunction)__pyx_pf_8irpf90_t_4Line_1get_text, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Line_1get_text(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_text"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":44 - * - * def get_text(self): - * return self._text # <<<<<<<<<<<<<< - * - * def set_text(self,value): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("irpf90_t.Line.get_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":46 - * return self._text - * - * def set_text(self,value): # <<<<<<<<<<<<<< - * self._text = value - * self._lower = value.lower() - */ - -static PyObject *__pyx_pf_8irpf90_t_4Line_2set_text(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Line_2set_text = {__Pyx_NAMESTR("set_text"), (PyCFunction)__pyx_pf_8irpf90_t_4Line_2set_text, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Line_2set_text(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_value = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__value,0}; - __Pyx_RefNannySetupContext("set_text"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__value); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("set_text", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "set_text") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_self = values[0]; - __pyx_v_value = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("set_text", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Line.set_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":47 - * - * def set_text(self,value): - * self._text = value # <<<<<<<<<<<<<< - * self._lower = value.lower() - * - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___text, __pyx_v_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":48 - * def set_text(self,value): - * self._text = value - * self._lower = value.lower() # <<<<<<<<<<<<<< - * - * def get_lower(self): - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_value, __pyx_n_s__lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___lower, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("irpf90_t.Line.set_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":50 - * self._lower = value.lower() - * - * def get_lower(self): # <<<<<<<<<<<<<< - * return self._lower - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Line_3get_lower(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Line_3get_lower = {__Pyx_NAMESTR("get_lower"), (PyCFunction)__pyx_pf_8irpf90_t_4Line_3get_lower, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Line_3get_lower(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_lower"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":51 - * - * def get_lower(self): - * return self._lower # <<<<<<<<<<<<<< - * - * text = property(fget=get_text, fset=set_text) - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("irpf90_t.Line.get_lower", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":57 - * - * class Empty_line(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_10Empty_line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10Empty_line___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_10Empty_line___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10Empty_line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Empty_line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":58 - * class Empty_line(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Empty_line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":59 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_10Empty_line_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10Empty_line_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_10Empty_line_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10Empty_line_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":60 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Simple_line(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Empty_line)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Empty_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Empty_line)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Empty_line.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":63 - * - * class Simple_line(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_11Simple_line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Simple_line___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_11Simple_line___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Simple_line___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Simple_line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":64 - * class Simple_line(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Simple_line.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":65 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_11Simple_line_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Simple_line_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_11Simple_line_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Simple_line_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":66 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Declaration(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Simple_line)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Simple_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Simple_line)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Simple_line.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":69 - * - * class Declaration(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_11Declaration___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Declaration___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_11Declaration___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Declaration___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Declaration.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":70 - * class Declaration(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Declaration.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":71 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_11Declaration_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Declaration_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_11Declaration_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Declaration_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":72 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Continue(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Declaration)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Declaration)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Declaration)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Declaration.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":75 - * - * class Continue(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_8Continue___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Continue___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_8Continue___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Continue___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Continue.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":76 - * class Continue(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Continue",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Continue.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":77 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Continue",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_8Continue_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Continue_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_8Continue_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Continue_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":78 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Continue",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Begin_provider(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Continue)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Continue)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Continue)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Continue.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":82 - * class Begin_provider(Line): - * str = "Provider" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_14Begin_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_14Begin_provider___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_14Begin_provider___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_14Begin_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Begin_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":83 - * str = "Provider" - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":84 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_14Begin_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_14Begin_provider_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_14Begin_provider_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_14Begin_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":85 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Cont_provider(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Begin_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Begin_provider)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Begin_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_provider.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":88 - * - * class Cont_provider(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_13Cont_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_13Cont_provider___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_13Cont_provider___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_13Cont_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Cont_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":89 - * class Cont_provider(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Cont_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":90 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_13Cont_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_13Cont_provider_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_13Cont_provider_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_13Cont_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":91 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End_provider(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Cont_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Cont_provider)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Cont_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Cont_provider.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":94 - * - * class End_provider(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_12End_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_12End_provider___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_12End_provider___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_12End_provider___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":95 - * class End_provider(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_provider.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":96 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_12End_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_12End_provider_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_12End_provider_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_12End_provider_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":97 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Begin_doc(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End_provider)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End_provider)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_provider.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":100 - * - * class Begin_doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9Begin_doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Begin_doc___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9Begin_doc___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Begin_doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Begin_doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":101 - * class Begin_doc(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":102 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9Begin_doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Begin_doc_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9Begin_doc_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Begin_doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":103 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Doc(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Begin_doc)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Begin_doc)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Begin_doc)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_doc.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":106 - * - * class Doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_3Doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3Doc___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_3Doc___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3Doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":107 - * class Doc(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Doc",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":108 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Doc",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_3Doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3Doc_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_3Doc_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3Doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":109 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Doc",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End_doc(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Doc)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Doc)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Doc)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Doc.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":112 - * - * class End_doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_7End_doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7End_doc___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_7End_doc___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7End_doc___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End_doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":113 - * class End_doc(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_doc.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":114 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_7End_doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7End_doc_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_7End_doc_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7End_doc_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":115 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Begin_shell(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End_doc)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End_doc)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End_doc)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_doc.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":118 - * - * class Begin_shell(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_11Begin_shell___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Begin_shell___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_11Begin_shell___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Begin_shell___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Begin_shell.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":119 - * class Begin_shell(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_shell.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":120 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_11Begin_shell_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Begin_shell_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_11Begin_shell_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Begin_shell_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":121 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End_shell(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Begin_shell)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Begin_shell)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Begin_shell)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_shell.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":124 - * - * class End_shell(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9End_shell___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9End_shell___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9End_shell___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9End_shell___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End_shell.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":125 - * class End_shell(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_shell.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":126 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9End_shell_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9End_shell_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9End_shell_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9End_shell_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":127 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Begin_template(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End_shell)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End_shell)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End_shell)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_shell.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":130 - * - * class Begin_template(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_14Begin_template___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_14Begin_template___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_14Begin_template___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_14Begin_template___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Begin_template.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":131 - * class Begin_template(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_template.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":132 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_14Begin_template_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_14Begin_template_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_14Begin_template_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_14Begin_template_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":133 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End_template(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Begin_template)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Begin_template)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Begin_template)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Begin_template.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":136 - * - * class End_template(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_12End_template___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_12End_template___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_12End_template___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_12End_template___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End_template.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":137 - * class End_template(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End_template",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_template.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":138 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_template",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_12End_template_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_12End_template_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_12End_template_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_12End_template_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":139 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End_template",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Subst(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End_template)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End_template)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End_template)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_template.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":142 - * - * class Subst(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_5Subst___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Subst___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_5Subst___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Subst___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Subst.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":143 - * class Subst(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Subst",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Subst.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":144 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Subst",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_5Subst_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Subst_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_5Subst_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Subst_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":145 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Subst",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Assert(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Subst)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Subst)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Subst)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Subst.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":148 - * - * class Assert(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Assert___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Assert___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Assert___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Assert___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Assert.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":149 - * class Assert(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Assert",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Assert.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":150 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Assert",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Assert_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Assert_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Assert_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Assert_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":151 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Assert",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Touch(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Assert)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Assert)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Assert)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Assert.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":154 - * - * class Touch(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_5Touch___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Touch___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_5Touch___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Touch___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Touch.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":155 - * class Touch(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Touch",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Touch.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":156 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Touch",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_5Touch_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Touch_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_5Touch_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Touch_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":157 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Touch",self.i,self.text) # <<<<<<<<<<<<<< - * - * class SoftTouch(Touch): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Touch)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Touch)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Touch)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Touch.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":160 - * - * class SoftTouch(Touch): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9SoftTouch___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9SoftTouch___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9SoftTouch___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9SoftTouch___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.SoftTouch.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":161 - * class SoftTouch(Touch): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.SoftTouch.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":162 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9SoftTouch_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9SoftTouch_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9SoftTouch_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9SoftTouch_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":163 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Irp_read(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__SoftTouch)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__SoftTouch)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__SoftTouch)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.SoftTouch.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":166 - * - * class Irp_read(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_8Irp_read___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Irp_read___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_8Irp_read___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Irp_read___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Irp_read.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":167 - * class Irp_read(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_read.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":168 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_8Irp_read_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Irp_read_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_8Irp_read_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Irp_read_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":169 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Irp_write(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Irp_read)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Irp_read)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Irp_read)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_read.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":172 - * - * class Irp_write(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9Irp_write___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Irp_write___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9Irp_write___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Irp_write___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Irp_write.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":173 - * class Irp_write(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_write.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":174 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9Irp_write_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Irp_write_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9Irp_write_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Irp_write_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":175 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Irp_If(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Irp_write)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Irp_write)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Irp_write)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_write.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":178 - * - * class Irp_If(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Irp_If___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Irp_If___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Irp_If___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Irp_If___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Irp_If.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":179 - * class Irp_If(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_If.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":180 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Irp_If_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Irp_If_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Irp_If_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Irp_If_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":181 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Irp_Else(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Irp_If)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Irp_If)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Irp_If)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_If.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":184 - * - * class Irp_Else(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_8Irp_Else___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Irp_Else___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_8Irp_Else___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Irp_Else___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Irp_Else.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":185 - * class Irp_Else(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_Else.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":186 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_8Irp_Else_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Irp_Else_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_8Irp_Else_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Irp_Else_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":187 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Irp_Endif(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Irp_Else)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Irp_Else)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Irp_Else)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_Else.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":190 - * - * class Irp_Endif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9Irp_Endif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Irp_Endif___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9Irp_Endif___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Irp_Endif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Irp_Endif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":191 - * class Irp_Endif(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_Endif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":192 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9Irp_Endif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Irp_Endif_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9Irp_Endif_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Irp_Endif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":193 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Openmp(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Irp_Endif)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Irp_Endif)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Irp_Endif)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Irp_Endif.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":196 - * - * class Openmp(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Openmp___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Openmp___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Openmp___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Openmp___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Openmp.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":197 - * class Openmp(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Openmp.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":198 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Openmp_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Openmp_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Openmp_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Openmp_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":199 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Directive(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Openmp)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Openmp)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Openmp)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Openmp.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":202 - * - * class Directive(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_9Directive___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Directive___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_9Directive___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Directive___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Directive.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":203 - * class Directive(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Directive",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Directive.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":204 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Directive",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_9Directive_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_9Directive_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_9Directive_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_9Directive_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":205 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Directive",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Use(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Directive)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Directive)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Directive)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Directive.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":208 - * - * class Use(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_3Use___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3Use___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_3Use___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3Use___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Use.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":209 - * class Use(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Use",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Use.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":210 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Use",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_3Use_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3Use_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_3Use_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3Use_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":211 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Use",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Do(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Use)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Use)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Use)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Use.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":214 - * - * class Do(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_2Do___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_2Do___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_2Do___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_2Do___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Do.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":215 - * class Do(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Do",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 215; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Do.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":216 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Do",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_2Do_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_2Do_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_2Do_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_2Do_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":217 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Do",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Enddo (Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Do)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Do)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Do)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Do.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":220 - * - * class Enddo (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_5Enddo___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Enddo___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_5Enddo___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Enddo___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Enddo.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":221 - * class Enddo (Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Enddo.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":222 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_5Enddo_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Enddo_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_5Enddo_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Enddo_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":223 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) # <<<<<<<<<<<<<< - * - * class If(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Enddo)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Enddo)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Enddo)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Enddo.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":226 - * - * class If(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_2If___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_2If___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_2If___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_2If___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.If.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":227 - * class If(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("If",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.If.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":228 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("If",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_2If_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_2If_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_2If_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_2If_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":229 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("If",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Elseif(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__If)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__If)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__If)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.If.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":232 - * - * class Elseif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Elseif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Elseif___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Elseif___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Elseif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Elseif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":233 - * class Elseif(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Elseif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":234 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Elseif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Elseif_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Elseif_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Elseif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":235 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Else(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Elseif)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Elseif)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Elseif)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Elseif.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":238 - * - * class Else(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_4Else___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Else___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_4Else___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Else___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Else.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":239 - * class Else(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Else",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 239; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Else.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":240 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Else",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Else_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Else_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_4Else_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Else_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":241 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Else",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Endif(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Else)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Else)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Else)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Else.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":244 - * - * class Endif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_5Endif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Endif___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_5Endif___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Endif___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Endif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":245 - * class Endif(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Endif",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Endif.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":246 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Endif",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_5Endif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5Endif_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_5Endif_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5Endif_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":247 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Endif",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Select(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Endif)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Endif)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Endif)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Endif.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":250 - * - * class Select(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Select___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Select___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Select___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Select___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Select.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":251 - * class Select(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Select",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Select.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":252 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Select",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Select_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Select_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Select_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Select_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":253 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Select",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Case(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Select)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Select)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Select)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Select.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":256 - * - * class Case(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_4Case___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Case___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_4Case___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Case___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Case.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":257 - * class Case(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Case",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Case.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":258 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Case",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Case_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Case_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_4Case_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Case_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":259 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Case",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End_select(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Case)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Case)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Case)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Case.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":262 - * - * class End_select(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_10End_select___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10End_select___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_10End_select___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10End_select___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End_select.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":263 - * class End_select(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End_select",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_select.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":264 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_select",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_10End_select_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10End_select_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_10End_select_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10End_select_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":265 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End_select",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Program(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End_select)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End_select)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End_select)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End_select.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":269 - * class Program(Line): - * str = "Program" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_7Program___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Program___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_7Program___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Program___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Program.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":270 - * str = "Program" - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Program",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Program.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":271 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Program",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_7Program_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Program_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_7Program_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Program_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":272 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Program",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Subroutine(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Program)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Program)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Program)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Program.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":276 - * class Subroutine(Line): - * str = "Subroutine" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_10Subroutine___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10Subroutine___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_10Subroutine___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10Subroutine___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Subroutine.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":277 - * str = "Subroutine" - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Subroutine.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":278 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_10Subroutine_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_10Subroutine_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_10Subroutine_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_10Subroutine_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":279 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Function(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Subroutine)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Subroutine)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Subroutine)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Subroutine.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":283 - * class Function(Line): - * str = "Function" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_8Function___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Function___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_8Function___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Function___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Function.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":284 - * str = "Function" - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Function",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Function.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":285 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Function",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_8Function_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Function_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_8Function_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Function_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":286 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Function",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Call(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Function)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Function)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Function)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Function.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":289 - * - * class Call(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_4Call___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Call___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_4Call___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Call___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Call.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":290 - * class Call(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Call",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Call.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":291 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Call",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Call_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Call_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_4Call_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Call_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":292 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Call",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Provide(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Call)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Call)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Call)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Call.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":295 - * - * class Provide(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_7Provide___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Provide___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_7Provide___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Provide___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Provide.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":296 - * class Provide(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Provide",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Provide.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":297 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Provide",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_7Provide_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Provide_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_7Provide_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Provide_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":298 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Provide",self.i,self.text) # <<<<<<<<<<<<<< - * - * class NoDep(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Provide)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Provide)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Provide)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Provide.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":301 - * - * class NoDep(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_5NoDep___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5NoDep___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_5NoDep___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5NoDep___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.NoDep.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":302 - * class NoDep(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.NoDep.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":303 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_5NoDep_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_5NoDep_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_5NoDep_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_5NoDep_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":304 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Return (Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__NoDep)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__NoDep)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__NoDep)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.NoDep.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":307 - * - * class Return (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_6Return___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Return___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_6Return___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Return___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Return.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":308 - * class Return (Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Return",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Return.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":309 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Return",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_6Return_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_6Return_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_6Return_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_6Return_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":310 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Return",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Include(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Return)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Return)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Return)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 310; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Return.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":313 - * - * class Include(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_7Include___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Include___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_7Include___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Include___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Include.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":314 - * class Include(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Include",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Include.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":315 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Include",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_7Include_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_7Include_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_7Include_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_7Include_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":316 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Include",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Implicit (Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Include)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Include)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Include)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Include.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":319 - * - * class Implicit (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_8Implicit___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Implicit___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_8Implicit___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Implicit___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Implicit.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":320 - * class Implicit (Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Implicit.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":321 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_8Implicit_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_8Implicit_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_8Implicit_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_8Implicit_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":322 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Free(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Implicit)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Implicit)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Implicit)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Implicit.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":325 - * - * class Free(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_4Free___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Free___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_4Free___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Free___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Free.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":326 - * class Free(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Free",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Free.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":327 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Free",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_4Free_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_4Free_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_4Free_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_4Free_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":328 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Free",self.i,self.text) # <<<<<<<<<<<<<< - * - * class End(Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Free)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Free)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Free)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Free.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":331 - * - * class End(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_3End___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3End___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_3End___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3End___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.End.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":332 - * class End(Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("End",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":333 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_3End_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_3End_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_3End_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_3End_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":334 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("End",self.i,self.text) # <<<<<<<<<<<<<< - * - * class Provide_all (Line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__End)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__End)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__End)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.End.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":337 - * - * class Provide_all (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - -static PyObject *__pyx_pf_8irpf90_t_11Provide_all___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Provide_all___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_8irpf90_t_11Provide_all___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Provide_all___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__i,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_self = values[0]; - __pyx_v_i = values[1]; - __pyx_v_text = values[2]; - __pyx_v_filename = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("irpf90_t.Provide_all.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "irpf90_t.py":338 - * class Provide_all (Line): - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) # <<<<<<<<<<<<<< - * def __repr__(self): - * return "%20s:%5d : %s"%("Provide_all",self.i,self.text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____init__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_self); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self); - __Pyx_GIVEREF(__pyx_v_self); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Provide_all.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":339 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Provide_all",self.i,self.text) - * - */ - -static PyObject *__pyx_pf_8irpf90_t_11Provide_all_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_11Provide_all_1__repr__ = {__Pyx_NAMESTR("__repr__"), (PyCFunction)__pyx_pf_8irpf90_t_11Provide_all_1__repr__, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_11Provide_all_1__repr__(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("__repr__"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":340 - * Line.__init__(self,i,text,filename) - * def __repr__(self): - * return "%20s:%5d : %s"%("Provide_all",self.i,self.text) # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Provide_all)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__Provide_all)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Provide_all)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.Provide_all.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":349 - * from command_line import command_line - * import os - * def is_irpf90_file(filename): # <<<<<<<<<<<<<< - * return filename.endswith(".irp.f") and not filename.startswith('.') - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - */ - -static PyObject *__pyx_pf_8irpf90_t_19create_irpf90_files_is_irpf90_file(PyObject *__pyx_self, PyObject *__pyx_v_filename); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_19create_irpf90_files_is_irpf90_file = {__Pyx_NAMESTR("is_irpf90_file"), (PyCFunction)__pyx_pf_8irpf90_t_19create_irpf90_files_is_irpf90_file, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_19create_irpf90_files_is_irpf90_file(PyObject *__pyx_self, PyObject *__pyx_v_filename) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("is_irpf90_file"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":350 - * import os - * def is_irpf90_file(filename): - * return filename.endswith(".irp.f") and not filename.startswith('.') # <<<<<<<<<<<<<< - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - * return result - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_filename, __pyx_n_s__endswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_3) { - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_v_filename, __pyx_n_s__startswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyBool_FromLong((!__pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = __pyx_t_4; - __pyx_t_4 = 0; - } else { - __pyx_t_1 = __pyx_t_2; - __pyx_t_2 = 0; - } - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("irpf90_t.create_irpf90_files.is_irpf90_file", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irpf90_t.py":345 - * ###################################################################### - * - * def create_irpf90_files(): # <<<<<<<<<<<<<< - * result = [] - * from command_line import command_line - */ - -static PyObject *__pyx_pf_8irpf90_t_create_irpf90_files(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_8irpf90_t_create_irpf90_files = {__Pyx_NAMESTR("create_irpf90_files"), (PyCFunction)__pyx_pf_8irpf90_t_create_irpf90_files, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8irpf90_t_create_irpf90_files(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_command_line = NULL; - PyObject *__pyx_v_os = NULL; - PyObject *__pyx_v_is_irpf90_file = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create_irpf90_files"); - __pyx_self = __pyx_self; - - /* "irpf90_t.py":346 - * - * def create_irpf90_files(): - * result = [] # <<<<<<<<<<<<<< - * from command_line import command_line - * import os - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "irpf90_t.py":347 - * def create_irpf90_files(): - * result = [] - * from command_line import command_line # <<<<<<<<<<<<<< - * import os - * def is_irpf90_file(filename): - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v_command_line = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":348 - * result = [] - * from command_line import command_line - * import os # <<<<<<<<<<<<<< - * def is_irpf90_file(filename): - * return filename.endswith(".irp.f") and not filename.startswith('.') - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_os = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90_t.py":349 - * from command_line import command_line - * import os - * def is_irpf90_file(filename): # <<<<<<<<<<<<<< - * return filename.endswith(".irp.f") and not filename.startswith('.') - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_19create_irpf90_files_is_irpf90_file, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_is_irpf90_file); - __pyx_v_is_irpf90_file = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90_t.py":351 - * def is_irpf90_file(filename): - * return filename.endswith(".irp.f") and not filename.startswith('.') - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) # <<<<<<<<<<<<<< - * return result - * irpf90_files = create_irpf90_files() - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__listdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__getcwd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_is_irpf90_file); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_is_irpf90_file); - __Pyx_GIVEREF(__pyx_v_is_irpf90_file); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "irpf90_t.py":352 - * return filename.endswith(".irp.f") and not filename.startswith('.') - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - * return result # <<<<<<<<<<<<<< - * irpf90_files = create_irpf90_files() - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("irpf90_t.create_irpf90_files", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_command_line); - __Pyx_XDECREF(__pyx_v_os); - __Pyx_XDECREF(__pyx_v_is_irpf90_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("irpf90_t"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_n_s__Assert, __pyx_k__Assert, sizeof(__pyx_k__Assert), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_doc, __pyx_k__Begin_doc, sizeof(__pyx_k__Begin_doc), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_provider, __pyx_k__Begin_provider, sizeof(__pyx_k__Begin_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_shell, __pyx_k__Begin_shell, sizeof(__pyx_k__Begin_shell), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_template, __pyx_k__Begin_template, sizeof(__pyx_k__Begin_template), 0, 0, 1, 1}, - {&__pyx_n_s__Call, __pyx_k__Call, sizeof(__pyx_k__Call), 0, 0, 1, 1}, - {&__pyx_n_s__Case, __pyx_k__Case, sizeof(__pyx_k__Case), 0, 0, 1, 1}, - {&__pyx_n_s__Cont_provider, __pyx_k__Cont_provider, sizeof(__pyx_k__Cont_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Continue, __pyx_k__Continue, sizeof(__pyx_k__Continue), 0, 0, 1, 1}, - {&__pyx_n_s__Declaration, __pyx_k__Declaration, sizeof(__pyx_k__Declaration), 0, 0, 1, 1}, - {&__pyx_n_s__Directive, __pyx_k__Directive, sizeof(__pyx_k__Directive), 0, 0, 1, 1}, - {&__pyx_n_s__Do, __pyx_k__Do, sizeof(__pyx_k__Do), 0, 0, 1, 1}, - {&__pyx_n_s__Doc, __pyx_k__Doc, sizeof(__pyx_k__Doc), 0, 0, 1, 1}, - {&__pyx_n_s__Else, __pyx_k__Else, sizeof(__pyx_k__Else), 0, 0, 1, 1}, - {&__pyx_n_s__Elseif, __pyx_k__Elseif, sizeof(__pyx_k__Elseif), 0, 0, 1, 1}, - {&__pyx_n_s__Empty_line, __pyx_k__Empty_line, sizeof(__pyx_k__Empty_line), 0, 0, 1, 1}, - {&__pyx_n_s__End, __pyx_k__End, sizeof(__pyx_k__End), 0, 0, 1, 1}, - {&__pyx_n_s__End_doc, __pyx_k__End_doc, sizeof(__pyx_k__End_doc), 0, 0, 1, 1}, - {&__pyx_n_s__End_provider, __pyx_k__End_provider, sizeof(__pyx_k__End_provider), 0, 0, 1, 1}, - {&__pyx_n_s__End_select, __pyx_k__End_select, sizeof(__pyx_k__End_select), 0, 0, 1, 1}, - {&__pyx_n_s__End_shell, __pyx_k__End_shell, sizeof(__pyx_k__End_shell), 0, 0, 1, 1}, - {&__pyx_n_s__End_template, __pyx_k__End_template, sizeof(__pyx_k__End_template), 0, 0, 1, 1}, - {&__pyx_n_s__Enddo, __pyx_k__Enddo, sizeof(__pyx_k__Enddo), 0, 0, 1, 1}, - {&__pyx_n_s__Endif, __pyx_k__Endif, sizeof(__pyx_k__Endif), 0, 0, 1, 1}, - {&__pyx_n_s__Free, __pyx_k__Free, sizeof(__pyx_k__Free), 0, 0, 1, 1}, - {&__pyx_n_s__Function, __pyx_k__Function, sizeof(__pyx_k__Function), 0, 0, 1, 1}, - {&__pyx_n_s__If, __pyx_k__If, sizeof(__pyx_k__If), 0, 0, 1, 1}, - {&__pyx_n_s__Implicit, __pyx_k__Implicit, sizeof(__pyx_k__Implicit), 0, 0, 1, 1}, - {&__pyx_n_s__Include, __pyx_k__Include, sizeof(__pyx_k__Include), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_Else, __pyx_k__Irp_Else, sizeof(__pyx_k__Irp_Else), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_Endif, __pyx_k__Irp_Endif, sizeof(__pyx_k__Irp_Endif), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_If, __pyx_k__Irp_If, sizeof(__pyx_k__Irp_If), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_read, __pyx_k__Irp_read, sizeof(__pyx_k__Irp_read), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_write, __pyx_k__Irp_write, sizeof(__pyx_k__Irp_write), 0, 0, 1, 1}, - {&__pyx_n_s__Line, __pyx_k__Line, sizeof(__pyx_k__Line), 0, 0, 1, 1}, - {&__pyx_n_s__NoDep, __pyx_k__NoDep, sizeof(__pyx_k__NoDep), 0, 0, 1, 1}, - {&__pyx_n_s__Openmp, __pyx_k__Openmp, sizeof(__pyx_k__Openmp), 0, 0, 1, 1}, - {&__pyx_n_s__Program, __pyx_k__Program, sizeof(__pyx_k__Program), 0, 0, 1, 1}, - {&__pyx_n_s__Provide, __pyx_k__Provide, sizeof(__pyx_k__Provide), 0, 0, 1, 1}, - {&__pyx_n_s__Provide_all, __pyx_k__Provide_all, sizeof(__pyx_k__Provide_all), 0, 0, 1, 1}, - {&__pyx_n_s__Provider, __pyx_k__Provider, sizeof(__pyx_k__Provider), 0, 0, 1, 1}, - {&__pyx_n_s__Return, __pyx_k__Return, sizeof(__pyx_k__Return), 0, 0, 1, 1}, - {&__pyx_n_s__Select, __pyx_k__Select, sizeof(__pyx_k__Select), 0, 0, 1, 1}, - {&__pyx_n_s__Simple_line, __pyx_k__Simple_line, sizeof(__pyx_k__Simple_line), 0, 0, 1, 1}, - {&__pyx_n_s__SoftTouch, __pyx_k__SoftTouch, sizeof(__pyx_k__SoftTouch), 0, 0, 1, 1}, - {&__pyx_n_s__Subroutine, __pyx_k__Subroutine, sizeof(__pyx_k__Subroutine), 0, 0, 1, 1}, - {&__pyx_n_s__Subst, __pyx_k__Subst, sizeof(__pyx_k__Subst), 0, 0, 1, 1}, - {&__pyx_n_s__Touch, __pyx_k__Touch, sizeof(__pyx_k__Touch), 0, 0, 1, 1}, - {&__pyx_n_s__Use, __pyx_k__Use, sizeof(__pyx_k__Use), 0, 0, 1, 1}, - {&__pyx_n_s____init__, __pyx_k____init__, sizeof(__pyx_k____init__), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____repr__, __pyx_k____repr__, sizeof(__pyx_k____repr__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s___lower, __pyx_k___lower, sizeof(__pyx_k___lower), 0, 0, 1, 1}, - {&__pyx_n_s___text, __pyx_k___text, sizeof(__pyx_k___text), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__crc32, __pyx_k__crc32, sizeof(__pyx_k__crc32), 0, 0, 1, 1}, - {&__pyx_n_s__create_irpf90_files, __pyx_k__create_irpf90_files, sizeof(__pyx_k__create_irpf90_files), 0, 0, 1, 1}, - {&__pyx_n_s__endswith, __pyx_k__endswith, sizeof(__pyx_k__endswith), 0, 0, 1, 1}, - {&__pyx_n_s__fget, __pyx_k__fget, sizeof(__pyx_k__fget), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__filter, __pyx_k__filter, sizeof(__pyx_k__filter), 0, 0, 1, 1}, - {&__pyx_n_s__fset, __pyx_k__fset, sizeof(__pyx_k__fset), 0, 0, 1, 1}, - {&__pyx_n_s__get_lower, __pyx_k__get_lower, sizeof(__pyx_k__get_lower), 0, 0, 1, 1}, - {&__pyx_n_s__get_text, __pyx_k__get_text, sizeof(__pyx_k__get_text), 0, 0, 1, 1}, - {&__pyx_n_s__getcwd, __pyx_k__getcwd, sizeof(__pyx_k__getcwd), 0, 0, 1, 1}, - {&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1}, - {&__pyx_n_s__irp_id, __pyx_k__irp_id, sizeof(__pyx_k__irp_id), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_files, __pyx_k__irpf90_files, sizeof(__pyx_k__irpf90_files), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__listdir, __pyx_k__listdir, sizeof(__pyx_k__listdir), 0, 0, 1, 1}, - {&__pyx_n_s__lower, __pyx_k__lower, sizeof(__pyx_k__lower), 0, 0, 1, 1}, - {&__pyx_n_s__mandir, __pyx_k__mandir, sizeof(__pyx_k__mandir), 0, 0, 1, 1}, - {&__pyx_n_s__object, __pyx_k__object, sizeof(__pyx_k__object), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__property, __pyx_k__property, sizeof(__pyx_k__property), 0, 0, 1, 1}, - {&__pyx_n_s__self, __pyx_k__self, sizeof(__pyx_k__self), 0, 0, 1, 1}, - {&__pyx_n_s__set_text, __pyx_k__set_text, sizeof(__pyx_k__set_text), 0, 0, 1, 1}, - {&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1}, - {&__pyx_n_s__str, __pyx_k__str, sizeof(__pyx_k__str), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__value, __pyx_k__value, sizeof(__pyx_k__value), 0, 0, 1, 1}, - {&__pyx_n_s__zlib, __pyx_k__zlib, sizeof(__pyx_k__zlib), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_object = __Pyx_GetName(__pyx_b, __pyx_n_s__object); if (!__pyx_builtin_object) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_property = __Pyx_GetName(__pyx_b, __pyx_n_s__property); if (!__pyx_builtin_property) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_filter = __Pyx_GetName(__pyx_b, __pyx_n_s__filter); if (!__pyx_builtin_filter) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "irpf90_t.py":350 - * import os - * def is_irpf90_file(filename): - * return filename.endswith(".irp.f") and not filename.startswith('.') # <<<<<<<<<<<<<< - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - * return result - */ - __pyx_k_tuple_3 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_3)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_k_tuple_3, 0, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_3)); - __pyx_k_tuple_5 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_5)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_4)); - PyTuple_SET_ITEM(__pyx_k_tuple_5, 0, ((PyObject *)__pyx_kp_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_5)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initirpf90_t(void); /*proto*/ -PyMODINIT_FUNC initirpf90_t(void) -#else -PyMODINIT_FUNC PyInit_irpf90_t(void); /*proto*/ -PyMODINIT_FUNC PyInit_irpf90_t(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_irpf90_t(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("irpf90_t"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_irpf90_t) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "irpf90_t.py":27 - * # scemama@irsamc.ups-tlse.fr - * - * import os # <<<<<<<<<<<<<< - * from zlib import crc32 - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__os, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":28 - * - * import os - * from zlib import crc32 # <<<<<<<<<<<<<< - * - * irpdir = "IRPF90_temp/" - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__crc32)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__crc32)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__crc32)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__zlib), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__crc32); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__crc32, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":30 - * from zlib import crc32 - * - * irpdir = "IRPF90_temp/" # <<<<<<<<<<<<<< - * mandir = "IRPF90_man/" - * irp_id = abs(crc32(os.getcwd())) - */ - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpdir, ((PyObject *)__pyx_kp_s_6)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":31 - * - * irpdir = "IRPF90_temp/" - * mandir = "IRPF90_man/" # <<<<<<<<<<<<<< - * irp_id = abs(crc32(os.getcwd())) - * - */ - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__mandir, ((PyObject *)__pyx_kp_s_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":32 - * irpdir = "IRPF90_temp/" - * mandir = "IRPF90_man/" - * irp_id = abs(crc32(os.getcwd())) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__crc32); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__getcwd); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyNumber_Absolute(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irp_id, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "irpf90_t.py":35 - * - * - * class Line(object): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * self.i = i - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":36 - * - * class Line(object): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * self.i = i - * self._text = None - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Line___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":43 - * self.set_text(text) - * - * def get_text(self): # <<<<<<<<<<<<<< - * return self._text - * - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Line_1get_text, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__get_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":46 - * return self._text - * - * def set_text(self,value): # <<<<<<<<<<<<<< - * self._text = value - * self._lower = value.lower() - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Line_2set_text, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__set_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":50 - * self._lower = value.lower() - * - * def get_lower(self): # <<<<<<<<<<<<<< - * return self._lower - * - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Line_3get_lower, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__get_lower, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":53 - * return self._lower - * - * text = property(fget=get_text, fset=set_text) # <<<<<<<<<<<<<< - * lower = property(fget=get_lower) - * - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetItem(__pyx_t_3, __pyx_n_s__get_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__fget), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetItem(__pyx_t_3, __pyx_n_s__set_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__fset), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_empty_tuple), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":54 - * - * text = property(fget=get_text, fset=set_text) - * lower = property(fget=get_lower) # <<<<<<<<<<<<<< - * - * class Empty_line(Line): - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __pyx_t_1 = PyObject_GetItem(__pyx_t_3, __pyx_n_s__get_lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__fget), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyEval_CallObjectWithKeywords(__pyx_builtin_property, ((PyObject *)__pyx_empty_tuple), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__lower, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90_t.py":35 - * - * - * class Line(object): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * self.i = i - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_builtin_object); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object); - __Pyx_GIVEREF(__pyx_builtin_object); - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Line, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":56 - * lower = property(fget=get_lower) - * - * class Empty_line(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":57 - * - * class Empty_line(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10Empty_line___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":59 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10Empty_line_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":56 - * lower = property(fget=get_lower) - * - * class Empty_line(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Empty_line, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Empty_line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":62 - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) - * - * class Simple_line(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":63 - * - * class Simple_line(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Simple_line___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":65 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Simple_line_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":62 - * return "%20s:%5d : %s"%("Empty_line",self.i,self.text) - * - * class Simple_line(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Simple_line, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Simple_line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":68 - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) - * - * class Declaration(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":69 - * - * class Declaration(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Declaration___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":71 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Declaration_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":68 - * return "%20s:%5d : %s"%("Simple_line",self.i,self.text) - * - * class Declaration(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Declaration, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Declaration, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":74 - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) - * - * class Continue(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":75 - * - * class Continue(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Continue___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":77 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Continue",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Continue_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":74 - * return "%20s:%5d : %s"%("Declaration",self.i,self.text) - * - * class Continue(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Continue, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Continue, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":80 - * return "%20s:%5d : %s"%("Continue",self.i,self.text) - * - * class Begin_provider(Line): # <<<<<<<<<<<<<< - * str = "Provider" - * def __init__(self,i,text,filename): - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":81 - * - * class Begin_provider(Line): - * str = "Provider" # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__str, ((PyObject *)__pyx_n_s__Provider)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":82 - * class Begin_provider(Line): - * str = "Provider" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_14Begin_provider___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":84 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_14Begin_provider_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":80 - * return "%20s:%5d : %s"%("Continue",self.i,self.text) - * - * class Begin_provider(Line): # <<<<<<<<<<<<<< - * str = "Provider" - * def __init__(self,i,text,filename): - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Begin_provider, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Begin_provider, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":87 - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) - * - * class Cont_provider(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":88 - * - * class Cont_provider(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_13Cont_provider___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":90 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_13Cont_provider_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":87 - * return "%20s:%5d : %s"%("Begin_provider",self.i,self.text) - * - * class Cont_provider(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Cont_provider, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Cont_provider, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":93 - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) - * - * class End_provider(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":94 - * - * class End_provider(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_12End_provider___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":96 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_12End_provider_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":93 - * return "%20s:%5d : %s"%("Cont_provider",self.i,self.text) - * - * class End_provider(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End_provider, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End_provider, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":99 - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) - * - * class Begin_doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":100 - * - * class Begin_doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Begin_doc___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":102 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Begin_doc_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":99 - * return "%20s:%5d : %s"%("End_provider",self.i,self.text) - * - * class Begin_doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Begin_doc, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Begin_doc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":105 - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) - * - * class Doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":106 - * - * class Doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3Doc___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":108 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Doc",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3Doc_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":105 - * return "%20s:%5d : %s"%("Begin_doc",self.i,self.text) - * - * class Doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Doc, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Doc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":111 - * return "%20s:%5d : %s"%("Doc",self.i,self.text) - * - * class End_doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":112 - * - * class End_doc(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7End_doc___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":114 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7End_doc_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":111 - * return "%20s:%5d : %s"%("Doc",self.i,self.text) - * - * class End_doc(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End_doc, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End_doc, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":117 - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) - * - * class Begin_shell(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":118 - * - * class Begin_shell(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Begin_shell___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":120 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Begin_shell_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":117 - * return "%20s:%5d : %s"%("End_doc",self.i,self.text) - * - * class Begin_shell(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Begin_shell, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Begin_shell, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":123 - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) - * - * class End_shell(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":124 - * - * class End_shell(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9End_shell___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":126 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9End_shell_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":123 - * return "%20s:%5d : %s"%("Begin_shell",self.i,self.text) - * - * class End_shell(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End_shell, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End_shell, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":129 - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) - * - * class Begin_template(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":130 - * - * class Begin_template(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_14Begin_template___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":132 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_14Begin_template_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":129 - * return "%20s:%5d : %s"%("End_shell",self.i,self.text) - * - * class Begin_template(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Begin_template, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Begin_template, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":135 - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) - * - * class End_template(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":136 - * - * class End_template(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_12End_template___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":138 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_template",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_12End_template_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":135 - * return "%20s:%5d : %s"%("Begin_template",self.i,self.text) - * - * class End_template(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End_template, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End_template, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":141 - * return "%20s:%5d : %s"%("End_template",self.i,self.text) - * - * class Subst(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":142 - * - * class Subst(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Subst___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":144 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Subst",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Subst_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":141 - * return "%20s:%5d : %s"%("End_template",self.i,self.text) - * - * class Subst(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Subst, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Subst, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":147 - * return "%20s:%5d : %s"%("Subst",self.i,self.text) - * - * class Assert(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":148 - * - * class Assert(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Assert___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":150 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Assert",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Assert_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":147 - * return "%20s:%5d : %s"%("Subst",self.i,self.text) - * - * class Assert(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Assert, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Assert, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":153 - * return "%20s:%5d : %s"%("Assert",self.i,self.text) - * - * class Touch(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":154 - * - * class Touch(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Touch___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":156 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Touch",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Touch_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":153 - * return "%20s:%5d : %s"%("Assert",self.i,self.text) - * - * class Touch(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Touch, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Touch, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":159 - * return "%20s:%5d : %s"%("Touch",self.i,self.text) - * - * class SoftTouch(Touch): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":160 - * - * class SoftTouch(Touch): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9SoftTouch___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":162 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9SoftTouch_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":159 - * return "%20s:%5d : %s"%("Touch",self.i,self.text) - * - * class SoftTouch(Touch): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Touch); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__SoftTouch, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SoftTouch, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":165 - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) - * - * class Irp_read(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":166 - * - * class Irp_read(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Irp_read___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":168 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Irp_read_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":165 - * return "%20s:%5d : %s"%("SoftTouch",self.i,self.text) - * - * class Irp_read(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Irp_read, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Irp_read, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":171 - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) - * - * class Irp_write(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":172 - * - * class Irp_write(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Irp_write___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":174 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Irp_write_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":171 - * return "%20s:%5d : %s"%("Irp_read",self.i,self.text) - * - * class Irp_write(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Irp_write, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Irp_write, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":177 - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) - * - * class Irp_If(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":178 - * - * class Irp_If(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Irp_If___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":180 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Irp_If_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":177 - * return "%20s:%5d : %s"%("Irp_write",self.i,self.text) - * - * class Irp_If(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Irp_If, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Irp_If, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":183 - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) - * - * class Irp_Else(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":184 - * - * class Irp_Else(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Irp_Else___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":186 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Irp_Else_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":183 - * return "%20s:%5d : %s"%("Irp_If",self.i,self.text) - * - * class Irp_Else(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Irp_Else, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Irp_Else, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":189 - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) - * - * class Irp_Endif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":190 - * - * class Irp_Endif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Irp_Endif___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":192 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Irp_Endif_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":189 - * return "%20s:%5d : %s"%("Irp_Else",self.i,self.text) - * - * class Irp_Endif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Irp_Endif, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Irp_Endif, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":195 - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) - * - * class Openmp(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":196 - * - * class Openmp(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Openmp___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":198 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Openmp_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":195 - * return "%20s:%5d : %s"%("Irp_Endif",self.i,self.text) - * - * class Openmp(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Openmp, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Openmp, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":201 - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) - * - * class Directive(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":202 - * - * class Directive(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Directive___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":204 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Directive",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_9Directive_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":201 - * return "%20s:%5d : %s"%("Openmp",self.i,self.text) - * - * class Directive(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Directive, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Directive, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":207 - * return "%20s:%5d : %s"%("Directive",self.i,self.text) - * - * class Use(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":208 - * - * class Use(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3Use___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":210 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Use",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3Use_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":207 - * return "%20s:%5d : %s"%("Directive",self.i,self.text) - * - * class Use(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Use, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Use, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":213 - * return "%20s:%5d : %s"%("Use",self.i,self.text) - * - * class Do(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":214 - * - * class Do(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_2Do___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":216 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Do",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_2Do_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":213 - * return "%20s:%5d : %s"%("Use",self.i,self.text) - * - * class Do(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Do, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Do, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":219 - * return "%20s:%5d : %s"%("Do",self.i,self.text) - * - * class Enddo (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":220 - * - * class Enddo (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Enddo___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":222 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Enddo_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":219 - * return "%20s:%5d : %s"%("Do",self.i,self.text) - * - * class Enddo (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Enddo, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Enddo, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":225 - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) - * - * class If(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":226 - * - * class If(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_2If___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":228 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("If",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_2If_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":225 - * return "%20s:%5d : %s"%("Enddo",self.i,self.text) - * - * class If(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__If, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__If, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":231 - * return "%20s:%5d : %s"%("If",self.i,self.text) - * - * class Elseif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":232 - * - * class Elseif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Elseif___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":234 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Elseif_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":231 - * return "%20s:%5d : %s"%("If",self.i,self.text) - * - * class Elseif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Elseif, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Elseif, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":237 - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) - * - * class Else(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":238 - * - * class Else(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Else___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":240 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Else",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Else_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 240; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 240; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":237 - * return "%20s:%5d : %s"%("Elseif",self.i,self.text) - * - * class Else(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Else, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Else, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":243 - * return "%20s:%5d : %s"%("Else",self.i,self.text) - * - * class Endif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":244 - * - * class Endif(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Endif___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":246 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Endif",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5Endif_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 246; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 246; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":243 - * return "%20s:%5d : %s"%("Else",self.i,self.text) - * - * class Endif(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Endif, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Endif, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":249 - * return "%20s:%5d : %s"%("Endif",self.i,self.text) - * - * class Select(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":250 - * - * class Select(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Select___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":252 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Select",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Select_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":249 - * return "%20s:%5d : %s"%("Endif",self.i,self.text) - * - * class Select(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Select, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Select, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":255 - * return "%20s:%5d : %s"%("Select",self.i,self.text) - * - * class Case(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":256 - * - * class Case(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Case___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 256; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":258 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Case",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Case_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":255 - * return "%20s:%5d : %s"%("Select",self.i,self.text) - * - * class Case(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Case, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Case, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":261 - * return "%20s:%5d : %s"%("Case",self.i,self.text) - * - * class End_select(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":262 - * - * class End_select(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10End_select___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 262; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":264 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End_select",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10End_select_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":261 - * return "%20s:%5d : %s"%("Case",self.i,self.text) - * - * class End_select(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End_select, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End_select, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":267 - * return "%20s:%5d : %s"%("End_select",self.i,self.text) - * - * class Program(Line): # <<<<<<<<<<<<<< - * str = "Program" - * def __init__(self,i,text,filename): - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":268 - * - * class Program(Line): - * str = "Program" # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__str, ((PyObject *)__pyx_n_s__Program)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":269 - * class Program(Line): - * str = "Program" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Program___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":271 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Program",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Program_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":267 - * return "%20s:%5d : %s"%("End_select",self.i,self.text) - * - * class Program(Line): # <<<<<<<<<<<<<< - * str = "Program" - * def __init__(self,i,text,filename): - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Program, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Program, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":274 - * return "%20s:%5d : %s"%("Program",self.i,self.text) - * - * class Subroutine(Line): # <<<<<<<<<<<<<< - * str = "Subroutine" - * def __init__(self,i,text,filename): - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":275 - * - * class Subroutine(Line): - * str = "Subroutine" # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__str, ((PyObject *)__pyx_n_s__Subroutine)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":276 - * class Subroutine(Line): - * str = "Subroutine" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10Subroutine___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":278 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_10Subroutine_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":274 - * return "%20s:%5d : %s"%("Program",self.i,self.text) - * - * class Subroutine(Line): # <<<<<<<<<<<<<< - * str = "Subroutine" - * def __init__(self,i,text,filename): - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Subroutine, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Subroutine, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":281 - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) - * - * class Function(Line): # <<<<<<<<<<<<<< - * str = "Function" - * def __init__(self,i,text,filename): - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":282 - * - * class Function(Line): - * str = "Function" # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s__str, ((PyObject *)__pyx_n_s__Function)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "irpf90_t.py":283 - * class Function(Line): - * str = "Function" - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Function___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":285 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Function",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Function_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":281 - * return "%20s:%5d : %s"%("Subroutine",self.i,self.text) - * - * class Function(Line): # <<<<<<<<<<<<<< - * str = "Function" - * def __init__(self,i,text,filename): - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Function, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Function, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":288 - * return "%20s:%5d : %s"%("Function",self.i,self.text) - * - * class Call(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":289 - * - * class Call(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Call___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":291 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Call",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Call_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":288 - * return "%20s:%5d : %s"%("Function",self.i,self.text) - * - * class Call(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Call, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Call, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":294 - * return "%20s:%5d : %s"%("Call",self.i,self.text) - * - * class Provide(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":295 - * - * class Provide(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Provide___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":297 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Provide",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Provide_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":294 - * return "%20s:%5d : %s"%("Call",self.i,self.text) - * - * class Provide(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Provide, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Provide, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":300 - * return "%20s:%5d : %s"%("Provide",self.i,self.text) - * - * class NoDep(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":301 - * - * class NoDep(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5NoDep___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":303 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_5NoDep_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":300 - * return "%20s:%5d : %s"%("Provide",self.i,self.text) - * - * class NoDep(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__NoDep, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NoDep, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":306 - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) - * - * class Return (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":307 - * - * class Return (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Return___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":309 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Return",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_6Return_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 309; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 309; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":306 - * return "%20s:%5d : %s"%("NoDep",self.i,self.text) - * - * class Return (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Return, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Return, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":312 - * return "%20s:%5d : %s"%("Return",self.i,self.text) - * - * class Include(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":313 - * - * class Include(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Include___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":315 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Include",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_7Include_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":312 - * return "%20s:%5d : %s"%("Return",self.i,self.text) - * - * class Include(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Include, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Include, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":318 - * return "%20s:%5d : %s"%("Include",self.i,self.text) - * - * class Implicit (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":319 - * - * class Implicit (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Implicit___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":321 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_8Implicit_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":318 - * return "%20s:%5d : %s"%("Include",self.i,self.text) - * - * class Implicit (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Implicit, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Implicit, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":324 - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) - * - * class Free(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":325 - * - * class Free(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Free___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":327 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Free",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_4Free_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":324 - * return "%20s:%5d : %s"%("Implicit",self.i,self.text) - * - * class Free(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Free, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Free, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 324; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":330 - * return "%20s:%5d : %s"%("Free",self.i,self.text) - * - * class End(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":331 - * - * class End(Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3End___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":333 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("End",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_3End_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":330 - * return "%20s:%5d : %s"%("Free",self.i,self.text) - * - * class End(Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__End, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__End, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":336 - * return "%20s:%5d : %s"%("End",self.i,self.text) - * - * class Provide_all (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - - /* "irpf90_t.py":337 - * - * class Provide_all (Line): - * def __init__(self,i,text,filename): # <<<<<<<<<<<<<< - * Line.__init__(self,i,text,filename) - * def __repr__(self): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Provide_all___init__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":339 - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - * def __repr__(self): # <<<<<<<<<<<<<< - * return "%20s:%5d : %s"%("Provide_all",self.i,self.text) - * - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_8irpf90_t_11Provide_all_1__repr__, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetItem(__pyx_t_3, __pyx_n_s____repr__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":336 - * return "%20s:%5d : %s"%("End",self.i,self.text) - * - * class Provide_all (Line): # <<<<<<<<<<<<<< - * def __init__(self,i,text,filename): - * Line.__init__(self,i,text,filename) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_3), __pyx_n_s__Provide_all, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Provide_all, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "irpf90_t.py":345 - * ###################################################################### - * - * def create_irpf90_files(): # <<<<<<<<<<<<<< - * result = [] - * from command_line import command_line - */ - __pyx_t_3 = PyCFunction_NewEx(&__pyx_mdef_8irpf90_t_create_irpf90_files, NULL, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__create_irpf90_files, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "irpf90_t.py":353 - * result = filter ( is_irpf90_file, os.listdir(os.getcwd()) ) - * return result - * irpf90_files = create_irpf90_files() # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__create_irpf90_files); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpf90_files, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90_t.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - if (__pyx_m) { - __Pyx_AddTraceback("init irpf90_t", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init irpf90_t"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases) { - PyObject *metaclass; - /* Default metaclass */ -#if PY_MAJOR_VERSION < 3 - if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) { - PyObject *base = PyTuple_GET_ITEM(bases, 0); - metaclass = PyObject_GetAttrString(base, (char *)"__class__"); - if (!metaclass) { - PyErr_Clear(); - metaclass = (PyObject*) Py_TYPE(base); - } - } else { - metaclass = (PyObject *) &PyClass_Type; - } -#else - if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) { - PyObject *base = PyTuple_GET_ITEM(bases, 0); - metaclass = (PyObject*) Py_TYPE(base); - } else { - metaclass = (PyObject *) &PyType_Type; - } -#endif - Py_INCREF(metaclass); - return metaclass; -} - -static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, - PyObject *modname) { - PyObject *result; - PyObject *metaclass; - - if (PyDict_SetItemString(dict, "__module__", modname) < 0) - return NULL; - - /* Python2 __metaclass__ */ - metaclass = PyDict_GetItemString(dict, "__metaclass__"); - if (metaclass) { - Py_INCREF(metaclass); - } else { - metaclass = __Pyx_FindPy2Metaclass(bases); - } - result = PyObject_CallFunctionObjArgs(metaclass, name, bases, dict, NULL); - Py_DECREF(metaclass); - return result; -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/irpf90_t.so b/src/irpf90_t.so deleted file mode 100755 index 8bd28a00d9272fd1324f536847473e661a3c645a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 602757 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�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

5r}=>~iH8MOB%T9)3b9OL z;9}KH58cpK1X%uHU_xRW7~JP}Du^`E>GL4Cxz9;X4!xYGz?%#YlbB~DT&xpXt+ghu zHWJ=jD&Z!0pL7%YUjim1eh7m}{8$Asi5CGgiDyyPC9%;GMM5CmpJx*IZC`s}Oky*^ z6^R3Z`w`0|P5?Fl7|+DXz=XtwFqp(#6%=HLJAGaUHoe=?J5>E-PNbCjNL&q1~StfB9u=>E5#L>Wn#9SCmVuA`HO?3La3T`Gb z*~y_v+z4-;TchtqBjIg2q18rf;$b7;NSY8F}khk*%+uft#xuUA2&iB6xt zhMP%z$jPBeya4a>ZjHX`*Qq{p!h|~1$-r9nZ&ceHUQ(9_&YEmvBC9jpWjhI zq=`tAd!sZviujt5DXRiItbDK0f4l=plE&n8cR^S0r`OyXD-M4IUI`4HSpVxE&j*LWJ<r@bFqSNO#aC4uZcXDVF`@s9ITcdBRk?;qdFy2X+XCw^DR^4^qN3Mjo zDLlNK*8>w0pMk+7Ca54L@pHgTVlv9QGw~w4d5*{O)n2Lk%_OcAT#?us_y)u>i9LXA z1I8rw1|}q434>?imnw)f(dqL-xS7ODP7Y1t8hC5dK@F}0zDJFO9TZNQ=p=l@NH`3| zToONrcdDDve;SyO7ykJW-sc^Uenk$5%mV~AxE zZvu867?Zdfn2`7+3??yx4sYZ-P~`OaJ-C^~KFV!q;t6=i!9z9r{xA~qxsxQ^W2*8md|H^X2OYtd;A^^-~bNS7lLV-#%c6VJfg$MMkT*=}{0 z^CZF5Obi2_g;<`69e^zZ#w2zDCM1r5!87r36-1io^f?!9Ch=V-hbD0ayhq&{efJp& z|JDiPorEtM37gXS4v)6GoIirMBRtdv{|R71;-4^>#IY)fNsL^jDB+oyhqCTW>0^^y;hgP~vR{`IKSSE29u(yCQiOYcriI2cw5`R%aq=`1wN%1Lc;~nY{oQ~GiNjzpiR)AllQ6OC35n-nFp1q%5WRPH`rP0)x6k98 z9D3Md;GF>vlb8UE6W*v3?s5_)8wnpRm2fV+FS-f+D}V`!MKGAeFI5ne_%>iB@e<0q zBz_BTZ93m!68KiwC16ZqYrz$X^>0@l?uA$;u@$h9z<4J5fC-6-Fu2c)R1j&R)8`Dh zc_!ZDyp?V-f@n{@(l;ZBxVV&NSqFQ8Dg2ldBE-f#w0ERCM4bqgGqc<1(7B? zeck~#lX%q0p-KD@-e27seaDT2b?MZHxCpZ2orLyUcWQT3ZbK6r!`mMoCNTz>kk}6f zlbET3n8ewDc_uDLS(n6>@ZRHiEZ_aWm_$D2(p`E1_*;l&688f86d05EJ}@EiCm2j( z6*>iyK2LG_To zB*w$wJ`Yhrq=`w1%`zbs;L;o-mUeF1x7_F5J?{=qr z2ptwN4er*bJ-ltid_DhjyaC znB3n5SLF5r9!#f0SUa)9fQ12Laz_IbatmPa%6Z=gk zhbA!u-Xm^}J|8en_=iro%SkxcNXTbn#g~5yygqoS3;ujyLgES-OyY1A#3XJ5%p}f6 zS$Bqh0Pj-AL$`y0F^P8zu1NeF_*TR+iM7@%5_SV)66*sK5?jNO+A-81E!JWhA`6RKm(dii~I7g#Hj2@$MCb6a9io^$jcSS6d_zbWlU_29F045|J zg25#6Ng7o`n&|ZTH@KO^wN4IAVvYM%pEtQR`kDjdgnM+tLMLHwxH;j8QVGYy%O`2v zUFw2=1~4J95C)UjjLw`u;wHdMVw{4FnfMmGBODLi4hF^~W(clGJO_LsVwuFi2UIs# z0b>$_feDFiU~r#bQbDANPM-(C&3!)N1#XJVrV6$yNt#zP|?M*+qpZWUaSI1u=5 z#4?E!fE@tFBu)kGL|cnZz*VHv0TDynNKgt)m)!Zx{(j>4a7X zt%=_l33Ey%ya?~LZbE;JhZF@uVgw8(aia=i5{Ck265m8wm&BRy9&tRh69vX3o)uh? zcsKAsI)*}*VmAW|1;!*k0Zd4I4+fJsKn0N|I(_~TZYFV>lS9wMN)N04&2ww?H3Y^9 z@6-w7orGQB=7i6dN;nkWx7~#PDZqrpIWU;SQ!0o_+yIzK45p(fHQ(?B$Jm|lhB+R( z9Sn>~>?*h-@dw~Zh~=61C$MB-Orqxz)pa2;90vE9&)#GvPI3Bt8Qk1wK78ZWxo=3u z!MoF~(U)l?{7fe-bP_H%5?&~ka09$G=!gpQ!2dKbA#o23Ceg2gn8Y)HnZyw&>(0cQ zkE#w&b3C*O2gW2W6kL(m3-~I;GKs^0Jp_zN91ToJ%!R=u?pHyiiB6wa!ObN8Hdi=(rpHNm*ht7HZ^cLD47{V=g#Jn!jpZB)gGrpLf|$g_ z%ExDOx-DM=+h|}__p7*|=>-$h);lL<1V11 zkuhNlqq{x)l&2tjtd9MXGI?GFnxoNQsuKDd(0MIUTV7>CU)QMF(m!-dD_IG1{S@_v z=R0X>W1aDu9)!LLG+d+kafH4FbfQK_@W|`|x?Q6OIQDIzfx1oJDunI@`ng8K>Ja)4 z(6bud#nbd%pvjt-nF)mM1G-S7wP=!h-UGVa?CWtl$CDAQY$bfeqw>Dz06{_a7TwYT z%-(*WPiZuqACUC{&|uxBM|u+aA<$VGZNTV9Kyx*Ek;m#|ppR;_H9ybm0MH#8&23HS zCqR4aUKQ{Y>ka~4s?oykgdW05II8F6HhvK1VW3y)UNqv-Jp%Mcjb7&?^i!aUK%~ri_p)3_S0xzM!x`Bq|tdKjGixn{-DtrwFo^5w5smK1b%YaS3v7(bU-^o zzXlqr(N)}wZ-DmKXq^Z`j{zN`(G(uz;~x6O5E|or-Q!0a5PAaW2O52lpLF&u&=B3; zYdFJ6py3)F$nE_OXjjxG>wX{|smToUlK!x!fA8r^P>|h8*K-Rq@B`47G`fn%@kgM0 zG`gQv_Y}~>8hw{D`~>tDji!@edwvGmS-13cFQKP_F4Sm!UeRZOUZ>HwnD4VdZ_((F zd|mkk=$#skvz@I?ZX!IPb%q5^-Ym_E3 zJ=+ZEpBh~mOz7W0$Lqd^vm#jmstvybm6?%32XE5Ss#e0yeBJZ}j3g+?PSY9pu*wGj zy-}mDM-yrTP0{t#??h-NptChkLA>rO2dJwQ{R}R*+)5b2D<%+VoJPaxU52L$&}g0a zOP&K>ph+6NC7#fr0CkOAs587rKRw~83Us|j$FSB11Kp}KEat0!HK5IPdw=Jj0jM6J zuJ)10AZ*=A=XAnW4J%;_*IpxF2|+>j89lDSoe8Z8w3@DcGG9Gv1<>ywQ|vBX`>#9$ zYX|Vd2I&!gBftwiXWR1B0UDywWJc=(4c90=qR{fx(;4)hW)7=?i$Z`N(&#CkMU8-Zb%winbVGrLX!JV1+BF7xQlmq7bejO(rO`e- z3Qd6?)wLDyylbXoHF^c_7{Y))uhDNp2n`21Pv>n=pU~z&Z_sEhzAm%?dR}L^k!x!S zbfb>#zz>X!09vHcKY2G1sbh79h(3h20ve8;WWp=VWE4qRG^Q*?%Ytb(0^W@z+%UM*dKPS9v$ZdokQ zK^i^KoY1a7M`-kUZbLVqcWHi$dK20m=y@GmgXd%qpg9_C%}Ul2=zfhB@#>BPdRn8w zya(z9G+Ot#GVfq61G-1Ip$%X8dIPm|?A_enc%aYgyf^UfApz)Md=(iFw1Y-Nc;7Vv=pbENbsqVNK)dPKK|K2=0S(dUN1Wku9jkfh%uHSZ zG+xI(!g(hH9id}i=2dtl&>M8@OjeC#pwSv_#i~3-XVC4<^bnc?^t_%WeqM!Bflkn| z9k{)zK&NOlfNPtkV|8s)Sl82lS~~Vex}tf~f$rC_-}A^%2U@7nUs+2sfM)0nsoaK4 zpk5vOHIL>Dpy&16Im_rw9ji0EUX#!{0jr5Ry3?!o6W8%`UF+Ej)sL`DXxf_4K0x)e zDHA^A>&0fE79Nq7(172Q9s(M!(N32UdSxY*H(sNYxeY}?r)V^ncm1s@tJp$~_U}n( z2GAmnzF-mh6VP26{gu~ohd`C#s74d`n)Mt|3y&#E@Nyf@0}a>c=w5^_u7dVzbSJOE zT|lR3G@Do90596B(Sy7@zX52GMmr@CS|dos?$YQFtOO%~9@XenzGi&_)WRb~658|i zIHan|5U$Z~?Fn5EG+v{TjR-vobc#m5X0=ZbMte2-Ew6x$K#Mebo@>cv_4-MhSfxSHTtuk&{aT>YVPr`UTK+dZC&S`}9wncl#^8Kvmfre}JB=1%(3q^Z1T8H<)g+Qlh z^if`gfsIvcp+-mX${GZ;NTb*A7{3Q}mqu^q>v63nD#KBY9%Mzl1E|#w?LELV^$^f- zjh;;d!w(5=bcpCL&?y=n$5*HH z2((wD4S9dI5onP{tMU#cCKBz{=<7TdIY5tUG@19{zX7#6fZzA|9c#B%Xs<@E;`doE z1C7_{H9VuNC>1+Jqs_R-*8?ro=#@Or_5dx?=r?@tVpufVtI?HwEnEfE>WG$oz_a=g z(4&Zz%Uu#3JIcKax_%srrl^e8Jqe=w5lO0Ske^o1RXS=S-J#*D_=46c5*3ab1|24* zD?NNLfP9`olf%h)L>YsZQ9G*)uy5fT4W2<=sC~8TP3Bg52Hi`Wb;tOf_Wr@$_$Y@w z*U+ZGTLVTTx{B6`g7G_DqUv79cSk7fIL)!TD`0G*VXeCo#u=KEb=SZMpbJ>dg_~Js zJ&B2Y=k00rBN6l^D0DN)^9H4?(^1ZRJTvH^v2I;7VpZzYShLfia@mJ*tJe{;hB^}{;joy;g9qRE6Deg$} zT%?&6+*{Q)jh)isB+qnecf(o=U#JUF>u#oNRIP!Y`&nQQFrH3X{WIiCLP;2(@5zBG`xH z4bE&;D9N*y>aN~iS@#>cKc+2Fy-pa59qizfNt!x!X|C7nLQ{u7b)e?cP|q#Y#|9k` zeU=?gOXL+bXEm>sMAhq>bR_LYkn=m*DA8A8nM_ZtnRpmHB_ykR1+U6({9_lY{Jk{A)hiib9x!5l7TsZLT2saH&sC@#Lp^Jl z#6xIw&=cg4QqoI)MYHjS1mbGADmudR5naye4)b{UHyYenn(70{(cmH)%%3vSTsI@e z8oYrj_-X&Dm^1yT>|WB&1}|Z9@`L}~5Ni8vbp5EGtp2rD@F zGK!!J5MI*EuUwN*`rZit!%wBWAsr+>+OLSez;Z+^r z9Q8PWbJwS0oI{E=Koh8qB*jQ5tq-Y7t&gMS+{md_N`#W>b?a@6TF}WRF+>43FsfR( zgg341kU(S9*)YP~(7|<8a5(w7$rg-{< zjjGJDI_p|3tBYHws*%StR{8m5SGVRSG{0!rRsU;K9o=KljQBvbvqx2`m0dl#K}|?2 zkc5a52vD^9OBN8qL;e!{bJB2o~_|j zL;o00?`nF^6r+29qKDfv&`e`lgHRVOkKWaIjt+J!S3sf(aC?%RYJ$1uIGG?r9FXR# zf`*!qjvE$Zp^a3S>l;qeZH;h31?6^*Gy}Ob{U)Fpr68+YD(Q7pL z#+^<>3i5K>&&r(IetK$Z`+41BlVdx#o0XYWFt6S8tb+EPW4gA_%u1bAFfGlJNEoFf zr)K8o6$>e5w9lEJpOKyAkD*;=W^PV;_YTSVG1Mr2EWxyCY3VT;+?f3NIca(HlG;gd zW;VSfEvLrmmpSuuvUBqZrj1|r)EQ~1cs)CfvQIOSX=!<>xh9aAm2aAP`MH@{(@iA5 zAZJ#Z3CzmOD^?^uH)VFQfSmbx`6>BnsyV6I)9`9)cJ?eYPwK3cygU=gnV*)Mo1M!& zRsG1Eoij@r(=tTopK7 z{Y!rX(gU~l3gZ{|+BYvg>z#1f#GbwEsxkIl@2b@kPk7tgn=5;dd9&&UEduQ1T;`+2tx^}DNpAcB$U#XA(1QzgL z?^6Do#D8v0vWEvmd+ci79rlb>?d)!G684z<^|s)D&e(gB&)W68>%B$vze#pbzCAZ? z=%9r;14b2*-xHV~XxH|}+4H^2?EFN#TDp{t3Ebe_U{6o9>nl4yaDxO-U~hh)ow29T zerT~by&`c16`sI~SrJ&VKq|B%Ah1FHY4ae>3P#$qfEC zpk=*5m)XHFFBW)*1hlGo#x6K(XPqse$hqE_w%&a=*dJKleD8!_6x^x%kZTH(uC+g! z<~?gSjIlFg?1nq&wnrWBq`BRb4teMBeTfa;2jn0AV+TD(?p1bm?Lzh?w% zeO8bk*6f&<#p&F@MczIhU0H}dY`e^q18*r~_tIqT_}Sd0aF>jVZw)a6*Jm~Zp& zztg=PZ(;9M{3oDQU3=3K?_>6r>s$BiX&i~p7ux9vajuDm#nwnw({+~WA-cbve5IG{dUNzL^_375D?eEe&OyV>2{rfmh?gC zh`M&G^e2*%lI(_wb`ag(2_m|Kh(`K9-#xm#?GP{Bwj}DDKacaPYwTh9cGvaZq)ztA zCEh)^Z5TYU=R`YdkC#TqZbB1e?peEz&|}v-Mg=_I$RGQ*CC9u6SFc{ZW~&`SJ^GK+v5mb(887ZqoWd`zq?d z_9gjtKF2)b325)JYktzx+uRPJKHBxUhtw zttVFSWA?N?c7yfa&iy;tt3NHQ+JDcXh%}r!OTbi4Y$2uy`6Z>Ua)MnUFVa4b~WsCRzPbH4NWu+O-o~Fh*sWX z(*&NBWCthOb7LlsqFaa)hj&jJqFO393Z><9>}q^F&|@bDw3E4L*Oh^gIeW(5w&a+M zR+1g{iHz3Ze0#U$U2lh_(+$8pqD9>R)Z99^dUhXQE`@E)<;Y#bh1JxD|E8rb3p+WI$7>V@hWukKS(F* z(?=y|#@Y2(dFOcLqq6oj;rwyf0Qn$c9>1D?!2UZqPVBApSx^;qF-)SS-)AqMBHuk$ zUtL}nXooE0LiSf-0a2dS_O(-%*?)$`(7*J}=NS3kGk>m-?%r?|f0Q;L&^{S<>}~tc zh!~&<8Vf zk3DWTQ90=2ptFt@+MfqdM>jQzu@9!w_nkL2S#^!~_@RKPM)s$v-a1?`kedEk1Nt25 zLGMAau(2#SrhFJnzJUIk^P~-?49+o^SseLKV`BE4t0g z81iDzg6Z~=Cf+^XeRl0Vd+m(GmohS?U3aI_r)j@w!k>NoZoc=J)M3AnNfoj?phN9| z4h@dmMN0^vk9_i{K5Nq_bG^6C8b$iR_`QyFj^?ysy-6E)yZpDrB7NP z^2!Hextf3ZvL00~(Hoo>0WIV+v|DwS_0(<^-WDd1Fl9e^I?IqjKw3 z=*Iuwck92Hmp=Z?AJb;4i)Sj0{EumKMSK5u&b5khs~9(t_J1YS#g(W+cm9W6Gb+|` z#X7E7$NvXg&k8*&Ylr!Ntn2?@?p6P{=C07<3N5bC;^JED{Z;N<==auY_ry1>G_nDH zb)(^7+(GdK(p{oAGQE5w%VUSq*KXy-D@(lc&G2?&y=ukS4>eG4`SbNx!_6lH;^BKs zCHg|9`quMQy5S>0E%&aKy#>Zt<5?N+^(CdGF)k_EMsYq9|V%%*2a; zC`o@>g0?bW@~WDC5$eR%62}1TsH$J+Ox}ArpacJTj{gKiRagJiEcTB|bCVvzUonKq zs(o8E{t@sng&(hv>Wn^Z=e+jDMY%a~dYPW3-nYImS3ExBF{rTv%5q-LE!*H8@9wb-`=ptU91r2}-9 zf3l5c{ohrwMGT15nw_Yyo-OkniNxf6puXYO0%3$85H$e29Xf!ZUzo_Fd*Fa)x zYR9R1`jzgLX7RtZbGp)!jnMXgap?Xd(;WJb>{Ugl{q39vfG+y=Xr%)2^CNzY*Y7pX{e+gw63zu&c$`2Nv(K zgT3K)LE;K;^Uu6%+3+?W-`@_}G2QEbYQuPYL86_0mYz`7Zjb%qlDG%$*XX%v)#<@r zb0^SeKw5e1tO@q`MDOKxcki-*n$())6z4|j5L$xGE-8`xoIiWN~M$zrIIT@Eg92-r$8R}B{M5$7X5$+4+8luB4Sov zMrOKZZVnS+gr#O@rBWD;Rc2oD^i<|LJu^2ipMI}}rxZ1le!XLAK{_YO$(~D-X2krl z>Q_I;_8r|hnTDQz0A%c#0o_cpRTrma(^QtJUSbA!cl_>%(ct9CZ=X;F!{v8al1HcI z59aZw=At(Phm8&I8&1C<6XUm13v$zFQqeDp6zGXLGlxc6uNpBrqXA;XnnqU`#RfZe zblNPMN(SLnw?PrLCNFb=uC7F{I(Amwq97Uq8X9MT@;c4QB{rC=)a1Ohl-$&e1DOKta+dk&_eH@H7%KkfyQ@gN*>J+S_tXs$$Bt=*-5`Ue2!8Q}8bvFaM@WqoimMu@(Y(6R-Kt^IUb_0$BdEYK6Wy2wu?iHMd#LU9T+vuNZprzOu+qb0p_2PK_qgH>`- zb?84kCx3o2>yf*l%BZg6zZ=Nya#kkGtLmYw&-7#&q5SNevWB($=_87DG9a$??O7 zShaEG)XM48Ot&hz%a~ZTuKV|#6Z7?|GJCc-a}KsGBjieJ!O9b7*69`{|0>#y z%+vB?jmAm~St2{Wo<>gOG~_G$n|>wvB4J!m16OH8LVqDsdM*+!?9 z>59-z`l!|GR#qp$X;~$?(9}vnEjT5|sSPuyF+IhA`V=HRkv>3DoMx-eCfV!EZg~z{ zG%~$@^Qt9Na(pv!X@Y5`+9xktQ62_8?5pmv9UbJhvRzLSv=MV_)h)I!>7hq zwdJ3(E4N$S^ee}Ods!`WaX8=znSbtlc@mbZlonVyCdnS}gFkz{R)`Uu=hN#pm#2vR zPFcNjX1`OHy?A=_eoJRgomsJZjaHZassqgv^x(JO`gKdRX2^2rnFB&eOR@X|i8FGA zlM{me<9^1kwww>Db|2?h`BYO1+tij77cFY(KNC1pZLX;RWTwc0wHr`%EZ!jHb^VA` zqw<<*l;!j*`}K*NH^^zT*sS+XIU(rWS#pY~kDR1w@5w=pKD!~SE@foR=Besm6VwgP z&TwW_608+`!}N*y!1cOX3ro-J?Yo6~)}J}E;ZV8E%Eln3@@5V!SG*5jZo(_qloMp* zs`blGUNy6HfrKGUM&H9_Z!PcH8&8yfWpddX)>Xa!9LN?|X&8%B(8*^@w>hU~H7iVULMXN(Km~K-m)s+Fe<}9u! zRk1Dq@zK1ii}u&B^-pG<6y*bxvcO38*Vi&HBbNcx0=hzOj5d7FWF5TJrFZ6vB@sAE z|H;vCX0J^!-`sr?%l(y0xb(nFwf4prM)73fl+lR&PlndBUxVemmi7nvm0 zR#Kj8q(aD}uku+~T4gM11};qC0y|X|h&UCB$J04eC{MSvqNqWK=n_Now`cfU%b!y+r%4y7a2o+7JT`s=^$8qUFMWTO-5^m*Z2gv-rj3HweUPK*GCj6eKkf0ZJVI&(O>C-1HRYL0E)pk8Xx44Eu7gQ= zvX^gKx_djB(~s({-?Tjt|SRbl2Ohuj-&&TbTTR<3IT3AG zHc|?OU?3;+Y^iSi#pc70vVyATD}TOHJxI?dq8>*fy}I|tmmVSaupN9tk)>tlMSUhj zIg*twS=9+uuGIC@@}ydy#^sVbcwy9LUGHHvo0;m+<}s~wAmv+UNzb zWaWEL7Avp9?aUr1`@eskr~4#53HLk|t;UvRqFV(If3@?pzrpD-T&B3(0P6heUYMyZ z`&zxPNpX`?vL+|Y!yfCkhY2&M$v*`yQ=q+W^I>{sG^c%*lxIy74q9yG1-~j{dbqVh zR=x8%R!$po36*y~a(sK{%!ZC#Z-u2?hxGItEmjYiOd=7rliQT;PqI9F9)I$NqCCBp zeDyJjn6Wu|==uuCXnJ`&T*~`~nZv8Q)hfM^FzEq7=+w8&F_d9;>|C|hIb<#m)j zXpP*ysvSU2ZY!qqPv8$W^$^2~Wi?T_ZU>pJwHVe`dC@V61WTR`#2@QLFa5AQBvu`& zyYPBBGptxWt$S0_k~eRaL5+R+Ag6k^pgu0K>0E3+tbE`ub6^STwF#6xtW*!K%a>Ct zSMQ9_HMb309@(x81M@>nZZc)9kLF3hK($>t?3p zHHN&Zl&9757<1;dHS)S`W@&uPs*|I4rAxS~=e@EZc?r=|3aXf^pXHU-&&P6LD4*h% z)yEGA=6TN=2{k#cO)VVql1{GD)q!@3r*rZOO)jZgZEWw9(pJ8!oLVpCFKzQP{=`k3 z@VB1EU_d=BkM%Rzb86qoBaxk1B?pZ1z`tRsJWLc5N?ubo z&0)!k)$8RQs*x!dhHmlkPA8%UYJWQB+){Hn> z^|9?KEPY8*bwkkQ6P{MrcpOyj3Te*{vr*Pa45Nmj`dUY@5+0Y<2Cg0vaB@fns?Hka zL7Vv&pUIqRPua>>_zV2`la$YVob4)*VqDp;ldZqyPWtONudlA7JW!Id7{elq(V8+< zs(F+(ksj!$u}_*hQI99(>$yDrR2EaO5dPk+YhgJV%2%+Jjxb6u8qGjYg&1`5WNVZw zyOgq#^&3yD9(+-}dj_dxx=vI`*f93sv^+|0sGfwMBG=O#u|WsYTHeyTsJhka#FL%` zixF|*NeBAl!&CKrP`cYMSv|9EN%@LGUcZ%>=JGOAy=*wVdQ>Gpk#$zSmXlIhI$+#S zt-h_KJD;2ZSLmbioL89_S0&HtNGxxcmTmAdFY8(gmwwS`^@yAlS1$=gsVDs5Rd+oI zwP@K_AH0@?iKI2MT+2(UJwP&M4%EiTJ%6jlS+iN5ROp&!l2oqA^`UyaI-*b1%X%g6 z15R13-)-%m<>SMxC9V1b znI}zxIIwW`c<((bK4ms~zsqA0)GAS4|Kw;>-RH|vSL5mj_}aKVb8)~GwKkOPId#W- zMjG&LL$)V5_ncI{{M(ow$H`1uIlXSVAL(Q&`imO5UR0-;bg4@3Ys;|o?eJ5wEAsZz z=8nx-At2vckvES^7yRX+VM~f#MMNmdK_Gqmp*ABav-NJ}yer?Pi$hB1(4|Yu>%xip z?lHtj532H7WJ(__*=@t$NOI2gFK+7BF!<_*5DTx@^I=O1%hMBPM7ithF{<42t9#3` zRVT?ab$`khid#?CYfoRK6w5M^Ba=MII%RtODP@!`Cn4gs*!6rT zzb1uS4tdoXAgs9hBP*uEGt0w5P%Jm}G7LvO`NL7T&I(lq5b=;C^Eo(3) zH(WU7V3QuKiX(c=%D+diKZU5sOPBa}To8 zN%bY8a;?a0C@&mZ;GbK4Pe~>|j}i5`zj!OR_VQa-ej)3b3_V{hP9BG0s^5&rP^(>> z+*x^c9q)e<`s{t97PG!1h*Ia~tKVW6T+4f}d(K0A@UOM%Vd^CLnq^M`lF*i4ITywF zU{(yvG7#H(B#qxjtTFC;qTh32vD6CWl6`|_Mb9R{Q^K}i@$Ev z6HWVSom-C;;|PBYRP7z*gX3KB>AMk^uh!++_IjC$y(f(xe%+wzz$s2$)93cGwd#{l*^4*Y0`dAMXA~)U>5CJIgl@yt z7c)6>>$kd`vpiI_Pr^e)?5T?zY3pwU$QsfwlIUmr zO*o-cUCRpjhJe11(Z|rMS1i?M(z@SBy>9%ws6N}`OpoQMzRzfEy^}{=NdANZ-ifJDa%gzpY%#cqSy1R zzA`4SfXQn00JHou?XmLfF5-^;zRYSHyl}ep6J!>*}E#=_>#%^vbvm(<%tnu~-$cb;2p_<-+gX#K};*5M1-oIN@>&7FYG`g%0 zIReX>U*>}RM&h8CGPPqw>R%(~@Ap1NLHUL~2;3u#{xho&N2 zCQRN9Rm)U<(^)G>`5#%J@{}-aojtQX_obZDnmvK&zaiEhJ5&z?Tk?y#@z(=-Y?PI4RYx!NeWAt}IPm)(E<*)YWS4HIe$<>8{lX7{~mmjQHwR+%hJ*3AI$!rzz z(lxGrCfWQtF~;A= zbR-Tyh8!Jf0bi7~fXADtiWV(QO5eIg{(i|@?eCbVN8t04Y(DtiNwx?0q9j`Y{#cUj z1O9lDEd+Ots~BxRvgz6p8qYVOkXZMw08b>@9^l1EHXl5dWOD}v<)cPe z(g4KF=*R?+k@7Q?0DsuWY6Ed&bfg1}W3~IHA7j1C#~K6T>gdQMFpkwfl^N^PKGt!- z*zveN5(in}o@Jk-BSk%ax7wIL^sx)zT<_Jozrlwj(Ow3NB&v`7A2w#{HBnc=#=U)% z0*Fmn2@J3WTX&nS)N66w)*4%Iudz>EKj6!gYytSnB%2HVW0EZxH2#}RN2Vh1G8at% zKVqV4D$-(nnX_9TzRmFO_2D}}2Grr(U0P}QPJQ_EY>c=2SOxGB7qx(2a8Uug(M2ub zFJ06(??#NkKK7}}03Y-GikuXhGe>C@CR9c6x~NFww4ez7aa62(4wVNR70DZL%tamG zdK;?B8?EzAD)j+~&3vuF=pwh!2A=1l77#O4HfdetMq9vWw7)3z8y&;w(|xSPz+;1_ zV_jOyk|Gd3%5JPn3o4@{eJin_$8qqWmyXq6(CGMN3(iy0&rg+yn{U^h>{1t*VPJO;$WkOd25mtfdlwci39MDE}DV^ zMwCMsw}Phr`7k>88$MJ4ywyc*;8We3Neo_UA~gv9n5(sb$?3^Kv~CZyz`t@11#n>+ z9Qa%pjcl`-zQkk9}$}0$=`uig9^7qVW+Esv>yr7Y4<;msr@*I!ZAD(l1|7 z=(wGCYy%HzXnC{+81r1B4J_NI!Z+X z(l1|;=y;rWYy;1AQ42V29IA>$3k#Ww#PBD$Lkqj$4L*JWyv9Wx;Lk!&LUCWCp>uYT z;brzI6$zMl^;INzogPL9zrjfqK*&hJ0Dd*}1phGggz8RCs{rQM6G|}v#0#lNKpaxP z>w6L&kt)>zzc=v$5?09>RN*Bef_iXb4{XAL!IcA})vZ0ZV3y!t8?*Wy~@B?lsfaQ(Qe(SYGRe3RGPGg z!6jChCXAx~FnLL-X+lTTny|RZ5__k8YM}vNXwTWoGZKw=n@|RN*Bef_hu(2yDWE!DG(wUS(h`N}V}uv|Bf-nph<$ zl_srWaETSB38Sb#OkPrIn$QuoCM*`%YB|I{wa|d?G+9|_X#6H9f~W1dYPKR_;YjN! zw>BXC@)e1Whk3^~@GKX#fMdp?sz|i3kf}%vU${dHyWpihegVAPMIGQRp(ml(&S>bI z-P`aB?NcfeF!AcENbp)7MhCydNfbcHNWlPpGV}!Bn0i9>f0788V^1i>01z*vA^~wo z{jL?H5j-MQssny=A^{|Dk|3J zBNop0DKrkGU%n#I@vYvm4ZPV!E#Sq*p{huoZ;DKN{ zUPwg(;*hS4K{J3n-Y6q6Alcn92gz%RR+eQ)R`xZcI!q} z6RQNJ(xf#EF0sNiVHEX;$xBL26FQ>SgvGU%*xT(>3k~?}6GBCz@kSG>B6xHJ03jm<1K18d!7EcwsJ=akfI0Ra z%8?16dofZtG>4S!NbP@kM52-GjuGN9TQ0G}G+`9=hsjGyO%pnz)`Z1;%i_MC%}sN`x0|dy zBhmOlPy~;iSOqFn?5*_#Vj&0yt7qx(g8i%SP(ZWKeA~F0k+@XbC zaNEZ(fET)`1N=(pNhtmhWV;!qXWOTok${O;Uqyn~@nIzJi=9LPgp5=q;QK;P@E1}~ zsQyh163Z4&_!L9+4{50lz$v01{To8C2mVB7*ur4{8By!hyk+1Eb@; z%D`BZI`g>EZr!MAVwIp&nzV+&C03XwjH3Q9c}b~hLPyk^usFdId%At<(FeTml2B-9 zJl=$=2);Nf)^`LfyxOPGIFNq%ibTg(c*i#IIv2Ho=NgBqBGJM^rXn%?Tio-7UGV#S z`~rBVi#ovjc_NvUZZJn@)e1W-|>!Z;BID6_e_I#*k@IdXkj5!kr@6b z?)kzl_>XR~03PBdJHRC-()md!-Wp_A8UA(Z3QWBEDiXZz3B16&_(%m1GEy*rM+6Sw z$F`jm4lDuv_2-epn&_B&?D%sKQG`S6PRvQ%7JE4h$Z1 zhW9E1V^QkN!$!MxqpFEjf>LSH8U~kGVVW?C`orWUrKSlTQES3tWTu)wd)lWK8t@G! zD=QL>Zv{p0p(lmXRiBSoc$9UNTN{vm`HDoxhkM61aN0#J;3DHtRU}$i$W$bTU+4}k z?1GQ*@eAPDF6sb35qc7ep9a~eQF@Af${7imc=c5zcpV)^0>8*f6hO#G!2q5YdV)Wi zdP4PkNd(NXCzN6Uh!;|kfH;(^NO(l5R0k~oOhEZR845^PC1+5Dmxu`J91m&%Y{G%T zl>?*Wy~@B?lsfak(Qe(SYGRe3RGPGg!6jChCXAx~FnLL-X+lTTny@G=vCHjKD-w9m zlS84Q@emWLBKX{>Sg%M}kbjB5=H57ve))<-$93MZ4ZO-lE#O(kp{huKN{UPu`M;*hS@K{J3u!r~%J>^1hOg$BI* zlxl93XCxXcOsIP3c7QDt>HH)VuL!b>4Szp%1twm76$xH<243L5Bwj$sNWlOe7&w5R z>l_NGo|;6!9D71327q`W6$yw#8jC?QU^MUo-#d{25?09>RN*C}i>?<@C)3b zgY0qushu)x;`6sWfQ~gG;P1O&CS}Ve*nv(}a$wHDU1#TP?@ir&c8JyycKr0TZvjiUhB-!|335If()Y87UaRTSHIq zZ&OdGKEP=ez#Mx*DF%ReAr%RTL%LQ6%>YuRI^d5bUO>VsIfE*^L_|=Znb-rHaA0ud z!033dGB6gmADR0%Pb7v^5ll=*|d#)Jt~5qxu0tj|U)e99-#IFNq%dPK*Md&f5LE*G_c*BOVZ9?`-=rXDf; zweI=CF8Ed-zX0xO<4aKi9`2!7*d-L}g6v$w-%MSBiC14eg4gYV7x=#uFCb*3TmT;# zIDr4fITTPmDT#nN_JmRl0P#ZV5fF!TWel1Dq)K(be@`9(39IA`s_+sKLA@Zc2R7lr z;L3r~@m^(MEJ~UAbGL3&6){RoN<|vOU=r&~6GBmcn7pLWG@&DEO<4TI(t3}5YMB9F zzB1G!8XqyCDuVZ36%^~U5eqw7N4c>9>6foZbllE6wt2XC5&?7U38feS;)T!v;*c)YK{J36foZbUe;Gwt?rms0Exh4plv(g@sH#V)zr>A^FQl zhBx^51@Iadb$~w$Jqg8qjfPIyMTVEzr_>{0;?-A=;B|T!9sC9-Q2-$$01z*v9szMk{jS#|JR()91AcGf1thGJGpNE#L!(bBYOFalVLQ#L1yrj@Hp(AQdSe$8Tz0f|j9)XWu z6Uq#YV@#-u;OnAdeKum@{XT)lf%MDQBRXE<9oxV=T+{+yWgMz{L<^awRSb&P4S^TFd3?A>I4)B#G(&Sv@P#`he-p{@ zQXjtnUhbj}@Rrb%P;6&3bjt2+_=WZ<^$3`F_0=PIEf1rEU*aSRAY`Om06!Uef^SSc zq53~b1kAA~lwtsg7gCRaIHZ2p>k%H2D%AnMIgtPoR>>Ju;Uyx1`WO#t0c^s7!IcA} zyZ0h!(bBYOFalVLQ#L1yrj@Hp(AQdSgf(QpKYI7kHCj) z2xW%G(@dy};H#oyeKum@e4jw$K>FqD5gp&^9oxX0UDN_zY#ge3L<GBVgjySC8OzP2dIoHz!d5AtU7ixI^Fo zeyDROpn6mi0dwpLr5FI>h14S;4(ZAmGy_PL>VSWgJOUC{$r)7PB_e{lDX|AO;lSX^ zfzk0^Wne5ynYpD~x2cL4B_^dJjbSi}^`!}+s6R|zQfQjc5w#{PuC=t@Zl79az-Mm^ z^@zqBO{j|C(NlwBeKum@7e0Z;9a_J9J)+}Jy<;1=w~^5O(%@b8S=A$2Fw4{GUKNmju~$hW{^hb!eW;iXIfNd0`~*gMFj|2pK6Cz;@^f zUYUAA_3cRn%(3@S%HKn>9`1$wJtPJ(hcp(0JR()91AZd?M+zWem7GBpULqo>*QbsS z8*pIom@~Xr85oOFW^U}(ZK@(hiAkwQgK4LVgQ788Cb7OWAr$q8$x8}N6FQ>SgvETz z;l7?r`D;jqZ@16#zDDB*K@mK*sS0|jSdTvz4ziANUjx!FUytaxzjtf{*Se?$Jk&T; z^@tW0GWCezpWzP4Uqdq7_VEkgg)Zs7sRDCFrVYQ-KBXQ36R*B{1h2~jFYxD_ zL;-}1lndY=Lr?I%oI?TCCnXUu$DUA%0U%yTJp$s8F4aLZfK;gt_}`O9K*B0HgDSj4 zL{Lvo?14=iP7uItuqsv<^-NvTL<7))Y)X+kLK50jS^nkIBatqF@O zEv+}$r6=46qVZA_sv`KVs92wkSop3_pm8Am^7V+0-|>!Z;BID6_e+C!*k@Ib zXkj5!j~M4j0dwpLr5FI>h14S;4rwd~&4AqkFYv<>2_RvWoIw>{BD%^t zT%9@sn{Z(8m@~Xr85oOFX0GYhZK@(hiAkwQV;D?geQ81{>JO8b6q+Vg?1N=njNhp3AWTQsuDfTJnBVgjySC8OzbQlTzA}3J* zAtU7icwXoU{%Gn6)$b({Fvp%yiUA;ANIe4LP_7=~5vfug@Tx=tNLVFjP=%L>26WJyvju_;916@sz_kbsYk%XtFIox>%zbb{9z|i03jpg z0{HXL6a2T-6RMAPS_Lr2o=}PbAYMp40^*P^)j>0WRH+X5i-{MIuu9IL3NH~6)aNJm zz$P3RTsbg0-m46ZMJY2^bn7-%5u?PURHQKsCb7OWAr$q8$x8}N6FQ>SgvCXc)@$rj z%M5t=%R)V(vBHF^2)-jK)@LIYzUC8X97w->J)+~6y<^*<8PxsK;LY|~)gxM1$kZc- zzsWt9zky`<=Wen9?&~Hyz?O-0dJ>9P1lh%gzn{7S6R*B{1g|>-FYsRyFCb*3TmTOY z9Kg?Y4h2+CO(I~9J)sl>K)jH81jHeY#h@858hC;4ok#!)tK7RXS)^qK ze2vM<`x=eU2SxCrGeY62&qgfV-#W^D4M@LyJ)+}%y<;0V=AssGZ{twaBU)I<)FXyp z;10=OKr(!wk6!>!cTop;Y3NBPz7u438Gfu$lk*WU@#?Eb@H!-n1b&Xmq!0ihBjp14 zs?Zbsp41bnUr!=njy<6i13?*Wy~@B?lrnQ^w{BAvF-lBIMH<6k66;G7LQ#L1yrj@Hp(AQdSUkhl%JKH8^$0xg z%ur@%>}o<)1fLZZt3K(!SeWruIS!;>z8=x>MDN%JUhJY4aIJBu>Jcq0Wa<&auW`@i z?;ja{m5*NlZ*Wlucz5VYC?0M!bjluTc(Z*YDu6lmgi;Iu@j~hm5Qo(7k=p<8h*YT#_+yC|kg!V5pb9S$5!7cU_P{0_ z7+g6pI^L@cj72Fk@9{)pNEN}vq*SCa3?{L@)Ps;C6!nM6OA1XBI-=Hu#ak?`m)ob7 z8SwFERTHZ`AJLdFp(=uJj*3;E^j|D|$}GtF2uQztJ)+~sy<;1Amy24!>x@HHk7!{b zQ;!(_S{qAq3cl6HFMxa6_)=7WhkGdGZ|N9b7i8xe{-%9OS774RSC8Ozd*B8B@5BoT z87UXQM+Oeye{l{4R8LAGV2(YZ6azrKka`5fA&ufl?SFVgs#FL3_v8_fuu9IL3NH~6 z)C&@OU=t1ut{fO0?^OoIqLi5nx^u!r~{E z)_d$z%MAGPS5yTkWrI*1Wdg8>Jhy54I_b{ zYBDJVK*&hB0B#69!EZ`Eq5A100_NBgN-+S$3!wqTAziA2W&o*D9q_S<1dy;w&Y%h} z5fRj1rjEcS92i_VFgo6=42(r7Gv{{eHdPU$#H3WDF$^ZLzBC~e^@qtz3QZF_qSl1P zLR%|G+ozTp@I59g>k*B=21W4NS8bslVPV`lN<9M7FJF)7c${}^1J89)3pi~Ys(M5V z3z>Sv@F%!K^7oGnZ}9O8;59Dl0Dl&G5{mm84V|)!3@@`!sYk%XtFIox>+~=>_zg~? z076E}1@Nn(C-{e{CscQGS_Lr2o=}PbAYMp40^*SRU9U%YM5 z2Nug;%N7S0I zIMdR4p?zvS0w4YAP-bWxV?tE~Ul$eYvk?pL_X#u(q+h-s(eV=R*aqI=q89Kf<51Nj zT3E=`BZj}yJ(s_KWcaH-egT|k<4aKi9^j#nzoldN#2`D%@MrB)x&jlgzIp_&8v-xz ze2Jh^i?vVWbBg0F5`~rBni#ottLQg`mozc)KySL#N+NabbVB*zRkKnaDj1GQ@ zlPG|Yk#Yh2WatULG4+J%|0EGG$DUA%0U%yTJp$s8`dzO_ctomH2mIzl0!UaTXHbQg zhzROqJg5b*2?qvO4vg;Ji_EbNFJ)%4ClW*28B9z{MH<6k66;Gn2suJgf0(?a&@`bV zYE4+IvACaYpIVQ=hrB+N85&PBp(=u}ii-8wh=ucg0*wRdm#;^3e5-eC18;Uw3wW_{ zsOk|dEM)2t!(Zf{%iljT{7E0b0N&%G4)75k3i(?)hK~!fwT3@rpHh#2iC14eg4Z>H z7x>?tL;-}1lndYvfdlxV&Y^(nQAq^Mu_u&b0Eib-kAOI&D`U_MAXTaZ{!#J>NLVFj zP=%L>2*QbsS8*pIom@~Xr85oOFW>$9VHdPU$#H3WD!L(DwLD85klUQGx z5Q_T4u!eYMVa9_`*{QV=tx7%lVU!(DZpa>p&V-@sLu^xXc9Aq8kz6PXU zz8=wWfA81^u60ohc&Krx>Jcq0Wa<&aKf@i8zkg)7?c*1~3tiL!ekJrI6n_Y^-Hg(+ z?NiQ2z{IPs9>MGQFcSF1PND!pM(PppeW54#3#lhm|0{`rIrfB73;^*$swohMaw`yz zNR{eI4aib5f)zU6KEVrzkEHS z<14&l8+e_ITEKISLsgGxVIfnG82&Bpx%~Yj!|(I)3*enD>HzQOp^(3&WB9Njn>PGT z`;>YFOuYK)5xg!ByuhDx5(N-4QZ9gh3_Zd3at;MlpOi$v9D71327q`W^$3VVx>N_v z08*to;D1jZ0ST+*465)F5kWmUu?IHcz~IV((eYkoU@S_RneNtYsv<^-NvTL<7))Y) zX+kLK50jS^nkIBatqF@OEv+}$r2D78h{j7zsEXjbqGEkEV&S_!fyROK%hw}1 ze#bkufxDSO-7gK^VV_k!qJ@P_J!1Huxaacsj|~6OO%}jI+++v1#6&th3B_B3>?*^* zPF;bCS6@AX*FAw3co!e3076E}1@MT#0X&&{LiIIC1kAA~lwtsg7gCRaIHa){Gy`@E zyuc4jB!Glfat2j+iRdcpaCPbkY{G%TW6tniWne5ynK`~&x2cL4B_^dJjbSi}^`!}+ zs6R|zQfQjc5w#{PM$V~b&z|aZQ!(vTEIodp{hr;u#l-o48PDFlD~gs_y`}r0G{ol4)7D9C!zRhkc}Fpr`V^Q zkAR6+F(_U~hmpW9auNj)GEy#p=Y^i&kEWhb{az9QbLiP7#=CW!s)$iyQYz9I29sD{nh=Wm z!{jA}rU@NUYr>+iv@W+#tw-QJ&kbdU#zRb~ir{mjVtsvKVWUr=aUlKj^@xt^yki@9 zm5W-yvy4Mkk7!{bQ;!(_O!r*={*mGHeEb4OUvHmMkAR6+ zF(_Uann9iX;14^A0tgu?7r>u~p5VWwo=|D_JmRl0P#ZV5fF!z?I4dxmFj@M zn0NsRtK?*Wy~@B?lrnQ{w{BAvF-lBIMH<6k66;G7LQ#L1 zyrj@Hp(AQdSX^Xjy~aMZ%z&4_HPj;-D@>@0;5(vXeKum@Yd(R-f%MDQBRYQBJGLE~ zLESG6-fW*$J)(t$Og&=wo7{8x`$vXC!u&nkX>x}`>881@hS$z z>(0On{FlTF2pK6CzykvZ@N=C*0o7BJ2$*9}D8&E}FQgs;aY$n^$fMD~3w-ZH0!UaT zXHbQgh%UAcm!*!tCL9<%<_zyu2F9Y4nP+wDHdPU$#H3WDF$^ZLzBC~e^@qtz3QZF_ zqSl1P?=7wK-d4>bEi>S2Ojh34XnZ~>f)|}vbpTmWwkJ;A?CJ)!ylr&R!R> zBWg`pyv5Rbo_%VW0e>XP=7T?)WOKp)o@DdubCK~cFdaD^0qK^nMs$3ycWeVManU$1 zj@9m45RCOfC%Ui;#tB(lKnBw+5Ax^IFcg>}!%*LJs(p1QN2<<1CiwvaDPT@%);q?@ zILL)9_1|G+moIGJXZa@c=2mxp(_HXxl59Tsw@Ee^eDAkcd}N~aO%}$#&HBk?0n#l$ zS?Ks9@7M_L{!fiBhgE( z)fvcSdHleXZK>myCQB2;GFcweKUwCRH&06mp9|jWg33X;Q2k_t#sU*+2?Add73)F4 z!m~VXQCngsW%`A_^0oli(kD948)cgF;2lH9#V# zJ;5g@4nXKhPayQPCpb~Lko~xY3g_$>6U{qI%#jGABNfoB@8rMK1(0Ek;MC$URPp2y-})soqx_lds#S zRygqP@2JR$YytTGNjA4mow06m@5X`it(&Y9AS30sO~$&_$7%!T_*fla9IJoZyxqq5 zyN^`>=lNJIAY)~MwZOC=Zl4+~@S~G#K6sxb+XMW#BwGO9H_7$^KR(G8f)^&)lfg^h zRi&ZauV|cNLLvBM@UkRZ2wt9K`+!#_*#hwDB-;bLHp%9LPfN17;D@~@5UfubBKk=4 zOpaAR`sL>b9S`)5ZD8!!KN;wFsK-)n=Z2r-gB8Ge=8>!>;DcS%0ph=Ct+StAe_`dT zi2l>y+3$7{@B=2&iU@|k^c)nfD+77(=Ms4!sgl|Xt=D>nCpAq*EB2 z9G@8EI7>&n;nD#%pH#NmFhi+q&{&6rAc9%bQpSN}K@Ge(%^u+SE@}Zk9D0ITWMTmL zL`$4<1s{=;2|V6KE#R8a6MVL-6~K?Ws0I9T=n4LBS1TO)f^Ll(%w>R*Ag3N6B|)76 zQxn8@Ad59z${Tw`LvJ-9_<47 zMHe0SO@p_(r~v-RMaRvtuWB5dkQ8h5Em(wwh#E!BwGl6 zS&}^&{O4B1sl1HQ_+Jz1Weog(NwyGtPm=8e{#%kQ0RJP&_5hEzE5l-AzT+h8yQ&ks z_m~rM?*d|4j(EWBY^3~EtbeRFW9@8IWuFBeY@+H3Bdw{V2;A7CNbCHh2)wpOk=ETw z5g6U*zZmwrF@_sNUhWgXIM!HS1?nH`IL3+{k89BJ1$6wdJG2=1ITwuqeL{>Z21bi7 z=(G45n*sN+v9=#M_k(B9c#Iop1BrU6N8{Z|4~W%LuU?_?>1v;T#WxN9-9=ONDI>F} zJ~>1L2NEx$uNs|iIj!P94gM&J>ZCTBW!9tYdO)1nW#sPB;|_S_-J|V?_XV;}ZTpe+ zBRkb?)RpA4Tvu6O_o+wvy=v23@Tw$R0A8JBeaoD&mY9w#bKo);jR6@czswoy1n<}e z#*Y09i;mCqj$^>sv40iO@rB;;I3Sdz-i?6cVErrWi8ct@qa!Z>((!(h-S*w1W0GS5 zPuOR4+YWdq(=N+DjX5S%Mex@zuCiV#)+YcKZg;oGfj_XZstnP3 z_(jzal3gGM@~P~%(8dA`tMW|iRI@8<3yASbk=7EY(gL1hqDqn0w~`|8_8vuAi!4-P z8u(HZRU^{EWl(atWDFHw{tQ2Y8>46yow%xN15T~oYwD4Pu z0CBofq=nz22*l}1kyZ*prxt+`LO`DN5DPxKc515)n5X*1^Cxr@+-cSGA3n^_TdB=+ymIwb?lS>ogy7UgpT=m~Ar+5B5Zk2Em4o z9L#`(E`||?q6TEvs2Uj3q6TF8%r=bcoPUe?^PMExl1o?k%xE=psg-kSHvB(p#MDQ~ z{yNBD+awkfp&xj;$>gdEe4mRJ0|}3^z~YS-3zdNhiX0Pwxs-p;S55&W%{m&GILT9R^xAi2ChrYO7m)0s@W$h*j zkj}r~uF+f;&5v%^Z4z|RymULSu*~4xY?gK3B+4@2hqmiBiLYqBXFH2PiZ9#A!#p+< zz(pq7e&nU2-N)JbexiL!*#j#_@GVI;AADPq z?E(H#k}UvVaY;44+@!7@p>d@N<;t}Hd{vU|0scgi%?E!b$>xH;Z?e(|jUOb%1>heh z*&g5@C)s@PPm*jdc+X3NCo~>rLiGf^SCZ`k-aE z5_pb{rT2~TF0D_PR1|?NGf*kgda+4G5eSn?F_EZHKb1CAh?jP3cWDtEIU4|BSt-(b zkW*;^j}DyMU0M*#+$a0ljlpi*W7h$G(nQK*tV`?5NfC%Il_D)tEcFA3FO?##t34ZI zz$dt~9U$&ieQA*>F#;q}qa$O$6q3ICWj!QX0f`AqOUeS?vk*jtpAYxxy08nzHBkdT z%v@3fV7w4DAXHUtYm+N-J;c+}f-C8fiIC%(BQ_fr7nwz6fypN9VXFPWW6r(+u60oh zh(p>l=Mm9A*e6sANW`@(cpsl+1(3<6YG7g_VFWgDlU1ZcfnVT06+ogW6ByXkO%fE7wf(c)#NaL+xU4SnzS!tTa$Acmm ze@n$d%Vo9>$MYXSz}KALQNM}%QNKwPqJEQLMEz}z$v%c zzvrR};IBTGp_L-%J+ckxbU3cB+A3`n4~Cm6$`284sEZ7p?q5|jNTCYzC%+*T4_ z^hiuVVlNN=#Fj{q7+J9U*^EBOXZFOw2LC0Awv}p1+7wjbC*P(9lBj&rre;IpKP)yn z6c(E#o0X{jz!M(l0=V8qE#NDIMexT)_+1)340VGaRo`6pa zAp;X9Q3Dbl^^*ADt*8OpE+QaV4iOM`i-ieS=HD$;nkoexwI z{CGbz2pt;F42s~fs7T}Vpa?!QD$=+xD1wP<8Hqs~&1}OO&%uOxw$Y7aGzoIlZxZXM z-z4Nwze(hyev<@5{cX)d*QUH2wHNHrrS)lFjqTYc<$=B&`?lrWgcrL9?BHdYS)QBm zqPgP^ji$V4&fB5eB=VwppB=hQVlJBh=)a0kmrn9{O#n|bQF-rJX+c@*!6|?jxoG0U z23crQ`0DAs($?jF`1;&57yPFWRodmfgT}~*E1}*yz~_G?C=Rl)myIU31mMSPtm>9P z>zgJOMc{sySEE*nw8l*;ia?lDid(1BhRTzjT?_d1z)r3c)`F63^g#Hi(RP;>R5JGt zf{t-{XbEgNj}8#aI{cXPAX>5&13&A58v}mZMI9jgs^MrQwte@GI$K>!(7na!F8&{b z(A5h?EoR!Y9yC#_b5OOdr7llmvY*6cGZK^AO5$T4i3v#D$AdqyB@!e?R_9(eqaWon zd*U$$pO8e`N;M^I3aapvdk2t2<&!ow8xr5J*yvDLWWsGJ*{np>0UzUWE`Up1)B>&# z7QvUfS^>PyMJ*t~iCj}6Tfm1}ZdDCT7{U#xg`b{Dq^_wIh>Thcv&ao*k=jvbW z(53YOUsLVbCS{J-ylCFIL!&7#nz!uGZ4!CWylsbWlbDO< z^*i((uc%8MkJkk76cd&Aj!6s3vy`(E(!FE(*qjXvtO#{E!E3 z4EQA%b%5}zhNG3(_T4+`Y;`R`_bX0!@qZbFu3ji=G1H#)pov6eyStOa-+GCJoXP*d(%thxmYrogBY`mwS9Vz+8O(=xPO! zI7xW|J|u(;Oq@gwNO;ss;)A!M2ET0k6&PX03W1UB&~mynl)P=nbeG#C8ct19jC-a+FhCe(Wec;hF7;vftEFbi@^0KWO- zm2!1Up!Fe>iX!knpNNXI4l=1I0%1~(xOFORsO({G$^H%8E3lL6gted~ia_|N(RP;> zR77#>JjUR0fb-}8v1}Iw<3Y4!D+a#P12+b|!bKe*{Hoz-CANL{4yFhcbuEEE;dB>& z&meU5LQ#vE_N)g@)ao2mZEGRRlbGx$G1-j7P+MJ*t~iCj}6Tfn~s17ISjcYrO-{FLwFW>fp6eM--N^i6?+*}zm#YGBeJ zJ%LRkdqAKMCU$cC243j#=>T)_`MIkVK;k6j3An3yru4zYNz{OZN7aZA-ijI!Z-p(e ziQ_C&9UY8oG8B**D{B&n8`=|$8=?l>-BVcr@l3RUI2N6}E%gL8@hF#&7l%-T*(Kz( zeRP*bF4!1XZs32|fYSMxE)C|TDuPK*sYv4wR=ZRY{8y8ebZ9)#4ic&e-rEls!kfm? zK@nU;MH!{x(nQ1ZKp1+*Z7)h&o(KkCiiX2xd|_J&)&()GP684<3)3Fr*4z@i{_G@8qImpJb9;X zlbDO<^ZDaODdyCrCwaUkfY0)!FTZ#EFScqA_0vcJT;rmNml$NBN#RSTDs-l;%Mbec z+%y;bwNF(#<-LQ(O(xWP2YBW)L2;0U--Rk=}Nh}CD3}ONktL(j~+!@kGi_* zE{Z^yR3mPkN*gM3%`Mr#f%geU*C)WPi#kB~Rm0IrY&%D$!#U^a*xCWBz~MkTO!f*98LVr;GdG{&j$aNMB7R=C2b0-@RNH7kVNH^ zHZ>a(@327VP*`k|Y*wQ713$!rS^y7lQ44r@un6AdY6b9I7qx%{Cvr`RYyp2841kH8 z-T^FIxge%|7uT8EZJylL?+m6XPym?>#0v;NARiA-riE5){GDh>A3h4~k%-TACiT(abii@eKXX zMmLVpB*;;}NvxxOlaNRKCXtW&O%f3Gw>1w_HbdoH{fs$XTBrJ&YR@()w|UpTZ8 zY}GFEqjv#3!9^1t=BbV)*9mJu zNj7>Qd@4m+P|4go`a?1XkNcS!*tv+Or-sQLA%MwSSJpWIu_?W+W!JmBcEK!~`V1okUwAagOI` z;>QMmkwm{V_}e7fR;np!Q&5GU+&h3IDxb8e*^qdh1wx0yA`@;)$z~<04tQ4&Y5{zN zi(0?~f<^Gju2ulga#0INa3a@~$QJO2!2p=Z=^em+oC{*gcX5>^^?FZktA7d<%m$`{ zQUj9)u?cJv+4}|hU}7i7Z{X=3pAIk=pRc-F0VGaRo`AmzHo?S6)PRIXy(B((D{4Tz z6}G@8jTP(Ws^?3h5@(4Ju25H;W*Q!IdZCR#uoi%wqclb`@L@hF#&=h#p> zJeXZVPTMc&(#QoHr8<1Qsruc#%OCTISwyg00Kf`TE>6 z7ySM&RFk2+chI=fgnI7)A9-z1tWO{;eA_I@EdjXriD$!#UE*ds9ki7zG5mPnl8Ihy#k!S5!~Z3cgsMB7R=C2b0-@RNH7 zkVNH^HZ>a(r&%C$C@eNfHY-v4f&c0YwE*7FS{Jo|1SfJ$iEIIH z3TP(Ws^?3h5@(4Ju2 z5H;Y>Q!IdZCR#uoi%wqVlb`@L@hF#&r`k|DJeXZVPTPxpugwJ;(xLIopa{MzD$>~V+G>N)5y1;gR*p#Hke~=As-YL_vX?1)} zwP%}@tG#RAww#;rV)tiry(}}!b2DBvKQ*`8B>tj#&D?I2$cyHe=60LJTr{tk+pR~N zy0lYr8n}mv%6rGXY%%U;pHeb`&v4Pia}2W3GWU+++KR$y_Nmti@cGwOKP&GYG%hls zDuNICYEZ0T`Y#r~bZsS*TLSRdFIOTx0*`lTEi9m(Nb65Y5eSoN#6+S({Z!ge z`HyQW71_UmKQ>Qwtag_cltd8-pGuJyR77#>JjUR0xAW)#v8=<7IS-;GTQTs39*;5L zY8Q2Y@T-QSmDu*(JL*x>wFKSu79+Vmyxkyl^+I7H0;N5{7#1}k98_&?bkV zjKt)&k~r2QF#(Ayl4wgLR(p;nzGU!gNp!uz8X0~CCXJ|q_+vvtI zngluOH;HxBZxZsT-z4%;zexh3{VN#8_bt-MBe8btbfZsMxb*y%m7L;V8 z2g0XPqy?4Cy`w)QWAONy^XLGvtiz8v527VoG4Re zpu5CkB)5mx7=*4~C`?44v?mzDq6UP6s%a(FR(!9P*`k|Y*wQ71OLDmNCCXt zMJ?d=!6NuzPe%b9b5RROa3a@~$QJOU!2p=Z=^em+oC{*gcX5^_^#V_BtA7d<%m$`{ zQUj9)u?cJvS!#<81txZ~mjI9U_;i4|_?+iz1&}yNc>;bugbYlaL=8xIlp68DTTuhz zt*`|)ahzqUql0lxh5|BUWyb{KhV}&GhNuC*nqmROGtmO#SakBWJ_!n76OVEUd9V$o z!-Lr+kQNKyZqkfafNBt%V z=+Unwf>TG+JnUstUe47g?9!$6BwthQ*(T)z@7lL5=O(<^UB8Q$WoCJ9#*5~WyL6kx zUo?;2rQ0O(qWQdC8cll9e7b1X{zqNRN(s%VH$Ahf@tgS1%MM zB2d~BjA2m&!a>!xmbyHN$$k=(%}7jcD~Tt1BqktnP7-a2#Pd8y6J3MvPom2Vel&@; zm1;`b6jb3S_YNS5$|r4VHYA>9fzY9_*d*DkMC}LumM@S3_%j!^fOnfndx9V1=_r7Q zx~K&tIFV~gWDEG7;1Za~=^em+oC{*gcd^!z`dUwJtA7d<%m$`{QUj9)u?cJvS!#<8 z1txZK{01K4@#z3_@p+Z26+q%73;uZxN_?hK0H-$z9n^XzD% zrolwDG(BjenQd6(8JbYfHo9?)CP9w+O=2DOn}j^-H;H`IZ<2thzpZ(=k4Vb@?n`pPS}_XKt*t z%Xb#P5>YF@0GG1fycYFo?=o_1a^BAX?-mz0%1~(xOFOR zsC>}bwSZTcr#e=uw3C6If0pXx(TT5M@#AH8- z$z~)bx0S@hJQ5R-I3tO+MB?e5qlt42o}WY)7<^9>Z7bE3v?-{1@IOZwSYe}k@f^X(9=->7rCefBsh_4N@NT8rr;8o$mt!x zew+(p%6BnsN!{ehZS_xqg4w`SP-)2p}@pWj^Dt2Jw6>^EV3`%)}` zcqUpv9E(n#?317XHt{HzkiUdbgV`nIw0)}YwYgwpT)BanmC|`rmj?4v6~UyZRHX5W zZ&&496~S*bSxJY+WkC^qRaB&Ldr$=bBr4LlCn$o6YH51VMl;*6#xpdbo^5pF7)^p4 z^_#>x>Ng2_)Nc~`sNW<3QGZ+W@DH2va<2aUye_Q=_?l|ZHYuCDYu~n( zGs|-`UNpZuuiGU4qIvtgZj;E1=8xxfo5Wl+zukZDpe}vgtJehZKTK5KJ8ra~-0Zs zN?DJ<<6T;hHK`~9&*@R5^{J!?gh@5x)~U3i@(yR$0(Q+)9jo1?1tr<&f$*smX+b4( z?;z+HmwN~B6V9Up#Ig=Q<~)d&Y{kF_c|68|`?;tCgkLort;DwP-ce_(YYDmsSd8TM z&@l*Iy-=8lKxt1fhD8ks2UXiz>hdHe`$*{X9n#XBd2S z61~>oo04c-sive&K^1;-?*NjheA1?7Lt-BbgbszpCdpSqR_L*s&=2);Nf(zqcgf^Uk7 zH0}(FV4_+^V$eo2+pxwnG@+htbmJIJf*kdm#5(FX33=3S68Wg#Bmq%>Tl4TcoAPq5 z{>-jjT08lgYR@()CwtevZ8M7Dq{gG*o{r*{DR zaW04{-^HPp)aQG0Tm4g@U^Xxnlp2^ch)rOV$WmK$C@`^;<2P`g$EO3##i#9R1&}yN zc>=yPgzW#*cJ6VTO?CgDNirn{<1mgh3`PebL`Ni1)U2z0yHxfyH%XKzOP;w}0c;ryj{J!hn-}iTY=i2+e?{&@f`aS>5dwuWETI;hu zYwc_A_4E9GKbV|E1`vNL#`kW2$`eFCs9zF8%U46_-6|E=jX&f1JQ}(jQvGH1NJMc2^sVmvf zGN-)l#EWwOm9mb!C=Xhx%1K_73s$OfG8g6ON{!DeewV&sd6nQ5S{l1|T&SU3V&Mev zUMrPy3}s33%Jz*0r&F2aO%I7=`fdcR6AI0b+(xok6Y>;NNwu z`j$ZJ`M;}&5FxlgOSO>JX-Np;q!vzYWdtinn!5sA&6Di+2G1b6bdMzr$9#sk_?d7R@6NI1LB7(jB8pC|DBE;5*$LkwG_Q zS9=^AujRG_FZ1rbvi&S`%G*x7C^ug@>&T08>y@jVeXfyvZNx+St8=#+F))LiqZ7 zoUs1@F~dBaL9P?v-8xo%OQ7{nt%?vFy}KT@7ScLSt0Dw(QVS=yGJ=%@&0PU5aPH(f zp)D-Qiyp*JoOGn3g_V|jM>CQRK8`gXU67gM@E!9(TJkCe|6;*)z$I4dg7~Y4qm|q? z?j8MZAUMRFgP_ZY>#3BRn5M`5XUAu{1(?l=NL~mFVciYC5nApL> zDJL?)#>mq-PfzrocCyR86nm*Otktw>qgchC+&e%vs(sT&2Ql%qW)p{E#+=RONsRsA zqb=tEo@%86JlD+#-(j)fC)~1+V8NTZt8Znxkd8` z1Wp4-A3 zYDEUJT5${JES$$Qjt;Xl84BdY$}EzdV@KY()r|y2In#gVYX*XNaOYTeGrB49`?;3c4!>ngz%wW zNaIW=gwOUu8do|YOsZo^jQ64$G**ro`kbu2J|}Xo&q?0vb2h;1huw#( z^~lS2^(xaVTEDTUab(a<+0Guv#%sClz{|XIrrXalr@ZaNi}Hz;vyQwdpIN!eNnVso zR<3d~7vb+Ec$oRm_G@91|MpC#-*Zg%IdsZ(J$UMTu9i#_{86Is89D4T5S z+D-JDCVF`$dc&Idl_gPPVhanuoX7+lBTwfJdZKr+lU?qr_?A=})@s_cQLN%m?j0Z- z)xK$?gP3?ovx!47BL{Ax&E`pr8u%}B)V3kta#6#)CFE=S3l)vFu$er1gE^Jb`Lv1#=Q0Xm zwr5O8fH$SncfvZ5w~c#8 zzuWjMVfQ|>JO6n)6?Wr=qA#=9vp+PE^?Qi2$+oWDM6YS0muI3ktcf365+x>PS@`8d zCfFExI=9dhy{(<>ay!M>rqZxh)25AL6@PN?0NJSaO&cA=#GRT=9Euq^a1(7dPh!-- zrR5yJ!>m+*$GREe%S{%*Tdh=pgyX%YjV!>;b#J2#Cb@VAnBe56{SH%gQ`fT1Et*Fl za2hxYaZZ?RkU7DeWcPFVz+@+%-{6gwPZw;-VKB7@0EWFYaxRgw>@ z6&c8C#Vwe#a30e*I?U2!D3B8?&m_n)Vo#W5hzxu~$^v9%qB7JC_lsP?4nY8OR@Am3 zUv^Q$yd~so`^y!Lwy>EzdV@KY()rAa2In#gVYX*XNMj@YK8Qm2rS{Drc4+MCgmA|T zX&mK*@G)LU<4h-nNp&oV@m@58#_GSJmo;5KMo!3HpOdxM=S1%HImvr{&IWk>u=`Ny zk(cl4vsbBTecztOkwG_QEqfdrujRG_FY{iyiv28e%G*x7D34nu>&T1pGpkfN$&2#j zRjQoKMY(8|#^)8kOYgC~O7KW6jomvA)=&<$Z~}O?mCA1^@}S8NU;p-Atk310_Ixg! z20!sotsc8~(3tXr@M#Y_;dnF5($VCW0Decus&5Ijey&v!f?NEx9<>(I+Ec3{ z1aVReC$}-40q)@3$#p_oSdte#h@Uv=NJR@PE%y#WXL7lBfQ9+!g3KI;@0btL zl2v% z-?Y&|O#Do+9Y| z8BB8V4lu#VPx~DnQ`ri(xkd8`1Wp4-A^HgbT5db=GVf8V+Rrkl zyzRt`@-3@o9eGg}t5!M5i*m13tDMY5x$CNp&nteHx|UZ79;l_Udq+=0+1J7e;3-xr zzpTiECO>@r+k3V?mp`-TbKx}j{zq!{*u8_sqgssj4*0mmPB`8S)3u}A62Pzitrpj} z1X@4PstCbZfA>OKyJ%H}AWrHLC$}k$#p_oSdte#h@Uv=NJR@PE%y#W zXL7lBfIFLyF38M!QBWVGC9h)en-*LLyxK}#5P$V>w36G#y`$f4e3r0#o!OoLfFgF| zg`zLB*t0)0k@b6svdOlt-9)cxqL*i)H>`=TS`sBDmZZ`|CfFExI;ZQ2Uc*jyxt8Mk zsWhzBv}vPQ#h=_eKsKs<(?$m|afJpEhhjz!+(etrlNdGdYb?|N7FH_2{oIW3=_U){ zB~~gx!tq|yMi$^odbFbqCb@VAnBe56{SJRr*;D$j^lTo1z-izp#5rNML3)BY$?oj( zfyqujzrhPEpDx&z&p%8SKys3wCvZI%8B9(h1BoZDl6+XL$Us&rZo!;|^O(lbVU{LC zft*-*CP9`Fd%`S3WZ=fOl>uaBq5@f%U*v&E(M= z%&C;l=T$T~mr)3_J!3)|&(ZILD1={V-wa}h##|?axAH<7dpjY#j~CK7$_Zgo9ZO=o z7tNrt`fuoEP1lc+6SCLmWbO4ik$Zhk@?M{_0bW1sJ}lBBFW=Q$u2#|dqCHb1gKkRt zO>VrF+YY?UyYp)Hv&<=PJMp4iW3{X!FUoaSt8$VT<*e1JoXkZzeYM8t6~9Yww7g32 z?OGbUcf3WvLOS*}62N1uRDN2K2TgwX`nUHKeJ-!C=X2pS`1VI@_1L|G#=TmM_YU~* z$DMGz8J6e_a!UX|_gF2iZwa)%sZ|kz)Bn#4X>F@j5rR0WN1WWs2v%n5vgG{@&T{VL zI-xBri4eq3oOGn3g%uG_?xTZ`t<6UlWM;i6s1MSTS26e{3$6oRWTh^Mzj`=Y$!+7_ z!4bh?e3sx#&F=i)C}KBWDEcysJ^MowS-*!Un=G<+6TPO1UY?2GuqHldNtBpaoJtd! zU}NOzT%v(3ZzsE4L2;#28rEvsv{9_$PwpKc8`ZvPql1_@UxSE4F(U_VqRr+>j2if* z7HR-@wo(BWZbtY7lLhb`D-|H&c&}+A3-I4=0+{6D9bkf!pY}W4se$rdy=VrF)qg`TYr1}noRGafCu^_IiQMaRlK1+Y4e)+mE^tn9W zp3jBT;OqZUtHDP3+s3_vBZ9^FEWziR-T6ON#BRJ$^ko)%_J=02eh*PL zS!C@ddQB6(JQKZPO?=FfC^2zQDotdfvOOvnD?X7*PbvO8m4>yNHf+4F$VRnq z+UOuA&d?y@P|V1In`pCn5~BuQ&q590)>bOOo!yM^LX!pX^HwTA!tq|yMi$`T+ypSm z#XErRR$GW^zr(dEyTdlOSge?iKma)k(HhJ)$edtKvU8k$nC#^98~lvr(*@h|`L)Rc zNKW$e1U~ELgvm){Ao0Xik`JpD8OUnIEts=#9@98F%+h2ikP|C!Ops;7o-oT08Tee= z$^f!5QGqPXFY<=e6UEzc7_-0fYSNWiU#L03SqWq zOi1HT`l60P_z|s**`cw5en>OWUtT3+Us*7_xhaVy*_6Hynfhy7}XOh-__U5sAwHw&(z4En{tPBZM>G-4!q2J z+YI|z=9IUccu{_RMwOGlC@+|ib>>BR(Tpl5b5T|^8lPAEE^V3?4Q{WcvH#w&xjwa9 z>A&)m3GQR1@_mXtXf5}SL-e^k!=BHD)8NaVt`Ec5y@SRzT8#G&c+Y2?u>Sxt!#z5K z+!DYK{IeF*aVr%d;drlUBMa~kZUUI(;vGQ$+!kWm?{JB3>J7HJMe_&*P6J0FT7%gJnG?)O zc80SLlbyUvz@sdmF4&gOPfQj-a+04X@DVpBOim&Li6^d-d|0i>KvpYm!JLKjn8wjz zmL@}ioLG5df-EEUgjt5jz<;DHKvpIykcIh0UT%jVfH^B_+mJWwP;q#ew}gCcUs2I$ z3!BMfXP8qdoqtf#;9N!_%=U~4Y5cFgsG|`6z1GI;(0IxT;i>j<-x00Ir)q7u+_89yeJp0Ugcyi$^%w! zd|vUpv}Rf~xS5v5?j7sv1G=I9D?gcFuu}O>MIN-4d&fTdT%Ksp=fY|5*PpEq!`Qup z#>HBU_YQcMB~I9XfSBQCok4C1;QW8r;`j-?XGQD7S`{I9&r(8K%m1hDEq_HTBNZ(y$%`JuPc5W{m6m%)Gm;KImeWb)4GS`J9KK^dNK1s^do8#Q zxX4Of5P$V>w36G#y`$f4e3r0#tl6Fa4Mpt63x$>lD)xk#SY#j`qHMCQYd6trn&{=3 z=nZRPz9ms&;_6hI$iyPsqw;3O+f(Td#XqFduvXKijbasla_<1ysP;`89mK?u8bln5 z8FMz9Co%SepS1@yfHN%T0-WP!g!eL801vfN0TPb)nl`ckZ*mjBBp2@h`scO~(|(6@ zbW<<4%`KWoAaEKu3eg(OHprY{PO{56`!Lzby97MQ^67$Y`Fzi00VF5+c>;g$=7h;f zWFYaxRgw>@6&c8C#Vwe#a30e*I?U2!D3B8?Z%mM7#GWwA5E=OAlm*DjLvOX9 z`kctUJ|}sv&)ER4A9f#h&?7J3)nSc_R@a`XkwG`*a_ic7Ew>$bnRmZ6>}Q!%-ge?e zx$PQNPX3~N^%_-9@}k^fjjTg2$}QGtd|vUp^t`laaHf{V?j0-X!?>#cD?gdwj#et) ztjL4ba_$b=(ZZ6v=t2C{LRwg9xpy=p z>EPpW^U(#FIS$`3AEYI(V(=Z7M+aPBr7noSdN^9iZR6h2?>0V5*gZ@$lH0=<6|oyH z6j~yv*b`=Ak%4%KvdOlt-9)cxqL*i)H>`=bS`sBDE=r||Of0ZHDz8?&K9z1zyeXB2 zwVF0<6s!1?dk4rywQt(!ASMpfAmUKWn6ueDiLoF2h&>;r@Gx%)`P%-8y=&XTX7bn> z=2S}O>nj?Z%P54|o-rYf?>?t~&qpErBdv|up>c;3!hiHa8Y}7-M;sAe#lAvhfizy? zgfOX&O+DU=X3$vuH#AWXnyw!sCuFbB$=d64BKP{7eynI*BT(hF} zMti142HlkNtZU=7+;-q)-j}RtKg*o*wi7SPf3H#Hj@!GU9f|Z|{ zy8^sfSE|_Yh^1ouYOVy{3s?o{8SDCSGSr zl$fYeX(AJ&wnybfikGF*<%(CO(y&(3rj241e{$~t*{JqS8y&>N+ck(d6f<(*CfaPC z#HfLPZx2WSAGcBgF6U;1x3ldCV8==YNI2eW+Q6n|iu! zZqYmffz!ZIh}K}XLFNQ=lI6E04h55)yi35{EuSvfmd_VV7C>^6pC|A~E;5*$L&M6m+3Rz%_WGR2y*?*- zug}?lrSyFp!BIwmy>bEB9hW9yBTS%{OIBeJ z;LD!x?;W(>q*W1u7cC{Eb$b$mIBCCkuvq4wI%NdB!rT?$)w)u>PG}2D@}dXvQwwQf zrRCny^wGh`ZRVp3dLNyN7HP?=7<{GW(E;aKsSDz-zIV_{ZX5TGez)=5W4F*$G1rcE2gD*oi&0kTo;n>IR#iQP1aI21E-;3nE^p2Vnue`ya$0PnL>0Y0v!*b|;> z+Y!K>tWEzc7{2X()rek2In#gVYX*XNaMd=knSDuSF|=}hsNbj2w&@kG#++B_)#yUv7&yO zM2|43j!iw@i)PSR{WtWort8PZ3EAs&viAC%$h|%%d9Tme0Iwf*AExV(m+$KH*Q#i3 zYR}Zjpqp}nb#1(s+YY?Ud*xd8v&<=vN|?k&dD2=HEsl9q!elMVQ`f3!an7R>CS_5c zzE(wxgC3PIhhCH?tkw9u;&6QN zeJ*#i=X2pSc>fo=>jaHMv>5Ll@bc50aJ(5#)*0kF0dBC8zjx4jrB+1J3*xW7chE|18~2WWxA8P%cV|sSZV&HK#9+Ko^ko)%_J=02eh*PL*(qu_ z(QBIM<(cRWYhnXSqQu0aRGP@d4z@?-$%?0?(&>t4rP8og)25AL6@PN?0NJSaO&cA= z#P%9Q9Euq^a1(7dPh!--Ke7iTfVWwx0PoXM>-2983s2D1$^Czz8gzb$bnnC#^98+?i7(*@h|`H;y1 zNKW$e1b)Ru29uM>K;ntk$cNR63}m(97R*^Vk7*noW@$1M$cdFVCde{kPnczh4E$Qk z0%T>P0$G?}S>Zutbl%d{-Ybv!b=8JyRotZpuRI+ITIu9eA1d*qQdT%qfpb zn8Zc7=gf*0$2=-wvKHmuGb>u0^QeSLS(KwQD_R`%sDwH6qMSFg@p;AX(ogNzs|4@V z(%8M@CJp6Q3nze6^huLnxfduhru>jb>#D(*T#V;?O>A^gN@PB`8S zi*yFLPJk<~>hB%2UZhnKf+sH}q;**mf;efvcd%IImwN|zhPf-iN>{4a32k9XUi2V- zY9TGGwA?$IK05fg)O>V7@1s-EA}x6pgKJwJ9dHXPbwT{q_YPXgZR6h2?>3%h>~5{8 z$nBx4h{1TF=*ukj><>+3{T`xhvQyM<|ka(gs@?o_i16i%O1#=e8 zV;V-2=XfEF8=Vlo#S3XX z?1V6>jwLbPi)PSR{WtWort8PZ3EAs&viAC%$h|%%d9Tme0Iwf*9~SG8m+$KB*RE(i z&z`A~K{w?9>)LoNw;gzyclWjJXPHypcH%|3{@PhbUX*jzu5ywW<=nNaoXkbJ*4mBF zD}I;0Z@*q8_%khy-8-(*P_DIb0{Ezv%6}>HptamPrp%~6{WsHp<8=bwWp#I*pb@kf zh4B4rI${3-Vul4egIp)T|L9otErHhBYt*BO5L~3CT1e~bNeJSk7EW$u1S=<+y8=Af zxf`iyVM$)}Ab#ScBNZ*IwA?$Ik#z8JuKDPK%p8aBm=DsDS26f}%cBF%vQihsUp*YH zlD)xk#SY#j`qHMCQYd6trn&{=3=nZS)Kellt zCPposav~G6Y>&zXiifAtLdB1!(y&(3rj241e{$~t*{JqS8y&>NObsFq#f&+d&661W z!C$eQ19+*G3h+8D#h&m}CJW%IwnGI-INod8$O1grEeR&Mcn8oww}qJYJM5&Jx|eNk z(L4fy)4)-P)?l_l<^*$+<+mjc1(Th8euFDoK3%XapAnMK;ntk z$cNR63}m(97R*^Vk7*noW@$1M$cdFVCde{kPnczh4E$uu0%T>P0$G?}RZbu5YTUNnQo>c63vHC;bOPRL%LleO39MDF!D$$Ndy26+9j z`*4pQdHJrMvQ9~UDLzGRnb?qj4 zO%uI56TM+g{M|OL#Kb%cr<};dblanHRB``QIzaK@R2tT5+O$!u;!o}!ARE=bX`_Rf zn5IF*p_q{aH_>MEBt{MVS<5+q=US-%FV#})2|sAEU}!s3OjRTt?=@{?0ruRIV3Lb> z0R3}Yh-tsWR=TOX+U6F`BM>+Z9EE5NW*cNqFeh1lTjEeK*~#ZO_>4u?1>5p@gT)v? za+04X@ck|_n4Clg5>K>7KCD(`AgdL(V9vsMOylSDeZOAWN)G%)e`PzP{qR|#MlSgkbr&2oqrJ}*Pj6#_0857cY zn|>ceAza!wgV>?5&dm)VroDja)3u)ZwgfOX&B{ANMX3$vuH}tZm>&M6m+3Rz% z_WGR2y*?*-ug}>4uOD_FZq_3&-_<``r=s}|t zop@1RxK7rQ7v-hvR5{6u^73`6oXkae-a3uXD}I;0XnB?3`C1ygcbui6oMYhx@D?kT zzf_0%vFi&TYdk1*8j#b|hX#G>G zA_Pa*uP3O5w2srN2tl0G!pW_SVC6t_SAYwgJGoA13rq5%2k{dp9jRzxrRCnyjHH8) zW6ehwWac=0$9#~Myo$lUSa2P1iIut_{_5dqCAW=xN59+nEMa#!8-M<$ir9@83M~;- z>~b%~UMdZ1 zHEr4`R`DnI4v>v%-?Y&|OgydG#G#lmXR~<{V?X$4%Q=9jTB!ifbu+?um@I&gS*ZXC z$9qj1S%7cRy^S)M$Y6338Av?Q8u_qVk%6pM+=4j^=P`|=!z@jP0y(kr zOoA*U_Jmo6$iR1}EI?K!Dv*WwMb5QD5Wt)jwQa}`UDPmd3HjRodqtxyY$lK1U{0lU zUR=@OTt*?x_KXQ>yk5T#q7dH0z8S<0jRTwzKGX|ooauz{*c63vHC;bOPRL%LleO39MDF!D$$Ndy26+9j`*5`$dHJqBW!;L_Z|rFt8FW*&v&XUV zT5db=GVi(T+RrklyzRt`^6+)Dj=U(3TDQtcUX+X0t#UFK<$`q^pI7`Y9dCJ+;2ByP zyLX(Vp?u!L3E(wWDu1EKgC;+G{o8wsK9^71^SN*uyvA&IouDyWi}Bt8U$&7GjyJ;& zvucst62M>SSoJM|)?c(LLU7)O{@y|BaIK0E#7RBk)K89nkIUACVIn~_?0D5VqyymznsVf z8zWEW4tk<@v6Efys`!>v8rEvsv{9_$PwpKc8`ZvPql1`uNVADUF=NhV^CZT8@cS+2 z03K_l0zB2t2;X3`0RGWR1xPsFYud;He68+nl))qy?*J2={IuU;Ro&FNwz);~2n0?8 zMbE+3fe<|PnXGLur@+}uN z%v(afw*OJlXbYRkqc@mSDV?9FXmBp05N3PEgfw2R-v?0$zs9~9#14(UoDkmE3u%1D z3E@+`kj4d02$Skq663vS294E!LoaK(evF)uy*?*vug{6x>vNL#`kW2$`eFCsB0ci* zUH$g;Dq26ar*UM^O_^(tW8<~lcHm{+gVwX3Wlnk9i5KN-*ULKcqTG4CDkphS?z&!; zles9jTd(nX#qZJ)mRAX$sHL%c$451kk6Snayx2st7@x)FV!A zWdtj`nY#j<=iJG4LR(mp7d?odIO#}53o9-64nk*gxp#p3nU5~W%z9B!AEYI(V({k{ zTnD_zN?j0t^>DP3+s3`4-)(%BuzR1`o&P+Y3cK+_p(TQfJz*vm8Hk4{n{4aaP4t>3 zdU+;#!v%-?Y&| zOx&s2#G#lmXR~<{V?VgGoCA26l?w1!HzRzx$pUz*l?sq>yw|jm1-QBHZIroDFgb|~B%ZiR@?o_i16i%O1#=e8V;VY^2`@ zQ3$`(z8S<0ja{7(?sy@Mqnr>v#tUhj>4Y$;jwLbPi)PSR{WtWort8PZ3EAs&viAC% z$h|%%d9Tme0Iwf*A1Xca@?AZ9{fgH2?P(ktbW_%{$FcERZaeTY@7C+v&oZaH?Zk_6 z`Sr7oyeL;(zsgBol+)L*axxd?lIFdG-=+6hUL|;>md5TK2Wu#YS~vkb+e+oP6nW6( zhp&HoFV^SsPJ2EVPJ^GA>#h?trfgOhJcZmGJ=)u&0PWR;M~b|LR(mp7d?odIO#}53o9-64nk*gxp#nt z`RIbotQQ6KL0a-E27h3|b-)K89nkIUACVIn~_>Lt}Vq&_5UruC#jghBwmY(QM>|~d76*o_%VXdZ3 z8^tRA%qC zrRCEF+wys?9rOT_ll(k^FLjZ@FIVHT)Qc79}IVF6^Qc7B%aY~qM>)FS9-wc|r z|CC-Ry4UAq@AWx5;Pu1q!^wK`Wmg|szoPXGd$dLd-INvVr@8TV z9_Q3Qv%dX0bJE8-^*60w<>W7Gxo!O_CwWocv3`}4xhQW~zwwpD&r{d(D!~J_GfvZ)EVB7F-9s+DcszfAw&*lH11hqu*_Omau!B z*`5D@B6j1wqA#=9vp+PE^?Qi2$xczbiC)u0FV948SQB5hBuY#yNu`NQurcyK@Y*hQEjSgbs3JoF-#f%)di8h-jF>2t~Sf~LktW<#e zxf$WpO%}jQtW>lbw8pgBMsnU9c^mf0!(QH$u`LJ4%fvi^Cf;kK4 zF^!|cEKP<2IkECgf-EEUgjt5jz>RGy1IWrm1+p-|$OltTFlR+=8}bnsHOyN=K0KZ` zwW8IQHnT@_Fvn7QuQ0Wu#mS6Hm<_6xw4S4%2vG^YP;0d#T63Ke-fAf&t-YNR-e)N# zt)rY0Cfj=U@!mIsrt3eYmo;NQMo!XRpOd%O=cMlSIoW%C&JK9}u=}t`PrmHx#T!(# zzG#ou$e^2&ewrI^=W$N`bsN~PGbeqVQ-9h9RZjl0mNPe~a*`KiwLz7WxhPNGpz)Q( z&(j+%uM&K_md36hZ_$sDj(wB_@E9wVpH}2ali$Do?L9>w%q#2xT{sQCeG7N1pmDDj zxww$-W#L7cQ-KUggD%k=}Csmqer zI5^9>8>whvNrWJN>gxwBtcY;(NILk~+I)0DX4dk?-TA*!#BRJ-=V21z5Nl;S)?2z;morfP~|{rj0DXf4d1_l8aY?2~K|6?{KTi9@KxO=aR+| z2%H9vLbL|64bl_LNp@>zA0|8b3J1@$e7ay;K7Te@0Le*yp1>FC%A$RkoJ0l^Pn3}l zs}&i@YQ-&>vv3~MI6BPIWGIjmE6*gzGGb4dWrz%1-L^7-tV~oO3-gP-BlQGxR@Am3 z?{iVZyd~trW2LDTt+uq8J(`1;=!nvL<*5}dPG(fXY*4MF^?&;F6_xO_TB{w=T1!7B zq7vRvYqgTr?oJ7ZrIfS|a!QzN>oLcB-wc|r|CC-Ry4UAq@AWx5 z;Pu1q!-8~9kDOJ}I^G_wkwG^l{WLe;&f}c=&&;x4XHNP!r@l9<%E@0&=zg=Roa9A$ zz^p1Kb5ZU!tMQe^&(kX`uM*r%OJmoM*XonIlYNu~@DMANA5r89`<|SrR2C?n$MIOjNc<!74b2ghNG4_Mkvrq%LwUr8RXE!6f&}0Gpyp;-&aJ<*Fkp=iSHvvp?@hYIZ)fQsf z?{KZk?y$`*7AvMB5I~MXv<9;cGAEdm>>OtwCOi2G2R~!^biuZKer>VMmV`@cRz9dz1QdLfY%SZ52NXv?l`-mb%Z@yBZF?r9oDt+b{^-{7qjixnUg-wso!LF zm6N}m(3i}va*`M27PG6I%tbkCcH=9HpQlaJqQUL8GJ0WQ&%>a9XsSd#ZWh@VihoO`VXdZ38^tRAdjMT?Ue zl`tDrD{1|&zN@1W{=L>}N3@=DN_eV%VAM)lFVSio6W($uC9U0^5+>Vv%<a-0jTJNz(Yh=((xxuHa<((J=W~b|Arz4 zDeZOE&1s5m^#TS7iOHk?|~YD=5h zV{e#aDZMwETG8TUMkUM!)k<3bqwngdgny~E+7Yb>of3X*DJ89S^|K?63D4GAJtnPJ zJ0(oEwQ{`o&7kS}Pw8dN*pHEuwAbh4?e#gSdwov!UZ1lAUO((U?4T!KcJ-DGD_UK9 zv_=Nql*_Gal>qpQB^GJI@7fypu+rix`Xq>IZc>RF4 zeZ3R*A0TG9T4#`31^Ct-{q=*^d$lS;@aCn2w4O*p5GU=|kEWFotlVkt3h*9XsopBI zg(Z34gZQb1w6M~0{b>5=;Nx-g(FMJaPDP8fqo!a z_$*=fFik}+5noiqV7yoKWfpt(hbFRq4^cMRDQY*-Yntfgndl8`;;oiMiHVC+X(AH~ zY>&#T6|YaF8x(I!rD3h6O&i53{^a@rvQh1uHaduj12u>^6f<(*CfaPC#HfKEu?Hl8 z%UR9^IK#~d?`pCD?rWt2BpmNGZDavn9JP zid!&e;XI~sbeN^dP#`B(-k2cEh&^GJAu{mSDGQL5i3((4evzl!AqZg3irO~h#X3|R z9_B3}A0Bh3RvOXA`kWo` z`eFBB3qAR=t7mLf(R!mjS|fvQ%6Znc@pc~P)L*cX{W^2f$2s*M-KfgRU)FN$MpaJo zqC8=vDkpPMF5IZ`mBr7~llCK4g3~mIvFpdb2}Pev`Q@CdxTTfKS1IzOwOl`T)CcoG zdq5XXgOA(U-709DqQ!XqfH!%g6ZRhnYk;#n{}mntI!sf7#>>`^-ld^gcQjEz*)VGWaIT zqXUjwsSDz-zJAb3ZX4H+ez);i!tQ>Wid-U&SHxhvSM+5Td-jJWvVIRyHrXj^H_>aF z=;fK{4Qt|cmPCn(DwQTOF=~5MUZi+gDqXI4RVoc@HEr4`R`Dm-50H&&-?Y&|OuSu# zh(j?W2X3Ox=1Ghi`1kgJ1n_Yy72tAiMtD2hjsSM7RDguzy{3&Uzzf|3Fv-QMfd08H z#I)bx+Z9EE5NW*cNqFeh1lTjEeK*~z;E+}-l&f^GSH!DIm>C;52- zf8-*A$w_1&@kDFn!)iqavRZKq<}94YG>#6lG#Luy#L62JWErt1%rZm<{v>4qvNBPD zEX*(R1Um!)%vn*}hODDQ#o=Mz67u1(`P7P5TiVPXd&3+{>HV^)6)jF?RKjdft)%te zyQJ#}{B5n(j%eNBl<=)fDQP|9l<*Y&6sgCgwXRm9Pnc{~+4sWXr8j80{!@BcGxlTT zB<=M%d3$|M>Rz9dz1QdLz*71l_hFWveA(4~=2Wy^VUO0xpqp~Kb#1(z$2s+f&9Pr+ zPI^?rBrXnjnN!i?q(>!8)}q{fPDP889+faDi*nwaiWVn5Dq(l(cMxUY|M2tlfc=P- z;L}32EJ)gdk4ZuOBRy`Q`uWIe3M+E5NIDrFyH- z7MA3F58|g5(!xs1^`q&dgOA(HM;G)yIu$L_k~cE=O3R}I&a+Y%#9w{=pq1P(P5M`5{qIMI#riosjiQcd#US>&@m^e9=CNeS4 z_Nc5Bzn)6xDPEXL!&*(7Hi}jJ$@K$dquMuZbPyA}X%KNJX5_$4wAnm~Q3L=gs)vn zN$X*!gdbf>Noz&@K#4wKvaM$y?|n09y8csoSu^%yEtlfBpH?10w~ zyARX#V2HlhstZU=#JkF_q^~Uz=%t?<*n8d~5N*h!8%A#Cr$>Q~sf@s-8T({JoYtOOs@(%ALm4;soJEt~+Zq7R__ z*sY_;oKouF-r4$K?q(0@!fEjSySrNjjYG5;uOIO8Z*{`)W;j`AkXr?~!5;qlLF<)T z6(LwHC8TwI5`s8szkaY-=9lXSc)qzSz>9RHdaKYDmgId8;-?nU!b;2aqv@lAkL%1w z7xX?l6)n<|H!}Dl%cBGCV5KgIzxw(?E4gi4KlAgsNF=bX`+{BqBpFG4J?Tg6N^%5A`?5<9+f96o|a0dE1s1~!&*(7Hi}jJ z$@K$dquMuZbPyBUYY=fLX5_$4wAnm~Q3LZUHV%`KWoAaEKu3eg(OHprY{PO|*A#Gzoaldo{_ zC6-SYY|H0ECJP`r$7zj-~W| z)zpd>Co?KxHmFw8`ovq(^#lH_)@nzz&T~rmlBJZi?s7`_-ldeZo^eW;Z0p&_d*2M2 zuK$!?){OlaIZ1ncPTpRhle*XEWbgGkJK*)h?!yv2`Le5zZd}n?(;lsnK{sWgb#1(z z$2s-OZDPO9ob;%KNn9M>zHvp1lOB~YS&QYtlv^#F08Y_IO@8cNpvat3>fhc~^yaX={u^%<@SgMBt%Alr zT8u*YiH;MFH^U;GL2eb`%E4bhXuU|QA_PxfN=WOnBm{BNe*Ivv%rDmu@C`=3Er}8n3sPw! z6I<9Gm5UUQOQjPOPfDd>t)@*I#VY>f`T??0?VC0_h>6WKh&U88a^NP~Y@WoZfxm4J zNC2<1QUTtkrPvc*!L}oS8(OIV3CDX)8(DxKbxVRtE?x!n&ut;5{SF=7)B|jDi{=ps zoCc0Uv<9;cGAEdmEWa&rD46WzD;!+c^67$Y`Mld?0VF5+c>+J{B7@0EWFYZGYvjXf zMFz53aSP@woX0ed4zn~F3gpDf8xv$1u_w$jLQGqPXFLEzC1Od!hQQL<6 z)kO{SmXJ@B9i~>a+R|qBXb$FBO79(~REQ^Myg zrKEMEQ^L0_rKI(+Q^I6h&pzJ!X3%u~r}VOB?8nGS+Us-j_WGREy*?*5uOD_F z7VF8EUAYm+J`e_6}9n^ZZ;i}Jip zs+`P4dHN=euPlC^zHdKbCHONfja@&k(on9oa02+KmCAo9@}#v~Kc>8`z5#5e|HfMd zyi4J36*PhtqY%D-Pbcg@K+Lc}XOLS3_#YjszAVsMd!!ysgy14A)k0cdPeKqUwQzDP zBUm}n+!f%-&fQ2w3rq682k{dp9jRzxrRDn3jHH8)bInH=Wac=0$9#~Myph4@TOJ*7 zmX*37{_5dqCAW?1N59+nEMa$!W+a!0H!5N`-Yc|3P_ZY>#3BRn5M`5XUAu{1(?l=N zL~mFV|FMlLF)?c4loOelWqVXEP&_=97Ak%;m4>yNHf=1g$VRnq+UOuAW@->| zC}zyrY@Wo}5B`ef9KcJhRDjoMDfWb)GFbpuwH+!z!tq|yMi$_~Zb>l7#jAk+xh=%B z-(e@+)V*wTi{=psoCc0Uv<9;cGAEdmEWa&rD46WzD;!+W^67$Y`HYw>faD}UPvFrm zGMJo11`Qxej-FA z{C=&~j%c0Wlu|`DSO#d*?2pTbLvms)P9{g>EoRG{Wq<0 z@|U$7v}u)-yeJoJTIFOe%F#_5Us?P-eZ%r9!7H>hcKx_eL%GDl3E;g}D*vj;lh$(m zcvK(Ence!EKi(?fZTE7w3K~0VF$&?^-{FM)2Z$L)bq2XrfPdGq>dOMH=fB;qAK(Hl z)k0dQB_W8DS~$6t5v&|(?h0^`b0@b7ZDC2?_aJ`aq$3qAth8J|nvrzyajN;~g3KI; z@0btLk~cE=PqjF8N(Y>75p_ZQ)x*(BZX4H+ez);i!tM;4a{en6u^aCdeVN6c{h^7h z-$Rs5wsq|$dQB6(JQKZPP5j+9uEfMV3#XjO#B|%Ea#V5uR60QM;8YscYTC3>tm03u zA0QjmzG2>4q;;cH!em>|KHmFg&~*K$ z^s;8`$H+vQt<`kd6gJ|}yx&)EU5A9f#Z){`&0y4&1})&urXjtsgfyV_IPcsq}C z>i3>&zs{WWaZdf_bE};EWi4CJt#XnV<#uzcoXkZzcW&b=i=U@2T3#i1zLv(WA7^PO z=U6xayv0i8?-Y5`TCN}W>VrA$o$2}kZ?d<$RnXW{i}CsaU*B`W{sY7e^K=Heet>uD zSoLLr)<3l>LU6RKC#Z$Aj?=0LL7ddW$*qiF+fD4>Exm9QjOY*)4@e?NfvZ5w~gyZzuWjMVRtzjfBvS5 z*p2rJEfG}g2{WJOY8!z)^^E!fb=g3Fair zZ%Z5sCOi2G2OqY4x?o#A+t@)5AUVm;6Ii;)U~&=}NIcOR`LJ4%fvi^Cf;kK4F^!|c zEKP<2IkECgf-EEUgjt5jz;~xCKvpIykcIh0&b31jz?>DeZO9K@)G%)e`S9pWt!TBS z&Fs+}%(0Z-Z<|`t;$%i8%m&p;TCdkngs6n~&|2+?)&WilAG(y1)|pNTpS_fl)|E~P zlWjfwc<-A*)AgUy%bKwtBPVIE&&k{Cb5i&Eob0_mX9v7~*nPNKPrmHxDw|cbeq#^i z$e^3DojsL}xAQose$Hn0>&!_X=hQzjx5~+1*7D5UDkphSE}2{9WG>3Z&Fcq0Psdwc zC3uFG#;zYHX(*q!Z~}OZmC9cz@}$Y{U;p;rq7UZd_JA&&20t<1t|VK+Q%0>e4c=xS zt8F>n_$D7%#?++>&5|lEK0G7Dg9*uayGWme01%Jxpfuoib5mU$ZO%NOaN@ z{9aOlgefYJl;TeeJk1gdAc;lUc#)myB7-kUVSqokQWu;kAMx5BPc%V3XSf()j+X2b zXv>wZ@J~`eAje211vk_%;-oO=NG1St0%}|4Z08?lz49YFe`-Z*FQVv+b;#=`$G!x5!DeX*?0?4Js1NO4`tS3m95Q9vl65ND{P;b8$`MmOI^{+2Pn7r(e7qX>y z=xJvn+MIaTrGJrbqW&K~*Q-F}_wQw3-rrIiSFV$wk?@qPZ@VtHN52fX%EIj2oG=di8 z|2%g#+)1^WaFJ@Oz;92rY4FBRxJkxa*|X+u%W6aidFg(9#>xNl_{zU}cdEgE(VA=` z_-`wf;7a?ap71(alb&EwTu=CTlLhe0Rw}_uT~GKICJW%* zRw}`#Tu*rA1M3xtTW}*QmEh)DiofXaP9_WB-Bv2W&EA_5f_KoG%n82JN+o!N>j@uk zvH)IUr4qc>^@M+AvH-5|K9*jBs~wcw!rN#~+=6>psRVa(i6PZN+tNG52T*(a~IS#=?TuUQVG88kkk|Ykk+Ipc&e33@N0*rp72k#COyIX ztyF?felYcfXC7v5!R@S6g1dbv^@QK2HJKCql$A>G%ZI0)@Q<`6J;A%IRDzEjk$S=_ zFEqE{=2j}f*BzO9!ux1V<^&g6sRU2?aOw$vS8LJ}ywyr2_@|Ggp73*zGPmFyE0y3j zN2i`}S8FmSc(|2H@c56Wp78lvlb+xWRw}_eKbCsJ|I(WD1lL}~0!r}3$E2R{9$J&0 z;6YX@!J|K(dct4Tn)C#(vQi2D>JzCa{HWHXCpi6Ba|_P?Wan{=?Q+* zN+tNiPp6*n@3kg9!Dp;gf-n4R>IuJ0Ytj>ZiIwg^ z)}$x+n3YQKIj5wa@Wxt`p5V?_D#4M@r=IW;T9cmOX;v!1Z~Ry43I9xM(i42pN+tO8 zsi`Nt&KK&M^aNjNr4oGeX{jgteyvGQ@H18_!LNKV^@M+{HR%cd!Ad3g_tR5Pc$G8E zEx3i1N^t&{Qcw68t;w8VWu+4Q)t6IG_))D%PjLE~*eJo*eI@mT_tBd41Q%JU1W!3D z^@P8xHR%c7YNZnV(^peZ__-C<0yxJ?CAiJmsVCgkn#>6vZlw}D{+!ekK3{9n6THDn zC3xq5r=IY?v?e{lwa;Y%CHUg6rJnE}T9cmOK~^fkqraYd!e7;z^aQW6QVIU*8>uJ! zsMe$>IQ=|x3(h`2^@LxqHR%cNYo!vr=bNb~Jo8&NL8*9x{u@8q;ol}1IQ@b&8azvD z@_$+be!yr%pxs?KVyOm1tw^j<^{Z=Z$b-$gQ!R3W%or=fmzj2-LFOv*>(Rb2l z@Vm4o>jdv`GI-^SY*KIyD+O>{E0y4DtQ5dwtyF@awo(AUWu+3lRZDT1@SP?L;D#5Q zS8y{c1#p3tO7I9P1@I~>mEcdT6u<|pRDyrAQUIr4V!ps%YbmY>ekRGl=X{r*0o=$+ zCAjsawJHt9`CAia7X)yRet%);mft3PyvXx5k>>sDW z;2X3igMq)YQUL#Mr4n3nbs7xb^cq_xxVe=A_!cXb;QVXTVDNET6KCLOtrWm-Td4%E z`kyoy{AaDnVBo`63gC*@nSXG-pQORyowX)|fp4}_0N-b&5wg7ONl>)e#l}hlHKTCtb`)Ey^fd^PAfG1d~1kd<+8VtT#Ycd%4 zQ!54V0V|c@Q@==q!5iFY%LF&EQUG_cQVDi{nFfPDsx@&2e$q+-{F;?Y@UolIVDRs? zCWC?ZSt)?a{mT4+!LE0y4LZcBr~FVdO}25xDk00t|S;J&|3gTW_i zO$Gx`wo(8uvQh~?czYTQUimk5O$Gzkuu=fGwNeSb@s2bYe6ZGJFz`cG3g8#4RDyqU zgTX7_Y0kjatQ5ePTd4%!p`~~n;eAXNz+;fIqQP3EuvP zG#LD>)?_enxw~0Y0Owe#1h=^-4F>P6H5m+imz4te2`iQ0srRPA;2&yD1_Q6PQUL#G zr4szVKc>Opwg1GLN^rK70=T10i@eaG^Dkf$y|Z06$`-68y}=X)yS^T9d)RA6O}XzqL{c{`HYG z7`*D=Yysd*D+O?SE0y4z{+>LRD$pMzcd(plGbD}@C#N7;P-SH_VE((md@6zGs7(G>8o~d#p75IQ!E6Be@9okP-0i?L zCp@Y(nG^h=l?w0#*AxD#$pUzZl?w1C*AwQyYRjD9bKc7W3UDPY#kAoKO%}kr)6FfvqaZdOIlLhc>D;3}mTu=BGlLhcTD;40gt|z?WL0Ajm=2j}e zS8FM{h50Y(vQF?rsVDeN*Au?RWC6U*N(K0c>j^LSesc@1X{7?(LQByt{5q2ba33ob z;0Ih!nE&oC>jW=MJ;8@uPk4#R0yy(v7Epj&X(_secQaW4_q9?1e#G^JKV`B2USOpH z{DJEU-)OP`F0oPpzUl+@0-{^Eqcuqge4mvH@L1Oq{<6sec&U{N@RzP9e3!`r_-`u} z;ED^9TX=n~iCeH^r2_nx>j__LvHj}T$5Vk#lbF5T=uhCM>7T(=t0X*1B z1$dO}37=%L0A6dQ0({o>gl8OTZo!vYsQ`D;QgjQKCJW%0h}+x3JmH(3C0u~Gs4#r1@zdfIqcT0p8m0|@TW``zzeKYfIo0O;TugB zz$I2Hz*l{wUO;pUceED26BOTPr2;(G^@P7{vH)Icr2_n=>j~dwvHG0bKrQI|<+hT8i1io0}|v^Q=^WJ=YUn zV6p(7Yo!9b+x3K>Fj)Xs{;0VH=V~dsgNN(Pe2dK>uk5|bOr$jQzGu38@*QjKPw?;C_ z52?)%*QsQQ2mUIzZ^=hMlYL8^sFEetMKZ}3sm%}aZHD-TN|w0w1-X4o-W{6kTjF6VS>otO zCizsg8RC4EEb;kBCi#7}8RGXUS>jF?=DH;x3{AQv4pqq#e;&ysPgk2EUZ#>IULVOM z-=j7|d|xF?-0PxTx8(lNq+8+`l`Jt6$t0hnHbcBhB}=?Fl1cuH+6-}xN|yLpB$K>R zZHCzYVoqgCtcB#}E%`#V8R88pS>i*HO!CWWGsKTovc%N9+`c7ugC_fySfY|89u>(X zpP)8Fyig@eY>i}+-&C6+Zcxb*yIzv(mRtl)x+M-#$r8s$GRYNcGsN>%vcxMQndF<* zW{7X9WQjXon(LO_8=7=WJVqr;JT;O@Zcv*c{#qqVyd{!JzF%#IxJo5U{4kP9{#tE@ z*!$NyZ;4fq+`J{9tu{lvQYA~gCz45iN^OStu1c2pKaouG7QbO@hIo)lmN*cS>y|uH zZH9QZN|yLwB$ND-+6?g@Dp}&jNG5sL%d}f!UzIFz6eQOz`6RU&;vAJM@#07(d7;`2 z@gy~`F+6?hbl`L^VB$K>IZHD-SN|v}Hl1YAFZHBnZ z@3;Y$Xdt<6$y3#4h|MZl;=)KKd5PK#@i~<&@qH z60e5jwv&91+6?g-l`L^hB$NC=|{j%1QwP@5rcRLK&5 zc0+F7l23pp^OpDvl`Qf6NGAC@wHf05Dp}%-kxcU2YBR+DsAP%TEXs9D-W!^9OFTg( zOZ-hFlYFz<4Dm6QEOAvNll-aL3~`GVoe9K!Ai0@9K2&XnI8G%?JS~z*u2Y*K-mH=( zz8A?Pf2}q{-2O)GmUs{(*Dd)-wHe|`Dp_KEB$GT>ZH9QGN|v}dl1Y9-ZHD-@N|soB zQ*I`ZM?#aCKrC0u66ZuR$qUqGhNN(Pe2dK>uk5|bOr$jQzGu38@*QjKPw?;C_52?)%*QsQQ2i}(3 zx8x(B$-X5{RLK(SBAMii)Mki_RI_$+v2zA@Zm5 zl1WV6og0(PpU#Vo$Y0L8hn;*2QpHAmI#P}NQO-u(_{ZF!Wc~tPsuAbi<889PiEpc9 ziTnY)YmLkwz)LaWJNIfa;>Rjk;^!(EB7ZqAwTM4ooa>)l2~CWhz%=;ZkW5mu6vkODy z%?-pw9G`O$7pi25Eh-t}$0}Lk=PDWE_K&a$OZ+(`*FKqdSdhkumujXV@^%X1BCgK4 zh&>AAz<5jZ6IgniY>?iqLL+UP{|OxKfxv}aWEv; zKAHFCkj97^%``;bh(lb&`*SYh_bOS%zp@Ln8E}+JmN-r&L#$KD60e5j+9&gFAkrA| zDa|xQ-ugpa#2ug1#)v1YWQpY}8RG3KS>nAa8RE+-S>o4_T>E6+e?%H1?)Q{7M&!*# z#6>(K=OQju$r6{TWQbcn&GMGGol1sys7jVN0g`K<%sZY)W5i!+rXlk7CgLKl%(;lW zJ)?~g_fg3ZGb&kPjY@|28i90U$Bf9pRVrEHJ1QCCe$R2c zE%9KL4Dnc%Eb$CTu6;7^BO{Fw7ip#;@}@E3B7T;05eGc4jS&x1$q;{~k|kcEk|Exy zk|nN$2>Z3OZ*um*DIO#aFWJ|(=^i%dBY}g5g*LCi2qT^5<9PA7lwG8N|rcYB|~gb z$r4*3x%SB)=WN8!RWihZZ?FqXJX|G1JYOYCyi_Gad_^ToT&qe zmF!pI@vzC{AzrDHC0?(RA%38eC4QokA#Sr;cLkBRsdD?3JVb4Vc(O{CcsnGQNxoNY zhWN5dmbgkKL*#v`WM2@kcq_Nd$h>ux*oezulU+vSeX7Jo-0pAOazmV;k|mz1k|Ext zk|o}$k|92)k|l0{M}3$h&_@`^1CaW3PsIhDw$=TO~tWrjjK-qmm*1LnTYxZjB$&wNK_P$fPmi zVX(>EC-Qz{;v!y>a}ignWQlL8WQhB;al0+?0F?}JxJs5-1Ie{d=1tF}G2(TaX^6bT znYf5+b1q`v_q8$NAe9X9mnvD}1u7ZhEh<^!3y@s<h#-T>E6+N=_OhKBSq3$os~Li@3!{?7|SosAP#&B}2SUB}=?f zB}05dB}-fj$+b`B&FiEw;;#SD#)!OAow$fqIT!J6l`Qc-l??Gal`Jv!v5rVAQpplW zLUQesdAmGmj5t#>4UzZ86BqHxoQt^iT6STHJE&xclT@HKBST*KCY4>zNeBUZt+h)qHCYbTLMaB#Qw0! z>pqe9{}UJSyqt@;TqR3fp^_o)x{ljziF>PLh)1YoiB*tX`()mPP#PotRx=HecN`QK zu`TB!9`va;M(m@KAzd&PDu4B}@ENB}44L zp4)ASKU2vNPf^Jd&x7RlKAE?6l*WjQHPaAzA4hQ!|C4hOhi%Zth{vg9h`&|I5*Mmu zh!3k|iEWTv`()lsQW_&}{{_1+MBX`4T*RN}T*RAIvc$VoGQ=-bvczvyGQ=KVvI$E( z3X*G|%-dH=W5gMnX^6a6rMQTX=3K>??sgfn$0Lisa<_$BY zG2)AwX^6Z#rnrcE{ENLBVuebUI87x(T&$8MKB$r*zM+yO{s)q4pUm5JN@E?pTW9GM zzd^1%c{DV686fgs$CQ7Gm3UqxlYC7sllZVo6N%48GRdpeW)!D#Ur*c&xGkdVmb|~( z3~|ISG?RD&B$r99R+}NtovxY0OCh;T@=ap3&~}YN2<*bXEkaj@jOT_ zle|!EhPb>*Gl{Q3a+&0HYBR(=W@#qz07x#Ae1zHzvF1$8B%TS$Ws>Ks%@7}-t(nB< zAh}HP`)V`9?q_KxaZgAtliXizhB*0b%_Po%|S zuYJU^=W8bMWJoTPe1_T#vE>5IB;F0lWs;v%n<0LAp=J{Q1IcBQce#i*LmYN7rHRCG zkX$Bts@e?k>Uo+;yb+SiBtNV+LtJ}_W)i=GZxlHnAm(ym5#q%jmBpwFIWsne7)KX@%gJXleh|! z%OroMHbdO&8qFjg1j%KRk5Zc<)?TZb#5s^$CizOW8RB~jHIw)WB$r9w6uIQDu< z6Nx87a+%~NwHe~$zt>FSbC6sn`F*t+V)q*~lei}&mr3rgHbb1eNHd8uAh}HPg=#az z2U;|fxD1lZB)_RPL)`Kv%_Qys$z_sztIZH6-K?3!N=Pn~e74#Q@vd7mllW&yE|dI{ z+6?jEw`wMFtJ}QfGRZxmxpxQP*xNOecrqlHNj^huhS+k4W)dHTJs5Ft- z_0C+kg?VBDDG9(QSL{OJpSjpA(Ng?H0th_|RTk$9&{hRENP$l(OB z_r19dAm6o^^(PYlq>>?itI|Z`MwJY4)Do>l9H){YUaitZ;vZBp#J{LCk;vbQxZOkM zFGFN2iI@F}T^J&NfFUm8r}wFg$lp1Li+J1v>LT*z1mYsz^=EYvdp|^JBC%K{LtMO6 zUBm}fGQ@$8sEc^GN`}Zwy`?YW^^Y>q5P3zlxQO3BrY_?6$0$@MO?a! ziH69_aK%O3?Fn@ed9|y!h_n8xE+Q`~6&G>Uljz8ekA05PMB)i58RDJKtBbfqB}3%pYce9S+lx#zL|!E(E@JIV>LMPtg3?6d zF)A4%|FJcxMNF;qiSDUJ=Cws)BcAvQ>l-33&Jh>!gICo> zQOOW_k%!bGZq!Ra43XDmh>OSzF5E_vdHI9bi2LO(aUlLerHRBdR5CkqXSkzX!~i&*`4brJa;p16q1KT;QwUzLfAc+kh{BJvw4aS<V(!%G#PHNj_mknYw;sV5Q_}~4(D{muig@1{u6!9Iz7hB*%EVhs6l=3_JBT; z$I}t#Ag)0i-kRJ`NAqW+?lQzRPxx`V|JBE_h}DQI5C=Zx*N6Y_X#Oxw@?vs79nBwwy7LhizvRbh zL)_@v_OJTo-iY%NzkV&bpN{7DdfnHpL!7_L zFSjE8h`9S3UZ0Ej(VNNrbTq%mYF{^vIQK2Tyae%c#IAqydL81bx0CznXnvP>eBE(~ zb?^G+7R2`uze7yF=hr{ICb^%E=6{R2N45F->GyqHfcP@vCy3)d@azBlp^xGJJDR^1 zb^HF^S049~kIjgWBff=r)Ia?CTR#pv`S0YfM%|ukeZ8YT@v$E9Uc~1R`~K6fziOS2 z;r~0DzZ`YDed;Us{mjR5#2XMFM(p{yUw`5Hu#^8z{!-N4h}iQBU)LaBj(8_xw=ezr znO`OM)6x7pPh-q`{h=|9}#!o#p`nsKiW09pN{7D*v;2XBhKyNmzN-Zj@Wf~ zuh${2+9SE2j^=mS)7Kq`Shts7Zb5tx@jJxy-hTbl`y}_%(fn^w_o$w}e!9rV1&A*r zeu6meCw~2(_f77nqxox5x9@(w{@h!xo4)E)5JutbSj^?jM-JS>e`bYKh zu^#bW#ODzE_V(+qIykwXj^-~%-EN2Y`h9=uV>#jthz}$7Jk+nhuupP79nD{gx*HLD z7W;7w;^l~UB6chB>u2^$?x&;qccAWi#BKxpIAw_EA}&PSh?p6a+)qdIuSMN8h#Lp{ zaf(ZQtVO&8aXsRRKTGbXqxthtcLn15!~8f!hx>Rs;vB>^h{KOe?x&;qvr%^$;+muU zINi&99E(_uxB_wDG0FXOG=CcEE=F826ypr@@kqpz5tktzFe161j^1ci_>dr-6G|rE+ z5^;OumwO}5NBsJPvf2$PEPKpqxoG<@pZ=`)}88?TM*wv{0=ewbHD!S(~|q?Xnw!bech7~ zOVfV&c*JptCm@E$TOG~68{$L$}UZ-Xq=YnQ#GenGJR}n@M~se8XBwXYGVs&S=W%Msc;FP`kJOxpX%Cb`F~Sp zw)}sJEXcaLs*0wHRG-YW^pu8*8JYC7D#_)N&q!A^G*ry-8RTD7icP9l%&4xEq3fie z{I5@T6kl<2V`HjMW!;P!nOa#{m6<$qsw7v`PR)q!7prTh)R8MDPj1M};!;g@ZH6p+ zhFDW4gZW%k%Cm$2Z{$72yp{a7Ig*z9$(3TX{o$QhMJy4)bqHB@)&D;7F zjH@}Yms8k0ETvMTgf>R{pR|Kt#dsy0EW>da-IM9ZNd5-oGZrD=_3y@J|BzEv0GpiVVpMDFLQk6bNg$9{MnkGR%RW?=@OD4pYDPzFA}a-o8%g50~A= z5#1vBvynghf0_SR$#r{-<2NI}`G1-JtmL}6$NYK7pNIT5Jp6cB(D}=UWo0n_w4Q$Z zr}gyP-z@8+f82h?RkAYL|61g)Mg9_u&l=2QbYEUZ^ILx6$8Y(GAODWt%=ED+zL@&E zEW29V{_^8|{;1=8es^v-@`?}{+?R50{9+1-%-<`}xjBqq%6f9tT7~gVR7~)0Cdo

g??>L87#y23$cPIUv7Vf{Xm44ty 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 diff --git a/src/locks.c b/src/locks.c deleted file mode 100644 index a13fb94..0000000 --- a/src/locks.c +++ /dev/null @@ -1,2029 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:11 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__locks -#define __PYX_HAVE_API__locks -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "locks.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'locks' */ -#define __Pyx_MODULE_NAME "locks" -int __pyx_module_is_main_locks = 0; - -/* Implementation of 'locks' */ -static PyObject *__pyx_builtin_map; -static PyObject *__pyx_builtin_open; -static char __pyx_k_1[] = "%s\n"; -static char __pyx_k_2[] = "*"; -static char __pyx_k_3[] = "irp_locks.irp.F90"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__keys[] = "keys"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__sort[] = "sort"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__locks[] = "locks"; -static char __pyx_k__create[] = "create"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__locker[] = "locker"; -static char __pyx_k__FILENAME[] = "FILENAME"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__same_file[] = "same_file"; -static char __pyx_k__variables[] = "variables"; -static char __pyx_k__writelines[] = "writelines"; -static char __pyx_k__command_line[] = "command_line"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_n_s_2; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_n_s__FILENAME; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__create; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__keys; -static PyObject *__pyx_n_s__locker; -static PyObject *__pyx_n_s__locks; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__same_file; -static PyObject *__pyx_n_s__sort; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__variables; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__writelines; - -/* "locks.py":43 - * out += var.locker - * - * out = map(lambda x: "%s\n"%(x),out) # <<<<<<<<<<<<<< - * if not same_file(FILENAME,out): - * file = open(FILENAME,'w') - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("locks.create.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "locks.py":35 - * FILENAME=irpdir+'irp_locks.irp.F90' - * - * def create(): # <<<<<<<<<<<<<< - * out = [] - * l = variables.keys() - */ - -static PyObject *__pyx_pf_5locks_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_5locks_create = {__Pyx_NAMESTR("create"), (PyCFunction)__pyx_pf_5locks_create, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_5locks_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_out = NULL; - PyObject *__pyx_v_l = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - int __pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create"); - __pyx_self = __pyx_self; - - /* "locks.py":36 - * - * def create(): - * out = [] # <<<<<<<<<<<<<< - * l = variables.keys() - * l.sort - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_out = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "locks.py":37 - * def create(): - * out = [] - * l = variables.keys() # <<<<<<<<<<<<<< - * l.sort - * for v in l: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__keys); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_l = __pyx_t_1; - __pyx_t_1 = 0; - - /* "locks.py":38 - * out = [] - * l = variables.keys() - * l.sort # <<<<<<<<<<<<<< - * for v in l: - * var = variables[v] - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_l, __pyx_n_s__sort); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "locks.py":39 - * l = variables.keys() - * l.sort - * for v in l: # <<<<<<<<<<<<<< - * var = variables[v] - * out += var.locker - */ - if (PyList_CheckExact(__pyx_v_l) || PyTuple_CheckExact(__pyx_v_l)) { - __pyx_t_1 = __pyx_v_l; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_l); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_2; - __pyx_t_2 = 0; - - /* "locks.py":40 - * l.sort - * for v in l: - * var = variables[v] # <<<<<<<<<<<<<< - * out += var.locker - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyObject_GetItem(__pyx_t_2, __pyx_v_v); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_5; - __pyx_t_5 = 0; - - /* "locks.py":41 - * for v in l: - * var = variables[v] - * out += var.locker # <<<<<<<<<<<<<< - * - * out = map(lambda x: "%s\n"%(x),out) - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__locker); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_out, __pyx_t_5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_out); - __pyx_v_out = __pyx_t_2; - __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "locks.py":43 - * out += var.locker - * - * out = map(lambda x: "%s\n"%(x),out) # <<<<<<<<<<<<<< - * if not same_file(FILENAME,out): - * file = open(FILENAME,'w') - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, NULL, __pyx_n_s__locks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_out); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_out); - __Pyx_GIVEREF(__pyx_v_out); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_out); - __pyx_v_out = __pyx_t_1; - __pyx_t_1 = 0; - - /* "locks.py":44 - * - * out = map(lambda x: "%s\n"%(x),out) - * if not same_file(FILENAME,out): # <<<<<<<<<<<<<< - * file = open(FILENAME,'w') - * file.writelines(out) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__same_file); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_out); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_out); - __Pyx_GIVEREF(__pyx_v_out); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_7 = (!__pyx_t_6); - if (__pyx_t_7) { - - /* "locks.py":45 - * out = map(lambda x: "%s\n"%(x),out) - * if not same_file(FILENAME,out): - * file = open(FILENAME,'w') # <<<<<<<<<<<<<< - * file.writelines(out) - * file.close() - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_v_file = __pyx_t_2; - __pyx_t_2 = 0; - - /* "locks.py":46 - * if not same_file(FILENAME,out): - * file = open(FILENAME,'w') - * file.writelines(out) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_out); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_out); - __Pyx_GIVEREF(__pyx_v_out); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "locks.py":47 - * file = open(FILENAME,'w') - * file.writelines(out) - * file.close() # <<<<<<<<<<<<<< - * - * if __name__ == '__main__': - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L7; - } - __pyx_L7:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("locks.create", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_out); - __Pyx_XDECREF(__pyx_v_l); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("locks"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_n_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 1}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_n_s__FILENAME, __pyx_k__FILENAME, sizeof(__pyx_k__FILENAME), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__create, __pyx_k__create, sizeof(__pyx_k__create), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__keys, __pyx_k__keys, sizeof(__pyx_k__keys), 0, 0, 1, 1}, - {&__pyx_n_s__locker, __pyx_k__locker, sizeof(__pyx_k__locker), 0, 0, 1, 1}, - {&__pyx_n_s__locks, __pyx_k__locks, sizeof(__pyx_k__locks), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__same_file, __pyx_k__same_file, sizeof(__pyx_k__same_file), 0, 0, 1, 1}, - {&__pyx_n_s__sort, __pyx_k__sort, sizeof(__pyx_k__sort), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__variables, __pyx_k__variables, sizeof(__pyx_k__variables), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__writelines, __pyx_k__writelines, sizeof(__pyx_k__writelines), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initlocks(void); /*proto*/ -PyMODINIT_FUNC initlocks(void) -#else -PyMODINIT_FUNC PyInit_locks(void); /*proto*/ -PyMODINIT_FUNC PyInit_locks(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_locks(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("locks"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_locks) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "locks.py":28 - * - * - * from command_line import command_line # <<<<<<<<<<<<<< - * - * from irpf90_t import * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "locks.py":30 - * from command_line import command_line - * - * from irpf90_t import * # <<<<<<<<<<<<<< - * from util import * - * from variables import variables - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_2)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_2)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "locks.py":31 - * - * from irpf90_t import * - * from util import * # <<<<<<<<<<<<<< - * from variables import variables - * FILENAME=irpdir+'irp_locks.irp.F90' - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_2)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_2)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "locks.py":32 - * from irpf90_t import * - * from util import * - * from variables import variables # <<<<<<<<<<<<<< - * FILENAME=irpdir+'irp_locks.irp.F90' - * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__variables, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "locks.py":33 - * from util import * - * from variables import variables - * FILENAME=irpdir+'irp_locks.irp.F90' # <<<<<<<<<<<<<< - * - * def create(): - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FILENAME, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "locks.py":35 - * FILENAME=irpdir+'irp_locks.irp.F90' - * - * def create(): # <<<<<<<<<<<<<< - * out = [] - * l = variables.keys() - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5locks_create, NULL, __pyx_n_s__locks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__create, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "locks.py":49 - * file.close() - * - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * create() - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_2, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "locks.py":50 - * - * if __name__ == '__main__': - * create() # <<<<<<<<<<<<<< - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__create); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "locks.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - if (__pyx_m) { - __Pyx_AddTraceback("init locks", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init locks"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/locks.so b/src/locks.so deleted file mode 100755 index 405657754c1d5b87303d4fc3b970f81ee3022ad8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78739 zcmeFadw5hu_BOhA?{s=6q0@m75^mCv00BctfMAe|NeIw^00DyHwFyZFqPb1F1Bs&$ zAs{hEKpjV&Q5l_a7?qJ3N5wl{!P}@fD(a}HpxxpH@7Iy@zE!n5I~ntx-}9XFe1ClB zY)x0Kw^prMwQAL>+SR=`8|IYGb?CZgU4}MGBXxX~L<&^F&VJoI1zNu5(h9T;ZKU9J zDxP0TsuoDpN;SwyZem|L7^&B8sZ-uJ2Le;aBM3DcLo+Dw+O09ZJP>*{4PcKW)rK-KY?6Qvrz-6VX zJECs`fgAXnw`jRGFYDp-&aU5OZ|eyDE5?{L_UJ=rJi~fd;cp54PQ_ml{<82l1%Ko4 zHwu6A@W(41f0-huX@gZdOr?D#sVImJ7xHuQmxI64@W=j*z#p&vG7+D}wmh>F@TZ1W zo8GI;B2!dmyagc5#@`tHO|@ZGb_g<~Edpsg{?hO_)`tC3HXq{1s zrGAz7!N0l>{HH$j8QVv{{?tdi-}fQ^oId1S)qE~|`jCID5BU(IdGXi#`h6e$y0Z`Y z<$dULdLME|_rd>CAM)SmgTEPy|I)m8s*iSe^?~2rhnyXKwEMe0^!%|8Io>|neXI{T z6_De_U+?SdKJ*Fnfj`*?9_T}#@B7fFy$?C5eef^n1Lt1I+q+YsKf>QHjblb1e!CR> zqkcior+xHmM<4QCeeiS59e~}jD$o>IT@wrin#vc>u5G9flvk{(4al-zF7a2kR8T-gZOw&X zoWIt;R7sd!TM-Nff||dq)xQX$mW7&{D??gY>%u^2O+%G`QD7a2#jDN_REGTXX8V`d zmp4^ZUeE(84%C7!t^r3+_CTmG6l#LVn)=n?SQhwIbD+L5;GY)=m4pIyHX)MJl2YE< z80aos7UdRAux60bgjj!JP|5fE8(UlaHFb>*uo`XW4?&E-zM>A@i*^CRsFT%Fx9mAB zm43E6r>Uud#Yp{g8=C4WXbcvX)K>*s?4FtW1b?26i2W#MHQl5(pJp}oBkC>XULwOEAi^eUGkAwgMWZc{^Dw9dkYs^(f@ zaT*Uyvm2@cVwj*z`I@FcMb)xUMJV8(-Q3g^s3*tVCbXeOl7k&6!hrjIaJrstM6I)^ zxo%aU2`*JvQ3E5f^Ck5mKlLbW5F>Bv_1xzAN*WDNVbf}kOetKsr{mB%R)O+`^5#Z# zqo-p?H)3;2gOd8PTIgF?RRv77+3jl_oW+%u>?g}<&1Ip6M)*@x1vTOvuqw^&sSq6B za(k%={hU*#ys6omG9=FmG&R8Vat0|`B|$Q2oW!*al@|zKT;>nfH)2+Vs-Xy{!|8#h zAXSilcSc21{hSsM|23k8^;Ps26wS5_X&HsK!5CCjwNhpYnv-Kc#XoflkPgYo zQVOam5p@~WD26c5RNupymeH>9@b&XnW&8o(baM$c$Lv{}7O6I0&{yA(k1R&=oJ|YZ&UcrB|UMAZd=+DPv%WLuC2ZBq%4W=?1lfJ*416T z@SO3Ie_t>Bz!_dqaG)2yN9h;tg?knM@m}~p6o1k(DbMP!Pw}Vq!uKiu{9bsO;xFih zA5{D+d*Mlne@!p^O~t>p7rsXEZ|{X4QT%&);f;!aZ!i24#eb+5zE|-d?uCD&__gw$ z_DNIxW-t6F#h=*=U#a+Wdf{8p^}^>X{=>cSe8nH`g)dh8X0LtoPQ{

w~c7Vos-*10h8 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

I9)GE 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 diff --git a/src/makefile.c b/src/makefile.c deleted file mode 100644 index a1a00a4..0000000 --- a/src/makefile.c +++ /dev/null @@ -1,4550 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:22 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__makefile -#define __PYX_HAVE_API__makefile -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "makefile.py", -}; - -/*--- Type declarations ---*/ -struct __pyx_obj_8makefile___pyx_scope_struct__run; - -/* "makefile.py":63 - * - * ###################################################################### - * def run(): # <<<<<<<<<<<<<< - * from modules import modules - * if os.fork() == 0: - */ -struct __pyx_obj_8makefile___pyx_scope_struct__run { - PyObject_HEAD - PyObject *__pyx_v_modules; -}; - - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'makefile' */ -static PyTypeObject *__pyx_ptype_8makefile___pyx_scope_struct__run = 0; -#define __Pyx_MODULE_NAME "makefile" -int __pyx_module_is_main_makefile = 0; - -/* Implementation of 'makefile' */ -static PyObject *__pyx_builtin_open; -static PyObject *__pyx_builtin_IOError; -static PyObject *__pyx_builtin_filter; -static PyObject *__pyx_builtin_map; -static char __pyx_k_1[] = "IRPF90 = irpf90 #-a -d\nFC = gfortran\nFCFLAGS= -O2\n\nSRC=\nOBJ=\nLIB=\n\ninclude irpf90.make\n\nirpf90.make: $(wildcard *.irp.f)\n\t$(IRPF90)\n"; -static char __pyx_k_2[] = "%s.irp.module.o %s.irp.o"; -static char __pyx_k_3[] = " %s%s.irp.module.o"; -static char __pyx_k_4[] = " %s%s.irp.o %s%s.irp.o"; -static char __pyx_k_5[] = "irpf90.make"; -static char __pyx_k_7[] = "SRC += %sirp_stack.irp.F90"; -static char __pyx_k_8[] = " %sirp_touches.irp.F90"; -static char __pyx_k_9[] = " %sirp_locks.irp.F90"; -static char __pyx_k_10[] = " %sirp_profile.irp.F90"; -static char __pyx_k_11[] = " %s%s.irp.F90"; -static char __pyx_k_12[] = " %s%s.irp.module.F90"; -static char __pyx_k_13[] = "OBJ += %sirp_stack.irp.o"; -static char __pyx_k_14[] = " %s%s.irp.o"; -static char __pyx_k_15[] = "OBJ1 = $(patsubst %%, %s%%,$(notdir $(OBJ))) %sirp_touches.irp.o"; -static char __pyx_k_16[] = " %sirp_profile.irp.o"; -static char __pyx_k_17[] = " irp_rdtsc.o"; -static char __pyx_k_18[] = " %sirp_locks.irp.o"; -static char __pyx_k_19[] = ""; -static char __pyx_k_20[] = "ALL = %s"; -static char __pyx_k_21[] = " "; -static char __pyx_k_22[] = "ALL_OBJ = %s"; -static char __pyx_k_23[] = "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"; -static char __pyx_k_24[] = "all:$(ALL)"; -static char __pyx_k_25[] = "\t@$(MAKE) -s move"; -static char __pyx_k_26[] = "ifdef USE_IRPF90_A"; -static char __pyx_k_27[] = "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"; -static char __pyx_k_28[] = "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"; -static char __pyx_k_29[] = "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"; -static char __pyx_k_30[] = "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"; -static char __pyx_k_31[] = "%s%s.irp.o: %s%s.irp.module.o"; -static char __pyx_k_32[] = "\t - @echo '"; -static char __pyx_k_33[] = "' >> %sdist_Makefile\n"; -static char __pyx_k_34[] = "%sirp_touches.irp.o:"; -static char __pyx_k_35[] = "%sirp_profile.irp.o:"; -static char __pyx_k_36[] = "%sirp_locks.irp.o:"; -static char __pyx_k_37[] = "%.irp.module.o: "; -static char __pyx_k_38[] = "%.irp.module.F90"; -static char __pyx_k_39[] = "\t$(FC) $(FCFLAGS) -c "; -static char __pyx_k_40[] = "$*.irp.module.F90 -o "; -static char __pyx_k_41[] = "$*.irp.module.o"; -static char __pyx_k_42[] = "%.irp.o: "; -static char __pyx_k_43[] = "%.irp.module.o "; -static char __pyx_k_44[] = "%.irp.F90"; -static char __pyx_k_45[] = "$*.irp.F90 -o "; -static char __pyx_k_46[] = "$*.irp.o"; -static char __pyx_k_47[] = "%.o: %.F90"; -static char __pyx_k_48[] = "\t$(FC) $(FCFLAGS) -c $*.F90 -o "; -static char __pyx_k_49[] = "$*.o"; -static char __pyx_k_50[] = "%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "; -static char __pyx_k_51[] = "%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "; -static char __pyx_k_52[] = "%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "; -static char __pyx_k_53[] = "%.irp.F90: irpf90.make\n"; -static char __pyx_k_54[] = "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n"; -static char __pyx_k_55[] = "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n"; -static char __pyx_k_56[] = "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n"; -static char __pyx_k_57[] = "veryclean:\n\t- $(MAKE) clean\n"; -static char __pyx_k_58[] = "\t- rm -rf "; -static char __pyx_k_59[] = " irpf90.make irpf90_variables dist\n"; -static char __pyx_k__r[] = "r"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__run[] = "run"; -static char __pyx_k__sys[] = "sys"; -static char __pyx_k__else[] = "else"; -static char __pyx_k__exit[] = "exit"; -static char __pyx_k__fork[] = "fork"; -static char __pyx_k__join[] = "join"; -static char __pyx_k__name[] = "name"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__endif[] = "endif"; -static char __pyx_k__write[] = "write"; -static char __pyx_k__create[] = "create"; -static char __pyx_k__filter[] = "filter"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__mandir[] = "mandir"; -static char __pyx_k__values[] = "values"; -static char __pyx_k__IOError[] = "IOError"; -static char __pyx_k__is_main[] = "is_main"; -static char __pyx_k__modules[] = "modules"; -static char __pyx_k__FILENAME[] = "FILENAME"; -static char __pyx_k__Makefile[] = "Makefile"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__includes[] = "includes"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__makefile[] = "makefile"; -static char __pyx_k__do_openmp[] = "do_openmp"; -static char __pyx_k__do_profile[] = "do_profile"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__needed_modules[] = "needed_modules"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_10; -static PyObject *__pyx_kp_s_11; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_13; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_15; -static PyObject *__pyx_kp_s_16; -static PyObject *__pyx_kp_s_17; -static PyObject *__pyx_kp_s_18; -static PyObject *__pyx_kp_s_19; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_20; -static PyObject *__pyx_kp_s_21; -static PyObject *__pyx_kp_s_22; -static PyObject *__pyx_kp_s_23; -static PyObject *__pyx_kp_s_24; -static PyObject *__pyx_kp_s_25; -static PyObject *__pyx_kp_s_26; -static PyObject *__pyx_kp_s_27; -static PyObject *__pyx_kp_s_28; -static PyObject *__pyx_kp_s_29; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_30; -static PyObject *__pyx_kp_s_31; -static PyObject *__pyx_kp_s_32; -static PyObject *__pyx_kp_s_33; -static PyObject *__pyx_kp_s_34; -static PyObject *__pyx_kp_s_35; -static PyObject *__pyx_kp_s_36; -static PyObject *__pyx_kp_s_37; -static PyObject *__pyx_kp_s_38; -static PyObject *__pyx_kp_s_39; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_40; -static PyObject *__pyx_kp_s_41; -static PyObject *__pyx_kp_s_42; -static PyObject *__pyx_kp_s_43; -static PyObject *__pyx_kp_s_44; -static PyObject *__pyx_kp_s_45; -static PyObject *__pyx_kp_s_46; -static PyObject *__pyx_kp_s_47; -static PyObject *__pyx_kp_s_48; -static PyObject *__pyx_kp_s_49; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_50; -static PyObject *__pyx_kp_s_51; -static PyObject *__pyx_kp_s_52; -static PyObject *__pyx_kp_s_53; -static PyObject *__pyx_kp_s_54; -static PyObject *__pyx_kp_s_55; -static PyObject *__pyx_kp_s_56; -static PyObject *__pyx_kp_s_57; -static PyObject *__pyx_kp_s_58; -static PyObject *__pyx_kp_s_59; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_n_s__FILENAME; -static PyObject *__pyx_n_s__IOError; -static PyObject *__pyx_n_s__Makefile; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__create; -static PyObject *__pyx_n_s__do_openmp; -static PyObject *__pyx_n_s__do_profile; -static PyObject *__pyx_n_s__else; -static PyObject *__pyx_n_s__endif; -static PyObject *__pyx_n_s__exit; -static PyObject *__pyx_n_s__filter; -static PyObject *__pyx_n_s__fork; -static PyObject *__pyx_n_s__includes; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__is_main; -static PyObject *__pyx_n_s__join; -static PyObject *__pyx_n_s__makefile; -static PyObject *__pyx_n_s__mandir; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__modules; -static PyObject *__pyx_n_s__name; -static PyObject *__pyx_n_s__needed_modules; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__r; -static PyObject *__pyx_n_s__run; -static PyObject *__pyx_n_s__sys; -static PyObject *__pyx_n_s__values; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__write; -static PyObject *__pyx_int_0; -static PyObject *__pyx_k_tuple_6; -static PyObject *__pyx_k_tuple_60; - -/* "makefile.py":37 - * - * ###################################################################### - * def create(): # <<<<<<<<<<<<<< - * has_makefile = True - * try: - */ - -static PyObject *__pyx_pf_8makefile_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_8makefile_create = {__Pyx_NAMESTR("create"), (PyCFunction)__pyx_pf_8makefile_create, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8makefile_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - int __pyx_v_has_makefile; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_t = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create"); - __pyx_self = __pyx_self; - - /* "makefile.py":38 - * ###################################################################### - * def create(): - * has_makefile = True # <<<<<<<<<<<<<< - * try: - * file = open(FILENAME,"r") - */ - __pyx_v_has_makefile = 1; - - /* "makefile.py":39 - * def create(): - * has_makefile = True - * try: # <<<<<<<<<<<<<< - * file = open(FILENAME,"r") - * except IOError: - */ - { - __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - /*try:*/ { - - /* "makefile.py":40 - * has_makefile = True - * try: - * file = open(FILENAME,"r") # <<<<<<<<<<<<<< - * except IOError: - * has_makefile = False - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L5_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L5_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L5_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_v_file = __pyx_t_4; - __pyx_t_4 = 0; - } - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L12_try_end; - __pyx_L5_error:; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "makefile.py":41 - * try: - * file = open(FILENAME,"r") - * except IOError: # <<<<<<<<<<<<<< - * has_makefile = False - * if has_makefile: - */ - __pyx_t_6 = PyErr_ExceptionMatches(__pyx_builtin_IOError); - if (__pyx_t_6) { - __Pyx_AddTraceback("makefile.create", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_7); - - /* "makefile.py":42 - * file = open(FILENAME,"r") - * except IOError: - * has_makefile = False # <<<<<<<<<<<<<< - * if has_makefile: - * return - */ - __pyx_v_has_makefile = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L6_exception_handled; - } - __pyx_L7_except_error:; - __Pyx_XGIVEREF(__pyx_t_1); - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - goto __pyx_L1_error; - __pyx_L6_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_1); - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); - __pyx_L12_try_end:; - } - - /* "makefile.py":43 - * except IOError: - * has_makefile = False - * if has_makefile: # <<<<<<<<<<<<<< - * return - * file = open(FILENAME,"w") - */ - if (__pyx_v_has_makefile) { - - /* "makefile.py":44 - * has_makefile = False - * if has_makefile: - * return # <<<<<<<<<<<<<< - * file = open(FILENAME,"w") - * t = """IRPF90 = irpf90 #-a -d - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - goto __pyx_L15; - } - __pyx_L15:; - - /* "makefile.py":45 - * if has_makefile: - * return - * file = open(FILENAME,"w") # <<<<<<<<<<<<<< - * t = """IRPF90 = irpf90 #-a -d - * FC = gfortran - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_7; - __pyx_t_7 = 0; - - /* "makefile.py":46 - * return - * file = open(FILENAME,"w") - * t = """IRPF90 = irpf90 #-a -d # <<<<<<<<<<<<<< - * FC = gfortran - * FCFLAGS= -O2 - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_1)); - __pyx_v_t = ((PyObject *)__pyx_kp_s_1); - - /* "makefile.py":59 - * \t$(IRPF90) - * """ - * file.write(t) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__write); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_t); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_t); - __Pyx_GIVEREF(__pyx_v_t); - __pyx_t_4 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "makefile.py":60 - * """ - * file.write(t) - * file.close() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("makefile.create", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_t); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":98 - * print >>file, "" - * - * all = filter(lambda x: modules[x].is_main, modules) # <<<<<<<<<<<<<< - * all = map(lambda x: x[:-6], all) - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_8makefile___pyx_scope_struct__run *__pyx_cur_scope; - struct __pyx_obj_8makefile___pyx_scope_struct__run *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_outer_scope = (struct __pyx_obj_8makefile___pyx_scope_struct__run *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_modules)) { __Pyx_RaiseClosureNameError("modules"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_modules, __pyx_v_x); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__is_main); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("makefile.run.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":99 - * - * all = filter(lambda x: modules[x].is_main, modules) - * all = map(lambda x: x[:-6], all) # <<<<<<<<<<<<<< - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - * print >>file, "ALL = %s"%(" ".join(all)) - */ - -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_lambda_funcdef_lambda2, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda2"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_PySequence_GetSlice(__pyx_v_x, 0, -6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("makefile.run.lambda2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":100 - * all = filter(lambda x: modules[x].is_main, modules) - * all = map(lambda x: x[:-6], all) - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) # <<<<<<<<<<<<<< - * print >>file, "ALL = %s"%(" ".join(all)) - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) - */ - -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda3 = {__Pyx_NAMESTR("lambda3"), (PyCFunction)__pyx_lambda_funcdef_lambda3, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda3"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_2), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("makefile.run.lambda3", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":125 - * for m in mod: - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) # <<<<<<<<<<<<<< - * print >>file, filename," ".join(mds)," ".join(m.includes) - * if not m.is_main: - */ - -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda4 = {__Pyx_NAMESTR("lambda4"), (PyCFunction)__pyx_lambda_funcdef_lambda4, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda4"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PySequence_GetSlice(__pyx_v_x, 0, -4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("makefile.run.lambda4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":130 - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - * mds = filter(lambda x: not x.is_main,mod) # <<<<<<<<<<<<<< - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) - * print >>file," ".join(mds) - */ - -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda5 = {__Pyx_NAMESTR("lambda5"), (PyCFunction)__pyx_lambda_funcdef_lambda5, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda5"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__is_main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyBool_FromLong((!__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("makefile.run.lambda5", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":131 - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - * mds = filter(lambda x: not x.is_main,mod) - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) # <<<<<<<<<<<<<< - * print >>file," ".join(mds) - * if command_line.do_profile: - */ - -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda6 = {__Pyx_NAMESTR("lambda6"), (PyCFunction)__pyx_lambda_funcdef_lambda6, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda6"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__name); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PySequence_GetSlice(__pyx_t_2, 0, -4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__name); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PySequence_GetSlice(__pyx_t_4, 0, -4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_2 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_4), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("makefile.run.lambda6", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "makefile.py":63 - * - * ###################################################################### - * def run(): # <<<<<<<<<<<<<< - * from modules import modules - * if os.fork() == 0: - */ - -static PyObject *__pyx_pf_8makefile_1run(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_8makefile_1run = {__Pyx_NAMESTR("run"), (PyCFunction)__pyx_pf_8makefile_1run, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_8makefile_1run(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - struct __pyx_obj_8makefile___pyx_scope_struct__run *__pyx_cur_scope; - PyObject *__pyx_v_mod = NULL; - PyObject *__pyx_v_m = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_all = NULL; - PyObject *__pyx_v_all_o = NULL; - PyObject *__pyx_v_exe = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_mds = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("run"); - __pyx_cur_scope = (struct __pyx_obj_8makefile___pyx_scope_struct__run *)__pyx_ptype_8makefile___pyx_scope_struct__run->tp_new(__pyx_ptype_8makefile___pyx_scope_struct__run, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - - /* "makefile.py":64 - * ###################################################################### - * def run(): - * from modules import modules # <<<<<<<<<<<<<< - * if os.fork() == 0: - * mod = [] - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__modules)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__modules)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__modules)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__modules), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_modules = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":65 - * def run(): - * from modules import modules - * if os.fork() == 0: # <<<<<<<<<<<<<< - * mod = [] - * for m in modules.values(): - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__fork); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "makefile.py":66 - * from modules import modules - * if os.fork() == 0: - * mod = [] # <<<<<<<<<<<<<< - * for m in modules.values(): - * mod.append(m) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_mod = __pyx_t_1; - __pyx_t_1 = 0; - - /* "makefile.py":67 - * if os.fork() == 0: - * mod = [] - * for m in modules.values(): # <<<<<<<<<<<<<< - * mod.append(m) - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_modules, __pyx_n_s__values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":68 - * mod = [] - * for m in modules.values(): - * mod.append(m) # <<<<<<<<<<<<<< - * - * file = open('irpf90.make','w') - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyList_Append(__pyx_v_mod, __pyx_v_m); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":70 - * mod.append(m) - * - * file = open('irpf90.make','w') # <<<<<<<<<<<<<< - * - * result = "SRC += %sirp_stack.irp.F90"%(irpdir) - */ - __pyx_t_1 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_k_tuple_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_file = __pyx_t_1; - __pyx_t_1 = 0; - - /* "makefile.py":72 - * file = open('irpf90.make','w') - * - * result = "SRC += %sirp_stack.irp.F90"%(irpdir) # <<<<<<<<<<<<<< - * result += " %sirp_touches.irp.F90"%(irpdir) - * if command_line.do_openmp: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_7), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_result = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "makefile.py":73 - * - * result = "SRC += %sirp_stack.irp.F90"%(irpdir) - * result += " %sirp_touches.irp.F90"%(irpdir) # <<<<<<<<<<<<<< - * if command_line.do_openmp: - * result += " %sirp_locks.irp.F90"%(irpdir) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_8), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":74 - * result = "SRC += %sirp_stack.irp.F90"%(irpdir) - * result += " %sirp_touches.irp.F90"%(irpdir) - * if command_line.do_openmp: # <<<<<<<<<<<<<< - * result += " %sirp_locks.irp.F90"%(irpdir) - * if command_line.do_profile: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "makefile.py":75 - * result += " %sirp_touches.irp.F90"%(irpdir) - * if command_line.do_openmp: - * result += " %sirp_locks.irp.F90"%(irpdir) # <<<<<<<<<<<<<< - * if command_line.do_profile: - * result += " %sirp_profile.irp.F90"%(irpdir) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_9), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "makefile.py":76 - * if command_line.do_openmp: - * result += " %sirp_locks.irp.F90"%(irpdir) - * if command_line.do_profile: # <<<<<<<<<<<<<< - * result += " %sirp_profile.irp.F90"%(irpdir) - * for m in mod: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "makefile.py":77 - * result += " %sirp_locks.irp.F90"%(irpdir) - * if command_line.do_profile: - * result += " %sirp_profile.irp.F90"%(irpdir) # <<<<<<<<<<<<<< - * for m in mod: - * result += " %s%s.irp.F90"%(irpdir,m.name[:-4]) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_10), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L9; - } - __pyx_L9:; - - /* "makefile.py":78 - * if command_line.do_profile: - * result += " %sirp_profile.irp.F90"%(irpdir) - * for m in mod: # <<<<<<<<<<<<<< - * result += " %s%s.irp.F90"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.F90"%(irpdir,m.name[:-4]) - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_mod); __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_1; - __pyx_t_1 = 0; - - /* "makefile.py":79 - * result += " %sirp_profile.irp.F90"%(irpdir) - * for m in mod: - * result += " %s%s.irp.F90"%(irpdir,m.name[:-4]) # <<<<<<<<<<<<<< - * result += " %s%s.irp.module.F90"%(irpdir,m.name[:-4]) - * print >>file, result - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_PySequence_GetSlice(__pyx_t_7, 0, -4); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_1 = 0; - __pyx_t_8 = 0; - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_11), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_8)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_7; - __pyx_t_7 = 0; - - /* "makefile.py":80 - * for m in mod: - * result += " %s%s.irp.F90"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.F90"%(irpdir,m.name[:-4]) # <<<<<<<<<<<<<< - * print >>file, result - * - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = __Pyx_PySequence_GetSlice(__pyx_t_8, 0, -4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_12), ((PyObject *)__pyx_t_8)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __pyx_t_8 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_8; - __pyx_t_8 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":81 - * result += " %s%s.irp.F90"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.F90"%(irpdir,m.name[:-4]) - * print >>file, result # <<<<<<<<<<<<<< - * - * result = "OBJ += %sirp_stack.irp.o"%(irpdir) - */ - if (__Pyx_PrintOne(__pyx_v_file, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":83 - * print >>file, result - * - * result = "OBJ += %sirp_stack.irp.o"%(irpdir) # <<<<<<<<<<<<<< - * for m in mod: - * if not m.is_main: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_13), __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = ((PyObject *)__pyx_t_8); - __pyx_t_8 = 0; - - /* "makefile.py":84 - * - * result = "OBJ += %sirp_stack.irp.o"%(irpdir) - * for m in mod: # <<<<<<<<<<<<<< - * if not m.is_main: - * result += " %s%s.irp.o"%(irpdir,m.name[:-4]) - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = ((PyObject *)__pyx_v_mod); __Pyx_INCREF(__pyx_t_8); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_8)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":85 - * result = "OBJ += %sirp_stack.irp.o"%(irpdir) - * for m in mod: - * if not m.is_main: # <<<<<<<<<<<<<< - * result += " %s%s.irp.o"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.o"%(irpdir,m.name[:-4]) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__is_main); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_9 = (!__pyx_t_3); - if (__pyx_t_9) { - - /* "makefile.py":86 - * for m in mod: - * if not m.is_main: - * result += " %s%s.irp.o"%(irpdir,m.name[:-4]) # <<<<<<<<<<<<<< - * result += " %s%s.irp.module.o"%(irpdir,m.name[:-4]) - * print >>file, result - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PySequence_GetSlice(__pyx_t_1, 0, -4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_2 = 0; - __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_14), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "makefile.py":87 - * if not m.is_main: - * result += " %s%s.irp.o"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.o"%(irpdir,m.name[:-4]) # <<<<<<<<<<<<<< - * print >>file, result - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_PySequence_GetSlice(__pyx_t_7, 0, -4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_7; - __pyx_t_7 = 0; - goto __pyx_L14; - } - __pyx_L14:; - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - - /* "makefile.py":88 - * result += " %s%s.irp.o"%(irpdir,m.name[:-4]) - * result += " %s%s.irp.module.o"%(irpdir,m.name[:-4]) - * print >>file, result # <<<<<<<<<<<<<< - * - * print >>file, "OBJ1 = $(patsubst %%, %s%%,$(notdir $(OBJ))) %sirp_touches.irp.o"%(irpdir,irpdir), - */ - if (__Pyx_PrintOne(__pyx_v_file, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":90 - * print >>file, result - * - * print >>file, "OBJ1 = $(patsubst %%, %s%%,$(notdir $(OBJ))) %sirp_touches.irp.o"%(irpdir,irpdir), # <<<<<<<<<<<<<< - * if command_line.do_profile: - * print >>file, " %sirp_profile.irp.o"%(irpdir), " irp_rdtsc.o", - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_8 = 0; - __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_15), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - __pyx_t_7 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_2), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "makefile.py":91 - * - * print >>file, "OBJ1 = $(patsubst %%, %s%%,$(notdir $(OBJ))) %sirp_touches.irp.o"%(irpdir,irpdir), - * if command_line.do_profile: # <<<<<<<<<<<<<< - * print >>file, " %sirp_profile.irp.o"%(irpdir), " irp_rdtsc.o", - * if command_line.do_openmp: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_9) { - - /* "makefile.py":92 - * print >>file, "OBJ1 = $(patsubst %%, %s%%,$(notdir $(OBJ))) %sirp_touches.irp.o"%(irpdir,irpdir), - * if command_line.do_profile: - * print >>file, " %sirp_profile.irp.o"%(irpdir), " irp_rdtsc.o", # <<<<<<<<<<<<<< - * if command_line.do_openmp: - * print >>file, " %sirp_locks.irp.o"%(irpdir), - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_16), __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_t_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_17)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_17)); - __pyx_t_2 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_7), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - goto __pyx_L15; - } - __pyx_L15:; - - /* "makefile.py":93 - * if command_line.do_profile: - * print >>file, " %sirp_profile.irp.o"%(irpdir), " irp_rdtsc.o", - * if command_line.do_openmp: # <<<<<<<<<<<<<< - * print >>file, " %sirp_locks.irp.o"%(irpdir), - * else: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_9) { - - /* "makefile.py":94 - * print >>file, " %sirp_profile.irp.o"%(irpdir), " irp_rdtsc.o", - * if command_line.do_openmp: - * print >>file, " %sirp_locks.irp.o"%(irpdir), # <<<<<<<<<<<<<< - * else: - * print >>file, "" - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_18), __pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - __pyx_t_7 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_2), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L16; - } - /*else*/ { - - /* "makefile.py":96 - * print >>file, " %sirp_locks.irp.o"%(irpdir), - * else: - * print >>file, "" # <<<<<<<<<<<<<< - * - * all = filter(lambda x: modules[x].is_main, modules) - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_19)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_L16:; - - /* "makefile.py":98 - * print >>file, "" - * - * all = filter(lambda x: modules[x].is_main, modules) # <<<<<<<<<<<<<< - * all = map(lambda x: x[:-6], all) - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, ((PyObject*)__pyx_cur_scope), __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_modules); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_cur_scope->__pyx_v_modules); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_modules); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_v_all = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":99 - * - * all = filter(lambda x: modules[x].is_main, modules) - * all = map(lambda x: x[:-6], all) # <<<<<<<<<<<<<< - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - * print >>file, "ALL = %s"%(" ".join(all)) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda2, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_all); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_all); - __Pyx_GIVEREF(__pyx_v_all); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_all); - __pyx_v_all = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":100 - * all = filter(lambda x: modules[x].is_main, modules) - * all = map(lambda x: x[:-6], all) - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) # <<<<<<<<<<<<<< - * print >>file, "ALL = %s"%(" ".join(all)) - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda3, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_all); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_all); - __Pyx_GIVEREF(__pyx_v_all); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_v_all_o = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":101 - * all = map(lambda x: x[:-6], all) - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - * print >>file, "ALL = %s"%(" ".join(all)) # <<<<<<<<<<<<<< - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) - * print >>file, "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"%(irpdir) - */ - __pyx_t_2 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_all); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_all); - __Pyx_GIVEREF(__pyx_v_all); - __pyx_t_8 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_20), __pyx_t_8); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - - /* "makefile.py":102 - * all_o = map(lambda x: "%s.irp.module.o %s.irp.o"%(x,x), all) - * print >>file, "ALL = %s"%(" ".join(all)) - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) # <<<<<<<<<<<<<< - * print >>file, "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"%(irpdir) - * print >>file, "all:$(ALL)" - */ - __pyx_t_7 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_all_o); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_all_o); - __Pyx_GIVEREF(__pyx_v_all_o); - __pyx_t_2 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_22), __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_8)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - - /* "makefile.py":103 - * print >>file, "ALL = %s"%(" ".join(all)) - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) - * print >>file, "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"%(irpdir) # <<<<<<<<<<<<<< - * print >>file, "all:$(ALL)" - * print >>file, "\t@$(MAKE) -s move" - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_23), __pyx_t_8); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "makefile.py":104 - * print >>file, "ALL_OBJ = %s"%(" ".join(all_o)) - * print >>file, "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"%(irpdir) - * print >>file, "all:$(ALL)" # <<<<<<<<<<<<<< - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "ifdef USE_IRPF90_A" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_24)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":105 - * print >>file, "ALL_OBJ1 = $(patsubst %%, %s%%,$(notdir $(ALL_OBJ)))"%(irpdir) - * print >>file, "all:$(ALL)" - * print >>file, "\t@$(MAKE) -s move" # <<<<<<<<<<<<<< - * print >>file, "ifdef USE_IRPF90_A" - * for m in mod: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_25)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":106 - * print >>file, "all:$(ALL)" - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "ifdef USE_IRPF90_A" # <<<<<<<<<<<<<< - * for m in mod: - * if m.is_main: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_26)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":107 - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "ifdef USE_IRPF90_A" - * for m in mod: # <<<<<<<<<<<<<< - * if m.is_main: - * exe = m.name[:-4] - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_mod); __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_8; - __pyx_t_8 = 0; - - /* "makefile.py":108 - * print >>file, "ifdef USE_IRPF90_A" - * for m in mod: - * if m.is_main: # <<<<<<<<<<<<<< - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"%(exe,irpdir,exe,irpdir,exe) - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__is_main); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_9) { - - /* "makefile.py":109 - * for m in mod: - * if m.is_main: - * exe = m.name[:-4] # <<<<<<<<<<<<<< - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"%(irpdir,irpdir) - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = __Pyx_PySequence_GetSlice(__pyx_t_8, 0, -4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_exe); - __pyx_v_exe = __pyx_t_7; - __pyx_t_7 = 0; - - /* "makefile.py":110 - * if m.is_main: - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"%(exe,irpdir,exe,irpdir,exe) # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PyTuple_New(5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - __pyx_t_7 = 0; - __pyx_t_8 = 0; - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_27), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_8)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - - /* "makefile.py":111 - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"%(irpdir,irpdir) # <<<<<<<<<<<<<< - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "else" - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_8 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_28), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "makefile.py":112 - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o irpf90.a"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" # <<<<<<<<<<<<<< - * print >>file, "else" - * for m in mod: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_25)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L19; - } - __pyx_L19:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":113 - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o irpf90.a $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "else" # <<<<<<<<<<<<<< - * for m in mod: - * if m.is_main: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_n_s__else)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":114 - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "else" - * for m in mod: # <<<<<<<<<<<<<< - * if m.is_main: - * exe = m.name[:-4] - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_mod); __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_1; - __pyx_t_1 = 0; - - /* "makefile.py":115 - * print >>file, "else" - * for m in mod: - * if m.is_main: # <<<<<<<<<<<<<< - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"%(exe,irpdir,exe,irpdir,exe) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__is_main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_9) { - - /* "makefile.py":116 - * for m in mod: - * if m.is_main: - * exe = m.name[:-4] # <<<<<<<<<<<<<< - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"%(irpdir,irpdir) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PySequence_GetSlice(__pyx_t_1, 0, -4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_exe); - __pyx_v_exe = __pyx_t_7; - __pyx_t_7 = 0; - - /* "makefile.py":117 - * if m.is_main: - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"%(exe,irpdir,exe,irpdir,exe) # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = PyTuple_New(5); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_exe); - PyTuple_SET_ITEM(__pyx_t_8, 4, __pyx_v_exe); - __Pyx_GIVEREF(__pyx_v_exe); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_29), ((PyObject *)__pyx_t_8)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "makefile.py":118 - * exe = m.name[:-4] - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"%(irpdir,irpdir) # <<<<<<<<<<<<<< - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "endif" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_1 = 0; - __pyx_t_8 = 0; - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_30), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_8)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - - /* "makefile.py":119 - * print >>file, "%s: %s%s.irp.o %s%s.irp.module.o $(OBJ1)"%(exe,irpdir,exe,irpdir,exe) - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" # <<<<<<<<<<<<<< - * print >>file, "endif" - * - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_25)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L22; - } - __pyx_L22:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":120 - * print >>file, "\t$(FC) -o $@ %s$@.irp.o %s$@.irp.module.o $(OBJ1) $(LIB)"%(irpdir,irpdir) - * print >>file, "\t@$(MAKE) -s move" - * print >>file, "endif" # <<<<<<<<<<<<<< - * - * buffer = "" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_n_s__endif)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":122 - * print >>file, "endif" - * - * buffer = "" # <<<<<<<<<<<<<< - * for m in mod: - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_19)); - __pyx_v_buffer = ((PyObject *)__pyx_kp_s_19); - - /* "makefile.py":123 - * - * buffer = "" - * for m in mod: # <<<<<<<<<<<<<< - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) - */ - if (unlikely(((PyObject *)__pyx_v_mod) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_mod); __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_8); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_8; - __pyx_t_8 = 0; - - /* "makefile.py":124 - * buffer = "" - * for m in mod: - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) # <<<<<<<<<<<<<< - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) - * print >>file, filename," ".join(mds)," ".join(m.includes) - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_PySequence_GetSlice(__pyx_t_7, 0, -4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_10 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = __Pyx_PySequence_GetSlice(__pyx_t_10, 0, -4); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = PyTuple_New(4); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_10, 3, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_8 = 0; - __pyx_t_1 = 0; - __pyx_t_7 = 0; - __pyx_t_11 = 0; - __pyx_t_11 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_31), ((PyObject *)__pyx_t_10)); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = ((PyObject *)__pyx_t_11); - __pyx_t_11 = 0; - - /* "makefile.py":125 - * for m in mod: - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) # <<<<<<<<<<<<<< - * print >>file, filename," ".join(mds)," ".join(m.includes) - * if not m.is_main: - */ - __pyx_t_11 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda4, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_10 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__needed_modules); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_11 = 0; - __pyx_t_10 = 0; - __pyx_t_10 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_mds); - __pyx_v_mds = __pyx_t_10; - __pyx_t_10 = 0; - - /* "makefile.py":126 - * filename = "%s%s.irp.o: %s%s.irp.module.o"%(irpdir,m.name[:-4],irpdir,m.name[:-4]) - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) - * print >>file, filename," ".join(mds)," ".join(m.includes) # <<<<<<<<<<<<<< - * if not m.is_main: - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) - */ - __pyx_t_10 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_11 = PyObject_Call(__pyx_t_10, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_10 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__includes); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_10 = 0; - __pyx_t_10 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_11 = 0; - __pyx_t_10 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_1), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "makefile.py":127 - * mds = map (lambda x: " %s%s.irp.module.o"%(irpdir,x[:-4]),m.needed_modules) - * print >>file, filename," ".join(mds)," ".join(m.includes) - * if not m.is_main: # <<<<<<<<<<<<<< - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__is_main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = (!__pyx_t_9); - if (__pyx_t_3) { - - /* "makefile.py":128 - * print >>file, filename," ".join(mds)," ".join(m.includes) - * if not m.is_main: - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) # <<<<<<<<<<<<<< - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - * mds = filter(lambda x: not x.is_main,mod) - */ - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_32), __pyx_v_filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_7 = PyObject_Call(__pyx_t_10, ((PyObject *)__pyx_t_11), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_11)); __pyx_t_11 = 0; - __pyx_t_11 = PyNumber_Add(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_33), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_11, ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_buffer, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L25; - } - __pyx_L25:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":129 - * if not m.is_main: - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) - * print >>file, "%sirp_touches.irp.o:"%(irpdir), # <<<<<<<<<<<<<< - * mds = filter(lambda x: not x.is_main,mod) - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_34), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_1 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_2), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "makefile.py":130 - * buffer += "\t - @echo '"+filename+" ".join(mds)+"' >> %sdist_Makefile\n"%(irpdir) - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - * mds = filter(lambda x: not x.is_main,mod) # <<<<<<<<<<<<<< - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) - * print >>file," ".join(mds) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda5, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(((PyObject *)__pyx_v_mod)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_mod)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_mod)); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_mds); - __pyx_v_mds = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":131 - * print >>file, "%sirp_touches.irp.o:"%(irpdir), - * mds = filter(lambda x: not x.is_main,mod) - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) # <<<<<<<<<<<<<< - * print >>file," ".join(mds) - * if command_line.do_profile: - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda6, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_mds); - __pyx_v_mds = __pyx_t_2; - __pyx_t_2 = 0; - - /* "makefile.py":132 - * mds = filter(lambda x: not x.is_main,mod) - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) - * print >>file," ".join(mds) # <<<<<<<<<<<<<< - * if command_line.do_profile: - * print >>file, "%sirp_profile.irp.o:"%(irpdir), - */ - __pyx_t_2 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_7 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":133 - * mds = map(lambda x: " %s%s.irp.o %s%s.irp.o"%(irpdir,x.name[:-4],irpdir,x.name[:-4]),mds) - * print >>file," ".join(mds) - * if command_line.do_profile: # <<<<<<<<<<<<<< - * print >>file, "%sirp_profile.irp.o:"%(irpdir), - * print >>file," ".join(mds) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "makefile.py":134 - * print >>file," ".join(mds) - * if command_line.do_profile: - * print >>file, "%sirp_profile.irp.o:"%(irpdir), # <<<<<<<<<<<<<< - * print >>file," ".join(mds) - * if command_line.do_openmp: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_35), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - __pyx_t_7 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_1), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "makefile.py":135 - * if command_line.do_profile: - * print >>file, "%sirp_profile.irp.o:"%(irpdir), - * print >>file," ".join(mds) # <<<<<<<<<<<<<< - * if command_line.do_openmp: - * print >>file, "%sirp_locks.irp.o:"%(irpdir), - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L26; - } - __pyx_L26:; - - /* "makefile.py":136 - * print >>file, "%sirp_profile.irp.o:"%(irpdir), - * print >>file," ".join(mds) - * if command_line.do_openmp: # <<<<<<<<<<<<<< - * print >>file, "%sirp_locks.irp.o:"%(irpdir), - * print >>file," ".join(mds) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "makefile.py":137 - * print >>file," ".join(mds) - * if command_line.do_openmp: - * print >>file, "%sirp_locks.irp.o:"%(irpdir), # <<<<<<<<<<<<<< - * print >>file," ".join(mds) - * - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_36), __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_t_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_2)); - __pyx_t_2 = 0; - if (__Pyx_Print(__pyx_v_file, ((PyObject *)__pyx_t_7), 0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - - /* "makefile.py":138 - * if command_line.do_openmp: - * print >>file, "%sirp_locks.irp.o:"%(irpdir), - * print >>file," ".join(mds) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_7 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_21), __pyx_n_s__join); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_mds); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_mds); - __Pyx_GIVEREF(__pyx_v_mds); - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L27; - } - __pyx_L27:; - - /* "makefile.py":168 - * # print >>file, "\t- cd dist ; tar -zcvf ../$*.tar.gz $*\n" - * - * print >>file, irpdir+"%.irp.module.o: "+irpdir+"%.irp.module.F90" # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.module.F90 -o "+irpdir+"$*.irp.module.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.module.o "+irpdir+"%.irp.F90" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_37)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_38)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":169 - * - * print >>file, irpdir+"%.irp.module.o: "+irpdir+"%.irp.module.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.module.F90 -o "+irpdir+"$*.irp.module.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.module.o "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyNumber_Add(((PyObject *)__pyx_kp_s_39), __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_40)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_41)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":170 - * print >>file, irpdir+"%.irp.module.o: "+irpdir+"%.irp.module.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.module.F90 -o "+irpdir+"$*.irp.module.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.module.o "+irpdir+"%.irp.F90" # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.F90" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_42)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_43)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_44)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":171 - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.module.F90 -o "+irpdir+"$*.irp.module.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.module.o "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(((PyObject *)__pyx_kp_s_39), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_45)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_46)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":172 - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.module.o "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.F90" # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.o: %.F90" - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_42)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Add(__pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_44)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":173 - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.o: %.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c $*.F90 -o "+irpdir+"$*.o" - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_39), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_45)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_46)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":174 - * print >>file, irpdir+"%.irp.o: "+irpdir+"%.irp.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.o: %.F90" # <<<<<<<<<<<<<< - * print >>file, "\t$(FC) $(FCFLAGS) -c $*.F90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "+irpdir+"$*.o" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_47)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":175 - * print >>file, "\t$(FC) $(FCFLAGS) -c "+irpdir+"$*.irp.F90 -o "+irpdir+"$*.irp.o" - * print >>file, irpdir+"%.o: %.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c $*.F90 -o "+irpdir+"$*.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "+irpdir+"$*.o" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_48), __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_49)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":176 - * print >>file, irpdir+"%.o: %.F90" - * print >>file, "\t$(FC) $(FCFLAGS) -c $*.F90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "+irpdir+"$*.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "+irpdir+"$*.o" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_50)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_49)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":177 - * print >>file, "\t$(FC) $(FCFLAGS) -c $*.F90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "+irpdir+"$*.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.irp.F90: irpf90.make\n" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_51)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_49)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":178 - * print >>file, irpdir+"%.o: %.f90\n\t$(FC) $(FCFLAGS) -c $*.f90 -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "+irpdir+"$*.o" # <<<<<<<<<<<<<< - * print >>file, irpdir+"%.irp.F90: irpf90.make\n" - * print >>file, "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_52)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_49)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":179 - * print >>file, irpdir+"%.o: %.f\n\t$(FC) $(FCFLAGS) -c $*.f -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.irp.F90: irpf90.make\n" # <<<<<<<<<<<<<< - * print >>file, "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n" - * print >>file, "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n" - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_53)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":180 - * print >>file, irpdir+"%.o: %.F\n\t$(FC) $(FCFLAGS) -c $*.F -o "+irpdir+"$*.o" - * print >>file, irpdir+"%.irp.F90: irpf90.make\n" - * print >>file, "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n" # <<<<<<<<<<<<<< - * print >>file, "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n" - * print >>file, "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_54)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":181 - * print >>file, irpdir+"%.irp.F90: irpf90.make\n" - * print >>file, "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n" - * print >>file, "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n" # <<<<<<<<<<<<<< - * print >>file, "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n" - * print >>file, "veryclean:\n\t- $(MAKE) clean\n" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_55)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":182 - * print >>file, "move:\n\t@mv -f *.mod IRPF90_temp/ 2> /dev/null | DO_NOTHING=\n" - * print >>file, "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n" - * print >>file, "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n" # <<<<<<<<<<<<<< - * print >>file, "veryclean:\n\t- $(MAKE) clean\n" - * print >>file, "\t- rm -rf "+irpdir+" "+mandir+" irpf90.make irpf90_variables dist\n" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_56)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":183 - * print >>file, "irpf90.a: $(OBJ1)\n\t$(AR) crf irpf90.a $(OBJ1)\n" - * print >>file, "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n" - * print >>file, "veryclean:\n\t- $(MAKE) clean\n" # <<<<<<<<<<<<<< - * print >>file, "\t- rm -rf "+irpdir+" "+mandir+" irpf90.make irpf90_variables dist\n" - * - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_57)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":184 - * print >>file, "clean:\n\trm -rf $(EXE) $(OBJ1) irpf90.a $(ALL_OBJ1) $(ALL)\n" - * print >>file, "veryclean:\n\t- $(MAKE) clean\n" - * print >>file, "\t- rm -rf "+irpdir+" "+mandir+" irpf90.make irpf90_variables dist\n" # <<<<<<<<<<<<<< - * - * file.close() - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyNumber_Add(((PyObject *)__pyx_kp_s_58), __pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_21)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__mandir); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_59)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "makefile.py":186 - * print >>file, "\t- rm -rf "+irpdir+" "+mandir+" irpf90.make irpf90_variables dist\n" - * - * file.close() # <<<<<<<<<<<<<< - * sys.exit(0) - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":187 - * - * file.close() - * sys.exit(0) # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__sys); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__exit); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_k_tuple_60), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("makefile.run", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_mod); - __Pyx_XDECREF(__pyx_v_m); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_all); - __Pyx_XDECREF(__pyx_v_all_o); - __Pyx_XDECREF(__pyx_v_exe); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_mds); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_tp_new_8makefile___pyx_scope_struct__run(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_8makefile___pyx_scope_struct__run *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_8makefile___pyx_scope_struct__run *)o); - p->__pyx_v_modules = 0; - return o; -} - -static void __pyx_tp_dealloc_8makefile___pyx_scope_struct__run(PyObject *o) { - struct __pyx_obj_8makefile___pyx_scope_struct__run *p = (struct __pyx_obj_8makefile___pyx_scope_struct__run *)o; - Py_XDECREF(p->__pyx_v_modules); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_8makefile___pyx_scope_struct__run(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_8makefile___pyx_scope_struct__run *p = (struct __pyx_obj_8makefile___pyx_scope_struct__run *)o; - if (p->__pyx_v_modules) { - e = (*v)(p->__pyx_v_modules, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_8makefile___pyx_scope_struct__run(PyObject *o) { - struct __pyx_obj_8makefile___pyx_scope_struct__run *p = (struct __pyx_obj_8makefile___pyx_scope_struct__run *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_modules); - p->__pyx_v_modules = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_8makefile___pyx_scope_struct__run[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct__run = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct__run = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct__run = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct__run = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_8makefile___pyx_scope_struct__run = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("makefile.__pyx_scope_struct__run"), /*tp_name*/ - sizeof(struct __pyx_obj_8makefile___pyx_scope_struct__run), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_8makefile___pyx_scope_struct__run, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct__run, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct__run, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct__run, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct__run, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_8makefile___pyx_scope_struct__run, /*tp_traverse*/ - __pyx_tp_clear_8makefile___pyx_scope_struct__run, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_8makefile___pyx_scope_struct__run, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_8makefile___pyx_scope_struct__run, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("makefile"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0}, - {&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0}, - {&__pyx_kp_s_16, __pyx_k_16, sizeof(__pyx_k_16), 0, 0, 1, 0}, - {&__pyx_kp_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 0}, - {&__pyx_kp_s_18, __pyx_k_18, sizeof(__pyx_k_18), 0, 0, 1, 0}, - {&__pyx_kp_s_19, __pyx_k_19, sizeof(__pyx_k_19), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_20, __pyx_k_20, sizeof(__pyx_k_20), 0, 0, 1, 0}, - {&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0}, - {&__pyx_kp_s_22, __pyx_k_22, sizeof(__pyx_k_22), 0, 0, 1, 0}, - {&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0}, - {&__pyx_kp_s_24, __pyx_k_24, sizeof(__pyx_k_24), 0, 0, 1, 0}, - {&__pyx_kp_s_25, __pyx_k_25, sizeof(__pyx_k_25), 0, 0, 1, 0}, - {&__pyx_kp_s_26, __pyx_k_26, sizeof(__pyx_k_26), 0, 0, 1, 0}, - {&__pyx_kp_s_27, __pyx_k_27, sizeof(__pyx_k_27), 0, 0, 1, 0}, - {&__pyx_kp_s_28, __pyx_k_28, sizeof(__pyx_k_28), 0, 0, 1, 0}, - {&__pyx_kp_s_29, __pyx_k_29, sizeof(__pyx_k_29), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_30, __pyx_k_30, sizeof(__pyx_k_30), 0, 0, 1, 0}, - {&__pyx_kp_s_31, __pyx_k_31, sizeof(__pyx_k_31), 0, 0, 1, 0}, - {&__pyx_kp_s_32, __pyx_k_32, sizeof(__pyx_k_32), 0, 0, 1, 0}, - {&__pyx_kp_s_33, __pyx_k_33, sizeof(__pyx_k_33), 0, 0, 1, 0}, - {&__pyx_kp_s_34, __pyx_k_34, sizeof(__pyx_k_34), 0, 0, 1, 0}, - {&__pyx_kp_s_35, __pyx_k_35, sizeof(__pyx_k_35), 0, 0, 1, 0}, - {&__pyx_kp_s_36, __pyx_k_36, sizeof(__pyx_k_36), 0, 0, 1, 0}, - {&__pyx_kp_s_37, __pyx_k_37, sizeof(__pyx_k_37), 0, 0, 1, 0}, - {&__pyx_kp_s_38, __pyx_k_38, sizeof(__pyx_k_38), 0, 0, 1, 0}, - {&__pyx_kp_s_39, __pyx_k_39, sizeof(__pyx_k_39), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_40, __pyx_k_40, sizeof(__pyx_k_40), 0, 0, 1, 0}, - {&__pyx_kp_s_41, __pyx_k_41, sizeof(__pyx_k_41), 0, 0, 1, 0}, - {&__pyx_kp_s_42, __pyx_k_42, sizeof(__pyx_k_42), 0, 0, 1, 0}, - {&__pyx_kp_s_43, __pyx_k_43, sizeof(__pyx_k_43), 0, 0, 1, 0}, - {&__pyx_kp_s_44, __pyx_k_44, sizeof(__pyx_k_44), 0, 0, 1, 0}, - {&__pyx_kp_s_45, __pyx_k_45, sizeof(__pyx_k_45), 0, 0, 1, 0}, - {&__pyx_kp_s_46, __pyx_k_46, sizeof(__pyx_k_46), 0, 0, 1, 0}, - {&__pyx_kp_s_47, __pyx_k_47, sizeof(__pyx_k_47), 0, 0, 1, 0}, - {&__pyx_kp_s_48, __pyx_k_48, sizeof(__pyx_k_48), 0, 0, 1, 0}, - {&__pyx_kp_s_49, __pyx_k_49, sizeof(__pyx_k_49), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_50, __pyx_k_50, sizeof(__pyx_k_50), 0, 0, 1, 0}, - {&__pyx_kp_s_51, __pyx_k_51, sizeof(__pyx_k_51), 0, 0, 1, 0}, - {&__pyx_kp_s_52, __pyx_k_52, sizeof(__pyx_k_52), 0, 0, 1, 0}, - {&__pyx_kp_s_53, __pyx_k_53, sizeof(__pyx_k_53), 0, 0, 1, 0}, - {&__pyx_kp_s_54, __pyx_k_54, sizeof(__pyx_k_54), 0, 0, 1, 0}, - {&__pyx_kp_s_55, __pyx_k_55, sizeof(__pyx_k_55), 0, 0, 1, 0}, - {&__pyx_kp_s_56, __pyx_k_56, sizeof(__pyx_k_56), 0, 0, 1, 0}, - {&__pyx_kp_s_57, __pyx_k_57, sizeof(__pyx_k_57), 0, 0, 1, 0}, - {&__pyx_kp_s_58, __pyx_k_58, sizeof(__pyx_k_58), 0, 0, 1, 0}, - {&__pyx_kp_s_59, __pyx_k_59, sizeof(__pyx_k_59), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_n_s__FILENAME, __pyx_k__FILENAME, sizeof(__pyx_k__FILENAME), 0, 0, 1, 1}, - {&__pyx_n_s__IOError, __pyx_k__IOError, sizeof(__pyx_k__IOError), 0, 0, 1, 1}, - {&__pyx_n_s__Makefile, __pyx_k__Makefile, sizeof(__pyx_k__Makefile), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__create, __pyx_k__create, sizeof(__pyx_k__create), 0, 0, 1, 1}, - {&__pyx_n_s__do_openmp, __pyx_k__do_openmp, sizeof(__pyx_k__do_openmp), 0, 0, 1, 1}, - {&__pyx_n_s__do_profile, __pyx_k__do_profile, sizeof(__pyx_k__do_profile), 0, 0, 1, 1}, - {&__pyx_n_s__else, __pyx_k__else, sizeof(__pyx_k__else), 0, 0, 1, 1}, - {&__pyx_n_s__endif, __pyx_k__endif, sizeof(__pyx_k__endif), 0, 0, 1, 1}, - {&__pyx_n_s__exit, __pyx_k__exit, sizeof(__pyx_k__exit), 0, 0, 1, 1}, - {&__pyx_n_s__filter, __pyx_k__filter, sizeof(__pyx_k__filter), 0, 0, 1, 1}, - {&__pyx_n_s__fork, __pyx_k__fork, sizeof(__pyx_k__fork), 0, 0, 1, 1}, - {&__pyx_n_s__includes, __pyx_k__includes, sizeof(__pyx_k__includes), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__is_main, __pyx_k__is_main, sizeof(__pyx_k__is_main), 0, 0, 1, 1}, - {&__pyx_n_s__join, __pyx_k__join, sizeof(__pyx_k__join), 0, 0, 1, 1}, - {&__pyx_n_s__makefile, __pyx_k__makefile, sizeof(__pyx_k__makefile), 0, 0, 1, 1}, - {&__pyx_n_s__mandir, __pyx_k__mandir, sizeof(__pyx_k__mandir), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__modules, __pyx_k__modules, sizeof(__pyx_k__modules), 0, 0, 1, 1}, - {&__pyx_n_s__name, __pyx_k__name, sizeof(__pyx_k__name), 0, 0, 1, 1}, - {&__pyx_n_s__needed_modules, __pyx_k__needed_modules, sizeof(__pyx_k__needed_modules), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__r, __pyx_k__r, sizeof(__pyx_k__r), 0, 0, 1, 1}, - {&__pyx_n_s__run, __pyx_k__run, sizeof(__pyx_k__run), 0, 0, 1, 1}, - {&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1}, - {&__pyx_n_s__values, __pyx_k__values, sizeof(__pyx_k__values), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__write, __pyx_k__write, sizeof(__pyx_k__write), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_IOError = __Pyx_GetName(__pyx_b, __pyx_n_s__IOError); if (!__pyx_builtin_IOError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_filter = __Pyx_GetName(__pyx_b, __pyx_n_s__filter); if (!__pyx_builtin_filter) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "makefile.py":70 - * mod.append(m) - * - * file = open('irpf90.make','w') # <<<<<<<<<<<<<< - * - * result = "SRC += %sirp_stack.irp.F90"%(irpdir) - */ - __pyx_k_tuple_6 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_6)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_5)); - PyTuple_SET_ITEM(__pyx_k_tuple_6, 0, ((PyObject *)__pyx_kp_s_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_5)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_k_tuple_6, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_6)); - - /* "makefile.py":187 - * - * file.close() - * sys.exit(0) # <<<<<<<<<<<<<< - */ - __pyx_k_tuple_60 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_60)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_60)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_k_tuple_60, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_60)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initmakefile(void); /*proto*/ -PyMODINIT_FUNC initmakefile(void) -#else -PyMODINIT_FUNC PyInit_makefile(void); /*proto*/ -PyMODINIT_FUNC PyInit_makefile(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_makefile(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("makefile"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_makefile) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - if (PyType_Ready(&__pyx_type_8makefile___pyx_scope_struct__run) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_8makefile___pyx_scope_struct__run = &__pyx_type_8makefile___pyx_scope_struct__run; - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "makefile.py":28 - * - * - * import os,sys # <<<<<<<<<<<<<< - * import irpf90_t - * from command_line import command_line - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__os, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__sys), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__sys, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":29 - * - * import os,sys - * import irpf90_t # <<<<<<<<<<<<<< - * from command_line import command_line - * irpdir = irpf90_t.irpdir - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpf90_t, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":30 - * import os,sys - * import irpf90_t - * from command_line import command_line # <<<<<<<<<<<<<< - * irpdir = irpf90_t.irpdir - * mandir = irpf90_t.mandir - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":31 - * import irpf90_t - * from command_line import command_line - * irpdir = irpf90_t.irpdir # <<<<<<<<<<<<<< - * mandir = irpf90_t.mandir - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpdir, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "makefile.py":32 - * from command_line import command_line - * irpdir = irpf90_t.irpdir - * mandir = irpf90_t.mandir # <<<<<<<<<<<<<< - * - * FILENAME = "Makefile" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__mandir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__mandir, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":34 - * mandir = irpf90_t.mandir - * - * FILENAME = "Makefile" # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FILENAME, ((PyObject *)__pyx_n_s__Makefile)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "makefile.py":37 - * - * ###################################################################### - * def create(): # <<<<<<<<<<<<<< - * has_makefile = True - * try: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_8makefile_create, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__create, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":63 - * - * ###################################################################### - * def run(): # <<<<<<<<<<<<<< - * from modules import modules - * if os.fork() == 0: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_8makefile_1run, NULL, __pyx_n_s__makefile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__run, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "makefile.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - if (__pyx_m) { - __Pyx_AddTraceback("init makefile", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init makefile"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *local_type, *local_value, *local_tb; - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - local_type = tstate->curexc_type; - local_value = tstate->curexc_value; - local_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - PyErr_NormalizeException(&local_type, &local_value, &local_tb); - if (unlikely(tstate->curexc_type)) - goto bad; - #if PY_MAJOR_VERSION >= 3 - if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) - goto bad; - #endif - *type = local_type; - *value = local_value; - *tb = local_tb; - Py_INCREF(local_type); - Py_INCREF(local_value); - Py_INCREF(local_tb); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - /* Make sure tstate is in a consistent state when we XDECREF - these objects (XDECREF may run arbitrary code). */ - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); - return 0; -bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -} - - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { - PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); -} - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->exc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} - -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/makefile.so b/src/makefile.so deleted file mode 100755 index 5f4815c83318dd4b7430a08b9d1743821c32ee1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 225846 zcmeEv3v?7k_V)w`L{uiCXhhTjg9Z^y)VNU`O@P1z14bT-&m`nwqL9R7qM)GB44QF_ zMnx8NSF=7=bbUnEMPxNZLBMx(ec+;NRK#whh`J&^^Zo9vTQfbK=?VV*f9HJXe9kUb z*RA`mTeqsKt2Llivya8+u$ey9>%jnLHyoi4k?6kR3>`2dvk zZp4^8Ir(KJIRHOhiaBiC zet=UiO`S2v)tGa`?OXQgcgJP^+dKVR)~z3Y@5S{*cQyW6deveb{4QWpp6i(gp|cEFd=jM+LUCUp0JsX!Z!e}ewN19vM_I1vvH<^vSYQ;N)IT&HDVCZ#(h|}Jba1EdX%2Sn?Ev4`L7xc@`d{h5=OOqzmfuct;D4F}{Bs9BcR0WgcF^-f2l$^H z{PvTBT>%HVzc}z;?!f1t4)9qH`ZPNDr^W$3-huyR4tk#LfDf?CgMaqlYYzBZ9NjzpJnug{v@c_VmKi zvf8o>D(n1ZwX>&BnqOU2HoJJ<{4&)RyQQ#XVKFf%o?m$x5T{*II8!)GnqOR3S61gL zELc=H1FUBGYwJrOtzgmYirTW`(pmmue_7$A`r6vEDh8i6@4~VYf8o?gg)_=7brmd% z)MwWgmt4e*X4lqR7!{sfR$DE6!}xi1garEOW&Vol(q7EwR4I000tlR3Hs2z!%%9`; z*8-4RTU$73epxYJFDxmXQM{lGuxi~ltIV&I1TNI5th%6ZN^SK5bx9gjm)6fOE1X*9 zpIiyk3l>ePE-e#KAY)WD|(gz#q9 z*MPrr*NplF^U7-B{sqOARp>}Giw7qa&nNT9n%spYWi|fF>Z<9*{*nsxjsnjhA=HE6 zb~MadR7a|ZEks-4%=#*SWiKa$4W3d7b!JtU`)Ad_BJg0qnYERE>NWT$3KZrnzRRf# zBMD>{2UTH-e^E_Y;k?56)g@pcRzWrDrZ5S)SX_};<>!vbuV#rBH%zIoDk1X$%Bj78 z%+E)-3t5D5p1*7X+Q?&J|4Zx4%94sn)eCBhxuckRHnan_>I|tw@uI$9%$%Bf5aF@ixVs4%7Ry`cD_ zvU2nbSe`bku&$~G{opT0jXL*?vf4T&j%+=%xV9>HA)3VfkzmfLD&@XF2x}J>YO|?t zW@11uBA$7WsKWlZ!sCwvByT}YHIfaqQ(%C^HyAxp9VkN4d1bX#5z!!+Q&m}lkuzt~ ztm80L`EvG@EHqF^Dgnyg!or$G3kw&hVOLpKNJ9bti8w%|7?BJH5o<7rVEX*Zc{P4c zPvh&V$EQ=hgszTv6_%A2`-@$Lh4bp_R00JEeK|EhZ{noFW5ypFzB*<+-3R}_^21by zA0`S{Le&2Vn&9f^I>vJEvTtQ2W|01_*#fH{UWt3dey;OTr=Q;U(t8M?~;wF1{*v{;-|?5?~-_3X@f63SlQoZgV*#^@J<`NN$@w@;MWTN zE*rc>@LfZq{oE?}9vggx;HTN(9fI$(!B+}?ferqy;MdsTs|A0d4esi%^jl$rcL;u~ z4PGGl9X9wT!QW(qmkGXMgLex44ja5d@RQxqe%mbgDK>b+VG1wH22YlF$hN^-g@2I^ z?m9&Asj$JH68t6`e3$6cVuL>?_-!_LlJH+`gRd9-%{F+l;CI>JU4rjQj`mNA;3wJO z!v-k4G#lI__~~}I;1}57X@Wo32G17!g*JG);5XRdMS|aIgJ%i;N*laY@Hg4uKEdy_ z!Mg;1hYj8){k6*mPfk?+N!cgbp9R9-V}oZ4ezpx>B=|lXyg~3QZ19DGUt@#cDflfm zc!S`tu)*5|f3*$XB={XRc&FfZ+2AdLZ`j~F1V3qLw0~9zezFaoJW%1K+u*H&pJjum z3;tXie5K$Q+293&-(Z8c34W6eUL*J`ZSaMMDm~k5@D{=Ew82*k|IIddo8a%V!8-)s zwQscFItAZjgKrZ2G#k82@O?ITr{EXZ;5!7r#s=Rk_zP`t*C3_e3LCsj@LO&0!Ghmm zgByas$p$}A@C_S$hv4t9!AA*x@_x~N+a>rZHh8w+XW8H`>ECP{yh!kiZ15DBFDh*C zGQn@M!IOl4iw)i&_-!_Lvf!__!8-(hvkjgi_+2)*D@pmqH7wdc9>Gtt!P5ml%?3{s z{B#?J&$Yqt6#RuYc!l(DgAIO<;J4b~S)%_+8~ky>-(-V#h<`e5@FxX-hYg-B{CC;l zYXm>#plE+4i@hEj{At0@w!t@vK0X_~L+~qX@GRk9V}q|3{1zMBC;G3j!Cw;m)i!v6 z;CI;IuLyoYkB2v2=*$TH)4#bE_#h2LS!97HS>P2Gxb=)njRj6;kMwV$1@6&6lnoZR zKDR>6O&0i(7W@_qT(XK!n`?nvpZ^wF;QCA*(NtLA*5|@C7WlrJIm(3=IGt70zXl6@mP&?6j7%I zKFY#pvju*b1>R+Wr&{2K1wPsW-(i6tZh`Nzz>l!NT?vsmPqV<2EbuWFc(Mhq&p%Rg ziUod@1>a+VkF&tjEO6`5w{#0!pYJ2GEDJo{!YA7T*XL8I*=K>vqZg(su)wY7W9M4n z*7KG{7PvmsNsKBia5}4@e>E2P2^xrUp#^@j1>RtR(-~U*YqG#|G!SKr1wP3FUtxh; z^Ioe3KE;B+(gL4qfwx)U@@RoueT|Y~}hys#7X8TeyBA)oH3V z8@PT9)hRujHC#WE>NK^QMO+_6bxOHr0oR99ol>ot&Gn&Frxa_ZbA2$?DYcp&uJ@xl zrBpMS>pyg&PN~#%as6wmQwlYA`~tw}�bE^)9Y|MD=~B-pTcUQ=L+!*}?TUs7@); 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≦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

bEgU5Sf80Z35`7iE`QeGM_3Q(3L{TymyaK z$?lZwq&DbY>V5(PJoB4Z^<0+53JIBa;r(Q5iVAil9W*cbeslwb#+uDD|50`hc9~5n zQn$mkvqbNu89X-bA?C~wq<|XZnKXipM0&J%Y`PF)Snc=B%Rh}~x;-#eF?$Zar-(9! z5DA#r?MtUkbj(;qknzx<)LB8Z{9fy#eLUV5Ba@xwQ5$d?QU#A>?IUFx=qvCh7(ESU zH;iR8{jUkw6-`d<%F=Gxk_WlRj8fZgZaa-yLj%OLjYfht<6uv*Fsk%z_fZeI?bEJY zs#2jLK&_)u=^i8=MTVH?EIT|=^@o;$1Jz>57*3hJzQA$QQe%k1E^A?TWJMgMir@;ihc|K h3x*$HdX5eh+`~vVs%F3rYualKOtg@y9elQ;{{z-y#(Mw& diff --git a/src/module.c b/src/module.c deleted file mode 100644 index 59505c9..0000000 --- a/src/module.c +++ /dev/null @@ -1,7953 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:23 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__module -#define __PYX_HAVE_API__module -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "module.py", -}; - -/*--- Type declarations ---*/ -struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions; -struct __pyx_obj_6module___pyx_scope_struct_1_residual_text; -struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables; -struct __pyx_obj_6module___pyx_scope_struct__variables; - -/* "module.py":135 - * return result - * - * def modify_functions(text): # <<<<<<<<<<<<<< - * result = [] - * variable_list = [] - */ -struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions { - PyObject_HEAD - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *__pyx_outer_scope; - PyObject *__pyx_v_line; -}; - - -/* "module.py":119 - * generated_text = property(generated_text) - * - * def residual_text(self): # <<<<<<<<<<<<<< - * if '_residual_text' not in self.__dict__: - * from variables import build_use, call_provides - */ -struct __pyx_obj_6module___pyx_scope_struct_1_residual_text { - PyObject_HEAD - PyObject *__pyx_v_build_use; - PyObject *__pyx_v_call_provides; -}; - - -/* "module.py":167 - * return use, dec, result - * - * def provide_variables(text): # <<<<<<<<<<<<<< - * result = [] - * for vars,line in text: - */ -struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables { - PyObject_HEAD - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *__pyx_outer_scope; - PyObject *__pyx_v_line; -}; - - -/* "module.py":67 - * prog_name = property(prog_name) - * - * def variables(self): # <<<<<<<<<<<<<< - * if '_variables' not in self.__dict__: - * from variables import variables - */ -struct __pyx_obj_6module___pyx_scope_struct__variables { - PyObject_HEAD - PyObject *__pyx_v_name; - PyObject *__pyx_v_variables; -}; - - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - -static CYTHON_INLINE int __Pyx_NegateNonNeg(int b) { - return unlikely(b < 0) ? b : !b; -} -static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { - return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); -} - - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} - - -#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_List_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - - -#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { - PyObject *r; - if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { - r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { - r = PySequence_GetItem(o, i); - } - else { - r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); - } - return r; -} - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); - -static CYTHON_INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) { - if (likely(PyList_CheckExact(L))) { - if (PyList_Append(L, x) < 0) return NULL; - Py_INCREF(Py_None); - return Py_None; /* this is just to have an accurate signature */ - } - else { - PyObject *r, *m; - m = __Pyx_GetAttrString(L, "append"); - if (!m) return NULL; - r = PyObject_CallFunctionObjArgs(m, x, NULL); - Py_DECREF(m); - return r; - } -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases); /*proto*/ - -static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, - PyObject *modname); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'module' */ -static PyTypeObject *__pyx_ptype_6module___pyx_scope_struct__variables = 0; -static PyTypeObject *__pyx_ptype_6module___pyx_scope_struct_1_residual_text = 0; -static PyTypeObject *__pyx_ptype_6module___pyx_scope_struct_2_modify_functions = 0; -static PyTypeObject *__pyx_ptype_6module___pyx_scope_struct_3_provide_variables = 0; -#define __Pyx_MODULE_NAME "module" -int __pyx_module_is_main_module = 0; - -/* Implementation of 'module' */ -static PyObject *__pyx_builtin_object; -static PyObject *__pyx_builtin_property; -static PyObject *__pyx_builtin_filter; -static PyObject *__pyx_builtin_map; -static char __pyx_k_1[] = "%s_mod"; -static char __pyx_k_2[] = "module %s"; -static char __pyx_k_3[] = "end module %s"; -static char __pyx_k_4[] = " "; -static char __pyx_k_5[] = "use "; -static char __pyx_k_8[] = "*"; -static char __pyx_k_9[] = "! -*- F90 -*-"; -static char __pyx_k_10[] = "!"; -static char __pyx_k_11[] = "!-----------------------------------------------!"; -static char __pyx_k_12[] = "! This file was generated with the irpf90 tool. !"; -static char __pyx_k_13[] = "! !"; -static char __pyx_k_14[] = "! DO NOT MODIFY IT BY HAND !"; -static char __pyx_k_15[] = ""; -static char __pyx_k_16[] = "vmc_step.irp.f"; -static char __pyx_k__i[] = "i"; -static char __pyx_k__x[] = "x"; -static char __pyx_k__End[] = "End"; -static char __pyx_k__Use[] = "Use"; -static char __pyx_k__dec[] = "dec"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__use[] = "use"; -static char __pyx_k___dec[] = "_dec"; -static char __pyx_k___mod[] = "_mod"; -static char __pyx_k___use[] = "_use"; -static char __pyx_k__head[] = "head"; -static char __pyx_k__line[] = "line"; -static char __pyx_k__name[] = "name"; -static char __pyx_k__self[] = "self"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__util[] = "util"; -static char __pyx_k___head[] = "_head"; -static char __pyx_k__needs[] = "needs"; -static char __pyx_k__split[] = "split"; -static char __pyx_k__filter[] = "filter"; -static char __pyx_k__header[] = "header"; -static char __pyx_k__lstrip[] = "lstrip"; -static char __pyx_k__module[] = "module"; -static char __pyx_k__object[] = "object"; -static char __pyx_k__reader[] = "reader"; -static char __pyx_k__remove[] = "remove"; -static char __pyx_k__writer[] = "writer"; -static char __pyx_k__Fmodule[] = "Fmodule"; -static char __pyx_k__Program[] = "Program"; -static char __pyx_k__builder[] = "builder"; -static char __pyx_k__flatten[] = "flatten"; -static char __pyx_k__fmodule[] = "fmodule"; -static char __pyx_k__is_main[] = "is_main"; -static char __pyx_k__is_read[] = "is_read"; -static char __pyx_k__Function[] = "Function"; -static char __pyx_k__Implicit[] = "Implicit"; -static char __pyx_k____dict__[] = "__dict__"; -static char __pyx_k____init__[] = "__init__"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k___is_main[] = "_is_main"; -static char __pyx_k__endswith[] = "endswith"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__includes[] = "includes"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__property[] = "property"; -static char __pyx_k__provider[] = "provider"; -static char __pyx_k__put_info[] = "put_info"; -static char __pyx_k__variable[] = "variable"; -static char __pyx_k___includes[] = "_includes"; -static char __pyx_k__build_use[] = "build_use"; -static char __pyx_k__prog_name[] = "prog_name"; -static char __pyx_k__variables[] = "variables"; -static char __pyx_k__Subroutine[] = "Subroutine"; -static char __pyx_k___prog_name[] = "_prog_name"; -static char __pyx_k___variables[] = "_variables"; -static char __pyx_k__is_written[] = "is_written"; -static char __pyx_k__startswith[] = "startswith"; -static char __pyx_k__Declaration[] = "Declaration"; -static char __pyx_k__Simple_line[] = "Simple_line"; -static char __pyx_k__make_single[] = "make_single"; -static char __pyx_k__move_to_top[] = "move_to_top"; -static char __pyx_k__needed_vars[] = "needed_vars"; -static char __pyx_k__parsed_text[] = "parsed_text"; -static char __pyx_k__End_provider[] = "End_provider"; -static char __pyx_k___needed_vars[] = "_needed_vars"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__call_provides[] = "call_provides"; -static char __pyx_k__residual_text[] = "residual_text"; -static char __pyx_k__Begin_provider[] = "Begin_provider"; -static char __pyx_k___residual_text[] = "_residual_text"; -static char __pyx_k__generated_text[] = "generated_text"; -static char __pyx_k__needed_modules[] = "needed_modules"; -static char __pyx_k___generated_text[] = "_generated_text"; -static char __pyx_k___needed_modules[] = "_needed_modules"; -static char __pyx_k__preprocessed_text[] = "preprocessed_text"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_10; -static PyObject *__pyx_kp_s_11; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_13; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_15; -static PyObject *__pyx_kp_s_16; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_n_s_8; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_n_s__Begin_provider; -static PyObject *__pyx_n_s__Declaration; -static PyObject *__pyx_n_s__End; -static PyObject *__pyx_n_s__End_provider; -static PyObject *__pyx_n_s__Fmodule; -static PyObject *__pyx_n_s__Function; -static PyObject *__pyx_n_s__Implicit; -static PyObject *__pyx_n_s__Program; -static PyObject *__pyx_n_s__Simple_line; -static PyObject *__pyx_n_s__Subroutine; -static PyObject *__pyx_n_s__Use; -static PyObject *__pyx_n_s____dict__; -static PyObject *__pyx_n_s____init__; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s___dec; -static PyObject *__pyx_n_s___generated_text; -static PyObject *__pyx_n_s___head; -static PyObject *__pyx_n_s___includes; -static PyObject *__pyx_n_s___is_main; -static PyObject *__pyx_n_s___mod; -static PyObject *__pyx_n_s___needed_modules; -static PyObject *__pyx_n_s___needed_vars; -static PyObject *__pyx_n_s___prog_name; -static PyObject *__pyx_n_s___residual_text; -static PyObject *__pyx_n_s___use; -static PyObject *__pyx_n_s___variables; -static PyObject *__pyx_n_s__build_use; -static PyObject *__pyx_n_s__builder; -static PyObject *__pyx_n_s__call_provides; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__dec; -static PyObject *__pyx_n_s__endswith; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__filter; -static PyObject *__pyx_n_s__flatten; -static PyObject *__pyx_n_s__fmodule; -static PyObject *__pyx_n_s__generated_text; -static PyObject *__pyx_n_s__head; -static PyObject *__pyx_n_s__header; -static PyObject *__pyx_n_s__i; -static PyObject *__pyx_n_s__includes; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__is_main; -static PyObject *__pyx_n_s__is_read; -static PyObject *__pyx_n_s__is_written; -static PyObject *__pyx_n_s__line; -static PyObject *__pyx_n_s__lstrip; -static PyObject *__pyx_n_s__make_single; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__module; -static PyObject *__pyx_n_s__move_to_top; -static PyObject *__pyx_n_s__name; -static PyObject *__pyx_n_s__needed_modules; -static PyObject *__pyx_n_s__needed_vars; -static PyObject *__pyx_n_s__needs; -static PyObject *__pyx_n_s__object; -static PyObject *__pyx_n_s__parsed_text; -static PyObject *__pyx_n_s__preprocessed_text; -static PyObject *__pyx_n_s__prog_name; -static PyObject *__pyx_n_s__property; -static PyObject *__pyx_n_s__provider; -static PyObject *__pyx_n_s__put_info; -static PyObject *__pyx_n_s__reader; -static PyObject *__pyx_n_s__remove; -static PyObject *__pyx_n_s__residual_text; -static PyObject *__pyx_n_s__self; -static PyObject *__pyx_n_s__split; -static PyObject *__pyx_n_s__startswith; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__use; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__variable; -static PyObject *__pyx_n_s__variables; -static PyObject *__pyx_n_s__writer; -static PyObject *__pyx_n_s__x; -static PyObject *__pyx_k_tuple_6; -static PyObject *__pyx_k_tuple_7; - -/* "module.py":47 - * "" ] - * - * def __init__(self,text,filename): # <<<<<<<<<<<<<< - * self.text = put_info(text,filename) - * self.name = "%s_mod"%(filename[:-6]) - */ - -static PyObject *__pyx_pf_6module_7Fmodule___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_6module_7Fmodule___init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule___init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_self = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__text,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("__init__"); - __pyx_self = __pyx_self; - { - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __pyx_v_self = values[0]; - __pyx_v_text = values[1]; - __pyx_v_filename = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("__init__", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("module.Fmodule.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "module.py":48 - * - * def __init__(self,text,filename): - * self.text = put_info(text,filename) # <<<<<<<<<<<<<< - * self.name = "%s_mod"%(filename[:-6]) - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__put_info); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":49 - * def __init__(self,text,filename): - * self.text = put_info(text,filename) - * self.name = "%s_mod"%(filename[:-6]) # <<<<<<<<<<<<<< - * - * def is_main(self): - */ - __pyx_t_3 = __Pyx_PySequence_GetSlice(__pyx_v_filename, 0, -6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s__name, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("module.Fmodule.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":51 - * self.name = "%s_mod"%(filename[:-6]) - * - * def is_main(self): # <<<<<<<<<<<<<< - * if '_is_main' not in self.__dict__: - * self._is_main = self.prog_name is not None - */ - -static PyObject *__pyx_pf_6module_7Fmodule_1is_main(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_1is_main = {__Pyx_NAMESTR("is_main"), (PyCFunction)__pyx_pf_6module_7Fmodule_1is_main, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_1is_main(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("is_main"); - __pyx_self = __pyx_self; - - /* "module.py":52 - * - * def is_main(self): - * if '_is_main' not in self.__dict__: # <<<<<<<<<<<<<< - * self._is_main = self.prog_name is not None - * return self._is_main - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___is_main)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":53 - * def is_main(self): - * if '_is_main' not in self.__dict__: - * self._is_main = self.prog_name is not None # <<<<<<<<<<<<<< - * return self._is_main - * is_main = property(is_main) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__prog_name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__pyx_t_1 != Py_None); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___is_main, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":54 - * if '_is_main' not in self.__dict__: - * self._is_main = self.prog_name is not None - * return self._is_main # <<<<<<<<<<<<<< - * is_main = property(is_main) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___is_main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("module.Fmodule.is_main", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":59 - * def prog_name(self): - * if '_prog_name' not in self.__dict__: - * buffer = filter(lambda x: type(x[1]) == Program,self.text) # <<<<<<<<<<<<<< - * if buffer == []: - * self._prog_name = None - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_x, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_t_1)), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("module.prog_name.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":57 - * is_main = property(is_main) - * - * def prog_name(self): # <<<<<<<<<<<<<< - * if '_prog_name' not in self.__dict__: - * buffer = filter(lambda x: type(x[1]) == Program,self.text) - */ - -static PyObject *__pyx_pf_6module_7Fmodule_2prog_name(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_2prog_name = {__Pyx_NAMESTR("prog_name"), (PyCFunction)__pyx_pf_6module_7Fmodule_2prog_name, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_2prog_name(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("prog_name"); - __pyx_self = __pyx_self; - - /* "module.py":58 - * - * def prog_name(self): - * if '_prog_name' not in self.__dict__: # <<<<<<<<<<<<<< - * buffer = filter(lambda x: type(x[1]) == Program,self.text) - * if buffer == []: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___prog_name)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":59 - * def prog_name(self): - * if '_prog_name' not in self.__dict__: - * buffer = filter(lambda x: type(x[1]) == Program,self.text) # <<<<<<<<<<<<<< - * if buffer == []: - * self._prog_name = None - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_v_buffer = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":60 - * if '_prog_name' not in self.__dict__: - * buffer = filter(lambda x: type(x[1]) == Program,self.text) - * if buffer == []: # <<<<<<<<<<<<<< - * self._prog_name = None - * else: - */ - __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __pyx_t_4 = PyObject_RichCompare(__pyx_v_buffer, ((PyObject *)__pyx_t_3), Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_2) { - - /* "module.py":61 - * buffer = filter(lambda x: type(x[1]) == Program,self.text) - * if buffer == []: - * self._prog_name = None # <<<<<<<<<<<<<< - * else: - * self._prog_name = buffer[0][1].filename - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___prog_name, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L6; - } - /*else*/ { - - /* "module.py":63 - * self._prog_name = None - * else: - * self._prog_name = buffer[0][1].filename # <<<<<<<<<<<<<< - * return self._prog_name - * prog_name = property(prog_name) - */ - __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_buffer, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_4, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___prog_name, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } - __pyx_L6:; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":64 - * else: - * self._prog_name = buffer[0][1].filename - * return self._prog_name # <<<<<<<<<<<<<< - * prog_name = property(prog_name) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___prog_name); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("module.Fmodule.prog_name", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":71 - * from variables import variables - * name = self.name - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) # <<<<<<<<<<<<<< - * return self._variables - * variables = property(variables) - */ - -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_lambda_funcdef_lambda2, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_6module___pyx_scope_struct__variables *__pyx_cur_scope; - struct __pyx_obj_6module___pyx_scope_struct__variables *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda2"); - __pyx_outer_scope = (struct __pyx_obj_6module___pyx_scope_struct__variables *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_variables)) { __Pyx_RaiseClosureNameError("variables"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_variables, __pyx_v_x); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fmodule); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_name)) { __Pyx_RaiseClosureNameError("name"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_cur_scope->__pyx_v_name, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.variables.lambda2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":67 - * prog_name = property(prog_name) - * - * def variables(self): # <<<<<<<<<<<<<< - * if '_variables' not in self.__dict__: - * from variables import variables - */ - -static PyObject *__pyx_pf_6module_7Fmodule_3variables(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_3variables = {__Pyx_NAMESTR("variables"), (PyCFunction)__pyx_pf_6module_7Fmodule_3variables, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_3variables(PyObject *__pyx_self, PyObject *__pyx_v_self) { - struct __pyx_obj_6module___pyx_scope_struct__variables *__pyx_cur_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("variables"); - __pyx_cur_scope = (struct __pyx_obj_6module___pyx_scope_struct__variables *)__pyx_ptype_6module___pyx_scope_struct__variables->tp_new(__pyx_ptype_6module___pyx_scope_struct__variables, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - - /* "module.py":68 - * - * def variables(self): - * if '_variables' not in self.__dict__: # <<<<<<<<<<<<<< - * from variables import variables - * name = self.name - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___variables)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":69 - * def variables(self): - * if '_variables' not in self.__dict__: - * from variables import variables # <<<<<<<<<<<<<< - * name = self.name - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_variables = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":70 - * if '_variables' not in self.__dict__: - * from variables import variables - * name = self.name # <<<<<<<<<<<<<< - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) - * return self._variables - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__name); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_cur_scope->__pyx_v_name = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":71 - * from variables import variables - * name = self.name - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) # <<<<<<<<<<<<<< - * return self._variables - * variables = property(variables) - */ - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda2, ((PyObject*)__pyx_cur_scope), __pyx_n_s__module); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_variables); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_cur_scope->__pyx_v_variables); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_variables); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___variables, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":72 - * name = self.name - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) - * return self._variables # <<<<<<<<<<<<<< - * variables = property(variables) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___variables); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("module.Fmodule.variables", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":81 - * result += self.use - * result += self.dec - * result += flatten( map(lambda x: variables[x].header,self.variables) ) # <<<<<<<<<<<<<< - * result.append( "end module %s"%(self.name) ) - * self._head = result - */ - -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda3 = {__Pyx_NAMESTR("lambda3"), (PyCFunction)__pyx_lambda_funcdef_lambda3, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda3"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_x); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__header); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.head.lambda3", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":76 - * - * - * def head(self): # <<<<<<<<<<<<<< - * if '_head' not in self.__dict__: - * result = [ "module %s"%(self.name) ] - */ - -static PyObject *__pyx_pf_6module_7Fmodule_4head(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_4head = {__Pyx_NAMESTR("head"), (PyCFunction)__pyx_pf_6module_7Fmodule_4head, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_4head(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("head"); - __pyx_self = __pyx_self; - - /* "module.py":77 - * - * def head(self): - * if '_head' not in self.__dict__: # <<<<<<<<<<<<<< - * result = [ "module %s"%(self.name) ] - * result += self.use - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___head)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":78 - * def head(self): - * if '_head' not in self.__dict__: - * result = [ "module %s"%(self.name) ] # <<<<<<<<<<<<<< - * result += self.use - * result += self.dec - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_2), __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __pyx_t_3 = 0; - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":79 - * if '_head' not in self.__dict__: - * result = [ "module %s"%(self.name) ] - * result += self.use # <<<<<<<<<<<<<< - * result += self.dec - * result += flatten( map(lambda x: variables[x].header,self.variables) ) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":80 - * result = [ "module %s"%(self.name) ] - * result += self.use - * result += self.dec # <<<<<<<<<<<<<< - * result += flatten( map(lambda x: variables[x].header,self.variables) ) - * result.append( "end module %s"%(self.name) ) - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dec); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":81 - * result += self.use - * result += self.dec - * result += flatten( map(lambda x: variables[x].header,self.variables) ) # <<<<<<<<<<<<<< - * result.append( "end module %s"%(self.name) ) - * self._head = result - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__flatten); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda3, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__variables); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_5; - __pyx_t_5 = 0; - - /* "module.py":82 - * result += self.dec - * result += flatten( map(lambda x: variables[x].header,self.variables) ) - * result.append( "end module %s"%(self.name) ) # <<<<<<<<<<<<<< - * self._head = result - * return self._head - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__name); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), __pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_result, ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "module.py":83 - * result += flatten( map(lambda x: variables[x].header,self.variables) ) - * result.append( "end module %s"%(self.name) ) - * self._head = result # <<<<<<<<<<<<<< - * return self._head - * head = property(head) - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___head, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":84 - * result.append( "end module %s"%(self.name) ) - * self._head = result - * return self._head # <<<<<<<<<<<<<< - * head = property(head) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___head); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("module.Fmodule.head", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":89 - * def needed_vars(self): - * if '_needed_vars' not in self.__dict__: - * result = map(lambda x: variables[x].needs,self.variables) # <<<<<<<<<<<<<< - * result = make_single ( flatten(result) ) - * self._needed_vars = result - */ - -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda4 = {__Pyx_NAMESTR("lambda4"), (PyCFunction)__pyx_lambda_funcdef_lambda4, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda4"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_x); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__needs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.needed_vars.lambda4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":87 - * head = property(head) - * - * def needed_vars(self): # <<<<<<<<<<<<<< - * if '_needed_vars' not in self.__dict__: - * result = map(lambda x: variables[x].needs,self.variables) - */ - -static PyObject *__pyx_pf_6module_7Fmodule_5needed_vars(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_5needed_vars = {__Pyx_NAMESTR("needed_vars"), (PyCFunction)__pyx_pf_6module_7Fmodule_5needed_vars, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_5needed_vars(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("needed_vars"); - __pyx_self = __pyx_self; - - /* "module.py":88 - * - * def needed_vars(self): - * if '_needed_vars' not in self.__dict__: # <<<<<<<<<<<<<< - * result = map(lambda x: variables[x].needs,self.variables) - * result = make_single ( flatten(result) ) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___needed_vars)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":89 - * def needed_vars(self): - * if '_needed_vars' not in self.__dict__: - * result = map(lambda x: variables[x].needs,self.variables) # <<<<<<<<<<<<<< - * result = make_single ( flatten(result) ) - * self._needed_vars = result - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda4, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__variables); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":90 - * if '_needed_vars' not in self.__dict__: - * result = map(lambda x: variables[x].needs,self.variables) - * result = make_single ( flatten(result) ) # <<<<<<<<<<<<<< - * self._needed_vars = result - * return self._needed_vars - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__flatten); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_5; - __pyx_t_5 = 0; - - /* "module.py":91 - * result = map(lambda x: variables[x].needs,self.variables) - * result = make_single ( flatten(result) ) - * self._needed_vars = result # <<<<<<<<<<<<<< - * return self._needed_vars - * needed_vars = property(needed_vars) - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___needed_vars, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":92 - * result = make_single ( flatten(result) ) - * self._needed_vars = result - * return self._needed_vars # <<<<<<<<<<<<<< - * needed_vars = property(needed_vars) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___needed_vars); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_r = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("module.Fmodule.needed_vars", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":95 - * needed_vars = property(needed_vars) - * - * def includes(self): # <<<<<<<<<<<<<< - * if '_includes' not in self.__dict__: - * buffer = [] - */ - -static PyObject *__pyx_pf_6module_7Fmodule_6includes(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_6includes = {__Pyx_NAMESTR("includes"), (PyCFunction)__pyx_pf_6module_7Fmodule_6includes, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_6includes(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("includes"); - __pyx_self = __pyx_self; - - /* "module.py":96 - * - * def includes(self): - * if '_includes' not in self.__dict__: # <<<<<<<<<<<<<< - * buffer = [] - * for v in self.needed_vars: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___includes)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":97 - * def includes(self): - * if '_includes' not in self.__dict__: - * buffer = [] # <<<<<<<<<<<<<< - * for v in self.needed_vars: - * buffer += variables[v].includes - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_buffer = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":98 - * if '_includes' not in self.__dict__: - * buffer = [] - * for v in self.needed_vars: # <<<<<<<<<<<<<< - * buffer += variables[v].includes - * self._includes = make_single(buffer) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__needed_vars); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_3); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":99 - * buffer = [] - * for v in self.needed_vars: - * buffer += variables[v].includes # <<<<<<<<<<<<<< - * self._includes = make_single(buffer) - * return self._includes - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_GetItem(__pyx_t_1, __pyx_v_v); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__includes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_buffer, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_6; - __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":100 - * for v in self.needed_vars: - * buffer += variables[v].includes - * self._includes = make_single(buffer) # <<<<<<<<<<<<<< - * return self._includes - * includes = property(includes) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___includes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":101 - * buffer += variables[v].includes - * self._includes = make_single(buffer) - * return self._includes # <<<<<<<<<<<<<< - * includes = property(includes) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___includes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("module.Fmodule.includes", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":104 - * includes = property(includes) - * - * def generated_text(self): # <<<<<<<<<<<<<< - * if '_generated_text' not in self.__dict__: - * result = [] - */ - -static PyObject *__pyx_pf_6module_7Fmodule_7generated_text(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_7generated_text = {__Pyx_NAMESTR("generated_text"), (PyCFunction)__pyx_pf_6module_7Fmodule_7generated_text, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_7generated_text(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("generated_text"); - __pyx_self = __pyx_self; - - /* "module.py":105 - * - * def generated_text(self): - * if '_generated_text' not in self.__dict__: # <<<<<<<<<<<<<< - * result = [] - * for var in self.variables: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___generated_text)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":106 - * def generated_text(self): - * if '_generated_text' not in self.__dict__: - * result = [] # <<<<<<<<<<<<<< - * for var in self.variables: - * var = variables[var] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":107 - * if '_generated_text' not in self.__dict__: - * result = [] - * for var in self.variables: # <<<<<<<<<<<<<< - * var = variables[var] - * result += var.provider - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_3); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":108 - * result = [] - * for var in self.variables: - * var = variables[var] # <<<<<<<<<<<<<< - * result += var.provider - * result += var.builder - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_GetItem(__pyx_t_1, __pyx_v_var); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":109 - * for var in self.variables: - * var = variables[var] - * result += var.provider # <<<<<<<<<<<<<< - * result += var.builder - * if var.is_read: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":110 - * var = variables[var] - * result += var.provider - * result += var.builder # <<<<<<<<<<<<<< - * if var.is_read: - * result += var.reader - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__builder); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":111 - * result += var.provider - * result += var.builder - * if var.is_read: # <<<<<<<<<<<<<< - * result += var.reader - * if var.is_written: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__is_read); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "module.py":112 - * result += var.builder - * if var.is_read: - * result += var.reader # <<<<<<<<<<<<<< - * if var.is_written: - * result += var.writer - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__reader); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "module.py":113 - * if var.is_read: - * result += var.reader - * if var.is_written: # <<<<<<<<<<<<<< - * result += var.writer - * self._generated_text = result - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__is_written); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":114 - * result += var.reader - * if var.is_written: - * result += var.writer # <<<<<<<<<<<<<< - * self._generated_text = result - * return self._generated_text - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__writer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L9; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":115 - * if var.is_written: - * result += var.writer - * self._generated_text = result # <<<<<<<<<<<<<< - * return self._generated_text - * generated_text = property(generated_text) - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___generated_text, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":116 - * result += var.writer - * self._generated_text = result - * return self._generated_text # <<<<<<<<<<<<<< - * generated_text = property(generated_text) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___generated_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("module.Fmodule.generated_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":123 - * from variables import build_use, call_provides - * from parsed_text import move_to_top - * def remove_providers(text): # <<<<<<<<<<<<<< - * result = [] - * inside = False - */ - -static PyObject *__pyx_pf_6module_13residual_text_remove_providers(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_6module_13residual_text_remove_providers = {__Pyx_NAMESTR("remove_providers"), (PyCFunction)__pyx_pf_6module_13residual_text_remove_providers, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_13residual_text_remove_providers(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_result = NULL; - int __pyx_v_inside; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - int __pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("remove_providers"); - __pyx_self = __pyx_self; - - /* "module.py":124 - * from parsed_text import move_to_top - * def remove_providers(text): - * result = [] # <<<<<<<<<<<<<< - * inside = False - * for vars,line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":125 - * def remove_providers(text): - * result = [] - * inside = False # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) == Begin_provider: - */ - __pyx_v_inside = 0; - - /* "module.py":126 - * result = [] - * inside = False - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) == Begin_provider: - * inside = True - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { - PyObject* sequence = __pyx_t_4; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":127 - * inside = False - * for vars,line in text: - * if type(line) == Begin_provider: # <<<<<<<<<<<<<< - * inside = True - * if not inside: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_9) { - - /* "module.py":128 - * for vars,line in text: - * if type(line) == Begin_provider: - * inside = True # <<<<<<<<<<<<<< - * if not inside: - * result.append( (vars,line) ) - */ - __pyx_v_inside = 1; - goto __pyx_L9; - } - __pyx_L9:; - - /* "module.py":129 - * if type(line) == Begin_provider: - * inside = True - * if not inside: # <<<<<<<<<<<<<< - * result.append( (vars,line) ) - * if type(line) == End_provider: - */ - __pyx_t_9 = (!__pyx_v_inside); - if (__pyx_t_9) { - - /* "module.py":130 - * inside = True - * if not inside: - * result.append( (vars,line) ) # <<<<<<<<<<<<<< - * if type(line) == End_provider: - * inside = False - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_10 = PyList_Append(__pyx_v_result, ((PyObject *)__pyx_t_6)); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "module.py":131 - * if not inside: - * result.append( (vars,line) ) - * if type(line) == End_provider: # <<<<<<<<<<<<<< - * inside = False - * return result - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_9) { - - /* "module.py":132 - * result.append( (vars,line) ) - * if type(line) == End_provider: - * inside = False # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_v_inside = 0; - goto __pyx_L11; - } - __pyx_L11:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":133 - * if type(line) == End_provider: - * inside = False - * return result # <<<<<<<<<<<<<< - * - * def modify_functions(text): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("module.residual_text.remove_providers", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":142 - * variable_list = list(vars) - * elif type(line) == End: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), build_use(variable_list)) # <<<<<<<<<<<<<< - * else: - * variable_list += vars - */ - -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda5 = {__Pyx_NAMESTR("lambda5"), (PyCFunction)__pyx_lambda_funcdef_lambda5, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *__pyx_cur_scope; - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda5"); - __pyx_outer_scope = (struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("module.residual_text.modify_functions.lambda5", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":135 - * return result - * - * def modify_functions(text): # <<<<<<<<<<<<<< - * result = [] - * variable_list = [] - */ - -static PyObject *__pyx_pf_6module_13residual_text_1modify_functions(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_6module_13residual_text_1modify_functions = {__Pyx_NAMESTR("modify_functions"), (PyCFunction)__pyx_pf_6module_13residual_text_1modify_functions, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_13residual_text_1modify_functions(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *__pyx_cur_scope; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_variable_list = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - int __pyx_t_10; - int __pyx_t_11; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("modify_functions"); - __pyx_cur_scope = (struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)__pyx_ptype_6module___pyx_scope_struct_2_modify_functions->tp_new(__pyx_ptype_6module___pyx_scope_struct_2_modify_functions, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)__pyx_self; - __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope)); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope); - __pyx_self = __pyx_self; - - /* "module.py":136 - * - * def modify_functions(text): - * result = [] # <<<<<<<<<<<<<< - * variable_list = [] - * for vars,line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":137 - * def modify_functions(text): - * result = [] - * variable_list = [] # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_variable_list = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":138 - * result = [] - * variable_list = [] - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Subroutine, Function ]: - * variable_list = list(vars) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { - PyObject* sequence = __pyx_t_4; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_cur_scope->__pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":139 - * variable_list = [] - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: # <<<<<<<<<<<<<< - * variable_list = list(vars) - * elif type(line) == End: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line))); - __pyx_t_4 = ((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (!((int)__pyx_t_9)) { - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_10 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_11 = ((int)__pyx_t_10); - } else { - __pyx_t_11 = ((int)__pyx_t_9); - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_9 = __pyx_t_11; - if (__pyx_t_9) { - - /* "module.py":140 - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: - * variable_list = list(vars) # <<<<<<<<<<<<<< - * elif type(line) == End: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), build_use(variable_list)) - */ - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_6 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_variable_list); - __pyx_v_variable_list = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L9; - } - - /* "module.py":141 - * if type(line) in [ Subroutine, Function ]: - * variable_list = list(vars) - * elif type(line) == End: # <<<<<<<<<<<<<< - * result += map(lambda x: ([],Use(line.i,x,line.filename)), build_use(variable_list)) - * else: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_9) { - - /* "module.py":142 - * variable_list = list(vars) - * elif type(line) == End: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), build_use(variable_list)) # <<<<<<<<<<<<<< - * else: - * variable_list += vars - */ - __pyx_t_4 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda5, ((PyObject*)__pyx_cur_scope), __pyx_n_s__module); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_build_use)) { __Pyx_RaiseClosureNameError("build_use"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_variable_list); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_variable_list); - __Pyx_GIVEREF(__pyx_v_variable_list); - __pyx_t_5 = PyObject_Call(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_build_use, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L9; - } - /*else*/ { - - /* "module.py":144 - * result += map(lambda x: ([],Use(line.i,x,line.filename)), build_use(variable_list)) - * else: - * variable_list += vars # <<<<<<<<<<<<<< - * result.append( (vars,line) ) - * return result - */ - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_variable_list, __pyx_v_vars); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_variable_list); - __pyx_v_variable_list = __pyx_t_6; - __pyx_t_6 = 0; - } - __pyx_L9:; - - /* "module.py":145 - * else: - * variable_list += vars - * result.append( (vars,line) ) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_5 = __Pyx_PyObject_Append(__pyx_v_result, ((PyObject *)__pyx_t_6)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":146 - * variable_list += vars - * result.append( (vars,line) ) - * return result # <<<<<<<<<<<<<< - * - * def extract_use_dec_text(text): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("module.residual_text.modify_functions", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_variable_list); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":148 - * return result - * - * def extract_use_dec_text(text): # <<<<<<<<<<<<<< - * inside = False - * result = [] - */ - -static PyObject *__pyx_pf_6module_13residual_text_2extract_use_dec_text(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_6module_13residual_text_2extract_use_dec_text = {__Pyx_NAMESTR("extract_use_dec_text"), (PyCFunction)__pyx_pf_6module_13residual_text_2extract_use_dec_text, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_13residual_text_2extract_use_dec_text(PyObject *__pyx_self, PyObject *__pyx_v_text) { - int __pyx_v_inside; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_dec = NULL; - PyObject *__pyx_v_use = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - int __pyx_t_10; - int __pyx_t_11; - int __pyx_t_12; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("extract_use_dec_text"); - __pyx_self = __pyx_self; - - /* "module.py":149 - * - * def extract_use_dec_text(text): - * inside = False # <<<<<<<<<<<<<< - * result = [] - * dec = [] - */ - __pyx_v_inside = 0; - - /* "module.py":150 - * def extract_use_dec_text(text): - * inside = False - * result = [] # <<<<<<<<<<<<<< - * dec = [] - * use = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":151 - * inside = False - * result = [] - * dec = [] # <<<<<<<<<<<<<< - * use = [] - * for vars,line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_dec = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":152 - * result = [] - * dec = [] - * use = [] # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) in [ Subroutine, Function, Program]: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_use = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":153 - * dec = [] - * use = [] - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Subroutine, Function, Program]: - * inside = True - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { - PyObject* sequence = __pyx_t_4; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":154 - * use = [] - * for vars,line in text: - * if type(line) in [ Subroutine, Function, Program]: # <<<<<<<<<<<<<< - * inside = True - * if inside: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_4 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (!((int)__pyx_t_9)) { - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_10 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_11 = ((int)__pyx_t_10); - } else { - __pyx_t_11 = ((int)__pyx_t_9); - } - if (!__pyx_t_11) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_10 = ((int)__pyx_t_9); - } else { - __pyx_t_10 = __pyx_t_11; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_11 = __pyx_t_10; - if (__pyx_t_11) { - - /* "module.py":155 - * for vars,line in text: - * if type(line) in [ Subroutine, Function, Program]: - * inside = True # <<<<<<<<<<<<<< - * if inside: - * result.append( (vars,line) ) - */ - __pyx_v_inside = 1; - goto __pyx_L9; - } - __pyx_L9:; - - /* "module.py":156 - * if type(line) in [ Subroutine, Function, Program]: - * inside = True - * if inside: # <<<<<<<<<<<<<< - * result.append( (vars,line) ) - * else: - */ - if (__pyx_v_inside) { - - /* "module.py":157 - * inside = True - * if inside: - * result.append( (vars,line) ) # <<<<<<<<<<<<<< - * else: - * if type(line) == Use: - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_12 = PyList_Append(__pyx_v_result, ((PyObject *)__pyx_t_4)); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - goto __pyx_L10; - } - /*else*/ { - - /* "module.py":159 - * result.append( (vars,line) ) - * else: - * if type(line) == Use: # <<<<<<<<<<<<<< - * use.append( (vars,line) ) - * elif type(line) == Declaration: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_11 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_11) { - - /* "module.py":160 - * else: - * if type(line) == Use: - * use.append( (vars,line) ) # <<<<<<<<<<<<<< - * elif type(line) == Declaration: - * dec.append( (vars,line) ) - */ - if (unlikely(((PyObject *)__pyx_v_use) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_12 = PyList_Append(__pyx_v_use, ((PyObject *)__pyx_t_5)); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - goto __pyx_L11; - } - - /* "module.py":161 - * if type(line) == Use: - * use.append( (vars,line) ) - * elif type(line) == Declaration: # <<<<<<<<<<<<<< - * dec.append( (vars,line) ) - * if type(line) == End: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_11 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_11) { - - /* "module.py":162 - * use.append( (vars,line) ) - * elif type(line) == Declaration: - * dec.append( (vars,line) ) # <<<<<<<<<<<<<< - * if type(line) == End: - * inside = False - */ - if (unlikely(((PyObject *)__pyx_v_dec) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_12 = PyList_Append(__pyx_v_dec, ((PyObject *)__pyx_t_4)); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - goto __pyx_L11; - } - __pyx_L11:; - } - __pyx_L10:; - - /* "module.py":163 - * elif type(line) == Declaration: - * dec.append( (vars,line) ) - * if type(line) == End: # <<<<<<<<<<<<<< - * inside = False - * return use, dec, result - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_11 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_11) { - - /* "module.py":164 - * dec.append( (vars,line) ) - * if type(line) == End: - * inside = False # <<<<<<<<<<<<<< - * return use, dec, result - * - */ - __pyx_v_inside = 0; - goto __pyx_L12; - } - __pyx_L12:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":165 - * if type(line) == End: - * inside = False - * return use, dec, result # <<<<<<<<<<<<<< - * - * def provide_variables(text): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_v_use)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_use)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_use)); - __Pyx_INCREF(((PyObject *)__pyx_v_dec)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_dec)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_dec)); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_v_result)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("module.residual_text.extract_use_dec_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_dec); - __Pyx_XDECREF(__pyx_v_use); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":171 - * for vars,line in text: - * result.append( ([],line) ) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), call_provides(vars)) # <<<<<<<<<<<<<< - * return result - * - */ - -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda6 = {__Pyx_NAMESTR("lambda6"), (PyCFunction)__pyx_lambda_funcdef_lambda6, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *__pyx_cur_scope; - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda6"); - __pyx_outer_scope = (struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("module.residual_text.provide_variables.lambda6", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":167 - * return use, dec, result - * - * def provide_variables(text): # <<<<<<<<<<<<<< - * result = [] - * for vars,line in text: - */ - -static PyObject *__pyx_pf_6module_13residual_text_3provide_variables(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_6module_13residual_text_3provide_variables = {__Pyx_NAMESTR("provide_variables"), (PyCFunction)__pyx_pf_6module_13residual_text_3provide_variables, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_13residual_text_3provide_variables(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *__pyx_cur_scope; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("provide_variables"); - __pyx_cur_scope = (struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)__pyx_ptype_6module___pyx_scope_struct_3_provide_variables->tp_new(__pyx_ptype_6module___pyx_scope_struct_3_provide_variables, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)__pyx_self; - __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope)); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope); - __pyx_self = __pyx_self; - - /* "module.py":168 - * - * def provide_variables(text): - * result = [] # <<<<<<<<<<<<<< - * for vars,line in text: - * result.append( ([],line) ) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "module.py":169 - * def provide_variables(text): - * result = [] - * for vars,line in text: # <<<<<<<<<<<<<< - * result.append( ([],line) ) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), call_provides(vars)) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { - PyObject* sequence = __pyx_t_4; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_cur_scope->__pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "module.py":170 - * result = [] - * for vars,line in text: - * result.append( ([],line) ) # <<<<<<<<<<<<<< - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), call_provides(vars)) - * return result - */ - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_Append(__pyx_v_result, ((PyObject *)__pyx_t_6)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "module.py":171 - * for vars,line in text: - * result.append( ([],line) ) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), call_provides(vars)) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_4 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda6, ((PyObject*)__pyx_cur_scope), __pyx_n_s__module); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_call_provides)) { __Pyx_RaiseClosureNameError("call_provides"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_5 = PyObject_Call(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_call_provides, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":172 - * result.append( ([],line) ) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), call_provides(vars)) - * return result # <<<<<<<<<<<<<< - * - * result = remove_providers(self.text) - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("module.residual_text.provide_variables", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":177 - * result = modify_functions(result) - * use,dec,result = extract_use_dec_text(result) - * self._use = make_single(map(lambda x: " "+x[1].text, use)) # <<<<<<<<<<<<<< - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) - * result = provide_variables(result) - */ - -static PyObject *__pyx_lambda_funcdef_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda7 = {__Pyx_NAMESTR("lambda7"), (PyCFunction)__pyx_lambda_funcdef_lambda7, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda7"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_x, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_4), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.residual_text.lambda7", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":178 - * use,dec,result = extract_use_dec_text(result) - * self._use = make_single(map(lambda x: " "+x[1].text, use)) - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) # <<<<<<<<<<<<<< - * result = provide_variables(result) - * result = move_to_top(result,Declaration) - */ - -static PyObject *__pyx_lambda_funcdef_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda8 = {__Pyx_NAMESTR("lambda8"), (PyCFunction)__pyx_lambda_funcdef_lambda8, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda8"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_x, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_4), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.residual_text.lambda8", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":183 - * result = move_to_top(result,Implicit) - * result = move_to_top(result,Use) - * result = map(lambda x: x[1], result) # <<<<<<<<<<<<<< - * result = map(lambda x: x.text, result) - * self._residual_text = result - */ - -static PyObject *__pyx_lambda_funcdef_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda9 = {__Pyx_NAMESTR("lambda9"), (PyCFunction)__pyx_lambda_funcdef_lambda9, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda9"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_x, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("module.residual_text.lambda9", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":184 - * result = move_to_top(result,Use) - * result = map(lambda x: x[1], result) - * result = map(lambda x: x.text, result) # <<<<<<<<<<<<<< - * self._residual_text = result - * return self._residual_text - */ - -static PyObject *__pyx_lambda_funcdef_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda10 = {__Pyx_NAMESTR("lambda10"), (PyCFunction)__pyx_lambda_funcdef_lambda10, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda10"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("module.residual_text.lambda10", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":119 - * generated_text = property(generated_text) - * - * def residual_text(self): # <<<<<<<<<<<<<< - * if '_residual_text' not in self.__dict__: - * from variables import build_use, call_provides - */ - -static PyObject *__pyx_pf_6module_7Fmodule_8residual_text(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_8residual_text = {__Pyx_NAMESTR("residual_text"), (PyCFunction)__pyx_pf_6module_7Fmodule_8residual_text, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_8residual_text(PyObject *__pyx_self, PyObject *__pyx_v_self) { - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *__pyx_cur_scope; - PyObject *__pyx_v_move_to_top = NULL; - PyObject *__pyx_v_remove_providers = 0; - PyObject *__pyx_v_modify_functions = 0; - PyObject *__pyx_v_extract_use_dec_text = 0; - PyObject *__pyx_v_provide_variables = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_use = NULL; - PyObject *__pyx_v_dec = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *(*__pyx_t_7)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("residual_text"); - __pyx_cur_scope = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)__pyx_ptype_6module___pyx_scope_struct_1_residual_text->tp_new(__pyx_ptype_6module___pyx_scope_struct_1_residual_text, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - - /* "module.py":120 - * - * def residual_text(self): - * if '_residual_text' not in self.__dict__: # <<<<<<<<<<<<<< - * from variables import build_use, call_provides - * from parsed_text import move_to_top - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___residual_text)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":121 - * def residual_text(self): - * if '_residual_text' not in self.__dict__: - * from variables import build_use, call_provides # <<<<<<<<<<<<<< - * from parsed_text import move_to_top - * def remove_providers(text): - */ - __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__build_use)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__build_use)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__build_use)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__call_provides)); - PyList_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__call_provides)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__call_provides)); - __pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__build_use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_build_use = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__call_provides); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_call_provides = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":122 - * if '_residual_text' not in self.__dict__: - * from variables import build_use, call_provides - * from parsed_text import move_to_top # <<<<<<<<<<<<<< - * def remove_providers(text): - * result = [] - */ - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__move_to_top)); - PyList_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__move_to_top)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__move_to_top)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__parsed_text), ((PyObject *)__pyx_t_3), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_INCREF(__pyx_t_3); - __pyx_v_move_to_top = __pyx_t_3; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":123 - * from variables import build_use, call_provides - * from parsed_text import move_to_top - * def remove_providers(text): # <<<<<<<<<<<<<< - * result = [] - * inside = False - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_13residual_text_remove_providers, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_remove_providers); - __pyx_v_remove_providers = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":135 - * return result - * - * def modify_functions(text): # <<<<<<<<<<<<<< - * result = [] - * variable_list = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_13residual_text_1modify_functions, ((PyObject*)__pyx_cur_scope), __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_modify_functions); - __pyx_v_modify_functions = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":148 - * return result - * - * def extract_use_dec_text(text): # <<<<<<<<<<<<<< - * inside = False - * result = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_13residual_text_2extract_use_dec_text, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_extract_use_dec_text); - __pyx_v_extract_use_dec_text = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":167 - * return use, dec, result - * - * def provide_variables(text): # <<<<<<<<<<<<<< - * result = [] - * for vars,line in text: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_13residual_text_3provide_variables, ((PyObject*)__pyx_cur_scope), __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_provide_variables); - __pyx_v_provide_variables = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":174 - * return result - * - * result = remove_providers(self.text) # <<<<<<<<<<<<<< - * result = modify_functions(result) - * use,dec,result = extract_use_dec_text(result) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_remove_providers, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":175 - * - * result = remove_providers(self.text) - * result = modify_functions(result) # <<<<<<<<<<<<<< - * use,dec,result = extract_use_dec_text(result) - * self._use = make_single(map(lambda x: " "+x[1].text, use)) - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_v_modify_functions, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":176 - * result = remove_providers(self.text) - * result = modify_functions(result) - * use,dec,result = extract_use_dec_text(result) # <<<<<<<<<<<<<< - * self._use = make_single(map(lambda x: " "+x[1].text, use)) - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) - */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_1 = PyObject_Call(__pyx_v_extract_use_dec_text, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 3)) { - if (PyTuple_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 2); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 3)) { - if (PyList_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyList_GET_ITEM(sequence, 0); - __pyx_t_4 = PyList_GET_ITEM(sequence, 1); - __pyx_t_5 = PyList_GET_ITEM(sequence, 2); - } - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext; - index = 0; __pyx_t_3 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_4)) goto __pyx_L6_unpacking_failed; - __Pyx_GOTREF(__pyx_t_4); - index = 2; __pyx_t_5 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_5)) goto __pyx_L6_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L7_unpacking_done; - __pyx_L6_unpacking_failed:; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L7_unpacking_done:; - } - __pyx_v_use = __pyx_t_3; - __pyx_t_3 = 0; - __pyx_v_dec = __pyx_t_4; - __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_5; - __pyx_t_5 = 0; - - /* "module.py":177 - * result = modify_functions(result) - * use,dec,result = extract_use_dec_text(result) - * self._use = make_single(map(lambda x: " "+x[1].text, use)) # <<<<<<<<<<<<<< - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) - * result = provide_variables(result) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda7, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v_use); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_use); - __Pyx_GIVEREF(__pyx_v_use); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___use, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "module.py":178 - * use,dec,result = extract_use_dec_text(result) - * self._use = make_single(map(lambda x: " "+x[1].text, use)) - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) # <<<<<<<<<<<<<< - * result = provide_variables(result) - * result = move_to_top(result,Declaration) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda8, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_INCREF(__pyx_v_dec); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_dec); - __Pyx_GIVEREF(__pyx_v_dec); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___dec, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "module.py":179 - * self._use = make_single(map(lambda x: " "+x[1].text, use)) - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) - * result = provide_variables(result) # <<<<<<<<<<<<<< - * result = move_to_top(result,Declaration) - * result = move_to_top(result,Implicit) - */ - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_1 = PyObject_Call(__pyx_v_provide_variables, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":180 - * self._dec = make_single(map(lambda x: " "+x[1].text, dec)) - * result = provide_variables(result) - * result = move_to_top(result,Declaration) # <<<<<<<<<<<<<< - * result = move_to_top(result,Implicit) - * result = move_to_top(result,Use) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_move_to_top, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":181 - * result = provide_variables(result) - * result = move_to_top(result,Declaration) - * result = move_to_top(result,Implicit) # <<<<<<<<<<<<<< - * result = move_to_top(result,Use) - * result = map(lambda x: x[1], result) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_move_to_top, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":182 - * result = move_to_top(result,Declaration) - * result = move_to_top(result,Implicit) - * result = move_to_top(result,Use) # <<<<<<<<<<<<<< - * result = map(lambda x: x[1], result) - * result = map(lambda x: x.text, result) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_move_to_top, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":183 - * result = move_to_top(result,Implicit) - * result = move_to_top(result,Use) - * result = map(lambda x: x[1], result) # <<<<<<<<<<<<<< - * result = map(lambda x: x.text, result) - * self._residual_text = result - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda9, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":184 - * result = move_to_top(result,Use) - * result = map(lambda x: x[1], result) - * result = map(lambda x: x.text, result) # <<<<<<<<<<<<<< - * self._residual_text = result - * return self._residual_text - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda10, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "module.py":185 - * result = map(lambda x: x[1], result) - * result = map(lambda x: x.text, result) - * self._residual_text = result # <<<<<<<<<<<<<< - * return self._residual_text - * residual_text = property(residual_text) - */ - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___residual_text, __pyx_v_result) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":186 - * result = map(lambda x: x.text, result) - * self._residual_text = result - * return self._residual_text # <<<<<<<<<<<<<< - * residual_text = property(residual_text) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___residual_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("module.Fmodule.residual_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_move_to_top); - __Pyx_XDECREF(__pyx_v_remove_providers); - __Pyx_XDECREF(__pyx_v_modify_functions); - __Pyx_XDECREF(__pyx_v_extract_use_dec_text); - __Pyx_XDECREF(__pyx_v_provide_variables); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_use); - __Pyx_XDECREF(__pyx_v_dec); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":189 - * residual_text = property(residual_text) - * - * def use(self): # <<<<<<<<<<<<<< - * if '_use' not in self.__dict__: - * self.residual_text - */ - -static PyObject *__pyx_pf_6module_7Fmodule_9use(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_9use = {__Pyx_NAMESTR("use"), (PyCFunction)__pyx_pf_6module_7Fmodule_9use, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_9use(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("use"); - __pyx_self = __pyx_self; - - /* "module.py":190 - * - * def use(self): - * if '_use' not in self.__dict__: # <<<<<<<<<<<<<< - * self.residual_text - * return self._use - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___use)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":191 - * def use(self): - * if '_use' not in self.__dict__: - * self.residual_text # <<<<<<<<<<<<<< - * return self._use - * use = property(use) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__residual_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":192 - * if '_use' not in self.__dict__: - * self.residual_text - * return self._use # <<<<<<<<<<<<<< - * use = property(use) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("module.Fmodule.use", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":195 - * use = property(use) - * - * def dec(self): # <<<<<<<<<<<<<< - * if '_dec' not in self.__dict__: - * self.residual_text - */ - -static PyObject *__pyx_pf_6module_7Fmodule_10dec(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_10dec = {__Pyx_NAMESTR("dec"), (PyCFunction)__pyx_pf_6module_7Fmodule_10dec, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_10dec(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("dec"); - __pyx_self = __pyx_self; - - /* "module.py":196 - * - * def dec(self): - * if '_dec' not in self.__dict__: # <<<<<<<<<<<<<< - * self.residual_text - * return self._dec - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___dec)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":197 - * def dec(self): - * if '_dec' not in self.__dict__: - * self.residual_text # <<<<<<<<<<<<<< - * return self._dec - * dec = property(dec) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__residual_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":198 - * if '_dec' not in self.__dict__: - * self.residual_text - * return self._dec # <<<<<<<<<<<<<< - * dec = property(dec) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___dec); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("module.Fmodule.dec", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":204 - * def needed_modules(self): - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ # <<<<<<<<<<<<<< - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - */ - -static PyObject *__pyx_lambda_funcdef_lambda11(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda11 = {__Pyx_NAMESTR("lambda11"), (PyCFunction)__pyx_lambda_funcdef_lambda11, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda11(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda11"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__lstrip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__startswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.needed_modules.lambda11", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":206 - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) # <<<<<<<<<<<<<< - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) - * self._needed_modules = make_single(buffer) - */ - -static PyObject *__pyx_lambda_funcdef_lambda12(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda12 = {__Pyx_NAMESTR("lambda12"), (PyCFunction)__pyx_lambda_funcdef_lambda12, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda12(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda12"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_2, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.needed_modules.lambda12", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":207 - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) # <<<<<<<<<<<<<< - * self._needed_modules = make_single(buffer) - * if self.name in self._needed_modules: - */ - -static PyObject *__pyx_lambda_funcdef_lambda13(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda13 = {__Pyx_NAMESTR("lambda13"), (PyCFunction)__pyx_lambda_funcdef_lambda13, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda13(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda13"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__endswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("module.needed_modules.lambda13", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "module.py":202 - * - * - * def needed_modules(self): # <<<<<<<<<<<<<< - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - */ - -static PyObject *__pyx_pf_6module_7Fmodule_11needed_modules(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/ -static PyMethodDef __pyx_mdef_6module_7Fmodule_11needed_modules = {__Pyx_NAMESTR("needed_modules"), (PyCFunction)__pyx_pf_6module_7Fmodule_11needed_modules, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6module_7Fmodule_11needed_modules(PyObject *__pyx_self, PyObject *__pyx_v_self) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("needed_modules"); - __pyx_self = __pyx_self; - - /* "module.py":203 - * - * def needed_modules(self): - * if '_needed_modules' not in self.__dict__: # <<<<<<<<<<<<<< - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - * self.generated_text+self.head+self.residual_text) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____dict__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, ((PyObject *)__pyx_n_s___needed_modules)))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "module.py":204 - * def needed_modules(self): - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ # <<<<<<<<<<<<<< - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda11, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - - /* "module.py":205 - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - * self.generated_text+self.head+self.residual_text) # <<<<<<<<<<<<<< - * buffer = map(lambda x: x.split()[1], buffer) - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__generated_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__head); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyNumber_Add(__pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__residual_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyNumber_Add(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_v_buffer = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":206 - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) # <<<<<<<<<<<<<< - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) - * self._needed_modules = make_single(buffer) - */ - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda12, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":207 - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) # <<<<<<<<<<<<<< - * self._needed_modules = make_single(buffer) - * if self.name in self._needed_modules: - */ - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda13, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_3; - __pyx_t_3 = 0; - - /* "module.py":208 - * buffer = map(lambda x: x.split()[1], buffer) - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) - * self._needed_modules = make_single(buffer) # <<<<<<<<<<<<<< - * if self.name in self._needed_modules: - * self._needed_modules.remove(self.name) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___needed_modules, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":209 - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) - * self._needed_modules = make_single(buffer) - * if self.name in self._needed_modules: # <<<<<<<<<<<<<< - * self._needed_modules.remove(self.name) - * return self._needed_modules - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___needed_modules); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = ((PySequence_Contains(__pyx_t_4, __pyx_t_1))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_2) { - - /* "module.py":210 - * self._needed_modules = make_single(buffer) - * if self.name in self._needed_modules: - * self._needed_modules.remove(self.name) # <<<<<<<<<<<<<< - * return self._needed_modules - * needed_modules = property(needed_modules) - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___needed_modules); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__remove); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__name); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L6; - } - __pyx_L6:; - goto __pyx_L5; - } - __pyx_L5:; - - /* "module.py":211 - * if self.name in self._needed_modules: - * self._needed_modules.remove(self.name) - * return self._needed_modules # <<<<<<<<<<<<<< - * needed_modules = property(needed_modules) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___needed_modules); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("module.Fmodule.needed_modules", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_tp_new_6module___pyx_scope_struct__variables(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6module___pyx_scope_struct__variables *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_6module___pyx_scope_struct__variables *)o); - p->__pyx_v_name = 0; - p->__pyx_v_variables = 0; - return o; -} - -static void __pyx_tp_dealloc_6module___pyx_scope_struct__variables(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct__variables *p = (struct __pyx_obj_6module___pyx_scope_struct__variables *)o; - Py_XDECREF(p->__pyx_v_name); - Py_XDECREF(p->__pyx_v_variables); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6module___pyx_scope_struct__variables(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6module___pyx_scope_struct__variables *p = (struct __pyx_obj_6module___pyx_scope_struct__variables *)o; - if (p->__pyx_v_name) { - e = (*v)(p->__pyx_v_name, a); if (e) return e; - } - if (p->__pyx_v_variables) { - e = (*v)(p->__pyx_v_variables, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6module___pyx_scope_struct__variables(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct__variables *p = (struct __pyx_obj_6module___pyx_scope_struct__variables *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_name); - p->__pyx_v_name = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_variables); - p->__pyx_v_variables = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_6module___pyx_scope_struct__variables[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct__variables = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct__variables = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct__variables = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct__variables = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_6module___pyx_scope_struct__variables = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("module.__pyx_scope_struct__variables"), /*tp_name*/ - sizeof(struct __pyx_obj_6module___pyx_scope_struct__variables), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6module___pyx_scope_struct__variables, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct__variables, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct__variables, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct__variables, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct__variables, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6module___pyx_scope_struct__variables, /*tp_traverse*/ - __pyx_tp_clear_6module___pyx_scope_struct__variables, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6module___pyx_scope_struct__variables, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6module___pyx_scope_struct__variables, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_6module___pyx_scope_struct_1_residual_text(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)o); - p->__pyx_v_build_use = 0; - p->__pyx_v_call_provides = 0; - return o; -} - -static void __pyx_tp_dealloc_6module___pyx_scope_struct_1_residual_text(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *p = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)o; - Py_XDECREF(p->__pyx_v_build_use); - Py_XDECREF(p->__pyx_v_call_provides); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6module___pyx_scope_struct_1_residual_text(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *p = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)o; - if (p->__pyx_v_build_use) { - e = (*v)(p->__pyx_v_build_use, a); if (e) return e; - } - if (p->__pyx_v_call_provides) { - e = (*v)(p->__pyx_v_call_provides, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6module___pyx_scope_struct_1_residual_text(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *p = (struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_build_use); - p->__pyx_v_build_use = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_call_provides); - p->__pyx_v_call_provides = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_6module___pyx_scope_struct_1_residual_text[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_1_residual_text = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_1_residual_text = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_1_residual_text = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_1_residual_text = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_6module___pyx_scope_struct_1_residual_text = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("module.__pyx_scope_struct_1_residual_text"), /*tp_name*/ - sizeof(struct __pyx_obj_6module___pyx_scope_struct_1_residual_text), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6module___pyx_scope_struct_1_residual_text, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_1_residual_text, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_1_residual_text, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_1_residual_text, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_1_residual_text, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6module___pyx_scope_struct_1_residual_text, /*tp_traverse*/ - __pyx_tp_clear_6module___pyx_scope_struct_1_residual_text, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6module___pyx_scope_struct_1_residual_text, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6module___pyx_scope_struct_1_residual_text, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_6module___pyx_scope_struct_2_modify_functions(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)o); - p->__pyx_outer_scope = 0; - p->__pyx_v_line = 0; - return o; -} - -static void __pyx_tp_dealloc_6module___pyx_scope_struct_2_modify_functions(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *p = (struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)o; - Py_XDECREF(((PyObject *)p->__pyx_outer_scope)); - Py_XDECREF(p->__pyx_v_line); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6module___pyx_scope_struct_2_modify_functions(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *p = (struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)o; - if (p->__pyx_outer_scope) { - e = (*v)(((PyObject*)p->__pyx_outer_scope), a); if (e) return e; - } - if (p->__pyx_v_line) { - e = (*v)(p->__pyx_v_line, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6module___pyx_scope_struct_2_modify_functions(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *p = (struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_outer_scope); - p->__pyx_outer_scope = ((struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_line); - p->__pyx_v_line = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_6module___pyx_scope_struct_2_modify_functions[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_2_modify_functions = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_2_modify_functions = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_2_modify_functions = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_2_modify_functions = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_6module___pyx_scope_struct_2_modify_functions = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("module.__pyx_scope_struct_2_modify_functions"), /*tp_name*/ - sizeof(struct __pyx_obj_6module___pyx_scope_struct_2_modify_functions), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6module___pyx_scope_struct_2_modify_functions, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_2_modify_functions, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_2_modify_functions, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_2_modify_functions, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_2_modify_functions, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6module___pyx_scope_struct_2_modify_functions, /*tp_traverse*/ - __pyx_tp_clear_6module___pyx_scope_struct_2_modify_functions, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6module___pyx_scope_struct_2_modify_functions, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6module___pyx_scope_struct_2_modify_functions, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_6module___pyx_scope_struct_3_provide_variables(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)o); - p->__pyx_outer_scope = 0; - p->__pyx_v_line = 0; - return o; -} - -static void __pyx_tp_dealloc_6module___pyx_scope_struct_3_provide_variables(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *p = (struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)o; - Py_XDECREF(((PyObject *)p->__pyx_outer_scope)); - Py_XDECREF(p->__pyx_v_line); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_6module___pyx_scope_struct_3_provide_variables(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *p = (struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)o; - if (p->__pyx_outer_scope) { - e = (*v)(((PyObject*)p->__pyx_outer_scope), a); if (e) return e; - } - if (p->__pyx_v_line) { - e = (*v)(p->__pyx_v_line, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_6module___pyx_scope_struct_3_provide_variables(PyObject *o) { - struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *p = (struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_outer_scope); - p->__pyx_outer_scope = ((struct __pyx_obj_6module___pyx_scope_struct_1_residual_text *)Py_None); Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_line); - p->__pyx_v_line = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_6module___pyx_scope_struct_3_provide_variables[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_3_provide_variables = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_3_provide_variables = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_3_provide_variables = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_3_provide_variables = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_6module___pyx_scope_struct_3_provide_variables = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("module.__pyx_scope_struct_3_provide_variables"), /*tp_name*/ - sizeof(struct __pyx_obj_6module___pyx_scope_struct_3_provide_variables), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_6module___pyx_scope_struct_3_provide_variables, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_3_provide_variables, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_3_provide_variables, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_3_provide_variables, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_3_provide_variables, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_6module___pyx_scope_struct_3_provide_variables, /*tp_traverse*/ - __pyx_tp_clear_6module___pyx_scope_struct_3_provide_variables, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_6module___pyx_scope_struct_3_provide_variables, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_6module___pyx_scope_struct_3_provide_variables, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - "__pyx_scope_struct__variables", - "__pyx_scope_struct_1_residual_text", - "__pyx_scope_struct_3_provide_variables", - "__pyx_scope_struct_2_modify_functions", - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("module"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0}, - {&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0}, - {&__pyx_kp_s_16, __pyx_k_16, sizeof(__pyx_k_16), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_n_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 1}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_n_s__Begin_provider, __pyx_k__Begin_provider, sizeof(__pyx_k__Begin_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Declaration, __pyx_k__Declaration, sizeof(__pyx_k__Declaration), 0, 0, 1, 1}, - {&__pyx_n_s__End, __pyx_k__End, sizeof(__pyx_k__End), 0, 0, 1, 1}, - {&__pyx_n_s__End_provider, __pyx_k__End_provider, sizeof(__pyx_k__End_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Fmodule, __pyx_k__Fmodule, sizeof(__pyx_k__Fmodule), 0, 0, 1, 1}, - {&__pyx_n_s__Function, __pyx_k__Function, sizeof(__pyx_k__Function), 0, 0, 1, 1}, - {&__pyx_n_s__Implicit, __pyx_k__Implicit, sizeof(__pyx_k__Implicit), 0, 0, 1, 1}, - {&__pyx_n_s__Program, __pyx_k__Program, sizeof(__pyx_k__Program), 0, 0, 1, 1}, - {&__pyx_n_s__Simple_line, __pyx_k__Simple_line, sizeof(__pyx_k__Simple_line), 0, 0, 1, 1}, - {&__pyx_n_s__Subroutine, __pyx_k__Subroutine, sizeof(__pyx_k__Subroutine), 0, 0, 1, 1}, - {&__pyx_n_s__Use, __pyx_k__Use, sizeof(__pyx_k__Use), 0, 0, 1, 1}, - {&__pyx_n_s____dict__, __pyx_k____dict__, sizeof(__pyx_k____dict__), 0, 0, 1, 1}, - {&__pyx_n_s____init__, __pyx_k____init__, sizeof(__pyx_k____init__), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s___dec, __pyx_k___dec, sizeof(__pyx_k___dec), 0, 0, 1, 1}, - {&__pyx_n_s___generated_text, __pyx_k___generated_text, sizeof(__pyx_k___generated_text), 0, 0, 1, 1}, - {&__pyx_n_s___head, __pyx_k___head, sizeof(__pyx_k___head), 0, 0, 1, 1}, - {&__pyx_n_s___includes, __pyx_k___includes, sizeof(__pyx_k___includes), 0, 0, 1, 1}, - {&__pyx_n_s___is_main, __pyx_k___is_main, sizeof(__pyx_k___is_main), 0, 0, 1, 1}, - {&__pyx_n_s___mod, __pyx_k___mod, sizeof(__pyx_k___mod), 0, 0, 1, 1}, - {&__pyx_n_s___needed_modules, __pyx_k___needed_modules, sizeof(__pyx_k___needed_modules), 0, 0, 1, 1}, - {&__pyx_n_s___needed_vars, __pyx_k___needed_vars, sizeof(__pyx_k___needed_vars), 0, 0, 1, 1}, - {&__pyx_n_s___prog_name, __pyx_k___prog_name, sizeof(__pyx_k___prog_name), 0, 0, 1, 1}, - {&__pyx_n_s___residual_text, __pyx_k___residual_text, sizeof(__pyx_k___residual_text), 0, 0, 1, 1}, - {&__pyx_n_s___use, __pyx_k___use, sizeof(__pyx_k___use), 0, 0, 1, 1}, - {&__pyx_n_s___variables, __pyx_k___variables, sizeof(__pyx_k___variables), 0, 0, 1, 1}, - {&__pyx_n_s__build_use, __pyx_k__build_use, sizeof(__pyx_k__build_use), 0, 0, 1, 1}, - {&__pyx_n_s__builder, __pyx_k__builder, sizeof(__pyx_k__builder), 0, 0, 1, 1}, - {&__pyx_n_s__call_provides, __pyx_k__call_provides, sizeof(__pyx_k__call_provides), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__dec, __pyx_k__dec, sizeof(__pyx_k__dec), 0, 0, 1, 1}, - {&__pyx_n_s__endswith, __pyx_k__endswith, sizeof(__pyx_k__endswith), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__filter, __pyx_k__filter, sizeof(__pyx_k__filter), 0, 0, 1, 1}, - {&__pyx_n_s__flatten, __pyx_k__flatten, sizeof(__pyx_k__flatten), 0, 0, 1, 1}, - {&__pyx_n_s__fmodule, __pyx_k__fmodule, sizeof(__pyx_k__fmodule), 0, 0, 1, 1}, - {&__pyx_n_s__generated_text, __pyx_k__generated_text, sizeof(__pyx_k__generated_text), 0, 0, 1, 1}, - {&__pyx_n_s__head, __pyx_k__head, sizeof(__pyx_k__head), 0, 0, 1, 1}, - {&__pyx_n_s__header, __pyx_k__header, sizeof(__pyx_k__header), 0, 0, 1, 1}, - {&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1}, - {&__pyx_n_s__includes, __pyx_k__includes, sizeof(__pyx_k__includes), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__is_main, __pyx_k__is_main, sizeof(__pyx_k__is_main), 0, 0, 1, 1}, - {&__pyx_n_s__is_read, __pyx_k__is_read, sizeof(__pyx_k__is_read), 0, 0, 1, 1}, - {&__pyx_n_s__is_written, __pyx_k__is_written, sizeof(__pyx_k__is_written), 0, 0, 1, 1}, - {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, - {&__pyx_n_s__lstrip, __pyx_k__lstrip, sizeof(__pyx_k__lstrip), 0, 0, 1, 1}, - {&__pyx_n_s__make_single, __pyx_k__make_single, sizeof(__pyx_k__make_single), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__module, __pyx_k__module, sizeof(__pyx_k__module), 0, 0, 1, 1}, - {&__pyx_n_s__move_to_top, __pyx_k__move_to_top, sizeof(__pyx_k__move_to_top), 0, 0, 1, 1}, - {&__pyx_n_s__name, __pyx_k__name, sizeof(__pyx_k__name), 0, 0, 1, 1}, - {&__pyx_n_s__needed_modules, __pyx_k__needed_modules, sizeof(__pyx_k__needed_modules), 0, 0, 1, 1}, - {&__pyx_n_s__needed_vars, __pyx_k__needed_vars, sizeof(__pyx_k__needed_vars), 0, 0, 1, 1}, - {&__pyx_n_s__needs, __pyx_k__needs, sizeof(__pyx_k__needs), 0, 0, 1, 1}, - {&__pyx_n_s__object, __pyx_k__object, sizeof(__pyx_k__object), 0, 0, 1, 1}, - {&__pyx_n_s__parsed_text, __pyx_k__parsed_text, sizeof(__pyx_k__parsed_text), 0, 0, 1, 1}, - {&__pyx_n_s__preprocessed_text, __pyx_k__preprocessed_text, sizeof(__pyx_k__preprocessed_text), 0, 0, 1, 1}, - {&__pyx_n_s__prog_name, __pyx_k__prog_name, sizeof(__pyx_k__prog_name), 0, 0, 1, 1}, - {&__pyx_n_s__property, __pyx_k__property, sizeof(__pyx_k__property), 0, 0, 1, 1}, - {&__pyx_n_s__provider, __pyx_k__provider, sizeof(__pyx_k__provider), 0, 0, 1, 1}, - {&__pyx_n_s__put_info, __pyx_k__put_info, sizeof(__pyx_k__put_info), 0, 0, 1, 1}, - {&__pyx_n_s__reader, __pyx_k__reader, sizeof(__pyx_k__reader), 0, 0, 1, 1}, - {&__pyx_n_s__remove, __pyx_k__remove, sizeof(__pyx_k__remove), 0, 0, 1, 1}, - {&__pyx_n_s__residual_text, __pyx_k__residual_text, sizeof(__pyx_k__residual_text), 0, 0, 1, 1}, - {&__pyx_n_s__self, __pyx_k__self, sizeof(__pyx_k__self), 0, 0, 1, 1}, - {&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1}, - {&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__use, __pyx_k__use, sizeof(__pyx_k__use), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__variable, __pyx_k__variable, sizeof(__pyx_k__variable), 0, 0, 1, 1}, - {&__pyx_n_s__variables, __pyx_k__variables, sizeof(__pyx_k__variables), 0, 0, 1, 1}, - {&__pyx_n_s__writer, __pyx_k__writer, sizeof(__pyx_k__writer), 0, 0, 1, 1}, - {&__pyx_n_s__x, __pyx_k__x, sizeof(__pyx_k__x), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_object = __Pyx_GetName(__pyx_b, __pyx_n_s__object); if (!__pyx_builtin_object) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_property = __Pyx_GetName(__pyx_b, __pyx_n_s__property); if (!__pyx_builtin_property) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_filter = __Pyx_GetName(__pyx_b, __pyx_n_s__filter); if (!__pyx_builtin_filter) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "module.py":204 - * def needed_modules(self): - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ # <<<<<<<<<<<<<< - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - */ - __pyx_k_tuple_6 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_6)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_5)); - PyTuple_SET_ITEM(__pyx_k_tuple_6, 0, ((PyObject *)__pyx_kp_s_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_6)); - - /* "module.py":207 - * self.generated_text+self.head+self.residual_text) - * buffer = map(lambda x: x.split()[1], buffer) - * buffer = filter(lambda x: x.endswith("_mod"),buffer ) # <<<<<<<<<<<<<< - * self._needed_modules = make_single(buffer) - * if self.name in self._needed_modules: - */ - __pyx_k_tuple_7 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_7)); - __Pyx_INCREF(((PyObject *)__pyx_n_s___mod)); - PyTuple_SET_ITEM(__pyx_k_tuple_7, 0, ((PyObject *)__pyx_n_s___mod)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s___mod)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_7)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initmodule(void); /*proto*/ -PyMODINIT_FUNC initmodule(void) -#else -PyMODINIT_FUNC PyInit_module(void); /*proto*/ -PyMODINIT_FUNC PyInit_module(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *(*__pyx_t_9)(PyObject *); - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_module(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("module"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_module) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - if (PyType_Ready(&__pyx_type_6module___pyx_scope_struct__variables) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_6module___pyx_scope_struct__variables = &__pyx_type_6module___pyx_scope_struct__variables; - if (PyType_Ready(&__pyx_type_6module___pyx_scope_struct_1_residual_text) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_6module___pyx_scope_struct_1_residual_text = &__pyx_type_6module___pyx_scope_struct_1_residual_text; - if (PyType_Ready(&__pyx_type_6module___pyx_scope_struct_2_modify_functions) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_6module___pyx_scope_struct_2_modify_functions = &__pyx_type_6module___pyx_scope_struct_2_modify_functions; - if (PyType_Ready(&__pyx_type_6module___pyx_scope_struct_3_provide_variables) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_6module___pyx_scope_struct_3_provide_variables = &__pyx_type_6module___pyx_scope_struct_3_provide_variables; - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "module.py":28 - * - * - * from irpf90_t import * # <<<<<<<<<<<<<< - * from variable import * - * from variables import variables - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_8)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_8)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "module.py":29 - * - * from irpf90_t import * - * from variable import * # <<<<<<<<<<<<<< - * from variables import variables - * from command_line import command_line - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_8)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_8)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__variable), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":30 - * from irpf90_t import * - * from variable import * - * from variables import variables # <<<<<<<<<<<<<< - * from command_line import command_line - * import preprocessed_text - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__variables, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "module.py":31 - * from variable import * - * from variables import variables - * from command_line import command_line # <<<<<<<<<<<<<< - * import preprocessed_text - * from util import * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":32 - * from variables import variables - * from command_line import command_line - * import preprocessed_text # <<<<<<<<<<<<<< - * from util import * - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__preprocessed_text), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__preprocessed_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":33 - * from command_line import command_line - * import preprocessed_text - * from util import * # <<<<<<<<<<<<<< - * - * class Fmodule(object): - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_8)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_8)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "module.py":35 - * from util import * - * - * class Fmodule(object): # <<<<<<<<<<<<<< - * - * header = \ - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - - /* "module.py":38 - * - * header = \ - * [ "! -*- F90 -*-", # <<<<<<<<<<<<<< - * "!", - * "!-----------------------------------------------!", - */ - __pyx_t_1 = PyList_New(8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_10)); - PyList_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_10)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_10)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_11)); - PyList_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_kp_s_11)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_11)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_12)); - PyList_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_kp_s_12)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_12)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_13)); - PyList_SET_ITEM(__pyx_t_1, 4, ((PyObject *)__pyx_kp_s_13)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_13)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyList_SET_ITEM(__pyx_t_1, 5, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_11)); - PyList_SET_ITEM(__pyx_t_1, 6, ((PyObject *)__pyx_kp_s_11)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_11)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_15)); - PyList_SET_ITEM(__pyx_t_1, 7, ((PyObject *)__pyx_kp_s_15)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_15)); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__header, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "module.py":47 - * "" ] - * - * def __init__(self,text,filename): # <<<<<<<<<<<<<< - * self.text = put_info(text,filename) - * self.name = "%s_mod"%(filename[:-6]) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule___init__, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s____init__, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":51 - * self.name = "%s_mod"%(filename[:-6]) - * - * def is_main(self): # <<<<<<<<<<<<<< - * if '_is_main' not in self.__dict__: - * self._is_main = self.prog_name is not None - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_1is_main, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__is_main, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":55 - * self._is_main = self.prog_name is not None - * return self._is_main - * is_main = property(is_main) # <<<<<<<<<<<<<< - * - * def prog_name(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__is_main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__is_main, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":57 - * is_main = property(is_main) - * - * def prog_name(self): # <<<<<<<<<<<<<< - * if '_prog_name' not in self.__dict__: - * buffer = filter(lambda x: type(x[1]) == Program,self.text) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_2prog_name, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__prog_name, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":65 - * self._prog_name = buffer[0][1].filename - * return self._prog_name - * prog_name = property(prog_name) # <<<<<<<<<<<<<< - * - * def variables(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__prog_name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__prog_name, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":67 - * prog_name = property(prog_name) - * - * def variables(self): # <<<<<<<<<<<<<< - * if '_variables' not in self.__dict__: - * from variables import variables - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_3variables, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__variables, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":73 - * self._variables = filter(lambda x: variables[x].fmodule == name, variables) - * return self._variables - * variables = property(variables) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__variables, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":76 - * - * - * def head(self): # <<<<<<<<<<<<<< - * if '_head' not in self.__dict__: - * result = [ "module %s"%(self.name) ] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_4head, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__head, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":85 - * self._head = result - * return self._head - * head = property(head) # <<<<<<<<<<<<<< - * - * def needed_vars(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__head); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__head, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":87 - * head = property(head) - * - * def needed_vars(self): # <<<<<<<<<<<<<< - * if '_needed_vars' not in self.__dict__: - * result = map(lambda x: variables[x].needs,self.variables) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_5needed_vars, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__needed_vars, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":93 - * self._needed_vars = result - * return self._needed_vars - * needed_vars = property(needed_vars) # <<<<<<<<<<<<<< - * - * def includes(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__needed_vars); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__needed_vars, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":95 - * needed_vars = property(needed_vars) - * - * def includes(self): # <<<<<<<<<<<<<< - * if '_includes' not in self.__dict__: - * buffer = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_6includes, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__includes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":102 - * self._includes = make_single(buffer) - * return self._includes - * includes = property(includes) # <<<<<<<<<<<<<< - * - * def generated_text(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__includes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__includes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":104 - * includes = property(includes) - * - * def generated_text(self): # <<<<<<<<<<<<<< - * if '_generated_text' not in self.__dict__: - * result = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_7generated_text, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__generated_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":117 - * self._generated_text = result - * return self._generated_text - * generated_text = property(generated_text) # <<<<<<<<<<<<<< - * - * def residual_text(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__generated_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__generated_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":119 - * generated_text = property(generated_text) - * - * def residual_text(self): # <<<<<<<<<<<<<< - * if '_residual_text' not in self.__dict__: - * from variables import build_use, call_provides - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_8residual_text, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__residual_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":187 - * self._residual_text = result - * return self._residual_text - * residual_text = property(residual_text) # <<<<<<<<<<<<<< - * - * def use(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__residual_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__residual_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 187; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":189 - * residual_text = property(residual_text) - * - * def use(self): # <<<<<<<<<<<<<< - * if '_use' not in self.__dict__: - * self.residual_text - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_9use, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__use, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":193 - * self.residual_text - * return self._use - * use = property(use) # <<<<<<<<<<<<<< - * - * def dec(self): - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__use, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":195 - * use = property(use) - * - * def dec(self): # <<<<<<<<<<<<<< - * if '_dec' not in self.__dict__: - * self.residual_text - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_10dec, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__dec, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":199 - * self.residual_text - * return self._dec - * dec = property(dec) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__dec); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__dec, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":202 - * - * - * def needed_modules(self): # <<<<<<<<<<<<<< - * if '_needed_modules' not in self.__dict__: - * buffer = filter(lambda x: x.lstrip().startswith("use "), \ - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6module_7Fmodule_11needed_modules, NULL, __pyx_n_s__module); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__needed_modules, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":212 - * self._needed_modules.remove(self.name) - * return self._needed_modules - * needed_modules = property(needed_modules) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_n_s__needed_modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_property, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetItem(__pyx_t_2, __pyx_n_s__needed_modules, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":35 - * from util import * - * - * class Fmodule(object): # <<<<<<<<<<<<<< - * - * header = \ - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_builtin_object); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_builtin_object); - __Pyx_GIVEREF(__pyx_builtin_object); - __pyx_t_3 = __Pyx_CreateClass(((PyObject *)__pyx_t_1), ((PyObject *)__pyx_t_2), __pyx_n_s__Fmodule, __pyx_n_s__module); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Fmodule, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "module.py":216 - * ###################################################################### - * - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * from parsed_text import parsed_text - * for filename, text in parsed_text: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyString_Equals(__pyx_t_2, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_4) { - - /* "module.py":217 - * - * if __name__ == '__main__': - * from parsed_text import parsed_text # <<<<<<<<<<<<<< - * for filename, text in parsed_text: - * if filename == 'vmc_step.irp.f': - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__parsed_text)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__parsed_text)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__parsed_text)); - __pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s__parsed_text), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "module.py":218 - * if __name__ == '__main__': - * from parsed_text import parsed_text - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * if filename == 'vmc_step.irp.f': - * x = Fmodule(text,filename) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) { - __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; - } else { - __pyx_t_3 = __pyx_t_6(__pyx_t_2); - if (unlikely(!__pyx_t_3)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_3); - } - if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { - PyObject* sequence = __pyx_t_3; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_8 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext; - index = 0; __pyx_t_1 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed; - __Pyx_GOTREF(__pyx_t_1); - index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L5_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L6_unpacking_done; - __pyx_L5_unpacking_failed:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L6_unpacking_done:; - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__filename, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "module.py":219 - * from parsed_text import parsed_text - * for filename, text in parsed_text: - * if filename == 'vmc_step.irp.f': # <<<<<<<<<<<<<< - * x = Fmodule(text,filename) - * break - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__filename); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyString_Equals(__pyx_t_3, ((PyObject *)__pyx_kp_s_16), Py_EQ); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (__pyx_t_4) { - - /* "module.py":220 - * for filename, text in parsed_text: - * if filename == 'vmc_step.irp.f': - * x = Fmodule(text,filename) # <<<<<<<<<<<<<< - * break - * for line in x.head: - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Fmodule); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__x, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":221 - * if filename == 'vmc_step.irp.f': - * x = Fmodule(text,filename) - * break # <<<<<<<<<<<<<< - * for line in x.head: - * print line - */ - goto __pyx_L4_break; - goto __pyx_L7; - } - __pyx_L7:; - } - __pyx_L4_break:; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "module.py":222 - * x = Fmodule(text,filename) - * break - * for line in x.head: # <<<<<<<<<<<<<< - * print line - * print x.includes - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__x); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__head); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; - } else { - __pyx_t_1 = __pyx_t_6(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "module.py":223 - * break - * for line in x.head: - * print line # <<<<<<<<<<<<<< - * print x.includes - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (__Pyx_PrintOne(0, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "module.py":224 - * for line in x.head: - * print line - * print x.includes # <<<<<<<<<<<<<< - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__x); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__includes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__Pyx_PrintOne(0, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "module.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - if (__pyx_m) { - __Pyx_AddTraceback("init module", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init module"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { - PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", - index, (index == 1) ? "" : "s"); -} - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); -} - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } else if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } - } - return 0; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases) { - PyObject *metaclass; - /* Default metaclass */ -#if PY_MAJOR_VERSION < 3 - if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) { - PyObject *base = PyTuple_GET_ITEM(bases, 0); - metaclass = PyObject_GetAttrString(base, (char *)"__class__"); - if (!metaclass) { - PyErr_Clear(); - metaclass = (PyObject*) Py_TYPE(base); - } - } else { - metaclass = (PyObject *) &PyClass_Type; - } -#else - if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) { - PyObject *base = PyTuple_GET_ITEM(bases, 0); - metaclass = (PyObject*) Py_TYPE(base); - } else { - metaclass = (PyObject *) &PyType_Type; - } -#endif - Py_INCREF(metaclass); - return metaclass; -} - -static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name, - PyObject *modname) { - PyObject *result; - PyObject *metaclass; - - if (PyDict_SetItemString(dict, "__module__", modname) < 0) - return NULL; - - /* Python2 __metaclass__ */ - metaclass = PyDict_GetItemString(dict, "__metaclass__"); - if (metaclass) { - Py_INCREF(metaclass); - } else { - metaclass = __Pyx_FindPy2Metaclass(bases); - } - result = PyObject_CallFunctionObjArgs(metaclass, name, bases, dict, NULL); - Py_DECREF(metaclass); - return result; -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/module.so b/src/module.so deleted file mode 100755 index fa2e173c3eb9133e64237e58bfd372092becf248..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 354573 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

9%^KXpe4v1 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 diff --git a/src/parsed_text.c b/src/parsed_text.c deleted file mode 100644 index b0d684c..0000000 --- a/src/parsed_text.c +++ /dev/null @@ -1,16797 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:02 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__parsed_text -#define __PYX_HAVE_API__parsed_text -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "parsed_text.py", -}; - -/*--- Type declarations ---*/ -struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func; -struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func; -struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch; - -/* "parsed_text.py":330 - * def move_variables(): - * - * def func(filename, text): # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ -struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func { - PyObject_HEAD - PyObject *__pyx_v_elsevars; - PyObject *__pyx_v_varlist; -}; - - -/* "parsed_text.py":123 - * - * def get_parsed_text(): - * def func(filename, text): # <<<<<<<<<<<<<< - * varlist = [] - * result = [] - */ -struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func { - PyObject_HEAD - PyObject *__pyx_v_line; - PyObject *__pyx_v_varlist; -}; - - -/* "parsed_text.py":76 - * return buffer - * - * def check_touch(line,vars,main_vars): # <<<<<<<<<<<<<< - * def fun(main_var): - * if main_var not in variables: - */ -struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch { - PyObject_HEAD - PyObject *__pyx_v_line; -}; - - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} - - -#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_List_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - - -#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { - PyObject *r; - if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { - r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { - r = PySequence_GetItem(o, i); - } - else { - r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); - } - return r; -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ - -static CYTHON_INLINE int __Pyx_NegateNonNeg(int b) { - return unlikely(b < 0) ? b : !b; -} -static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { - return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); -} - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - -static CYTHON_INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) { - if (likely(PyList_CheckExact(L))) { - if (PyList_Append(L, x) < 0) return NULL; - Py_INCREF(Py_None); - return Py_None; /* this is just to have an accurate signature */ - } - else { - PyObject *r, *m; - m = __Pyx_GetAttrString(L, "append"); - if (!m) return NULL; - r = PyObject_CallFunctionObjArgs(m, x, NULL); - Py_DECREF(m); - return r; - } -} - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ - -static PyObject* __Pyx_PyObject_PopIndex(PyObject* L, Py_ssize_t ix); - -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname); - -static CYTHON_INLINE PyObject* __Pyx_PyObject_Pop(PyObject* L) { -#if PY_VERSION_HEX >= 0x02040000 - if (likely(PyList_CheckExact(L)) - /* Check that both the size is positive and no reallocation shrinking needs to be done. */ - && likely(PyList_GET_SIZE(L) > (((PyListObject*)L)->allocated >> 1))) { - Py_SIZE(L) -= 1; - return PyList_GET_ITEM(L, PyList_GET_SIZE(L)); - } -#if PY_VERSION_HEX >= 0x02050000 - else if (Py_TYPE(L) == (&PySet_Type)) { - return PySet_Pop(L); - } -#endif -#endif - return PyObject_CallMethod(L, (char*)"pop", NULL); -} - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'parsed_text' */ -static PyTypeObject *__pyx_ptype_11parsed_text___pyx_scope_struct__check_touch = 0; -static PyTypeObject *__pyx_ptype_11parsed_text___pyx_scope_struct_1_func = 0; -static PyTypeObject *__pyx_ptype_11parsed_text___pyx_scope_struct_2_func = 0; -#define __Pyx_MODULE_NAME "parsed_text" -int __pyx_module_is_main_parsed_text = 0; - -/* Implementation of 'parsed_text' */ -static PyObject *__pyx_builtin_map; -static PyObject *__pyx_builtin_filter; -static PyObject *__pyx_builtin_range; -static PyObject *__pyx_builtin_zip; -static PyObject *__pyx_builtin_ValueError; -static char __pyx_k_1[] = "regexps_re_string_sub"; -static char __pyx_k_2[] = ""; -static char __pyx_k_3[] = "("; -static char __pyx_k_5[] = "Variable %s unknown"; -static char __pyx_k_6[] = "- %s"; -static char __pyx_k_7[] = "The following entities should be touched:\n"; -static char __pyx_k_8[] = "\n"; -static char __pyx_k_9[] = "Syntax error"; -static char __pyx_k_10[] = " call touch_%s"; -static char __pyx_k_11[] = " use %s"; -static char __pyx_k_12[] = " %s_is_built = .True."; -static char __pyx_k_13[] = "-%s"; -static char __pyx_k_14[] = " use %s"; -static char __pyx_k_15[] = "]"; -static char __pyx_k_17[] = ","; -static char __pyx_k_19[] = "find_variables_in_line"; -static char __pyx_k_20[] = "Variable %s is unknown"; -static char __pyx_k_21[] = "!%s"; -static char __pyx_k_22[] = " "; -static char __pyx_k_23[] = "!"; -static char __pyx_k_24[] = "! >>> TOUCH %s"; -static char __pyx_k_25[] = "! <<< END TOUCH (Soft)"; -static char __pyx_k_26[] = "! <<< END TOUCH"; -static char __pyx_k_27[] = "find_subroutine_in_line"; -static char __pyx_k_28[] = "End if missing"; -static char __pyx_k_29[] = "Unable to parse file"; -static char __pyx_k_30[] = "-"; -static char __pyx_k_33[] = "Optimization: %s line %d"; -static char __pyx_k_34[] = " PROVIDE "; -static char __pyx_k_35[] = "\\1%s\\3"; -static char __pyx_k_36[] = "*"; -static char __pyx_k_37[] = "add_subroutine_needs"; -static char __pyx_k_38[] = "perform_loop_substitutions"; -static char __pyx_k_39[] = "!-------- %s -----------"; -static char __pyx_k__i[] = "i"; -static char __pyx_k__t[] = "t"; -static char __pyx_k__Do[] = "Do"; -static char __pyx_k__If[] = "If"; -static char __pyx_k__re[] = "re"; -static char __pyx_k__Doc[] = "Doc"; -static char __pyx_k__End[] = "End"; -static char __pyx_k__Use[] = "Use"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__sub[] = "sub"; -static char __pyx_k__sys[] = "sys"; -static char __pyx_k__zip[] = "zip"; -static char __pyx_k__Call[] = "Call"; -static char __pyx_k__Case[] = "Case"; -static char __pyx_k__Else[] = "Else"; -static char __pyx_k__Free[] = "Free"; -static char __pyx_k__Line[] = "Line"; -static char __pyx_k__argv[] = "argv"; -static char __pyx_k__fail[] = "fail"; -static char __pyx_k__free[] = "free"; -static char __pyx_k__join[] = "join"; -static char __pyx_k__keys[] = "keys"; -static char __pyx_k__line[] = "line"; -static char __pyx_k__sort[] = "sort"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__vars[] = "vars"; -static char __pyx_k__Enddo[] = "Enddo"; -static char __pyx_k__Endif[] = "Endif"; -static char __pyx_k__NoDep[] = "NoDep"; -static char __pyx_k__Touch[] = "Touch"; -static char __pyx_k__count[] = "count"; -static char __pyx_k__error[] = "error"; -static char __pyx_k__items[] = "items"; -static char __pyx_k__lower[] = "lower"; -static char __pyx_k__needs[] = "needs"; -static char __pyx_k__range[] = "range"; -static char __pyx_k__split[] = "split"; -static char __pyx_k__strip[] = "strip"; -static char __pyx_k__Assert[] = "Assert"; -static char __pyx_k__Elseif[] = "Elseif"; -static char __pyx_k__Openmp[] = "Openmp"; -static char __pyx_k__Return[] = "Return"; -static char __pyx_k__Select[] = "Select"; -static char __pyx_k___needs[] = "_needs"; -static char __pyx_k__append[] = "append"; -static char __pyx_k__filter[] = "filter"; -static char __pyx_k__insert[] = "insert"; -static char __pyx_k__others[] = "others"; -static char __pyx_k__regexp[] = "regexp"; -static char __pyx_k__remove[] = "remove"; -static char __pyx_k__result[] = "result"; -static char __pyx_k__search[] = "search"; -static char __pyx_k__stuple[] = "stuple"; -static char __pyx_k__vtuple[] = "vtuple"; -static char __pyx_k__End_doc[] = "End_doc"; -static char __pyx_k__Program[] = "Program"; -static char __pyx_k__Provide[] = "Provide"; -static char __pyx_k__flatten[] = "flatten"; -static char __pyx_k__fmodule[] = "fmodule"; -static char __pyx_k__is_main[] = "is_main"; -static char __pyx_k__regexps[] = "regexps"; -static char __pyx_k__replace[] = "replace"; -static char __pyx_k__same_as[] = "same_as"; -static char __pyx_k__touches[] = "touches"; -static char __pyx_k__Continue[] = "Continue"; -static char __pyx_k__Function[] = "Function"; -static char __pyx_k__Implicit[] = "Implicit"; -static char __pyx_k__Irp_read[] = "Irp_read"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k___is_read[] = "_is_read"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__is_freed[] = "is_freed"; -static char __pyx_k__Begin_doc[] = "Begin_doc"; -static char __pyx_k__Directive[] = "Directive"; -static char __pyx_k__End_shell[] = "End_shell"; -static char __pyx_k__Irp_write[] = "Irp_write"; -static char __pyx_k__SoftTouch[] = "SoftTouch"; -static char __pyx_k__check_opt[] = "check_opt"; -static char __pyx_k__main_vars[] = "main_vars"; -static char __pyx_k__needed_by[] = "needed_by"; -static char __pyx_k__re_string[] = "re_string"; -static char __pyx_k__variables[] = "variables"; -static char __pyx_k__Empty_line[] = "Empty_line"; -static char __pyx_k__End_select[] = "End_select"; -static char __pyx_k__Subroutine[] = "Subroutine"; -static char __pyx_k__ValueError[] = "ValueError"; -static char __pyx_k__to_provide[] = "to_provide"; -static char __pyx_k__Begin_shell[] = "Begin_shell"; -static char __pyx_k__Declaration[] = "Declaration"; -static char __pyx_k__Provide_all[] = "Provide_all"; -static char __pyx_k__Simple_line[] = "Simple_line"; -static char __pyx_k___is_touched[] = "_is_touched"; -static char __pyx_k___is_written[] = "_is_written"; -static char __pyx_k___to_provide[] = "_to_provide"; -static char __pyx_k__build_needs[] = "build_needs"; -static char __pyx_k__check_touch[] = "check_touch"; -static char __pyx_k__do_checkopt[] = "do_checkopt"; -static char __pyx_k__is_function[] = "is_function"; -static char __pyx_k__make_single[] = "make_single"; -static char __pyx_k__move_to_top[] = "move_to_top"; -static char __pyx_k__parsed_text[] = "parsed_text"; -static char __pyx_k__subroutines[] = "subroutines"; -static char __pyx_k__substituted[] = "substituted"; -static char __pyx_k__End_provider[] = "End_provider"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__find_subname[] = "find_subname"; -static char __pyx_k__Cont_provider[] = "Cont_provider"; -static char __pyx_k__parallel_loop[] = "parallel_loop"; -static char __pyx_k__re_string_sub[] = "re_string_sub"; -static char __pyx_k__Begin_provider[] = "Begin_provider"; -static char __pyx_k__move_variables[] = "move_variables"; -static char __pyx_k__build_sub_needs[] = "build_sub_needs"; -static char __pyx_k__get_parsed_text[] = "get_parsed_text"; -static char __pyx_k__update_variables[] = "update_variables"; -static char __pyx_k__preprocessed_text[] = "preprocessed_text"; -static char __pyx_k__find_funcs_in_line[] = "find_funcs_in_line"; -static PyObject *__pyx_n_s_1; -static PyObject *__pyx_kp_s_10; -static PyObject *__pyx_kp_s_11; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_13; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_15; -static PyObject *__pyx_kp_s_17; -static PyObject *__pyx_n_s_19; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_20; -static PyObject *__pyx_kp_s_21; -static PyObject *__pyx_kp_s_22; -static PyObject *__pyx_kp_s_23; -static PyObject *__pyx_kp_s_24; -static PyObject *__pyx_kp_s_25; -static PyObject *__pyx_kp_s_26; -static PyObject *__pyx_n_s_27; -static PyObject *__pyx_kp_s_28; -static PyObject *__pyx_kp_s_29; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_30; -static PyObject *__pyx_kp_s_33; -static PyObject *__pyx_kp_s_34; -static PyObject *__pyx_kp_s_35; -static PyObject *__pyx_n_s_36; -static PyObject *__pyx_n_s_37; -static PyObject *__pyx_n_s_38; -static PyObject *__pyx_kp_s_39; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_n_s__Assert; -static PyObject *__pyx_n_s__Begin_doc; -static PyObject *__pyx_n_s__Begin_provider; -static PyObject *__pyx_n_s__Begin_shell; -static PyObject *__pyx_n_s__Call; -static PyObject *__pyx_n_s__Case; -static PyObject *__pyx_n_s__Cont_provider; -static PyObject *__pyx_n_s__Continue; -static PyObject *__pyx_n_s__Declaration; -static PyObject *__pyx_n_s__Directive; -static PyObject *__pyx_n_s__Do; -static PyObject *__pyx_n_s__Doc; -static PyObject *__pyx_n_s__Else; -static PyObject *__pyx_n_s__Elseif; -static PyObject *__pyx_n_s__Empty_line; -static PyObject *__pyx_n_s__End; -static PyObject *__pyx_n_s__End_doc; -static PyObject *__pyx_n_s__End_provider; -static PyObject *__pyx_n_s__End_select; -static PyObject *__pyx_n_s__End_shell; -static PyObject *__pyx_n_s__Enddo; -static PyObject *__pyx_n_s__Endif; -static PyObject *__pyx_n_s__Free; -static PyObject *__pyx_n_s__Function; -static PyObject *__pyx_n_s__If; -static PyObject *__pyx_n_s__Implicit; -static PyObject *__pyx_n_s__Irp_read; -static PyObject *__pyx_n_s__Irp_write; -static PyObject *__pyx_n_s__Line; -static PyObject *__pyx_n_s__NoDep; -static PyObject *__pyx_n_s__Openmp; -static PyObject *__pyx_n_s__Program; -static PyObject *__pyx_n_s__Provide; -static PyObject *__pyx_n_s__Provide_all; -static PyObject *__pyx_n_s__Return; -static PyObject *__pyx_n_s__Select; -static PyObject *__pyx_n_s__Simple_line; -static PyObject *__pyx_n_s__SoftTouch; -static PyObject *__pyx_n_s__Subroutine; -static PyObject *__pyx_n_s__Touch; -static PyObject *__pyx_n_s__Use; -static PyObject *__pyx_n_s__ValueError; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s___is_read; -static PyObject *__pyx_n_s___is_touched; -static PyObject *__pyx_n_s___is_written; -static PyObject *__pyx_n_s___needs; -static PyObject *__pyx_n_s___to_provide; -static PyObject *__pyx_n_s__append; -static PyObject *__pyx_n_s__argv; -static PyObject *__pyx_n_s__build_needs; -static PyObject *__pyx_n_s__build_sub_needs; -static PyObject *__pyx_n_s__check_opt; -static PyObject *__pyx_n_s__check_touch; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__count; -static PyObject *__pyx_n_s__do_checkopt; -static PyObject *__pyx_n_s__error; -static PyObject *__pyx_n_s__fail; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__filter; -static PyObject *__pyx_n_s__find_funcs_in_line; -static PyObject *__pyx_n_s__find_subname; -static PyObject *__pyx_n_s__flatten; -static PyObject *__pyx_n_s__fmodule; -static PyObject *__pyx_n_s__free; -static PyObject *__pyx_n_s__get_parsed_text; -static PyObject *__pyx_n_s__i; -static PyObject *__pyx_n_s__insert; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__is_freed; -static PyObject *__pyx_n_s__is_function; -static PyObject *__pyx_n_s__is_main; -static PyObject *__pyx_n_s__items; -static PyObject *__pyx_n_s__join; -static PyObject *__pyx_n_s__keys; -static PyObject *__pyx_n_s__line; -static PyObject *__pyx_n_s__lower; -static PyObject *__pyx_n_s__main_vars; -static PyObject *__pyx_n_s__make_single; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__move_to_top; -static PyObject *__pyx_n_s__move_variables; -static PyObject *__pyx_n_s__needed_by; -static PyObject *__pyx_n_s__needs; -static PyObject *__pyx_n_s__others; -static PyObject *__pyx_n_s__parallel_loop; -static PyObject *__pyx_n_s__parsed_text; -static PyObject *__pyx_n_s__preprocessed_text; -static PyObject *__pyx_n_s__range; -static PyObject *__pyx_n_s__re; -static PyObject *__pyx_n_s__re_string; -static PyObject *__pyx_n_s__re_string_sub; -static PyObject *__pyx_n_s__regexp; -static PyObject *__pyx_n_s__regexps; -static PyObject *__pyx_n_s__remove; -static PyObject *__pyx_n_s__replace; -static PyObject *__pyx_n_s__result; -static PyObject *__pyx_n_s__same_as; -static PyObject *__pyx_n_s__search; -static PyObject *__pyx_n_s__sort; -static PyObject *__pyx_n_s__split; -static PyObject *__pyx_n_s__strip; -static PyObject *__pyx_n_s__stuple; -static PyObject *__pyx_n_s__sub; -static PyObject *__pyx_n_s__subroutines; -static PyObject *__pyx_n_s__substituted; -static PyObject *__pyx_n_s__sys; -static PyObject *__pyx_n_s__t; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__to_provide; -static PyObject *__pyx_n_s__touches; -static PyObject *__pyx_n_s__update_variables; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__variables; -static PyObject *__pyx_n_s__vars; -static PyObject *__pyx_n_s__vtuple; -static PyObject *__pyx_n_s__zip; -static PyObject *__pyx_int_0; -static PyObject *__pyx_int_1; -static PyObject *__pyx_k_tuple_4; -static PyObject *__pyx_k_tuple_16; -static PyObject *__pyx_k_tuple_18; -static PyObject *__pyx_k_tuple_31; -static PyObject *__pyx_k_tuple_32; - -/* "parsed_text.py":36 - * import error - * - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) # <<<<<<<<<<<<<< - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) - */ - -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_v); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_11parsed_text_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_11parsed_text_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_v) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_v); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__same_as); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetItem(__pyx_t_2, __pyx_v_v); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__regexp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_r = ((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("parsed_text.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":37 - * - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) # <<<<<<<<<<<<<< - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) - * re_string_sub = regexps.re_string.sub - */ - -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_11parsed_text_lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_lambda_funcdef_11parsed_text_lambda2, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_s) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda2"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_s); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__regexp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_s); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_s); - __Pyx_GIVEREF(__pyx_v_s); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.lambda2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":38 - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) # <<<<<<<<<<<<<< - * re_string_sub = regexps.re_string.sub - * - */ - -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_11parsed_text_lambda3 = {__Pyx_NAMESTR("lambda3"), (PyCFunction)__pyx_lambda_funcdef_11parsed_text_lambda3, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_11parsed_text_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_s) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda3"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_s, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetItem(__pyx_t_1, __pyx_t_2); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__is_function); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("parsed_text.lambda3", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":42 - * - * regexps_re_string_sub = regexps.re_string.sub - * def find_variables_in_line(line): # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * result = [] - */ - -static PyObject *__pyx_pf_11parsed_text_find_variables_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_find_variables_in_line = {__Pyx_NAMESTR("find_variables_in_line"), (PyCFunction)__pyx_pf_11parsed_text_find_variables_in_line, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_find_variables_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_result = NULL; - int __pyx_v_sub_done; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_ap = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_same_as = NULL; - PyObject *__pyx_v_regexp = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *(*__pyx_t_10)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("find_variables_in_line"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":43 - * regexps_re_string_sub = regexps.re_string.sub - * def find_variables_in_line(line): - * assert isinstance(line,Line) # <<<<<<<<<<<<<< - * result = [] - * sub_done = False - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_IsInstance(__pyx_v_line, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":44 - * def find_variables_in_line(line): - * assert isinstance(line,Line) - * result = [] # <<<<<<<<<<<<<< - * sub_done = False - * buffer = line.lower - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":45 - * assert isinstance(line,Line) - * result = [] - * sub_done = False # <<<<<<<<<<<<<< - * buffer = line.lower - * ap = result.append - */ - __pyx_v_sub_done = 0; - - /* "parsed_text.py":46 - * result = [] - * sub_done = False - * buffer = line.lower # <<<<<<<<<<<<<< - * ap = result.append - * for v,same_as,regexp in vtuple: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":47 - * sub_done = False - * buffer = line.lower - * ap = result.append # <<<<<<<<<<<<<< - * for v,same_as,regexp in vtuple: - * if v in buffer: - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_ap = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":48 - * buffer = line.lower - * ap = result.append - * for v,same_as,regexp in vtuple: # <<<<<<<<<<<<<< - * if v in buffer: - * if not sub_done: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__vtuple); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_3); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 3)) { - if (PyTuple_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - __pyx_t_8 = PyTuple_GET_ITEM(sequence, 2); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 3)) { - if (PyList_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - __pyx_t_8 = PyList_GET_ITEM(sequence, 2); - } - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext; - index = 0; __pyx_t_6 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - index = 1; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - index = 2; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_8); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_same_as); - __pyx_v_same_as = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_regexp); - __pyx_v_regexp = __pyx_t_8; - __pyx_t_8 = 0; - - /* "parsed_text.py":49 - * ap = result.append - * for v,same_as,regexp in vtuple: - * if v in buffer: # <<<<<<<<<<<<<< - * if not sub_done: - * buffer = regexps_re_string_sub('',buffer) - */ - __pyx_t_2 = ((PySequence_Contains(__pyx_v_buffer, __pyx_v_v))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "parsed_text.py":50 - * for v,same_as,regexp in vtuple: - * if v in buffer: - * if not sub_done: # <<<<<<<<<<<<<< - * buffer = regexps_re_string_sub('',buffer) - * sub_done = True - */ - __pyx_t_2 = (!__pyx_v_sub_done); - if (__pyx_t_2) { - - /* "parsed_text.py":51 - * if v in buffer: - * if not sub_done: - * buffer = regexps_re_string_sub('',buffer) # <<<<<<<<<<<<<< - * sub_done = True - * if regexp.search(buffer) is not None: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":52 - * if not sub_done: - * buffer = regexps_re_string_sub('',buffer) - * sub_done = True # <<<<<<<<<<<<<< - * if regexp.search(buffer) is not None: - * ap(same_as) - */ - __pyx_v_sub_done = 1; - goto __pyx_L10; - } - __pyx_L10:; - - /* "parsed_text.py":53 - * buffer = regexps_re_string_sub('',buffer) - * sub_done = True - * if regexp.search(buffer) is not None: # <<<<<<<<<<<<<< - * ap(same_as) - * return result - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_regexp, __pyx_n_s__search); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __pyx_t_2 = (__pyx_t_1 != Py_None); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":54 - * sub_done = True - * if regexp.search(buffer) is not None: - * ap(same_as) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_same_as); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_same_as); - __Pyx_GIVEREF(__pyx_v_same_as); - __pyx_t_8 = PyObject_Call(__pyx_v_ap, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L11; - } - __pyx_L11:; - goto __pyx_L9; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":55 - * if regexp.search(buffer) is not None: - * ap(same_as) - * return result # <<<<<<<<<<<<<< - * - * def find_funcs_in_line(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("parsed_text.find_variables_in_line", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_ap); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_same_as); - __Pyx_XDECREF(__pyx_v_regexp); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":57 - * return result - * - * def find_funcs_in_line(line): # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * result = [] - */ - -static PyObject *__pyx_pf_11parsed_text_1find_funcs_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_1find_funcs_in_line = {__Pyx_NAMESTR("find_funcs_in_line"), (PyCFunction)__pyx_pf_11parsed_text_1find_funcs_in_line, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_1find_funcs_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_append = NULL; - int __pyx_v_sub_done; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_s = NULL; - PyObject *__pyx_v_regexp = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *(*__pyx_t_9)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("find_funcs_in_line"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":58 - * - * def find_funcs_in_line(line): - * assert isinstance(line,Line) # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_IsInstance(__pyx_v_line, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":59 - * def find_funcs_in_line(line): - * assert isinstance(line,Line) - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * sub_done = False - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":60 - * assert isinstance(line,Line) - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * sub_done = False - * buffer = line.lower - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_append = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":61 - * result = [] - * append = result.append - * sub_done = False # <<<<<<<<<<<<<< - * buffer = line.lower - * for s,regexp in stuple: - */ - __pyx_v_sub_done = 0; - - /* "parsed_text.py":62 - * append = result.append - * sub_done = False - * buffer = line.lower # <<<<<<<<<<<<<< - * for s,regexp in stuple: - * if s in buffer: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":63 - * sub_done = False - * buffer = line.lower - * for s,regexp in stuple: # <<<<<<<<<<<<<< - * if s in buffer: - * if regexp.search(buffer) is not None: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__stuple); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_3); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_8 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext; - index = 0; __pyx_t_6 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_s); - __pyx_v_s = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_regexp); - __pyx_v_regexp = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":64 - * buffer = line.lower - * for s,regexp in stuple: - * if s in buffer: # <<<<<<<<<<<<<< - * if regexp.search(buffer) is not None: - * append(s) - */ - __pyx_t_2 = ((PySequence_Contains(__pyx_v_buffer, __pyx_v_s))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "parsed_text.py":65 - * for s,regexp in stuple: - * if s in buffer: - * if regexp.search(buffer) is not None: # <<<<<<<<<<<<<< - * append(s) - * return result - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_regexp, __pyx_n_s__search); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_2 = (__pyx_t_6 != Py_None); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":66 - * if s in buffer: - * if regexp.search(buffer) is not None: - * append(s) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_s); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_s); - __Pyx_GIVEREF(__pyx_v_s); - __pyx_t_7 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L10; - } - __pyx_L10:; - goto __pyx_L9; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":67 - * if regexp.search(buffer) is not None: - * append(s) - * return result # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("parsed_text.find_funcs_in_line", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_append); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_s); - __Pyx_XDECREF(__pyx_v_regexp); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":70 - * - * - * def find_subroutine_in_line(line): # <<<<<<<<<<<<<< - * assert type(line) == Call - * buffer = line.text.split('(')[0] - */ - -static PyObject *__pyx_pf_11parsed_text_2find_subroutine_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_2find_subroutine_in_line = {__Pyx_NAMESTR("find_subroutine_in_line"), (PyCFunction)__pyx_pf_11parsed_text_2find_subroutine_in_line, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_2find_subroutine_in_line(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("find_subroutine_in_line"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":71 - * - * def find_subroutine_in_line(line): - * assert type(line) == Call # <<<<<<<<<<<<<< - * buffer = line.text.split('(')[0] - * buffer = buffer.split()[1].lower() - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":72 - * def find_subroutine_in_line(line): - * assert type(line) == Call - * buffer = line.text.split('(')[0] # <<<<<<<<<<<<<< - * buffer = buffer.split()[1].lower() - * return buffer - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_2, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":73 - * assert type(line) == Call - * buffer = line.text.split('(')[0] - * buffer = buffer.split()[1].lower() # <<<<<<<<<<<<<< - * return buffer - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_2, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__lower); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":74 - * buffer = line.text.split('(')[0] - * buffer = buffer.split()[1].lower() - * return buffer # <<<<<<<<<<<<<< - * - * def check_touch(line,vars,main_vars): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_buffer); - __pyx_r = __pyx_v_buffer; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.find_subroutine_in_line", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":77 - * - * def check_touch(line,vars,main_vars): - * def fun(main_var): # <<<<<<<<<<<<<< - * if main_var not in variables: - * error.fail(line,"Variable %s unknown"%(main_var,)) - */ - -static PyObject *__pyx_pf_11parsed_text_11check_touch_fun(PyObject *__pyx_self, PyObject *__pyx_v_main_var); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_11check_touch_fun = {__Pyx_NAMESTR("fun"), (PyCFunction)__pyx_pf_11parsed_text_11check_touch_fun, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_11check_touch_fun(PyObject *__pyx_self, PyObject *__pyx_v_main_var) { - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *__pyx_outer_scope; - PyObject *__pyx_v_x = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fun"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "parsed_text.py":78 - * def check_touch(line,vars,main_vars): - * def fun(main_var): - * if main_var not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s unknown"%(main_var,)) - * x = variables[main_var] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, __pyx_v_main_var))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":79 - * def fun(main_var): - * if main_var not in variables: - * error.fail(line,"Variable %s unknown"%(main_var,)) # <<<<<<<<<<<<<< - * x = variables[main_var] - * return [main_var]+x.others - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_main_var); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_main_var); - __Pyx_GIVEREF(__pyx_v_main_var); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "parsed_text.py":80 - * if main_var not in variables: - * error.fail(line,"Variable %s unknown"%(main_var,)) - * x = variables[main_var] # <<<<<<<<<<<<<< - * return [main_var]+x.others - * all_others = make_single(flatten( map(fun,main_vars) )) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetItem(__pyx_t_4, __pyx_v_main_var); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_v_x = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":81 - * error.fail(line,"Variable %s unknown"%(main_var,)) - * x = variables[main_var] - * return [main_var]+x.others # <<<<<<<<<<<<<< - * all_others = make_single(flatten( map(fun,main_vars) )) - * all_others.sort() - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_main_var); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_main_var); - __Pyx_GIVEREF(__pyx_v_main_var); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__others); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyNumber_Add(((PyObject *)__pyx_t_1), __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("parsed_text.check_touch.fun", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_x); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":89 - * if x != y: - * message = "The following entities should be touched:\n" - * message = "\n".join([message]+map(lambda x: "- %s"%(x,),all_others)) # <<<<<<<<<<<<<< - * error.fail(line,message) - * - */ - -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda4 = {__Pyx_NAMESTR("lambda4"), (PyCFunction)__pyx_lambda_funcdef_lambda4, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda4"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_6), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.check_touch.lambda4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":76 - * return buffer - * - * def check_touch(line,vars,main_vars): # <<<<<<<<<<<<<< - * def fun(main_var): - * if main_var not in variables: - */ - -static PyObject *__pyx_pf_11parsed_text_3check_touch(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_3check_touch = {__Pyx_NAMESTR("check_touch"), (PyCFunction)__pyx_pf_11parsed_text_3check_touch, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_3check_touch(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *__pyx_cur_scope; - PyObject *__pyx_v_vars = 0; - PyObject *__pyx_v_main_vars = 0; - PyObject *__pyx_v_fun = 0; - PyObject *__pyx_v_all_others = NULL; - PyObject *__pyx_v_x = NULL; - PyObject *__pyx_v_y = NULL; - PyObject *__pyx_v_message = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - Py_ssize_t __pyx_t_6; - int __pyx_t_7; - PyObject *(*__pyx_t_8)(PyObject *); - PyObject *__pyx_t_9 = NULL; - PyObject *(*__pyx_t_10)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__line,&__pyx_n_s__vars,&__pyx_n_s__main_vars,0}; - __Pyx_RefNannySetupContext("check_touch"); - __pyx_cur_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)__pyx_ptype_11parsed_text___pyx_scope_struct__check_touch->tp_new(__pyx_ptype_11parsed_text___pyx_scope_struct__check_touch, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - { - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__vars); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("check_touch", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__main_vars); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("check_touch", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "check_touch") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __Pyx_INCREF(values[0]); - __pyx_cur_scope->__pyx_v_line = values[0]; - __pyx_v_vars = values[1]; - __pyx_v_main_vars = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("check_touch", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("parsed_text.check_touch", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_line); __pyx_cur_scope->__pyx_v_line = 0; - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - - /* "parsed_text.py":77 - * - * def check_touch(line,vars,main_vars): - * def fun(main_var): # <<<<<<<<<<<<<< - * if main_var not in variables: - * error.fail(line,"Variable %s unknown"%(main_var,)) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_11check_touch_fun, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_fun); - __pyx_v_fun = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":82 - * x = variables[main_var] - * return [main_var]+x.others - * all_others = make_single(flatten( map(fun,main_vars) )) # <<<<<<<<<<<<<< - * all_others.sort() - * if len(all_others) == len(vars): - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__flatten); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_fun); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_fun); - __Pyx_GIVEREF(__pyx_v_fun); - __Pyx_INCREF(__pyx_v_main_vars); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_main_vars); - __Pyx_GIVEREF(__pyx_v_main_vars); - __pyx_t_4 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_v_all_others = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":83 - * return [main_var]+x.others - * all_others = make_single(flatten( map(fun,main_vars) )) - * all_others.sort() # <<<<<<<<<<<<<< - * if len(all_others) == len(vars): - * vars.sort() - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_all_others, __pyx_n_s__sort); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":84 - * all_others = make_single(flatten( map(fun,main_vars) )) - * all_others.sort() - * if len(all_others) == len(vars): # <<<<<<<<<<<<<< - * vars.sort() - * for x,y in zip(vars,all_others): - */ - __pyx_t_5 = PyObject_Length(__pyx_v_all_others); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = PyObject_Length(__pyx_v_vars); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_7 = (__pyx_t_5 == __pyx_t_6); - if (__pyx_t_7) { - - /* "parsed_text.py":85 - * all_others.sort() - * if len(all_others) == len(vars): - * vars.sort() # <<<<<<<<<<<<<< - * for x,y in zip(vars,all_others): - * if x != y: - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_vars, __pyx_n_s__sort); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "parsed_text.py":86 - * if len(all_others) == len(vars): - * vars.sort() - * for x,y in zip(vars,all_others): # <<<<<<<<<<<<<< - * if x != y: - * message = "The following entities should be touched:\n" - */ - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_all_others); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_all_others); - __Pyx_GIVEREF(__pyx_v_all_others); - __pyx_t_3 = PyObject_Call(__pyx_builtin_zip, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) { - __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_6 = 0; - __pyx_t_8 = NULL; - } else { - __pyx_t_6 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; - } else { - __pyx_t_3 = __pyx_t_8(__pyx_t_4); - if (unlikely(!__pyx_t_3)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_3); - } - if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) { - PyObject* sequence = __pyx_t_3; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyList_GET_ITEM(sequence, 0); - __pyx_t_2 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_9 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext; - index = 0; __pyx_t_1 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; - __Pyx_GOTREF(__pyx_t_1); - index = 1; __pyx_t_2 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed; - __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L10_unpacking_done; - __pyx_L9_unpacking_failed:; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L10_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_x); - __pyx_v_x = __pyx_t_1; - __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_y); - __pyx_v_y = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":87 - * vars.sort() - * for x,y in zip(vars,all_others): - * if x != y: # <<<<<<<<<<<<<< - * message = "The following entities should be touched:\n" - * message = "\n".join([message]+map(lambda x: "- %s"%(x,),all_others)) - */ - __pyx_t_3 = PyObject_RichCompare(__pyx_v_x, __pyx_v_y, Py_NE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (__pyx_t_7) { - - /* "parsed_text.py":88 - * for x,y in zip(vars,all_others): - * if x != y: - * message = "The following entities should be touched:\n" # <<<<<<<<<<<<<< - * message = "\n".join([message]+map(lambda x: "- %s"%(x,),all_others)) - * error.fail(line,message) - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_7)); - __Pyx_XDECREF(__pyx_v_message); - __pyx_v_message = ((PyObject *)__pyx_kp_s_7); - - /* "parsed_text.py":89 - * if x != y: - * message = "The following entities should be touched:\n" - * message = "\n".join([message]+map(lambda x: "- %s"%(x,),all_others)) # <<<<<<<<<<<<<< - * error.fail(line,message) - * - */ - __pyx_t_3 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_8), __pyx_n_s__join); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_message); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_message); - __Pyx_GIVEREF(__pyx_v_message); - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda4, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_all_others); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_all_others); - __Pyx_GIVEREF(__pyx_v_all_others); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_Add(((PyObject *)__pyx_t_2), __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_message); - __pyx_v_message = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":90 - * message = "The following entities should be touched:\n" - * message = "\n".join([message]+map(lambda x: "- %s"%(x,),all_others)) - * error.fail(line,message) # <<<<<<<<<<<<<< - * - * ################################################################################ - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_9, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_INCREF(__pyx_v_message); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_message); - __Pyx_GIVEREF(__pyx_v_message); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L11; - } - __pyx_L11:; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("parsed_text.check_touch", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_fun); - __Pyx_XDECREF(__pyx_v_all_others); - __Pyx_XDECREF(__pyx_v_x); - __Pyx_XDECREF(__pyx_v_y); - __Pyx_XDECREF(__pyx_v_message); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":96 - * for filename,text in preprocessed_text: - * - * for line in filter(lambda x: type(x) in [ Touch, SoftTouch ], text): # <<<<<<<<<<<<<< - * vars = line.lower.split() - * if len(vars) < 2: - */ - -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda5 = {__Pyx_NAMESTR("lambda5"), (PyCFunction)__pyx_lambda_funcdef_lambda5, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - int __pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda5"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_x))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_x)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Touch); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (!((int)__pyx_t_4)) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__SoftTouch); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = ((int)__pyx_t_4); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("parsed_text.update_variables.lambda5", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":105 - * variables[v]._is_touched = True - * - * for line in filter(lambda x: type(x) == Free,text): # <<<<<<<<<<<<<< - * vars = line.lower.split() - * if len(vars) < 2: - */ - -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda6 = {__Pyx_NAMESTR("lambda6"), (PyCFunction)__pyx_lambda_funcdef_lambda6, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda6"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_x)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.update_variables.lambda6", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":114 - * variables[v].is_freed = True - * - * for line in filter(lambda x: type(x) == Irp_read,text): # <<<<<<<<<<<<<< - * variables[line.filename]._is_read = True - * - */ - -static PyObject *__pyx_lambda_funcdef_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda7 = {__Pyx_NAMESTR("lambda7"), (PyCFunction)__pyx_lambda_funcdef_lambda7, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda7"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_x)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.update_variables.lambda7", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":117 - * variables[line.filename]._is_read = True - * - * for line in filter(lambda x: type (x) == Irp_write,text): # <<<<<<<<<<<<<< - * variables[line.filename]._is_written = True - * - */ - -static PyObject *__pyx_lambda_funcdef_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda8 = {__Pyx_NAMESTR("lambda8"), (PyCFunction)__pyx_lambda_funcdef_lambda8, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda8"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_x)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.update_variables.lambda8", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":93 - * - * ################################################################################ - * def update_variables(): # <<<<<<<<<<<<<< - * for filename,text in preprocessed_text: - * - */ - -static PyObject *__pyx_pf_11parsed_text_4update_variables(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_4update_variables = {__Pyx_NAMESTR("update_variables"), (PyCFunction)__pyx_pf_11parsed_text_4update_variables, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_4update_variables(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); - Py_ssize_t __pyx_t_11; - int __pyx_t_12; - PyObject *(*__pyx_t_13)(PyObject *); - PyObject *__pyx_t_14 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("update_variables"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":94 - * ################################################################################ - * def update_variables(): - * for filename,text in preprocessed_text: # <<<<<<<<<<<<<< - * - * for line in filter(lambda x: type(x) in [ Touch, SoftTouch ], text): - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":96 - * for filename,text in preprocessed_text: - * - * for line in filter(lambda x: type(x) in [ Touch, SoftTouch ], text): # <<<<<<<<<<<<<< - * vars = line.lower.split() - * if len(vars) < 2: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda5, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_6 = __pyx_t_1; __Pyx_INCREF(__pyx_t_6); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; - } else { - __pyx_t_1 = __pyx_t_10(__pyx_t_6); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":97 - * - * for line in filter(lambda x: type(x) in [ Touch, SoftTouch ], text): - * vars = line.lower.split() # <<<<<<<<<<<<<< - * if len(vars) < 2: - * error.fail(line,"Syntax error") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__split); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":98 - * for line in filter(lambda x: type(x) in [ Touch, SoftTouch ], text): - * vars = line.lower.split() - * if len(vars) < 2: # <<<<<<<<<<<<<< - * error.fail(line,"Syntax error") - * for v in vars[1:]: - */ - __pyx_t_11 = PyObject_Length(__pyx_v_vars); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_12 = (__pyx_t_11 < 2); - if (__pyx_t_12) { - - /* "parsed_text.py":99 - * vars = line.lower.split() - * if len(vars) < 2: - * error.fail(line,"Syntax error") # <<<<<<<<<<<<<< - * for v in vars[1:]: - * if v not in variables: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __pyx_t_7 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L11; - } - __pyx_L11:; - - /* "parsed_text.py":100 - * if len(vars) < 2: - * error.fail(line,"Syntax error") - * for v in vars[1:]: # <<<<<<<<<<<<<< - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) - */ - __pyx_t_7 = __Pyx_PySequence_GetSlice(__pyx_v_vars, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) { - __pyx_t_1 = __pyx_t_7; __Pyx_INCREF(__pyx_t_1); __pyx_t_11 = 0; - __pyx_t_13 = NULL; - } else { - __pyx_t_11 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_13 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_11); __Pyx_INCREF(__pyx_t_7); __pyx_t_11++; - } else { - __pyx_t_7 = __pyx_t_13(__pyx_t_1); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":101 - * error.fail(line,"Syntax error") - * for v in vars[1:]: - * if v not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s unknown"%(v,)) - * variables[v]._is_touched = True - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_12 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_7, __pyx_v_v))); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":102 - * for v in vars[1:]: - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) # <<<<<<<<<<<<<< - * variables[v]._is_touched = True - * - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__fail); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_14 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_14)); - __pyx_t_14 = 0; - __pyx_t_14 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - goto __pyx_L14; - } - __pyx_L14:; - - /* "parsed_text.py":103 - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) - * variables[v]._is_touched = True # <<<<<<<<<<<<<< - * - * for line in filter(lambda x: type(x) == Free,text): - */ - __pyx_t_14 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_GetItem(__pyx_t_7, __pyx_v_v); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_t_5, __pyx_n_s___is_touched, __pyx_t_14) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":105 - * variables[v]._is_touched = True - * - * for line in filter(lambda x: type(x) == Free,text): # <<<<<<<<<<<<<< - * vars = line.lower.split() - * if len(vars) < 2: - */ - __pyx_t_6 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda6, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) { - __pyx_t_1 = __pyx_t_6; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":106 - * - * for line in filter(lambda x: type(x) == Free,text): - * vars = line.lower.split() # <<<<<<<<<<<<<< - * if len(vars) < 2: - * error.fail(line,"Syntax error") - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__split); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":107 - * for line in filter(lambda x: type(x) == Free,text): - * vars = line.lower.split() - * if len(vars) < 2: # <<<<<<<<<<<<<< - * error.fail(line,"Syntax error") - * for v in vars[1:]: - */ - __pyx_t_11 = PyObject_Length(__pyx_v_vars); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_12 = (__pyx_t_11 < 2); - if (__pyx_t_12) { - - /* "parsed_text.py":108 - * vars = line.lower.split() - * if len(vars) < 2: - * error.fail(line,"Syntax error") # <<<<<<<<<<<<<< - * for v in vars[1:]: - * if v not in variables: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__fail); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __pyx_t_14 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - goto __pyx_L17; - } - __pyx_L17:; - - /* "parsed_text.py":109 - * if len(vars) < 2: - * error.fail(line,"Syntax error") - * for v in vars[1:]: # <<<<<<<<<<<<<< - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) - */ - __pyx_t_14 = __Pyx_PySequence_GetSlice(__pyx_v_vars, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - if (PyList_CheckExact(__pyx_t_14) || PyTuple_CheckExact(__pyx_t_14)) { - __pyx_t_6 = __pyx_t_14; __Pyx_INCREF(__pyx_t_6); __pyx_t_11 = 0; - __pyx_t_13 = NULL; - } else { - __pyx_t_11 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_14); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_13 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_14 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_11); __Pyx_INCREF(__pyx_t_14); __pyx_t_11++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_14 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_11); __Pyx_INCREF(__pyx_t_14); __pyx_t_11++; - } else { - __pyx_t_14 = __pyx_t_13(__pyx_t_6); - if (unlikely(!__pyx_t_14)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_14); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_14; - __pyx_t_14 = 0; - - /* "parsed_text.py":110 - * error.fail(line,"Syntax error") - * for v in vars[1:]: - * if v not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s unknown"%(v,)) - * variables[v].is_freed = True - */ - __pyx_t_14 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_12 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_14, __pyx_v_v))); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":111 - * for v in vars[1:]: - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) # <<<<<<<<<<<<<< - * variables[v].is_freed = True - * - */ - __pyx_t_14 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_14, __pyx_n_s__fail); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __pyx_t_14 = PyTuple_New(1); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), ((PyObject *)__pyx_t_14)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_14, 1, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_14), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L20; - } - __pyx_L20:; - - /* "parsed_text.py":112 - * if v not in variables: - * error.fail(line,"Variable %s unknown"%(v,)) - * variables[v].is_freed = True # <<<<<<<<<<<<<< - * - * for line in filter(lambda x: type(x) == Irp_read,text): - */ - __pyx_t_7 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_14 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_5 = PyObject_GetItem(__pyx_t_14, __pyx_v_v); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (PyObject_SetAttr(__pyx_t_5, __pyx_n_s__is_freed, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":114 - * variables[v].is_freed = True - * - * for line in filter(lambda x: type(x) == Irp_read,text): # <<<<<<<<<<<<<< - * variables[line.filename]._is_read = True - * - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda7, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_6 = __pyx_t_1; __Pyx_INCREF(__pyx_t_6); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_9); __Pyx_INCREF(__pyx_t_1); __pyx_t_9++; - } else { - __pyx_t_1 = __pyx_t_10(__pyx_t_6); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":115 - * - * for line in filter(lambda x: type(x) == Irp_read,text): - * variables[line.filename]._is_read = True # <<<<<<<<<<<<<< - * - * for line in filter(lambda x: type (x) == Irp_write,text): - */ - __pyx_t_1 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_14 = PyObject_GetItem(__pyx_t_5, __pyx_t_7); if (!__pyx_t_14) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_t_14, __pyx_n_s___is_read, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":117 - * variables[line.filename]._is_read = True - * - * for line in filter(lambda x: type (x) == Irp_write,text): # <<<<<<<<<<<<<< - * variables[line.filename]._is_written = True - * - */ - __pyx_t_6 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda8, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_14), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) { - __pyx_t_14 = __pyx_t_6; __Pyx_INCREF(__pyx_t_14); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_14 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_10 = Py_TYPE(__pyx_t_14)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_14)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_14)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_14, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_14)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_14)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_14, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_14); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":118 - * - * for line in filter(lambda x: type (x) == Irp_write,text): - * variables[line.filename]._is_written = True # <<<<<<<<<<<<<< - * - * ################################################################################ - */ - __pyx_t_6 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_t_7); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_t_5, __pyx_n_s___is_written, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_AddTraceback("parsed_text.update_variables", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":185 - * error.fail(line,"Syntax error") - * vars = vars[1:] - * def fun(x): # <<<<<<<<<<<<<< - * main = variables[x].same_as - * return main - */ - -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_fun(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_15get_parsed_text_4func_fun = {__Pyx_NAMESTR("fun"), (PyCFunction)__pyx_pf_11parsed_text_15get_parsed_text_4func_fun, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_fun(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_v_main = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fun"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":186 - * vars = vars[1:] - * def fun(x): - * main = variables[x].same_as # <<<<<<<<<<<<<< - * return main - * main_vars = make_single( map(fun, vars) ) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_x); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__same_as); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_main = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":187 - * def fun(x): - * main = variables[x].same_as - * return main # <<<<<<<<<<<<<< - * main_vars = make_single( map(fun, vars) ) - * check_touch(line,vars,main_vars) - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_main); - __pyx_r = __pyx_v_main; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.fun", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_main); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":193 - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) - * def fun(x): # <<<<<<<<<<<<<< - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - */ - -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_1fun(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_15get_parsed_text_4func_1fun = {__Pyx_NAMESTR("fun"), (PyCFunction)__pyx_pf_11parsed_text_15get_parsed_text_4func_1fun, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_1fun(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fun"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "parsed_text.py":194 - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) - * def fun(x): - * if x not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s unknown"%(x,)) - * return [ ([],Simple_line(line.i," call touch_%s"%(x,),line.filename)), - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, __pyx_v_x))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":195 - * def fun(x): - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) # <<<<<<<<<<<<<< - * return [ ([],Simple_line(line.i," call touch_%s"%(x,),line.filename)), - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "parsed_text.py":196 - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - * return [ ([],Simple_line(line.i," call touch_%s"%(x,),line.filename)), # <<<<<<<<<<<<<< - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] - * result += flatten(map( fun, main_vars )) - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_10), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - - /* "parsed_text.py":197 - * error.fail(line,"Variable %s unknown"%(x,)) - * return [ ([],Simple_line(line.i," call touch_%s"%(x,),line.filename)), - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] # <<<<<<<<<<<<<< - * result += flatten(map( fun, main_vars )) - * def fun(x): - */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyObject_GetItem(__pyx_t_6, __pyx_v_x); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__fmodule); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_11), __pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_5 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - PyList_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_t_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __pyx_t_7 = 0; - __pyx_t_8 = 0; - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.fun", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":199 - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] - * result += flatten(map( fun, main_vars )) - * def fun(x): # <<<<<<<<<<<<<< - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - */ - -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_2fun(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_15get_parsed_text_4func_2fun = {__Pyx_NAMESTR("fun"), (PyCFunction)__pyx_pf_11parsed_text_15get_parsed_text_4func_2fun, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_4func_2fun(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("fun"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "parsed_text.py":200 - * result += flatten(map( fun, main_vars )) - * def fun(x): - * if x not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s unknown"%(x,)) - * return ([],Simple_line(line.i," %s_is_built = .True."%(x,),line.filename)) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_1, __pyx_v_x))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":201 - * def fun(x): - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) # <<<<<<<<<<<<<< - * return ([],Simple_line(line.i," %s_is_built = .True."%(x,),line.filename)) - * result += map( fun, main_vars[:-1] ) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_5), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "parsed_text.py":202 - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - * return ([],Simple_line(line.i," %s_is_built = .True."%(x,),line.filename)) # <<<<<<<<<<<<<< - * result += map( fun, main_vars[:-1] ) - * if type(line) == SoftTouch: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_12), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_r = ((PyObject *)__pyx_t_7); - __pyx_t_7 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.fun", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":168 - * elif type(line) == Provide: - * l = line.lower.split()[1:] - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * for v in l: - * if v not in variables: - */ - -static PyObject *__pyx_lambda_funcdef_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda9 = {__Pyx_NAMESTR("lambda9"), (PyCFunction)__pyx_lambda_funcdef_lambda9, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda9"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_varlist)) { __Pyx_RaiseClosureNameError("varlist"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda9", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":178 - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) - * l = map(lambda x: "-%s"%(x), l) # <<<<<<<<<<<<<< - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Touch, SoftTouch ]: - */ - -static PyObject *__pyx_lambda_funcdef_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda10 = {__Pyx_NAMESTR("lambda10"), (PyCFunction)__pyx_lambda_funcdef_lambda10, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda10"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_13), __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda10", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":210 - * elif type(line) == Call: - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * sub = find_subroutine_in_line(line) - * if sub not in subroutines: - */ - -static PyObject *__pyx_lambda_funcdef_lambda11(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda11 = {__Pyx_NAMESTR("lambda11"), (PyCFunction)__pyx_lambda_funcdef_lambda11, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda11(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda11"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_varlist)) { __Pyx_RaiseClosureNameError("varlist"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda11", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":223 - * vars = vars[1:] - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) # <<<<<<<<<<<<<< - * for var in vars: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - */ - -static PyObject *__pyx_lambda_funcdef_lambda12(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda12 = {__Pyx_NAMESTR("lambda12"), (PyCFunction)__pyx_lambda_funcdef_lambda12, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda12(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda12"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_x); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__fmodule); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_14), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda12", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":225 - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) - * for var in vars: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), # <<<<<<<<<<<<<< - * make_single(use)) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), - */ - -static PyObject *__pyx_lambda_funcdef_lambda13(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda13 = {__Pyx_NAMESTR("lambda13"), (PyCFunction)__pyx_lambda_funcdef_lambda13, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda13(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda13"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda13", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":227 - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - * make_single(use)) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), # <<<<<<<<<<<<<< - * variables[var].free) - * elif type(line) == Irp_read: - */ - -static PyObject *__pyx_lambda_funcdef_lambda14(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda14 = {__Pyx_NAMESTR("lambda14"), (PyCFunction)__pyx_lambda_funcdef_lambda14, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda14(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda14"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (unlikely(!__pyx_cur_scope->__pyx_v_line)) { __Pyx_RaiseClosureNameError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda14", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":237 - * else: - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * append( (l,line) ) - * return result - */ - -static PyObject *__pyx_lambda_funcdef_lambda15(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda15 = {__Pyx_NAMESTR("lambda15"), (PyCFunction)__pyx_lambda_funcdef_lambda15, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda15(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda15"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_varlist)) { __Pyx_RaiseClosureNameError("varlist"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func.lambda15", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":123 - * - * def get_parsed_text(): - * def func(filename, text): # <<<<<<<<<<<<<< - * varlist = [] - * result = [] - */ - -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_15get_parsed_text_func = {__Pyx_NAMESTR("func"), (PyCFunction)__pyx_pf_11parsed_text_15get_parsed_text_func, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_15get_parsed_text_func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *__pyx_cur_scope; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_append = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_variable_list = NULL; - PyObject *__pyx_v_l = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_fun = 0; - PyObject *__pyx_v_main_vars = NULL; - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_sub = NULL; - PyObject *__pyx_v_t = NULL; - PyObject *__pyx_v_use = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - int __pyx_t_8; - int __pyx_t_9; - Py_ssize_t __pyx_t_10; - PyObject *__pyx_t_11 = NULL; - PyObject *__pyx_t_12 = NULL; - PyObject *__pyx_t_13 = NULL; - int __pyx_t_14; - PyObject *__pyx_t_15 = NULL; - PyObject *__pyx_t_16 = NULL; - PyObject *(*__pyx_t_17)(PyObject *); - PyObject *__pyx_t_18 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__filename,&__pyx_n_s__text,0}; - __Pyx_RefNannySetupContext("func"); - __pyx_cur_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)__pyx_ptype_11parsed_text___pyx_scope_struct_1_func->tp_new(__pyx_ptype_11parsed_text___pyx_scope_struct_1_func, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("func", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "func") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_filename = values[0]; - __pyx_v_text = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("func", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("parsed_text.get_parsed_text.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "parsed_text.py":124 - * def get_parsed_text(): - * def func(filename, text): - * varlist = [] # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":125 - * def func(filename, text): - * varlist = [] - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * for line in text: #filter( - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":126 - * varlist = [] - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * for line in text: #filter( - * # lambda x: type(x) not in [ Doc, Begin_doc, End_doc ], - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_result, __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_append = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":127 - * result = [] - * append = result.append - * for line in text: #filter( # <<<<<<<<<<<<<< - * # lambda x: type(x) not in [ Doc, Begin_doc, End_doc ], - * # text): - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_cur_scope->__pyx_v_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":130 - * # lambda x: type(x) not in [ Doc, Begin_doc, End_doc ], - * # text): - * if type(line) in [ \ # <<<<<<<<<<<<<< - * Empty_line, - * Continue, - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line))); - __pyx_t_4 = ((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)); - - /* "parsed_text.py":131 - * # text): - * if type(line) in [ \ - * Empty_line, # <<<<<<<<<<<<<< - * Continue, - * Return, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!((int)__pyx_t_7)) { - - /* "parsed_text.py":132 - * if type(line) in [ \ - * Empty_line, - * Continue, # <<<<<<<<<<<<<< - * Return, - * Begin_shell, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Continue); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_7); - } - if (!__pyx_t_9) { - - /* "parsed_text.py":133 - * Empty_line, - * Continue, - * Return, # <<<<<<<<<<<<<< - * Begin_shell, - * End_shell, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Return); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = ((int)__pyx_t_7); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - - /* "parsed_text.py":134 - * Continue, - * Return, - * Begin_shell, # <<<<<<<<<<<<<< - * End_shell, - * Openmp, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_shell); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = __pyx_t_8; - } - if (!__pyx_t_7) { - - /* "parsed_text.py":135 - * Return, - * Begin_shell, - * End_shell, # <<<<<<<<<<<<<< - * Openmp, - * Directive, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_shell); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = __pyx_t_7; - } - if (!__pyx_t_9) { - - /* "parsed_text.py":136 - * Begin_shell, - * End_shell, - * Openmp, # <<<<<<<<<<<<<< - * Directive, - * Use, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 136; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = ((int)__pyx_t_7); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - - /* "parsed_text.py":137 - * End_shell, - * Openmp, - * Directive, # <<<<<<<<<<<<<< - * Use, - * Enddo, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Directive); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = __pyx_t_8; - } - if (!__pyx_t_7) { - - /* "parsed_text.py":138 - * Openmp, - * Directive, - * Use, # <<<<<<<<<<<<<< - * Enddo, - * End_select, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = __pyx_t_7; - } - if (!__pyx_t_9) { - - /* "parsed_text.py":139 - * Directive, - * Use, - * Enddo, # <<<<<<<<<<<<<< - * End_select, - * Endif, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 139; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = ((int)__pyx_t_7); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - - /* "parsed_text.py":140 - * Use, - * Enddo, - * End_select, # <<<<<<<<<<<<<< - * Endif, - * Implicit, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_select); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = __pyx_t_8; - } - if (!__pyx_t_7) { - - /* "parsed_text.py":141 - * Enddo, - * End_select, - * Endif, # <<<<<<<<<<<<<< - * Implicit, - * Program, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = __pyx_t_7; - } - if (!__pyx_t_9) { - - /* "parsed_text.py":142 - * End_select, - * Endif, - * Implicit, # <<<<<<<<<<<<<< - * Program, - * Subroutine, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = ((int)__pyx_t_7); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - - /* "parsed_text.py":143 - * Endif, - * Implicit, - * Program, # <<<<<<<<<<<<<< - * Subroutine, - * Function, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = __pyx_t_8; - } - if (!__pyx_t_7) { - - /* "parsed_text.py":144 - * Implicit, - * Program, - * Subroutine, # <<<<<<<<<<<<<< - * Function, - * End, - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = __pyx_t_7; - } - if (!__pyx_t_9) { - - /* "parsed_text.py":145 - * Program, - * Subroutine, - * Function, # <<<<<<<<<<<<<< - * End, - * ]: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = ((int)__pyx_t_7); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - - /* "parsed_text.py":146 - * Subroutine, - * Function, - * End, # <<<<<<<<<<<<<< - * ]: - * append( ([],line) ) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_4), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = __pyx_t_8; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __pyx_t_7; - if (__pyx_t_8) { - - /* "parsed_text.py":148 - * End, - * ]: - * append( ([],line) ) # <<<<<<<<<<<<<< - * elif type(line) in [ Begin_provider, Cont_provider ]: - * if type(line) == Begin_provider: - */ - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":149 - * ]: - * append( ([],line) ) - * elif type(line) in [ Begin_provider, Cont_provider ]: # <<<<<<<<<<<<<< - * if type(line) == Begin_provider: - * varlist = [] - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line))); - __pyx_t_5 = ((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!((int)__pyx_t_8)) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_9 = ((int)__pyx_t_7); - } else { - __pyx_t_9 = ((int)__pyx_t_8); - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = __pyx_t_9; - if (__pyx_t_8) { - - /* "parsed_text.py":150 - * append( ([],line) ) - * elif type(line) in [ Begin_provider, Cont_provider ]: - * if type(line) == Begin_provider: # <<<<<<<<<<<<<< - * varlist = [] - * buffer = map(strip,line.lower.replace(']','').split(',')) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":151 - * elif type(line) in [ Begin_provider, Cont_provider ]: - * if type(line) == Begin_provider: - * varlist = [] # <<<<<<<<<<<<<< - * buffer = map(strip,line.lower.replace(']','').split(',')) - * assert len(buffer) > 1 - */ - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L9; - } - __pyx_L9:; - - /* "parsed_text.py":152 - * if type(line) == Begin_provider: - * varlist = [] - * buffer = map(strip,line.lower.replace(']','').split(',')) # <<<<<<<<<<<<<< - * assert len(buffer) > 1 - * v = buffer[1] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__strip); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__replace); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_k_tuple_16), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_k_tuple_18), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":153 - * varlist = [] - * buffer = map(strip,line.lower.replace(']','').split(',')) - * assert len(buffer) > 1 # <<<<<<<<<<<<<< - * v = buffer[1] - * varlist.append(v) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_10 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!(__pyx_t_10 > 1))) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":154 - * buffer = map(strip,line.lower.replace(']','').split(',')) - * assert len(buffer) > 1 - * v = buffer[1] # <<<<<<<<<<<<<< - * varlist.append(v) - * variable_list = find_variables_in_line(line) - */ - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":155 - * assert len(buffer) > 1 - * v = buffer[1] - * varlist.append(v) # <<<<<<<<<<<<<< - * variable_list = find_variables_in_line(line) - * try: - */ - __pyx_t_5 = __Pyx_PyObject_Append(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_v); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "parsed_text.py":156 - * v = buffer[1] - * varlist.append(v) - * variable_list = find_variables_in_line(line) # <<<<<<<<<<<<<< - * try: - * variable_list.remove(variables[v].same_as) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s_19); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_4 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_variable_list); - __pyx_v_variable_list = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":157 - * varlist.append(v) - * variable_list = find_variables_in_line(line) - * try: # <<<<<<<<<<<<<< - * variable_list.remove(variables[v].same_as) - * except ValueError: - */ - { - __Pyx_ExceptionSave(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13); - __Pyx_XGOTREF(__pyx_t_11); - __Pyx_XGOTREF(__pyx_t_12); - __Pyx_XGOTREF(__pyx_t_13); - /*try:*/ { - - /* "parsed_text.py":158 - * variable_list = find_variables_in_line(line) - * try: - * variable_list.remove(variables[v].same_as) # <<<<<<<<<<<<<< - * except ValueError: - * print v, variables[v].same_as - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_variable_list, __pyx_n_s__remove); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetItem(__pyx_t_6, __pyx_v_v); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__same_as); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L10_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - goto __pyx_L17_try_end; - __pyx_L10_error:; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":159 - * try: - * variable_list.remove(variables[v].same_as) - * except ValueError: # <<<<<<<<<<<<<< - * print v, variables[v].same_as - * raise - */ - __pyx_t_14 = PyErr_ExceptionMatches(__pyx_builtin_ValueError); - if (__pyx_t_14) { - __Pyx_AddTraceback("parsed_text.get_parsed_text.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_GOTREF(__pyx_t_5); - __Pyx_GOTREF(__pyx_t_4); - - /* "parsed_text.py":160 - * variable_list.remove(variables[v].same_as) - * except ValueError: - * print v, variables[v].same_as # <<<<<<<<<<<<<< - * raise - * append( (variable_list,line) ) - */ - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyObject_GetItem(__pyx_t_15, __pyx_v_v); if (!__pyx_t_16) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = PyObject_GetAttr(__pyx_t_16, __pyx_n_s__same_as); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = PyTuple_New(2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_15 = 0; - if (__Pyx_Print(0, ((PyObject *)__pyx_t_16), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - - /* "parsed_text.py":161 - * except ValueError: - * print v, variables[v].same_as - * raise # <<<<<<<<<<<<<< - * append( (variable_list,line) ) - * elif type(line) == End_provider: - */ - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_ErrRestore(__pyx_t_6, __pyx_t_5, __pyx_t_4); - __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_4 = 0; - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L12_except_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L11_exception_handled; - } - __pyx_L12_except_error:; - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_XGIVEREF(__pyx_t_13); - __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); - goto __pyx_L1_error; - __pyx_L11_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_XGIVEREF(__pyx_t_12); - __Pyx_XGIVEREF(__pyx_t_13); - __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); - __pyx_L17_try_end:; - } - - /* "parsed_text.py":162 - * print v, variables[v].same_as - * raise - * append( (variable_list,line) ) # <<<<<<<<<<<<<< - * elif type(line) == End_provider: - * varlist = [] - */ - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_variable_list); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_variable_list); - __Pyx_GIVEREF(__pyx_v_variable_list); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":163 - * raise - * append( (variable_list,line) ) - * elif type(line) == End_provider: # <<<<<<<<<<<<<< - * varlist = [] - * append( ([],line) ) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":164 - * append( (variable_list,line) ) - * elif type(line) == End_provider: - * varlist = [] # <<<<<<<<<<<<<< - * append( ([],line) ) - * elif type(line) == Provide: - */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - - /* "parsed_text.py":165 - * elif type(line) == End_provider: - * varlist = [] - * append( ([],line) ) # <<<<<<<<<<<<<< - * elif type(line) == Provide: - * l = line.lower.split()[1:] - */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":166 - * varlist = [] - * append( ([],line) ) - * elif type(line) == Provide: # <<<<<<<<<<<<<< - * l = line.lower.split()[1:] - * l = filter(lambda x: x not in varlist, l) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":167 - * append( ([],line) ) - * elif type(line) == Provide: - * l = line.lower.split()[1:] # <<<<<<<<<<<<<< - * l = filter(lambda x: x not in varlist, l) - * for v in l: - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PySequence_GetSlice(__pyx_t_5, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":168 - * elif type(line) == Provide: - * l = line.lower.split()[1:] - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * for v in l: - * if v not in variables: - */ - __pyx_t_4 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda9, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":169 - * l = line.lower.split()[1:] - * l = filter(lambda x: x not in varlist, l) - * for v in l: # <<<<<<<<<<<<<< - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) - */ - if (PyList_CheckExact(__pyx_v_l) || PyTuple_CheckExact(__pyx_v_l)) { - __pyx_t_4 = __pyx_v_l; __Pyx_INCREF(__pyx_t_4); __pyx_t_10 = 0; - __pyx_t_17 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_l); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_17 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_10); __Pyx_INCREF(__pyx_t_5); __pyx_t_10++; - } else { - __pyx_t_5 = __pyx_t_17(__pyx_t_4); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":170 - * l = filter(lambda x: x not in varlist, l) - * for v in l: - * if v not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s is unknown"%(v)) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_8 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_5, __pyx_v_v))); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":171 - * for v in l: - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) # <<<<<<<<<<<<<< - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == NoDep: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_20), __pyx_v_v); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __pyx_t_16 = PyTuple_New(2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_16, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L22; - } - __pyx_L22:; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "parsed_text.py":172 - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) == NoDep: - * l = line.lower.split()[1:] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_t_16); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_15 = PyTuple_New(3); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_15, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_15, 2, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __pyx_t_5 = 0; - __pyx_t_6 = 0; - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(2); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __pyx_t_16 = 0; - __pyx_t_16 = PyTuple_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, ((PyObject *)__pyx_t_15)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_15)); - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":173 - * error.fail(line,"Variable %s is unknown"%(v)) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == NoDep: # <<<<<<<<<<<<<< - * l = line.lower.split()[1:] - * for v in l: - */ - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__NoDep); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_15, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":174 - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == NoDep: - * l = line.lower.split()[1:] # <<<<<<<<<<<<<< - * for v in l: - * if v not in variables: - */ - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_15 = PyObject_GetAttr(__pyx_t_16, __pyx_n_s__split); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = __Pyx_PySequence_GetSlice(__pyx_t_16, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_XDECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_15; - __pyx_t_15 = 0; - - /* "parsed_text.py":175 - * elif type(line) == NoDep: - * l = line.lower.split()[1:] - * for v in l: # <<<<<<<<<<<<<< - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) - */ - if (PyList_CheckExact(__pyx_v_l) || PyTuple_CheckExact(__pyx_v_l)) { - __pyx_t_15 = __pyx_v_l; __Pyx_INCREF(__pyx_t_15); __pyx_t_10 = 0; - __pyx_t_17 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_15 = PyObject_GetIter(__pyx_v_l); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_17 = Py_TYPE(__pyx_t_15)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_15)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_15)) break; - __pyx_t_16 = PyList_GET_ITEM(__pyx_t_15, __pyx_t_10); __Pyx_INCREF(__pyx_t_16); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_15)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_15)) break; - __pyx_t_16 = PyTuple_GET_ITEM(__pyx_t_15, __pyx_t_10); __Pyx_INCREF(__pyx_t_16); __pyx_t_10++; - } else { - __pyx_t_16 = __pyx_t_17(__pyx_t_15); - if (unlikely(!__pyx_t_16)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_16); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":176 - * l = line.lower.split()[1:] - * for v in l: - * if v not in variables: # <<<<<<<<<<<<<< - * error.fail(line,"Variable %s is unknown"%(v)) - * l = map(lambda x: "-%s"%(x), l) - */ - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_16, __pyx_v_v))); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":177 - * for v in l: - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) # <<<<<<<<<<<<<< - * l = map(lambda x: "-%s"%(x), l) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - */ - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_16, __pyx_n_s__fail); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_20), __pyx_v_v); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - goto __pyx_L25; - } - __pyx_L25:; - } - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - - /* "parsed_text.py":178 - * if v not in variables: - * error.fail(line,"Variable %s is unknown"%(v)) - * l = map(lambda x: "-%s"%(x), l) # <<<<<<<<<<<<<< - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Touch, SoftTouch ]: - */ - __pyx_t_15 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda10, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyTuple_New(2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_15; - __pyx_t_15 = 0; - - /* "parsed_text.py":179 - * error.fail(line,"Variable %s is unknown"%(v)) - * l = map(lambda x: "-%s"%(x), l) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) in [ Touch, SoftTouch ]: - * vars = line.lower.split() - */ - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_16 = 0; - __pyx_t_4 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":180 - * l = map(lambda x: "-%s"%(x), l) - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Touch, SoftTouch ]: # <<<<<<<<<<<<<< - * vars = line.lower.split() - * if len(vars) < 2: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line))); - __pyx_t_5 = ((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Touch); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_15 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_15); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (!((int)__pyx_t_8)) { - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__SoftTouch); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_15, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_7 = ((int)__pyx_t_9); - } else { - __pyx_t_7 = ((int)__pyx_t_8); - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = __pyx_t_7; - if (__pyx_t_8) { - - /* "parsed_text.py":181 - * append( (l,Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Touch, SoftTouch ]: - * vars = line.lower.split() # <<<<<<<<<<<<<< - * if len(vars) < 2: - * error.fail(line,"Syntax error") - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":182 - * elif type(line) in [ Touch, SoftTouch ]: - * vars = line.lower.split() - * if len(vars) < 2: # <<<<<<<<<<<<<< - * error.fail(line,"Syntax error") - * vars = vars[1:] - */ - __pyx_t_10 = PyObject_Length(__pyx_v_vars); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = (__pyx_t_10 < 2); - if (__pyx_t_8) { - - /* "parsed_text.py":183 - * vars = line.lower.split() - * if len(vars) < 2: - * error.fail(line,"Syntax error") # <<<<<<<<<<<<<< - * vars = vars[1:] - * def fun(x): - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __pyx_t_15 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - goto __pyx_L26; - } - __pyx_L26:; - - /* "parsed_text.py":184 - * if len(vars) < 2: - * error.fail(line,"Syntax error") - * vars = vars[1:] # <<<<<<<<<<<<<< - * def fun(x): - * main = variables[x].same_as - */ - __pyx_t_15 = __Pyx_PySequence_GetSlice(__pyx_v_vars, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_15; - __pyx_t_15 = 0; - - /* "parsed_text.py":185 - * error.fail(line,"Syntax error") - * vars = vars[1:] - * def fun(x): # <<<<<<<<<<<<<< - * main = variables[x].same_as - * return main - */ - __pyx_t_15 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_15get_parsed_text_4func_fun, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_XDECREF(__pyx_v_fun); - __pyx_v_fun = __pyx_t_15; - __pyx_t_15 = 0; - - /* "parsed_text.py":188 - * main = variables[x].same_as - * return main - * main_vars = make_single( map(fun, vars) ) # <<<<<<<<<<<<<< - * check_touch(line,vars,main_vars) - * txt = " ".join(vars) - */ - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_fun); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_fun); - __Pyx_GIVEREF(__pyx_v_fun); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_6 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_main_vars); - __pyx_v_main_vars = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":189 - * return main - * main_vars = make_single( map(fun, vars) ) - * check_touch(line,vars,main_vars) # <<<<<<<<<<<<<< - * txt = " ".join(vars) - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__check_touch); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_main_vars); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_main_vars); - __Pyx_GIVEREF(__pyx_v_main_vars); - __pyx_t_15 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 189; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - - /* "parsed_text.py":190 - * main_vars = make_single( map(fun, vars) ) - * check_touch(line,vars,main_vars) - * txt = " ".join(vars) # <<<<<<<<<<<<<< - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) - */ - __pyx_t_15 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_22), __pyx_n_s__join); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_6 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":191 - * check_touch(line,vars,main_vars) - * txt = " ".join(vars) - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) # <<<<<<<<<<<<<< - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) - * def fun(x): - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_5 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "parsed_text.py":192 - * txt = " ".join(vars) - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) # <<<<<<<<<<<<<< - * def fun(x): - * if x not in variables: - */ - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_16 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_24), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_18 = PyTuple_New(3); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_18, 1, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_18, 2, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_6 = 0; - __pyx_t_16 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_18)); - __pyx_t_18 = 0; - __pyx_t_18 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - - /* "parsed_text.py":193 - * append ( (vars,Simple_line(line.i,"!",line.filename)) ) - * append ( ([],Simple_line(line.i,"! >>> TOUCH %s"%(txt,),line.filename)) ) - * def fun(x): # <<<<<<<<<<<<<< - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - */ - __pyx_t_18 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_15get_parsed_text_4func_1fun, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_XDECREF(__pyx_v_fun); - __pyx_v_fun = __pyx_t_18; - __pyx_t_18 = 0; - - /* "parsed_text.py":198 - * return [ ([],Simple_line(line.i," call touch_%s"%(x,),line.filename)), - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] - * result += flatten(map( fun, main_vars )) # <<<<<<<<<<<<<< - * def fun(x): - * if x not in variables: - */ - __pyx_t_18 = __Pyx_GetName(__pyx_m, __pyx_n_s__flatten); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_fun); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_fun); - __Pyx_GIVEREF(__pyx_v_fun); - __Pyx_INCREF(__pyx_v_main_vars); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_main_vars); - __Pyx_GIVEREF(__pyx_v_main_vars); - __pyx_t_4 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_18, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 198; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":199 - * ([],Use(line.i," use %s"%(variables[x].fmodule), line.filename)) ] - * result += flatten(map( fun, main_vars )) - * def fun(x): # <<<<<<<<<<<<<< - * if x not in variables: - * error.fail(line,"Variable %s unknown"%(x,)) - */ - __pyx_t_5 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_15get_parsed_text_4func_2fun, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_v_fun); - __pyx_v_fun = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":203 - * error.fail(line,"Variable %s unknown"%(x,)) - * return ([],Simple_line(line.i," %s_is_built = .True."%(x,),line.filename)) - * result += map( fun, main_vars[:-1] ) # <<<<<<<<<<<<<< - * if type(line) == SoftTouch: - * append ( ([],Simple_line(line.i,"! <<< END TOUCH (Soft)",line.filename)) ) - */ - __pyx_t_5 = __Pyx_PySequence_GetSlice(__pyx_v_main_vars, 0, -1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_fun); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_fun); - __Pyx_GIVEREF(__pyx_v_fun); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":204 - * return ([],Simple_line(line.i," %s_is_built = .True."%(x,),line.filename)) - * result += map( fun, main_vars[:-1] ) - * if type(line) == SoftTouch: # <<<<<<<<<<<<<< - * append ( ([],Simple_line(line.i,"! <<< END TOUCH (Soft)",line.filename)) ) - * else: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__SoftTouch); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":205 - * result += map( fun, main_vars[:-1] ) - * if type(line) == SoftTouch: - * append ( ([],Simple_line(line.i,"! <<< END TOUCH (Soft)",line.filename)) ) # <<<<<<<<<<<<<< - * else: - * append ( ([],Provide_all(line.i,"! <<< END TOUCH",line.filename)) ) - */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_18 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyTuple_New(3); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_18); - __Pyx_GIVEREF(__pyx_t_18); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_25)); - PyTuple_SET_ITEM(__pyx_t_16, 1, ((PyObject *)__pyx_kp_s_25)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_25)); - PyTuple_SET_ITEM(__pyx_t_16, 2, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_18 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __pyx_t_16 = PyTuple_New(2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_5 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - goto __pyx_L27; - } - /*else*/ { - - /* "parsed_text.py":207 - * append ( ([],Simple_line(line.i,"! <<< END TOUCH (Soft)",line.filename)) ) - * else: - * append ( ([],Provide_all(line.i,"! <<< END TOUCH",line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) == Call: - * l = find_variables_in_line(line) - */ - __pyx_t_16 = PyList_New(0); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_18 = PyTuple_New(3); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_t_18, 1, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_t_18, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_5 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_16 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_18)); - __pyx_t_18 = 0; - __pyx_t_18 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - } - __pyx_L27:; - goto __pyx_L8; - } - - /* "parsed_text.py":208 - * else: - * append ( ([],Provide_all(line.i,"! <<< END TOUCH",line.filename)) ) - * elif type(line) == Call: # <<<<<<<<<<<<<< - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) - */ - __pyx_t_18 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_18, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":209 - * append ( ([],Provide_all(line.i,"! <<< END TOUCH",line.filename)) ) - * elif type(line) == Call: - * l = find_variables_in_line(line) # <<<<<<<<<<<<<< - * l = filter(lambda x: x not in varlist, l) - * sub = find_subroutine_in_line(line) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s_19); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_16 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_XDECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":210 - * elif type(line) == Call: - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * sub = find_subroutine_in_line(line) - * if sub not in subroutines: - */ - __pyx_t_16 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda11, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_DECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":211 - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) - * sub = find_subroutine_in_line(line) # <<<<<<<<<<<<<< - * if sub not in subroutines: - * t = Simple_line - */ - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s_27); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_4 = PyObject_Call(__pyx_t_16, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_XDECREF(__pyx_v_sub); - __pyx_v_sub = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":212 - * l = filter(lambda x: x not in varlist, l) - * sub = find_subroutine_in_line(line) - * if sub not in subroutines: # <<<<<<<<<<<<<< - * t = Simple_line - * append( (l,Simple_line(line.i,line.text,line.filename)) ) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_t_4, __pyx_v_sub))); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":213 - * sub = find_subroutine_in_line(line) - * if sub not in subroutines: - * t = Simple_line # <<<<<<<<<<<<<< - * append( (l,Simple_line(line.i,line.text,line.filename)) ) - * else: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_v_t); - __pyx_v_t = __pyx_t_4; - __pyx_t_4 = 0; - - /* "parsed_text.py":214 - * if sub not in subroutines: - * t = Simple_line - * append( (l,Simple_line(line.i,line.text,line.filename)) ) # <<<<<<<<<<<<<< - * else: - * append( (l,line) ) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_18 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_18); - __Pyx_GIVEREF(__pyx_t_18); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_18 = 0; - __pyx_t_16 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L28; - } - /*else*/ { - - /* "parsed_text.py":216 - * append( (l,Simple_line(line.i,line.text,line.filename)) ) - * else: - * append( (l,line) ) # <<<<<<<<<<<<<< - * if subroutines[sub].touches != []: - * append( ([],Provide_all(line.i,"",line.filename)) ) - */ - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_15 = PyTuple_New(1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "parsed_text.py":217 - * else: - * append( (l,line) ) - * if subroutines[sub].touches != []: # <<<<<<<<<<<<<< - * append( ([],Provide_all(line.i,"",line.filename)) ) - * elif type(line) == Free: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_15 = PyObject_GetItem(__pyx_t_5, __pyx_v_sub); if (!__pyx_t_15) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_15, __pyx_n_s__touches); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = PyList_New(0); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_5, ((PyObject *)__pyx_t_15), Py_NE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":218 - * append( (l,line) ) - * if subroutines[sub].touches != []: - * append( ([],Provide_all(line.i,"",line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) == Free: - * vars = line.lower.split() - */ - __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_15 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_18 = PyTuple_New(3); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_18, 1, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_18, 2, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __pyx_t_5 = 0; - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_15, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __pyx_t_4 = 0; - __pyx_t_16 = 0; - __pyx_t_16 = PyTuple_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, ((PyObject *)__pyx_t_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_18)); - __pyx_t_18 = 0; - __pyx_t_18 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - goto __pyx_L29; - } - __pyx_L29:; - } - __pyx_L28:; - goto __pyx_L8; - } - - /* "parsed_text.py":219 - * if subroutines[sub].touches != []: - * append( ([],Provide_all(line.i,"",line.filename)) ) - * elif type(line) == Free: # <<<<<<<<<<<<<< - * vars = line.lower.split() - * vars = vars[1:] - */ - __pyx_t_18 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_18, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 219; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":220 - * append( ([],Provide_all(line.i,"",line.filename)) ) - * elif type(line) == Free: - * vars = line.lower.split() # <<<<<<<<<<<<<< - * vars = vars[1:] - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - */ - __pyx_t_16 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_18 = PyObject_GetAttr(__pyx_t_16, __pyx_n_s__split); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_18, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":221 - * elif type(line) == Free: - * vars = line.lower.split() - * vars = vars[1:] # <<<<<<<<<<<<<< - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) - */ - __pyx_t_16 = __Pyx_PySequence_GetSlice(__pyx_v_vars, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":222 - * vars = line.lower.split() - * vars = vars[1:] - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) # <<<<<<<<<<<<<< - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) - * for var in vars: - */ - __pyx_t_16 = PyList_New(0); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __pyx_t_18 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_4 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_t_15); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyObject_Call(__pyx_t_18, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - __pyx_t_16 = 0; - __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":223 - * vars = vars[1:] - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) # <<<<<<<<<<<<<< - * for var in vars: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - */ - __pyx_t_6 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda12, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_15 = PyTuple_New(2); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __Pyx_XDECREF(__pyx_v_use); - __pyx_v_use = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":224 - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) - * for var in vars: # <<<<<<<<<<<<<< - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - * make_single(use)) - */ - if (PyList_CheckExact(__pyx_v_vars) || PyTuple_CheckExact(__pyx_v_vars)) { - __pyx_t_6 = __pyx_v_vars; __Pyx_INCREF(__pyx_t_6); __pyx_t_10 = 0; - __pyx_t_17 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_vars); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_17 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_15 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_10); __Pyx_INCREF(__pyx_t_15); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_15 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_10); __Pyx_INCREF(__pyx_t_15); __pyx_t_10++; - } else { - __pyx_t_15 = __pyx_t_17(__pyx_t_6); - if (unlikely(!__pyx_t_15)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_15); - } - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_15; - __pyx_t_15 = 0; - - /* "parsed_text.py":225 - * use = map(lambda x: " use %s"%(variables[x].fmodule),vars) - * for var in vars: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), # <<<<<<<<<<<<<< - * make_single(use)) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), - */ - __pyx_t_15 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda13, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - - /* "parsed_text.py":226 - * for var in vars: - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - * make_single(use)) # <<<<<<<<<<<<<< - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), - * variables[var].free) - */ - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - __Pyx_INCREF(__pyx_v_use); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_v_use); - __Pyx_GIVEREF(__pyx_v_use); - __pyx_t_5 = PyObject_Call(__pyx_t_16, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_15 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __pyx_t_18 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_5); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_18; - __pyx_t_18 = 0; - - /* "parsed_text.py":227 - * result += map(lambda x: ([],Use(line.i,x,line.filename)), - * make_single(use)) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), # <<<<<<<<<<<<<< - * variables[var].free) - * elif type(line) == Irp_read: - */ - __pyx_t_18 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda14, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - - /* "parsed_text.py":228 - * make_single(use)) - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), - * variables[var].free) # <<<<<<<<<<<<<< - * elif type(line) == Irp_read: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_15 = PyObject_GetItem(__pyx_t_5, __pyx_v_var); if (!__pyx_t_15) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_15, __pyx_n_s__free); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - __pyx_t_15 = PyTuple_New(2); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_t_18); - __Pyx_GIVEREF(__pyx_t_18); - PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_18 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_15), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_15)); __pyx_t_15 = 0; - __pyx_t_15 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_5); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_15; - __pyx_t_15 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":229 - * result += map(lambda x: ([],Simple_line(line.i,x,line.filename)), - * variables[var].free) - * elif type(line) == Irp_read: # <<<<<<<<<<<<<< - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == Irp_write: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_15 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_15); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":230 - * variables[var].free) - * elif type(line) == Irp_read: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) == Irp_write: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - */ - __pyx_t_15 = PyList_New(0); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_15)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_18 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_16 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_t_18); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __pyx_t_18 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_18); - __Pyx_GIVEREF(__pyx_t_18); - __pyx_t_5 = 0; - __pyx_t_16 = 0; - __pyx_t_18 = 0; - __pyx_t_18 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_15)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_15)); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_18); - __Pyx_GIVEREF(__pyx_t_18); - __pyx_t_15 = 0; - __pyx_t_18 = 0; - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":231 - * elif type(line) == Irp_read: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == Irp_write: # <<<<<<<<<<<<<< - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Begin_doc, End_doc, Doc ]: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_18 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_18); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - if (__pyx_t_8) { - - /* "parsed_text.py":232 - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) == Irp_write: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) # <<<<<<<<<<<<<< - * elif type(line) in [ Begin_doc, End_doc, Doc ]: - * pass - */ - __pyx_t_18 = PyList_New(0); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_15 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_16 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_t_6); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_cur_scope->__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_t_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_15 = 0; - __pyx_t_16 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_18 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L8; - } - - /* "parsed_text.py":233 - * elif type(line) == Irp_write: - * append( ([],Simple_line(line.i,"!%s"%(line.text),line.filename)) ) - * elif type(line) in [ Begin_doc, End_doc, Doc ]: # <<<<<<<<<<<<<< - * pass - * else: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line))); - __pyx_t_5 = ((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_doc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_18 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_18); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - if (!((int)__pyx_t_8)) { - __pyx_t_18 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_doc); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_18, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_7); - } else { - __pyx_t_9 = ((int)__pyx_t_8); - } - if (!__pyx_t_9) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Doc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_18 = PyObject_RichCompare(((PyObject *)__pyx_t_5), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_18); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_18); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; - __pyx_t_7 = ((int)__pyx_t_8); - } else { - __pyx_t_7 = __pyx_t_9; - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_9 = __pyx_t_7; - if (__pyx_t_9) { - goto __pyx_L8; - } - /*else*/ { - - /* "parsed_text.py":236 - * pass - * else: - * l = find_variables_in_line(line) # <<<<<<<<<<<<<< - * l = filter(lambda x: x not in varlist, l) - * append( (l,line) ) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s_19); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_XDECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":237 - * else: - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) # <<<<<<<<<<<<<< - * append( (l,line) ) - * return result - */ - __pyx_t_6 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda15, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_18 = PyTuple_New(2); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_18, 1, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_DECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":238 - * l = find_variables_in_line(line) - * l = filter(lambda x: x not in varlist, l) - * append( (l,line) ) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_cur_scope->__pyx_v_line); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_line); - __pyx_t_18 = PyTuple_New(1); if (unlikely(!__pyx_t_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_18)); - PyTuple_SET_ITEM(__pyx_t_18, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_18), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_18)); __pyx_t_18 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __pyx_L8:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":239 - * l = filter(lambda x: x not in varlist, l) - * append( (l,line) ) - * return result # <<<<<<<<<<<<<< - * - * #main_result = [] - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_15); - __Pyx_XDECREF(__pyx_t_16); - __Pyx_XDECREF(__pyx_t_18); - __Pyx_AddTraceback("parsed_text.get_parsed_text.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_append); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_variable_list); - __Pyx_XDECREF(__pyx_v_l); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_fun); - __Pyx_XDECREF(__pyx_v_main_vars); - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_sub); - __Pyx_XDECREF(__pyx_v_t); - __Pyx_XDECREF(__pyx_v_use); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":122 - * ################################################################################ - * - * def get_parsed_text(): # <<<<<<<<<<<<<< - * def func(filename, text): - * varlist = [] - */ - -static PyObject *__pyx_pf_11parsed_text_5get_parsed_text(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_5get_parsed_text = {__Pyx_NAMESTR("get_parsed_text"), (PyCFunction)__pyx_pf_11parsed_text_5get_parsed_text, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_5get_parsed_text(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_func = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_parsed_text"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":123 - * - * def get_parsed_text(): - * def func(filename, text): # <<<<<<<<<<<<<< - * varlist = [] - * result = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_15get_parsed_text_func, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_func); - __pyx_v_func = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":245 - * # main_result.append( (filename, func(filename,text)) ) - * #return main_result - * return parallel_loop(func,preprocessed_text) # <<<<<<<<<<<<<< - * - * update_variables() - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parallel_loop); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_func); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_func); - __Pyx_GIVEREF(__pyx_v_func); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("parsed_text.get_parsed_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_func); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":253 - * ###################################################################### - * - * def move_to_top(text,t): # <<<<<<<<<<<<<< - * assert type(text) == list - * assert t in [ NoDep, Declaration, Implicit, Use, Cont_provider ] - */ - -static PyObject *__pyx_pf_11parsed_text_6move_to_top(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_6move_to_top = {__Pyx_NAMESTR("move_to_top"), (PyCFunction)__pyx_pf_11parsed_text_6move_to_top, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_6move_to_top(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_t = 0; - int __pyx_v_inside; - Py_ssize_t __pyx_v_i; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_begin = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - int __pyx_t_6; - Py_ssize_t __pyx_t_7; - Py_ssize_t __pyx_t_8; - PyObject *__pyx_t_9 = NULL; - PyObject *(*__pyx_t_10)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__text,&__pyx_n_s__t,0}; - __Pyx_RefNannySetupContext("move_to_top"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__t); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("move_to_top", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "move_to_top") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_text = values[0]; - __pyx_v_t = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("move_to_top", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("parsed_text.move_to_top", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "parsed_text.py":254 - * - * def move_to_top(text,t): - * assert type(text) == list # <<<<<<<<<<<<<< - * assert t in [ NoDep, Declaration, Implicit, Use, Cont_provider ] - * - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":255 - * def move_to_top(text,t): - * assert type(text) == list - * assert t in [ NoDep, Declaration, Implicit, Use, Cont_provider ] # <<<<<<<<<<<<<< - * - * inside = False - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __Pyx_INCREF(__pyx_v_t); - __pyx_t_1 = __pyx_v_t; - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__NoDep); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (!((int)__pyx_t_2)) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = ((int)__pyx_t_2); - } - if (!__pyx_t_6) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_5 = ((int)__pyx_t_2); - } else { - __pyx_t_5 = __pyx_t_6; - } - if (!__pyx_t_5) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = ((int)__pyx_t_6); - } else { - __pyx_t_2 = __pyx_t_5; - } - if (!__pyx_t_2) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = __pyx_t_2; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_6)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "parsed_text.py":257 - * assert t in [ NoDep, Declaration, Implicit, Use, Cont_provider ] - * - * inside = False # <<<<<<<<<<<<<< - * for i in range(len(text)): - * vars, line = text[i] - */ - __pyx_v_inside = 0; - - /* "parsed_text.py":258 - * - * inside = False - * for i in range(len(text)): # <<<<<<<<<<<<<< - * vars, line = text[i] - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - */ - __pyx_t_7 = PyObject_Length(__pyx_v_text); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - for (__pyx_t_8 = 0; __pyx_t_8 < __pyx_t_7; __pyx_t_8+=1) { - __pyx_v_i = __pyx_t_8; - - /* "parsed_text.py":259 - * inside = False - * for i in range(len(text)): - * vars, line = text[i] # <<<<<<<<<<<<<< - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * begin = i - */ - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_text, __pyx_v_i, sizeof(Py_ssize_t), PyInt_FromSsize_t); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_4 = PyList_GET_ITEM(sequence, 0); - __pyx_t_3 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_4); - __Pyx_INCREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext; - index = 0; __pyx_t_4 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_4)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_4); - index = 1; __pyx_t_3 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_3)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L9_unpacking_done; - __pyx_L8_unpacking_failed:; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L9_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_4; - __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_3; - __pyx_t_3 = 0; - - /* "parsed_text.py":260 - * for i in range(len(text)): - * vars, line = text[i] - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: # <<<<<<<<<<<<<< - * begin = i - * inside = True - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (!((int)__pyx_t_6)) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = ((int)__pyx_t_2); - } else { - __pyx_t_5 = ((int)__pyx_t_6); - } - if (!__pyx_t_5) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = ((int)__pyx_t_6); - } else { - __pyx_t_2 = __pyx_t_5; - } - if (!__pyx_t_2) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = __pyx_t_2; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_2 = __pyx_t_6; - if (__pyx_t_2) { - - /* "parsed_text.py":261 - * vars, line = text[i] - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * begin = i # <<<<<<<<<<<<<< - * inside = True - * elif type(line) in [ End_provider, End ]: - */ - __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_begin); - __pyx_v_begin = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":262 - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * begin = i - * inside = True # <<<<<<<<<<<<<< - * elif type(line) in [ End_provider, End ]: - * inside = False - */ - __pyx_v_inside = 1; - goto __pyx_L10; - } - - /* "parsed_text.py":263 - * begin = i - * inside = True - * elif type(line) in [ End_provider, End ]: # <<<<<<<<<<<<<< - * inside = False - * elif type(line) == t: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (!((int)__pyx_t_2)) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 263; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = ((int)__pyx_t_6); - } else { - __pyx_t_5 = ((int)__pyx_t_2); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_2 = __pyx_t_5; - if (__pyx_t_2) { - - /* "parsed_text.py":264 - * inside = True - * elif type(line) in [ End_provider, End ]: - * inside = False # <<<<<<<<<<<<<< - * elif type(line) == t: - * if inside: - */ - __pyx_v_inside = 0; - goto __pyx_L10; - } - - /* "parsed_text.py":265 - * elif type(line) in [ End_provider, End ]: - * inside = False - * elif type(line) == t: # <<<<<<<<<<<<<< - * if inside: - * text.pop(i) - */ - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_v_t, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "parsed_text.py":266 - * inside = False - * elif type(line) == t: - * if inside: # <<<<<<<<<<<<<< - * text.pop(i) - * begin += 1 - */ - if (__pyx_v_inside) { - - /* "parsed_text.py":267 - * elif type(line) == t: - * if inside: - * text.pop(i) # <<<<<<<<<<<<<< - * begin += 1 - * text.insert(begin,(vars,line)) - */ - __pyx_t_1 = __Pyx_PyObject_PopIndex(__pyx_v_text, __pyx_v_i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_v_begin)) { __Pyx_RaiseUnboundLocalError("begin"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_begin, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "parsed_text.py":268 - * if inside: - * text.pop(i) - * begin += 1 # <<<<<<<<<<<<<< - * text.insert(begin,(vars,line)) - * - */ - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_begin); - __pyx_v_begin = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":269 - * text.pop(i) - * begin += 1 - * text.insert(begin,(vars,line)) # <<<<<<<<<<<<<< - * - * return text - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_text, __pyx_n_s__insert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_begin); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_begin); - __Pyx_GIVEREF(__pyx_v_begin); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L11; - } - __pyx_L11:; - goto __pyx_L10; - } - __pyx_L10:; - } - - /* "parsed_text.py":271 - * text.insert(begin,(vars,line)) - * - * return text # <<<<<<<<<<<<<< - * - * result = [] - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_text); - __pyx_r = __pyx_v_text; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("parsed_text.move_to_top", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_begin); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":285 - * - * ###################################################################### - * def build_sub_needs(): # <<<<<<<<<<<<<< - * # Needs - * for filename, text in parsed_text: - */ - -static PyObject *__pyx_pf_11parsed_text_7build_sub_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_7build_sub_needs = {__Pyx_NAMESTR("build_sub_needs"), (PyCFunction)__pyx_pf_11parsed_text_7build_sub_needs, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_7build_sub_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_sub = NULL; - int __pyx_v_in_program; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_subname = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); - PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - int __pyx_t_13; - int __pyx_t_14; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("build_sub_needs"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":287 - * def build_sub_needs(): - * # Needs - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * sub = None - * in_program = False - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":288 - * # Needs - * for filename, text in parsed_text: - * sub = None # <<<<<<<<<<<<<< - * in_program = False - * for vars,line in text: - */ - __Pyx_INCREF(Py_None); - __Pyx_XDECREF(__pyx_v_sub); - __pyx_v_sub = Py_None; - - /* "parsed_text.py":289 - * for filename, text in parsed_text: - * sub = None - * in_program = False # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: - */ - __pyx_v_in_program = 0; - - /* "parsed_text.py":290 - * sub = None - * in_program = False - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Subroutine, Function ]: - * subname = find_subname(line) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { - PyObject* sequence = __pyx_t_6; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_11 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L12_unpacking_done; - __pyx_L11_unpacking_failed:; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L12_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":291 - * in_program = False - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: # <<<<<<<<<<<<<< - * subname = find_subname(line) - * sub = subroutines[subname] - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_6 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_12 = __pyx_t_14; - if (__pyx_t_12) { - - /* "parsed_text.py":292 - * for vars,line in text: - * if type(line) in [ Subroutine, Function ]: - * subname = find_subname(line) # <<<<<<<<<<<<<< - * sub = subroutines[subname] - * sub._needs = [] - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_subname); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_subname); - __pyx_v_subname = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":293 - * if type(line) in [ Subroutine, Function ]: - * subname = find_subname(line) - * sub = subroutines[subname] # <<<<<<<<<<<<<< - * sub._needs = [] - * sub._to_provide = [] - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetItem(__pyx_t_5, __pyx_v_subname); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_sub); - __pyx_v_sub = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":294 - * subname = find_subname(line) - * sub = subroutines[subname] - * sub._needs = [] # <<<<<<<<<<<<<< - * sub._to_provide = [] - * elif type(line) == End: - */ - __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___needs, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - - /* "parsed_text.py":295 - * sub = subroutines[subname] - * sub._needs = [] - * sub._to_provide = [] # <<<<<<<<<<<<<< - * elif type(line) == End: - * if not in_program: - */ - __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___to_provide, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - goto __pyx_L13; - } - - /* "parsed_text.py":296 - * sub._needs = [] - * sub._to_provide = [] - * elif type(line) == End: # <<<<<<<<<<<<<< - * if not in_program: - * sub._needs = make_single(sub._needs) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":297 - * sub._to_provide = [] - * elif type(line) == End: - * if not in_program: # <<<<<<<<<<<<<< - * sub._needs = make_single(sub._needs) - * sub._to_provide = make_single(sub._to_provide) - */ - __pyx_t_12 = (!__pyx_v_in_program); - if (__pyx_t_12) { - - /* "parsed_text.py":298 - * elif type(line) == End: - * if not in_program: - * sub._needs = make_single(sub._needs) # <<<<<<<<<<<<<< - * sub._to_provide = make_single(sub._to_provide) - * sub = None - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_sub, __pyx_n_s___needs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___needs, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "parsed_text.py":299 - * if not in_program: - * sub._needs = make_single(sub._needs) - * sub._to_provide = make_single(sub._to_provide) # <<<<<<<<<<<<<< - * sub = None - * elif type(line) == Program: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_sub, __pyx_n_s___to_provide); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___to_provide, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":300 - * sub._needs = make_single(sub._needs) - * sub._to_provide = make_single(sub._to_provide) - * sub = None # <<<<<<<<<<<<<< - * elif type(line) == Program: - * in_program = True - */ - __Pyx_INCREF(Py_None); - __Pyx_DECREF(__pyx_v_sub); - __pyx_v_sub = Py_None; - goto __pyx_L14; - } - __pyx_L14:; - goto __pyx_L13; - } - - /* "parsed_text.py":301 - * sub._to_provide = make_single(sub._to_provide) - * sub = None - * elif type(line) == Program: # <<<<<<<<<<<<<< - * in_program = True - * if sub is not None: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":302 - * sub = None - * elif type(line) == Program: - * in_program = True # <<<<<<<<<<<<<< - * if sub is not None: - * if type(line) == Declaration: - */ - __pyx_v_in_program = 1; - goto __pyx_L13; - } - __pyx_L13:; - - /* "parsed_text.py":303 - * elif type(line) == Program: - * in_program = True - * if sub is not None: # <<<<<<<<<<<<<< - * if type(line) == Declaration: - * sub._to_provide += vars - */ - __pyx_t_12 = (__pyx_v_sub != Py_None); - if (__pyx_t_12) { - - /* "parsed_text.py":304 - * in_program = True - * if sub is not None: - * if type(line) == Declaration: # <<<<<<<<<<<<<< - * sub._to_provide += vars - * sub._needs += vars - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":305 - * if sub is not None: - * if type(line) == Declaration: - * sub._to_provide += vars # <<<<<<<<<<<<<< - * sub._needs += vars - * - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_sub, __pyx_n_s___to_provide); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_t_6, __pyx_v_vars); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___to_provide, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L16; - } - __pyx_L16:; - - /* "parsed_text.py":306 - * if type(line) == Declaration: - * sub._to_provide += vars - * sub._needs += vars # <<<<<<<<<<<<<< - * - * build_sub_needs() - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_sub, __pyx_n_s___needs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_t_5, __pyx_v_vars); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_v_sub, __pyx_n_s___needs, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L15; - } - __pyx_L15:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("parsed_text.build_sub_needs", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_sub); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_subname); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":312 - * ##################################################################### - * - * def add_subroutine_needs(): # <<<<<<<<<<<<<< - * main_result = [] - * for filename, text in parsed_text: - */ - -static PyObject *__pyx_pf_11parsed_text_8add_subroutine_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_8add_subroutine_needs = {__Pyx_NAMESTR("add_subroutine_needs"), (PyCFunction)__pyx_pf_11parsed_text_8add_subroutine_needs, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_8add_subroutine_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_main_result = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_append = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_subname = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); - PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - int __pyx_t_13; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("add_subroutine_needs"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":313 - * - * def add_subroutine_needs(): - * main_result = [] # <<<<<<<<<<<<<< - * for filename, text in parsed_text: - * result = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_main_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":314 - * def add_subroutine_needs(): - * main_result = [] - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":315 - * main_result = [] - * for filename, text in parsed_text: - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * for vars,line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_XDECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":316 - * for filename, text in parsed_text: - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) == Call: - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_append); - __pyx_v_append = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":317 - * result = [] - * append = result.append - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) == Call: - * subname = find_subname(line) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { - PyObject* sequence = __pyx_t_6; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_11 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L12_unpacking_done; - __pyx_L11_unpacking_failed:; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L12_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":318 - * append = result.append - * for vars,line in text: - * if type(line) == Call: # <<<<<<<<<<<<<< - * subname = find_subname(line) - * vars += subroutines[subname].to_provide - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":319 - * for vars,line in text: - * if type(line) == Call: - * subname = find_subname(line) # <<<<<<<<<<<<<< - * vars += subroutines[subname].to_provide - * append( (vars,line) ) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_subname); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_5 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 319; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_subname); - __pyx_v_subname = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":320 - * if type(line) == Call: - * subname = find_subname(line) - * vars += subroutines[subname].to_provide # <<<<<<<<<<<<<< - * append( (vars,line) ) - * main_result.append( (filename, result) ) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetItem(__pyx_t_5, __pyx_v_subname); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__to_provide); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_vars, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 320; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L13; - } - __pyx_L13:; - - /* "parsed_text.py":321 - * subname = find_subname(line) - * vars += subroutines[subname].to_provide - * append( (vars,line) ) # <<<<<<<<<<<<<< - * main_result.append( (filename, result) ) - * return main_result - */ - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":322 - * vars += subroutines[subname].to_provide - * append( (vars,line) ) - * main_result.append( (filename, result) ) # <<<<<<<<<<<<<< - * return main_result - * - */ - if (unlikely(((PyObject *)__pyx_v_main_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_result)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_result)); - __pyx_t_13 = PyList_Append(__pyx_v_main_result, ((PyObject *)__pyx_t_1)); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":323 - * append( (vars,line) ) - * main_result.append( (filename, result) ) - * return main_result # <<<<<<<<<<<<<< - * - * parsed_text = add_subroutine_needs() - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_main_result)); - __pyx_r = ((PyObject *)__pyx_v_main_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("parsed_text.add_subroutine_needs", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_main_result); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_append); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_subname); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":368 - * ifvars += list(varlist) - * append( (varlist,line) ) - * vars += filter(lambda x: x in elsevars, ifvars) # <<<<<<<<<<<<<< - * ifvars = old_ifvars.pop() - * elsevars = old_elsevars.pop() - */ - -static PyObject *__pyx_lambda_funcdef_lambda16(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda16 = {__Pyx_NAMESTR("lambda16"), (PyCFunction)__pyx_lambda_funcdef_lambda16, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda16(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda16"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_elsevars)) { __Pyx_RaiseClosureNameError("elsevars"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = ((PySequence_Contains(__pyx_cur_scope->__pyx_v_elsevars, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.move_variables.func.lambda16", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":404 - * elif type(line) in [ If, Select ]: - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) # <<<<<<<<<<<<<< - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - */ - -static PyObject *__pyx_lambda_funcdef_lambda17(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda17 = {__Pyx_NAMESTR("lambda17"), (PyCFunction)__pyx_lambda_funcdef_lambda17, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda17(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda17"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_varlist)) { __Pyx_RaiseClosureNameError("varlist"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.move_variables.func.lambda17", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":410 - * varlist = old_varlist.pop() - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) # <<<<<<<<<<<<<< - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - */ - -static PyObject *__pyx_lambda_funcdef_lambda18(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda18 = {__Pyx_NAMESTR("lambda18"), (PyCFunction)__pyx_lambda_funcdef_lambda18, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda18(PyObject *__pyx_self, PyObject *__pyx_v_x) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_cur_scope; - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda18"); - __pyx_outer_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_varlist)) { __Pyx_RaiseClosureNameError("varlist"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_x))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("parsed_text.move_variables.func.lambda18", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":330 - * def move_variables(): - * - * def func(filename, text): # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - -static PyObject *__pyx_pf_11parsed_text_14move_variables_func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_14move_variables_func = {__Pyx_NAMESTR("func"), (PyCFunction)__pyx_pf_11parsed_text_14move_variables_func, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_14move_variables_func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *__pyx_cur_scope; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_append = NULL; - PyObject *__pyx_v_ifvars = NULL; - PyObject *__pyx_v_old_varlist = NULL; - PyObject *__pyx_v_old_ifvars = NULL; - PyObject *__pyx_v_old_elsevars = NULL; - PyObject *__pyx_v_revtext = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - Py_ssize_t __pyx_t_7; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - PyObject *(*__pyx_t_11)(PyObject *); - int __pyx_t_12; - int __pyx_t_13; - int __pyx_t_14; - int __pyx_t_15; - PyObject *__pyx_t_16 = NULL; - PyObject *(*__pyx_t_17)(PyObject *); - Py_ssize_t __pyx_t_18; - PyObject *(*__pyx_t_19)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__filename,&__pyx_n_s__text,0}; - __Pyx_RefNannySetupContext("func"); - __pyx_cur_scope = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)__pyx_ptype_11parsed_text___pyx_scope_struct_2_func->tp_new(__pyx_ptype_11parsed_text___pyx_scope_struct_2_func, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("func", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "func") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_filename = values[0]; - __pyx_v_text = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("func", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("parsed_text.move_variables.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_INCREF(__pyx_v_text); - - /* "parsed_text.py":331 - * - * def func(filename, text): - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * # 1st pass - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":332 - * def func(filename, text): - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * # 1st pass - * varlist = [] - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_append = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":334 - * append = result.append - * # 1st pass - * varlist = [] # <<<<<<<<<<<<<< - * ifvars = [] - * elsevars = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 334; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":335 - * # 1st pass - * varlist = [] - * ifvars = [] # <<<<<<<<<<<<<< - * elsevars = [] - * old_varlist = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_ifvars = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":336 - * varlist = [] - * ifvars = [] - * elsevars = [] # <<<<<<<<<<<<<< - * old_varlist = [] - * old_ifvars = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_elsevars = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":337 - * ifvars = [] - * elsevars = [] - * old_varlist = [] # <<<<<<<<<<<<<< - * old_ifvars = [] - * old_elsevars = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_old_varlist = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":338 - * elsevars = [] - * old_varlist = [] - * old_ifvars = [] # <<<<<<<<<<<<<< - * old_elsevars = [] - * revtext = list(text) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_old_ifvars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":339 - * old_varlist = [] - * old_ifvars = [] - * old_elsevars = [] # <<<<<<<<<<<<<< - * revtext = list(text) - * revtext.reverse() - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_old_elsevars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":340 - * old_ifvars = [] - * old_elsevars = [] - * revtext = list(text) # <<<<<<<<<<<<<< - * revtext.reverse() - * try: - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_revtext = ((PyObject*)__pyx_t_2); - __pyx_t_2 = 0; - - /* "parsed_text.py":341 - * old_elsevars = [] - * revtext = list(text) - * revtext.reverse() # <<<<<<<<<<<<<< - * try: - * for vars,line in revtext: - */ - if (unlikely(((PyObject *)__pyx_v_revtext) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "reverse"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyList_Reverse(__pyx_v_revtext); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "parsed_text.py":342 - * revtext = list(text) - * revtext.reverse() - * try: # <<<<<<<<<<<<<< - * for vars,line in revtext: - * if type(line) in [ End_provider,End ]: - */ - { - __Pyx_ExceptionSave(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_6); - /*try:*/ { - - /* "parsed_text.py":343 - * revtext.reverse() - * try: - * for vars,line in revtext: # <<<<<<<<<<<<<< - * if type(line) in [ End_provider,End ]: - * varlist = [] - */ - if (unlikely(((PyObject *)__pyx_v_revtext) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_revtext); __Pyx_INCREF(__pyx_t_2); __pyx_t_7 = 0; - for (;;) { - if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_8 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_8 = PyList_GET_ITEM(sequence, 0); - __pyx_t_9 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_10 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext; - index = 0; __pyx_t_8 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_8)) goto __pyx_L16_unpacking_failed; - __Pyx_GOTREF(__pyx_t_8); - index = 1; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L16_unpacking_failed; - __Pyx_GOTREF(__pyx_t_9); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - goto __pyx_L17_unpacking_done; - __pyx_L16_unpacking_failed:; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __pyx_L17_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_8; - __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":344 - * try: - * for vars,line in revtext: - * if type(line) in [ End_provider,End ]: # <<<<<<<<<<<<<< - * varlist = [] - * append( ([],line) ) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_12 = __pyx_t_14; - if (__pyx_t_12) { - - /* "parsed_text.py":345 - * for vars,line in revtext: - * if type(line) in [ End_provider,End ]: - * varlist = [] # <<<<<<<<<<<<<< - * append( ([],line) ) - * elif type(line) in [ Endif, End_select ]: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":346 - * if type(line) in [ End_provider,End ]: - * varlist = [] - * append( ([],line) ) # <<<<<<<<<<<<<< - * elif type(line) in [ Endif, End_select ]: - * old_ifvars.append( list(ifvars) ) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":347 - * varlist = [] - * append( ([],line) ) - * elif type(line) in [ Endif, End_select ]: # <<<<<<<<<<<<<< - * old_ifvars.append( list(ifvars) ) - * old_elsevars.append( list(elsevars) ) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_9 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_9), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_select); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_9), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_14 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 347; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_13 = ((int)__pyx_t_14); - } else { - __pyx_t_13 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __pyx_t_13; - if (__pyx_t_12) { - - /* "parsed_text.py":348 - * append( ([],line) ) - * elif type(line) in [ Endif, End_select ]: - * old_ifvars.append( list(ifvars) ) # <<<<<<<<<<<<<< - * old_elsevars.append( list(elsevars) ) - * old_varlist.append( list(varlist) ) - */ - if (unlikely(((PyObject *)__pyx_v_old_ifvars) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_ifvars); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_ifvars); - __Pyx_GIVEREF(__pyx_v_ifvars); - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_3 = PyList_Append(__pyx_v_old_ifvars, __pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 348; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":349 - * elif type(line) in [ Endif, End_select ]: - * old_ifvars.append( list(ifvars) ) - * old_elsevars.append( list(elsevars) ) # <<<<<<<<<<<<<< - * old_varlist.append( list(varlist) ) - * varlist = [] - */ - if (unlikely(((PyObject *)__pyx_v_old_elsevars) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_elsevars); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_elsevars); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_elsevars); - __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_3 = PyList_Append(__pyx_v_old_elsevars, __pyx_t_9); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "parsed_text.py":350 - * old_ifvars.append( list(ifvars) ) - * old_elsevars.append( list(elsevars) ) - * old_varlist.append( list(varlist) ) # <<<<<<<<<<<<<< - * varlist = [] - * append( ([],line) ) - */ - if (unlikely(((PyObject *)__pyx_v_old_varlist) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_3 = PyList_Append(__pyx_v_old_varlist, __pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":351 - * old_elsevars.append( list(elsevars) ) - * old_varlist.append( list(varlist) ) - * varlist = [] # <<<<<<<<<<<<<< - * append( ([],line) ) - * elif type(line) == Else: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "parsed_text.py":352 - * old_varlist.append( list(varlist) ) - * varlist = [] - * append( ([],line) ) # <<<<<<<<<<<<<< - * elif type(line) == Else: - * elsevars += list(varlist) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":353 - * varlist = [] - * append( ([],line) ) - * elif type(line) == Else: # <<<<<<<<<<<<<< - * elsevars += list(varlist) - * append( (varlist,line) ) - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Else); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":354 - * append( ([],line) ) - * elif type(line) == Else: - * elsevars += list(varlist) # <<<<<<<<<<<<<< - * append( (varlist,line) ) - * varlist = [] - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_cur_scope->__pyx_v_elsevars, __pyx_t_9); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_elsevars); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_elsevars); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_elsevars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":355 - * elif type(line) == Else: - * elsevars += list(varlist) - * append( (varlist,line) ) # <<<<<<<<<<<<<< - * varlist = [] - * elif type(line) in [ Elseif, Case ]: - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":356 - * elsevars += list(varlist) - * append( (varlist,line) ) - * varlist = [] # <<<<<<<<<<<<<< - * elif type(line) in [ Elseif, Case ]: - * ifvars += list(varlist) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":357 - * append( (varlist,line) ) - * varlist = [] - * elif type(line) in [ Elseif, Case ]: # <<<<<<<<<<<<<< - * ifvars += list(varlist) - * append( (varlist,line) ) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Elseif); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Case); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_12 = __pyx_t_14; - if (__pyx_t_12) { - - /* "parsed_text.py":358 - * varlist = [] - * elif type(line) in [ Elseif, Case ]: - * ifvars += list(varlist) # <<<<<<<<<<<<<< - * append( (varlist,line) ) - * if vars != []: - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_ifvars, __pyx_t_9); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_v_ifvars); - __pyx_v_ifvars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":359 - * elif type(line) in [ Elseif, Case ]: - * ifvars += list(varlist) - * append( (varlist,line) ) # <<<<<<<<<<<<<< - * if vars != []: - * varlist = old_varlist.pop() - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":360 - * ifvars += list(varlist) - * append( (varlist,line) ) - * if vars != []: # <<<<<<<<<<<<<< - * varlist = old_varlist.pop() - * varlist += vars - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_9 = PyObject_RichCompare(__pyx_v_vars, ((PyObject *)__pyx_t_1), Py_NE); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":361 - * append( (varlist,line) ) - * if vars != []: - * varlist = old_varlist.pop() # <<<<<<<<<<<<<< - * varlist += vars - * old_varlist.append( list(varlist) ) - */ - __pyx_t_9 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_varlist)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":362 - * if vars != []: - * varlist = old_varlist.pop() - * varlist += vars # <<<<<<<<<<<<<< - * old_varlist.append( list(varlist) ) - * varlist = [] - */ - __pyx_t_9 = PyNumber_InPlaceAdd(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_vars); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":363 - * varlist = old_varlist.pop() - * varlist += vars - * old_varlist.append( list(varlist) ) # <<<<<<<<<<<<<< - * varlist = [] - * elif type(line) in [ If, Select ]: - */ - if (unlikely(((PyObject *)__pyx_v_old_varlist) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - } - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_3 = PyList_Append(__pyx_v_old_varlist, __pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L19; - } - __pyx_L19:; - - /* "parsed_text.py":364 - * varlist += vars - * old_varlist.append( list(varlist) ) - * varlist = [] # <<<<<<<<<<<<<< - * elif type(line) in [ If, Select ]: - * ifvars += list(varlist) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":365 - * old_varlist.append( list(varlist) ) - * varlist = [] - * elif type(line) in [ If, Select ]: # <<<<<<<<<<<<<< - * ifvars += list(varlist) - * append( (varlist,line) ) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Select); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_14 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_13 = ((int)__pyx_t_14); - } else { - __pyx_t_13 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_12 = __pyx_t_13; - if (__pyx_t_12) { - - /* "parsed_text.py":366 - * varlist = [] - * elif type(line) in [ If, Select ]: - * ifvars += list(varlist) # <<<<<<<<<<<<<< - * append( (varlist,line) ) - * vars += filter(lambda x: x in elsevars, ifvars) - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_ifvars, __pyx_t_9); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_v_ifvars); - __pyx_v_ifvars = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":367 - * elif type(line) in [ If, Select ]: - * ifvars += list(varlist) - * append( (varlist,line) ) # <<<<<<<<<<<<<< - * vars += filter(lambda x: x in elsevars, ifvars) - * ifvars = old_ifvars.pop() - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":368 - * ifvars += list(varlist) - * append( (varlist,line) ) - * vars += filter(lambda x: x in elsevars, ifvars) # <<<<<<<<<<<<<< - * ifvars = old_ifvars.pop() - * elsevars = old_elsevars.pop() - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda16, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_ifvars); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_ifvars); - __Pyx_GIVEREF(__pyx_v_ifvars); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_InPlaceAdd(__pyx_v_vars, __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":369 - * append( (varlist,line) ) - * vars += filter(lambda x: x in elsevars, ifvars) - * ifvars = old_ifvars.pop() # <<<<<<<<<<<<<< - * elsevars = old_elsevars.pop() - * varlist = old_varlist.pop() + vars - */ - __pyx_t_9 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_ifvars)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_v_ifvars); - __pyx_v_ifvars = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":370 - * vars += filter(lambda x: x in elsevars, ifvars) - * ifvars = old_ifvars.pop() - * elsevars = old_elsevars.pop() # <<<<<<<<<<<<<< - * varlist = old_varlist.pop() + vars - * elif type(line) in [ Begin_provider, Program, Subroutine, Function ]: - */ - __pyx_t_9 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_elsevars)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_elsevars); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_elsevars); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_v_elsevars = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":371 - * ifvars = old_ifvars.pop() - * elsevars = old_elsevars.pop() - * varlist = old_varlist.pop() + vars # <<<<<<<<<<<<<< - * elif type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist += vars - */ - __pyx_t_9 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_varlist)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = PyNumber_Add(__pyx_t_9, __pyx_v_vars); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":372 - * elsevars = old_elsevars.pop() - * varlist = old_varlist.pop() + vars - * elif type(line) in [ Begin_provider, Program, Subroutine, Function ]: # <<<<<<<<<<<<<< - * varlist += vars - * append( (varlist,line) ) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - if (!__pyx_t_14) { - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_13 = ((int)__pyx_t_12); - } else { - __pyx_t_13 = __pyx_t_14; - } - if (!__pyx_t_13) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_14 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_12 = ((int)__pyx_t_14); - } else { - __pyx_t_12 = __pyx_t_13; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_13 = __pyx_t_12; - if (__pyx_t_13) { - - /* "parsed_text.py":373 - * varlist = old_varlist.pop() + vars - * elif type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist += vars # <<<<<<<<<<<<<< - * append( (varlist,line) ) - * if old_varlist != [] \ - */ - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_vars); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":374 - * elif type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist += vars - * append( (varlist,line) ) # <<<<<<<<<<<<<< - * if old_varlist != [] \ - * or old_ifvars != [] \ - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_varlist); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":375 - * varlist += vars - * append( (varlist,line) ) - * if old_varlist != [] \ # <<<<<<<<<<<<<< - * or old_ifvars != [] \ - * or old_elsevars != []: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_v_old_varlist), ((PyObject *)__pyx_t_1), Py_NE); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_13 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (!__pyx_t_13) { - - /* "parsed_text.py":376 - * append( (varlist,line) ) - * if old_varlist != [] \ - * or old_ifvars != [] \ # <<<<<<<<<<<<<< - * or old_elsevars != []: - * error.fail(line,"End if missing") - */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_v_old_ifvars), ((PyObject *)__pyx_t_9), Py_NE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_12) { - - /* "parsed_text.py":377 - * if old_varlist != [] \ - * or old_ifvars != [] \ - * or old_elsevars != []: # <<<<<<<<<<<<<< - * error.fail(line,"End if missing") - * varlist = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)__pyx_v_old_elsevars), ((PyObject *)__pyx_t_1), Py_NE); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_15 = __pyx_t_14; - } else { - __pyx_t_15 = __pyx_t_12; - } - __pyx_t_12 = __pyx_t_15; - } else { - __pyx_t_12 = __pyx_t_13; - } - if (__pyx_t_12) { - - /* "parsed_text.py":378 - * or old_ifvars != [] \ - * or old_elsevars != []: - * error.fail(line,"End if missing") # <<<<<<<<<<<<<< - * varlist = [] - * elif type(line) == Provide_all: - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_9, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_28)); - PyTuple_SET_ITEM(__pyx_t_9, 1, ((PyObject *)__pyx_kp_s_28)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_28)); - __pyx_t_8 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L20; - } - __pyx_L20:; - - /* "parsed_text.py":379 - * or old_elsevars != []: - * error.fail(line,"End if missing") - * varlist = [] # <<<<<<<<<<<<<< - * elif type(line) == Provide_all: - * append( (vars,line) ) - */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 379; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_8); - __pyx_t_8 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":380 - * error.fail(line,"End if missing") - * varlist = [] - * elif type(line) == Provide_all: # <<<<<<<<<<<<<< - * append( (vars,line) ) - * else: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":381 - * varlist = [] - * elif type(line) == Provide_all: - * append( (vars,line) ) # <<<<<<<<<<<<<< - * else: - * varlist += vars - */ - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L18; - } - /*else*/ { - - /* "parsed_text.py":383 - * append( (vars,line) ) - * else: - * varlist += vars # <<<<<<<<<<<<<< - * append( ([],line) ) - * except: - */ - __pyx_t_9 = PyNumber_InPlaceAdd(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_vars); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":384 - * else: - * varlist += vars - * append( ([],line) ) # <<<<<<<<<<<<<< - * except: - * error.fail(line,"Unable to parse file") - */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, ((PyObject *)__pyx_t_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L6_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } - __pyx_L18:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L13_try_end; - __pyx_L6_error:; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":385 - * varlist += vars - * append( ([],line) ) - * except: # <<<<<<<<<<<<<< - * error.fail(line,"Unable to parse file") - * - */ - /*except:*/ { - __Pyx_AddTraceback("parsed_text.move_variables.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_8, &__pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_t_8); - __Pyx_GOTREF(__pyx_t_9); - - /* "parsed_text.py":386 - * append( ([],line) ) - * except: - * error.fail(line,"Unable to parse file") # <<<<<<<<<<<<<< - * - * result.reverse() - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_v_line)) { __Pyx_RaiseUnboundLocalError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} }__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_29)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_29)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_29)); - __pyx_t_16 = PyObject_Call(__pyx_t_10, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L7_exception_handled; - } - __pyx_L8_except_error:; - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6); - goto __pyx_L1_error; - __pyx_L7_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6); - __pyx_L13_try_end:; - } - - /* "parsed_text.py":388 - * error.fail(line,"Unable to parse file") - * - * result.reverse() # <<<<<<<<<<<<<< - * - * # 2nd pass - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "reverse"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyList_Reverse(__pyx_v_result); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 388; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "parsed_text.py":391 - * - * # 2nd pass - * text = result # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __Pyx_DECREF(__pyx_v_text); - __pyx_v_text = ((PyObject *)__pyx_v_result); - - /* "parsed_text.py":392 - * # 2nd pass - * text = result - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * old_varlist = [] - */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 392; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":393 - * text = result - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * old_varlist = [] - * varlist = [] - */ - __pyx_t_9 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_v_append); - __pyx_v_append = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":394 - * result = [] - * append = result.append - * old_varlist = [] # <<<<<<<<<<<<<< - * varlist = [] - * try: - */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_v_old_varlist)); - __pyx_v_old_varlist = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":395 - * append = result.append - * old_varlist = [] - * varlist = [] # <<<<<<<<<<<<<< - * try: - * for vars,line in text: - */ - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 395; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_9); - __pyx_t_9 = 0; - - /* "parsed_text.py":396 - * old_varlist = [] - * varlist = [] - * try: # <<<<<<<<<<<<<< - * for vars,line in text: - * if vars != []: - */ - { - __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_5, &__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_5); - __Pyx_XGOTREF(__pyx_t_4); - /*try:*/ { - - /* "parsed_text.py":397 - * varlist = [] - * try: - * for vars,line in text: # <<<<<<<<<<<<<< - * if vars != []: - * vars = make_single(vars) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_9 = __pyx_v_text; __Pyx_INCREF(__pyx_t_9); __pyx_t_7 = 0; - __pyx_t_17 = NULL; - } else { - __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_17 = Py_TYPE(__pyx_t_9)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_9)) { - if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_9)) break; - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_8); __pyx_t_7++; - } else if (PyTuple_CheckExact(__pyx_t_9)) { - if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_8); __pyx_t_7++; - } else { - __pyx_t_8 = __pyx_t_17(__pyx_t_9); - if (unlikely(!__pyx_t_8)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_8); - } - if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) { - PyObject* sequence = __pyx_t_8; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_16 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - __pyx_t_2 = PyList_GET_ITEM(sequence, 0); - __pyx_t_16 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_2); - __Pyx_INCREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_1 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_11 = Py_TYPE(__pyx_t_1)->tp_iternext; - index = 0; __pyx_t_2 = __pyx_t_11(__pyx_t_1); if (unlikely(!__pyx_t_2)) goto __pyx_L33_unpacking_failed; - __Pyx_GOTREF(__pyx_t_2); - index = 1; __pyx_t_16 = __pyx_t_11(__pyx_t_1); if (unlikely(!__pyx_t_16)) goto __pyx_L33_unpacking_failed; - __Pyx_GOTREF(__pyx_t_16); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_1), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L34_unpacking_done; - __pyx_L33_unpacking_failed:; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __pyx_L34_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_2; - __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_16; - __pyx_t_16 = 0; - - /* "parsed_text.py":398 - * try: - * for vars,line in text: - * if vars != []: # <<<<<<<<<<<<<< - * vars = make_single(vars) - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __pyx_t_16 = PyObject_RichCompare(__pyx_v_vars, ((PyObject *)__pyx_t_8), Py_NE); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":399 - * for vars,line in text: - * if vars != []: - * vars = make_single(vars) # <<<<<<<<<<<<<< - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist = list(vars) - */ - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_2 = PyObject_Call(__pyx_t_16, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L35; - } - __pyx_L35:; - - /* "parsed_text.py":400 - * if vars != []: - * vars = make_single(vars) - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: # <<<<<<<<<<<<<< - * varlist = list(vars) - * elif type(line) in [ If, Select ]: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_2 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_15 = ((int)__pyx_t_13); - } else { - __pyx_t_15 = ((int)__pyx_t_12); - } - if (!__pyx_t_15) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_13 = ((int)__pyx_t_12); - } else { - __pyx_t_13 = __pyx_t_15; - } - if (!__pyx_t_13) { - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_15 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = ((int)__pyx_t_15); - } else { - __pyx_t_12 = __pyx_t_13; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_13 = __pyx_t_12; - if (__pyx_t_13) { - - /* "parsed_text.py":401 - * vars = make_single(vars) - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist = list(vars) # <<<<<<<<<<<<<< - * elif type(line) in [ If, Select ]: - * old_varlist.append(varlist) - */ - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_8 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 401; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_8; - __pyx_t_8 = 0; - goto __pyx_L36; - } - - /* "parsed_text.py":402 - * if type(line) in [ Begin_provider, Program, Subroutine, Function ]: - * varlist = list(vars) - * elif type(line) in [ If, Select ]: # <<<<<<<<<<<<<< - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_8 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)__pyx_t_8), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (!((int)__pyx_t_13)) { - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Select); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_8), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 402; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_15 = ((int)__pyx_t_12); - } else { - __pyx_t_15 = ((int)__pyx_t_13); - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_13 = __pyx_t_15; - if (__pyx_t_13) { - - /* "parsed_text.py":403 - * varlist = list(vars) - * elif type(line) in [ If, Select ]: - * old_varlist.append(varlist) # <<<<<<<<<<<<<< - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) - */ - if (unlikely(((PyObject *)__pyx_v_old_varlist) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - __pyx_t_8 = __pyx_cur_scope->__pyx_v_varlist; - __Pyx_INCREF(__pyx_t_8); - __pyx_t_3 = PyList_Append(__pyx_v_old_varlist, __pyx_t_8); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - - /* "parsed_text.py":404 - * elif type(line) in [ If, Select ]: - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) # <<<<<<<<<<<<<< - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - */ - __pyx_t_8 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda17, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_8; - __pyx_t_8 = 0; - - /* "parsed_text.py":405 - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) # <<<<<<<<<<<<<< - * assert old_varlist is not varlist - * elif type(line) in [ Elseif, Else, Case ]: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_2 = PyNumber_Add(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_vars); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_16 = PyTuple_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":406 - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist # <<<<<<<<<<<<<< - * elif type(line) in [ Elseif, Else, Case ]: - * varlist = old_varlist.pop() - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_13 = (__pyx_v_old_varlist != ((PyObject*)__pyx_cur_scope->__pyx_v_varlist)); - if (unlikely(!__pyx_t_13)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - #endif - goto __pyx_L36; - } - - /* "parsed_text.py":407 - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - * elif type(line) in [ Elseif, Else, Case ]: # <<<<<<<<<<<<<< - * varlist = old_varlist.pop() - * old_varlist.append(varlist) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_2 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Elseif); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_13)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Else); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely((__pyx_t_15 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_12 = ((int)__pyx_t_15); - } else { - __pyx_t_12 = ((int)__pyx_t_13); - } - if (!__pyx_t_12) { - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Case); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_15 = ((int)__pyx_t_13); - } else { - __pyx_t_15 = __pyx_t_12; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_12 = __pyx_t_15; - if (__pyx_t_12) { - - /* "parsed_text.py":408 - * assert old_varlist is not varlist - * elif type(line) in [ Elseif, Else, Case ]: - * varlist = old_varlist.pop() # <<<<<<<<<<<<<< - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) - */ - __pyx_t_2 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_varlist)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":409 - * elif type(line) in [ Elseif, Else, Case ]: - * varlist = old_varlist.pop() - * old_varlist.append(varlist) # <<<<<<<<<<<<<< - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) - */ - if (unlikely(((PyObject *)__pyx_v_old_varlist) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - __pyx_t_2 = __pyx_cur_scope->__pyx_v_varlist; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyList_Append(__pyx_v_old_varlist, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":410 - * varlist = old_varlist.pop() - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) # <<<<<<<<<<<<<< - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda18, ((PyObject*)__pyx_cur_scope), __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 410; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":411 - * old_varlist.append(varlist) - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) # <<<<<<<<<<<<<< - * assert old_varlist is not varlist - * elif type(line) in [ Endif, End_select ]: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = PyNumber_Add(__pyx_cur_scope->__pyx_v_varlist, __pyx_v_vars); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_16 = PyTuple_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_16), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 411; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_8; - __pyx_t_8 = 0; - - /* "parsed_text.py":412 - * vars = filter(lambda x: x not in varlist,vars) - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist # <<<<<<<<<<<<<< - * elif type(line) in [ Endif, End_select ]: - * varlist = old_varlist.pop() - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_12 = (__pyx_v_old_varlist != ((PyObject*)__pyx_cur_scope->__pyx_v_varlist)); - if (unlikely(!__pyx_t_12)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 412; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - #endif - goto __pyx_L36; - } - - /* "parsed_text.py":413 - * varlist = make_single(varlist + vars) - * assert old_varlist is not varlist - * elif type(line) in [ Endif, End_select ]: # <<<<<<<<<<<<<< - * varlist = old_varlist.pop() - * elif type(line) == Provide_all: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_8 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_16 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_8), __pyx_t_16, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_select); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)__pyx_t_8), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_15 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely((__pyx_t_15 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_13 = ((int)__pyx_t_15); - } else { - __pyx_t_13 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __pyx_t_13; - if (__pyx_t_12) { - - /* "parsed_text.py":414 - * assert old_varlist is not varlist - * elif type(line) in [ Endif, End_select ]: - * varlist = old_varlist.pop() # <<<<<<<<<<<<<< - * elif type(line) == Provide_all: - * vars += varlist - */ - __pyx_t_8 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_old_varlist)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_v_varlist = __pyx_t_8; - __pyx_t_8 = 0; - goto __pyx_L36; - } - - /* "parsed_text.py":415 - * elif type(line) in [ Endif, End_select ]: - * varlist = old_varlist.pop() - * elif type(line) == Provide_all: # <<<<<<<<<<<<<< - * vars += varlist - * elif type(line) in [ End_provider, End ]: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_16 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":416 - * varlist = old_varlist.pop() - * elif type(line) == Provide_all: - * vars += varlist # <<<<<<<<<<<<<< - * elif type(line) in [ End_provider, End ]: - * assert old_varlist == [] - */ - __pyx_t_16 = PyNumber_InPlaceAdd(__pyx_v_vars, __pyx_cur_scope->__pyx_v_varlist); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_16; - __pyx_t_16 = 0; - goto __pyx_L36; - } - - /* "parsed_text.py":417 - * elif type(line) == Provide_all: - * vars += varlist - * elif type(line) in [ End_provider, End ]: # <<<<<<<<<<<<<< - * assert old_varlist == [] - * varlist = [] - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_16 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_16), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_16), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_15 = ((int)__pyx_t_13); - } else { - __pyx_t_15 = ((int)__pyx_t_12); - } - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __pyx_t_12 = __pyx_t_15; - if (__pyx_t_12) { - - /* "parsed_text.py":418 - * vars += varlist - * elif type(line) in [ End_provider, End ]: - * assert old_varlist == [] # <<<<<<<<<<<<<< - * varlist = [] - * for v in vars[:]: - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_16 = PyList_New(0); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_v_old_varlist), ((PyObject *)__pyx_t_16), Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_12)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - #endif - - /* "parsed_text.py":419 - * elif type(line) in [ End_provider, End ]: - * assert old_varlist == [] - * varlist = [] # <<<<<<<<<<<<<< - * for v in vars[:]: - * if v[0] == '-': - */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_varlist); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __pyx_cur_scope->__pyx_v_varlist = ((PyObject *)__pyx_t_8); - __pyx_t_8 = 0; - goto __pyx_L36; - } - __pyx_L36:; - - /* "parsed_text.py":420 - * assert old_varlist == [] - * varlist = [] - * for v in vars[:]: # <<<<<<<<<<<<<< - * if v[0] == '-': - * vars.remove(v) - */ - __pyx_t_8 = __Pyx_PySequence_GetSlice(__pyx_v_vars, 0, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - if (PyList_CheckExact(__pyx_t_8) || PyTuple_CheckExact(__pyx_t_8)) { - __pyx_t_16 = __pyx_t_8; __Pyx_INCREF(__pyx_t_16); __pyx_t_18 = 0; - __pyx_t_19 = NULL; - } else { - __pyx_t_18 = -1; __pyx_t_16 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_19 = Py_TYPE(__pyx_t_16)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_16)) { - if (__pyx_t_18 >= PyList_GET_SIZE(__pyx_t_16)) break; - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_16, __pyx_t_18); __Pyx_INCREF(__pyx_t_8); __pyx_t_18++; - } else if (PyTuple_CheckExact(__pyx_t_16)) { - if (__pyx_t_18 >= PyTuple_GET_SIZE(__pyx_t_16)) break; - __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_16, __pyx_t_18); __Pyx_INCREF(__pyx_t_8); __pyx_t_18++; - } else { - __pyx_t_8 = __pyx_t_19(__pyx_t_16); - if (unlikely(!__pyx_t_8)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_8); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_8; - __pyx_t_8 = 0; - - /* "parsed_text.py":421 - * varlist = [] - * for v in vars[:]: - * if v[0] == '-': # <<<<<<<<<<<<<< - * vars.remove(v) - * vars.remove(v[1:]) - */ - __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_v, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_12 = __Pyx_PyString_Equals(__pyx_t_8, ((PyObject *)__pyx_kp_s_30), Py_EQ); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":422 - * for v in vars[:]: - * if v[0] == '-': - * vars.remove(v) # <<<<<<<<<<<<<< - * vars.remove(v[1:]) - * result.append( (vars,line) ) - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_vars, __pyx_n_s__remove); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_1 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":423 - * if v[0] == '-': - * vars.remove(v) - * vars.remove(v[1:]) # <<<<<<<<<<<<<< - * result.append( (vars,line) ) - * except: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_vars, __pyx_n_s__remove); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PySequence_GetSlice(__pyx_v_v, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L39; - } - __pyx_L39:; - } - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - - /* "parsed_text.py":424 - * vars.remove(v) - * vars.remove(v[1:]) - * result.append( (vars,line) ) # <<<<<<<<<<<<<< - * except: - * error.fail(line,"Unable to parse file") - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 424; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - } - __pyx_t_16 = PyTuple_New(2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 424; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_16)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_16, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_16, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_3 = PyList_Append(__pyx_v_result, ((PyObject *)__pyx_t_16)); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 424; __pyx_clineno = __LINE__; goto __pyx_L23_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_16)); __pyx_t_16 = 0; - } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - } - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L30_try_end; - __pyx_L23_error:; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "parsed_text.py":425 - * vars.remove(v[1:]) - * result.append( (vars,line) ) - * except: # <<<<<<<<<<<<<< - * error.fail(line,"Unable to parse file") - * return result - */ - /*except:*/ { - __Pyx_AddTraceback("parsed_text.move_variables.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_16, &__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_t_16); - __Pyx_GOTREF(__pyx_t_2); - - /* "parsed_text.py":426 - * result.append( (vars,line) ) - * except: - * error.fail(line,"Unable to parse file") # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_8, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_v_line)) { __Pyx_RaiseUnboundLocalError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} }__pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_29)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_kp_s_29)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_29)); - __pyx_t_10 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L25_except_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L24_exception_handled; - } - __pyx_L25_except_error:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_5, __pyx_t_4); - goto __pyx_L1_error; - __pyx_L24_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_5); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_5, __pyx_t_4); - __pyx_L30_try_end:; - } - - /* "parsed_text.py":427 - * except: - * error.fail(line,"Unable to parse file") - * return result # <<<<<<<<<<<<<< - * - * main_result = [] - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_16); - __Pyx_AddTraceback("parsed_text.move_variables.func", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_append); - __Pyx_XDECREF(__pyx_v_ifvars); - __Pyx_XDECREF(__pyx_v_old_varlist); - __Pyx_XDECREF(__pyx_v_old_ifvars); - __Pyx_XDECREF(__pyx_v_old_elsevars); - __Pyx_XDECREF(__pyx_v_revtext); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":328 - * - * ###################################################################### - * def move_variables(): # <<<<<<<<<<<<<< - * - * def func(filename, text): - */ - -static PyObject *__pyx_pf_11parsed_text_9move_variables(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_9move_variables = {__Pyx_NAMESTR("move_variables"), (PyCFunction)__pyx_pf_11parsed_text_9move_variables, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_9move_variables(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_func = 0; - PyObject *__pyx_v_main_result = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("move_variables"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":330 - * def move_variables(): - * - * def func(filename, text): # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_11parsed_text_14move_variables_func, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_func); - __pyx_v_func = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":429 - * return result - * - * main_result = [] # <<<<<<<<<<<<<< - * for filename,text in parsed_text: - * main_result.append( (filename, func(filename,text)) ) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_main_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":430 - * - * main_result = [] - * for filename,text in parsed_text: # <<<<<<<<<<<<<< - * main_result.append( (filename, func(filename,text)) ) - * return main_result - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":431 - * main_result = [] - * for filename,text in parsed_text: - * main_result.append( (filename, func(filename,text)) ) # <<<<<<<<<<<<<< - * return main_result - * #return parallel_loop(func,parsed_text) - */ - if (unlikely(((PyObject *)__pyx_v_main_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_6 = PyObject_Call(__pyx_v_func, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_9 = PyList_Append(__pyx_v_main_result, ((PyObject *)__pyx_t_1)); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":432 - * for filename,text in parsed_text: - * main_result.append( (filename, func(filename,text)) ) - * return main_result # <<<<<<<<<<<<<< - * #return parallel_loop(func,parsed_text) - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_main_result)); - __pyx_r = ((PyObject *)__pyx_v_main_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("parsed_text.move_variables", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_func); - __Pyx_XDECREF(__pyx_v_main_result); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":438 - * - * ###################################################################### - * def build_needs(): # <<<<<<<<<<<<<< - * # Needs - * for filename, text in parsed_text: - */ - -static PyObject *__pyx_pf_11parsed_text_10build_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_10build_needs = {__Pyx_NAMESTR("build_needs"), (PyCFunction)__pyx_pf_11parsed_text_10build_needs, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_10build_needs(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_subname = NULL; - PyObject *__pyx_v_funcs = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_main = NULL; - PyObject *__pyx_v_x = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); - PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - int __pyx_t_13; - int __pyx_t_14; - Py_ssize_t __pyx_t_15; - PyObject *(*__pyx_t_16)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("build_needs"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":440 - * def build_needs(): - * # Needs - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * var = None - * for vars,line in text: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":441 - * # Needs - * for filename, text in parsed_text: - * var = None # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) == Begin_provider: - */ - __Pyx_INCREF(Py_None); - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = Py_None; - - /* "parsed_text.py":442 - * for filename, text in parsed_text: - * var = None - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) == Begin_provider: - * buffer = map(strip,line.lower.replace(']',',').split(',')) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { - PyObject* sequence = __pyx_t_6; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_11 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L12_unpacking_done; - __pyx_L11_unpacking_failed:; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L12_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":443 - * var = None - * for vars,line in text: - * if type(line) == Begin_provider: # <<<<<<<<<<<<<< - * buffer = map(strip,line.lower.replace(']',',').split(',')) - * var = variables[buffer[1]] - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 443; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 443; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 443; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":444 - * for vars,line in text: - * if type(line) == Begin_provider: - * buffer = map(strip,line.lower.replace(']',',').split(',')) # <<<<<<<<<<<<<< - * var = variables[buffer[1]] - * var.needs = [] - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__strip); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__replace); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_31), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__split); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_32), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_7 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":445 - * if type(line) == Begin_provider: - * buffer = map(strip,line.lower.replace(']',',').split(',')) - * var = variables[buffer[1]] # <<<<<<<<<<<<<< - * var.needs = [] - * var.to_provide = vars - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetItem(__pyx_t_6, __pyx_t_5); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":446 - * buffer = map(strip,line.lower.replace(']',',').split(',')) - * var = variables[buffer[1]] - * var.needs = [] # <<<<<<<<<<<<<< - * var.to_provide = vars - * elif type(line) == End_provider: - */ - __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 446; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needs, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 446; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - - /* "parsed_text.py":447 - * var = variables[buffer[1]] - * var.needs = [] - * var.to_provide = vars # <<<<<<<<<<<<<< - * elif type(line) == End_provider: - * var.needs = make_single(var.needs) - */ - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__to_provide, __pyx_v_vars) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L13; - } - - /* "parsed_text.py":448 - * var.needs = [] - * var.to_provide = vars - * elif type(line) == End_provider: # <<<<<<<<<<<<<< - * var.needs = make_single(var.needs) - * var.to_provide = make_single(var.to_provide) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":449 - * var.to_provide = vars - * elif type(line) == End_provider: - * var.needs = make_single(var.needs) # <<<<<<<<<<<<<< - * var.to_provide = make_single(var.to_provide) - * var = None - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needs, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 449; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "parsed_text.py":450 - * elif type(line) == End_provider: - * var.needs = make_single(var.needs) - * var.to_provide = make_single(var.to_provide) # <<<<<<<<<<<<<< - * var = None - * if var is not None: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 450; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__to_provide); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 450; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 450; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 450; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__to_provide, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 450; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":451 - * var.needs = make_single(var.needs) - * var.to_provide = make_single(var.to_provide) - * var = None # <<<<<<<<<<<<<< - * if var is not None: - * var.needs += vars - */ - __Pyx_INCREF(Py_None); - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = Py_None; - goto __pyx_L13; - } - __pyx_L13:; - - /* "parsed_text.py":452 - * var.to_provide = make_single(var.to_provide) - * var = None - * if var is not None: # <<<<<<<<<<<<<< - * var.needs += vars - * if type(line) == Call: - */ - __pyx_t_12 = (__pyx_v_var != Py_None); - if (__pyx_t_12) { - - /* "parsed_text.py":453 - * var = None - * if var is not None: - * var.needs += vars # <<<<<<<<<<<<<< - * if type(line) == Call: - * subname = find_subname(line) - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 453; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_t_6, __pyx_v_vars); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 453; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needs, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 453; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "parsed_text.py":454 - * if var is not None: - * var.needs += vars - * if type(line) == Call: # <<<<<<<<<<<<<< - * subname = find_subname(line) - * var.needs += subroutines[subname].needs - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_12) { - - /* "parsed_text.py":455 - * var.needs += vars - * if type(line) == Call: - * subname = find_subname(line) # <<<<<<<<<<<<<< - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_subname); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 455; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 455; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 455; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_subname); - __pyx_v_subname = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":456 - * if type(line) == Call: - * subname = find_subname(line) - * var.needs += subroutines[subname].needs # <<<<<<<<<<<<<< - * elif type(line) in [ \ - * Simple_line, Assert, - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetItem(__pyx_t_5, __pyx_v_subname); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__needs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_t_7, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needs, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 456; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L15; - } - - /* "parsed_text.py":457 - * subname = find_subname(line) - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ # <<<<<<<<<<<<<< - * Simple_line, Assert, - * Do , If, - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_6 = ((PyObject *)Py_TYPE(__pyx_v_line)); - - /* "parsed_text.py":458 - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ - * Simple_line, Assert, # <<<<<<<<<<<<<< - * Do , If, - * Elseif , Select, - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (!((int)__pyx_t_12)) { - - /* "parsed_text.py":457 - * subname = find_subname(line) - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ # <<<<<<<<<<<<<< - * Simple_line, Assert, - * Do , If, - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Assert); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - if (!__pyx_t_14) { - - /* "parsed_text.py":459 - * elif type(line) in [ \ - * Simple_line, Assert, - * Do , If, # <<<<<<<<<<<<<< - * Elseif , Select, - * ]: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_13 = ((int)__pyx_t_12); - } else { - __pyx_t_13 = __pyx_t_14; - } - if (!__pyx_t_13) { - - /* "parsed_text.py":457 - * subname = find_subname(line) - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ # <<<<<<<<<<<<<< - * Simple_line, Assert, - * Do , If, - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_14 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_12 = ((int)__pyx_t_14); - } else { - __pyx_t_12 = __pyx_t_13; - } - if (!__pyx_t_12) { - - /* "parsed_text.py":460 - * Simple_line, Assert, - * Do , If, - * Elseif , Select, # <<<<<<<<<<<<<< - * ]: - * funcs = find_funcs_in_line(line) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Elseif); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = __pyx_t_12; - } - if (!__pyx_t_14) { - - /* "parsed_text.py":457 - * subname = find_subname(line) - * var.needs += subroutines[subname].needs - * elif type(line) in [ \ # <<<<<<<<<<<<<< - * Simple_line, Assert, - * Do , If, - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Select); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_13 = ((int)__pyx_t_12); - } else { - __pyx_t_13 = __pyx_t_14; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_14 = __pyx_t_13; - if (__pyx_t_14) { - - /* "parsed_text.py":462 - * Elseif , Select, - * ]: - * funcs = find_funcs_in_line(line) # <<<<<<<<<<<<<< - * for f in funcs: - * var.needs += subroutines[f].needs - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_funcs_in_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 462; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 462; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 462; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_funcs); - __pyx_v_funcs = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":463 - * ]: - * funcs = find_funcs_in_line(line) - * for f in funcs: # <<<<<<<<<<<<<< - * var.needs += subroutines[f].needs - * for v in variables: - */ - if (PyList_CheckExact(__pyx_v_funcs) || PyTuple_CheckExact(__pyx_v_funcs)) { - __pyx_t_7 = __pyx_v_funcs; __Pyx_INCREF(__pyx_t_7); __pyx_t_15 = 0; - __pyx_t_16 = NULL; - } else { - __pyx_t_15 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_v_funcs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 463; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_16 = Py_TYPE(__pyx_t_7)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_7)) { - if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_7)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_15); __Pyx_INCREF(__pyx_t_5); __pyx_t_15++; - } else if (PyTuple_CheckExact(__pyx_t_7)) { - if (__pyx_t_15 >= PyTuple_GET_SIZE(__pyx_t_7)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_15); __Pyx_INCREF(__pyx_t_5); __pyx_t_15++; - } else { - __pyx_t_5 = __pyx_t_16(__pyx_t_7); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 463; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_f); - __pyx_v_f = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":464 - * funcs = find_funcs_in_line(line) - * for f in funcs: - * var.needs += subroutines[f].needs # <<<<<<<<<<<<<< - * for v in variables: - * main = variables[v].same_as - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_11 = PyObject_GetItem(__pyx_t_6, __pyx_v_f); if (!__pyx_t_11) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_11, __pyx_n_s__needs); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyNumber_InPlaceAdd(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needs, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L15; - } - __pyx_L15:; - goto __pyx_L14; - } - __pyx_L14:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":465 - * for f in funcs: - * var.needs += subroutines[f].needs - * for v in variables: # <<<<<<<<<<<<<< - * main = variables[v].same_as - * if main != v: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 465; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 465; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 465; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":466 - * var.needs += subroutines[f].needs - * for v in variables: - * main = variables[v].same_as # <<<<<<<<<<<<<< - * if main != v: - * variables[v].needs = variables[main].needs - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetItem(__pyx_t_2, __pyx_v_v); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__same_as); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_main); - __pyx_v_main = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":467 - * for v in variables: - * main = variables[v].same_as - * if main != v: # <<<<<<<<<<<<<< - * variables[v].needs = variables[main].needs - * variables[v].to_provide = variables[main].to_provide - */ - __pyx_t_2 = PyObject_RichCompare(__pyx_v_main, __pyx_v_v, Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_14) { - - /* "parsed_text.py":468 - * main = variables[v].same_as - * if main != v: - * variables[v].needs = variables[main].needs # <<<<<<<<<<<<<< - * variables[v].to_provide = variables[main].to_provide - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetItem(__pyx_t_2, __pyx_v_main); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__needs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_11 = PyObject_GetItem(__pyx_t_7, __pyx_v_v); if (!__pyx_t_11) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_t_11, __pyx_n_s__needs, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - - /* "parsed_text.py":469 - * if main != v: - * variables[v].needs = variables[main].needs - * variables[v].to_provide = variables[main].to_provide # <<<<<<<<<<<<<< - * - * # Needed_by - */ - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_2 = PyObject_GetItem(__pyx_t_11, __pyx_v_main); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__to_provide); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetItem(__pyx_t_2, __pyx_v_v); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_t_7, __pyx_n_s__to_provide, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L20; - } - __pyx_L20:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":472 - * - * # Needed_by - * for v in variables: # <<<<<<<<<<<<<< - * variables[v].needed_by = [] - * for v in variables: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_7 = __pyx_t_1; __Pyx_INCREF(__pyx_t_7); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_4 = Py_TYPE(__pyx_t_7)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_7)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_7)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_7)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_7)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_7); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":473 - * # Needed_by - * for v in variables: - * variables[v].needed_by = [] # <<<<<<<<<<<<<< - * for v in variables: - * main = variables[v].same_as - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_2 = PyObject_GetItem(__pyx_t_11, __pyx_v_v); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyObject_SetAttr(__pyx_t_2, __pyx_n_s__needed_by, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "parsed_text.py":474 - * for v in variables: - * variables[v].needed_by = [] - * for v in variables: # <<<<<<<<<<<<<< - * main = variables[v].same_as - * if main != v: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) { - __pyx_t_2 = __pyx_t_7; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_7); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_7); __pyx_t_3++; - } else { - __pyx_t_7 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":475 - * variables[v].needed_by = [] - * for v in variables: - * main = variables[v].same_as # <<<<<<<<<<<<<< - * if main != v: - * variables[v].needed_by = variables[main].needed_by - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_GetItem(__pyx_t_7, __pyx_v_v); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__same_as); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_main); - __pyx_v_main = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":476 - * for v in variables: - * main = variables[v].same_as - * if main != v: # <<<<<<<<<<<<<< - * variables[v].needed_by = variables[main].needed_by - * for v in variables: - */ - __pyx_t_7 = PyObject_RichCompare(__pyx_v_main, __pyx_v_v, Py_NE); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_14) { - - /* "parsed_text.py":477 - * main = variables[v].same_as - * if main != v: - * variables[v].needed_by = variables[main].needed_by # <<<<<<<<<<<<<< - * for v in variables: - * var = variables[v] - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_GetItem(__pyx_t_7, __pyx_v_main); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_11 = PyObject_GetItem(__pyx_t_1, __pyx_v_v); if (!__pyx_t_11) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_t_11, __pyx_n_s__needed_by, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L25; - } - __pyx_L25:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":478 - * if main != v: - * variables[v].needed_by = variables[main].needed_by - * for v in variables: # <<<<<<<<<<<<<< - * var = variables[v] - * if var.is_main: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 478; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_11 = __pyx_t_2; __Pyx_INCREF(__pyx_t_11); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 478; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_4 = Py_TYPE(__pyx_t_11)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_11)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_11)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_11, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_11)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_11)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_4(__pyx_t_11); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 478; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_2; - __pyx_t_2 = 0; - - /* "parsed_text.py":479 - * variables[v].needed_by = variables[main].needed_by - * for v in variables: - * var = variables[v] # <<<<<<<<<<<<<< - * if var.is_main: - * for x in var.needs: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetItem(__pyx_t_2, __pyx_v_v); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":480 - * for v in variables: - * var = variables[v] - * if var.is_main: # <<<<<<<<<<<<<< - * for x in var.needs: - * variables[x].needed_by.append(var.same_as) - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__is_main); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_14) { - - /* "parsed_text.py":481 - * var = variables[v] - * if var.is_main: - * for x in var.needs: # <<<<<<<<<<<<<< - * variables[x].needed_by.append(var.same_as) - * for v in variables: - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) { - __pyx_t_2 = __pyx_t_7; __Pyx_INCREF(__pyx_t_2); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_10 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; - } else { - __pyx_t_7 = __pyx_t_10(__pyx_t_2); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_x); - __pyx_v_x = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":482 - * if var.is_main: - * for x in var.needs: - * variables[x].needed_by.append(var.same_as) # <<<<<<<<<<<<<< - * for v in variables: - * var = variables[v] - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_GetItem(__pyx_t_7, __pyx_v_x); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__same_as); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_PyObject_Append(__pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L28; - } - __pyx_L28:; - } - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - - /* "parsed_text.py":483 - * for x in var.needs: - * variables[x].needed_by.append(var.same_as) - * for v in variables: # <<<<<<<<<<<<<< - * var = variables[v] - * var.needed_by = make_single(var.needed_by) - */ - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - if (PyList_CheckExact(__pyx_t_11) || PyTuple_CheckExact(__pyx_t_11)) { - __pyx_t_2 = __pyx_t_11; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_11 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_11); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_11); __pyx_t_3++; - } else { - __pyx_t_11 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_11)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 483; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_11); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_11; - __pyx_t_11 = 0; - - /* "parsed_text.py":484 - * variables[x].needed_by.append(var.same_as) - * for v in variables: - * var = variables[v] # <<<<<<<<<<<<<< - * var.needed_by = make_single(var.needed_by) - * - */ - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_6 = PyObject_GetItem(__pyx_t_11, __pyx_v_v); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":485 - * for v in variables: - * var = variables[v] - * var.needed_by = make_single(var.needed_by) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__make_single); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_11 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_11 = 0; - __pyx_t_11 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_var, __pyx_n_s__needed_by, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("parsed_text.build_needs", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_subname); - __Pyx_XDECREF(__pyx_v_funcs); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_main); - __Pyx_XDECREF(__pyx_v_x); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":504 - * from command_line import command_line - * - * def check_opt(): # <<<<<<<<<<<<<< - * if not command_line.do_checkopt: - * return - */ - -static PyObject *__pyx_pf_11parsed_text_11check_opt(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_11check_opt = {__Pyx_NAMESTR("check_opt"), (PyCFunction)__pyx_pf_11parsed_text_11check_opt, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_11check_opt(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_do_level = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_t_4; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *(*__pyx_t_10)(PyObject *); - Py_ssize_t __pyx_t_11; - PyObject *(*__pyx_t_12)(PyObject *); - PyObject *__pyx_t_13 = NULL; - int __pyx_t_14; - Py_ssize_t __pyx_t_15; - PyObject *(*__pyx_t_16)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("check_opt"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":505 - * - * def check_opt(): - * if not command_line.do_checkopt: # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_checkopt); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = (!__pyx_t_3); - if (__pyx_t_4) { - - /* "parsed_text.py":506 - * def check_opt(): - * if not command_line.do_checkopt: - * return # <<<<<<<<<<<<<< - * - * for filename, text in parsed_text: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "parsed_text.py":508 - * return - * - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * do_level = 0 - * for vars,line in text: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; - } else { - __pyx_t_2 = __pyx_t_6(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) { - PyObject* sequence = __pyx_t_2; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_8 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyList_GET_ITEM(sequence, 0); - __pyx_t_8 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_9 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext; - index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_8); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L9_unpacking_done; - __pyx_L8_unpacking_failed:; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L9_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_8; - __pyx_t_8 = 0; - - /* "parsed_text.py":509 - * - * for filename, text in parsed_text: - * do_level = 0 # <<<<<<<<<<<<<< - * for vars,line in text: - * if not type(line) == Provide_all: - */ - __Pyx_INCREF(__pyx_int_0); - __Pyx_XDECREF(__pyx_v_do_level); - __pyx_v_do_level = __pyx_int_0; - - /* "parsed_text.py":510 - * for filename, text in parsed_text: - * do_level = 0 - * for vars,line in text: # <<<<<<<<<<<<<< - * if not type(line) == Provide_all: - * if do_level > 0 and vars != []: - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_2 = __pyx_v_text; __Pyx_INCREF(__pyx_t_2); __pyx_t_11 = 0; - __pyx_t_12 = NULL; - } else { - __pyx_t_11 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_12 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_11 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_8 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_11 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_11); __Pyx_INCREF(__pyx_t_8); __pyx_t_11++; - } else { - __pyx_t_8 = __pyx_t_12(__pyx_t_2); - if (unlikely(!__pyx_t_8)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_8); - } - if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) { - PyObject* sequence = __pyx_t_8; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyList_GET_ITEM(sequence, 0); - __pyx_t_9 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_13 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_13)->tp_iternext; - index = 0; __pyx_t_7 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_7)) goto __pyx_L12_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - index = 1; __pyx_t_9 = __pyx_t_10(__pyx_t_13); if (unlikely(!__pyx_t_9)) goto __pyx_L12_unpacking_failed; - __Pyx_GOTREF(__pyx_t_9); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_13), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - goto __pyx_L13_unpacking_done; - __pyx_L12_unpacking_failed:; - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L13_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_9; - __pyx_t_9 = 0; - - /* "parsed_text.py":511 - * do_level = 0 - * for vars,line in text: - * if not type(line) == Provide_all: # <<<<<<<<<<<<<< - * if do_level > 0 and vars != []: - * print "Optimization: %s line %d"%(line.filename,line.i) - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_3 = (!__pyx_t_4); - if (__pyx_t_3) { - - /* "parsed_text.py":512 - * for vars,line in text: - * if not type(line) == Provide_all: - * if do_level > 0 and vars != []: # <<<<<<<<<<<<<< - * print "Optimization: %s line %d"%(line.filename,line.i) - * for v in vars: - */ - __pyx_t_9 = PyObject_RichCompare(__pyx_v_do_level, __pyx_int_0, Py_GT); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (__pyx_t_3) { - __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __pyx_t_8 = PyObject_RichCompare(__pyx_v_vars, ((PyObject *)__pyx_t_9), Py_NE); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_14 = __pyx_t_4; - } else { - __pyx_t_14 = __pyx_t_3; - } - if (__pyx_t_14) { - - /* "parsed_text.py":513 - * if not type(line) == Provide_all: - * if do_level > 0 and vars != []: - * print "Optimization: %s line %d"%(line.filename,line.i) # <<<<<<<<<<<<<< - * for v in vars: - * print " PROVIDE ",v - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_8 = 0; - __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_33), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_9)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - - /* "parsed_text.py":514 - * if do_level > 0 and vars != []: - * print "Optimization: %s line %d"%(line.filename,line.i) - * for v in vars: # <<<<<<<<<<<<<< - * print " PROVIDE ",v - * if type(line) == Do: - */ - if (PyList_CheckExact(__pyx_v_vars) || PyTuple_CheckExact(__pyx_v_vars)) { - __pyx_t_9 = __pyx_v_vars; __Pyx_INCREF(__pyx_t_9); __pyx_t_15 = 0; - __pyx_t_16 = NULL; - } else { - __pyx_t_15 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_v_vars); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_16 = Py_TYPE(__pyx_t_9)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_9)) { - if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_9)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_15); __Pyx_INCREF(__pyx_t_7); __pyx_t_15++; - } else if (PyTuple_CheckExact(__pyx_t_9)) { - if (__pyx_t_15 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_15); __Pyx_INCREF(__pyx_t_7); __pyx_t_15++; - } else { - __pyx_t_7 = __pyx_t_16(__pyx_t_9); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":515 - * print "Optimization: %s line %d"%(line.filename,line.i) - * for v in vars: - * print " PROVIDE ",v # <<<<<<<<<<<<<< - * if type(line) == Do: - * do_level += 1 - */ - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_34)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_kp_s_34)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_34)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - if (__Pyx_Print(0, ((PyObject *)__pyx_t_7), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L15; - } - __pyx_L15:; - - /* "parsed_text.py":516 - * for v in vars: - * print " PROVIDE ",v - * if type(line) == Do: # <<<<<<<<<<<<<< - * do_level += 1 - * elif type(line) == Enddo: - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_9, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_14) { - - /* "parsed_text.py":517 - * print " PROVIDE ",v - * if type(line) == Do: - * do_level += 1 # <<<<<<<<<<<<<< - * elif type(line) == Enddo: - * do_level -= 1 - */ - __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_do_level, __pyx_int_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 517; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_v_do_level); - __pyx_v_do_level = __pyx_t_7; - __pyx_t_7 = 0; - goto __pyx_L18; - } - - /* "parsed_text.py":518 - * if type(line) == Do: - * do_level += 1 - * elif type(line) == Enddo: # <<<<<<<<<<<<<< - * do_level -= 1 - * check_opt() - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 518; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_9 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 518; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 518; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (__pyx_t_14) { - - /* "parsed_text.py":519 - * do_level += 1 - * elif type(line) == Enddo: - * do_level -= 1 # <<<<<<<<<<<<<< - * check_opt() - * - */ - __pyx_t_9 = PyNumber_InPlaceSubtract(__pyx_v_do_level, __pyx_int_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_v_do_level); - __pyx_v_do_level = __pyx_t_9; - __pyx_t_9 = 0; - goto __pyx_L18; - } - __pyx_L18:; - goto __pyx_L14; - } - __pyx_L14:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_13); - __Pyx_AddTraceback("parsed_text.check_opt", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_do_level); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "parsed_text.py":523 - * - * ###################################################################### - * def perform_loop_substitutions(): # <<<<<<<<<<<<<< - * main_result = [] - * for filename, text in parsed_text: - */ - -static PyObject *__pyx_pf_11parsed_text_12perform_loop_substitutions(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_11parsed_text_12perform_loop_substitutions = {__Pyx_NAMESTR("perform_loop_substitutions"), (PyCFunction)__pyx_pf_11parsed_text_12perform_loop_substitutions, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_11parsed_text_12perform_loop_substitutions(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_main_result = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_append = NULL; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_k = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_reg = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - Py_ssize_t __pyx_t_9; - PyObject *(*__pyx_t_10)(PyObject *); - PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - int __pyx_t_13; - int __pyx_t_14; - Py_ssize_t __pyx_t_15; - PyObject *(*__pyx_t_16)(PyObject *); - PyObject *__pyx_t_17 = NULL; - int __pyx_t_18; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("perform_loop_substitutions"); - __pyx_self = __pyx_self; - - /* "parsed_text.py":524 - * ###################################################################### - * def perform_loop_substitutions(): - * main_result = [] # <<<<<<<<<<<<<< - * for filename, text in parsed_text: - * result = [] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_main_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":525 - * def perform_loop_substitutions(): - * main_result = [] - * for filename, text in parsed_text: # <<<<<<<<<<<<<< - * result = [] - * append = result.append - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "parsed_text.py":526 - * main_result = [] - * for filename, text in parsed_text: - * result = [] # <<<<<<<<<<<<<< - * append = result.append - * for vars,line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_XDECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":527 - * for filename, text in parsed_text: - * result = [] - * append = result.append # <<<<<<<<<<<<<< - * for vars,line in text: - * if type(line) in [ Do, If, Elseif ] : - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_result), __pyx_n_s__append); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_append); - __pyx_v_append = __pyx_t_1; - __pyx_t_1 = 0; - - /* "parsed_text.py":528 - * result = [] - * append = result.append - * for vars,line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Do, If, Elseif ] : - * for k,v in command_line.substituted.items(): - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0; - __pyx_t_10 = NULL; - } else { - __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_6); __pyx_t_9++; - } else { - __pyx_t_6 = __pyx_t_10(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) { - PyObject* sequence = __pyx_t_6; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_11 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_5)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L12_unpacking_done; - __pyx_L11_unpacking_failed:; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L12_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_vars); - __pyx_v_vars = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "parsed_text.py":529 - * append = result.append - * for vars,line in text: - * if type(line) in [ Do, If, Elseif ] : # <<<<<<<<<<<<<< - * for k,v in command_line.substituted.items(): - * reg = v[1] - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_6 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (!((int)__pyx_t_12)) { - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_13 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_14 = ((int)__pyx_t_13); - } else { - __pyx_t_14 = ((int)__pyx_t_12); - } - if (!__pyx_t_14) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Elseif); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_12 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_13 = ((int)__pyx_t_12); - } else { - __pyx_t_13 = __pyx_t_14; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_14 = __pyx_t_13; - if (__pyx_t_14) { - - /* "parsed_text.py":530 - * for vars,line in text: - * if type(line) in [ Do, If, Elseif ] : - * for k,v in command_line.substituted.items(): # <<<<<<<<<<<<<< - * reg = v[1] - * while reg.search(line.text) is not None: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__substituted); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) { - __pyx_t_6 = __pyx_t_5; __Pyx_INCREF(__pyx_t_6); __pyx_t_15 = 0; - __pyx_t_16 = NULL; - } else { - __pyx_t_15 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_16 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_15); __Pyx_INCREF(__pyx_t_5); __pyx_t_15++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_15 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_15); __Pyx_INCREF(__pyx_t_5); __pyx_t_15++; - } else { - __pyx_t_5 = __pyx_t_16(__pyx_t_6); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) { - PyObject* sequence = __pyx_t_5; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyList_GET_ITEM(sequence, 0); - __pyx_t_11 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_7); - __Pyx_INCREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_17 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_17); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_17)->tp_iternext; - index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_17); if (unlikely(!__pyx_t_7)) goto __pyx_L16_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - index = 1; __pyx_t_11 = __pyx_t_8(__pyx_t_17); if (unlikely(!__pyx_t_11)) goto __pyx_L16_unpacking_failed; - __Pyx_GOTREF(__pyx_t_11); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_17), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - goto __pyx_L17_unpacking_done; - __pyx_L16_unpacking_failed:; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L17_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_k); - __pyx_v_k = __pyx_t_7; - __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_11; - __pyx_t_11 = 0; - - /* "parsed_text.py":531 - * if type(line) in [ Do, If, Elseif ] : - * for k,v in command_line.substituted.items(): - * reg = v[1] # <<<<<<<<<<<<<< - * while reg.search(line.text) is not None: - * line.text = re.sub(reg,r'\1%s\3', line.text,count=1)%v[0] - */ - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_v, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_v_reg); - __pyx_v_reg = __pyx_t_5; - __pyx_t_5 = 0; - - /* "parsed_text.py":532 - * for k,v in command_line.substituted.items(): - * reg = v[1] - * while reg.search(line.text) is not None: # <<<<<<<<<<<<<< - * line.text = re.sub(reg,r'\1%s\3', line.text,count=1)%v[0] - * append( (vars,line) ) - */ - while (1) { - __pyx_t_5 = PyObject_GetAttr(__pyx_v_reg, __pyx_n_s__search); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_11 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_11 = 0; - __pyx_t_11 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_14 = (__pyx_t_11 != Py_None); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (!__pyx_t_14) break; - - /* "parsed_text.py":533 - * reg = v[1] - * while reg.search(line.text) is not None: - * line.text = re.sub(reg,r'\1%s\3', line.text,count=1)%v[0] # <<<<<<<<<<<<<< - * append( (vars,line) ) - * main_result.append( (filename, result) ) - */ - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_11, __pyx_n_s__sub); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_reg); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_reg); - __Pyx_GIVEREF(__pyx_v_reg); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_35)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_35)); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_11 = 0; - __pyx_t_11 = PyDict_New(); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - if (PyDict_SetItem(__pyx_t_11, ((PyObject *)__pyx_n_s__count), __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_17 = PyEval_CallObjectWithKeywords(__pyx_t_7, ((PyObject *)__pyx_t_5), ((PyObject *)__pyx_t_11)); if (unlikely(!__pyx_t_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_17); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_11)); __pyx_t_11 = 0; - __pyx_t_11 = __Pyx_GetItemInt(__pyx_v_v, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_11) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_5 = PyNumber_Remainder(__pyx_t_17, __pyx_t_11); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L13; - } - __pyx_L13:; - - /* "parsed_text.py":534 - * while reg.search(line.text) is not None: - * line.text = re.sub(reg,r'\1%s\3', line.text,count=1)%v[0] - * append( (vars,line) ) # <<<<<<<<<<<<<< - * main_result.append( (filename, result) ) - * return main_result - */ - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_vars); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vars); - __Pyx_GIVEREF(__pyx_v_vars); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_append, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 534; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":535 - * line.text = re.sub(reg,r'\1%s\3', line.text,count=1)%v[0] - * append( (vars,line) ) - * main_result.append( (filename, result) ) # <<<<<<<<<<<<<< - * return main_result - * - */ - if (unlikely(((PyObject *)__pyx_v_main_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 535; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 535; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_v_result)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_result)); - __pyx_t_18 = PyList_Append(__pyx_v_main_result, ((PyObject *)__pyx_t_1)); if (unlikely(__pyx_t_18 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 535; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":536 - * append( (vars,line) ) - * main_result.append( (filename, result) ) - * return main_result # <<<<<<<<<<<<<< - * - * parsed_text = perform_loop_substitutions() - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_main_result)); - __pyx_r = ((PyObject *)__pyx_v_main_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_XDECREF(__pyx_t_17); - __Pyx_AddTraceback("parsed_text.perform_loop_substitutions", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_main_result); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_append); - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_k); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_reg); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_tp_new_11parsed_text___pyx_scope_struct__check_touch(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)o); - p->__pyx_v_line = 0; - return o; -} - -static void __pyx_tp_dealloc_11parsed_text___pyx_scope_struct__check_touch(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)o; - Py_XDECREF(p->__pyx_v_line); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_11parsed_text___pyx_scope_struct__check_touch(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)o; - if (p->__pyx_v_line) { - e = (*v)(p->__pyx_v_line, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_11parsed_text___pyx_scope_struct__check_touch(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_line); - p->__pyx_v_line = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_11parsed_text___pyx_scope_struct__check_touch[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct__check_touch = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct__check_touch = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct__check_touch = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct__check_touch = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_11parsed_text___pyx_scope_struct__check_touch = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("parsed_text.__pyx_scope_struct__check_touch"), /*tp_name*/ - sizeof(struct __pyx_obj_11parsed_text___pyx_scope_struct__check_touch), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_11parsed_text___pyx_scope_struct__check_touch, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct__check_touch, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct__check_touch, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct__check_touch, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct__check_touch, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_11parsed_text___pyx_scope_struct__check_touch, /*tp_traverse*/ - __pyx_tp_clear_11parsed_text___pyx_scope_struct__check_touch, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_11parsed_text___pyx_scope_struct__check_touch, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_11parsed_text___pyx_scope_struct__check_touch, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_11parsed_text___pyx_scope_struct_1_func(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)o); - p->__pyx_v_line = 0; - p->__pyx_v_varlist = 0; - return o; -} - -static void __pyx_tp_dealloc_11parsed_text___pyx_scope_struct_1_func(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)o; - Py_XDECREF(p->__pyx_v_line); - Py_XDECREF(p->__pyx_v_varlist); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_11parsed_text___pyx_scope_struct_1_func(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)o; - if (p->__pyx_v_line) { - e = (*v)(p->__pyx_v_line, a); if (e) return e; - } - if (p->__pyx_v_varlist) { - e = (*v)(p->__pyx_v_varlist, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_11parsed_text___pyx_scope_struct_1_func(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_line); - p->__pyx_v_line = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_varlist); - p->__pyx_v_varlist = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_11parsed_text___pyx_scope_struct_1_func[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_1_func = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_1_func = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_1_func = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_1_func = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_11parsed_text___pyx_scope_struct_1_func = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("parsed_text.__pyx_scope_struct_1_func"), /*tp_name*/ - sizeof(struct __pyx_obj_11parsed_text___pyx_scope_struct_1_func), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_11parsed_text___pyx_scope_struct_1_func, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_1_func, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_1_func, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_1_func, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_1_func, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_11parsed_text___pyx_scope_struct_1_func, /*tp_traverse*/ - __pyx_tp_clear_11parsed_text___pyx_scope_struct_1_func, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_11parsed_text___pyx_scope_struct_1_func, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_11parsed_text___pyx_scope_struct_1_func, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_11parsed_text___pyx_scope_struct_2_func(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)o); - p->__pyx_v_elsevars = 0; - p->__pyx_v_varlist = 0; - return o; -} - -static void __pyx_tp_dealloc_11parsed_text___pyx_scope_struct_2_func(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)o; - Py_XDECREF(p->__pyx_v_elsevars); - Py_XDECREF(p->__pyx_v_varlist); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_11parsed_text___pyx_scope_struct_2_func(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)o; - if (p->__pyx_v_elsevars) { - e = (*v)(p->__pyx_v_elsevars, a); if (e) return e; - } - if (p->__pyx_v_varlist) { - e = (*v)(p->__pyx_v_varlist, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_11parsed_text___pyx_scope_struct_2_func(PyObject *o) { - struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *p = (struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_elsevars); - p->__pyx_v_elsevars = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_varlist); - p->__pyx_v_varlist = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_11parsed_text___pyx_scope_struct_2_func[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_2_func = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_2_func = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_2_func = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_2_func = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_11parsed_text___pyx_scope_struct_2_func = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("parsed_text.__pyx_scope_struct_2_func"), /*tp_name*/ - sizeof(struct __pyx_obj_11parsed_text___pyx_scope_struct_2_func), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_11parsed_text___pyx_scope_struct_2_func, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_2_func, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_2_func, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_2_func, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_2_func, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_11parsed_text___pyx_scope_struct_2_func, /*tp_traverse*/ - __pyx_tp_clear_11parsed_text___pyx_scope_struct_2_func, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_11parsed_text___pyx_scope_struct_2_func, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_11parsed_text___pyx_scope_struct_2_func, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - "__pyx_scope_struct_1_func", - "__pyx_scope_struct_2_func", - "__pyx_scope_struct__check_touch", - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("parsed_text"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 1}, - {&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0}, - {&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0}, - {&__pyx_kp_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 0}, - {&__pyx_n_s_19, __pyx_k_19, sizeof(__pyx_k_19), 0, 0, 1, 1}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_20, __pyx_k_20, sizeof(__pyx_k_20), 0, 0, 1, 0}, - {&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0}, - {&__pyx_kp_s_22, __pyx_k_22, sizeof(__pyx_k_22), 0, 0, 1, 0}, - {&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0}, - {&__pyx_kp_s_24, __pyx_k_24, sizeof(__pyx_k_24), 0, 0, 1, 0}, - {&__pyx_kp_s_25, __pyx_k_25, sizeof(__pyx_k_25), 0, 0, 1, 0}, - {&__pyx_kp_s_26, __pyx_k_26, sizeof(__pyx_k_26), 0, 0, 1, 0}, - {&__pyx_n_s_27, __pyx_k_27, sizeof(__pyx_k_27), 0, 0, 1, 1}, - {&__pyx_kp_s_28, __pyx_k_28, sizeof(__pyx_k_28), 0, 0, 1, 0}, - {&__pyx_kp_s_29, __pyx_k_29, sizeof(__pyx_k_29), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_30, __pyx_k_30, sizeof(__pyx_k_30), 0, 0, 1, 0}, - {&__pyx_kp_s_33, __pyx_k_33, sizeof(__pyx_k_33), 0, 0, 1, 0}, - {&__pyx_kp_s_34, __pyx_k_34, sizeof(__pyx_k_34), 0, 0, 1, 0}, - {&__pyx_kp_s_35, __pyx_k_35, sizeof(__pyx_k_35), 0, 0, 1, 0}, - {&__pyx_n_s_36, __pyx_k_36, sizeof(__pyx_k_36), 0, 0, 1, 1}, - {&__pyx_n_s_37, __pyx_k_37, sizeof(__pyx_k_37), 0, 0, 1, 1}, - {&__pyx_n_s_38, __pyx_k_38, sizeof(__pyx_k_38), 0, 0, 1, 1}, - {&__pyx_kp_s_39, __pyx_k_39, sizeof(__pyx_k_39), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_n_s__Assert, __pyx_k__Assert, sizeof(__pyx_k__Assert), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_doc, __pyx_k__Begin_doc, sizeof(__pyx_k__Begin_doc), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_provider, __pyx_k__Begin_provider, sizeof(__pyx_k__Begin_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_shell, __pyx_k__Begin_shell, sizeof(__pyx_k__Begin_shell), 0, 0, 1, 1}, - {&__pyx_n_s__Call, __pyx_k__Call, sizeof(__pyx_k__Call), 0, 0, 1, 1}, - {&__pyx_n_s__Case, __pyx_k__Case, sizeof(__pyx_k__Case), 0, 0, 1, 1}, - {&__pyx_n_s__Cont_provider, __pyx_k__Cont_provider, sizeof(__pyx_k__Cont_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Continue, __pyx_k__Continue, sizeof(__pyx_k__Continue), 0, 0, 1, 1}, - {&__pyx_n_s__Declaration, __pyx_k__Declaration, sizeof(__pyx_k__Declaration), 0, 0, 1, 1}, - {&__pyx_n_s__Directive, __pyx_k__Directive, sizeof(__pyx_k__Directive), 0, 0, 1, 1}, - {&__pyx_n_s__Do, __pyx_k__Do, sizeof(__pyx_k__Do), 0, 0, 1, 1}, - {&__pyx_n_s__Doc, __pyx_k__Doc, sizeof(__pyx_k__Doc), 0, 0, 1, 1}, - {&__pyx_n_s__Else, __pyx_k__Else, sizeof(__pyx_k__Else), 0, 0, 1, 1}, - {&__pyx_n_s__Elseif, __pyx_k__Elseif, sizeof(__pyx_k__Elseif), 0, 0, 1, 1}, - {&__pyx_n_s__Empty_line, __pyx_k__Empty_line, sizeof(__pyx_k__Empty_line), 0, 0, 1, 1}, - {&__pyx_n_s__End, __pyx_k__End, sizeof(__pyx_k__End), 0, 0, 1, 1}, - {&__pyx_n_s__End_doc, __pyx_k__End_doc, sizeof(__pyx_k__End_doc), 0, 0, 1, 1}, - {&__pyx_n_s__End_provider, __pyx_k__End_provider, sizeof(__pyx_k__End_provider), 0, 0, 1, 1}, - {&__pyx_n_s__End_select, __pyx_k__End_select, sizeof(__pyx_k__End_select), 0, 0, 1, 1}, - {&__pyx_n_s__End_shell, __pyx_k__End_shell, sizeof(__pyx_k__End_shell), 0, 0, 1, 1}, - {&__pyx_n_s__Enddo, __pyx_k__Enddo, sizeof(__pyx_k__Enddo), 0, 0, 1, 1}, - {&__pyx_n_s__Endif, __pyx_k__Endif, sizeof(__pyx_k__Endif), 0, 0, 1, 1}, - {&__pyx_n_s__Free, __pyx_k__Free, sizeof(__pyx_k__Free), 0, 0, 1, 1}, - {&__pyx_n_s__Function, __pyx_k__Function, sizeof(__pyx_k__Function), 0, 0, 1, 1}, - {&__pyx_n_s__If, __pyx_k__If, sizeof(__pyx_k__If), 0, 0, 1, 1}, - {&__pyx_n_s__Implicit, __pyx_k__Implicit, sizeof(__pyx_k__Implicit), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_read, __pyx_k__Irp_read, sizeof(__pyx_k__Irp_read), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_write, __pyx_k__Irp_write, sizeof(__pyx_k__Irp_write), 0, 0, 1, 1}, - {&__pyx_n_s__Line, __pyx_k__Line, sizeof(__pyx_k__Line), 0, 0, 1, 1}, - {&__pyx_n_s__NoDep, __pyx_k__NoDep, sizeof(__pyx_k__NoDep), 0, 0, 1, 1}, - {&__pyx_n_s__Openmp, __pyx_k__Openmp, sizeof(__pyx_k__Openmp), 0, 0, 1, 1}, - {&__pyx_n_s__Program, __pyx_k__Program, sizeof(__pyx_k__Program), 0, 0, 1, 1}, - {&__pyx_n_s__Provide, __pyx_k__Provide, sizeof(__pyx_k__Provide), 0, 0, 1, 1}, - {&__pyx_n_s__Provide_all, __pyx_k__Provide_all, sizeof(__pyx_k__Provide_all), 0, 0, 1, 1}, - {&__pyx_n_s__Return, __pyx_k__Return, sizeof(__pyx_k__Return), 0, 0, 1, 1}, - {&__pyx_n_s__Select, __pyx_k__Select, sizeof(__pyx_k__Select), 0, 0, 1, 1}, - {&__pyx_n_s__Simple_line, __pyx_k__Simple_line, sizeof(__pyx_k__Simple_line), 0, 0, 1, 1}, - {&__pyx_n_s__SoftTouch, __pyx_k__SoftTouch, sizeof(__pyx_k__SoftTouch), 0, 0, 1, 1}, - {&__pyx_n_s__Subroutine, __pyx_k__Subroutine, sizeof(__pyx_k__Subroutine), 0, 0, 1, 1}, - {&__pyx_n_s__Touch, __pyx_k__Touch, sizeof(__pyx_k__Touch), 0, 0, 1, 1}, - {&__pyx_n_s__Use, __pyx_k__Use, sizeof(__pyx_k__Use), 0, 0, 1, 1}, - {&__pyx_n_s__ValueError, __pyx_k__ValueError, sizeof(__pyx_k__ValueError), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s___is_read, __pyx_k___is_read, sizeof(__pyx_k___is_read), 0, 0, 1, 1}, - {&__pyx_n_s___is_touched, __pyx_k___is_touched, sizeof(__pyx_k___is_touched), 0, 0, 1, 1}, - {&__pyx_n_s___is_written, __pyx_k___is_written, sizeof(__pyx_k___is_written), 0, 0, 1, 1}, - {&__pyx_n_s___needs, __pyx_k___needs, sizeof(__pyx_k___needs), 0, 0, 1, 1}, - {&__pyx_n_s___to_provide, __pyx_k___to_provide, sizeof(__pyx_k___to_provide), 0, 0, 1, 1}, - {&__pyx_n_s__append, __pyx_k__append, sizeof(__pyx_k__append), 0, 0, 1, 1}, - {&__pyx_n_s__argv, __pyx_k__argv, sizeof(__pyx_k__argv), 0, 0, 1, 1}, - {&__pyx_n_s__build_needs, __pyx_k__build_needs, sizeof(__pyx_k__build_needs), 0, 0, 1, 1}, - {&__pyx_n_s__build_sub_needs, __pyx_k__build_sub_needs, sizeof(__pyx_k__build_sub_needs), 0, 0, 1, 1}, - {&__pyx_n_s__check_opt, __pyx_k__check_opt, sizeof(__pyx_k__check_opt), 0, 0, 1, 1}, - {&__pyx_n_s__check_touch, __pyx_k__check_touch, sizeof(__pyx_k__check_touch), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__count, __pyx_k__count, sizeof(__pyx_k__count), 0, 0, 1, 1}, - {&__pyx_n_s__do_checkopt, __pyx_k__do_checkopt, sizeof(__pyx_k__do_checkopt), 0, 0, 1, 1}, - {&__pyx_n_s__error, __pyx_k__error, sizeof(__pyx_k__error), 0, 0, 1, 1}, - {&__pyx_n_s__fail, __pyx_k__fail, sizeof(__pyx_k__fail), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__filter, __pyx_k__filter, sizeof(__pyx_k__filter), 0, 0, 1, 1}, - {&__pyx_n_s__find_funcs_in_line, __pyx_k__find_funcs_in_line, sizeof(__pyx_k__find_funcs_in_line), 0, 0, 1, 1}, - {&__pyx_n_s__find_subname, __pyx_k__find_subname, sizeof(__pyx_k__find_subname), 0, 0, 1, 1}, - {&__pyx_n_s__flatten, __pyx_k__flatten, sizeof(__pyx_k__flatten), 0, 0, 1, 1}, - {&__pyx_n_s__fmodule, __pyx_k__fmodule, sizeof(__pyx_k__fmodule), 0, 0, 1, 1}, - {&__pyx_n_s__free, __pyx_k__free, sizeof(__pyx_k__free), 0, 0, 1, 1}, - {&__pyx_n_s__get_parsed_text, __pyx_k__get_parsed_text, sizeof(__pyx_k__get_parsed_text), 0, 0, 1, 1}, - {&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1}, - {&__pyx_n_s__insert, __pyx_k__insert, sizeof(__pyx_k__insert), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__is_freed, __pyx_k__is_freed, sizeof(__pyx_k__is_freed), 0, 0, 1, 1}, - {&__pyx_n_s__is_function, __pyx_k__is_function, sizeof(__pyx_k__is_function), 0, 0, 1, 1}, - {&__pyx_n_s__is_main, __pyx_k__is_main, sizeof(__pyx_k__is_main), 0, 0, 1, 1}, - {&__pyx_n_s__items, __pyx_k__items, sizeof(__pyx_k__items), 0, 0, 1, 1}, - {&__pyx_n_s__join, __pyx_k__join, sizeof(__pyx_k__join), 0, 0, 1, 1}, - {&__pyx_n_s__keys, __pyx_k__keys, sizeof(__pyx_k__keys), 0, 0, 1, 1}, - {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, - {&__pyx_n_s__lower, __pyx_k__lower, sizeof(__pyx_k__lower), 0, 0, 1, 1}, - {&__pyx_n_s__main_vars, __pyx_k__main_vars, sizeof(__pyx_k__main_vars), 0, 0, 1, 1}, - {&__pyx_n_s__make_single, __pyx_k__make_single, sizeof(__pyx_k__make_single), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__move_to_top, __pyx_k__move_to_top, sizeof(__pyx_k__move_to_top), 0, 0, 1, 1}, - {&__pyx_n_s__move_variables, __pyx_k__move_variables, sizeof(__pyx_k__move_variables), 0, 0, 1, 1}, - {&__pyx_n_s__needed_by, __pyx_k__needed_by, sizeof(__pyx_k__needed_by), 0, 0, 1, 1}, - {&__pyx_n_s__needs, __pyx_k__needs, sizeof(__pyx_k__needs), 0, 0, 1, 1}, - {&__pyx_n_s__others, __pyx_k__others, sizeof(__pyx_k__others), 0, 0, 1, 1}, - {&__pyx_n_s__parallel_loop, __pyx_k__parallel_loop, sizeof(__pyx_k__parallel_loop), 0, 0, 1, 1}, - {&__pyx_n_s__parsed_text, __pyx_k__parsed_text, sizeof(__pyx_k__parsed_text), 0, 0, 1, 1}, - {&__pyx_n_s__preprocessed_text, __pyx_k__preprocessed_text, sizeof(__pyx_k__preprocessed_text), 0, 0, 1, 1}, - {&__pyx_n_s__range, __pyx_k__range, sizeof(__pyx_k__range), 0, 0, 1, 1}, - {&__pyx_n_s__re, __pyx_k__re, sizeof(__pyx_k__re), 0, 0, 1, 1}, - {&__pyx_n_s__re_string, __pyx_k__re_string, sizeof(__pyx_k__re_string), 0, 0, 1, 1}, - {&__pyx_n_s__re_string_sub, __pyx_k__re_string_sub, sizeof(__pyx_k__re_string_sub), 0, 0, 1, 1}, - {&__pyx_n_s__regexp, __pyx_k__regexp, sizeof(__pyx_k__regexp), 0, 0, 1, 1}, - {&__pyx_n_s__regexps, __pyx_k__regexps, sizeof(__pyx_k__regexps), 0, 0, 1, 1}, - {&__pyx_n_s__remove, __pyx_k__remove, sizeof(__pyx_k__remove), 0, 0, 1, 1}, - {&__pyx_n_s__replace, __pyx_k__replace, sizeof(__pyx_k__replace), 0, 0, 1, 1}, - {&__pyx_n_s__result, __pyx_k__result, sizeof(__pyx_k__result), 0, 0, 1, 1}, - {&__pyx_n_s__same_as, __pyx_k__same_as, sizeof(__pyx_k__same_as), 0, 0, 1, 1}, - {&__pyx_n_s__search, __pyx_k__search, sizeof(__pyx_k__search), 0, 0, 1, 1}, - {&__pyx_n_s__sort, __pyx_k__sort, sizeof(__pyx_k__sort), 0, 0, 1, 1}, - {&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1}, - {&__pyx_n_s__strip, __pyx_k__strip, sizeof(__pyx_k__strip), 0, 0, 1, 1}, - {&__pyx_n_s__stuple, __pyx_k__stuple, sizeof(__pyx_k__stuple), 0, 0, 1, 1}, - {&__pyx_n_s__sub, __pyx_k__sub, sizeof(__pyx_k__sub), 0, 0, 1, 1}, - {&__pyx_n_s__subroutines, __pyx_k__subroutines, sizeof(__pyx_k__subroutines), 0, 0, 1, 1}, - {&__pyx_n_s__substituted, __pyx_k__substituted, sizeof(__pyx_k__substituted), 0, 0, 1, 1}, - {&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1}, - {&__pyx_n_s__t, __pyx_k__t, sizeof(__pyx_k__t), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__to_provide, __pyx_k__to_provide, sizeof(__pyx_k__to_provide), 0, 0, 1, 1}, - {&__pyx_n_s__touches, __pyx_k__touches, sizeof(__pyx_k__touches), 0, 0, 1, 1}, - {&__pyx_n_s__update_variables, __pyx_k__update_variables, sizeof(__pyx_k__update_variables), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__variables, __pyx_k__variables, sizeof(__pyx_k__variables), 0, 0, 1, 1}, - {&__pyx_n_s__vars, __pyx_k__vars, sizeof(__pyx_k__vars), 0, 0, 1, 1}, - {&__pyx_n_s__vtuple, __pyx_k__vtuple, sizeof(__pyx_k__vtuple), 0, 0, 1, 1}, - {&__pyx_n_s__zip, __pyx_k__zip, sizeof(__pyx_k__zip), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_filter = __Pyx_GetName(__pyx_b, __pyx_n_s__filter); if (!__pyx_builtin_filter) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_range = __Pyx_GetName(__pyx_b, __pyx_n_s__range); if (!__pyx_builtin_range) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_zip = __Pyx_GetName(__pyx_b, __pyx_n_s__zip); if (!__pyx_builtin_zip) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_ValueError = __Pyx_GetName(__pyx_b, __pyx_n_s__ValueError); if (!__pyx_builtin_ValueError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "parsed_text.py":72 - * def find_subroutine_in_line(line): - * assert type(line) == Call - * buffer = line.text.split('(')[0] # <<<<<<<<<<<<<< - * buffer = buffer.split()[1].lower() - * return buffer - */ - __pyx_k_tuple_4 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_4)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_k_tuple_4, 0, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_4)); - - /* "parsed_text.py":152 - * if type(line) == Begin_provider: - * varlist = [] - * buffer = map(strip,line.lower.replace(']','').split(',')) # <<<<<<<<<<<<<< - * assert len(buffer) > 1 - * v = buffer[1] - */ - __pyx_k_tuple_16 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_16)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_15)); - PyTuple_SET_ITEM(__pyx_k_tuple_16, 0, ((PyObject *)__pyx_kp_s_15)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_15)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_k_tuple_16, 1, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_16)); - __pyx_k_tuple_18 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_18)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_17)); - PyTuple_SET_ITEM(__pyx_k_tuple_18, 0, ((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_18)); - - /* "parsed_text.py":444 - * for vars,line in text: - * if type(line) == Begin_provider: - * buffer = map(strip,line.lower.replace(']',',').split(',')) # <<<<<<<<<<<<<< - * var = variables[buffer[1]] - * var.needs = [] - */ - __pyx_k_tuple_31 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_31)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_31)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_15)); - PyTuple_SET_ITEM(__pyx_k_tuple_31, 0, ((PyObject *)__pyx_kp_s_15)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_15)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_17)); - PyTuple_SET_ITEM(__pyx_k_tuple_31, 1, ((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_31)); - __pyx_k_tuple_32 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_32)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 444; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_32)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_17)); - PyTuple_SET_ITEM(__pyx_k_tuple_32, 0, ((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_17)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_32)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initparsed_text(void); /*proto*/ -PyMODINIT_FUNC initparsed_text(void) -#else -PyMODINIT_FUNC PyInit_parsed_text(void); /*proto*/ -PyMODINIT_FUNC PyInit_parsed_text(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - Py_ssize_t __pyx_t_10; - PyObject *(*__pyx_t_11)(PyObject *); - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_parsed_text(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("parsed_text"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_parsed_text) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - if (PyType_Ready(&__pyx_type_11parsed_text___pyx_scope_struct__check_touch) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_11parsed_text___pyx_scope_struct__check_touch = &__pyx_type_11parsed_text___pyx_scope_struct__check_touch; - if (PyType_Ready(&__pyx_type_11parsed_text___pyx_scope_struct_1_func) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_11parsed_text___pyx_scope_struct_1_func = &__pyx_type_11parsed_text___pyx_scope_struct_1_func; - if (PyType_Ready(&__pyx_type_11parsed_text___pyx_scope_struct_2_func) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_11parsed_text___pyx_scope_struct_2_func = &__pyx_type_11parsed_text___pyx_scope_struct_2_func; - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "parsed_text.py":28 - * - * - * from util import * # <<<<<<<<<<<<<< - * from irpf90_t import * - * from variables import variables - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_36)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_36)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_36)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":29 - * - * from util import * - * from irpf90_t import * # <<<<<<<<<<<<<< - * from variables import variables - * from preprocessed_text import preprocessed_text - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_36)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_36)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_36)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":30 - * from util import * - * from irpf90_t import * - * from variables import variables # <<<<<<<<<<<<<< - * from preprocessed_text import preprocessed_text - * from subroutines import subroutines - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__variables, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":31 - * from irpf90_t import * - * from variables import variables - * from preprocessed_text import preprocessed_text # <<<<<<<<<<<<<< - * from subroutines import subroutines - * import regexps, re - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__preprocessed_text)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__preprocessed_text)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__preprocessed_text)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__preprocessed_text), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__preprocessed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":32 - * from variables import variables - * from preprocessed_text import preprocessed_text - * from subroutines import subroutines # <<<<<<<<<<<<<< - * import regexps, re - * import error - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__subroutines)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__subroutines)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__subroutines)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__subroutines), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__subroutines, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":33 - * from preprocessed_text import preprocessed_text - * from subroutines import subroutines - * import regexps, re # <<<<<<<<<<<<<< - * import error - * - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__regexps), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__regexps, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__re), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":34 - * from subroutines import subroutines - * import regexps, re - * import error # <<<<<<<<<<<<<< - * - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__error), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__error, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":36 - * import error - * - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) # <<<<<<<<<<<<<< - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_11parsed_text_lambda1, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__keys); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_2 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__vtuple, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":37 - * - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) # <<<<<<<<<<<<<< - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) - * re_string_sub = regexps.re_string.sub - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_11parsed_text_lambda2, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__subroutines); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__keys); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__stuple, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":38 - * vtuple = map(lambda v: (v, variables[v].same_as, variables[v].regexp), variables.keys()) - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) # <<<<<<<<<<<<<< - * re_string_sub = regexps.re_string.sub - * - */ - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_11parsed_text_lambda3, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__stuple); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_3 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__stuple, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":39 - * stuple = map(lambda s: (s, subroutines[s].regexp), subroutines.keys()) - * stuple = filter(lambda s: subroutines[s[0]].is_function, stuple) - * re_string_sub = regexps.re_string.sub # <<<<<<<<<<<<<< - * - * regexps_re_string_sub = regexps.re_string.sub - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__regexps); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__re_string); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__sub); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_string_sub, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":41 - * re_string_sub = regexps.re_string.sub - * - * regexps_re_string_sub = regexps.re_string.sub # <<<<<<<<<<<<<< - * def find_variables_in_line(line): - * assert isinstance(line,Line) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__regexps); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__re_string); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__sub); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_1, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":42 - * - * regexps_re_string_sub = regexps.re_string.sub - * def find_variables_in_line(line): # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * result = [] - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_find_variables_in_line, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_19, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":57 - * return result - * - * def find_funcs_in_line(line): # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * result = [] - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_1find_funcs_in_line, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__find_funcs_in_line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":70 - * - * - * def find_subroutine_in_line(line): # <<<<<<<<<<<<<< - * assert type(line) == Call - * buffer = line.text.split('(')[0] - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_2find_subroutine_in_line, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_27, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":76 - * return buffer - * - * def check_touch(line,vars,main_vars): # <<<<<<<<<<<<<< - * def fun(main_var): - * if main_var not in variables: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_3check_touch, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__check_touch, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":93 - * - * ################################################################################ - * def update_variables(): # <<<<<<<<<<<<<< - * for filename,text in preprocessed_text: - * - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_4update_variables, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__update_variables, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":122 - * ################################################################################ - * - * def get_parsed_text(): # <<<<<<<<<<<<<< - * def func(filename, text): - * varlist = [] - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_5get_parsed_text, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__get_parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":247 - * return parallel_loop(func,preprocessed_text) - * - * update_variables() # <<<<<<<<<<<<<< - * parsed_text = get_parsed_text() - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__update_variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":248 - * - * update_variables() - * parsed_text = get_parsed_text() # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":253 - * ###################################################################### - * - * def move_to_top(text,t): # <<<<<<<<<<<<<< - * assert type(text) == list - * assert t in [ NoDep, Declaration, Implicit, Use, Cont_provider ] - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_6move_to_top, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__move_to_top, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":273 - * return text - * - * result = [] # <<<<<<<<<<<<<< - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) - */ - __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__result, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "parsed_text.py":274 - * - * result = [] - * for filename,text in parsed_text: # <<<<<<<<<<<<<< - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) { - PyObject* sequence = __pyx_t_2; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L4_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L5_unpacking_done; - __pyx_L4_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L5_unpacking_done:; - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__filename, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":275 - * result = [] - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) # <<<<<<<<<<<<<< - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__NoDep); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_6 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":276 - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) # <<<<<<<<<<<<<< - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_7 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":277 - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) # <<<<<<<<<<<<<< - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_6 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":278 - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) # <<<<<<<<<<<<<< - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_7 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":279 - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) # <<<<<<<<<<<<<< - * result.append ( (filename,text) ) - * parsed_text = result - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_6 = 0; - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":280 - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) # <<<<<<<<<<<<<< - * parsed_text = result - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__result); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__filename); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_7 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_Append(__pyx_t_3, ((PyObject *)__pyx_t_6)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":281 - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) - * parsed_text = result # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__result); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":285 - * - * ###################################################################### - * def build_sub_needs(): # <<<<<<<<<<<<<< - * # Needs - * for filename, text in parsed_text: - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_7build_sub_needs, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__build_sub_needs, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":308 - * sub._needs += vars - * - * build_sub_needs() # <<<<<<<<<<<<<< - * - * ##################################################################### - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__build_sub_needs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":312 - * ##################################################################### - * - * def add_subroutine_needs(): # <<<<<<<<<<<<<< - * main_result = [] - * for filename, text in parsed_text: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_8add_subroutine_needs, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_37, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":325 - * return main_result - * - * parsed_text = add_subroutine_needs() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s_37); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":328 - * - * ###################################################################### - * def move_variables(): # <<<<<<<<<<<<<< - * - * def func(filename, text): - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_9move_variables, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__move_variables, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":435 - * #return parallel_loop(func,parsed_text) - * - * parsed_text = move_variables() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 435; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 435; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 435; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":438 - * - * ###################################################################### - * def build_needs(): # <<<<<<<<<<<<<< - * # Needs - * for filename, text in parsed_text: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_10build_needs, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 438; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__build_needs, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 438; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":488 - * - * - * build_needs() # <<<<<<<<<<<<<< - * - * result = [] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__build_needs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":490 - * build_needs() - * - * result = [] # <<<<<<<<<<<<<< - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__result, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "parsed_text.py":491 - * - * result = [] - * for filename,text in parsed_text: # <<<<<<<<<<<<<< - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyList_GET_ITEM(sequence, 0); - __pyx_t_3 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L9_unpacking_done; - __pyx_L8_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L9_unpacking_done:; - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__filename, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":492 - * result = [] - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) # <<<<<<<<<<<<<< - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__NoDep); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":493 - * for filename,text in parsed_text: - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) # <<<<<<<<<<<<<< - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 493; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":494 - * text = move_to_top(text,NoDep) - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) # <<<<<<<<<<<<<< - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":495 - * text = move_to_top(text,Declaration) - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) # <<<<<<<<<<<<<< - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":496 - * text = move_to_top(text,Implicit) - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) # <<<<<<<<<<<<<< - * result.append ( (filename,text) ) - * parsed_text = result - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__move_to_top); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__text, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 496; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":497 - * text = move_to_top(text,Use) - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) # <<<<<<<<<<<<<< - * parsed_text = result - * - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__result); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__filename); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_7 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyObject_Append(__pyx_t_6, ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":498 - * text = move_to_top(text,Cont_provider) - * result.append ( (filename,text) ) - * parsed_text = result # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__result); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":502 - * - * ###################################################################### - * from command_line import command_line # <<<<<<<<<<<<<< - * - * def check_opt(): - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":504 - * from command_line import command_line - * - * def check_opt(): # <<<<<<<<<<<<<< - * if not command_line.do_checkopt: - * return - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_11check_opt, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__check_opt, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":520 - * elif type(line) == Enddo: - * do_level -= 1 - * check_opt() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__check_opt); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":523 - * - * ###################################################################### - * def perform_loop_substitutions(): # <<<<<<<<<<<<<< - * main_result = [] - * for filename, text in parsed_text: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_11parsed_text_12perform_loop_substitutions, NULL, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_38, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "parsed_text.py":538 - * return main_result - * - * parsed_text = perform_loop_substitutions() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s_38); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":541 - * - * ###################################################################### - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * for i in range(len(parsed_text)): - * if parsed_text[i][0] == sys.argv[1]: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_t_1, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_9) { - - /* "parsed_text.py":542 - * ###################################################################### - * if __name__ == '__main__': - * for i in range(len(parsed_text)): # <<<<<<<<<<<<<< - * if parsed_text[i][0] == sys.argv[1]: - * print '!-------- %s -----------'%(parsed_text[i][0]) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_range, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__i, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "parsed_text.py":543 - * if __name__ == '__main__': - * for i in range(len(parsed_text)): - * if parsed_text[i][0] == sys.argv[1]: # <<<<<<<<<<<<<< - * print '!-------- %s -----------'%(parsed_text[i][0]) - * for line in parsed_text[i][1]: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyObject_GetItem(__pyx_t_1, __pyx_t_3); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_6, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__sys); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__argv); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_1, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_9) { - - /* "parsed_text.py":544 - * for i in range(len(parsed_text)): - * if parsed_text[i][0] == sys.argv[1]: - * print '!-------- %s -----------'%(parsed_text[i][0]) # <<<<<<<<<<<<<< - * for line in parsed_text[i][1]: - * print line[1] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__i); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyObject_GetItem(__pyx_t_1, __pyx_t_6); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_39), __pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_3)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "parsed_text.py":545 - * if parsed_text[i][0] == sys.argv[1]: - * print '!-------- %s -----------'%(parsed_text[i][0]) - * for line in parsed_text[i][1]: # <<<<<<<<<<<<<< - * print line[1] - * print line[0], line[1].filename - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__i); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetItem(__pyx_t_3, __pyx_t_6); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_1, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) { - __pyx_t_1 = __pyx_t_6; __Pyx_INCREF(__pyx_t_1); __pyx_t_10 = 0; - __pyx_t_11 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_11 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_6); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_6); __pyx_t_10++; - } else { - __pyx_t_6 = __pyx_t_11(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__line, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "parsed_text.py":546 - * print '!-------- %s -----------'%(parsed_text[i][0]) - * for line in parsed_text[i][1]: - * print line[1] # <<<<<<<<<<<<<< - * print line[0], line[1].filename - * #for i in subroutines: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_6, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__Pyx_PrintOne(0, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 546; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "parsed_text.py":547 - * for line in parsed_text[i][1]: - * print line[1] - * print line[0], line[1].filename # <<<<<<<<<<<<<< - * #for i in subroutines: - * # print i, subroutines[i].needs, subroutines[i].to_provide - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__line); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__line); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_3, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__filename); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_6 = 0; - __pyx_t_3 = 0; - if (__Pyx_Print(0, ((PyObject *)__pyx_t_7), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L13; - } - __pyx_L13:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "parsed_text.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - if (__pyx_m) { - __Pyx_AddTraceback("init parsed_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init parsed_text"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", - index, (index == 1) ? "" : "s"); -} - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); -} - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } else if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } - } - return 0; -} - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { - PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); -} - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *local_type, *local_value, *local_tb; - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - local_type = tstate->curexc_type; - local_value = tstate->curexc_value; - local_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - PyErr_NormalizeException(&local_type, &local_value, &local_tb); - if (unlikely(tstate->curexc_type)) - goto bad; - #if PY_MAJOR_VERSION >= 3 - if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) - goto bad; - #endif - *type = local_type; - *value = local_value; - *tb = local_tb; - Py_INCREF(local_type); - Py_INCREF(local_value); - Py_INCREF(local_tb); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - /* Make sure tstate is in a consistent state when we XDECREF - these objects (XDECREF may run arbitrary code). */ - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); - return 0; -bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -} - - -static PyObject* __Pyx_PyObject_PopIndex(PyObject* L, Py_ssize_t ix) { - PyObject *r, *m, *t, *py_ix; -#if PY_VERSION_HEX >= 0x02040000 - if (likely(PyList_CheckExact(L))) { - Py_ssize_t size = PyList_GET_SIZE(L); - if (likely(size > (((PyListObject*)L)->allocated >> 1))) { - if (ix < 0) { - ix += size; - } - if (likely(0 <= ix && ix < size)) { - Py_ssize_t i; - PyObject* v = PyList_GET_ITEM(L, ix); - Py_SIZE(L) -= 1; - size -= 1; - for(i=ix; iexc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} - -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - - tmp_type = tstate->curexc_type; - tmp_value = tstate->curexc_value; - tmp_tb = tstate->curexc_traceback; - tstate->curexc_type = type; - tstate->curexc_value = value; - tstate->curexc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->curexc_type; - *value = tstate->curexc_value; - *tb = tstate->curexc_traceback; - - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; -} - - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/parsed_text.so b/src/parsed_text.so deleted file mode 100755 index 325ad74c41747a9fac2cf86344b04addb143ecce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 945925 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

1}gx?CH%`9*33ODWbITkZ^?lALK?I)yT;B2HD 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

b(&UjXlY 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%0Dg-I1&C~SWa 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�#mSjk?D5GGaha4SFjG(ZAa~LW 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�?y-l8i;$$`~&uvGCh57X03%0?5L5exJh~eqpN$ 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%0D-)IUj!cklw5i%mdw0veQ^6@q?tRq2 zQ(!W;4}#60NKo1|0dQQ`wG9KaBl)pGYA8`ndT%N{ps4B`x!*Sz*7TGwVcc=Q&7!e^ zQmS)i29rF4&~Rxm*OGIR=FO^#mU!I!Y9(bqCy;24nb&>l-QLsL+jm$eQhx=e(Lhu- zbLgS6%=~;pH|Jb?+H=1UO2N%yZ8gPjbDF|UbxpDI@~JZ_CsqVXi%N@5BCqzSIMcjz zm)iaIph+i^wn*(9)9?!ON;^5Q2O_@;Ws=m#Vw%|lhORJDuldugAqNxhK^!gBVbc&g z{7l`pgn6!?$_+aiquMc(lDEMowb^xbrk~BhhI}vupfn+oY6<+A8!R2eFu8M}ZS>-l z+2^*o)nWU81DH9)IkpV;&r4|Hv^mBWl*Or!S_l#;2@`#vnaMw?~Od%{t`VWL8ei@g{dOM@4E| zlBpxnz&Z4W22IF#(IwSi_HLMuzEo?B`7Bx)ln^`(nxSLb#uK{FbWUR_P(`nTr2JDQ zlMaFOgpR>m*Gg}QN1E+K=sl9``H`v^Z|GGM{S5quu09pe9U1+f2==^#Q9$$9yk_?V aneG1qsIz;cmacc}(&0x@SUW6j-2V^O-53S{ diff --git a/src/preprocessed_text.c b/src/preprocessed_text.c deleted file mode 100644 index 6fde91c..0000000 --- a/src/preprocessed_text.c +++ /dev/null @@ -1,20889 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:15 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__preprocessed_text -#define __PYX_HAVE_API__preprocessed_text -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "preprocessed_text.py", -}; - -/*--- Type declarations ---*/ -struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates; -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do; -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements; -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end; - -/* "preprocessed_text.py":242 - * - * ###################################################################### - * def execute_templates(text): # <<<<<<<<<<<<<< - * '''Execute the templates''' - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) - */ -struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates { - PyObject_HEAD - PyObject *__pyx_v_fail; -}; - - -/* "preprocessed_text.py":680 - * - * ###################################################################### - * def process_old_style_do(text): # <<<<<<<<<<<<<< - * '''Changes old-style do loops to new style''' - * assert type(text) == list - */ -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do { - PyObject_HEAD - PyObject *__pyx_v_text; -}; - - -/* "preprocessed_text.py":454 - * - * ###################################################################### - * def irp_simple_statements(text): # <<<<<<<<<<<<<< - * '''Processes simple statements''' - * - */ -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements { - PyObject_HEAD - PyObject *__pyx_v_debug_conditions; - PyObject *__pyx_v_process_irp_rw; - PyObject *__pyx_v_process_subroutine; -}; - - -/* "preprocessed_text.py":759 - * - * ###################################################################### - * def check_begin_end(text): # <<<<<<<<<<<<<< - * '''Checks x...endx consistence''' - * - */ -struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end { - PyObject_HEAD - PyObject *__pyx_v_d; - PyObject *__pyx_v_text; -}; - - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} - - -#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_List_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - - -#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { - PyObject *r; - if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { - r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { - r = PySequence_GetItem(o, i); - } - else { - r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); - } - return r; -} - -static CYTHON_INLINE int __Pyx_NegateNonNeg(int b) { - return unlikely(b < 0) ? b : !b; -} -static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { - return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ - -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname); - -static CYTHON_INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) { - if (likely(PyList_CheckExact(L))) { - if (PyList_Append(L, x) < 0) return NULL; - Py_INCREF(Py_None); - return Py_None; /* this is just to have an accurate signature */ - } - else { - PyObject *r, *m; - m = __Pyx_GetAttrString(L, "append"); - if (!m) return NULL; - r = PyObject_CallFunctionObjArgs(m, x, NULL); - Py_DECREF(m); - return r; - } -} - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname); - -static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void); - -#if PY_MAJOR_VERSION >= 3 -static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) { - PyObject *value; - if (unlikely(d == Py_None)) { - __Pyx_RaiseNoneIndexingError(); - return NULL; - } - value = PyDict_GetItemWithError(d, key); - if (unlikely(!value)) { - if (!PyErr_Occurred()) - PyErr_SetObject(PyExc_KeyError, key); - return NULL; - } - Py_INCREF(value); - return value; -} -#else - #define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key) -#endif - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'preprocessed_text' */ -static PyTypeObject *__pyx_ptype_17preprocessed_text___pyx_scope_struct__execute_templates = 0; -static PyTypeObject *__pyx_ptype_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements = 0; -static PyTypeObject *__pyx_ptype_17preprocessed_text___pyx_scope_struct_2_process_old_style_do = 0; -static PyTypeObject *__pyx_ptype_17preprocessed_text___pyx_scope_struct_3_check_begin_end = 0; -#define __Pyx_MODULE_NAME "preprocessed_text" -int __pyx_module_is_main_preprocessed_text = 0; - -/* Implementation of 'preprocessed_text' */ -static PyObject *__pyx_builtin_map; -static PyObject *__pyx_builtin_enumerate; -static PyObject *__pyx_builtin_open; -static PyObject *__pyx_builtin_zip; -static PyObject *__pyx_builtin_IOError; -static PyObject *__pyx_builtin_range; -static PyObject *__pyx_builtin_IndexError; -static PyObject *__pyx_builtin_filter; -static char __pyx_k_1[] = "create_preprocessed_text"; -static char __pyx_k_2[] = "$IRP_ALIGN"; -static char __pyx_k_3[] = "!"; -static char __pyx_k_4[] = " ! "; -static char __pyx_k_6[] = "()'\"[]"; -static char __pyx_k_7[] = " "; -static char __pyx_k_8[] = "#"; -static char __pyx_k_9[] = "irpf90 may not work with preprocessor directives. You can use\n Irp_if ... Irp_else ... Irp_endif\ninstead of\n #ifdef ... #else ... #endif"; -static char __pyx_k_10[] = "case("; -static char __pyx_k_12[] = "$omp"; -static char __pyx_k_13[] = "dec$"; -static char __pyx_k_14[] = "dir$"; -static char __pyx_k_15[] = "$ "; -static char __pyx_k_16[] = "'do while' should be in 2 words."; -static char __pyx_k_17[] = "In Begin_Shell, %s '%s'"; -static char __pyx_k_18[] = "Nested Begin_shell"; -static char __pyx_k_19[] = "%s%s_shell_%d"; -static char __pyx_k_20[] = "%s_shell_%d"; -static char __pyx_k_21[] = "%s < %s"; -static char __pyx_k_22[] = "\n"; -static char __pyx_k_23[] = "["; -static char __pyx_k_25[] = "Too many"; -static char __pyx_k_26[] = "]"; -static char __pyx_k_28[] = "Begin_shell missing"; -static char __pyx_k_29[] = "In %s, %s"; -static char __pyx_k_30[] = "$%s"; -static char __pyx_k_32[] = "Syntax error"; -static char __pyx_k_33[] = ""; -static char __pyx_k_35[] = ","; -static char __pyx_k_37[] = "template = \"\"\"\n"; -static char __pyx_k_38[] = "Nested Begin_Template"; -static char __pyx_k_39[] = "Missing Subst"; -static char __pyx_k_40[] = "\"\"\"\n"; -static char __pyx_k_41[] = "v = []\n"; -static char __pyx_k_42[] = "Nested Begin_template"; -static char __pyx_k_43[] = "Subst already defined"; -static char __pyx_k_44[] = ";;"; -static char __pyx_k_46[] = ";"; -static char __pyx_k_48[] = "%d variables defined, and %d substitutions"; -static char __pyx_k_49[] = "v.append( { \\\n"; - static char __pyx_k_50[] = " \"%s\": \"\"\"%s\"\"\" ,\n"; -static char __pyx_k_51[] = "} )\n"; -static char __pyx_k_52[] = "for d in v:\n t0 = str(template)\n"; -static char __pyx_k_53[] = " t0 = t0.replace('%s',d['%s'])\n"; -static char __pyx_k_54[] = " print t0\n"; -static char __pyx_k_55[] = "%s%s_template_%d"; -static char __pyx_k_56[] = "%s_template_%d"; -static char __pyx_k_57[] = "python < %s"; -static char __pyx_k_58[] = "^\\s*[!#]"; -static char __pyx_k_60[] = "^\\s*[^ 0-9]+"; -static char __pyx_k_62[] = "Cc#!*"; -static char __pyx_k_63[] = "&"; -static char __pyx_k_64[] = "(\\s*)(.*)(\\+=)(.*$)"; -static char __pyx_k_65[] = "(\\s*)(.*)(-=)(.*$)"; -static char __pyx_k_66[] = "(\\s*)(.*)(\\*=)(.*$)"; -static char __pyx_k_67[] = "+="; -static char __pyx_k_68[] = "(.*)(\\))(\\s*)(.*)(\\+=)(.*$)"; -static char __pyx_k_69[] = "\\1\\2\\4=\\4+(\\6)"; -static char __pyx_k_70[] = "\\1\\2=\\2+(\\4)"; -static char __pyx_k_71[] = "-="; -static char __pyx_k_72[] = "\\1\\2=\\2-(\\4)"; -static char __pyx_k_73[] = "*="; -static char __pyx_k_74[] = "\\1\\2=\\2*(\\4)"; -static char __pyx_k_75[] = "#123456789 "; -static char __pyx_k_76[] = "%s%s\n"; -static char __pyx_k_77[] = "%s%s"; -static char __pyx_k_78[] = "&\n%s %s %s"; -static char __pyx_k_79[] = "Error in IRP_%s statement"; -static char __pyx_k_80[] = "! >>> %s"; -static char __pyx_k_81[] = " call %ser_%s('%s')"; -static char __pyx_k_82[] = "! >>> END %s "; -static char __pyx_k_83[] = " call irp_leave(irp_here)"; -static char __pyx_k_86[] = "'"; -static char __pyx_k_87[] = " print *, '%s = ', %s"; -static char __pyx_k_88[] = " print *, ''"; -static char __pyx_k_89[] = "(%s"; -static char __pyx_k_90[] = "("; -static char __pyx_k_92[] = "Error in Assert statement"; -static char __pyx_k_93[] = "''"; -static char __pyx_k_95[] = " if (.not.%s) then"; -static char __pyx_k_96[] = " call irp_trace"; -static char __pyx_k_97[] = " print *, irp_here//': Assert failed:'"; -static char __pyx_k_98[] = " print *, ' file: %s, line: %d'"; -static char __pyx_k_99[] = " print *, '%s'"; -static char __pyx_k__0[] = "0"; -static char __pyx_k__S[] = "S"; -static char __pyx_k__a[] = "a"; -static char __pyx_k__b[] = "b"; -static char __pyx_k__i[] = "i"; -static char __pyx_k__l[] = "l"; -static char __pyx_k__r[] = "r"; -static char __pyx_k__t[] = "t"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__x[] = "x"; -static char __pyx_k__y[] = "y"; -static char __pyx_k_100[] = " stop 1"; -static char __pyx_k_101[] = " endif"; -static char __pyx_k_102[] = "! <<< END %s"; -static char __pyx_k_106[] = "Error in Begin_provider statement"; -static char __pyx_k_107[] = " character*(%d) :: irp_here = '%s'"; -static char __pyx_k_108[] = " call irp_enter(irp_here)"; -static char __pyx_k_112[] = "Error in Cont_provider statement"; -static char __pyx_k_113[] = "program irp_program"; -static char __pyx_k_114[] = "call irp_init_timer()"; -static char __pyx_k_115[] = "!$OMP PARALLEL"; -static char __pyx_k_116[] = "!$OMP MASTER"; -static char __pyx_k_117[] = " call %s"; -static char __pyx_k_118[] = "!$OMP END MASTER"; -static char __pyx_k_119[] = "!$OMP END PARALLEL"; -static char __pyx_k_120[] = "call irp_print_timer()"; -static char __pyx_k_121[] = " call irp_finalize_%s()"; -static char __pyx_k_122[] = "end program"; -static char __pyx_k_123[] = "subroutine %s"; -static char __pyx_k_124[] = "\""; -static char __pyx_k_127[] = "Error in include statement"; -static char __pyx_k_128[] = "! include '%s'"; -static char __pyx_k_129[] = " enddo"; -static char __pyx_k_130[] = "Old-style do loops should end with 'continue' or 'end do'"; -static char __pyx_k_134[] = "Error in if statement"; -static char __pyx_k_135[] = ")"; -static char __pyx_k_136[] = "%s then"; -static char __pyx_k_137[] = "end%s"; -static char __pyx_k_138[] = "Missing 'end%s'"; -static char __pyx_k_139[] = " is not closed"; -static char __pyx_k_140[] = "Beginning of block not matched"; -static char __pyx_k_141[] = "change_single_line_ifs"; -static char __pyx_k_142[] = "process_old_style_do"; -static char __pyx_k_143[] = "irp_simple_statements"; -static char __pyx_k_144[] = "invert.irp.f"; -static char __pyx_k_145[] = "=== "; -static char __pyx_k_146[] = " ==="; -static char __pyx_k_147[] = "*"; -static char __pyx_k_148[] = "end\\s+if"; -static char __pyx_k_150[] = "else\\s+if"; -static char __pyx_k_152[] = "end\\s+do"; -static char __pyx_k_154[] = "end\\s+type"; -static char __pyx_k_156[] = "end\\s+module"; -static char __pyx_k_158[] = "end\\s+select"; -static char __pyx_k_160[] = "&begin_provider"; -static char __pyx_k__Do[] = "Do"; -static char __pyx_k__If[] = "If"; -static char __pyx_k__do[] = "do"; -static char __pyx_k__if[] = "if"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__re[] = "re"; -static char __pyx_k__rw[] = "rw"; -static char __pyx_k__Doc[] = "Doc"; -static char __pyx_k__End[] = "End"; -static char __pyx_k__Use[] = "Use"; -static char __pyx_k__end[] = "end"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__pop[] = "pop"; -static char __pyx_k__str[] = "str"; -static char __pyx_k__sub[] = "sub"; -static char __pyx_k__use[] = "use"; -static char __pyx_k__zip[] = "zip"; -static char __pyx_k__Call[] = "Call"; -static char __pyx_k__Case[] = "Case"; -static char __pyx_k__Else[] = "Else"; -static char __pyx_k__Free[] = "Free"; -static char __pyx_k__Line[] = "Line"; -static char __pyx_k___doc[] = "_doc"; -static char __pyx_k__call[] = "call"; -static char __pyx_k__case[] = "case"; -static char __pyx_k__else[] = "else"; -static char __pyx_k__fail[] = "fail"; -static char __pyx_k__find[] = "find"; -static char __pyx_k__form[] = "form"; -static char __pyx_k__free[] = "free"; -static char __pyx_k__join[] = "join"; -static char __pyx_k__line[] = "line"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__read[] = "read"; -static char __pyx_k__save[] = "save"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__then[] = "then"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__warn[] = "warn"; -static char __pyx_k__writ[] = "writ"; -static char __pyx_k__Enddo[] = "Enddo"; -static char __pyx_k__Endif[] = "Endif"; -static char __pyx_k__NoDep[] = "NoDep"; -static char __pyx_k__Subst[] = "Subst"; -static char __pyx_k__Touch[] = "Touch"; -static char __pyx_k__align[] = "align"; -static char __pyx_k__begin[] = "begin"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__debug[] = "debug"; -static char __pyx_k__enddo[] = "enddo"; -static char __pyx_k__endif[] = "endif"; -static char __pyx_k__error[] = "error"; -static char __pyx_k__group[] = "group"; -static char __pyx_k__lines[] = "lines"; -static char __pyx_k__lower[] = "lower"; -static char __pyx_k__match[] = "match"; -static char __pyx_k__popen[] = "popen"; -static char __pyx_k__range[] = "range"; -static char __pyx_k__split[] = "split"; -static char __pyx_k__strip[] = "strip"; -static char __pyx_k__subst[] = "subst"; -static char __pyx_k__touch[] = "touch"; -static char __pyx_k__Assert[] = "Assert"; -static char __pyx_k__Elseif[] = "Elseif"; -static char __pyx_k__Irp_If[] = "Irp_If"; -static char __pyx_k__Openmp[] = "Openmp"; -static char __pyx_k__Return[] = "Return"; -static char __pyx_k__Select[] = "Select"; -static char __pyx_k__assert[] = "assert"; -static char __pyx_k__elseif[] = "elseif"; -static char __pyx_k__filter[] = "filter"; -static char __pyx_k__irp_id[] = "irp_id"; -static char __pyx_k__irp_if[] = "irp_if"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__is_doc[] = "is_doc"; -static char __pyx_k__lstrip[] = "lstrip"; -static char __pyx_k__no_dep[] = "no_dep"; -static char __pyx_k__number[] = "number"; -static char __pyx_k__remove[] = "remove"; -static char __pyx_k__return[] = "return"; -static char __pyx_k__rstrip[] = "rstrip"; -static char __pyx_k__search[] = "search"; -static char __pyx_k__select[] = "select"; -static char __pyx_k__End_doc[] = "End_doc"; -static char __pyx_k__IOError[] = "IOError"; -static char __pyx_k__Include[] = "Include"; -static char __pyx_k__Missing[] = "Missing"; -static char __pyx_k__Program[] = "Program"; -static char __pyx_k__Provide[] = "Provide"; -static char __pyx_k__compile[] = "compile"; -static char __pyx_k__defined[] = "defined"; -static char __pyx_k__dowhile[] = "dowhile"; -static char __pyx_k__end_doc[] = "end_doc"; -static char __pyx_k__endtype[] = "endtype"; -static char __pyx_k__include[] = "include"; -static char __pyx_k__isdigit[] = "isdigit"; -static char __pyx_k__program[] = "program"; -static char __pyx_k__provide[] = "provide"; -static char __pyx_k__re_decl[] = "re_decl"; -static char __pyx_k__re_test[] = "re_test"; -static char __pyx_k__regexps[] = "regexps"; -static char __pyx_k__replace[] = "replace"; -static char __pyx_k__Continue[] = "Continue"; -static char __pyx_k__Function[] = "Function"; -static char __pyx_k__Implicit[] = "Implicit"; -static char __pyx_k__Irp_Else[] = "Irp_Else"; -static char __pyx_k__Irp_read[] = "Irp_read"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__continue[] = "continue"; -static char __pyx_k__do_debug[] = "do_debug"; -static char __pyx_k__endswith[] = "endswith"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__function[] = "function"; -static char __pyx_k__get_text[] = "get_text"; -static char __pyx_k__get_type[] = "get_type"; -static char __pyx_k__implicit[] = "implicit"; -static char __pyx_k__irp_else[] = "irp_else"; -static char __pyx_k__irp_read[] = "irp_read"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__re_enddo[] = "re_enddo"; -static char __pyx_k__re_endif[] = "re_endif"; -static char __pyx_k__template[] = "template"; -static char __pyx_k__Begin_doc[] = "Begin_doc"; -static char __pyx_k__Directive[] = "Directive"; -static char __pyx_k__End_shell[] = "End_shell"; -static char __pyx_k__Free_form[] = "Free_form"; -static char __pyx_k__Irp_Endif[] = "Irp_Endif"; -static char __pyx_k__Irp_write[] = "Irp_write"; -static char __pyx_k__SoftTouch[] = "SoftTouch"; -static char __pyx_k__begin_doc[] = "begin_doc"; -static char __pyx_k__do_assert[] = "do_assert"; -static char __pyx_k__do_openmp[] = "do_openmp"; -static char __pyx_k__end_shell[] = "end_shell"; -static char __pyx_k__endmodule[] = "endmodule"; -static char __pyx_k__endselect[] = "endselect"; -static char __pyx_k__enumerate[] = "enumerate"; -static char __pyx_k__irp_endif[] = "irp_endif"; -static char __pyx_k__irp_write[] = "irp_write"; -static char __pyx_k__re_elseif[] = "re_elseif"; -static char __pyx_k__readlines[] = "readlines"; -static char __pyx_k__recursive[] = "recursive"; -static char __pyx_k__Empty_line[] = "Empty_line"; -static char __pyx_k__End_select[] = "End_select"; -static char __pyx_k__Fixed_form[] = "Fixed_form"; -static char __pyx_k__IndexError[] = "IndexError"; -static char __pyx_k__Subroutine[] = "Subroutine"; -static char __pyx_k__directives[] = "directives"; -static char __pyx_k__do_profile[] = "do_profile"; -static char __pyx_k__re_comment[] = "re_comment"; -static char __pyx_k__re_endtype[] = "re_endtype"; -static char __pyx_k__selectcase[] = "selectcase"; -static char __pyx_k__soft_touch[] = "soft_touch"; -static char __pyx_k__startswith[] = "startswith"; -static char __pyx_k__subroutine[] = "subroutine"; -static char __pyx_k__writelines[] = "writelines"; -static char __pyx_k__Begin_shell[] = "Begin_shell"; -static char __pyx_k__Declaration[] = "Declaration"; -static char __pyx_k__Provide_all[] = "Provide_all"; -static char __pyx_k__Simple_line[] = "Simple_line"; -static char __pyx_k__begin_shell[] = "begin_shell"; -static char __pyx_k__simple_dict[] = "simple_dict"; -static char __pyx_k__End_provider[] = "End_provider"; -static char __pyx_k__End_template[] = "End_template"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__end_provider[] = "end_provider"; -static char __pyx_k__end_template[] = "end_template"; -static char __pyx_k__find_subname[] = "find_subname"; -static char __pyx_k__irpf90_files[] = "irpf90_files"; -static char __pyx_k__re_endmodule[] = "re_endmodule"; -static char __pyx_k__re_endselect[] = "re_endselect"; -static char __pyx_k__Cont_provider[] = "Cont_provider"; -static char __pyx_k__add_operators[] = "add_operators"; -static char __pyx_k__execute_shell[] = "execute_shell"; -static char __pyx_k__parallel_loop[] = "parallel_loop"; -static char __pyx_k__remove_ifdefs[] = "remove_ifdefs"; -static char __pyx_k__Begin_provider[] = "Begin_provider"; -static char __pyx_k__Begin_template[] = "Begin_template"; -static char __pyx_k__begin_provider[] = "begin_provider"; -static char __pyx_k__begin_template[] = "begin_template"; -static char __pyx_k__change_includes[] = "change_includes"; -static char __pyx_k__check_begin_end[] = "check_begin_end"; -static char __pyx_k__remove_comments[] = "remove_comments"; -static char __pyx_k__execute_templates[] = "execute_templates"; -static char __pyx_k__preprocessed_text[] = "preprocessed_text"; -static char __pyx_k__remove_continuation[] = "remove_continuation"; -static PyObject *__pyx_n_s_1; -static PyObject *__pyx_kp_s_10; -static PyObject *__pyx_kp_s_100; -static PyObject *__pyx_kp_s_101; -static PyObject *__pyx_kp_s_102; -static PyObject *__pyx_kp_s_106; -static PyObject *__pyx_kp_s_107; -static PyObject *__pyx_kp_s_108; -static PyObject *__pyx_kp_s_112; -static PyObject *__pyx_kp_s_113; -static PyObject *__pyx_kp_s_114; -static PyObject *__pyx_kp_s_115; -static PyObject *__pyx_kp_s_116; -static PyObject *__pyx_kp_s_117; -static PyObject *__pyx_kp_s_118; -static PyObject *__pyx_kp_s_119; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_120; -static PyObject *__pyx_kp_s_121; -static PyObject *__pyx_kp_s_122; -static PyObject *__pyx_kp_s_123; -static PyObject *__pyx_kp_s_124; -static PyObject *__pyx_kp_s_127; -static PyObject *__pyx_kp_s_128; -static PyObject *__pyx_kp_s_129; -static PyObject *__pyx_kp_s_13; -static PyObject *__pyx_kp_s_130; -static PyObject *__pyx_kp_s_134; -static PyObject *__pyx_kp_s_135; -static PyObject *__pyx_kp_s_136; -static PyObject *__pyx_kp_s_137; -static PyObject *__pyx_kp_s_138; -static PyObject *__pyx_kp_s_139; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_140; -static PyObject *__pyx_n_s_141; -static PyObject *__pyx_n_s_142; -static PyObject *__pyx_n_s_143; -static PyObject *__pyx_kp_s_144; -static PyObject *__pyx_kp_s_145; -static PyObject *__pyx_kp_s_146; -static PyObject *__pyx_n_s_147; -static PyObject *__pyx_kp_s_148; -static PyObject *__pyx_kp_s_15; -static PyObject *__pyx_kp_s_150; -static PyObject *__pyx_kp_s_152; -static PyObject *__pyx_kp_s_154; -static PyObject *__pyx_kp_s_156; -static PyObject *__pyx_kp_s_158; -static PyObject *__pyx_kp_s_16; -static PyObject *__pyx_kp_s_160; -static PyObject *__pyx_kp_s_17; -static PyObject *__pyx_kp_s_18; -static PyObject *__pyx_kp_s_19; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_20; -static PyObject *__pyx_kp_s_21; -static PyObject *__pyx_kp_s_22; -static PyObject *__pyx_kp_s_23; -static PyObject *__pyx_kp_s_25; -static PyObject *__pyx_kp_s_26; -static PyObject *__pyx_kp_s_28; -static PyObject *__pyx_kp_s_29; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_30; -static PyObject *__pyx_kp_s_32; -static PyObject *__pyx_kp_s_33; -static PyObject *__pyx_kp_s_35; -static PyObject *__pyx_kp_s_37; -static PyObject *__pyx_kp_s_38; -static PyObject *__pyx_kp_s_39; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_40; -static PyObject *__pyx_kp_s_41; -static PyObject *__pyx_kp_s_42; -static PyObject *__pyx_kp_s_43; -static PyObject *__pyx_kp_s_44; -static PyObject *__pyx_kp_s_46; -static PyObject *__pyx_kp_s_48; -static PyObject *__pyx_kp_s_49; -static PyObject *__pyx_kp_s_50; -static PyObject *__pyx_kp_s_51; -static PyObject *__pyx_kp_s_52; -static PyObject *__pyx_kp_s_53; -static PyObject *__pyx_kp_s_54; -static PyObject *__pyx_kp_s_55; -static PyObject *__pyx_kp_s_56; -static PyObject *__pyx_kp_s_57; -static PyObject *__pyx_kp_s_58; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_60; -static PyObject *__pyx_kp_s_62; -static PyObject *__pyx_kp_s_63; -static PyObject *__pyx_kp_s_64; -static PyObject *__pyx_kp_s_65; -static PyObject *__pyx_kp_s_66; -static PyObject *__pyx_kp_s_67; -static PyObject *__pyx_kp_s_68; -static PyObject *__pyx_kp_s_69; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_kp_s_70; -static PyObject *__pyx_kp_s_71; -static PyObject *__pyx_kp_s_72; -static PyObject *__pyx_kp_s_73; -static PyObject *__pyx_kp_s_74; -static PyObject *__pyx_kp_s_75; -static PyObject *__pyx_kp_s_76; -static PyObject *__pyx_kp_s_77; -static PyObject *__pyx_kp_s_78; -static PyObject *__pyx_kp_s_79; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_80; -static PyObject *__pyx_kp_s_81; -static PyObject *__pyx_kp_s_82; -static PyObject *__pyx_kp_s_83; -static PyObject *__pyx_kp_s_86; -static PyObject *__pyx_kp_s_87; -static PyObject *__pyx_kp_s_88; -static PyObject *__pyx_kp_s_89; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_kp_s_90; -static PyObject *__pyx_kp_s_92; -static PyObject *__pyx_kp_s_93; -static PyObject *__pyx_kp_s_95; -static PyObject *__pyx_kp_s_96; -static PyObject *__pyx_kp_s_97; -static PyObject *__pyx_kp_s_98; -static PyObject *__pyx_kp_s_99; -static PyObject *__pyx_kp_s__0; -static PyObject *__pyx_n_s__Assert; -static PyObject *__pyx_n_s__Begin_doc; -static PyObject *__pyx_n_s__Begin_provider; -static PyObject *__pyx_n_s__Begin_shell; -static PyObject *__pyx_n_s__Begin_template; -static PyObject *__pyx_n_s__Call; -static PyObject *__pyx_n_s__Case; -static PyObject *__pyx_n_s__Cont_provider; -static PyObject *__pyx_n_s__Continue; -static PyObject *__pyx_n_s__Declaration; -static PyObject *__pyx_n_s__Directive; -static PyObject *__pyx_n_s__Do; -static PyObject *__pyx_n_s__Doc; -static PyObject *__pyx_n_s__Else; -static PyObject *__pyx_n_s__Elseif; -static PyObject *__pyx_n_s__Empty_line; -static PyObject *__pyx_n_s__End; -static PyObject *__pyx_n_s__End_doc; -static PyObject *__pyx_n_s__End_provider; -static PyObject *__pyx_n_s__End_select; -static PyObject *__pyx_n_s__End_shell; -static PyObject *__pyx_n_s__End_template; -static PyObject *__pyx_n_s__Enddo; -static PyObject *__pyx_n_s__Endif; -static PyObject *__pyx_n_s__Fixed_form; -static PyObject *__pyx_n_s__Free; -static PyObject *__pyx_n_s__Free_form; -static PyObject *__pyx_n_s__Function; -static PyObject *__pyx_n_s__IOError; -static PyObject *__pyx_n_s__If; -static PyObject *__pyx_n_s__Implicit; -static PyObject *__pyx_n_s__Include; -static PyObject *__pyx_n_s__IndexError; -static PyObject *__pyx_n_s__Irp_Else; -static PyObject *__pyx_n_s__Irp_Endif; -static PyObject *__pyx_n_s__Irp_If; -static PyObject *__pyx_n_s__Irp_read; -static PyObject *__pyx_n_s__Irp_write; -static PyObject *__pyx_n_s__Line; -static PyObject *__pyx_n_s__Missing; -static PyObject *__pyx_n_s__NoDep; -static PyObject *__pyx_n_s__Openmp; -static PyObject *__pyx_n_s__Program; -static PyObject *__pyx_n_s__Provide; -static PyObject *__pyx_n_s__Provide_all; -static PyObject *__pyx_n_s__Return; -static PyObject *__pyx_n_s__S; -static PyObject *__pyx_n_s__Select; -static PyObject *__pyx_n_s__Simple_line; -static PyObject *__pyx_n_s__SoftTouch; -static PyObject *__pyx_n_s__Subroutine; -static PyObject *__pyx_n_s__Subst; -static PyObject *__pyx_n_s__Touch; -static PyObject *__pyx_n_s__Use; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s___doc; -static PyObject *__pyx_n_s__a; -static PyObject *__pyx_n_s__add_operators; -static PyObject *__pyx_n_s__align; -static PyObject *__pyx_n_s__assert; -static PyObject *__pyx_n_s__b; -static PyObject *__pyx_n_s__begin; -static PyObject *__pyx_n_s__begin_doc; -static PyObject *__pyx_n_s__begin_provider; -static PyObject *__pyx_n_s__begin_shell; -static PyObject *__pyx_n_s__begin_template; -static PyObject *__pyx_n_s__call; -static PyObject *__pyx_n_s__case; -static PyObject *__pyx_n_s__change_includes; -static PyObject *__pyx_n_s__check_begin_end; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__compile; -static PyObject *__pyx_n_s__continue; -static PyObject *__pyx_n_s__debug; -static PyObject *__pyx_n_s__defined; -static PyObject *__pyx_n_s__directives; -static PyObject *__pyx_n_s__do; -static PyObject *__pyx_n_s__do_assert; -static PyObject *__pyx_n_s__do_debug; -static PyObject *__pyx_n_s__do_openmp; -static PyObject *__pyx_n_s__do_profile; -static PyObject *__pyx_n_s__dowhile; -static PyObject *__pyx_n_s__else; -static PyObject *__pyx_n_s__elseif; -static PyObject *__pyx_n_s__end; -static PyObject *__pyx_n_s__end_doc; -static PyObject *__pyx_n_s__end_provider; -static PyObject *__pyx_n_s__end_shell; -static PyObject *__pyx_n_s__end_template; -static PyObject *__pyx_n_s__enddo; -static PyObject *__pyx_n_s__endif; -static PyObject *__pyx_n_s__endmodule; -static PyObject *__pyx_n_s__endselect; -static PyObject *__pyx_n_s__endswith; -static PyObject *__pyx_n_s__endtype; -static PyObject *__pyx_n_s__enumerate; -static PyObject *__pyx_n_s__error; -static PyObject *__pyx_n_s__execute_shell; -static PyObject *__pyx_n_s__execute_templates; -static PyObject *__pyx_n_s__fail; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__filter; -static PyObject *__pyx_n_s__find; -static PyObject *__pyx_n_s__find_subname; -static PyObject *__pyx_n_s__form; -static PyObject *__pyx_n_s__free; -static PyObject *__pyx_n_s__function; -static PyObject *__pyx_n_s__get_text; -static PyObject *__pyx_n_s__get_type; -static PyObject *__pyx_n_s__group; -static PyObject *__pyx_n_s__i; -static PyObject *__pyx_n_s__if; -static PyObject *__pyx_n_s__implicit; -static PyObject *__pyx_n_s__include; -static PyObject *__pyx_n_s__irp_else; -static PyObject *__pyx_n_s__irp_endif; -static PyObject *__pyx_n_s__irp_id; -static PyObject *__pyx_n_s__irp_if; -static PyObject *__pyx_n_s__irp_read; -static PyObject *__pyx_n_s__irp_write; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_files; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__is_doc; -static PyObject *__pyx_n_s__isdigit; -static PyObject *__pyx_n_s__join; -static PyObject *__pyx_n_s__l; -static PyObject *__pyx_n_s__line; -static PyObject *__pyx_n_s__lines; -static PyObject *__pyx_n_s__lower; -static PyObject *__pyx_n_s__lstrip; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__match; -static PyObject *__pyx_n_s__no_dep; -static PyObject *__pyx_n_s__number; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__parallel_loop; -static PyObject *__pyx_n_s__pop; -static PyObject *__pyx_n_s__popen; -static PyObject *__pyx_n_s__preprocessed_text; -static PyObject *__pyx_n_s__program; -static PyObject *__pyx_n_s__provide; -static PyObject *__pyx_n_s__r; -static PyObject *__pyx_n_s__range; -static PyObject *__pyx_n_s__re; -static PyObject *__pyx_n_s__re_comment; -static PyObject *__pyx_n_s__re_decl; -static PyObject *__pyx_n_s__re_elseif; -static PyObject *__pyx_n_s__re_enddo; -static PyObject *__pyx_n_s__re_endif; -static PyObject *__pyx_n_s__re_endmodule; -static PyObject *__pyx_n_s__re_endselect; -static PyObject *__pyx_n_s__re_endtype; -static PyObject *__pyx_n_s__re_test; -static PyObject *__pyx_n_s__read; -static PyObject *__pyx_n_s__readlines; -static PyObject *__pyx_n_s__recursive; -static PyObject *__pyx_n_s__regexps; -static PyObject *__pyx_n_s__remove; -static PyObject *__pyx_n_s__remove_comments; -static PyObject *__pyx_n_s__remove_continuation; -static PyObject *__pyx_n_s__remove_ifdefs; -static PyObject *__pyx_n_s__replace; -static PyObject *__pyx_n_s__return; -static PyObject *__pyx_n_s__rstrip; -static PyObject *__pyx_n_s__rw; -static PyObject *__pyx_n_s__save; -static PyObject *__pyx_n_s__search; -static PyObject *__pyx_n_s__select; -static PyObject *__pyx_n_s__selectcase; -static PyObject *__pyx_n_s__simple_dict; -static PyObject *__pyx_n_s__soft_touch; -static PyObject *__pyx_n_s__split; -static PyObject *__pyx_n_s__startswith; -static PyObject *__pyx_n_s__str; -static PyObject *__pyx_n_s__strip; -static PyObject *__pyx_n_s__sub; -static PyObject *__pyx_n_s__subroutine; -static PyObject *__pyx_n_s__subst; -static PyObject *__pyx_n_s__t; -static PyObject *__pyx_n_s__template; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__then; -static PyObject *__pyx_n_s__touch; -static PyObject *__pyx_n_s__use; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__warn; -static PyObject *__pyx_n_s__writ; -static PyObject *__pyx_n_s__writelines; -static PyObject *__pyx_n_s__x; -static PyObject *__pyx_n_s__y; -static PyObject *__pyx_n_s__zip; -static PyObject *__pyx_int_0; -static PyObject *__pyx_int_1; -static PyObject *__pyx_int_3; -static PyObject *__pyx_k_tuple_5; -static PyObject *__pyx_k_tuple_11; -static PyObject *__pyx_k_tuple_24; -static PyObject *__pyx_k_tuple_27; -static PyObject *__pyx_k_tuple_31; -static PyObject *__pyx_k_tuple_34; -static PyObject *__pyx_k_tuple_36; -static PyObject *__pyx_k_tuple_45; -static PyObject *__pyx_k_tuple_47; -static PyObject *__pyx_k_tuple_59; -static PyObject *__pyx_k_tuple_61; -static PyObject *__pyx_k_tuple_84; -static PyObject *__pyx_k_tuple_85; -static PyObject *__pyx_k_tuple_91; -static PyObject *__pyx_k_tuple_94; -static PyObject *__pyx_k_tuple_103; -static PyObject *__pyx_k_tuple_104; -static PyObject *__pyx_k_tuple_105; -static PyObject *__pyx_k_tuple_109; -static PyObject *__pyx_k_tuple_110; -static PyObject *__pyx_k_tuple_111; -static PyObject *__pyx_k_tuple_125; -static PyObject *__pyx_k_tuple_126; -static PyObject *__pyx_k_tuple_131; -static PyObject *__pyx_k_tuple_132; -static PyObject *__pyx_k_tuple_133; -static PyObject *__pyx_k_tuple_149; -static PyObject *__pyx_k_tuple_151; -static PyObject *__pyx_k_tuple_153; -static PyObject *__pyx_k_tuple_155; -static PyObject *__pyx_k_tuple_157; -static PyObject *__pyx_k_tuple_159; - -/* "preprocessed_text.py":859 - * - * ###################################################################### - * preprocessed_text = parallel_loop( lambda x,y: create_preprocessed_text(x), \ # <<<<<<<<<<<<<< - * map(lambda x: (x,None), irpf90_files ) ) - * - */ - -static PyObject *__pyx_lambda_funcdef_17preprocessed_text_lambda4(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_17preprocessed_text_lambda4 = {__Pyx_NAMESTR("lambda4"), (PyCFunction)__pyx_lambda_funcdef_17preprocessed_text_lambda4, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_17preprocessed_text_lambda4(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_x = 0; - PyObject *__pyx_v_y = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__x,&__pyx_n_s__y,0}; - __Pyx_RefNannySetupContext("lambda4"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__y); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_x = values[0]; - __pyx_v_y = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.lambda4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.lambda4", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":860 - * ###################################################################### - * preprocessed_text = parallel_loop( lambda x,y: create_preprocessed_text(x), \ - * map(lambda x: (x,None), irpf90_files ) ) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - -static PyObject *__pyx_lambda_funcdef_17preprocessed_text_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_17preprocessed_text_lambda5 = {__Pyx_NAMESTR("lambda5"), (PyCFunction)__pyx_lambda_funcdef_17preprocessed_text_lambda5, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_17preprocessed_text_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda5"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __Pyx_INCREF(Py_None); - PyTuple_SET_ITEM(__pyx_t_1, 1, Py_None); - __Pyx_GIVEREF(Py_None); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("preprocessed_text.lambda5", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":91 - * } - * - * def get_type (i, filename, line, is_doc): # <<<<<<<<<<<<<< - * '''Find the type of a text line''' - * assert type(i) == int - */ - -static PyObject *__pyx_pf_17preprocessed_text_get_type(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_17preprocessed_text_get_type[] = "Find the type of a text line"; -static PyMethodDef __pyx_mdef_17preprocessed_text_get_type = {__Pyx_NAMESTR("get_type"), (PyCFunction)__pyx_pf_17preprocessed_text_get_type, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_get_type)}; -static PyObject *__pyx_pf_17preprocessed_text_get_type(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_i = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_line = 0; - PyObject *__pyx_v_is_doc = 0; - PyObject *__pyx_v_lower_line0 = NULL; - PyObject *__pyx_v_lower_line = NULL; - PyObject *__pyx_v_c = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_firstword = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - Py_ssize_t __pyx_t_7; - int __pyx_t_8; - int __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__i,&__pyx_n_s__filename,&__pyx_n_s__line,&__pyx_n_s__is_doc,0}; - __Pyx_RefNannySetupContext("get_type"); - __pyx_self = __pyx_self; - { - PyObject* values[4] = {0,0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__i); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("get_type", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("get_type", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 3: - values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__is_doc); - if (likely(values[3])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("get_type", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "get_type") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 4) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - values[3] = PyTuple_GET_ITEM(__pyx_args, 3); - } - __pyx_v_i = values[0]; - __pyx_v_filename = values[1]; - __pyx_v_line = values[2]; - __pyx_v_is_doc = values[3]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("get_type", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.get_type", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_INCREF(__pyx_v_line); - - /* "preprocessed_text.py":93 - * def get_type (i, filename, line, is_doc): - * '''Find the type of a text line''' - * assert type(i) == int # <<<<<<<<<<<<<< - * assert type(filename) == str - * assert type(line) == str - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_i)), ((PyObject *)((PyObject*)(&PyInt_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":94 - * '''Find the type of a text line''' - * assert type(i) == int - * assert type(filename) == str # <<<<<<<<<<<<<< - * assert type(line) == str - * assert type(is_doc) == bool - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_filename)), ((PyObject *)((PyObject*)(&PyString_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":95 - * assert type(i) == int - * assert type(filename) == str - * assert type(line) == str # <<<<<<<<<<<<<< - * assert type(is_doc) == bool - * - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), ((PyObject *)((PyObject*)(&PyString_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":96 - * assert type(filename) == str - * assert type(line) == str - * assert type(is_doc) == bool # <<<<<<<<<<<<<< - * - * line = line.rstrip() - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_is_doc)), ((PyObject*)&PyBool_Type), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":98 - * assert type(is_doc) == bool - * - * line = line.rstrip() # <<<<<<<<<<<<<< - * line = line.replace("$IRP_ALIGN",command_line.align) - * lower_line0 = line.lstrip().lower() - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__rstrip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":99 - * - * line = line.rstrip() - * line = line.replace("$IRP_ALIGN",command_line.align) # <<<<<<<<<<<<<< - * lower_line0 = line.lstrip().lower() - * lower_line = lower_line0.replace("!"," ! ") - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__replace); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__align); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":100 - * line = line.rstrip() - * line = line.replace("$IRP_ALIGN",command_line.align) - * lower_line0 = line.lstrip().lower() # <<<<<<<<<<<<<< - * lower_line = lower_line0.replace("!"," ! ") - * - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lstrip); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__lower); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_v_lower_line0 = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":101 - * line = line.replace("$IRP_ALIGN",command_line.align) - * lower_line0 = line.lstrip().lower() - * lower_line = lower_line0.replace("!"," ! ") # <<<<<<<<<<<<<< - * - * # Replacements - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_lower_line0, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_lower_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":104 - * - * # Replacements - * lower_line = re_elseif.sub("elseif",lower_line) # <<<<<<<<<<<<<< - * lower_line = re_enddo.sub("enddo",lower_line) - * lower_line = re_endtype.sub("endtype",lower_line) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_elseif); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__sub); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__elseif)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_n_s__elseif)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__elseif)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":105 - * # Replacements - * lower_line = re_elseif.sub("elseif",lower_line) - * lower_line = re_enddo.sub("enddo",lower_line) # <<<<<<<<<<<<<< - * lower_line = re_endtype.sub("endtype",lower_line) - * lower_line = re_endmodule.sub("endmodule",lower_line) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_enddo); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__sub); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__enddo)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__enddo)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__enddo)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":106 - * lower_line = re_elseif.sub("elseif",lower_line) - * lower_line = re_enddo.sub("enddo",lower_line) - * lower_line = re_endtype.sub("endtype",lower_line) # <<<<<<<<<<<<<< - * lower_line = re_endmodule.sub("endmodule",lower_line) - * lower_line = re_endif.sub("endif",lower_line) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_endtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__sub); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__endtype)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__endtype)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__endtype)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":107 - * lower_line = re_enddo.sub("enddo",lower_line) - * lower_line = re_endtype.sub("endtype",lower_line) - * lower_line = re_endmodule.sub("endmodule",lower_line) # <<<<<<<<<<<<<< - * lower_line = re_endif.sub("endif",lower_line) - * lower_line = re_endselect.sub("endselect",lower_line) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_endmodule); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__sub); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__endmodule)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_n_s__endmodule)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__endmodule)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":108 - * lower_line = re_endtype.sub("endtype",lower_line) - * lower_line = re_endmodule.sub("endmodule",lower_line) - * lower_line = re_endif.sub("endif",lower_line) # <<<<<<<<<<<<<< - * lower_line = re_endselect.sub("endselect",lower_line) - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_endif); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__sub); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__endif)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_n_s__endif)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__endif)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":109 - * lower_line = re_endmodule.sub("endmodule",lower_line) - * lower_line = re_endif.sub("endif",lower_line) - * lower_line = re_endselect.sub("endselect",lower_line) # <<<<<<<<<<<<<< - * - * for c in """()'"[]""": - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_endselect); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__sub); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__endselect)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__endselect)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__endselect)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":111 - * lower_line = re_endselect.sub("endselect",lower_line) - * - * for c in """()'"[]""": # <<<<<<<<<<<<<< - * lower_line = lower_line.replace(c," "+c+" ") - * - */ - __pyx_t_4 = PyObject_GetIter(((PyObject *)__pyx_kp_s_6)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext; - for (;;) { - { - __pyx_t_1 = __pyx_t_5(__pyx_t_4); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_c); - __pyx_v_c = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":112 - * - * for c in """()'"[]""": - * lower_line = lower_line.replace(c," "+c+" ") # <<<<<<<<<<<<<< - * - * buffer = lower_line.split() - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_lower_line, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyNumber_Add(((PyObject *)__pyx_kp_s_7), __pyx_v_c); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyNumber_Add(__pyx_t_3, ((PyObject *)__pyx_kp_s_7)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_c); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_c); - __Pyx_GIVEREF(__pyx_v_c); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_v_lower_line); - __pyx_v_lower_line = __pyx_t_6; - __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":114 - * lower_line = lower_line.replace(c," "+c+" ") - * - * buffer = lower_line.split() # <<<<<<<<<<<<<< - * if len(buffer) == 0: - * return [ Empty_line(i,line,filename) ], is_doc - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_lower_line, __pyx_n_s__split); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_v_buffer = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":115 - * - * buffer = lower_line.split() - * if len(buffer) == 0: # <<<<<<<<<<<<<< - * return [ Empty_line(i,line,filename) ], is_doc - * - */ - __pyx_t_7 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = (__pyx_t_7 == 0); - if (__pyx_t_2) { - - /* "preprocessed_text.py":116 - * buffer = lower_line.split() - * if len(buffer) == 0: - * return [ Empty_line(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * firstword = buffer[0] - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_4 = 0; - __pyx_r = ((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "preprocessed_text.py":118 - * return [ Empty_line(i,line,filename) ], is_doc - * - * firstword = buffer[0] # <<<<<<<<<<<<<< - * if firstword.isdigit(): - * assert len(buffer) > 1 - */ - __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_buffer, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_v_firstword = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":119 - * - * firstword = buffer[0] - * if firstword.isdigit(): # <<<<<<<<<<<<<< - * assert len(buffer) > 1 - * buffer = buffer[1:] - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_firstword, __pyx_n_s__isdigit); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":120 - * firstword = buffer[0] - * if firstword.isdigit(): - * assert len(buffer) > 1 # <<<<<<<<<<<<<< - * buffer = buffer[1:] - * firstword = buffer[0] - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_7 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!(__pyx_t_7 > 1))) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":121 - * if firstword.isdigit(): - * assert len(buffer) > 1 - * buffer = buffer[1:] # <<<<<<<<<<<<<< - * firstword = buffer[0] - * - */ - __pyx_t_4 = __Pyx_PySequence_GetSlice(__pyx_v_buffer, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":122 - * assert len(buffer) > 1 - * buffer = buffer[1:] - * firstword = buffer[0] # <<<<<<<<<<<<<< - * - * # Identify line - */ - __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_buffer, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_v_firstword); - __pyx_v_firstword = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L9; - } - __pyx_L9:; - - /* "preprocessed_text.py":125 - * - * # Identify line - * if firstword == "end_doc": # <<<<<<<<<<<<<< - * return [ End_doc (i,line,filename) ], False - * - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_firstword, ((PyObject *)__pyx_n_s__end_doc), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":126 - * # Identify line - * if firstword == "end_doc": - * return [ End_doc (i,line,filename) ], False # <<<<<<<<<<<<<< - * - * if firstword == "begin_doc": - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_doc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyBool_FromLong(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_3 = 0; - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "preprocessed_text.py":128 - * return [ End_doc (i,line,filename) ], False - * - * if firstword == "begin_doc": # <<<<<<<<<<<<<< - * return [ Begin_doc (i,line,filename) ], True - * - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_firstword, ((PyObject *)__pyx_n_s__begin_doc), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 128; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":129 - * - * if firstword == "begin_doc": - * return [ Begin_doc (i,line,filename) ], True # <<<<<<<<<<<<<< - * - * if is_doc: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_doc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_6 = 0; - __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L11; - } - __pyx_L11:; - - /* "preprocessed_text.py":131 - * return [ Begin_doc (i,line,filename) ], True - * - * if is_doc: # <<<<<<<<<<<<<< - * return [ Doc (i,line,filename) ], is_doc - * - */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_is_doc); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":132 - * - * if is_doc: - * return [ Doc (i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * if firstword in simple_dict: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Doc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - goto __pyx_L12; - } - __pyx_L12:; - - /* "preprocessed_text.py":134 - * return [ Doc (i,line,filename) ], is_doc - * - * if firstword in simple_dict: # <<<<<<<<<<<<<< - * return [ simple_dict[firstword](i,line,filename) ], is_doc - * - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__simple_dict); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = ((PySequence_Contains(__pyx_t_6, __pyx_v_firstword))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":135 - * - * if firstword in simple_dict: - * return [ simple_dict[firstword](i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * if firstword in [ "select", "selectcase" ]: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__simple_dict); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyObject_GetItem(__pyx_t_6, __pyx_v_firstword); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L13; - } - __pyx_L13:; - - /* "preprocessed_text.py":137 - * return [ simple_dict[firstword](i,line,filename) ], is_doc - * - * if firstword in [ "select", "selectcase" ]: # <<<<<<<<<<<<<< - * return [ Select(i,line,filename) ] , is_doc - * - */ - __Pyx_INCREF(__pyx_v_firstword); - __pyx_t_4 = __pyx_v_firstword; - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_t_4, ((PyObject *)__pyx_n_s__select), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!((int)__pyx_t_2)) { - __pyx_t_8 = __Pyx_PyString_Equals(__pyx_t_4, ((PyObject *)__pyx_n_s__selectcase), Py_EQ); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_2); - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __pyx_t_9; - if (__pyx_t_2) { - - /* "preprocessed_text.py":138 - * - * if firstword in [ "select", "selectcase" ]: - * return [ Select(i,line,filename) ] , is_doc # <<<<<<<<<<<<<< - * - * if len(lower_line0) > 4: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Select); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - goto __pyx_L14; - } - __pyx_L14:; - - /* "preprocessed_text.py":140 - * return [ Select(i,line,filename) ] , is_doc - * - * if len(lower_line0) > 4: # <<<<<<<<<<<<<< - * - * if firstword[0] == '#': - */ - __pyx_t_7 = PyObject_Length(__pyx_v_lower_line0); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = (__pyx_t_7 > 4); - if (__pyx_t_2) { - - /* "preprocessed_text.py":142 - * if len(lower_line0) > 4: - * - * if firstword[0] == '#': # <<<<<<<<<<<<<< - * result = [ Simple_line(i,line,filename) ] - * error.warn ( result[0] , - */ - __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_firstword, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_t_3, ((PyObject *)__pyx_kp_s_8), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":143 - * - * if firstword[0] == '#': - * result = [ Simple_line(i,line,filename) ] # <<<<<<<<<<<<<< - * error.warn ( result[0] , - * """irpf90 may not work with preprocessor directives. You can use - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":144 - * if firstword[0] == '#': - * result = [ Simple_line(i,line,filename) ] - * error.warn ( result[0] , # <<<<<<<<<<<<<< - * """irpf90 may not work with preprocessor directives. You can use - * Irp_if ... Irp_else ... Irp_endif - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__warn); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetItemInt_List(((PyObject *)__pyx_v_result), 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "preprocessed_text.py":149 - * instead of - * #ifdef ... #else ... #endif""" ) - * return result, is_doc # <<<<<<<<<<<<<< - * - * if firstword.startswith("case("): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_v_result)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_result)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - goto __pyx_L16; - } - __pyx_L16:; - - /* "preprocessed_text.py":151 - * return result, is_doc - * - * if firstword.startswith("case("): # <<<<<<<<<<<<<< - * return [ Case(i,line,filename) ], is_doc - * - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_firstword, __pyx_n_s__startswith); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_k_tuple_11), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":152 - * - * if firstword.startswith("case("): - * return [ Case(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * if lower_line0[1:5] == "$omp": - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Case); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L17; - } - __pyx_L17:; - - /* "preprocessed_text.py":154 - * return [ Case(i,line,filename) ], is_doc - * - * if lower_line0[1:5] == "$omp": # <<<<<<<<<<<<<< - * return [ Openmp(i,line,filename) ], is_doc - * elif lower_line0[1:5] in ["dec$", "dir$"] and command_line.directives: - */ - __pyx_t_4 = __Pyx_PySequence_GetSlice(__pyx_v_lower_line0, 1, 5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_t_4, ((PyObject *)__pyx_kp_s_12), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":155 - * - * if lower_line0[1:5] == "$omp": - * return [ Openmp(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * elif lower_line0[1:5] in ["dec$", "dir$"] and command_line.directives: - * return [ Directive(i,line,filename) ], is_doc - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - goto __pyx_L18; - } - - /* "preprocessed_text.py":156 - * if lower_line0[1:5] == "$omp": - * return [ Openmp(i,line,filename) ], is_doc - * elif lower_line0[1:5] in ["dec$", "dir$"] and command_line.directives: # <<<<<<<<<<<<<< - * return [ Directive(i,line,filename) ], is_doc - * elif lower_line0[1:3] == "$ ": - */ - __pyx_t_3 = __Pyx_PySequence_GetSlice(__pyx_v_lower_line0, 1, 5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_t_3, ((PyObject *)__pyx_kp_s_13), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!((int)__pyx_t_2)) { - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_t_3, ((PyObject *)__pyx_kp_s_14), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = ((int)__pyx_t_9); - } else { - __pyx_t_8 = ((int)__pyx_t_2); - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_2 = __pyx_t_8; - if (__pyx_t_2) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__directives); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __pyx_t_8; - } else { - __pyx_t_9 = __pyx_t_2; - } - if (__pyx_t_9) { - - /* "preprocessed_text.py":157 - * return [ Openmp(i,line,filename) ], is_doc - * elif lower_line0[1:5] in ["dec$", "dir$"] and command_line.directives: - * return [ Directive(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * elif lower_line0[1:3] == "$ ": - * return [ Openmp(i,line,filename) ], is_doc - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Directive); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_4 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L18; - } - - /* "preprocessed_text.py":158 - * elif lower_line0[1:5] in ["dec$", "dir$"] and command_line.directives: - * return [ Directive(i,line,filename) ], is_doc - * elif lower_line0[1:3] == "$ ": # <<<<<<<<<<<<<< - * return [ Openmp(i,line,filename) ], is_doc - * - */ - __pyx_t_4 = __Pyx_PySequence_GetSlice(__pyx_v_lower_line0, 1, 3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_t_4, ((PyObject *)__pyx_kp_s_15), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_9) { - - /* "preprocessed_text.py":159 - * return [ Directive(i,line,filename) ], is_doc - * elif lower_line0[1:3] == "$ ": - * return [ Openmp(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * if re_decl.match(lower_line) is not None: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - goto __pyx_L18; - } - __pyx_L18:; - - /* "preprocessed_text.py":161 - * return [ Openmp(i,line,filename) ], is_doc - * - * if re_decl.match(lower_line) is not None: # <<<<<<<<<<<<<< - * if "function" in buffer[1:3]: - * return [ Function (i,line,filename) ], is_doc - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_decl); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__match); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_lower_line); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_lower_line); - __Pyx_GIVEREF(__pyx_v_lower_line); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_9 = (__pyx_t_4 != Py_None); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_9) { - - /* "preprocessed_text.py":162 - * - * if re_decl.match(lower_line) is not None: - * if "function" in buffer[1:3]: # <<<<<<<<<<<<<< - * return [ Function (i,line,filename) ], is_doc - * else: - */ - __pyx_t_4 = __Pyx_PySequence_GetSlice(__pyx_v_buffer, 1, 3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = ((PySequence_Contains(__pyx_t_4, ((PyObject *)__pyx_n_s__function)))); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_9) { - - /* "preprocessed_text.py":163 - * if re_decl.match(lower_line) is not None: - * if "function" in buffer[1:3]: - * return [ Function (i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * else: - * return [ Declaration (i,line,filename) ], is_doc - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_3); - __pyx_t_3 = 0; - goto __pyx_L0; - goto __pyx_L20; - } - /*else*/ { - - /* "preprocessed_text.py":165 - * return [ Function (i,line,filename) ], is_doc - * else: - * return [ Declaration (i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * # Detect errors - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_6 = 0; - __pyx_r = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - goto __pyx_L0; - } - __pyx_L20:; - goto __pyx_L19; - } - __pyx_L19:; - - /* "preprocessed_text.py":168 - * - * # Detect errors - * if firstword == "dowhile": # <<<<<<<<<<<<<< - * error.fail( Do(i,line,filename) , "'do while' should be in 2 words." ) - * - */ - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_v_firstword, ((PyObject *)__pyx_n_s__dowhile), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_9) { - - /* "preprocessed_text.py":169 - * # Detect errors - * if firstword == "dowhile": - * error.fail( Do(i,line,filename) , "'do while' should be in 2 words." ) # <<<<<<<<<<<<<< - * - * return [ Simple_line(i,line,filename) ], is_doc - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_16)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_kp_s_16)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_16)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L21; - } - __pyx_L21:; - goto __pyx_L15; - } - __pyx_L15:; - - /* "preprocessed_text.py":171 - * error.fail( Do(i,line,filename) , "'do while' should be in 2 words." ) - * - * return [ Simple_line(i,line,filename) ], is_doc # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_3 = 0; - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.get_type", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_lower_line0); - __Pyx_XDECREF(__pyx_v_lower_line); - __Pyx_XDECREF(__pyx_v_c); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_firstword); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":175 - * - * ###################################################################### - * def get_text(lines,filename): # <<<<<<<<<<<<<< - * '''Read the input file and transform it to labeled lines''' - * assert type(filename) == str - */ - -static PyObject *__pyx_pf_17preprocessed_text_1get_text(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_17preprocessed_text_1get_text[] = "Read the input file and transform it to labeled lines"; -static PyMethodDef __pyx_mdef_17preprocessed_text_1get_text = {__Pyx_NAMESTR("get_text"), (PyCFunction)__pyx_pf_17preprocessed_text_1get_text, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_1get_text)}; -static PyObject *__pyx_pf_17preprocessed_text_1get_text(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_lines = 0; - PyObject *__pyx_v_filename = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_is_doc = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *(*__pyx_t_10)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__lines,&__pyx_n_s__filename,0}; - __Pyx_RefNannySetupContext("get_text"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__lines); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__filename); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("get_text", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "get_text") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_lines = values[0]; - __pyx_v_filename = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("get_text", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.get_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":177 - * def get_text(lines,filename): - * '''Read the input file and transform it to labeled lines''' - * assert type(filename) == str # <<<<<<<<<<<<<< - * assert type(lines) == list - * - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_filename)), ((PyObject *)((PyObject*)(&PyString_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":178 - * '''Read the input file and transform it to labeled lines''' - * assert type(filename) == str - * assert type(lines) == list # <<<<<<<<<<<<<< - * - * result = [] - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_lines)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":180 - * assert type(lines) == list - * - * result = [] # <<<<<<<<<<<<<< - * is_doc = False - * for i,line in enumerate(lines): - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":181 - * - * result = [] - * is_doc = False # <<<<<<<<<<<<<< - * for i,line in enumerate(lines): - * line, is_doc = get_type(i+1,filename,line,is_doc) - */ - __pyx_t_1 = __Pyx_PyBool_FromLong(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_is_doc = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":182 - * result = [] - * is_doc = False - * for i,line in enumerate(lines): # <<<<<<<<<<<<<< - * line, is_doc = get_type(i+1,filename,line,is_doc) - * result += line - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_t_1 = __pyx_int_0; - if (PyList_CheckExact(__pyx_v_lines) || PyTuple_CheckExact(__pyx_v_lines)) { - __pyx_t_3 = __pyx_v_lines; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_lines); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_3)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else { - __pyx_t_6 = __pyx_t_5(__pyx_t_3); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_1; - __pyx_t_6 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); - __pyx_t_1 = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":183 - * is_doc = False - * for i,line in enumerate(lines): - * line, is_doc = get_type(i+1,filename,line,is_doc) # <<<<<<<<<<<<<< - * result += line - * return result - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_type); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyNumber_Add(__pyx_v_i, __pyx_int_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyTuple_New(4); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(__pyx_v_is_doc); - PyTuple_SET_ITEM(__pyx_t_8, 3, __pyx_v_is_doc); - __Pyx_GIVEREF(__pyx_v_is_doc); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) { - PyObject* sequence = __pyx_t_7; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_9 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext; - index = 0; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_8); - index = 1; __pyx_t_6 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_6)) goto __pyx_L8_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L9_unpacking_done; - __pyx_L8_unpacking_failed:; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 183; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L9_unpacking_done:; - } - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_8; - __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_is_doc); - __pyx_v_is_doc = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":184 - * for i,line in enumerate(lines): - * line, is_doc = get_type(i+1,filename,line,is_doc) - * result += line # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_7; - __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":185 - * line, is_doc = get_type(i+1,filename,line,is_doc) - * result += line - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("preprocessed_text.get_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_is_doc); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":190 - * def execute_shell(text): - * '''Execute the embedded shell scripts''' - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) # <<<<<<<<<<<<<< - * inside = False - * result = [] - */ - -static PyObject *__pyx_pf_17preprocessed_text_13execute_shell_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_13execute_shell_fail = {__Pyx_NAMESTR("fail"), (PyCFunction)__pyx_pf_17preprocessed_text_13execute_shell_fail, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_13execute_shell_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_l = 0; - PyObject *__pyx_v_a = 0; - PyObject *__pyx_v_b = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__l,&__pyx_n_s__a,&__pyx_n_s__b,0}; - __Pyx_RefNannySetupContext("fail"); - __pyx_self = __pyx_self; - { - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__l); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__a); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__b); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "fail") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __pyx_v_l = values[0]; - __pyx_v_a = values[1]; - __pyx_v_b = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.execute_shell.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_a); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_a); - __Pyx_GIVEREF(__pyx_v_a); - __Pyx_INCREF(__pyx_v_b); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_b); - __Pyx_GIVEREF(__pyx_v_b); - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_17), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.execute_shell.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":188 - * - * ###################################################################### - * def execute_shell(text): # <<<<<<<<<<<<<< - * '''Execute the embedded shell scripts''' - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) - */ - -static PyObject *__pyx_pf_17preprocessed_text_2execute_shell(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_2execute_shell[] = "Execute the embedded shell scripts"; -static PyMethodDef __pyx_mdef_17preprocessed_text_2execute_shell = {__Pyx_NAMESTR("execute_shell"), (PyCFunction)__pyx_pf_17preprocessed_text_2execute_shell, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_2execute_shell)}; -static PyObject *__pyx_pf_17preprocessed_text_2execute_shell(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_fail = 0; - int __pyx_v_inside; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_scriptname = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_os = NULL; - PyObject *__pyx_v_pipe = NULL; - PyObject *__pyx_v_lines = NULL; - PyObject *__pyx_v_begin = NULL; - PyObject *__pyx_v_script = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_shell = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; - Py_ssize_t __pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("execute_shell"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":190 - * def execute_shell(text): - * '''Execute the embedded shell scripts''' - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) # <<<<<<<<<<<<<< - * inside = False - * result = [] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_13execute_shell_fail, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_fail); - __pyx_v_fail = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":191 - * '''Execute the embedded shell scripts''' - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) - * inside = False # <<<<<<<<<<<<<< - * result = [] - * for line in text: - */ - __pyx_v_inside = 0; - - /* "preprocessed_text.py":192 - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) - * inside = False - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * if inside: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 192; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":193 - * inside = False - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * if inside: - * if type(line) == Begin_shell: - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":194 - * result = [] - * for line in text: - * if inside: # <<<<<<<<<<<<<< - * if type(line) == Begin_shell: - * error.fail(line,"Nested Begin_shell") - */ - if (__pyx_v_inside) { - - /* "preprocessed_text.py":195 - * for line in text: - * if inside: - * if type(line) == Begin_shell: # <<<<<<<<<<<<<< - * error.fail(line,"Nested Begin_shell") - * elif type(line) == End_shell: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_shell); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 195; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":196 - * if inside: - * if type(line) == Begin_shell: - * error.fail(line,"Nested Begin_shell") # <<<<<<<<<<<<<< - * elif type(line) == End_shell: - * inside = False - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_18)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_18)); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8; - } - - /* "preprocessed_text.py":197 - * if type(line) == Begin_shell: - * error.fail(line,"Nested Begin_shell") - * elif type(line) == End_shell: # <<<<<<<<<<<<<< - * inside = False - * # Write script file - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_shell); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 197; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":198 - * error.fail(line,"Nested Begin_shell") - * elif type(line) == End_shell: - * inside = False # <<<<<<<<<<<<<< - * # Write script file - * scriptname = "%s%s_shell_%d"%(irpdir,line.filename,line.i) - */ - __pyx_v_inside = 0; - - /* "preprocessed_text.py":200 - * inside = False - * # Write script file - * scriptname = "%s%s_shell_%d"%(irpdir,line.filename,line.i) # <<<<<<<<<<<<<< - * file = open(scriptname,'w') - * file.writelines(script) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_5 = 0; - __pyx_t_7 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_19), ((PyObject *)__pyx_t_8)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_scriptname); - __pyx_v_scriptname = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - - /* "preprocessed_text.py":201 - * # Write script file - * scriptname = "%s%s_shell_%d"%(irpdir,line.filename,line.i) - * file = open(scriptname,'w') # <<<<<<<<<<<<<< - * file.writelines(script) - * file.close() - */ - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_8 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":202 - * scriptname = "%s%s_shell_%d"%(irpdir,line.filename,line.i) - * file = open(scriptname,'w') - * file.writelines(script) # <<<<<<<<<<<<<< - * file.close() - * scriptname = "%s_shell_%d"%(line.filename,line.i) - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(((PyObject *)__pyx_v_script)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_v_script)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_script)); - __pyx_t_7 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "preprocessed_text.py":203 - * file = open(scriptname,'w') - * file.writelines(script) - * file.close() # <<<<<<<<<<<<<< - * scriptname = "%s_shell_%d"%(line.filename,line.i) - * file = open(scriptname,'w') - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_4 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":204 - * file.writelines(script) - * file.close() - * scriptname = "%s_shell_%d"%(line.filename,line.i) # <<<<<<<<<<<<<< - * file = open(scriptname,'w') - * file.writelines(script) - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_4 = 0; - __pyx_t_7 = 0; - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_20), ((PyObject *)__pyx_t_8)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_scriptname); - __pyx_v_scriptname = ((PyObject *)__pyx_t_7); - __pyx_t_7 = 0; - - /* "preprocessed_text.py":205 - * file.close() - * scriptname = "%s_shell_%d"%(line.filename,line.i) - * file = open(scriptname,'w') # <<<<<<<<<<<<<< - * file.writelines(script) - * file.close() - */ - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_8 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":206 - * scriptname = "%s_shell_%d"%(line.filename,line.i) - * file = open(scriptname,'w') - * file.writelines(script) # <<<<<<<<<<<<<< - * file.close() - * # Execute shell - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(((PyObject *)__pyx_v_script)); - PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)__pyx_v_script)); - __Pyx_GIVEREF(((PyObject *)__pyx_v_script)); - __pyx_t_4 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":207 - * file = open(scriptname,'w') - * file.writelines(script) - * file.close() # <<<<<<<<<<<<<< - * # Execute shell - * import os - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "preprocessed_text.py":209 - * file.close() - * # Execute shell - * import os # <<<<<<<<<<<<<< - * pipe = os.popen("%s < %s"%(shell,scriptname),'r') - * lines = pipe.readlines() - */ - __pyx_t_7 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_v_os); - __pyx_v_os = __pyx_t_7; - __pyx_t_7 = 0; - - /* "preprocessed_text.py":210 - * # Execute shell - * import os - * pipe = os.popen("%s < %s"%(shell,scriptname),'r') # <<<<<<<<<<<<<< - * lines = pipe.readlines() - * pipe.close() - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__popen); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - if (unlikely(!__pyx_v_shell)) { __Pyx_RaiseUnboundLocalError("shell"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_shell); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_shell); - __Pyx_GIVEREF(__pyx_v_shell); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_pipe); - __pyx_v_pipe = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":211 - * import os - * pipe = os.popen("%s < %s"%(shell,scriptname),'r') - * lines = pipe.readlines() # <<<<<<<<<<<<<< - * pipe.close() - * result += get_text(lines,scriptname) - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_pipe, __pyx_n_s__readlines); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 211; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_lines); - __pyx_v_lines = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":212 - * pipe = os.popen("%s < %s"%(shell,scriptname),'r') - * lines = pipe.readlines() - * pipe.close() # <<<<<<<<<<<<<< - * result += get_text(lines,scriptname) - * os.remove(scriptname) - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_pipe, __pyx_n_s__close); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - - /* "preprocessed_text.py":213 - * lines = pipe.readlines() - * pipe.close() - * result += get_text(lines,scriptname) # <<<<<<<<<<<<<< - * os.remove(scriptname) - * else: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_text); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_lines); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_lines); - __Pyx_GIVEREF(__pyx_v_lines); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __pyx_t_7 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_7); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":214 - * pipe.close() - * result += get_text(lines,scriptname) - * os.remove(scriptname) # <<<<<<<<<<<<<< - * else: - * script.append(line.text+'\n') - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__remove); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __pyx_t_8 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L8; - } - /*else*/ { - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }if (unlikely(((PyObject *)__pyx_v_script) == Py_None)) { - - /* "preprocessed_text.py":216 - * os.remove(scriptname) - * else: - * script.append(line.text+'\n') # <<<<<<<<<<<<<< - * else: - * if type(line) == Begin_shell: - */ - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyNumber_Add(__pyx_t_8, ((PyObject *)__pyx_kp_s_22)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_9 = PyList_Append(__pyx_v_script, __pyx_t_7); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - __pyx_L8:; - goto __pyx_L7; - } - /*else*/ { - - /* "preprocessed_text.py":218 - * script.append(line.text+'\n') - * else: - * if type(line) == Begin_shell: # <<<<<<<<<<<<<< - * inside = True - * begin = line.i - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_shell); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":219 - * else: - * if type(line) == Begin_shell: - * inside = True # <<<<<<<<<<<<<< - * begin = line.i - * script = [] - */ - __pyx_v_inside = 1; - - /* "preprocessed_text.py":220 - * if type(line) == Begin_shell: - * inside = True - * begin = line.i # <<<<<<<<<<<<<< - * script = [] - * # Find shell executable - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_v_begin); - __pyx_v_begin = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":221 - * inside = True - * begin = line.i - * script = [] # <<<<<<<<<<<<<< - * # Find shell executable - * buffer = line.text.split('[') - */ - __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_XDECREF(((PyObject *)__pyx_v_script)); - __pyx_v_script = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":223 - * script = [] - * # Find shell executable - * buffer = line.text.split('[') # <<<<<<<<<<<<<< - * if len(buffer) > 2: - * fail(line,"Too many",'[') - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_8, __pyx_n_s__split); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_k_tuple_24), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":224 - * # Find shell executable - * buffer = line.text.split('[') - * if len(buffer) > 2: # <<<<<<<<<<<<<< - * fail(line,"Too many",'[') - * elif len(buffer) < 2: - */ - __pyx_t_10 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = (__pyx_t_10 > 2); - if (__pyx_t_6) { - - /* "preprocessed_text.py":225 - * buffer = line.text.split('[') - * if len(buffer) > 2: - * fail(line,"Too many",'[') # <<<<<<<<<<<<<< - * elif len(buffer) < 2: - * fail(line,"Missing",'[') - */ - __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_25)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_kp_s_25)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_25)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_t_8, 2, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __pyx_t_7 = PyObject_Call(__pyx_v_fail, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":226 - * if len(buffer) > 2: - * fail(line,"Too many",'[') - * elif len(buffer) < 2: # <<<<<<<<<<<<<< - * fail(line,"Missing",'[') - * buffer = buffer[1] - */ - __pyx_t_10 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = (__pyx_t_10 < 2); - if (__pyx_t_6) { - - /* "preprocessed_text.py":227 - * fail(line,"Too many",'[') - * elif len(buffer) < 2: - * fail(line,"Missing",'[') # <<<<<<<<<<<<<< - * buffer = buffer[1] - * buffer = buffer.split(']') - */ - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Missing)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_n_s__Missing)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Missing)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_t_7, 2, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __pyx_t_8 = PyObject_Call(__pyx_v_fail, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 227; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "preprocessed_text.py":228 - * elif len(buffer) < 2: - * fail(line,"Missing",'[') - * buffer = buffer[1] # <<<<<<<<<<<<<< - * buffer = buffer.split(']') - * if len(buffer) > 2: - */ - __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":229 - * fail(line,"Missing",'[') - * buffer = buffer[1] - * buffer = buffer.split(']') # <<<<<<<<<<<<<< - * if len(buffer) > 2: - * fail(line,"Too many",']') - */ - __pyx_t_8 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__split); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_k_tuple_27), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_7; - __pyx_t_7 = 0; - - /* "preprocessed_text.py":230 - * buffer = buffer[1] - * buffer = buffer.split(']') - * if len(buffer) > 2: # <<<<<<<<<<<<<< - * fail(line,"Too many",']') - * elif len(buffer) < 2: - */ - __pyx_t_10 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = (__pyx_t_10 > 2); - if (__pyx_t_6) { - - /* "preprocessed_text.py":231 - * buffer = buffer.split(']') - * if len(buffer) > 2: - * fail(line,"Too many",']') # <<<<<<<<<<<<<< - * elif len(buffer) < 2: - * fail(line,"Missing",']') - */ - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_25)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_25)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_25)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_t_7, 2, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __pyx_t_8 = PyObject_Call(__pyx_v_fail, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L11; - } - - /* "preprocessed_text.py":232 - * if len(buffer) > 2: - * fail(line,"Too many",']') - * elif len(buffer) < 2: # <<<<<<<<<<<<<< - * fail(line,"Missing",']') - * shell = buffer[0].strip() - */ - __pyx_t_10 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = (__pyx_t_10 < 2); - if (__pyx_t_6) { - - /* "preprocessed_text.py":233 - * fail(line,"Too many",']') - * elif len(buffer) < 2: - * fail(line,"Missing",']') # <<<<<<<<<<<<<< - * shell = buffer[0].strip() - * elif type(line) == End_shell: - */ - __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Missing)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_n_s__Missing)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Missing)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_t_8, 2, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __pyx_t_7 = PyObject_Call(__pyx_v_fail, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L11; - } - __pyx_L11:; - - /* "preprocessed_text.py":234 - * elif len(buffer) < 2: - * fail(line,"Missing",']') - * shell = buffer[0].strip() # <<<<<<<<<<<<<< - * elif type(line) == End_shell: - * error.fail(line,"Begin_shell missing") - */ - __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_buffer, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__strip); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_shell); - __pyx_v_shell = __pyx_t_7; - __pyx_t_7 = 0; - goto __pyx_L9; - } - - /* "preprocessed_text.py":235 - * fail(line,"Missing",']') - * shell = buffer[0].strip() - * elif type(line) == End_shell: # <<<<<<<<<<<<<< - * error.fail(line,"Begin_shell missing") - * else: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_shell); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 235; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":236 - * shell = buffer[0].strip() - * elif type(line) == End_shell: - * error.fail(line,"Begin_shell missing") # <<<<<<<<<<<<<< - * else: - * result.append(line) - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_8, __pyx_n_s__fail); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_28)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_kp_s_28)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_28)); - __pyx_t_4 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L9; - } - /*else*/ { - - /* "preprocessed_text.py":238 - * error.fail(line,"Begin_shell missing") - * else: - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_4 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } - __pyx_L9:; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":239 - * else: - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("preprocessed_text.execute_shell", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_fail); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_scriptname); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_os); - __Pyx_XDECREF(__pyx_v_pipe); - __Pyx_XDECREF(__pyx_v_lines); - __Pyx_XDECREF(__pyx_v_begin); - __Pyx_XDECREF(__pyx_v_script); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_shell); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":244 - * def execute_templates(text): - * '''Execute the templates''' - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) # <<<<<<<<<<<<<< - * - * def get_variables(line): - */ - -static PyObject *__pyx_pf_17preprocessed_text_17execute_templates_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_17execute_templates_fail = {__Pyx_NAMESTR("fail"), (PyCFunction)__pyx_pf_17preprocessed_text_17execute_templates_fail, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_17execute_templates_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_l = 0; - PyObject *__pyx_v_a = 0; - PyObject *__pyx_v_b = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__l,&__pyx_n_s__a,&__pyx_n_s__b,0}; - __Pyx_RefNannySetupContext("fail"); - __pyx_self = __pyx_self; - { - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__l); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__a); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__b); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "fail") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __pyx_v_l = values[0]; - __pyx_v_a = values[1]; - __pyx_v_b = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("fail", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.execute_templates.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_a); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_a); - __Pyx_GIVEREF(__pyx_v_a); - __Pyx_INCREF(__pyx_v_b); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_b); - __Pyx_GIVEREF(__pyx_v_b); - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_29), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.execute_templates.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":252 - * buffer = buffer[1].replace(']','') - * buffer = buffer.split(',') - * return map(lambda x: '$%s'%(x.strip()), buffer) # <<<<<<<<<<<<<< - * - * TEMPLATE = 1 - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__strip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_30), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("preprocessed_text.execute_templates.get_variables.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":246 - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) - * - * def get_variables(line): # <<<<<<<<<<<<<< - * buffer = line.text.split('[',1) - * if len(buffer)<2: - */ - -static PyObject *__pyx_pf_17preprocessed_text_17execute_templates_1get_variables(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_17execute_templates_1get_variables = {__Pyx_NAMESTR("get_variables"), (PyCFunction)__pyx_pf_17preprocessed_text_17execute_templates_1get_variables, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_17execute_templates_1get_variables(PyObject *__pyx_self, PyObject *__pyx_v_line) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *__pyx_outer_scope; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - int __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("get_variables"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":247 - * - * def get_variables(line): - * buffer = line.text.split('[',1) # <<<<<<<<<<<<<< - * if len(buffer)<2: - * fail(line,"Subst","Syntax error") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__split); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_31), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":248 - * def get_variables(line): - * buffer = line.text.split('[',1) - * if len(buffer)<2: # <<<<<<<<<<<<<< - * fail(line,"Subst","Syntax error") - * buffer = buffer[1].replace(']','') - */ - __pyx_t_3 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 248; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_4 = (__pyx_t_3 < 2); - if (__pyx_t_4) { - if (unlikely(!__pyx_cur_scope->__pyx_v_fail)) { __Pyx_RaiseClosureNameError("fail"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":249 - * buffer = line.text.split('[',1) - * if len(buffer)<2: - * fail(line,"Subst","Syntax error") # <<<<<<<<<<<<<< - * buffer = buffer[1].replace(']','') - * buffer = buffer.split(',') - */ - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Subst)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__Subst)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Subst)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_32)); - PyTuple_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_kp_s_32)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_32)); - __pyx_t_2 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 249; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":250 - * if len(buffer)<2: - * fail(line,"Subst","Syntax error") - * buffer = buffer[1].replace(']','') # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * return map(lambda x: '$%s'%(x.strip()), buffer) - */ - __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_34), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":251 - * fail(line,"Subst","Syntax error") - * buffer = buffer[1].replace(']','') - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * return map(lambda x: '$%s'%(x.strip()), buffer) - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__split); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_36), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":252 - * buffer = buffer[1].replace(']','') - * buffer = buffer.split(',') - * return map(lambda x: '$%s'%(x.strip()), buffer) # <<<<<<<<<<<<<< - * - * TEMPLATE = 1 - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 252; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("preprocessed_text.execute_templates.get_variables", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":290 - * subst = subst[:-2] - * for s in subst.split(';;'): - * buffer = map(lambda x: x.strip(), s.split(';')) # <<<<<<<<<<<<<< - * if len(buffer) != len(variables): - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - */ - -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_lambda_funcdef_lambda2, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda2"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_x, __pyx_n_s__strip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("preprocessed_text.execute_templates.lambda2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":242 - * - * ###################################################################### - * def execute_templates(text): # <<<<<<<<<<<<<< - * '''Execute the templates''' - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) - */ - -static PyObject *__pyx_pf_17preprocessed_text_3execute_templates(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_3execute_templates[] = "Execute the templates"; -static PyMethodDef __pyx_mdef_17preprocessed_text_3execute_templates = {__Pyx_NAMESTR("execute_templates"), (PyCFunction)__pyx_pf_17preprocessed_text_3execute_templates, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_3execute_templates)}; -static PyObject *__pyx_pf_17preprocessed_text_3execute_templates(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *__pyx_cur_scope; - PyObject *__pyx_v_get_variables = 0; - long __pyx_v_TEMPLATE; - long __pyx_v_SUBST; - long __pyx_v_inside; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_script = NULL; - PyObject *__pyx_v_variables = NULL; - PyObject *__pyx_v_subst = NULL; - PyObject *__pyx_v_s = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_t = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_scriptname = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_os = NULL; - PyObject *__pyx_v_pipe = NULL; - PyObject *__pyx_v_lines = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - Py_ssize_t __pyx_t_7; - PyObject *(*__pyx_t_8)(PyObject *); - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - Py_ssize_t __pyx_t_11; - Py_ssize_t __pyx_t_12; - PyObject *(*__pyx_t_13)(PyObject *); - PyObject *__pyx_t_14 = NULL; - PyObject *__pyx_t_15 = NULL; - PyObject *(*__pyx_t_16)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("execute_templates"); - __pyx_cur_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)__pyx_ptype_17preprocessed_text___pyx_scope_struct__execute_templates->tp_new(__pyx_ptype_17preprocessed_text___pyx_scope_struct__execute_templates, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":244 - * def execute_templates(text): - * '''Execute the templates''' - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) # <<<<<<<<<<<<<< - * - * def get_variables(line): - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_17execute_templates_fail, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_fail); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_fail); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_fail = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":246 - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) - * - * def get_variables(line): # <<<<<<<<<<<<<< - * buffer = line.text.split('[',1) - * if len(buffer)<2: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_17execute_templates_1get_variables, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 246; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_get_variables); - __pyx_v_get_variables = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":254 - * return map(lambda x: '$%s'%(x.strip()), buffer) - * - * TEMPLATE = 1 # <<<<<<<<<<<<<< - * SUBST = 2 - * inside = 0 - */ - __pyx_v_TEMPLATE = 1; - - /* "preprocessed_text.py":255 - * - * TEMPLATE = 1 - * SUBST = 2 # <<<<<<<<<<<<<< - * inside = 0 - * result = [] - */ - __pyx_v_SUBST = 2; - - /* "preprocessed_text.py":256 - * TEMPLATE = 1 - * SUBST = 2 - * inside = 0 # <<<<<<<<<<<<<< - * result = [] - * for line in text: - */ - __pyx_v_inside = 0; - - /* "preprocessed_text.py":257 - * SUBST = 2 - * inside = 0 - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * if inside == 0: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":258 - * inside = 0 - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * if inside == 0: - * if type(line) == Begin_template: - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":259 - * result = [] - * for line in text: - * if inside == 0: # <<<<<<<<<<<<<< - * if type(line) == Begin_template: - * script = [] - */ - __pyx_t_5 = (__pyx_v_inside == 0); - if (__pyx_t_5) { - - /* "preprocessed_text.py":260 - * for line in text: - * if inside == 0: - * if type(line) == Begin_template: # <<<<<<<<<<<<<< - * script = [] - * inside = TEMPLATE - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_template); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 260; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":261 - * if inside == 0: - * if type(line) == Begin_template: - * script = [] # <<<<<<<<<<<<<< - * inside = TEMPLATE - * script = "template = \"\"\"\n" - */ - __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_XDECREF(__pyx_v_script); - __pyx_v_script = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - - /* "preprocessed_text.py":262 - * if type(line) == Begin_template: - * script = [] - * inside = TEMPLATE # <<<<<<<<<<<<<< - * script = "template = \"\"\"\n" - * else: - */ - __pyx_v_inside = __pyx_v_TEMPLATE; - - /* "preprocessed_text.py":263 - * script = [] - * inside = TEMPLATE - * script = "template = \"\"\"\n" # <<<<<<<<<<<<<< - * else: - * result.append(line) - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_37)); - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = ((PyObject *)__pyx_kp_s_37); - goto __pyx_L8; - } - /*else*/ { - - /* "preprocessed_text.py":265 - * script = "template = \"\"\"\n" - * else: - * result.append(line) # <<<<<<<<<<<<<< - * elif inside == TEMPLATE: - * if type(line) == Begin_template: - */ - __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - } - __pyx_L8:; - goto __pyx_L7; - } - - /* "preprocessed_text.py":266 - * else: - * result.append(line) - * elif inside == TEMPLATE: # <<<<<<<<<<<<<< - * if type(line) == Begin_template: - * fail(line,"template", "Nested Begin_Template") - */ - __pyx_t_5 = (__pyx_v_inside == __pyx_v_TEMPLATE); - if (__pyx_t_5) { - - /* "preprocessed_text.py":267 - * result.append(line) - * elif inside == TEMPLATE: - * if type(line) == Begin_template: # <<<<<<<<<<<<<< - * fail(line,"template", "Nested Begin_Template") - * elif type(line) == End_template: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_template); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 267; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":268 - * elif inside == TEMPLATE: - * if type(line) == Begin_template: - * fail(line,"template", "Nested Begin_Template") # <<<<<<<<<<<<<< - * elif type(line) == End_template: - * fail(line,"template","Missing Subst") - */ - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__template)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__template)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__template)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_38)); - PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_kp_s_38)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_38)); - __pyx_t_6 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L9; - } - - /* "preprocessed_text.py":269 - * if type(line) == Begin_template: - * fail(line,"template", "Nested Begin_Template") - * elif type(line) == End_template: # <<<<<<<<<<<<<< - * fail(line,"template","Missing Subst") - * elif type(line) == Subst: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_template); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":270 - * fail(line,"template", "Nested Begin_Template") - * elif type(line) == End_template: - * fail(line,"template","Missing Subst") # <<<<<<<<<<<<<< - * elif type(line) == Subst: - * inside = SUBST - */ - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__template)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__template)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__template)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_39)); - PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_kp_s_39)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_39)); - __pyx_t_6 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L9; - } - - /* "preprocessed_text.py":271 - * elif type(line) == End_template: - * fail(line,"template","Missing Subst") - * elif type(line) == Subst: # <<<<<<<<<<<<<< - * inside = SUBST - * script += "\"\"\"\n" - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subst); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":272 - * fail(line,"template","Missing Subst") - * elif type(line) == Subst: - * inside = SUBST # <<<<<<<<<<<<<< - * script += "\"\"\"\n" - * variables = get_variables(line) - */ - __pyx_v_inside = __pyx_v_SUBST; - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_40)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 273; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":273 - * elif type(line) == Subst: - * inside = SUBST - * script += "\"\"\"\n" # <<<<<<<<<<<<<< - * variables = get_variables(line) - * script += "v = []\n" - */ - __Pyx_GOTREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":274 - * inside = SUBST - * script += "\"\"\"\n" - * variables = get_variables(line) # <<<<<<<<<<<<<< - * script += "v = []\n" - * subst = "" - */ - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_6 = PyObject_Call(__pyx_v_get_variables, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_variables); - __pyx_v_variables = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":275 - * script += "\"\"\"\n" - * variables = get_variables(line) - * script += "v = []\n" # <<<<<<<<<<<<<< - * subst = "" - * else: - */ - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_41)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 275; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":276 - * variables = get_variables(line) - * script += "v = []\n" - * subst = "" # <<<<<<<<<<<<<< - * else: - * script += line.text+"\n" - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_XDECREF(__pyx_v_subst); - __pyx_v_subst = ((PyObject *)__pyx_kp_s_33); - goto __pyx_L9; - } - /*else*/ { - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":278 - * subst = "" - * else: - * script += line.text+"\n" # <<<<<<<<<<<<<< - * else: # inside == SUBST - * if type(line) == Begin_template: - */ - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyNumber_Add(__pyx_t_6, ((PyObject *)__pyx_kp_s_22)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_script, __pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 278; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_6; - __pyx_t_6 = 0; - } - __pyx_L9:; - goto __pyx_L7; - } - /*else*/ { - - /* "preprocessed_text.py":280 - * script += line.text+"\n" - * else: # inside == SUBST - * if type(line) == Begin_template: # <<<<<<<<<<<<<< - * fail(line,"subst","Nested Begin_template") - * elif type(line) == Subst: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_template); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 280; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":281 - * else: # inside == SUBST - * if type(line) == Begin_template: - * fail(line,"subst","Nested Begin_template") # <<<<<<<<<<<<<< - * elif type(line) == Subst: - * fail(line,"subst","Subst already defined") - */ - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__subst)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__subst)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__subst)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_42)); - PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_kp_s_42)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_42)); - __pyx_t_6 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 281; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":282 - * if type(line) == Begin_template: - * fail(line,"subst","Nested Begin_template") - * elif type(line) == Subst: # <<<<<<<<<<<<<< - * fail(line,"subst","Subst already defined") - * elif type(line) == End_template: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subst); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":283 - * fail(line,"subst","Nested Begin_template") - * elif type(line) == Subst: - * fail(line,"subst","Subst already defined") # <<<<<<<<<<<<<< - * elif type(line) == End_template: - * inside = 0 - */ - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__subst)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__subst)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__subst)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_43)); - PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_kp_s_43)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_43)); - __pyx_t_6 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":284 - * elif type(line) == Subst: - * fail(line,"subst","Subst already defined") - * elif type(line) == End_template: # <<<<<<<<<<<<<< - * inside = 0 - * subst = subst.rstrip() - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_template); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 284; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":285 - * fail(line,"subst","Subst already defined") - * elif type(line) == End_template: - * inside = 0 # <<<<<<<<<<<<<< - * subst = subst.rstrip() - * if subst[-2:] == ';;': - */ - __pyx_v_inside = 0; - if (unlikely(!__pyx_v_subst)) { __Pyx_RaiseUnboundLocalError("subst"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_4 = PyObject_GetAttr(__pyx_v_subst, __pyx_n_s__rstrip); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":286 - * elif type(line) == End_template: - * inside = 0 - * subst = subst.rstrip() # <<<<<<<<<<<<<< - * if subst[-2:] == ';;': - * subst = subst[:-2] - */ - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 286; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_subst); - __pyx_v_subst = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":287 - * inside = 0 - * subst = subst.rstrip() - * if subst[-2:] == ';;': # <<<<<<<<<<<<<< - * subst = subst[:-2] - * for s in subst.split(';;'): - */ - __pyx_t_6 = __Pyx_PySequence_GetSlice(__pyx_v_subst, -2, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = __Pyx_PyString_Equals(__pyx_t_6, ((PyObject *)__pyx_kp_s_44), Py_EQ); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 287; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_5) { - - /* "preprocessed_text.py":288 - * subst = subst.rstrip() - * if subst[-2:] == ';;': - * subst = subst[:-2] # <<<<<<<<<<<<<< - * for s in subst.split(';;'): - * buffer = map(lambda x: x.strip(), s.split(';')) - */ - __pyx_t_6 = __Pyx_PySequence_GetSlice(__pyx_v_subst, 0, -2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_subst); - __pyx_v_subst = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L11; - } - __pyx_L11:; - - /* "preprocessed_text.py":289 - * if subst[-2:] == ';;': - * subst = subst[:-2] - * for s in subst.split(';;'): # <<<<<<<<<<<<<< - * buffer = map(lambda x: x.strip(), s.split(';')) - * if len(buffer) != len(variables): - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_subst, __pyx_n_s__split); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_k_tuple_45), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) { - __pyx_t_6 = __pyx_t_4; __Pyx_INCREF(__pyx_t_6); __pyx_t_7 = 0; - __pyx_t_8 = NULL; - } else { - __pyx_t_7 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; - } else { - __pyx_t_4 = __pyx_t_8(__pyx_t_6); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_s); - __pyx_v_s = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":290 - * subst = subst[:-2] - * for s in subst.split(';;'): - * buffer = map(lambda x: x.strip(), s.split(';')) # <<<<<<<<<<<<<< - * if len(buffer) != len(variables): - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - */ - __pyx_t_4 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda2, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyObject_GetAttr(__pyx_v_s, __pyx_n_s__split); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_k_tuple_47), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_4 = 0; - __pyx_t_10 = 0; - __pyx_t_10 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":291 - * for s in subst.split(';;'): - * buffer = map(lambda x: x.strip(), s.split(';')) - * if len(buffer) != len(variables): # <<<<<<<<<<<<<< - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - * script += "v.append( { \\\n" - */ - __pyx_t_11 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (unlikely(!__pyx_v_variables)) { __Pyx_RaiseUnboundLocalError("variables"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_12 = PyObject_Length(__pyx_v_variables); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 291; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = (__pyx_t_11 != __pyx_t_12); - if (__pyx_t_5) { - - /* "preprocessed_text.py":292 - * buffer = map(lambda x: x.strip(), s.split(';')) - * if len(buffer) != len(variables): - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) # <<<<<<<<<<<<<< - * script += "v.append( { \\\n" - * for t,v in zip(variables,buffer): - */ - __pyx_t_12 = PyObject_Length(__pyx_v_variables); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_10 = PyInt_FromSsize_t(__pyx_t_12); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_12 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_12); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_10 = 0; - __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_48), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__subst)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__subst)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__subst)); - PyTuple_SET_ITEM(__pyx_t_4, 2, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_cur_scope->__pyx_v_fail, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 292; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L14; - } - __pyx_L14:; - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_9 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_49)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":293 - * if len(buffer) != len(variables): - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - * script += "v.append( { \\\n" # <<<<<<<<<<<<<< - * for t,v in zip(variables,buffer): - * script += ' "%s": """%s""" ,\n'%(t,v) - */ - __Pyx_GOTREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_9; - __pyx_t_9 = 0; - - /* "preprocessed_text.py":294 - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - * script += "v.append( { \\\n" - * for t,v in zip(variables,buffer): # <<<<<<<<<<<<<< - * script += ' "%s": """%s""" ,\n'%(t,v) - * script += "} )\n" - */ - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_variables); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_variables); - __Pyx_GIVEREF(__pyx_v_variables); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_4 = PyObject_Call(__pyx_builtin_zip, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) { - __pyx_t_9 = __pyx_t_4; __Pyx_INCREF(__pyx_t_9); __pyx_t_12 = 0; - __pyx_t_13 = NULL; - } else { - __pyx_t_12 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_13 = Py_TYPE(__pyx_t_9)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_9)) { - if (__pyx_t_12 >= PyList_GET_SIZE(__pyx_t_9)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_12); __Pyx_INCREF(__pyx_t_4); __pyx_t_12++; - } else if (PyTuple_CheckExact(__pyx_t_9)) { - if (__pyx_t_12 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_12); __Pyx_INCREF(__pyx_t_4); __pyx_t_12++; - } else { - __pyx_t_4 = __pyx_t_13(__pyx_t_9); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) { - PyObject* sequence = __pyx_t_4; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_14 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyList_GET_ITEM(sequence, 0); - __pyx_t_14 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_10); - __Pyx_INCREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_15 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_15); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_16 = Py_TYPE(__pyx_t_15)->tp_iternext; - index = 0; __pyx_t_10 = __pyx_t_16(__pyx_t_15); if (unlikely(!__pyx_t_10)) goto __pyx_L17_unpacking_failed; - __Pyx_GOTREF(__pyx_t_10); - index = 1; __pyx_t_14 = __pyx_t_16(__pyx_t_15); if (unlikely(!__pyx_t_14)) goto __pyx_L17_unpacking_failed; - __Pyx_GOTREF(__pyx_t_14); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_16(__pyx_t_15), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - goto __pyx_L18_unpacking_done; - __pyx_L17_unpacking_failed:; - __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L18_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_t); - __pyx_v_t = __pyx_t_10; - __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_14; - __pyx_t_14 = 0; - - /* "preprocessed_text.py":295 - * script += "v.append( { \\\n" - * for t,v in zip(variables,buffer): - * script += ' "%s": """%s""" ,\n'%(t,v) # <<<<<<<<<<<<<< - * script += "} )\n" - * script += "for d in v:\n t0 = str(template)\n" - */ - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_t); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_t); - __Pyx_GIVEREF(__pyx_v_t); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_14 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_50), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_t_14)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_4; - __pyx_t_4 = 0; - } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "preprocessed_text.py":296 - * for t,v in zip(variables,buffer): - * script += ' "%s": """%s""" ,\n'%(t,v) - * script += "} )\n" # <<<<<<<<<<<<<< - * script += "for d in v:\n t0 = str(template)\n" - * for v in variables: - */ - __pyx_t_9 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_51)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 296; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_9; - __pyx_t_9 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_v_script)) { __Pyx_RaiseUnboundLocalError("script"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_52)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":297 - * script += ' "%s": """%s""" ,\n'%(t,v) - * script += "} )\n" - * script += "for d in v:\n t0 = str(template)\n" # <<<<<<<<<<<<<< - * for v in variables: - * script += " t0 = t0.replace('%s',d['%s'])\n"%(v,v) - */ - __Pyx_GOTREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_6; - __pyx_t_6 = 0; - if (unlikely(!__pyx_v_variables)) { __Pyx_RaiseUnboundLocalError("variables"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }if (PyList_CheckExact(__pyx_v_variables) || PyTuple_CheckExact(__pyx_v_variables)) { - - /* "preprocessed_text.py":298 - * script += "} )\n" - * script += "for d in v:\n t0 = str(template)\n" - * for v in variables: # <<<<<<<<<<<<<< - * script += " t0 = t0.replace('%s',d['%s'])\n"%(v,v) - * script += " print t0\n" - */ - __pyx_t_6 = __pyx_v_variables; __Pyx_INCREF(__pyx_t_6); __pyx_t_7 = 0; - __pyx_t_8 = NULL; - } else { - __pyx_t_7 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_variables); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_9 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; - } else { - __pyx_t_9 = __pyx_t_8(__pyx_t_6); - if (unlikely(!__pyx_t_9)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_9); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_9; - __pyx_t_9 = 0; - - /* "preprocessed_text.py":299 - * script += "for d in v:\n t0 = str(template)\n" - * for v in variables: - * script += " t0 = t0.replace('%s',d['%s'])\n"%(v,v) # <<<<<<<<<<<<<< - * script += " print t0\n" - * # Write script file - */ - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_53), ((PyObject *)__pyx_t_9)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_9; - __pyx_t_9 = 0; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "preprocessed_text.py":300 - * for v in variables: - * script += " t0 = t0.replace('%s',d['%s'])\n"%(v,v) - * script += " print t0\n" # <<<<<<<<<<<<<< - * # Write script file - * scriptname = "%s%s_template_%d"%(irpdir,line.filename,line.i) - */ - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_script, ((PyObject *)__pyx_kp_s_54)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_script); - __pyx_v_script = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":302 - * script += " print t0\n" - * # Write script file - * scriptname = "%s%s_template_%d"%(irpdir,line.filename,line.i) # <<<<<<<<<<<<<< - * file = open(scriptname,'w') - * file.writelines(script) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_9 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_14 = PyTuple_New(3); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - PyTuple_SET_ITEM(__pyx_t_14, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_6 = 0; - __pyx_t_9 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_55), ((PyObject *)__pyx_t_14)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __Pyx_XDECREF(__pyx_v_scriptname); - __pyx_v_scriptname = ((PyObject *)__pyx_t_4); - __pyx_t_4 = 0; - - /* "preprocessed_text.py":303 - * # Write script file - * scriptname = "%s%s_template_%d"%(irpdir,line.filename,line.i) - * file = open(scriptname,'w') # <<<<<<<<<<<<<< - * file.writelines(script) - * file.close() - */ - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_14 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_14; - __pyx_t_14 = 0; - - /* "preprocessed_text.py":304 - * scriptname = "%s%s_template_%d"%(irpdir,line.filename,line.i) - * file = open(scriptname,'w') - * file.writelines(script) # <<<<<<<<<<<<<< - * file.close() - * scriptname = "%s_template_%d"%(line.filename,line.i) - */ - __pyx_t_14 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_script); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_script); - __Pyx_GIVEREF(__pyx_v_script); - __pyx_t_9 = PyObject_Call(__pyx_t_14, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 304; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "preprocessed_text.py":305 - * file = open(scriptname,'w') - * file.writelines(script) - * file.close() # <<<<<<<<<<<<<< - * scriptname = "%s_template_%d"%(line.filename,line.i) - * file = open(scriptname,'w') - */ - __pyx_t_9 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":306 - * file.writelines(script) - * file.close() - * scriptname = "%s_template_%d"%(line.filename,line.i) # <<<<<<<<<<<<<< - * file = open(scriptname,'w') - * file.writelines(script) - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_4 = 0; - __pyx_t_9 = 0; - __pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_56), ((PyObject *)__pyx_t_14)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_v_scriptname); - __pyx_v_scriptname = ((PyObject *)__pyx_t_9); - __pyx_t_9 = 0; - - /* "preprocessed_text.py":307 - * file.close() - * scriptname = "%s_template_%d"%(line.filename,line.i) - * file = open(scriptname,'w') # <<<<<<<<<<<<<< - * file.writelines(script) - * file.close() - */ - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_9, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_14 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_14; - __pyx_t_14 = 0; - - /* "preprocessed_text.py":308 - * scriptname = "%s_template_%d"%(line.filename,line.i) - * file = open(scriptname,'w') - * file.writelines(script) # <<<<<<<<<<<<<< - * file.close() - * # Execute shell - */ - __pyx_t_14 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_script); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_script); - __Pyx_GIVEREF(__pyx_v_script); - __pyx_t_4 = PyObject_Call(__pyx_t_14, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":309 - * file = open(scriptname,'w') - * file.writelines(script) - * file.close() # <<<<<<<<<<<<<< - * # Execute shell - * import os - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 309; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 309; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "preprocessed_text.py":311 - * file.close() - * # Execute shell - * import os # <<<<<<<<<<<<<< - * pipe = os.popen("python < %s"%(scriptname),'r') - * lines = pipe.readlines() - */ - __pyx_t_9 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_v_os); - __pyx_v_os = __pyx_t_9; - __pyx_t_9 = 0; - - /* "preprocessed_text.py":312 - * # Execute shell - * import os - * pipe = os.popen("python < %s"%(scriptname),'r') # <<<<<<<<<<<<<< - * lines = pipe.readlines() - * pipe.close() - */ - __pyx_t_9 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__popen); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_57), __pyx_v_scriptname); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - PyTuple_SET_ITEM(__pyx_t_14, 0, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_14, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_t_14), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __Pyx_XDECREF(__pyx_v_pipe); - __pyx_v_pipe = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":313 - * import os - * pipe = os.popen("python < %s"%(scriptname),'r') - * lines = pipe.readlines() # <<<<<<<<<<<<<< - * pipe.close() - * result += get_text(lines,scriptname) - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_pipe, __pyx_n_s__readlines); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_14 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_lines); - __pyx_v_lines = __pyx_t_14; - __pyx_t_14 = 0; - - /* "preprocessed_text.py":314 - * pipe = os.popen("python < %s"%(scriptname),'r') - * lines = pipe.readlines() - * pipe.close() # <<<<<<<<<<<<<< - * result += get_text(lines,scriptname) - * os.remove(scriptname) - */ - __pyx_t_14 = PyObject_GetAttr(__pyx_v_pipe, __pyx_n_s__close); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_4 = PyObject_Call(__pyx_t_14, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":315 - * lines = pipe.readlines() - * pipe.close() - * result += get_text(lines,scriptname) # <<<<<<<<<<<<<< - * os.remove(scriptname) - * else: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_14 = PyTuple_New(2); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_14)); - __Pyx_INCREF(__pyx_v_lines); - PyTuple_SET_ITEM(__pyx_t_14, 0, __pyx_v_lines); - __Pyx_GIVEREF(__pyx_v_lines); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_14, 1, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __pyx_t_9 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_14), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_14)); __pyx_t_14 = 0; - __pyx_t_14 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_9); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_14; - __pyx_t_14 = 0; - - /* "preprocessed_text.py":316 - * pipe.close() - * result += get_text(lines,scriptname) - * os.remove(scriptname) # <<<<<<<<<<<<<< - * else: - * subst += line.text+'\n' - */ - __pyx_t_14 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__remove); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_scriptname); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_scriptname); - __Pyx_GIVEREF(__pyx_v_scriptname); - __pyx_t_4 = PyObject_Call(__pyx_t_14, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L10; - } - /*else*/ { - if (unlikely(!__pyx_v_subst)) { __Pyx_RaiseUnboundLocalError("subst"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":318 - * os.remove(scriptname) - * else: - * subst += line.text+'\n' # <<<<<<<<<<<<<< - * - * return result - */ - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyNumber_Add(__pyx_t_4, ((PyObject *)__pyx_kp_s_22)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_subst, __pyx_t_9); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_v_subst); - __pyx_v_subst = __pyx_t_4; - __pyx_t_4 = 0; - } - __pyx_L10:; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":320 - * subst += line.text+'\n' - * - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_XDECREF(__pyx_t_15); - __Pyx_AddTraceback("preprocessed_text.execute_templates", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_get_variables); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_script); - __Pyx_XDECREF(__pyx_v_variables); - __Pyx_XDECREF(__pyx_v_subst); - __Pyx_XDECREF(__pyx_v_s); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_t); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_scriptname); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_os); - __Pyx_XDECREF(__pyx_v_pipe); - __Pyx_XDECREF(__pyx_v_lines); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":323 - * - * ###################################################################### - * def form(text): # <<<<<<<<<<<<<< - * '''Find if the text is in fixed form or in free form''' - * assert type(text) == list - */ - -static PyObject *__pyx_pf_17preprocessed_text_4form(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_4form[] = "Find if the text is in fixed form or in free form"; -static PyMethodDef __pyx_mdef_17preprocessed_text_4form = {__Pyx_NAMESTR("form"), (PyCFunction)__pyx_pf_17preprocessed_text_4form, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_4form)}; -static PyObject *__pyx_pf_17preprocessed_text_4form(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_re2 = NULL; - PyObject *__pyx_v_re3 = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_test = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - int __pyx_t_9; - Py_ssize_t __pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("form"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":325 - * def form(text): - * '''Find if the text is in fixed form or in free form''' - * assert type(text) == list # <<<<<<<<<<<<<< - * if len(text) == 0: - * return Free_form - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 325; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":326 - * '''Find if the text is in fixed form or in free form''' - * assert type(text) == list - * if len(text) == 0: # <<<<<<<<<<<<<< - * return Free_form - * assert isinstance(text[0],Line) - */ - __pyx_t_3 = PyObject_Length(__pyx_v_text); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = (__pyx_t_3 == 0); - if (__pyx_t_2) { - - /* "preprocessed_text.py":327 - * assert type(text) == list - * if len(text) == 0: - * return Free_form # <<<<<<<<<<<<<< - * assert isinstance(text[0],Line) - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free_form); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":328 - * if len(text) == 0: - * return Free_form - * assert isinstance(text[0],Line) # <<<<<<<<<<<<<< - * - * re2 = re.compile(r"^\s*[!#]") - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_text, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyObject_IsInstance(__pyx_t_1, __pyx_t_4); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 328; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":330 - * assert isinstance(text[0],Line) - * - * re2 = re.compile(r"^\s*[!#]") # <<<<<<<<<<<<<< - * re3 = re.compile(r"^\s*[^ 0-9]+") - * for line in text: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__compile); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_59), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_re2 = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":331 - * - * re2 = re.compile(r"^\s*[!#]") - * re3 = re.compile(r"^\s*[^ 0-9]+") # <<<<<<<<<<<<<< - * for line in text: - * if type(line) in [ Empty_line, Doc, Openmp, Directive ]: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__compile); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_61), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_re3 = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":332 - * re2 = re.compile(r"^\s*[!#]") - * re3 = re.compile(r"^\s*[^ 0-9]+") - * for line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Empty_line, Doc, Openmp, Directive ]: - * pass - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_4 = __pyx_v_text; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_4); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 332; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":333 - * re3 = re.compile(r"^\s*[^ 0-9]+") - * for line in text: - * if type(line) in [ Empty_line, Doc, Openmp, Directive ]: # <<<<<<<<<<<<<< - * pass - * else: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (!((int)__pyx_t_2)) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Doc); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_2); - } - if (!__pyx_t_9) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = ((int)__pyx_t_2); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Directive); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 333; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_2 = ((int)__pyx_t_9); - } else { - __pyx_t_2 = __pyx_t_8; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = __pyx_t_2; - if (__pyx_t_8) { - goto __pyx_L8; - } - /*else*/ { - - /* "preprocessed_text.py":336 - * pass - * else: - * if len(line.text) > 5: # <<<<<<<<<<<<<< - * test = line.text[0:5] - * if test[0] in "Cc#!*": - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = (__pyx_t_10 > 5); - if (__pyx_t_8) { - - /* "preprocessed_text.py":337 - * else: - * if len(line.text) > 5: - * test = line.text[0:5] # <<<<<<<<<<<<<< - * if test[0] in "Cc#!*": - * pass - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_PySequence_GetSlice(__pyx_t_1, 0, 5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_test); - __pyx_v_test = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":338 - * if len(line.text) > 5: - * test = line.text[0:5] - * if test[0] in "Cc#!*": # <<<<<<<<<<<<<< - * pass - * else: - */ - __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_test, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = ((PySequence_Contains(((PyObject *)__pyx_kp_s_62), __pyx_t_6))); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_8) { - goto __pyx_L10; - } - /*else*/ { - - /* "preprocessed_text.py":341 - * pass - * else: - * if re2.match(test) is None and \ # <<<<<<<<<<<<<< - * re3.match(test) is not None: - * return Free_form - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_re2, __pyx_n_s__match); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_test); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_test); - __Pyx_GIVEREF(__pyx_v_test); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_8 = (__pyx_t_7 == Py_None); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_8) { - - /* "preprocessed_text.py":342 - * else: - * if re2.match(test) is None and \ - * re3.match(test) is not None: # <<<<<<<<<<<<<< - * return Free_form - * if line.text.rstrip()[-1] == '&': - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_re3, __pyx_n_s__match); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_test); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_test); - __Pyx_GIVEREF(__pyx_v_test); - __pyx_t_6 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 342; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_2 = (__pyx_t_6 != Py_None); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __pyx_t_2; - } else { - __pyx_t_9 = __pyx_t_8; - } - if (__pyx_t_9) { - - /* "preprocessed_text.py":343 - * if re2.match(test) is None and \ - * re3.match(test) is not None: - * return Free_form # <<<<<<<<<<<<<< - * if line.text.rstrip()[-1] == '&': - * return Free_form - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free_form); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 343; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_r = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L11; - } - __pyx_L11:; - - /* "preprocessed_text.py":344 - * re3.match(test) is not None: - * return Free_form - * if line.text.rstrip()[-1] == '&': # <<<<<<<<<<<<<< - * return Free_form - * return Fixed_form - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__rstrip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_6, -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_t_1, ((PyObject *)__pyx_kp_s_63), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 344; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_9) { - - /* "preprocessed_text.py":345 - * return Free_form - * if line.text.rstrip()[-1] == '&': - * return Free_form # <<<<<<<<<<<<<< - * return Fixed_form - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free_form); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L12; - } - __pyx_L12:; - } - __pyx_L10:; - goto __pyx_L9; - } - __pyx_L9:; - } - __pyx_L8:; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":346 - * if line.text.rstrip()[-1] == '&': - * return Free_form - * return Fixed_form # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Fixed_form); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 346; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_r = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.form", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_re2); - __Pyx_XDECREF(__pyx_v_re3); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_test); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":349 - * - * ###################################################################### - * def add_operators(text): # <<<<<<<<<<<<<< - * re_incr = re.compile(r"(\s*)(.*)(\+=)(.*$)",re.S) - * re_decr = re.compile(r"(\s*)(.*)(-=)(.*$)",re.S) - */ - -static PyObject *__pyx_pf_17preprocessed_text_5add_operators(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_5add_operators = {__Pyx_NAMESTR("add_operators"), (PyCFunction)__pyx_pf_17preprocessed_text_5add_operators, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_5add_operators(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_re_incr = NULL; - PyObject *__pyx_v_re_decr = NULL; - PyObject *__pyx_v_re_mult = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("add_operators"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":350 - * ###################################################################### - * def add_operators(text): - * re_incr = re.compile(r"(\s*)(.*)(\+=)(.*$)",re.S) # <<<<<<<<<<<<<< - * re_decr = re.compile(r"(\s*)(.*)(-=)(.*$)",re.S) - * re_mult = re.compile(r"(\s*)(.*)(\*=)(.*$)",re.S) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__S); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_64)); - PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_kp_s_64)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_64)); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 350; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_re_incr = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":351 - * def add_operators(text): - * re_incr = re.compile(r"(\s*)(.*)(\+=)(.*$)",re.S) - * re_decr = re.compile(r"(\s*)(.*)(-=)(.*$)",re.S) # <<<<<<<<<<<<<< - * re_mult = re.compile(r"(\s*)(.*)(\*=)(.*$)",re.S) - * '''Change additional operators''' - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__compile); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__S); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_65)); - PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_kp_s_65)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_65)); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_v_re_decr = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":352 - * re_incr = re.compile(r"(\s*)(.*)(\+=)(.*$)",re.S) - * re_decr = re.compile(r"(\s*)(.*)(-=)(.*$)",re.S) - * re_mult = re.compile(r"(\s*)(.*)(\*=)(.*$)",re.S) # <<<<<<<<<<<<<< - * '''Change additional operators''' - * result = [] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__compile); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__S); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_66)); - PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_kp_s_66)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_66)); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_v_re_mult = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":354 - * re_mult = re.compile(r"(\s*)(.*)(\*=)(.*$)",re.S) - * '''Change additional operators''' - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * buffer = line.text - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":355 - * '''Change additional operators''' - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * buffer = line.text - * if "+=" in buffer: - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":356 - * result = [] - * for line in text: - * buffer = line.text # <<<<<<<<<<<<<< - * if "+=" in buffer: - * if "if" in buffer: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 356; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":357 - * for line in text: - * buffer = line.text - * if "+=" in buffer: # <<<<<<<<<<<<<< - * if "if" in buffer: - * re_incr = re.compile(r"(.*)(\))(\s*)(.*)(\+=)(.*$)",re.S) - */ - __pyx_t_6 = ((PySequence_Contains(__pyx_v_buffer, ((PyObject *)__pyx_kp_s_67)))); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_6) { - - /* "preprocessed_text.py":358 - * buffer = line.text - * if "+=" in buffer: - * if "if" in buffer: # <<<<<<<<<<<<<< - * re_incr = re.compile(r"(.*)(\))(\s*)(.*)(\+=)(.*$)",re.S) - * line.text = re.sub(re_incr,r'\1\2\4=\4+(\6)', buffer) - */ - __pyx_t_6 = ((PySequence_Contains(__pyx_v_buffer, ((PyObject *)__pyx_n_s__if)))); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_6) { - - /* "preprocessed_text.py":359 - * if "+=" in buffer: - * if "if" in buffer: - * re_incr = re.compile(r"(.*)(\))(\s*)(.*)(\+=)(.*$)",re.S) # <<<<<<<<<<<<<< - * line.text = re.sub(re_incr,r'\1\2\4=\4+(\6)', buffer) - * else: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__compile); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__S); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_68)); - PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_kp_s_68)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_68)); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_re_incr); - __pyx_v_re_incr = __pyx_t_7; - __pyx_t_7 = 0; - - /* "preprocessed_text.py":360 - * if "if" in buffer: - * re_incr = re.compile(r"(.*)(\))(\s*)(.*)(\+=)(.*$)",re.S) - * line.text = re.sub(re_incr,r'\1\2\4=\4+(\6)', buffer) # <<<<<<<<<<<<<< - * else: - * line.text = re.sub(re_incr,r'\1\2=\2+(\4)', buffer) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__sub); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_re_incr); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_re_incr); - __Pyx_GIVEREF(__pyx_v_re_incr); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_69)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_69)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_69)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L8; - } - /*else*/ { - - /* "preprocessed_text.py":362 - * line.text = re.sub(re_incr,r'\1\2\4=\4+(\6)', buffer) - * else: - * line.text = re.sub(re_incr,r'\1\2=\2+(\4)', buffer) # <<<<<<<<<<<<<< - * elif "-=" in buffer: - * line.text = re.sub(re_decr,r'\1\2=\2-(\4)', buffer) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__sub); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_re_incr); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_re_incr); - __Pyx_GIVEREF(__pyx_v_re_incr); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_70)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_kp_s_70)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_70)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_2 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __pyx_L8:; - goto __pyx_L7; - } - - /* "preprocessed_text.py":363 - * else: - * line.text = re.sub(re_incr,r'\1\2=\2+(\4)', buffer) - * elif "-=" in buffer: # <<<<<<<<<<<<<< - * line.text = re.sub(re_decr,r'\1\2=\2-(\4)', buffer) - * elif "*=" in buffer: - */ - __pyx_t_6 = ((PySequence_Contains(__pyx_v_buffer, ((PyObject *)__pyx_kp_s_71)))); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_6) { - - /* "preprocessed_text.py":364 - * line.text = re.sub(re_incr,r'\1\2=\2+(\4)', buffer) - * elif "-=" in buffer: - * line.text = re.sub(re_decr,r'\1\2=\2-(\4)', buffer) # <<<<<<<<<<<<<< - * elif "*=" in buffer: - * line.text = re.sub(re_mult,r'\1\2=\2*(\4)', buffer) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__sub); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_re_decr); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_re_decr); - __Pyx_GIVEREF(__pyx_v_re_decr); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_72)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_72)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_72)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_7 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L7; - } - - /* "preprocessed_text.py":365 - * elif "-=" in buffer: - * line.text = re.sub(re_decr,r'\1\2=\2-(\4)', buffer) - * elif "*=" in buffer: # <<<<<<<<<<<<<< - * line.text = re.sub(re_mult,r'\1\2=\2*(\4)', buffer) - * result.append(line) - */ - __pyx_t_6 = ((PySequence_Contains(__pyx_v_buffer, ((PyObject *)__pyx_kp_s_73)))); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 365; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_6) { - - /* "preprocessed_text.py":366 - * line.text = re.sub(re_decr,r'\1\2=\2-(\4)', buffer) - * elif "*=" in buffer: - * line.text = re.sub(re_mult,r'\1\2=\2*(\4)', buffer) # <<<<<<<<<<<<<< - * result.append(line) - * return result - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__sub); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_re_mult); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_re_mult); - __Pyx_GIVEREF(__pyx_v_re_mult); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_74)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_74)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_74)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L7; - } - __pyx_L7:; - - /* "preprocessed_text.py":367 - * elif "*=" in buffer: - * line.text = re.sub(re_mult,r'\1\2=\2*(\4)', buffer) - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":368 - * line.text = re.sub(re_mult,r'\1\2=\2*(\4)', buffer) - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.add_operators", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_re_incr); - __Pyx_XDECREF(__pyx_v_re_decr); - __Pyx_XDECREF(__pyx_v_re_mult); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":375 - * result = [] - * - * def remove_after_bang(line): # <<<<<<<<<<<<<< - * match = re_comment.match(line) - * if match is None: - */ - -static PyObject *__pyx_pf_17preprocessed_text_15remove_comments_remove_after_bang(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_15remove_comments_remove_after_bang = {__Pyx_NAMESTR("remove_after_bang"), (PyCFunction)__pyx_pf_17preprocessed_text_15remove_comments_remove_after_bang, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_15remove_comments_remove_after_bang(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_match = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("remove_after_bang"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":376 - * - * def remove_after_bang(line): - * match = re_comment.match(line) # <<<<<<<<<<<<<< - * if match is None: - * return line - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_comment); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__match); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_match = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":377 - * def remove_after_bang(line): - * match = re_comment.match(line) - * if match is None: # <<<<<<<<<<<<<< - * return line - * else: - */ - __pyx_t_4 = (__pyx_v_match == Py_None); - if (__pyx_t_4) { - - /* "preprocessed_text.py":378 - * match = re_comment.match(line) - * if match is None: - * return line # <<<<<<<<<<<<<< - * else: - * return re_comment.split(line)[1].rstrip() - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_line); - __pyx_r = __pyx_v_line; - goto __pyx_L0; - goto __pyx_L5; - } - /*else*/ { - - /* "preprocessed_text.py":380 - * return line - * else: - * return re_comment.split(line)[1].rstrip() # <<<<<<<<<<<<<< - * - * if form == Free_form: - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_comment); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_2, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__rstrip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_r = __pyx_t_3; - __pyx_t_3 = 0; - goto __pyx_L0; - } - __pyx_L5:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.remove_comments.remove_after_bang", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_match); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":371 - * - * ###################################################################### - * def remove_comments(text,form): # <<<<<<<<<<<<<< - * '''Remove all comments''' - * result = [] - */ - -static PyObject *__pyx_pf_17preprocessed_text_6remove_comments(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_17preprocessed_text_6remove_comments[] = "Remove all comments"; -static PyMethodDef __pyx_mdef_17preprocessed_text_6remove_comments = {__Pyx_NAMESTR("remove_comments"), (PyCFunction)__pyx_pf_17preprocessed_text_6remove_comments, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_6remove_comments)}; -static PyObject *__pyx_pf_17preprocessed_text_6remove_comments(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_form = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_remove_after_bang = 0; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_newline = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - int __pyx_t_9; - int __pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__text,&__pyx_n_s__form,0}; - __Pyx_RefNannySetupContext("remove_comments"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__form); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("remove_comments", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "remove_comments") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_text = values[0]; - __pyx_v_form = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("remove_comments", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.remove_comments", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":373 - * def remove_comments(text,form): - * '''Remove all comments''' - * result = [] # <<<<<<<<<<<<<< - * - * def remove_after_bang(line): - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":375 - * result = [] - * - * def remove_after_bang(line): # <<<<<<<<<<<<<< - * match = re_comment.match(line) - * if match is None: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_15remove_comments_remove_after_bang, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 375; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_remove_after_bang); - __pyx_v_remove_after_bang = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":382 - * return re_comment.split(line)[1].rstrip() - * - * if form == Free_form: # <<<<<<<<<<<<<< - * for line in text: - * if type(line) in [ Openmp, Doc, Directive] : - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free_form); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(__pyx_v_form, __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":383 - * - * if form == Free_form: - * for line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Openmp, Doc, Directive] : - * result.append(line) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_2 = __pyx_v_text; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":384 - * if form == Free_form: - * for line in text: - * if type(line) in [ Openmp, Doc, Directive] : # <<<<<<<<<<<<<< - * result.append(line) - * elif type(line) == Empty_line: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (!((int)__pyx_t_3)) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Doc); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_3); - } - if (!__pyx_t_9) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Directive); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 384; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = ((int)__pyx_t_3); - } else { - __pyx_t_8 = __pyx_t_9; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = __pyx_t_8; - if (__pyx_t_9) { - - /* "preprocessed_text.py":385 - * for line in text: - * if type(line) in [ Openmp, Doc, Directive] : - * result.append(line) # <<<<<<<<<<<<<< - * elif type(line) == Empty_line: - * pass - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L9; - } - - /* "preprocessed_text.py":386 - * if type(line) in [ Openmp, Doc, Directive] : - * result.append(line) - * elif type(line) == Empty_line: # <<<<<<<<<<<<<< - * pass - * else: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_9) { - goto __pyx_L9; - } - /*else*/ { - - /* "preprocessed_text.py":389 - * pass - * else: - * newline = line.text.lstrip() # <<<<<<<<<<<<<< - * if newline == "" or newline[0] == "!": - * pass - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__lstrip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_newline); - __pyx_v_newline = __pyx_t_7; - __pyx_t_7 = 0; - - /* "preprocessed_text.py":390 - * else: - * newline = line.text.lstrip() - * if newline == "" or newline[0] == "!": # <<<<<<<<<<<<<< - * pass - * else: - */ - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_v_newline, ((PyObject *)__pyx_kp_s_33), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 390; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!__pyx_t_9) { - __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_newline, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 390; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = __Pyx_PyString_Equals(__pyx_t_7, ((PyObject *)__pyx_kp_s_3), Py_EQ); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 390; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = __pyx_t_8; - } else { - __pyx_t_3 = __pyx_t_9; - } - if (__pyx_t_3) { - goto __pyx_L10; - } - /*else*/ { - - /* "preprocessed_text.py":393 - * pass - * else: - * line.text = remove_after_bang(line.text) # <<<<<<<<<<<<<< - * result.append(line) - * return result - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_v_remove_after_bang, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "preprocessed_text.py":394 - * else: - * line.text = remove_after_bang(line.text) - * result.append(line) # <<<<<<<<<<<<<< - * return result - * else: - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_L10:; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":395 - * line.text = remove_after_bang(line.text) - * result.append(line) - * return result # <<<<<<<<<<<<<< - * else: - * for line in text: - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - goto __pyx_L6; - } - /*else*/ { - - /* "preprocessed_text.py":397 - * return result - * else: - * for line in text: # <<<<<<<<<<<<<< - * if type(line) in [ Openmp, Doc, Directive ]: - * result.append(line) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_2 = __pyx_v_text; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_7); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_7); __pyx_t_4++; - } else { - __pyx_t_7 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 397; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "preprocessed_text.py":398 - * else: - * for line in text: - * if type(line) in [ Openmp, Doc, Directive ]: # <<<<<<<<<<<<<< - * result.append(line) - * elif type(line) == Empty_line: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_7 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_7), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!((int)__pyx_t_3)) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Doc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_7), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = ((int)__pyx_t_9); - } else { - __pyx_t_8 = ((int)__pyx_t_3); - } - if (!__pyx_t_8) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Directive); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_7), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_9 = ((int)__pyx_t_3); - } else { - __pyx_t_9 = __pyx_t_8; - } - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __pyx_t_9; - if (__pyx_t_8) { - - /* "preprocessed_text.py":399 - * for line in text: - * if type(line) in [ Openmp, Doc, Directive ]: - * result.append(line) # <<<<<<<<<<<<<< - * elif type(line) == Empty_line: - * pass - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 399; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L13; - } - - /* "preprocessed_text.py":400 - * if type(line) in [ Openmp, Doc, Directive ]: - * result.append(line) - * elif type(line) == Empty_line: # <<<<<<<<<<<<<< - * pass - * else: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_8) { - goto __pyx_L13; - } - /*else*/ { - - /* "preprocessed_text.py":403 - * pass - * else: - * newline = line.text.lstrip() # <<<<<<<<<<<<<< - * if newline == "" or newline[0] == "!": - * pass - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__lstrip); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_newline); - __pyx_v_newline = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":404 - * else: - * newline = line.text.lstrip() - * if newline == "" or newline[0] == "!": # <<<<<<<<<<<<<< - * pass - * else: - */ - __pyx_t_8 = __Pyx_PyString_Equals(__pyx_v_newline, ((PyObject *)__pyx_kp_s_33), Py_EQ); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!__pyx_t_8) { - __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_newline, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_t_6, ((PyObject *)__pyx_kp_s_3), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __pyx_t_9; - } else { - __pyx_t_3 = __pyx_t_8; - } - if (__pyx_t_3) { - goto __pyx_L14; - } - /*else*/ { - - /* "preprocessed_text.py":407 - * pass - * else: - * line.text = remove_after_bang(line.text) # <<<<<<<<<<<<<< - * if line.text[0] in "#123456789 ": - * result.append(line) - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_remove_after_bang, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 407; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "preprocessed_text.py":408 - * else: - * line.text = remove_after_bang(line.text) - * if line.text[0] in "#123456789 ": # <<<<<<<<<<<<<< - * result.append(line) - * return result - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_6, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_7) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = ((PySequence_Contains(((PyObject *)__pyx_kp_s_75), __pyx_t_7))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":409 - * line.text = remove_after_bang(line.text) - * if line.text[0] in "#123456789 ": - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_10 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L15; - } - __pyx_L15:; - } - __pyx_L14:; - } - __pyx_L13:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":410 - * if line.text[0] in "#123456789 ": - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - } - __pyx_L6:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.remove_comments", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_remove_after_bang); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_newline); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":413 - * - * ###################################################################### - * def remove_continuation(text,form): # <<<<<<<<<<<<<< - * '''Removes continuation lines''' - * result = [] - */ - -static PyObject *__pyx_pf_17preprocessed_text_7remove_continuation(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static char __pyx_doc_17preprocessed_text_7remove_continuation[] = "Removes continuation lines"; -static PyMethodDef __pyx_mdef_17preprocessed_text_7remove_continuation = {__Pyx_NAMESTR("remove_continuation"), (PyCFunction)__pyx_pf_17preprocessed_text_7remove_continuation, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_7remove_continuation)}; -static PyObject *__pyx_pf_17preprocessed_text_7remove_continuation(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_text = 0; - PyObject *__pyx_v_form = 0; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_number = NULL; - PyObject *__pyx_v_t = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_newline = NULL; - PyObject *__pyx_v_rev_text = NULL; - int __pyx_v_is_continuation; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - Py_ssize_t __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__text,&__pyx_n_s__form,0}; - __Pyx_RefNannySetupContext("remove_continuation"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__text); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__form); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("remove_continuation", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "remove_continuation") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_text = values[0]; - __pyx_v_form = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("remove_continuation", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.remove_continuation", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":415 - * def remove_continuation(text,form): - * '''Removes continuation lines''' - * result = [] # <<<<<<<<<<<<<< - * buffer = "" - * number = 0 - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":416 - * '''Removes continuation lines''' - * result = [] - * buffer = "" # <<<<<<<<<<<<<< - * number = 0 - * t = None - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - __pyx_v_buffer = ((PyObject *)__pyx_kp_s_33); - - /* "preprocessed_text.py":417 - * result = [] - * buffer = "" - * number = 0 # <<<<<<<<<<<<<< - * t = None - * if form == Free_form: - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_v_number = __pyx_int_0; - - /* "preprocessed_text.py":418 - * buffer = "" - * number = 0 - * t = None # <<<<<<<<<<<<<< - * if form == Free_form: - * for line in text: - */ - __Pyx_INCREF(Py_None); - __pyx_v_t = Py_None; - - /* "preprocessed_text.py":419 - * number = 0 - * t = None - * if form == Free_form: # <<<<<<<<<<<<<< - * for line in text: - * if line.text[-1] == '&': - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free_form); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(__pyx_v_form, __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":420 - * t = None - * if form == Free_form: - * for line in text: # <<<<<<<<<<<<<< - * if line.text[-1] == '&': - * buffer = "%s%s\n"%(buffer,line.text) - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_2 = __pyx_v_text; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":421 - * if form == Free_form: - * for line in text: - * if line.text[-1] == '&': # <<<<<<<<<<<<<< - * buffer = "%s%s\n"%(buffer,line.text) - * if number == 0: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_1, -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_6, ((PyObject *)__pyx_kp_s_63), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":422 - * for line in text: - * if line.text[-1] == '&': - * buffer = "%s%s\n"%(buffer,line.text) # <<<<<<<<<<<<<< - * if number == 0: - * t = type(line) - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_76), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - - /* "preprocessed_text.py":423 - * if line.text[-1] == '&': - * buffer = "%s%s\n"%(buffer,line.text) - * if number == 0: # <<<<<<<<<<<<<< - * t = type(line) - * number = line.i - */ - __pyx_t_6 = PyObject_RichCompare(__pyx_v_number, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":424 - * buffer = "%s%s\n"%(buffer,line.text) - * if number == 0: - * t = type(line) # <<<<<<<<<<<<<< - * number = line.i - * else: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __Pyx_DECREF(__pyx_v_t); - __pyx_v_t = ((PyObject *)Py_TYPE(__pyx_v_line)); - - /* "preprocessed_text.py":425 - * if number == 0: - * t = type(line) - * number = line.i # <<<<<<<<<<<<<< - * else: - * if number != 0: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_number); - __pyx_v_number = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L10; - } - __pyx_L10:; - goto __pyx_L9; - } - /*else*/ { - - /* "preprocessed_text.py":427 - * number = line.i - * else: - * if number != 0: # <<<<<<<<<<<<<< - * newline = t(number, \ - * "%s%s"%(buffer,line.text), \ - */ - __pyx_t_6 = PyObject_RichCompare(__pyx_v_number, __pyx_int_0, Py_NE); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":429 - * if number != 0: - * newline = t(number, \ - * "%s%s"%(buffer,line.text), \ # <<<<<<<<<<<<<< - * line.filename) - * line = newline - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_77), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "preprocessed_text.py":430 - * newline = t(number, \ - * "%s%s"%(buffer,line.text), \ - * line.filename) # <<<<<<<<<<<<<< - * line = newline - * number = 0 - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 430; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_number); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_number); - __Pyx_GIVEREF(__pyx_v_number); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_6 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_t, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_newline); - __pyx_v_newline = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":431 - * "%s%s"%(buffer,line.text), \ - * line.filename) - * line = newline # <<<<<<<<<<<<<< - * number = 0 - * buffer = "" - */ - __Pyx_INCREF(__pyx_v_newline); - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = __pyx_v_newline; - - /* "preprocessed_text.py":432 - * line.filename) - * line = newline - * number = 0 # <<<<<<<<<<<<<< - * buffer = "" - * result.append(line) - */ - __Pyx_INCREF(__pyx_int_0); - __Pyx_DECREF(__pyx_v_number); - __pyx_v_number = __pyx_int_0; - - /* "preprocessed_text.py":433 - * line = newline - * number = 0 - * buffer = "" # <<<<<<<<<<<<<< - * result.append(line) - * else: - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = ((PyObject *)__pyx_kp_s_33); - goto __pyx_L11; - } - __pyx_L11:; - - /* "preprocessed_text.py":434 - * number = 0 - * buffer = "" - * result.append(line) # <<<<<<<<<<<<<< - * else: - * rev_text = list(text) - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L6; - } - /*else*/ { - - /* "preprocessed_text.py":436 - * result.append(line) - * else: - * rev_text = list(text) # <<<<<<<<<<<<<< - * rev_text.reverse() - * for line in rev_text: - */ - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 436; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 436; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_v_rev_text = ((PyObject*)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":437 - * else: - * rev_text = list(text) - * rev_text.reverse() # <<<<<<<<<<<<<< - * for line in rev_text: - * is_continuation = False - */ - if (unlikely(((PyObject *)__pyx_v_rev_text) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "reverse"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyList_Reverse(__pyx_v_rev_text); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":438 - * rev_text = list(text) - * rev_text.reverse() - * for line in rev_text: # <<<<<<<<<<<<<< - * is_continuation = False - * if type(line) == Simple_line: - */ - if (unlikely(((PyObject *)__pyx_v_rev_text) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 438; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = ((PyObject *)__pyx_v_rev_text); __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - for (;;) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":439 - * rev_text.reverse() - * for line in rev_text: - * is_continuation = False # <<<<<<<<<<<<<< - * if type(line) == Simple_line: - * if len(line.text) >= 6: - */ - __pyx_v_is_continuation = 0; - - /* "preprocessed_text.py":440 - * for line in rev_text: - * is_continuation = False - * if type(line) == Simple_line: # <<<<<<<<<<<<<< - * if len(line.text) >= 6: - * if line.text[5] != ' ': - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":441 - * is_continuation = False - * if type(line) == Simple_line: - * if len(line.text) >= 6: # <<<<<<<<<<<<<< - * if line.text[5] != ' ': - * is_continuation = True - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_9 = PyObject_Length(__pyx_t_7); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 441; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = (__pyx_t_9 >= 6); - if (__pyx_t_3) { - - /* "preprocessed_text.py":442 - * if type(line) == Simple_line: - * if len(line.text) >= 6: - * if line.text[5] != ' ': # <<<<<<<<<<<<<< - * is_continuation = True - * if is_continuation: - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_7, 5, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_2, ((PyObject *)__pyx_kp_s_7), Py_NE); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":443 - * if len(line.text) >= 6: - * if line.text[5] != ' ': - * is_continuation = True # <<<<<<<<<<<<<< - * if is_continuation: - * buffer = "&\n%s %s %s"%(line.text[:5],line.text[6:],buffer) - */ - __pyx_v_is_continuation = 1; - goto __pyx_L16; - } - __pyx_L16:; - goto __pyx_L15; - } - __pyx_L15:; - goto __pyx_L14; - } - __pyx_L14:; - - /* "preprocessed_text.py":444 - * if line.text[5] != ' ': - * is_continuation = True - * if is_continuation: # <<<<<<<<<<<<<< - * buffer = "&\n%s %s %s"%(line.text[:5],line.text[6:],buffer) - * else: - */ - if (__pyx_v_is_continuation) { - - /* "preprocessed_text.py":445 - * is_continuation = True - * if is_continuation: - * buffer = "&\n%s %s %s"%(line.text[:5],line.text[6:],buffer) # <<<<<<<<<<<<<< - * else: - * line.text = line.text+buffer - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = __Pyx_PySequence_GetSlice(__pyx_t_2, 0, 5); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PySequence_GetSlice(__pyx_t_2, 6, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_7 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_78), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 445; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L17; - } - /*else*/ { - - /* "preprocessed_text.py":447 - * buffer = "&\n%s %s %s"%(line.text[:5],line.text[6:],buffer) - * else: - * line.text = line.text+buffer # <<<<<<<<<<<<<< - * result.insert(0,line) - * buffer = "" - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = PyNumber_Add(__pyx_t_6, __pyx_v_buffer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":448 - * else: - * line.text = line.text+buffer - * result.insert(0,line) # <<<<<<<<<<<<<< - * buffer = "" - * return result - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "insert"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_8 = PyList_Insert(__pyx_v_result, 0, __pyx_v_line); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":449 - * line.text = line.text+buffer - * result.insert(0,line) - * buffer = "" # <<<<<<<<<<<<<< - * return result - * - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = ((PyObject *)__pyx_kp_s_33); - } - __pyx_L17:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __pyx_L6:; - - /* "preprocessed_text.py":450 - * result.insert(0,line) - * buffer = "" - * return result # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.remove_continuation", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_number); - __Pyx_XDECREF(__pyx_v_t); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_newline); - __Pyx_XDECREF(__pyx_v_rev_text); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":457 - * '''Processes simple statements''' - * - * def process_irp_rw(line,rw,t): # <<<<<<<<<<<<<< - * assert type(line) == t - * buffer = line.text.split() - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_process_irp_rw(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_process_irp_rw = {__Pyx_NAMESTR("process_irp_rw"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_process_irp_rw, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_process_irp_rw(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_line = 0; - PyObject *__pyx_v_rw = 0; - PyObject *__pyx_v_t = 0; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_dummy = NULL; - PyObject *__pyx_v_variable = NULL; - PyObject *__pyx_v_num = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - Py_ssize_t __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__line,&__pyx_n_s__rw,&__pyx_n_s__t,0}; - __Pyx_RefNannySetupContext("process_irp_rw"); - __pyx_self = __pyx_self; - { - PyObject* values[3] = {0,0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__rw); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("process_irp_rw", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - case 2: - values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__t); - if (likely(values[2])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("process_irp_rw", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "process_irp_rw") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 3) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - values[2] = PyTuple_GET_ITEM(__pyx_args, 2); - } - __pyx_v_line = values[0]; - __pyx_v_rw = values[1]; - __pyx_v_t = values[2]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_irp_rw", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_irp_rw", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":458 - * - * def process_irp_rw(line,rw,t): - * assert type(line) == t # <<<<<<<<<<<<<< - * buffer = line.text.split() - * if len(buffer) == 2: - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_v_t, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":459 - * def process_irp_rw(line,rw,t): - * assert type(line) == t - * buffer = line.text.split() # <<<<<<<<<<<<<< - * if len(buffer) == 2: - * dummy, variable = buffer - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__split); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":460 - * assert type(line) == t - * buffer = line.text.split() - * if len(buffer) == 2: # <<<<<<<<<<<<<< - * dummy, variable = buffer - * num = "0" - */ - __pyx_t_4 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = (__pyx_t_4 == 2); - if (__pyx_t_2) { - - /* "preprocessed_text.py":461 - * buffer = line.text.split() - * if len(buffer) == 2: - * dummy, variable = buffer # <<<<<<<<<<<<<< - * num = "0" - * elif len(buffer) == 3: - */ - if ((likely(PyTuple_CheckExact(__pyx_v_buffer))) || (PyList_CheckExact(__pyx_v_buffer))) { - PyObject* sequence = __pyx_v_buffer; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_1 = PyList_GET_ITEM(sequence, 0); - __pyx_t_3 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_3); - } else { - Py_ssize_t index = -1; - __pyx_t_5 = PyObject_GetIter(__pyx_v_buffer); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext; - index = 0; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_1); - index = 1; __pyx_t_3 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_3)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 461; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __pyx_v_dummy = __pyx_t_1; - __pyx_t_1 = 0; - __pyx_v_variable = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":462 - * if len(buffer) == 2: - * dummy, variable = buffer - * num = "0" # <<<<<<<<<<<<<< - * elif len(buffer) == 3: - * dummy, variable, num = buffer - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s__0)); - __pyx_v_num = ((PyObject *)__pyx_kp_s__0); - goto __pyx_L6; - } - - /* "preprocessed_text.py":463 - * dummy, variable = buffer - * num = "0" - * elif len(buffer) == 3: # <<<<<<<<<<<<<< - * dummy, variable, num = buffer - * else: - */ - __pyx_t_4 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 463; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_2 = (__pyx_t_4 == 3); - if (__pyx_t_2) { - - /* "preprocessed_text.py":464 - * num = "0" - * elif len(buffer) == 3: - * dummy, variable, num = buffer # <<<<<<<<<<<<<< - * else: - * error.fail(line,"Error in IRP_%s statement"%(rw,)) - */ - if ((likely(PyTuple_CheckExact(__pyx_v_buffer))) || (PyList_CheckExact(__pyx_v_buffer))) { - PyObject* sequence = __pyx_v_buffer; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 3)) { - if (PyTuple_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1); - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 2); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 3)) { - if (PyList_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_3 = PyList_GET_ITEM(sequence, 0); - __pyx_t_1 = PyList_GET_ITEM(sequence, 1); - __pyx_t_5 = PyList_GET_ITEM(sequence, 2); - } - __Pyx_INCREF(__pyx_t_3); - __Pyx_INCREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_5); - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_v_buffer); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_3 = __pyx_t_6(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L9_unpacking_failed; - __Pyx_GOTREF(__pyx_t_3); - index = 1; __pyx_t_1 = __pyx_t_6(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed; - __Pyx_GOTREF(__pyx_t_1); - index = 2; __pyx_t_5 = __pyx_t_6(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L9_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_7), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L10_unpacking_done; - __pyx_L9_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 464; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L10_unpacking_done:; - } - __pyx_v_dummy = __pyx_t_3; - __pyx_t_3 = 0; - __pyx_v_variable = __pyx_t_1; - __pyx_t_1 = 0; - __pyx_v_num = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L6; - } - /*else*/ { - - /* "preprocessed_text.py":466 - * dummy, variable, num = buffer - * else: - * error.fail(line,"Error in IRP_%s statement"%(rw,)) # <<<<<<<<<<<<<< - * variable = variable.lower() - * i = line.i - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_rw); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_rw); - __Pyx_GIVEREF(__pyx_v_rw); - __pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_79), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_t_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_3)); - __pyx_t_3 = 0; - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_L6:; - if (unlikely(!__pyx_v_variable)) { __Pyx_RaiseUnboundLocalError("variable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_3 = PyObject_GetAttr(__pyx_v_variable, __pyx_n_s__lower); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":467 - * else: - * error.fail(line,"Error in IRP_%s statement"%(rw,)) - * variable = variable.lower() # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_v_variable); - __pyx_v_variable = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":468 - * error.fail(line,"Error in IRP_%s statement"%(rw,)) - * variable = variable.lower() - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * txt = line.text.lstrip() - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_i = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":469 - * variable = variable.lower() - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * txt = line.text.lstrip() - * result = [ - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 469; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_f = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":470 - * i = line.i - * f = line.filename - * txt = line.text.lstrip() # <<<<<<<<<<<<<< - * result = [ - * Empty_line(i,"!",f), - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__lstrip); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_v_txt = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":472 - * txt = line.text.lstrip() - * result = [ - * Empty_line(i,"!",f), # <<<<<<<<<<<<<< - * t(i,"! >>> %s"%(txt,),variable ), - * Provide_all(i," call %ser_%s('%s')"%(rw,variable,num),f), - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_1 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "preprocessed_text.py":473 - * result = [ - * Empty_line(i,"!",f), - * t(i,"! >>> %s"%(txt,),variable ), # <<<<<<<<<<<<<< - * Provide_all(i," call %ser_%s('%s')"%(rw,variable,num),f), - * Empty_line(i,"! >>> END %s "%(txt,),f ), - */ - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_80), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_variable); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_variable); - __Pyx_GIVEREF(__pyx_v_variable); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_v_t, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "preprocessed_text.py":474 - * Empty_line(i,"!",f), - * t(i,"! >>> %s"%(txt,),variable ), - * Provide_all(i," call %ser_%s('%s')"%(rw,variable,num),f), # <<<<<<<<<<<<<< - * Empty_line(i,"! >>> END %s "%(txt,),f ), - * Empty_line(line.i,"!",f), - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide_all); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - if (unlikely(!__pyx_v_num)) { __Pyx_RaiseUnboundLocalError("num"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_rw); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_rw); - __Pyx_GIVEREF(__pyx_v_rw); - __Pyx_INCREF(__pyx_v_variable); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_variable); - __Pyx_GIVEREF(__pyx_v_variable); - __Pyx_INCREF(__pyx_v_num); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_num); - __Pyx_GIVEREF(__pyx_v_num); - __pyx_t_8 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_81), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 474; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - - /* "preprocessed_text.py":475 - * t(i,"! >>> %s"%(txt,),variable ), - * Provide_all(i," call %ser_%s('%s')"%(rw,variable,num),f), - * Empty_line(i,"! >>> END %s "%(txt,),f ), # <<<<<<<<<<<<<< - * Empty_line(line.i,"!",f), - * ] - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_82), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - - /* "preprocessed_text.py":476 - * Provide_all(i," call %ser_%s('%s')"%(rw,variable,num),f), - * Empty_line(i,"! >>> END %s "%(txt,),f ), - * Empty_line(line.i,"!",f), # <<<<<<<<<<<<<< - * ] - * return result - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_t_10, 1, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __pyx_t_10 = PyList_New(5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 471; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyList_SET_ITEM(__pyx_t_10, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyList_SET_ITEM(__pyx_t_10, 2, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyList_SET_ITEM(__pyx_t_10, 3, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - PyList_SET_ITEM(__pyx_t_10, 4, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_1 = 0; - __pyx_t_5 = 0; - __pyx_t_8 = 0; - __pyx_t_9 = 0; - __pyx_t_7 = 0; - __pyx_v_result = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":478 - * Empty_line(line.i,"!",f), - * ] - * return result # <<<<<<<<<<<<<< - * - * def process_irp_read (line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_irp_rw", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_dummy); - __Pyx_XDECREF(__pyx_v_variable); - __Pyx_XDECREF(__pyx_v_num); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":480 - * return result - * - * def process_irp_read (line): # <<<<<<<<<<<<<< - * assert type(line) == Irp_read - * return process_irp_rw(line,'read' ,Irp_read ) - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_1process_irp_read(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_1process_irp_read = {__Pyx_NAMESTR("process_irp_read"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_1process_irp_read, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_1process_irp_read(PyObject *__pyx_self, PyObject *__pyx_v_line) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_irp_read"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":481 - * - * def process_irp_read (line): - * assert type(line) == Irp_read # <<<<<<<<<<<<<< - * return process_irp_rw(line,'read' ,Irp_read ) - * - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":482 - * def process_irp_read (line): - * assert type(line) == Irp_read - * return process_irp_rw(line,'read' ,Irp_read ) # <<<<<<<<<<<<<< - * - * def process_irp_write(line): - */ - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_process_irp_rw)) { __Pyx_RaiseClosureNameError("process_irp_rw"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__read)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__read)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__read)); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_cur_scope->__pyx_v_process_irp_rw, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_irp_read", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":484 - * return process_irp_rw(line,'read' ,Irp_read ) - * - * def process_irp_write(line): # <<<<<<<<<<<<<< - * assert type(line) == Irp_write - * return process_irp_rw(line,'writ' ,Irp_write) - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_2process_irp_write(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_2process_irp_write = {__Pyx_NAMESTR("process_irp_write"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_2process_irp_write, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_2process_irp_write(PyObject *__pyx_self, PyObject *__pyx_v_line) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_outer_scope; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_irp_write"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":485 - * - * def process_irp_write(line): - * assert type(line) == Irp_write # <<<<<<<<<<<<<< - * return process_irp_rw(line,'writ' ,Irp_write) - * - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 485; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":486 - * def process_irp_write(line): - * assert type(line) == Irp_write - * return process_irp_rw(line,'writ' ,Irp_write) # <<<<<<<<<<<<<< - * - * def process_return(line): - */ - __Pyx_XDECREF(__pyx_r); - if (unlikely(!__pyx_cur_scope->__pyx_v_process_irp_rw)) { __Pyx_RaiseClosureNameError("process_irp_rw"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_n_s__writ)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__writ)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__writ)); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_cur_scope->__pyx_v_process_irp_rw, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 486; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_irp_write", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":488 - * return process_irp_rw(line,'writ' ,Irp_write) - * - * def process_return(line): # <<<<<<<<<<<<<< - * assert type(line) == Return - * if command_line.do_assert or command_line.do_debug: - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_3process_return(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_3process_return = {__Pyx_NAMESTR("process_return"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_3process_return, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_3process_return(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_newline = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_return"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":489 - * - * def process_return(line): - * assert type(line) == Return # <<<<<<<<<<<<<< - * if command_line.do_assert or command_line.do_debug: - * newline = Simple_line(line.i," call irp_leave(irp_here)",line.filename) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Return); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":490 - * def process_return(line): - * assert type(line) == Return - * if command_line.do_assert or command_line.do_debug: # <<<<<<<<<<<<<< - * newline = Simple_line(line.i," call irp_leave(irp_here)",line.filename) - * result = [newline, line] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_3) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 490; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = __pyx_t_4; - } else { - __pyx_t_5 = __pyx_t_3; - } - if (__pyx_t_5) { - - /* "preprocessed_text.py":491 - * assert type(line) == Return - * if command_line.do_assert or command_line.do_debug: - * newline = Simple_line(line.i," call irp_leave(irp_here)",line.filename) # <<<<<<<<<<<<<< - * result = [newline, line] - * else: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_83)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_83)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_83)); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_1 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_v_newline = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":492 - * if command_line.do_assert or command_line.do_debug: - * newline = Simple_line(line.i," call irp_leave(irp_here)",line.filename) - * result = [newline, line] # <<<<<<<<<<<<<< - * else: - * result = [ line ] - */ - __pyx_t_6 = PyList_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 492; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_newline); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_v_newline); - __Pyx_GIVEREF(__pyx_v_newline); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_6, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L5; - } - /*else*/ { - - /* "preprocessed_text.py":494 - * result = [newline, line] - * else: - * result = [ line ] # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 494; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - } - __pyx_L5:; - - /* "preprocessed_text.py":495 - * else: - * result = [ line ] - * return result # <<<<<<<<<<<<<< - * - * def debug_conditions(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_return", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_newline); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":497 - * return result - * - * def debug_conditions(line): # <<<<<<<<<<<<<< - * '''Find condition in assert statement for debug''' - * assert type(line) == Assert - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_4debug_conditions(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static char __pyx_doc_17preprocessed_text_21irp_simple_statements_4debug_conditions[] = "Find condition in assert statement for debug"; -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_4debug_conditions = {__Pyx_NAMESTR("debug_conditions"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_4debug_conditions, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_21irp_simple_statements_4debug_conditions)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_4debug_conditions(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_match = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_matches = NULL; - PyObject *__pyx_v_m = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - int __pyx_t_6; - int __pyx_t_7; - int __pyx_t_8; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - int __pyx_t_12; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("debug_conditions"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":499 - * def debug_conditions(line): - * '''Find condition in assert statement for debug''' - * assert type(line) == Assert # <<<<<<<<<<<<<< - * match = re_test.search(line.text) - * result = [] - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":500 - * '''Find condition in assert statement for debug''' - * assert type(line) == Assert - * match = re_test.search(line.text) # <<<<<<<<<<<<<< - * result = [] - * if match is not None: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__re_test); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__search); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 500; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_v_match = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":501 - * assert type(line) == Assert - * match = re_test.search(line.text) - * result = [] # <<<<<<<<<<<<<< - * if match is not None: - * matches = [ match.group(1).strip(), match.group(3).strip() ] - */ - __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":502 - * match = re_test.search(line.text) - * result = [] - * if match is not None: # <<<<<<<<<<<<<< - * matches = [ match.group(1).strip(), match.group(3).strip() ] - * for m in matches: - */ - __pyx_t_3 = (__pyx_v_match != Py_None); - if (__pyx_t_3) { - - /* "preprocessed_text.py":503 - * result = [] - * if match is not None: - * matches = [ match.group(1).strip(), match.group(3).strip() ] # <<<<<<<<<<<<<< - * for m in matches: - * if not(m.isdigit() or ("'" in m) or (m == "")): - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_84), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__strip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_85), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__strip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyList_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_4 = 0; - __pyx_t_1 = 0; - __pyx_v_matches = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":504 - * if match is not None: - * matches = [ match.group(1).strip(), match.group(3).strip() ] - * for m in matches: # <<<<<<<<<<<<<< - * if not(m.isdigit() or ("'" in m) or (m == "")): - * result.append ( Simple_line (line.i, " print *, '%s = ', %s"%(m,m), line.filename) ) - */ - if (unlikely(((PyObject *)__pyx_v_matches) == Py_None)) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 504; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = ((PyObject *)__pyx_v_matches); __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0; - for (;;) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":505 - * matches = [ match.group(1).strip(), match.group(3).strip() ] - * for m in matches: - * if not(m.isdigit() or ("'" in m) or (m == "")): # <<<<<<<<<<<<<< - * result.append ( Simple_line (line.i, " print *, '%s = ', %s"%(m,m), line.filename) ) - * result.append ( Simple_line (line.i, " print *, ''", line.filename) ) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__isdigit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (!__pyx_t_3) { - __pyx_t_6 = ((PySequence_Contains(__pyx_v_m, ((PyObject *)__pyx_kp_s_86)))); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (!__pyx_t_6) { - __pyx_t_7 = __Pyx_PyString_Equals(__pyx_v_m, ((PyObject *)__pyx_kp_s_33), Py_EQ); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_8 = __pyx_t_7; - } else { - __pyx_t_8 = __pyx_t_6; - } - __pyx_t_6 = __pyx_t_8; - } else { - __pyx_t_6 = __pyx_t_3; - } - __pyx_t_3 = (!__pyx_t_6); - if (__pyx_t_3) { - - /* "preprocessed_text.py":506 - * for m in matches: - * if not(m.isdigit() or ("'" in m) or (m == "")): - * result.append ( Simple_line (line.i, " print *, '%s = ', %s"%(m,m), line.filename) ) # <<<<<<<<<<<<<< - * result.append ( Simple_line (line.i, " print *, ''", line.filename) ) - * return result - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_m); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_m); - __Pyx_GIVEREF(__pyx_v_m); - __Pyx_INCREF(__pyx_v_m); - PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_v_m); - __Pyx_GIVEREF(__pyx_v_m); - __pyx_t_10 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_87), ((PyObject *)__pyx_t_9)); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_9 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_11, 1, ((PyObject *)__pyx_t_10)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_10)); - PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __pyx_t_1 = 0; - __pyx_t_10 = 0; - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_11), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_11)); __pyx_t_11 = 0; - __pyx_t_12 = PyList_Append(__pyx_v_result, __pyx_t_9); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L8; - } - __pyx_L8:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":507 - * if not(m.isdigit() or ("'" in m) or (m == "")): - * result.append ( Simple_line (line.i, " print *, '%s = ', %s"%(m,m), line.filename) ) - * result.append ( Simple_line (line.i, " print *, ''", line.filename) ) # <<<<<<<<<<<<<< - * return result - * - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_9 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_11 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_88)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_88)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_88)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_11); - __Pyx_GIVEREF(__pyx_t_11); - __pyx_t_9 = 0; - __pyx_t_11 = 0; - __pyx_t_11 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_12 = PyList_Append(__pyx_v_result, __pyx_t_11); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 507; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":508 - * result.append ( Simple_line (line.i, " print *, '%s = ', %s"%(m,m), line.filename) ) - * result.append ( Simple_line (line.i, " print *, ''", line.filename) ) - * return result # <<<<<<<<<<<<<< - * - * def process_assert(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.debug_conditions", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_match); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_matches); - __Pyx_XDECREF(__pyx_v_m); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":510 - * return result - * - * def process_assert(line): # <<<<<<<<<<<<<< - * assert type(line) == Assert - * if command_line.do_assert: - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_5process_assert(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_5process_assert = {__Pyx_NAMESTR("process_assert"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_5process_assert, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_5process_assert(PyObject *__pyx_self, PyObject *__pyx_v_line) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_outer_scope; - PyObject *__pyx_v_condition = NULL; - PyObject *__pyx_v_condition_str = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_assert"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":511 - * - * def process_assert(line): - * assert type(line) == Assert # <<<<<<<<<<<<<< - * if command_line.do_assert: - * condition = "(%s"%(line.text.split('(',1)[1]) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 511; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":512 - * def process_assert(line): - * assert type(line) == Assert - * if command_line.do_assert: # <<<<<<<<<<<<<< - * condition = "(%s"%(line.text.split('(',1)[1]) - * if condition == "": - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 512; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":513 - * assert type(line) == Assert - * if command_line.do_assert: - * condition = "(%s"%(line.text.split('(',1)[1]) # <<<<<<<<<<<<<< - * if condition == "": - * error.fail(line,"Error in Assert statement") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__split); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_91), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_89), __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_condition = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":514 - * if command_line.do_assert: - * condition = "(%s"%(line.text.split('(',1)[1]) - * if condition == "": # <<<<<<<<<<<<<< - * error.fail(line,"Error in Assert statement") - * condition_str = condition.replace("'","''") - */ - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_v_condition, ((PyObject *)__pyx_kp_s_33), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 514; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_3) { - - /* "preprocessed_text.py":515 - * condition = "(%s"%(line.text.split('(',1)[1]) - * if condition == "": - * error.fail(line,"Error in Assert statement") # <<<<<<<<<<<<<< - * condition_str = condition.replace("'","''") - * i = line.i - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__fail); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_92)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_92)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_92)); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 515; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - /* "preprocessed_text.py":516 - * if condition == "": - * error.fail(line,"Error in Assert statement") - * condition_str = condition.replace("'","''") # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_condition, __pyx_n_s__replace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_94), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_v_condition_str = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":517 - * error.fail(line,"Error in Assert statement") - * condition_str = condition.replace("'","''") - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * txt = line.text.strip() - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 517; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_i = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":518 - * condition_str = condition.replace("'","''") - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * txt = line.text.strip() - * result = [ - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 518; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_f = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":519 - * i = line.i - * f = line.filename - * txt = line.text.strip() # <<<<<<<<<<<<<< - * result = [ - * Empty_line(i, "!", f), - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__strip); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":521 - * txt = line.text.strip() - * result = [ - * Empty_line(i, "!", f), # <<<<<<<<<<<<<< - * Empty_line(i, "! >>> %s"%(txt,), f), - * If (i, " if (.not.%s) then"%(condition,), f), - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 521; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 521; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 521; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "preprocessed_text.py":522 - * result = [ - * Empty_line(i, "!", f), - * Empty_line(i, "! >>> %s"%(txt,), f), # <<<<<<<<<<<<<< - * If (i, " if (.not.%s) then"%(condition,), f), - * Simple_line(i, " call irp_trace", f), - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_80), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "preprocessed_text.py":523 - * Empty_line(i, "!", f), - * Empty_line(i, "! >>> %s"%(txt,), f), - * If (i, " if (.not.%s) then"%(condition,), f), # <<<<<<<<<<<<<< - * Simple_line(i, " call irp_trace", f), - * Simple_line(i, " print *, irp_here//': Assert failed:'", f), - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_condition); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_condition); - __Pyx_GIVEREF(__pyx_v_condition); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_95), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 523; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "preprocessed_text.py":524 - * Empty_line(i, "! >>> %s"%(txt,), f), - * If (i, " if (.not.%s) then"%(condition,), f), - * Simple_line(i, " call irp_trace", f), # <<<<<<<<<<<<<< - * Simple_line(i, " print *, irp_here//': Assert failed:'", f), - * Simple_line(i, " print *, ' file: %s, line: %d'"%(f,i), f), - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_96)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_96)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_96)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 524; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "preprocessed_text.py":525 - * If (i, " if (.not.%s) then"%(condition,), f), - * Simple_line(i, " call irp_trace", f), - * Simple_line(i, " print *, irp_here//': Assert failed:'", f), # <<<<<<<<<<<<<< - * Simple_line(i, " print *, ' file: %s, line: %d'"%(f,i), f), - * Simple_line(i, " print *, '%s'"%(condition_str,), f), - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_97)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_97)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_97)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_8 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 525; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "preprocessed_text.py":526 - * Simple_line(i, " call irp_trace", f), - * Simple_line(i, " print *, irp_here//': Assert failed:'", f), - * Simple_line(i, " print *, ' file: %s, line: %d'"%(f,i), f), # <<<<<<<<<<<<<< - * Simple_line(i, " print *, '%s'"%(condition_str,), f), - * ] + debug_conditions(line) + [ - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_98), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_9 = 0; - __pyx_t_9 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "preprocessed_text.py":527 - * Simple_line(i, " print *, irp_here//': Assert failed:'", f), - * Simple_line(i, " print *, ' file: %s, line: %d'"%(f,i), f), - * Simple_line(i, " print *, '%s'"%(condition_str,), f), # <<<<<<<<<<<<<< - * ] + debug_conditions(line) + [ - * Simple_line(i, " stop 1", f), - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_condition_str); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_condition_str); - __Pyx_GIVEREF(__pyx_v_condition_str); - __pyx_t_10 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_99), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_t_10)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_10)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_10 = 0; - __pyx_t_10 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 527; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyList_New(7); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyList_SET_ITEM(__pyx_t_4, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyList_SET_ITEM(__pyx_t_4, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyList_SET_ITEM(__pyx_t_4, 3, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyList_SET_ITEM(__pyx_t_4, 4, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyList_SET_ITEM(__pyx_t_4, 5, __pyx_t_9); - __Pyx_GIVEREF(__pyx_t_9); - PyList_SET_ITEM(__pyx_t_4, 6, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_2 = 0; - __pyx_t_5 = 0; - __pyx_t_6 = 0; - __pyx_t_7 = 0; - __pyx_t_8 = 0; - __pyx_t_9 = 0; - __pyx_t_10 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_debug_conditions)) { __Pyx_RaiseClosureNameError("debug_conditions"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":528 - * Simple_line(i, " print *, ' file: %s, line: %d'"%(f,i), f), - * Simple_line(i, " print *, '%s'"%(condition_str,), f), - * ] + debug_conditions(line) + [ # <<<<<<<<<<<<<< - * Simple_line(i, " stop 1", f), - * Endif (i, " endif", f), - */ - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_9 = PyObject_Call(__pyx_cur_scope->__pyx_v_debug_conditions, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __pyx_t_10 = PyNumber_Add(((PyObject *)__pyx_t_4), __pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "preprocessed_text.py":529 - * Simple_line(i, " print *, '%s'"%(condition_str,), f), - * ] + debug_conditions(line) + [ - * Simple_line(i, " stop 1", f), # <<<<<<<<<<<<<< - * Endif (i, " endif", f), - * Empty_line(i, "! <<< END %s"%(txt,), f), - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_100)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_100)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_100)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_8 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 529; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "preprocessed_text.py":530 - * ] + debug_conditions(line) + [ - * Simple_line(i, " stop 1", f), - * Endif (i, " endif", f), # <<<<<<<<<<<<<< - * Empty_line(i, "! <<< END %s"%(txt,), f), - * Empty_line(i, "!", f) - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyTuple_New(3); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_101)); - PyTuple_SET_ITEM(__pyx_t_9, 1, ((PyObject *)__pyx_kp_s_101)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_101)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_9, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - - /* "preprocessed_text.py":531 - * Simple_line(i, " stop 1", f), - * Endif (i, " endif", f), - * Empty_line(i, "! <<< END %s"%(txt,), f), # <<<<<<<<<<<<<< - * Empty_line(i, "!", f) - * ] - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_102), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 531; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "preprocessed_text.py":532 - * Endif (i, " endif", f), - * Empty_line(i, "! <<< END %s"%(txt,), f), - * Empty_line(i, "!", f) # <<<<<<<<<<<<<< - * ] - * else: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyTuple_New(3); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_t_9, 1, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_9, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 532; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_t_9 = PyList_New(4); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyList_SET_ITEM(__pyx_t_9, 0, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - PyList_SET_ITEM(__pyx_t_9, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - PyList_SET_ITEM(__pyx_t_9, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - PyList_SET_ITEM(__pyx_t_9, 3, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_8 = 0; - __pyx_t_7 = 0; - __pyx_t_6 = 0; - __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_Add(__pyx_t_10, ((PyObject *)__pyx_t_9)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __pyx_v_result = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L5; - } - /*else*/ { - - /* "preprocessed_text.py":535 - * ] - * else: - * result = [] # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 535; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __pyx_v_result = ((PyObject *)__pyx_t_5); - __pyx_t_5 = 0; - } - __pyx_L5:; - - /* "preprocessed_text.py":536 - * else: - * result = [] - * return result # <<<<<<<<<<<<<< - * - * def process_end(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_assert", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_condition); - __Pyx_XDECREF(__pyx_v_condition_str); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":538 - * return result - * - * def process_end(line): # <<<<<<<<<<<<<< - * '''Set irp_here variable in provider block''' - * line.text = "end" - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_6process_end(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static char __pyx_doc_17preprocessed_text_21irp_simple_statements_6process_end[] = "Set irp_here variable in provider block"; -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_6process_end = {__Pyx_NAMESTR("process_end"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_6process_end, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_21irp_simple_statements_6process_end)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_6process_end(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_end"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":540 - * def process_end(line): - * '''Set irp_here variable in provider block''' - * line.text = "end" # <<<<<<<<<<<<<< - * if command_line.do_assert or command_line.do_debug: - * i = line.i - */ - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, ((PyObject *)__pyx_n_s__end)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":541 - * '''Set irp_here variable in provider block''' - * line.text = "end" - * if command_line.do_assert or command_line.do_debug: # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (!__pyx_t_3) { - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 541; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __pyx_t_4; - } else { - __pyx_t_5 = __pyx_t_3; - } - if (__pyx_t_5) { - - /* "preprocessed_text.py":542 - * line.text = "end" - * if command_line.do_assert or command_line.do_debug: - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * result = [ - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_i = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":543 - * if command_line.do_assert or command_line.do_debug: - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * result = [ - * Simple_line(i," call irp_leave(irp_here)", f), - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_f = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":545 - * f = line.filename - * result = [ - * Simple_line(i," call irp_leave(irp_here)", f), # <<<<<<<<<<<<<< - * line - * ] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_83)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_83)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_83)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 545; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "preprocessed_text.py":547 - * Simple_line(i," call irp_leave(irp_here)", f), - * line - * ] # <<<<<<<<<<<<<< - * else: - * result = [ line ] - */ - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 1, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_6 = 0; - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L5; - } - /*else*/ { - - /* "preprocessed_text.py":549 - * ] - * else: - * result = [ line ] # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 549; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - } - __pyx_L5:; - - /* "preprocessed_text.py":550 - * else: - * result = [ line ] - * return result # <<<<<<<<<<<<<< - * - * def process_begin_provider(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_end", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":552 - * return result - * - * def process_begin_provider(line): # <<<<<<<<<<<<<< - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_7process_begin_provider(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_7process_begin_provider = {__Pyx_NAMESTR("process_begin_provider"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_7process_begin_provider, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_7process_begin_provider(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_varname = NULL; - Py_ssize_t __pyx_v_length; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - int __pyx_t_8; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_begin_provider"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":553 - * - * def process_begin_provider(line): - * assert type(line) == Begin_provider # <<<<<<<<<<<<<< - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 553; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":554 - * def process_begin_provider(line): - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") # <<<<<<<<<<<<<< - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_103), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":555 - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * if len(buffer) < 2: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 555; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_104), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 555; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":556 - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * if len(buffer) < 2: - * error.fail(line,"Error in Begin_provider statement") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_105), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":557 - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - * if len(buffer) < 2: # <<<<<<<<<<<<<< - * error.fail(line,"Error in Begin_provider statement") - * varname = buffer[1].strip() - */ - __pyx_t_4 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 557; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = (__pyx_t_4 < 2); - if (__pyx_t_3) { - - /* "preprocessed_text.py":558 - * buffer = buffer.split(',') - * if len(buffer) < 2: - * error.fail(line,"Error in Begin_provider statement") # <<<<<<<<<<<<<< - * varname = buffer[1].strip() - * length = len(varname) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_106)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_106)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_106)); - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":559 - * if len(buffer) < 2: - * error.fail(line,"Error in Begin_provider statement") - * varname = buffer[1].strip() # <<<<<<<<<<<<<< - * length = len(varname) - * i = line.i - */ - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__strip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 559; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_varname = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":560 - * error.fail(line,"Error in Begin_provider statement") - * varname = buffer[1].strip() - * length = len(varname) # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_4 = PyObject_Length(__pyx_v_varname); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_v_length = __pyx_t_4; - - /* "preprocessed_text.py":561 - * varname = buffer[1].strip() - * length = len(varname) - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * result = [ Begin_provider(i,line.text, (f,varname)), - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 561; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_i = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":562 - * length = len(varname) - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * result = [ Begin_provider(i,line.text, (f,varname)), - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,varname), f) ] - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_f = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":563 - * i = line.i - * f = line.filename - * result = [ Begin_provider(i,line.text, (f,varname)), # <<<<<<<<<<<<<< - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,varname), f) ] - * if command_line.do_assert or command_line.do_debug: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __Pyx_INCREF(__pyx_v_varname); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_varname); - __Pyx_GIVEREF(__pyx_v_varname); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - - /* "preprocessed_text.py":564 - * f = line.filename - * result = [ Begin_provider(i,line.text, (f,varname)), - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,varname), f) ] # <<<<<<<<<<<<<< - * if command_line.do_assert or command_line.do_debug: - * result += [ - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyInt_FromSsize_t(__pyx_v_length); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __Pyx_INCREF(__pyx_v_varname); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_varname); - __Pyx_GIVEREF(__pyx_v_varname); - __pyx_t_5 = 0; - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_107), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 564; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 563; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyList_SET_ITEM(__pyx_t_2, 1, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - __pyx_t_1 = 0; - __pyx_t_5 = 0; - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":565 - * result = [ Begin_provider(i,line.text, (f,varname)), - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,varname), f) ] - * if command_line.do_assert or command_line.do_debug: # <<<<<<<<<<<<<< - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (!__pyx_t_3) { - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 565; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_8 = __pyx_t_7; - } else { - __pyx_t_8 = __pyx_t_3; - } - if (__pyx_t_8) { - - /* "preprocessed_text.py":567 - * if command_line.do_assert or command_line.do_debug: - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), # <<<<<<<<<<<<<< - * ] - * return result - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 567; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 567; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_108)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_108)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_108)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 567; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_result), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - /* "preprocessed_text.py":569 - * Simple_line(i," call irp_enter(irp_here)", f), - * ] - * return result # <<<<<<<<<<<<<< - * - * def process_cont_provider(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_begin_provider", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_varname); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":571 - * return result - * - * def process_cont_provider(line): # <<<<<<<<<<<<<< - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_8process_cont_provider(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_8process_cont_provider = {__Pyx_NAMESTR("process_cont_provider"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_8process_cont_provider, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_8process_cont_provider(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_varname = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_cont_provider"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":572 - * - * def process_cont_provider(line): - * assert type(line) == Cont_provider # <<<<<<<<<<<<<< - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 572; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 572; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 572; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 572; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":573 - * def process_cont_provider(line): - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") # <<<<<<<<<<<<<< - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_109), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":574 - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * if len(buffer) < 2: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_110), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":575 - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * if len(buffer) < 2: - * error.fail(line,"Error in Cont_provider statement") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_111), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":576 - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - * if len(buffer) < 2: # <<<<<<<<<<<<<< - * error.fail(line,"Error in Cont_provider statement") - * varname = buffer[1].strip() - */ - __pyx_t_4 = PyObject_Length(__pyx_v_buffer); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_3 = (__pyx_t_4 < 2); - if (__pyx_t_3) { - - /* "preprocessed_text.py":577 - * buffer = buffer.split(',') - * if len(buffer) < 2: - * error.fail(line,"Error in Cont_provider statement") # <<<<<<<<<<<<<< - * varname = buffer[1].strip() - * i = line.i - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 577; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 577; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 577; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_112)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_112)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_112)); - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 577; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":578 - * if len(buffer) < 2: - * error.fail(line,"Error in Cont_provider statement") - * varname = buffer[1].strip() # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 578; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__strip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 578; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 578; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_varname = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":579 - * error.fail(line,"Error in Cont_provider statement") - * varname = buffer[1].strip() - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * return [ Cont_provider(i,line.text,(f,varname)) ] - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 579; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_i = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":580 - * varname = buffer[1].strip() - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * return [ Cont_provider(i,line.text,(f,varname)) ] - * - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 580; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_v_f = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":581 - * i = line.i - * f = line.filename - * return [ Cont_provider(i,line.text,(f,varname)) ] # <<<<<<<<<<<<<< - * - * def process_subroutine(line): - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __Pyx_INCREF(__pyx_v_varname); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_varname); - __Pyx_GIVEREF(__pyx_v_varname); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_6, 2, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_r = ((PyObject *)__pyx_t_6); - __pyx_t_6 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_cont_provider", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_varname); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":583 - * return [ Cont_provider(i,line.text,(f,varname)) ] - * - * def process_subroutine(line): # <<<<<<<<<<<<<< - * assert type(line) == Subroutine - * subname = find_subname(line) - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_9process_subroutine(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_9process_subroutine = {__Pyx_NAMESTR("process_subroutine"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_9process_subroutine, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_9process_subroutine(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_subname = NULL; - Py_ssize_t __pyx_v_length; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - int __pyx_t_6; - int __pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_subroutine"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":584 - * - * def process_subroutine(line): - * assert type(line) == Subroutine # <<<<<<<<<<<<<< - * subname = find_subname(line) - * length = len(subname) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":585 - * def process_subroutine(line): - * assert type(line) == Subroutine - * subname = find_subname(line) # <<<<<<<<<<<<<< - * length = len(subname) - * i = line.i - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_subname); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 585; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_subname = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":586 - * assert type(line) == Subroutine - * subname = find_subname(line) - * length = len(subname) # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_5 = PyObject_Length(__pyx_v_subname); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_v_length = __pyx_t_5; - - /* "preprocessed_text.py":587 - * subname = find_subname(line) - * length = len(subname) - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * result = [ line, - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_v_i = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":588 - * length = len(subname) - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_v_f = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":590 - * f = line.filename - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] # <<<<<<<<<<<<<< - * if command_line.do_assert or command_line.do_debug: - * result += [ - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_length); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_subname); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_subname); - __Pyx_GIVEREF(__pyx_v_subname); - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_107), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 590; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":591 - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] - * if command_line.do_assert or command_line.do_debug: # <<<<<<<<<<<<<< - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_3) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_7 = __pyx_t_6; - } else { - __pyx_t_7 = __pyx_t_3; - } - if (__pyx_t_7) { - - /* "preprocessed_text.py":593 - * if command_line.do_assert or command_line.do_debug: - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), # <<<<<<<<<<<<<< - * ] - * return result - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 593; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 593; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_108)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_108)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_108)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 593; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 592; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_result), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 592; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":595 - * Simple_line(i," call irp_enter(irp_here)", f), - * ] - * return result # <<<<<<<<<<<<<< - * - * def process_function(line): - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_subroutine", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_subname); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":597 - * return result - * - * def process_function(line): # <<<<<<<<<<<<<< - * assert type(line) == Function - * subname = find_subname(line) - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_10process_function(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_10process_function = {__Pyx_NAMESTR("process_function"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_10process_function, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_10process_function(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_v_subname = NULL; - Py_ssize_t __pyx_v_length; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - int __pyx_t_6; - int __pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_function"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":598 - * - * def process_function(line): - * assert type(line) == Function # <<<<<<<<<<<<<< - * subname = find_subname(line) - * length = len(subname) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 598; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 598; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 598; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 598; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":599 - * def process_function(line): - * assert type(line) == Function - * subname = find_subname(line) # <<<<<<<<<<<<<< - * length = len(subname) - * i = line.i - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__find_subname); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_subname = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":600 - * assert type(line) == Function - * subname = find_subname(line) - * length = len(subname) # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_5 = PyObject_Length(__pyx_v_subname); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_v_length = __pyx_t_5; - - /* "preprocessed_text.py":601 - * subname = find_subname(line) - * length = len(subname) - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * result = [ line, - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_v_i = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":602 - * length = len(subname) - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 602; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_v_f = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":604 - * f = line.filename - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] # <<<<<<<<<<<<<< - * if command_line.do_assert or command_line.do_debug: - * result += [ - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_length); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_subname); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_subname); - __Pyx_GIVEREF(__pyx_v_subname); - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_107), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 603; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":605 - * result = [ line, - * Declaration(i," character*(%d) :: irp_here = '%s'"%(length,subname), f) ] - * if command_line.do_assert or command_line.do_debug: # <<<<<<<<<<<<<< - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_3) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_7 = __pyx_t_6; - } else { - __pyx_t_7 = __pyx_t_3; - } - if (__pyx_t_7) { - - /* "preprocessed_text.py":607 - * if command_line.do_assert or command_line.do_debug: - * result += [ - * Simple_line(i," call irp_enter(irp_here)", f), # <<<<<<<<<<<<<< - * ] - * return result - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_108)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_108)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_108)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 606; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_result), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 606; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_result)); - __pyx_v_result = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":609 - * Simple_line(i," call irp_enter(irp_here)", f), - * ] - * return result # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_function", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_subname); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":612 - * - * - * def process_program(line): # <<<<<<<<<<<<<< - * assert type(line) == Program - * program_name = line.lower.split()[1] - */ - -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_11process_program(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_21irp_simple_statements_11process_program = {__Pyx_NAMESTR("process_program"), (PyCFunction)__pyx_pf_17preprocessed_text_21irp_simple_statements_11process_program, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_21irp_simple_statements_11process_program(PyObject *__pyx_self, PyObject *__pyx_v_line) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_outer_scope; - PyObject *__pyx_v_program_name = NULL; - PyObject *__pyx_v_temp = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_program"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":613 - * - * def process_program(line): - * assert type(line) == Program # <<<<<<<<<<<<<< - * program_name = line.lower.split()[1] - * temp = [ Program(0,"program irp_program",program_name) ] - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 613; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":614 - * def process_program(line): - * assert type(line) == Program - * program_name = line.lower.split()[1] # <<<<<<<<<<<<<< - * temp = [ Program(0,"program irp_program",program_name) ] - * if command_line.do_profile: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 614; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 614; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 614; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_2, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 614; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_program_name = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":615 - * assert type(line) == Program - * program_name = line.lower.split()[1] - * temp = [ Program(0,"program irp_program",program_name) ] # <<<<<<<<<<<<<< - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_init_timer()",line.filename) ] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 615; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 615; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_113)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_113)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_113)); - __Pyx_INCREF(__pyx_v_program_name); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_program_name); - __Pyx_GIVEREF(__pyx_v_program_name); - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 615; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 615; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":616 - * program_name = line.lower.split()[1] - * temp = [ Program(0,"program irp_program",program_name) ] - * if command_line.do_profile: # <<<<<<<<<<<<<< - * temp += [ Simple_line(0,"call irp_init_timer()",line.filename) ] - * if command_line.do_openmp: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 616; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 616; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 616; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":617 - * temp = [ Program(0,"program irp_program",program_name) ] - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_init_timer()",line.filename) ] # <<<<<<<<<<<<<< - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP PARALLEL",line.filename) ] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_114)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_114)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_114)); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 617; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "preprocessed_text.py":618 - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_init_timer()",line.filename) ] - * if command_line.do_openmp: # <<<<<<<<<<<<<< - * temp += [ Openmp(0,"!$OMP PARALLEL",line.filename) ] - * temp += [ Openmp(0,"!$OMP MASTER",line.filename) ] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":619 - * temp += [ Simple_line(0,"call irp_init_timer()",line.filename) ] - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP PARALLEL",line.filename) ] # <<<<<<<<<<<<<< - * temp += [ Openmp(0,"!$OMP MASTER",line.filename) ] - * temp += [ Call(0," call %s"%(program_name),line.filename) ] - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_115)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_115)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_115)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":620 - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP PARALLEL",line.filename) ] - * temp += [ Openmp(0,"!$OMP MASTER",line.filename) ] # <<<<<<<<<<<<<< - * temp += [ Call(0," call %s"%(program_name),line.filename) ] - * if command_line.do_openmp: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_116)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_116)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_116)); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 620; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - /* "preprocessed_text.py":621 - * temp += [ Openmp(0,"!$OMP PARALLEL",line.filename) ] - * temp += [ Openmp(0,"!$OMP MASTER",line.filename) ] - * temp += [ Call(0," call %s"%(program_name),line.filename) ] # <<<<<<<<<<<<<< - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP END MASTER",line.filename) ] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_117), __pyx_v_program_name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 621; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":622 - * temp += [ Openmp(0,"!$OMP MASTER",line.filename) ] - * temp += [ Call(0," call %s"%(program_name),line.filename) ] - * if command_line.do_openmp: # <<<<<<<<<<<<<< - * temp += [ Openmp(0,"!$OMP END MASTER",line.filename) ] - * temp += [ Openmp(0,"!$OMP END PARALLEL",line.filename) ] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":623 - * temp += [ Call(0," call %s"%(program_name),line.filename) ] - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP END MASTER",line.filename) ] # <<<<<<<<<<<<<< - * temp += [ Openmp(0,"!$OMP END PARALLEL",line.filename) ] - * if command_line.do_profile: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_118)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_118)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_118)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":624 - * if command_line.do_openmp: - * temp += [ Openmp(0,"!$OMP END MASTER",line.filename) ] - * temp += [ Openmp(0,"!$OMP END PARALLEL",line.filename) ] # <<<<<<<<<<<<<< - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_print_timer()",line.filename) ] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Openmp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_119)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_119)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_119)); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L7; - } - __pyx_L7:; - - /* "preprocessed_text.py":625 - * temp += [ Openmp(0,"!$OMP END MASTER",line.filename) ] - * temp += [ Openmp(0,"!$OMP END PARALLEL",line.filename) ] - * if command_line.do_profile: # <<<<<<<<<<<<<< - * temp += [ Simple_line(0,"call irp_print_timer()",line.filename) ] - * temp += [ Simple_line(0," call irp_finalize_%s()"%(irp_id),line.filename) ] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 625; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 625; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 625; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":626 - * temp += [ Openmp(0,"!$OMP END PARALLEL",line.filename) ] - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_print_timer()",line.filename) ] # <<<<<<<<<<<<<< - * temp += [ Simple_line(0," call irp_finalize_%s()"%(irp_id),line.filename) ] - * temp += [ End(0,"end program",line.filename) ] - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_120)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_120)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_120)); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "preprocessed_text.py":627 - * if command_line.do_profile: - * temp += [ Simple_line(0,"call irp_print_timer()",line.filename) ] - * temp += [ Simple_line(0," call irp_finalize_%s()"%(irp_id),line.filename) ] # <<<<<<<<<<<<<< - * temp += [ End(0,"end program",line.filename) ] - * result = temp + \ - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Simple_line); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irp_id); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_121), __pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_5 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":628 - * temp += [ Simple_line(0,"call irp_print_timer()",line.filename) ] - * temp += [ Simple_line(0," call irp_finalize_%s()"%(irp_id),line.filename) ] - * temp += [ End(0,"end program",line.filename) ] # <<<<<<<<<<<<<< - * result = temp + \ - * process_subroutine( Subroutine(line.i,"subroutine %s"%(program_name,),line.filename) ) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_122)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_kp_s_122)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_122)); - PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_InPlaceAdd(((PyObject *)__pyx_v_temp), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_v_temp)); - __pyx_v_temp = __pyx_t_1; - __pyx_t_1 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_process_subroutine)) { __Pyx_RaiseClosureNameError("process_subroutine"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":630 - * temp += [ End(0,"end program",line.filename) ] - * result = temp + \ - * process_subroutine( Subroutine(line.i,"subroutine %s"%(program_name,),line.filename) ) # <<<<<<<<<<<<<< - * return result - * - */ - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_program_name); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_program_name); - __Pyx_GIVEREF(__pyx_v_program_name); - __pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_123), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_t_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_4 = 0; - __pyx_t_5 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_cur_scope->__pyx_v_process_subroutine, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 630; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_Add(((PyObject *)__pyx_v_temp), __pyx_t_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 629; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":631 - * result = temp + \ - * process_subroutine( Subroutine(line.i,"subroutine %s"%(program_name,),line.filename) ) - * return result # <<<<<<<<<<<<<< - * - * d = { Irp_read : process_irp_read, - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements.process_program", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_program_name); - __Pyx_XDECREF(__pyx_v_temp); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":454 - * - * ###################################################################### - * def irp_simple_statements(text): # <<<<<<<<<<<<<< - * '''Processes simple statements''' - * - */ - -static PyObject *__pyx_pf_17preprocessed_text_8irp_simple_statements(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_8irp_simple_statements[] = "Processes simple statements"; -static PyMethodDef __pyx_mdef_17preprocessed_text_8irp_simple_statements = {__Pyx_NAMESTR("irp_simple_statements"), (PyCFunction)__pyx_pf_17preprocessed_text_8irp_simple_statements, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_8irp_simple_statements)}; -static PyObject *__pyx_pf_17preprocessed_text_8irp_simple_statements(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *__pyx_cur_scope; - PyObject *__pyx_v_process_irp_read = 0; - PyObject *__pyx_v_process_irp_write = 0; - PyObject *__pyx_v_process_return = 0; - PyObject *__pyx_v_process_assert = 0; - PyObject *__pyx_v_process_end = 0; - PyObject *__pyx_v_process_begin_provider = 0; - PyObject *__pyx_v_process_cont_provider = 0; - PyObject *__pyx_v_process_function = 0; - PyObject *__pyx_v_process_program = 0; - PyObject *__pyx_v_d = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_t = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - Py_ssize_t __pyx_t_5; - Py_ssize_t __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("irp_simple_statements"); - __pyx_cur_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)__pyx_ptype_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements->tp_new(__pyx_ptype_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":457 - * '''Processes simple statements''' - * - * def process_irp_rw(line,rw,t): # <<<<<<<<<<<<<< - * assert type(line) == t - * buffer = line.text.split() - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_process_irp_rw, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_process_irp_rw); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_process_irp_rw); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_process_irp_rw = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":480 - * return result - * - * def process_irp_read (line): # <<<<<<<<<<<<<< - * assert type(line) == Irp_read - * return process_irp_rw(line,'read' ,Irp_read ) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_1process_irp_read, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_irp_read); - __pyx_v_process_irp_read = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":484 - * return process_irp_rw(line,'read' ,Irp_read ) - * - * def process_irp_write(line): # <<<<<<<<<<<<<< - * assert type(line) == Irp_write - * return process_irp_rw(line,'writ' ,Irp_write) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_2process_irp_write, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_irp_write); - __pyx_v_process_irp_write = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":488 - * return process_irp_rw(line,'writ' ,Irp_write) - * - * def process_return(line): # <<<<<<<<<<<<<< - * assert type(line) == Return - * if command_line.do_assert or command_line.do_debug: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_3process_return, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 488; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_return); - __pyx_v_process_return = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":497 - * return result - * - * def debug_conditions(line): # <<<<<<<<<<<<<< - * '''Find condition in assert statement for debug''' - * assert type(line) == Assert - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_4debug_conditions, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_debug_conditions); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_debug_conditions); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_debug_conditions = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":510 - * return result - * - * def process_assert(line): # <<<<<<<<<<<<<< - * assert type(line) == Assert - * if command_line.do_assert: - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_5process_assert, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_assert); - __pyx_v_process_assert = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":538 - * return result - * - * def process_end(line): # <<<<<<<<<<<<<< - * '''Set irp_here variable in provider block''' - * line.text = "end" - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_6process_end, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_end); - __pyx_v_process_end = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":552 - * return result - * - * def process_begin_provider(line): # <<<<<<<<<<<<<< - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_7process_begin_provider, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 552; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_begin_provider); - __pyx_v_process_begin_provider = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":571 - * return result - * - * def process_cont_provider(line): # <<<<<<<<<<<<<< - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_8process_cont_provider, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 571; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_cont_provider); - __pyx_v_process_cont_provider = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":583 - * return [ Cont_provider(i,line.text,(f,varname)) ] - * - * def process_subroutine(line): # <<<<<<<<<<<<<< - * assert type(line) == Subroutine - * subname = find_subname(line) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_9process_subroutine, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_process_subroutine); - __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_process_subroutine); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_process_subroutine = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":597 - * return result - * - * def process_function(line): # <<<<<<<<<<<<<< - * assert type(line) == Function - * subname = find_subname(line) - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_10process_function, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_function); - __pyx_v_process_function = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":612 - * - * - * def process_program(line): # <<<<<<<<<<<<<< - * assert type(line) == Program - * program_name = line.lower.split()[1] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_21irp_simple_statements_11process_program, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 612; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_process_program); - __pyx_v_process_program = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":633 - * return result - * - * d = { Irp_read : process_irp_read, # <<<<<<<<<<<<<< - * Irp_write : process_irp_write, - * Return : process_return, - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_irp_read) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":634 - * - * d = { Irp_read : process_irp_read, - * Irp_write : process_irp_write, # <<<<<<<<<<<<<< - * Return : process_return, - * Assert : process_assert, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 634; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_irp_write) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":635 - * d = { Irp_read : process_irp_read, - * Irp_write : process_irp_write, - * Return : process_return, # <<<<<<<<<<<<<< - * Assert : process_assert, - * End : process_end, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Return); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_return) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":636 - * Irp_write : process_irp_write, - * Return : process_return, - * Assert : process_assert, # <<<<<<<<<<<<<< - * End : process_end, - * Begin_provider : process_begin_provider, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Assert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_assert) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":637 - * Return : process_return, - * Assert : process_assert, - * End : process_end, # <<<<<<<<<<<<<< - * Begin_provider : process_begin_provider, - * Cont_provider : process_cont_provider, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_end) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":638 - * Assert : process_assert, - * End : process_end, - * Begin_provider : process_begin_provider, # <<<<<<<<<<<<<< - * Cont_provider : process_cont_provider, - * End_provider : process_end, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 638; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_begin_provider) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":639 - * End : process_end, - * Begin_provider : process_begin_provider, - * Cont_provider : process_cont_provider, # <<<<<<<<<<<<<< - * End_provider : process_end, - * Subroutine : process_subroutine, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 639; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_cont_provider) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":640 - * Begin_provider : process_begin_provider, - * Cont_provider : process_cont_provider, - * End_provider : process_end, # <<<<<<<<<<<<<< - * Subroutine : process_subroutine, - * Function : process_function, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 640; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_end) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":641 - * Cont_provider : process_cont_provider, - * End_provider : process_end, - * Subroutine : process_subroutine, # <<<<<<<<<<<<<< - * Function : process_function, - * Program : process_program, - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 641; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_cur_scope->__pyx_v_process_subroutine) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":642 - * End_provider : process_end, - * Subroutine : process_subroutine, - * Function : process_function, # <<<<<<<<<<<<<< - * Program : process_program, - * } - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 642; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_function) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":643 - * Subroutine : process_subroutine, - * Function : process_function, - * Program : process_program, # <<<<<<<<<<<<<< - * } - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_v_process_program) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_d = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":646 - * } - * - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * buffer = [ line ] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 646; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":647 - * - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * buffer = [ line ] - * for t in d: - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 647; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 647; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":648 - * result = [] - * for line in text: - * buffer = [ line ] # <<<<<<<<<<<<<< - * for t in d: - * if type(line) == t: - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 648; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_line); - PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "preprocessed_text.py":649 - * for line in text: - * buffer = [ line ] - * for t in d: # <<<<<<<<<<<<<< - * if type(line) == t: - * buffer = d[t](line) - */ - __Pyx_INCREF(((PyObject *)__pyx_v_d)); - __Pyx_XDECREF(__pyx_t_2); - __pyx_t_2 = ((PyObject *)__pyx_v_d); - __pyx_t_5 = 0; - __pyx_t_6 = PyDict_Size(__pyx_t_2); - while (1) { - if (unlikely(__pyx_t_6 != PyDict_Size(__pyx_t_2))) { - PyErr_SetString(PyExc_RuntimeError, "dictionary changed size during iteration"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 649; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - if (!PyDict_Next(__pyx_t_2, (&__pyx_t_5), (&__pyx_t_7), NULL)) break; - __Pyx_INCREF(((PyObject *)__pyx_t_7)); - __Pyx_XDECREF(__pyx_v_t); - __pyx_v_t = __pyx_t_7; - - /* "preprocessed_text.py":650 - * buffer = [ line ] - * for t in d: - * if type(line) == t: # <<<<<<<<<<<<<< - * buffer = d[t](line) - * break - */ - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_v_t, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 650; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 650; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_9) { - - /* "preprocessed_text.py":651 - * for t in d: - * if type(line) == t: - * buffer = d[t](line) # <<<<<<<<<<<<<< - * break - * result += buffer - */ - __pyx_t_8 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_d), __pyx_v_t); if (!__pyx_t_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __pyx_t_11 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_11; - __pyx_t_11 = 0; - - /* "preprocessed_text.py":652 - * if type(line) == t: - * buffer = d[t](line) - * break # <<<<<<<<<<<<<< - * result += buffer - * return result - */ - goto __pyx_L8_break; - goto __pyx_L9; - } - __pyx_L9:; - } - __pyx_L8_break:; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":653 - * buffer = d[t](line) - * break - * result += buffer # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_v_buffer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 653; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":654 - * break - * result += buffer - * return result # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_AddTraceback("preprocessed_text.irp_simple_statements", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_process_irp_read); - __Pyx_XDECREF(__pyx_v_process_irp_write); - __Pyx_XDECREF(__pyx_v_process_return); - __Pyx_XDECREF(__pyx_v_process_assert); - __Pyx_XDECREF(__pyx_v_process_end); - __Pyx_XDECREF(__pyx_v_process_begin_provider); - __Pyx_XDECREF(__pyx_v_process_cont_provider); - __Pyx_XDECREF(__pyx_v_process_function); - __Pyx_XDECREF(__pyx_v_process_program); - __Pyx_XDECREF(__pyx_v_d); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_t); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":658 - * - * ###################################################################### - * def change_includes(text): # <<<<<<<<<<<<<< - * '''Deals with include files''' - * result = [] - */ - -static PyObject *__pyx_pf_17preprocessed_text_9change_includes(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_9change_includes[] = "Deals with include files"; -static PyMethodDef __pyx_mdef_17preprocessed_text_9change_includes = {__Pyx_NAMESTR("change_includes"), (PyCFunction)__pyx_pf_17preprocessed_text_9change_includes, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_9change_includes)}; -static PyObject *__pyx_pf_17preprocessed_text_9change_includes(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - Py_ssize_t __pyx_t_2; - PyObject *(*__pyx_t_3)(PyObject *); - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - Py_ssize_t __pyx_t_7; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - PyObject *__pyx_t_10 = NULL; - PyObject *__pyx_t_11 = NULL; - PyObject *__pyx_t_12 = NULL; - int __pyx_t_13; - PyObject *__pyx_t_14 = NULL; - PyObject *__pyx_t_15 = NULL; - PyObject *__pyx_t_16 = NULL; - PyObject *__pyx_t_17 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("change_includes"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":660 - * def change_includes(text): - * '''Deals with include files''' - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * if type(line) == Include: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 660; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":661 - * '''Deals with include files''' - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * if type(line) == Include: - * txt = line.text.replace('"',"'").split("'") - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0; - __pyx_t_3 = NULL; - } else { - __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 661; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; - } else { - __pyx_t_4 = __pyx_t_3(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 661; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_4; - __pyx_t_4 = 0; - - /* "preprocessed_text.py":662 - * result = [] - * for line in text: - * if type(line) == Include: # <<<<<<<<<<<<<< - * txt = line.text.replace('"',"'").split("'") - * if len(txt) != 3: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Include); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 662; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_4, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 662; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 662; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":663 - * for line in text: - * if type(line) == Include: - * txt = line.text.replace('"',"'").split("'") # <<<<<<<<<<<<<< - * if len(txt) != 3: - * print txt - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__replace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_125), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_126), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":664 - * if type(line) == Include: - * txt = line.text.replace('"',"'").split("'") - * if len(txt) != 3: # <<<<<<<<<<<<<< - * print txt - * error.fail(line,"Error in include statement") - */ - __pyx_t_7 = PyObject_Length(__pyx_v_txt); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 664; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_6 = (__pyx_t_7 != 3); - if (__pyx_t_6) { - - /* "preprocessed_text.py":665 - * txt = line.text.replace('"',"'").split("'") - * if len(txt) != 3: - * print txt # <<<<<<<<<<<<<< - * error.fail(line,"Error in include statement") - * filename = txt[1].strip() - */ - if (__Pyx_PrintOne(0, __pyx_v_txt) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":666 - * if len(txt) != 3: - * print txt - * error.fail(line,"Error in include statement") # <<<<<<<<<<<<<< - * filename = txt[1].strip() - * try: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_127)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_127)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_127)); - __pyx_t_8 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "preprocessed_text.py":667 - * print txt - * error.fail(line,"Error in include statement") - * filename = txt[1].strip() # <<<<<<<<<<<<<< - * try: - * file = open(filename,'r') - */ - __pyx_t_8 = __Pyx_GetItemInt(__pyx_v_txt, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_8) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 667; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_8, __pyx_n_s__strip); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 667; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 667; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":668 - * error.fail(line,"Error in include statement") - * filename = txt[1].strip() - * try: # <<<<<<<<<<<<<< - * file = open(filename,'r') - * file.close() - */ - { - __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_10, &__pyx_t_11); - __Pyx_XGOTREF(__pyx_t_9); - __Pyx_XGOTREF(__pyx_t_10); - __Pyx_XGOTREF(__pyx_t_11); - /*try:*/ { - - /* "preprocessed_text.py":669 - * filename = txt[1].strip() - * try: - * file = open(filename,'r') # <<<<<<<<<<<<<< - * file.close() - * result.append(Include(line.i,"! include '%s'"%filename,filename)) - */ - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 669; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_5 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 669; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":670 - * try: - * file = open(filename,'r') - * file.close() # <<<<<<<<<<<<<< - * result.append(Include(line.i,"! include '%s'"%filename,filename)) - * result += create_preprocessed_text(filename) - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_8 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - - /* "preprocessed_text.py":671 - * file = open(filename,'r') - * file.close() - * result.append(Include(line.i,"! include '%s'"%filename,filename)) # <<<<<<<<<<<<<< - * result += create_preprocessed_text(filename) - * except IOError: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Include); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_128), __pyx_v_filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __pyx_t_12 = PyTuple_New(3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_12)); - PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_5); - __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_12, 1, ((PyObject *)__pyx_t_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_5 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_8, ((PyObject *)__pyx_t_12), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_12)); __pyx_t_12 = 0; - __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_t_4); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - - /* "preprocessed_text.py":672 - * file.close() - * result.append(Include(line.i,"! include '%s'"%filename,filename)) - * result += create_preprocessed_text(filename) # <<<<<<<<<<<<<< - * except IOError: - * result.append(Declaration(line.i,line.text,line.filename)) - */ - __pyx_t_12 = __Pyx_GetName(__pyx_m, __pyx_n_s_1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 672; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_12); - __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 672; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_8 = PyObject_Call(__pyx_t_12, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 672; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 672; __pyx_clineno = __LINE__; goto __pyx_L9_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_4; - __pyx_t_4 = 0; - } - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - goto __pyx_L16_try_end; - __pyx_L9_error:; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":673 - * result.append(Include(line.i,"! include '%s'"%filename,filename)) - * result += create_preprocessed_text(filename) - * except IOError: # <<<<<<<<<<<<<< - * result.append(Declaration(line.i,line.text,line.filename)) - * else: - */ - __pyx_t_13 = PyErr_ExceptionMatches(__pyx_builtin_IOError); - if (__pyx_t_13) { - __Pyx_AddTraceback("preprocessed_text.change_includes", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_8, &__pyx_t_12) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 673; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_GOTREF(__pyx_t_8); - __Pyx_GOTREF(__pyx_t_12); - - /* "preprocessed_text.py":674 - * result += create_preprocessed_text(filename) - * except IOError: - * result.append(Declaration(line.i,line.text,line.filename)) # <<<<<<<<<<<<<< - * else: - * result.append(line) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_14 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_14); - __pyx_t_15 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_15); - __pyx_t_16 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_16); - __pyx_t_17 = PyTuple_New(3); if (unlikely(!__pyx_t_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_17)); - PyTuple_SET_ITEM(__pyx_t_17, 0, __pyx_t_14); - __Pyx_GIVEREF(__pyx_t_14); - PyTuple_SET_ITEM(__pyx_t_17, 1, __pyx_t_15); - __Pyx_GIVEREF(__pyx_t_15); - PyTuple_SET_ITEM(__pyx_t_17, 2, __pyx_t_16); - __Pyx_GIVEREF(__pyx_t_16); - __pyx_t_14 = 0; - __pyx_t_15 = 0; - __pyx_t_16 = 0; - __pyx_t_16 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_17), NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_16); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_17)); __pyx_t_17 = 0; - __pyx_t_17 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_t_16); if (unlikely(!__pyx_t_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;} - __Pyx_GOTREF(__pyx_t_17); - __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - goto __pyx_L10_exception_handled; - } - __pyx_L11_except_error:; - __Pyx_XGIVEREF(__pyx_t_9); - __Pyx_XGIVEREF(__pyx_t_10); - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); - goto __pyx_L1_error; - __pyx_L10_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_9); - __Pyx_XGIVEREF(__pyx_t_10); - __Pyx_XGIVEREF(__pyx_t_11); - __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11); - __pyx_L16_try_end:; - } - goto __pyx_L7; - } - /*else*/ { - - /* "preprocessed_text.py":676 - * result.append(Declaration(line.i,line.text,line.filename)) - * else: - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 676; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":677 - * else: - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_XDECREF(__pyx_t_12); - __Pyx_XDECREF(__pyx_t_14); - __Pyx_XDECREF(__pyx_t_15); - __Pyx_XDECREF(__pyx_t_16); - __Pyx_XDECREF(__pyx_t_17); - __Pyx_AddTraceback("preprocessed_text.change_includes", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":684 - * assert type(text) == list - * - * def change_matching_enddo(begin,number): # <<<<<<<<<<<<<< - * for i in range(begin+1,len(text)): - * line = text[i] - */ - -static PyObject *__pyx_pf_17preprocessed_text_20process_old_style_do_change_matching_enddo(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_20process_old_style_do_change_matching_enddo = {__Pyx_NAMESTR("change_matching_enddo"), (PyCFunction)__pyx_pf_17preprocessed_text_20process_old_style_do_change_matching_enddo, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_20process_old_style_do_change_matching_enddo(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *__pyx_outer_scope; - PyObject *__pyx_v_begin = 0; - PyObject *__pyx_v_number = 0; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - int __pyx_t_8; - int __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__begin,&__pyx_n_s__number,0}; - __Pyx_RefNannySetupContext("change_matching_enddo"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__begin); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__number); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("change_matching_enddo", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 684; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "change_matching_enddo") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 684; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_begin = values[0]; - __pyx_v_number = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("change_matching_enddo", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 684; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.process_old_style_do.change_matching_enddo", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":685 - * - * def change_matching_enddo(begin,number): - * for i in range(begin+1,len(text)): # <<<<<<<<<<<<<< - * line = text[i] - * if type(line) in [Continue,Enddo]: - */ - __pyx_t_1 = PyNumber_Add(__pyx_v_begin, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(!__pyx_cur_scope->__pyx_v_text)) { __Pyx_RaiseClosureNameError("text"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = __pyx_cur_scope->__pyx_v_text; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_range, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_4); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 685; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":686 - * def change_matching_enddo(begin,number): - * for i in range(begin+1,len(text)): - * line = text[i] # <<<<<<<<<<<<<< - * if type(line) in [Continue,Enddo]: - * buffer = line.text.split() - */ - __pyx_t_2 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_i); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 686; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":687 - * for i in range(begin+1,len(text)): - * line = text[i] - * if type(line) in [Continue,Enddo]: # <<<<<<<<<<<<<< - * buffer = line.text.split() - * if buffer[0] == number: - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_2 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Continue); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_7 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (!((int)__pyx_t_7)) { - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 687; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_7); - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_7 = __pyx_t_9; - if (__pyx_t_7) { - - /* "preprocessed_text.py":688 - * line = text[i] - * if type(line) in [Continue,Enddo]: - * buffer = line.text.split() # <<<<<<<<<<<<<< - * if buffer[0] == number: - * text[i] = Enddo(line.i," enddo",line.filename) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 688; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 688; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 688; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":689 - * if type(line) in [Continue,Enddo]: - * buffer = line.text.split() - * if buffer[0] == number: # <<<<<<<<<<<<<< - * text[i] = Enddo(line.i," enddo",line.filename) - * return - */ - __pyx_t_2 = __Pyx_GetItemInt(__pyx_v_buffer, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_v_number, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 689; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_7) { - - /* "preprocessed_text.py":690 - * buffer = line.text.split() - * if buffer[0] == number: - * text[i] = Enddo(line.i," enddo",line.filename) # <<<<<<<<<<<<<< - * return - * error.fail(text[begin],"Old-style do loops should end with 'continue' or 'end do'") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_129)); - PyTuple_SET_ITEM(__pyx_t_10, 1, ((PyObject *)__pyx_kp_s_129)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_129)); - PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_2 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - if (PyObject_SetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_i, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 690; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "preprocessed_text.py":691 - * if buffer[0] == number: - * text[i] = Enddo(line.i," enddo",line.filename) - * return # <<<<<<<<<<<<<< - * error.fail(text[begin],"Old-style do loops should end with 'continue' or 'end do'") - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L9; - } - __pyx_L9:; - goto __pyx_L8; - } - __pyx_L8:; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":692 - * text[i] = Enddo(line.i," enddo",line.filename) - * return - * error.fail(text[begin],"Old-style do loops should end with 'continue' or 'end do'") # <<<<<<<<<<<<<< - * - * result = [] - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 692; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 692; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_begin); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 692; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 692; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_130)); - PyTuple_SET_ITEM(__pyx_t_10, 1, ((PyObject *)__pyx_kp_s_130)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_130)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 692; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("preprocessed_text.process_old_style_do.change_matching_enddo", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":680 - * - * ###################################################################### - * def process_old_style_do(text): # <<<<<<<<<<<<<< - * '''Changes old-style do loops to new style''' - * assert type(text) == list - */ - -static PyObject *__pyx_pf_17preprocessed_text_10process_old_style_do(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_10process_old_style_do[] = "Changes old-style do loops to new style"; -static PyMethodDef __pyx_mdef_17preprocessed_text_10process_old_style_do = {__Pyx_NAMESTR("process_old_style_do"), (PyCFunction)__pyx_pf_17preprocessed_text_10process_old_style_do, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_10process_old_style_do)}; -static PyObject *__pyx_pf_17preprocessed_text_10process_old_style_do(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *__pyx_cur_scope; - PyObject *__pyx_v_change_matching_enddo = 0; - PyObject *__pyx_v_result = NULL; - Py_ssize_t __pyx_v_i; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_number = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - int __pyx_t_10; - int __pyx_t_11; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("process_old_style_do"); - __pyx_cur_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)__pyx_ptype_17preprocessed_text___pyx_scope_struct_2_process_old_style_do->tp_new(__pyx_ptype_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - __Pyx_INCREF(__pyx_v_text); - __pyx_cur_scope->__pyx_v_text = __pyx_v_text; - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_text); - - /* "preprocessed_text.py":682 - * def process_old_style_do(text): - * '''Changes old-style do loops to new style''' - * assert type(text) == list # <<<<<<<<<<<<<< - * - * def change_matching_enddo(begin,number): - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 682; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 682; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 682; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":684 - * assert type(text) == list - * - * def change_matching_enddo(begin,number): # <<<<<<<<<<<<<< - * for i in range(begin+1,len(text)): - * line = text[i] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_20process_old_style_do_change_matching_enddo, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 684; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_change_matching_enddo); - __pyx_v_change_matching_enddo = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":694 - * error.fail(text[begin],"Old-style do loops should end with 'continue' or 'end do'") - * - * result = [] # <<<<<<<<<<<<<< - * for i in range(len(text)): - * line = text[i] - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 694; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":695 - * - * result = [] - * for i in range(len(text)): # <<<<<<<<<<<<<< - * line = text[i] - * if type(line) == Do: - */ - __pyx_t_1 = __pyx_cur_scope->__pyx_v_text; - __Pyx_INCREF(__pyx_t_1); - __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 695; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (__pyx_t_4 = 0; __pyx_t_4 < __pyx_t_3; __pyx_t_4+=1) { - __pyx_v_i = __pyx_t_4; - - /* "preprocessed_text.py":696 - * result = [] - * for i in range(len(text)): - * line = text[i] # <<<<<<<<<<<<<< - * if type(line) == Do: - * buffer = line.text.split() - */ - __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_text, __pyx_v_i, sizeof(Py_ssize_t), PyInt_FromSsize_t); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 696; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":697 - * for i in range(len(text)): - * line = text[i] - * if type(line) == Do: # <<<<<<<<<<<<<< - * buffer = line.text.split() - * try: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 697; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 697; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 697; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":698 - * line = text[i] - * if type(line) == Do: - * buffer = line.text.split() # <<<<<<<<<<<<<< - * try: - * if buffer[1].isdigit(): - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":699 - * if type(line) == Do: - * buffer = line.text.split() - * try: # <<<<<<<<<<<<<< - * if buffer[1].isdigit(): - * number = buffer.pop(1) - */ - { - __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_8); - /*try:*/ { - - /* "preprocessed_text.py":700 - * buffer = line.text.split() - * try: - * if buffer[1].isdigit(): # <<<<<<<<<<<<<< - * number = buffer.pop(1) - * change_matching_enddo(i,number) - */ - __pyx_t_5 = __Pyx_GetItemInt(__pyx_v_buffer, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 700; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__isdigit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 700; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 700; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 700; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":701 - * try: - * if buffer[1].isdigit(): - * number = buffer.pop(1) # <<<<<<<<<<<<<< - * change_matching_enddo(i,number) - * line.text = " ".join(buffer) - */ - __pyx_t_5 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__pop); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 701; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_131), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 701; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_number); - __pyx_v_number = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":702 - * if buffer[1].isdigit(): - * number = buffer.pop(1) - * change_matching_enddo(i,number) # <<<<<<<<<<<<<< - * line.text = " ".join(buffer) - * except IndexError: - */ - __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_i); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_number); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_number); - __Pyx_GIVEREF(__pyx_v_number); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_v_change_matching_enddo, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":703 - * number = buffer.pop(1) - * change_matching_enddo(i,number) - * line.text = " ".join(buffer) # <<<<<<<<<<<<<< - * except IndexError: - * pass - */ - __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_kp_s_7), __pyx_n_s__join); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_9 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_v_line, __pyx_n_s__text, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - goto __pyx_L16; - } - __pyx_L16:; - } - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L15_try_end; - __pyx_L8_error:; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "preprocessed_text.py":704 - * change_matching_enddo(i,number) - * line.text = " ".join(buffer) - * except IndexError: # <<<<<<<<<<<<<< - * pass - * result.append(line) - */ - __pyx_t_10 = PyErr_ExceptionMatches(__pyx_builtin_IndexError); - if (__pyx_t_10) { - PyErr_Restore(0,0,0); - goto __pyx_L9_exception_handled; - } - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); - goto __pyx_L1_error; - __pyx_L9_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); - __pyx_L15_try_end:; - } - goto __pyx_L7; - } - __pyx_L7:; - - /* "preprocessed_text.py":706 - * except IndexError: - * pass - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 706; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_11 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 706; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - - /* "preprocessed_text.py":707 - * pass - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_AddTraceback("preprocessed_text.process_old_style_do", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_change_matching_enddo); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_number); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":710 - * - * ###################################################################### - * def change_single_line_ifs(text): # <<<<<<<<<<<<<< - * '''Changes: - * if (test) result - */ - -static PyObject *__pyx_pf_17preprocessed_text_11change_single_line_ifs(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_11change_single_line_ifs[] = "Changes:\nif (test) result\n\nto\n\nif (test) then\n result\nendif"; -static PyMethodDef __pyx_mdef_17preprocessed_text_11change_single_line_ifs = {__Pyx_NAMESTR("change_single_line_ifs"), (PyCFunction)__pyx_pf_17preprocessed_text_11change_single_line_ifs, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_11change_single_line_ifs)}; -static PyObject *__pyx_pf_17preprocessed_text_11change_single_line_ifs(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_v_begin = NULL; - PyObject *__pyx_v_level = NULL; - int __pyx_v_instring; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_c = NULL; - PyObject *__pyx_v_end = NULL; - PyObject *__pyx_v_test = NULL; - PyObject *__pyx_v_code = NULL; - PyObject *__pyx_v_f = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - Py_ssize_t __pyx_t_8; - PyObject *(*__pyx_t_9)(PyObject *); - PyObject *__pyx_t_10 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("change_single_line_ifs"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":720 - * endif''' - * - * assert type(text) == list # <<<<<<<<<<<<<< - * result = [] - * for line in text: - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 720; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":721 - * - * assert type(text) == list - * result = [] # <<<<<<<<<<<<<< - * for line in text: - * if type(line) == If: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 721; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - - /* "preprocessed_text.py":722 - * assert type(text) == list - * result = [] - * for line in text: # <<<<<<<<<<<<<< - * if type(line) == If: - * if line.lower.endswith("then"): - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else { - __pyx_t_5 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":723 - * result = [] - * for line in text: - * if type(line) == If: # <<<<<<<<<<<<<< - * if line.lower.endswith("then"): - * result.append(line) - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":724 - * for line in text: - * if type(line) == If: - * if line.lower.endswith("then"): # <<<<<<<<<<<<<< - * result.append(line) - * else: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__lower); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__endswith); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_132), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":725 - * if type(line) == If: - * if line.lower.endswith("then"): - * result.append(line) # <<<<<<<<<<<<<< - * else: - * buffer = line.text - */ - __pyx_t_6 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 725; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L8; - } - /*else*/ { - - /* "preprocessed_text.py":727 - * result.append(line) - * else: - * buffer = line.text # <<<<<<<<<<<<<< - * begin = buffer.find('(') - * if begin < 0: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":728 - * else: - * buffer = line.text - * begin = buffer.find('(') # <<<<<<<<<<<<<< - * if begin < 0: - * error.fail(line,"Error in if statement") - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_buffer, __pyx_n_s__find); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_k_tuple_133), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_begin); - __pyx_v_begin = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":729 - * buffer = line.text - * begin = buffer.find('(') - * if begin < 0: # <<<<<<<<<<<<<< - * error.fail(line,"Error in if statement") - * level = 0 - */ - __pyx_t_5 = PyObject_RichCompare(__pyx_v_begin, __pyx_int_0, Py_LT); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":730 - * begin = buffer.find('(') - * if begin < 0: - * error.fail(line,"Error in if statement") # <<<<<<<<<<<<<< - * level = 0 - * instring = False - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 730; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 730; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 730; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_134)); - PyTuple_SET_ITEM(__pyx_t_5, 1, ((PyObject *)__pyx_kp_s_134)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_134)); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 730; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L9; - } - __pyx_L9:; - - /* "preprocessed_text.py":731 - * if begin < 0: - * error.fail(line,"Error in if statement") - * level = 0 # <<<<<<<<<<<<<< - * instring = False - * for i,c in enumerate(buffer[begin:]): - */ - __Pyx_INCREF(__pyx_int_0); - __Pyx_XDECREF(__pyx_v_level); - __pyx_v_level = __pyx_int_0; - - /* "preprocessed_text.py":732 - * error.fail(line,"Error in if statement") - * level = 0 - * instring = False # <<<<<<<<<<<<<< - * for i,c in enumerate(buffer[begin:]): - * if c == "'": - */ - __pyx_v_instring = 0; - - /* "preprocessed_text.py":733 - * level = 0 - * instring = False - * for i,c in enumerate(buffer[begin:]): # <<<<<<<<<<<<<< - * if c == "'": - * instring = not instring - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_t_7 = __pyx_int_0; - __pyx_t_8 = __Pyx_PyIndex_AsSsize_t(__pyx_v_begin); if (unlikely((__pyx_t_8 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = __Pyx_PySequence_GetSlice(__pyx_v_buffer, __pyx_t_8, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) { - __pyx_t_6 = __pyx_t_5; __Pyx_INCREF(__pyx_t_6); __pyx_t_8 = 0; - __pyx_t_9 = NULL; - } else { - __pyx_t_8 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_9 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_8); __Pyx_INCREF(__pyx_t_5); __pyx_t_8++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_8); __Pyx_INCREF(__pyx_t_5); __pyx_t_8++; - } else { - __pyx_t_5 = __pyx_t_9(__pyx_t_6); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_c); - __pyx_v_c = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_INCREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_7; - __pyx_t_5 = PyNumber_Add(__pyx_t_7, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 733; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); - __pyx_t_7 = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":734 - * instring = False - * for i,c in enumerate(buffer[begin:]): - * if c == "'": # <<<<<<<<<<<<<< - * instring = not instring - * if instring: - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_c, ((PyObject *)__pyx_kp_s_86), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 734; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":735 - * for i,c in enumerate(buffer[begin:]): - * if c == "'": - * instring = not instring # <<<<<<<<<<<<<< - * if instring: - * pass - */ - __pyx_v_instring = (!__pyx_v_instring); - goto __pyx_L12; - } - __pyx_L12:; - - /* "preprocessed_text.py":736 - * if c == "'": - * instring = not instring - * if instring: # <<<<<<<<<<<<<< - * pass - * elif c == '(': - */ - if (__pyx_v_instring) { - goto __pyx_L13; - } - - /* "preprocessed_text.py":738 - * if instring: - * pass - * elif c == '(': # <<<<<<<<<<<<<< - * level +=1 - * elif c == ')': - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_c, ((PyObject *)__pyx_kp_s_90), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 738; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":739 - * pass - * elif c == '(': - * level +=1 # <<<<<<<<<<<<<< - * elif c == ')': - * level -= 1 - */ - __pyx_t_5 = PyNumber_InPlaceAdd(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 739; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L13; - } - - /* "preprocessed_text.py":740 - * elif c == '(': - * level +=1 - * elif c == ')': # <<<<<<<<<<<<<< - * level -= 1 - * if level == 0: - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_c, ((PyObject *)__pyx_kp_s_135), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 740; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":741 - * level +=1 - * elif c == ')': - * level -= 1 # <<<<<<<<<<<<<< - * if level == 0: - * end = begin+i+1 - */ - __pyx_t_5 = PyNumber_InPlaceSubtract(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L13; - } - __pyx_L13:; - - /* "preprocessed_text.py":742 - * elif c == ')': - * level -= 1 - * if level == 0: # <<<<<<<<<<<<<< - * end = begin+i+1 - * break - */ - __pyx_t_5 = PyObject_RichCompare(__pyx_v_level, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":743 - * level -= 1 - * if level == 0: - * end = begin+i+1 # <<<<<<<<<<<<<< - * break - * if level != 0: - */ - __pyx_t_5 = PyNumber_Add(__pyx_v_begin, __pyx_v_i); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 743; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_10 = PyNumber_Add(__pyx_t_5, __pyx_int_1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 743; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_end); - __pyx_v_end = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":744 - * if level == 0: - * end = begin+i+1 - * break # <<<<<<<<<<<<<< - * if level != 0: - * error.fail(line,"Error in if statement") - */ - goto __pyx_L11_break; - goto __pyx_L14; - } - __pyx_L14:; - } - __pyx_L11_break:; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "preprocessed_text.py":745 - * end = begin+i+1 - * break - * if level != 0: # <<<<<<<<<<<<<< - * error.fail(line,"Error in if statement") - * test = buffer[:end] - */ - __pyx_t_7 = PyObject_RichCompare(__pyx_v_level, __pyx_int_0, Py_NE); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 745; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 745; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":746 - * break - * if level != 0: - * error.fail(line,"Error in if statement") # <<<<<<<<<<<<<< - * test = buffer[:end] - * code = buffer[end:] - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_134)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_kp_s_134)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_134)); - __pyx_t_10 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 746; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - goto __pyx_L15; - } - __pyx_L15:; - if (unlikely(!__pyx_v_end)) { __Pyx_RaiseUnboundLocalError("end"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_8 = __Pyx_PyIndex_AsSsize_t(__pyx_v_end); if (unlikely((__pyx_t_8 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":747 - * if level != 0: - * error.fail(line,"Error in if statement") - * test = buffer[:end] # <<<<<<<<<<<<<< - * code = buffer[end:] - * i = line.i - */ - __pyx_t_10 = __Pyx_PySequence_GetSlice(__pyx_v_buffer, 0, __pyx_t_8); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 747; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_v_test); - __pyx_v_test = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":748 - * error.fail(line,"Error in if statement") - * test = buffer[:end] - * code = buffer[end:] # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_t_8 = __Pyx_PyIndex_AsSsize_t(__pyx_v_end); if (unlikely((__pyx_t_8 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 748; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_10 = __Pyx_PySequence_GetSlice(__pyx_v_buffer, __pyx_t_8, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 748; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_v_code); - __pyx_v_code = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":749 - * test = buffer[:end] - * code = buffer[end:] - * i = line.i # <<<<<<<<<<<<<< - * f = line.filename - * result.append( If(i,"%s then"%(test,),f) ) - */ - __pyx_t_10 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":750 - * code = buffer[end:] - * i = line.i - * f = line.filename # <<<<<<<<<<<<<< - * result.append( If(i,"%s then"%(test,),f) ) - * result += get_type(i,f,code,False)[0] - */ - __pyx_t_10 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_XDECREF(__pyx_v_f); - __pyx_v_f = __pyx_t_10; - __pyx_t_10 = 0; - - /* "preprocessed_text.py":751 - * i = line.i - * f = line.filename - * result.append( If(i,"%s then"%(test,),f) ) # <<<<<<<<<<<<<< - * result += get_type(i,f,code,False)[0] - * result.append( Endif(i," endif",f) ) - */ - __pyx_t_10 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_test); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_test); - __Pyx_GIVEREF(__pyx_v_test); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_136), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_t_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_10, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_t_6); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - /* "preprocessed_text.py":752 - * f = line.filename - * result.append( If(i,"%s then"%(test,),f) ) - * result += get_type(i,f,code,False)[0] # <<<<<<<<<<<<<< - * result.append( Endif(i," endif",f) ) - * else: - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_type); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = __Pyx_PyBool_FromLong(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = PyTuple_New(4); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __Pyx_INCREF(__pyx_v_code); - PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_v_code); - __Pyx_GIVEREF(__pyx_v_code); - PyTuple_SET_ITEM(__pyx_t_10, 3, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_GetItemInt(__pyx_t_6, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_10) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_result, __pyx_t_10); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":753 - * result.append( If(i,"%s then"%(test,),f) ) - * result += get_type(i,f,code,False)[0] - * result.append( Endif(i," endif",f) ) # <<<<<<<<<<<<<< - * else: - * result.append(line) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_10)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_101)); - PyTuple_SET_ITEM(__pyx_t_10, 1, ((PyObject *)__pyx_kp_s_101)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_101)); - __Pyx_INCREF(__pyx_v_f); - PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_v_f); - __Pyx_GIVEREF(__pyx_v_f); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_10), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_10)); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_t_7); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 753; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - } - __pyx_L8:; - goto __pyx_L7; - } - /*else*/ { - - /* "preprocessed_text.py":755 - * result.append( Endif(i," endif",f) ) - * else: - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_10 = __Pyx_PyObject_Append(__pyx_v_result, __pyx_v_line); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 755; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":756 - * else: - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("preprocessed_text.change_single_line_ifs", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XDECREF(__pyx_v_begin); - __Pyx_XDECREF(__pyx_v_level); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_c); - __Pyx_XDECREF(__pyx_v_end); - __Pyx_XDECREF(__pyx_v_test); - __Pyx_XDECREF(__pyx_v_code); - __Pyx_XDECREF(__pyx_v_f); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":772 - * assert type(text) == list - * - * def find_matching_end_ifdo(begin,x): # <<<<<<<<<<<<<< - * level = 1 - * for i in range(begin+1,len(text)): - */ - -static PyObject *__pyx_pf_17preprocessed_text_15check_begin_end_find_matching_end_ifdo(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_15check_begin_end_find_matching_end_ifdo = {__Pyx_NAMESTR("find_matching_end_ifdo"), (PyCFunction)__pyx_pf_17preprocessed_text_15check_begin_end_find_matching_end_ifdo, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_15check_begin_end_find_matching_end_ifdo(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *__pyx_outer_scope; - PyObject *__pyx_v_begin = 0; - PyObject *__pyx_v_x = 0; - PyObject *__pyx_v_level = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *(*__pyx_t_5)(PyObject *); - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - int __pyx_t_9; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__begin,&__pyx_n_s__x,0}; - __Pyx_RefNannySetupContext("find_matching_end_ifdo"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__begin); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("find_matching_end_ifdo", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "find_matching_end_ifdo") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_begin = values[0]; - __pyx_v_x = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("find_matching_end_ifdo", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.check_begin_end.find_matching_end_ifdo", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":773 - * - * def find_matching_end_ifdo(begin,x): - * level = 1 # <<<<<<<<<<<<<< - * for i in range(begin+1,len(text)): - * line = text[i] - */ - __Pyx_INCREF(__pyx_int_1); - __pyx_v_level = __pyx_int_1; - - /* "preprocessed_text.py":774 - * def find_matching_end_ifdo(begin,x): - * level = 1 - * for i in range(begin+1,len(text)): # <<<<<<<<<<<<<< - * line = text[i] - * if type(line) == d[x]: - */ - __pyx_t_1 = PyNumber_Add(__pyx_v_begin, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(!__pyx_cur_scope->__pyx_v_text)) { __Pyx_RaiseClosureNameError("text"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = __pyx_cur_scope->__pyx_v_text; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_range, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_4); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":775 - * level = 1 - * for i in range(begin+1,len(text)): - * line = text[i] # <<<<<<<<<<<<<< - * if type(line) == d[x]: - * level += 1 - */ - __pyx_t_2 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_i); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 775; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - if (unlikely(!__pyx_cur_scope->__pyx_v_d)) { __Pyx_RaiseClosureNameError("d"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_d, __pyx_v_x); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":776 - * for i in range(begin+1,len(text)): - * line = text[i] - * if type(line) == d[x]: # <<<<<<<<<<<<<< - * level += 1 - * elif type(line) == d["end%s"%(x,)]: - */ - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 776; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":777 - * line = text[i] - * if type(line) == d[x]: - * level += 1 # <<<<<<<<<<<<<< - * elif type(line) == d["end%s"%(x,)]: - * level -= 1 - */ - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L8; - } - - /* "preprocessed_text.py":778 - * if type(line) == d[x]: - * level += 1 - * elif type(line) == d["end%s"%(x,)]: # <<<<<<<<<<<<<< - * level -= 1 - * if level == 0: - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_137), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_d, ((PyObject *)__pyx_t_2)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 778; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":779 - * level += 1 - * elif type(line) == d["end%s"%(x,)]: - * level -= 1 # <<<<<<<<<<<<<< - * if level == 0: - * return True - */ - __pyx_t_2 = PyNumber_InPlaceSubtract(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":780 - * elif type(line) == d["end%s"%(x,)]: - * level -= 1 - * if level == 0: # <<<<<<<<<<<<<< - * return True - * elif type(line) in [End, End_provider]: - */ - __pyx_t_2 = PyObject_RichCompare(__pyx_v_level, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":781 - * level -= 1 - * if level == 0: - * return True # <<<<<<<<<<<<<< - * elif type(line) in [End, End_provider]: - * break - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 781; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L9; - } - __pyx_L9:; - goto __pyx_L8; - } - - /* "preprocessed_text.py":782 - * if level == 0: - * return True - * elif type(line) in [End, End_provider]: # <<<<<<<<<<<<<< - * break - * error.fail(text[begin],"Missing 'end%s'"%(x,)) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_2 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (!((int)__pyx_t_6)) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 782; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_6); - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = __pyx_t_9; - if (__pyx_t_6) { - - /* "preprocessed_text.py":783 - * return True - * elif type(line) in [End, End_provider]: - * break # <<<<<<<<<<<<<< - * error.fail(text[begin],"Missing 'end%s'"%(x,)) - * - */ - goto __pyx_L7_break; - goto __pyx_L8; - } - __pyx_L8:; - } - __pyx_L7_break:; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":784 - * elif type(line) in [End, End_provider]: - * break - * error.fail(text[begin],"Missing 'end%s'"%(x,)) # <<<<<<<<<<<<<< - * - * def find_matching_end_subfunpro(begin,x): - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__fail); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_begin); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_138), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_t_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_7)); - __pyx_t_4 = 0; - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 784; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.check_begin_end.find_matching_end_ifdo", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_level); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":786 - * error.fail(text[begin],"Missing 'end%s'"%(x,)) - * - * def find_matching_end_subfunpro(begin,x): # <<<<<<<<<<<<<< - * for i in range(begin+1,len(text)): - * line = text[i] - */ - -static PyObject *__pyx_pf_17preprocessed_text_15check_begin_end_1find_matching_end_subfunpro(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_15check_begin_end_1find_matching_end_subfunpro = {__Pyx_NAMESTR("find_matching_end_subfunpro"), (PyCFunction)__pyx_pf_17preprocessed_text_15check_begin_end_1find_matching_end_subfunpro, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_15check_begin_end_1find_matching_end_subfunpro(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *__pyx_cur_scope; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *__pyx_outer_scope; - PyObject *__pyx_v_begin = 0; - PyObject *__pyx_v_x = 0; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *(*__pyx_t_5)(PyObject *); - int __pyx_t_6; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - int __pyx_t_9; - PyObject *__pyx_t_10 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__begin,&__pyx_n_s__x,0}; - __Pyx_RefNannySetupContext("find_matching_end_subfunpro"); - __pyx_outer_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)__pyx_self; - __pyx_cur_scope = __pyx_outer_scope; - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__begin); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__x); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("find_matching_end_subfunpro", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "find_matching_end_subfunpro") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_begin = values[0]; - __pyx_v_x = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("find_matching_end_subfunpro", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("preprocessed_text.check_begin_end.find_matching_end_subfunpro", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "preprocessed_text.py":787 - * - * def find_matching_end_subfunpro(begin,x): - * for i in range(begin+1,len(text)): # <<<<<<<<<<<<<< - * line = text[i] - * if type(line) == x: - */ - __pyx_t_1 = PyNumber_Add(__pyx_v_begin, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (unlikely(!__pyx_cur_scope->__pyx_v_text)) { __Pyx_RaiseClosureNameError("text"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_2 = __pyx_cur_scope->__pyx_v_text; - __Pyx_INCREF(__pyx_t_2); - __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_1 = 0; - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_range, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_4); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 787; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":788 - * def find_matching_end_subfunpro(begin,x): - * for i in range(begin+1,len(text)): - * line = text[i] # <<<<<<<<<<<<<< - * if type(line) == x: - * return - */ - __pyx_t_2 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_i); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 788; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":789 - * for i in range(begin+1,len(text)): - * line = text[i] - * if type(line) == x: # <<<<<<<<<<<<<< - * return - * if type(line) in [ Subroutine, Function, Program, Begin_provider ]: - */ - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_v_x, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 789; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 789; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":790 - * line = text[i] - * if type(line) == x: - * return # <<<<<<<<<<<<<< - * if type(line) in [ Subroutine, Function, Program, Begin_provider ]: - * error.fail(text[begin],type(line).str+" is not closed") - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "preprocessed_text.py":791 - * if type(line) == x: - * return - * if type(line) in [ Subroutine, Function, Program, Begin_provider ]: # <<<<<<<<<<<<<< - * error.fail(text[begin],type(line).str+" is not closed") - * error.fail(text[begin],type(line).str + " is not closed") - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_2 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (!((int)__pyx_t_6)) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_8 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = ((int)__pyx_t_8); - } else { - __pyx_t_9 = ((int)__pyx_t_6); - } - if (!__pyx_t_9) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_8 = ((int)__pyx_t_6); - } else { - __pyx_t_8 = __pyx_t_9; - } - if (!__pyx_t_8) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_RichCompare(((PyObject *)__pyx_t_2), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = ((int)__pyx_t_9); - } else { - __pyx_t_6 = __pyx_t_8; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_8 = __pyx_t_6; - if (__pyx_t_8) { - - /* "preprocessed_text.py":792 - * return - * if type(line) in [ Subroutine, Function, Program, Begin_provider ]: - * error.fail(text[begin],type(line).str+" is not closed") # <<<<<<<<<<<<<< - * error.fail(text[begin],type(line).str + " is not closed") - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_begin); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_n_s__str); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_10 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_139)); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_10); - __Pyx_GIVEREF(__pyx_t_10); - __pyx_t_2 = 0; - __pyx_t_10 = 0; - __pyx_t_10 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - goto __pyx_L9; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":793 - * if type(line) in [ Subroutine, Function, Program, Begin_provider ]: - * error.fail(text[begin],type(line).str+" is not closed") - * error.fail(text[begin],type(line).str + " is not closed") # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_10 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__fail); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_text, __pyx_v_begin); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - if (unlikely(!__pyx_v_line)) { __Pyx_RaiseUnboundLocalError("line"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_7 = PyObject_GetAttr(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_n_s__str); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_139)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_4 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_10, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_10); - __Pyx_AddTraceback("preprocessed_text.check_begin_end.find_matching_end_subfunpro", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":762 - * '''Checks x...endx consistence''' - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ # <<<<<<<<<<<<<< - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - */ - -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_line); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda3 = {__Pyx_NAMESTR("lambda3"), (PyCFunction)__pyx_lambda_funcdef_lambda3, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda3(PyObject *__pyx_self, PyObject *__pyx_v_line) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - int __pyx_t_6; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda3"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_1 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (!((int)__pyx_t_4)) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = ((int)__pyx_t_4); - } - if (!__pyx_t_6) { - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = ((int)__pyx_t_4); - } else { - __pyx_t_5 = __pyx_t_6; - } - if (!__pyx_t_5) { - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = ((int)__pyx_t_6); - } else { - __pyx_t_4 = __pyx_t_5; - } - if (!__pyx_t_4) { - - /* "preprocessed_text.py":763 - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ - * Program, Begin_provider, End_provider, \ # <<<<<<<<<<<<<< - * Subroutine, Function, End, Begin_doc, End_doc ] - * text = filter(filter_line, text) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = __pyx_t_4; - } - if (!__pyx_t_6) { - - /* "preprocessed_text.py":762 - * '''Checks x...endx consistence''' - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ # <<<<<<<<<<<<<< - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = ((int)__pyx_t_4); - } else { - __pyx_t_5 = __pyx_t_6; - } - if (!__pyx_t_5) { - - /* "preprocessed_text.py":763 - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ - * Program, Begin_provider, End_provider, \ # <<<<<<<<<<<<<< - * Subroutine, Function, End, Begin_doc, End_doc ] - * text = filter(filter_line, text) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = ((int)__pyx_t_6); - } else { - __pyx_t_4 = __pyx_t_5; - } - if (!__pyx_t_4) { - - /* "preprocessed_text.py":764 - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] # <<<<<<<<<<<<<< - * text = filter(filter_line, text) - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = __pyx_t_4; - } - if (!__pyx_t_6) { - - /* "preprocessed_text.py":762 - * '''Checks x...endx consistence''' - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ # <<<<<<<<<<<<<< - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = ((int)__pyx_t_4); - } else { - __pyx_t_5 = __pyx_t_6; - } - if (!__pyx_t_5) { - - /* "preprocessed_text.py":764 - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] # <<<<<<<<<<<<<< - * text = filter(filter_line, text) - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = ((int)__pyx_t_6); - } else { - __pyx_t_4 = __pyx_t_5; - } - if (!__pyx_t_4) { - - /* "preprocessed_text.py":762 - * '''Checks x...endx consistence''' - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ # <<<<<<<<<<<<<< - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_doc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_2, Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = ((int)__pyx_t_5); - } else { - __pyx_t_6 = __pyx_t_4; - } - if (!__pyx_t_6) { - - /* "preprocessed_text.py":764 - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] # <<<<<<<<<<<<<< - * text = filter(filter_line, text) - * - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_doc); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 764; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)__pyx_t_1), __pyx_t_3, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = ((int)__pyx_t_4); - } else { - __pyx_t_5 = __pyx_t_6; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.check_begin_end.lambda3", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":759 - * - * ###################################################################### - * def check_begin_end(text): # <<<<<<<<<<<<<< - * '''Checks x...endx consistence''' - * - */ - -static PyObject *__pyx_pf_17preprocessed_text_12check_begin_end(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static char __pyx_doc_17preprocessed_text_12check_begin_end[] = "Checks x...endx consistence"; -static PyMethodDef __pyx_mdef_17preprocessed_text_12check_begin_end = {__Pyx_NAMESTR("check_begin_end"), (PyCFunction)__pyx_pf_17preprocessed_text_12check_begin_end, METH_O, __Pyx_DOCSTR(__pyx_doc_17preprocessed_text_12check_begin_end)}; -static PyObject *__pyx_pf_17preprocessed_text_12check_begin_end(PyObject *__pyx_self, PyObject *__pyx_v_text) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *__pyx_cur_scope; - PyObject *__pyx_v_filter_line = NULL; - PyObject *__pyx_v_find_matching_end_ifdo = 0; - PyObject *__pyx_v_find_matching_end_subfunpro = 0; - PyObject *__pyx_v_level = NULL; - PyObject *__pyx_v_i = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - int __pyx_t_9; - int __pyx_t_10; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("check_begin_end"); - __pyx_cur_scope = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)__pyx_ptype_17preprocessed_text___pyx_scope_struct_3_check_begin_end->tp_new(__pyx_ptype_17preprocessed_text___pyx_scope_struct_3_check_begin_end, __pyx_empty_tuple, NULL); - if (unlikely(!__pyx_cur_scope)) { - __Pyx_RefNannyFinishContext(); - return NULL; - } - __Pyx_GOTREF(__pyx_cur_scope); - __pyx_self = __pyx_self; - __Pyx_INCREF(__pyx_v_text); - __pyx_cur_scope->__pyx_v_text = __pyx_v_text; - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_text); - - /* "preprocessed_text.py":762 - * '''Checks x...endx consistence''' - * - * filter_line = lambda line: type(line) in [ Do, Enddo, If, Endif, \ # <<<<<<<<<<<<<< - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda3, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_filter_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":765 - * Program, Begin_provider, End_provider, \ - * Subroutine, Function, End, Begin_doc, End_doc ] - * text = filter(filter_line, text) # <<<<<<<<<<<<<< - * - * d = { 'do' : Do, 'enddo': Enddo, - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filter_line); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filter_line); - __Pyx_GIVEREF(__pyx_v_filter_line); - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_cur_scope->__pyx_v_text); - __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_text); - __pyx_t_2 = PyObject_Call(__pyx_builtin_filter, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_text); - __Pyx_DECREF(__pyx_cur_scope->__pyx_v_text); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_cur_scope->__pyx_v_text = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":767 - * text = filter(filter_line, text) - * - * d = { 'do' : Do, 'enddo': Enddo, # <<<<<<<<<<<<<< - * 'if' : If, 'endif': Endif, - * '_doc': Begin_doc, 'end_doc': End_doc} - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__do), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__enddo), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":768 - * - * d = { 'do' : Do, 'enddo': Enddo, - * 'if' : If, 'endif': Endif, # <<<<<<<<<<<<<< - * '_doc': Begin_doc, 'end_doc': End_doc} - * assert type(text) == list - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 768; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__if), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 768; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__endif), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":769 - * d = { 'do' : Do, 'enddo': Enddo, - * 'if' : If, 'endif': Endif, - * '_doc': Begin_doc, 'end_doc': End_doc} # <<<<<<<<<<<<<< - * assert type(text) == list - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_doc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s___doc), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_doc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_2, ((PyObject *)__pyx_n_s__end_doc), __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_GIVEREF(((PyObject *)__pyx_t_2)); - __pyx_cur_scope->__pyx_v_d = ((PyObject *)__pyx_t_2); - __pyx_t_2 = 0; - - /* "preprocessed_text.py":770 - * 'if' : If, 'endif': Endif, - * '_doc': Begin_doc, 'end_doc': End_doc} - * assert type(text) == list # <<<<<<<<<<<<<< - * - * def find_matching_end_ifdo(begin,x): - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 770; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":772 - * assert type(text) == list - * - * def find_matching_end_ifdo(begin,x): # <<<<<<<<<<<<<< - * level = 1 - * for i in range(begin+1,len(text)): - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_15check_begin_end_find_matching_end_ifdo, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_find_matching_end_ifdo); - __pyx_v_find_matching_end_ifdo = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":786 - * error.fail(text[begin],"Missing 'end%s'"%(x,)) - * - * def find_matching_end_subfunpro(begin,x): # <<<<<<<<<<<<<< - * for i in range(begin+1,len(text)): - * line = text[i] - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_17preprocessed_text_15check_begin_end_1find_matching_end_subfunpro, ((PyObject*)__pyx_cur_scope), __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_find_matching_end_subfunpro); - __pyx_v_find_matching_end_subfunpro = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":796 - * - * - * level = 0 # <<<<<<<<<<<<<< - * for i,line in enumerate(text): - * if type(line) == Begin_doc: - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_v_level = __pyx_int_0; - - /* "preprocessed_text.py":797 - * - * level = 0 - * for i,line in enumerate(text): # <<<<<<<<<<<<<< - * if type(line) == Begin_doc: - * find_matching_end_ifdo(i,'_doc') - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_t_2 = __pyx_int_0; - if (PyList_CheckExact(__pyx_cur_scope->__pyx_v_text) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_text)) { - __pyx_t_1 = __pyx_cur_scope->__pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else { - __pyx_t_6 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_2; - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 797; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); - __pyx_t_2 = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":798 - * level = 0 - * for i,line in enumerate(text): - * if type(line) == Begin_doc: # <<<<<<<<<<<<<< - * find_matching_end_ifdo(i,'_doc') - * for i,line in enumerate(text): - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_doc); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 798; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":799 - * for i,line in enumerate(text): - * if type(line) == Begin_doc: - * find_matching_end_ifdo(i,'_doc') # <<<<<<<<<<<<<< - * for i,line in enumerate(text): - * if type(line) == Do: - */ - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_n_s___doc)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_n_s___doc)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s___doc)); - __pyx_t_6 = PyObject_Call(__pyx_v_find_matching_end_ifdo, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L7; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":800 - * if type(line) == Begin_doc: - * find_matching_end_ifdo(i,'_doc') - * for i,line in enumerate(text): # <<<<<<<<<<<<<< - * if type(line) == Do: - * find_matching_end_ifdo(i,'do') - */ - __Pyx_INCREF(__pyx_int_0); - __pyx_t_2 = __pyx_int_0; - if (PyList_CheckExact(__pyx_cur_scope->__pyx_v_text) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_text)) { - __pyx_t_1 = __pyx_cur_scope->__pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; - } else { - __pyx_t_6 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_6)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_6); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_INCREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_v_i); - __pyx_v_i = __pyx_t_2; - __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_2); - __pyx_t_2 = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":801 - * find_matching_end_ifdo(i,'_doc') - * for i,line in enumerate(text): - * if type(line) == Do: # <<<<<<<<<<<<<< - * find_matching_end_ifdo(i,'do') - * elif type(line) == If: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 801; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":802 - * for i,line in enumerate(text): - * if type(line) == Do: - * find_matching_end_ifdo(i,'do') # <<<<<<<<<<<<<< - * elif type(line) == If: - * find_matching_end_ifdo(i,'if') - */ - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_n_s__do)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_n_s__do)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__do)); - __pyx_t_6 = PyObject_Call(__pyx_v_find_matching_end_ifdo, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 802; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":803 - * if type(line) == Do: - * find_matching_end_ifdo(i,'do') - * elif type(line) == If: # <<<<<<<<<<<<<< - * find_matching_end_ifdo(i,'if') - * elif type(line) in [Subroutine, Function, Program]: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 803; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 803; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 803; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "preprocessed_text.py":804 - * find_matching_end_ifdo(i,'do') - * elif type(line) == If: - * find_matching_end_ifdo(i,'if') # <<<<<<<<<<<<<< - * elif type(line) in [Subroutine, Function, Program]: - * level += 1 - */ - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 804; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - __Pyx_INCREF(((PyObject *)__pyx_n_s__if)); - PyTuple_SET_ITEM(__pyx_t_7, 1, ((PyObject *)__pyx_n_s__if)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__if)); - __pyx_t_6 = PyObject_Call(__pyx_v_find_matching_end_ifdo, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 804; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":805 - * elif type(line) == If: - * find_matching_end_ifdo(i,'if') - * elif type(line) in [Subroutine, Function, Program]: # <<<<<<<<<<<<<< - * level += 1 - * find_matching_end_subfunpro(i,End) - */ - __Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_line))); - __pyx_t_6 = ((PyObject *)Py_TYPE(__pyx_v_line)); - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (!((int)__pyx_t_3)) { - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_7 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely((__pyx_t_9 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_10 = ((int)__pyx_t_9); - } else { - __pyx_t_10 = ((int)__pyx_t_3); - } - if (!__pyx_t_10) { - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)__pyx_t_6), __pyx_t_7, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_3 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_9 = ((int)__pyx_t_3); - } else { - __pyx_t_9 = __pyx_t_10; - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_10 = __pyx_t_9; - if (__pyx_t_10) { - - /* "preprocessed_text.py":806 - * find_matching_end_ifdo(i,'if') - * elif type(line) in [Subroutine, Function, Program]: - * level += 1 # <<<<<<<<<<<<<< - * find_matching_end_subfunpro(i,End) - * elif type(line) == Begin_provider: - */ - __pyx_t_6 = PyNumber_InPlaceAdd(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 806; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":807 - * elif type(line) in [Subroutine, Function, Program]: - * level += 1 - * find_matching_end_subfunpro(i,End) # <<<<<<<<<<<<<< - * elif type(line) == Begin_provider: - * level += 1 - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_v_find_matching_end_subfunpro, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":808 - * level += 1 - * find_matching_end_subfunpro(i,End) - * elif type(line) == Begin_provider: # <<<<<<<<<<<<<< - * level += 1 - * find_matching_end_subfunpro(i,End_provider) - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_10) { - - /* "preprocessed_text.py":809 - * find_matching_end_subfunpro(i,End) - * elif type(line) == Begin_provider: - * level += 1 # <<<<<<<<<<<<<< - * find_matching_end_subfunpro(i,End_provider) - * elif type(line) == End: - */ - __pyx_t_8 = PyNumber_InPlaceAdd(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 809; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_8; - __pyx_t_8 = 0; - - /* "preprocessed_text.py":810 - * elif type(line) == Begin_provider: - * level += 1 - * find_matching_end_subfunpro(i,End_provider) # <<<<<<<<<<<<<< - * elif type(line) == End: - * level -= 1 - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i); - __Pyx_GIVEREF(__pyx_v_i); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_8); - __Pyx_GIVEREF(__pyx_t_8); - __pyx_t_8 = 0; - __pyx_t_8 = PyObject_Call(__pyx_v_find_matching_end_subfunpro, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":811 - * level += 1 - * find_matching_end_subfunpro(i,End_provider) - * elif type(line) == End: # <<<<<<<<<<<<<< - * level -= 1 - * elif type(line) == End_provider: - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_8, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 811; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_10) { - - /* "preprocessed_text.py":812 - * find_matching_end_subfunpro(i,End_provider) - * elif type(line) == End: - * level -= 1 # <<<<<<<<<<<<<< - * elif type(line) == End_provider: - * level -= 1 - */ - __pyx_t_6 = PyNumber_InPlaceSubtract(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 812; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L10; - } - - /* "preprocessed_text.py":813 - * elif type(line) == End: - * level -= 1 - * elif type(line) == End_provider: # <<<<<<<<<<<<<< - * level -= 1 - * if level < 0: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_8 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 813; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_10) { - - /* "preprocessed_text.py":814 - * level -= 1 - * elif type(line) == End_provider: - * level -= 1 # <<<<<<<<<<<<<< - * if level < 0: - * error.fail(line,"Beginning of block not matched") - */ - __pyx_t_8 = PyNumber_InPlaceSubtract(__pyx_v_level, __pyx_int_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 814; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_v_level); - __pyx_v_level = __pyx_t_8; - __pyx_t_8 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "preprocessed_text.py":815 - * elif type(line) == End_provider: - * level -= 1 - * if level < 0: # <<<<<<<<<<<<<< - * error.fail(line,"Beginning of block not matched") - * - */ - __pyx_t_8 = PyObject_RichCompare(__pyx_v_level, __pyx_int_0, Py_LT); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 815; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 815; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (__pyx_t_10) { - - /* "preprocessed_text.py":816 - * level -= 1 - * if level < 0: - * error.fail(line,"Beginning of block not matched") # <<<<<<<<<<<<<< - * - * return True - */ - __pyx_t_8 = __Pyx_GetName(__pyx_m, __pyx_n_s__error); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_8, __pyx_n_s__fail); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_8)); - __Pyx_INCREF(__pyx_v_line); - PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_line); - __Pyx_GIVEREF(__pyx_v_line); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_140)); - PyTuple_SET_ITEM(__pyx_t_8, 1, ((PyObject *)__pyx_kp_s_140)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_140)); - __pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_8), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_8)); __pyx_t_8 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L11; - } - __pyx_L11:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":818 - * error.fail(line,"Beginning of block not matched") - * - * return True # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __pyx_t_2 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 818; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_r = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("preprocessed_text.check_begin_end", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filter_line); - __Pyx_XDECREF(__pyx_v_find_matching_end_ifdo); - __Pyx_XDECREF(__pyx_v_find_matching_end_subfunpro); - __Pyx_XDECREF(__pyx_v_level); - __Pyx_XDECREF(__pyx_v_i); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":821 - * - * ###################################################################### - * def remove_ifdefs(text): # <<<<<<<<<<<<<< - * assert type(text) == list - * result = [] - */ - -static PyObject *__pyx_pf_17preprocessed_text_13remove_ifdefs(PyObject *__pyx_self, PyObject *__pyx_v_text); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_13remove_ifdefs = {__Pyx_NAMESTR("remove_ifdefs"), (PyCFunction)__pyx_pf_17preprocessed_text_13remove_ifdefs, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_13remove_ifdefs(PyObject *__pyx_self, PyObject *__pyx_v_text) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_do_print = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_t_7; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("remove_ifdefs"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":822 - * ###################################################################### - * def remove_ifdefs(text): - * assert type(text) == list # <<<<<<<<<<<<<< - * result = [] - * do_print = True - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_text)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 822; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "preprocessed_text.py":823 - * def remove_ifdefs(text): - * assert type(text) == list - * result = [] # <<<<<<<<<<<<<< - * do_print = True - * for line in text: - */ - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 823; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":824 - * assert type(text) == list - * result = [] - * do_print = True # <<<<<<<<<<<<<< - * for line in text: - * if type(line) == Irp_If: - */ - __pyx_t_1 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 824; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_do_print = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":825 - * result = [] - * do_print = True - * for line in text: # <<<<<<<<<<<<<< - * if type(line) == Irp_If: - * var = line.text.split()[1] - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else { - __pyx_t_5 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 825; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":826 - * do_print = True - * for line in text: - * if type(line) == Irp_If: # <<<<<<<<<<<<<< - * var = line.text.split()[1] - * do_print = var in command_line.defined - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_If); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 826; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":827 - * for line in text: - * if type(line) == Irp_If: - * var = line.text.split()[1] # <<<<<<<<<<<<<< - * do_print = var in command_line.defined - * elif type(line) == Irp_Else: - */ - __pyx_t_6 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__split); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_6, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_5) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 827; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_5; - __pyx_t_5 = 0; - - /* "preprocessed_text.py":828 - * if type(line) == Irp_If: - * var = line.text.split()[1] - * do_print = var in command_line.defined # <<<<<<<<<<<<<< - * elif type(line) == Irp_Else: - * do_print = not do_print - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__defined); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_2 = ((PySequence_Contains(__pyx_t_6, __pyx_v_var))); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 828; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_do_print); - __pyx_v_do_print = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L7; - } - - /* "preprocessed_text.py":829 - * var = line.text.split()[1] - * do_print = var in command_line.defined - * elif type(line) == Irp_Else: # <<<<<<<<<<<<<< - * do_print = not do_print - * elif type(line) == Irp_Endif: - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_Else); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_5 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_6, Py_EQ); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 829; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":830 - * do_print = var in command_line.defined - * elif type(line) == Irp_Else: - * do_print = not do_print # <<<<<<<<<<<<<< - * elif type(line) == Irp_Endif: - * do_print = True - */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_do_print); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_t_5 = __Pyx_PyBool_FromLong((!__pyx_t_2)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_v_do_print); - __pyx_v_do_print = __pyx_t_5; - __pyx_t_5 = 0; - goto __pyx_L7; - } - - /* "preprocessed_text.py":831 - * elif type(line) == Irp_Else: - * do_print = not do_print - * elif type(line) == Irp_Endif: # <<<<<<<<<<<<<< - * do_print = True - * else: - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_Endif); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), __pyx_t_5, Py_EQ); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (__pyx_t_2) { - - /* "preprocessed_text.py":832 - * do_print = not do_print - * elif type(line) == Irp_Endif: - * do_print = True # <<<<<<<<<<<<<< - * else: - * if do_print: - */ - __pyx_t_6 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 832; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_v_do_print); - __pyx_v_do_print = __pyx_t_6; - __pyx_t_6 = 0; - goto __pyx_L7; - } - /*else*/ { - - /* "preprocessed_text.py":834 - * do_print = True - * else: - * if do_print: # <<<<<<<<<<<<<< - * result.append(line) - * return result - */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_do_print); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 834; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "preprocessed_text.py":835 - * else: - * if do_print: - * result.append(line) # <<<<<<<<<<<<<< - * return result - * - */ - if (unlikely(((PyObject *)__pyx_v_result) == Py_None)) { - PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_7 = PyList_Append(__pyx_v_result, __pyx_v_line); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L8; - } - __pyx_L8:; - } - __pyx_L7:; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":836 - * if do_print: - * result.append(line) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("preprocessed_text.remove_ifdefs", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_do_print); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":839 - * - * ###################################################################### - * def create_preprocessed_text(filename): # <<<<<<<<<<<<<< - * file = open(filename,"r") - * lines = file.readlines() - */ - -static PyObject *__pyx_pf_17preprocessed_text_14create_preprocessed_text(PyObject *__pyx_self, PyObject *__pyx_v_filename); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_14create_preprocessed_text = {__Pyx_NAMESTR("create_preprocessed_text"), (PyCFunction)__pyx_pf_17preprocessed_text_14create_preprocessed_text, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_14create_preprocessed_text(PyObject *__pyx_self, PyObject *__pyx_v_filename) { - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_lines = NULL; - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_fortran_form = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create_preprocessed_text"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":840 - * ###################################################################### - * def create_preprocessed_text(filename): - * file = open(filename,"r") # <<<<<<<<<<<<<< - * lines = file.readlines() - * file.close() - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_2 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 840; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_file = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":841 - * def create_preprocessed_text(filename): - * file = open(filename,"r") - * lines = file.readlines() # <<<<<<<<<<<<<< - * file.close() - * result = get_text(lines,filename) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__readlines); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 841; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_lines = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":842 - * file = open(filename,"r") - * lines = file.readlines() - * file.close() # <<<<<<<<<<<<<< - * result = get_text(lines,filename) - * result = execute_templates(result) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 842; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":843 - * lines = file.readlines() - * file.close() - * result = get_text(lines,filename) # <<<<<<<<<<<<<< - * result = execute_templates(result) - * result = execute_shell(result) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__get_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_lines); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_lines); - __Pyx_GIVEREF(__pyx_v_lines); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 843; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":844 - * file.close() - * result = get_text(lines,filename) - * result = execute_templates(result) # <<<<<<<<<<<<<< - * result = execute_shell(result) - * fortran_form = form(result) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__execute_templates); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 844; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":845 - * result = get_text(lines,filename) - * result = execute_templates(result) - * result = execute_shell(result) # <<<<<<<<<<<<<< - * fortran_form = form(result) - * result = remove_ifdefs(result) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__execute_shell); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":846 - * result = execute_templates(result) - * result = execute_shell(result) - * fortran_form = form(result) # <<<<<<<<<<<<<< - * result = remove_ifdefs(result) - * result = remove_comments(result,fortran_form) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__form); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 846; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 846; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 846; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_v_fortran_form = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":847 - * result = execute_shell(result) - * fortran_form = form(result) - * result = remove_ifdefs(result) # <<<<<<<<<<<<<< - * result = remove_comments(result,fortran_form) - * result = remove_continuation(result,fortran_form) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__remove_ifdefs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":848 - * fortran_form = form(result) - * result = remove_ifdefs(result) - * result = remove_comments(result,fortran_form) # <<<<<<<<<<<<<< - * result = remove_continuation(result,fortran_form) - * result = add_operators(result) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__remove_comments); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __Pyx_INCREF(__pyx_v_fortran_form); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_fortran_form); - __Pyx_GIVEREF(__pyx_v_fortran_form); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 848; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":849 - * result = remove_ifdefs(result) - * result = remove_comments(result,fortran_form) - * result = remove_continuation(result,fortran_form) # <<<<<<<<<<<<<< - * result = add_operators(result) - * result = change_includes(result) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__remove_continuation); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 849; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 849; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __Pyx_INCREF(__pyx_v_fortran_form); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_fortran_form); - __Pyx_GIVEREF(__pyx_v_fortran_form); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 849; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":850 - * result = remove_comments(result,fortran_form) - * result = remove_continuation(result,fortran_form) - * result = add_operators(result) # <<<<<<<<<<<<<< - * result = change_includes(result) - * result = change_single_line_ifs(result) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__add_operators); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 850; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 850; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 850; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":851 - * result = remove_continuation(result,fortran_form) - * result = add_operators(result) - * result = change_includes(result) # <<<<<<<<<<<<<< - * result = change_single_line_ifs(result) - * result = process_old_style_do(result) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__change_includes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 851; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 851; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 851; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":852 - * result = add_operators(result) - * result = change_includes(result) - * result = change_single_line_ifs(result) # <<<<<<<<<<<<<< - * result = process_old_style_do(result) - * result = irp_simple_statements(result) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s_141); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 852; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 852; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 852; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":853 - * result = change_includes(result) - * result = change_single_line_ifs(result) - * result = process_old_style_do(result) # <<<<<<<<<<<<<< - * result = irp_simple_statements(result) - * check_begin_end(result) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s_142); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 853; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 853; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 853; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_3; - __pyx_t_3 = 0; - - /* "preprocessed_text.py":854 - * result = change_single_line_ifs(result) - * result = process_old_style_do(result) - * result = irp_simple_statements(result) # <<<<<<<<<<<<<< - * check_begin_end(result) - * return result - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s_143); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 854; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 854; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_2 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 854; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_result); - __pyx_v_result = __pyx_t_2; - __pyx_t_2 = 0; - - /* "preprocessed_text.py":855 - * result = process_old_style_do(result) - * result = irp_simple_statements(result) - * check_begin_end(result) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__check_begin_end); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_result); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result); - __Pyx_GIVEREF(__pyx_v_result); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "preprocessed_text.py":856 - * result = irp_simple_statements(result) - * check_begin_end(result) - * return result # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(__pyx_v_result); - __pyx_r = __pyx_v_result; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("preprocessed_text.create_preprocessed_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_lines); - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_fortran_form); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "preprocessed_text.py":863 - * - * ###################################################################### - * def debug(): # <<<<<<<<<<<<<< - * for filename, txt in preprocessed_text: - * if filename == 'invert.irp.f': - */ - -static PyObject *__pyx_pf_17preprocessed_text_15debug(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_17preprocessed_text_15debug = {__Pyx_NAMESTR("debug"), (PyCFunction)__pyx_pf_17preprocessed_text_15debug, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_17preprocessed_text_15debug(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_t_9; - Py_ssize_t __pyx_t_10; - PyObject *(*__pyx_t_11)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("debug"); - __pyx_self = __pyx_self; - - /* "preprocessed_text.py":864 - * ###################################################################### - * def debug(): - * for filename, txt in preprocessed_text: # <<<<<<<<<<<<<< - * if filename == 'invert.irp.f': - * print "=== "+filename+" ===" - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_6; - __pyx_t_6 = 0; - - /* "preprocessed_text.py":865 - * def debug(): - * for filename, txt in preprocessed_text: - * if filename == 'invert.irp.f': # <<<<<<<<<<<<<< - * print "=== "+filename+" ===" - * for line in txt: - */ - __pyx_t_9 = __Pyx_PyString_Equals(__pyx_v_filename, ((PyObject *)__pyx_kp_s_144), Py_EQ); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 865; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_9) { - - /* "preprocessed_text.py":866 - * for filename, txt in preprocessed_text: - * if filename == 'invert.irp.f': - * print "=== "+filename+" ===" # <<<<<<<<<<<<<< - * for line in txt: - * print line - */ - __pyx_t_1 = PyNumber_Add(((PyObject *)__pyx_kp_s_145), __pyx_v_filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 866; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_146)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 866; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__Pyx_PrintOne(0, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 866; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "preprocessed_text.py":867 - * if filename == 'invert.irp.f': - * print "=== "+filename+" ===" - * for line in txt: # <<<<<<<<<<<<<< - * print line - * print irpf90_files - */ - if (PyList_CheckExact(__pyx_v_txt) || PyTuple_CheckExact(__pyx_v_txt)) { - __pyx_t_6 = __pyx_v_txt; __Pyx_INCREF(__pyx_t_6); __pyx_t_10 = 0; - __pyx_t_11 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_txt); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_11 = Py_TYPE(__pyx_t_6)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_6)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_6)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_6)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; - } else { - __pyx_t_1 = __pyx_t_11(__pyx_t_6); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_1; - __pyx_t_1 = 0; - - /* "preprocessed_text.py":868 - * print "=== "+filename+" ===" - * for line in txt: - * print line # <<<<<<<<<<<<<< - * print irpf90_files - * - */ - if (__Pyx_PrintOne(0, __pyx_v_line) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L9; - } - __pyx_L9:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":869 - * for line in txt: - * print line - * print irpf90_files # <<<<<<<<<<<<<< - * - * if __name__ == '__main__': - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_files); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 869; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_PrintOne(0, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 869; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("preprocessed_text.debug", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyObject *__pyx_tp_new_17preprocessed_text___pyx_scope_struct__execute_templates(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)o); - p->__pyx_v_fail = 0; - return o; -} - -static void __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct__execute_templates(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)o; - Py_XDECREF(p->__pyx_v_fail); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct__execute_templates(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)o; - if (p->__pyx_v_fail) { - e = (*v)(p->__pyx_v_fail, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_17preprocessed_text___pyx_scope_struct__execute_templates(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_fail); - p->__pyx_v_fail = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_17preprocessed_text___pyx_scope_struct__execute_templates[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct__execute_templates = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct__execute_templates = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct__execute_templates = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct__execute_templates = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_17preprocessed_text___pyx_scope_struct__execute_templates = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("preprocessed_text.__pyx_scope_struct__execute_templates"), /*tp_name*/ - sizeof(struct __pyx_obj_17preprocessed_text___pyx_scope_struct__execute_templates), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct__execute_templates, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct__execute_templates, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct__execute_templates, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct__execute_templates, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct__execute_templates, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct__execute_templates, /*tp_traverse*/ - __pyx_tp_clear_17preprocessed_text___pyx_scope_struct__execute_templates, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_17preprocessed_text___pyx_scope_struct__execute_templates, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_17preprocessed_text___pyx_scope_struct__execute_templates, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)o); - p->__pyx_v_debug_conditions = 0; - p->__pyx_v_process_irp_rw = 0; - p->__pyx_v_process_subroutine = 0; - return o; -} - -static void __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)o; - Py_XDECREF(p->__pyx_v_debug_conditions); - Py_XDECREF(p->__pyx_v_process_irp_rw); - Py_XDECREF(p->__pyx_v_process_subroutine); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)o; - if (p->__pyx_v_debug_conditions) { - e = (*v)(p->__pyx_v_debug_conditions, a); if (e) return e; - } - if (p->__pyx_v_process_irp_rw) { - e = (*v)(p->__pyx_v_process_irp_rw, a); if (e) return e; - } - if (p->__pyx_v_process_subroutine) { - e = (*v)(p->__pyx_v_process_subroutine, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_debug_conditions); - p->__pyx_v_debug_conditions = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_process_irp_rw); - p->__pyx_v_process_irp_rw = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_process_subroutine); - p->__pyx_v_process_subroutine = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_1_irp_simple_statements = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_1_irp_simple_statements = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_1_irp_simple_statements = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_1_irp_simple_statements = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("preprocessed_text.__pyx_scope_struct_1_irp_simple_statements"), /*tp_name*/ - sizeof(struct __pyx_obj_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_1_irp_simple_statements, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_1_irp_simple_statements, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_1_irp_simple_statements, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_1_irp_simple_statements, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, /*tp_traverse*/ - __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_17preprocessed_text___pyx_scope_struct_2_process_old_style_do(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)o); - p->__pyx_v_text = 0; - return o; -} - -static void __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_2_process_old_style_do(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)o; - Py_XDECREF(p->__pyx_v_text); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_2_process_old_style_do(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)o; - if (p->__pyx_v_text) { - e = (*v)(p->__pyx_v_text, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_2_process_old_style_do(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_text); - p->__pyx_v_text = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_17preprocessed_text___pyx_scope_struct_2_process_old_style_do[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_2_process_old_style_do = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_2_process_old_style_do = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_2_process_old_style_do = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_2_process_old_style_do = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_17preprocessed_text___pyx_scope_struct_2_process_old_style_do = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("preprocessed_text.__pyx_scope_struct_2_process_old_style_do"), /*tp_name*/ - sizeof(struct __pyx_obj_17preprocessed_text___pyx_scope_struct_2_process_old_style_do), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_2_process_old_style_do, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_2_process_old_style_do, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_2_process_old_style_do, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_2_process_old_style_do, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, /*tp_traverse*/ - __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_17preprocessed_text___pyx_scope_struct_2_process_old_style_do, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyObject *__pyx_tp_new_17preprocessed_text___pyx_scope_struct_3_check_begin_end(PyTypeObject *t, PyObject *a, PyObject *k) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *p; - PyObject *o = (*t->tp_alloc)(t, 0); - if (!o) return 0; - p = ((struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)o); - p->__pyx_v_d = 0; - p->__pyx_v_text = 0; - return o; -} - -static void __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_3_check_begin_end(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)o; - Py_XDECREF(p->__pyx_v_d); - Py_XDECREF(p->__pyx_v_text); - (*Py_TYPE(o)->tp_free)(o); -} - -static int __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_3_check_begin_end(PyObject *o, visitproc v, void *a) { - int e; - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)o; - if (p->__pyx_v_d) { - e = (*v)(p->__pyx_v_d, a); if (e) return e; - } - if (p->__pyx_v_text) { - e = (*v)(p->__pyx_v_text, a); if (e) return e; - } - return 0; -} - -static int __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_3_check_begin_end(PyObject *o) { - struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *p = (struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end *)o; - PyObject* tmp; - tmp = ((PyObject*)p->__pyx_v_d); - p->__pyx_v_d = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - tmp = ((PyObject*)p->__pyx_v_text); - p->__pyx_v_text = Py_None; Py_INCREF(Py_None); - Py_XDECREF(tmp); - return 0; -} - -static PyMethodDef __pyx_methods_17preprocessed_text___pyx_scope_struct_3_check_begin_end[] = { - {0, 0, 0, 0} -}; - -static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct_3_check_begin_end = { - 0, /*nb_add*/ - 0, /*nb_subtract*/ - 0, /*nb_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_divide*/ - #endif - 0, /*nb_remainder*/ - 0, /*nb_divmod*/ - 0, /*nb_power*/ - 0, /*nb_negative*/ - 0, /*nb_positive*/ - 0, /*nb_absolute*/ - 0, /*nb_nonzero*/ - 0, /*nb_invert*/ - 0, /*nb_lshift*/ - 0, /*nb_rshift*/ - 0, /*nb_and*/ - 0, /*nb_xor*/ - 0, /*nb_or*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_coerce*/ - #endif - 0, /*nb_int*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_long*/ - #else - 0, /*reserved*/ - #endif - 0, /*nb_float*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_oct*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*nb_hex*/ - #endif - 0, /*nb_inplace_add*/ - 0, /*nb_inplace_subtract*/ - 0, /*nb_inplace_multiply*/ - #if PY_MAJOR_VERSION < 3 - 0, /*nb_inplace_divide*/ - #endif - 0, /*nb_inplace_remainder*/ - 0, /*nb_inplace_power*/ - 0, /*nb_inplace_lshift*/ - 0, /*nb_inplace_rshift*/ - 0, /*nb_inplace_and*/ - 0, /*nb_inplace_xor*/ - 0, /*nb_inplace_or*/ - 0, /*nb_floor_divide*/ - 0, /*nb_true_divide*/ - 0, /*nb_inplace_floor_divide*/ - 0, /*nb_inplace_true_divide*/ - #if PY_VERSION_HEX >= 0x02050000 - 0, /*nb_index*/ - #endif -}; - -static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct_3_check_begin_end = { - 0, /*sq_length*/ - 0, /*sq_concat*/ - 0, /*sq_repeat*/ - 0, /*sq_item*/ - 0, /*sq_slice*/ - 0, /*sq_ass_item*/ - 0, /*sq_ass_slice*/ - 0, /*sq_contains*/ - 0, /*sq_inplace_concat*/ - 0, /*sq_inplace_repeat*/ -}; - -static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct_3_check_begin_end = { - 0, /*mp_length*/ - 0, /*mp_subscript*/ - 0, /*mp_ass_subscript*/ -}; - -static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct_3_check_begin_end = { - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getreadbuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getwritebuffer*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getsegcount*/ - #endif - #if PY_MAJOR_VERSION < 3 - 0, /*bf_getcharbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_getbuffer*/ - #endif - #if PY_VERSION_HEX >= 0x02060000 - 0, /*bf_releasebuffer*/ - #endif -}; - -static PyTypeObject __pyx_type_17preprocessed_text___pyx_scope_struct_3_check_begin_end = { - PyVarObject_HEAD_INIT(0, 0) - __Pyx_NAMESTR("preprocessed_text.__pyx_scope_struct_3_check_begin_end"), /*tp_name*/ - sizeof(struct __pyx_obj_17preprocessed_text___pyx_scope_struct_3_check_begin_end), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - __pyx_tp_dealloc_17preprocessed_text___pyx_scope_struct_3_check_begin_end, /*tp_dealloc*/ - 0, /*tp_print*/ - 0, /*tp_getattr*/ - 0, /*tp_setattr*/ - #if PY_MAJOR_VERSION < 3 - 0, /*tp_compare*/ - #else - 0, /*reserved*/ - #endif - 0, /*tp_repr*/ - &__pyx_tp_as_number___pyx_scope_struct_3_check_begin_end, /*tp_as_number*/ - &__pyx_tp_as_sequence___pyx_scope_struct_3_check_begin_end, /*tp_as_sequence*/ - &__pyx_tp_as_mapping___pyx_scope_struct_3_check_begin_end, /*tp_as_mapping*/ - 0, /*tp_hash*/ - 0, /*tp_call*/ - 0, /*tp_str*/ - 0, /*tp_getattro*/ - 0, /*tp_setattro*/ - &__pyx_tp_as_buffer___pyx_scope_struct_3_check_begin_end, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ - 0, /*tp_doc*/ - __pyx_tp_traverse_17preprocessed_text___pyx_scope_struct_3_check_begin_end, /*tp_traverse*/ - __pyx_tp_clear_17preprocessed_text___pyx_scope_struct_3_check_begin_end, /*tp_clear*/ - 0, /*tp_richcompare*/ - 0, /*tp_weaklistoffset*/ - 0, /*tp_iter*/ - 0, /*tp_iternext*/ - __pyx_methods_17preprocessed_text___pyx_scope_struct_3_check_begin_end, /*tp_methods*/ - 0, /*tp_members*/ - 0, /*tp_getset*/ - 0, /*tp_base*/ - 0, /*tp_dict*/ - 0, /*tp_descr_get*/ - 0, /*tp_descr_set*/ - 0, /*tp_dictoffset*/ - 0, /*tp_init*/ - 0, /*tp_alloc*/ - __pyx_tp_new_17preprocessed_text___pyx_scope_struct_3_check_begin_end, /*tp_new*/ - 0, /*tp_free*/ - 0, /*tp_is_gc*/ - 0, /*tp_bases*/ - 0, /*tp_mro*/ - 0, /*tp_cache*/ - 0, /*tp_subclasses*/ - 0, /*tp_weaklist*/ - 0, /*tp_del*/ - #if PY_VERSION_HEX >= 0x02060000 - 0, /*tp_version_tag*/ - #endif -}; - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - "__pyx_scope_struct_3_check_begin_end", - "__pyx_scope_struct__execute_templates", - "__pyx_scope_struct_2_process_old_style_do", - "__pyx_scope_struct_1_irp_simple_statements", - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("preprocessed_text"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_n_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 1}, - {&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0}, - {&__pyx_kp_s_100, __pyx_k_100, sizeof(__pyx_k_100), 0, 0, 1, 0}, - {&__pyx_kp_s_101, __pyx_k_101, sizeof(__pyx_k_101), 0, 0, 1, 0}, - {&__pyx_kp_s_102, __pyx_k_102, sizeof(__pyx_k_102), 0, 0, 1, 0}, - {&__pyx_kp_s_106, __pyx_k_106, sizeof(__pyx_k_106), 0, 0, 1, 0}, - {&__pyx_kp_s_107, __pyx_k_107, sizeof(__pyx_k_107), 0, 0, 1, 0}, - {&__pyx_kp_s_108, __pyx_k_108, sizeof(__pyx_k_108), 0, 0, 1, 0}, - {&__pyx_kp_s_112, __pyx_k_112, sizeof(__pyx_k_112), 0, 0, 1, 0}, - {&__pyx_kp_s_113, __pyx_k_113, sizeof(__pyx_k_113), 0, 0, 1, 0}, - {&__pyx_kp_s_114, __pyx_k_114, sizeof(__pyx_k_114), 0, 0, 1, 0}, - {&__pyx_kp_s_115, __pyx_k_115, sizeof(__pyx_k_115), 0, 0, 1, 0}, - {&__pyx_kp_s_116, __pyx_k_116, sizeof(__pyx_k_116), 0, 0, 1, 0}, - {&__pyx_kp_s_117, __pyx_k_117, sizeof(__pyx_k_117), 0, 0, 1, 0}, - {&__pyx_kp_s_118, __pyx_k_118, sizeof(__pyx_k_118), 0, 0, 1, 0}, - {&__pyx_kp_s_119, __pyx_k_119, sizeof(__pyx_k_119), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_120, __pyx_k_120, sizeof(__pyx_k_120), 0, 0, 1, 0}, - {&__pyx_kp_s_121, __pyx_k_121, sizeof(__pyx_k_121), 0, 0, 1, 0}, - {&__pyx_kp_s_122, __pyx_k_122, sizeof(__pyx_k_122), 0, 0, 1, 0}, - {&__pyx_kp_s_123, __pyx_k_123, sizeof(__pyx_k_123), 0, 0, 1, 0}, - {&__pyx_kp_s_124, __pyx_k_124, sizeof(__pyx_k_124), 0, 0, 1, 0}, - {&__pyx_kp_s_127, __pyx_k_127, sizeof(__pyx_k_127), 0, 0, 1, 0}, - {&__pyx_kp_s_128, __pyx_k_128, sizeof(__pyx_k_128), 0, 0, 1, 0}, - {&__pyx_kp_s_129, __pyx_k_129, sizeof(__pyx_k_129), 0, 0, 1, 0}, - {&__pyx_kp_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 0}, - {&__pyx_kp_s_130, __pyx_k_130, sizeof(__pyx_k_130), 0, 0, 1, 0}, - {&__pyx_kp_s_134, __pyx_k_134, sizeof(__pyx_k_134), 0, 0, 1, 0}, - {&__pyx_kp_s_135, __pyx_k_135, sizeof(__pyx_k_135), 0, 0, 1, 0}, - {&__pyx_kp_s_136, __pyx_k_136, sizeof(__pyx_k_136), 0, 0, 1, 0}, - {&__pyx_kp_s_137, __pyx_k_137, sizeof(__pyx_k_137), 0, 0, 1, 0}, - {&__pyx_kp_s_138, __pyx_k_138, sizeof(__pyx_k_138), 0, 0, 1, 0}, - {&__pyx_kp_s_139, __pyx_k_139, sizeof(__pyx_k_139), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_140, __pyx_k_140, sizeof(__pyx_k_140), 0, 0, 1, 0}, - {&__pyx_n_s_141, __pyx_k_141, sizeof(__pyx_k_141), 0, 0, 1, 1}, - {&__pyx_n_s_142, __pyx_k_142, sizeof(__pyx_k_142), 0, 0, 1, 1}, - {&__pyx_n_s_143, __pyx_k_143, sizeof(__pyx_k_143), 0, 0, 1, 1}, - {&__pyx_kp_s_144, __pyx_k_144, sizeof(__pyx_k_144), 0, 0, 1, 0}, - {&__pyx_kp_s_145, __pyx_k_145, sizeof(__pyx_k_145), 0, 0, 1, 0}, - {&__pyx_kp_s_146, __pyx_k_146, sizeof(__pyx_k_146), 0, 0, 1, 0}, - {&__pyx_n_s_147, __pyx_k_147, sizeof(__pyx_k_147), 0, 0, 1, 1}, - {&__pyx_kp_s_148, __pyx_k_148, sizeof(__pyx_k_148), 0, 0, 1, 0}, - {&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0}, - {&__pyx_kp_s_150, __pyx_k_150, sizeof(__pyx_k_150), 0, 0, 1, 0}, - {&__pyx_kp_s_152, __pyx_k_152, sizeof(__pyx_k_152), 0, 0, 1, 0}, - {&__pyx_kp_s_154, __pyx_k_154, sizeof(__pyx_k_154), 0, 0, 1, 0}, - {&__pyx_kp_s_156, __pyx_k_156, sizeof(__pyx_k_156), 0, 0, 1, 0}, - {&__pyx_kp_s_158, __pyx_k_158, sizeof(__pyx_k_158), 0, 0, 1, 0}, - {&__pyx_kp_s_16, __pyx_k_16, sizeof(__pyx_k_16), 0, 0, 1, 0}, - {&__pyx_kp_s_160, __pyx_k_160, sizeof(__pyx_k_160), 0, 0, 1, 0}, - {&__pyx_kp_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 0}, - {&__pyx_kp_s_18, __pyx_k_18, sizeof(__pyx_k_18), 0, 0, 1, 0}, - {&__pyx_kp_s_19, __pyx_k_19, sizeof(__pyx_k_19), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_20, __pyx_k_20, sizeof(__pyx_k_20), 0, 0, 1, 0}, - {&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0}, - {&__pyx_kp_s_22, __pyx_k_22, sizeof(__pyx_k_22), 0, 0, 1, 0}, - {&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0}, - {&__pyx_kp_s_25, __pyx_k_25, sizeof(__pyx_k_25), 0, 0, 1, 0}, - {&__pyx_kp_s_26, __pyx_k_26, sizeof(__pyx_k_26), 0, 0, 1, 0}, - {&__pyx_kp_s_28, __pyx_k_28, sizeof(__pyx_k_28), 0, 0, 1, 0}, - {&__pyx_kp_s_29, __pyx_k_29, sizeof(__pyx_k_29), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_30, __pyx_k_30, sizeof(__pyx_k_30), 0, 0, 1, 0}, - {&__pyx_kp_s_32, __pyx_k_32, sizeof(__pyx_k_32), 0, 0, 1, 0}, - {&__pyx_kp_s_33, __pyx_k_33, sizeof(__pyx_k_33), 0, 0, 1, 0}, - {&__pyx_kp_s_35, __pyx_k_35, sizeof(__pyx_k_35), 0, 0, 1, 0}, - {&__pyx_kp_s_37, __pyx_k_37, sizeof(__pyx_k_37), 0, 0, 1, 0}, - {&__pyx_kp_s_38, __pyx_k_38, sizeof(__pyx_k_38), 0, 0, 1, 0}, - {&__pyx_kp_s_39, __pyx_k_39, sizeof(__pyx_k_39), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_40, __pyx_k_40, sizeof(__pyx_k_40), 0, 0, 1, 0}, - {&__pyx_kp_s_41, __pyx_k_41, sizeof(__pyx_k_41), 0, 0, 1, 0}, - {&__pyx_kp_s_42, __pyx_k_42, sizeof(__pyx_k_42), 0, 0, 1, 0}, - {&__pyx_kp_s_43, __pyx_k_43, sizeof(__pyx_k_43), 0, 0, 1, 0}, - {&__pyx_kp_s_44, __pyx_k_44, sizeof(__pyx_k_44), 0, 0, 1, 0}, - {&__pyx_kp_s_46, __pyx_k_46, sizeof(__pyx_k_46), 0, 0, 1, 0}, - {&__pyx_kp_s_48, __pyx_k_48, sizeof(__pyx_k_48), 0, 0, 1, 0}, - {&__pyx_kp_s_49, __pyx_k_49, sizeof(__pyx_k_49), 0, 0, 1, 0}, - {&__pyx_kp_s_50, __pyx_k_50, sizeof(__pyx_k_50), 0, 0, 1, 0}, - {&__pyx_kp_s_51, __pyx_k_51, sizeof(__pyx_k_51), 0, 0, 1, 0}, - {&__pyx_kp_s_52, __pyx_k_52, sizeof(__pyx_k_52), 0, 0, 1, 0}, - {&__pyx_kp_s_53, __pyx_k_53, sizeof(__pyx_k_53), 0, 0, 1, 0}, - {&__pyx_kp_s_54, __pyx_k_54, sizeof(__pyx_k_54), 0, 0, 1, 0}, - {&__pyx_kp_s_55, __pyx_k_55, sizeof(__pyx_k_55), 0, 0, 1, 0}, - {&__pyx_kp_s_56, __pyx_k_56, sizeof(__pyx_k_56), 0, 0, 1, 0}, - {&__pyx_kp_s_57, __pyx_k_57, sizeof(__pyx_k_57), 0, 0, 1, 0}, - {&__pyx_kp_s_58, __pyx_k_58, sizeof(__pyx_k_58), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_60, __pyx_k_60, sizeof(__pyx_k_60), 0, 0, 1, 0}, - {&__pyx_kp_s_62, __pyx_k_62, sizeof(__pyx_k_62), 0, 0, 1, 0}, - {&__pyx_kp_s_63, __pyx_k_63, sizeof(__pyx_k_63), 0, 0, 1, 0}, - {&__pyx_kp_s_64, __pyx_k_64, sizeof(__pyx_k_64), 0, 0, 1, 0}, - {&__pyx_kp_s_65, __pyx_k_65, sizeof(__pyx_k_65), 0, 0, 1, 0}, - {&__pyx_kp_s_66, __pyx_k_66, sizeof(__pyx_k_66), 0, 0, 1, 0}, - {&__pyx_kp_s_67, __pyx_k_67, sizeof(__pyx_k_67), 0, 0, 1, 0}, - {&__pyx_kp_s_68, __pyx_k_68, sizeof(__pyx_k_68), 0, 0, 1, 0}, - {&__pyx_kp_s_69, __pyx_k_69, sizeof(__pyx_k_69), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_kp_s_70, __pyx_k_70, sizeof(__pyx_k_70), 0, 0, 1, 0}, - {&__pyx_kp_s_71, __pyx_k_71, sizeof(__pyx_k_71), 0, 0, 1, 0}, - {&__pyx_kp_s_72, __pyx_k_72, sizeof(__pyx_k_72), 0, 0, 1, 0}, - {&__pyx_kp_s_73, __pyx_k_73, sizeof(__pyx_k_73), 0, 0, 1, 0}, - {&__pyx_kp_s_74, __pyx_k_74, sizeof(__pyx_k_74), 0, 0, 1, 0}, - {&__pyx_kp_s_75, __pyx_k_75, sizeof(__pyx_k_75), 0, 0, 1, 0}, - {&__pyx_kp_s_76, __pyx_k_76, sizeof(__pyx_k_76), 0, 0, 1, 0}, - {&__pyx_kp_s_77, __pyx_k_77, sizeof(__pyx_k_77), 0, 0, 1, 0}, - {&__pyx_kp_s_78, __pyx_k_78, sizeof(__pyx_k_78), 0, 0, 1, 0}, - {&__pyx_kp_s_79, __pyx_k_79, sizeof(__pyx_k_79), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_80, __pyx_k_80, sizeof(__pyx_k_80), 0, 0, 1, 0}, - {&__pyx_kp_s_81, __pyx_k_81, sizeof(__pyx_k_81), 0, 0, 1, 0}, - {&__pyx_kp_s_82, __pyx_k_82, sizeof(__pyx_k_82), 0, 0, 1, 0}, - {&__pyx_kp_s_83, __pyx_k_83, sizeof(__pyx_k_83), 0, 0, 1, 0}, - {&__pyx_kp_s_86, __pyx_k_86, sizeof(__pyx_k_86), 0, 0, 1, 0}, - {&__pyx_kp_s_87, __pyx_k_87, sizeof(__pyx_k_87), 0, 0, 1, 0}, - {&__pyx_kp_s_88, __pyx_k_88, sizeof(__pyx_k_88), 0, 0, 1, 0}, - {&__pyx_kp_s_89, __pyx_k_89, sizeof(__pyx_k_89), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_kp_s_90, __pyx_k_90, sizeof(__pyx_k_90), 0, 0, 1, 0}, - {&__pyx_kp_s_92, __pyx_k_92, sizeof(__pyx_k_92), 0, 0, 1, 0}, - {&__pyx_kp_s_93, __pyx_k_93, sizeof(__pyx_k_93), 0, 0, 1, 0}, - {&__pyx_kp_s_95, __pyx_k_95, sizeof(__pyx_k_95), 0, 0, 1, 0}, - {&__pyx_kp_s_96, __pyx_k_96, sizeof(__pyx_k_96), 0, 0, 1, 0}, - {&__pyx_kp_s_97, __pyx_k_97, sizeof(__pyx_k_97), 0, 0, 1, 0}, - {&__pyx_kp_s_98, __pyx_k_98, sizeof(__pyx_k_98), 0, 0, 1, 0}, - {&__pyx_kp_s_99, __pyx_k_99, sizeof(__pyx_k_99), 0, 0, 1, 0}, - {&__pyx_kp_s__0, __pyx_k__0, sizeof(__pyx_k__0), 0, 0, 1, 0}, - {&__pyx_n_s__Assert, __pyx_k__Assert, sizeof(__pyx_k__Assert), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_doc, __pyx_k__Begin_doc, sizeof(__pyx_k__Begin_doc), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_provider, __pyx_k__Begin_provider, sizeof(__pyx_k__Begin_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_shell, __pyx_k__Begin_shell, sizeof(__pyx_k__Begin_shell), 0, 0, 1, 1}, - {&__pyx_n_s__Begin_template, __pyx_k__Begin_template, sizeof(__pyx_k__Begin_template), 0, 0, 1, 1}, - {&__pyx_n_s__Call, __pyx_k__Call, sizeof(__pyx_k__Call), 0, 0, 1, 1}, - {&__pyx_n_s__Case, __pyx_k__Case, sizeof(__pyx_k__Case), 0, 0, 1, 1}, - {&__pyx_n_s__Cont_provider, __pyx_k__Cont_provider, sizeof(__pyx_k__Cont_provider), 0, 0, 1, 1}, - {&__pyx_n_s__Continue, __pyx_k__Continue, sizeof(__pyx_k__Continue), 0, 0, 1, 1}, - {&__pyx_n_s__Declaration, __pyx_k__Declaration, sizeof(__pyx_k__Declaration), 0, 0, 1, 1}, - {&__pyx_n_s__Directive, __pyx_k__Directive, sizeof(__pyx_k__Directive), 0, 0, 1, 1}, - {&__pyx_n_s__Do, __pyx_k__Do, sizeof(__pyx_k__Do), 0, 0, 1, 1}, - {&__pyx_n_s__Doc, __pyx_k__Doc, sizeof(__pyx_k__Doc), 0, 0, 1, 1}, - {&__pyx_n_s__Else, __pyx_k__Else, sizeof(__pyx_k__Else), 0, 0, 1, 1}, - {&__pyx_n_s__Elseif, __pyx_k__Elseif, sizeof(__pyx_k__Elseif), 0, 0, 1, 1}, - {&__pyx_n_s__Empty_line, __pyx_k__Empty_line, sizeof(__pyx_k__Empty_line), 0, 0, 1, 1}, - {&__pyx_n_s__End, __pyx_k__End, sizeof(__pyx_k__End), 0, 0, 1, 1}, - {&__pyx_n_s__End_doc, __pyx_k__End_doc, sizeof(__pyx_k__End_doc), 0, 0, 1, 1}, - {&__pyx_n_s__End_provider, __pyx_k__End_provider, sizeof(__pyx_k__End_provider), 0, 0, 1, 1}, - {&__pyx_n_s__End_select, __pyx_k__End_select, sizeof(__pyx_k__End_select), 0, 0, 1, 1}, - {&__pyx_n_s__End_shell, __pyx_k__End_shell, sizeof(__pyx_k__End_shell), 0, 0, 1, 1}, - {&__pyx_n_s__End_template, __pyx_k__End_template, sizeof(__pyx_k__End_template), 0, 0, 1, 1}, - {&__pyx_n_s__Enddo, __pyx_k__Enddo, sizeof(__pyx_k__Enddo), 0, 0, 1, 1}, - {&__pyx_n_s__Endif, __pyx_k__Endif, sizeof(__pyx_k__Endif), 0, 0, 1, 1}, - {&__pyx_n_s__Fixed_form, __pyx_k__Fixed_form, sizeof(__pyx_k__Fixed_form), 0, 0, 1, 1}, - {&__pyx_n_s__Free, __pyx_k__Free, sizeof(__pyx_k__Free), 0, 0, 1, 1}, - {&__pyx_n_s__Free_form, __pyx_k__Free_form, sizeof(__pyx_k__Free_form), 0, 0, 1, 1}, - {&__pyx_n_s__Function, __pyx_k__Function, sizeof(__pyx_k__Function), 0, 0, 1, 1}, - {&__pyx_n_s__IOError, __pyx_k__IOError, sizeof(__pyx_k__IOError), 0, 0, 1, 1}, - {&__pyx_n_s__If, __pyx_k__If, sizeof(__pyx_k__If), 0, 0, 1, 1}, - {&__pyx_n_s__Implicit, __pyx_k__Implicit, sizeof(__pyx_k__Implicit), 0, 0, 1, 1}, - {&__pyx_n_s__Include, __pyx_k__Include, sizeof(__pyx_k__Include), 0, 0, 1, 1}, - {&__pyx_n_s__IndexError, __pyx_k__IndexError, sizeof(__pyx_k__IndexError), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_Else, __pyx_k__Irp_Else, sizeof(__pyx_k__Irp_Else), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_Endif, __pyx_k__Irp_Endif, sizeof(__pyx_k__Irp_Endif), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_If, __pyx_k__Irp_If, sizeof(__pyx_k__Irp_If), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_read, __pyx_k__Irp_read, sizeof(__pyx_k__Irp_read), 0, 0, 1, 1}, - {&__pyx_n_s__Irp_write, __pyx_k__Irp_write, sizeof(__pyx_k__Irp_write), 0, 0, 1, 1}, - {&__pyx_n_s__Line, __pyx_k__Line, sizeof(__pyx_k__Line), 0, 0, 1, 1}, - {&__pyx_n_s__Missing, __pyx_k__Missing, sizeof(__pyx_k__Missing), 0, 0, 1, 1}, - {&__pyx_n_s__NoDep, __pyx_k__NoDep, sizeof(__pyx_k__NoDep), 0, 0, 1, 1}, - {&__pyx_n_s__Openmp, __pyx_k__Openmp, sizeof(__pyx_k__Openmp), 0, 0, 1, 1}, - {&__pyx_n_s__Program, __pyx_k__Program, sizeof(__pyx_k__Program), 0, 0, 1, 1}, - {&__pyx_n_s__Provide, __pyx_k__Provide, sizeof(__pyx_k__Provide), 0, 0, 1, 1}, - {&__pyx_n_s__Provide_all, __pyx_k__Provide_all, sizeof(__pyx_k__Provide_all), 0, 0, 1, 1}, - {&__pyx_n_s__Return, __pyx_k__Return, sizeof(__pyx_k__Return), 0, 0, 1, 1}, - {&__pyx_n_s__S, __pyx_k__S, sizeof(__pyx_k__S), 0, 0, 1, 1}, - {&__pyx_n_s__Select, __pyx_k__Select, sizeof(__pyx_k__Select), 0, 0, 1, 1}, - {&__pyx_n_s__Simple_line, __pyx_k__Simple_line, sizeof(__pyx_k__Simple_line), 0, 0, 1, 1}, - {&__pyx_n_s__SoftTouch, __pyx_k__SoftTouch, sizeof(__pyx_k__SoftTouch), 0, 0, 1, 1}, - {&__pyx_n_s__Subroutine, __pyx_k__Subroutine, sizeof(__pyx_k__Subroutine), 0, 0, 1, 1}, - {&__pyx_n_s__Subst, __pyx_k__Subst, sizeof(__pyx_k__Subst), 0, 0, 1, 1}, - {&__pyx_n_s__Touch, __pyx_k__Touch, sizeof(__pyx_k__Touch), 0, 0, 1, 1}, - {&__pyx_n_s__Use, __pyx_k__Use, sizeof(__pyx_k__Use), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s___doc, __pyx_k___doc, sizeof(__pyx_k___doc), 0, 0, 1, 1}, - {&__pyx_n_s__a, __pyx_k__a, sizeof(__pyx_k__a), 0, 0, 1, 1}, - {&__pyx_n_s__add_operators, __pyx_k__add_operators, sizeof(__pyx_k__add_operators), 0, 0, 1, 1}, - {&__pyx_n_s__align, __pyx_k__align, sizeof(__pyx_k__align), 0, 0, 1, 1}, - {&__pyx_n_s__assert, __pyx_k__assert, sizeof(__pyx_k__assert), 0, 0, 1, 1}, - {&__pyx_n_s__b, __pyx_k__b, sizeof(__pyx_k__b), 0, 0, 1, 1}, - {&__pyx_n_s__begin, __pyx_k__begin, sizeof(__pyx_k__begin), 0, 0, 1, 1}, - {&__pyx_n_s__begin_doc, __pyx_k__begin_doc, sizeof(__pyx_k__begin_doc), 0, 0, 1, 1}, - {&__pyx_n_s__begin_provider, __pyx_k__begin_provider, sizeof(__pyx_k__begin_provider), 0, 0, 1, 1}, - {&__pyx_n_s__begin_shell, __pyx_k__begin_shell, sizeof(__pyx_k__begin_shell), 0, 0, 1, 1}, - {&__pyx_n_s__begin_template, __pyx_k__begin_template, sizeof(__pyx_k__begin_template), 0, 0, 1, 1}, - {&__pyx_n_s__call, __pyx_k__call, sizeof(__pyx_k__call), 0, 0, 1, 1}, - {&__pyx_n_s__case, __pyx_k__case, sizeof(__pyx_k__case), 0, 0, 1, 1}, - {&__pyx_n_s__change_includes, __pyx_k__change_includes, sizeof(__pyx_k__change_includes), 0, 0, 1, 1}, - {&__pyx_n_s__check_begin_end, __pyx_k__check_begin_end, sizeof(__pyx_k__check_begin_end), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__compile, __pyx_k__compile, sizeof(__pyx_k__compile), 0, 0, 1, 1}, - {&__pyx_n_s__continue, __pyx_k__continue, sizeof(__pyx_k__continue), 0, 0, 1, 1}, - {&__pyx_n_s__debug, __pyx_k__debug, sizeof(__pyx_k__debug), 0, 0, 1, 1}, - {&__pyx_n_s__defined, __pyx_k__defined, sizeof(__pyx_k__defined), 0, 0, 1, 1}, - {&__pyx_n_s__directives, __pyx_k__directives, sizeof(__pyx_k__directives), 0, 0, 1, 1}, - {&__pyx_n_s__do, __pyx_k__do, sizeof(__pyx_k__do), 0, 0, 1, 1}, - {&__pyx_n_s__do_assert, __pyx_k__do_assert, sizeof(__pyx_k__do_assert), 0, 0, 1, 1}, - {&__pyx_n_s__do_debug, __pyx_k__do_debug, sizeof(__pyx_k__do_debug), 0, 0, 1, 1}, - {&__pyx_n_s__do_openmp, __pyx_k__do_openmp, sizeof(__pyx_k__do_openmp), 0, 0, 1, 1}, - {&__pyx_n_s__do_profile, __pyx_k__do_profile, sizeof(__pyx_k__do_profile), 0, 0, 1, 1}, - {&__pyx_n_s__dowhile, __pyx_k__dowhile, sizeof(__pyx_k__dowhile), 0, 0, 1, 1}, - {&__pyx_n_s__else, __pyx_k__else, sizeof(__pyx_k__else), 0, 0, 1, 1}, - {&__pyx_n_s__elseif, __pyx_k__elseif, sizeof(__pyx_k__elseif), 0, 0, 1, 1}, - {&__pyx_n_s__end, __pyx_k__end, sizeof(__pyx_k__end), 0, 0, 1, 1}, - {&__pyx_n_s__end_doc, __pyx_k__end_doc, sizeof(__pyx_k__end_doc), 0, 0, 1, 1}, - {&__pyx_n_s__end_provider, __pyx_k__end_provider, sizeof(__pyx_k__end_provider), 0, 0, 1, 1}, - {&__pyx_n_s__end_shell, __pyx_k__end_shell, sizeof(__pyx_k__end_shell), 0, 0, 1, 1}, - {&__pyx_n_s__end_template, __pyx_k__end_template, sizeof(__pyx_k__end_template), 0, 0, 1, 1}, - {&__pyx_n_s__enddo, __pyx_k__enddo, sizeof(__pyx_k__enddo), 0, 0, 1, 1}, - {&__pyx_n_s__endif, __pyx_k__endif, sizeof(__pyx_k__endif), 0, 0, 1, 1}, - {&__pyx_n_s__endmodule, __pyx_k__endmodule, sizeof(__pyx_k__endmodule), 0, 0, 1, 1}, - {&__pyx_n_s__endselect, __pyx_k__endselect, sizeof(__pyx_k__endselect), 0, 0, 1, 1}, - {&__pyx_n_s__endswith, __pyx_k__endswith, sizeof(__pyx_k__endswith), 0, 0, 1, 1}, - {&__pyx_n_s__endtype, __pyx_k__endtype, sizeof(__pyx_k__endtype), 0, 0, 1, 1}, - {&__pyx_n_s__enumerate, __pyx_k__enumerate, sizeof(__pyx_k__enumerate), 0, 0, 1, 1}, - {&__pyx_n_s__error, __pyx_k__error, sizeof(__pyx_k__error), 0, 0, 1, 1}, - {&__pyx_n_s__execute_shell, __pyx_k__execute_shell, sizeof(__pyx_k__execute_shell), 0, 0, 1, 1}, - {&__pyx_n_s__execute_templates, __pyx_k__execute_templates, sizeof(__pyx_k__execute_templates), 0, 0, 1, 1}, - {&__pyx_n_s__fail, __pyx_k__fail, sizeof(__pyx_k__fail), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__filter, __pyx_k__filter, sizeof(__pyx_k__filter), 0, 0, 1, 1}, - {&__pyx_n_s__find, __pyx_k__find, sizeof(__pyx_k__find), 0, 0, 1, 1}, - {&__pyx_n_s__find_subname, __pyx_k__find_subname, sizeof(__pyx_k__find_subname), 0, 0, 1, 1}, - {&__pyx_n_s__form, __pyx_k__form, sizeof(__pyx_k__form), 0, 0, 1, 1}, - {&__pyx_n_s__free, __pyx_k__free, sizeof(__pyx_k__free), 0, 0, 1, 1}, - {&__pyx_n_s__function, __pyx_k__function, sizeof(__pyx_k__function), 0, 0, 1, 1}, - {&__pyx_n_s__get_text, __pyx_k__get_text, sizeof(__pyx_k__get_text), 0, 0, 1, 1}, - {&__pyx_n_s__get_type, __pyx_k__get_type, sizeof(__pyx_k__get_type), 0, 0, 1, 1}, - {&__pyx_n_s__group, __pyx_k__group, sizeof(__pyx_k__group), 0, 0, 1, 1}, - {&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1}, - {&__pyx_n_s__if, __pyx_k__if, sizeof(__pyx_k__if), 0, 0, 1, 1}, - {&__pyx_n_s__implicit, __pyx_k__implicit, sizeof(__pyx_k__implicit), 0, 0, 1, 1}, - {&__pyx_n_s__include, __pyx_k__include, sizeof(__pyx_k__include), 0, 0, 1, 1}, - {&__pyx_n_s__irp_else, __pyx_k__irp_else, sizeof(__pyx_k__irp_else), 0, 0, 1, 1}, - {&__pyx_n_s__irp_endif, __pyx_k__irp_endif, sizeof(__pyx_k__irp_endif), 0, 0, 1, 1}, - {&__pyx_n_s__irp_id, __pyx_k__irp_id, sizeof(__pyx_k__irp_id), 0, 0, 1, 1}, - {&__pyx_n_s__irp_if, __pyx_k__irp_if, sizeof(__pyx_k__irp_if), 0, 0, 1, 1}, - {&__pyx_n_s__irp_read, __pyx_k__irp_read, sizeof(__pyx_k__irp_read), 0, 0, 1, 1}, - {&__pyx_n_s__irp_write, __pyx_k__irp_write, sizeof(__pyx_k__irp_write), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_files, __pyx_k__irpf90_files, sizeof(__pyx_k__irpf90_files), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__is_doc, __pyx_k__is_doc, sizeof(__pyx_k__is_doc), 0, 0, 1, 1}, - {&__pyx_n_s__isdigit, __pyx_k__isdigit, sizeof(__pyx_k__isdigit), 0, 0, 1, 1}, - {&__pyx_n_s__join, __pyx_k__join, sizeof(__pyx_k__join), 0, 0, 1, 1}, - {&__pyx_n_s__l, __pyx_k__l, sizeof(__pyx_k__l), 0, 0, 1, 1}, - {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, - {&__pyx_n_s__lines, __pyx_k__lines, sizeof(__pyx_k__lines), 0, 0, 1, 1}, - {&__pyx_n_s__lower, __pyx_k__lower, sizeof(__pyx_k__lower), 0, 0, 1, 1}, - {&__pyx_n_s__lstrip, __pyx_k__lstrip, sizeof(__pyx_k__lstrip), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__match, __pyx_k__match, sizeof(__pyx_k__match), 0, 0, 1, 1}, - {&__pyx_n_s__no_dep, __pyx_k__no_dep, sizeof(__pyx_k__no_dep), 0, 0, 1, 1}, - {&__pyx_n_s__number, __pyx_k__number, sizeof(__pyx_k__number), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__parallel_loop, __pyx_k__parallel_loop, sizeof(__pyx_k__parallel_loop), 0, 0, 1, 1}, - {&__pyx_n_s__pop, __pyx_k__pop, sizeof(__pyx_k__pop), 0, 0, 1, 1}, - {&__pyx_n_s__popen, __pyx_k__popen, sizeof(__pyx_k__popen), 0, 0, 1, 1}, - {&__pyx_n_s__preprocessed_text, __pyx_k__preprocessed_text, sizeof(__pyx_k__preprocessed_text), 0, 0, 1, 1}, - {&__pyx_n_s__program, __pyx_k__program, sizeof(__pyx_k__program), 0, 0, 1, 1}, - {&__pyx_n_s__provide, __pyx_k__provide, sizeof(__pyx_k__provide), 0, 0, 1, 1}, - {&__pyx_n_s__r, __pyx_k__r, sizeof(__pyx_k__r), 0, 0, 1, 1}, - {&__pyx_n_s__range, __pyx_k__range, sizeof(__pyx_k__range), 0, 0, 1, 1}, - {&__pyx_n_s__re, __pyx_k__re, sizeof(__pyx_k__re), 0, 0, 1, 1}, - {&__pyx_n_s__re_comment, __pyx_k__re_comment, sizeof(__pyx_k__re_comment), 0, 0, 1, 1}, - {&__pyx_n_s__re_decl, __pyx_k__re_decl, sizeof(__pyx_k__re_decl), 0, 0, 1, 1}, - {&__pyx_n_s__re_elseif, __pyx_k__re_elseif, sizeof(__pyx_k__re_elseif), 0, 0, 1, 1}, - {&__pyx_n_s__re_enddo, __pyx_k__re_enddo, sizeof(__pyx_k__re_enddo), 0, 0, 1, 1}, - {&__pyx_n_s__re_endif, __pyx_k__re_endif, sizeof(__pyx_k__re_endif), 0, 0, 1, 1}, - {&__pyx_n_s__re_endmodule, __pyx_k__re_endmodule, sizeof(__pyx_k__re_endmodule), 0, 0, 1, 1}, - {&__pyx_n_s__re_endselect, __pyx_k__re_endselect, sizeof(__pyx_k__re_endselect), 0, 0, 1, 1}, - {&__pyx_n_s__re_endtype, __pyx_k__re_endtype, sizeof(__pyx_k__re_endtype), 0, 0, 1, 1}, - {&__pyx_n_s__re_test, __pyx_k__re_test, sizeof(__pyx_k__re_test), 0, 0, 1, 1}, - {&__pyx_n_s__read, __pyx_k__read, sizeof(__pyx_k__read), 0, 0, 1, 1}, - {&__pyx_n_s__readlines, __pyx_k__readlines, sizeof(__pyx_k__readlines), 0, 0, 1, 1}, - {&__pyx_n_s__recursive, __pyx_k__recursive, sizeof(__pyx_k__recursive), 0, 0, 1, 1}, - {&__pyx_n_s__regexps, __pyx_k__regexps, sizeof(__pyx_k__regexps), 0, 0, 1, 1}, - {&__pyx_n_s__remove, __pyx_k__remove, sizeof(__pyx_k__remove), 0, 0, 1, 1}, - {&__pyx_n_s__remove_comments, __pyx_k__remove_comments, sizeof(__pyx_k__remove_comments), 0, 0, 1, 1}, - {&__pyx_n_s__remove_continuation, __pyx_k__remove_continuation, sizeof(__pyx_k__remove_continuation), 0, 0, 1, 1}, - {&__pyx_n_s__remove_ifdefs, __pyx_k__remove_ifdefs, sizeof(__pyx_k__remove_ifdefs), 0, 0, 1, 1}, - {&__pyx_n_s__replace, __pyx_k__replace, sizeof(__pyx_k__replace), 0, 0, 1, 1}, - {&__pyx_n_s__return, __pyx_k__return, sizeof(__pyx_k__return), 0, 0, 1, 1}, - {&__pyx_n_s__rstrip, __pyx_k__rstrip, sizeof(__pyx_k__rstrip), 0, 0, 1, 1}, - {&__pyx_n_s__rw, __pyx_k__rw, sizeof(__pyx_k__rw), 0, 0, 1, 1}, - {&__pyx_n_s__save, __pyx_k__save, sizeof(__pyx_k__save), 0, 0, 1, 1}, - {&__pyx_n_s__search, __pyx_k__search, sizeof(__pyx_k__search), 0, 0, 1, 1}, - {&__pyx_n_s__select, __pyx_k__select, sizeof(__pyx_k__select), 0, 0, 1, 1}, - {&__pyx_n_s__selectcase, __pyx_k__selectcase, sizeof(__pyx_k__selectcase), 0, 0, 1, 1}, - {&__pyx_n_s__simple_dict, __pyx_k__simple_dict, sizeof(__pyx_k__simple_dict), 0, 0, 1, 1}, - {&__pyx_n_s__soft_touch, __pyx_k__soft_touch, sizeof(__pyx_k__soft_touch), 0, 0, 1, 1}, - {&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1}, - {&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1}, - {&__pyx_n_s__str, __pyx_k__str, sizeof(__pyx_k__str), 0, 0, 1, 1}, - {&__pyx_n_s__strip, __pyx_k__strip, sizeof(__pyx_k__strip), 0, 0, 1, 1}, - {&__pyx_n_s__sub, __pyx_k__sub, sizeof(__pyx_k__sub), 0, 0, 1, 1}, - {&__pyx_n_s__subroutine, __pyx_k__subroutine, sizeof(__pyx_k__subroutine), 0, 0, 1, 1}, - {&__pyx_n_s__subst, __pyx_k__subst, sizeof(__pyx_k__subst), 0, 0, 1, 1}, - {&__pyx_n_s__t, __pyx_k__t, sizeof(__pyx_k__t), 0, 0, 1, 1}, - {&__pyx_n_s__template, __pyx_k__template, sizeof(__pyx_k__template), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__then, __pyx_k__then, sizeof(__pyx_k__then), 0, 0, 1, 1}, - {&__pyx_n_s__touch, __pyx_k__touch, sizeof(__pyx_k__touch), 0, 0, 1, 1}, - {&__pyx_n_s__use, __pyx_k__use, sizeof(__pyx_k__use), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__warn, __pyx_k__warn, sizeof(__pyx_k__warn), 0, 0, 1, 1}, - {&__pyx_n_s__writ, __pyx_k__writ, sizeof(__pyx_k__writ), 0, 0, 1, 1}, - {&__pyx_n_s__writelines, __pyx_k__writelines, sizeof(__pyx_k__writelines), 0, 0, 1, 1}, - {&__pyx_n_s__x, __pyx_k__x, sizeof(__pyx_k__x), 0, 0, 1, 1}, - {&__pyx_n_s__y, __pyx_k__y, sizeof(__pyx_k__y), 0, 0, 1, 1}, - {&__pyx_n_s__zip, __pyx_k__zip, sizeof(__pyx_k__zip), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_enumerate = __Pyx_GetName(__pyx_b, __pyx_n_s__enumerate); if (!__pyx_builtin_enumerate) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_zip = __Pyx_GetName(__pyx_b, __pyx_n_s__zip); if (!__pyx_builtin_zip) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_IOError = __Pyx_GetName(__pyx_b, __pyx_n_s__IOError); if (!__pyx_builtin_IOError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 673; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_range = __Pyx_GetName(__pyx_b, __pyx_n_s__range); if (!__pyx_builtin_range) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 695; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_IndexError = __Pyx_GetName(__pyx_b, __pyx_n_s__IndexError); if (!__pyx_builtin_IndexError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_filter = __Pyx_GetName(__pyx_b, __pyx_n_s__filter); if (!__pyx_builtin_filter) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "preprocessed_text.py":101 - * line = line.replace("$IRP_ALIGN",command_line.align) - * lower_line0 = line.lstrip().lower() - * lower_line = lower_line0.replace("!"," ! ") # <<<<<<<<<<<<<< - * - * # Replacements - */ - __pyx_k_tuple_5 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_5)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_3)); - PyTuple_SET_ITEM(__pyx_k_tuple_5, 0, ((PyObject *)__pyx_kp_s_3)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_3)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_4)); - PyTuple_SET_ITEM(__pyx_k_tuple_5, 1, ((PyObject *)__pyx_kp_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_5)); - - /* "preprocessed_text.py":151 - * return result, is_doc - * - * if firstword.startswith("case("): # <<<<<<<<<<<<<< - * return [ Case(i,line,filename) ], is_doc - * - */ - __pyx_k_tuple_11 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_11)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_10)); - PyTuple_SET_ITEM(__pyx_k_tuple_11, 0, ((PyObject *)__pyx_kp_s_10)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_10)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_11)); - - /* "preprocessed_text.py":223 - * script = [] - * # Find shell executable - * buffer = line.text.split('[') # <<<<<<<<<<<<<< - * if len(buffer) > 2: - * fail(line,"Too many",'[') - */ - __pyx_k_tuple_24 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_24)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 223; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_24)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_24, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_24)); - - /* "preprocessed_text.py":229 - * fail(line,"Missing",'[') - * buffer = buffer[1] - * buffer = buffer.split(']') # <<<<<<<<<<<<<< - * if len(buffer) > 2: - * fail(line,"Too many",']') - */ - __pyx_k_tuple_27 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_27)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 229; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_27)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_k_tuple_27, 0, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_27)); - - /* "preprocessed_text.py":247 - * - * def get_variables(line): - * buffer = line.text.split('[',1) # <<<<<<<<<<<<<< - * if len(buffer)<2: - * fail(line,"Subst","Syntax error") - */ - __pyx_k_tuple_31 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_31)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_31)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_31, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_INCREF(__pyx_int_1); - PyTuple_SET_ITEM(__pyx_k_tuple_31, 1, __pyx_int_1); - __Pyx_GIVEREF(__pyx_int_1); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_31)); - - /* "preprocessed_text.py":250 - * if len(buffer)<2: - * fail(line,"Subst","Syntax error") - * buffer = buffer[1].replace(']','') # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * return map(lambda x: '$%s'%(x.strip()), buffer) - */ - __pyx_k_tuple_34 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_34)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_34)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_k_tuple_34, 0, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - PyTuple_SET_ITEM(__pyx_k_tuple_34, 1, ((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_34)); - - /* "preprocessed_text.py":251 - * fail(line,"Subst","Syntax error") - * buffer = buffer[1].replace(']','') - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * return map(lambda x: '$%s'%(x.strip()), buffer) - * - */ - __pyx_k_tuple_36 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_36)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_36)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_35)); - PyTuple_SET_ITEM(__pyx_k_tuple_36, 0, ((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_36)); - - /* "preprocessed_text.py":289 - * if subst[-2:] == ';;': - * subst = subst[:-2] - * for s in subst.split(';;'): # <<<<<<<<<<<<<< - * buffer = map(lambda x: x.strip(), s.split(';')) - * if len(buffer) != len(variables): - */ - __pyx_k_tuple_45 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_45)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_45)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_44)); - PyTuple_SET_ITEM(__pyx_k_tuple_45, 0, ((PyObject *)__pyx_kp_s_44)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_44)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_45)); - - /* "preprocessed_text.py":290 - * subst = subst[:-2] - * for s in subst.split(';;'): - * buffer = map(lambda x: x.strip(), s.split(';')) # <<<<<<<<<<<<<< - * if len(buffer) != len(variables): - * fail(line,"subst","%d variables defined, and %d substitutions"%(len(variables),len(buffer))) - */ - __pyx_k_tuple_47 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_47)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 290; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_47)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_46)); - PyTuple_SET_ITEM(__pyx_k_tuple_47, 0, ((PyObject *)__pyx_kp_s_46)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_46)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_47)); - - /* "preprocessed_text.py":330 - * assert isinstance(text[0],Line) - * - * re2 = re.compile(r"^\s*[!#]") # <<<<<<<<<<<<<< - * re3 = re.compile(r"^\s*[^ 0-9]+") - * for line in text: - */ - __pyx_k_tuple_59 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_59)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_59)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_58)); - PyTuple_SET_ITEM(__pyx_k_tuple_59, 0, ((PyObject *)__pyx_kp_s_58)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_58)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_59)); - - /* "preprocessed_text.py":331 - * - * re2 = re.compile(r"^\s*[!#]") - * re3 = re.compile(r"^\s*[^ 0-9]+") # <<<<<<<<<<<<<< - * for line in text: - * if type(line) in [ Empty_line, Doc, Openmp, Directive ]: - */ - __pyx_k_tuple_61 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_61)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_61)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_60)); - PyTuple_SET_ITEM(__pyx_k_tuple_61, 0, ((PyObject *)__pyx_kp_s_60)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_60)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_61)); - - /* "preprocessed_text.py":503 - * result = [] - * if match is not None: - * matches = [ match.group(1).strip(), match.group(3).strip() ] # <<<<<<<<<<<<<< - * for m in matches: - * if not(m.isdigit() or ("'" in m) or (m == "")): - */ - __pyx_k_tuple_84 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_84)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_84)); - __Pyx_INCREF(__pyx_int_1); - PyTuple_SET_ITEM(__pyx_k_tuple_84, 0, __pyx_int_1); - __Pyx_GIVEREF(__pyx_int_1); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_84)); - __pyx_k_tuple_85 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_85)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_85)); - __Pyx_INCREF(__pyx_int_3); - PyTuple_SET_ITEM(__pyx_k_tuple_85, 0, __pyx_int_3); - __Pyx_GIVEREF(__pyx_int_3); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_85)); - - /* "preprocessed_text.py":513 - * assert type(line) == Assert - * if command_line.do_assert: - * condition = "(%s"%(line.text.split('(',1)[1]) # <<<<<<<<<<<<<< - * if condition == "": - * error.fail(line,"Error in Assert statement") - */ - __pyx_k_tuple_91 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_91)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 513; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_91)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_90)); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 0, ((PyObject *)__pyx_kp_s_90)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_90)); - __Pyx_INCREF(__pyx_int_1); - PyTuple_SET_ITEM(__pyx_k_tuple_91, 1, __pyx_int_1); - __Pyx_GIVEREF(__pyx_int_1); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_91)); - - /* "preprocessed_text.py":516 - * if condition == "": - * error.fail(line,"Error in Assert statement") - * condition_str = condition.replace("'","''") # <<<<<<<<<<<<<< - * i = line.i - * f = line.filename - */ - __pyx_k_tuple_94 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_94)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_94)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_86)); - PyTuple_SET_ITEM(__pyx_k_tuple_94, 0, ((PyObject *)__pyx_kp_s_86)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_86)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_93)); - PyTuple_SET_ITEM(__pyx_k_tuple_94, 1, ((PyObject *)__pyx_kp_s_93)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_93)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_94)); - - /* "preprocessed_text.py":554 - * def process_begin_provider(line): - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") # <<<<<<<<<<<<<< - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - */ - __pyx_k_tuple_103 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_103)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_103)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_103, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_7)); - PyTuple_SET_ITEM(__pyx_k_tuple_103, 1, ((PyObject *)__pyx_kp_s_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_103)); - - /* "preprocessed_text.py":555 - * assert type(line) == Begin_provider - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * if len(buffer) < 2: - */ - __pyx_k_tuple_104 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_104)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 555; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_104)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_k_tuple_104, 0, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - PyTuple_SET_ITEM(__pyx_k_tuple_104, 1, ((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_104)); - - /* "preprocessed_text.py":556 - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * if len(buffer) < 2: - * error.fail(line,"Error in Begin_provider statement") - */ - __pyx_k_tuple_105 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_105)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 556; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_105)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_35)); - PyTuple_SET_ITEM(__pyx_k_tuple_105, 0, ((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_105)); - - /* "preprocessed_text.py":573 - * def process_cont_provider(line): - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") # <<<<<<<<<<<<<< - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') - */ - __pyx_k_tuple_109 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_109)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 573; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_109)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_109, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_7)); - PyTuple_SET_ITEM(__pyx_k_tuple_109, 1, ((PyObject *)__pyx_kp_s_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_7)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_109)); - - /* "preprocessed_text.py":574 - * assert type(line) == Cont_provider - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") # <<<<<<<<<<<<<< - * buffer = buffer.split(',') - * if len(buffer) < 2: - */ - __pyx_k_tuple_110 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_110)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_110)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_26)); - PyTuple_SET_ITEM(__pyx_k_tuple_110, 0, ((PyObject *)__pyx_kp_s_26)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_26)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_33)); - PyTuple_SET_ITEM(__pyx_k_tuple_110, 1, ((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_33)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_110)); - - /* "preprocessed_text.py":575 - * buffer = line.lower.replace('['," ") - * buffer = buffer.replace(']',"") - * buffer = buffer.split(',') # <<<<<<<<<<<<<< - * if len(buffer) < 2: - * error.fail(line,"Error in Cont_provider statement") - */ - __pyx_k_tuple_111 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_111)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_111)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_35)); - PyTuple_SET_ITEM(__pyx_k_tuple_111, 0, ((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_35)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_111)); - - /* "preprocessed_text.py":663 - * for line in text: - * if type(line) == Include: - * txt = line.text.replace('"',"'").split("'") # <<<<<<<<<<<<<< - * if len(txt) != 3: - * print txt - */ - __pyx_k_tuple_125 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_125)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_125)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_124)); - PyTuple_SET_ITEM(__pyx_k_tuple_125, 0, ((PyObject *)__pyx_kp_s_124)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_124)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_86)); - PyTuple_SET_ITEM(__pyx_k_tuple_125, 1, ((PyObject *)__pyx_kp_s_86)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_86)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_125)); - __pyx_k_tuple_126 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_126)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 663; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_126)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_86)); - PyTuple_SET_ITEM(__pyx_k_tuple_126, 0, ((PyObject *)__pyx_kp_s_86)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_86)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_126)); - - /* "preprocessed_text.py":701 - * try: - * if buffer[1].isdigit(): - * number = buffer.pop(1) # <<<<<<<<<<<<<< - * change_matching_enddo(i,number) - * line.text = " ".join(buffer) - */ - __pyx_k_tuple_131 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_131)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 701; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_131)); - __Pyx_INCREF(__pyx_int_1); - PyTuple_SET_ITEM(__pyx_k_tuple_131, 0, __pyx_int_1); - __Pyx_GIVEREF(__pyx_int_1); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_131)); - - /* "preprocessed_text.py":724 - * for line in text: - * if type(line) == If: - * if line.lower.endswith("then"): # <<<<<<<<<<<<<< - * result.append(line) - * else: - */ - __pyx_k_tuple_132 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_132)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 724; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_132)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__then)); - PyTuple_SET_ITEM(__pyx_k_tuple_132, 0, ((PyObject *)__pyx_n_s__then)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__then)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_132)); - - /* "preprocessed_text.py":728 - * else: - * buffer = line.text - * begin = buffer.find('(') # <<<<<<<<<<<<<< - * if begin < 0: - * error.fail(line,"Error in if statement") - */ - __pyx_k_tuple_133 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_133)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 728; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_133)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_90)); - PyTuple_SET_ITEM(__pyx_k_tuple_133, 0, ((PyObject *)__pyx_kp_s_90)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_90)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_133)); - - /* "preprocessed_text.py":34 - * - * # Local regular expressions - * re_endif = re.compile("end\s+if") # <<<<<<<<<<<<<< - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") - */ - __pyx_k_tuple_149 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_149)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_149)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_148)); - PyTuple_SET_ITEM(__pyx_k_tuple_149, 0, ((PyObject *)__pyx_kp_s_148)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_148)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_149)); - - /* "preprocessed_text.py":35 - * # Local regular expressions - * re_endif = re.compile("end\s+if") - * re_elseif = re.compile("else\s+if") # <<<<<<<<<<<<<< - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") - */ - __pyx_k_tuple_151 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_151)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_151)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_150)); - PyTuple_SET_ITEM(__pyx_k_tuple_151, 0, ((PyObject *)__pyx_kp_s_150)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_150)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_151)); - - /* "preprocessed_text.py":36 - * re_endif = re.compile("end\s+if") - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") # <<<<<<<<<<<<<< - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") - */ - __pyx_k_tuple_153 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_153)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_153)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_152)); - PyTuple_SET_ITEM(__pyx_k_tuple_153, 0, ((PyObject *)__pyx_kp_s_152)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_152)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_153)); - - /* "preprocessed_text.py":37 - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") # <<<<<<<<<<<<<< - * re_endmodule = re.compile("end\s+module") - * re_endselect = re.compile("end\s+select") - */ - __pyx_k_tuple_155 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_155)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_155)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_154)); - PyTuple_SET_ITEM(__pyx_k_tuple_155, 0, ((PyObject *)__pyx_kp_s_154)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_154)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_155)); - - /* "preprocessed_text.py":38 - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") # <<<<<<<<<<<<<< - * re_endselect = re.compile("end\s+select") - * - */ - __pyx_k_tuple_157 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_157)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_157)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_156)); - PyTuple_SET_ITEM(__pyx_k_tuple_157, 0, ((PyObject *)__pyx_kp_s_156)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_156)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_157)); - - /* "preprocessed_text.py":39 - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") - * re_endselect = re.compile("end\s+select") # <<<<<<<<<<<<<< - * - * # Local variables - */ - __pyx_k_tuple_159 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_159)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_159)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_158)); - PyTuple_SET_ITEM(__pyx_k_tuple_159, 0, ((PyObject *)__pyx_kp_s_158)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_158)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_159)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_3 = PyInt_FromLong(3); if (unlikely(!__pyx_int_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initpreprocessed_text(void); /*proto*/ -PyMODINIT_FUNC initpreprocessed_text(void) -#else -PyMODINIT_FUNC PyInit_preprocessed_text(void); /*proto*/ -PyMODINIT_FUNC PyInit_preprocessed_text(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_t_6; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_preprocessed_text(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("preprocessed_text"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_preprocessed_text) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - if (PyType_Ready(&__pyx_type_17preprocessed_text___pyx_scope_struct__execute_templates) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 242; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_17preprocessed_text___pyx_scope_struct__execute_templates = &__pyx_type_17preprocessed_text___pyx_scope_struct__execute_templates; - if (PyType_Ready(&__pyx_type_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements = &__pyx_type_17preprocessed_text___pyx_scope_struct_1_irp_simple_statements; - if (PyType_Ready(&__pyx_type_17preprocessed_text___pyx_scope_struct_2_process_old_style_do) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_17preprocessed_text___pyx_scope_struct_2_process_old_style_do = &__pyx_type_17preprocessed_text___pyx_scope_struct_2_process_old_style_do; - if (PyType_Ready(&__pyx_type_17preprocessed_text___pyx_scope_struct_3_check_begin_end) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_ptype_17preprocessed_text___pyx_scope_struct_3_check_begin_end = &__pyx_type_17preprocessed_text___pyx_scope_struct_3_check_begin_end; - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "preprocessed_text.py":27 - * # scemama@irsamc.ups-tlse.fr - * - * from irpf90_t import * # <<<<<<<<<<<<<< - * from regexps import * - * import error - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_147)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_147)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_147)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":28 - * - * from irpf90_t import * - * from regexps import * # <<<<<<<<<<<<<< - * import error - * from command_line import command_line - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_147)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_147)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_147)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__regexps), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":29 - * from irpf90_t import * - * from regexps import * - * import error # <<<<<<<<<<<<<< - * from command_line import command_line - * from util import * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__error), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__error, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":30 - * from regexps import * - * import error - * from command_line import command_line # <<<<<<<<<<<<<< - * from util import * - * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":31 - * import error - * from command_line import command_line - * from util import * # <<<<<<<<<<<<<< - * - * # Local regular expressions - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_147)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_147)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_147)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":34 - * - * # Local regular expressions - * re_endif = re.compile("end\s+if") # <<<<<<<<<<<<<< - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_149), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_endif, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":35 - * # Local regular expressions - * re_endif = re.compile("end\s+if") - * re_elseif = re.compile("else\s+if") # <<<<<<<<<<<<<< - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_151), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_elseif, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":36 - * re_endif = re.compile("end\s+if") - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") # <<<<<<<<<<<<<< - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_153), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_enddo, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":37 - * re_elseif = re.compile("else\s+if") - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") # <<<<<<<<<<<<<< - * re_endmodule = re.compile("end\s+module") - * re_endselect = re.compile("end\s+select") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_155), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_endtype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":38 - * re_enddo = re.compile("end\s+do") - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") # <<<<<<<<<<<<<< - * re_endselect = re.compile("end\s+select") - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_157), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_endmodule, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":39 - * re_endtype= re.compile("end\s+type") - * re_endmodule = re.compile("end\s+module") - * re_endselect = re.compile("end\s+select") # <<<<<<<<<<<<<< - * - * # Local variables - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__compile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_159), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__re_endselect, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":42 - * - * # Local variables - * Free_form = 0 # <<<<<<<<<<<<<< - * Fixed_form = 1 - * - */ - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Free_form, __pyx_int_0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 42; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":43 - * # Local variables - * Free_form = 0 - * Fixed_form = 1 # <<<<<<<<<<<<<< - * - * - */ - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Fixed_form, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "preprocessed_text.py":48 - * ###################################################################### - * # Dictionary of simple statements - * simple_dict = { # <<<<<<<<<<<<<< - * "program": Program , - * "subroutine": Subroutine , - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - - /* "preprocessed_text.py":49 - * # Dictionary of simple statements - * simple_dict = { - * "program": Program , # <<<<<<<<<<<<<< - * "subroutine": Subroutine , - * "begin_shell": Begin_shell , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Program); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__program), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":50 - * simple_dict = { - * "program": Program , - * "subroutine": Subroutine , # <<<<<<<<<<<<<< - * "begin_shell": Begin_shell , - * "end_shell": End_shell , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subroutine); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__subroutine), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":51 - * "program": Program , - * "subroutine": Subroutine , - * "begin_shell": Begin_shell , # <<<<<<<<<<<<<< - * "end_shell": End_shell , - * "begin_template": Begin_template , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_shell); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__begin_shell), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":52 - * "subroutine": Subroutine , - * "begin_shell": Begin_shell , - * "end_shell": End_shell , # <<<<<<<<<<<<<< - * "begin_template": Begin_template , - * "end_template": End_template , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_shell); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__end_shell), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":53 - * "begin_shell": Begin_shell , - * "end_shell": End_shell , - * "begin_template": Begin_template , # <<<<<<<<<<<<<< - * "end_template": End_template , - * "subst": Subst , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_template); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__begin_template), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":54 - * "end_shell": End_shell , - * "begin_template": Begin_template , - * "end_template": End_template , # <<<<<<<<<<<<<< - * "subst": Subst , - * "end_doc": End_doc , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_template); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__end_template), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":55 - * "begin_template": Begin_template , - * "end_template": End_template , - * "subst": Subst , # <<<<<<<<<<<<<< - * "end_doc": End_doc , - * "begin_provider": Begin_provider , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Subst); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__subst), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":56 - * "end_template": End_template , - * "subst": Subst , - * "end_doc": End_doc , # <<<<<<<<<<<<<< - * "begin_provider": Begin_provider , - * "&begin_provider": Cont_provider , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_doc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__end_doc), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":57 - * "subst": Subst , - * "end_doc": End_doc , - * "begin_provider": Begin_provider , # <<<<<<<<<<<<<< - * "&begin_provider": Cont_provider , - * "end_provider": End_provider , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Begin_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__begin_provider), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":58 - * "end_doc": End_doc , - * "begin_provider": Begin_provider , - * "&begin_provider": Cont_provider , # <<<<<<<<<<<<<< - * "end_provider": End_provider , - * "assert": Assert , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Cont_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_kp_s_160), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":59 - * "begin_provider": Begin_provider , - * "&begin_provider": Cont_provider , - * "end_provider": End_provider , # <<<<<<<<<<<<<< - * "assert": Assert , - * "touch": Touch , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_provider); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__end_provider), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":60 - * "&begin_provider": Cont_provider , - * "end_provider": End_provider , - * "assert": Assert , # <<<<<<<<<<<<<< - * "touch": Touch , - * "soft_touch": SoftTouch , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Assert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__assert), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":61 - * "end_provider": End_provider , - * "assert": Assert , - * "touch": Touch , # <<<<<<<<<<<<<< - * "soft_touch": SoftTouch , - * "provide": Provide , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Touch); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__touch), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":62 - * "assert": Assert , - * "touch": Touch , - * "soft_touch": SoftTouch , # <<<<<<<<<<<<<< - * "provide": Provide , - * "no_dep": NoDep , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__SoftTouch); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__soft_touch), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":63 - * "touch": Touch , - * "soft_touch": SoftTouch , - * "provide": Provide , # <<<<<<<<<<<<<< - * "no_dep": NoDep , - * "free": Free , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Provide); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__provide), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":64 - * "soft_touch": SoftTouch , - * "provide": Provide , - * "no_dep": NoDep , # <<<<<<<<<<<<<< - * "free": Free , - * "irp_if": Irp_If , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__NoDep); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__no_dep), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":65 - * "provide": Provide , - * "no_dep": NoDep , - * "free": Free , # <<<<<<<<<<<<<< - * "irp_if": Irp_If , - * "irp_else": Irp_Else , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Free); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__free), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":66 - * "no_dep": NoDep , - * "free": Free , - * "irp_if": Irp_If , # <<<<<<<<<<<<<< - * "irp_else": Irp_Else , - * "irp_endif": Irp_Endif , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_If); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__irp_if), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":67 - * "free": Free , - * "irp_if": Irp_If , - * "irp_else": Irp_Else , # <<<<<<<<<<<<<< - * "irp_endif": Irp_Endif , - * "irp_read": Irp_read , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_Else); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__irp_else), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":68 - * "irp_if": Irp_If , - * "irp_else": Irp_Else , - * "irp_endif": Irp_Endif , # <<<<<<<<<<<<<< - * "irp_read": Irp_read , - * "irp_write": Irp_write , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_Endif); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__irp_endif), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":69 - * "irp_else": Irp_Else , - * "irp_endif": Irp_Endif , - * "irp_read": Irp_read , # <<<<<<<<<<<<<< - * "irp_write": Irp_write , - * "use": Use , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_read); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__irp_read), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":70 - * "irp_endif": Irp_Endif , - * "irp_read": Irp_read , - * "irp_write": Irp_write , # <<<<<<<<<<<<<< - * "use": Use , - * "do": Do , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Irp_write); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__irp_write), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":71 - * "irp_read": Irp_read , - * "irp_write": Irp_write , - * "use": Use , # <<<<<<<<<<<<<< - * "do": Do , - * "if": If , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Use); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__use), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":72 - * "irp_write": Irp_write , - * "use": Use , - * "do": Do , # <<<<<<<<<<<<<< - * "if": If , - * "case": Case , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Do); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__do), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":73 - * "use": Use , - * "do": Do , - * "if": If , # <<<<<<<<<<<<<< - * "case": Case , - * "elseif": Elseif , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__If); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__if), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":74 - * "do": Do , - * "if": If , - * "case": Case , # <<<<<<<<<<<<<< - * "elseif": Elseif , - * "else": Else , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Case); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__case), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":75 - * "if": If , - * "case": Case , - * "elseif": Elseif , # <<<<<<<<<<<<<< - * "else": Else , - * "enddo": Enddo , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Elseif); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__elseif), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":76 - * "case": Case , - * "elseif": Elseif , - * "else": Else , # <<<<<<<<<<<<<< - * "enddo": Enddo , - * "endif": Endif , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Else); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__else), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":77 - * "elseif": Elseif , - * "else": Else , - * "enddo": Enddo , # <<<<<<<<<<<<<< - * "endif": Endif , - * "endselect": End_select , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Enddo); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__enddo), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":78 - * "else": Else , - * "enddo": Enddo , - * "endif": Endif , # <<<<<<<<<<<<<< - * "endselect": End_select , - * "end": End , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Endif); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__endif), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":79 - * "enddo": Enddo , - * "endif": Endif , - * "endselect": End_select , # <<<<<<<<<<<<<< - * "end": End , - * "include": Include , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End_select); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__endselect), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":80 - * "endif": Endif , - * "endselect": End_select , - * "end": End , # <<<<<<<<<<<<<< - * "include": Include , - * "call": Call , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__End); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__end), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":81 - * "endselect": End_select , - * "end": End , - * "include": Include , # <<<<<<<<<<<<<< - * "call": Call , - * "continue": Continue , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Include); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__include), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":82 - * "end": End , - * "include": Include , - * "call": Call , # <<<<<<<<<<<<<< - * "continue": Continue , - * "return": Return , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Call); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__call), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":83 - * "include": Include , - * "call": Call , - * "continue": Continue , # <<<<<<<<<<<<<< - * "return": Return , - * "implicit": Implicit , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Continue); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__continue), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":84 - * "call": Call , - * "continue": Continue , - * "return": Return , # <<<<<<<<<<<<<< - * "implicit": Implicit , - * "save": Declaration , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Return); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__return), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":85 - * "continue": Continue , - * "return": Return , - * "implicit": Implicit , # <<<<<<<<<<<<<< - * "save": Declaration , - * "function": Function , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Implicit); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__implicit), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":86 - * "return": Return , - * "implicit": Implicit , - * "save": Declaration , # <<<<<<<<<<<<<< - * "function": Function , - * "recursive": Function , - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Declaration); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__save), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":87 - * "implicit": Implicit , - * "save": Declaration , - * "function": Function , # <<<<<<<<<<<<<< - * "recursive": Function , - * } - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__function), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "preprocessed_text.py":88 - * "save": Declaration , - * "function": Function , - * "recursive": Function , # <<<<<<<<<<<<<< - * } - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Function); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_1, ((PyObject *)__pyx_n_s__recursive), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__simple_dict, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "preprocessed_text.py":91 - * } - * - * def get_type (i, filename, line, is_doc): # <<<<<<<<<<<<<< - * '''Find the type of a text line''' - * assert type(i) == int - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_get_type, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__get_type, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":175 - * - * ###################################################################### - * def get_text(lines,filename): # <<<<<<<<<<<<<< - * '''Read the input file and transform it to labeled lines''' - * assert type(filename) == str - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_1get_text, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__get_text, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":188 - * - * ###################################################################### - * def execute_shell(text): # <<<<<<<<<<<<<< - * '''Execute the embedded shell scripts''' - * def fail(l,a,b): error.fail(l,"In Begin_Shell, %s '%s'"%(a,b)) - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_2execute_shell, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__execute_shell, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 188; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":242 - * - * ###################################################################### - * def execute_templates(text): # <<<<<<<<<<<<<< - * '''Execute the templates''' - * def fail(l,a,b): error.fail(l,"In %s, %s"%(a,b)) - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_3execute_templates, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 242; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__execute_templates, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 242; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":323 - * - * ###################################################################### - * def form(text): # <<<<<<<<<<<<<< - * '''Find if the text is in fixed form or in free form''' - * assert type(text) == list - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_4form, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__form, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":349 - * - * ###################################################################### - * def add_operators(text): # <<<<<<<<<<<<<< - * re_incr = re.compile(r"(\s*)(.*)(\+=)(.*$)",re.S) - * re_decr = re.compile(r"(\s*)(.*)(-=)(.*$)",re.S) - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_5add_operators, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__add_operators, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 349; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":371 - * - * ###################################################################### - * def remove_comments(text,form): # <<<<<<<<<<<<<< - * '''Remove all comments''' - * result = [] - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_6remove_comments, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__remove_comments, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":413 - * - * ###################################################################### - * def remove_continuation(text,form): # <<<<<<<<<<<<<< - * '''Removes continuation lines''' - * result = [] - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_7remove_continuation, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__remove_continuation, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":454 - * - * ###################################################################### - * def irp_simple_statements(text): # <<<<<<<<<<<<<< - * '''Processes simple statements''' - * - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_8irp_simple_statements, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_143, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 454; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":658 - * - * ###################################################################### - * def change_includes(text): # <<<<<<<<<<<<<< - * '''Deals with include files''' - * result = [] - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_9change_includes, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__change_includes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":680 - * - * ###################################################################### - * def process_old_style_do(text): # <<<<<<<<<<<<<< - * '''Changes old-style do loops to new style''' - * assert type(text) == list - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_10process_old_style_do, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_142, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":710 - * - * ###################################################################### - * def change_single_line_ifs(text): # <<<<<<<<<<<<<< - * '''Changes: - * if (test) result - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_11change_single_line_ifs, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 710; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_141, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 710; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":759 - * - * ###################################################################### - * def check_begin_end(text): # <<<<<<<<<<<<<< - * '''Checks x...endx consistence''' - * - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_12check_begin_end, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__check_begin_end, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":821 - * - * ###################################################################### - * def remove_ifdefs(text): # <<<<<<<<<<<<<< - * assert type(text) == list - * result = [] - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_13remove_ifdefs, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__remove_ifdefs, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":839 - * - * ###################################################################### - * def create_preprocessed_text(filename): # <<<<<<<<<<<<<< - * file = open(filename,"r") - * lines = file.readlines() - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_14create_preprocessed_text, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s_1, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 839; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "preprocessed_text.py":859 - * - * ###################################################################### - * preprocessed_text = parallel_loop( lambda x,y: create_preprocessed_text(x), \ # <<<<<<<<<<<<<< - * map(lambda x: (x,None), irpf90_files ) ) - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parallel_loop); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_17preprocessed_text_lambda4, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - - /* "preprocessed_text.py":860 - * ###################################################################### - * preprocessed_text = parallel_loop( lambda x,y: create_preprocessed_text(x), \ - * map(lambda x: (x,None), irpf90_files ) ) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_3 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_17preprocessed_text_lambda5, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_files); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 860; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_2 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__preprocessed_text, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":863 - * - * ###################################################################### - * def debug(): # <<<<<<<<<<<<<< - * for filename, txt in preprocessed_text: - * if filename == 'invert.irp.f': - */ - __pyx_t_4 = PyCFunction_NewEx(&__pyx_mdef_17preprocessed_text_15debug, NULL, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__debug, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "preprocessed_text.py":871 - * print irpf90_files - * - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * debug() - * - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 871; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = __Pyx_PyString_Equals(__pyx_t_4, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 871; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_6) { - - /* "preprocessed_text.py":872 - * - * if __name__ == '__main__': - * debug() # <<<<<<<<<<<<<< - * - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__debug); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "preprocessed_text.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_5)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - if (__pyx_m) { - __Pyx_AddTraceback("init preprocessed_text", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init preprocessed_text"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", - index, (index == 1) ? "" : "s"); -} - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); -} - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } else if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } - } - return 0; -} - -static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) { - PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname); -} - -static CYTHON_INLINE void __Pyx_RaiseClosureNameError(const char *varname) { - PyErr_Format(PyExc_NameError, "free variable '%s' referenced before assignment in enclosing scope", varname); -} - -static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void) { - PyErr_SetString(PyExc_TypeError, "'NoneType' object is unsubscriptable"); -} - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *local_type, *local_value, *local_tb; - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - local_type = tstate->curexc_type; - local_value = tstate->curexc_value; - local_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - PyErr_NormalizeException(&local_type, &local_value, &local_tb); - if (unlikely(tstate->curexc_type)) - goto bad; - #if PY_MAJOR_VERSION >= 3 - if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) - goto bad; - #endif - *type = local_type; - *value = local_value; - *tb = local_tb; - Py_INCREF(local_type); - Py_INCREF(local_value); - Py_INCREF(local_tb); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - /* Make sure tstate is in a consistent state when we XDECREF - these objects (XDECREF may run arbitrary code). */ - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); - return 0; -bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -} - - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->exc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} - -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/preprocessed_text.so b/src/preprocessed_text.so deleted file mode 100755 index 6594bcc25e8bc5ceb7f7bfb9fc8e3e3676d799fc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1181453 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 T%3GzyXB^Xs /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__modules -#define __PYX_HAVE_API__modules -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "modules.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'modules' */ -#define __Pyx_MODULE_NAME "modules" -int __pyx_module_is_main_modules = 0; - -/* Implementation of 'modules' */ -static PyObject *__pyx_builtin_map; -static PyObject *__pyx_builtin_open; -static char __pyx_k_1[] = "%s\n"; -static char __pyx_k_2[] = ".irp.module.F90"; -static char __pyx_k_3[] = ".irp.F90"; -static char __pyx_k_4[] = "*"; -static char __pyx_k_5[] = "psi.irp.f"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__head[] = "head"; -static char __pyx_k__name[] = "name"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__header[] = "header"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__module[] = "module"; -static char __pyx_k__Fmodule[] = "Fmodule"; -static char __pyx_k__modules[] = "modules"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__same_file[] = "same_file"; -static char __pyx_k__writelines[] = "writelines"; -static char __pyx_k__parsed_text[] = "parsed_text"; -static char __pyx_k__write_module[] = "write_module"; -static char __pyx_k__residual_text[] = "residual_text"; -static char __pyx_k__create_modules[] = "create_modules"; -static char __pyx_k__generated_text[] = "generated_text"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_n_s_4; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_n_s__Fmodule; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__create_modules; -static PyObject *__pyx_n_s__generated_text; -static PyObject *__pyx_n_s__head; -static PyObject *__pyx_n_s__header; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__module; -static PyObject *__pyx_n_s__modules; -static PyObject *__pyx_n_s__name; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__parsed_text; -static PyObject *__pyx_n_s__residual_text; -static PyObject *__pyx_n_s__same_file; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__write_module; -static PyObject *__pyx_n_s__writelines; - -/* "modules.py":34 - * - * ###################################################################### - * def create_modules(): # <<<<<<<<<<<<<< - * result = {} - * for filename,text in parsed_text: - */ - -static PyObject *__pyx_pf_7modules_create_modules(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_7modules_create_modules = {__Pyx_NAMESTR("create_modules"), (PyCFunction)__pyx_pf_7modules_create_modules, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_7modules_create_modules(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_result = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *(*__pyx_t_8)(PyObject *); - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create_modules"); - __pyx_self = __pyx_self; - - /* "modules.py":35 - * ###################################################################### - * def create_modules(): - * result = {} # <<<<<<<<<<<<<< - * for filename,text in parsed_text: - * result[filename] = Fmodule(text,filename) - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_v_result = __pyx_t_1; - __pyx_t_1 = 0; - - /* "modules.py":36 - * def create_modules(): - * result = {} - * for filename,text in parsed_text: # <<<<<<<<<<<<<< - * result[filename] = Fmodule(text,filename) - * return result - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; - } else { - __pyx_t_1 = __pyx_t_4(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_5 = PyList_GET_ITEM(sequence, 0); - __pyx_t_6 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext; - index = 0; __pyx_t_5 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_5); - index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L8_unpacking_done; - __pyx_L7_unpacking_failed:; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L8_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_5; - __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_6; - __pyx_t_6 = 0; - - /* "modules.py":37 - * result = {} - * for filename,text in parsed_text: - * result[filename] = Fmodule(text,filename) # <<<<<<<<<<<<<< - * return result - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Fmodule); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - if (PyDict_SetItem(((PyObject *)__pyx_v_result), __pyx_v_filename, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":38 - * for filename,text in parsed_text: - * result[filename] = Fmodule(text,filename) - * return result # <<<<<<<<<<<<<< - * - * modules = create_modules() - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_INCREF(((PyObject *)__pyx_v_result)); - __pyx_r = ((PyObject *)__pyx_v_result); - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("modules.create_modules", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_result); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "modules.py":47 - * filename = irpdir+m.name[0:-4]+".irp.module.F90" - * text = m.header + m.head - * text = map(lambda x: "%s\n"%(x),text) # <<<<<<<<<<<<<< - * if not same_file(filename,text): - * print filename - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("modules.write_module.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "modules.py":57 - * filename = irpdir+m.name[0:-4]+".irp.F90" - * text = m.header + m.generated_text + m.residual_text - * text = map(lambda x: "%s\n"%(x),text) # <<<<<<<<<<<<<< - * if not same_file(filename,text): - * print filename - */ - -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_lambda_funcdef_lambda2, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda2"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_r = ((PyObject *)__pyx_t_1); - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("modules.write_module.lambda2", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "modules.py":43 - * - * ###################################################################### - * def write_module(m): # <<<<<<<<<<<<<< - * # Module data - * filename = irpdir+m.name[0:-4]+".irp.module.F90" - */ - -static PyObject *__pyx_pf_7modules_1write_module(PyObject *__pyx_self, PyObject *__pyx_v_m); /*proto*/ -static PyMethodDef __pyx_mdef_7modules_1write_module = {__Pyx_NAMESTR("write_module"), (PyCFunction)__pyx_pf_7modules_1write_module, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_7modules_1write_module(PyObject *__pyx_self, PyObject *__pyx_v_m) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - int __pyx_t_4; - int __pyx_t_5; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("write_module"); - __pyx_self = __pyx_self; - - /* "modules.py":45 - * def write_module(m): - * # Module data - * filename = irpdir+m.name[0:-4]+".irp.module.F90" # <<<<<<<<<<<<<< - * text = m.header + m.head - * text = map(lambda x: "%s\n"%(x),text) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PySequence_GetSlice(__pyx_t_2, 0, -4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_filename = __pyx_t_3; - __pyx_t_3 = 0; - - /* "modules.py":46 - * # Module data - * filename = irpdir+m.name[0:-4]+".irp.module.F90" - * text = m.header + m.head # <<<<<<<<<<<<<< - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__header); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__head); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_text = __pyx_t_1; - __pyx_t_1 = 0; - - /* "modules.py":47 - * filename = irpdir+m.name[0:-4]+".irp.module.F90" - * text = m.header + m.head - * text = map(lambda x: "%s\n"%(x),text) # <<<<<<<<<<<<<< - * if not same_file(filename,text): - * print filename - */ - __pyx_t_1 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, NULL, __pyx_n_s__modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_1; - __pyx_t_1 = 0; - - /* "modules.py":48 - * text = m.header + m.head - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): # <<<<<<<<<<<<<< - * print filename - * file = open(filename,"w") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__same_file); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_5 = (!__pyx_t_4); - if (__pyx_t_5) { - - /* "modules.py":49 - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): - * print filename # <<<<<<<<<<<<<< - * file = open(filename,"w") - * file.writelines(text) - */ - if (__Pyx_PrintOne(0, __pyx_v_filename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "modules.py":50 - * if not same_file(filename,text): - * print filename - * file = open(filename,"w") # <<<<<<<<<<<<<< - * file.writelines(text) - * file.close() - */ - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_2 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __pyx_v_file = __pyx_t_2; - __pyx_t_2 = 0; - - /* "modules.py":51 - * print filename - * file = open(filename,"w") - * file.writelines(text) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "modules.py":52 - * file = open(filename,"w") - * file.writelines(text) - * file.close() # <<<<<<<<<<<<<< - * - * # Subroutines - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "modules.py":55 - * - * # Subroutines - * filename = irpdir+m.name[0:-4]+".irp.F90" # <<<<<<<<<<<<<< - * text = m.header + m.generated_text + m.residual_text - * text = map(lambda x: "%s\n"%(x),text) - */ - __pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PySequence_GetSlice(__pyx_t_1, 0, -4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_kp_s_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_2; - __pyx_t_2 = 0; - - /* "modules.py":56 - * # Subroutines - * filename = irpdir+m.name[0:-4]+".irp.F90" - * text = m.header + m.generated_text + m.residual_text # <<<<<<<<<<<<<< - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__header); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__generated_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyNumber_Add(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_v_m, __pyx_n_s__residual_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyNumber_Add(__pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_2; - __pyx_t_2 = 0; - - /* "modules.py":57 - * filename = irpdir+m.name[0:-4]+".irp.F90" - * text = m.header + m.generated_text + m.residual_text - * text = map(lambda x: "%s\n"%(x),text) # <<<<<<<<<<<<<< - * if not same_file(filename,text): - * print filename - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda2, NULL, __pyx_n_s__modules); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_2; - __pyx_t_2 = 0; - - /* "modules.py":58 - * text = m.header + m.generated_text + m.residual_text - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): # <<<<<<<<<<<<<< - * print filename - * file = open(filename,"w") - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__same_file); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_4 = (!__pyx_t_5); - if (__pyx_t_4) { - - /* "modules.py":59 - * text = map(lambda x: "%s\n"%(x),text) - * if not same_file(filename,text): - * print filename # <<<<<<<<<<<<<< - * file = open(filename,"w") - * file.writelines(text) - */ - if (__Pyx_PrintOne(0, __pyx_v_filename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "modules.py":60 - * if not same_file(filename,text): - * print filename - * file = open(filename,"w") # <<<<<<<<<<<<<< - * file.writelines(text) - * file.close() - */ - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_1 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_1; - __pyx_t_1 = 0; - - /* "modules.py":61 - * print filename - * file = open(filename,"w") - * file.writelines(text) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_text); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_text); - __Pyx_GIVEREF(__pyx_v_text); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":62 - * file = open(filename,"w") - * file.writelines(text) - * file.close() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("modules.write_module", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("modules"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_n_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 1}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_n_s__Fmodule, __pyx_k__Fmodule, sizeof(__pyx_k__Fmodule), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__create_modules, __pyx_k__create_modules, sizeof(__pyx_k__create_modules), 0, 0, 1, 1}, - {&__pyx_n_s__generated_text, __pyx_k__generated_text, sizeof(__pyx_k__generated_text), 0, 0, 1, 1}, - {&__pyx_n_s__head, __pyx_k__head, sizeof(__pyx_k__head), 0, 0, 1, 1}, - {&__pyx_n_s__header, __pyx_k__header, sizeof(__pyx_k__header), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__module, __pyx_k__module, sizeof(__pyx_k__module), 0, 0, 1, 1}, - {&__pyx_n_s__modules, __pyx_k__modules, sizeof(__pyx_k__modules), 0, 0, 1, 1}, - {&__pyx_n_s__name, __pyx_k__name, sizeof(__pyx_k__name), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__parsed_text, __pyx_k__parsed_text, sizeof(__pyx_k__parsed_text), 0, 0, 1, 1}, - {&__pyx_n_s__residual_text, __pyx_k__residual_text, sizeof(__pyx_k__residual_text), 0, 0, 1, 1}, - {&__pyx_n_s__same_file, __pyx_k__same_file, sizeof(__pyx_k__same_file), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__write_module, __pyx_k__write_module, sizeof(__pyx_k__write_module), 0, 0, 1, 1}, - {&__pyx_n_s__writelines, __pyx_k__writelines, sizeof(__pyx_k__writelines), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - __Pyx_RefNannyFinishContext(); - return 0; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initmodules(void); /*proto*/ -PyMODINIT_FUNC initmodules(void) -#else -PyMODINIT_FUNC PyInit_modules(void); /*proto*/ -PyMODINIT_FUNC PyInit_modules(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_modules(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("modules"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_modules) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "modules.py":28 - * - * - * from irpf90_t import * # <<<<<<<<<<<<<< - * from parsed_text import parsed_text - * from module import Fmodule - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_4)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_4)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":29 - * - * from irpf90_t import * - * from parsed_text import parsed_text # <<<<<<<<<<<<<< - * from module import Fmodule - * from util import * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__parsed_text)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__parsed_text)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__parsed_text)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__parsed_text), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__parsed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__parsed_text, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "modules.py":30 - * from irpf90_t import * - * from parsed_text import parsed_text - * from module import Fmodule # <<<<<<<<<<<<<< - * from util import * - * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Fmodule)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__Fmodule)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Fmodule)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__module), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__Fmodule); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Fmodule, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":31 - * from parsed_text import parsed_text - * from module import Fmodule - * from util import * # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_4)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_4)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_4)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "modules.py":34 - * - * ###################################################################### - * def create_modules(): # <<<<<<<<<<<<<< - * result = {} - * for filename,text in parsed_text: - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_7modules_create_modules, NULL, __pyx_n_s__modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__create_modules, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "modules.py":40 - * return result - * - * modules = create_modules() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__create_modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__modules, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":43 - * - * ###################################################################### - * def write_module(m): # <<<<<<<<<<<<<< - * # Module data - * filename = irpdir+m.name[0:-4]+".irp.module.F90" - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7modules_1write_module, NULL, __pyx_n_s__modules); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__write_module, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "modules.py":65 - * - * ###################################################################### - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * write_module(modules['psi.irp.f']) - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_2, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "modules.py":66 - * ###################################################################### - * if __name__ == '__main__': - * write_module(modules['psi.irp.f']) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__write_module); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__modules); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetItem(__pyx_t_1, ((PyObject *)__pyx_kp_s_5)); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "modules.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - if (__pyx_m) { - __Pyx_AddTraceback("init modules", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init modules"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", - index, (index == 1) ? "" : "s"); -} - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); -} - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } else if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } - } - return 0; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/modules.so b/src/modules.so deleted file mode 100755 index 880a3d7d2142b3143317a80ee7a5f5e67b2ae3e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 104446 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

RcD6lnq45Q@*DnR8L|E8-~rp&B_ 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 G;C}%}e=n{8 diff --git a/src/create_man.c b/src/create_man.c deleted file mode 100644 index 9e74626..0000000 --- a/src/create_man.c +++ /dev/null @@ -1,3912 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:12 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__create_man -#define __PYX_HAVE_API__create_man -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "create_man.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} - - -#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_List_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - - -#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { - PyObject *r; - if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { - r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { - r = PySequence_GetItem(o, i); - } - else { - r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); - } - return r; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'create_man' */ -#define __Pyx_MODULE_NAME "create_man" -int __pyx_module_is_main_create_man = 0; - -/* Implementation of 'create_man' */ -static PyObject *__pyx_builtin_open; -static char __pyx_k_1[] = "%s : %s :: %s %s"; -static char __pyx_k_5[] = ""; -static char __pyx_k_6[] = ".br"; -static char __pyx_k_7[] = "%s\n.br"; -static char __pyx_k_8[] = "%s\t:: %s\t%s"; -static char __pyx_k_9[] = "%s%s.l"; -static char __pyx_k_10[] = ".TH \"IRPF90 entities\" l %s \"IRPF90 entities\" %s"; -static char __pyx_k_11[] = ".SH Declaration"; -static char __pyx_k_12[] = ".nf"; -static char __pyx_k_13[] = ".ni"; -static char __pyx_k_14[] = ".SH Description"; -static char __pyx_k_15[] = ".SH File\n.P"; -static char __pyx_k_16[] = ".SH Needs"; -static char __pyx_k_17[] = ".SH Needed by"; -static char __pyx_k_21[] = "*"; -static char __pyx_k__l[] = "l"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__dim[] = "dim"; -static char __pyx_k__doc[] = "doc"; -static char __pyx_k__run[] = "run"; -static char __pyx_k__sys[] = "sys"; -static char __pyx_k__var[] = "var"; -static char __pyx_k__exit[] = "exit"; -static char __pyx_k__file[] = "file"; -static char __pyx_k__fork[] = "fork"; -static char __pyx_k__keys[] = "keys"; -static char __pyx_k__line[] = "line"; -static char __pyx_k__name[] = "name"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__sort[] = "sort"; -static char __pyx_k__type[] = "type"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__ljust[] = "ljust"; -static char __pyx_k__needs[] = "needs"; -static char __pyx_k__strip[] = "strip"; -static char __pyx_k__mandir[] = "mandir"; -static char __pyx_k__others[] = "others"; -static char __pyx_k__values[] = "values"; -static char __pyx_k__same_as[] = "same_as"; -static char __pyx_k__Variable[] = "Variable"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__do_print[] = "do_print"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__variable[] = "variable"; -static char __pyx_k__build_dim[] = "build_dim"; -static char __pyx_k__needed_by[] = "needed_by"; -static char __pyx_k__variables[] = "variables"; -static char __pyx_k__create_man[] = "create_man"; -static char __pyx_k__parsed_text[] = "parsed_text"; -static char __pyx_k__process_doc[] = "process_doc"; -static char __pyx_k__process_deps[] = "process_deps"; -static char __pyx_k__process_types[] = "process_types"; -static char __pyx_k__do_print_short[] = "do_print_short"; -static char __pyx_k__irpf90_entities[] = "irpf90_entities"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_10; -static PyObject *__pyx_kp_s_11; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_13; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_15; -static PyObject *__pyx_kp_s_16; -static PyObject *__pyx_kp_s_17; -static PyObject *__pyx_n_s_21; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_n_s__Variable; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__build_dim; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__create_man; -static PyObject *__pyx_n_s__dim; -static PyObject *__pyx_n_s__do_print; -static PyObject *__pyx_n_s__do_print_short; -static PyObject *__pyx_n_s__doc; -static PyObject *__pyx_n_s__exit; -static PyObject *__pyx_n_s__file; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__fork; -static PyObject *__pyx_n_s__irpf90_entities; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__keys; -static PyObject *__pyx_n_s__l; -static PyObject *__pyx_n_s__line; -static PyObject *__pyx_n_s__ljust; -static PyObject *__pyx_n_s__mandir; -static PyObject *__pyx_n_s__name; -static PyObject *__pyx_n_s__needed_by; -static PyObject *__pyx_n_s__needs; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__others; -static PyObject *__pyx_n_s__parsed_text; -static PyObject *__pyx_n_s__process_deps; -static PyObject *__pyx_n_s__process_doc; -static PyObject *__pyx_n_s__process_types; -static PyObject *__pyx_n_s__run; -static PyObject *__pyx_n_s__same_as; -static PyObject *__pyx_n_s__sort; -static PyObject *__pyx_n_s__strip; -static PyObject *__pyx_n_s__sys; -static PyObject *__pyx_n_s__type; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__values; -static PyObject *__pyx_n_s__var; -static PyObject *__pyx_n_s__variable; -static PyObject *__pyx_n_s__variables; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_int_0; -static PyObject *__pyx_int_25; -static PyObject *__pyx_k_tuple_2; -static PyObject *__pyx_k_tuple_3; -static PyObject *__pyx_k_tuple_4; -static PyObject *__pyx_k_tuple_18; -static PyObject *__pyx_k_tuple_19; -static PyObject *__pyx_k_tuple_20; - -/* "create_man.py":34 - * - * - * def do_print_short(file,var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * print >>file, "%s : %s :: %s %s"%( \ - */ - -static PyObject *__pyx_pf_10create_man_do_print_short(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_do_print_short = {__Pyx_NAMESTR("do_print_short"), (PyCFunction)__pyx_pf_10create_man_do_print_short, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_do_print_short(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_file = 0; - PyObject *__pyx_v_var = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__file,&__pyx_n_s__var,0}; - __Pyx_RefNannySetupContext("do_print_short"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__file); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__var); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("do_print_short", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "do_print_short") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_file = values[0]; - __pyx_v_var = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("do_print_short", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("create_man.do_print_short", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "create_man.py":35 - * - * def do_print_short(file,var): - * assert type(var) == Variable # <<<<<<<<<<<<<< - * print >>file, "%s : %s :: %s %s"%( \ - * var.line.filename[0].ljust(25), - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Variable); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_var)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "create_man.py":37 - * assert type(var) == Variable - * print >>file, "%s : %s :: %s %s"%( \ - * var.line.filename[0].ljust(25), # <<<<<<<<<<<<<< - * var.type.ljust(25), - * var.name.ljust(25), - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__ljust); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_2), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":38 - * print >>file, "%s : %s :: %s %s"%( \ - * var.line.filename[0].ljust(25), - * var.type.ljust(25), # <<<<<<<<<<<<<< - * var.name.ljust(25), - * build_dim(var.dim) ) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__type); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__ljust); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "create_man.py":39 - * var.line.filename[0].ljust(25), - * var.type.ljust(25), - * var.name.ljust(25), # <<<<<<<<<<<<<< - * build_dim(var.dim) ) - * - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__name); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__ljust); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_4), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "create_man.py":40 - * var.type.ljust(25), - * var.name.ljust(25), - * build_dim(var.dim) ) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__build_dim); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__dim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - PyTuple_SET_ITEM(__pyx_t_7, 3, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_2 = 0; - __pyx_t_1 = 0; - __pyx_t_4 = 0; - __pyx_t_6 = 0; - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_6)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("create_man.do_print_short", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "create_man.py":43 - * - * ###################################################################### - * def process_doc(file,line): # <<<<<<<<<<<<<< - * assert type(line) == str - * line = line.strip() - */ - -static PyObject *__pyx_pf_10create_man_1process_doc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_1process_doc = {__Pyx_NAMESTR("process_doc"), (PyCFunction)__pyx_pf_10create_man_1process_doc, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_1process_doc(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_file = 0; - PyObject *__pyx_v_line = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__file,&__pyx_n_s__line,0}; - __Pyx_RefNannySetupContext("process_doc"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__file); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("process_doc", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "process_doc") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_file = values[0]; - __pyx_v_line = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_doc", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("create_man.process_doc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_INCREF(__pyx_v_line); - - /* "create_man.py":44 - * ###################################################################### - * def process_doc(file,line): - * assert type(line) == str # <<<<<<<<<<<<<< - * line = line.strip() - * if line == "": - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_line)), ((PyObject *)((PyObject*)(&PyString_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "create_man.py":45 - * def process_doc(file,line): - * assert type(line) == str - * line = line.strip() # <<<<<<<<<<<<<< - * if line == "": - * line = ".br" - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__strip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_3; - __pyx_t_3 = 0; - - /* "create_man.py":46 - * assert type(line) == str - * line = line.strip() - * if line == "": # <<<<<<<<<<<<<< - * line = ".br" - * print >>file, line - */ - __pyx_t_2 = __Pyx_PyString_Equals(__pyx_v_line, ((PyObject *)__pyx_kp_s_5), Py_EQ); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_2) { - - /* "create_man.py":47 - * line = line.strip() - * if line == "": - * line = ".br" # <<<<<<<<<<<<<< - * print >>file, line - * - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_6)); - __Pyx_DECREF(__pyx_v_line); - __pyx_v_line = ((PyObject *)__pyx_kp_s_6); - goto __pyx_L6; - } - __pyx_L6:; - - /* "create_man.py":48 - * if line == "": - * line = ".br" - * print >>file, line # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - if (__Pyx_PrintOne(__pyx_v_file, __pyx_v_line) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_AddTraceback("create_man.process_doc", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "create_man.py":51 - * - * ###################################################################### - * def process_deps(file,l): # <<<<<<<<<<<<<< - * assert type(l) == list - * for v in l: - */ - -static PyObject *__pyx_pf_10create_man_2process_deps(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_2process_deps = {__Pyx_NAMESTR("process_deps"), (PyCFunction)__pyx_pf_10create_man_2process_deps, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_2process_deps(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_file = 0; - PyObject *__pyx_v_l = 0; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - Py_ssize_t __pyx_t_3; - PyObject *(*__pyx_t_4)(PyObject *); - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__file,&__pyx_n_s__l,0}; - __Pyx_RefNannySetupContext("process_deps"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__file); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__l); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("process_deps", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "process_deps") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_file = values[0]; - __pyx_v_l = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_deps", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("create_man.process_deps", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "create_man.py":52 - * ###################################################################### - * def process_deps(file,l): - * assert type(l) == list # <<<<<<<<<<<<<< - * for v in l: - * print >>file, "%s\n.br"%(v,) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_l)), ((PyObject *)((PyObject*)(&PyList_Type))), Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "create_man.py":53 - * def process_deps(file,l): - * assert type(l) == list - * for v in l: # <<<<<<<<<<<<<< - * print >>file, "%s\n.br"%(v,) - * - */ - if (PyList_CheckExact(__pyx_v_l) || PyTuple_CheckExact(__pyx_v_l)) { - __pyx_t_1 = __pyx_v_l; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0; - __pyx_t_4 = NULL; - } else { - __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_l); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; - } else { - __pyx_t_5 = __pyx_t_4(__pyx_t_1); - if (unlikely(!__pyx_t_5)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_5); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_5; - __pyx_t_5 = 0; - - /* "create_man.py":54 - * assert type(l) == list - * for v in l: - * print >>file, "%s\n.br"%(v,) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_7), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_6)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("create_man.process_deps", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "create_man.py":57 - * - * ###################################################################### - * def process_types(file,var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * vars = [var.name] + var.others - */ - -static PyObject *__pyx_pf_10create_man_3process_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_3process_types = {__Pyx_NAMESTR("process_types"), (PyCFunction)__pyx_pf_10create_man_3process_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_3process_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_file = 0; - PyObject *__pyx_v_var = 0; - PyObject *__pyx_v_vars = NULL; - PyObject *__pyx_v_name = NULL; - PyObject *__pyx_v_Type = NULL; - PyObject *__pyx_v_dim = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__file,&__pyx_n_s__var,0}; - __Pyx_RefNannySetupContext("process_types"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__file); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__var); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("process_types", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "process_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_file = values[0]; - __pyx_v_var = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_types", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("create_man.process_types", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - __Pyx_INCREF(__pyx_v_var); - - /* "create_man.py":58 - * ###################################################################### - * def process_types(file,var): - * assert type(var) == Variable # <<<<<<<<<<<<<< - * vars = [var.name] + var.others - * for var in vars: - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Variable); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_var)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "create_man.py":59 - * def process_types(file,var): - * assert type(var) == Variable - * vars = [var.name] + var.others # <<<<<<<<<<<<<< - * for var in vars: - * name = var - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__name); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__others); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyNumber_Add(((PyObject *)__pyx_t_1), __pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_vars = __pyx_t_4; - __pyx_t_4 = 0; - - /* "create_man.py":60 - * assert type(var) == Variable - * vars = [var.name] + var.others - * for var in vars: # <<<<<<<<<<<<<< - * name = var - * var = variables[var] - */ - if (PyList_CheckExact(__pyx_v_vars) || PyTuple_CheckExact(__pyx_v_vars)) { - __pyx_t_4 = __pyx_v_vars; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_vars); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_4)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_4)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; - } else { - __pyx_t_2 = __pyx_t_6(__pyx_t_4); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_2; - __pyx_t_2 = 0; - - /* "create_man.py":61 - * vars = [var.name] + var.others - * for var in vars: - * name = var # <<<<<<<<<<<<<< - * var = variables[var] - * Type = var.type - */ - __Pyx_INCREF(__pyx_v_var); - __Pyx_XDECREF(__pyx_v_name); - __pyx_v_name = __pyx_v_var; - - /* "create_man.py":62 - * for var in vars: - * name = var - * var = variables[var] # <<<<<<<<<<<<<< - * Type = var.type - * dim = build_dim(var.dim) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_v_var); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":63 - * name = var - * var = variables[var] - * Type = var.type # <<<<<<<<<<<<<< - * dim = build_dim(var.dim) - * print >>file, "%s\t:: %s\t%s"%(Type,name,dim) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__type); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_v_Type); - __pyx_v_Type = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":64 - * var = variables[var] - * Type = var.type - * dim = build_dim(var.dim) # <<<<<<<<<<<<<< - * print >>file, "%s\t:: %s\t%s"%(Type,name,dim) - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__build_dim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__dim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_v_dim); - __pyx_v_dim = __pyx_t_2; - __pyx_t_2 = 0; - - /* "create_man.py":65 - * Type = var.type - * dim = build_dim(var.dim) - * print >>file, "%s\t:: %s\t%s"%(Type,name,dim) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_Type); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_Type); - __Pyx_GIVEREF(__pyx_v_Type); - __Pyx_INCREF(__pyx_v_name); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_name); - __Pyx_GIVEREF(__pyx_v_name); - __Pyx_INCREF(__pyx_v_dim); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_dim); - __Pyx_GIVEREF(__pyx_v_dim); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_8), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("create_man.process_types", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_vars); - __Pyx_XDECREF(__pyx_v_name); - __Pyx_XDECREF(__pyx_v_Type); - __Pyx_XDECREF(__pyx_v_dim); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "create_man.py":68 - * - * ###################################################################### - * def do_print(var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * filename = var.line.filename[0] - */ - -static PyObject *__pyx_pf_10create_man_4do_print(PyObject *__pyx_self, PyObject *__pyx_v_var); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_4do_print = {__Pyx_NAMESTR("do_print"), (PyCFunction)__pyx_pf_10create_man_4do_print, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_4do_print(PyObject *__pyx_self, PyObject *__pyx_v_var) { - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_name = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_l = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - PyObject *(*__pyx_t_6)(PyObject *); - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("do_print"); - __pyx_self = __pyx_self; - __Pyx_INCREF(__pyx_v_var); - - /* "create_man.py":69 - * ###################################################################### - * def do_print(var): - * assert type(var) == Variable # <<<<<<<<<<<<<< - * filename = var.line.filename[0] - * name = var.name - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Variable); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_var)), __pyx_t_1, Py_EQ); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "create_man.py":70 - * def do_print(var): - * assert type(var) == Variable - * filename = var.line.filename[0] # <<<<<<<<<<<<<< - * name = var.name - * file = open("%s%s.l"%(mandir,var.name), "w") - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_v_filename = __pyx_t_2; - __pyx_t_2 = 0; - - /* "create_man.py":71 - * assert type(var) == Variable - * filename = var.line.filename[0] - * name = var.name # <<<<<<<<<<<<<< - * file = open("%s%s.l"%(mandir,var.name), "w") - * print >>file, '.TH "IRPF90 entities" l %s "IRPF90 entities" %s'%(name,name) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__name); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_name = __pyx_t_2; - __pyx_t_2 = 0; - - /* "create_man.py":72 - * filename = var.line.filename[0] - * name = var.name - * file = open("%s%s.l"%(mandir,var.name), "w") # <<<<<<<<<<<<<< - * print >>file, '.TH "IRPF90 entities" l %s "IRPF90 entities" %s'%(name,name) - * if var.same_as != var.name: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__mandir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_2 = 0; - __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_9), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)__pyx_t_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_v_file = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":73 - * name = var.name - * file = open("%s%s.l"%(mandir,var.name), "w") - * print >>file, '.TH "IRPF90 entities" l %s "IRPF90 entities" %s'%(name,name) # <<<<<<<<<<<<<< - * if var.same_as != var.name: - * var = variables[var.same_as] - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_name); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_name); - __Pyx_GIVEREF(__pyx_v_name); - __Pyx_INCREF(__pyx_v_name); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_name); - __Pyx_GIVEREF(__pyx_v_name); - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_10), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - - /* "create_man.py":74 - * file = open("%s%s.l"%(mandir,var.name), "w") - * print >>file, '.TH "IRPF90 entities" l %s "IRPF90 entities" %s'%(name,name) - * if var.same_as != var.name: # <<<<<<<<<<<<<< - * var = variables[var.same_as] - * print >>file, ".SH Declaration" - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__same_as); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_RichCompare(__pyx_t_4, __pyx_t_1, Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "create_man.py":75 - * print >>file, '.TH "IRPF90 entities" l %s "IRPF90 entities" %s'%(name,name) - * if var.same_as != var.name: - * var = variables[var.same_as] # <<<<<<<<<<<<<< - * print >>file, ".SH Declaration" - * print >>file, ".nf" - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__same_as); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_t_1); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_4; - __pyx_t_4 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "create_man.py":76 - * if var.same_as != var.name: - * var = variables[var.same_as] - * print >>file, ".SH Declaration" # <<<<<<<<<<<<<< - * print >>file, ".nf" - * process_types(file,var) - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_11)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":77 - * var = variables[var.same_as] - * print >>file, ".SH Declaration" - * print >>file, ".nf" # <<<<<<<<<<<<<< - * process_types(file,var) - * print >>file, ".ni" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_12)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":78 - * print >>file, ".SH Declaration" - * print >>file, ".nf" - * process_types(file,var) # <<<<<<<<<<<<<< - * print >>file, ".ni" - * if var.doc != []: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__process_types); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_file); - __Pyx_GIVEREF(__pyx_v_file); - __Pyx_INCREF(__pyx_v_var); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_var); - __Pyx_GIVEREF(__pyx_v_var); - __pyx_t_2 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":79 - * print >>file, ".nf" - * process_types(file,var) - * print >>file, ".ni" # <<<<<<<<<<<<<< - * if var.doc != []: - * print >>file, ".SH Description" - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_13)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":80 - * process_types(file,var) - * print >>file, ".ni" - * if var.doc != []: # <<<<<<<<<<<<<< - * print >>file, ".SH Description" - * for l in var.doc: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__doc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_4 = PyObject_RichCompare(__pyx_t_2, ((PyObject *)__pyx_t_1), Py_NE); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (__pyx_t_3) { - - /* "create_man.py":81 - * print >>file, ".ni" - * if var.doc != []: - * print >>file, ".SH Description" # <<<<<<<<<<<<<< - * for l in var.doc: - * process_doc(file,l) - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_14)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":82 - * if var.doc != []: - * print >>file, ".SH Description" - * for l in var.doc: # <<<<<<<<<<<<<< - * process_doc(file,l) - * print >>file, ".SH File\n.P" - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__doc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) { - __pyx_t_1 = __pyx_t_4; __Pyx_INCREF(__pyx_t_1); __pyx_t_5 = 0; - __pyx_t_6 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; - } else { - __pyx_t_4 = __pyx_t_6(__pyx_t_1); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_l); - __pyx_v_l = __pyx_t_4; - __pyx_t_4 = 0; - - /* "create_man.py":83 - * print >>file, ".SH Description" - * for l in var.doc: - * process_doc(file,l) # <<<<<<<<<<<<<< - * print >>file, ".SH File\n.P" - * print >>file, filename - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__process_doc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_file); - __Pyx_GIVEREF(__pyx_v_file); - __Pyx_INCREF(__pyx_v_l); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_l); - __Pyx_GIVEREF(__pyx_v_l); - __pyx_t_7 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - /* "create_man.py":84 - * for l in var.doc: - * process_doc(file,l) - * print >>file, ".SH File\n.P" # <<<<<<<<<<<<<< - * print >>file, filename - * if var.needs != []: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_15)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":85 - * process_doc(file,l) - * print >>file, ".SH File\n.P" - * print >>file, filename # <<<<<<<<<<<<<< - * if var.needs != []: - * var.needs.sort() - */ - if (__Pyx_PrintOne(__pyx_v_file, __pyx_v_filename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":86 - * print >>file, ".SH File\n.P" - * print >>file, filename - * if var.needs != []: # <<<<<<<<<<<<<< - * var.needs.sort() - * print >>file, ".SH Needs" - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, ((PyObject *)__pyx_t_7), Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "create_man.py":87 - * print >>file, filename - * if var.needs != []: - * var.needs.sort() # <<<<<<<<<<<<<< - * print >>file, ".SH Needs" - * process_deps(file,var.needs) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__sort); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":88 - * if var.needs != []: - * var.needs.sort() - * print >>file, ".SH Needs" # <<<<<<<<<<<<<< - * process_deps(file,var.needs) - * if var.needed_by != []: - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_16)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":89 - * var.needs.sort() - * print >>file, ".SH Needs" - * process_deps(file,var.needs) # <<<<<<<<<<<<<< - * if var.needed_by != []: - * var.needed_by.sort() - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__process_deps); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_file); - __Pyx_GIVEREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_7); - __Pyx_GIVEREF(__pyx_t_7); - __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L9; - } - __pyx_L9:; - - /* "create_man.py":90 - * print >>file, ".SH Needs" - * process_deps(file,var.needs) - * if var.needed_by != []: # <<<<<<<<<<<<<< - * var.needed_by.sort() - * print >>file, ".SH Needed by" - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __pyx_t_2 = PyObject_RichCompare(__pyx_t_7, ((PyObject *)__pyx_t_1), Py_NE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "create_man.py":91 - * process_deps(file,var.needs) - * if var.needed_by != []: - * var.needed_by.sort() # <<<<<<<<<<<<<< - * print >>file, ".SH Needed by" - * process_deps(file,var.needed_by) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__sort); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":92 - * if var.needed_by != []: - * var.needed_by.sort() - * print >>file, ".SH Needed by" # <<<<<<<<<<<<<< - * process_deps(file,var.needed_by) - * file.close() - */ - if (__Pyx_PrintOne(__pyx_v_file, ((PyObject *)__pyx_kp_s_17)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "create_man.py":93 - * var.needed_by.sort() - * print >>file, ".SH Needed by" - * process_deps(file,var.needed_by) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__process_deps); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_v_var, __pyx_n_s__needed_by); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_file); - __Pyx_GIVEREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "create_man.py":94 - * print >>file, ".SH Needed by" - * process_deps(file,var.needed_by) - * file.close() # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("create_man.do_print", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_name); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_l); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "create_man.py":97 - * - * ###################################################################### - * def run(): # <<<<<<<<<<<<<< - * import parsed_text - * import os,sys - */ - -static PyObject *__pyx_pf_10create_man_5run(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_10create_man_5run = {__Pyx_NAMESTR("run"), (PyCFunction)__pyx_pf_10create_man_5run, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_10create_man_5run(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_parsed_text = NULL; - PyObject *__pyx_v_os = NULL; - PyObject *__pyx_v_sys = NULL; - PyObject *__pyx_v_v = NULL; - PyObject *__pyx_v_l = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("run"); - __pyx_self = __pyx_self; - - /* "create_man.py":98 - * ###################################################################### - * def run(): - * import parsed_text # <<<<<<<<<<<<<< - * import os,sys - * if os.fork() == 0: - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__parsed_text), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_parsed_text = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":99 - * def run(): - * import parsed_text - * import os,sys # <<<<<<<<<<<<<< - * if os.fork() == 0: - * for v in variables.values(): - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_os = __pyx_t_1; - __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__sys), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_sys = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":100 - * import parsed_text - * import os,sys - * if os.fork() == 0: # <<<<<<<<<<<<<< - * for v in variables.values(): - * do_print(v) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__fork); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "create_man.py":101 - * import os,sys - * if os.fork() == 0: - * for v in variables.values(): # <<<<<<<<<<<<<< - * do_print(v) - * sys.exit(0) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_1; - __pyx_t_1 = 0; - - /* "create_man.py":102 - * if os.fork() == 0: - * for v in variables.values(): - * do_print(v) # <<<<<<<<<<<<<< - * sys.exit(0) - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_print); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_v); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_v); - __Pyx_GIVEREF(__pyx_v_v); - __pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":103 - * for v in variables.values(): - * do_print(v) - * sys.exit(0) # <<<<<<<<<<<<<< - * - * if os.fork() == 0: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_sys, __pyx_n_s__exit); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_7 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_18), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "create_man.py":105 - * sys.exit(0) - * - * if os.fork() == 0: # <<<<<<<<<<<<<< - * l = variables.keys() - * file = open("irpf90_entities","w") - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__fork); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_RichCompare(__pyx_t_2, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - if (__pyx_t_3) { - - /* "create_man.py":106 - * - * if os.fork() == 0: - * l = variables.keys() # <<<<<<<<<<<<<< - * file = open("irpf90_entities","w") - * l.sort() - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__keys); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_v_l = __pyx_t_7; - __pyx_t_7 = 0; - - /* "create_man.py":107 - * if os.fork() == 0: - * l = variables.keys() - * file = open("irpf90_entities","w") # <<<<<<<<<<<<<< - * l.sort() - * for v in l: - */ - __pyx_t_7 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_k_tuple_19), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_v_file = __pyx_t_7; - __pyx_t_7 = 0; - - /* "create_man.py":108 - * l = variables.keys() - * file = open("irpf90_entities","w") - * l.sort() # <<<<<<<<<<<<<< - * for v in l: - * do_print_short(file,variables[v]) - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_l, __pyx_n_s__sort); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_2 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":109 - * file = open("irpf90_entities","w") - * l.sort() - * for v in l: # <<<<<<<<<<<<<< - * do_print_short(file,variables[v]) - * file.close() - */ - if (PyList_CheckExact(__pyx_v_l) || PyTuple_CheckExact(__pyx_v_l)) { - __pyx_t_2 = __pyx_v_l; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_l); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_7); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_7); __pyx_t_4++; - } else { - __pyx_t_7 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_v); - __pyx_v_v = __pyx_t_7; - __pyx_t_7 = 0; - - /* "create_man.py":110 - * l.sort() - * for v in l: - * do_print_short(file,variables[v]) # <<<<<<<<<<<<<< - * file.close() - * sys.exit(0) - */ - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_print_short); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__variables); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_1 = PyObject_GetItem(__pyx_t_6, __pyx_v_v); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_file); - __Pyx_GIVEREF(__pyx_v_file); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":111 - * for v in l: - * do_print_short(file,variables[v]) - * file.close() # <<<<<<<<<<<<<< - * sys.exit(0) - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":112 - * do_print_short(file,variables[v]) - * file.close() - * sys.exit(0) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_sys, __pyx_n_s__exit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_20), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_AddTraceback("create_man.run", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_parsed_text); - __Pyx_XDECREF(__pyx_v_os); - __Pyx_XDECREF(__pyx_v_sys); - __Pyx_XDECREF(__pyx_v_v); - __Pyx_XDECREF(__pyx_v_l); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("create_man"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0}, - {&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0}, - {&__pyx_kp_s_16, __pyx_k_16, sizeof(__pyx_k_16), 0, 0, 1, 0}, - {&__pyx_kp_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 0}, - {&__pyx_n_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 1}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_n_s__Variable, __pyx_k__Variable, sizeof(__pyx_k__Variable), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__build_dim, __pyx_k__build_dim, sizeof(__pyx_k__build_dim), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__create_man, __pyx_k__create_man, sizeof(__pyx_k__create_man), 0, 0, 1, 1}, - {&__pyx_n_s__dim, __pyx_k__dim, sizeof(__pyx_k__dim), 0, 0, 1, 1}, - {&__pyx_n_s__do_print, __pyx_k__do_print, sizeof(__pyx_k__do_print), 0, 0, 1, 1}, - {&__pyx_n_s__do_print_short, __pyx_k__do_print_short, sizeof(__pyx_k__do_print_short), 0, 0, 1, 1}, - {&__pyx_n_s__doc, __pyx_k__doc, sizeof(__pyx_k__doc), 0, 0, 1, 1}, - {&__pyx_n_s__exit, __pyx_k__exit, sizeof(__pyx_k__exit), 0, 0, 1, 1}, - {&__pyx_n_s__file, __pyx_k__file, sizeof(__pyx_k__file), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__fork, __pyx_k__fork, sizeof(__pyx_k__fork), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_entities, __pyx_k__irpf90_entities, sizeof(__pyx_k__irpf90_entities), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__keys, __pyx_k__keys, sizeof(__pyx_k__keys), 0, 0, 1, 1}, - {&__pyx_n_s__l, __pyx_k__l, sizeof(__pyx_k__l), 0, 0, 1, 1}, - {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, - {&__pyx_n_s__ljust, __pyx_k__ljust, sizeof(__pyx_k__ljust), 0, 0, 1, 1}, - {&__pyx_n_s__mandir, __pyx_k__mandir, sizeof(__pyx_k__mandir), 0, 0, 1, 1}, - {&__pyx_n_s__name, __pyx_k__name, sizeof(__pyx_k__name), 0, 0, 1, 1}, - {&__pyx_n_s__needed_by, __pyx_k__needed_by, sizeof(__pyx_k__needed_by), 0, 0, 1, 1}, - {&__pyx_n_s__needs, __pyx_k__needs, sizeof(__pyx_k__needs), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__others, __pyx_k__others, sizeof(__pyx_k__others), 0, 0, 1, 1}, - {&__pyx_n_s__parsed_text, __pyx_k__parsed_text, sizeof(__pyx_k__parsed_text), 0, 0, 1, 1}, - {&__pyx_n_s__process_deps, __pyx_k__process_deps, sizeof(__pyx_k__process_deps), 0, 0, 1, 1}, - {&__pyx_n_s__process_doc, __pyx_k__process_doc, sizeof(__pyx_k__process_doc), 0, 0, 1, 1}, - {&__pyx_n_s__process_types, __pyx_k__process_types, sizeof(__pyx_k__process_types), 0, 0, 1, 1}, - {&__pyx_n_s__run, __pyx_k__run, sizeof(__pyx_k__run), 0, 0, 1, 1}, - {&__pyx_n_s__same_as, __pyx_k__same_as, sizeof(__pyx_k__same_as), 0, 0, 1, 1}, - {&__pyx_n_s__sort, __pyx_k__sort, sizeof(__pyx_k__sort), 0, 0, 1, 1}, - {&__pyx_n_s__strip, __pyx_k__strip, sizeof(__pyx_k__strip), 0, 0, 1, 1}, - {&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1}, - {&__pyx_n_s__type, __pyx_k__type, sizeof(__pyx_k__type), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__values, __pyx_k__values, sizeof(__pyx_k__values), 0, 0, 1, 1}, - {&__pyx_n_s__var, __pyx_k__var, sizeof(__pyx_k__var), 0, 0, 1, 1}, - {&__pyx_n_s__variable, __pyx_k__variable, sizeof(__pyx_k__variable), 0, 0, 1, 1}, - {&__pyx_n_s__variables, __pyx_k__variables, sizeof(__pyx_k__variables), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "create_man.py":37 - * assert type(var) == Variable - * print >>file, "%s : %s :: %s %s"%( \ - * var.line.filename[0].ljust(25), # <<<<<<<<<<<<<< - * var.type.ljust(25), - * var.name.ljust(25), - */ - __pyx_k_tuple_2 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_2)); - __Pyx_INCREF(__pyx_int_25); - PyTuple_SET_ITEM(__pyx_k_tuple_2, 0, __pyx_int_25); - __Pyx_GIVEREF(__pyx_int_25); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_2)); - - /* "create_man.py":38 - * print >>file, "%s : %s :: %s %s"%( \ - * var.line.filename[0].ljust(25), - * var.type.ljust(25), # <<<<<<<<<<<<<< - * var.name.ljust(25), - * build_dim(var.dim) ) - */ - __pyx_k_tuple_3 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_3)); - __Pyx_INCREF(__pyx_int_25); - PyTuple_SET_ITEM(__pyx_k_tuple_3, 0, __pyx_int_25); - __Pyx_GIVEREF(__pyx_int_25); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_3)); - - /* "create_man.py":39 - * var.line.filename[0].ljust(25), - * var.type.ljust(25), - * var.name.ljust(25), # <<<<<<<<<<<<<< - * build_dim(var.dim) ) - * - */ - __pyx_k_tuple_4 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_4)); - __Pyx_INCREF(__pyx_int_25); - PyTuple_SET_ITEM(__pyx_k_tuple_4, 0, __pyx_int_25); - __Pyx_GIVEREF(__pyx_int_25); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_4)); - - /* "create_man.py":103 - * for v in variables.values(): - * do_print(v) - * sys.exit(0) # <<<<<<<<<<<<<< - * - * if os.fork() == 0: - */ - __pyx_k_tuple_18 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_18)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_k_tuple_18, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_18)); - - /* "create_man.py":107 - * if os.fork() == 0: - * l = variables.keys() - * file = open("irpf90_entities","w") # <<<<<<<<<<<<<< - * l.sort() - * for v in l: - */ - __pyx_k_tuple_19 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_19)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_19)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__irpf90_entities)); - PyTuple_SET_ITEM(__pyx_k_tuple_19, 0, ((PyObject *)__pyx_n_s__irpf90_entities)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__irpf90_entities)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_k_tuple_19, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_19)); - - /* "create_man.py":112 - * do_print_short(file,variables[v]) - * file.close() - * sys.exit(0) # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_k_tuple_20 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_20)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_20)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_k_tuple_20, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_20)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_25 = PyInt_FromLong(25); if (unlikely(!__pyx_int_25)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initcreate_man(void); /*proto*/ -PyMODINIT_FUNC initcreate_man(void) -#else -PyMODINIT_FUNC PyInit_create_man(void); /*proto*/ -PyMODINIT_FUNC PyInit_create_man(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_create_man(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("create_man"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_create_man) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "create_man.py":28 - * - * - * from variable import Variable # <<<<<<<<<<<<<< - * from variables import variables - * from irpf90_t import * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Variable)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__Variable)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Variable)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__variable), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__Variable); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Variable, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":29 - * - * from variable import Variable - * from variables import variables # <<<<<<<<<<<<<< - * from irpf90_t import * - * from util import * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__variables, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":30 - * from variable import Variable - * from variables import variables - * from irpf90_t import * # <<<<<<<<<<<<<< - * from util import * - * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_21)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_21)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_21)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "create_man.py":31 - * from variables import variables - * from irpf90_t import * - * from util import * # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_21)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s_21)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_21)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__util), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - if (__pyx_import_star(__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":34 - * - * - * def do_print_short(file,var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * print >>file, "%s : %s :: %s %s"%( \ - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_do_print_short, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__do_print_short, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":43 - * - * ###################################################################### - * def process_doc(file,line): # <<<<<<<<<<<<<< - * assert type(line) == str - * line = line.strip() - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_1process_doc, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__process_doc, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":51 - * - * ###################################################################### - * def process_deps(file,l): # <<<<<<<<<<<<<< - * assert type(l) == list - * for v in l: - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_2process_deps, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__process_deps, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":57 - * - * ###################################################################### - * def process_types(file,var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * vars = [var.name] + var.others - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_3process_types, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__process_types, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":68 - * - * ###################################################################### - * def do_print(var): # <<<<<<<<<<<<<< - * assert type(var) == Variable - * filename = var.line.filename[0] - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_4do_print, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__do_print, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":97 - * - * ###################################################################### - * def run(): # <<<<<<<<<<<<<< - * import parsed_text - * import os,sys - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_10create_man_5run, NULL, __pyx_n_s__create_man); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__run, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "create_man.py":115 - * - * ###################################################################### - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * run() - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_1, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "create_man.py":116 - * ###################################################################### - * if __name__ == '__main__': - * run() # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__run); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "create_man.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - if (__pyx_m) { - __Pyx_AddTraceback("init create_man", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init create_man"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/create_man.so b/src/create_man.so deleted file mode 100755 index 7088877f511c7286d78be682f3bdb46b78a6b386..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 170349 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 U;`0Svs@8HV_N6&nR&!7OKNd9=ApigX diff --git a/src/error.c b/src/error.c deleted file mode 100644 index 0ea179f..0000000 --- a/src/error.c +++ /dev/null @@ -1,2334 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:30 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__error -#define __PYX_HAVE_API__error -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "error.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, - Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, PyObject* kw_name); /*proto*/ - -static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static CYTHON_INLINE int __Pyx_StrEq(const char *, const char *); /*proto*/ - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'error' */ -#define __Pyx_MODULE_NAME "error" -int __pyx_module_is_main_error = 0; - -/* Implementation of 'error' */ -static char __pyx_k_1[] = "\nError:\n-----\n"; -static char __pyx_k_2[] = "\n"; -static char __pyx_k_3[] = "file %s ; line %d :\n %s"; -static char __pyx_k_5[] = "\nWarning:\n-------\n"; -static char __pyx_k_6[] = "file %s, line %d:\n %s"; -static char __pyx_k_7[] = "Warning: %s"; -static char __pyx_k_8[] = "*"; -static char __pyx_k__i[] = "i"; -static char __pyx_k__sys[] = "sys"; -static char __pyx_k__Line[] = "Line"; -static char __pyx_k__exit[] = "exit"; -static char __pyx_k__fail[] = "fail"; -static char __pyx_k__line[] = "line"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__warn[] = "warn"; -static char __pyx_k__empty[] = "empty"; -static char __pyx_k__error[] = "error"; -static char __pyx_k__Message[] = "Message"; -static char __pyx_k__message[] = "message"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__filename[] = "filename"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__testfile[] = "testfile"; -static char __pyx_k__Empty_line[] = "Empty_line"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_7; -static PyObject *__pyx_n_s_8; -static PyObject *__pyx_n_s__Empty_line; -static PyObject *__pyx_n_s__Line; -static PyObject *__pyx_n_s__Message; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__empty; -static PyObject *__pyx_n_s__error; -static PyObject *__pyx_n_s__exit; -static PyObject *__pyx_n_s__fail; -static PyObject *__pyx_n_s__filename; -static PyObject *__pyx_n_s__i; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__line; -static PyObject *__pyx_n_s__message; -static PyObject *__pyx_n_s__sys; -static PyObject *__pyx_n_s__testfile; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__warn; -static PyObject *__pyx_int_1; -static PyObject *__pyx_int_3; -static PyObject *__pyx_k_tuple_4; -static PyObject *__pyx_k_tuple_9; - -/* "error.py":32 - * - * ###################################################################### - * def fail(line,message): # <<<<<<<<<<<<<< - * print """ - * Error: - */ - -static PyObject *__pyx_pf_5error_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_5error_fail = {__Pyx_NAMESTR("fail"), (PyCFunction)__pyx_pf_5error_fail, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_5error_fail(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_line = 0; - PyObject *__pyx_v_message = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__line,&__pyx_n_s__message,0}; - __Pyx_RefNannySetupContext("fail"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__message); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("fail", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "fail") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_line = values[0]; - __pyx_v_message = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("fail", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("error.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "error.py":33 - * ###################################################################### - * def fail(line,message): - * print """ # <<<<<<<<<<<<<< - * Error: - * ----- - */ - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_kp_s_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "error.py":37 - * ----- - * """ - * print message, '\n' # <<<<<<<<<<<<<< - * if line is not None: - * assert isinstance(line,Line) - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_message); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_message); - __Pyx_GIVEREF(__pyx_v_message); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - if (__Pyx_Print(0, ((PyObject *)__pyx_t_1), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "error.py":38 - * """ - * print message, '\n' - * if line is not None: # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * print "file %s ; line %d :\n %s"%(line.filename,line.i,line.text) - */ - __pyx_t_2 = (__pyx_v_line != Py_None); - if (__pyx_t_2) { - - /* "error.py":39 - * print message, '\n' - * if line is not None: - * assert isinstance(line,Line) # <<<<<<<<<<<<<< - * print "file %s ; line %d :\n %s"%(line.filename,line.i,line.text) - * sys.exit(1) - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_IsInstance(__pyx_v_line, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "error.py":40 - * if line is not None: - * assert isinstance(line,Line) - * print "file %s ; line %d :\n %s"%(line.filename,line.i,line.text) # <<<<<<<<<<<<<< - * sys.exit(1) - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_1 = 0; - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - goto __pyx_L6; - } - __pyx_L6:; - - /* "error.py":41 - * assert isinstance(line,Line) - * print "file %s ; line %d :\n %s"%(line.filename,line.i,line.text) - * sys.exit(1) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__sys); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__exit); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_4), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("error.fail", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "error.py":45 - * - * ###################################################################### - * def warn(line,message): # <<<<<<<<<<<<<< - * if line is not None: - * assert isinstance(line,Line) - */ - -static PyObject *__pyx_pf_5error_1warn(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ -static PyMethodDef __pyx_mdef_5error_1warn = {__Pyx_NAMESTR("warn"), (PyCFunction)__pyx_pf_5error_1warn, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_5error_1warn(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { - PyObject *__pyx_v_line = 0; - PyObject *__pyx_v_message = 0; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - int __pyx_t_1; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__line,&__pyx_n_s__message,0}; - __Pyx_RefNannySetupContext("warn"); - __pyx_self = __pyx_self; - { - PyObject* values[2] = {0,0}; - if (unlikely(__pyx_kwds)) { - Py_ssize_t kw_args; - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - case 0: break; - default: goto __pyx_L5_argtuple_error; - } - kw_args = PyDict_Size(__pyx_kwds); - switch (PyTuple_GET_SIZE(__pyx_args)) { - case 0: - values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); - if (likely(values[0])) kw_args--; - else goto __pyx_L5_argtuple_error; - case 1: - values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__message); - if (likely(values[1])) kw_args--; - else { - __Pyx_RaiseArgtupleInvalid("warn", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } - if (unlikely(kw_args > 0)) { - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "warn") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - } - } else if (PyTuple_GET_SIZE(__pyx_args) != 2) { - goto __pyx_L5_argtuple_error; - } else { - values[0] = PyTuple_GET_ITEM(__pyx_args, 0); - values[1] = PyTuple_GET_ITEM(__pyx_args, 1); - } - __pyx_v_line = values[0]; - __pyx_v_message = values[1]; - } - goto __pyx_L4_argument_unpacking_done; - __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("warn", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L3_error;} - __pyx_L3_error:; - __Pyx_AddTraceback("error.warn", __pyx_clineno, __pyx_lineno, __pyx_filename); - __Pyx_RefNannyFinishContext(); - return NULL; - __pyx_L4_argument_unpacking_done:; - - /* "error.py":46 - * ###################################################################### - * def warn(line,message): - * if line is not None: # <<<<<<<<<<<<<< - * assert isinstance(line,Line) - * print """ - */ - __pyx_t_1 = (__pyx_v_line != Py_None); - if (__pyx_t_1) { - - /* "error.py":47 - * def warn(line,message): - * if line is not None: - * assert isinstance(line,Line) # <<<<<<<<<<<<<< - * print """ - * Warning: - */ - #ifndef CYTHON_WITHOUT_ASSERTIONS - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_IsInstance(__pyx_v_line, __pyx_t_2); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) { - PyErr_SetNone(PyExc_AssertionError); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - #endif - - /* "error.py":48 - * if line is not None: - * assert isinstance(line,Line) - * print """ # <<<<<<<<<<<<<< - * Warning: - * ------- - */ - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_kp_s_5)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - - /* "error.py":52 - * ------- - * """ - * print message, '\n' # <<<<<<<<<<<<<< - * print "file %s, line %d:\n %s"%(line.filename,line.i,line.text) - * else: - */ - __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(__pyx_v_message); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_message); - __Pyx_GIVEREF(__pyx_v_message); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_kp_s_2)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_2)); - if (__Pyx_Print(0, ((PyObject *)__pyx_t_2), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - - /* "error.py":53 - * """ - * print message, '\n' - * print "file %s, line %d:\n %s"%(line.filename,line.i,line.text) # <<<<<<<<<<<<<< - * else: - * print "Warning: %s"%(message) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__filename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__i); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_5)); - PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_2 = 0; - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_6), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - goto __pyx_L6; - } - /*else*/ { - - /* "error.py":55 - * print "file %s, line %d:\n %s"%(line.filename,line.i,line.text) - * else: - * print "Warning: %s"%(message) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_7), __pyx_v_message); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_4)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - } - __pyx_L6:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_AddTraceback("error.warn", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -char* __pyx_import_star_type_names[] = { - 0 -}; - -static int __pyx_import_star_set(PyObject *o, PyObject* py_name, char *name) { - char** type_name = __pyx_import_star_type_names; - while (*type_name) { - if (__Pyx_StrEq(name, *type_name)) { - PyErr_Format(PyExc_TypeError, "Cannot overwrite C type %s", name); - goto bad; - } - type_name++; - } - if (0); - else { - if (PyObject_SetAttr(__pyx_m, py_name, o) < 0) goto bad; - } - return 0; - bad: - return -1; -} - - -/* import_all_from is an unexposed function from ceval.c */ - -static int -__Pyx_import_all_from(PyObject *locals, PyObject *v) -{ - PyObject *all = __Pyx_GetAttrString(v, "__all__"); - PyObject *dict, *name, *value; - int skip_leading_underscores = 0; - int pos, err; - - if (all == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; /* Unexpected error */ - PyErr_Clear(); - dict = __Pyx_GetAttrString(v, "__dict__"); - if (dict == NULL) { - if (!PyErr_ExceptionMatches(PyExc_AttributeError)) - return -1; - PyErr_SetString(PyExc_ImportError, - "from-import-* object has no __dict__ and no __all__"); - return -1; - } -#if PY_MAJOR_VERSION < 3 - all = PyObject_CallMethod(dict, (char *)"keys", NULL); -#else - all = PyMapping_Keys(dict); -#endif - Py_DECREF(dict); - if (all == NULL) - return -1; - skip_leading_underscores = 1; - } - - for (pos = 0, err = 0; ; pos++) { - name = PySequence_GetItem(all, pos); - if (name == NULL) { - if (!PyErr_ExceptionMatches(PyExc_IndexError)) - err = -1; - else - PyErr_Clear(); - break; - } - if (skip_leading_underscores && -#if PY_MAJOR_VERSION < 3 - PyString_Check(name) && - PyString_AS_STRING(name)[0] == '_') -#else - PyUnicode_Check(name) && - PyUnicode_AS_UNICODE(name)[0] == '_') -#endif - { - Py_DECREF(name); - continue; - } - value = PyObject_GetAttr(v, name); - if (value == NULL) - err = -1; - else if (PyDict_CheckExact(locals)) - err = PyDict_SetItem(locals, name, value); - else - err = PyObject_SetItem(locals, name, value); - Py_DECREF(name); - Py_XDECREF(value); - if (err != 0) - break; - } - Py_DECREF(all); - return err; -} - - -static int __pyx_import_star(PyObject* m) { - - int i; - int ret = -1; - char* s; - PyObject *locals = 0; - PyObject *list = 0; -#if PY_MAJOR_VERSION >= 3 - PyObject *utf8_name = 0; -#endif - PyObject *name; - PyObject *item; - - locals = PyDict_New(); if (!locals) goto bad; - if (__Pyx_import_all_from(locals, m) < 0) goto bad; - list = PyDict_Items(locals); if (!list) goto bad; - - for(i=0; i= 3 - utf8_name = PyUnicode_AsUTF8String(name); - if (!utf8_name) goto bad; - s = PyBytes_AS_STRING(utf8_name); - if (__pyx_import_star_set(item, name, s) < 0) goto bad; - Py_DECREF(utf8_name); utf8_name = 0; -#else - s = PyString_AsString(name); - if (!s) goto bad; - if (__pyx_import_star_set(item, name, s) < 0) goto bad; -#endif - } - ret = 0; - -bad: - Py_XDECREF(locals); - Py_XDECREF(list); -#if PY_MAJOR_VERSION >= 3 - Py_XDECREF(utf8_name); -#endif - return ret; -} - - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("error"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 0, 1, 0}, - {&__pyx_n_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 1}, - {&__pyx_n_s__Empty_line, __pyx_k__Empty_line, sizeof(__pyx_k__Empty_line), 0, 0, 1, 1}, - {&__pyx_n_s__Line, __pyx_k__Line, sizeof(__pyx_k__Line), 0, 0, 1, 1}, - {&__pyx_n_s__Message, __pyx_k__Message, sizeof(__pyx_k__Message), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__empty, __pyx_k__empty, sizeof(__pyx_k__empty), 0, 0, 1, 1}, - {&__pyx_n_s__error, __pyx_k__error, sizeof(__pyx_k__error), 0, 0, 1, 1}, - {&__pyx_n_s__exit, __pyx_k__exit, sizeof(__pyx_k__exit), 0, 0, 1, 1}, - {&__pyx_n_s__fail, __pyx_k__fail, sizeof(__pyx_k__fail), 0, 0, 1, 1}, - {&__pyx_n_s__filename, __pyx_k__filename, sizeof(__pyx_k__filename), 0, 0, 1, 1}, - {&__pyx_n_s__i, __pyx_k__i, sizeof(__pyx_k__i), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, - {&__pyx_n_s__message, __pyx_k__message, sizeof(__pyx_k__message), 0, 0, 1, 1}, - {&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1}, - {&__pyx_n_s__testfile, __pyx_k__testfile, sizeof(__pyx_k__testfile), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__warn, __pyx_k__warn, sizeof(__pyx_k__warn), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - return 0; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "error.py":41 - * assert isinstance(line,Line) - * print "file %s ; line %d :\n %s"%(line.filename,line.i,line.text) - * sys.exit(1) # <<<<<<<<<<<<<< - * - * - */ - __pyx_k_tuple_4 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_4)); - __Pyx_INCREF(__pyx_int_1); - PyTuple_SET_ITEM(__pyx_k_tuple_4, 0, __pyx_int_1); - __Pyx_GIVEREF(__pyx_int_1); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_4)); - - /* "error.py":60 - * ###################################################################### - * if __name__ == '__main__': - * line = Empty_line(3,"empty", "testfile") # <<<<<<<<<<<<<< - * fail(line, "Message") - * - */ - __pyx_k_tuple_9 = PyTuple_New(3); if (unlikely(!__pyx_k_tuple_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_9)); - __Pyx_INCREF(__pyx_int_3); - PyTuple_SET_ITEM(__pyx_k_tuple_9, 0, __pyx_int_3); - __Pyx_GIVEREF(__pyx_int_3); - __Pyx_INCREF(((PyObject *)__pyx_n_s__empty)); - PyTuple_SET_ITEM(__pyx_k_tuple_9, 1, ((PyObject *)__pyx_n_s__empty)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__empty)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__testfile)); - PyTuple_SET_ITEM(__pyx_k_tuple_9, 2, ((PyObject *)__pyx_n_s__testfile)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__testfile)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_9)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_3 = PyInt_FromLong(3); if (unlikely(!__pyx_int_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initerror(void); /*proto*/ -PyMODINIT_FUNC initerror(void) -#else -PyMODINIT_FUNC PyInit_error(void); /*proto*/ -PyMODINIT_FUNC PyInit_error(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - PyObject *__pyx_t_4 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_error(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("error"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_error) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "error.py":28 - * - * - * import sys # <<<<<<<<<<<<<< - * from irpf90_t import * - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__sys), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__sys, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "error.py":29 - * - * import sys - * from irpf90_t import * # <<<<<<<<<<<<<< - * - * ###################################################################### - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s_8)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s_8)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__pyx_import_star(__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "error.py":32 - * - * ###################################################################### - * def fail(line,message): # <<<<<<<<<<<<<< - * print """ - * Error: - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5error_fail, NULL, __pyx_n_s__error); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__fail, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "error.py":45 - * - * ###################################################################### - * def warn(line,message): # <<<<<<<<<<<<<< - * if line is not None: - * assert isinstance(line,Line) - */ - __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_5error_1warn, NULL, __pyx_n_s__error); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__warn, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 45; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "error.py":59 - * - * ###################################################################### - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * line = Empty_line(3,"empty", "testfile") - * fail(line, "Message") - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyString_Equals(__pyx_t_2, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "error.py":60 - * ###################################################################### - * if __name__ == '__main__': - * line = Empty_line(3,"empty", "testfile") # <<<<<<<<<<<<<< - * fail(line, "Message") - * - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Empty_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "error.py":61 - * if __name__ == '__main__': - * line = Empty_line(3,"empty", "testfile") - * fail(line, "Message") # <<<<<<<<<<<<<< - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__fail); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(((PyObject *)__pyx_n_s__Message)); - PyTuple_SET_ITEM(__pyx_t_4, 1, ((PyObject *)__pyx_n_s__Message)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__Message)); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L2; - } - __pyx_L2:; - - /* "error.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_4); - if (__pyx_m) { - __Pyx_AddTraceback("init error", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init error"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static void __Pyx_RaiseArgtupleInvalid( - const char* func_name, - int exact, - Py_ssize_t num_min, - Py_ssize_t num_max, - Py_ssize_t num_found) -{ - Py_ssize_t num_expected; - const char *more_or_less; - - if (num_found < num_min) { - num_expected = num_min; - more_or_less = "at least"; - } else { - num_expected = num_max; - more_or_less = "at most"; - } - if (exact) { - more_or_less = "exactly"; - } - PyErr_Format(PyExc_TypeError, - "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", - func_name, more_or_less, num_expected, - (num_expected == 1) ? "" : "s", num_found); -} - -static void __Pyx_RaiseDoubleKeywordsError( - const char* func_name, - PyObject* kw_name) -{ - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION >= 3 - "%s() got multiple values for keyword argument '%U'", func_name, kw_name); - #else - "%s() got multiple values for keyword argument '%s'", func_name, - PyString_AS_STRING(kw_name)); - #endif -} - -static int __Pyx_ParseOptionalKeywords( - PyObject *kwds, - PyObject **argnames[], - PyObject *kwds2, - PyObject *values[], - Py_ssize_t num_pos_args, - const char* function_name) -{ - PyObject *key = 0, *value = 0; - Py_ssize_t pos = 0; - PyObject*** name; - PyObject*** first_kw_arg = argnames + num_pos_args; - - while (PyDict_Next(kwds, &pos, &key, &value)) { - name = first_kw_arg; - while (*name && (**name != key)) name++; - if (*name) { - values[name-argnames] = value; - } else { - #if PY_MAJOR_VERSION < 3 - if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { - #else - if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { - #endif - goto invalid_keyword_type; - } else { - for (name = first_kw_arg; *name; name++) { - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) break; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) break; - #endif - } - if (*name) { - values[name-argnames] = value; - } else { - /* unexpected keyword found */ - for (name=argnames; name != first_kw_arg; name++) { - if (**name == key) goto arg_passed_twice; - #if PY_MAJOR_VERSION >= 3 - if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && - PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; - #else - if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && - _PyString_Eq(**name, key)) goto arg_passed_twice; - #endif - } - if (kwds2) { - if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; - } else { - goto invalid_keyword; - } - } - } - } - } - return 0; -arg_passed_twice: - __Pyx_RaiseDoubleKeywordsError(function_name, **name); - goto bad; -invalid_keyword_type: - PyErr_Format(PyExc_TypeError, - "%s() keywords must be strings", function_name); - goto bad; -invalid_keyword: - PyErr_Format(PyExc_TypeError, - #if PY_MAJOR_VERSION < 3 - "%s() got an unexpected keyword argument '%s'", - function_name, PyString_AsString(key)); - #else - "%s() got an unexpected keyword argument '%U'", - function_name, key); - #endif -bad: - return -1; -} - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE int __Pyx_StrEq(const char *s1, const char *s2) { - while (*s1 != '\0' && *s1 == *s2) { s1++; s2++; } - return *s1 == *s2; -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/error.so b/src/error.so deleted file mode 100755 index e5277492fd78ab6f314675b8ee564604dfbc2722..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84319 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 diff --git a/src/init.c b/src/init.c deleted file mode 100644 index 3cd1505..0000000 --- a/src/init.c +++ /dev/null @@ -1,2404 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:29 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__init -#define __PYX_HAVE_API__init -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "init.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ - - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { - PyObject *r; - if (!j) return NULL; - r = PyObject_GetItem(o, j); - Py_DECREF(j); - return r; -} - - -#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_List_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { - PyObject *r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - -#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Tuple_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { - if (likely(o != Py_None)) { - if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - PyObject *r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - return r; - } - else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { - PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); - Py_INCREF(r); - return r; - } - } - return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); -} - - -#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ - __Pyx_GetItemInt_Fast(o, i) : \ - __Pyx_GetItemInt_Generic(o, to_py_func(i))) - -static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { - PyObject *r; - if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { - r = PyList_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { - r = PyTuple_GET_ITEM(o, i); - Py_INCREF(r); - } - else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { - r = PySequence_GetItem(o, i); - } - else { - r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); - } - return r; -} - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'init' */ -#define __Pyx_MODULE_NAME "init" -int __pyx_module_is_main_init = 0; - -/* Implementation of 'init' */ -static PyObject *__pyx_builtin_OSError; -static PyObject *__pyx_builtin_open; -static PyObject *__pyx_builtin_IOError; -static char __pyx_k_1[] = "."; -static char __pyx_k_3[] = "Warning : Unable to read file %s."; -static char __pyx_k__r[] = "r"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__init[] = "init"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__path[] = "path"; -static char __pyx_k__read[] = "read"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__chdir[] = "chdir"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__isdir[] = "isdir"; -static char __pyx_k__mkdir[] = "mkdir"; -static char __pyx_k__write[] = "write"; -static char __pyx_k__create[] = "create"; -static char __pyx_k__getcwd[] = "getcwd"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__mandir[] = "mandir"; -static char __pyx_k__IOError[] = "IOError"; -static char __pyx_k__OSError[] = "OSError"; -static char __pyx_k__listdir[] = "listdir"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__makefile[] = "makefile"; -static char __pyx_k__readlines[] = "readlines"; -static char __pyx_k__same_file[] = "same_file"; -static char __pyx_k__startswith[] = "startswith"; -static char __pyx_k__initialized[] = "initialized"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_n_s__IOError; -static PyObject *__pyx_n_s__OSError; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__chdir; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__create; -static PyObject *__pyx_n_s__getcwd; -static PyObject *__pyx_n_s__init; -static PyObject *__pyx_n_s__initialized; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__isdir; -static PyObject *__pyx_n_s__listdir; -static PyObject *__pyx_n_s__makefile; -static PyObject *__pyx_n_s__mandir; -static PyObject *__pyx_n_s__mkdir; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__path; -static PyObject *__pyx_n_s__r; -static PyObject *__pyx_n_s__read; -static PyObject *__pyx_n_s__readlines; -static PyObject *__pyx_n_s__same_file; -static PyObject *__pyx_n_s__startswith; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__write; -static PyObject *__pyx_k_tuple_2; - -/* "init.py":37 - * - * - * def init(): # <<<<<<<<<<<<<< - * - * global initialized - */ - -static PyObject *__pyx_pf_4init_init(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_4init_init = {__Pyx_NAMESTR("init"), (PyCFunction)__pyx_pf_4init_init, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_4init_init(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_dir = NULL; - PyObject *__pyx_v_wd = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_v_buffer = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_t_2; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - Py_ssize_t __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *__pyx_t_9 = NULL; - int __pyx_t_10; - PyObject *__pyx_t_11 = NULL; - PyObject *__pyx_t_12 = NULL; - PyObject *__pyx_t_13 = NULL; - PyObject *(*__pyx_t_14)(PyObject *); - int __pyx_t_15; - int __pyx_t_16; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("init"); - __pyx_self = __pyx_self; - - /* "init.py":40 - * - * global initialized - * if initialized: # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__initialized); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_2) { - - /* "init.py":41 - * global initialized - * if initialized: - * return # <<<<<<<<<<<<<< - * - * # Create directories - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "init.py":44 - * - * # Create directories - * for dir in [ irpf90_t.irpdir, irpf90_t.mandir ]: # <<<<<<<<<<<<<< - * try: - * wd = os.getcwd() - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__mandir); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - PyList_SET_ITEM(__pyx_t_1, 1, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_3 = 0; - __pyx_t_4 = 0; - __pyx_t_4 = ((PyObject *)__pyx_t_1); __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - for (;;) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; - __Pyx_XDECREF(__pyx_v_dir); - __pyx_v_dir = __pyx_t_1; - __pyx_t_1 = 0; - - /* "init.py":45 - * # Create directories - * for dir in [ irpf90_t.irpdir, irpf90_t.mandir ]: - * try: # <<<<<<<<<<<<<< - * wd = os.getcwd() - * os.chdir(dir) - */ - { - __Pyx_ExceptionSave(&__pyx_t_6, &__pyx_t_7, &__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_8); - /*try:*/ { - - /* "init.py":46 - * for dir in [ irpf90_t.irpdir, irpf90_t.mandir ]: - * try: - * wd = os.getcwd() # <<<<<<<<<<<<<< - * os.chdir(dir) - * os.chdir(wd) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__getcwd); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_v_wd); - __pyx_v_wd = __pyx_t_1; - __pyx_t_1 = 0; - - /* "init.py":47 - * try: - * wd = os.getcwd() - * os.chdir(dir) # <<<<<<<<<<<<<< - * os.chdir(wd) - * except OSError: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__chdir); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_dir); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_dir); - __Pyx_GIVEREF(__pyx_v_dir); - __pyx_t_9 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "init.py":48 - * wd = os.getcwd() - * os.chdir(dir) - * os.chdir(wd) # <<<<<<<<<<<<<< - * except OSError: - * os.mkdir(dir) - */ - __pyx_t_9 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_9, __pyx_n_s__chdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - __Pyx_INCREF(__pyx_v_wd); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_wd); - __Pyx_GIVEREF(__pyx_v_wd); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L8_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L15_try_end; - __pyx_L8_error:; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "init.py":49 - * os.chdir(dir) - * os.chdir(wd) - * except OSError: # <<<<<<<<<<<<<< - * os.mkdir(dir) - * - */ - __pyx_t_10 = PyErr_ExceptionMatches(__pyx_builtin_OSError); - if (__pyx_t_10) { - __Pyx_AddTraceback("init.init", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_9, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L10_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GOTREF(__pyx_t_9); - __Pyx_GOTREF(__pyx_t_1); - - /* "init.py":50 - * os.chdir(wd) - * except OSError: - * os.mkdir(dir) # <<<<<<<<<<<<<< - * - * # Create makefile - */ - __pyx_t_11 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L10_except_error;} - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = PyObject_GetAttr(__pyx_t_11, __pyx_n_s__mkdir); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L10_except_error;} - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L10_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_11)); - __Pyx_INCREF(__pyx_v_dir); - PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_dir); - __Pyx_GIVEREF(__pyx_v_dir); - __pyx_t_13 = PyObject_Call(__pyx_t_12, ((PyObject *)__pyx_t_11), NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L10_except_error;} - __Pyx_GOTREF(__pyx_t_13); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_11)); __pyx_t_11 = 0; - __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L9_exception_handled; - } - __pyx_L10_except_error:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); - goto __pyx_L1_error; - __pyx_L9_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8); - __pyx_L15_try_end:; - } - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "init.py":53 - * - * # Create makefile - * makefile.create() # <<<<<<<<<<<<<< - * - * # Copy current files in the irpdir - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__makefile); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__create); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "init.py":56 - * - * # Copy current files in the irpdir - * for filename in os.listdir(os.getcwd()): # <<<<<<<<<<<<<< - * if not filename[0].startswith(".") and not os.path.isdir(filename): - * try: - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__listdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__getcwd); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_9)); - PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; - if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) { - __pyx_t_9 = __pyx_t_4; __Pyx_INCREF(__pyx_t_9); __pyx_t_5 = 0; - __pyx_t_14 = NULL; - } else { - __pyx_t_5 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_14 = Py_TYPE(__pyx_t_9)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_9)) { - if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_9)) break; - __pyx_t_4 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; - } else if (PyTuple_CheckExact(__pyx_t_9)) { - if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_9)) break; - __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; - } else { - __pyx_t_4 = __pyx_t_14(__pyx_t_9); - if (unlikely(!__pyx_t_4)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_4); - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_4; - __pyx_t_4 = 0; - - /* "init.py":57 - * # Copy current files in the irpdir - * for filename in os.listdir(os.getcwd()): - * if not filename[0].startswith(".") and not os.path.isdir(filename): # <<<<<<<<<<<<<< - * try: - * file = open(filename,"r") - */ - __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_filename, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__startswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_2), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_15 = (!__pyx_t_2); - if (__pyx_t_15) { - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__path); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__isdir); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_16 = (!__pyx_t_2); - __pyx_t_2 = __pyx_t_16; - } else { - __pyx_t_2 = __pyx_t_15; - } - if (__pyx_t_2) { - - /* "init.py":58 - * for filename in os.listdir(os.getcwd()): - * if not filename[0].startswith(".") and not os.path.isdir(filename): - * try: # <<<<<<<<<<<<<< - * file = open(filename,"r") - * except IOError: - */ - { - __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_7, &__pyx_t_6); - __Pyx_XGOTREF(__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_7); - __Pyx_XGOTREF(__pyx_t_6); - /*try:*/ { - - /* "init.py":59 - * if not filename[0].startswith(".") and not os.path.isdir(filename): - * try: - * file = open(filename,"r") # <<<<<<<<<<<<<< - * except IOError: - * print "Warning : Unable to read file %s."%(filename) - */ - __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L21_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_3)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_1 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L21_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_1; - __pyx_t_1 = 0; - } - /*else:*/ { - - /* "init.py":63 - * print "Warning : Unable to read file %s."%(filename) - * else: - * buffer = file.readlines() # <<<<<<<<<<<<<< - * file.close() - * if not util.same_file(irpf90_t.irpdir+filename,buffer): - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__readlines); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_3; - __pyx_t_3 = 0; - - /* "init.py":64 - * else: - * buffer = file.readlines() - * file.close() # <<<<<<<<<<<<<< - * if not util.same_file(irpf90_t.irpdir+filename,buffer): - * file = open(filename,"r") - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":65 - * buffer = file.readlines() - * file.close() - * if not util.same_file(irpf90_t.irpdir+filename,buffer): # <<<<<<<<<<<<<< - * file = open(filename,"r") - * buffer = file.read() - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__util); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__same_file); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_4, __pyx_v_filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_4)); - PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_15 = (!__pyx_t_2); - if (__pyx_t_15) { - - /* "init.py":66 - * file.close() - * if not util.same_file(irpf90_t.irpdir+filename,buffer): - * file = open(filename,"r") # <<<<<<<<<<<<<< - * buffer = file.read() - * file.close() - */ - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_filename); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filename); - __Pyx_GIVEREF(__pyx_v_filename); - __Pyx_INCREF(((PyObject *)__pyx_n_s__r)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__r)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__r)); - __pyx_t_4 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_4; - __pyx_t_4 = 0; - - /* "init.py":67 - * if not util.same_file(irpf90_t.irpdir+filename,buffer): - * file = open(filename,"r") - * buffer = file.read() # <<<<<<<<<<<<<< - * file.close() - * file = open(irpf90_t.irpdir+filename,"w") - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__read); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(__pyx_v_buffer); - __pyx_v_buffer = __pyx_t_1; - __pyx_t_1 = 0; - - /* "init.py":68 - * file = open(filename,"r") - * buffer = file.read() - * file.close() # <<<<<<<<<<<<<< - * file = open(irpf90_t.irpdir+filename,"w") - * file.write(buffer) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "init.py":69 - * buffer = file.read() - * file.close() - * file = open(irpf90_t.irpdir+filename,"w") # <<<<<<<<<<<<<< - * file.write(buffer) - * file.close() - */ - __pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_v_filename); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_4 = 0; - __pyx_t_4 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_file); - __pyx_v_file = __pyx_t_4; - __pyx_t_4 = 0; - - /* "init.py":70 - * file.close() - * file = open(irpf90_t.irpdir+filename,"w") - * file.write(buffer) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_4 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__write); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_buffer); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_buffer); - __Pyx_GIVEREF(__pyx_v_buffer); - __pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "init.py":71 - * file = open(irpf90_t.irpdir+filename,"w") - * file.write(buffer) - * file.close() # <<<<<<<<<<<<<< - * - * initialized = True - */ - __pyx_t_3 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L29; - } - __pyx_L29:; - } - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L28_try_end; - __pyx_L21_error:; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":60 - * try: - * file = open(filename,"r") - * except IOError: # <<<<<<<<<<<<<< - * print "Warning : Unable to read file %s."%(filename) - * else: - */ - __pyx_t_10 = PyErr_ExceptionMatches(__pyx_builtin_IOError); - if (__pyx_t_10) { - __Pyx_AddTraceback("init.init", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GOTREF(__pyx_t_3); - __Pyx_GOTREF(__pyx_t_4); - - /* "init.py":61 - * file = open(filename,"r") - * except IOError: - * print "Warning : Unable to read file %s."%(filename) # <<<<<<<<<<<<<< - * else: - * buffer = file.readlines() - */ - __pyx_t_13 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), __pyx_v_filename); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_13)); - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_13)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L23_except_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_13)); __pyx_t_13 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L22_exception_handled; - } - __pyx_L23_except_error:; - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_7, __pyx_t_6); - goto __pyx_L1_error; - __pyx_L22_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_8); - __Pyx_XGIVEREF(__pyx_t_7); - __Pyx_XGIVEREF(__pyx_t_6); - __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_7, __pyx_t_6); - __pyx_L28_try_end:; - } - goto __pyx_L20; - } - __pyx_L20:; - } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - /* "init.py":73 - * file.close() - * - * initialized = True # <<<<<<<<<<<<<< - * - */ - __pyx_t_9 = __Pyx_PyBool_FromLong(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_9); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__initialized, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_3); - __Pyx_XDECREF(__pyx_t_4); - __Pyx_XDECREF(__pyx_t_9); - __Pyx_XDECREF(__pyx_t_11); - __Pyx_XDECREF(__pyx_t_12); - __Pyx_XDECREF(__pyx_t_13); - __Pyx_AddTraceback("init.init", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_dir); - __Pyx_XDECREF(__pyx_v_wd); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XDECREF(__pyx_v_buffer); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("init"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_n_s__IOError, __pyx_k__IOError, sizeof(__pyx_k__IOError), 0, 0, 1, 1}, - {&__pyx_n_s__OSError, __pyx_k__OSError, sizeof(__pyx_k__OSError), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__chdir, __pyx_k__chdir, sizeof(__pyx_k__chdir), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__create, __pyx_k__create, sizeof(__pyx_k__create), 0, 0, 1, 1}, - {&__pyx_n_s__getcwd, __pyx_k__getcwd, sizeof(__pyx_k__getcwd), 0, 0, 1, 1}, - {&__pyx_n_s__init, __pyx_k__init, sizeof(__pyx_k__init), 0, 0, 1, 1}, - {&__pyx_n_s__initialized, __pyx_k__initialized, sizeof(__pyx_k__initialized), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__isdir, __pyx_k__isdir, sizeof(__pyx_k__isdir), 0, 0, 1, 1}, - {&__pyx_n_s__listdir, __pyx_k__listdir, sizeof(__pyx_k__listdir), 0, 0, 1, 1}, - {&__pyx_n_s__makefile, __pyx_k__makefile, sizeof(__pyx_k__makefile), 0, 0, 1, 1}, - {&__pyx_n_s__mandir, __pyx_k__mandir, sizeof(__pyx_k__mandir), 0, 0, 1, 1}, - {&__pyx_n_s__mkdir, __pyx_k__mkdir, sizeof(__pyx_k__mkdir), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__path, __pyx_k__path, sizeof(__pyx_k__path), 0, 0, 1, 1}, - {&__pyx_n_s__r, __pyx_k__r, sizeof(__pyx_k__r), 0, 0, 1, 1}, - {&__pyx_n_s__read, __pyx_k__read, sizeof(__pyx_k__read), 0, 0, 1, 1}, - {&__pyx_n_s__readlines, __pyx_k__readlines, sizeof(__pyx_k__readlines), 0, 0, 1, 1}, - {&__pyx_n_s__same_file, __pyx_k__same_file, sizeof(__pyx_k__same_file), 0, 0, 1, 1}, - {&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__write, __pyx_k__write, sizeof(__pyx_k__write), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_OSError = __Pyx_GetName(__pyx_b, __pyx_n_s__OSError); if (!__pyx_builtin_OSError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_IOError = __Pyx_GetName(__pyx_b, __pyx_n_s__IOError); if (!__pyx_builtin_IOError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "init.py":57 - * # Copy current files in the irpdir - * for filename in os.listdir(os.getcwd()): - * if not filename[0].startswith(".") and not os.path.isdir(filename): # <<<<<<<<<<<<<< - * try: - * file = open(filename,"r") - */ - __pyx_k_tuple_2 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_2)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_1)); - PyTuple_SET_ITEM(__pyx_k_tuple_2, 0, ((PyObject *)__pyx_kp_s_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_2)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initinit(void); /*proto*/ -PyMODINIT_FUNC initinit(void) -#else -PyMODINIT_FUNC PyInit_init(void); /*proto*/ -PyMODINIT_FUNC PyInit_init(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_init(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("init"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_init) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "init.py":28 - * - * - * import os # <<<<<<<<<<<<<< - * - * import util - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__os, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":30 - * import os - * - * import util # <<<<<<<<<<<<<< - * import makefile - * import irpf90_t - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__util), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__util, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":31 - * - * import util - * import makefile # <<<<<<<<<<<<<< - * import irpf90_t - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__makefile), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__makefile, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":32 - * import util - * import makefile - * import irpf90_t # <<<<<<<<<<<<<< - * - * initialized = False - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpf90_t, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":34 - * import irpf90_t - * - * initialized = False # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_PyBool_FromLong(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__initialized, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":37 - * - * - * def init(): # <<<<<<<<<<<<<< - * - * global initialized - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_4init_init, NULL, __pyx_n_s__init); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__init, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "init.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - if (__pyx_m) { - __Pyx_AddTraceback("init init", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init init"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) { - PyObject *local_type, *local_value, *local_tb; - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - local_type = tstate->curexc_type; - local_value = tstate->curexc_value; - local_tb = tstate->curexc_traceback; - tstate->curexc_type = 0; - tstate->curexc_value = 0; - tstate->curexc_traceback = 0; - PyErr_NormalizeException(&local_type, &local_value, &local_tb); - if (unlikely(tstate->curexc_type)) - goto bad; - #if PY_MAJOR_VERSION >= 3 - if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0)) - goto bad; - #endif - *type = local_type; - *value = local_value; - *tb = local_tb; - Py_INCREF(local_type); - Py_INCREF(local_value); - Py_INCREF(local_tb); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = local_type; - tstate->exc_value = local_value; - tstate->exc_traceback = local_tb; - /* Make sure tstate is in a consistent state when we XDECREF - these objects (XDECREF may run arbitrary code). */ - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); - return 0; -bad: - *type = 0; - *value = 0; - *tb = 0; - Py_XDECREF(local_type); - Py_XDECREF(local_value); - Py_XDECREF(local_tb); - return -1; -} - - - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->exc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} - -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/init.so b/src/init.so deleted file mode 100755 index 0f5afceb063d9f58bdbf765d2b88ebeea8cd43bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88423 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 diff --git a/src/irp_stack.c b/src/irp_stack.c deleted file mode 100644 index 114b645..0000000 --- a/src/irp_stack.c +++ /dev/null @@ -1,2488 +0,0 @@ -/* Generated by Cython 0.15.1 on Mon Jul 1 13:12:13 2013 */ - -#define PY_SSIZE_T_CLEAN -#include "Python.h" -#ifndef Py_PYTHON_H - #error Python headers needed to compile C extensions, please install development version of Python. -#else - -#include /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__irp_stack -#define __PYX_HAVE_API__irp_stack -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "irp_stack.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#define __pyx_binding_PyCFunctionType_USED 1 - -typedef struct { - PyCFunctionObject func; -} __pyx_binding_PyCFunctionType_object; - -static PyTypeObject __pyx_binding_PyCFunctionType_type; -static PyTypeObject *__pyx_binding_PyCFunctionType = NULL; - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */ -#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL) - -static int __pyx_binding_PyCFunctionType_init(void); /* proto */ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'irp_stack' */ -#define __Pyx_MODULE_NAME "irp_stack" -int __pyx_module_is_main_irp_stack = 0; - -/* Implementation of 'irp_stack' */ -static PyObject *__pyx_builtin_map; -static PyObject *__pyx_builtin_open; -static char __pyx_k_1[] = "\n"; -static char __pyx_k_2[] = "\nmodule irp_stack_mod\n integer, parameter :: STACKMAX=1000\n character*(128),allocatable :: irp_stack(:,:)\n double precision,allocatable :: irp_cpu(:,:)\n integer,allocatable :: stack_index(:)\n logical :: alloc = .False.\n character*(128) :: white = ''\nend module\n\nsubroutine irp_enter(irp_where)\n use irp_stack_mod\n integer :: ithread\n integer :: nthread\n character*(*) :: irp_where\n$OMP_DECL\n!$OMP CRITICAL\n ithread = $OMP_GET_THREAD_NUM\n nthread = $OMP_GET_NUM_THREADS\n$1\n!$OMP END CRITICAL\n"; -static char __pyx_k_3[] = "\n if (.not.alloc) then\n print *, 'Allocating irp_stack(',STACKMAX,',',nthread,')'\n print *, 'Allocating irp_cpu(',STACKMAX,',',nthread,')'\n print *, 'Allocating stack_index(',nthread,')'\n endif"; -static char __pyx_k_4[] = "\n$2\nend subroutine\n\nsubroutine irp_leave (irp_where)\n use irp_stack_mod\n character*(*) :: irp_where\n integer :: ithread\n double precision :: cpu\n$OMP_DECL\n!$OMP CRITICAL\n ithread = $OMP_GET_THREAD_NUM\n$3\n$4\n!$OMP END CRITICAL\nend subroutine\n"; -static char __pyx_k_5[] = "$OMP_DECL"; -static char __pyx_k_6[] = "\n integer :: omp_get_num_threads\n integer :: omp_get_thread_num\n"; -static char __pyx_k_8[] = "$OMP_GET_NUM_THREADS"; -static char __pyx_k_9[] = "omp_get_num_threads()"; -static char __pyx_k_11[] = "$OMP_GET_THREAD_NUM"; -static char __pyx_k_12[] = "omp_get_thread_num()"; -static char __pyx_k_14[] = ""; -static char __pyx_k_18[] = "$1"; -static char __pyx_k_19[] = "\n if (.not.alloc) then\n allocate(irp_stack(STACKMAX,nthread+1))\n allocate(irp_cpu(STACKMAX,nthread+1))\n allocate(stack_index(nthread+1))\n stack_index = 0\n alloc = .True.\n endif\n stack_index(ithread+1) = stack_index(ithread+1)+1\n irp_stack(stack_index(ithread+1),ithread+1) = irp_where"; -static char __pyx_k_21[] = "\n print *, 'Allocating irp_stack(',STACKMAX,','nthread,')'\n print *, 'Allocating irp_cpu(',STACKMAX,','nthread,')'\n print *, 'Allocating stack_index(',nthread,')'"; -static char __pyx_k_23[] = "$2"; -static char __pyx_k_24[] = "\n print *, ithread, ':', white(1:stack_index(ithread+1))//'-> ', trim(irp_where)\n call cpu_time(irp_cpu(stack_index(ithread+1),ithread+1))"; -static char __pyx_k_27[] = "$3"; -static char __pyx_k_28[] = "\n call cpu_time(cpu)\n print *, ithread, ':', white(1:stack_index(ithread+1))//'<- ', &\n trim(irp_stack(stack_index(ithread+1),ithread+1)), &\n cpu-irp_cpu(stack_index(ithread+1),ithread+1)"; -static char __pyx_k_31[] = "$4"; -static char __pyx_k_32[] = "\n stack_index(ithread+1) = stack_index(ithread+1)-1"; -static char __pyx_k_35[] = "\nsubroutine irp_trace\n use irp_stack_mod\n integer :: ithread\n integer :: i\n ithread = 0\n if (.not.alloc) return\n print *, 'Stack trace: ', ithread\n print *, '-------------------------'\n do i=1,stack_index(ithread+1)\n print *, trim(irp_stack(i,ithread+1))\n enddo\n print *, '-------------------------'\nend subroutine\n"; -static char __pyx_k_37[] = "irp_stack.irp.F90"; -static char __pyx_k__0[] = "0"; -static char __pyx_k__1[] = "1"; -static char __pyx_k__w[] = "w"; -static char __pyx_k__map[] = "map"; -static char __pyx_k__open[] = "open"; -static char __pyx_k__util[] = "util"; -static char __pyx_k__close[] = "close"; -static char __pyx_k__split[] = "split"; -static char __pyx_k__create[] = "create"; -static char __pyx_k__irpdir[] = "irpdir"; -static char __pyx_k__replace[] = "replace"; -static char __pyx_k__FILENAME[] = "FILENAME"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__do_debug[] = "do_debug"; -static char __pyx_k__irpf90_t[] = "irpf90_t"; -static char __pyx_k__do_assert[] = "do_assert"; -static char __pyx_k__do_memory[] = "do_memory"; -static char __pyx_k__do_openmp[] = "do_openmp"; -static char __pyx_k__irp_stack[] = "irp_stack"; -static char __pyx_k__same_file[] = "same_file"; -static char __pyx_k__writelines[] = "writelines"; -static char __pyx_k__command_line[] = "command_line"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_11; -static PyObject *__pyx_kp_s_12; -static PyObject *__pyx_kp_s_14; -static PyObject *__pyx_kp_s_18; -static PyObject *__pyx_kp_s_19; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_21; -static PyObject *__pyx_kp_s_23; -static PyObject *__pyx_kp_s_24; -static PyObject *__pyx_kp_s_27; -static PyObject *__pyx_kp_s_28; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_31; -static PyObject *__pyx_kp_s_32; -static PyObject *__pyx_kp_s_35; -static PyObject *__pyx_kp_s_37; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_kp_s_5; -static PyObject *__pyx_kp_s_6; -static PyObject *__pyx_kp_s_8; -static PyObject *__pyx_kp_s_9; -static PyObject *__pyx_kp_s__0; -static PyObject *__pyx_kp_s__1; -static PyObject *__pyx_n_s__FILENAME; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__close; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__create; -static PyObject *__pyx_n_s__do_assert; -static PyObject *__pyx_n_s__do_debug; -static PyObject *__pyx_n_s__do_memory; -static PyObject *__pyx_n_s__do_openmp; -static PyObject *__pyx_n_s__irp_stack; -static PyObject *__pyx_n_s__irpdir; -static PyObject *__pyx_n_s__irpf90_t; -static PyObject *__pyx_n_s__map; -static PyObject *__pyx_n_s__open; -static PyObject *__pyx_n_s__replace; -static PyObject *__pyx_n_s__same_file; -static PyObject *__pyx_n_s__split; -static PyObject *__pyx_n_s__util; -static PyObject *__pyx_n_s__w; -static PyObject *__pyx_n_s__writelines; -static PyObject *__pyx_k_tuple_7; -static PyObject *__pyx_k_tuple_10; -static PyObject *__pyx_k_tuple_13; -static PyObject *__pyx_k_tuple_15; -static PyObject *__pyx_k_tuple_16; -static PyObject *__pyx_k_tuple_17; -static PyObject *__pyx_k_tuple_20; -static PyObject *__pyx_k_tuple_22; -static PyObject *__pyx_k_tuple_25; -static PyObject *__pyx_k_tuple_26; -static PyObject *__pyx_k_tuple_29; -static PyObject *__pyx_k_tuple_30; -static PyObject *__pyx_k_tuple_33; -static PyObject *__pyx_k_tuple_34; -static PyObject *__pyx_k_tuple_36; - -/* "irp_stack.py":164 - * - * txt = txt.split('\n') - * txt = map(lambda x: x+"\n",txt) # <<<<<<<<<<<<<< - * if not util.same_file(FILENAME, txt): - * file = open(FILENAME,'w') - */ - -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/ -static PyMethodDef __pyx_lambda_methdef_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_lambda_funcdef_lambda1, METH_O, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_lambda_funcdef_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) { - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("lambda1"); - __pyx_self = __pyx_self; - __Pyx_XDECREF(__pyx_r); - __pyx_t_1 = PyNumber_Add(__pyx_v_x, ((PyObject *)__pyx_kp_s_1)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_r = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L0; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_AddTraceback("irp_stack.create.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -/* "irp_stack.py":39 - * FILENAME = irpf90_t.irpdir+"irp_stack.irp.F90" - * - * def create(): # <<<<<<<<<<<<<< - * - * txt = """ - */ - -static PyObject *__pyx_pf_9irp_stack_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_9irp_stack_create = {__Pyx_NAMESTR("create"), (PyCFunction)__pyx_pf_9irp_stack_create, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_9irp_stack_create(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_txt = NULL; - PyObject *__pyx_v_file = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - int __pyx_t_4; - int __pyx_t_5; - PyObject *__pyx_t_6 = NULL; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("create"); - __pyx_self = __pyx_self; - - /* "irp_stack.py":41 - * def create(): - * - * txt = """ # <<<<<<<<<<<<<< - * module irp_stack_mod - * integer, parameter :: STACKMAX=1000 - */ - __Pyx_INCREF(((PyObject *)__pyx_kp_s_2)); - __pyx_v_txt = ((PyObject *)__pyx_kp_s_2); - - /* "irp_stack.py":63 - * !$OMP END CRITICAL - * """ - * if command_line.do_memory: # <<<<<<<<<<<<<< - * txt+=""" - * if (.not.alloc) then - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_memory); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "irp_stack.py":64 - * """ - * if command_line.do_memory: - * txt+=""" # <<<<<<<<<<<<<< - * if (.not.alloc) then - * print *, 'Allocating irp_stack(',STACKMAX,',',nthread,')' - */ - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_txt, ((PyObject *)__pyx_kp_s_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "irp_stack.py":70 - * print *, 'Allocating stack_index(',nthread,')' - * endif""" - * txt +=""" # <<<<<<<<<<<<<< - * $2 - * end subroutine - */ - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_txt, ((PyObject *)__pyx_kp_s_4)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":89 - * - * # $OMP_DECL - * if do_openmp: # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_DECL",""" - * integer :: omp_get_num_threads - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "irp_stack.py":90 - * # $OMP_DECL - * if do_openmp: - * txt = txt.replace("$OMP_DECL",""" # <<<<<<<<<<<<<< - * integer :: omp_get_num_threads - * integer :: omp_get_thread_num - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_7), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irp_stack.py":94 - * integer :: omp_get_thread_num - * """) - * txt = txt.replace("$OMP_GET_NUM_THREADS","omp_get_num_threads()") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") - * else: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_10), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":95 - * """) - * txt = txt.replace("$OMP_GET_NUM_THREADS","omp_get_num_threads()") - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") # <<<<<<<<<<<<<< - * else: - * txt = txt.replace("$OMP_DECL","") - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_13), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L6; - } - /*else*/ { - - /* "irp_stack.py":97 - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") - * else: - * txt = txt.replace("$OMP_DECL","") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_15), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":98 - * else: - * txt = txt.replace("$OMP_DECL","") - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_16), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irp_stack.py":99 - * txt = txt.replace("$OMP_DECL","") - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") # <<<<<<<<<<<<<< - * - * # $1 - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_17), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - } - __pyx_L6:; - - /* "irp_stack.py":102 - * - * # $1 - * if do_assert or do_debug: # <<<<<<<<<<<<<< - * txt = txt.replace("$1",""" - * if (.not.alloc) then - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (!__pyx_t_3) { - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_5 = __pyx_t_4; - } else { - __pyx_t_5 = __pyx_t_3; - } - if (__pyx_t_5) { - - /* "irp_stack.py":103 - * # $1 - * if do_assert or do_debug: - * txt = txt.replace("$1",""" # <<<<<<<<<<<<<< - * if (.not.alloc) then - * allocate(irp_stack(STACKMAX,nthread+1)) - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_20), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irp_stack.py":113 - * stack_index(ithread+1) = stack_index(ithread+1)+1 - * irp_stack(stack_index(ithread+1),ithread+1) = irp_where""") - * if command_line.do_memory: # <<<<<<<<<<<<<< - * txt+=""" - * print *, 'Allocating irp_stack(',STACKMAX,','nthread,')' - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_memory); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 113; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_5) { - - /* "irp_stack.py":114 - * irp_stack(stack_index(ithread+1),ithread+1) = irp_where""") - * if command_line.do_memory: - * txt+=""" # <<<<<<<<<<<<<< - * print *, 'Allocating irp_stack(',STACKMAX,','nthread,')' - * print *, 'Allocating irp_cpu(',STACKMAX,','nthread,')' - */ - __pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_txt, ((PyObject *)__pyx_kp_s_21)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L8; - } - __pyx_L8:; - goto __pyx_L7; - } - /*else*/ { - - /* "irp_stack.py":119 - * print *, 'Allocating stack_index(',nthread,')'""" - * else: - * txt = txt.replace("$1","") # <<<<<<<<<<<<<< - * - * # $2 - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_22), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - } - __pyx_L7:; - - /* "irp_stack.py":122 - * - * # $2 - * if do_debug: # <<<<<<<<<<<<<< - * txt = txt.replace("$2",""" - * print *, ithread, ':', white(1:stack_index(ithread+1))//'-> ', trim(irp_where) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_5) { - - /* "irp_stack.py":123 - * # $2 - * if do_debug: - * txt = txt.replace("$2",""" # <<<<<<<<<<<<<< - * print *, ithread, ':', white(1:stack_index(ithread+1))//'-> ', trim(irp_where) - * call cpu_time(irp_cpu(stack_index(ithread+1),ithread+1))""") - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_25), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L9; - } - /*else*/ { - - /* "irp_stack.py":127 - * call cpu_time(irp_cpu(stack_index(ithread+1),ithread+1))""") - * else: - * txt = txt.replace("$2","") # <<<<<<<<<<<<<< - * - * # $3 - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_26), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - } - __pyx_L9:; - - /* "irp_stack.py":130 - * - * # $3 - * if do_debug: # <<<<<<<<<<<<<< - * txt = txt.replace("$3",""" - * call cpu_time(cpu) - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_5) { - - /* "irp_stack.py":131 - * # $3 - * if do_debug: - * txt = txt.replace("$3",""" # <<<<<<<<<<<<<< - * call cpu_time(cpu) - * print *, ithread, ':', white(1:stack_index(ithread+1))//'<- ', & - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_29), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L10; - } - /*else*/ { - - /* "irp_stack.py":137 - * cpu-irp_cpu(stack_index(ithread+1),ithread+1)""") - * else: - * txt = txt.replace("$3","") # <<<<<<<<<<<<<< - * - * # $4 - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_30), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - } - __pyx_L10:; - - /* "irp_stack.py":140 - * - * # $4 - * if do_debug or do_assert: # <<<<<<<<<<<<<< - * txt = txt.replace("$4",""" - * stack_index(ithread+1) = stack_index(ithread+1)-1""") - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_5) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 140; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_4 = __pyx_t_3; - } else { - __pyx_t_4 = __pyx_t_5; - } - if (__pyx_t_4) { - - /* "irp_stack.py":141 - * # $4 - * if do_debug or do_assert: - * txt = txt.replace("$4",""" # <<<<<<<<<<<<<< - * stack_index(ithread+1) = stack_index(ithread+1)-1""") - * else: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_33), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - goto __pyx_L11; - } - /*else*/ { - - /* "irp_stack.py":144 - * stack_index(ithread+1) = stack_index(ithread+1)-1""") - * else: - * txt = txt.replace("$4","") # <<<<<<<<<<<<<< - * - * if do_debug or do_assert: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_34), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - } - __pyx_L11:; - - /* "irp_stack.py":146 - * txt = txt.replace("$4","") - * - * if do_debug or do_assert: # <<<<<<<<<<<<<< - * txt += """ - * subroutine irp_trace - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (!__pyx_t_4) { - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 146; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = __pyx_t_5; - } else { - __pyx_t_3 = __pyx_t_4; - } - if (__pyx_t_3) { - - /* "irp_stack.py":147 - * - * if do_debug or do_assert: - * txt += """ # <<<<<<<<<<<<<< - * subroutine irp_trace - * use irp_stack_mod - */ - __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_txt, ((PyObject *)__pyx_kp_s_35)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_1; - __pyx_t_1 = 0; - goto __pyx_L12; - } - __pyx_L12:; - - /* "irp_stack.py":163 - * """ - * - * txt = txt.split('\n') # <<<<<<<<<<<<<< - * txt = map(lambda x: x+"\n",txt) - * if not util.same_file(FILENAME, txt): - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_txt, __pyx_n_s__split); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_36), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":164 - * - * txt = txt.split('\n') - * txt = map(lambda x: x+"\n",txt) # <<<<<<<<<<<<<< - * if not util.same_file(FILENAME, txt): - * file = open(FILENAME,'w') - */ - __pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_lambda_methdef_lambda1, NULL, __pyx_n_s__irp_stack); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_map, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_v_txt); - __pyx_v_txt = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":165 - * txt = txt.split('\n') - * txt = map(lambda x: x+"\n",txt) - * if not util.same_file(FILENAME, txt): # <<<<<<<<<<<<<< - * file = open(FILENAME,'w') - * file.writelines(txt) - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__util); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__same_file); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_4 = (!__pyx_t_3); - if (__pyx_t_4) { - - /* "irp_stack.py":166 - * txt = map(lambda x: x+"\n",txt) - * if not util.same_file(FILENAME, txt): - * file = open(FILENAME,'w') # <<<<<<<<<<<<<< - * file.writelines(txt) - * file.close() - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__FILENAME); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __Pyx_INCREF(((PyObject *)__pyx_n_s__w)); - PyTuple_SET_ITEM(__pyx_t_6, 1, ((PyObject *)__pyx_n_s__w)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__w)); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_builtin_open, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __pyx_v_file = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irp_stack.py":167 - * if not util.same_file(FILENAME, txt): - * file = open(FILENAME,'w') - * file.writelines(txt) # <<<<<<<<<<<<<< - * file.close() - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__writelines); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_INCREF(__pyx_v_txt); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_txt); - __Pyx_GIVEREF(__pyx_v_txt); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":168 - * file = open(FILENAME,'w') - * file.writelines(txt) - * file.close() # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_file, __pyx_n_s__close); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - goto __pyx_L13; - } - __pyx_L13:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_AddTraceback("irp_stack.create", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_txt); - __Pyx_XDECREF(__pyx_v_file); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("irp_stack"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 0, 1, 0}, - {&__pyx_kp_s_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 0, 1, 0}, - {&__pyx_kp_s_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 0, 1, 0}, - {&__pyx_kp_s_18, __pyx_k_18, sizeof(__pyx_k_18), 0, 0, 1, 0}, - {&__pyx_kp_s_19, __pyx_k_19, sizeof(__pyx_k_19), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0}, - {&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0}, - {&__pyx_kp_s_24, __pyx_k_24, sizeof(__pyx_k_24), 0, 0, 1, 0}, - {&__pyx_kp_s_27, __pyx_k_27, sizeof(__pyx_k_27), 0, 0, 1, 0}, - {&__pyx_kp_s_28, __pyx_k_28, sizeof(__pyx_k_28), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_31, __pyx_k_31, sizeof(__pyx_k_31), 0, 0, 1, 0}, - {&__pyx_kp_s_32, __pyx_k_32, sizeof(__pyx_k_32), 0, 0, 1, 0}, - {&__pyx_kp_s_35, __pyx_k_35, sizeof(__pyx_k_35), 0, 0, 1, 0}, - {&__pyx_kp_s_37, __pyx_k_37, sizeof(__pyx_k_37), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_kp_s_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 0, 1, 0}, - {&__pyx_kp_s_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 0, 1, 0}, - {&__pyx_kp_s_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 0, 1, 0}, - {&__pyx_kp_s_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 0, 1, 0}, - {&__pyx_kp_s__0, __pyx_k__0, sizeof(__pyx_k__0), 0, 0, 1, 0}, - {&__pyx_kp_s__1, __pyx_k__1, sizeof(__pyx_k__1), 0, 0, 1, 0}, - {&__pyx_n_s__FILENAME, __pyx_k__FILENAME, sizeof(__pyx_k__FILENAME), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__close, __pyx_k__close, sizeof(__pyx_k__close), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__create, __pyx_k__create, sizeof(__pyx_k__create), 0, 0, 1, 1}, - {&__pyx_n_s__do_assert, __pyx_k__do_assert, sizeof(__pyx_k__do_assert), 0, 0, 1, 1}, - {&__pyx_n_s__do_debug, __pyx_k__do_debug, sizeof(__pyx_k__do_debug), 0, 0, 1, 1}, - {&__pyx_n_s__do_memory, __pyx_k__do_memory, sizeof(__pyx_k__do_memory), 0, 0, 1, 1}, - {&__pyx_n_s__do_openmp, __pyx_k__do_openmp, sizeof(__pyx_k__do_openmp), 0, 0, 1, 1}, - {&__pyx_n_s__irp_stack, __pyx_k__irp_stack, sizeof(__pyx_k__irp_stack), 0, 0, 1, 1}, - {&__pyx_n_s__irpdir, __pyx_k__irpdir, sizeof(__pyx_k__irpdir), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90_t, __pyx_k__irpf90_t, sizeof(__pyx_k__irpf90_t), 0, 0, 1, 1}, - {&__pyx_n_s__map, __pyx_k__map, sizeof(__pyx_k__map), 0, 0, 1, 1}, - {&__pyx_n_s__open, __pyx_k__open, sizeof(__pyx_k__open), 0, 0, 1, 1}, - {&__pyx_n_s__replace, __pyx_k__replace, sizeof(__pyx_k__replace), 0, 0, 1, 1}, - {&__pyx_n_s__same_file, __pyx_k__same_file, sizeof(__pyx_k__same_file), 0, 0, 1, 1}, - {&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1}, - {&__pyx_n_s__util, __pyx_k__util, sizeof(__pyx_k__util), 0, 0, 1, 1}, - {&__pyx_n_s__w, __pyx_k__w, sizeof(__pyx_k__w), 0, 0, 1, 1}, - {&__pyx_n_s__writelines, __pyx_k__writelines, sizeof(__pyx_k__writelines), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_map = __Pyx_GetName(__pyx_b, __pyx_n_s__map); if (!__pyx_builtin_map) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 164; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_builtin_open = __Pyx_GetName(__pyx_b, __pyx_n_s__open); if (!__pyx_builtin_open) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - return 0; - __pyx_L1_error:; - return -1; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "irp_stack.py":90 - * # $OMP_DECL - * if do_openmp: - * txt = txt.replace("$OMP_DECL",""" # <<<<<<<<<<<<<< - * integer :: omp_get_num_threads - * integer :: omp_get_thread_num - */ - __pyx_k_tuple_7 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 90; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_7)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_5)); - PyTuple_SET_ITEM(__pyx_k_tuple_7, 0, ((PyObject *)__pyx_kp_s_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_5)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_6)); - PyTuple_SET_ITEM(__pyx_k_tuple_7, 1, ((PyObject *)__pyx_kp_s_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_6)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_7)); - - /* "irp_stack.py":94 - * integer :: omp_get_thread_num - * """) - * txt = txt.replace("$OMP_GET_NUM_THREADS","omp_get_num_threads()") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") - * else: - */ - __pyx_k_tuple_10 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_10)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_8)); - PyTuple_SET_ITEM(__pyx_k_tuple_10, 0, ((PyObject *)__pyx_kp_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_8)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_9)); - PyTuple_SET_ITEM(__pyx_k_tuple_10, 1, ((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_9)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_10)); - - /* "irp_stack.py":95 - * """) - * txt = txt.replace("$OMP_GET_NUM_THREADS","omp_get_num_threads()") - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") # <<<<<<<<<<<<<< - * else: - * txt = txt.replace("$OMP_DECL","") - */ - __pyx_k_tuple_13 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_13)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_11)); - PyTuple_SET_ITEM(__pyx_k_tuple_13, 0, ((PyObject *)__pyx_kp_s_11)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_11)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_12)); - PyTuple_SET_ITEM(__pyx_k_tuple_13, 1, ((PyObject *)__pyx_kp_s_12)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_12)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_13)); - - /* "irp_stack.py":97 - * txt = txt.replace("$OMP_GET_THREAD_NUM","omp_get_thread_num()") - * else: - * txt = txt.replace("$OMP_DECL","") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") - */ - __pyx_k_tuple_15 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_15)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_5)); - PyTuple_SET_ITEM(__pyx_k_tuple_15, 0, ((PyObject *)__pyx_kp_s_5)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_5)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyTuple_SET_ITEM(__pyx_k_tuple_15, 1, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_15)); - - /* "irp_stack.py":98 - * else: - * txt = txt.replace("$OMP_DECL","") - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") # <<<<<<<<<<<<<< - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") - * - */ - __pyx_k_tuple_16 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_16)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_8)); - PyTuple_SET_ITEM(__pyx_k_tuple_16, 0, ((PyObject *)__pyx_kp_s_8)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_8)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s__1)); - PyTuple_SET_ITEM(__pyx_k_tuple_16, 1, ((PyObject *)__pyx_kp_s__1)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s__1)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_16)); - - /* "irp_stack.py":99 - * txt = txt.replace("$OMP_DECL","") - * txt = txt.replace("$OMP_GET_NUM_THREADS","1") - * txt = txt.replace("$OMP_GET_THREAD_NUM","0") # <<<<<<<<<<<<<< - * - * # $1 - */ - __pyx_k_tuple_17 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_17)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_11)); - PyTuple_SET_ITEM(__pyx_k_tuple_17, 0, ((PyObject *)__pyx_kp_s_11)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_11)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s__0)); - PyTuple_SET_ITEM(__pyx_k_tuple_17, 1, ((PyObject *)__pyx_kp_s__0)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s__0)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_17)); - - /* "irp_stack.py":103 - * # $1 - * if do_assert or do_debug: - * txt = txt.replace("$1",""" # <<<<<<<<<<<<<< - * if (.not.alloc) then - * allocate(irp_stack(STACKMAX,nthread+1)) - */ - __pyx_k_tuple_20 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_20)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_20)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_18)); - PyTuple_SET_ITEM(__pyx_k_tuple_20, 0, ((PyObject *)__pyx_kp_s_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_18)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_19)); - PyTuple_SET_ITEM(__pyx_k_tuple_20, 1, ((PyObject *)__pyx_kp_s_19)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_19)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_20)); - - /* "irp_stack.py":119 - * print *, 'Allocating stack_index(',nthread,')'""" - * else: - * txt = txt.replace("$1","") # <<<<<<<<<<<<<< - * - * # $2 - */ - __pyx_k_tuple_22 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_22)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 119; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_22)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_18)); - PyTuple_SET_ITEM(__pyx_k_tuple_22, 0, ((PyObject *)__pyx_kp_s_18)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_18)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyTuple_SET_ITEM(__pyx_k_tuple_22, 1, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_22)); - - /* "irp_stack.py":123 - * # $2 - * if do_debug: - * txt = txt.replace("$2",""" # <<<<<<<<<<<<<< - * print *, ithread, ':', white(1:stack_index(ithread+1))//'-> ', trim(irp_where) - * call cpu_time(irp_cpu(stack_index(ithread+1),ithread+1))""") - */ - __pyx_k_tuple_25 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_25)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_25)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_25, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_24)); - PyTuple_SET_ITEM(__pyx_k_tuple_25, 1, ((PyObject *)__pyx_kp_s_24)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_24)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_25)); - - /* "irp_stack.py":127 - * call cpu_time(irp_cpu(stack_index(ithread+1),ithread+1))""") - * else: - * txt = txt.replace("$2","") # <<<<<<<<<<<<<< - * - * # $3 - */ - __pyx_k_tuple_26 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_26)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_26)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_23)); - PyTuple_SET_ITEM(__pyx_k_tuple_26, 0, ((PyObject *)__pyx_kp_s_23)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_23)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyTuple_SET_ITEM(__pyx_k_tuple_26, 1, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_26)); - - /* "irp_stack.py":131 - * # $3 - * if do_debug: - * txt = txt.replace("$3",""" # <<<<<<<<<<<<<< - * call cpu_time(cpu) - * print *, ithread, ':', white(1:stack_index(ithread+1))//'<- ', & - */ - __pyx_k_tuple_29 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_29)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_29)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_27)); - PyTuple_SET_ITEM(__pyx_k_tuple_29, 0, ((PyObject *)__pyx_kp_s_27)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_27)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_28)); - PyTuple_SET_ITEM(__pyx_k_tuple_29, 1, ((PyObject *)__pyx_kp_s_28)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_28)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_29)); - - /* "irp_stack.py":137 - * cpu-irp_cpu(stack_index(ithread+1),ithread+1)""") - * else: - * txt = txt.replace("$3","") # <<<<<<<<<<<<<< - * - * # $4 - */ - __pyx_k_tuple_30 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_30)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_30)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_27)); - PyTuple_SET_ITEM(__pyx_k_tuple_30, 0, ((PyObject *)__pyx_kp_s_27)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_27)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyTuple_SET_ITEM(__pyx_k_tuple_30, 1, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_30)); - - /* "irp_stack.py":141 - * # $4 - * if do_debug or do_assert: - * txt = txt.replace("$4",""" # <<<<<<<<<<<<<< - * stack_index(ithread+1) = stack_index(ithread+1)-1""") - * else: - */ - __pyx_k_tuple_33 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_33)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_33)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_31)); - PyTuple_SET_ITEM(__pyx_k_tuple_33, 0, ((PyObject *)__pyx_kp_s_31)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_31)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_32)); - PyTuple_SET_ITEM(__pyx_k_tuple_33, 1, ((PyObject *)__pyx_kp_s_32)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_32)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_33)); - - /* "irp_stack.py":144 - * stack_index(ithread+1) = stack_index(ithread+1)-1""") - * else: - * txt = txt.replace("$4","") # <<<<<<<<<<<<<< - * - * if do_debug or do_assert: - */ - __pyx_k_tuple_34 = PyTuple_New(2); if (unlikely(!__pyx_k_tuple_34)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_34)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_31)); - PyTuple_SET_ITEM(__pyx_k_tuple_34, 0, ((PyObject *)__pyx_kp_s_31)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_31)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_14)); - PyTuple_SET_ITEM(__pyx_k_tuple_34, 1, ((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_14)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_34)); - - /* "irp_stack.py":163 - * """ - * - * txt = txt.split('\n') # <<<<<<<<<<<<<< - * txt = map(lambda x: x+"\n",txt) - * if not util.same_file(FILENAME, txt): - */ - __pyx_k_tuple_36 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_36)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_36)); - __Pyx_INCREF(((PyObject *)__pyx_kp_s_1)); - PyTuple_SET_ITEM(__pyx_k_tuple_36, 0, ((PyObject *)__pyx_kp_s_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_kp_s_1)); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_36)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initirp_stack(void); /*proto*/ -PyMODINIT_FUNC initirp_stack(void) -#else -PyMODINIT_FUNC PyInit_irp_stack(void); /*proto*/ -PyMODINIT_FUNC PyInit_irp_stack(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_irp_stack(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("irp_stack"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_irp_stack) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "irp_stack.py":28 - * - * - * import util # <<<<<<<<<<<<<< - * from command_line import command_line - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__util), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__util, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":29 - * - * import util - * from command_line import command_line # <<<<<<<<<<<<<< - * - * do_assert = command_line.do_assert - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__command_line, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irp_stack.py":31 - * from command_line import command_line - * - * do_assert = command_line.do_assert # <<<<<<<<<<<<<< - * do_debug = command_line.do_debug - * do_openmp = command_line.do_openmp - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_assert); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__do_assert, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":32 - * - * do_assert = command_line.do_assert - * do_debug = command_line.do_debug # <<<<<<<<<<<<<< - * do_openmp = command_line.do_openmp - * - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__do_debug); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__do_debug, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irp_stack.py":33 - * do_assert = command_line.do_assert - * do_debug = command_line.do_debug - * do_openmp = command_line.do_openmp # <<<<<<<<<<<<<< - * - * import irpf90_t - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__command_line); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__do_openmp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__do_openmp, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":35 - * do_openmp = command_line.do_openmp - * - * import irpf90_t # <<<<<<<<<<<<<< - * - * FILENAME = irpf90_t.irpdir+"irp_stack.irp.F90" - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__irpf90_t), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__irpf90_t, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":37 - * import irpf90_t - * - * FILENAME = irpf90_t.irpdir+"irp_stack.irp.F90" # <<<<<<<<<<<<<< - * - * def create(): - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__irpf90_t); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__irpdir); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyNumber_Add(__pyx_t_2, ((PyObject *)__pyx_kp_s_37)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FILENAME, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":39 - * FILENAME = irpf90_t.irpdir+"irp_stack.irp.F90" - * - * def create(): # <<<<<<<<<<<<<< - * - * txt = """ - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_9irp_stack_create, NULL, __pyx_n_s__irp_stack); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__create, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irp_stack.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - if (__pyx_m) { - __Pyx_AddTraceback("init irp_stack", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init irp_stack"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - - -static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) { - __pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType); - if (op == NULL) - return NULL; - op->func.m_ml = ml; - Py_XINCREF(self); - op->func.m_self = self; - Py_XINCREF(module); - op->func.m_module = module; - PyObject_GC_Track(op); - return (PyObject *)op; -} - -static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) { - PyObject_GC_UnTrack(m); - Py_XDECREF(m->func.m_self); - Py_XDECREF(m->func.m_module); - PyObject_GC_Del(m); -} - -static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) { - if (obj == Py_None) - obj = NULL; - return PyMethod_New(func, obj, type); -} - -static int __pyx_binding_PyCFunctionType_init(void) { - __pyx_binding_PyCFunctionType_type = PyCFunction_Type; - __pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method"); - __pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc; - __pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get; - if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) { - return -1; - } - __pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type; - return 0; - -} - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/irp_stack.so b/src/irp_stack.so deleted file mode 100755 index b7a8237fae3d03305b4850529fc957b5add1f72f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96260 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 /* For offsetof */ -#ifndef offsetof -#define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) -#endif - -#if !defined(WIN32) && !defined(MS_WINDOWS) - #ifndef __stdcall - #define __stdcall - #endif - #ifndef __cdecl - #define __cdecl - #endif - #ifndef __fastcall - #define __fastcall - #endif -#endif - -#ifndef DL_IMPORT - #define DL_IMPORT(t) t -#endif -#ifndef DL_EXPORT - #define DL_EXPORT(t) t -#endif - -#ifndef PY_LONG_LONG - #define PY_LONG_LONG LONG_LONG -#endif - -#if PY_VERSION_HEX < 0x02040000 - #define METH_COEXIST 0 - #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) - #define PyDict_Contains(d,o) PySequence_Contains(d,o) -#endif - -#if PY_VERSION_HEX < 0x02050000 - typedef int Py_ssize_t; - #define PY_SSIZE_T_MAX INT_MAX - #define PY_SSIZE_T_MIN INT_MIN - #define PY_FORMAT_SIZE_T "" - #define PyInt_FromSsize_t(z) PyInt_FromLong(z) - #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) - #define PyNumber_Index(o) PyNumber_Int(o) - #define PyIndex_Check(o) PyNumber_Check(o) - #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) - #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) - #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) - #define PyVarObject_HEAD_INIT(type, size) \ - PyObject_HEAD_INIT(type) size, - #define PyType_Modified(t) - - typedef struct { - void *buf; - PyObject *obj; - Py_ssize_t len; - Py_ssize_t itemsize; - int readonly; - int ndim; - char *format; - Py_ssize_t *shape; - Py_ssize_t *strides; - Py_ssize_t *suboffsets; - void *internal; - } Py_buffer; - - #define PyBUF_SIMPLE 0 - #define PyBUF_WRITABLE 0x0001 - #define PyBUF_FORMAT 0x0004 - #define PyBUF_ND 0x0008 - #define PyBUF_STRIDES (0x0010 | PyBUF_ND) - #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) - #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) - #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) - #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) - -#endif - -#if PY_MAJOR_VERSION < 3 - #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" -#else - #define __Pyx_BUILTIN_MODULE_NAME "builtins" -#endif - -#if PY_MAJOR_VERSION >= 3 - #define Py_TPFLAGS_CHECKTYPES 0 - #define Py_TPFLAGS_HAVE_INDEX 0 -#endif - -#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) - #define Py_TPFLAGS_HAVE_NEWBUFFER 0 -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBaseString_Type PyUnicode_Type - #define PyStringObject PyUnicodeObject - #define PyString_Type PyUnicode_Type - #define PyString_Check PyUnicode_Check - #define PyString_CheckExact PyUnicode_CheckExact -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PyBytesObject PyStringObject - #define PyBytes_Type PyString_Type - #define PyBytes_Check PyString_Check - #define PyBytes_CheckExact PyString_CheckExact - #define PyBytes_FromString PyString_FromString - #define PyBytes_FromStringAndSize PyString_FromStringAndSize - #define PyBytes_FromFormat PyString_FromFormat - #define PyBytes_DecodeEscape PyString_DecodeEscape - #define PyBytes_AsString PyString_AsString - #define PyBytes_AsStringAndSize PyString_AsStringAndSize - #define PyBytes_Size PyString_Size - #define PyBytes_AS_STRING PyString_AS_STRING - #define PyBytes_GET_SIZE PyString_GET_SIZE - #define PyBytes_Repr PyString_Repr - #define PyBytes_Concat PyString_Concat - #define PyBytes_ConcatAndDel PyString_ConcatAndDel -#endif - -#if PY_VERSION_HEX < 0x02060000 - #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) - #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) -#endif -#ifndef PySet_CheckExact - #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) -#endif - -#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) - -#if PY_MAJOR_VERSION >= 3 - #define PyIntObject PyLongObject - #define PyInt_Type PyLong_Type - #define PyInt_Check(op) PyLong_Check(op) - #define PyInt_CheckExact(op) PyLong_CheckExact(op) - #define PyInt_FromString PyLong_FromString - #define PyInt_FromUnicode PyLong_FromUnicode - #define PyInt_FromLong PyLong_FromLong - #define PyInt_FromSize_t PyLong_FromSize_t - #define PyInt_FromSsize_t PyLong_FromSsize_t - #define PyInt_AsLong PyLong_AsLong - #define PyInt_AS_LONG PyLong_AS_LONG - #define PyInt_AsSsize_t PyLong_AsSsize_t - #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask - #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyBoolObject PyLongObject -#endif - -#if PY_VERSION_HEX < 0x03020000 - typedef long Py_hash_t; - #define __Pyx_PyInt_FromHash_t PyInt_FromLong - #define __Pyx_PyInt_AsHash_t PyInt_AsLong -#else - #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t - #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t -#endif - - -#if PY_MAJOR_VERSION >= 3 - #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) -#else - #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) - #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) -#endif - -#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) - #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) - #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) -#else - #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) - #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) - #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ - (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ - (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ - (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) -#endif - -#if PY_MAJOR_VERSION >= 3 - #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) -#else - #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) - #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) - #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) -#endif - -#if PY_VERSION_HEX < 0x02050000 - #define __Pyx_NAMESTR(n) ((char *)(n)) - #define __Pyx_DOCSTR(n) ((char *)(n)) -#else - #define __Pyx_NAMESTR(n) (n) - #define __Pyx_DOCSTR(n) (n) -#endif - -#ifndef __PYX_EXTERN_C - #ifdef __cplusplus - #define __PYX_EXTERN_C extern "C" - #else - #define __PYX_EXTERN_C extern - #endif -#endif - -#if defined(WIN32) || defined(MS_WINDOWS) -#define _USE_MATH_DEFINES -#endif -#include -#define __PYX_HAVE__irpf90 -#define __PYX_HAVE_API__irpf90 -#ifdef _OPENMP -#include -#endif /* _OPENMP */ - -#ifdef PYREX_WITHOUT_ASSERTIONS -#define CYTHON_WITHOUT_ASSERTIONS -#endif - - -/* inline attribute */ -#ifndef CYTHON_INLINE - #if defined(__GNUC__) - #define CYTHON_INLINE __inline__ - #elif defined(_MSC_VER) - #define CYTHON_INLINE __inline - #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L - #define CYTHON_INLINE inline - #else - #define CYTHON_INLINE - #endif -#endif - -/* unused attribute */ -#ifndef CYTHON_UNUSED -# if defined(__GNUC__) -# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -# elif defined(__ICC) || defined(__INTEL_COMPILER) -# define CYTHON_UNUSED __attribute__ ((__unused__)) -# else -# define CYTHON_UNUSED -# endif -#endif - -typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ - - -/* Type Conversion Predeclarations */ - -#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) -#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) - -#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) -#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); - -#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) - - -#ifdef __GNUC__ - /* Test for GCC > 2.95 */ - #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) - #define likely(x) __builtin_expect(!!(x), 1) - #define unlikely(x) __builtin_expect(!!(x), 0) - #else /* __GNUC__ > 2 ... */ - #define likely(x) (x) - #define unlikely(x) (x) - #endif /* __GNUC__ > 2 ... */ -#else /* __GNUC__ */ - #define likely(x) (x) - #define unlikely(x) (x) -#endif /* __GNUC__ */ - -static PyObject *__pyx_m; -static PyObject *__pyx_b; -static PyObject *__pyx_empty_tuple; -static PyObject *__pyx_empty_bytes; -static int __pyx_lineno; -static int __pyx_clineno = 0; -static const char * __pyx_cfilenm= __FILE__; -static const char *__pyx_filename; - - -static const char *__pyx_f[] = { - "irpf90.py", -}; - -/*--- Type declarations ---*/ - -#ifndef CYTHON_REFNANNY - #define CYTHON_REFNANNY 0 -#endif - -#if CYTHON_REFNANNY - typedef struct { - void (*INCREF)(void*, PyObject*, int); - void (*DECREF)(void*, PyObject*, int); - void (*GOTREF)(void*, PyObject*, int); - void (*GIVEREF)(void*, PyObject*, int); - void* (*SetupContext)(const char*, int, const char*); - void (*FinishContext)(void**); - } __Pyx_RefNannyAPIStruct; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; - static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ - #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; - #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) - #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) - #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) - #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) - #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) - #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) - #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) -#else - #define __Pyx_RefNannyDeclarations - #define __Pyx_RefNannySetupContext(name) - #define __Pyx_RefNannyFinishContext() - #define __Pyx_INCREF(r) Py_INCREF(r) - #define __Pyx_DECREF(r) Py_DECREF(r) - #define __Pyx_GOTREF(r) - #define __Pyx_GIVEREF(r) - #define __Pyx_XINCREF(r) Py_XINCREF(r) - #define __Pyx_XDECREF(r) Py_XDECREF(r) - #define __Pyx_XGOTREF(r) - #define __Pyx_XGIVEREF(r) -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ - -static CYTHON_INLINE int __Pyx_NegateNonNeg(int b) { - return unlikely(b < 0) ? b : !b; -} -static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { - return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); -} - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ - -#include - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals); /*proto*/ - -#if PY_MAJOR_VERSION >= 3 -#define __Pyx_PyString_Equals __Pyx_PyUnicode_Equals -#else -#define __Pyx_PyString_Equals __Pyx_PyBytes_Equals -#endif - -static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/ -#if PY_MAJOR_VERSION >= 3 -static PyObject* __pyx_print = 0; -static PyObject* __pyx_print_kwargs = 0; -#endif - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/ - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); - -static int __Pyx_check_binary_version(void); - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename); /*proto*/ - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ - -/* Module declarations from 'irpf90' */ -#define __Pyx_MODULE_NAME "irpf90" -int __pyx_module_is_main_irpf90 = 0; - -/* Implementation of 'irpf90' */ -static char __pyx_k_1[] = "%s is not an IRP entity"; -static char __pyx_k_2[] = "%s touches the following entities:"; -static char __pyx_k_3[] = "- %s"; -static char __pyx_k_4[] = "/../src/"; -static char __pyx_k__os[] = "os"; -static char __pyx_k__wd[] = "wd"; -static char __pyx_k__run[] = "run"; -static char __pyx_k__sys[] = "sys"; -static char __pyx_k__vim[] = "vim"; -static char __pyx_k__init[] = "init"; -static char __pyx_k__keys[] = "keys"; -static char __pyx_k__main[] = "main"; -static char __pyx_k__path[] = "path"; -static char __pyx_k__sort[] = "sort"; -static char __pyx_k__text[] = "text"; -static char __pyx_k__usage[] = "usage"; -static char __pyx_k__create[] = "create"; -static char __pyx_k__do_run[] = "do_run"; -static char __pyx_k__insert[] = "insert"; -static char __pyx_k__irpf90[] = "irpf90"; -static char __pyx_k__abspath[] = "abspath"; -static char __pyx_k__dirname[] = "dirname"; -static char __pyx_k__do_help[] = "do_help"; -static char __pyx_k__do_init[] = "do_init"; -static char __pyx_k__install[] = "install"; -static char __pyx_k__modules[] = "modules"; -static char __pyx_k__parents[] = "parents"; -static char __pyx_k__profile[] = "profile"; -static char __pyx_k__touched[] = "touched"; -static char __pyx_k__touches[] = "touches"; -static char __pyx_k__version[] = "version"; -static char __pyx_k____file__[] = "__file__"; -static char __pyx_k____main__[] = "__main__"; -static char __pyx_k____name__[] = "__name__"; -static char __pyx_k____test__[] = "__test__"; -static char __pyx_k__do_touch[] = "do_touch"; -static char __pyx_k__makefile[] = "makefile"; -static char __pyx_k__irp_stack[] = "irp_stack"; -static char __pyx_k__variables[] = "variables"; -static char __pyx_k__create_man[] = "create_man"; -static char __pyx_k__do_profile[] = "do_profile"; -static char __pyx_k__do_version[] = "do_version"; -static char __pyx_k__command_line[] = "command_line"; -static char __pyx_k__preprocessed[] = "preprocessed"; -static char __pyx_k__write_module[] = "write_module"; -static char __pyx_k__do_preprocess[] = "do_preprocess"; -static char __pyx_k__setcheckinterval[] = "setcheckinterval"; -static char __pyx_k__preprocessed_text[] = "preprocessed_text"; -static PyObject *__pyx_kp_s_1; -static PyObject *__pyx_kp_s_2; -static PyObject *__pyx_kp_s_3; -static PyObject *__pyx_kp_s_4; -static PyObject *__pyx_n_s____file__; -static PyObject *__pyx_n_s____main__; -static PyObject *__pyx_n_s____name__; -static PyObject *__pyx_n_s____test__; -static PyObject *__pyx_n_s__abspath; -static PyObject *__pyx_n_s__command_line; -static PyObject *__pyx_n_s__create; -static PyObject *__pyx_n_s__create_man; -static PyObject *__pyx_n_s__dirname; -static PyObject *__pyx_n_s__do_help; -static PyObject *__pyx_n_s__do_init; -static PyObject *__pyx_n_s__do_preprocess; -static PyObject *__pyx_n_s__do_profile; -static PyObject *__pyx_n_s__do_run; -static PyObject *__pyx_n_s__do_touch; -static PyObject *__pyx_n_s__do_version; -static PyObject *__pyx_n_s__init; -static PyObject *__pyx_n_s__insert; -static PyObject *__pyx_n_s__install; -static PyObject *__pyx_n_s__irp_stack; -static PyObject *__pyx_n_s__irpf90; -static PyObject *__pyx_n_s__keys; -static PyObject *__pyx_n_s__main; -static PyObject *__pyx_n_s__makefile; -static PyObject *__pyx_n_s__modules; -static PyObject *__pyx_n_s__os; -static PyObject *__pyx_n_s__parents; -static PyObject *__pyx_n_s__path; -static PyObject *__pyx_n_s__preprocessed; -static PyObject *__pyx_n_s__preprocessed_text; -static PyObject *__pyx_n_s__profile; -static PyObject *__pyx_n_s__run; -static PyObject *__pyx_n_s__setcheckinterval; -static PyObject *__pyx_n_s__sort; -static PyObject *__pyx_n_s__sys; -static PyObject *__pyx_n_s__text; -static PyObject *__pyx_n_s__touched; -static PyObject *__pyx_n_s__touches; -static PyObject *__pyx_n_s__usage; -static PyObject *__pyx_n_s__variables; -static PyObject *__pyx_n_s__version; -static PyObject *__pyx_n_s__vim; -static PyObject *__pyx_n_s__wd; -static PyObject *__pyx_n_s__write_module; -static PyObject *__pyx_int_0; -static PyObject *__pyx_int_1000; -static PyObject *__pyx_k_tuple_5; - -/* "irpf90.py":38 - * sys.setcheckinterval(1000) - * - * def main(): # <<<<<<<<<<<<<< - * from command_line import command_line - * - */ - -static PyObject *__pyx_pf_6irpf90_main(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ -static PyMethodDef __pyx_mdef_6irpf90_main = {__Pyx_NAMESTR("main"), (PyCFunction)__pyx_pf_6irpf90_main, METH_NOARGS, __Pyx_DOCSTR(0)}; -static PyObject *__pyx_pf_6irpf90_main(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { - PyObject *__pyx_v_command_line = NULL; - PyObject *__pyx_v_version = NULL; - PyObject *__pyx_v_init = NULL; - PyObject *__pyx_v_preprocessed_text = NULL; - PyObject *__pyx_v_filename = NULL; - PyObject *__pyx_v_text = NULL; - PyObject *__pyx_v_line = NULL; - PyObject *__pyx_v_variables = NULL; - PyObject *__pyx_v_var = NULL; - PyObject *__pyx_v_parents = NULL; - PyObject *__pyx_v_x = NULL; - PyObject *__pyx_v_irp_stack = NULL; - PyObject *__pyx_v_makefile = NULL; - PyObject *__pyx_v_modules = NULL; - PyObject *__pyx_v_write_module = NULL; - PyObject *__pyx_v_m = NULL; - PyObject *__pyx_v_touches = NULL; - PyObject *__pyx_v_create_man = NULL; - PyObject *__pyx_v_profile = NULL; - PyObject *__pyx_r = NULL; - __Pyx_RefNannyDeclarations - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - int __pyx_t_3; - Py_ssize_t __pyx_t_4; - PyObject *(*__pyx_t_5)(PyObject *); - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - PyObject *__pyx_t_8 = NULL; - PyObject *(*__pyx_t_9)(PyObject *); - Py_ssize_t __pyx_t_10; - PyObject *(*__pyx_t_11)(PyObject *); - int __pyx_t_12; - int __pyx_lineno = 0; - const char *__pyx_filename = NULL; - int __pyx_clineno = 0; - __Pyx_RefNannySetupContext("main"); - __pyx_self = __pyx_self; - - /* "irpf90.py":39 - * - * def main(): - * from command_line import command_line # <<<<<<<<<<<<<< - * - * vim.install() - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__command_line)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__command_line)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__command_line)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__command_line), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__command_line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v_command_line = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":41 - * from command_line import command_line - * - * vim.install() # <<<<<<<<<<<<<< - * - * if command_line.do_help: - */ - __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__vim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__install); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":43 - * vim.install() - * - * if command_line.do_help: # <<<<<<<<<<<<<< - * command_line.usage() - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_help); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 43; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":44 - * - * if command_line.do_help: - * command_line.usage() # <<<<<<<<<<<<<< - * - * if command_line.do_version: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__usage); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 44; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L5; - } - __pyx_L5:; - - /* "irpf90.py":46 - * command_line.usage() - * - * if command_line.do_version: # <<<<<<<<<<<<<< - * from version import version - * print version - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_version); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 46; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":47 - * - * if command_line.do_version: - * from version import version # <<<<<<<<<<<<<< - * print version - * - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__version)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__version)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__version)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__version), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__version); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v_version = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":48 - * if command_line.do_version: - * from version import version - * print version # <<<<<<<<<<<<<< - * - * from init import init - */ - if (__Pyx_PrintOne(0, __pyx_v_version) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - goto __pyx_L6; - } - __pyx_L6:; - - /* "irpf90.py":50 - * print version - * - * from init import init # <<<<<<<<<<<<<< - * if command_line.do_init: - * init() - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__init)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__init)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__init)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__init), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__init); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_init = __pyx_t_2; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":51 - * - * from init import init - * if command_line.do_init: # <<<<<<<<<<<<<< - * init() - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_init); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":52 - * from init import init - * if command_line.do_init: - * init() # <<<<<<<<<<<<<< - * - * if command_line.do_preprocess: - */ - __pyx_t_1 = PyObject_Call(__pyx_v_init, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L7; - } - __pyx_L7:; - - /* "irpf90.py":54 - * init() - * - * if command_line.do_preprocess: # <<<<<<<<<<<<<< - * init() - * from preprocessed_text import preprocessed_text - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_preprocess); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":55 - * - * if command_line.do_preprocess: - * init() # <<<<<<<<<<<<<< - * from preprocessed_text import preprocessed_text - * for filename,text in preprocessed_text: - */ - __pyx_t_1 = PyObject_Call(__pyx_v_init, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":56 - * if command_line.do_preprocess: - * init() - * from preprocessed_text import preprocessed_text # <<<<<<<<<<<<<< - * for filename,text in preprocessed_text: - * if filename in command_line.preprocessed: - */ - __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__preprocessed_text)); - PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s__preprocessed_text)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__preprocessed_text)); - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__preprocessed_text), ((PyObject *)__pyx_t_1), -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__preprocessed_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_1); - __pyx_v_preprocessed_text = __pyx_t_1; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":57 - * init() - * from preprocessed_text import preprocessed_text - * for filename,text in preprocessed_text: # <<<<<<<<<<<<<< - * if filename in command_line.preprocessed: - * for line in text: - */ - if (PyList_CheckExact(__pyx_v_preprocessed_text) || PyTuple_CheckExact(__pyx_v_preprocessed_text)) { - __pyx_t_2 = __pyx_v_preprocessed_text; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_preprocessed_text); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { - PyObject* sequence = __pyx_t_1; - if (likely(PyTuple_CheckExact(sequence))) { - if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { - if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); - __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); - } else { - if (unlikely(PyList_GET_SIZE(sequence) != 2)) { - if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); - else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - __pyx_t_6 = PyList_GET_ITEM(sequence, 0); - __pyx_t_7 = PyList_GET_ITEM(sequence, 1); - } - __Pyx_INCREF(__pyx_t_6); - __Pyx_INCREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } else { - Py_ssize_t index = -1; - __pyx_t_8 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext; - index = 0; __pyx_t_6 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_6)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_6); - index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - goto __pyx_L12_unpacking_done; - __pyx_L11_unpacking_failed:; - __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); - if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); - {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_L12_unpacking_done:; - } - __Pyx_XDECREF(__pyx_v_filename); - __pyx_v_filename = __pyx_t_6; - __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_v_text); - __pyx_v_text = __pyx_t_7; - __pyx_t_7 = 0; - - /* "irpf90.py":58 - * from preprocessed_text import preprocessed_text - * for filename,text in preprocessed_text: - * if filename in command_line.preprocessed: # <<<<<<<<<<<<<< - * for line in text: - * print line.text - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__preprocessed); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = ((PySequence_Contains(__pyx_t_1, __pyx_v_filename))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":59 - * for filename,text in preprocessed_text: - * if filename in command_line.preprocessed: - * for line in text: # <<<<<<<<<<<<<< - * print line.text - * - */ - if (PyList_CheckExact(__pyx_v_text) || PyTuple_CheckExact(__pyx_v_text)) { - __pyx_t_1 = __pyx_v_text; __Pyx_INCREF(__pyx_t_1); __pyx_t_10 = 0; - __pyx_t_11 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_text); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_11 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; - } else { - __pyx_t_7 = __pyx_t_11(__pyx_t_1); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_line); - __pyx_v_line = __pyx_t_7; - __pyx_t_7 = 0; - - /* "irpf90.py":60 - * if filename in command_line.preprocessed: - * for line in text: - * print line.text # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_line, __pyx_n_s__text); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - if (__Pyx_PrintOne(0, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L13; - } - __pyx_L13:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L8; - } - __pyx_L8:; - - /* "irpf90.py":63 - * - * - * if command_line.do_touch: # <<<<<<<<<<<<<< - * from variables import variables - * for var in command_line.touched: - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_touch); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_3) { - - /* "irpf90.py":64 - * - * if command_line.do_touch: - * from variables import variables # <<<<<<<<<<<<<< - * for var in command_line.touched: - * if var not in variables: - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__variables)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__variables)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__variables)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__variables), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__variables); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 64; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_variables = __pyx_t_2; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":65 - * if command_line.do_touch: - * from variables import variables - * for var in command_line.touched: # <<<<<<<<<<<<<< - * if var not in variables: - * print "%s is not an IRP entity"%(var,) - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__touched); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { - __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_2)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break; - __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; - } else { - __pyx_t_1 = __pyx_t_5(__pyx_t_2); - if (unlikely(!__pyx_t_1)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 65; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_1); - } - __Pyx_XDECREF(__pyx_v_var); - __pyx_v_var = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irpf90.py":66 - * from variables import variables - * for var in command_line.touched: - * if var not in variables: # <<<<<<<<<<<<<< - * print "%s is not an IRP entity"%(var,) - * else: - */ - __pyx_t_3 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_v_variables, __pyx_v_var))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_t_3) { - - /* "irpf90.py":67 - * for var in command_line.touched: - * if var not in variables: - * print "%s is not an IRP entity"%(var,) # <<<<<<<<<<<<<< - * else: - * print "%s touches the following entities:"%(var,) - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_INCREF(__pyx_v_var); - PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_var); - __Pyx_GIVEREF(__pyx_v_var); - __pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_1), ((PyObject *)__pyx_t_1)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - goto __pyx_L19; - } - /*else*/ { - - /* "irpf90.py":69 - * print "%s is not an IRP entity"%(var,) - * else: - * print "%s touches the following entities:"%(var,) # <<<<<<<<<<<<<< - * parents = variables[var].parents - * parents.sort() - */ - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_var); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_var); - __Pyx_GIVEREF(__pyx_v_var); - __pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_2), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_1)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; - - /* "irpf90.py":70 - * else: - * print "%s touches the following entities:"%(var,) - * parents = variables[var].parents # <<<<<<<<<<<<<< - * parents.sort() - * for x in parents: - */ - __pyx_t_1 = PyObject_GetItem(__pyx_v_variables, __pyx_v_var); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__parents); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XDECREF(__pyx_v_parents); - __pyx_v_parents = __pyx_t_7; - __pyx_t_7 = 0; - - /* "irpf90.py":71 - * print "%s touches the following entities:"%(var,) - * parents = variables[var].parents - * parents.sort() # <<<<<<<<<<<<<< - * for x in parents: - * print "- %s"%(x,) - */ - __pyx_t_7 = PyObject_GetAttr(__pyx_v_parents, __pyx_n_s__sort); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":72 - * parents = variables[var].parents - * parents.sort() - * for x in parents: # <<<<<<<<<<<<<< - * print "- %s"%(x,) - * - */ - if (PyList_CheckExact(__pyx_v_parents) || PyTuple_CheckExact(__pyx_v_parents)) { - __pyx_t_1 = __pyx_v_parents; __Pyx_INCREF(__pyx_t_1); __pyx_t_10 = 0; - __pyx_t_11 = NULL; - } else { - __pyx_t_10 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_parents); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_11 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; - } else { - __pyx_t_7 = __pyx_t_11(__pyx_t_1); - if (unlikely(!__pyx_t_7)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_7); - } - __Pyx_XDECREF(__pyx_v_x); - __pyx_v_x = __pyx_t_7; - __pyx_t_7 = 0; - - /* "irpf90.py":73 - * parents.sort() - * for x in parents: - * print "- %s"%(x,) # <<<<<<<<<<<<<< - * - * if not command_line.do_run: - */ - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_v_x); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_x); - __Pyx_GIVEREF(__pyx_v_x); - __pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_3), ((PyObject *)__pyx_t_7)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_6)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __pyx_L19:; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - goto __pyx_L16; - } - __pyx_L16:; - - /* "irpf90.py":75 - * print "- %s"%(x,) - * - * if not command_line.do_run: # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_run); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_12 = (!__pyx_t_3); - if (__pyx_t_12) { - - /* "irpf90.py":76 - * - * if not command_line.do_run: - * return # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - goto __pyx_L22; - } - __pyx_L22:; - - /* "irpf90.py":79 - * - * - * init() # <<<<<<<<<<<<<< - * - * import irp_stack - */ - __pyx_t_2 = PyObject_Call(__pyx_v_init, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":81 - * init() - * - * import irp_stack # <<<<<<<<<<<<<< - * irp_stack.create() - * - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__irp_stack), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_irp_stack = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90.py":82 - * - * import irp_stack - * irp_stack.create() # <<<<<<<<<<<<<< - * - * import makefile - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_irp_stack, __pyx_n_s__create); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":84 - * irp_stack.create() - * - * import makefile # <<<<<<<<<<<<<< - * makefile.create() - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__makefile), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_makefile = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irpf90.py":85 - * - * import makefile - * makefile.create() # <<<<<<<<<<<<<< - * - * from modules import modules, write_module - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_makefile, __pyx_n_s__create); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":87 - * makefile.create() - * - * from modules import modules, write_module # <<<<<<<<<<<<<< - * for m in modules.keys(): - * write_module(modules[m]) - */ - __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_2)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__modules)); - PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_s__modules)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__modules)); - __Pyx_INCREF(((PyObject *)__pyx_n_s__write_module)); - PyList_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_n_s__write_module)); - __Pyx_GIVEREF(((PyObject *)__pyx_n_s__write_module)); - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__modules), ((PyObject *)__pyx_t_2), -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__modules); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_modules = __pyx_t_2; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__write_module); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_INCREF(__pyx_t_2); - __pyx_v_write_module = __pyx_t_2; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":88 - * - * from modules import modules, write_module - * for m in modules.keys(): # <<<<<<<<<<<<<< - * write_module(modules[m]) - * - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_modules, __pyx_n_s__keys); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { - __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0; - __pyx_t_5 = NULL; - } else { - __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext; - } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - for (;;) { - if (PyList_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else if (PyTuple_CheckExact(__pyx_t_1)) { - if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break; - __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; - } else { - __pyx_t_2 = __pyx_t_5(__pyx_t_1); - if (unlikely(!__pyx_t_2)) { - if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); - else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - } - break; - } - __Pyx_GOTREF(__pyx_t_2); - } - __Pyx_XDECREF(__pyx_v_m); - __pyx_v_m = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90.py":89 - * from modules import modules, write_module - * for m in modules.keys(): - * write_module(modules[m]) # <<<<<<<<<<<<<< - * - * makefile.run() - */ - __pyx_t_2 = PyObject_GetItem(__pyx_v_modules, __pyx_v_m); if (!__pyx_t_2) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_6)); - PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2); - __Pyx_GIVEREF(__pyx_t_2); - __pyx_t_2 = 0; - __pyx_t_2 = PyObject_Call(__pyx_v_write_module, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":91 - * write_module(modules[m]) - * - * makefile.run() # <<<<<<<<<<<<<< - * - * import touches - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_makefile, __pyx_n_s__run); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":93 - * makefile.run() - * - * import touches # <<<<<<<<<<<<<< - * touches.create() - * - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__touches), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_touches = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90.py":94 - * - * import touches - * touches.create() # <<<<<<<<<<<<<< - * - * import create_man - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_touches, __pyx_n_s__create); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":96 - * touches.create() - * - * import create_man # <<<<<<<<<<<<<< - * create_man.run() - * - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__create_man), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_v_create_man = __pyx_t_1; - __pyx_t_1 = 0; - - /* "irpf90.py":97 - * - * import create_man - * create_man.run() # <<<<<<<<<<<<<< - * - * if command_line.do_profile: - */ - __pyx_t_1 = PyObject_GetAttr(__pyx_v_create_man, __pyx_n_s__run); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 97; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "irpf90.py":99 - * create_man.run() - * - * if command_line.do_profile: # <<<<<<<<<<<<<< - * import profile - * profile.run() - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_command_line, __pyx_n_s__do_profile); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 99; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (__pyx_t_12) { - - /* "irpf90.py":100 - * - * if command_line.do_profile: - * import profile # <<<<<<<<<<<<<< - * profile.run() - * - */ - __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__profile), 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_v_profile = __pyx_t_2; - __pyx_t_2 = 0; - - /* "irpf90.py":101 - * if command_line.do_profile: - * import profile - * profile.run() # <<<<<<<<<<<<<< - * - * if __name__ == '__main__': - */ - __pyx_t_2 = PyObject_GetAttr(__pyx_v_profile, __pyx_n_s__run); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - goto __pyx_L25; - } - __pyx_L25:; - - __pyx_r = Py_None; __Pyx_INCREF(Py_None); - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_2); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - __Pyx_XDECREF(__pyx_t_8); - __Pyx_AddTraceback("irpf90.main", __pyx_clineno, __pyx_lineno, __pyx_filename); - __pyx_r = NULL; - __pyx_L0:; - __Pyx_XDECREF(__pyx_v_command_line); - __Pyx_XDECREF(__pyx_v_version); - __Pyx_XDECREF(__pyx_v_init); - __Pyx_XDECREF(__pyx_v_preprocessed_text); - __Pyx_XDECREF(__pyx_v_filename); - __Pyx_XDECREF(__pyx_v_text); - __Pyx_XDECREF(__pyx_v_line); - __Pyx_XDECREF(__pyx_v_variables); - __Pyx_XDECREF(__pyx_v_var); - __Pyx_XDECREF(__pyx_v_parents); - __Pyx_XDECREF(__pyx_v_x); - __Pyx_XDECREF(__pyx_v_irp_stack); - __Pyx_XDECREF(__pyx_v_makefile); - __Pyx_XDECREF(__pyx_v_modules); - __Pyx_XDECREF(__pyx_v_write_module); - __Pyx_XDECREF(__pyx_v_m); - __Pyx_XDECREF(__pyx_v_touches); - __Pyx_XDECREF(__pyx_v_create_man); - __Pyx_XDECREF(__pyx_v_profile); - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - return __pyx_r; -} - -static PyMethodDef __pyx_methods[] = { - {0, 0, 0, 0} -}; - -#if PY_MAJOR_VERSION >= 3 -static struct PyModuleDef __pyx_moduledef = { - PyModuleDef_HEAD_INIT, - __Pyx_NAMESTR("irpf90"), - 0, /* m_doc */ - -1, /* m_size */ - __pyx_methods /* m_methods */, - NULL, /* m_reload */ - NULL, /* m_traverse */ - NULL, /* m_clear */ - NULL /* m_free */ -}; -#endif - -static __Pyx_StringTabEntry __pyx_string_tab[] = { - {&__pyx_kp_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 0}, - {&__pyx_kp_s_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 0, 1, 0}, - {&__pyx_kp_s_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 0, 1, 0}, - {&__pyx_kp_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 0}, - {&__pyx_n_s____file__, __pyx_k____file__, sizeof(__pyx_k____file__), 0, 0, 1, 1}, - {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, - {&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1}, - {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, - {&__pyx_n_s__abspath, __pyx_k__abspath, sizeof(__pyx_k__abspath), 0, 0, 1, 1}, - {&__pyx_n_s__command_line, __pyx_k__command_line, sizeof(__pyx_k__command_line), 0, 0, 1, 1}, - {&__pyx_n_s__create, __pyx_k__create, sizeof(__pyx_k__create), 0, 0, 1, 1}, - {&__pyx_n_s__create_man, __pyx_k__create_man, sizeof(__pyx_k__create_man), 0, 0, 1, 1}, - {&__pyx_n_s__dirname, __pyx_k__dirname, sizeof(__pyx_k__dirname), 0, 0, 1, 1}, - {&__pyx_n_s__do_help, __pyx_k__do_help, sizeof(__pyx_k__do_help), 0, 0, 1, 1}, - {&__pyx_n_s__do_init, __pyx_k__do_init, sizeof(__pyx_k__do_init), 0, 0, 1, 1}, - {&__pyx_n_s__do_preprocess, __pyx_k__do_preprocess, sizeof(__pyx_k__do_preprocess), 0, 0, 1, 1}, - {&__pyx_n_s__do_profile, __pyx_k__do_profile, sizeof(__pyx_k__do_profile), 0, 0, 1, 1}, - {&__pyx_n_s__do_run, __pyx_k__do_run, sizeof(__pyx_k__do_run), 0, 0, 1, 1}, - {&__pyx_n_s__do_touch, __pyx_k__do_touch, sizeof(__pyx_k__do_touch), 0, 0, 1, 1}, - {&__pyx_n_s__do_version, __pyx_k__do_version, sizeof(__pyx_k__do_version), 0, 0, 1, 1}, - {&__pyx_n_s__init, __pyx_k__init, sizeof(__pyx_k__init), 0, 0, 1, 1}, - {&__pyx_n_s__insert, __pyx_k__insert, sizeof(__pyx_k__insert), 0, 0, 1, 1}, - {&__pyx_n_s__install, __pyx_k__install, sizeof(__pyx_k__install), 0, 0, 1, 1}, - {&__pyx_n_s__irp_stack, __pyx_k__irp_stack, sizeof(__pyx_k__irp_stack), 0, 0, 1, 1}, - {&__pyx_n_s__irpf90, __pyx_k__irpf90, sizeof(__pyx_k__irpf90), 0, 0, 1, 1}, - {&__pyx_n_s__keys, __pyx_k__keys, sizeof(__pyx_k__keys), 0, 0, 1, 1}, - {&__pyx_n_s__main, __pyx_k__main, sizeof(__pyx_k__main), 0, 0, 1, 1}, - {&__pyx_n_s__makefile, __pyx_k__makefile, sizeof(__pyx_k__makefile), 0, 0, 1, 1}, - {&__pyx_n_s__modules, __pyx_k__modules, sizeof(__pyx_k__modules), 0, 0, 1, 1}, - {&__pyx_n_s__os, __pyx_k__os, sizeof(__pyx_k__os), 0, 0, 1, 1}, - {&__pyx_n_s__parents, __pyx_k__parents, sizeof(__pyx_k__parents), 0, 0, 1, 1}, - {&__pyx_n_s__path, __pyx_k__path, sizeof(__pyx_k__path), 0, 0, 1, 1}, - {&__pyx_n_s__preprocessed, __pyx_k__preprocessed, sizeof(__pyx_k__preprocessed), 0, 0, 1, 1}, - {&__pyx_n_s__preprocessed_text, __pyx_k__preprocessed_text, sizeof(__pyx_k__preprocessed_text), 0, 0, 1, 1}, - {&__pyx_n_s__profile, __pyx_k__profile, sizeof(__pyx_k__profile), 0, 0, 1, 1}, - {&__pyx_n_s__run, __pyx_k__run, sizeof(__pyx_k__run), 0, 0, 1, 1}, - {&__pyx_n_s__setcheckinterval, __pyx_k__setcheckinterval, sizeof(__pyx_k__setcheckinterval), 0, 0, 1, 1}, - {&__pyx_n_s__sort, __pyx_k__sort, sizeof(__pyx_k__sort), 0, 0, 1, 1}, - {&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1}, - {&__pyx_n_s__text, __pyx_k__text, sizeof(__pyx_k__text), 0, 0, 1, 1}, - {&__pyx_n_s__touched, __pyx_k__touched, sizeof(__pyx_k__touched), 0, 0, 1, 1}, - {&__pyx_n_s__touches, __pyx_k__touches, sizeof(__pyx_k__touches), 0, 0, 1, 1}, - {&__pyx_n_s__usage, __pyx_k__usage, sizeof(__pyx_k__usage), 0, 0, 1, 1}, - {&__pyx_n_s__variables, __pyx_k__variables, sizeof(__pyx_k__variables), 0, 0, 1, 1}, - {&__pyx_n_s__version, __pyx_k__version, sizeof(__pyx_k__version), 0, 0, 1, 1}, - {&__pyx_n_s__vim, __pyx_k__vim, sizeof(__pyx_k__vim), 0, 0, 1, 1}, - {&__pyx_n_s__wd, __pyx_k__wd, sizeof(__pyx_k__wd), 0, 0, 1, 1}, - {&__pyx_n_s__write_module, __pyx_k__write_module, sizeof(__pyx_k__write_module), 0, 0, 1, 1}, - {0, 0, 0, 0, 0, 0, 0} -}; -static int __Pyx_InitCachedBuiltins(void) { - return 0; -} - -static int __Pyx_InitCachedConstants(void) { - __Pyx_RefNannyDeclarations - __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); - - /* "irpf90.py":36 - * except: - * pass - * sys.setcheckinterval(1000) # <<<<<<<<<<<<<< - * - * def main(): - */ - __pyx_k_tuple_5 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_5)); - __Pyx_INCREF(__pyx_int_1000); - PyTuple_SET_ITEM(__pyx_k_tuple_5, 0, __pyx_int_1000); - __Pyx_GIVEREF(__pyx_int_1000); - __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_5)); - __Pyx_RefNannyFinishContext(); - return 0; - __pyx_L1_error:; - __Pyx_RefNannyFinishContext(); - return -1; -} - -static int __Pyx_InitGlobals(void) { - if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - __pyx_int_1000 = PyInt_FromLong(1000); if (unlikely(!__pyx_int_1000)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - return 0; - __pyx_L1_error:; - return -1; -} - -#if PY_MAJOR_VERSION < 3 -PyMODINIT_FUNC initirpf90(void); /*proto*/ -PyMODINIT_FUNC initirpf90(void) -#else -PyMODINIT_FUNC PyInit_irpf90(void); /*proto*/ -PyMODINIT_FUNC PyInit_irpf90(void) -#endif -{ - PyObject *__pyx_t_1 = NULL; - PyObject *__pyx_t_2 = NULL; - PyObject *__pyx_t_3 = NULL; - PyObject *__pyx_t_4 = NULL; - PyObject *__pyx_t_5 = NULL; - PyObject *__pyx_t_6 = NULL; - PyObject *__pyx_t_7 = NULL; - int __pyx_t_8; - __Pyx_RefNannyDeclarations - #if CYTHON_REFNANNY - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); - if (!__Pyx_RefNanny) { - PyErr_Clear(); - __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); - if (!__Pyx_RefNanny) - Py_FatalError("failed to import 'refnanny' module"); - } - #endif - __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_irpf90(void)"); - if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #ifdef __pyx_binding_PyCFunctionType_USED - if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - #endif - /*--- Library function declarations ---*/ - /*--- Threads initialization code ---*/ - #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS - #ifdef WITH_THREAD /* Python build with threading support? */ - PyEval_InitThreads(); - #endif - #endif - /*--- Module creation code ---*/ - #if PY_MAJOR_VERSION < 3 - __pyx_m = Py_InitModule4(__Pyx_NAMESTR("irpf90"), __pyx_methods, 0, 0, PYTHON_API_VERSION); - #else - __pyx_m = PyModule_Create(&__pyx_moduledef); - #endif - if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - #if PY_MAJOR_VERSION < 3 - Py_INCREF(__pyx_m); - #endif - __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); - if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - /*--- Initialize various global constants etc. ---*/ - if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - if (__pyx_module_is_main_irpf90) { - if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; - } - /*--- Builtin init code ---*/ - if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Constants init code ---*/ - if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - /*--- Global init code ---*/ - /*--- Variable export code ---*/ - /*--- Function export code ---*/ - /*--- Type init code ---*/ - /*--- Type import code ---*/ - /*--- Variable import code ---*/ - /*--- Function import code ---*/ - /*--- Execution code ---*/ - - /* "irpf90.py":29 - * - * - * import vim # <<<<<<<<<<<<<< - * import os,sys - * try: - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__vim), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__vim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":30 - * - * import vim - * import os,sys # <<<<<<<<<<<<<< - * try: - * wd = os.path.abspath(os.path.dirname(__file__)) - */ - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__os), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__os, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__sys), 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__sys, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":31 - * import vim - * import os,sys - * try: # <<<<<<<<<<<<<< - * wd = os.path.abspath(os.path.dirname(__file__)) - * sys.path.insert(0,(wd+"/../src/")) - */ - { - __Pyx_ExceptionSave(&__pyx_t_2, &__pyx_t_3, &__pyx_t_4); - __Pyx_XGOTREF(__pyx_t_2); - __Pyx_XGOTREF(__pyx_t_3); - __Pyx_XGOTREF(__pyx_t_4); - /*try:*/ { - - /* "irpf90.py":32 - * import os,sys - * try: - * wd = os.path.abspath(os.path.dirname(__file__)) # <<<<<<<<<<<<<< - * sys.path.insert(0,(wd+"/../src/")) - * except: - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__path); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__abspath); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_GetName(__pyx_m, __pyx_n_s__os); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_5); - __pyx_t_6 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s__path); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__dirname); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s____file__); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_6); - __Pyx_GIVEREF(__pyx_t_6); - __pyx_t_6 = 0; - __pyx_t_6 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__wd, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - - /* "irpf90.py":33 - * try: - * wd = os.path.abspath(os.path.dirname(__file__)) - * sys.path.insert(0,(wd+"/../src/")) # <<<<<<<<<<<<<< - * except: - * pass - */ - __pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__sys); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__path); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_GetAttr(__pyx_t_7, __pyx_n_s__insert); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_6); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = __Pyx_GetName(__pyx_m, __pyx_n_s__wd); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_1 = PyNumber_Add(__pyx_t_7, ((PyObject *)__pyx_kp_s_4)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - __Pyx_INCREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_int_0); - __Pyx_GIVEREF(__pyx_int_0); - PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_7), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L2_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - } - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - goto __pyx_L9_try_end; - __pyx_L2_error:; - __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":34 - * wd = os.path.abspath(os.path.dirname(__file__)) - * sys.path.insert(0,(wd+"/../src/")) - * except: # <<<<<<<<<<<<<< - * pass - * sys.setcheckinterval(1000) - */ - /*except:*/ { - PyErr_Restore(0,0,0); - goto __pyx_L3_exception_handled; - } - __pyx_L3_exception_handled:; - __Pyx_XGIVEREF(__pyx_t_2); - __Pyx_XGIVEREF(__pyx_t_3); - __Pyx_XGIVEREF(__pyx_t_4); - __Pyx_ExceptionReset(__pyx_t_2, __pyx_t_3, __pyx_t_4); - __pyx_L9_try_end:; - } - - /* "irpf90.py":36 - * except: - * pass - * sys.setcheckinterval(1000) # <<<<<<<<<<<<<< - * - * def main(): - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__sys); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__setcheckinterval); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_k_tuple_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":38 - * sys.setcheckinterval(1000) - * - * def main(): # <<<<<<<<<<<<<< - * from command_line import command_line - * - */ - __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6irpf90_main, NULL, __pyx_n_s__irpf90); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s__main, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 38; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - - /* "irpf90.py":103 - * profile.run() - * - * if __name__ == '__main__': # <<<<<<<<<<<<<< - * main() - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_8 = __Pyx_PyString_Equals(__pyx_t_1, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (__pyx_t_8) { - - /* "irpf90.py":104 - * - * if __name__ == '__main__': - * main() # <<<<<<<<<<<<<< - */ - __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__main); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(__pyx_t_7); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - goto __pyx_L10; - } - __pyx_L10:; - - /* "irpf90.py":1 - * #!/usr/bin/python # <<<<<<<<<<<<<< - * # IRPF90 is a Fortran90 preprocessor written in Python for programming using - * # the Implicit Reference to Parameters (IRP) method. - */ - __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_GOTREF(((PyObject *)__pyx_t_7)); - if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_7)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} - __Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0; - goto __pyx_L0; - __pyx_L1_error:; - __Pyx_XDECREF(__pyx_t_1); - __Pyx_XDECREF(__pyx_t_5); - __Pyx_XDECREF(__pyx_t_6); - __Pyx_XDECREF(__pyx_t_7); - if (__pyx_m) { - __Pyx_AddTraceback("init irpf90", __pyx_clineno, __pyx_lineno, __pyx_filename); - Py_DECREF(__pyx_m); __pyx_m = 0; - } else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_ImportError, "init irpf90"); - } - __pyx_L0:; - __Pyx_RefNannyFinishContext(); - #if PY_MAJOR_VERSION < 3 - return; - #else - return __pyx_m; - #endif -} - -/* Runtime support code */ - -#if CYTHON_REFNANNY -static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { - PyObject *m = NULL, *p = NULL; - void *r = NULL; - m = PyImport_ImportModule((char *)modname); - if (!m) goto end; - p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); - if (!p) goto end; - r = PyLong_AsVoidPtr(p); -end: - Py_XDECREF(p); - Py_XDECREF(m); - return (__Pyx_RefNannyAPIStruct *)r; -} -#endif /* CYTHON_REFNANNY */ - -static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { - PyObject *result; - result = PyObject_GetAttr(dict, name); - if (!result) { - if (dict != __pyx_b) { - PyErr_Clear(); - result = PyObject_GetAttr(__pyx_b, name); - } - if (!result) { - PyErr_SetObject(PyExc_NameError, name); - } - } - return result; -} - -static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { - PyErr_Format(PyExc_ValueError, - "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", - index, (index == 1) ? "" : "s"); -} - -static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { - PyErr_Format(PyExc_ValueError, - "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); -} - -static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { - if (unlikely(retval)) { - Py_DECREF(retval); - __Pyx_RaiseTooManyValuesError(expected); - return -1; - } else if (PyErr_Occurred()) { - if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { - PyErr_Clear(); - return 0; - } else { - return -1; - } - } - return 0; -} - -#ifdef __FreeBSD__ -#include -#endif - -#if PY_MAJOR_VERSION < 3 -int main(int argc, char** argv) { -#elif defined(WIN32) || defined(MS_WINDOWS) -int wmain(int argc, wchar_t **argv) { -#else -static int __Pyx_main(int argc, wchar_t **argv) { -#endif - /* 754 requires that FP exceptions run in "no stop" mode by default, - * and until C vendors implement C99's ways to control FP exceptions, - * Python requires non-stop mode. Alas, some platforms enable FP - * exceptions by default. Here we disable them. - */ -#ifdef __FreeBSD__ - fp_except_t m; - - m = fpgetmask(); - fpsetmask(m & ~FP_X_OFL); -#endif - if (argc && argv) - Py_SetProgramName(argv[0]); - Py_Initialize(); - if (argc && argv) - PySys_SetArgv(argc, argv); - { /* init module 'irpf90' as '__main__' */ - PyObject* m = NULL; - __pyx_module_is_main_irpf90 = 1; - #if PY_MAJOR_VERSION < 3 - initirpf90(); - #else - m = PyInit_irpf90(); - #endif - if (PyErr_Occurred()) { - PyErr_Print(); /* This exits with the right code if SystemExit. */ - #if PY_MAJOR_VERSION < 3 - if (Py_FlushLine()) PyErr_Clear(); - #endif - return 1; - } - Py_XDECREF(m); - } - Py_Finalize(); - return 0; -} - - -#if PY_MAJOR_VERSION >= 3 && !defined(WIN32) && !defined(MS_WINDOWS) -#include - -static wchar_t* -__Pyx_char2wchar(char* arg) -{ - wchar_t *res; -#ifdef HAVE_BROKEN_MBSTOWCS - /* Some platforms have a broken implementation of - * mbstowcs which does not count the characters that - * would result from conversion. Use an upper bound. - */ - size_t argsize = strlen(arg); -#else - size_t argsize = mbstowcs(NULL, arg, 0); -#endif - size_t count; - unsigned char *in; - wchar_t *out; -#ifdef HAVE_MBRTOWC - mbstate_t mbs; -#endif - if (argsize != (size_t)-1) { - res = (wchar_t *)malloc((argsize+1)*sizeof(wchar_t)); - if (!res) - goto oom; - count = mbstowcs(res, arg, argsize+1); - if (count != (size_t)-1) { - wchar_t *tmp; - /* Only use the result if it contains no - surrogate characters. */ - for (tmp = res; *tmp != 0 && - (*tmp < 0xd800 || *tmp > 0xdfff); tmp++) - ; - if (*tmp == 0) - return res; - } - free(res); - } - /* Conversion failed. Fall back to escaping with surrogateescape. */ -#ifdef HAVE_MBRTOWC - /* Try conversion with mbrtwoc (C99), and escape non-decodable bytes. */ - - /* Overallocate; as multi-byte characters are in the argument, the - actual output could use less memory. */ - argsize = strlen(arg) + 1; - res = malloc(argsize*sizeof(wchar_t)); - if (!res) goto oom; - in = (unsigned char*)arg; - out = res; - memset(&mbs, 0, sizeof mbs); - while (argsize) { - size_t converted = mbrtowc(out, (char*)in, argsize, &mbs); - if (converted == 0) - /* Reached end of string; null char stored. */ - break; - if (converted == (size_t)-2) { - /* Incomplete character. This should never happen, - since we provide everything that we have - - unless there is a bug in the C library, or I - misunderstood how mbrtowc works. */ - fprintf(stderr, "unexpected mbrtowc result -2\n"); - return NULL; - } - if (converted == (size_t)-1) { - /* Conversion error. Escape as UTF-8b, and start over - in the initial shift state. */ - *out++ = 0xdc00 + *in++; - argsize--; - memset(&mbs, 0, sizeof mbs); - continue; - } - if (*out >= 0xd800 && *out <= 0xdfff) { - /* Surrogate character. Escape the original - byte sequence with surrogateescape. */ - argsize -= converted; - while (converted--) - *out++ = 0xdc00 + *in++; - continue; - } - /* successfully converted some bytes */ - in += converted; - argsize -= converted; - out++; - } -#else - /* Cannot use C locale for escaping; manually escape as if charset - is ASCII (i.e. escape all bytes > 128. This will still roundtrip - correctly in the locale's charset, which must be an ASCII superset. */ - res = malloc((strlen(arg)+1)*sizeof(wchar_t)); - if (!res) goto oom; - in = (unsigned char*)arg; - out = res; - while(*in) - if(*in < 128) - *out++ = *in++; - else - *out++ = 0xdc00 + *in++; - *out = 0; -#endif - return res; -oom: - fprintf(stderr, "out of memory\n"); - return NULL; -} - -int -main(int argc, char **argv) -{ - if (!argc) { - return __Pyx_main(0, NULL); - } - else { - wchar_t **argv_copy = (wchar_t **)malloc(sizeof(wchar_t*)*argc); - /* We need a second copies, as Python might modify the first one. */ - wchar_t **argv_copy2 = (wchar_t **)malloc(sizeof(wchar_t*)*argc); - int i, res; - char *oldloc; - if (!argv_copy || !argv_copy2) { - fprintf(stderr, "out of memory\n"); - return 1; - } - oldloc = strdup(setlocale(LC_ALL, NULL)); - setlocale(LC_ALL, ""); - for (i = 0; i < argc; i++) { - argv_copy2[i] = argv_copy[i] = __Pyx_char2wchar(argv[i]); - if (!argv_copy[i]) - return 1; - } - setlocale(LC_ALL, oldloc); - free(oldloc); - res = __Pyx_main(argc, argv_copy); - for (i = 0; i < argc; i++) { - free(argv_copy2[i]); - } - free(argv_copy); - free(argv_copy2); - return res; - } -} -#endif - -static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { - PyThreadState *tstate = PyThreadState_GET(); - *type = tstate->exc_type; - *value = tstate->exc_value; - *tb = tstate->exc_traceback; - Py_XINCREF(*type); - Py_XINCREF(*value); - Py_XINCREF(*tb); -} - -static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) { - PyObject *tmp_type, *tmp_value, *tmp_tb; - PyThreadState *tstate = PyThreadState_GET(); - tmp_type = tstate->exc_type; - tmp_value = tstate->exc_value; - tmp_tb = tstate->exc_traceback; - tstate->exc_type = type; - tstate->exc_value = value; - tstate->exc_traceback = tb; - Py_XDECREF(tmp_type); - Py_XDECREF(tmp_value); - Py_XDECREF(tmp_tb); -} - -static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { - PyObject *py_import = 0; - PyObject *empty_list = 0; - PyObject *module = 0; - PyObject *global_dict = 0; - PyObject *empty_dict = 0; - PyObject *list; - py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); - if (!py_import) - goto bad; - if (from_list) - list = from_list; - else { - empty_list = PyList_New(0); - if (!empty_list) - goto bad; - list = empty_list; - } - global_dict = PyModule_GetDict(__pyx_m); - if (!global_dict) - goto bad; - empty_dict = PyDict_New(); - if (!empty_dict) - goto bad; - #if PY_VERSION_HEX >= 0x02050000 - { - PyObject *py_level = PyInt_FromLong(level); - if (!py_level) - goto bad; - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, py_level, NULL); - Py_DECREF(py_level); - } - #else - if (level>0) { - PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); - goto bad; - } - module = PyObject_CallFunctionObjArgs(py_import, - name, global_dict, empty_dict, list, NULL); - #endif -bad: - Py_XDECREF(empty_list); - Py_XDECREF(py_import); - Py_XDECREF(empty_dict); - return module; -} - -static CYTHON_INLINE int __Pyx_PyBytes_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyBytes_CheckExact(s1) & PyBytes_CheckExact(s2)) { - if (PyBytes_GET_SIZE(s1) != PyBytes_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyBytes_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyBytes_AS_STRING(s1)[0] == PyBytes_AS_STRING(s2)[0]); - else - return (PyBytes_AS_STRING(s1)[0] != PyBytes_AS_STRING(s2)[0]); - } else { - int result = memcmp(PyBytes_AS_STRING(s1), PyBytes_AS_STRING(s2), (size_t)PyBytes_GET_SIZE(s1)); - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyBytes_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyBytes_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -static CYTHON_INLINE int __Pyx_PyUnicode_Equals(PyObject* s1, PyObject* s2, int equals) { - if (s1 == s2) { /* as done by PyObject_RichCompareBool(); also catches the (interned) empty string */ - return (equals == Py_EQ); - } else if (PyUnicode_CheckExact(s1) & PyUnicode_CheckExact(s2)) { - if (PyUnicode_GET_SIZE(s1) != PyUnicode_GET_SIZE(s2)) { - return (equals == Py_NE); - } else if (PyUnicode_GET_SIZE(s1) == 1) { - if (equals == Py_EQ) - return (PyUnicode_AS_UNICODE(s1)[0] == PyUnicode_AS_UNICODE(s2)[0]); - else - return (PyUnicode_AS_UNICODE(s1)[0] != PyUnicode_AS_UNICODE(s2)[0]); - } else { - int result = PyUnicode_Compare(s1, s2); - if ((result == -1) && unlikely(PyErr_Occurred())) - return -1; - return (equals == Py_EQ) ? (result == 0) : (result != 0); - } - } else if ((s1 == Py_None) & PyUnicode_CheckExact(s2)) { - return (equals == Py_NE); - } else if ((s2 == Py_None) & PyUnicode_CheckExact(s1)) { - return (equals == Py_NE); - } else { - int result; - PyObject* py_result = PyObject_RichCompare(s1, s2, equals); - if (!py_result) - return -1; - result = __Pyx_PyObject_IsTrue(py_result); - Py_DECREF(py_result); - return result; - } -} - -#if PY_MAJOR_VERSION < 3 -static PyObject *__Pyx_GetStdout(void) { - PyObject *f = PySys_GetObject((char *)"stdout"); - if (!f) { - PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout"); - } - return f; -} - -static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) { - PyObject* v; - int i; - - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) { - if (PyFile_SoftSpace(f, 1)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - v = PyTuple_GET_ITEM(arg_tuple, i); - if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0) - return -1; - if (PyString_Check(v)) { - char *s = PyString_AsString(v); - Py_ssize_t len = PyString_Size(v); - if (len > 0 && - isspace(Py_CHARMASK(s[len-1])) && - s[len-1] != ' ') - PyFile_SoftSpace(f, 0); - } - } - if (newline) { - if (PyFile_WriteString("\n", f) < 0) - return -1; - PyFile_SoftSpace(f, 0); - } - return 0; -} - -#else /* Python 3 has a print function */ - -static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) { - PyObject* kwargs = 0; - PyObject* result = 0; - PyObject* end_string; - if (unlikely(!__pyx_print)) { - __pyx_print = __Pyx_GetAttrString(__pyx_b, "print"); - if (!__pyx_print) - return -1; - } - if (stream) { - kwargs = PyDict_New(); - if (unlikely(!kwargs)) - return -1; - if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0)) - goto bad; - if (!newline) { - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - goto bad; - if (PyDict_SetItemString(kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - goto bad; - } - Py_DECREF(end_string); - } - } else if (!newline) { - if (unlikely(!__pyx_print_kwargs)) { - __pyx_print_kwargs = PyDict_New(); - if (unlikely(!__pyx_print_kwargs)) - return -1; - end_string = PyUnicode_FromStringAndSize(" ", 1); - if (unlikely(!end_string)) - return -1; - if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) { - Py_DECREF(end_string); - return -1; - } - Py_DECREF(end_string); - } - kwargs = __pyx_print_kwargs; - } - result = PyObject_Call(__pyx_print, arg_tuple, kwargs); - if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs)) - Py_DECREF(kwargs); - if (!result) - return -1; - Py_DECREF(result); - return 0; -bad: - if (kwargs != __pyx_print_kwargs) - Py_XDECREF(kwargs); - return -1; -} - -#endif - -#if PY_MAJOR_VERSION < 3 - -static int __Pyx_PrintOne(PyObject* f, PyObject *o) { - if (!f) { - if (!(f = __Pyx_GetStdout())) - return -1; - } - if (PyFile_SoftSpace(f, 0)) { - if (PyFile_WriteString(" ", f) < 0) - return -1; - } - if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0) - return -1; - if (PyFile_WriteString("\n", f) < 0) - return -1; - return 0; - /* the line below is just to avoid compiler - * compiler warnings about unused functions */ - return __Pyx_Print(f, NULL, 0); -} - -#else /* Python 3 has a print function */ - -static int __Pyx_PrintOne(PyObject* stream, PyObject *o) { - int res; - PyObject* arg_tuple = PyTuple_New(1); - if (unlikely(!arg_tuple)) - return -1; - Py_INCREF(o); - PyTuple_SET_ITEM(arg_tuple, 0, o); - res = __Pyx_Print(stream, arg_tuple, 1); - Py_DECREF(arg_tuple); - return res; -} - -#endif - -static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { - const unsigned char neg_one = (unsigned char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned char" : - "value too large to convert to unsigned char"); - } - return (unsigned char)-1; - } - return (unsigned char)val; - } - return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { - const unsigned short neg_one = (unsigned short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned short" : - "value too large to convert to unsigned short"); - } - return (unsigned short)-1; - } - return (unsigned short)val; - } - return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { - const unsigned int neg_one = (unsigned int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(unsigned int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(unsigned int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to unsigned int" : - "value too large to convert to unsigned int"); - } - return (unsigned int)-1; - } - return (unsigned int)val; - } - return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); -} - -static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { - const char neg_one = (char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to char" : - "value too large to convert to char"); - } - return (char)-1; - } - return (char)val; - } - return (char)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { - const short neg_one = (short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to short" : - "value too large to convert to short"); - } - return (short)-1; - } - return (short)val; - } - return (short)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { - const signed char neg_one = (signed char)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed char) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed char)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed char" : - "value too large to convert to signed char"); - } - return (signed char)-1; - } - return (signed char)val; - } - return (signed char)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { - const signed short neg_one = (signed short)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed short) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed short)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed short" : - "value too large to convert to signed short"); - } - return (signed short)-1; - } - return (signed short)val; - } - return (signed short)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { - const signed int neg_one = (signed int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(signed int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(signed int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to signed int" : - "value too large to convert to signed int"); - } - return (signed int)-1; - } - return (signed int)val; - } - return (signed int)__Pyx_PyInt_AsSignedLong(x); -} - -static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { - const int neg_one = (int)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; - if (sizeof(int) < sizeof(long)) { - long val = __Pyx_PyInt_AsLong(x); - if (unlikely(val != (long)(int)val)) { - if (!unlikely(val == -1 && PyErr_Occurred())) { - PyErr_SetString(PyExc_OverflowError, - (is_unsigned && unlikely(val < 0)) ? - "can't convert negative value to int" : - "value too large to convert to int"); - } - return (int)-1; - } - return (int)val; - } - return (int)__Pyx_PyInt_AsLong(x); -} - -static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { - const unsigned long neg_one = (unsigned long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned long"); - return (unsigned long)-1; - } - return (unsigned long)PyLong_AsUnsignedLong(x); - } else { - return (unsigned long)PyLong_AsLong(x); - } - } else { - unsigned long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned long)-1; - val = __Pyx_PyInt_AsUnsignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { - const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to unsigned PY_LONG_LONG"); - return (unsigned PY_LONG_LONG)-1; - } - return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - unsigned PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (unsigned PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsUnsignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { - const long neg_one = (long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to long"); - return (long)-1; - } - return (long)PyLong_AsUnsignedLong(x); - } else { - return (long)PyLong_AsLong(x); - } - } else { - long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (long)-1; - val = __Pyx_PyInt_AsLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { - const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to PY_LONG_LONG"); - return (PY_LONG_LONG)-1; - } - return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { - const signed long neg_one = (signed long)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed long"); - return (signed long)-1; - } - return (signed long)PyLong_AsUnsignedLong(x); - } else { - return (signed long)PyLong_AsLong(x); - } - } else { - signed long val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed long)-1; - val = __Pyx_PyInt_AsSignedLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { - const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; - const int is_unsigned = neg_one > const_zero; -#if PY_VERSION_HEX < 0x03000000 - if (likely(PyInt_Check(x))) { - long val = PyInt_AS_LONG(x); - if (is_unsigned && unlikely(val < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)val; - } else -#endif - if (likely(PyLong_Check(x))) { - if (is_unsigned) { - if (unlikely(Py_SIZE(x) < 0)) { - PyErr_SetString(PyExc_OverflowError, - "can't convert negative value to signed PY_LONG_LONG"); - return (signed PY_LONG_LONG)-1; - } - return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); - } else { - return (signed PY_LONG_LONG)PyLong_AsLongLong(x); - } - } else { - signed PY_LONG_LONG val; - PyObject *tmp = __Pyx_PyNumber_Int(x); - if (!tmp) return (signed PY_LONG_LONG)-1; - val = __Pyx_PyInt_AsSignedLongLong(tmp); - Py_DECREF(tmp); - return val; - } -} - -static int __Pyx_check_binary_version(void) { - char ctversion[4], rtversion[4]; - PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); - PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); - if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { - char message[200]; - PyOS_snprintf(message, sizeof(message), - "compiletime version %s of module '%.100s' " - "does not match runtime version %s", - ctversion, __Pyx_MODULE_NAME, rtversion); - #if PY_VERSION_HEX < 0x02050000 - return PyErr_Warn(NULL, message); - #else - return PyErr_WarnEx(NULL, message, 1); - #endif - } - return 0; -} - -#include "compile.h" -#include "frameobject.h" -#include "traceback.h" - -static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, - int __pyx_lineno, const char *__pyx_filename) { - PyObject *py_srcfile = 0; - PyObject *py_funcname = 0; - PyObject *py_globals = 0; - PyCodeObject *py_code = 0; - PyFrameObject *py_frame = 0; - - #if PY_MAJOR_VERSION < 3 - py_srcfile = PyString_FromString(__pyx_filename); - #else - py_srcfile = PyUnicode_FromString(__pyx_filename); - #endif - if (!py_srcfile) goto bad; - if (__pyx_clineno) { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #else - py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); - #endif - } - else { - #if PY_MAJOR_VERSION < 3 - py_funcname = PyString_FromString(funcname); - #else - py_funcname = PyUnicode_FromString(funcname); - #endif - } - if (!py_funcname) goto bad; - py_globals = PyModule_GetDict(__pyx_m); - if (!py_globals) goto bad; - py_code = PyCode_New( - 0, /*int argcount,*/ - #if PY_MAJOR_VERSION >= 3 - 0, /*int kwonlyargcount,*/ - #endif - 0, /*int nlocals,*/ - 0, /*int stacksize,*/ - 0, /*int flags,*/ - __pyx_empty_bytes, /*PyObject *code,*/ - __pyx_empty_tuple, /*PyObject *consts,*/ - __pyx_empty_tuple, /*PyObject *names,*/ - __pyx_empty_tuple, /*PyObject *varnames,*/ - __pyx_empty_tuple, /*PyObject *freevars,*/ - __pyx_empty_tuple, /*PyObject *cellvars,*/ - py_srcfile, /*PyObject *filename,*/ - py_funcname, /*PyObject *name,*/ - __pyx_lineno, /*int firstlineno,*/ - __pyx_empty_bytes /*PyObject *lnotab*/ - ); - if (!py_code) goto bad; - py_frame = PyFrame_New( - PyThreadState_GET(), /*PyThreadState *tstate,*/ - py_code, /*PyCodeObject *code,*/ - py_globals, /*PyObject *globals,*/ - 0 /*PyObject *locals*/ - ); - if (!py_frame) goto bad; - py_frame->f_lineno = __pyx_lineno; - PyTraceBack_Here(py_frame); -bad: - Py_XDECREF(py_srcfile); - Py_XDECREF(py_funcname); - Py_XDECREF(py_code); - Py_XDECREF(py_frame); -} - -static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { - while (t->p) { - #if PY_MAJOR_VERSION < 3 - if (t->is_unicode) { - *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); - } else if (t->intern) { - *t->p = PyString_InternFromString(t->s); - } else { - *t->p = PyString_FromStringAndSize(t->s, t->n - 1); - } - #else /* Python 3+ has unicode identifiers */ - if (t->is_unicode | t->is_str) { - if (t->intern) { - *t->p = PyUnicode_InternFromString(t->s); - } else if (t->encoding) { - *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); - } else { - *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); - } - } else { - *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); - } - #endif - if (!*t->p) - return -1; - ++t; - } - return 0; -} - -/* Type Conversion Functions */ - -static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { - int is_true = x == Py_True; - if (is_true | (x == Py_False) | (x == Py_None)) return is_true; - else return PyObject_IsTrue(x); -} - -static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { - PyNumberMethods *m; - const char *name = NULL; - PyObject *res = NULL; -#if PY_VERSION_HEX < 0x03000000 - if (PyInt_Check(x) || PyLong_Check(x)) -#else - if (PyLong_Check(x)) -#endif - return Py_INCREF(x), x; - m = Py_TYPE(x)->tp_as_number; -#if PY_VERSION_HEX < 0x03000000 - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Int(x); - } - else if (m && m->nb_long) { - name = "long"; - res = PyNumber_Long(x); - } -#else - if (m && m->nb_int) { - name = "int"; - res = PyNumber_Long(x); - } -#endif - if (res) { -#if PY_VERSION_HEX < 0x03000000 - if (!PyInt_Check(res) && !PyLong_Check(res)) { -#else - if (!PyLong_Check(res)) { -#endif - PyErr_Format(PyExc_TypeError, - "__%s__ returned non-%s (type %.200s)", - name, name, Py_TYPE(res)->tp_name); - Py_DECREF(res); - return NULL; - } - } - else if (!PyErr_Occurred()) { - PyErr_SetString(PyExc_TypeError, - "an integer is required"); - } - return res; -} - -static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { - Py_ssize_t ival; - PyObject* x = PyNumber_Index(b); - if (!x) return -1; - ival = PyInt_AsSsize_t(x); - Py_DECREF(x); - return ival; -} - -static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { -#if PY_VERSION_HEX < 0x02050000 - if (ival <= LONG_MAX) - return PyInt_FromLong((long)ival); - else { - unsigned char *bytes = (unsigned char *) &ival; - int one = 1; int little = (int)*(unsigned char*)&one; - return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); - } -#else - return PyInt_FromSize_t(ival); -#endif -} - -static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { - unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); - if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { - return (size_t)-1; - } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { - PyErr_SetString(PyExc_OverflowError, - "value too large to convert to size_t"); - return (size_t)-1; - } - return (size_t)val; -} - - -#endif /* Py_PYTHON_H */ diff --git a/src/irpf90.so b/src/irpf90.so deleted file mode 100755 index 2d9156ab9f490192b829aec3295ea1610e064149..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 136512 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�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