From db392c4763831a18c9857263526081011302739e Mon Sep 17 00:00:00 2001 From: UnlegitDqrk Date: Mon, 2 Mar 2026 13:10:29 +0100 Subject: [PATCH] Implemented issue: #87 --- core/src/main/java/org/luaj/vm2/Buffer.class | Bin 0 -> 3178 bytes .../vm2/Globals$AbstractBufferedStream.class | Bin 0 -> 1177 bytes .../org/luaj/vm2/Globals$BufferedStream.class | Bin 0 -> 1432 bytes .../java/org/luaj/vm2/Globals$Compiler.class | Bin 0 -> 338 bytes .../java/org/luaj/vm2/Globals$Loader.class | Bin 0 -> 359 bytes .../java/org/luaj/vm2/Globals$StrReader.class | Bin 0 -> 902 bytes .../org/luaj/vm2/Globals$UTF8Stream.class | Bin 0 -> 1008 bytes .../java/org/luaj/vm2/Globals$Undumper.class | Bin 0 -> 337 bytes core/src/main/java/org/luaj/vm2/Globals.class | Bin 0 -> 5359 bytes core/src/main/java/org/luaj/vm2/LocVars.class | Bin 0 -> 1007 bytes core/src/main/java/org/luaj/vm2/Lua.class | Bin 0 -> 5498 bytes .../main/java/org/luaj/vm2/LuaBoolean.class | Bin 0 -> 1247 bytes .../main/java/org/luaj/vm2/LuaClosure.class | Bin 0 -> 20743 bytes .../main/java/org/luaj/vm2/LuaDouble.class | Bin 0 -> 9673 bytes .../src/main/java/org/luaj/vm2/LuaError.class | Bin 0 -> 2042 bytes .../main/java/org/luaj/vm2/LuaFunction.class | Bin 0 -> 1914 bytes .../main/java/org/luaj/vm2/LuaInteger.class | Bin 0 -> 9691 bytes core/src/main/java/org/luaj/vm2/LuaNil.class | Bin 0 -> 2533 bytes .../main/java/org/luaj/vm2/LuaNumber.class | Bin 0 -> 1517 bytes .../vm2/LuaString$RecentShortStrings.class | Bin 0 -> 451 bytes .../main/java/org/luaj/vm2/LuaString.class | Bin 0 -> 16590 bytes .../java/org/luaj/vm2/LuaTable$DeadSlot.class | Bin 0 -> 2457 bytes .../java/org/luaj/vm2/LuaTable$Entry.class | Bin 0 -> 2366 bytes .../org/luaj/vm2/LuaTable$IntKeyEntry.class | Bin 0 -> 1136 bytes .../java/org/luaj/vm2/LuaTable$LinkSlot.class | Bin 0 -> 2983 bytes .../org/luaj/vm2/LuaTable$NormalEntry.class | Bin 0 -> 1033 bytes .../luaj/vm2/LuaTable$NumberValueEntry.class | Bin 0 -> 1294 bytes .../java/org/luaj/vm2/LuaTable$Slot.class | Bin 0 -> 808 bytes .../org/luaj/vm2/LuaTable$StrongSlot.class | Bin 0 -> 365 bytes .../src/main/java/org/luaj/vm2/LuaTable.class | Bin 0 -> 16654 bytes .../java/org/luaj/vm2/LuaThread$State.class | Bin 0 -> 4853 bytes .../main/java/org/luaj/vm2/LuaThread.class | Bin 0 -> 3589 bytes .../main/java/org/luaj/vm2/LuaUserdata.class | Bin 0 -> 3794 bytes .../java/org/luaj/vm2/LuaValue$None.class | Bin 0 -> 1072 bytes .../src/main/java/org/luaj/vm2/LuaValue.class | Bin 0 -> 27128 bytes .../main/java/org/luaj/vm2/Metatable.class | Bin 0 -> 543 bytes .../java/org/luaj/vm2/NonTableMetatable.class | Bin 0 -> 1131 bytes .../java/org/luaj/vm2/OrphanedThread.class | Bin 0 -> 265 bytes core/src/main/java/org/luaj/vm2/Print.class | Bin 0 -> 10407 bytes .../main/java/org/luaj/vm2/Prototype.class | Bin 0 -> 2128 bytes .../java/org/luaj/vm2/TailcallVarargs.class | Bin 0 -> 1593 bytes core/src/main/java/org/luaj/vm2/UpValue.class | Bin 0 -> 1349 bytes .../main/java/org/luaj/vm2/Upvaldesc.class | Bin 0 -> 1104 bytes .../luaj/vm2/Varargs$ArrayPartVarargs.class | Bin 0 -> 1726 bytes .../org/luaj/vm2/Varargs$ArrayVarargs.class | Bin 0 -> 1526 bytes .../org/luaj/vm2/Varargs$PairVarargs.class | Bin 0 -> 1014 bytes .../org/luaj/vm2/Varargs$SubVarargs.class | Bin 0 -> 1226 bytes core/src/main/java/org/luaj/vm2/Varargs.class | Bin 0 -> 7333 bytes .../vm2/WeakTable$WeakKeyAndValueSlot.class | Bin 0 -> 1507 bytes .../org/luaj/vm2/WeakTable$WeakKeySlot.class | Bin 0 -> 1417 bytes .../org/luaj/vm2/WeakTable$WeakSlot.class | Bin 0 -> 2581 bytes .../org/luaj/vm2/WeakTable$WeakUserdata.class | Bin 0 -> 1026 bytes .../org/luaj/vm2/WeakTable$WeakValue.class | Bin 0 -> 1627 bytes .../luaj/vm2/WeakTable$WeakValueSlot.class | Bin 0 -> 1368 bytes .../main/java/org/luaj/vm2/WeakTable.class | Bin 0 -> 3069 bytes .../org/luaj/vm2/compiler/Constants.class | Bin 0 -> 3857 bytes .../vm2/compiler/FuncState$BlockCnt.class | Bin 0 -> 485 bytes .../org/luaj/vm2/compiler/FuncState.class | Bin 0 -> 21433 bytes .../luaj/vm2/compiler/InstructionPtr.class | Bin 0 -> 439 bytes .../java/org/luaj/vm2/compiler/IntPtr.class | Bin 0 -> 301 bytes .../vm2/compiler/LexState$ConsControl.class | Bin 0 -> 531 bytes .../luaj/vm2/compiler/LexState$Dyndata.class | Bin 0 -> 693 bytes .../vm2/compiler/LexState$LHS_assign.class | Bin 0 -> 530 bytes .../vm2/compiler/LexState$Labeldesc.class | Bin 0 -> 530 bytes .../luaj/vm2/compiler/LexState$Priority.class | Bin 0 -> 405 bytes .../luaj/vm2/compiler/LexState$SemInfo.class | Bin 0 -> 394 bytes .../luaj/vm2/compiler/LexState$Token.class | Bin 0 -> 714 bytes .../luaj/vm2/compiler/LexState$Vardesc.class | Bin 0 -> 365 bytes .../vm2/compiler/LexState$expdesc$U.class | Bin 0 -> 828 bytes .../luaj/vm2/compiler/LexState$expdesc.class | Bin 0 -> 1304 bytes .../java/org/luaj/vm2/compiler/LexState.class | Bin 0 -> 38298 bytes .../java/org/luaj/vm2/compiler/LexState.java | 39 ++++++++++++------ .../luaj/vm2/compiler/LuaC$CompileState.class | Bin 0 -> 2244 bytes .../java/org/luaj/vm2/compiler/LuaC.class | Bin 0 -> 1438 bytes .../vm2/libs/BaseLib$StringInputStream.class | Bin 0 -> 1050 bytes .../org/luaj/vm2/libs/BaseLib$_assert.class | Bin 0 -> 814 bytes .../vm2/libs/BaseLib$collectgarbage.class | Bin 0 -> 1833 bytes .../org/luaj/vm2/libs/BaseLib$dofile.class | Bin 0 -> 1651 bytes .../org/luaj/vm2/libs/BaseLib$error.class | Bin 0 -> 816 bytes .../luaj/vm2/libs/BaseLib$getmetatable.class | Bin 0 -> 818 bytes .../org/luaj/vm2/libs/BaseLib$inext.class | Bin 0 -> 637 bytes .../org/luaj/vm2/libs/BaseLib$ipairs.class | Bin 0 -> 797 bytes .../java/org/luaj/vm2/libs/BaseLib$load.class | Bin 0 -> 2362 bytes .../org/luaj/vm2/libs/BaseLib$loadfile.class | Bin 0 -> 1605 bytes .../java/org/luaj/vm2/libs/BaseLib$next.class | Bin 0 -> 635 bytes .../org/luaj/vm2/libs/BaseLib$pairs.class | Bin 0 -> 821 bytes .../org/luaj/vm2/libs/BaseLib$pcall.class | Bin 0 -> 2183 bytes .../org/luaj/vm2/libs/BaseLib$print.class | Bin 0 -> 1495 bytes .../org/luaj/vm2/libs/BaseLib$rawequal.class | Bin 0 -> 830 bytes .../org/luaj/vm2/libs/BaseLib$rawget.class | Bin 0 -> 748 bytes .../org/luaj/vm2/libs/BaseLib$rawlen.class | Bin 0 -> 514 bytes .../org/luaj/vm2/libs/BaseLib$rawset.class | Bin 0 -> 1058 bytes .../org/luaj/vm2/libs/BaseLib$select.class | Bin 0 -> 1012 bytes .../luaj/vm2/libs/BaseLib$setmetatable.class | Bin 0 -> 1130 bytes .../org/luaj/vm2/libs/BaseLib$tonumber.class | Bin 0 -> 954 bytes .../org/luaj/vm2/libs/BaseLib$tostring.class | Bin 0 -> 798 bytes .../java/org/luaj/vm2/libs/BaseLib$type.class | Bin 0 -> 554 bytes .../org/luaj/vm2/libs/BaseLib$xpcall.class | Bin 0 -> 2462 bytes .../main/java/org/luaj/vm2/libs/BaseLib.class | Bin 0 -> 5158 bytes .../luaj/vm2/libs/DebugLib$CallFrame.class | Bin 0 -> 3118 bytes .../luaj/vm2/libs/DebugLib$CallStack.class | Bin 0 -> 5834 bytes .../luaj/vm2/libs/DebugLib$DebugInfo.class | Bin 0 -> 1519 bytes .../org/luaj/vm2/libs/DebugLib$NameWhat.class | Bin 0 -> 449 bytes .../org/luaj/vm2/libs/DebugLib$debug.class | Bin 0 -> 441 bytes .../org/luaj/vm2/libs/DebugLib$gethook.class | Bin 0 -> 2224 bytes .../org/luaj/vm2/libs/DebugLib$getinfo.class | Bin 0 -> 3928 bytes .../org/luaj/vm2/libs/DebugLib$getlocal.class | Bin 0 -> 1465 bytes .../luaj/vm2/libs/DebugLib$getmetatable.class | Bin 0 -> 589 bytes .../luaj/vm2/libs/DebugLib$getregistry.class | Bin 0 -> 682 bytes .../luaj/vm2/libs/DebugLib$getupvalue.class | Bin 0 -> 1050 bytes .../luaj/vm2/libs/DebugLib$getuservalue.class | Bin 0 -> 569 bytes .../org/luaj/vm2/libs/DebugLib$sethook.class | Bin 0 -> 1768 bytes .../org/luaj/vm2/libs/DebugLib$setlocal.class | Bin 0 -> 1579 bytes .../luaj/vm2/libs/DebugLib$setmetatable.class | Bin 0 -> 1062 bytes .../luaj/vm2/libs/DebugLib$setupvalue.class | Bin 0 -> 1019 bytes .../luaj/vm2/libs/DebugLib$setuservalue.class | Bin 0 -> 892 bytes .../luaj/vm2/libs/DebugLib$traceback.class | Bin 0 -> 1883 bytes .../luaj/vm2/libs/DebugLib$upvalueid.class | Bin 0 -> 903 bytes .../luaj/vm2/libs/DebugLib$upvaluejoin.class | Bin 0 -> 925 bytes .../java/org/luaj/vm2/libs/DebugLib.class | Bin 0 -> 10888 bytes .../java/org/luaj/vm2/libs/IoLib$File.class | Bin 0 -> 2210 bytes .../java/org/luaj/vm2/libs/IoLib$IoLibV.class | Bin 0 -> 3272 bytes .../main/java/org/luaj/vm2/libs/IoLib.class | Bin 0 -> 13260 bytes .../java/org/luaj/vm2/libs/LibFunction.class | Bin 0 -> 3013 bytes .../org/luaj/vm2/libs/MathLib$BinaryOp.class | Bin 0 -> 591 bytes .../org/luaj/vm2/libs/MathLib$UnaryOp.class | Bin 0 -> 561 bytes .../java/org/luaj/vm2/libs/MathLib$abs.class | Bin 0 -> 419 bytes .../java/org/luaj/vm2/libs/MathLib$ceil.class | Bin 0 -> 421 bytes .../java/org/luaj/vm2/libs/MathLib$cos.class | Bin 0 -> 419 bytes .../java/org/luaj/vm2/libs/MathLib$deg.class | Bin 0 -> 431 bytes .../java/org/luaj/vm2/libs/MathLib$exp.class | Bin 0 -> 558 bytes .../org/luaj/vm2/libs/MathLib$floor.class | Bin 0 -> 423 bytes .../java/org/luaj/vm2/libs/MathLib$fmod.class | Bin 0 -> 705 bytes .../org/luaj/vm2/libs/MathLib$frexp.class | Bin 0 -> 922 bytes .../org/luaj/vm2/libs/MathLib$ldexp.class | Bin 0 -> 473 bytes .../java/org/luaj/vm2/libs/MathLib$max.class | Bin 0 -> 686 bytes .../java/org/luaj/vm2/libs/MathLib$min.class | Bin 0 -> 686 bytes .../java/org/luaj/vm2/libs/MathLib$modf.class | Bin 0 -> 908 bytes .../java/org/luaj/vm2/libs/MathLib$pow.class | Bin 0 -> 418 bytes .../java/org/luaj/vm2/libs/MathLib$rad.class | Bin 0 -> 431 bytes .../org/luaj/vm2/libs/MathLib$random.class | Bin 0 -> 1307 bytes .../luaj/vm2/libs/MathLib$randomseed.class | Bin 0 -> 786 bytes .../java/org/luaj/vm2/libs/MathLib$sin.class | Bin 0 -> 419 bytes .../java/org/luaj/vm2/libs/MathLib$sqrt.class | Bin 0 -> 421 bytes .../java/org/luaj/vm2/libs/MathLib$tan.class | Bin 0 -> 419 bytes .../org/luaj/vm2/libs/MathLib$tointeger.class | Bin 0 -> 732 bytes .../java/org/luaj/vm2/libs/MathLib$type.class | Bin 0 -> 769 bytes .../java/org/luaj/vm2/libs/MathLib$ult.class | Bin 0 -> 662 bytes .../main/java/org/luaj/vm2/libs/MathLib.class | Bin 0 -> 3770 bytes .../org/luaj/vm2/libs/OneArgFunction.class | Bin 0 -> 836 bytes .../vm2/libs/PackageLib$java_searcher.class | Bin 0 -> 2139 bytes .../luaj/vm2/libs/PackageLib$loadlib.class | Bin 0 -> 806 bytes .../vm2/libs/PackageLib$lua_searcher.class | Bin 0 -> 2438 bytes .../libs/PackageLib$preload_searcher.class | Bin 0 -> 1723 bytes .../luaj/vm2/libs/PackageLib$require.class | Bin 0 -> 2802 bytes .../luaj/vm2/libs/PackageLib$searchpath.class | Bin 0 -> 2733 bytes .../java/org/luaj/vm2/libs/PackageLib.class | Bin 0 -> 4467 bytes .../org/luaj/vm2/libs/ResourceFinder.class | Bin 0 -> 194 bytes .../org/luaj/vm2/libs/TableLibFunction.class | Bin 0 -> 419 bytes .../org/luaj/vm2/libs/TwoArgFunction.class | Bin 0 -> 893 bytes .../org/luaj/vm2/libs/VarArgFunction.class | Bin 0 -> 1202 bytes .../org/luaj/vm2/libs/ZeroArgFunction.class | Bin 0 -> 744 bytes .../main/java/org/luaj/vm2/ast/Block.class | Bin 0 -> 755 bytes .../main/java/org/luaj/vm2/ast/Chunk.class | Bin 0 -> 478 bytes .../org/luaj/vm2/ast/Exp$AnonFuncDef.class | Bin 0 -> 555 bytes .../java/org/luaj/vm2/ast/Exp$BinopExp.class | Bin 0 -> 627 bytes .../java/org/luaj/vm2/ast/Exp$Constant.class | Bin 0 -> 539 bytes .../java/org/luaj/vm2/ast/Exp$FieldExp.class | Bin 0 -> 811 bytes .../java/org/luaj/vm2/ast/Exp$FuncCall.class | Bin 0 -> 819 bytes .../java/org/luaj/vm2/ast/Exp$IndexExp.class | Bin 0 -> 745 bytes .../org/luaj/vm2/ast/Exp$MethodCall.class | Bin 0 -> 890 bytes .../java/org/luaj/vm2/ast/Exp$NameExp.class | Bin 0 -> 811 bytes .../java/org/luaj/vm2/ast/Exp$ParensExp.class | Bin 0 -> 596 bytes .../org/luaj/vm2/ast/Exp$PrimaryExp.class | Bin 0 -> 385 bytes .../java/org/luaj/vm2/ast/Exp$UnopExp.class | Bin 0 -> 569 bytes .../java/org/luaj/vm2/ast/Exp$VarExp.class | Bin 0 -> 441 bytes .../org/luaj/vm2/ast/Exp$VarargsExp.class | Bin 0 -> 511 bytes jse/src/main/java/org/luaj/vm2/ast/Exp.class | Bin 0 -> 5050 bytes .../main/java/org/luaj/vm2/ast/FuncArgs.class | Bin 0 -> 1462 bytes .../main/java/org/luaj/vm2/ast/FuncBody.class | Bin 0 -> 785 bytes .../main/java/org/luaj/vm2/ast/FuncName.class | Bin 0 -> 698 bytes jse/src/main/java/org/luaj/vm2/ast/Name.class | Bin 0 -> 331 bytes .../java/org/luaj/vm2/ast/NameScope.class | Bin 0 -> 2715 bytes .../main/java/org/luaj/vm2/ast/ParList.class | Bin 0 -> 855 bytes .../java/org/luaj/vm2/ast/Stat$Assign.class | Bin 0 -> 870 bytes .../java/org/luaj/vm2/ast/Stat$Break.class | Bin 0 -> 440 bytes .../org/luaj/vm2/ast/Stat$FuncCallStat.class | Bin 0 -> 654 bytes .../java/org/luaj/vm2/ast/Stat$FuncDef.class | Bin 0 -> 638 bytes .../org/luaj/vm2/ast/Stat$GenericFor.class | Bin 0 -> 952 bytes .../java/org/luaj/vm2/ast/Stat$Goto.class | Bin 0 -> 520 bytes .../org/luaj/vm2/ast/Stat$IfThenElse.class | Bin 0 -> 1115 bytes .../java/org/luaj/vm2/ast/Stat$Label.class | Bin 0 -> 523 bytes .../org/luaj/vm2/ast/Stat$LocalAssign.class | Bin 0 -> 800 bytes .../org/luaj/vm2/ast/Stat$LocalFuncDef.class | Bin 0 -> 708 bytes .../org/luaj/vm2/ast/Stat$NumericFor.class | Bin 0 -> 943 bytes .../org/luaj/vm2/ast/Stat$RepeatUntil.class | Bin 0 -> 634 bytes .../java/org/luaj/vm2/ast/Stat$Return.class | Bin 0 -> 922 bytes .../java/org/luaj/vm2/ast/Stat$WhileDo.class | Bin 0 -> 622 bytes jse/src/main/java/org/luaj/vm2/ast/Stat.class | Bin 0 -> 4500 bytes jse/src/main/java/org/luaj/vm2/ast/Str.class | Bin 0 -> 2015 bytes .../java/org/luaj/vm2/ast/SyntaxElement.class | Bin 0 -> 305 bytes .../org/luaj/vm2/ast/TableConstructor.class | Bin 0 -> 511 bytes .../java/org/luaj/vm2/ast/TableField.class | Bin 0 -> 1020 bytes .../main/java/org/luaj/vm2/ast/Variable.class | Bin 0 -> 775 bytes .../main/java/org/luaj/vm2/ast/Visitor.class | Bin 0 -> 7363 bytes .../luaj/vm2/parser/LuaParser$JJCalls.class | Bin 0 -> 450 bytes .../parser/LuaParser$LookaheadSuccess.class | Bin 0 -> 332 bytes .../java/org/luaj/vm2/parser/LuaParser.class | Bin 0 -> 34126 bytes .../java/org/luaj/vm2/parser/LuaParser.java | 5 +++ .../luaj/vm2/parser/LuaParserConstants.class | Bin 0 -> 4176 bytes .../luaj/vm2/parser/LuaParserConstants.java | 3 ++ .../vm2/parser/LuaParserTokenManager.class | Bin 0 -> 27839 bytes .../vm2/parser/LuaParserTokenManager.java | 7 ++-- .../org/luaj/vm2/parser/ParseException.class | Bin 0 -> 3374 bytes .../luaj/vm2/parser/SimpleCharStream.class | Bin 0 -> 6674 bytes .../main/java/org/luaj/vm2/parser/Token.class | Bin 0 -> 1065 bytes .../org/luaj/vm2/parser/TokenMgrError.class | Bin 0 -> 2620 bytes .../test/java/org/luaj/vm2/FragmentsTest.java | 23 +++++++++++ .../org/luaj/vm2/compiler/LuaParserTests.java | 11 +++++ 219 files changed, 73 insertions(+), 15 deletions(-) create mode 100644 core/src/main/java/org/luaj/vm2/Buffer.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$AbstractBufferedStream.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$BufferedStream.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$Compiler.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$Loader.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$StrReader.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$UTF8Stream.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals$Undumper.class create mode 100644 core/src/main/java/org/luaj/vm2/Globals.class create mode 100644 core/src/main/java/org/luaj/vm2/LocVars.class create mode 100644 core/src/main/java/org/luaj/vm2/Lua.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaBoolean.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaClosure.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaDouble.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaError.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaInteger.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaNil.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaNumber.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaString$RecentShortStrings.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaString.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$DeadSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$Entry.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$IntKeyEntry.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$LinkSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$NormalEntry.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$NumberValueEntry.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$Slot.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable$StrongSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaTable.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaThread$State.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaThread.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaUserdata.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaValue$None.class create mode 100644 core/src/main/java/org/luaj/vm2/LuaValue.class create mode 100644 core/src/main/java/org/luaj/vm2/Metatable.class create mode 100644 core/src/main/java/org/luaj/vm2/NonTableMetatable.class create mode 100644 core/src/main/java/org/luaj/vm2/OrphanedThread.class create mode 100644 core/src/main/java/org/luaj/vm2/Print.class create mode 100644 core/src/main/java/org/luaj/vm2/Prototype.class create mode 100644 core/src/main/java/org/luaj/vm2/TailcallVarargs.class create mode 100644 core/src/main/java/org/luaj/vm2/UpValue.class create mode 100644 core/src/main/java/org/luaj/vm2/Upvaldesc.class create mode 100644 core/src/main/java/org/luaj/vm2/Varargs$ArrayPartVarargs.class create mode 100644 core/src/main/java/org/luaj/vm2/Varargs$ArrayVarargs.class create mode 100644 core/src/main/java/org/luaj/vm2/Varargs$PairVarargs.class create mode 100644 core/src/main/java/org/luaj/vm2/Varargs$SubVarargs.class create mode 100644 core/src/main/java/org/luaj/vm2/Varargs.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakKeyAndValueSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakKeySlot.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakUserdata.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakValue.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable$WeakValueSlot.class create mode 100644 core/src/main/java/org/luaj/vm2/WeakTable.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/Constants.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/FuncState$BlockCnt.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/FuncState.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/InstructionPtr.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/IntPtr.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$ConsControl.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$Dyndata.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$LHS_assign.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$Labeldesc.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$Priority.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$SemInfo.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$Token.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$Vardesc.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc$U.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LexState.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LuaC$CompileState.class create mode 100644 core/src/main/java/org/luaj/vm2/compiler/LuaC.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$StringInputStream.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$_assert.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$collectgarbage.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$dofile.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$error.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$getmetatable.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$inext.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$ipairs.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$load.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$loadfile.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$next.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$pairs.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$pcall.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$print.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$rawequal.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$rawget.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$rawlen.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$rawset.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$select.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$setmetatable.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$tonumber.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$tostring.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$type.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib$xpcall.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/BaseLib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$CallFrame.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$CallStack.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$DebugInfo.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$NameWhat.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$debug.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$gethook.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getinfo.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getlocal.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getmetatable.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getregistry.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getupvalue.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$getuservalue.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$sethook.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$setlocal.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$setmetatable.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$setupvalue.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$setuservalue.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$traceback.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$upvalueid.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib$upvaluejoin.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/DebugLib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/IoLib$File.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/IoLib$IoLibV.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/IoLib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/LibFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$BinaryOp.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$UnaryOp.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$abs.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$ceil.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$cos.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$deg.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$exp.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$floor.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$fmod.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$frexp.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$ldexp.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$max.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$min.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$modf.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$pow.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$rad.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$random.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$randomseed.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$sin.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$sqrt.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$tan.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$tointeger.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$type.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib$ult.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/MathLib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/OneArgFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$java_searcher.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$loadlib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$lua_searcher.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$preload_searcher.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$require.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib$searchpath.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/PackageLib.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/ResourceFinder.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/TableLibFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/TwoArgFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/VarArgFunction.class create mode 100644 core/src/main/java/org/luaj/vm2/libs/ZeroArgFunction.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Block.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Chunk.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$AnonFuncDef.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$BinopExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$Constant.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$FieldExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$FuncCall.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$IndexExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$MethodCall.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$NameExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$ParensExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$PrimaryExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$UnopExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$VarExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp$VarargsExp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Exp.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/FuncArgs.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/FuncBody.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/FuncName.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Name.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/NameScope.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/ParList.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$Assign.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$Break.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$FuncCallStat.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$FuncDef.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$GenericFor.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$Goto.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$IfThenElse.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$Label.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$LocalAssign.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$LocalFuncDef.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$NumericFor.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$RepeatUntil.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$Return.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat$WhileDo.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Stat.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Str.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/SyntaxElement.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/TableConstructor.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/TableField.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Variable.class create mode 100644 jse/src/main/java/org/luaj/vm2/ast/Visitor.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/LuaParser$JJCalls.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/LuaParser$LookaheadSuccess.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/LuaParser.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/LuaParserTokenManager.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/ParseException.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/SimpleCharStream.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/Token.class create mode 100644 jse/src/main/java/org/luaj/vm2/parser/TokenMgrError.class diff --git a/core/src/main/java/org/luaj/vm2/Buffer.class b/core/src/main/java/org/luaj/vm2/Buffer.class new file mode 100644 index 0000000000000000000000000000000000000000..bd2aea5b142a3e3f154059da4df9d85a4a4b64f8 GIT binary patch literal 3178 zcma)8Sx{4F6#gy&6T(#y!36?Rt(sg=)K;s42n5h5;zGnCR=9)D7o!amG_W}{6)6C@lfByfR@0{;!H}C)R z&Ln^qJmN);hQ)SjuqHlc4%eJYY^rG*8yK)serU+mk%xI2=G6@)htl;t2u4Dke)y2@ zgfl(_hN6U09M=1eLnej18!_u~EJZ&2@JLRHQWCJ?N#hAB! ze^Xbqr9%j;&{2t-H2Bi?XgW2N9Mn)63|$A(q3&u$W0j7Zv6?6;%Z$hE7;Oh5iu76p zy$IM2k64``?eb~jP;zl^ODdh0bTzkyEFQm|!z0$)dJV_}!*stMKzB%#&8iwi9AuyN+5FCSoZ6MRJFZdhBGD%#jf* z*{`7{I2V^$B%K0cQr4nTN0a2#m*{bl?dM^$&dO`$Vay&Gk0jGJx50>t7K>{)B3|s# zu@`OE6xURQ3(|J@gqdngrOa`u$WV7!K-+cf#{mtxW2bTSaC%^?WUo6Miip4=9UX{L zz)HsKek*D_0{IjW+ak09ojQ)-c9M?S$(YGf-f%r>Co{7+PnV*E?x>D#93v~1v5KdL z_5Tycjh*;%Tt^Rji83@gm0LE}QQ^WcX^83Qmjro7QkG=Mj{$Ug!5Y7=I@`w*ebUkc z*e+Qa)^Sp`N}@+~rko{oB;8Co{pZIB?(`z1V-yTTR-1Q>kEX2ztIm`hND?&|!K|Wl z=0I)a21jfqVl}t4HXd$^_JkV`G=?M5E{=+@og7V@$+U{Dhr_9X$qh468Wy$lA}=*M0KdbbN2ro;^BTPPDy!*i5~ zf?RbC=n}dQ9Hh!2f_4xvO2ET};>>gbw{jI)i;W9d`Y!ykOwiv9D&F96j-n`(fMd9a zPrmLJguQGoO*)iM2~M5s)-og8r9$B;E*S#lM5~CBVApwJVG+A&2?n|H72_gphKD;~ zxj|0~JsGUzs`Fbczb|9W43rai8~JQAO{TjGQOQ*xd?ZnwLCuVY!{an>@12$|cct?v zy?M6i8TwX_`zRtT>zO18eud%5&0x#4V_o#@Xl^eP&|4PG;<|ubfJdqI7y@`)VNFGB zEs+GPz^KY#TLyJUvJ@R=Pm^z#M5bDbdE6>AMSUG{E<)WE);=Cfs z%>;7Gx8xcnxn*bJ^-Mr7$rXwIKtG#YCZUtAP0+djoJ_yqbp8^>_=?T*HMxF+8hpzc z`5ni{_ekIeJb@qa0)A5A-wfYhh?M@#H*isdc9kf3Oon`rBb%#y8%&>g)YYFfStNf} z-DDkSz@+>`LPwuGhn1Y#?Xu^$c%4+7gu+-SLpQ+4&3Nt9{m<;!UoaoPvb%oc8{>C& p*dNL}4z(a1c#vsxif#p0`FK57d~c&{=1t(tsA^t6#OoY9{4Z3%d4vD} literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$AbstractBufferedStream.class b/core/src/main/java/org/luaj/vm2/Globals$AbstractBufferedStream.class new file mode 100644 index 0000000000000000000000000000000000000000..01fc4a7aff7d3b43f32477110a0b7f9d3bc68e1a GIT binary patch literal 1177 zcmZuwSx*yT6g{_{VcI$^Ye89rB5FHTs-P&Fi6y8*SRQIflozM%08_eUW{MD(_(I~J z;Mo^^FaadS@B{o!M!nxq%Mu=D?#x}zIrqEw`}OC?F@RZ2hv0)>fuur46QR9eY#J%6 zlG4l7nwxQL(QI5g~*#u94eVFsk(`ncGh2 z4C`!IRYBr$1--MX<7O%~J7+$#1c_Q7%&_Q$5Lh%F_eI5V6-*F1E*l}&=;g9$&lC;E zF&#qZ}#W)2u~FB4$btQuiJ-npbr~oKFHwQHbM=|iwE-QOr;-Voa@6QJofB3CPghH K1Tc;%Dew<+S<2}E literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$BufferedStream.class b/core/src/main/java/org/luaj/vm2/Globals$BufferedStream.class new file mode 100644 index 0000000000000000000000000000000000000000..79882a4955a041a3823e5252796d4a1df4eeedab GIT binary patch literal 1432 zcmZuvZEsU$7{2cIbf@i3w+>bYbPmRbcBg|XzOyl9bK;4EMN1&CkZ{@_u%+v1&N*G& zH~#`(jegLW_+;Cv`>)JKPb1KEabL?e7&vdm>4Q2!fa@Io4 zUa<>Rw_r7zt)Lw-HE|({I1)ONs&20!-?i@Pk{@_>IoMra%UKf_66`Expbz~5@dcT# zFR7>j1ADNSQB^KWAsGYvLZqgw{RR%;Abll4WN9{uVLYQ_#K0jO7VPaZfI#D<6@i{x znzgJ6OXVC<31fn2u5BMR@GPDa#L9KocS4+FPr%fXH!z7~f^=BBZa1zMimQI$kh_HK zdG>1AZLSK;TzjT4V6jwl%E45J(EmVWL$JRS{6DJM?3`O+1N{rthI6j9TynhgcBxJz z#=oi71*u|Smv5Z4n;kqk|6$o_235D=>v(x52aDStmR+{J8@ggHrEbMmv*~()Lt03| zWmfkb-w6cCqTBMy&f8V>q|p)0aW%Rie$MfOcU(Wv@rGcqn+%v^H5!gLSGRrN;ZOJN z*2BK;Lcw8vZk#$6{y%lXo6dU-$GI119YvH8K*AirNBK?2-7xrh?n?KNHN@o>Eo#4$ zk|!P|(racnp_`NIFrFs$DVN+vOzt4bVj5n+7!%Z6f3k>5Truw<%{BNrQtD7ysS+%LS$td?WllPGe$5wEKlbcb+Bfn`#bM=I<8eZ?TcaWzVEutw#C1g}d z1M&w(adMl2BYaB5^@Q*5CV*OyzjhE1#Z=hbG){%*4Bq6qhczOY!D(tZ&U03a{|gbJ BA&vk5 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$Compiler.class b/core/src/main/java/org/luaj/vm2/Globals$Compiler.class new file mode 100644 index 0000000000000000000000000000000000000000..8ccc645a5cd7ec33e482a1b065ff7c5b81f5f5da GIT binary patch literal 338 zcmY*V%TB{E5S%R~ZbJ)2aOK7UE?DB46RKLMR8gdUfg4#-BFBzwr-EPOzz6VAh$StR zdYavxnSFi#e0~9#;ZmSSxN*Lard5^P){pYpxQ#O5cIxV;G};UF36n}~l{Cs0a+ z9tk4f2?$Sj%Z@IcT-c_K>*%$rvt6vKKly$GZIrVoEo!r)bh_~JqoI44{mP1-Bjv#?hCsZk;5z@Gmj69VCc je*zGndy0f}!C9Yiz)Z?<4`IK~BI${b;gNizHe5$0DI literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$Loader.class b/core/src/main/java/org/luaj/vm2/Globals$Loader.class new file mode 100644 index 0000000000000000000000000000000000000000..aaea5b082054166780ab200db34ab9467ecdfc9c GIT binary patch literal 359 zcmZWl!AiqG5Pef)wvDY;^ybxrUR>~+qqJHGRw#J$u#HPdSa-|rrs%JE@B{oPaaxNK zJiU4I-Wz7-^XvTszy!wvJ;Isul{BqteJ!>zJ5XOyKD`}Li=!74r7SY$X%Dc{@RgcQFI=}qapSHG)wX-=Po4l5KwIM-Z zKseb>t(~0Be-(BuTt?nIlmg(s5o6 zLB1qk)G>?^hPBu2@KH<@dqKoC z*LvG_wqiH%BNY|Gz)>*P%yEZhLXL^hI~UvSH&gajS46EXH!Z7fvCLes9k!jvuGH4M z5lu)ff;R0$@zWrRRa_?&{}(26EZ=v+re{Zy!`Wqz)5RFan&L}TP>|X33i4X`U69Fe z75t0U+ VOUAFmNNNK&xaRmnG&C>)?JtZ1ohbkS literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$UTF8Stream.class b/core/src/main/java/org/luaj/vm2/Globals$UTF8Stream.class new file mode 100644 index 0000000000000000000000000000000000000000..da8ec1b4ccc9143fe56aa9afe2fc9be89ffa324f GIT binary patch literal 1008 zcmZ`&YflqV5IwWqvTa>TDHIb|H&pm+Wqdf5AkJ z;#)~He&&mbMPrOVz@KD{aqdz?jDDECbI(0G~^7^aK{L8qL5q&B7mTR zkctCP2_65GnxC7>?uJu|AT8!aTv$aDA_TGtk?9p}UCS6&=9;dRb$dh*qAFU@$^?V0 zAdof{2R&pZgu^(ZAg-bvM+xEm;hY_3TPFAui}_?hkUIpkli*7vJ*nd=PN18Giz1BMjzi=s#uQh z-L*hyN&H=0l2JL&GK8jS!_;T0t3}F{QM9`h0r+bYNgv(w6!`On!Hoe*IdIg z9R(LycDLlh)!!$C(5zLpOZt={q||yd`vjE`n9&{gvgNo6MhLC@N~|+EreK=7ov&z) zqdWW%|C@u*URTk{t&w=PBt*p=uoo4r<<-aLM+Ss5>}8oDc&(|(t&gBor1Oiv1|^lQ zq47QAgtPpOLT2|KkLF#3={{QM0VDl`fo|j2XuF4qb6@+$yqrr3SDbdGd^c)n{)C>Irxe@bOe8O#eo+xUM2sGx zi#E_hkI_p{kfx^?pl2AQ=NO_F7^j!W(`#I(O$=~!7;@|fnn~Dq1aXcrnQJ`H#$!^i yrki)fCxM+5(|hkAepApJDD?J^SRV$x%(58r)?ws$jWSolFh=D7_hJ}h2>b$=&Bti~ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals$Undumper.class b/core/src/main/java/org/luaj/vm2/Globals$Undumper.class new file mode 100644 index 0000000000000000000000000000000000000000..416127964705044aaeadb0290a1b25d42d6cb50a GIT binary patch literal 337 zcmY*V%TB{E5S%R~ZbJ)2aOK7UE?DB46GAOiswh&$2e`qC5;=BcI~DvI2R?w0LM)+F z>S=a&X7=^<{qYH4ic^6e;llYsnpRbEQ{T!5g=!BS-4W#BD-Gf4SM!2y7=DcjF3*>a^1wz*&r|^ zob5U;cMPjmuJyT|l|~ar+eL4FrG&wg4)M{2C~!j45-3F(%3I2gYDl@c;k- literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Globals.class b/core/src/main/java/org/luaj/vm2/Globals.class new file mode 100644 index 0000000000000000000000000000000000000000..6ef651ac93a45b190505890aba9594983f986ee9 GIT binary patch literal 5359 zcma)Ad3+RC9sj;$H?!GHNJv{?xw1eCIY~vWGz(bB0jWu#NeHB+mf77QS+YB`?#^;q zJnB)k*86CwSG{W0YOD}SpoO*widVg@TJL)N>A(H>5x;MCHoLPKw14cpo%ep{_jkPa z=E{F&p9av2e+E&3N(DX@epCtEU}h#dlR52R=b_Yw&VigZszsB!K-H#%k+8N1R5rJa zRU?3E1wj=xPzA1c@oZ0;Q7xGj@Q;l4^bb+wz(MVh)|oIn`;BzY8nH6EmWotk0qPXg zt5}EzfqI)JsTmWUBS*8Ao}wl*XO(jA$|Q^;cL3L`xIwa3QP0lZqf+2v6-(q)rJl)1 zBbTaJRv_se9#*hIV3EsO>ER>|iU+YAjS_^gK&W}ZMdY{?$$P$9#TqmTD4CpLB#a4x zC2sOLnRGIMwJO%3nPwhH7;!x#u-Z+XOhmJt!+O@tWny}tO%tg>E7}yatLVUbfw0RO z4+a5MN-szeXlc%ao(I$-aubmj&p0$N4Q^8LDr^u~oYJQBZqtZq)}Dkl$$wc(Gc3k( z?X~5VstD5G*Qj_cZf5uy1C#Eyd9u1ZB4A@$GN(s^*oa#cbg78QWW3HJaVR*JG_$&b z%>@G6g5D!BJ#8gSqX7ap1#qiCMbwf8ZBx;W9sys{)ZzjO$DXo$oR62sjJMS-?tqqf z(}(Q}cBtsbZSEAeBf=CqB;DS5pbX%h(Sv%-Dg>+);09LffQ;6lz(x;X=iBT=y;O*T zodPRezBn1)#Nr%gG3c2fhH$$qhhdhWhoY7-3GJwacDF#Jh-scZ;$?_SV+l$D?2&Tz z3JkvjIrG4_I~2k47O&tAfkxL_!P(uTeH-)LD2Q?FliuFNoSJ7t%UA$+3kW-#G!;?A z1ZrhA?aG*zX&p_oL5>vJO55Cg9OloInLa1fZXdde17MG-lKN!(SmAcG;LL!%%+8U( zK?PG1(4@dJPsj7L0(X`5xuWLzM!L1mMX$_u&iCbvn5@Hy0>fiJ>6Kj}h(4rMyb1J2 zkuC3ttN~whe@nk?nU;zi4haNuMm(2FORpQ<`U_s~b_gN?9AOh2GQ$Oy^|F^7Q}Jfp z!(gSf%+yFOoi;O;&K|%`><$HQ5m@7i&$irw1A0b}7n0*R-X@dd?diR-yMj|jEKr@yX?NSY z1=g2U&X|_bG85VIE>xJNhfyu7bLVDBx^1#|^KD!lNJJw8OO7CR< zB~Si9+DA{QUEsme$UB62M|NmNJgH}!2267*m-aYpCa`lN&vFtJ%nl;MLq7pV%$qfGoTz>@=}gcaz*Pjp8}FkY6TwQ z^GV#yCoK>!QdWSo$HZXkN!-|W1}zmBY`=`DG2G zZ2=ly-#UY><*P$&9Z#Zn7H_b5yL_e0{*Z6FtEzNH300j(5RJTGuEi#7##Z!jtRUJu zIJV*zd)$Zph&l6I=qk#+$P@DMwp#5H9`)g1Nh)D&#sKpuHyJtCbf!dy> zzKhiO9Ai04Y3C^K0<}L&{TFG$b3Cq{qx7eEk$IXrE?^(m_H!-9HJx*loHIC=;arY$ zhjED-fCo@>m4bZ=0t)&RY*eT~DA*)khPaB5*UDAKf?p&Y2AldSmcl!jdr8kvaN4zYbW*oEp+__gL@@KTl*QjyAoZ#kna+z zSXHEae@DG#%Lvk`8GLZMy<-+1v8!;8kSOMhqKjXRAePb8<){}cut=<=sf}1G!e|q# zuu-h$hlVx$oY2H?2y1!oUWZZ9!uw#W?aBi97uEe6Aq5v+Mr9pK00dL81OyM--*Fr( z%{3>S(j?NBv?8&gjQf6vdmCYq$q=HiAC+i)QlcSWq~i}&qUg>7NhrFYhzM%MCfmeH z5dKoTF5z+Nm4NSYB)3r5s!OPq!wf$25NgjNHQw;ZX?)?loI8mx4z?52uM{;k$fOoM zSSWh2O!Q%m*lufMfh?@%+GUEbz<2RIj`b|Ts$bBMAKK3! z+s~ia&!6G9T)&Ooe2Crncl?d>_ac7@{(fIoO(_BVf#Y$Gf8_53e}CfpW4r|XnS59H P{uf^Wf5qSM4}|^;G&5;i literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LocVars.class b/core/src/main/java/org/luaj/vm2/LocVars.class new file mode 100644 index 0000000000000000000000000000000000000000..97fec5759b9fead56c9284ca72e9577042b58116 GIT binary patch literal 1007 zcmaJ<-EI;=7(K(^0B6!@b_bHaiI1TP zMAHi&z=tw^%Mt~PUhI4`C+9me=j`|6=goHjukj*{2%;KdI^sw$WV?LCO^3T3^P<%i zmSRYp*{-c#GDP!*W(rB9G^BOhfzGfly^iS&dDk5E%Vu3#P44*&+K78D?+b?Q`XXb< z8_KiYP9+dp(UC!x=)U5f8dwah7T{|-?ge;Uxb1&cX{rsp)mjP+WXu zIL_DqHc%hqqcO4s7*y{)cjN3U@exya9p%{ptfC2|aV`G5JO zh9*O-D%+Gsrf$39-LT&h-X(82grt=0`qM-x%=}XAbVCk3OPt#QU!P@s8rY;TUP-B_ zpAX&&btT(=5>F^McECz3lRzO214Rudf!7j4?oT+jJCZ$NhPFcc=iE}#yJq+_Z+u1! z_1|!}?Fc_tm$Ek;RBk6bhb%N+UJt|)`iD7wIByHTYbH_Uj?=J}sF44f>k6;xaNifc zhNlciw>&L-s)jPd{{N{o>Y*yMxtQBoYRi}9kSC(lSwr~NF4jLKBUtbonutj zjjv!vaRSZQo#3vqH^J(cY1aX*o74dmiFtw)N?5@u&ACY$hj=toDoyVMHjFW}ZzMP- pnK4#xa3A>mTPi_xpiJb)R3pgYh-#A1JblL`45Vpi;u)S}=NEnl`XB%R literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Lua.class b/core/src/main/java/org/luaj/vm2/Lua.class new file mode 100644 index 0000000000000000000000000000000000000000..1122003b9ec3fe19f00893ed32ea6de073253906 GIT binary patch literal 5498 zcmaKw2Y6do701uDY%MGCvoc(}8Mc$Aj?>zZl9H17B+H3vSx=Q@Cw5vK*%ppsS#m8o zq^2|h%ARGE7AR#D$|$7+QV6A#4Q21WO4)m_67xUzJ;|rG%akUKyg@}m8C=0v7DpD9dqTcgLb zV`W9|-MK=pyjPK{W9y*HH9tS^B9tyt^YcDZv?4$&sX8av)wxp=$NYqP> ziqsxIt)kT)S`(nP)byAkQstRkVM39=RL;zlONVmhV~W;v#1?|E6}z?$vyJe5t5Mn8|la_`~Iu(;E{pMkG=JtI^5Xej( z7|{b`auw$ON^lta%8{}+zf;GA7aG{Rr{7HV>DVw1YV3F4gL+g@$TfeO(`L6J;8PER z>^{iE{QLr9?#MQJ)@wg;E3Lg^VEAD&S&kVjSP=6mUZ4d_7~}1OWxt9<=%@)x&V>)I*jPgA<41(HJMU z)^0x#Ne?6jO>L^Hn$l)y0PDvNAOOW8+{a^^Qrc7zfV2nMX3PDyDIPgg^-ynzor=VI z*pQUln2Y{uSZGj1oQp6DQxVS9)=h&zh&5HjOEwk%{NS+>ftAGUF| zVQsjn>|)KlG1JM_S!Kb*W49XAx}DN#`JVH+j&l# z(OAWVYmRpUZia!Rj%s#G-b9 z+iXiXW~By_dIq>XdH6vyiNnhgUu^q{98M=q$J7N=e4ro4CT#UYQmpE>vv2?@<~$wH zzVPni6vpkW?Xd~V%^h~zLVJyOanrOpGlARGt_)Nv$w~z$q%qbTjl_CVBZ)|Iq&GH@ zI>?^3LxEG4O6qG0d%re}H=&}2Sgw$b&rXeIXVRI`JS={k2q$Q$@B)kC0K%rPDa^Z4 z#cfkDV?S4_d{H?HeNj1eeNnlhDa6MvhjI0%%9*jr{>-#9tXp3IXs=85;f{fuiEP=L z?$=RzQ4cLt!*Eib| zUihJ6v5fb1X1YIHK2{trdFk&+!V&uw-rBCb^iKq>y1Kf&^l!Xfm1=O)qkj4?o%7H< z-jRHRZC?0MkSm-hPG-C9-v;)}yf-seF3wz|=qC9pb%ge?2Q!87e73YXRxD1=PVZX! zvJ{rbbWC3}on1zLMCk3`O1tD6+Hn!iO2PHus|5SNPZiALjR-yp&Ild_j|mpXUBo8@^Ljm9Fz=_6f_Xn(BbfKooZx4GuNC}E z@O6TD{Z0u!4Stqj-e1oa%=_~>g0BZZSMc+|&lmgx@CyaM2>fEfyq{ho_@&^N34S^F z6@qU7zfv%thgS)HHTX4xZv?+q@J-;G1-}mbdcnNk-yrxF@EZl+3VxGdK5uUp{1)(A z1>XjKo8Y&DZx{Ry@H+*+3;b@ucYxm`_)hS91>Xg}Tkt*Ldj-D_{C>e_!1oFM0QiG~ z&w@WB_(@_7cs@~*8Uf*J9b+CSXab~VZho93goHTAH{4E8!YjCyTTjaW1$y0kf z)w;M-jmZ5C^h;RksAk1}{B)yVRR`SQ4CroYJhyb_H$waC<+O@UFOKULXn#}HR;PUr z1zNh?i>Iy9Q2(~7Zg-;aYqe)?ss0f3zk3{g-7@-N=zm|$(hes}L6;uD*#CHmQddF5%2js@#Bhr?GJYbjWZOynS7nKXXw1U zg6m?P!429H(3Za2X+`H*Y9;CmZjN=Hp)K3+|LC4|M&dSV>U0?i=5hD<8G`I$$U3*3 zr7oho;N4#LE~>}z%aKnV$0zJ01yvqji&L~&6=|EArYq~ABLpbjPCpWLoVZ}HB@U{Z4K2KrZwa?($But;;pKT&v3_U7n}Q zW)8?`(dGHNT&K(R#xdA880{!GHq!lgwAzn0`_bM=*TcA}ksiTgvkvV7U2f4KUucZN z-l5B_9#lIU>0vy!8LLrVWL$yrVm;|Dqsh9L0*kIa)ruwmvtE|J&|mRf4gL={#NTxJ U4_*FC@fr5x?_@QqR=KJ9e<$(4ga7~l literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaBoolean.class b/core/src/main/java/org/luaj/vm2/LuaBoolean.class new file mode 100644 index 0000000000000000000000000000000000000000..8a29e9f37c6c8878170fd7940e0aa075ffe57dda GIT binary patch literal 1247 zcma)6?M@Rx6g|^!ySrtfP{H!4_+6?}1w^4hLQP3Xs)-gzATea9Yi-%?Htm+gNAU^x z;}1m*i6%aP4`sY}cU{RU2|sq`&dj;zo;i22KYxAu0icYv6k>?0Pz)rH6c}+j^@7!t z&B9S@u2AX89clGUf#gcVZn$d#@!ZUg4h_1Blz~1N0@-Lz$#E=G+5+N;zC8^C0_uUk z$+?3DhL90RY^+zRWr4BEISfUe)D0ULVYIUKa=WY{OOe~@nHt83;f=JqCUZ_0n8cJo zUw6M{y3&;g7Rk>3!|dIsn4*lUeC26k%kBABx^CcxCu^T8G3hM>w|OVIA1GCxI}>gk6!%@54#=HN0gV^7Y|+MWZl=W;41F5Rh>(tDR23wq_M^f^8JIi(Okc^Ab<5Doneo{2bF4C-X zi)bF=cSAFO2~0!a4n=v&;=EM;6e2(I73wEi3FK%TK%B-W#JNN)%d|T~ct3BPWF%JA0xnZI=GM70C+xOnGgj$2ylxuGvQGF3)J_}Pmn%F z@&uQdKIZB6b!?I+fQnduNhNax=E7Q20Y`#4qWWLZ;rzv*+XP(*ueuPhrhR2v=JGKT znbD}O-9NgFbrp{&=P_CAo5i}g8UNMwiVl}9rb`lZIdp82R_vH^g7Ih%Ome0OHjJA! l?=>9AeuuWJoZ`x7T;nkAg*X4c4E}$Cn%CzQS)n+F)!%JB!W;kq literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaClosure.class b/core/src/main/java/org/luaj/vm2/LuaClosure.class new file mode 100644 index 0000000000000000000000000000000000000000..1b485a2fda96bc84976e58d3b2aada86485c9ac9 GIT binary patch literal 20743 zcmeHP34B!5)j#LX@@6J4Gn0e?CJ>1V0$D(!Momz51PyCgL{yk06Br4Zm`o7-5K-e= zms*z!TK9HZ(TWrTLJMj?abN0Em$qu%>Q-&FRz+mK|G96n%uGQ1$+!J}M&I0b?>+C_ zv!8qKyN}2BY~4;o6I5>xDY6-4H_1UxroPeUMZ+6fLuU+MwzO<`RcmNsYh!IJ5^ZF1 zj*K)$V#hPth76r!kc%nrjL@>s@YYzQVfdKl=Fp0&NK4E^2HD({MW#X7CV9!n)F&P3 zxQ1v;Yjc>%-4YAcE}0&UHZb|Cy3h%xO2Lw2QZD5&aT92(O2IR|IU0+`Ry2hxJpc@t z)SLP+nL=c1)3Q)QYj^}x{*cs%z|kD(suUK2OubT2p3o4j2{p9H!2L|>PX$cIBCCz5 zcPgeNET|kng$5mL(jjyxpi&Ta(#YgW64k;KoS%wnwvbyFZmHEQ4>IX68qDOGI&Jp! zIb*73PpF0nGaj+n5K@PlR3r~z1l`zTP)Ryxv#lwe~|B$rd zI)ExC51r!y!$+8OBprnzW6|nZbEI(*#v3x!QeZ=T4Ld)aG{X6UTw4qd>3^WWRjZ6-DKO*1T6|br3np8&+gMI3>sS}{!RIBc^8PUWdlNM71Itnij z*S5y+(8RskSSp%1q2^HYqL#{`JvV!32{jnB)TBm=rdxgTSx^WRu>Sx znhEA;HisL+p_Z^V7p8uDC3NTAeN>Qinf;FE)$xYqs?ymHQj5_dXw&>4NSQyk4{Ghi9ub{rcWI+MY3Jq{BEJBGnFuH zlvJ`QBkp!WC_36h>u8IlvHQ~^S`tWnwv@J+^jrEJG(KzQY(%bLDx+X!ET$ykP$QID zN;^z?K!6<+$5d5Mu+g~>kTn0^r2mxYXG5HpAU-hZL;XZev{~wZH|b*wV7b-s50n0>0a_O8AwDzdU&*?D z;NK>Fq3cVd8sS$a?b7w8=vjhrw@KfKYHW?+MN&_gOj5VkG)6IFEoEi0%>uCM4wId_ z-Vkn-ewWE^_P_^gTI=h>&B%4>!D_7TsPwSO*#>(}_OTy^oMPt|475%z-n2i)J}0-5GJ zYB2-X&kiuTkPn6^!e=f(wA%Z888d-WKGfua8oD92K$OpinLJn;oDDHSAWcI}E|U3~ zI~J|6yhvJ0OfHp_;f&~nftb$2O+H-DvKkSj1*Xj8BeYs-5$B}gC}|L*E99OUQniKtW%T7`;0m3O2*QuY_D?(_*p96j^HhikCw;BFiqOW z<2^sUSENgLoXO)E!4Fo`v?2zBD%b~hNfk@@1d}I8#y0B0p@vAP#gt{gR@1y2&%dY%$-M8IH9!YoDw(c^1!x$=({m^hsx&zxoQa+Wn&q;5Idu%gN0|1fza z%QUzikx8$M_hsAFY4exlS~h(}(9vx0xlD(2EtDoVG=vw08pbp)YF!#`j7?Zx8*Y*v z4HuusG+?&1Ad$pZ7;TaXU`64y=?f;DJZt8dF*8r_@G9DpOE%i*rgeOw$rtg(655(W zwc#4gWp3tFMOeJl(b{lJi=G8dibj`UHhM&w^kF-?J8k;br4*TQ@f95# zE_(Ub$p$7oe3hsb6W+ev?R3`S=IB|%7xp^DpnhWVHGC};q^)089{Xq3NqfiimajMY zr+foYG`BW3>Q#T*o(wp_u;EZ$rJL9CjRxOj^3P1ak%&w$lrQc1cXBCW-+EB4dBSd zm!Z1_x`#zi zJDCRepr@40k>t=K*+)%&Ox(y-A87~+GO^(&Ony?5zaPS#0*47L3R~M1()qN>&j_WS zu1;~XKbZU+Ki^?Q;$2MRGM&o`j+s`Io^l}|3si=D(d0kMl-Z9da~eIRyxqmGV6$Or zw6LWKk)ROSr7*d_Cv^SEHpMzCM`nt*WAT~EQAZD4M(5K`EdA1_&!Dmc*r00-8f@@CQn$Ob z85;a4d^g2y@MLnaX2|}lScuL>t&oiey6ddi8@0E(M%F^0dL!FYt$k`DtdPmqMZz#i z9vB^XV=(_v)0A**akQ?*#k-*niB*z6Dhk=fd%)W4sV7aHHh1a*qz!f{g1WmUkizit zCTt3Z>k32lv2e5Gma1uE#-DU@N#UYs3@DUBl1S#L&J2WRJ5nZ=94_UQn+n{xU{E7* zcf8N3JRX&$OhaYE{gfA>q$}T96YS&;thL`dF;p9iHX{k&(A^M|fEII;Bmjn623Em| zTAL~}ouyk#%7e3H2fkZp($BlE;FH^q-Gg)zg@nfHNGuG~G$%JUhMUJVgj!m{$dT^O zsA;HNra>9}^+dLzdNCceZ&1WXi$^*b8*&O8)DFs*9e3R2$jb(l@G4#R%R2znmAuCw z=C|aY-=;o*z&r{q@1W%}Ob=`*ON%xW7i}YB-ez)dB2Q8ACh`}Rv{SF5k_V~p8uFAp zKz-v#Zks6oK8@;K{N|Grzl+FDmtc^^)Qch%q%)`l6YjsEraB(7;VJBu+z$I$D26pm+#s zLu}iqc%J=tR65UATy5J-!>haK?G1quc3T4!#lF~?Gz`0@<0+0vn1T0R^-w(Gxt}VS){v{Hokp*h2CH#Af@t0SG)ZAks7lZ& z&5>7Iz-1)clsR;T76y>z06*S9B=H{y$%&x^g`|x%b!0zCc*+KvX)Cey+d{KTy2!&6 z2!KC<2Ct!Px)wUU4ydp_okVpsP>Hnq$kWBP;_Y}`2rRyz<|~>j+OkA#5w-@Vz80o& zBjv~vJBef@s1bVlg2x3_Ma3Jark(2B>5M5w#qHFTLC(z>^cJvpD=^)rF+GvQbOrDT z!Q%zf6pOvsIyB&~7cP;i{0%OFJr$L74m33mLoC5yGU`7dzj_$26?SU=CXjPC4FP|B zauSG7cJ1q>U=&Scd45#_jHGs0(V@zqCA-P!kV<7zDmQ=#Cy4otNTtG_6w6&`A?l}p zEy=9J{VZISK|90}v_mdIyQ8$aC}{8E)Dfp}S3kPIxE2yRs&oh1x~sEnSaqv;Pc0UMr^=mnZWFG8Mwq|@mo zc={_;Pp{HN^e4KM{sL=y16K4`E#r&HZOM2*-vq+1qnnJ=#hlUCC23CrVKJk>n~E~} zx}NRS686cGZgnt}D)#9Xe>|_9F6;^rRtS9u62P07B>2-%s(4|w_Cnk71xdBuPI)B- z#Rc|-?R05%n~md%_lin7^^sSc1e5+NI%Ph!^g$|>_}8OTzK@|kK(_o48S(?X`Tht3 z|2wSlW12z#&;lJpj&H>7s(2UWCty?-r%Tdowp(j=QTSlC;05mtE#8XHLM#X%LyxnS z8@6&6jITl>GQ#N96N2q#Ji4DO-0s^4wze zima^OyyRWL2zmmpcKUfRD_{&ezQFH1JBJdh%IyXIQLDsL{3ZC2zhSr@$Mq5}Ob8HR ziQzPuAP}FA>wa7xz@Lu6brP;?aNUFJeWdUaxK`kLkjU=FH3QcgTz|#9WGJpPap8GP z0?9cU*F0PiTzJNLDXurM0at`;6|U!qT!-Nri>raigYagKB+9-X*C#|?w0rT4_g*4j zJuW=!Ke#wxFD~%+Sy@&c_eD?%ngxEZuFY>VxP$jmtNg=mp%KD*xpy0_n-}nIpnJC4 z>ux6#Hvw;1oIC;VR{9MgsI?O!+~yrgY)*|W8#Nhc4Y@baR&8e6s|#`;T(!pgDF%vr zKa$>ZN5IkMNZjas4d88d-arpk#}gl;0<8?ubhgvO)p76kv?dUJb`B?2%`108OLvkl zXa?kN6$mqm1J1H`dK8acjK?f?_w#`{GH$?*#~+r_=aoA;(aT*Dy`yYD&^;OVx;nW4 z9l-f)Jo|IG`~Il2?*X1|^!z+Q)j`Z=da*j5eGPi-3oWkaRk*8B4Z1r(_ARgMxd8sY z#Jvm}d)B(WrWp&*B1@Ks&*-l@h{^}+5cGNcuGv$sBZ!UKRoB@Y@;hi*G$2>MFylu{eG~P!3px0{5nj24i1Vlk^JLdpN zvmgyP?R8~Ve=oG19x#A(WghpbTUc%c>^Hls+U$v7_V#j#&jH7c?vcUlfTL_@;xk=t zZHaevrJegp34#+ZeotxhK>_4L1JiB0?H1Rgk||sdeP5i1bjKOfI2*q&&OzOA z7HXXNkZV~x57Ak!lLx!>8GAb8aXJ9GHNam)LGJ3f@j^k)1GEZ@DXzf$!b7X^OE?a; zdbE^R((2Vxz9wrI{Ndg7XermQ1^5wLaCfnW!|4{Q|3RhuS<@&}c`mN-U_?(l4_jF7 ziW{d1@wn^@!9rT!7>ltHbK^#Ncd#STFsQ2mcMf^F9L+Gj4s=#Cex1^J?A*BXpQuQG zJCCT2JKsvyQ0T#rM4R}(Kv-?~wGg9cQx838vT&pSx^xdgXIa2;Gv(sOz7XD0w}nT> zNd$qaOG}_m?(2e{Ej-F%-gz_i33>n`Zqm+U_53sLJf=%x^4!Dd5!?90c|sB}Zsw{AZ!mi&9V&k2Yx5-nz8k4GT*;U8Gap3M zPp0pBM%zaUJ)_lAT->$uw4ir=2TILR*?$jK;D!pYko)gMk3pbEtOO6#AeJqB2klpQ zI)oYY9B3kB4S{1P)}NR|KCWh5TfujiAzEg5Knz2y_COdI=qo!=h>{L?pwJ;=R7k9W zaaQ<*&Y-WIUas&5eYSR9hoS3586|r8C*$+nyyr?6ZehO z7m&_{0np_^@X>4dc;a0v0P$u$45C8qT3&~HtC~hXU)_Nevwdv+2D6Z1u%?ySg1ydP zwzynJ=L#$e^a^J!%@4Q&_Bwl=EXS;XSnjiz`vd-f?+(fjx&z*Te<8-gFUGEK^J7op z9rQZxpn_yCs0DN#wj4SD-i*^Q-RW4^&JlaLFW{30EOb7N&S#Vdrn=r4_!Q7kkbg!p9XmQz%m zY+Dx0Zs)VBJh5@baz{g4<-5aMZ!z1#~C zIBwU<33wOU>q-J%y}RNClE1}iz&2hrFOOGm=JR*Rtt_0k@&#BIqe1ffCqIJ4dpC01 zBjhX6T=@e=J6{s??hsDbfz!==Wd-_tA_c3@x1%DjGe7id>y-%fvhqW(WPa$iANe6~ z2OUH+Ja70Pqjgz_W|ix5Mb>q?d^u~El;&~fxw?GF{7TB~k=bK(*_M5oE}zPNMM`gf z|6@{Wd~fpQ8lRMcPfEduQsa|S@S)WBq!fHo3O15d2JZ+pl8;oQ_-M71k5NrrskZS*wVg+)r+Kvc1CO)y z=JB>5pI|$jC)tkRlWb$T%GSVBY*C(W+sHF)n|YRPH_x^u_+rXF9&%m~$kzI!EzxXB)3@Ud$_< zPx3j=XLz;q&wQTqb#8Nh#1}e0;Y*ym`BGoS!tn8rjR0S54B%^wA$+Ydg0C|w z`Fdj#|J0blHyE>cjS=RXjKzG5(aN_PXY*~wWqiAF3*TYH`A%a!-(~FKbuK&K>zc{y zT_^KK*DrXJ>u$c^^$>4$J<2;=Z}9`J_xT~$C;WTYr@YfWogZ;W_)+(T{FwX4{J8rz ze!{(lpLD;-Pr2XXr`=!hGoBoN)-!^i^Bm33d&ck!o)h^+&piI4rwRA1{F3Kve%W&o zzv8))|Kz!W|LnPiU-R6~Z+f2Pw>)pCkmns$REcBm;zBc|>_GRe53jH^s|4#JZi~a}D|2X=d;(uqqg8tXg{~`K6L;oHX_WD%4 zH^~3?_UEs?19`W%gun3~&3n9aIpIAGFG$0Rz0Jz*ZB;JsdCKj*N_o6LQ(4|$D$~1O zWqY?MulHf)_dcrfyl<#p-Vap3`>E>fGgKd+srveSs-Lf)>hBw*3VcVYLw)1aK;INK z$TvqF<~vml_SLH)zNi}NTcL`4D^;=Y0#)L>7Uf!1>bp%1^KC-8O%3;LSBLu^RU>@Q zsWRVNDBo8{`94y|`gW-bzgt!M{c5CtfI7}!q>lHGSEK#&P+y?N`on6xf3Z5j->4?} zThwI#x#~p!g{sPbm73ze8Rea7nm?{)`ZuWA{@=61|Cl=2|Ad<7e_oy9e_hS@zo}03 zzpYO5f1*zJf2|hy_oz^gL)GNus@j}%YPea>jLNcP8j{es?1;O$Sge$gOr zX%LyP*G;%H`0uhyPNNO}csE}8^2db*f_^)V!_t~5LSOK zz5xFx5CXpi(q=&#{K+nI0k!X2#>Y#JDwelU`z8~c{8eo5KY`Ja0*bf9-I&)LB@m$Z zjg4{>ct4&3!|7mo{*QkpExs5fnd8w=6A%q$i6p@5>6) zVZW;#_DdPPM?H&crYSE&*j*&1sih}1!-;z^u?)x`SV_j>AGFfl2YxUxiJfV|^9Nt~ z!B_OmFEwBM;444)N~c+noTTYK*Z3i?{9ni`KKv!<;FL90Mu0aM$NzfolC!&cDLU+7 zZY*ce_N``ELTL&}k68MqfMgmAjnmV(Z;LVeH`z-r6HdZh6I*ZH7NQxVzKp2xQX7;~EACd?55LAguCU}A z%I|pS+qYB@2@XybK*rJzd)xy2W&Ded*nwK?$6CPl3tAlfc=_oU}lbW_a=t6?{d7YB!mT{r>&n zN;Z}9x}nXmdi^0rmcgG1^5R}!k>g8(7o>&JOf~FA;M+z0_JahEKXrpFeRohq1Rqk#-@KJ?CBi8l{fq{!a0Kxw46g|~ zig)6Sralt-P&*%4;SAb?4(V{NuW;t^&oN4c(a~nCuW)tTyLRAw#S~hAe_7}bU7iEt zBKSx`%5&&kU0NS#oQT89q@rZ1CJLxCsX#T;VAVpEDn=u5KU%fY32GTlQOjw8T1oXN zBWeXLQD;*N>Sv=o2jxZT9DTfb3c1YPG|b?&*rol%CK1r7#afCgHaOS93`IfMhEqNC zBva*72)Y^<%;GZsQBukmgDLs&;lVtPSJ+j#gDadO$elE*Q?y4V?}|6_uiE);h|IZ@ z3WLseUJp?jJINI^AW)4#S~rzDg3d?i*piLBWhZ4z(ayi^fI#)ZofIs%kpcyBza6J~ zr7Rc*g@J(LpgrK&%KwRv7x)pJMd!zHJ!OskY=yH}MtA|gJ1I+UU&2#RY}hdQ5Js*SSLh16eNL?!BC8lf)1H*A+e`j^pEbp=(cD8W{9?i>`?2KG(q0EogtSHC_n{yfi(hP52c$e`G@K1-r%cYF!{WPuE#1Iv zVCtD&P|i9*rsOMiODQtSau0FRJEOTTpN0@ylEI)w$gDUBfW=D5*6N{aW&>8xgv0qCvPX zRzIVo)XlKhTj(U*&rrA0$?7&Ol{|9dxIJ^hE^5mdx_!nKCWZ)3kp&T-iQ}aXm z$$93qj|tSz0slEKPQnicv>Z;6!}Wm2R{+n7KCQ2cVk5u4mEX+x_6jH9UHk=PYJEgksGq~ZbsLWD|Aq#3jb(l5a0)(x{1TWI ye+8uyzMV0Y8_#~Nf4|Yc3Hep5e{K5Lp??kK!xOo9_CC5*`N^$vRGtb@@V@}*1g$3k literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaDouble.class b/core/src/main/java/org/luaj/vm2/LuaDouble.class new file mode 100644 index 0000000000000000000000000000000000000000..8f37be9b1e2ef20b403ae8d7c10604b964d599d5 GIT binary patch literal 9673 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaFunction.class b/core/src/main/java/org/luaj/vm2/LuaFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..5916b73bad6fe8a4fade7eda1a1c4cc8a2097b31 GIT binary patch literal 1914 zcmaJ?-F6dI7~LmLGwF1oF@VrguwZG^v^0o_ND2zU+GyG;sYQ!gPST-ClgwmgPP*XU zhw#z|@It*PEG~Qi-$@qxOeQ3qL{`>1zx(X(?C;xW^6%?c{{Z+ByCxzSF%Y#dikQF| zx3!#TJPFYo5XACCB4OkXV;H1F0 zFvDtq6Bze)8@7^4mg=NDTL>flSXq;N2@CHbDR81(m!9XyhV7|#N#Jy9p>QA%Wu`8j z{Y+7{s?L5kNhPN(oWc7fZOEFPbDgqOkE*J|k*B1iJb}5?;K?CmI{G;alREmCat}N| zhF(2yVHy_%j6ST|$;^tubc_`=Z(FzlVs$*}o8zsB7)iFm@J#TV@Zp$+aXh5VuEyIlVj_ku6W?Ro zz$5)meh`@L)wk*#x-~m^Or58*D$B}kJs0?`-{AqU6Jfv$zVjfm{f-GJa3H#9uz}E?d0~%(49(U$E8C^X&ENNFw$J zJAoc>iL-l1vONY&8h?g>*9f_fTmYP6uNfoJFyRfZKj7!RL--b#4)fh2VijNY;k4Mu z0B(hdHRJ=_G5kL1y zL^=KzaeRj}}O)cSz?eHQSKJz9SK~6z7LFOMhGdbG9 JPxu9sZveb$tIYra literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaInteger.class b/core/src/main/java/org/luaj/vm2/LuaInteger.class new file mode 100644 index 0000000000000000000000000000000000000000..0b7d4dbd22d219fb0cfc76f19f900781cd5c52b4 GIT binary patch literal 9691 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 xy*x<;h^P@zI^R79II&>TkvR}{{#3QN<9Do literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaNil.class b/core/src/main/java/org/luaj/vm2/LuaNil.class new file mode 100644 index 0000000000000000000000000000000000000000..62f7756d339e4f935b026358949a3d128666fe6c GIT binary patch literal 2533 zcma)8Yj4~{6g{)M$v#OTZRsN^0SfJIQnDqK7T8c|^MDQ86lhwhl^}R`-HkVnUHpjD z{{-SCQ3)g@zVf3`&v+cm89Pls#CGPMd+xc9xygV3|Md@mHGEw|0mU*(4NPEC;I!+F z+IDD++xvSJL>aF(@EWECPU^T#%ND5n+k0kU1V-Ox)H4~fNKU7MQvwtFQd*6yuQzZ8 zX9X&TH!?lX^#m50y|J-xv~9x~weJO<<%~M5BiJNGQL3A1U=|mc%Jycr$693Yl-Qwp z#T`=IiJs+{o8eyH^tP1TQt2q64clib>2lodkIg~QY0bOW zET1*ChP&odftvdyNTQUQk0e~44Q$sBJ!-zz%m`djwwy{ISSX$xLpO~2TWYShR;hwV zk3(k=Sgs>*Jsv+ixzNJ?hSrbq*KWVu4dHyyo#<-anSDY^Y zssTTw>7ADWeoWxIF9ZCPz)QHyr_5%SZz-|#JF0r@TeLLMijhYrvqr>x7FW`f?h?0< z7x@)E@*N_t;JrAqthnsV#KOOr(n-IeaWNsCBT%MOo}WJXCr<0U_i1crm1f%WkhrUm zO_DW|nMac`qX++vmL+_k;}-O|-xF~SvX_dFf27GG9d-Z`W}n!NqYid_NHJ z5oF6>tj{3g6LfT3hObY=GUQ|&(l__Brf)#RO?;N%j?yNZdiDj)$WQl(H9t-4@?+~5Y6#I77W67R$U zSQLo`55Pkq{_7!tZHX*$uCMQR{xjU;{QUL(2Y`J%EFptz9*T+ypfm{ahRN zTUy)GPxPK=2;?4{mgznf$kys71r+$k^7^NSQ$z`qd8jI`pe!&S_doP0fyu$!zTxVw ze%hnlLOag+arR_3S5;iYv_PR_TOHj!wgq--2|m!>t0xX3p;^r3F)y_i1ZMsT_uM-> zGaLbJT-m^Z*_E)UqJkx6H*lR{(3?svnZ=Rom{yk_D_G6rhD>8Er8@zZT41P) z_piar1w$pUoy;eYOV$&GVf86v6d%EGRs>2%w&!$=m!=%}@~EsWc?C+9qm(RV4Zdy8?+LwaFuT}xlgnLf4Dk#w{V+Qa!Xt# zmz~akj)8Z1a0j&z90@k!+>Xyl*(k8AA(P;CNi@*>FZYPVCS>$TPbQeudqQFhTAWkj z1wSLPJqEW=Zf6vCnL8O*`HEt^;sc(vaF14IxXL?|73Z3bOH9Stw$I*AV`t**D^mQI m3)ziOSEcOrCV!V$j(Z&X9&4dTHS{Qk9tr$4!Cl!*JopWvuPF`y literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaString$RecentShortStrings.class b/core/src/main/java/org/luaj/vm2/LuaString$RecentShortStrings.class new file mode 100644 index 0000000000000000000000000000000000000000..8ca7e6933a347cd67f7b8c0b4440a69a64f963ae GIT binary patch literal 451 zcmZvYPfNov7{;HhTf5b|f6j>mFXF*@u;SI>Whe?`f)g(uMpk2O=~772o&8GUK@ju< z_@TtNRd&!3k~jJBynmj2e!YDFIK!5M5<@ptp`TbDdvH)? zXvTcO{e;WVznaA&Fbwt}l94%Ou=e}6HMm%F;CWa_ouR+F=-#ymgfx@KRGFVPnxUf# zIMq3w>Y_X0?Yq(HA}0*xVR|nZ8ly;xaWmkPbCGKD;ay58)G*;%3+mhcKO>IFU77xjp_lukTZtBZ43P%Cb|^B6m4jDU&xNo_ rr(M7YlC_r7-GTvb3s3K0FR1<1hp^D5>=HK6DI&urMVB)3-9_&k#3*5A literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaString.class b/core/src/main/java/org/luaj/vm2/LuaString.class new file mode 100644 index 0000000000000000000000000000000000000000..06548ad06eb4843e2772a67318844ee53b3e4fa6 GIT binary patch literal 16590 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 JsQL{J|6l0L4DtW~ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaTable$DeadSlot.class b/core/src/main/java/org/luaj/vm2/LuaTable$DeadSlot.class new file mode 100644 index 0000000000000000000000000000000000000000..0a1483276d5cc0b336f543c94d0df0fac53042f5 GIT binary patch literal 2457 zcmai0$#N4{6g{t{=N6)cjpPa2*kTHj+8{!}3^K&Af#4tv!Nd+^Y+KJRVIe_#2z(0L zY}jN$s=$O$l}a`&@;e!-Qbi!=wuGgU5ZUzW+kNjj=MH_P-(UUw3xM+|L}4LhBkVw< zL!s-Ix8Y?=UU@ltW#N`tTvO;6FP4jIXB9%J^js7XY_kz{upN#i&O?)?h87~3qpTBRtG zc+bH>skipM@66rpNF!szbufxUtZ#E%T_lyQin96E7Sx>9{7QK_$fpf`tE@VFPLyOF z9Kri!@(Klo(`}igX8#NJfrDc>&Y|MD1y^0?0A6_BKEk0GvKs$cz5oYGBX-&9J^{X^LRU8E`kXK>vU3@HtApr=M*Aq zm1lIZCBsd4)@9wzBRonhQnQP_Z}5>acW@ z0W$=?SP^h%x?DE?RLNUiHLHA6-yLE3P;4wHB-?y*TbhM#%iu61xMvj`XCW?&ip$rM zRl_sJJB>WwUZ%ByFhV@{WS&B0+@D}Sz>epL-Eg0x^C80S6T~y4PtgBk05QXBoFNGR zfpGXw42J(gGW<8L@VN`?HJP~G6E>1I$rW#3^G(AeD|l;B1J_VZ!#SRcZX=n;i2sJz z19ZvVuZV48=ppQ?k$glK3!@aH?h^b~E zKZDRwXuUnig7!=Fuxt}jig|oq1KiD11Zvixzgc4^U)^ZU*=ovJC+Nq`&8yUAfeP6` z92CeG*eQoQ`V6TMs8P*`^cRR`4zcN(M~CWF@8#G)_n}YsV^|MjpB};iJsjwdA=ER$ zmcPV~pz*SzYkWDTDz)pa@=0s^-Dfy#37uPq51Oj?y=iK%;Q};NRhY=s zkd9giq>5RG3#L>bgsoHP(P^r71LzP`9|3P}>D!u>KuhBc9HAdKYK{JTl1p!|KF8RN zr#P8+XHxhPY(1k zMD%fV>M?Zd6X@3`F``c)rE|#Yag6CRIHS+vlAZ|CabW$6l#MaY&R**Kf(k8siLZh) cg0FcF@OgrNq`pCvC5_@cwOr}P)} zp?ygEkaX!`<#7mK74%l4}d&sNkkA;p=gL9E^wl4 zZDpHX<5jk|b2VEvEW_IB2*g(!t%iL^AezoplSp7pMN-3O&;(|NLW*5u-PmZFi}{vq zy=B0*$=|7TrWk}(jb_)(NwOmvCL~j=C%49M43jF3YdC?E0w)iRBXOxv6gVA9dkm*F zoWYd9SkIMF-W15ELjs1kJ>j`P)%|T*;*5q_S)WoWm-13YO2g-vrwS@Ie-W4tOO<&h z;R_nhVUapIrY&$I6g*tmaC>tq&I_c19dZXyY_zs3&9+LDRb__cQ36quk+v((+$FfB)l zK!O8kwCd&?V$y|7fjfp}8E+jYMrmj{n?hi;Y^-ZYf$@rMyxe|dy!QB%mJ>tklWNRv z`={be(A9l^Ffl`}2&kRzhI@jhMlue-vCW3np`yhgpFiz^?i{%-Q=(JhXgM$9HrWM% z+~~|*rK25iy)cyQ$!PQlYGj_D;CIW58g*88E0o_c-3Yap+@*+H=1#ju6Rd`^_=X9d z@NejGjR!mDu}-?T)SD@gaAU=NPTfYMItr)97?e z-kve7*D!4QkH9L~=5c%pxnEfthm3ug=tl_+p$5-5s zAv&ulr1%=Qyfm^LNg0U+%PDX_hZPUE=yV9sWJ;OwZ=8||4>sg6-)^%J!QROt1JHGX z?%*2_TIDLWUGTIn$by`Rfz~;_FLXL6^eKhbkW!xEobuckDx}a=-1Tz!LiJ!RFNnB@ zwIEIeadjf@^Pjvc?;0zVH6GEI_b~S>oAMitFeuIS$j?qWDk9pdN|y;5R&IXe;iTV}~J?sJpDw8GOW2vSu@8d!c|C-1GzVq-)9)A2i^qQQQ*vG|Sh)wYK zeu|r3$mH_BnDEn3lhd!r0pGvrYdT6zS!yVTX-@1Na~Y ze`2DEB!Yws9>9k(p4qNQ+H$dTW@pa#bIzXq{paWyzzXgg&=AqVO+?Yhkgj=~`AS1< z=bP2Je4!y;i1mt`T5;=Mi=l6+?3U{f7$R1-7)K0o9fpa1m<$uWk&at`DqA5wvLlIw zISM*pB8hVh(Wa<0B*Rdllc1iYY!?^VkekvY zw#yjSF=8T(Q4;NB3-cIaTf*O3u9e6cx1MAj0~uV=F>Yc4S9{n9`b0JqtXeBkU6$i0 zSPD}nrg4oe(QG8DJCAHdex@@*f&K4=Dt(`2CUAfw*u1hae7`D2rYs1L2@I289 znyf?|hQwN3Z0tM}uS0aimvx2(>n!E2^Hbk{kpzgl?3Uy^s)n|znvpZPs77P0*6=pu zqjH7%nD{qNv)iI6h-_8*^~W`z44IDWN^iL$d|&#+9nMStsp-Ku4UI-at5Hj7;({Gb z5JjDyD6WISqTRfjXo^Yu7nq&ihi=d8Be6$E3|U%J-~itR=N}R0pD@5b(@j6@kYJo5 zqr8~?6Z#>}|2RSRsdN67)*NPNRdP!tr)&+YZ2kc$71O&gRQv)S`9_yoAl!z3#|=7( zLK}Lhbdo2!WAvtUql8R!itf?XEb_D}(aBI$w{ujQ{Xbd#&fxoq@&ih}dE#<91SFKJ z_lFotA7V^7YqzBB?1|-GyRy_JWmuFZsSf6GgzRQ3V<2hM7t;*i!~g&Q literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaTable$LinkSlot.class b/core/src/main/java/org/luaj/vm2/LuaTable$LinkSlot.class new file mode 100644 index 0000000000000000000000000000000000000000..c2fdf0cd7fe09a912bfc99183a2c4c09f2cca5ed GIT binary patch literal 2983 zcmai0O;;OL7=CUtWRfsIAt2BXqy<_?uu-bmHm%lDuqgeoAV}-ig$xh~GjuY+_Mhk< zXg4m}b1b#(IWArJ7yLNKg$oxhT)1$d$LG#WAWRZmWNvcjd7t~dU-!)q|33c?z$Cs% zB7&$6%|H`k0*BV+w#*i#wVJ)Lv~DiD03HW!|IV(FO*J zHkU*PQaU;fbm1j|BL{F(_J&CTy~86ljPtTsHa)T)1HCvb5GS@^<;{E4F+4potqwYB z;Fvn4X$oA% zy(u@$3ENth?n1#`%o+j!NO*UOtr zrsL&>J+@MCO6-uqa6|6iPF3|wo)z}HK(02*|5M7lT5!AH(_ORkr8vl?iCn*Ei(xg1H57ELtK3r3;GT$rwQX;hSzn=_?kTzK+UjEe zvO3WL(5JsDt$fie4bIs1MtLh&>r~awKEt{DTV@^johrOPoA#AwKrtbU#o2;uGP=gJ zWtq-IQI<+3OEO+HmAu}e@BU4f+^Yz}Dp!OK8V%J%p`LR(%FOn`P-feY1ZPK_Ls#G? zpAj`j*-;TS{J5$Q+n#T4@!J{hN4d78pF*TFPoSqqpP=P2w*+SS?0^PDe}oqO35n>> zXpR2DHynxqK|fbPTs-{^^c}Q6+O>?S{phcJa`5q~jyvuN0ul;+WCz_}hv2^v$XOV` zL*z%o+tqDz94DFhZl$P*Z zjY6cz%fT41pCWgJ>}@{PGmJ+nOnyCifznzD=R^yPZc&ml8cJs#AoT+07SlV(DJ@TN zArSQpZ%4q&Oov5vP*e(CS{DYi?uw``GT+%1bur-Y$$XEF7l*;kCdtS6B%m54l`6na zW&bUvxU_J2ju{}7aV<>`J|#AS&+xgoN-T3#HMYV}9!35dLyS8Tn^1q}BrGk?KMxXi UEKWBhwz!_-dYA7VxY$PTe~fRZx&QzG literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaTable$NormalEntry.class b/core/src/main/java/org/luaj/vm2/LuaTable$NormalEntry.class new file mode 100644 index 0000000000000000000000000000000000000000..fc0cd0a7cfd7a9ac1278e54c3ffe1206f9f43076 GIT binary patch literal 1033 zcmZ`&O>fgc5Ph4h<9s*`36!=8g@zWeok9diT#C3kaNsX+0Eq(Pzz^U@A!ZXJA`>67vzmSH&CAUA*Y6)c0qo#v89C&2a040&3@tx6 z=(@2u>W)V@y8T$(7kjSU*zuy^DMR75<2lhChP-JFODLkGqimo8gP}d2Iq-v#a1(z1 zSdz+8KMfrUHt8>J|UMTwTikx8P$dIt{(>v z(##taqUQq11!N1J2Rf<iUtod1q?ZaVBm%1x z8R0bh3-nKPnbHa>$zRb~n+vU`p|1(LhBlqb);ifz_H|{cYX1YPZwUMiH2#*L7YR5e zG$|?@xf$%#!#m1v;8KEXC&DFVxAh&TKBg?cC*WnY((sPLf5q7}`~!9GimD3})+E+p SQ*2D?)Y0KZnnWF&DE9l1^0YRiZ1Vw14Km`OJMSM_*B!CM{6InUHC`OH5X6GQE`P{_b?Q7|-XXu)X)ReJ9} zB(cd{s)8m+m=zIcG_)bXzzaKDL_?xyg}XyTC%PEI1=o@47}}DRM1dX=(5;~d=SYv` zJC-epmW01o!v*w7qE)v@eUe)_6-kDk^74X4F1X&NVarZL(GOj;J!Y_m?2ROpIZ74SuT~Q zhEKVx)QtF?<(R>Fl;kMBNlM16GFK=(Hhx)#*kZw0*_b!B{#Hk$WI3zmQ%aenGDtjm zg!t&9Tl7}U8A}{WjD}rC46Pg61~p~D^b2=fpQLEBj$?XLw&DAxPvNB*ZKxdEx?@L& zZkkd~cdLdT8ddsg61RYCh+Y-rG#!`eYZQva#q|RydU_8LJ-LVYOWI<%LTi)Q=I_Ay z5hDCO>iGxSiJ_}R&`FjNu2z4A$nL+ekZ|&kv^M^Oc9RwX4HGneh*Rb0Pqcd#*Ju^W z9#CS1Y&yM<*3fgbk!_zJ*vHvti0Nd{lTLm24f^kk)ae7H1YwO-oe*X6&j|A`i1Dvz z=HJl4zoU!)K$cJnm?&TZ*Gt)YWT!yo6Ic5o23`;<=s-})Px_n0SUEf`@cS4khyS7! gH>8}KxFzi%Zj()rpVQ5l;$b?WLF8!dCp(SsAN}4GsR)WFexL#-9N=OTk8&|F8cB#AFq(KlSX zCAl-O9y&wOoiLaqF|(bXcwk1W_Tq!;yMuxa2sN#8*b-tM8Apcb#wui~(UqM^OC$;W2!aUK3}gtABomSei&{70 zzO`yCphW~UE@%-o1gTiNU~9E5)wZ^3t=7G*)~;eOzwf#4O(v_qe*T|7I`ih;ckj99 zp7TA+J@@6gubwSRpC(v@?|Dw&3_DI1XNOd*tPQHoG;1)G|J z+offQMQN1I6koA)-Z}G^EL;H++5JiAS;kh@g(I4d*P@{^%G?-i-k1O~!!7brCX>6d zDb!qh5g2mimX_wNOrR{vcGC!pMp6z_MlaS@2AhISHO(N?fU90^sSq1&(HI(wH8lmd zHisfi{@l_*7G=*c-l7SV3j&%iCpSzsU{h?2%qi_WGcP)}XB21_$RRO_eQq6%6n`f+qUEw?{nG?uaK z!JfG3e;}=1cz^}Oa3&I{v}gsL!;~m6TiAdVhkzCa6RYT4H?6klJX*t)8k1z@_U1^a z9&pwGUmtGV&J@Tki*;DK?!wUe$js6KnxG`L#U9ev1p?pG_j>Qv?>(bv?R2>S=ukOXp^)j zIqh1+&7!G#iy9~_JV*Hw6by>wK9hHIsiCpiq9%fvp=?d_su>b~{ z3cm)ZgRm!%*kMsCT?K2YC@o_eHb~C|x`s;JbS--H0s&U!n4T=@dW&w5CAmeoT8fHp zvgl^VCDk^-9ue^h z#ou}=7OpC-Sg`P1;pGvFzOU6~TUL#Xf7GJG&iD;24eKMd;RZK7K0s_<*whqmN}zT+ z;-(I9(notcEA7IW#t-12@_INZ$JM7Hi8yA_59lc%tUkCYG(X(1J{Vb58`+3o&5>Y3 z1ZLZdm@{$!VhQvZJuNZohv2*C{LvxW;(uh(kLf2-6Z*emu@0jrEP7TVi^exbh$a5q zqUS`2=GLZQqe%66i(U|T$JK=zY9brO#$L4OC9yHHVrj)f>GO(3ztTY+M&hQ|n9_Tp zZeGiV4Iv2kRWd{;zqROf`W-yr`i-IWo0=WTW)1*0XMr;E4U68Sx4=fQu`whzGPys@ zqVnjCD0_CG^;LS?qCd*ao=Di9R+xX+qCbhH7+7E$F&&e}4=nmnuNwXn?Xv2RE&4<- zXOu0hkY)VEqQ45X;v?a8;c#6j*dVQ+S@bt8zxBboI-&G;i~b>$k|CS9lFF57Im)Ad zS@dstl!Ql%;VSGWX`rHcIBC(B)Cv0x2{xJX2hx4-wRXD|vF5KV>S8R&wV}32%z5kp z67K5_5F_toWwF7gURihEH@xrQXtsozIL=}>doUBsGqm~Zyxn`VUjI& zYAI20VSk<4fv5K>qf_^ZDA8u9fm19_714S$#%#aLX%?q*2Aqlb<>jIJ@D`}OZx+}s z!n~ETw4unhco@^F{;c(rU2iU9g!;AjcB1UFI8%_6qM0oV2dfta*GIxlut(0aIGaZZ z2#`}DLn`af$3P`@Z^cwX{vQ_%vzL9UH@23#D-ef;pqn-=ASy@W`}fdBqmbWVi?9Vm7em z^dHa^Cb5S!GWlX;9DIo+31<(O zMtJyAi!YPyx@Ti3*jO2Ek_{zaVeysH=$6LX4cn!y)#9u8YIJO_-4Iz2-rArys-^ur znQa1kU(MHAd>vm8I_tyrjlm}PR_tvD9U|!+-zd@YBKdW*#kWWZG3z21tc!=*cL*D| zT6`Pdj@E|IHbk%iV!p#bZ^mMgAdBy?_`4F`O%xoax*18f?HXDlwRMwMVuOjak9Q(7 z;hlV!#oyyS2oP{l3+qDlp$1IaE9G+bq*ySz@3r_I?SG_$+=^VCuSn;>Rt1LRN1f#pvE}O6MaMcQA5XPiS*}L~<3T3;H`OTe|)D z_!Kp})q=%g907rY}B&X-_}7W_m=#U^Ml;e$?SvztF1 zpk(2=1rgL>wuH%Mtw)H}wd#b*a7)wr(4tzYMkhsuIZ4!jU0DV8{s1##UbCD3g+MlN zSkw{9&HouR_ycg8?BYi%7>qPWu%SfxYGb&%*~4D~@LQw=nv*+$C*sg9gd;iY zLOH0IRp$hobAmZq{W&^W@bD=_OuGU5F>FM0YMb>43`7u@YH4u}yeW1(nY9fdU0a<4 znTofVAexwvGgY1|9`t#ker_N>=pqzGhI7`{*63CjQ|{L}BF@Q0MOawkJdbiSO&q*; z&YEybBqzKfr(S!E^D#k6oQh9S2`bU8EcgwDZPD16QD8aYO`*xQZPq5w?YAQVKS0EF@qVPN@n;qCo^~MiWKAuSeDfRrF211fQ`42_vH@bF1M@VWl%pDb#ZimCq86^NC{N>> zDF-*WE&v@ICxODNxSOHr5~T-@5C;yE`w2?ICG`o)codJBU&A-@I((mp?=?78T8sPh zHIYn*NInvL@$`wBh(D{HhQ$Ua>qpfX9Ksf0gAC+f+XHzHIElx=HW`?If;{=h+sHJE z%mVx_uz$NIo}h$@?c~=_;sRcmH?GQSnipXfqsZ-bdtLj;8}Pc#ssgXOu$@M=y1A|E zV+_kRi`+7@$b(*<{WM$#yQ?O8-R(3k+VKOMh`Eo(l{$lFar0=OxRHcV`FtG2E; zWKl{>WDyO)?*=R?OsUj}Q>)DsKplJrHPc**P&uxZ)Pi$|EmT8W@x6sEp>1?E%HOxr zMYI>c@1u+PH=r_;lDa5~OgDMl{9E}S5ayFK{1oo^3-Wh@kDQZ` zo=Ed`M-5{jX$6ArK)!i|ro>c$Tno)tLg_oS-U^)oyEPDq7K!+?%<7VS2rIkV=%8su zW&kpVhyjK(yk-Z@Zl}3skqZJe_oLP8%J;gmtF#;!w7MYh4`b39ua$Z|q;ms+dn0Ag zP2@+(dIH@-Q|VhMY~Df(>DzksLrHZ(baAqJ%3}N@Itj3{Y^xnUafkmPd(T09+n5A^ z@%wh%{f>X{^z%FYjI>3E`gGihE=WwBj@<;!z69?=k2mFq_2xA+e|`iY2D zzkUb6k`G|8t!)8BBK`dSz~hv3`~YPHCpKM z_u?qG+jP=xIvbdFk=qpSHM`e?+Sr4VKz;|+Jwa=;diCfrbT5s}?)9w4=)1`iFxsh6 zgU{x51Of%o%K*wNREWBGF$&M?=rwq#-@qHauGcV^5{8L?83zB-1;J?tgtfxfaF2i@ zYSs5>JFkC}G9fpV+?~}g6+mFvsDQtnBIN~eqr2djwMdf#K=|wq+6pOXW!qfZe(6mh z?k&xcMXHlVVoqDMARZNMnL~U;050lchj^MzJW+%(TV5FgRv+#aP%4Jt>7au;YTy7G`L@9K8CE(R7mWPSj@ z{vl1Fj}W0h(Trq}YvfY!(WzxS55G=gaz=QFF7-|@Bq*xDN^jgn3vjt*HcWS>U?b^x zZ|2~%doqVx&0Gb7pL=4IIZ)`qnGKCk0g%s-FZ>M<`5emsJ2?CYEvA2KE{Bn;lk&MY zqhEk2@#s-TTOc=KbO!iZzK15`k|FB3wNPY}Q;>g@?ohP4Lc;e^+Rb#R;3(aVs%~4? zJBR7Yn5=A<^CdXy#A_m7!R2&O9)3^534jDhi;PZ6bJMb+C*hV@-aP2WoSk@#!`!gk zObtB^ycDgHf)3iho8kk0pm9{p$7v_Sc+G@8s5!;!N#K}ANI1o74i53lus%V?5+o+W zu&%b-mr$f6b;}|`*8qj;oJ@I~LJM$Ia5fLoti+KyJT+68!D}rJGqW6K()C)N*-e(cz;^m+jHtb?42owj zrSVWr3=u;Pl<=yGLur9SDHBTqzEXtSTfiJ>#)I7f2xel7>L(v(MFo}af;r-#&!M;< zFc3kV0TU{Un$ScDLu>~G;RleBA^XxwN|g(c@G~X;wV={GXo!2ZJ%TNk97^I*G?GWt zX*`BzpkyyFm_=q6UJKGe2X=$7!@q@BO7GW#db0#3>0?MA{18Vyv)ks|z^)W6%LDE7 zi`o9&+&_EUkW@2_XG`RquywUGIvt{ty$6c0arvf~mxsS0Lp(2R678-ewgJHqX#$P;b|ib6WCLj&gz!$8ptzSUzGvH_p!y(syx$jG-vAgdKpI_z zX@ju6^?J%gnR2X_y@^S280$jCN{e_qmGVVY#`czE2)Vw(0Om}@W9&P${h$bLv#k=qHnK#{H)cZ`K;UlC!Y&#v zLYG*T5{*@HZFDKLm2rGGrP{9YKZMNgi&Z*M$ZGL0t57WM1f7w+i?V#?Q9_xe*yVGb zphTbRsO$(1wNWbYb(CES$&|}1kzNQT#b#UA&$6Sm8CyxAon?Y*(s9VlW@8`Ck%p|o z6Eqb+5ZEpIz75+v-0Pd}xS5<~Rzal`J2>GGu-(@6lue~tQ_DEMkEUS&n3fWHd+hu2l+cxi=%|Cypy)$*;RZeUB`FP9lVG3@_u@N571%0mtN-k z@CHO1y^Xf_`C&x$N9Ze*>J=a21b&oL_%P0sAH$jM<2;HV<_W07izkAglAYz~j8gzF z0`3T9outH6gxyi)z;24m-AO5E@1)^wy7LQ)N08$8qPU=yfVa4)G5PJB3@~dbSM+p~ ziP(PFqD42`<=a8)8Cd0y;P!v4`A8yl3WW|#d6sO3SzZybv4>5Z6fcNAu>%W|zjhwd zMsL|rI=+V%YG`R-Wjnws6zu3^q!^%*IFupDbVhce&sA`gy#`f2+5=H92HJTzGB0$A zZ3mEV@22rK&PNK)_kfUGCGnOk_<06?;n9F{T5c5{KtN+GAM^MPL_7~N0v?G-5@X_o z&Mt);;Af14MVHU446H_4WmfgtoUKEwAbuXQdI1W05k-NQ5SL$ujlP1j#8-iv*Qf&3 zm8G~}!@r|-*cxx)H)sdHMK@r#`dxmTb|R*H4=#Q`zmHAj2h_nI($oAAu<|i|%zxJM zFQ=rGQ;1hk^#lOGH`;V%EWnM#UzfctfNtcmMB%p)g;9s--HyonwsiOc!7yHqv~B%C zo3=kSGyRu}qw2An=TFfS2jWi89H*xzGo2?~>Tm4Z`|n5waVqZgu5)_NgYt481Y!I; z4IlB{h=17n+aGC@-_dIU`se#QcnX4r{xMDF=?TqKG({P7hH`1qAWxhk#W=iN=gd6T z2}@SK==8W*-N8kDcvUH&h}S-x5xZd}l7B4K1NKm6DxEwkgOZh(d}pv;b`tYJ_8J#wj=;sA>`n z8hqk45QopxuucY_ve8;D3>?45*~!Laq<6(?lqQ9=Fm(><0dmIgkZ1)7aS27nETh|j zO3}kvsn2$xCnyeyRrgXp(th(-{@64+iBaPaiN;fsnn1%4V<&@5no zbqbjdg01+e6nHMFk|}w&z~N|xqpnfLEIU`-XJ@A1Dao&+z$&nU^e!e&9n{qnN>o!R z6W1IyO;4ut6ovShjT!KEf;|HlV8yci-fPS@OHj=8nyDlA(GqbvQu9GfJX8O~gKZr= zyU1k}#btY4QdUEc>{h(@R9$$Y>(kaau<=p8*Yw6M%|g+0cB_eo$Bh#0yby>atif&A z(PyI1gq8>O%Fkb}e&LC4212Z#e zn3{#f&Zb;dLiy@UnyTi|nQAWnE@3_`Q444p`mI!pDX2=RK`o(6RT*8U%IQYj??n3^ zwOk8n1SNb0hsB(B3bBrT|G{@Br9wNS;aXfUPP{bkNNyL4n&r*E;2cK2= zoR80Xd}{Ft+=9}g5pQvVfPDSV?)k42kTj&k7mEKX?=sk6jR#X;wI}w3XQj)(!0CDyDCu+f4-nN=t zvtUd(N>H~0e+Y1r520X&YSr#&@l02z`~kSs#qd$~bGu@NrX{I4KS(GK6tr_i3AT)> zfMbDFKs8hgj7dc}0dSc`ao)JpoP9LKYZiFpCRG)g*{+Q+g>C!9f-+H^_Qsjj+wP%w zX)JPSYk3hvbKV0Nr|#usP!Jcb?y zQ%9|{4ZCdN(Sz^h-h^uZofHoavGW9SOrxqO(dRxc9PFX--bB|va=Y3n!Sp6#nr%f% z-XycSDA}8Y3T|Nk&mJ4s43!jiMB9ityd+b9++?i&K56Cn)Gk^&*GXPGQI% z8tqH96V^0e8Zr}~$2-KV_ND3aOl2EQ@TES(%XiaAj7mPrD-;!_`Qp84zEt@xJj$yO zdxV7K-l=U}ds|Z=m>az=nHr1SM|Hk9ZwguqR~KXUHQtn~I`}+qGU98I&Vx>1BL%d0 zQ&0~CA<2n~!OOFh*4Fj3(<=FqOgltANZR%9LU0*Pj?yaIx^4~l;-z}+^T>&nWXo9+$rm1UahPoa$a|6v&H_{??6P2o)sZ!la=c?Oijk=ve>N{{| zchEMqlP*@f=xVha_H{ems`kLC-3_O9fbLQE(nIP#dPLn%?dkz~NIL4fUgX2-B|fHJ<{zq8_?PNe{JMIT|D;~yf2tQ0tLK$l z{a&T3H`OThmYSsAR;Q^ysSJ|@`m?%H{Y71?{;FHzK=FJn?eRDIe}E@lKMWub9e|m z{Q{0l5_lX{d8I-#7!6ndCz=My>x8=E+;61)92MzP*v;}H9wILmBG&ij(dHDq2sg5& zfoDU+>BO7n>LiUp;KAxT$pDr4lF4=oBS>#i>iQZ|NRs*_z5iA3Xex}YFSgQ<5MHLW zJt>XAy_C-4^sYe42tD#)^*PEEAEHKSANADASoD|y7aGlQr^*O?B*mJHkKD^O2Yt>@ z&53#yl-SHzw71ile<64J4~*hV1d~%b0C>nX)|w+nZTfXwXWBZ+pFpx0m53X6QR*?S zT8*E#>N4WmbF>b`o5pIfAM|645P~E3DQNCt1a{Z1MtWml)=Nz^QQR9>AEmsp@d zw_nW8GUc2t3wt!D5Q#z+fAdigwzGU)kutnA+89cw8N=ud!$&1XCe1hew8F59o(1F@ zJ+uqeX#?;O6zD@QjnM8E`5_2FtdtiV9r10!A|%(JCWTwR++UInc5(yRb~!OSfa(}3 zX$u0n)`&~1(UpykJKDNlkFlt;Ut=W287Pe!qaeG{G{P7|!BEPML0_#V-h7AlWB-C1#6#5xke#PH>S}nV>&H1PNQW; z5mYvVRvD+$xyBi^#wgYcKs`&09Th&Fg!2}$LM88sIt$qhm`P2cP#03MH<$7zDp1&b zd3>&C$z>cwttSN;w$IhhH=qD`(EfQ-%&7DshA|rvxrBxrXHupy2P&FN0b{;qA&Icf zLe&I^rTEJLO#CtBIMc5MJEESP!~Cr>91;Sa-$vDhzq7hbW7d^*Q16F6LLVEl_GD$q z7qG7}D#$XHV$x-pv|LYygSAs~q>fD|=JO{<$uUyX; z*G7pr2;e*0y50vbcOzS>$Ok|B`qsFO)qu)*m>sW#80TZT-=I;(1vK8MqC6u=Q;l`l z_u2K;3|YSA=AB@wlQK}%ISK4A|E2plN!~;eKa(cwzYmp^!~B4pVDZB-|DiXVMvY!0 z2qn*R^It&(Z?HNG3`3COGENWV--kNkLCH06{sf9Ruz?!!<1sm%^2rv|KI9e8+a5ik zjp@_2g<80(3-O-GCdxAE96h?+NkGyF%rCwYuacr*tk2>{V`_262>}z1=lynmvX4VI zHtYVM_2@4vP6$YqccA`TbpNO9{=5W^MC|Q}EI-mhIjG3;SC?epMakk4)A_iZL8bE# zktuu4dnjF6@#{%`#&(h@Z2GIkIGyrH5opOj;Q?=)0FOlDyU#!DQxNCmLyDnZ7xrWF z*v_9}(8#Foq;zC_t^iV4IUzw}_K7d9gMV_UI8LVbx}M~p+p|M7m(hMYz|T4$J{#{5 zk#RA_8<)VTeG?MC6!5u>W*C>l|6W0BjVr0j*g+eNR@!1*O&1&2&}GJTbhU9k-E7=I zdyE_DfN>MuXWXncQ$UIFI46W|GPR`}t`tuvtbl(ztP7HZIpAdlNeGa~JPU5{H?xi+ zhG`Q8wM-iN`IUBJ5D8I z#Mvk$EkpGwCC&pX9+evB;eX;f#Ka7^rXj_w!ZjV&8eB7QZN$|J4*renP)bn4luzN* G@qYo47{<8( literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaThread$State.class b/core/src/main/java/org/luaj/vm2/LuaThread$State.class new file mode 100644 index 0000000000000000000000000000000000000000..00a4f3f3ee7fcdc2c5392b16c13388441452a8a7 GIT binary patch literal 4853 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 AZ~y=R literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaUserdata.class b/core/src/main/java/org/luaj/vm2/LuaUserdata.class new file mode 100644 index 0000000000000000000000000000000000000000..db95e49f30345c6052eb16b91bcbf4bd81edbd95 GIT binary patch literal 3794 zcmb7HTUQfj6y0AgOo)R-kRqsviWU+o-m12E0}5gdYUS2qD-L0VKr#c#1Z(g2>mMk- zS6_Uvu1Z}#bhR%&^fz^Nb$>Hok|7Y6J}{YlbIv~d>~op$&wo$<1Tcu7qX;0VA*3UW z8i6J|H`kLX7z;fs*`qzlf-zxa3Z_8K>9m!0&I$xOyC!N8L9K?UjxEpyc2xR|=gr)# z;TQtZ>~z}7JBF1aMniJJSTTAshBeo7WoE%lIlU5TtB!ia1h!_*$V03K(W&Kvpp0ehA#sm4X=(5_=I_VLl2=?r9yd|sfj(;vz`B>4^;&~Q-4tLPM{ zFOyeJv2?yKpHI(OQiP$LofX*bPr`%gnvy_q9SL+ZU&g#_WXWdxx{xZnC?!6mqX&mc z&$+W?=5lsUAmN8qrd?GvkKm||V>s?*s7iF9vx8NnSFBz^Hi>U^7{uv!-agJ@4H5SbQ+e#VEWZGd>-EMVQzje)15~y4;pS*oK z`lY;KS6kT+Z|R(^A&!l?Tre_3Yx2vjnqQVNf?*vO@wPz7T%Mj0XswoI*Ob&Lsbd6} zX+3srd{CfeLz4ZroiPo|ovf=m-jT-Pp}yqkpq%tk9b*{hNzS-!E(`457_B(Gy^>x4 zlRDnTdz|ESzBnOn+q)01>v$g@25Z=~T( zdli_MJMNmQqW=VS^yauenYPT!h3t%(8}s&0_a+6a61IytwT``zR|_a4r%Vl-waH+r z@>5gCE^B(gA5hJ?Z&#I^>P8(SwK!rdDWY5KC8vzCu4{{Zwi(RHjo~($`8QaJfXhS2R7ui8C4BG3bZ}n zlpE2@i?7QFw+r~kH$QaV@qLIGKU;Vg#tg41ev8vW+C}4kK*SS|q5bCC&hokyL0;Ps z!XDJ3-Ssn--!Xd0r}ZVjc=uz}m7N>t2JGW?Kb<=Wc7U$8(5(O@oS;P{{yVfM*!Gb3 z0y1okd)~?G9D{o_ck)wO2V>fU3PTAvUxFj{auhCOT8U+Hn0whJ#t;*4v$ zsK8Gv@Ma(QDvQiW_Yo2@gMd%$v&is7L!jxr#@DMr7M4Pinac**H1l(=sjW;0X()SQ zmoMmD=<&oFy4LX8WKlaWve#XGY>a+1W58t)glHxhUwR7CuX|mk?iXmZgk@#AU!|!i*m}$B#1w=Rj+j)7Sk(h>SZ>@%*N4(iDG7rgv^)d zo>GvFRHg12w!{-paO6H}9^v&ek~a!d#p=}evqVI3P~cTI(J%#mrki0Q=RFDivPNo$F^H=ekMaOgqeZ$$1Q9DI=Y z3y~37#%{M|2V}o`z^xoxkW!dkrNLzGw-{uO|3%CfgJ==LuapEhNl&S1gB0+>Drz6$ zlAHgP%KS6M{I@dy+XUecI>j{0{UVv3NW|B0ZB>%>l!y{^!sEP#sgdqy*dCWpq&_!R zp@ldG!7_bsTUm(0X8$j7;VrvC>ky9CiGR^T;m^wzFjflPruf&mp(`g>7KlFu70qE~ z+YwLvid`-ba=C{lsb#{`aw93P`nO#oH3+r^T?Thb3(lfQKXDPm2(%F}h>r*nz{mK6pRz=s^Y2r9%WqNMeTN_L6I%WU@*Fm; literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaValue$None.class b/core/src/main/java/org/luaj/vm2/LuaValue$None.class new file mode 100644 index 0000000000000000000000000000000000000000..afbf0c293f22719a720dc605e9f619f1dd4679ea GIT binary patch literal 1072 zcmZ`%O>fgc5PfSqwUZ_dO;bwK1OhG8NlTL=#3fZPRZ2}=a|nurIG|0iq6EjT{85Q} ze@CyqaNy%m1QI`hU&Ak;%vu(pkX&|lX5PMeGqXQ_efx%epkD#Tc5FK@Qz_8CLb#_;l!vg18NaBH{jPjzJBg9uWnCXtHvb`yxf6bDfa) z-=6T(SgQ)1VR`E8X{UYf^j+vNRPm_v?!N4)DD zA(wEL9fU_-5He&9*R}lvhX;X8iWTu0(4-wm^yvsG7C|@R)32jQiM$F~MmANy0{a*P z*XR^!EF98Vjv)eCCQnc)pP+u2Kps)405 zu$~~-5~N(nO_n~U)CTS+z{ey}h|I5DK&@XQtrYTKuqYl$_}iI@2NY2uX>ApobgiMD zFg$?_g(Ahu1qxf`bBR&Eopbs6^7^M3(7!Y%F^xj80?l>n&s5iA4Z!?2XfLm@{24bV aXZw`OY{zsDu@l=(G{|O1hDMT_DE$V-k;;4k literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/LuaValue.class b/core/src/main/java/org/luaj/vm2/LuaValue.class new file mode 100644 index 0000000000000000000000000000000000000000..50c3a02a823447c7e305948105a43493c85afcb8 GIT binary patch literal 27128 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/NonTableMetatable.class b/core/src/main/java/org/luaj/vm2/NonTableMetatable.class new file mode 100644 index 0000000000000000000000000000000000000000..c69c9aafa30327ae4295cbbe67f57c09979c9886 GIT binary patch literal 1131 zcma)5O>fgc5Pj=7apJgX2{h0&4NwX=c7;){L0qaLRix!m6eKup+9gVGZRC%j{3i|| zfj}Ji0sJV$tmC4_#u5k5?9RM>J8yRU>-UeJ01mOQLqSP{YM_h?!^Vuyx#Mzg;=CBo z#972pc{25;(Nl(!*&EeRMNNZlpbmqf>jx9Zjrq)(U-X?5-+Rf&t~eGEkK}@(Jm+pq z{^oE6IgI&8CI&hhSl6&&;2N3?n^{!C$6%a`w>);ELoW&z498{xT|u~)izmE$3Ee=$ z4Tjdr%~uq(i|*=;7}Nv*oYbukr=B>8FUBHB3$DkZcqRC|=VB2ioqNr&mc|n06xAdD zvJVVfX1>T}i>QfWDSKE{N>1MLWS(&;`_%QL0Turt;O`k87qRA#Ulvs5LBJOiLDSJU z-xS<_RD51P_2b}7Je$f9Y30V|ksLyL^drv`!GX)eP=p#DGHkCr5;gD2Gg6z9=hR>^ zwEqp1!b!JuxI>eyfZ;lQO*zfIrNby*eE})Z&(~x&{c8y1lhPdF*4u0W<5&JU?s< zt@I}4O|Q!W0j{j1k3>0Z-_6H&R4@TW5fc`M~DF% JUYG}{{Q*NsIivsp literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Print.class b/core/src/main/java/org/luaj/vm2/Print.class new file mode 100644 index 0000000000000000000000000000000000000000..b0cf718bfeb64fdbc69ac0c46270f9424ec8dc0f GIT binary patch literal 10407 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Prototype.class b/core/src/main/java/org/luaj/vm2/Prototype.class new file mode 100644 index 0000000000000000000000000000000000000000..da8a23caa5b3b3d873cf199891fadd0570d413d1 GIT binary patch literal 2128 zcmaJ@TUQ%Z7~O{e6T-A$3Z-0%)!qU~V=vm;wAg}R(Lk^Pszt3Q$qMh_?X#Ke!uZ_P%zP#*(7Tjwte8^%_UhUeFQ8K7rV5W?^pea(ZF1 zfrEw0nzRarmk%6t>)5YMqE+>|YIqtB?9Oe=LdEFQ(T@R^<~db2&vXy$%r9M)S>HA7 zVk(9~yr|)jj+gNA4tQz`0$LC?&cm<;ZJ!M%kCLB92{cEPb!kyFlTjiioO zagsGyPJT_gH1FBPRNBce@`5m*#u*K->3Ch`*0qDqP>Ft+h3i-HO8cCSHWP73s<{(Qh-o8w5wXMFG7mKV=d5l4pKK zv*wAwx+6`)*=jjwxbre+sSD=0NRPf#W1E&m!zZEAQXmTqBozNU3ES##R*_XfW@IJw z*Y2%2uD|&(q8IW^HF*B9Z17m7OcizS)>}WJdY&(1+;My&AuBV6zv2|UD2RNEI4?#; zM=MriD8bTDRt;x`fzas5|Wq3!@j#H{u zQqMoLx-UBn=Q*Dms4vy&*CyYNw;Q^ckd~D-eMP4}ZQF)B!AI(;fpb&f=yNqSN>u}i z9{hh*PNrI2oH|hsXkae{vY6*iU;&GPdt!v~O`3-!b_2NaBYea7+d6(=Zrqr%ry0%8>vVpd&)$AEJ{Y`ViVSjp||}Op69(gfdOIUEj2D<`>iWBG%@D+;Nv0O#l ziBiJ2SaHWoNy^{t2hZ&V6f@RnwHIFv|O%n)v;B{X9W6E zO>U`*mez6=Jt1LU6`eRG;4sB{n_VqZ!i_F;EAXl4L9am1kvvAYt(OJHgUyhJUZ~B! zr1z^BfM38>HS>P3C9u>E)Xb>|*@CZc%Pa>~oRL{}6!lUiSC)c9D$Ze8z*)#A^VPzx zE-==jS0}Uq%l2JRaS@jU+}TpS`bMLkx~V#%B8U)ct5>z0K!5NUP((!(qrA&L2>64^ z7T-n@rD{yYI3~=daT#a@H#twLxPq&6&KqdHqNHR@tGI?40i{&gFnd4nk7&IB$Mm#K zE7H_kENrrywc)d|6QyiS|ouSuTUxpsy>K!hU) zP{Ppzc;0bKV3xKE4%!LYI9zo1vf2`G!vZ9DU3&DHfM^Y;B_uNX5q(F1rszBk4|~&# z86x<)ERdh8Ajsx;Lu-n67(27Hd}y>X;@4Kh$?$swzG0q=!jGqhv#Cf8=U*WZ`3mPs zILZSfA09H2eRRqE0%0LHX*~PCzevVgDQe^zHwrcn1qpBA>76Y|IK1pW(Dpt z_#}Pr(Idr^70mIrhe`d!gaX?Scx{Z6Pu+@kj%eAB9y3~JxQ5H?@_V3$@Ly%G(S(Oo ze#9774XPbNC54kqI>!>d9dg=j8vWxGcX}4>PJ~L_H_!#bFd@ Y%R(KO;Z$o_8L~FX(hsw48iMnG05Z!${{R30 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/UpValue.class b/core/src/main/java/org/luaj/vm2/UpValue.class new file mode 100644 index 0000000000000000000000000000000000000000..13ccbdd2f8afc7d67947e15c0e6cdcab52dcadc1 GIT binary patch literal 1349 zcmaJ>>r&G|6#kZ$rVZgLcM2lcG*zOYqSnzFJ0cw`s6`xyUrQTHN=Q0M+L1T$F?2@M zVMZRnhjKjIgwjIwM^4Y4{l0VgcDKL(oSp%Aj*N^hL?lENbR)(vP~mm1Tih<|+xr!x z=rhC~o3`mcVTh=y-2~!DNRSouKw%hm+_G-fctx)tt?KWpyWFZ74Bgyy`7y)zUcL>G zuki*VBhvIK=*IwoO}k`#VqiHLL%1ekSiuNJ+j=SZu4$JUq`D}u{gGiw&0lUclWGYC zjLZ;CIj&#=lMG`={Lsicc9HwsA@4Yc zwQA<-8MQ>(h&#tsqXT@e1s~k+wo4PH$a2dnn7%>cDLLCV+^oet&+sIyGb~=2sZ*;G z9x}}QA4*Rvn2SV<(=$ZlqjyCf#M>Yn1IddUWantLCLXKU(|&+y=@Up=@&vtKDa0^O zb_h|jD%lhg(9nl8?JQunnIK9YFr|G%FMZOPFk-R#6N9H11HLqqiQ2#lS-R|Df<@{; zL>uG=?>nY0Q`RwvMJ$DsxsW0^OI^l4CHyjV9SpflBMLEk&hhEO#em}P3U~n-n?y=A z^byLuBv0(j3sPQ-{zCFYB;9DRKr%HvR?s4CYK@Y#z!uqUjN&z>@rGo6OZ7F1cae5C W={HV&>Ga*gJzB}+-Nyqw!o**7H#A-V literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Upvaldesc.class b/core/src/main/java/org/luaj/vm2/Upvaldesc.class new file mode 100644 index 0000000000000000000000000000000000000000..38e6051e33ef8a48e0c0846fa47f6de940b14bf9 GIT binary patch literal 1104 zcmaJ=+iuf95IvKou@l@|=$&2yl#;kmL%Eg!4@6W{N-0uGk;>E7Sz0%a9od_Reg`k` z1-ybp1?mGIz()b&BtSv}4?DASJ3DiB_uKc=uK*t7UJ5Y`XowpaM1nASBpSkUg?C_W z?;lB95fb+u&ruHv1KHee5;~F^QU=bzAWZtff#uf4k=3ZKS|(Hgyn4U@A2}v4p+OkG&7Sia2^*3Q&mxs1>duU zdf});-f^p*3JL4kQg3Omrw=}1KKn0T_BM07%wEASGkYUN$CFR%)qNT4h<%qmy7GUG zHJ!$5SIRs=XedjBCS?0EqXSDt^DAa@V1lXc473M$g)f$_Kbe8gS2P@ma`0(Yv!6*VXbp;mDd&AWGltHTeyRD%=`obaS#>& literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Varargs$ArrayPartVarargs.class b/core/src/main/java/org/luaj/vm2/Varargs$ArrayPartVarargs.class new file mode 100644 index 0000000000000000000000000000000000000000..b63dfe71cec734df08296e5c7b2c28f83b6e9346 GIT binary patch literal 1726 zcmaJ=T~iZh6n@?}n=A=05P}hs5SzBrZWe0*Tl;~fDvGQP!8T63=nWfKVrY_eb~ns$ z)ql{>%U0{yI(DYEqGOQhMSnnlRHx_NY(ywpiXnL@9)nU^E?s39J*HkpU>sQrZQ72-aB_cWz?+yQ@tQzR77LY(q7>{6fj4oQ zev>*3Y0b#*&wbgJ41P=CZD>@cgM zRjTJQ@)fDdqJV+xw2Ly^vl+6-w3x5Z80YOZTB4z1y=9f!&8p?xG^-8roI57*2yF;% zpzN8eUoM$<0+d+UZab^iLR~_NK(4d0Wtx7;a=k^{rHc_pt7SR!4bycknq>Uo6=I4G ziqqvQNXTQOS3+K~Z|TZ>OGiOgrB4{w!SE@)u2GgkHlx1)(8k8WDhh4TXP$DE}6N{5y>B?~&#|P(&C@0q6pOhGqO=pef}L%pVE!C&Ii- znD+?tXQcRjLZfR8FmEB`H#nV99w7P*ryfDe=+80y3r5JO^cl#kC~Gs15T|$A|8H#v zuWu6(?$eJD6!-&_$kT^V|7cOAy=U@@gCY|YNiozv0ZWt}OsqU6N4Nhjz(e{)7apWs z3{w1h_b^0RJ{RH<>muY2GWgABpn{JqbP3R%254WAZgPxQGItSE67TGya4VzSM_AwX z3;f!p)obqDcCValo!-M4Wlh@jF5cfOdrA(S|4te|MnC@pasDR~{0Yr%8ybJ=(+QIx zktCI-^9ab4h>RSgE`hVVm_4ub%1w?Zm0ettmE?0Jn^Z{aYkRAbkXyx{BgQ*4${pnS Z3mV`up>f>6XTIh5oNSD$$=xku>_0(iYYzYb literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Varargs$ArrayVarargs.class b/core/src/main/java/org/luaj/vm2/Varargs$ArrayVarargs.class new file mode 100644 index 0000000000000000000000000000000000000000..674a0ae3e736befb1d9d669ce5a605177d276d5b GIT binary patch literal 1526 zcmaJ=O>-MX5PdURX)SsDrNprv#YTaAtYl-^4ulT}LtFZ!NtKpfFDKiMp}OokMVg15(yiYLJ}!~ ztF53`YP9uUsnc94Rdk?(S}2fuQ1|Q6ia^3CRMHqg+D1lU5K7?Yt5R+~3<7;{nlCy6 zlV6rEM3&pSq8n{*+29Q;j9^qi1OnGC#>F5E%i@ZSs|w?|CNTa=Fm|}jp)idZ0n6`3lfP>)@(MTcCf)Qd3QRfuFa~f-U@VMu5apZg zFv?fG{7QZyLo#<1?!plmAchwNEmEIz-1468=u$)bwbE7;)cx9WKWNiOQDGKy0(RK0 z5{9Fi`X8SY0Zq+$g%TD7(w*LDpL{K_?)00C>t0mm1nE*oC+-ZEaL>j&3h&~+!0;K9 z4IO<$!JBnoAnCZS5%GO|VB&NbxU-;_M69#km(4`kgL;RsLsT5#=jbavN!> zF)XXR;XcFwPnm8C&F8G2k^Tc?&v83f{1f)^FBmp9XYDRM#~6=8J^$`YOdK*pcJWih zf!xKX^b8;|cxA(8O-=waafLgKWK0k3*xWSdL8xwC&&7(UAVfQ*%W>j<~M$XP!jSv>3!`W0D&ddjYF zXsVI7F~_v#Fm!~s&x+2#ChKQZwShs|#HjR(GRMU1jdAM;@0mL0xIH~?QRa^>k1=AgHYQ{Tcjb2+++$)%tl_h+l~||E Lu$Fl{E++p2t#e1Y literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Varargs$PairVarargs.class b/core/src/main/java/org/luaj/vm2/Varargs$PairVarargs.class new file mode 100644 index 0000000000000000000000000000000000000000..6891ad5282965dab8552966c8701531f172af134 GIT binary patch literal 1014 zcmZ`&U2hUm5Iy&@%K}|Mu;ruJN^8}HV!`?q1F4DFS`utbFg$yq8$zXv*$;kCA547l z0TWw|5B>mulyNR>vBdJQJ9p-unR8}m_V=HkzX0r`5&=g*gQ7!4kYRaf_sRoLoRmkW zyXCg9h23))g0;TYclQ_qMxh->2w@Eo9ZS#|^4Fzoy%l|Xmd-~H8Pd%;VAB(AG4RZ) zEEm%e#|;KP+GR-11N|yhsWhqMCYDJC$zoVF8ijf6tf&O1bfl4CP^<}>q&H-ERYwlD z7&OQ0OuNheSLc#5gms35;|kl&pL&j)@0j_$Jbko0HZ*MNxPvW*m1`Sg2vK>{wud%D z$!IiB#7L9}!s?Y}cNI(`EjFZ%=!8CD0m@*SmEUlS#So=#1 z#DyCdm53yg_yb(~bByuaVQMH3H}~B0_`dV}`RDr&0Bd-tfFmSBQV~XkA=7rZ%T3SP zDevtrmTQ)4x!WCv$V#Kt=&mw^^inN`C}J`c6+=)NCNF~&*S-2bG}~jyRxS%$7F@$B zMv!0#ce<9_WniYTrc|VbHRQBxQRJwKEXGKuiWtUqvoy$9@vNHF^cU6r#+8x@X zYPMRA`=n`gIu6~Ca`q&K&J2yF9Hj*VA*94f(Jv(~!k2UdB*UQdfKG3Tv=xe$NM?*< zFk|)zvQaof+?Y5*@(bA+40^MK01rXp5@I}zVID!6%jBgy3YcC|PLWyHjIW4G_U4NJ zIY3s(sSUy`r_Vh@`YBF!twjhy=yXV zW>Kt=rxE5E$b1wDo<)X_p}=#P;(6$N97|loDlcGzPoT{w{Shh%%fFFh=~99^TJ-tu WV#${r_eiEFgE*D@^iGp}fZSiarS5J3 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/Varargs.class b/core/src/main/java/org/luaj/vm2/Varargs.class new file mode 100644 index 0000000000000000000000000000000000000000..194af2411d7d1ae356fd58b606f7d55d01ee0528 GIT binary patch literal 7333 zcmb7I33yaj75?wcgqeg(2!Rkn5)#5TSs*}xR>B$}8e}WMAXJf;jKT zlt>IgsX&<{O2C)c)~6eW+j++@i82fqCW=*d=zCPI`bu3vA{ePN%USl=6I@hQ|4gEmav^g5^Z=t zg@o*cqYv%h>3{E>~G6k&aqY~@zF_Szt-IePxi$u=#SWB!xV+CCT7iZt-g0L2k zw`AStd+X?t&^hH~_eQ;Yvz1J&yjNl)Lbf2CN0q_%PM6IRVQis88T#ymq1tBTOH`r{ z9~T&8NHZBz<)AeuFX9pjE&%~!Bk`YI+$wQ7uCQH9Cxw%X+1&qx#Fe;;LTKnR*-s7{ z3%aPWfleiY2w~g4ub~2Jh;4ez-#Fr?S z46iK;S2#G9;p+7gH{i>*9hAzj#>-Yu*m`c1Ji$$rpH3i%A?=PQynU?oWiQV{?ecnhk zVYD%)JId_YE3uFHUzmtyk^fGK{rC=*VOrgmFneSx-_G3<_uyVb(7jP3Cy6)$o!zhL(EDt$&_SJzr@4L zEAq`E6|X)baU72tO5+=&F;i&=OCFav!J#WkMD4io^7nc9RzH3qFf^w^wk9`h;I@4d z-T+Psh#-G|TH+ZzOO9xLeR`xvpgudW&b8Lm)DpmH($W;bbM&ZZW&Pa0`wPj7pGiEA zpHrV%wtU$lf%3d|Y{w*kUrPLnVerCLB)@ zYmEVnwk1j9ppJyry?LqDXXz^lw$t<^Fr9KP=TvlRdm745JzGLN4z|-s#H}cQf4Y$8 zD@cnB4K(REdtg`ZdPw4>XIQ7vz541?S#r= zjH8weAy^CXq0&i9I__mGb%?U#u5>gVU%l+GIc~M$M(<*|2Cew;*q7bx%wS}DmIj*r z-@1J6mc~3l1vR)fTZ2u>PHKnrf)7@{Hx7;(40-p%iKq$BA)Cb z<#B-u_Bf{|WQvTxN7uq3jZj4$(PXS!ZwvAJk+cw#_-4t0WqLfZROffZxL=H-QNc;w zSfg;R&|(Q|w_nr>)Hp&rl3f;vjI~E1dd#>nog5jM)fGsXU5)AeTeZQCr*-*8Q?v5W zi#sq6R8cU1K3}I_)$|nfEND0aaX)<#c!NG!3{3WsQAmKE^qOisseKu!H}MC;u!@oN zWVEN@kRi$JUrOtL#Bdeoy;s4lBE%5PwQ!@!QFgVkp)v)33WHR5F9FN&Cl~lo6&@jA zg)6*Vg(nGKEIHrO*R}oPock@m~1S`hzJDceuKX5#N@e6~NN{}NUImdF|5>X4PZF{f|8&HY{&}kY(}ZlpztZ?@|7%lNctG+0c|tD6+iASw{|8k4FA#DW z-f_b(QSs*pxf1_&!>>^BZxXT-=iTtDR6Iv^E&k(%|FDW@&)4CC8~!5-UNGO*;av+q zhSx)q{`5d_~TJeFOxrfpE&tRY}ncwOL|6q<|i1nd(&7kEU~K9PV4*8&?;eV<0~ z%SC~U_N1!4g@9KIyQ8Q_-KJ1nv=aPk;djygNmYA00k?~Q3;Y@tzJh?)ib5CoXI1!W z0`3$<5`!M9?_W^i>j-#*80Z4OPKE0Pyh%tG_*YbT*nkhR;JL+=ipwo3o?4YCrv7X? zKg+7$;CU?mqlia)0n$&B!Lp8je3=bA1mfNZ78go zNVZnQ*zo6~VfI*VpoE>~DC7h5fV=q~5ZBW^bI41jm2cOK{TzO*XU=RGQ^ zZzuSEQEK_D!oRJ;_Ym+NG1LWqmkPg&fCpXk_kfze2MK;y40F+b=svo>tga?f^eg3> zzYnO+93%Kct_gWWO~@w*{;+F?9aV#Wir~jZ8GUj^RWI_G>dYAeo^Z{9$5idy08a?l z9C$*-a|5J5C0X8FZ#9IrewOhyo7)_hr!}yREk$HLA;7-^nIpy9rMK- z1~ZG{y@26fL2C%XZXr| z)q7ChSXJg*-%#fBttY=bcKFES*D}dg%6aHHjzZ6)D5qz&=P|>rLU_)@E8d|wScr=B z|O{-A$6fsdsBqv-#b!}#eT!u;Y;KhCb+;RCx@= zOByxj39YHjHPD{J;x#NU;OG} A$p8QV literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/WeakTable$WeakKeyAndValueSlot.class b/core/src/main/java/org/luaj/vm2/WeakTable$WeakKeyAndValueSlot.class new file mode 100644 index 0000000000000000000000000000000000000000..96d43f1deea49b2f525cd19451ee47c947f62042 GIT binary patch literal 1507 zcmaJ>+fvg|6kVqjl7?`R0@7mTB4Te)M8Qi@L`KIB6(4YLd<^tVDU{S{T9kkCL1#c1 zo$&+wD93e@TAQ}`kep;^?X~yWYn}Z1{rx9^7kF+UfF2D&6TRpY7_U@|nR4Aa%$yuA zXWmKc=&iL^mI8er`7CXLrFhn_LjtPOJkKNzymOS0C3-0c{&b1?Xs@MdC%M&#*i5ui) zTwtWLcUA1Bi75r@JyBycFoRhQw@l38w!oOL{NK$9XsXO{rNFd!E|wF4zrs>=+oR%#R}B~w~pt4-$r?mXKey-x#y*KKS~({vh!D_1qpIg6H30wK<_Vi#TgBJobJ*RDXnhjS%l z>HW$F3clW1w1vEl%s*h)y_9mNQm^jImnC%s2b+*ZKg{m5&r6CW_TY&4@trp5IkFA%;iY8aPX_*I75V2EbVffA>4&yf*cWY zM47#WyA6&Rx<5dUP?A}bmze(CEZs*4M2z=k+-tz+8*syI`y8?4mnL2vB#0U4VwULp zSZU-;b0rgWmWW(p{$GYyVV+-CyP{)V&`FNq0UkEEXZfbuH-2FBeKK`{mVP|;MGo*0 h5dl0#)?EWw;~HgLXY@%hgs1#-JnPdbSpXZ*{{ZPTT8RJv literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/WeakTable$WeakKeySlot.class b/core/src/main/java/org/luaj/vm2/WeakTable$WeakKeySlot.class new file mode 100644 index 0000000000000000000000000000000000000000..8d143eac1bd4043a46d5e7f01f3b289a28e299b0 GIT binary patch literal 1417 zcmZ`(+fEZv6kVs3&U6?qa#KL$s`ds&6ucBgLo_y2e86CQ9N?rB%8co>DF5VxCLlx; zKfoVQ6E*QcAAIl=jO)x4WN7;^bI#eb*V?yr=HuUY9{}9PJp&;$X$YHWMns_3Ddp3} zinW>E*`7{6mDbi1Yqcl^A}_d?w!l;@7x2kdtQD(Rk(qb{y8#_h4Tgypm;yrq^l^l7 zwOcMaWrmt7*oE>PfrVIZ)7r7pMa#~oAFpo8wQ{D8B|yk@yo|>cS0=t14^D&XNk`yG$ybQkzTCEkATzR%B*vTb34zmg`EFUzDrj z(7>D0ADG#ZT)aELTz!$YD8!;KSqxKvI{yGvr_woh5rnCL30fw3y2?|SYgZz92$7mN zfR;$UMe9Dg-gvMy-)(5(`x6X&Ce0U*AXO!p$J{=qqxm`J|EH9{t)g${|BgnPm}-v literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/WeakTable$WeakSlot.class b/core/src/main/java/org/luaj/vm2/WeakTable$WeakSlot.class new file mode 100644 index 0000000000000000000000000000000000000000..678a9d053b9e30d1a0aa0b299c97ed80dff85fdf GIT binary patch literal 2581 zcmai0TT@$A7+pI#aFTGs9a^ph3TO`A?c6p*Ee?l?q z=oIKJPc@sgH_Z5CB5iN`(1C7g)CqyJfeIWIwu1{Y-ChHII7z|RV|I%A`pcy1C{%is z&KeBhl#bH|0tgE9l+SbS@BrPr9!snUj8)39)St4XVFM8iGF#eey(Q3I5$~E5H*DYx z&a&hwi_%6a2A4QgRMQ$ffhTp0NT{dCSV605t;JG?5*a02`9`Q{fb1)o!!rh+#VECy zD>QPnB9n~&U$Ail&w&@H+O{^5o0h;tMZCiz{x_<$d&0mAc#*|kPTt@ZJ6{pAOpc{D zbxg-g0xd`VR(1(Q1Em+Z%+Ar%MTHG6Fw(`yy2m$+T^ATa5v_9gii}1$=YKjJ<4Kh{Z`>dnkQK zjwGI#CGy2&Dy?Hqp!G2chp__2R3c&7(YTpPSt*`6m~c84%h-01b$$lc6wMHs&S8$p?JQ7v$R@5ULgacvImL4?9P&_j_O_(Ov`sK3j7 zftUGg^5Z=ct zjPk?%7dmxB`RDO41f=$VoHk?=nHUAV)<3vBY63;2L+A1Xuxu19Fn zF)+b@LUD9CfRhej+W}yM1Pr-w8@fhN_jd%!OUQ$MM9_~FDBnNAF$pRN_9~_w$S$se zr>a8tP%m@J`(CX!KjCwRKIbde&Q)gWQZ&VJpYjuqIVWzL{>#daO8;jEb7%?=D%m-B zLy=t!Wx3ZJl7!*NKF+zpl83TI?+e~^LnqQL%DBzCe}*=EjxKybPrhUYzEaY>Qd%4B zZ)O4Sca87+j9$Xn@L~K;5WBd`-$bIE`;u)o&GD zJKXa+JpV{1xa#bAXKf@i=cB{FMSfZR5lJ({Hmh|K7;_;jg{!*xWE1+yUHDMBA<G@mt3vb)6lz*SU79OA%zbPIKu8t~F@YjkXw1=x~ArArd2Z$c+qTl%` zf2r^(?|pH!zfAO>nkK&v80p3(K3#YXudDSku5j&RSvRzU0rP^F3{7!yMfoZ(Zu+~gTILw@2pa(pf5Xj?wmR2-ZOW<|M>hBz%s5I&=AlOG|`1_Leh4sxq4G< z=C&L2xrb70-52G$oKjIq)SHsfeWPa8yqknrs?dQhG=&dYOqX%tR+p;Wr?hjO*NDJ$Nh0UZOX_(5h# zojgyM!Z?E=9m6I@FiM#0km~I4L0e0+%Y?)+x)U9+vVo|H7~%x8D!qpExJ)*S5amic zWZKrKViG3K;v7M1c!bga0MDD4P$dUgT=h9+;(~H3z-mhUqKOpJ?9!1(s~d#nQ%v}W z#>pa&3|J%tm+WVa z*X*WKk+*BgoxZl|a|%fa6{YLlv0YEc6~ah|b8Re}eAlw1vs4$ZD_uhP*i4!#J}MrU z*kp~zTSG*>IY$xYxS!F~oP&_z-7N%tTq2X*2W7rMf0W%rcpv?{h-5e%+r{_?1`@J9 zNsz-Q=%S|>qGuSV9X^>s{5RbW(=h@InU6^BVX}}tKq&hSMvD^>POQuvAU4CB@lTj8 z`g*gzSaP;SExxJwI@1WV&U5~SUcjW6JlU@hrPoN%8%)z%%+ove={;uoMjy084C+j0{}5Irpktt_uEh^sLMhZvA#2PND=#vv#eJCRKlrtAVzm5k*C=6>XTE&>@GpRySj-}Uq=A%)JxCJ{ zxL&kVYv?j7&I_sVi;gBJAz7O6z+fTaG7gSao4zehN_k$7hBC$=>>HS+Gu{KLQzm!Q+Hd8eqVX6Qx7B| zjIg4;Ye5)TQli#a5E}u5fy-UuhU#%kEV(VOCTA_1!y0Ti+8M0_6E8|%&AGlZaE)-V zi>htQes8$0;=shlf>e*(H9v#vTsPfq(=;=b#*Hj0_}#!wU6onFL`P=J*>oGS6y_He zYF5;g>pdkri`P3c3>oHxvt~5&zGl-MMSOi;``i$J< z6l1qgd=4Y^0;wR;M4(XU#$z`=E;5YQ|6$a?rR#imafNphxQcS{pT-RTGfeawf4|}u TuX21ofN9L}{yhG~0!F?8c*BS1 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/WeakTable$WeakValueSlot.class b/core/src/main/java/org/luaj/vm2/WeakTable$WeakValueSlot.class new file mode 100644 index 0000000000000000000000000000000000000000..3c53aabdcef9a6556d4d68f62fd805addd5bed57 GIT binary patch literal 1368 zcmZ`&U2hUm5Iq+tyDSUU)>Z+vv?7ItmRhY}7=0jZB*FSnQ{&@8Z}{kT*RX*4pM20n zEz!gu;Q!G?6OD6sSM2ifz}}r<&Y5#(&VKvz`73~3+*c4lP(nz>9KsCCR<~I)`g*4{ zIN2^e=lbz8y>4)Z@GE-fCc{>)=Bugo^+Vn0^KyPhUV)5=1Vu#@D#MBoJ?fAVZwH3e zqgD^vX1n*0p^~e0^nqS7bhBA{TJP{iuRJB=BP2PF;*8)b=MN)@V_w2J73ZUx8iPXpx!LTs#G(pQrZ-zs9M{EyvJAUp&1MX# zJh5)y+!>yX@r;Zz0d)N{ksjj*K zM?13wOitlUD~71MMQ6K2*|1)c7amQLodJz8`bXwCk(P5{^}7we*A|~sd{nY2EKb|r z=XUS0Ws`2TYMQ)TF?8GJHvJh5@QV-{ z3Lb8i_yl7_`-J7x5XrX`xUIr;0>9~5#D-U%^~x2kK+-;9QF}M4ccd{I3=2^8CK4Vd zO{ZXzHBvQ1`ai#bfN zeGqg;-#X*?fR3e%9UXnKGd}tM*m3-w-EBh&LCwtWcfNDJ^ZV}K=8wOB`UOBAKJ&mO z;F@3Z!i_=&MJg0{1nQEhSSXRv=0ZygZK0uz7BN$CBPO6MX^D(JGAj^h8Jg3Uv`|7b zVj=suqjhNedmSEl1;o4uDhZX9pM|vjy7si>B3nWo3Tn0i z7?(yCqZ)N8c44=GJ3P|cC$Kx8ebSqfs(YDN*XZ>X8UYCcCH%jDxSj`S`<$knT07mWjQh_;W|}3?;H`3+U4d8D$dEx z;&^&0nM~-Kp`cs9_f*k5@w7><2KD7GW5!Y$NhD1#y3i}*$qESP%SRqBbGEH`Hc8ly z)^Pt&{kZfQKFLZregm5M2+W}XE;-uy zwRXvYZBb5WQZI^;zyhTVa^J`gIO$0J3M%%lK&=uRCGgjyWs7w;Gj(HK8Y zaOV_`<23rwjxb03BBe{!v$HQYnM7rcki z_uLndD(ftdx+vLAUwb$ZdpWE6c$&f)2WcOvplqSP2!HEIFco(#Qfz+zG7XcsTG7g%J+48aRaxZS-JASUGf*Yy@z29OUJtyeUssB_pRgNw_NZi zi%*uChtC1$X_fQ=Mx#vVIE|0W#nm-m)}AVvaM6w?(TSiq%fAihEWM0glZSr{hSz^hnxATBX9vW9p08`_40 zzoR0!f!X2ULn!_R5!uu^^(dm}U%)L^_}_XJrQ%Ceimy;BzIGxn9-&sk7vMDly6`&Q zAT8s)C^OiF0e01!c$<6OjCvRIc$@ScO1xL(;aM}@CqF>?0qGs?f8_S?W-~q}A0_<+ MyNS?@Pu<1;0K5Ux6#xJL literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/Constants.class b/core/src/main/java/org/luaj/vm2/compiler/Constants.class new file mode 100644 index 0000000000000000000000000000000000000000..da267dd7d045df686967691b83d9ea6066b46a4e GIT binary patch literal 3857 zcmb7`+jkRH6vn^Pw4F4h7fP>$OHnRqK*~k1TCk*{Kp?%)n?TVrO^1?_CUr6`tw5>Z z4fVmxgUW*ssEeiY0J;`b6zr3(<=^D8erGzlO@hRiWcE4x`<;Ex-uuk__0OXx06K9~ zL6JaJTpw?VPOB3wGn0E-Ler{(Vu4!wXs52nbtg&%>ca8KsYq1Qo76-?(~YL{Dy=aW z9B{f(2A4qTfk-T3yh@BWG@;I@Em1W#-qLUAk=S@!^Nc>F)o!do4ef*+E%pYRha9-JyzE$B0Ql3sOmm4biREP% zJXoh-y&D^_QD9^K^#XA&sK$(hKv{q1fWPnPNXM*z&l}3`pB-Nt15mIj&&ds`(P_AM%oQb1ZL}hIJ+RwE=&86S${(U&MyC{{sDjBgn$SNlqYM)%(Vk3 zrlLGF=nsz2ajDKOA%9;#8>PEvq_6WR3pnEM2uL3a<@2n37OaSfKe1x4 zRZDxO{Q7uz@?kLf(3gBTAyp0@%E(G<%Ema;%y^3f@i9%HG8Bnv-P4n!nm(Y8MmbW> zG=wj9sZ*BiV&#wY^agqkcXF3j8~91|4hLDAa_h<7NIwPyq)v7WgQXGZ>+}zFj&Ms- zNg=B`bC^D*a#)U*C7n6A*PcR_pn0UZ`AW?wI4{s(%Vug;V4t0tD*0S!dP+e=pwUK6 zPv^m=x+NEzo>CCa#ipkPcH5)18Z8fWr32d(#0BbYktS7n;!O2tE;2o(fETWP`{`+c zL3^A}ZSCA;p6;q(THx88Xw)u@O8&4JlXS!o$~%=YX@U7O%Ft6>+xcIPhi7; zUuayy+6lWL6&*J5b`$L5RcM4C9efVZD#Bqj@THx$kI+7vVaxer8Md4cX4uDRpUAL7 zw7W9wZrVK=w)F4Ku%-XW3|sp5W!U|w=X-eogN%5H5x2^hFaImo-a`4WaGb6#c?jkA z`{rg|<8K8WfOcM%hxqKrDO!|Nz=_k?Xi-`?UBrnsKHmeZs#==&IA*Kb=NBGewIm5h zlFM{CjA|Z`6K61NiFcvIT%*S4@p*QxUTU9TS5-Q@x_xPWp~tR1#_x%ssZK7v$6C71 zTw1C}5Vrb>q23thFE4Su&f4{QEB?Eww3Si`>YY$AYEgERBFmyNhf*LfH6yS9Hr)(4W7qn>hk@8DxYJA!}r9qi02mJ-Eoh=BD2t{%^eynt7(1? z%%BdJ%(8Vt{Ea#Vn#mo{!`)c`_cFOx$h}JLd=~eD$(_i<-BkehI=MHA7Qp?4+)v5}(`0=Qq0`z5(w zk$WqPYmhsGgBJI&RYV(nf5KJr7_E0u%WAld3ZL&u$%RF{atFn}bXBa>@z)m7v8w8j z!n%+ZmLz6YSZe{1-e#oVFw$=s>33O?u5jn9NP|}8)_Z<)6@dMo<@*Bz`;q;AH;t`T z@Rk|wm0YZ|0PHFubS9vx!95dun&n{B;XffA7x<|IK!`T3%j2G@**km kJ;bZ&duk;skJ-7`&HlZ?`UhVTMcB_Sc%R@_{(k`HzemF;t^fc4 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/FuncState$BlockCnt.class b/core/src/main/java/org/luaj/vm2/compiler/FuncState$BlockCnt.class new file mode 100644 index 0000000000000000000000000000000000000000..98f6e0d269fc3f872912601fe6f51742b4bf05d7 GIT binary patch literal 485 zcma)(J5R$f6ot?2D{Uxkd6tI|3=E|Mkyt?tR8$~UWhi1`bAqW-Tsv}{{4XXX27UlP z3UM11Rv3K0t8;y&bL`Kr_YVNq*!NLF*+Zp?Dr$tzOynX^LQjLca3&*1s9nT5c9(>5 z@8rQlozOFO8mLUnf_#1!L}s4EO4?wU>1g7FlgC%eL@xu)%k{*{JT_TM=#T!pc24l0 zW1Bi9La7KeAv6kMYMdc>T0|}vmQc--Tr6%pvd=hG#w3Kwz&uGpdlYLq&gP-C_aaoR z_!E=aNDkR8q4jI`bdi~@j%Dg@OzJ%B5Dxz^OK9F|E$u*wG?g5${u3HU@c2=I8lMJy zuD}YK1y`4BE!jq=(ANqQ_xueYtaEq3ER_Bm=#>S+2G_+H=%I{FW(ix^F4)B`)90y& IF7{CW2JuR36951J literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/FuncState.class b/core/src/main/java/org/luaj/vm2/compiler/FuncState.class new file mode 100644 index 0000000000000000000000000000000000000000..92ede711d77be1ec77dc0dc9bb4cef357c835408 GIT binary patch literal 21433 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/InstructionPtr.class b/core/src/main/java/org/luaj/vm2/compiler/InstructionPtr.class new file mode 100644 index 0000000000000000000000000000000000000000..28ca8b773806fb9f05f7e3b092a44847743af395 GIT binary patch literal 439 zcmY*W%SyvQ6g`uqtxaFCzHODF1=|P>=vLf_LO`sbbkkLuhLVydk|xEEawD_|F8lyL zN<335;$rS=&bjB_na{8H4*=KL*P%eoK`SDItbj3gW{wp&;mGO^#-5u9WH0>CPc8-2 zR=bzS8uB^lMHEmJXh!kK3Q}im%_e7-8%>`4z>6(AoF;MVCVmv&C$WI$Mng|P>D!WD zE}{a1{rusxfUqgi>f3g^N8r^GSh@8>?=GDTy!g=>1f;4XkE3t`qSdL4wbqiMKSXKl zdN literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/IntPtr.class b/core/src/main/java/org/luaj/vm2/compiler/IntPtr.class new file mode 100644 index 0000000000000000000000000000000000000000..c1e26e265f6ba164139d8913db37919e1034211d GIT binary patch literal 301 zcmYLE%Syvg6r7W!jY(r$UD_&i*Jj}b*Ts#r5D*oV?r-9yB;+9>>3_Kp!G#~-M~QP$ zaB*HUXE<}dzCS(zY;YRFf$PJIFu+hSE%ZUFQrCNRpB5(T1jBV+=iRlyU9NTkju7|= zBa9FU=1sd-Wv>f$sIFAjR4;jHT9wq@L)QuPzbc3*K|+R2aO-Y$sYJa?EbQYPmuD4tZrG7&F_ifHQcQSrU`K f^_aM2Lc1Q%-r)ah#&F5ZsX0f03o53Z9i03C6qGLS literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$ConsControl.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$ConsControl.class new file mode 100644 index 0000000000000000000000000000000000000000..3739fae97171e438e5a232cc53614142a4b37518 GIT binary patch literal 531 zcmah`%TB^j5IxftT1pYbH!8X?28pqWTa6o{k%Zs^W8(5sZm^{ElC}`OLchg@A<@JS z@S}_asfjCD%$##iX70SczTZCqT;sro2Hk|=AcHKSG!PTv1|saccin;X5<>RU5B=nd zpw~_wOjv|t74_X?IPwD-xh*;EBqEVVayshC*t20m&mj-TM8UxdiiG-- z)P@RUwj@#kfhL4nYe`00?1IC&SuK2G(wq}PFcTFgDv|`Fp?VC(mLJOYc-WQEz32w4 z*c~;FJbA+t5DLE|oXyuju-YK`y4XUM(5er1iY$$oxQ7|$?_ d7mnRxMZ-3B7FfX^W0@5b73{;}ZYrq4`Tsh|F^v?`7BV&_VKbEcpyPN0-gAciL&x>|&s|RhPD8xhE3QQG@>RCE;tVO- zfPvL@k|`V0I)f>j9i<(!Hgeiw$)?9!!lS}}5tXOLm^zOP@36GUYBBQ`yV!Z literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$LHS_assign.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$LHS_assign.class new file mode 100644 index 0000000000000000000000000000000000000000..0b2ce70470aeeffe6e4cbfb5d1faf9937f86fec1 GIT binary patch literal 530 zcmah`%Syvg5Ixh>+%%@P)<=CIE=1ZY2HYxcic%reMMZEWx9O!Mq)AEATKp>)Qc&;% z{3vl!D&5(|JUGnZoSFIl`S=2Gg98&eXaac)E6@pLUyh|6$gpqUcYWoi1pUejz4V%( z)#{G|2H_-%`*tvrzC9jX*lsi!dVz{4ZOx3ZP40|eZO$cZOtilo~T3ADgP+vlI zTAgQ^Bwjxx(3ntjmJsGzmxTNR6-DQ&n&X=f+Iduj(?Ix8S9*p zos2Va@N>9UxI2S3L&}XQsPPH$G)3VZ=G$y?gLC#$=r73YuROcSNDf=rp4BRLxmFkv NsA3NWt5&fO;}`NretQ4_ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$Labeldesc.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$Labeldesc.class new file mode 100644 index 0000000000000000000000000000000000000000..748e7d74bffa1b03916953aa210cf9509ea298c0 GIT binary patch literal 530 zcmZ`$T}uK%6g}gtuG;!hW~r%t(1UK!Lf=sIB1ytx4;#LZ>mV!ZuI#ST-|9hv9{K_O zsOYXxAko9jVGj4)d(NHDulElC4>-yq0j@&PkVJ~1I1vkBxWXG7Ps53{BZkzS<2lhi z18=nl8KjX>k=3vPjiKcSW5b<`iLscT8MZ&2Ij#&0Q@&V{h~%*;hSD9$&}L9PF_jDz zb4_B-g%t&kH@=NK=QR{iWJt_Nz9vISn8AgwO7^&E&A#2wE zq-D^0o+pEjE5cBQ44L2fI3VW<+PFf8Hb*z&s4Jv=E2LP2l!v~eLU)y3T~Z|pYx*0Q zezJtB*O$oYjU_hqva-bX>q=9LYmfr?ITU_@48KI4U!laWQRO$_*rSRB>S(O6NsfRl LO-ZAPL!`d}DWhqS literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$Priority.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$Priority.class new file mode 100644 index 0000000000000000000000000000000000000000..d9af70c5f77791b0cecba360603043bcb1f014c1 GIT binary patch literal 405 zcmaJ-%}&BV7@RGoEwxBN#ed{rB5<&Yi8tdxqLGB435NTED=g`c*=~tGhL7UGn0W93 zd?@2r60TlmcE9~*GCM!NU*7<(vFE}-!G`If2#dj=^92t=9#4b2@mx$agLNTesV^A{ zt@fw{2PGS>hc$Q%CyAN{VaDgdB038uN%Sm3p@P168EUS@@x79XlKPdw48;?fv8&u+ z-9sgp7nPjOXj*LbdhHP{b(2TIQ0dE9462{u1MqKTD zf_3)aK45na2+Qxw)f!<9CSV=Hv>I@&BluR6BpdW%U=v$Qu49MTB~u4=?85m2pfpff literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$SemInfo.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$SemInfo.class new file mode 100644 index 0000000000000000000000000000000000000000..28686278d06f7d8c4526613b6e4cfaade1629825 GIT binary patch literal 394 zcmZXQPfNo<5XIj#ZBt`vYyEpsJcy_V16~y`MX?a-A=3M{jv*!4$YxXewLA$P`~ZF^ zaT4@UdYJj`&Kr1-`TqI*0&tIg4-Ggjnm$@+6Z&(tP(iA696U|uJhO!MZK4x=l$gYD~p1mb0n;_(6WR>O9h_jJ?%?V@(2jR+gSgMIiOTHmAY(Y3& zlOt;q9gE%^<}Xa>g^A{InN8U|t7$3|FUm_Z;|FmibpLIys_2Bym<#)u7uLlN;dsS- zEh@nuY0YMss-j?te_%OFJKeCbO~PFO4ya(k&uL~%MZ|dEpJJ$WMByg UJz)cVY}XuMSLliAVt_q(ze77$qyPW_ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$Token.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$Token.class new file mode 100644 index 0000000000000000000000000000000000000000..add6d9b735448e67fa32f2c1e09c2dbe033f1bcb GIT binary patch literal 714 zcmaiyUuzRV6vcmclXjEs*2Y+E{8y_@YZAo;Un9O0#XzVJDFGihaSR(byRy3}zKHne z3keAY1wVivO1v8*MFjIOb7#)XJ@?Kz^W*2&@4yop4i*KQqRSfVLS^iq`d;WqBk%cO zY=)Vz{wRoo?6FX2H2XFs;V@1{UO4r~-s$9_H;gB5g3u&h*SzgzerD=DGwDRHVh5W- znGIZ&K?uv|Mv36eQqDz%a!dmv5MmlBf;j+sWb_7X; zoxkb2Q@`(rQ={27S6!}gU9hrLsQq)XmnA_oY751q_@xoHxC zm%^wTi+b#-K$e=G4^>I$O76)5v2ynjZs_hl1zqWB>kMgq!+vo_d5-f%G2y1p`JaJz z6nU@6F1MDM9mVsLgVwznmANv^aCGU+*q*a}zN^itozqp72tH8aqZ;*zI-j+LJ;f|; Wb7v9vInY>D#AcsEZDB*>U7TMhFrI+` literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$Vardesc.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$Vardesc.class new file mode 100644 index 0000000000000000000000000000000000000000..ffd2a48c71eee4a757138e2979beba021afa3241 GIT binary patch literal 365 zcmaJ-%SyvQ6g@YIO`4_;t&fEuE<}?G23(7qqF5+(5y^g%3?(5C$)of?{1O);xbOq~ zDDfuf*3Fzb=gvL%p85Lz_yll=BNGZ#9h!w5^aztgY=oPNeC<94i41E(?+UDt0oI%`6Pmr71Jx4GL-jhL>T@#UA21=jFqhFhoY)=>=RD@pH8qAc`nO& zDym9W1pRj%oN@|<^K;%dM|T5%z>t*@vrDeF^}*~NG&_EIgZ|n*8uK}V3aA&*R2!!1 XFq^QdU>AEGPI16!vXy};4q^NNHI+&F literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc$U.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc$U.class new file mode 100644 index 0000000000000000000000000000000000000000..ab7a089560bc09230592f6bf27f5d746bd17e776 GIT binary patch literal 828 zcmaJfgc5Pf4O*)%xx1KQF;%U5Wf6l#fU5SIuvs$bFDVcHga(6$RAPu5!Y6t zD&oKuiC@GCm~~QBZ6ppmZ#;hUW@l%9{rUa_z&jk4V89f}S;(V6SQ*NRbbJ{MoTJ`Q zxe1~0#tXdUEy1*_-6a&UBv7(&2NuB&qk-e6a_CG(uN^lWjXhsQPD@QYiA+>QO~-u| zyOm=?{v?=4pRn1wk<&_LSNf@{YvsEZma#&}dBJH&pk@hcxF>Mm!a6oM_jYPCNYp?@ z1i{*=IyxmhvYXX~5_4XiiC)k@@%mF%@9?Gcm+n#Hgq>U?>?^`@%L`OH9raZ7N%nk> zh*%}`>$m&LxP($COe0sl=SStd zt5-eLGa?k*Do#FxaUx(7c5g^5OoCuFgFr>OK;S^Li|LTq5KW2Um$egjQ<$dwM+v~IU-=J fHUyV4QOO7|u$SRJs*G!#Qo}x8a@R%nUZMC8%+|0W literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc.class b/core/src/main/java/org/luaj/vm2/compiler/LexState$expdesc.class new file mode 100644 index 0000000000000000000000000000000000000000..78dc89692c6d6204e0511809bd604a56a34403d1 GIT binary patch literal 1304 zcma)5TTc@~6#izX?Y4E0S}Dk_RH;~sQpLM?LGf0DXo8SvOw3YN-O_GJcbD*QH1WX~ zUrgATXyOm>2l;6HW?O8Cm-sMq&iVGtcfK=o_S=uoUjf{~Z4-t-zSVwJX#`fivfZ4k z)LP9gr(w4%OZLu+Z~1l_F~m(I6ig%qGIeX)sx&P3Rprro-LClpiK~w5_}2wwX?o2> zTA=iA%A&oqwPAa;;%XWx#8c?QK@75bfw4cQS6%$$@pnJI9ddsbI6z9S~%=$8qMNR#LV zTIc>p=7FfRMZa0!>YoL9)H zwGL^n-H39S<_*l)dkXo$Pevpzq0?jrSBS)60u z()}~(z#i!_k_ueKHSYQ%-;vay-P8;-9Twd--9o4199=EDa~X<}+Qn4JtEbnA$|1_V zXg0)bFFF(AOfQ<;cY9MDa>ye%D2Fj9M^Kcbn3H2zkmFdEc|4aBsLKLhTC0A6-Q9C%Op%BLDyZ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LexState.class b/core/src/main/java/org/luaj/vm2/compiler/LexState.class new file mode 100644 index 0000000000000000000000000000000000000000..d65161508a483dca06c7bf6c73268665d66795b2 GIT binary patch literal 38298 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 WHILE cond DO block END */ FuncState fs = this.fs; @@ -1784,6 +1795,7 @@ public class LexState extends Constants { fs.enterblock(bl, true); this.checknext(TK_DO); this.block(); + this.looplabel(LOOP_LABEL_CONTINUE, fs.getlabel()); fs.patchlist(fs.jump(), whileinit); this.check_match(TK_END, TK_WHILE, line); fs.leaveblock(); @@ -1802,6 +1814,7 @@ public class LexState extends Constants { this.next(); /* skip REPEAT */ this.statlist(); this.check_match(TK_UNTIL, TK_REPEAT, line); + this.looplabel(LOOP_LABEL_CONTINUE, fs.getlabel()); condexit = this.cond(); /* read condition (inside scope block) */ if (bl2.upval) { /* upvalues? */ fs.patchclose(condexit, bl2.nactvar); @@ -1835,6 +1848,7 @@ public class LexState extends Constants { fs.reserveregs(nvars); this.block(); fs.leaveblock(); /* end of scope for declared variables */ + this.looplabel(LOOP_LABEL_CONTINUE, fs.getlabel()); fs.patchtohere(prep); if (isnum) /* numeric for? */ endfor = fs.codeAsBx(Lua.OP_FORLOOP, base, NO_JUMP); @@ -1927,7 +1941,7 @@ public class LexState extends Constants { this.next(); /* skip IF or ELSEIF */ expr(v); /* read expression */ this.checknext(TK_THEN); - if (t.token == TK_GOTO || t.token == TK_BREAK) { + if (t.token == TK_GOTO || t.token == TK_BREAK || t.token == TK_CONTINUE) { fs.goiffalse(v); /* will jump to label if condition is true */ fs.enterblock(bl, false); /* must enter block before 'goto' */ gotostat(v.t.i); /* handle goto/break */ @@ -2119,6 +2133,7 @@ public class LexState extends Constants { break; } case TK_BREAK: + case TK_CONTINUE: case TK_GOTO: { /* stat -> breakstat */ this.gotostat(fs.jump()); break; diff --git a/core/src/main/java/org/luaj/vm2/compiler/LuaC$CompileState.class b/core/src/main/java/org/luaj/vm2/compiler/LuaC$CompileState.class new file mode 100644 index 0000000000000000000000000000000000000000..fdd413d78ce01bfeddded97fa91509a260aa9b53 GIT binary patch literal 2244 zcma)7+fy4=82_DQVUz75mj-NTrA3iT0!;-kZBs2Z1&Ib|h0=o7c-Sl60+_;G z1px$QNGe*;%FwaFD?DLvGoP4W-Ox3Mq4iS1EI6+*1cyhK!U!QOLs4-ID#K98$|nq$ zZzL+k@q|_?mJ5b%B{D8g4Wz1H3l4X52H8w$+%RkgmX`4p!*S1(>lBQ{47b-EzG~78J>GMs55+!%4P>aS2r zq|LJHEI5|Vi^-8C8NCdrk2W&xnwsx2D)NZn85Mmv%@A0l6#AR^uBjyz^y66>%| z^Z!9q9|D6!k>or!(h7z!EMr7P3~|D!E-WHpi5srKz9QE7HHOjQYFZw_loMf_9H|eB z)cgwp+?a~9NHBzK-6;ql7*_s2hUp_gZ01jZ`vOBxT^84@l2dXv%TycZ1g25EsNyBO zOm#&0oT#@|6HbOn`n-w@xJU(Tmt0FD92%tSGrgqZRZx|Oio9U15t9r9%`!b;OmsvP zlPazVnx(R(R}`dhRmPNxX}rPETbE8s7#;y1TREH{fF z;}`e9)lD*ad1P$k~omf ztie}xL%}UkaLbJ>)u2?UdEZg-E^aflYg}8`bG18$@rHD2S5GR!He^-24^EKebwX|aP^R*iW#nkUE zR{NHMD!cajn(eiB175YBKfudBA{z@{pG?yTX9yEFsk1_gYGh8gotctN;HzoV)UA{u z%9ci&+A!q(YQz~Tg8=cU3PXmTE`nrH1?SSssL$FwI2Xbs5ZOaeQ zzJrdR>4G6o?=DgTTzcCG!=Wy5>3baoav;q7NhVup{c<0X@Jex`yR(PjMOd=@0xF zZs2oze}N5>>_p4oxGp0iBRa{3f|Cq)=vX2k40=q&=`B+3CkF!Ea4f!uo4Z&MKC5U6 zaDlHp@!P(5pD*4jaCl7iYm%at^<@`{lptB?i*2KW#NYc3w`NBlp=I=ecS1+2H{%C6 z_ITKTLo|Pj4tz&!eUDT4!OJHE_7}Qj8XF8Hlzk7qw0h;?Svef_kL39S@*RLhT#GeD Ue2WSQP)VhT_YjSx2r3Bu3)^EYE&u=k literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/compiler/LuaC.class b/core/src/main/java/org/luaj/vm2/compiler/LuaC.class new file mode 100644 index 0000000000000000000000000000000000000000..b23603454c79b14f51f673b8c769d85a427613bc GIT binary patch literal 1438 zcma)63s2Kf7(Expx{bmV(8){WJ4WJ?-rJq~o$q|F+uwhF{sORxjU@WeuOX&m0C9l{*Q*+KU>zFAM{7pK zJ*wAi=^3TKDhecOPQ$mHiWHbCU2JG3kw8*IO2;5{fw73`bKBjw>;}EHy$j4ly@e(V z#ZbQKa9BqgmjvRrYaK{WV7fP{)I2s*7{RE9F&$TMl?ss<+R8@JZD!;%ocMapsrefM z{keQu!!?0yZ;q-(JG5Qj@?{DcjH+c)#}uXo23f$p4|U6Hs5qbIN{805Wz<|_+o=cs zuJ1|f$ZUbOFkY>J|V*eL(EULJ*ur3N??Q*PfM6|mv8VUlFJxy9&pv&gS*tWoUS8Sm(h9D3t zx(6JpbgAaZo#1F+datd0n@DQ&V@1~e8r!7dw!mnok}o?aq^pq-c;BUPR>1SMzNjAO z@U6h9D1B3){J)KiI_V@Dg*!c9md|9}lNF8~IoOyKdlBKvK1QRprkC z+mQ|bg;a&&1gXPLbI=!T8eh4@`U}&{AnpDhvly5V*x>4R=EF9I+TrQm44Sx3qGC8{N!m z7xON~lx&tsD`r|T3rcjp7v24bevjthm+gKh&3T5QeuJmzW9&D-L3Ag(L%jzy>BB=j d;;wSY;4$AOc#@?%GoEA{5?JS+q1_WC{sMW&QxyOJ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$StringInputStream.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$StringInputStream.class new file mode 100644 index 0000000000000000000000000000000000000000..a3c1f1dc235f8549c3efc8d219a1d167cdf8d228 GIT binary patch literal 1050 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 TB_4%x4jUws#DhsJeudOOe1W7G literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$error.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$error.class new file mode 100644 index 0000000000000000000000000000000000000000..771d856f54d7f75bfd4561b693fe747d5027a3d2 GIT binary patch literal 816 zcmZ`%O>fgc5Ph4EI&qz}gnmP5fdY0@V(7I9391$>nOssug4-sTXoI`1ymt95Kr{qOCILu`~6NzM)c_yUDo--6(uWO@%ss-D@EF6Z#iS#h%T^{EVLs=*(Vw3XD zLj6C$gEURjD&}#+Lc_sLEHG?LR5N5=autQ5w-sqP)oTYK!*VzQ{L^;NMh#0^*fPVK zI|X#5Vb#H!7ElpNWvP$@E$p^~b=)Dv$w?+;#!zwtFVK-q2X}Fgp_(PbD?G!3>xDyp z%Kezjf!{Gz423OC;Q_;v`)@q(x>R;Qc~3){3x$l@`Ef5wk9aR8PpQvin%b*r+^0#J z;%BIJGT#6AhM!zFuscbf_M=0gyE)gxZD|!Wigu*3*NMt3_zbHPBmR3Alo&`ErTZ~g zDpIs;vm893Wftg>!B~1-V0cJ>>vS?Y%iCkHbGk4*BCEr|7qTuqvKsn<23MqWuQ`Hs zhWdBZ-dN?&v104sr}|M!iEWqasQIi3#LKcl=_MW&asUP`iKLH aje3OwO#|D(V{^8MJYW-xd9?5pE588@cDrf- literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$getmetatable.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$getmetatable.class new file mode 100644 index 0000000000000000000000000000000000000000..efc53b2742ce66f2f75a828b9e2fa3206b93e4f3 GIT binary patch literal 818 zcmZ`%U2hUW6g>mT!aDu56|lut?FSU>Hon%Fl!iu1;`U5}{rzTQJ8_00nLzbcJ2Sdw^#H}?My|7%T zA6mB4zlywpa(s^=`_l0o^@<@~sb1%hV_2OCHnm2MZSgz zC2<}Mr5Z^kl<2#XAt!>N3<5u3s8?F{t(XYQ72eS5s=)Dv=T&=-$&SRe);%||jtv8w z91pO?u>D^Y1D{tbRhIGP$^S!+0*VazcC&ZUyJ*-=hT?*LVoV!&#Ib{2N+%F+Nr>UB zvH+jiT_&qp9&_wzmYhFUaj4qM6ON~NMtOHyHbY?vEkowgzo8h{Y{!$GXw;WMZx(E3 zAY7MWrK`l?O?hYGgKz&&YqE z_FwRq7`&T+TY7g1u~VC3tzG|#jrtw7rzq8@D8EPc4*QxQ6|2pxeIr}naZFQ=)Nd3F atT*ToO(jNFaT3=Wo>MhR$V81+tN0hvKeq<} literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$inext.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$inext.class new file mode 100644 index 0000000000000000000000000000000000000000..8027c60915a2bee206a6079e9206eaf5d9e8b994 GIT binary patch literal 637 zcmZ`$OHaZ;5dM}|u~zT_f)4~AF(3&wUNI(0B$5y=8tzNoV4<{0AH-i|Jn97#5B>mu zlySD=0hAtQwmaWrcINZz{R6-?4pl@DRS?qi2X0tsHnhJuWSEH)Xk|4K5%O5tA_Gt;K)3i1ra z8PRYYSKJeAvv)L=jWwKmdQ`ei|D9me6K?nv8k1>{ogtNKbH=|03w&u>w@%<1qG`%$ zX;Z)2fR8ytvLihI#_@aw`wUwP+aqGjwuRfUxaSEEr^wNwk--_GGVmzkNQO&pU|bD+dvO`2|Z2utY5e_uBTUj%IcvnDwZS+nj5+1 zx}`vT4`anpX}^IC1_+6r)$J`prX_VVII2jOJ9l8nz-J5-QuUWkTl<7vvxQL>Rv?T2 z1vexY-zj{BS=NfP$3M|oVvAmsMACUU%C0+y9GZP6;FbH=lKM9%aI11nh3*)QS8@D9^CVlIRM9Lk$2P@y;fNm|KcC?jZyY0E z_-zL9D3;FOf%3ng{kTKw2Kpt(c)$1z_Y`!B1f4N5g3$)kWM)_^oxg@Yow!B%3Vrt& jym(`VJwWH2H^x{DK6}pkWQP|Up!eJP)wR^5^YkAAeyN1CqnaDNF3~rX2W|`!1)c}GRP!Lk_ z0#t@`mR(L8F5gS?1MHFrG+u zBFVXYiyN*+D5989a8|`jILC0RBTUPRA*ef!uywQCIQ+Ksim7--x`cG+ZWE${3q3+C z+qPv(kBcfMF-5_|K}|DxRU_C0>^TD)jUzInL}*gQG*S#_s=T6QEwjkQwk~#QVVJfk99DffKLA=e-R}cfp;EIB)Di-k$@zPQ5_D-U+%Z63p24#A>le_Dlo~Vo9 znu;Z4siXvIUlPhNPmnsowpgUj?yZ*vSXQxu>lBExZw89?XqslxLRiE53O-Pg!#V-% zj_a8*3<_(_ths{THC`n)TXgGIx@{w);08mgBT9QQ;$FNq4+;5}iVv|thZJ|UVx`rC z3}<`bZhb^lv^+kN?XblVO`K2=`E_ORv5FnsCcTn{#qjno_gn zHAk#kj-ZfBmL(iv^O}d<38KQVSm31?jWD;WnId*!J|?W#l%!)SmLOxAM>IBLE$U<1 z{TdB=tuzxWTO!7i!vR!7FkvaE$$4^*A^se?SCO>WTi%FS;YDHD2Mk}gPl~3Y2W*v_ zB|~%KIm@cJwM-A1kDcH-Zqm@}VScAAf_G7M+(6B9fp9+k=MRLKHQl=k6d5ncR z-d*s^wP!v^;=MXnA7SVz@-pPjLu_6e_l^7O*#4GI?`uGv!~m^-Aw<7o48I|c-?4x{ zkj0<4g=e^nzpzh|la&eo--s)S9${GiClXW;p*QrAWJi=-n~s(drl4?yGy?yblA`e! z1?^>y5bC){@n~R{;G@$e&N6lzG6S7tkPb5Fw+EZvqQpgzW|@O94ZaKn#dPr{4lw>N DV+4BN literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$loadfile.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$loadfile.class new file mode 100644 index 0000000000000000000000000000000000000000..ffeb01d443497fb070f25e6704625ad7f5b8f80d GIT binary patch literal 1605 zcmbtUTUQfT6#fpmOcF;3G^iBRlu`%;2x@Ds0n0_v*buZqT>5qrj^V&$24~Lj+`nP} z0Izl}N?m>EYuD);Nb;WaEx}xORCEv0b#xuo0&Ej^gsg|GYWW^Cf+(5#_8JG;C zj$6xFKHtgh*RSR*S@Ckq+!IAv8M7R|^-NlVA*!~eH#WyGT>PkdK7n5J8AzJw#{fgR zQ*)EMOKxq|x2sAzHo2Xbwp6zmLYYY_IfX$3=S-Z(1%_0MIazYIMpeh8=P6g(HHL7e zF!@wleQIJ@n?$5%ODl$p43~7?Hm{3x-S>ONH}}yz1c*jTa->m zam--WK+eP*t}qO>bmTNr3`WgzD%_$5oohwtZi7$Yq;So|m-vb*reyZHmD$`Fv)TnU zu_Qco&+!z4S+H&4u2|gjgnqpzD}^RHM(YA#$)w&xbnBt7AFD*~(rp5vfYUdXeew$I z@y{@(e!>-V)NgoiBy#DgE; zM;WUJJb==Ns!rE?uc}{teSdrcxWSQ%2%-vN8sbPW6dkvxTLJIuqv5%3nH^7WbN9;a zH3GZqn~u$pxG-(gzhsD(%54=%EGbYmEJI_+%+QI+-JZvwb{|D|;PZ|p7qalk;hU~wR3^7|g`3!pLPtS?W+$__XYYMg) z3NxCa8`sVbGbCHW^KTu`S8%|vy>L1rHf>wDb&GqR@NkA4tyvx!Y0)4y-SU)~d^vpw zd!q{(PEnS@o+<8PkD`R0AR3ZWmDm_cB|gT=7;CR{oEJjn=`Df+_QPDnA!U_RawyWK GwtfJOP?Vnl literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$pairs.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$pairs.class new file mode 100644 index 0000000000000000000000000000000000000000..c0bea42b156de7d4fae8b1be3de58860a19e0c8e GIT binary patch literal 821 zcma)4TTc^F5dNmOZI=})q7+a-T4h@jYJ4prK_aoqranOW#LHd*-PWE0KzX( z<1Ie;1Nc#dIcsZdNfTbq%zQK7T+j8*?>_+EqG}?Aw1JF;EOLZZKj_unSRB{;r?2a- z>V);S2zG+rUhH)v<$HwOmhx1zO-S3-b^&=5444+CU=ddC(%*7C(ZWN_66Qw2xg`%2cA9NH5I_ksrvH^%xK!i4fz`egIN)g=q5 zwt0EG{s$g(#!;SZ#itz^B;)Z-l-Ku9*tI#9XINokVRPS)gRb0DdV|)W;^wjF3qrmn z!|0tKMg}T`g^?5d-yjp4o+pD{SA?PDvt*NF8?Xt>6Im5K7GCkbQ~VVPMg4_X(^eKs zj67wn#7}=g80n3UtZnGFApWn|+#BtbK#Ak@q=Qt8{#c`{QrSKeUi7ev<%UMS9DB~qcSZ6tf(k-b3$)5lK literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$pcall.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$pcall.class new file mode 100644 index 0000000000000000000000000000000000000000..ce509f6a6f987a07ce9c1efc3fafc9f7b49229a1 GIT binary patch literal 2183 zcmb7F%~M-d6#w0j z+`9K4a0bVP8)YyuE_CCtaO=`>)bXnh^*`u{=e;C^m)M!Q$h|k`p7T5B{LVS|efQ5- zUjxWsC5ixAID!g72s3o7hz*f)Y*kCm6jo%>wiwz>`L?5)GH>X4N7EPv5?N186MCtt zmL6;twIYI6j;Ml1pfH>?%u-5o#7b&o?QBX@3s&l~uw+&(^sg6%iyO9=RjYrD;du6e zy6Gs|(9RK4(1Ax8PBm*T2y?0dSsO$wd-cVSGyQ#ebhTTY?E zYrKidD&?eq9#3;Tqu^OQ$8gjaZ;fvXRn<3)RVvD8L#Q>JhDz1MQHp(BK^hkrS~n_X zp1H%2X@IGDO8XP5!8{Os02dX!=r&};&}XIXm^#PAf8>!dO~Z`h5+)T~0Z|w$NjoPk zOO#|~;)vBmgP((_+!9<>aLp}2Xlf!mmvJR8DR>!K>hJtCt;hVKAJ}r_89M8On|Ze= z*WC$;B8Te=UcoFiemxp$L5icUKWCe&UZO(fFt6Z-s~xe8iqxg|rh->-i>mF7jZ5zE z;di2H-ke$Wf}yXW7Ki7D+K-xU(paL>w`Wyd=AE^IH0MP@BS|bL?PX)>I@NVe+R~&U zJ2GdB;%ZK;dnz1n5iyNDRqa&{8m3rdq8v*;y5^TnNxhR93OBOqx0+YuN`d#h zeG}h$`yT%G_JBwFZFG~)Ph|fyJ@vnk)vuo2Ebd{E&H}%ofZwrOHh%2ri|u5i+IQzb3$xg{c}O#xIQz#+)v0(gct-N=ioEv<{& zo4ul{WKD5QGUcR_?c6dH&0?sq))ccd&d`!P*EbPFH7;@xc+{Ylq5ZUHMlwc?{FJTb zEJfD{c1Y0_YlOiUj$|BC^*lljBQ8t%iAVsAxWu7}M>AR&nodJ{L@6Y%>RCypsx%aH zoIbKAD$&YNY3Zg#n({%kp`F839v!&GP+x@Xg%Gd2OzLANtD1Jhsj5X0Nn6TDsx4Cy zuA_^?4IW`cN^wcQWaNpWU!&8NJsTh*F&^ExN%crCPRuVYGK7wLrs(2=(*VjTOPho( zBF^C!k6zqnsB>Fg?88v*wagzLk7OJ+cX;&UE+unQHiu`=r#^r|4hbGZ7$y#93MB41 z$r-hH_?!y-5B@%n2N1Kic^}$C!pgtN~`2e=O2QK;^RnhJ})V(D;!()0@yFOp({DwMw#}l#z z%77OFy*N&3EYi~f+#%NrI@hAR;C9had%1usbN-Q70iFH+){y@dhFkrwQS06BA}Rz5 z=;@BN7SLC~y#huC%a1Rc$_p4PVCJQdy*d1RY!`wQ^bU`9C|8+FvV$Z8KTw5zwBRT0 y+b;~`H%Z;c5)QD6LpohC2MBQ(V617McFc#2i?NKS?%9YHI)kLAlD=TQ5dHu}k9NHP literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawequal.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawequal.class new file mode 100644 index 0000000000000000000000000000000000000000..9aac1b2068e6cfe5d7823562515a005e59edbb0b GIT binary patch literal 830 zcmZ{i!A{&T5QhI*vUmvr3X}pZ6j-3jQbbU%TlD}cEmA}eR2;Z@7k3q89O@+7K302a z5eFWChpIXb%K?@gJhtp_{+aR2?Z4|A03Y$jM-3waUVu7A3CpSNMY@pZQUBsyq?1k- z#YyL&Fx@;!4Po?sVv_s=VI*vwG|(VS_N6Y=s``1Uy16>@;bUAN2rz+3LUUMePiBfW zH>~`jz86vx8q)TZwW%d+hllaG?8`_?(~FLCo0wj^6+cjk3wh#VwtYOqw7^V&Sv)7q zJxLMjWhBDOutKMG>au*wuQ5N*&8(}Ft9S*&hrdmnUCV2blnIcTZiBU(zMMv4M zvZMLN>q^aKEr!G1cZm~rD|4yHk?^U?rNW~+xPP1$wyO>jmuxWT$Bz4U?!}SH^3Q3O z3#@Yq55BYlqk04W^85iN)U#3flYAo`728H2IW+73JxGyzfY06Y|8 z)`S8A1%+o;-haP2-`-zd0qkShL=Jfa1q(gsCDbD2*+D9GAI)3vY z4c)|#LPGDhANt7-AzxoPFQP~oY>6P1Re66a-9%oPFwt+ovM_)_LbV&ZD`L%DQsT~& z385&ICzXm6VZDCrT#1&j0}*=mX`=kl+gfqHF`QJK>xf$>hB0EGWMLF#LgiN#!E`UB zd!6V?2$S`0T2>^}#xQPR!onn`exYS5uKz3RM*WYpx&wTsODOC`7o5Y8p(4FOWpU5~lisHn;A~)n)*Rr8^$W)4IXTc7YE4m#~TB}G@oYKlm4^%1bXBHVTP@~29?;(Vv4Pn&NDzGjGmJ5jJ}5- t;&LXQ>xdWhcCw;xt&O4eHYz{m<9t2Of*h(?$b1b;>`exksPP;pJ^&JKu3Z2C literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawlen.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawlen.class new file mode 100644 index 0000000000000000000000000000000000000000..57034b4d9f73aa8f7f2d5b843e7fdab92eb07133 GIT binary patch literal 514 zcmZXRO;5r=5Qg93!(y%A7YYcGg9p&W60aB!5{XS3JZQLYaU~^7oAd+!mR{6&@CW## zjMJ)#mCL-lGxN;M&VGEpy#u&JOGgfQ4Fv;5tPom$Ff~;yX69mkYAV+WP1|*bu{Via z-y^J?xt<%H6Y`zzSVsw~8gv6|FbLHQYsX?NR4kbZ#DkIyGh^u}qoQHMz$Uf`?F^Il zyAYw|o`=7bwn)lc-xHc0t7~TfZen?noXVh2C=C2NZdb8gPmbcbBZFJvDE1U4LMcM8 zvjnFT_Lqx(`w9Au9|sdTbdxg1&txYvu@HpPNQTjsA4VGX3H8iee;>l2<#{p~C=rG- zM2|O+Zvg*v0(ctf@eF5%RZ?ymb literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawset.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$rawset.class new file mode 100644 index 0000000000000000000000000000000000000000..c7667743630a91e16ba9b7bfd5e7453fd1e28297 GIT binary patch literal 1058 zcmb7D%Wl&^6g?9=aWHNRp@oLh)0Eu;E}6?wk@dH9guNsrPF+T5^u-JqB|x8c^j+9T|$F?4&Q^DXZ!8 zAYjGLQ_Ei~z?&-p>yc?ze%gD@2FUci$?B-kO#7N{ivlLqwy7;e&TomQq!wm*Y? zq7C&3&FUI#i{{%sqONFTjd{37w`H&&ShmQp25K5z S$F^P@Xwhm@J{t{Evib|5Bm4>g literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$select.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$select.class new file mode 100644 index 0000000000000000000000000000000000000000..229f5efd0323c6b1518b719a598d9715604093c2 GIT binary patch literal 1012 zcma)4T~8BH5Is}2-LfpAwIE2V6;NA>tRV8WNTNhylL`+QOnl-!G?&#_`4fgT;2i6l~lg6B6ZHxm0+ z^KjO3omyaR3;(I#SdUaabUZ~!tvJdFR|!4E(zby#dUY5k`d|{WU2sMUzY!2L#l8)w z#DFU%25^&3$JNns7Y0cY} zgn_D~(5*}!SxnKj*!ls;P!D@ zYhi3Pe}vwAF8mBb%iKFb@pU=>5q-J*PIBi9Qh9Bsg{fn%lxX+51)Y1%L#G7{(IQ4^ zi4SL)^|dieE12V-V@RHI;uHgvs_IDpW~`YPU6{IRQmJbUBg5U>=;|z588cSbbaK^W7*eQXKFiDC&`!Dnl z_^Lis#s?pL@HaW?O~~lf;sZ0;y_?;$XYaXZ_xsN;UjeLQNk^I=+MY}3eQLXQ_>7P)Pwr-sB@DW@V|cz1Mp#3=K2}z! z_H^jDq(KPu;WA;On|nnD5%pN0!Xp*Rcsn60{igDL&nHZmH){v-M4FCto91@t+ir7d zvev;=Ysp>dv=nO@z!eR7fvdR2Nu7%#=+?fn4wJJAAGHMSo>UFWk}=L_rlmaOfx}ZOQn1< zS7rswNQUS%I#c!b6rsOnyQI2s*5Q^sP7ctwy_RpO zHQV9yMRE;iqnpOpudae{!wW(Uj|qj2TNJ;D1kM{bU03;4M+SikFvo>T@v8#T-1s?x z?c&i0M~Y^qK7&5;fN+odXc@H3{X9zCN6;b@L=;+2UOPqZ!$06^3|>gUZy1_k#6qQw z{x$~dGv6>Y^9eWGD7G>B4!Qi@Q%t_7O!MDcX!IT$4;eZW5vSrT@(~5C@grVGfi_U2 xP2A_zaio8ssA1qaw_mI%qe184*@sjdhj{)$O!W|t;<$(>9Cgl6$0B<^{2LHx46gtH literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$tonumber.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$tonumber.class new file mode 100644 index 0000000000000000000000000000000000000000..117e8e2e26536e6ac3d017a3a3ba36126b40c9af GIT binary patch literal 954 zcmb7DO>fgc5Pg#`yRJ)`LQ5Jjgf>9ZhC1|G)B_cTNFl0}k|J(vEVJSs-R$W42FL=q`mU~ip{mk7% z;rM(~aD~s_b(%Abo=y39R?2@fEevAeo<0??Cz^~wkc6(cFH?c$#Qv?+Wq#DY7sXG4 zDAv&70hu!6&)4F_u2NpO=Zh%vB6Rqfb3DU9oRlaGWrJgN$A_!FCrioi?}u`bOe5_%&5mk{wGCvFKIdQ3&?B@iOg!I$1)Pb8VJPGMKqQGwu*)k@ z;7vkqd4)i@&rzE_u`h3b27TlM;Q?E94SL0vN6c11Bc_(vce|gU%~3tF=eYI(6}vmf zjWafDgI=B~_f)k01si7!FXRQ+p>e_2(CH28B+wuiYvl3tPq9f779(pYoTH(kc8)4r X6w%4~+vw)r#twUf+tFe3S2uqGHKent literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$type.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$type.class new file mode 100644 index 0000000000000000000000000000000000000000..1fe0bb739a2b84a04c9e2334c900b789e20fd199 GIT binary patch literal 554 zcmZWm%T59@6g}lNIF8^81r*}K#h}I^ZZR$-5=|z!z_2e^$&k`9^C0oBbfd1qd(J(l{rdj+1aO6>i43v^au)I^Ff{yN;>eg!o%!s{k=`hDTyNBi)j0Be z#ZWl+lowqvWbM|_L=h_nObe^97%C~Q8}lKTv0x}hPmek~#WvqqIQyr0V_eB_8`(b2YkD->b z^*0s~Z2SMo3vA=%M6(WYm~&?h0O^gCeKqFsZK5$2EHz+PxU&q`GvgH5ScutQZ} lJs{K)#p72P?^t{OcUvNhUFu~}MJ>TP_6beml~AWq)gPIpezX7p literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib$xpcall.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib$xpcall.class new file mode 100644 index 0000000000000000000000000000000000000000..90aa6ede30e701fa816c3da31b2e3e44292fba0c GIT binary patch literal 2462 zcmb7GTUQfT6#jNda*{Yos369BTg7mZpuN}$HQ)4W^Wsa%Hn*`)*MfA%q1Y z3id%EoHDIkBJZm6iNfNAL|)I>i2>EtQhMg}{iUobfrHMRZlCTU98J|VPDXG5jRH{x zO?YEZ*eTVzYUPGqBkSmZ)VgyQ*fyI zJ=aU}WEe+qRN$C`<2XTRuEHuCF^uIJhHm5thpS;yt~xnqY3d9Eox+;}Zz*^ir`cT< z(6$*NtXY<6&2nUf)?HvzYTnhDpEjHoh%0DENA07S8r8~iM3L;AmR%^w8-yeAk@h-h zGQ=(g=g>_E&1e}n$C)D>t2Xztc};3Lo&16xoENyD;2pfn=vC2FnR0GSW6;a}@pv^P zN4=H7q|90f?<=^74+#Fr@!Lb3xn1@HrkU4N!(*UVK@ykPn8Q8K#_@UqO1ku(I9g&so=KENnrSDYGO!A?kM;~)^J05Bqi`E;b3J}4BgLaOR^^;n8xP{ zzQC7Ui4|O~R?bt!e!{W1ZQs zw!@kc!_ch3ylUGTzbIH5tlW+v9-06}qjDDW&c~l7%<`J!-B~nvlE#kC>1UujPa!&f z!~S3770mH>kXO)M=)4c`b|uOJu7CdK`wd<2Bg_UjJJul9aBvN=(XKU|Om}q#ia7HW zC(DX;oY*$$Tt`#o&{0I<3Et~0;=|5h5toa&`V7~5{o5ChS8Uf2tsIK@sOubii1~l+ z^~d~0-0BTH!9*;uj!-P{6M|1LC6R)!j}$B;eO8SWlIUMOL+1a(iPv!+6VH1?rC37G z5kVjK-7+_zTsOD{c%@cOz%qXH)(!kES8Ao0caEVz{ht1Xw{B3QTvr?xBb7qmRB}{8i}mkZ~U20iT!Y0aoZ+Jf`p1=PG_>-3!+J$>$AP#!LDh zf6)rRW0idLko`TPW?Es7tJK5i%k%^Fv+O!O#yorVWB)(s6F4O>@Cp|N+BU)eJp@9$ zEr~$_=}ojCxKqk9z9MxCn_Q`T>3pp7VB_^*r}u!J7FaC9`fFi5T?uya6*}v|nwvNy n1K1G*I4Tp6Pu&%q$-Q=$v*d#X+gqFA@EYM>3h{pv7t#L!_FYLi literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/BaseLib.class b/core/src/main/java/org/luaj/vm2/libs/BaseLib.class new file mode 100644 index 0000000000000000000000000000000000000000..e913d9e49565a74f55fc0d74b57c7f73ade66ad3 GIT binary patch literal 5158 zcmcIod014}75`nfH#{d`02g8sF%o4HS~ZOUt5FoCWl^9g8YPe60VBhEWZn#58=J;9 zv2AP{o5m(>?2;~amqbP7MbkEmjos4Lr2D?FN%t*@{oVTpWMCNkef|2!yz|a|XTRs3 zbMBmbY4i+$^TOyC!M{B0<{{ z$XFS)f{|4MsYS)DI(*2~p!+ccet}tW>~&G2)d)pR0e_&!4D@z~><%O32+S=iu8X7G z;C-peL>96&%=F`O=4k#rOlpBRvu<)nC-_L%oWIslND1)Z@Pk3 zrx_NwCSHnC)?_+%G#oH%6b-G*!xeta!~DKM4+swZkI7&RD=wxyP`P~4qDw+@q)&pS5@5VL!p4Ly>)$4b8TaThD8E1#4re?h1y;enY}kjD@w(qtdYgRWff^3S3DUIUEO$_%V!!1m^S^y=Jv-1&oMf;T!p_2(4I@ zhPzNX>petbjDlDTTz-N~=nbwSH)P?fkv4iNkxyR*QC|8C#M z^-qfU_`1MlDn9i_e@uZ-ZhZ|$0)gfP=jnglV-3HaJWI#2P{VKIwzQ=uY!7-)>&>w- zT3Y3gHRp1f9s)BOOo!o=&5G6ed4bZnoSQhv6?);FPzW^qDQP)p^oLkSXRfvFh!Y7L z{q<&~$L@4|_$%k~3gN@wIj05;%d#T{cE4#Ah{}QnyTFMCdJ5!R#mZ9984R-;+u_|l z{F7WalI!1eL$Y+)QLD4EKxAj&MIA5Ug2oRR7DAx#V$lm)19q<&oASN7T4N}Q0{2ba zqZpxQPUc+!PHSV+%WM0`lz>BzO&mZMoto>SS=oh$r%0BQ|t59o#0l0RG&_oVtB9q-aIVroU=RFp%1gEeTpW+Yla>!>o z-+5`}^T))lB9!0KOHM#M#20~|@F_oo!?D0m@iRV2DxTqL8sX-WvJq&xk4SWP^)ZN%v}n)wyVp*d~Q-cF`=c*C?#j#n!eGqT3X@!$mu#7z*id(MhCBA>A&5 zM0ynxa$ynaSI8|c93oML47eB~@>+$w&cz-gw<+WeF7^_6lS1xrv5&}G6!KOV`=v#1 zSJ*pT9N?#W+8Px4E*A&emYl$S3VW}ML;U!Di42d2J&Y^)-o|U_Hq69!%*9QZj~!Ty zomkE(ehqF$BMh!~aLNu~kR$pXFmVsM@F2Qz1U+o+K|Fe( znUEv5;pbe*N6KamM=vn5QZ!^~oUI6tN+|FP{4$n8OZYvL!&9)70`g;3PhO5>F17a;x&AexM%(s!Pb<@OF_ynsRtPha4_B^jRM^jU+CYZ`t9q2YYS z1!_#6^ih8K%>@R7lrmi7TmV0Kd<+`LlGxS^szVDbE%icGHi~aw3>Cv!TDC++<2%EZ z>5OE4`Ut)s3#8i8To!}#90Cdy^g=M3G9eyAns}TccmfN=lUOLuD%Uime^Hd<&*Zy; za$cY-e^JlBspmh`^It+{+&QLDIkH45HM=SL-=^g^8W*=v!1R1 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$CallFrame.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$CallFrame.class new file mode 100644 index 0000000000000000000000000000000000000000..0f0f9fd73814ee376e3f773aadabc0be45b4b34b GIT binary patch literal 3118 zcmaJ@S#uOs6#i}}lg>;!CWJj9AP_<_*)ReELAH>{;3Oc4K?#VRNhg_PGCg$nL~-BO zKOp)<`M?VgNF|ZtffuW=%B`%@aw*qR%PN=hL9Nm%DfGMDv!pY`hv{?Y_POW#&N<(` zx8J#b`3it8yc~jpA{E6N0w@uv9M`AxwuGJ>Z96nHZp0jclAZBn+}R~i)X+E(L@9zQ zLK@1T3DlX^Xj>w!kGD-twznnXLw4JKV<WM_RrB50HVnm=i>hq1J_3m^s z=ETiphYWg?h6+^DbxL5F-*rH@bZgXh-KsP!#u9;m?dY)yffa*(Uxppf6KSI(gk@N+ zVugm4sHWdS-~z$89ZQ&Y+9FY=cucNbrJ)w91+>_h5u3=pu4!m2fa~c#sV}AuHUfp$(e^lvIo)B66x-!>w|v$T3qvY{6C)w`tgh?QEA1 z+1FWCzyHYI&Mrn_u{y9*#qAn)VYfh)Z`EP)pnyUtY5N@AA=PMuKXo=NTfxXey^Q#m zWcAQE5MmB{HS9wtTQzDp2{WcAlCI=x8X|?g%2Xyu;diUJL&E_?1eW?pXBEV%^hTm= zq#r!{nw{#xof@L(p@gP9i5{ZPy9yKZ6zPwXOX9}ULF(X;hQqi^pfnLr8u8?a$=(e{ zq&)jH^hav@akq?vOvdNLBIEriUSX);Q{GF)nbIBRSPP?I;N5|Q4e6mV1uSYTy=c(bHc zuw?#Ifr`u$DkWSd#HRUJIpNOR7Wv4OTF5(5JmrM?+~cJ?E{j~AJ=a^M9>})Wu$=>@ z&B|BqGfjsH>Zu;X88e6NQasA8h#jJ$1doUC1fEp!l$77oyfN}}iYKSc38T#;?K>Ft`ji$ua;KO2EuPbyupFM2%qvbl(#q<#TduZ zbu$5rX)D7`Gf>0LGbj(Y%wSP|Rh4|Nyo-SH9zx3ds8BxOTHacj2>WOySZ#P3>MWL? z!D4SzGmSN~*l-Sks-_EcQ09>M5OL0^P^$N;80T;liA=n8baad0GRpIiA23ipB9D*h zKbcEbW+3q^!$M}jN4b0yWbg@Be##6!V+NnoKM6B~c$}q^HP{%gnL&$JgW4I~auJ)) zU`ZyK8rns*&6lu4Qu1=CmYq_*VBjwq_$vnf8cUULP_KOJ=2rw!Pv;a)Wspu0r-(B< z!Zowl(^FG?7OigJE3adN1gI$LRHQo*d+h8p66n(_BY8wD!)Th{y??zr;Dud^Y)tjIGZZ!l9G5JC(>T7 zk~57t;4*J?MW;{>~? z@AC&$MKP*5rr=#2kvUTP?G=e?GnIti!)qdMpDTWDEtT k@sMk`;9=TQVm!v*BY1}Ys`$Q?--6E~i0AMEUc$=%0O(-pn*aa+ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$CallStack.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$CallStack.class new file mode 100644 index 0000000000000000000000000000000000000000..cf3ca53da8054013ab6dc7f2a36ee728881e76ca GIT binary patch literal 5834 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 E-}~-Y2LJ#7 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$NameWhat.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$NameWhat.class new file mode 100644 index 0000000000000000000000000000000000000000..fbabae78bfdd557fb8121b0d32cff8aefbb49193 GIT binary patch literal 449 zcmZ{gOH0E*5Xb+Uq)i&rhqVvwNl>s4F`!4qOH~v~Jyhy>QJ(jWRUt-BFMv$3=YS9As(MO5iCU}Lw)oIpJa(t z;km|DJXAHy(OEC+f}`$c>Sm-jCG;?UB6M{ml^ExXKqL=5h$!Mt;yjs&8>yZ0Z&N3_ z1Nv$#((E=)GaGG&&i_L&cy~&PWEk-@6{)WLnF{;VxI4{ zrWZ_F?Z1Kb2P@e9;}y!U>%=znk&{wXieDebpP#j?qZXSJ>CSm8-{9@GwPjGLdNG3fk(p08|O7VA`@UkVo8w%xvfroIm$4=~(qc_kC2ZR;Y s{26#;ZD5r(M|auts`U!{nf)jEgfiB+R>C?q3U6YI-C?SRCR%8J12@H7_5c6? literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$gethook.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$gethook.class new file mode 100644 index 0000000000000000000000000000000000000000..b7a62f67fa4f50700501335c8b0ca6f24e4aedbb GIT binary patch literal 2224 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$getlocal.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$getlocal.class new file mode 100644 index 0000000000000000000000000000000000000000..5581bc5cc0ef426cf3e16ac303055857ed3be5cf GIT binary patch literal 1465 zcmah}$x;(h6g>|@UJ^PGloG~8KNOzLB-NtC%g&`O}F;I+J!&i7qD@m z7Dmg3OBa5J<@gJhdbr}O&rpAR1aEa5>2HK^tANvMOLp=nn>kdwBh zsLA#Gt|(Y0LxUln+KM5vx|X$7m0=*3am`d&E0)bt@oG^J0R%Zh66zr_^y@}3soL^x z@?d`~sVaFhxhV2>F{9+8MPaFWK_+a!wWFBPQHJi!`Sz(08qmlQkpM=Y}!qDl7<>>+gFRFT8Rw;I?7jETP zPGC`7iuY6%T_A)_2Z5$Gh8rB?5^iFGA$oo*&YTz|B8P*qY{>h9Azsz% z>Ts?pg`31}jwuN#O#eSz89zYbGRIu(s0vl)2F)RWI}+|2gdP}bic4dnkam~(ZbRktAC01oFl-|%;?H!nFQwPO10i|5$_}8?mbwe Xy_4htdW2a-$h8OS2$Dw+HW2&=1D|gd literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$getmetatable.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$getmetatable.class new file mode 100644 index 0000000000000000000000000000000000000000..ad0bb2a7e2da17f602ce9eeb410b73c90d391502 GIT binary patch literal 589 zcmZ`%OHaZ;5dOA23blZ!$V)t#2udvRs?kK0NK&|9xNmVoilsGu@Rz)*2TeS9^x&^C zdNsyr)dPtfcD|Y2d3>`ouU}8k0M4+fKtfDLTtxy&hMMD!H7no~Z8qK4EYt8b-84FZ zJ@QS*W=I~Iw&@=+#OjTqf)vs+6ctNQ847c;dccR=3Iu~X7XDQD+~Fl^6xMO;pW5sZn@)_lrXzpFD87o=r~x1CF>oYPHP^n0MB@e#Ky zhE{z+=pv>JnSswoS3Q3Hn@Jfsfjbf%Gi)*Q$8&GOXPhC`7oLCac)pAchRWi;=(D=E zE!?)nJx_RO(T_+pC`6Jb1cp_zYJ`k1vGWLaM+(Cl$?zF?BU!*Y$EnP}cShxegJ8i%RilnKKK9P};I-x_srO304N`zIa4k(m1iz-dN^bI^$ Bh5Y~k literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$getregistry.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$getregistry.class new file mode 100644 index 0000000000000000000000000000000000000000..a875b0af416865ad195beaddcc22074257888862 GIT binary patch literal 682 zcmZ`%(P|Sx6g`uq*<`y-Hd?E#)mjajL~x6*5kaa|VU2801GW5CK_mZ@B^$OU{!9?NIN-=j%Rlxt&$>o zNQp~hm2^|GhEi2n^Io8Ck5tj!6WEUbFB$r1q3t0I(7`!@-DT=qGWi3O9=L2`Ri3f& zJ(VeYU!dCSkDFM>1rHkmF5;5F*0TPzI{`1%c_KB>Vq>wT$A9smz)o-RWZ`|o{#c;4 zpC6JyJ60Ku+$U6UsIdNa?qQ-{-SH_F1@{{s<*<&LL$5MZdb4h3nPT-y3{70_O a3V*Tx4r3K&?#}Z%u5@#<5Pp^>q@=-G3({24w$civ7R9PqI-PN_9hsqcK)HAdG{v+uVe-M%-{HTg zj)RT|M=u`yPkt-`>IB-$yUD)$JiE{CyTAT?{RUtUPi2HKB|%UiB1~Aa>{hPrX~((l zX+GCB8cwdR+0X3OzGpUF!!ils9m6!-UBXm4Qu;fty^X*QxiZ zSZv}=kn8o}hGpHtZ3#;Xma#J4s$mclwRG2KBB<%fCiz!PmBOloH3fH(CahjAG{to1 zDkI&&KwcgZ_9hh%xP!$HM_3%IWaN%;A?pgV*x=_-Emv555YKZR(DM9B)*-igwqlri z)jMtI_A9N?W>45KyVePRY>w45%5q6^epfYDYn~iv9iK_ULqa^zi&1)lT(dm8sqY*8 zjM33M*gV#{8aKVFJMIh1;a8@VO;fi^ZOw7|!<7H`5BFJYh_?p*$?F2bJ^o9wCAQ-F zXV3@!U?qI^uYtdO<`_B%eFuU4z)n`^K|08aJw$gmeqioB(i`6~w=Jkb@(bp-MOFNX zxGJi`C#Xr`Fy90F@0@)^=8W+nKf?+y3Wys>Azr>I%##3>L@ZMnYb2pSG9GYr1oRsP a33(n8wtV;_Joar2PuR*_UW%8efQ5f-1p(9m literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$getuservalue.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$getuservalue.class new file mode 100644 index 0000000000000000000000000000000000000000..1a01d921e1378c668e96e9b2349cb23bab0fdd14 GIT binary patch literal 569 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 K*dv7sVt)bQQ;CZJ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$setmetatable.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$setmetatable.class new file mode 100644 index 0000000000000000000000000000000000000000..ea5285275d714e6676df507087802ac1b569cc88 GIT binary patch literal 1062 zcmZ`&TTc@~6#fn^-ELU~MJS>mDo8Itv7*LM6(|>LY7^6nKA4bcS?l7mOZI~C7d7!o zV^R|z^xfZNjAynbp|?rqe6urWzH`nuXaD^B`3t}<9>p+(kb(b!{A>Qqr)*iUsMi*oUL?!O_K$RANa(0!f1A>fVLY`l#Bftyk67zJfGisUwx(wRiNY zUoRTfg--r(-acaC$BKrfmjX?KN8=Z%36q81?|s!)oB@&#N{cXB_C)RDOL5u`5G&ih zQ`7eh**v4?>8&1%Gr@gT(p~Sl?Rp9x5M~CK!-5qoOLy|7a9!QS8dBW&a!AXq55h99 zW*JHDq<(}jj1cYxWLew~a2*dBV_aSe J>)d72{{i6~`ceP@ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$setupvalue.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$setupvalue.class new file mode 100644 index 0000000000000000000000000000000000000000..628adb3a3516b958f74231d4f0edf7c44f378d3b GIT binary patch literal 1019 zcmZ`&TW=Ck5dNmXZrLtYEyzXDs;%YLqF8TWNG#e&LWxR?CVg69i(BX}*$cnJSN}yd z28|C!UwrUKH4Y2ZfbGMcIeTX2oB6&o=g-Oa9{^t9iG(?LM0jQRAP|-fvz_fa%3-#D zl*@LthLx==<}Gg-Ggw4c%y^k>qXV9wI zrlz+GeuQvc#tkepDW~T)$jXHGr?K`%9@gL%Zi`rvv5Gshx{iYw$Wm<=X(+=q5DPjI zAzAk$fux9(j5IQY)$^IIFy1LmPqkd(2G4=z`zRSLR%5ZE>1x$EYN+O}(&+Mupy_?1 z!<&tnp2qV~n7RAOG0#cOR+^n1rRO4vxK9X8bvt22kZOiwHq~uySTQiUs*OXXudpsv z)v{k27Eg^_)^*h^brs7}S#RkdL)>Lu=J*xBU3vULSm(buTVm@=eFc5u4Kv|&=mu4J z&2s7}^aDH)*|(MU4j}HNeFFrFX<>j%d2i+yLLae~`H4{87xl%zA)FVY!fynlzAuQ! zy{%l7vu;L(=t&ezjdtJ9|x5<9=cc}?A z@xl1)k222P6kjP}qS8J^RS%NjKS5SXWFe;3~n$GKL~ZC84UqCy-mI=%}|WXVJuUEDZRkd=HIZnrA1-V6rzd*f!5>`yC;x<$7ANygPh|p!~ zix*>6ojWG(D$1rOlfFz?6eo}hWZlGlJRr>XkI(N3%a?RtfQ7n_4HFHORGXlj4ezyd zQm^GZ>#-20B&*K@!sLxLRsVO-w&E=nY^N}o|94>@M1cx_=j^E-IL-r%wp IcJLJCe*y#3umAu6 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/DebugLib$traceback.class b/core/src/main/java/org/luaj/vm2/libs/DebugLib$traceback.class new file mode 100644 index 0000000000000000000000000000000000000000..bffeffaebd0b1a9dae3fe327787e582673d88956 GIT binary patch literal 1883 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/IoLib$File.class b/core/src/main/java/org/luaj/vm2/libs/IoLib$File.class new file mode 100644 index 0000000000000000000000000000000000000000..5c64b50ab9fca250b8248bb5ed1e126bead475ba GIT binary patch literal 2210 zcmaJ?T~`}b6y4VhnGgm@p#>>e+X`)f+F<=`(<*`>(eR-lw8gKRvE~9 z^+&i|zW0R(yH>4Teb9G*l*@f50g@1XNbbGo>~rop`<#2`?|+{E319|0NxXoV3By7g z;sU3(|PR2)a(QaT^O9O-V>VA;`=qIM+EZX#)+ z1D3#$=Wk}5irmWV?Oe+^b|J{*yu4i)p0yn%5D&|CFgzhJkpB;0Hi<5Dn@CwWg&u)3 z4Y+(ou1cq(J>9fjJA79lmL6SAGKkX_&Y(}g*i~vf66Z|3C~!K;!uB#Vi?cKLifT8s zJ+~caF=%4Q!b>`^^)Zm2eu&-_AfPTgA$ecRn+;OSg_iL2sl51Z(93vb{}GO#1J)wJgp zWw>UCyu}Sd>FNe*=$D#h3un4iZ(Dc=*BPiC6df;6rKntYwJK}jrY?J1q%gq(_Z}87 zw|G=PO~Ryw_cb)JVY||?zhzSlHBoz9$?WJVTSJo~(4DtkwNTk9D8E*i)O=LoCFx7n zTKP<;ZQr*;f(M&ivMPtk(PQ!`B5ktaRD!ZVyB!2!NjDC!45DuAtA9*2``leQSnXOIix!3kd?CU?d#@dlFMGjFRJPbPDao9s;&tySWrPY=LPKQ)RgCi zbR~DITm}hz#XvO+H_nUhIM}!a6it+LC(-NhapT(Vp0}+sRbHyiH7kpu=ie9jxt_Ti zuzJIsbW4s3hV!1cUD?gnjiwsGb&>|d6|&L-zFvo~j>U#~S938f9cP)Hkrl9VuB-fM zM+Sjn`3+5w30q*~L~5-fHo-AvQylHnJY7bN zJD_`P{LV9owclZm{ejNM+5{i)Kh70c;^zQp6k~rhNg?@ToYAO4q-je%Id0REtX`Xbhsj;W% z{S~J12uAE6ZyZn#a?^=^>UGlk!v~ZoQCQ}#9kGr{F=-NTlr)VvwfV1U9HxObvBsXj ze1d`Tr+E1{p6fZ>;%OxcSz8S9q_2&o%!4MNN5yAY<$nXPXQbJqPsrL4aD*rAv6Jat zeugX0aSdoT*(ZeKkHKo+Ax|-`=V6y9d{+>Ly#cs#6 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/IoLib$IoLibV.class b/core/src/main/java/org/luaj/vm2/libs/IoLib$IoLibV.class new file mode 100644 index 0000000000000000000000000000000000000000..a3771b78c24f42a081ddd9ed774b7e7a482c9476 GIT binary patch literal 3272 zcmaJ@TX2(A5dOAJo6sJhG+fdOTC_--UIJCF;a*w@v;`>^1ho83f7+j>`D6Y+1r(%s zMMUv}f>%&b5HEuc4U7*yI*#(6n4)6xmFtq5*Rc4CUaR7@jG9+i^&(PG^e zM|A00*wEPWc&kQdNv#RU1Z4u{xR2mSMorDVa)!YDcz_Go#Y~J|HcWV>>Qe&G6nGF1 zF>pldK+kz6!VfD&t>RLcADc_yB3b?3VMOSLM%!_r*^=f zvCHXz95l;f0s>3YI7TEIx21QPz;fv=k|mmPJLO&}uu8gJs`7nNRrYGZ)80f7p&mWd zyW3LpLzvCfi*nupZ5v!;ISLsM+3NcF-6&vdC6}4cM5XAZkW+J|#=M z+2Prqd+@PIpiP3R7A2<4^teDfwxlwJjfl>}TbDuh(Cpp=`w4+<5=LRibgfHb?+|!0 zjlCyk*i0&+Ltv+5y0}A5M~B*A>F*Q>jqs;t$_-s$7rNEB+D63Y0rduhRY4hI2<%2L zVSEzG((V4vI3JZ&84aYTC7Una$+6C|8pJ+aqhF4k>R8f4Xv|sTm^eA$UD(UlW+={MM|eiySxHAKkEQFq(tSYSIhj7yMrtG6 z7!Wvw=Q*5vAe3jdkY-JSyeROJ+#Pk^jYyZiS9)I&IE+^%v?8a2x0rcp%GKJou{p}o zn-i}Q-0J!^On-1gO1k7g2GG!v zk{9ns0w3cOz8qUOv^Mg)I+~<(N?y>QuIq`-d`w&8eVux2v(_2rzPmCA&wLxQNePZl zG8_=dwMYEa78;R$vzPOYZ?m;fZ;KXH`JMQjP?E_zZ%vySkA?ImKIQzO-s?KKinpOv zx9qj1#dL{aB%;R}!kT5ttEVvetUK{FVfv_pFkGT~@0bkEiuw7Z=J`GPz0!LeGe}c329Gv{|<`ulNrREAwT>Ks%UIeqt zSM>njO<`C{+c>E70AG93e-tN_K8Z6*pT%XRui#guui|&5ui;Onuj6l}Z{T00Z{m*9 zcWIi`_sXVP4y>uH_R>uI~vJE%u#gZ4|!Q+k?fjA1(O`8;&de1vHMY+8r`T7;vt z7$+%!v$OFr|6wZsI&rpv k)fO$&qWTCoRrVxi$u51>mLeipSN@1qyoP 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 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/LibFunction.class b/core/src/main/java/org/luaj/vm2/libs/LibFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..3ddbafd87731c34e0143ff7a61c2d779b01fc593 GIT binary patch literal 3013 zcmb_e?Qc_M6#qTz%k9c#!;Q*11vc5RFWU-3P*)hp+@R1gwKzlsxoz)8x9;BB-VRVd z`biQ$`$4}L6B2_82n8{siHRm8MiUcX{}Mm=@_TMCw(Hs@BsS@No_qQ`=Q+P~&T~%h z{e9;yfJwaRM;lxU+$ucq3iO!8`B=WJEyR|WMq|mcHdQtS9$Kv#UM-Sjx>R&yqd>c5E|lyu1U816f_->c#U}I! zxYIc!E3iM5TtS5VXSIA;kJlYFk=IJ4_^CRH!z2-&^`jS$D0o!GW^57Ytg*GV1lAe) z`Gn0X!*Hy0YbL#*XRNr4Y@dpLJjRflg^ZacQY8Esz@UQdDjr8jAkfrL=BA`u0z*y0 z)q+`gRzXCdyXNZTg^XU1DOWJm`EI4RZQSn)=fss=LLeSucir!OYoEg9}?Kns=C%vPDte= z0*6{Dw>Wq$n@MSNTHwqB+I--nX7HSX=T*Fb6svtjgl4rOdsaNuVp1?ESrlw zYotNhNn*SqCHKVw{*+lRX7s6?jKPMwkuV}@QgqNXEp}REA()1h?6Ko%;oTbMF)P!N^MLXv@ ziCqvFT*axGs|sEh*s?a1`LFVF_p=|hapbnaEk_J@ZaKlZuIG+_0oaAl@U5S#;OdFo zg1E+wz^i=90SmlM=p{-xXZe)yeOx8HCvpSIx9F719h$^tD75gn;1-_v>YD9t9ODQ(1R@Lqa0MOsm|lOvNPUV3u3|T3aoiyCIu777_Pm=m$xgWc zf+ED9*mY1rxSPRFBjb3!**4EGyT8PM3{o}B)gXONX!bwoHajZ7Ite}Lx{fDPjS6?E zpkvOl-A@G>>-MTbWEK1y{>&-nz_*g0ge&f@_-*WKwEdk8KIDL<-?9=skqVw^gx<5E zM;z!D0$qf9Bhd;b8?oQp*l7p5l}MR;g}JZba3lCf8+_UU_YvwL*e466f}@S-pNN~s zIS2hAOIv!pNH30k#0@_))x~zNkNZJ>NBG@qvy%QEmoD3zsHcJx(x=*6)N6~5Hj1LG zDnd_5hpI*2%fo@6`4{dN*3qvR#c!;U-;u%}&PDJHxP9xp=t<62TEHUL4yqUEf8Kr? PSfEJgeU;!EIC5C=Yh zk3u*tNJJHf@f&;m{Os}P*ZT*61C&%`ASsYFWHCTk_Jc;*jYX^6zTGanjv1CO?)|-> zaTt46xGo{98%D3dgoYv}2}(PWsb3T3bYrcS zs>My5#kZy%RJcIZzheDd&GGDB@IrJuI@0?{-Oeljg!?sm=>+xMj|0m-bdo`}pBc7V zqAdu6XLcAJ`(dPDkuZ~L^Y6$^Jn=j`sJbEy?U0GTe;}9m+cLa4K!TjC41_8678r>! zyZ#D#;R|7!ZSo8}vMpeSZIY@pO=8TiZ*-t+^66mY4dc%o`^$Qgn+a literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$UnaryOp.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$UnaryOp.class new file mode 100644 index 0000000000000000000000000000000000000000..c9972e7c3fc80e8229fc776321a876aab60f034f GIT binary patch literal 561 zcmZWm%TB^j5Iq+P#ZpC7R74aK7Kn)$w-^%x5=|;BRQ8v0g<@${{#)Ti? zM;WJu1%%CWD z>07#I*cLL^HHMTVjx36&wUK-YZU;ifMblKMdCPd(f3n&c6&pLzzx;nEr)U&=WFyF7Kg2u^2^IRiMokNn F`VUaUc^Loz literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$abs.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$abs.class new file mode 100644 index 0000000000000000000000000000000000000000..5b7d83fdd147e44a0cabe82d83e88a338832f8fe GIT binary patch literal 419 zcmZ`$%T5A85Ugfb2A2gDMd84~#6cR6=e`aP z9wM2%+)fF_Gac#doZz%Oj~+@`7w~+P;S;K3Ig^2r(P-Ys9vP+tx83XX1geDA>VSo_ z8$T(+Mqfv2kWWID+{@6g;tr)T1n(}+lcBoQR`Zv$9otkwX`s^VDo!(jT|#qZ5;tB) zkxIHorm5ob#PV%8L525WkFC5B@F>h$jAWIg570Xk!X{UH4ZOm|7JTLlD=*Yq4?iK^ e{#hN=SSw%~J9DgKkFmx|0d+L^A1aJxH2wg=aZxS+ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$ceil.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$ceil.class new file mode 100644 index 0000000000000000000000000000000000000000..ad10861ae079ba40f8af7d0307711cc39ae42791 GIT binary patch literal 421 zcmZ`$%SyvQ6g@YIO-<9P)oQy?5CmHnMqG=VR#B*R;bT9EL!B~BB#(lB;$Mg>#f2Z> zM~Qc8cG6kgb2xMEWA1$ae0~8qL&t*!+lAv}2^GR_l8ysih)FP;9tT>5S#Txt$Ds=M z?qZQXUq2BlCn{F?DZ%dc?mbko?85U=gHLEo#7qQQ#N&A$!HJ~O4BbI*;G#j;S=^zt z_LB!mSQ)BVj*4k0(_0a0R-8y^F6G@MMH?$GolR7Wz)FOn>Gu}SDGY{iL} zaV*om7Fi}Uf?K{0N2v2g%rTL70v?6gHX|A3;2reFgs{rdTmvs~um+#`pOsf?tot8u eU;kNcG+DE-j*U6Cu*KM9#X<{h{)swc4eej-3Q_<7 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$cos.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$cos.class new file mode 100644 index 0000000000000000000000000000000000000000..5b57a52f47afb7841e5a69c2343a6bb2de709688 GIT binary patch literal 419 zcmZ`$%T5A85Uk!^8C(`r6omr^6BEIMYdjk-pwR^J;Nw2KPH@SvOZGwHr}!1dlg5J| z;71vIfSX|sU6q>ZR8P;(@7Fhg3$$EVumv0sYbX)+lXT?kLXQ2}JV^5f51gF#Q_62H$_UeFz zvzI(6!p0zq)v%ZZD!rG1X2l7m)&%!1Dbi3~Mn?0NvmKjMLV2jN{3^+Efn7ptWfC`D z$FWL#T4tHz@x=0NI6;;7VUDT15%4I?+KgnBqYuzK6T&7}a}B)0!4^E`3o9?wSPwrT e-u_u_)LFBzjh#6*u*XU4qZh}HC@y5`Stz*;1t^~O0XQ*9+prh>?CRAt3pit+4RU)ahUm+BEKKR z;qI*#>EqP{p?nH^Y=oFL*NiK-iO5=%|2ajP*VpwR?zq2kg^p}~^Uk`_?E!Ou|R(wO*2 zTA<2+z z^8wdw?zF-YVtdhV`7V87$w*;FLR!Hr<`@>n(lErEUHAGjY!_84l~RQvum01wRA&&& zZqsC#tXhs)>vs&(JL85;9G7N0l+k0-h*ii7)G2F%djiQ zots$br^`n|@hFO;?3iG;JGUN6SaRX{D8naI$6_i1CF0Snk5IT*Numi(yVvQts1mjo zNBnua$(C$tu3 zapQR$OWjo>O=U`O=kLP-D!dbOOy#YBM`5RD>-WYIuc^5Dz4{SDwFmTY8@wUBc#gki#*idwZG742HLvr-HE zMqE3-P#aNeI}N?WS0Q0|%@6%#ose~_CpPkUV!?JW0*6rQgV$4WB7#&h#*YIPwhZQr z#uOclVvGxk`diqwF^&lf&m5HSoba-b%*?VUlC!$sm_O~PCc)}z_JdQxw7Xla_qDV3 zPMFA+j8?VYq=PBEAdGlt(mQXev=Q)Fyup?hoz{vogo?X0NVA`I8q7k-ZK@`NM(chk zACkwy(BwQ31cXoSzzAmj)&Hair5@S|g`-4x=X>Joqkw&+(#VtBz8>0nJi>BYbOj;5 zFXQC1iW3WqgsHwG{ChJ7?u4O?HUkmIGUj#k5%Gc7&+u1(vHS(R+1o5Qjs;XPc@Jh6p3VRO literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$frexp.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$frexp.class new file mode 100644 index 0000000000000000000000000000000000000000..88918b5fb8f31f2a48f6635ee9e876b1cd3002ad GIT binary patch literal 922 zcmah{+iTNc6#soqnzUKgi`LlP*u=}yO&d2SGB*U>1*_c#ZVdG8YnOFdyJVzE5d?iy zd=>w|xjte#{A7Zv;n=bZ1H?|07mos%E??>+!nz(oZy2r@(!aYzg! zj$1PtKHoN4JCjDksx*yt?p}3ki@sg;EXQV$W-Z(Dt}qCCVO>E2Ng0ZY9;ght2%M1I ztu+~Xs#|8YzTxn?F`t87(HZMx>&T|(VixV6HN zFGpUMeZK7PR7`h9p@caV$DlDJTL+a_HW?Q5zYy!Z;hQs2cemG>!oS@L^5~P%uVMg$ z44G}-;zonpHDkWZDsw<@%_%!}?V9BgZBd^u+=wIH2~Qju8aW+l_C=^6z3&=9?`Kqu zLT8X$L3cst0|bwD^P4RtpK~^7nCY@*n+GFUI{ixv*}%Tnx2eFhQ7#B4zG`ZCEGULxdv}GO&Ur(+$Tne zax5G}AnD%&LxHRz(k$?dy#;$s2E!Q1APjsYIgYa=gQt7sRY>0+7vDfG>8YpB(7P9Y zZ5(~2w{iTEsEIiYJ;-60Ki0(Lljlh0aN;GT98T7!B~8ps-FuXkJNL7~{>H=UL|$s+ zbUr~MNI}VCVflV41$-j;85+J|5MOZ_-*6M(agHLR5Pm`vI@G=>BPAmth+uS&9lFN^ Y0RoC)QUm8hJ%J0P6=Iaa1g4Pq1%a~F)&Kwi literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$ldexp.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$ldexp.class new file mode 100644 index 0000000000000000000000000000000000000000..40a5ed166fbc08c6a5fd259c9e4b9a849516e6dd GIT binary patch literal 473 zcmZ`$O-sW-5PjPuMq@O!R&CWHh|tD^5%DM<+9)cu9xUEBZKzwfiR7c$U*S&?5mY?* z1N>3yq$qmn9Oeyg_syG~{rG%)2XKUnfgBVastFBK44Yxpb7ac<&Tz2jNa4lKIZv*e z!rQ8gfJdW?TZX9v5s2iFL8;kS8ug)2z6=70GJU?plabLB=rDV`*u4}st#$}jB z9sgKlp61W^JJ~o4(=9(vPQp0RQD!Jl^d#YF5cp9;@;LTm68=438_$DXShTw=vP|0p z!va+mLY6VxFJO;UFcc_f$G{U*ETTwtcC|`uwm++C-xs0t{Ql?_GdB-J{TDq$!4h#f XEMsMiC9Dz_h{>UZHTpe^a2=&@KR{q7 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$max.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$max.class new file mode 100644 index 0000000000000000000000000000000000000000..de3bb729f2060ee1852c893a3cb3bc09ac1b9c67 GIT binary patch literal 686 zcmZ{h%}x_h6vzLE`KrTE5L=)~1pyi%qD1cE+>>+f?|=U1-m9Ch-vGSDGZSM_45$_~=!B&x z?$|*lPVIj0r5*TAVz))S6LT&Mgvz~U8Ek~1 z7w-llNj!dJh23Kbv;3iQ$;e*{*5ItlJITt6FQ7|K_?jO-@QmbY43=8!t*IsMu6>WfrpP^T@)+dF||NdUTU}P*8ozL;_9DksMpDg_g p&pF?~HTwXHP;O8(FikY~hdnBIlCz8KUTQqW3hyS{ndN*HgA7Jpj@;qksT)c!b-N>evv;15+xMgCH-24{8NNmU+y1AXO$--)9-22MEM!7@j6HD=W0-EHb4 zSRG@#Il{~{yaU8Bg~r7`JmC~i@zIR7?~SvPrAwnqn%w{Z literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$modf.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$modf.class new file mode 100644 index 0000000000000000000000000000000000000000..70398856ea3e890ca54ce9fbb8a552e472f455bf GIT binary patch literal 908 zcmZ`&%Wl&^6g`u~apJlug#^-+mH-9fHpDbMq^hVA>O+8%vM9=e-NbQSH;#?`$cM10 zV8NCxY)Zs}58x{h0wMT@2yw?v7b#?Ok7wqdd(WA<{_^M3X8_xHpdf*yjFbuqX@;`r zTe=hRL%rXt>yF(H^cMFY`PNS48lmmE4C#lqYlj;Q$%@uekU>_4qGAdvLw<}-Ozv9& zLyBOPVXmSz#u6G4Z*eCw*A?V2BjcQkS)6Am{5OkQ+kxY`R^0l9f;bMBE#Ys zCsy9%;X%W0FZI06K7-sBt)9`>d}ZrjA-hqpZTh4nkCKXcTxQ7jPYejoc4dO}@$Hf2 z^)vNPw}sC|6<1JZm@*DbqucSKwqwSQwiH~$bs0-4Zr~(Wu}jEhrU6XY^X?}gmxHu=j@ zC1uZxe8b$ag=Teh!8IY2A+u`+;bSidW!$C5p7`_(ng9ruy>3kCSo3;+NC literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$pow.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$pow.class new file mode 100644 index 0000000000000000000000000000000000000000..31b3ad4f980778fcb8738d9e3b91ad35a39404c3 GIT binary patch literal 418 zcmZ`$yG{c!5S-0ja^Y}zgjXm+fg+JmaEKaFkbpo6p#ae$Ut++Ka~Itsh_6Cayd*w= zk3y^w5;SqKGoIb`*z3=)w+{eEsQD9jf?<_Ptv zT@7v_xb1kL2=iSXsa`$`RdOjq!;0IN#t{6AI8XZOSX)i}-gsvyCz4R^sWdx@Q+5=m zQKXW#k!h+@&ip;eVH@nC!qc$JMxF=Ql3AURtg`(KdSXIY;AqppD_kr>Ft?=}yerz= lR_g`cBeVat?{H9Mt$-yg|6my_j8#?&JjYf3h6>{vYTtZ1QfUAH literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$rad.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$rad.class new file mode 100644 index 0000000000000000000000000000000000000000..da6b46b96f619e08567a3c3602948490fc649fe9 GIT binary patch literal 431 zcmZ`$%T5A85Ugfb7S;t6MZtuFiHYFBHJ*(Z&}f2~_`1)+1cwZ>W_Ka+U;GE-N#nr} z@S}`9XuKHa&{e6aPS^B&e!YJHIKh^W92^gBfFwJ@W3AEB7VS7NAyNeOPN+wOWO z6Pk<1Bx13TtpH3o~+=xiC;tqt?1phjoCIfk@tQPzx+_$p{g}zL)vpCH> zY!Dg?CvoGsF*50Bk*1R4d4Df-I0Oz*;@#L|D{luJh*^`7tg`nCdSOCX;cBmeC%9Ne o!2HL`%eB_sH+awgtPZNI<*rN9v6vzLkY+1Tp3REe#A}v-e6|Le06)zx&(iBX@OZ+&Lv94}+$#zThJ^Uz- zK%$8v(ZmPvU3>#?XQr!(G=A{I&P?Xa`Tfs1b7sH%`1l#XEi77yq059}BaUvuxF6KZ zZc98XZ#QPjuCviBSDlUJmRAcM-y?Kibv!4$PUtF5Jv7ln=zk`*MY$C^Zuy?@HvNVL z6I}@;VVmf+kwPCK*NI&f;ZsHz0`0`)--~qhAaPD12W+Hqh+uj0MY!a*He9KrSh84Z z&_)JB1an)sEqV6|VXU|`RsBn~+7fH6#)b?SH-b?UV>YrFCk!4u_E13xiP}?Hd+z#P zT?Sm|V}a7Zkx%QUSh;}%Y%Y~qZKvzQ^I zbVYR_ZE#=BZ)}M`KJc1O-IJRHEw!QweO?hR5Db>8@U-Y}axwa z!bq_*pmtJ(GsTW8Xq*1+(z_mt+VfSh6{+0*7vjIk*1F#cYI508jblgccUo13YrZC% z;T^vjnpohJ{%Q#Q2%_WcxZ-&-Sae0RDVxag)x`KA5r5q1JjV6c%{v!)HH|K9>o0u( zl|I3I`~ivgu->wbFw3KQe;^A6C3)u(E=Qh6d0$bJrFXFQ(7%tvZ~izbJg8SYT!|d+ zu(ZJ^vM2X2ypXeAy@q9^kL)A&sAT2#P}oON5n@_4#esqP5vKv9DUCU{F!dYKhNfPP zs1KNGvaO(~H>Y`+jc4L{1&>GYd?tR7o>r02Ak#BQ(hx>ySSy&I?-(%*4uV@fl5kl# z!4l{46Veh2pLn%{Y&-9hvu4JekZjt=shyu+Gv@AuvM9}SV)suzqYMFMVbVBKl;eLv m9tE1@_f&|KW8aW6hB@tP+UYuO=y@JDdA2x~B$V zeg=d!|9=Tx3v-w^v0&pS>V&02f}e}Nh;m7&1;;Wtjbb&L2s<=!i?DDa&V-j|VdTA@ zl((>m+q%_dg3&(I`Wv`o;;zwREPM-@C| zWQ{$SV~tqu1<383!~DPz;Sry6D6{Lrpbl!Z$!H7fS9v?kVep%k&S%`%bw9!Uip6)$ t3oM;uZRUK;cO`6~J+TftZ0n3v;b4=`2HROwF9B~Ov+n=^ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$sin.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$sin.class new file mode 100644 index 0000000000000000000000000000000000000000..5a581c5621d499400a0b5715da679b9ea8244610 GIT binary patch literal 419 zcmZ`$%T5A85Uhrk#brT7Q8;igF%dkt#Z7{9@I(s=L# z{3v4&a5K!It5Q>)>goCU{rU!QfkuEF@;Djh-^HKOM(1y%(`&#Ty8%3Bg@5O$YK)IW1hycI;9K#lE!JRbn$AyM)HdByPMm zMy4Gttd*AFFW-g}lzAWSxXK#=kHW0UNKQHW0KGFIY;twiz$-j#A!NR=@%5~F%djiPjR${# zKg#$Pdo%3e&1807=Iz_>pU*DJ)1yE|p$;xZ_ArRT z-P>5C&sUFx(s2|=*$Kh!bniTrvFyV0QGrjWO~gzDO2p%NAHmU2X~xj$cl$1Cgzd!% zg|(O5OG14R#d4TWLz&))P_g2Sgi-|WI?2Ttay$b#|WU%*6(wy)cR! zFXC9HJtef3n&1|%!y&4?5pzuCoq$JSw#7(B*?$MUF(IsQHP^rk9IV1;{%7Tt8tdK% f+}D3r8x7VhtYLkQO>8nYSh3JVi+`fZSV8L-Rftk% literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$tan.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$tan.class new file mode 100644 index 0000000000000000000000000000000000000000..86f91f4cea3859134931de24603a63e176909658 GIT binary patch literal 419 zcmZ`$%T5A85Ugfb2A2gDMd84~#6VSo_ z8$T(+Mn5uYkWWID+{;k2;tr+O1n(}+lcBndtmZFgJGQBW(m(^RDdv3wg&P~m;pV=He2JPNZGBU$C>1N6>>u*ub41Fvwg1)urC$_usD!%v8} de^v)I)(Y6h&K&F5W2~`KKphSKhYDjEjX&cZQCI)~ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$tointeger.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$tointeger.class new file mode 100644 index 0000000000000000000000000000000000000000..7eddf3b526c5f9607566b71130fd411b3bc7e7c5 GIT binary patch literal 732 zcmaJ43Su}EeRMNe4Cb`4lXlhceX!ex*uEO(-o4xW74=QH5KZJF4&Cb1qC$?`kxp^HteWxO7VB#{Y2`JZ1TxI(+(J{M^_z%WPE6lLZ* z_0M1@RFMA^-7#=UaRE;$y3uX7T$HC5&)~I|&M__8+ zCsC?~MYN;kMxJbydSq0l877}9t;{n9Cv5L}aM9rKd`!V-m^oJ-mtt3>rDSkTrptq& z%o*mwcKpw*uI+Wj$23|DbyaAURv51v2yl(#x{n#$U|2X;T~X`_^EOt)W%K@!z?}Ye z%rN^Ol$$>0EJ{NaN*i0{;x+@Pi%ewhVxAc6rI|36(_J5nxJTi!9cE{bp%cdYVl1Lm z=p-7LT+9svgEAcFe`Nmj7% literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib$ult.class b/core/src/main/java/org/luaj/vm2/libs/MathLib$ult.class new file mode 100644 index 0000000000000000000000000000000000000000..39cc4967154985502a36a9d544b39fcd24b400b0 GIT binary patch literal 662 zcmZ`$O;glB6zrFsY<5G~^#c%M&Rm)U)@qlG1lqg#P4My>!0!N zRWC|;@CW#xw0wyi+@ienn@qZ2_j~j6_xB$FUg5qE2MrG*fQu$!*=9+oOL-Db#!o_> zj`DE-gMFDLTcwGM)EYwbS!&YaIib-X9QbIV?ZFQ)gMctUC67vZAa$t-?f6*5r`npN zmJNM$(DiU7z*Sr$bWY?%hFY2=jA~9dw&OFIsdpw%6Qd3ZZhtr&Z2OqQyoZGVH?T

6eTaHI6+m|EF zHzJl=6JGZ(iR;PM|8srW>o1)!yI08gbVr_D82Ed(%wn~bR&K#X`p4Bi2(4X}7jJA{ zc(_NnITiokVOh9sjLJ5(%yX6Vig|i0^R66zWYoy73+};RJ+8#neeezRg%5;VjMZ@GHEHM+{Hhl?C@4vmfD!PY{iBT>s1jr*6?fgIfr=;$yo d{KBFTFE|zM)YQ8it&*%@m8;KQb9`Py>klp!lIH*b literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/MathLib.class b/core/src/main/java/org/luaj/vm2/libs/MathLib.class new file mode 100644 index 0000000000000000000000000000000000000000..0d48f3595b3ff43a792d620c2003aee3b7352142 GIT binary patch literal 3770 zcmaJ^X;@U(8Ga88b7!t2m70=HtC)=O}FPsfAw$sJ8iY^IWwXZn0cNv-+k}-_Vaz` zocsQjH{S-Z4S&;-g=`HD4|3oXxGfqBRfUtrzN(R->Z-8S6R+wRjc$&Gnv#*;gcXel zIP0y5mAFeF+h5-4h6`>Dx(AEk5m+`?yv0Zi1g#zctz~n^j$mMmz^%ar+3Gap3KYzm z4% zX{t9$7jMt#B3X2-k^-d^=rcna{22wvqN7X-tfhcCHmspCqX1cSRG>gm##6IWa+SKceb?$TAKuXv!kA2sdFJfN5Xx| zkPJ z!X6FxdT<}^pQkNUU9z)AWPP^v3#{-rm(PhWkg~)8_ex)_hz29GuU14yxAe77`pR}s zX~;RoJwyIn7-0Ijg8dryWn5;-qr;NAh6J*PEe+9G@yZT$ZgLm@yQ8tvC)+bF+mnsC zbe_g+lr1>IAcmu(8pbjPK^7gO((pm9e$0sUMTayTo_CA8woRnCbR3dm#~6F+Mcg!5 z&kqT#o>g5pHq7eloI1wwi0rX12$W>#v9yS4wd0H_X3)qNGsZ*~9Veu7k5eEnSMpRw z0kY^gDFse*!Qv0b5*nV&xL}e;#~CT|3~eL~+ITjj4YKGsD+OK0(9)$)e+e6!?a$S{9t_E1wJBX6p&g_b8h-qsx`BLt5)B z%5~=Go3p2+Ps9b@3oLF=FtIJh@HGQ6C>6pyF{G3+Q>njM)A*9+H0&C|;OvSBj0c0+EOr+Zs0F zaWhVrt|?&6qJ)&|_LF!&J1+nH0Xs;{g_xYa-E(z|3 z0}oKiUb6iHzf6f`t)Pk=YCURWaaZ<|qABFHR(icQ^1G(6bP~5zdT+H+NU&0Y+ia{N zSgk;bjWU9A1=iT8=%VpE6#BG{b)5RF0yQ=^5ZtLios9;9jS6hKj4kS6hmB^w4Jy!L zqmAHh1@6g5=QMV!=Lc+bbD~Fq-h7zXCPFqWP7JDva6X175v%kjZH)5me)aZ%jY9-S zy6$u+%!tRkmN};Iu!4`;IKk=16!?;jlLTK@;0YUN2%b{lX&Yw=o>Sm?8xsWQ6nN3b zd4g9I_^OQy1YaYl@P55=65p)werponnZ)Jik)L|@PVz-+vhp=9P!{B39Y7KP2e`%- zeAtH)45AugY{U>+*lK$aMF_)4;6WTl438ns4KaaNkmQasg12}My@xS;fc^Lw2k}oH zFjsgKEy5Au!%f9|sr@Z^>HM=2A%lvnHUpQ>?|)@lXLb0{uwI*vRC-RJOWgS8H# z12s;cCV_VG>fikZ&f}r`0=Z|;p(-Em_y<}Hi{_VnU(aC$-=V6N7 z7$i=JdsRLPpygeGJ6mLXKSADq_|>xf6Slnzznj@B3S}Pn%Mr8o36&n~=5Fx;C$sQ- z{DHKZWjM}SxWIF8f<@WQn`HxwteF?;3YOj(p7|$uA1~tvMIpa?KEy}(Gv(f)Tt3a- zOj<~~f^-#WF=-iTDQN}iTGDl-(#{6b^`s4?^&HI{0pd2&R*r6ty&M+D0LLiD2Ip4C!gov!u_EPLRI9ah~HPjtd;Ga(u|~7k-|8MEX~U=YJ{U BtzQ5D literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/OneArgFunction.class b/core/src/main/java/org/luaj/vm2/libs/OneArgFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..3402f4e32ea5d79a6d8cbc6f0234deabbfec355c GIT binary patch literal 836 zcmb7?&rZTX5XQfS(n75Qf*>jgH^79d2TjC~s1ak*;6cODWQz?cmNqGr=TZ-vc<=#y zDC3mWKOjAL+1Y&in{Q@!=l$dL4Zu0JWke8_ASj4IWGFgrU$s0wP$$EE)iU*ws+oG* zvwLIHu^Gf;(>BK~hG@0cO(2eh1X;ln6o&HO+$-BSar-~%(axpDkk@8N&Es8ec}7zv zzZC^Zq!@%Aw=9O;Y6x2k(PgY6BO$9`4LOGFOr7wN_=F1;`m6}e5FiTlOi0m=`9nl&p7s@rjAE?*0`@pPT&LBaH{bvQ4w0s`T!5EJ z_wjiB3DPr`AHFkuL*Qsi7XrHEPc5lpeP;pNA}WcEU#t+yo)Wc*t$?kNuisz7_f0Rb LZWCA}AcE2-(uBLo literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/PackageLib$java_searcher.class b/core/src/main/java/org/luaj/vm2/libs/PackageLib$java_searcher.class new file mode 100644 index 0000000000000000000000000000000000000000..33917bf0c8140fab3b4840f47dd38095e591bf60 GIT binary patch literal 2139 zcmaJ?>sA|86#h<0a*{BRKxt{P)?lH8Yi!kuNvpQVB_#xCDA-o5C&?iU8D?-UX#e>b z`WCuYi&^||^|!C#d#L+N0wf{rT3K^;_Uy~I_qWfUzyCe?3&0|bC@!IgBcLIO5W~Q} zI1*{k)s6IeX{q)hnowT8sob-k$*F;t3_0pIM_`;FGF7HX3A>{7q&e%r`H}dat%SO?U7)M;g z00tS77mc@t{lKm+d1l$wEt4YO(@ov|f}tlhxgEt2u5et{FpO&qLv8NlDeNjWKqE}$ z+P>r3x>;qolFGGKTlCe0WCZVVT-WeEZZKSL3)N9AL$7Ns7{YN(aUeSy+KksVMG~VN zA8NRXF^1SV34SaFzH8Y9KjL^RMO`BL4um<0TN);iB1ESADQ7yaFw2B!DAk(3F$!6Z zDXPA$u)HU>h2hC4CNZO77IO?y-Pt{BH+A_L2N8L#)9;j$2sQ4GhL7!-{%|X+Y>>#6Hxl5L3Ru+FQ%R@DJgLL1%((phH$MAuu$pyr^xom?%wKhrSSZ26<4(2R>6gfQNSXJTk4DoZ5hG)kVHYsnN zf@X$6FcefF>kRW2rcn2kEZ;6sYn)sS@ z_pHhWQF$O;Y16=jbo0on(Yv{hz^635g*}G8qDy;dO&m6ZM~jwcm*tYKGR4k!)SPM= zL%1Lvcg1pCg7MI@T*tM=VFQm7#<#RDqY=|emeuu6POynEzNd8%jVSM=VTnp|S5W9m z(lXWSnIwya@Iw>=C62OcY=yz!hiQMoHtI?@8rK+_B~f-Q`z6D#t^IErHlVBsvtmeR zEN@vg?=X9jlom~!Mi+z{bXogr2hEddAnWfvAGfipxdqxsHeX9Jk1<$d^ zFn&IQZ3x<-bL`Vs;N7Ogexpu|(hcgTo5tdC_0=Ki5{>HsHt5`>e-r2-35ZQiKdpo9 zyau286McUu7d)nCh)%F&6iE(}_)DA=TX;fG<^K}Yfn!`=o2esFV3`2R1ZV5` zAQMQCdi)J0Gr>gg7}LLDFcEx%^wcZxSGawQPZPnWT*v3XXF{_l_!6k&p^_7!I#y1w z)=*HU0ksNn-#<68L>dM0F8T;!jy~6q(92fQ&+-^x1q`!wjIs?(vQ1i#k7|y`rv1H3`YLqPkoX_V9X=BP literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/PackageLib$loadlib.class b/core/src/main/java/org/luaj/vm2/libs/PackageLib$loadlib.class new file mode 100644 index 0000000000000000000000000000000000000000..f2be299397c35cee9bf05ccc36ae87048714c6d1 GIT binary patch literal 806 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 XeV^by{Y{Yb6gAWu?QEfrFL3E!>QB~k literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/PackageLib$require.class b/core/src/main/java/org/luaj/vm2/libs/PackageLib$require.class new file mode 100644 index 0000000000000000000000000000000000000000..cad7b83f97de75a6f9f1fd7a68a52bfad23f2019 GIT binary patch literal 2802 zcmb7GS#T6(5dQvTcV~AQk|l&=0dc`VZWd5MH;9Iikl<#6Nk}-GQRjG50+Ix;eu%SYKd2sw^g1G-p^K9lm+%bvn1IAEGwIte|oz6@2~so{^#uZ zGw%Xu$B`h)P%gkD!V4e6yfJA~irSWt|e?$WmsJochpo# zOXt*D>Wf7I_z@5g6fp-PLyc~vqpB^9MJFfLM^$CmjP8(<<5F6VE5kLpJs5n}sAATv zWmq1+oIy(v6{r*t5-|@|43T2x9!+jF(jB&zv=m(<&zlrYu{JZ5*VPXMQH=!x7K&Je z#S9Db%;UB+AgQ*@Fef=GC&x|8P_#6|lDhi*ph&ULdDjxa5-b(4OvDvf&af=cUjbMK zf5t^V#IUHyW4|=4%8tW`h!t4LAPmKOTDP`uWmsIKo!dW%8mtnqT0|}CO5kyv67;le zF|4gCa^v8oD(1y~F%OjNYOLayMiEVDW(ZjNu&%4JM0urj?&0vGBG&R~14Di7iT-hR_Ua+^7lJB+qlt$bXY6hqH=kd!2~u5u?;iNaJ#wt|cXFP_ag7 zWm=NPDVxX8oaJnWPAAQeO(Jdpk-{q*hHfx4&L;P?Y3a0Z)HjJ}<*0*%y0y2hv%R;E zC#p@vRh`;E?1~-5eZ%+ zuVQM7S_Ot3JYlymY%hUrR^R5(7E4N|t{QzJ`mvK5OVK9val*HzfL8;OAsK12kX9GP zK@4J-fZZbYU@t>;UXpW4ltINDneJf^LEppeZWD1kH}Wf{>2x3$-XTK5u*1$VS4y40 zlU0~lB6J5*B4iNrd{QPOYbl1N66q5q5>3U2&>&P1 z6QC~gP^Q+Erij~{Tsb3RA7?;0DRY*YA}rWsoRs)r-u8bZxI|AY%mW|v*3U$lYsGizERGE-1*`V&7 z+h@^u?3OZ)ihu*u8hPB99=pVjKHWBwa)-kEt8(T*S;I?C^hn62)v23Qo)86W5i6vO zyQAsHBMkMbu4m}*h-3_TQqgTQ;>>}Fs!J)F`H=}dWvg*IE&rI^LDBzcDY`!jM0^}Vz7-P1kq*v`3VBP#VNmP~~eyEIKU+EmFjWvYviJER3X z&#6y_f1Cb*ZbKDq<%;Xb;0X?Y+-0t~oew zStJJ!`PtD6Z!|YiI9a5_LKfpqVZob)o`vDY8-E3Jo11v#>7!WY0NEXLiEEy_$ax)#u=CSWLBh(24&b9&+wWaER^|gy?aq a@59dZQ9MJkDw6pL)3YRhj^ca?;eP?o4f^f? literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/PackageLib$searchpath.class b/core/src/main/java/org/luaj/vm2/libs/PackageLib$searchpath.class new file mode 100644 index 0000000000000000000000000000000000000000..64f30c710358f1cf16fa73e1f04d9fa4e3995c5c GIT binary patch literal 2733 zcmaJ@+fy556#pGavdOYQN*mg>7oepO2$0^yHo;zq(58lqr9!bP-Gn6smfduBgS~jE z_xo*p(a|R#>_cB_ZPVJ$I6mp(h#j{B$1VU%v`@Wp-ob#RYJGcGw;r(9# z4B$%d9 zMLX7$eDK02K$K7eiO_DC>9Cel=E92$2f|t=X@y6X)Vz{b6PaYIr7C7>HmlgP1dlzN zv0C>Lb|oGs6BSX1dI5e3o6taLUe7$Pm?zBiU`|ij8AE5yeHlGtA0<==JH|z9K|nyG zgss>{*it6Wl8TvT@1@kNnwp=pY%`;$34vgIwX0(Va@30_2-M?f+#z8nb`eA)Yd?}| z55`yFQxdA6$A@OL2-q!Q4_XO3%1l}V8NoXkPYg_r4U7^R)~grMhIRo#2_5Jp_*X(! ze4o+KR6Xqg&S=CP_AUwC=;4dhECXi~TopYf{Di*`E3oHyeA~| zBSzS|pv=V=M__0O!QRItSf%z%VJoMgAsnvqmAexR{D zKTj6vQ6J(sE#O%R2@I`GtP&H0JmbJ)5_XqsDTMiqY8g2*r4AN&qBR)7sDS4roWWSd zOfMJUv~{#E6A2v^peVVSF~V^@o3j}pRaxModLH8fCM2A5ifVHqZOVB#o+-_+Q~@un zW*8Z`lv1-!p^04iFG_d`FEd(;ik4HIB?;o*J239} z%P>wsmtY{vb!r<$qc|6W747oElwg4?&bL@>JPu$3!3~s`lS{3NTW}ec%Va{!8a-x~Z$>@v5Jm2-KQM~-* zhL+Th+1&Dnlx#`4I9AGX=cW3UanR%7&%h0!D%qkvmKSew42Z~! zxA`FYsNREjMZAai1$^Kn#)pK~l{gk{4i^JaY!`z{$~Mf)gs)d;W{I)*%qc~m)>NxC zVHoqdY;=9ESVbulJbO8-R$xEBioZBu%O+<@MNHAOv5c)oxsKzyu9`7Tu`HFL7gy$_ zfKLf~*Ev|pZULY3Fnv5LhqdS=S~$t;xWSU&?@Vq!RdKCtLXP)E{?(3ZJ^}Tep~-uo zi8~NF@1picM+C3%>fs%<9hdm*=HoR#6E5QluPjgh@~1{UU;Ptu<*|7vgIOZ!@X-iF46(y=pe4pA$&!L@dF*f4T|6nMe%@+;a572 zKj;MhqJI2MFLrmu1ZA)lE-3GkQz4I^d zsNj8)+_g&_(T!EZg;&{xD!hi*3wtx(;JuD1?=U#m3hP_=h-nQ>^YXC$nCYM3GkgL0 Ee;TI05&!@I literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/PackageLib.class b/core/src/main/java/org/luaj/vm2/libs/PackageLib.class new file mode 100644 index 0000000000000000000000000000000000000000..ff5bbdb0ccc4534abff79aacb333b220b7c0c49a GIT binary patch literal 4467 zcmai2d0bT275*+TykU64IEq2QR4R!uY?>yviV0+$nU-L=Dc&xJ?A^i zz0WuQcj+>KCj8TZG^8uYP+>!+!0J$Bs5%hSMykih?x+s<`=ixe4}|I>L(Q?E&+vzW z0-2lrLBDa2KzeCew*z)$DR8LBhANPkr0$Jr-C7`~3#h(f-8VWE2=!}$s6c*cnKwyt zi}j`^3pvPD;8d{`E`g#XA=8_7%{QtI>0W=ofHGrn#lq(7SWc;ket*m#(G{!^C|S&6 zNkYT5zbk z(}?(kLp90vZ(v5l3W^s%v`gy`=nkw#x&*64#cjA@v8j=%m?xcZOD<6%W2zKbp8~>+lk=3#eA9R7TeXUHaxr^fdqo_VA#H%^cc9k7zClH!w2|G{*;Loj&>{m;&@8YvsRU9g zrX;Fs5#MlFGlm^(zLOO+6)PEJj#6R8R{ zGTrSm-S-LKt1%|C z#5ufn0hRe0az3p_SjGK_a0(5{DYWip?L5C_tbVqGT1sNX$PO&Z;?R3Q&Yt}Ow=N1J zE9(G0q~JjnAI3*mtEmH!@CEeXkTGoTC>}c=63D1x=B45zDn5pTgi{X=L?vdNhzrDB z)+>b%sdyBR$#e{Bkvh7ZQR*pca4;)RsQ3g93*`Ev4FN404QgY0yB0A;8p?VVJSngu z)v@~6;Gk@_Njxn#gJ&#z#B&nQsrV$G=So^QOwVM?G|W$zWq<%o;)seDag=cwA!`b8 zqu?f(x}*u#r&W9gF9~EtWBpNckDzm<9?t^ecDyXGlvs^aC9*>*2g`B1qTqyzld|mQ zLOu~S^fAsX7D9U@6xJiggo4irESq(uX}?bo%e_8}WzQ)|h!0ouq?wp;lc6?LfXii)`61C$E0U>0cen-W3Wh-Z~ zN87qQZB1S~t_b7|`U84ZR1a$r%?Pn$G8#eyJiz37{XxAgHrB64%-xhPd|DtNu;pgG zl-v~F#8If`W-Z2)@Py!rdd+|r-qGfnv^Ms#ZZl?sYqS#s#$<#>ZWK8Qto)CC( zZhI#Ltwmb2;6Ol+mUu&<(O9@OC-an%I3}$DZlMPIBr{BC0V|lQzGGW@~I}801hJiQ&33uZNxuWtp zj#$Oa6B$d~=P_P!dIq1ZCiI60=A%sDV<^GnxC>99nLAK74)b&{i3vQ3hw&7i!_yp{ z&)@={#T)$f7I&3@;d%TUFW^5oLUezGA6pos0_pq%oU;y<6Ybb+X5^>CF=YH zXA+v_)RS*=EzR}i7OJU=Cs=VOsq#}CO(+(U%4DazqOptfBG-1u zF|oPuZnx{BaXfq!nFrIZrQfrv=oQ4=tK#_hhK#(7i+KDfmgZ$Rt6zqLWcM+2Ok=XA z=mMVFWJ}+WnU_iVjqbcmQ(>hop<>U=m_mM%p50kB1)H-kj%Rls%oJ1CudKAi@xtkY z>3lw1Sab}EdkR_Z^rAREB_l{PE7;7C*aMr`3q|z7DfVHR&`==y`Nieq>1_aYLdRAy zhz>D?E-?&E_%Y7s1LQv>MsbMpheZ%Sr`2XGd4~qXHEu1}XyF~G3MR#F-dcGz^14o- z6ouOSC*L7W-mfC-zp!0}&ECX!Y)76^EJX1LeU;FA3!K_de_%YTJQRXN%y(FWzuiEzDKj?pv$UF~$}K0Smh>XB dD4&DN{M|y@O4>oXleC9)FX>(l literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/ResourceFinder.class b/core/src/main/java/org/luaj/vm2/libs/ResourceFinder.class new file mode 100644 index 0000000000000000000000000000000000000000..55e5e31d18ce46a8383800347ac9d3beb6ff7cd1 GIT binary patch literal 194 zcmX^0Z`VEs1_oCKPId++Mh1oaqICV7(!?zNvRotmoXn(R{h-w1{L-T2RJY8$l++@2 z1{OvJfvm)`ME#t^ymWp4q^#8B5=I7|G@vw0DIt;1~ literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/TableLibFunction.class b/core/src/main/java/org/luaj/vm2/libs/TableLibFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..897c37b0e9f8363e2291e5501e5bc42e7ea40ad0 GIT binary patch literal 419 zcmZ`#%SyvQ6g|_XO^oqX?Lx2^T%}SRa9eRB7KGrY()}bI!j$QZj7jKc=}K|o2l!Fq zO;=WNbMEt;`}q8N{{V1{eux&@KD-DWbQuQL68k{5Nbpll!yTr|6J!EgXFV>+D{3 literal 0 HcmV?d00001 diff --git a/core/src/main/java/org/luaj/vm2/libs/TwoArgFunction.class b/core/src/main/java/org/luaj/vm2/libs/TwoArgFunction.class new file mode 100644 index 0000000000000000000000000000000000000000..fd752d9d1148a62ac5514d509d1e45b049bd9713 GIT binary patch literal 893 zcmaKq-Acni5QWb+X=Br9>tE}?tp!OFvFe3_6+y*{5WG=(DQs&fsWE}n)YnokDtO@o z_)y}cM5Wpl!p<`J&Y9iWdH;BQ18|D6iUcGDvW6s549kAduDT)bRC{+jRo7{DtCrKO zhhFR6@jZsrf#W&%hYXTlX{0fRv;tK_1{y>0ulDM}KMLAEa_QpSVklTcq!sc8cSF0T zlHY`eEOHETi@PqvnJ!=j>53q)VhYm=W;Dzq&oDD|fCdkE(C$)E3fm0x`hPZa8s@P; z9Uz!tK|dG4x4$$6NcHxq?zoaFhWx&xrEQO5JSGHvY=F-`94dpYOabMJfi$Ioxy0W`5=pn#$d&BO#s0xN#dZ@8g6ZbT=0 z4cFiF!Xw7j_(PS9y^|Mb|6r!);eWOqO8L(F$Gg#?Qd>J22X8kMZZh&0-c_Nul=_Om+kaF1|3tSaGFOswNB8(~M%6=ih!(eD6Ds-b%jNSQU-;Ja{bv@}1 z(s(qJNz7pMWh`gM44Ts#T3ErV3Cl(mHbe8j_BK$-sS1Dfd?ccXVb5uKe`qfiLlLDx zkAa^h_W?uAlW}mBPW(XK2tT5gu2Y~X_PQ*Rlyfgc5Pj=7F>&1{{Vq)l{jQTBEOB)ei6S_KatKOAZyU#oHg)32UPt0*RRStN z;)=wNLdnG})tI!XBFu1KW~3#BR+;8<96u!I`JMuG7>ii2y0 za!Sl8L%sW-Ns;&qSjLKlRR?QWXIQ$QCJB5vB&F^hF5=UX_hB#&1L-%fY;0o7!czy^ zXfSLQn)gL2WSmg@x$+nqZnsdR75dFSL$xPHQ!cY4WN1DRdR7FgW%(Un4Hv{S!t4}l zF8CzusVtS5Z{i_U)w*IDUSyL&n0(}eh+eiIQKiY1s73OE>-T(?7gu-?gfp6D_YqV+ zu%5>5#aR-B?}Tb$>nUHV?P8z)%%FoXK>J3G?2e9h$$N(9nE&Fx2S%FeM31$Y=F8epaBz#V+{v6vP17Gv)uj-^QQF$cKbW(1}+uU(9jhEfjpBy lWgMc8BeGgTnOKf+oO2!IT$Og~8#W&HJ|(bAl_#3`^dC%rqBH;i literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Chunk.class b/jse/src/main/java/org/luaj/vm2/ast/Chunk.class new file mode 100644 index 0000000000000000000000000000000000000000..5e6c4150040aec3e029d8c8615b5ab680c4d1650 GIT binary patch literal 478 zcmZuu%T9wp6g>kJ1hMs5tF^|uYH1>g+Zq=(b=A13VL#wRsXPn?qMzkLOR$Ql$A4X6yqadK}58DH3Wcy9A$YR_Myls``c5sD~f zP%r$*PcIqd!O+pM23><;VjU(!yJns|WYHr-!wq7O*3PV^xGI>jfhJlSHcf0{n{+jq z<1hU*PADob5JPuR&nml(ht6vDuT#M)llV?Bv}S%JZnDr7$t`ySI#Idji6=_$tw^t~ zQ05!+I7>Wn?H4Yi?0dH0IY*x+BGF_SJ%naLNFv<84%J=SS+p;B!}dEK>z>% literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$AnonFuncDef.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$AnonFuncDef.class new file mode 100644 index 0000000000000000000000000000000000000000..e04ba6c691f6691d24a6e41f41ac2217eb654bea GIT binary patch literal 555 zcmZuuT}#4X6n@Th&dsHLSXpLN6zGHoQ9&6&nNlF$6yDGI78BiMn^Hfkiwe5v2lS(& zGm#SX=6t;8d7g9LbH0B*zW~%w&>$hEAg)73f{^w6C$l%Sy5^{VWLiOJ)}9B1#D(KJ z;UytfEVWc5p(@aHq@WXa=27;qT+gi!UHe8n65?&I^FqisW}p$|nu`?;X=D^E>R7@u zAvc3;Ie`;;K0zKu5#gXXE62l5cdnFLgzY)FzqSz|UiCVHkZCxsXb$^r;XhdI9={|k z+ZF?ERhT0&nP=QWyZ45^E$U9hO7akgU29}<*c3r{>jf;K-?^^vt34|SL_kPQ?FYNO zP>Ih${C8d{M-s;}R@i1aGdPdxn(+ZL%5P9!$LLkIX~dX#j5wV@rBi0CVSU2eoA454 i;~fkCoapADGstw#>>R5|*udu4OUSd=SRtBe3+gZW!*`+p literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$BinopExp.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$BinopExp.class new file mode 100644 index 0000000000000000000000000000000000000000..06b31ad8b6dcb8d54aa2ba1f8fc670d91f561784 GIT binary patch literal 627 zcmZuvO;5s55S(p+(po_T5f%JE5}`zDyka~^Fp>~18tw%fDS?)>K>S-C(8Pm3z#nDY z*PtHk<;}kB&g^7fKfm5T0JKrjAVF3T(-B94kn{W}bF#3;=5l&zTEX0GKhFq>E5~)_ z*95s*>#ImYRiNqEfKDhyQ7Si%>&-&0JQ)Rqd^c*WDYQ~L(%2$M9&e(KXl?7r3T@dR z1sZmcSFo$2fIULtpHANioVn){;!9Bx%GJnazn+@4KH(yIsM(3+hLl*#d$bAZuH)Lh z#dKi%57uD9orER8K5)7s0x*8NRfdo)%j})hij!WD~ZjCy77wKA6NW4pa$Y(va2JWkZ{aC P1xhG0YOEk!pF;fxxifz4 literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$Constant.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$Constant.class new file mode 100644 index 0000000000000000000000000000000000000000..b82d48b66df5e9adb4ed7bb3338e18c19bf6cfaf GIT binary patch literal 539 zcmZuuO;5r=5PjPZN^1o_P!Q!H@c<>UiC2slg3*L<(e%FH#*~znbX(%z@}MRj`~m(b z<19fG;$>%MXWpB)Z$H1@KLGU6aG*iAV7M?*V5lVNqaWpb;?JiSK9`x_f0{8AF2gv? zt{C)IJFroNZNYJ|1(%`mALOi;#4_V?#$e8QlnaLHU~O=a^FTGa4oWCn*m1FoJ%-xa zlu{6cGR%@xF{zB9*;=Ps%3SU2wgZOx#?We?Y8t)dfh3g&VJwFEbR^PyK8on3z{g`T zqaBS6_#Yt)dgm_5)3LY?6{<)kolp3jQ#uqfyGbNbxVLdE(q6=+6p}hWmf(~O)X08D zFD45q(q_JE@71}a%{AAqV{KT z03?vO^g}8?3U$^HrIO8MXLfepyf-^@dv|pMU>BPX43un`E~a2Htj4MzghPH3j0W!m zo}|I<_fxOS6&VKWql{$wiJ{ck=vGih#fIZz8ZN_HA#zWO@HoSk!fy#ftzDS*MacnI zKPa(f;|aq;E~~=_!odulYN1uiXtYoGhzB8$`oTe}WYllnYkKBl9t#X+L=c9hJfp7F za3`HPRkKy^$}ae`nky@iS~clJsAPMZ!t$PJB#qXWKFo zo#Eg}sIUAeq=?0PJ#k9>YXzkrL}t{^K|EAFu_raEOv<+O50TpuNxB~=sf{-b^SMT| z@wlI(NT{8VCyAgrS>utH$KBcR8Pq#LS9vmCX3Lw;svNF zx_y9&64^!n63lO&!}hN+bGUhl*>lXD(F?;%I_D@4_(|t4RPdWB{h^n2yn3ipCnn8j uHT?@LPH=k1fxpCfOFT954b<^EvmV}(U7@%E5ARI9)gBsDe}in(to#GJM!oI; literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$FuncCall.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$FuncCall.class new file mode 100644 index 0000000000000000000000000000000000000000..3f70c73095218f10bd93297ebfb74102868a9229 GIT binary patch literal 819 zcma)4U279T6g{)uW}EHWm{_&8#@bjlNyUIZMidDx3Z)229(-|H&60 zs^Eh^z#riU_@Ll#5YNQ65jKJ^_uieo=iGBYKK^?D0l+4%hwv~Hz>hGClE7+a_BzQ> z?srCmTODch&gRR5^+!ezq07-1ffKz%BDYnaA8nIwcH zFRZ}Y_SCdVk*=d%h)}_40biOuf>w$k$9tbYyCG^g6JRmIS)3DCD$w_})p=$FW=Ad( zXf%s-uF+$u-Bw@V-anH55?W+A5#<>CUiM50RJL`hc7}spWuD00gfF4CBCGnHoR zDd#HVSRGJXeM;G*2F9}HwH-;rsVKLO@NqUYvD(s(c8)#V+?ONCa7WqvL1yy+R|FOd zBN^{9dYGol^b%>U;*7&dXCyeD1=hF?kJsX%>ekGt>Q+PVgCoUx+9iJ7cBe#NX}^PL zZyX|M-#EmnH+&MfKwBdK_(b~|WqiQ`zVgp9R*ndk=>;=9|Mdx`G=BL;dl7Y7SE#{4 xPEcv1{T9^;zq@7NJ0<;K=B5AO{Yk;A#CW*OHl1%^oxaA%#aDfIiVa*t`8NZzvSt7P literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$IndexExp.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$IndexExp.class new file mode 100644 index 0000000000000000000000000000000000000000..1dafe2873d250f76e1cbad7d35d5ce93be26cc56 GIT binary patch literal 745 zcmZ`%%Syvg5IwhzNgJcJKI)^^YOUIb7|@*+H$_np5tQz)^`en9kt8kkvs|d)!Vhre z1N3jixuK%4}LEkGhWYACDw$~K9r*fiFB&+2v(`yL#wRcW8{up46`K1p^$tf`GzFkF^UiRnM1Zm zP#^-CNUc^LkRIUVg#w?H>WdQ0lO0123!%=5XZlhT<)6l?2ok78jaN$HA&S2eXJ-FS`=bYDg}MpUe~zga#waQLH{RT ze9(e|e}I3F3O-nzjn$}^$id9)?#%3GX7)ZEz5fVc18pA#6g@ZrN^l9aRQJMoAojyy z|7Ivm7H+&eXlxFWs3YQ-;NDh=%I*;EHoFsDA8FMW`V~j5=N)XGd%9=VTRR?R2=n`5 zD8g7Iy>L6zD(U&~;9Havgym-U-(!v|<0NK1%mtXo0%3I`#6y|ANcVmcJBjE^LM5Nf z$0C+IEC)D+(}a~=svTuimTE$2Xe~lxO3~x{n2_*zirb&P$(8osZV{YLy2oYAbyXs_ z2K`;BpNQRT#tmTZzZT;T;v!GDz>kx#U}wx$ zk?j&zSf1h4EjauEi|w`RhoJTccu%h#qWl)Yn^9Pm4=$7iW-ke4uhkQ%5atW`u8foe0mmrbV1(B>kYgDPWjqLWG9AW)jaILU zo2Us)yO=?puw0Nawni%VwPKD43!MVYKsKsucgw{b<_VRt)S=uPGQ3fQb0c|@DGOK> zSaNX(4Z>1E_!>#5?aNfAX*h@@6=x}d-Z@yoU4eTp?xRUqEV9Ei%o0tQ8k>mF^oqs& z)gr$L!P-pTbJ^3KFjn1Bw5Rmjt48XP)E~BG`s#NTJPO(Gt3y^^`Hyn%%05?hc9N0q ztJk4w|$1{3EZQc^nlMAQ-Dtl{LB(xn79UeLidLDIYSgZWsWbC$oisgUtM_k@__I%8U5+s6~WXLF{H Mr0tz#F1dAIP%sU&-lokPfkqkdS?4>TJ1?| z!sR_lhQz65TizK%v{vt{NJ3Sh=~#o#P!6ZL6t)|{QQ?=!b;9zR8d69r*wC?w3`2e; zsc*TK=SYV5+*b@owa`k{-cQG7z0Xhx&kD|BE$2osq&t=^y0ghZ$ZI|r)0YGv4#kvu zltSp`MS=?2l{1q=ac=oklBPT!@i`~i6|Q&TxSoPNhV05Pfgk#%Z422NbJrCvgZAHO z^>+#!kj)YLUyPg~qe(?b$FW5*OFM)1{<&r>z>LNtl!qXDn_>!4iVMW>3>7a#<5g zAHataXVYk5;TALdeLFMXexG0O9{|Q!jo`r#5ya@AE3j6YyCkdSENSwCMA|ADKims+ z4|SodBLRPB_bNnBVDm5G_PNoyG>@$(7?n3lU~r}jHL3HdGM93ivD4GGkw&>(#$5|U z+TPYhn#wF=aZ%PLRmZxOGHHJ%8%fth+3KXUl|X!26v~V;X|1w!{7enD5ON`Rd;OEAhAPnbqPybT1sfPx# literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$UnopExp.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$UnopExp.class new file mode 100644 index 0000000000000000000000000000000000000000..c7a4f06d996a24cb99389b744f49e33e14efa4a2 GIT binary patch literal 569 zcmZuvO;5r=5PefhOKTNDMCC)N@c`A>M2{FR1S1LIqH-_TXbH5WEyTa&0Zlyk1N>3O z*#_gmUUp_@=DnGDyI(1`I+i4RZ3}2lE6f1&pVj0Bsq_W1C6B=ZH}5rvckKir7(6GO&v> zVgFyz(2Kk{2npGx@CarzmFahcc56teG<&HO_&t+pBAVV6re0 zzlDT?(38D_P$`Mz_&~BP;B$oJIJc8pju}uY`$`caKL8~GP@PXRE0)0Y*C#v s6;#&*$4np^DW}#O3V%5913(RA$>at#u8>g2VPYj5vDKMD4B3G81Kq)LP5=M^ literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp$VarExp.class b/jse/src/main/java/org/luaj/vm2/ast/Exp$VarExp.class new file mode 100644 index 0000000000000000000000000000000000000000..b85e974cf11ed87aba99b3f51f55c088e011d3f6 GIT binary patch literal 441 zcmZutO-sW-6r63-rmfYQS_Ksm!Gn4*;8_GIl?qY>r3Y_YUCP!bDZ5G0e^X=Q>$;Xw^r=vs6Uqd>eAd+0XWAS=2nGwb4y>e8j4LqDJ& z6@4RufkAtC@0*!7?|a|u*Z0RKfF9~DGRQi}d9Yv;s<9gT(}kG$>Fm-MI`MnUIl;aT zqcFK4WLxdPMIHqQu7@H#LT&3x5b7|A6~RhPMQFDATO#&t20{rn)?8k-0|&c=lYexC zTsMA}gi=3@D26&+HI`;Hp6H3-KEw+(lDDC8 z%5$KLiAV*P1F4g{ShKBnA4O7ir$TF~`Nk$ZPO-z!Xud3XYS@e=UNxAB+3LK5Ub!HY z8O<@sW8A|&qmiDmfw8d9J8y6{TJwKEC0JBuWd+r>zRql{Gr1SW-@X+NabQkxh@%x} NP-AvkWnvzq@B`#VWc~mE literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Exp.class b/jse/src/main/java/org/luaj/vm2/ast/Exp.class new file mode 100644 index 0000000000000000000000000000000000000000..548f8d1d134604847fda62e965c5938585e63c73 GIT binary patch literal 5050 zcmcIn`*Ryt75=WRcx6S2o#G^p)4H*rs-N*+iT0a zsm z4&9$vdzpIoMF8(Y zlY;F*?7&We9i`eGn1J6hjqKvImKNC6R<6xitb$zvdp4+$agt6?sA)Alo8e^u%`&Vl zmBQ1f8)nMJwPKHgNDzB*y+D(fT7f_+t;My3X2dlCU)xaoP(8wk25|%4El^{o1cd#l zEr@o+xH-wW4E@{~4|kQl0konsh#PT$9%l_Ty`n8sLs#37H@+kgc{Oqg2ZOlDwwIpE zNVSK8cn@wCsGrua=^ZH9_5A#IW=+8@0xe$QiH_$(*@IhUrX7))R!RFrJ$ew8e+T7) zj|FiYCj^3eCaurTS!yO@#+?{X1?XU(RM;Dc8MnYS*El%O0RCKSv5pPA&vuS;iSx$6sWlQ%}vNWh` z$%Jj`5~igk=0{HzmI`~HFHiJ`{PnJvGR*yIG8sSuv(n0(!0{@qlx?q6bdp8L-mm#e zm1;z@=FEg+P)AZ4Tokyo3WH^Cm4~!w38YfLnV{DV!@8l3+Qs#pI-TT`IyEk7z<_vI zozOG7Wv1x_YgF7lOJt4OXsvL9YNTEB~fY2zi87|n!3LV zQ)TXy8<5JKYEk}<`xq_M329!>kPn({7TEnw(Rtm@$T(Lgu-Sgg{>KIc#>{Lwt_|vv z>VB#^AXh`wsFtxtG}&Zj6nst~Tow>%mz@-ag3nhfV1=44(Aa01R>n%JDQCGEKfcKB zr_eM-%$dlvnuwUGh-j$8QvqDT(+ZxENAH&eqJ==|#*(?9xeX=B%F}pIm7HD?c&eB$ zF3>S}yJ{qoS|&PdnhRMTG6j8Z=`VV+VdA-!l;#1yP=r4-J+H+r5~`roRUwmNOt&=d zOmN6Bv~+)x?Tf~a!EcutcHi8hLQl%)`L>h9aJwe%NKrGu=PuRR!(BV9IWbQuDlCq? zKhFe0@_9-~A!}IX^IMq{xS`AkulOnWF8hbKhf=Q-Y~NmXaW(9tfF=kYV|DyDc(S65i)dinxpQucLW#4WUvKZA33)#YKlG<$7ykrMOPw*ulFv9X>7w zINb3%!dDRMcn#r^&{gd2d>Q*FUck-}FZW+XhkU}(brs#K>*$#bb*$mA)Lvu9X9q(F z9OPHqO$eeJAsnKWoAG`=WpobEEIWM1tY|0L#}}{0UPsRr?2o;Mp3yMv-S{$kZL>}C zisNXwlLl#il~Atm1fk(PRIc!OG`kb!-E-K(yZ2r}Gw1H-*vHZ3>gZnWbaZr9qvL5b z$HGzz?dKIazK17c;m$RjEI5A*4fN(#I)8-D_tN>J=)ehv;UsQB9|qBnDfZnauazl30}8@#q3PNM{PH`)-L2Dzz$AXgE&Mqy;Fq`uzs5!U z7Wd-!xP(9AKKvOf{)%b*9dZ1Vo%mbO>{xHZmVe_7VgG9EA9?TqKHvntxNwZf!f{5X zRB_>$C;WqWupEAugr6&gn}k1v50%5mCH(GExJCGf@vsZOo|Kf?6j;a9WQ^>-rxd?J z{3Cd@9Dm8itEKn{iT?;bT8>ZH_?c4tBgB6UA9wNlSR`a^+Pn^(crtFGbb^F_f=qJC z@U^066QDSZj}h^yDsY#Hd#noF6Aaa-xwIO52A`#DAzemD!5&gkfzAY&Vq%PwbeHis zo*=?c%};WC0bk}_nrWqwkk8WLX3DQnhAE$;?4kTB9ryQqzfpUuS>y(dE he#2K!JFWO8?-P{YqSPtBO?jE}MZSLt-@*5=>wiCv2F?Hg literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/FuncArgs.class b/jse/src/main/java/org/luaj/vm2/ast/FuncArgs.class new file mode 100644 index 0000000000000000000000000000000000000000..58e716a5afa86cf056cc4711b8e21b262d3dfae8 GIT binary patch literal 1462 zcma)6ZBNr+6g|&2R#(b4UIiy0ptu)D5e0-1UL@nwq90~v@Y_RamM&elbS)YGN)r{8 z#2?^~GTx^Yx3tChW$oH?&OPVe`}EiEA3p(9QIQa1nCsY0)pU7Fy=ZT!yyvJVuB9E> z&7KT~gn|(y8IpU3WjOl`llfYUUvSlR3{$NcJ*QG=2;e;dOfjtHYazjR{LIvkJ66xJ zUCrs(K4nx;6oy=YQgeCTu??%~;nK)R$O`Bu8=CQyq6{=e8cPX+aB5_ex4M%8j z)72}5a5sos8O0+kNmy2}g2xQ$ff3<>V({~GhH1aoCbydE+q0IgQMW(HSjAHbc?AU& z8D>M~8b;5cE;Ec=h&$?9z}@hWsmBbdy3w?_>R^kL>I!F8BRN-nxqY; zy=2%7Xbr9GKLtwvACJb8voM;<(LC>OS zQjnG>_)Bcw0hfdDG6Cs}e8WAkrJnM8XE<4|T zwtwhdhC=&)xmpsdSmRh%@lKNFLy4`iV>H~WI|e=!o=yA`vY}!V?-^o!+cj>enQ(=M zjA$urA;*zdQNV{~P4}#k<+~nHO{7Ijsf4)}O=w3wN*o#P&}1lv^UlS<)MZp-__~B= zz9B7)oOLVdqu<>tVqa@pj(I*F^i8iT`Zjsex-X2IGcgR_9QzE}(7FO1`Z!@2=8&c- zE$L!DaxhFvcgLP#wydDSV$S1hF%j6MMJseT5it2XWHGt*Ko?OWt&k^%GRbXvIr6$l z=c_MZ)!JY1+CAcr;7>?bKR+S!5I}ZFW)LM=B3Z@;fpgfQazG8r6lr;*s~icAJuot- rv$I{elv$Lje#EDF?LA77y~b3Mt1t4ony@6?B{w&Gvv_aW~?k@A@(gMc;GI zDyX7nV8X&A>J0M*%t0o)3dK+o`Dde`FKyT#G>JX&KM$ZrWT?P8pU_?+~JHPH@5aGb@RAU)-sh&*NLg9c=%`jU4qj`-zM z!1R+W?FI*-QdOTfx1;93GOb6W*Va*2t0s%7UD5fLYz^{&JCykTU-}`%RM|%B4)#yfh%kFT!s~n3%Cq?$ i^BTS=mIlSLi2`iVf3r>Y4!wknb@J$7Hi0*CVe=0|8kP|N literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Name.class b/jse/src/main/java/org/luaj/vm2/ast/Name.class new file mode 100644 index 0000000000000000000000000000000000000000..92d6ff11f898d9da9543a53b86a26bb5ccdea729 GIT binary patch literal 331 zcmZWkyH3ME5S+7392=7tq~ambB}U>TS`ZC_$_ho0`*S#1XW3`zu>D^Y5fTL-z(=9% z86=7{yF1#M+1c-(&o2OvI0@mv_2ET0z<^;=h)(cQ=$t=ih1@g@gFB^FbI;%|mT7|)ZiL4~rX|ktJ|CU6Y zFZSijl*}LMR}zmCrRA!vGHG6Z?ZS24nvHx?);q9CuI+tXQfP@9F82{ZQWQKI0?NC5kgtC<;twc}++KP0Q+65)h8eFHzZ98;26DN}b?)w5R zxIE}NKIsFmE+7XuE>AxAH~8YSe}Nvg{_Z5*NcEiLoA2Ja-|ySMJHPyM^9KO^_#}Y{ zq8efb)*voWch;J-(vIa$rB6(pmAOD5-etRXa8w}LnjF)h3)F{)N`dX9k6Xp*5v!1Z zhUi+YaSiJ!g8w3(wDUg0ea_jJagZpqu!(jtQZVN2m3g`=g)zB%hbE!lJ9Y;=CPPac*nw4(Qe?BJ* zD&r<=`+fsQ@qobQS!+i2dT!1N#_eF5TrsfRfF-vg@(W2`7KO@I0v$+d=&7oE+Ll1K z>Yn};jZ>D>@gNgmxp^If0&6CGY0c;u5{TqI9U}rU=@g}o6YMa>*^@dRp@dWtjM17& zD|~;Ndy}58W1N9lC}|y80x6Nl)YH}R1SK3VXE{2aqJ(Rcu@vJ4I&wUuAlP_uUlydr zy{V87Nf#Z97us=@|pQN>bFyvr*P&>?zkG3ZZwE zV;9Z^#-^(}lt-DqqsvaQ(N{TDT~-TK-l+g$y1y5P|Kj)sl-N zhwaOb%>-6%hFU8Uu}Ryd6X{iIJ6VmjXay(IVyUr?;(19Nso^EsP*t2%8OX)s%wbo~ z2?wf%R|PgaRvjh6XS|Z1lLHJnN9Cdq`xH1!t;h3%V&Gea5gAN-`J#@u1U9LO+H4n_ zt>&5X80%=>EB4mL@lFC4aY@6wsw3VL*u7+3bmCC`g z!sD!J4(;8;o;On}bXI$?Y-fewsS5?U%JJnfSY-lMAbKsw$=HEp2^fQ}EB#)_Di&o? z!)1XzRX(j|s)mmQw*CK6=CkYDmcX;P~<9t0QKsITU?j8<~_xC%mOy^ z87If?0k*>bHSR=ntyUOX8x6sY<==~P^>o$ImzHHPS$Yf*Y@l1A&`A{YsH-|G>%^b~S zb@Sm&wk~d-B-PAQq`Emqy4HM@G+~}0tuY@bHOwbT*O^a~t~V!0Yt1}qojFNbZ%&h% z=2_AWrbF6bx|yM9S5xYTFR+mwrkW1iKp}$h*M+z;|ND|>jWi!Dn*{6UZM5PtlK7m@ tFOaHaDe^ZiYIsHb!M2FvwJ;{H;|)G_hVpIx-^BY|CCGh%5AiX!{0om8kYxY> literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/ParList.class b/jse/src/main/java/org/luaj/vm2/ast/ParList.class new file mode 100644 index 0000000000000000000000000000000000000000..6abbf29d1e4dfce8a145625b3d06fcd68526572e GIT binary patch literal 855 zcmZ`%?`zsX7=F%Jqgkr8?bhnFTf25k;@ZH*J}Ctm4hE^n6v2KOR~O_;jN_8X`e$vW z6IR$Cus>?-y(x6q`Q>u=-aS9^yzj5yKYjve;lw}+nvS%IHDnm}CUWEk3BPow<5w<^ zVz+x0#{5ew@W*}_Gh`Yf6!9s8X4(B5vdHN$OgwFK+*7q_AgC9-FAB-^jPlI=#WicJr*|z3=u6y4q9mJYm?jmi?d4Q`k3g zfM*Qrb8M&iK|vYHt1U6)x?&XaIFUYsy+qu&4{TF}_0u{-`t9TsK?05ASU{37@x>LEq`d2D3yr6ZH zBtVpDBF&LVo+Rc{7QL|H(5i?Ih)5aA)ST}q-r?2I0~SfzWVwdS;{BVyyg=y|JA)ZY d*C^j2JNSmOHbeCqPnRhwFi<7%OQK8R_zy;#v%mlV literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat$Assign.class b/jse/src/main/java/org/luaj/vm2/ast/Stat$Assign.class new file mode 100644 index 0000000000000000000000000000000000000000..882a69481bf14ec0d9618a7306e54512bd80b7d5 GIT binary patch literal 870 zcma)5!EVz)6r6QjyAGylOA7^BpfrUfMOcEPt4gRU0x9YxD2Lv*VO6(g23SPkqZ#5BLV?Y>HSITACugaETgqGuEcef4DWk$9_LPVg;){?u1ywy1>Q^?J&`a$#Q{((w+piJN+4u)jRDScZUMOfGVUZ zawQPeH0;loA6-t`Lzy$h2eClszbY!|P8}Q9YAZSJVfK+qTKyzd$Hm2|%0I}{F<(yV z<^K{_W1kPFGHZe-MYmv(Fdi^ocvcbO(f_&!Zl zemIs|D-PDX9<+~Lfrm5Wxbf4+bAh#a0CHSgj&1IQ!^L#C3fwIS+^uf+c;}-0y>Ae~ zHNbu52SmJPZZNlc-ywQ?SMYl;u5kM+pD2oP6)vM;ED)f?5>t6GqPiifs>0k4V&i=t3^spP(mi=?)R>?ZjuqW{8+f(L(q zKT4b}f`^KGm^VB7=Dpe7&#(6n02gQluwZ+rg>c{!nz_1*rlpuf)$BMDx`;-FC{EsH05`_9t>f$Qb ztPx&knNUHkBV$X$HnI$b z2)k$bR^WOJiLvMy&MQ$%5xevhpi%A7tZSJ6!UZYbbRSHHOxtqIPB`qF-aYTzw3Fn9 zVU8%UxW;BN)jUS+x}j&7Ela2rk$y4YW6qH3n0|2U`sAVAIgaTyZSMP~PjL0VWE@jS zDTiMfD7bwCzk zJuxlQJ7owJifs)sXex9A3osb6b1{4Mk<~pHHwfgc5Pj=7No`C&pe+Ro4W%uK3s~ans0XSRkfL0Ia^IL$wZ*X`?>g$=;t-HH z@B{bTbxalIau*<4c94Z6sOT^hK*h&!&7q;x>&<{6E{3;;3nZJu%T2^ z7X?g>$FSS3a+wbQs5a~j8JvMUNx054!O$rc-K|peslD(ZWN7~%dvrD_pmi0c6QbXo zPd6~P#2A(-!%~W{8h`#erVslteMLEzdNL9Hd^{4_OFoL}Brenby{l5bIl%Ll{#8eV zN0FG&0Pf5gz{Qk`hj#~Qo<-tVnj#%Dn#V>m3=4gs^z&2^hxZ~OX&uH~DI+TPQfatH z^07$SHkc77t+!}r;Wl|Bvfukn@EWp{}p4(~pWMcRwFQbLia-T+Q$SqANz(KBgX zR2ftku|si}I-h!d?)sl#e&-$bTYkGnv5W%6N0@kmgJ(kQVSkA`UE-{c|AEbajQ&ty ZObQ{P>r@*!KqJov4k^3DpgkSI`2!!jY%>4= literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat$IfThenElse.class b/jse/src/main/java/org/luaj/vm2/ast/Stat$IfThenElse.class new file mode 100644 index 0000000000000000000000000000000000000000..c7105e0b01556acc47e8c4db07a71c44933594a7 GIT binary patch literal 1115 zcmbtU%TC)s6g@XDV>9H@03~gKltP<0fTeDOSQMoyQiLjjvUkFS4mEaUI}!iVujnGJ z)I~p_A64~^LrWD0bGXL9q} zaiiEdkKLG1I8wffj|tgEvu9!nrU6S}8G=w>cxLx>c=18{9WRoEyc){e5n;WX!gg*) zZB1AdD4|R+)UfXbgO7xbH296)N#KtJs#qmhk`pBC5ux0@b|MS57wx=Q$2O$?U(IdiMBP~*Q?62zE%^v4C zS699pk3()oV@~B!nnE|_xJ|JC4V|?_gVh2pnkY>_J2S`KPR�&(7(3awowhms08~ zU!IL``ZBz5`yQ`+`acm5_F_)l0^ILLJXEfhU2q2jIpTZUTp;uAa+CYA&Vz9{kZ+Z) z$<#M`sI5gzocg{DPdqn@B%9B=H$0xRy)yj3@~G%H!lR0IcM{pQAVz=@ zJG{>3{4;;SbM|Di$0oxrWA=FVo@0Sy-Tn%)TT>YJ{uC?r!4ws{mYZVDuH~oL_{ zOa5-b;Gu;aEyE;%BCViGMbxN-Z7Sd8f5qqqn*7ySb~uYxU1-@~@bsQb|06(E5hx`qGcK}|gP1N>3O z*-GL8F7vhX-n^Op{`vd@aErDJ10@@#hcYaNMw-onXu;>fGQJA9%7anPa|Y{LCNjTa zD0RAH2NgIrTn}6D7+M=K7a^aBh`~&FEEwwHoG*D0@nlAnnM`JV7gf}3?0DEkouRo# zGnPu`X~s}q>WJaA6RtIBeSfq1-7ziDSs$e9<{*6{8MRO*Vz`JWB75YMh$OZl6co(vC|zVzaVIs((PJ<5N(_~uQ2BkTh{JnG5|Ireu9Q%uySM?)=w1e$o6(|l zF^UX|%h)5kPnl1-es}#3Fu(T(`?ct9kgcLb_8BH59Lx!EfWsB;e1)@m{yVn+G5Sw| Zh$h5@Zc=RE2*-st&?4^=gVuBc=NH(WZ9M=0 literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat$LocalAssign.class b/jse/src/main/java/org/luaj/vm2/ast/Stat$LocalAssign.class new file mode 100644 index 0000000000000000000000000000000000000000..71e43beb2785b1044b931a0b961ae43a208034ba GIT binary patch literal 800 zcmaiy&raJw5XQfC5(gVMp+NZ4mI4J;NvNLexCi8(R6t%q|W!~K*YXbc#f zKGATUrGlZ6Lut)>^awg=2MqQ9YrCJXrqYAFHpul(L5iK^oEWO1j72XS4@G*$hY{VJ z<=g*_mGfO7d}J~|Zu8MdT+yg@7K~~(&ncMOPqK6*PNjiy%n*;w#u%1*Lg|l*A`kCV z9E-FQaiz>om!E7J`?ODso|Z*Rq}Kt4jcK(>H7)s1y+sOIAhs#LAjJvg0_AG+2CR8> zjdJtdHJ*K;D~6X8S5c&ROYsg4exib3GwWBR*uiUx#^?V?;$t$0*Vaxq*WD zvTJhtwBwk^;))^a5H-V8IRuuPB}qA^V;mC%t-FmIhPg0QvK>;gq+trvDrR)dVvb=t zL|U_aD{wuASXb^C)(c@eIhTJnsW*n50X>Inf2_!o=#kr?=2B(L5tUB6F1!m~x9KL% zO;cQx{K5eFZ;yRZt?G6>Q=D3|Dk+U^%fT}wD#8!WT%S1fbH@?hk_5|+Pta-<~n;+w@gO#ar%&j`Gc;ydYNX|EuMm3~x^r>GHw^ty`V7szU& AW&i*H literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat$NumericFor.class b/jse/src/main/java/org/luaj/vm2/ast/Stat$NumericFor.class new file mode 100644 index 0000000000000000000000000000000000000000..7683e8659b7f17f584de78793effb9bd6b754475 GIT binary patch literal 943 zcmbtTO>fgc5Ph52absLcfPSR3C6tyXPFq8-K^&-BffVHu6vT03R?!y6j%+95Z*ee{ zK;j4RPxzMLj+il(isan5?5tDi3w2(?hMGWQZo-}3bgW|SpGL8O5fZV$YPSI8j2$Mt;ov5g1uU*o%RpeIh(38e$-%1* z));ICdaP3pUw3eeJw}qM2|G3&Y~eORhC$@N5?Cv;J?58=jXT)3aM!^Ob_rJ~ai9~O zvI=v?H-X(|k&Ao$k7Vi+;S)caknD{joMrdu`wrT?GzuUsz7IF4RYT}xdZ zDjL&J#n0q0AWud5zM7E4%{dY;`jAVr`_VM^)v4yFDvLklMG;u&sU&?8CB)%84MP#ydo}8c#pBG}zqIICD!=Br9+adt^&=Gts28MPJWh5C^d5 zoGK{bt6OFt(zG(-sD6som;fzz$Xg-Oa*+QR9~@K zAPzC?F{J&a)nTu!A&JEZmUN_$CO{uv({K&Xc8GHzBZj@4A4$GyT46cgWH_8r_@~Yf zAf?EjV8y-_4Dp&_iF&`=63#VmnUo3hc3bp_J~IP#qH&C%HSE6A7UzcSQl+qi4j*ua zXkED8h3yiCerZ|4shHe#h073|nk}+4Ifa&~AR+fbQ9_P!oS`9L88jt29m`FVj~70` z3dIp3h5Zrc-YCVeN;Zig*$1+ZQ1OI$Jk!k@)+Ycv1R#mR#lkxh|9$cc0WU=LN(37e TE68AT>=kU0*9bw1+=luKukMX~ literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat$Return.class b/jse/src/main/java/org/luaj/vm2/ast/Stat$Return.class new file mode 100644 index 0000000000000000000000000000000000000000..1900377ce0b6072c2488bb9eaeb2c0a7b7f7f167 GIT binary patch literal 922 zcmZ`%NpI6Y6#m9p96N5(HVuTP0a{wf0x{&8s6wiWh!k3hpd7eO(oy8#I+2&C;-7F~ zkwB~$Bq%Be#EApH2_fFNmJms~_|1&JVk+VW5=b)S$L`Ry13ogR zhYgc^zS;G;&yZ|cj^%GN#LAVPh7>dvx`8wdhP5*}oA-quxDHXL+zy1tu-F;#DK`V( zvdxa=`Ar=eWK}F0Si&+xVNR!Kd6qwR84^=@VpuPC=0GyR$gElErLls%igO0eqri~) z*ODRbS&v0nMq5Hx4HU6P_n{#9e7RjYP15Gh(A@8j#K3Q=xX7?F=ev6}(NV%>1MApe zNL${NyWAa$qe-a$kU{HOLx)ov$gw7+zJ@sqXcF&6%E<-P+i$>|j# zYbZo`L7MVUqxuQz4`gLHL5|@y;;~loDOTl6F@A7@3ktrYbc{<+kWgC155!U+^IE2i rfH%nFE$VoOn|P1w^r9h_yUl)~NPB@BA-oPVj0%CMNJ>Js(zYG* zj$tKOdLnKrDpFXKv7{l54Alh~Tb5_}j!RTS5i#ToK`!y4KXsL2i(!98kl)T zaMiiy42inc+B5HslG{9wdo98lb_L)7!)CDuVV}ihFF7p z{<-53hj!8Hakpw4p2s}~c{)?%XlfEIP(o7dfTE-r;Uq(k$1-R-bUGB`IiCVNlz0SX=w#}nPGVSP%FCj!wZTGHQ;{KtuJ13Xi!7izFUv4ku( PCtku9d6gK1$ZaS;xY~#2 literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Stat.class b/jse/src/main/java/org/luaj/vm2/ast/Stat.class new file mode 100644 index 0000000000000000000000000000000000000000..851741f29865829d592b2ed8de30a63c54963a5f GIT binary patch literal 4500 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 b9x_|MM%G=~ot6GpF9kjH1Nu?X z9SH(0Vwf`@_nbTT-1+!?dj~MYxq}R{HgZMeVG$}(JQqPK7h=7<6Ee|a__QKeJrye5 zCuCdgiGw{9Y&b>iqe!UjNG2*#I*JMTwb>D_Tka0&K~4jI5QT}3Q;*r*_Qb{^q46)1 z%Xw6OFiQw!cOlnOq*?{SRf+Br3S%`7rA}j?AhyE2Kgt-HblpCybAxEc!jh{(|2|z# z{diL+KPf%WU$K|^FJ8V4vju`Pj?&okM=Ibv)oquzrd~8~z-bw%K`OYioc_XMWnlNy|Sj8!$p*C4+Qd&2i7uY{s^S{6)C%t0k8SgWweE|*4 BcU1rY literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/TableField.class b/jse/src/main/java/org/luaj/vm2/ast/TableField.class new file mode 100644 index 0000000000000000000000000000000000000000..8ba36c3d878f3344f4f5e874f319235f2a896437 GIT binary patch literal 1020 zcma)5%Wl&^6g`uN)3~N3Z3%@^`l1j!6pKo%S|K46SP-#E6^Z3E8HFj1Q#nqQ{uL}j zC6M?4J_>Qh1X9Va%EoiYIiNM)p84bcp)ZHA z-?|86IcWr{ufkZsI@Y0%Ukc=FZo7;HluNK3EW#1kNRdzEX`tR{6?6rPI_#>6K((2I zH74grMr+BzGHweLLfKaWE6p=GmVO|^p5KZi9rhB`ii1^SmybRUZL;o|>{WqRwQS|I zN;b}I+gQiF67DUa>bnX#z^wlh5EO&_^!HuHMWWi!i79jf=E{;7%* zfPno;U8wGCI`1-s%vi38ntpx7mC|N_f2H5n{(Ay9$d&^=jAwygToc&6LBo=rjymV) zHZuff^G)Vvw+5rA!|e&o^yck7GfROTe)t?$IFE{1K2{a8JITrI;8_Ge6RLb}@^(yg zf#;fc3E|bJD0xq(xaA#8QTf96Tzx*PWPnuxTPR~2OY~XAF6%Ac{wVDcW1JViW8s4* z>X%si{7=9l2-qiKhqMd=y)y_d343^SgYeF}sAY4{*mur1bI<%e`}G^ZJG`jDLdk*cqKpc|^nj1KpKuxb zANzwS%o!@XLW=w?Luq-XSH(S49n@S*!DX0Fv)E4xKJdrG4WFyr@9|9VeiAX*k`GB* z!40yTXF|q18d7)Bz%+w*6n!SXjJshvqV0>pE#v`lOxGA&E@seXsDI&#DBjk2E}5u_0a866bE zew2N>m~s6M!{kXilbZoF%n>R`L!OvG4=I6e&cm-C_~?>Z6KX$|D(8~IuXWQR3#0c! zC+b~=`$|WOB^uYFS1hBcUxQXnohd0j4BAF1Dx;JMsZE_S7N|a?uT64mf1~pgth0Iw zr^8O+eK&?hsx2}AKGii;v5q=64B*i}fYK!3|Q}y2J(z-7M`C2 D(_@oa literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/ast/Visitor.class b/jse/src/main/java/org/luaj/vm2/ast/Visitor.class new file mode 100644 index 0000000000000000000000000000000000000000..1d8ebf00c143b407d37633546b099f38e18a427c GIT binary patch literal 7363 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 literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParser$JJCalls.class b/jse/src/main/java/org/luaj/vm2/parser/LuaParser$JJCalls.class new file mode 100644 index 0000000000000000000000000000000000000000..65f2b9ad8d0c20d8ba899926cfdb4bd1bd607a3f GIT binary patch literal 450 zcmZutO;5r=5Pd@nixmMsP>kWG@#A2PSB;lOBcwqSiT4H9rdYOSwmu zlyPVX7dgzlc{B57cjo8!>l?r|c0H8f2)H$rQ6V(Paw`2q>d3zvj@2k5R4!v3XIBL0 z==f2fN;pVOV?hd`X-^@C5;vZ3P~CU=_6j*XF#A26JNL8#6XJ m>M$0WlTXk`QC??1D?_})!3MJuHnCM;3pI-4s2Mynoy>!JXsff_+86b#)oKxnLVHi>PV7qa?7TF39=1#E9@Vnq zPO`AU75c7hMD{mg+#EsZ&$X}bt*-?JgwelS3F*uj?IxA-Uh~f3{u#J};9r{{CV$I3 mU^QYAvv>IpdTZ^3b7Ld^MubCF9i%vFnPJFG*cHfdjMHD{R7@ZM literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParser.class b/jse/src/main/java/org/luaj/vm2/parser/LuaParser.class new file mode 100644 index 0000000000000000000000000000000000000000..10de69a6de7c249e1d4553967826114defbe9362 GIT binary patch literal 34126 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 a^ctksBE621AwZ$7rw;hr3qsvMS^o$0sYdny literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParser.java b/jse/src/main/java/org/luaj/vm2/parser/LuaParser.java index ffa31cca..7e8d01c2 100644 --- a/jse/src/main/java/org/luaj/vm2/parser/LuaParser.java +++ b/jse/src/main/java/org/luaj/vm2/parser/LuaParser.java @@ -76,6 +76,7 @@ public class LuaParser implements LuaParserConstants { while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BREAK: + case CONTINUE: case DO: case FOR: case FUNCTION: @@ -133,6 +134,10 @@ public class LuaParser implements LuaParserConstants { jj_consume_token(BREAK); s=Stat.breakstat(); L(s,i); {if (true) return s;} break; + case CONTINUE: + jj_consume_token(CONTINUE); + s=Stat.gotostat("continue"); L(s,i); {if (true) return s;} + break; case GOTO: jj_consume_token(GOTO); n = jj_consume_token(NAME); diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.class b/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.class new file mode 100644 index 0000000000000000000000000000000000000000..99850d452775bc5c49db0bc0c55f703f4116fa8d GIT binary patch literal 4176 zcmZvecR*Xm9mnsnmu>vRHpUZ!!E7;%2T0gL17r&cYhYxI@dE_L#*!<9(=>_GmF~Sq zy7z9H&a_E)+NOK&z4zX2+VA&-;-k$!U%sE;-F@%gy?ZC_yZ^3xlu|xxwp0~Zs`{dR z)pjh~sYORLn^{UNmZ>636+3-l|4^AKu~cD0eM6Zlvs6*T*(_Xzb}6_j?J{s1wOfFz zwp2+&XXn%uyjZG~-bL7AsWJ_kwppq?M;f=Cm14)M%YNzI5k1%L9le8}Z z2H0ah4d>)s$>o(K{17*Yeu?{doMV%E>@deJ*tuR_))&&;bibu48WvVlbJ?XdU&koJ z7SmYapt6!Xd~LD`EFzEtiva`noKggn&HsN99>D;>~)3{ zWiKSza#s7yDxcsSCs<8ob?SM-4HuS{*)oe>&X9Y|hy9sHmNOI|8}>y&3+U$b2g7c@ zj|=SPM;rV_Hh2Rg0X8gSiB8|-IBbe`)Hexxg-Niv0U2xuDL*E=)|wl3m6Ur)82M03 zRXIJQ?#Kg`hq3)sJRI|R(S9?}iPz@|jJborYuuKB0X)dV*$@u}JYg@N<&j)4bKoD1 zPR<}dn#b^?X+-bG(G0>ofyM>%B$^JGr_gl4JdK9Y&!B06c@|A8%yVe??L3c$XY&Po zRb5>icROo0!MvE}7MPdPw8OldhR6MtG;J`irs0u%EzLQY*V8n?yphkQ6W`2|6Q#GZ z78^gx_8rEqq~dUuED&IrWxiQnww!hptG3zAsxZ6kMQ8mrEySF zI5*|$UiGn3_3Pn$wv@$MULu(Q);1uj7iHSxIIb!Bu-)J5M^blC@LW6-4O! zB5>JWOj@dDD)_(m*kGyp)Vk{}JbN)Yhf`6AtIbkY0H1C?Zo*z(O%~!-R5*2OpEq$c z&WZ8Gce5tzYdx&htgrR5wq<>-kF~AqYa!OQS*ntAuB7vK ztSjmGo!It(H!#7ecH!aOAusK2oTTB1&wY}x$5I8}Fx_7C_64Ip`g$C0`hcIbj~ka8 z+kmlt_gb$;)cxTIyX?m|t0=$C^qWTEe`rfTt7iKCWwb(xzrxO>Cr$? zxAdYH?<3C9hpgOvL^{Za<9$TvM>pO_^oP)(?-s&g?#ARe?Gad9JG4iUl)H~e1K5uI zeMBD2wXO|wf^x5%Z7!VW>-P~WLuk+4N2FsomuvSC@i=kV6UMnAx`At#5^)%-W*EH( z8yM6t(2MHu+P2QnubqVRSpRTtk8RlKsD1~t+UkfoJclQYZ4BjhbzZNVGwc}mtOs#8kyq*KcBq*KcCq*E&Lq*E$+ zrOz!drIxbT%)*w|3GPdJ9@oXD;8H3XTD?4*%*5>3WmGDn>DA0!(vROOOV$4WebdG3 z1?#$3eGhaE-xRz*`O82Cg-DJGjo^9pIe??*i{Ocn^55 z!S&#M1~-5k4c-rKGPoIhz~B~etHEvHc7r>>od$P-9R_!UdkpRc_ZfT;+;8w9@L_|G zfR7qH03I~h33eGg1U_c)aj@IqVX((wFW7gT`Mp~H>uimHM-2{uPZ)d>95i?g95Ofz z9yj93*IPduH2zL$cH0!K2tt{&tE}k1z5o)Tyu1?;q ztVE#{MiWI+98DBUX*5wH<pQrQeGlNxBbY=u@xEwobVpjEOH zxe7gx^=s5t<$YLbn8y(LF+E* zgYK4o=pH!?-780-^)d+ECoX7%9D_EB8@gXS&?fOgn`H!gKmyPfISFl*F=(5Fq3v=C z+96SBr^KOMavJK81hiYGpgl4T?Ufm5pV-iYG6(IKB=nFhLJ!Ll^oU%79+k_`0ZBs# zXuue!*VOsBaeW3usk0+E-!?hk{3ZE@)BrNUIvZHE1+?C6?8&g13fLT zgHFmDpb2>s^o+a(Iwf~N&&r+9X?X|qoV*J literal 0 HcmV?d00001 diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.java b/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.java index e0da5472..945f9f3e 100644 --- a/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.java +++ b/jse/src/main/java/org/luaj/vm2/parser/LuaParserConstants.java @@ -124,6 +124,8 @@ public interface LuaParserConstants { int SHL = 98; /** RegularExpression Id. */ int SHR = 99; + /** Synthetic token for identifier keyword remapping. */ + int CONTINUE = 100; /** Lexical state. */ int DEFAULT = 0; @@ -252,6 +254,7 @@ public interface LuaParserConstants { "\"|\"", "\"<<\"", "\">>\"", + "\"continue\"", }; } diff --git a/jse/src/main/java/org/luaj/vm2/parser/LuaParserTokenManager.class b/jse/src/main/java/org/luaj/vm2/parser/LuaParserTokenManager.class new file mode 100644 index 0000000000000000000000000000000000000000..ab21e9335af078307c16854185fd370260453678 GIT binary patch literal 27839 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 fyX+f@= 4\n" + + "return sum\n"); + } + public void testLongIntegerLiteralPrecision() { runFragment( LuaValue.varargsOf(new LuaValue[] { diff --git a/jse/src/test/java/org/luaj/vm2/compiler/LuaParserTests.java b/jse/src/test/java/org/luaj/vm2/compiler/LuaParserTests.java index 834e2674..e09483a9 100644 --- a/jse/src/test/java/org/luaj/vm2/compiler/LuaParserTests.java +++ b/jse/src/test/java/org/luaj/vm2/compiler/LuaParserTests.java @@ -7,6 +7,7 @@ import org.luaj.vm2.parser.LuaParser; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; +import java.io.StringReader; public class LuaParserTests extends CompilerUnitTests { @@ -26,4 +27,14 @@ public class LuaParserTests extends CompilerUnitTests { e.printStackTrace(); } } + + public void testContinueParses() { + try { + Reader r = new StringReader("while true do continue end"); + LuaParser parser = new LuaParser(r); + parser.Chunk(); + } catch (Exception e) { + fail(e.getMessage()); + } + } }