LuaQ=(luac) $@$@@$@$@l@C:/Users/drahosp/Desktop/Work/Repository/_install/bin/_batteries/tmp/metalua-0.5/src/compiler/lopcodes.lua*+A@@@$JGEA@IEI„EI…E@BIEIÆEIćECIE@D@IE@DIEDIEBEIE@IE@EEIEIE@GCEIEGIE@GACEIE@GBEIE@GABEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIEIBZ@E@ \ZE@IJA A ABACb@$EAIcEIEHIEIEIEIA@QAAAƁAɁL@@ť@S@MԧĨEժ AAABCAAAAFGAGHAHH AIIJA@fmodule bytecodepackageseeallluaPOpModeiABCiABxiAsBxSIZE_C"@SIZE_BSIZE_BxSIZE_A @SIZE_OP@POS_CPOS_BPOS_BxPOS_ABITRK?@ISK MAXINDEXRKRKASK MAXARG_Bxmathldexp MAXARG_sBxfloor MAXARG_A MAXARG_B MAXARG_C GET_OPCODE SET_OPCODE GETARG_A SETARG_A GETARG_B SETARG_B GETARG_C SETARG_C GETARG_Bx SETARG_Bx GETARG_sBx SETARG_sBx CREATE_ABC CREATE_ABxpcallrequirebit Instruction@0@@@P@`@p@@@@@ DecodeInstNO_REGopnamesOpCodeROpCodestringgfind!MOVE -- 0 LOADK LOADBOOL LOADNIL GETUPVAL GETGLOBAL -- 5 GETTABLE SETGLOBAL SETUPVAL SETTABLE NEWTABLE -- 10 SELF ADD SUB MUL DIV -- 15 MOD POW UNM NOT LEN -- 20 CONCAT JMP EQ LT LE -- 25 TEST TESTSET CALL TAILCALL RETURN -- 30 FORLOOP FORPREP TFORLOOP SETLIST CLOSE -- 35 CLOSURE VARARG [%a]+OP_ NUM_OPCODES OpModeBreg OpModeBrk@ OpModeCrk OpModesetA@OpModeKOpModeT getOpMode testOpModeLFIELDS_PER_FLUSHI@opmodes01001010000112000010101011010000012000000100110010011101000000310110011000101110010100001030000102444__@Y@@BITRK_______selfxac @@^BITRK bbbbbbbbcselfx@@ROpCodeOPselfi@@ƀIOPOpCodeselfioAselfiIAselfiuBselfiIBselfibCselfiICselfibBxselfiIBxselfib@@Bx MAXARG_sBxselfi@@IBx MAXARG_sBxselfib JA@AIIII^OPOpCodeABC selfoabc FA@FA A OPOpCodeABxselfoabcselfi?xnp2 @@ mathfloor? xnp2?xnp2 <@IIFBA܁AFBA܁AFAB܁ @B@ BxC"@BOPA@@?@stringchar<self;i;c0;c1;c2;c3;keepsrbslb@@errorNot implementedselfxlq@@@FAAAAAF܀OpMode tonumberstringsubopmodesOpCode?@pppppppppppppppqselfmwy@@F@FALAF܀W@@stringsubopmodesOpCode?1xxxxxxxxxxxxxxxyselfmb+22222466KKKKKKKQQRRSSSSSSSTTVVXXXXYYYYYYYZZZZ[[[[[[[^^^^^^___`````acaooooooooopppppppprrrrrrrrrssssssssstttttttttCCCDDDEEEFFFGGGHHJJbbccddeeffgglqlwyw~~ debugf*p2keepsrbslbi*(for generator) (for state)(for control)vni@C:/Users/drahosp/Desktop/Work/Repository/_install/bin/_batteries/tmp/metalua-0.5/src/compiler/lcode.luaA@@@$JGEIEIƒEI„E@IEIEIEIE@IECIECIEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIEIE@IEIEIE IE@ IE IE IE IE@ IE IE IE IE@ IE IE IE IE@ IE IE IE IE@ IE IE IEIE@IEIEIE@RR@SS@TT@UUIEʀV@WʀW@Wʀ@X@WʀVXʀWXʀ@XXIEIE@IEIEIEIE@Ilmodule bytecodepackageseeallluaK MAXSTACK@o@ LUA_MULTRETNO_JUMP isnumeral ttisnumbernvalue setnilvalue setsvalue setnvalue sethvaluegetcode codeAsBx hasjumps_niljumpret condjumpfixjump getlabelgetjumpgetjumpcontrol need_value patchtestreg removevalues patchlistaux dischargejpc patchlist patchtohereconcat checkstack reserveregsfreeregfreeexpaddkstringKnumberKboolKnilK setreturns setmultret setoneretsetcallreturnsdischargevars code_labeldischarge2regdischarge2anyregexp2reg exp2nextreg exp2anyregexp2valexp2RK storevar_self invertjump jumponcond goiftrue goiffalsecodenotindexed constfolding codearith codecompprefixinfix arith_opcaddOP_ADDsubOP_SUBmulOP_MULmodOP_MODdivOP_DIVpowOP_POWlenOP_LENnotOP_NOT test_opceqopcOP_EQcondltOP_LTleOP_LEnegtgeposfixfixlinecodecodeABCcodeABxsetlistB999GI@@@@W@kVKNUMtNO_JUMPHHHHHHHHHHHHHHIselfePRZ@W@@@typevaluenumberQQQQQQQQQQQQQRself o SSvalueSSSselfoTTI@@valueTTselfoUUIvalueUUselfos\^@@fcodeinfo]]]]]^selffsece K@@B@]^codeABxluaP MAXARG_sBx dddddddddeself fs o A sBx jl@@tfkkkkkkklselfeq 4FA @AFMAAEK\EKA\B@AAA@Ł@BAA CLMBA pc lasttargetfcode?luaP GET_OPCODE OP_LOADNIL GETARG_A GETARG_B SETARG_BcodeABC4rrrrsssstttttuuuuuuvvvvwwwwxxxxxyyyyzzzzzz|self3fs3from3n3 previous +pfrom+pto+ @@Iˀ@@B@܀ AAjpcNO_JUMP codeAsBxOP_JMPconcatselffsjpcj   A@LAluaKcodeABC OP_RETURN? selffsfirstnret @@AA@codeABCjump self fs op A B C  A@L@MAAAAAAABAAAC@Afcode?assertNO_JUMPmathabsluaP MAXARG_sBxluaX syntaxerrorlscontrol structure too long SETARG_sBxselffspcdestjmpoffset@I@ lasttargetpcselffs@FFF܀AA AA luaP GETARG_sBxfcodeNO_JUMP?selffspcoffset @ƀA@M@AEKA@܁\Z@fcode?luaP testOpMode GET_OPCODEOpModeTselffspcpippi &@W A@EK\@EKA\A@EK\W@B^KB\ NO_JUMPgetjumpcontrolluaP GET_OPCODE OP_TESTSET GETARG_ANO_REG GETARG_Cgetjump&self%fs%list%cond%i" <@A A@EK\W@B^EFAW@EK\W@@EK\A@EKB\AEK A\AEK\AEK BC\AB^assertgetjumpcontrolluaP GET_OPCODE OP_TESTSETNO_REG GETARG_B SETARG_A SET_OPCODEOP_TEST SETARG_B SETARG_C GETARG_C<self;fs;node;reg;i;@W@@@Ł@A@܀NO_JUMP patchtestregluaPNO_REGgetjumpselffslist @WA@@ˁ@@܁@@@A@@ANO_JUMPgetjump patchtestregfixjumpselffslistvtargetregdtarget_next  @FA@@AI patchlistauxjpcpcluaPNO_REGNO_JUMP          self fs   A@AFX@BABA @EFBApc patchtohereassert patchlistauxluaPNO_REGselffslisttarget" @@@ˀ@@A܀I getlabeljpcconcat   !!!!!!"self fs list '5 @@@@KA@\@WA@@@@@@ANO_JUMPgetjumpfixjump ((((()))**,----.../0000002222245selffsl1l2list _next:B̀A@AA AAA  freeregf maxstacksizeluaK MAXSTACKluaX syntaxerrorls#function or expression too complex;;<<<<====>>>>>@@Bselffsn newstackGJ@@@@̀I checkstackfreeregHHHHIIIJselffsnOU @@܀@ƀI@WAEF\@ luaPISKnactvarfreereg?assertstringformatreg=%i, fs.freereg=%iPPPPPPPPPQQQRRRRRRSSSSSSRUselffsregZ^@@ˀ@@@@k VNONRELOCfreereginfo[[[\\\\^selffsei~ 1FA@AF@A@AAŁWAWBW@BWBBABA@ ACFB@BFÁIhvaluef ttisnumbernvaluetypeassertnilstringnumberbooleanknk setnvalue?1jjjkmmmmmpppppsssttttttttttttwwwwxxxxyyyyyyz{{{|~self0fs0k0v0idx0f0tnk,0 A@W@A@ @A Aasserttypestring setsvalueaddkselffsso  A@W@A@ @A Aasserttypenumber setnvalueaddkselffsro  A@W@A@ @A Aasserttypeboolean setnvalueaddkselffsro   @A A@ƁA @ setnilvalue sethvaluehaddkselffskv $@@@ @A@AA@A AA@AA BA@AA BAA kVCALLluaP SETARG_Cgetcode?VVARARG SETARG_B SETARG_Afreereg reserveregs$self#fs#e# nresults#@@A@@ setreturns LUA_MULTRETselffse @@@@@KA\܀@KA\A@B kVCALL VNONRELOCinfoluaP GETARG_AgetcodeVVARARG SETARG_B@ VRELOCABLEselffse ?BAA@@ AAA@A B BA@@B@ CA@AAC CA@A CA@A ADAassertsetcallreturns deprecatedkVCALLluaP SETARG_Cgetcode? VNONRELOCinfo GETARG_AVVARARG SETARG_B@ VRELOCABLE SETARG_Afreereg reserveregs?self>fs>e> nresults> :@@@@ @ AAFAB @ BFAB@ ACƁCA ACAA AAFACBW@@ DAkVLOCAL VNONRELOCVUPVALinfocodeABC OP_GETUPVAL VRELOCABLEVGLOBALcodeABx OP_GETGLOBAL VINDEXEDfreeregaux OP_GETTABLEVCALLVVARARG setoneret:self9fs9e9k9 K@\AKA@@]^ getlabelcodeABC OP_LOADBOOL self fs A b jump "[ @AA@@@K@A\AW@A@A@KA@B@ABBB\AB@KB@BCFC\A CKB@D\A@D@KD\E@A@EFDW@KA@DB\AEA@WFA@W@FA\A@ŀdischargevarskVNIL_nil?VFALSEVTRUEcodeABC OP_LOADBOOLVKNUMcodeABx OP_LOADKnumberKnvalVKinfo VRELOCABLEgetcodeluaP SETARG_A VNONRELOCOP_MOVEassertVVOIDVJMP[        !"selfZfsZeZregZkZpc:?',@W@@ˀ@@@A@A@k VNONRELOC reserveregs?discharge2regfreereg((())))******,self fs e 1HW @AA@@@ A@BA AFAAB@@B܁AB@B܁@AB@W@ C BCAC@ BCCA CBC@܁D@B@AD@@@AAFA@@Ādischarge2regkVJMPtconcatinfo hasjumpsNO_JUMP need_value?fjump code_label patchtohere getlabel patchlistaux VNONRELOCW2222233344444466666789::::::::::::::;<<<<<<<=======>>>>>>>????AAAABBBBBBBCCCCCCCEEEEFGHselfVfsVeVregVfinalPp_fPp_tPfj%>MV@@@@@@@A@@ˀA@@B@@ dischargevarsk VNONRELOCinfofreeregfreeexp reserveregs?exp2regNNNNPPPPPPPRSSSSTTTTUUUUUUVselffse[i @@@@@@@@܀@@AAAˀA@A@AA@@Adischargevarsk VNONRELOC hasjumpsinfonactvarexp2reg exp2nextreg ]]]]^^^_____``bbbbcccccddgggghhiselffsent@@܀@@@@ˀ@@@ hasjumps exp2anyregdischargevarsoooooppppprrrrtselffseyC@@@@@W@WW@@EF@  B@@ BC ACA@WAÀ CAB@ABEF@ CAB Dexp2valkVNILVTRUEVFALSEVKNUMnkluaP MAXINDEXRKinfonilKnumberKnvalboolKVKRKASK exp2anyregCzzzz{||||||||}}}}}~~~~~~~selfBfsBeBkB ?@@@K@\AK@FA\A @AKA\AAACA@BKA\BAAA@CKC\AAADAEAA\AK@\AkVLOCALfreeexpexp2reginfoVUPVAL exp2anyregcodeABC OP_SETUPVALVGLOBALcodeABx OP_SETGLOBAL VINDEXEDexp2RK OP_SETTABLEauxassert?self>fs>var>exp>k>ee"(e/6 @A A@AK@\AKAA@AB@\AKA@\A„  exp2anyregfreeexpfreereg reserveregs@codeABCOP_SELFinfoexp2RKk VNONRELOCselffsekeyfunc  -@@A@܀EKA@܁\Z@EKA\W@EKA\BABA ABˁ@܁AA getjumpcontrolinfoassertluaP testOpMode GET_OPCODEOpModeT OP_TESTSETOP_TEST SETARG_A GETARG_A?-self,fs,e,pc, 7@@@ @EK\@FMI@KBBEK\B]^ CA ACA BCFDBk VRELOCABLEgetcodeluaP GET_OPCODEOP_NOTpc? condjumpOP_TEST GETARG_Bdischarge2anyregfreeexp OP_TESTSETNO_REGinfo7self6fs6e6cond6ie  / @AA@W@W@@A@@AAKA\@B@KAB\AƀB@KBB\KACC@\@KCC\AFAA@dischargevarskVKVTRUEVKNUMNO_JUMPVFALSEjumpVJMP invertjumpinfo jumponcondfconcat patchtoheret/self.fs.e.pc.k. ) @AA@W@@@@A@AKA\@A@B@KABB\KBB@\@KCBC\AFA@dischargevarskVNILVFALSENO_JUMPVTRUEjumpVJMPinfo jumponcondtconcat patchtoheref)self(fs(e(pc(k(  @@@@@@W@@ W@W@@ BAW@@@ BA CA CFBC@€AAADFD@ EƁDA EDAdischargevarskVNILVFALSEVTRUEVKVKNUMVJMP invertjump VRELOCABLE VNONRELOCdischarge2anyregfreeexpinfocodeABCOP_NOTassertft removevalues@         self?fs?e?k?$' A@@auxexp2RKk VINDEXED%%%%%&'selffstk*8 B @ @A@A@[FA@A @A @A@@@A@@A@A@@BB  isnumeralnvalOP_ADDOP_SUBOP_MULOP_DIVOP_MODOP_POWOP_UNMOP_LENassertUnknown numeric valueB++++++++++++,,,,,----....////0000000011111111222233334444455556778selfAopAe1Ae2Av1Av2AeArA;F)K@@\Z@KA@\W@WAA@@܁AA@AAA@AA@@܁@B  constfoldingexp2RKOP_UNMOP_LENfreeexpinfocodeABCk VRELOCABLE)<<<<<<<<<====>????@@@@@AAAABBBBCCCCCCCCDFself(fs(op(e1(e2(o1 (o2(IS0A܁WAA@@@@܁ AB AB@@W@A ACC@  B asserttypebooleanexp2RKfreeexpOP_EQinfo condjump?kVJMP0JJJJJJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQQQQQQQQQQRS self/fs/op/cond/e1/e2/o1 /o2/temp!Xg 0 FA@ AFA@ A  A@FKAB\AKB@\ACKAC\ACKAB\AKB@\AEA\AtNO_JUMPfkVKNUMnvalunmVK exp2anyreg codearithOP_UNMnotcodenotlenOP_LENassertUnknown unary operator0YYYYYZZ[[\\\]]]]^^^^^^^__`````aabbbbccccccceeeegself/fs/op/e/e2/lv@ A@A@ @AA AAA AA AAand goiftrueor goiffalseconcat exp2nextreg isnumeralexp2RKmmnnnnnoopppppqqrrrrrtttttttttvselffsopv @@EA@WA\AKA\AKABAFB\ AE\@aB@EAA@WA\AKA\AKA@F\ AE\@aA@KAB\AFB EKAˁC@\EAAKC\܁́WA\AKD\AEKˁC@܁\ABFD@ KAE\AKE@\AFEFZE@AF[A@A@FFBAandasserttNO_JUMPdischargevarsfconcatpairsorexp2valk VRELOCABLEluaP GET_OPCODEgetcode OP_CONCATinfo GETARG_B?freeexp SETARG_B exp2nextreg codearith arith_opc test_opcerrorUnknown operator  codecompopccondselffsope1e2(for generator) (for state)(for control)kv(for generator)37 (for state)37(for control)37k45v45opcv @@ @[AA@f lineinfopc? self fs line J@AJABAƂ@BEF\BACFDBEFB\AKD\AFEAIFEAIFEAIFFEAFFEAIFFAAAFI^fipairsABBxsBxCtableinsertstringformat%s=%i[code: %s %s]luaPopnamesOPconcat,  dischargejpccodepc lineinfo lastlineE@?J selfIfsIiIlineIfIparams*(for generator) (for state)(for control)_xpcEIdebugfAˁ@܁WAABAAAEBK@\assertluaP getOpModeiABC is not an ABC operationcode CREATE_ABC lastlineselffsoabc EA@W@A@WAA\AKAAB AF]^assertluaP getOpModeiABxiAsBxcode CREATE_ABx lastlineselffsoabc 0EFA@\AAAABAAB@@AAB@AAB@Á@Imathfloor?luaPLFIELDS_PER_FLUSH LUA_MULTRETassert MAXARG_CcodeABC OP_SETLISTcode lastlinefreereg0   self/fs/base/nelems/tostore/c/b/777779;;==>>DDGIGPRPSSSTTTUUUVVVVWWWW\^\cecjljqq  "'5':B:GJGOUOZ^Zi~i " ','1H1MVM[i[ntnyy  $'$*8*;F;ISIXgXlvl||}~  debugfi@C:/Users/drahosp/Desktop/Work/Repository/_install/bin/_batteries/tmp/metalua-0.5/src/compiler/ldump.lua A@@@ EF\K@\ @EEAAADAI @I EFB@B @EFB@B @EFZ@@EFW@B@B@EF@  Č @B Ǎ ǎ ȏd@ @d @d @d @d@ @d @d @d @d@ @d @d @d @d@ @d @d @d @d@ @d @d @d @d@ @d @d @$ $@9module bytecodepackageseeallformatheaderstringdumpsub?(@little_endian int_size size_t_size instr_size number_size integralbyte@assert @&Number format not supported by dumper1Big endian architectures not supported by dumperluaU LUA_TNIL LUA_TBOOLEAN LUA_TNUMBER@ LUA_TSTRING@ LUA_TNONEttype make_setS make_setF from_double from_int DumpLiteral DumpBlock DumpByteDumpInt DumpSize DumpNumber DumpString DumpCode DumpLocals DumpLines DumpUpvaluesDumpConstants DumpProtos DumpDebug DumpFunction DumpHeader endianness dump_string dump_file>>>dm@@@A@AAAB@B@ƀB typevaluenumber LUA_TNUMBERstring LUA_TSTRINGnil LUA_TNILboolean LUA_TBOOLEAN LUA_TNONEeeefffffggggghhhhhiiiiikkmselfottt}JI@@datax{@Idatayyyzzzz{sbuffuv{|||}selfbuffwriter@ƀA܀@@@@hioopenwb@@@@@@@hclosewritesbuffself filenamebuffwriter D@@R@@AAAAA@ŁƁA܁LA@BAB @@@ANLB@@ANBLB@@A?mathfrexp@@ldexp?J@@@0@`@EF@@\A@A@@A^mathfloorp@stringcharmodvD selfCxC grab_byteCsignC mantissa C exponent Cv"Cbyte"C (for index)&0 (for limit)&0 (for step)&0i'/ >A@@@@@ EBFBA\@B@O@RA`EBF\MBLABƂ܂B@@_ mathfloor?stringcharmodp@o@>self=x=size=v= (for index)  (for limit)  (for step) i carry< (for index)"< (for limit)"< (for step)"<i#;c*;@@@ DumpBlockselfsD@FA@@writedataselfbD@EAF\@ DumpBlockstringcharselfyD @KA@@\@ DumpBlock from_intformat int_size selfxD @KA@@\@ DumpBlock from_intformat size_t_size selfxD @ˀ@K@A\@@ˀ@KAA\@format integral DumpBlock from_int number_size from_doubleselfxD @@A@@U@@EFA\@ˀA@@ DumpSizestringlen DumpBlock     selfsD  A@AM  ABAB sizecodeDumpInt? DumpBlockluaP InstructioncodeselffDn (for index) (for limit) (for step)i . " A@AM BKBAƂA\BKB@AB\BKB@BB\B  sizelocvarsDumpInt?locvars DumpStringvarnamestartpcendpc"''(((****+++++++,,,,,,,. self!f!D!n! (for index)! (for limit)! (for step)!i var 3;  A@AM  B@BA sizelineinfoDumpInt? lineinfo455557777888887;selffDn (for index) (for limit) (for step)i @F  A@AM  ABBA sizeupvaluesDumpInt? DumpString upvaluesABBBBCCCCDDDDDCFselffDn (for index) (for limit) (for step)i L_? A@AM KBA\Y@BBA@BBBBB@BBCB@BBCABC@BCBsizekDumpInt?kttypeassert DumpByte LUA_TNUMBER DumpNumbervalue LUA_TSTRING DumpString LUA_TBOOLEAN LUA_TNIL?MNNNNOOOOPPQQQRRRRRRSSSSTTTUUUUUVVVWWWWWXXXYYYYYYYYYYYZZZZ\\\O_ self>f>D>n> (for index)> (for limit)> (for step)>i =o =tt=bi A@A @AM A BABsizepassertDumpInt? DumpFunctionpsourcecdddeeeeffffggggggfiselffDn (for index)  (for limit)  (for step) i ko @@@@@@@ˀ@@@ DumpLines DumpLocals DumpUpvalues llllmmmmnnnnoself f D v 4KA@\AK@\AK@AA\AKA\AKA\AKAA\AKAƁ\AKB\AKC\AKAC\AKC\Asource DumpStringDumpInt lineDefinedlastLineDefinedE@ DumpBytenups numparams is_vararg maxstacksize DumpCodeDumpConstants DumpProtos DumpDebug4z{{{||||}}}}~~~~~~~self3f3p3D3source3@A@@@ DumpLiteralformatheaderselfD   K@\AK@@\AF@A@\Awritedata DumpHeader DumpFunctionselfMainwdataDA^?self EK@\ˀ@@@luaU make_setSdumpdata proto writer buff  @@ @AA@AKA\AEF\AEAZ@EF\A luaU make_setSdumpioopenwbwritedatacloseUNIX_SHARPBANGosexecute chmod a+x proto filenamewriterbufffile;;;;;==>>>>>>>>>>??@@AAAAAAAAAAAAAABBBBBBBBCCCCCCCCEEEEEEEEEEEEEFFFFFIILLMMNNOOPPdmdt}t .3;3@F@L_Lbibkokvvk@C:/Users/drahosp/Desktop/Work/Repository/_install/bin/_batteries/tmp/metalua-0.5/src/compiler/compile.lua)A@@@$J@ǀ@ǀ@@@$dA$dB$dC$dGdD$d E$ d F $dG$d H  $d I  I I@ I II I I I  II   I  I   I  II I I $ I $J I$  $ $  $J$ $$  $J$ $ $  $J $ $$  $J  $ 3module bytecodepackageseeallMAX_INT@AMAXVARSi@ MAXUPVALUES@@ MAXPARAMSY@LUA_MAXPARSERLEVELVARARG_HASARG?VARARG_ISVARARG@VARARG_NEEDSARG@ indexupvaluestatDoBreakReturnLocal LocalrecIfForinFornumRepeatWhileSetCallInvokeLabelGotoexprNilTrueFalseStringNumberParenDotsTable FunctionOpIndexIdStatmetalua_compileG))):<W@W@@B@B^VCALLVVARARG;;;;;;;<kGHF@ZF@W@Jb@Z@@^tagDoHHHHHHHHHHHHHHast RT@@@ƀ@@flocvarsactvarSSSSSSTfsiV`@@@@ @@nactvar?endpcpcWWWXXX[[[[^^^^^`fstolevellocvar  getlocvarltFA@@@@A@J@@A@@@@A@ AA [locvar: %s = reg %i] nlocvarsflocvarsvarname?mmmmmnooooppppqrrrstfsvarnamef nlocvarsdebugf| @@ @@ BAnactvar?startpcpcfsnvars (for index) (for limit) (for step)i getlocvar *@Z@FAFFAFAFAIFAFAAFAIFEKBF@A\AEK\A freeregvk VINDEXEDinfoauxprevluaKcodeABCOP_MOVE reserveregs?*fs)lh)v)extra) conflict) @AA@ @ ftkinfoluaKNO_JUMP e k i  AA@@@VKluaKstringK fs e str  init_exp @@@@A^nactvar?varnamefsname (for index) (for limit) (for step)ilocvar  getlocvar J @ J @ @J @ @ @ J @ @ J @ J @ Dksizekpsizepcode sizecode sizelineinfo sizeupvaluesnups upvalues numparams is_vararg maxstacksize lineinfo sizelocvarslocvars lineDefinedsourcef%JIIIII@AIA@ƀII@I@AII@AI@I@AIĈD@@I@EI@AII^ upvaluesactvarfprevpc lasttargetjpcluaKNO_JUMPfreeregnkhnp nlocvarsnactvarbl nestlevel maxstacksize@ lastlineforward_gotoslabels%old_fs$new_fs$f$ newproto-F@A@@AAA@@AI@AIBIBICIIDW@@@D@EDŀ@A@fluaKret sizecodepc sizelineinfosizeknksizepnp sizelocvars nlocvars sizeupvaluesnupsassertblnextforward_gotostable tostringerrorUnresolved goto: -                     fs,f,x', removevars/@AF@ @ @ @Aˁ@@ @AFFAM BCBBEBKAD\Bfpnp? VRELOCABLEluaKcodeABx OP_CLOSUREnups upvalueskVLOCALOP_MOVE OP_GETUPVALcodeABCinfo/ fs.func.v.f. (for index). (for limit). (for step).i-o#- init_exp!0 8@AFM AABAFBA@AAFA@@F@FFW@BBBBF AFAAWFAAW@BABAAFAAƁA FL@ fnups? upvalueskinfoassertVLOCALVUPVAL8"#####$$$$$$$$$$$$%%%%%%%%%&#***++++++++++,,,,,,,,-.../0 fs7name7v7f7 (for index) (for limit) (for step)inups3759 @@@@@blnactvar previousupval 677777778889fs level bl HP@ƀIIAIIBI @@BFAW@A@  breaklistluaKNO_JUMP isbreakablenactvarupval previousblassertfreeregIIIJKKLMMNOOOOOOOOPfsbl isbreakableUc ,F@@ @@AA@@@@@ƀ@W@@@ BF@ bl previousnactvarupvalluaKcodeABC OP_CLOSEassert isbreakablefreereg patchtohere breaklist,VWWYYYY[[[\\\\\\\\__________````````aabbbbbcfs+bl+ removevarsjw $@AAA@@A T  BAB@@B  @?error$I don't handle empty expr lists yetexprluaK exp2nextreg$kkkllllllnnnnnnppppqqqqqsssssspvvvvwfs#astlist#v#offset# (for index) (for limit) (for step)iexpr|L C@ A@@A@@A@W@AAA@܁ŁF@W@Ł@AAB BMACAC̃AŁ@BDBAŁ@ÁB kVVOIDluaK setmultretassert VNONRELOCinfo LUA_MULTRET exp2nextregfreereg?VCALLcodeABCOP_CALL@ lineinfofixlinefirstlineL}~fsKastKvK idx_fromKargsKnparamsKbaseKexplist hasmultret init_expEF@\̀@mathfrexp?xmnexA@A@L@A@AA0@mathfloor?@ @xe 1@@AŁAA @DA\A@D\ADAB\@@AA^E\@„A^ VGLOBALluaPNO_REGVLOCALprevinfo indexupvaluekVUPVAL1fs0n0var0base0v0 init_exp searchvar markupval singlevaraux@܀@ŀ@܀VGLOBALinfoluaKstringKfsvarnamevar singlevarauxA@W@A@@̀@@A@ D\@asserttypestringnactvarMAXVARSerrortoo many local varsactvarfsnamenregisterlocalvar =@@W@@@@ FFBW@BBBB@@BAFAB AAEZAA A@AAFAB A ACABAtagDots?assertId Function parameters must be Idsf numparamsnactvar is_varargVARARG_ISVARARGluaK reserveregs=fs< ast_params<dots <nparams< (for index)% (for limit)% (for step)%i$ new_localvaradjustlocalvars  / D\Z@ A@@EK@\AEKA B@\A@FWEK\AFBAA@AAB@A k?luaK setreturns reserveregsVVOID exp2nextregfreereg_nil/            fs.nvars.nexps.e.extra.reg#. hasmultret F@L@ @E@Y@\@ nestlevel?assertLUA_MAXPARSERLEVELtoo many syntax levels fs F@M@ @ nestlevel?fs"(@@@@@@@ƀAexprkVNILVFALSEluaK goiftruef#$$$$$$%%%%&&&&&''(fsastvexpr-5 @@@@BAAA @asserttag?statfreeregnactvar...////0000111112204445fsast (for index)  (for limit)  (for step) i  enterlevelstat leavelevel:C @@AAFA@ AAEFW@A@@?statfreeregnactvarassert breaklistluaKNO_JUMP;<<<<<====>>>>>??=AAAAAAAAABBBCfsastbl (for index)  (for limit)  (for step) i  enterblockstat leaveblockM_VJA@A@ABAAAA@A@AAˁ@A@AAA@A@Aˁ@CA܁AAA@@܁B CBBB C@BBB@܂ CB@luaK codeAsBx OP_FORPREPNO_JUMPjump reserveregs patchtohere OP_FORLOOPcodeABC OP_TFORLOOPfixlineline patchlist?VNOOOOQQQQQQQQQQRRRRRRSSSSSTTTTUUUUUVVVVWWWYYYYY[[[[[[[[[[\\\\\\\\\\]]]]]^^^^^^^^^^^^^_fsU ast_bodyUbaseUnvarsUisnumUblUprepUendforCUadjustlocalvars enterblockblock leaveblocker,@ JA@@@@AAA@AA@FAˁ@܁ BBBB@B  freeregnh?exprluaKexp2valexp2RK@codeABC OP_SETTABLEtinfo,fggjjjkkkkkklllllmmmmmnnnnnnooooopppppppppqrfs+ast+cc+reg+key+val+keyreg+valreg!+exprx}@A@@ŀ@EFAY@A@@̀ÀexprvassertnaluaP MAXARG_Bx?tostoreyyyyyyzzzzzzzzz{{{|||}fsastccexpr@@@AF@@ŀBFAFA@I vkVVOIDluaK exp2nextregtostoreluaPLFIELDS_PER_FLUSHsetlisttinfonafscc.@@ƀ@@AF@AFFAƁ@@BI@WC@CF@AFFA@tostorevkluaK setmultretsetlisttinfona LUA_MULTRET?VVOID exp2nextreg.fs-cc- hasmultret"@@ @@@@@FA@@@@ lineinfo lastlinelast?tagerrorA statement cannot have tag ` - /Statement `%s"fs!ast!parserchunkstatdebugf &@A@A@@@@AA ABBAA CB BCbl isbreakableupval previousassertno loop to breakluaKcodeABC OP_CLOSEnactvar breaklistconcatjump&fs%ast%bl%upval% U@@D\ADA@\Z@ EK\AFA@@@AEKŁ@܁B\AEB BCWA\ACEA@AEK\@EK\ACEDWA\AEKA@\AkluaK setmultretVCALL?luaP SET_OPCODEgetcode OP_TAILCALLassert GETARG_Anactvar LUA_MULTRET exp2anyreg exp2nextregfreeregretUfsTastTeTfirstTnretTexplist hasmultret &@@T A@@B T@ D\AD@\AD\A?@kVVOID& fs%ast%names%values% (for index) (for limit) (for step)i e% new_localvarexplistadjust_assignadjustlocalvars :@@ƀW@@@@@@ƀ@ JB@AABFAABABABAAB@AB@AB B@ACassert?@%Multiple letrecs not implemented yetVLOCALfreeregluaK reserveregsexpr storevarnactvarstartpcpc:fs9ast9ast_var9ast_val9e_var9e_val9 new_localvar init_expadjustlocalvarsexpr getlocvar[@J@@FA@@A\AAAA@AB@BCLCFC@A@@A@AB@AAA@B@A ?luaKNO_JUMP@@concatjump patchtohere  @܀@A       fs test body condexit condblock[      fsZastZastlenZtest_then_blockZ escapelistZflistZ (for index)5 (for limit)5 (for step)5i4blockcond!2@@JBA@@BB@B@BBT B@@CC@B@B BBB@BB@B ?@@freereg(for generator) (for state)(for control)luaK checkstack@"""$%%%%%''((((()))))*****+++++++++++,,,,,------.....///////1112 fs?ast?vars?vals?body?bl?e ?base ? (for index)% (for limit)% (for step)%i$ enterblock new_localvarexplistadjust_assignforbody leaveblock6OH@A@DA\AD\ADA\AD\A@\A@\AT@A\AEKF@BCA\AEK\ADA\AD\Afreereg (for index) (for limit)? (for step)@@@@luaKcodeABx OP_LOADKnumberK reserveregs8< J@@@@@@@exprluaK exp2nextreg 9::::::;;;;;<ast_e e exprfsH<<<>?????ABBBBBCCCCCDDDDDEEEEEEFFFGGGHHHHHHHIIIIIIIIIIIJJJJJLLLLLLLLNNNOfsGastGexp1GblGbase Gexpr enterblock new_localvarforbody leaveblockRc >@@ D\AD\ADƁ\AD\AA@AAA@AAAA@AAAAEK\AA luaK getlabel?@upval patchlistBreak patchtoherejump>SSSSTTUUUUUVVVVVWWWWXXXXYYYZZZ[[[[[[[]]]]^^^^^___`````````bbbcfs=ast= repeat_init=bl1=bl2= condexit= enterblockchunkcond leaveblockstatgp $@@F܀ D\AD\AEK BA@\AD\AEK\AluaK getlabel?@ patchlistjump patchtohere$hhhhiiiijkkkkkllllmmmmmmmmmnnnooooopfs#ast# whileinit# condexit#bl #cond enterblockblock leaveblocku @ dAF@@AAA?@vprevexpr| o@@@@@@@@Aƀ@EAF\A@@ʀ CDAAAAA@DAA@AA D@@@@@@ACDT A AŀD@ŀDAA@AAACA@@ŀDAA@VLOCAL?VUPVALVGLOBAL VINDEXEDvkerrorBad lhs expr: table tostringprevexprfreeregluaK setoneret storevar VNONRELOCo}}}}}lhsnnvarsnlegalnnv/ ast_lhsexprfscheck_conflictlet_auxexplist ast_valseadjust_assign init_expvvvfsastast_lhs ast_valselet_auxlhsexprcheck_conflictexplistadjust_assign init_exp @@@ˀEK\A@CallluaP SETARG_CluaKgetcode?fsastvexpr @@@ˀEK\A@InvokeluaP SETARG_CluaKgetcode?fsastvexprfssrcdst=@܀@@ƀA@@ FA AFA ABƀ@A@@FBFFBB@B@܂A CAC CƃAC!B AD?typetablelabelserrorDuplicate label in functionpcnactvarforward_gotosipairsfcodeluaP GETARG_A SETARG_A SETARG_sBx@= fs<ast< label_id<gotos<(for generator): (for state):(for control):_8goto_pc8 close_instr!8 jmp_instr%8 goto_nactvar)8  A@܀@@ƀAFA AAAAFAB A @EAKA\ACACJ AACFCFABAA AAAAA BEBFA?typetablelabelsnactvarluaKcodeABC OP_CLOSEpc codeAsBxOP_JMPforward_gotosinsertNO_JUMPA fs@ast@ label_id@label @offset"" 7܀W@ŀEAF\A@@@ A@@AAAAAAAUAAAAUAAAAtypetableerrorExpr AST expected, got  tostring lineinfo lastlinelast?tagNo tag in expression nohashT@No parser for node ` - /`%s7     !!!!"fs6ast6v6parser6exprdebugf&&AA@VNIL&&&&&&fsastv init_exp''AA@VTRUE''''''fsastv init_exp((AA@VFALSE((((((fsastv init_exp))@@?))))))fsastv codestring*-AA@VKNUMnval?+++++,,-fsastv init_exp/2 FA@ŀ@@expr?luaK setoneret 000000111112fs ast v expr4; !A@@@AA@@@ƀA@@@A@@EA AAABA@ assertf is_varargNo vararg in this functionVARARG_NEEDSARG is_varagVVARARGluaKcodeABC OP_VARARG?!55555555588888999999::::::::::::;fs ast v  init_exp?P U@@A܀ AJ A @ DA\ADA\AEK\AA`EBACWBAXB\BD\BFFDZBD\B_D\AEAKDFBA\AEAKADFA\AluaKcodeABC OP_NEWTABLEvnanhtostoret VRELOCABLEVVOID exp2nextreg?assertktagPairluaP SETARG_Bfcode SETARG_CU@@@@@@@@AAAAAAABBBBBCCCCCDDDDDEEEEFFFFFFFFFFFGGGGHHHHHHHHHHHHEJJJJMMMMMMMMMNNNNNNNNNP fsTastTvTpcTccT (for index)!> (for limit)!> (for step)!>i"= init_expcloselistfield recfield listfieldlastlistfieldint2fbUa(ƀ ܀@FA@ƁI @A@A@A@A  lineinfo lastlinelast?f lineDefinedlastLineDefinedfirst@(VVVVVVVXXXYYYZZ[[[[[[[[]]]]^^^^___`````afs'ast'v'new_fs ' open_funcparlistchunk close_func pushclosureeu :ƀ AAA@A AAB DFA\AEKA@\ADFA\AEK@\AAA  lineinfo lastlinelast?@exprluaKprefix@infixposfixerrorWrong arg number:fffffffgiiijjjjjjkkkkkkklllmnnnnnnooooooppppppqqqqqqqqsssufs9ast9v9op9v25expry~FA@ŀ@@@@expr?luaK exp2nextreg@zzzzzz{{{{{||||||~fsastvexpr funcargs FA@ŀ@@@AA AAA@Aexpr?luaKdischargevars@_self@fsastvkey expr codestring funcargs 2W@@@@@A@ƀƀ@ ƀFA@@@B@A ACA CA@print BAD INDEX AST:tableerror$generalized indexes not implemented lineinfo lastlinelast?exprluaK exp2anyregexp2valindexed2fs1ast1v1k 1expr AW@A@F@asserttagId? fs ast v  singlevar 7@A@J@Ɓ@ƁAI@A@  BAAAB@AA@AAB@A@ A@Ƃ@ɂ nactvarfreeregactvar?expr@luaK exp2nextregexp2regpairs7 fs6ast6v6 save_nactvar6 dest_reg6 save_actvar6i v (for generator)16 (for state)16(for control)16i24j24 enterblockchunkexpr leaveblock*@@@@AW@AA@@AWAA@BWAA@Z@@@@ f is_varargVARARG_ISVARARGassertprevnups nestlevelsource*ast)source)fs) open_funcchunk close_func'''''),-//00112233667788<HT``tt0!9Pccww  ((5555CCCC_____rr}}2222222!OOOOOO6ccccccRpppppgu """&&&'''((()))--*22/;;4PPPPPPP?aaaaaaUuue~~~y(debugfstatexpr hasmultret ensure_list getlocvar removevarsregisterlocalvaradjustlocalvars!check_conflict" init_exp# codestring% searchvar' newproto( open_func* close_func, pushclosure. markupval1 enterblock2 leaveblock4explist6 funcargs:log2;int2fb< singlevarauxA singlevarC new_localvarEparlistHadjust_assignJ enterlevelK leavelevelLcondNchunkRblockVforbody[ recfield] listfield_closelistfield`lastlistfieldb patch_goto