--- source: src/main.rs expression: scanned input_file: test-data/lua5.2-tests/errors.lua --- [ Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 1, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1, }, Token { kind: String, lexeme: "\"testing errors\"", computed_lexeme: None, line: 1, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 3, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 3, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 3, }, Token { kind: Identifier, lexeme: "require", computed_lexeme: None, line: 3, }, Token { kind: String, lexeme: "\"debug\"", computed_lexeme: None, line: 3, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 6, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 6, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 6, }, Token { kind: Identifier, lexeme: "getmetatable", computed_lexeme: None, line: 6, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 6, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 6, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 6, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 6, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 6, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 6, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 7, }, Token { kind: Identifier, lexeme: "oldmm", computed_lexeme: None, line: 7, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 7, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 7, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 7, }, Token { kind: Identifier, lexeme: "__index", computed_lexeme: None, line: 7, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 8, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 8, }, Token { kind: Identifier, lexeme: "__index", computed_lexeme: None, line: 8, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 8, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 8, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 10, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 10, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 10, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 11, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 11, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 11, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 11, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 11, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 12, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 12, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 12, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 12, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 12, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 12, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "cond", computed_lexeme: None, line: 13, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 13, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 13, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 13, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 13, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 14, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 14, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "cond", computed_lexeme: None, line: 14, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 14, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 14, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 15, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 18, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "prog", computed_lexeme: None, line: 18, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 18, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 18, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 19, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 19, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "prog", computed_lexeme: None, line: 19, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 20, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 20, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 20, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 20, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 20, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 20, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 20, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 20, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 20, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 20, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 20, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 20, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 20, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 20, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 20, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 21, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 23, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "prog", computed_lexeme: None, line: 23, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 23, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 23, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 23, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 23, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 24, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 24, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "prog", computed_lexeme: None, line: 24, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 24, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 25, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 25, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 25, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 25, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 25, }, Token { kind: String, lexeme: "\"^<%a\"", computed_lexeme: None, line: 25, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 25, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 25, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 25, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 25, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 25, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 25, }, Token { kind: String, lexeme: "\"^char%(\"", computed_lexeme: None, line: 25, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 25, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 26, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 26, }, Token { kind: String, lexeme: "\"'\"", computed_lexeme: None, line: 26, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 26, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 26, }, Token { kind: String, lexeme: "\"'\"", computed_lexeme: None, line: 26, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 27, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 27, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "gsub", computed_lexeme: None, line: 27, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 27, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 27, }, Token { kind: String, lexeme: "\"(%p)\"", computed_lexeme: None, line: 27, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 27, }, Token { kind: String, lexeme: "\"%%%1\"", computed_lexeme: None, line: 27, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 27, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "pt", computed_lexeme: None, line: 28, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 28, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "format", computed_lexeme: None, line: 28, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 28, }, Token { kind: MultilineString, lexeme: "[[^%%[string \".*\"%%]:%d: .- near %s$]]", computed_lexeme: None, line: 28, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 29, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 29, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 29, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 29, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 30, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 30, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 30, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 30, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "pt", computed_lexeme: None, line: 30, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 30, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 31, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 31, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 31, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 31, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 31, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 31, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 31, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 31, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 31, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 31, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 31, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 32, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 36, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 36, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 36, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 36, }, Token { kind: String, lexeme: "\"error('hi', 0)\"", computed_lexeme: None, line: 36, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 36, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 36, }, Token { kind: String, lexeme: "'hi'", computed_lexeme: None, line: 36, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 36, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 39, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 39, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 39, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 39, }, Token { kind: String, lexeme: "\"error()\"", computed_lexeme: None, line: 39, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 39, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 39, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 39, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 39, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 43, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "_no32", computed_lexeme: None, line: 43, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 44, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 44, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 44, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 44, }, Token { kind: String, lexeme: "\"table.unpack({}, 1, n=2^30)\"", computed_lexeme: None, line: 44, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 44, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 44, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 45, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 46, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 46, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 46, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 46, }, Token { kind: String, lexeme: "\"a=math.sin()\"", computed_lexeme: None, line: 46, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 46, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 46, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 47, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 47, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 47, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 47, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 47, }, Token { kind: String, lexeme: "\"tostring(1)\"", computed_lexeme: None, line: 47, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 47, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 47, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 47, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 47, }, Token { kind: String, lexeme: "\"tostring()\"", computed_lexeme: None, line: 47, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 47, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 47, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 48, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 48, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 48, }, Token { kind: String, lexeme: "\"tonumber()\"", computed_lexeme: None, line: 48, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 48, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 49, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 49, }, Token { kind: String, lexeme: "\"repeat until 1; a\"", computed_lexeme: None, line: 49, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 50, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 50, }, Token { kind: String, lexeme: "\"return;;\"", computed_lexeme: None, line: 50, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 51, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 51, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 51, }, Token { kind: String, lexeme: "\"assert(false)\"", computed_lexeme: None, line: 51, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 51, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 52, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 52, }, Token { kind: String, lexeme: "\"assert(nil)\"", computed_lexeme: None, line: 52, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 53, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 53, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 53, }, Token { kind: String, lexeme: "\"function a (... , ...) end\"", computed_lexeme: None, line: 53, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 53, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 54, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 54, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 54, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 54, }, Token { kind: String, lexeme: "\"function a (, ...) end\"", computed_lexeme: None, line: 54, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 54, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 54, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 55, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 55, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 55, }, Token { kind: String, lexeme: "\"local t={}; t = t[#t] + 1\"", computed_lexeme: None, line: 55, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 55, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 57, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 57, }, Token { kind: MultilineString, lexeme: "[[\n local a = {4\n\n]]", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: String, lexeme: "\"'}' expected (to close '{' at line 1)\"", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 60, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 65, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 65, }, Token { kind: String, lexeme: "\"a=1; bbbb=2; a=math.sin(3)+bbbb(3)\"", computed_lexeme: None, line: 65, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 65, }, Token { kind: String, lexeme: "\"global 'bbbb'\"", computed_lexeme: None, line: 65, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 66, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 66, }, Token { kind: String, lexeme: "\"a=1; local a,bbbb=2,3; a = math.sin(1) and bbbb(3)\"", computed_lexeme: None, line: 66, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 66, }, Token { kind: String, lexeme: "\"local 'bbbb'\"", computed_lexeme: None, line: 67, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 68, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 68, }, Token { kind: String, lexeme: "\"a={}; do local a=1 end a:bbbb(3)\"", computed_lexeme: None, line: 68, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 68, }, Token { kind: String, lexeme: "\"method 'bbbb'\"", computed_lexeme: None, line: 68, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 69, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 69, }, Token { kind: String, lexeme: "\"local a={}; a.bbbb(3)\"", computed_lexeme: None, line: 69, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 69, }, Token { kind: String, lexeme: "\"field 'bbbb'\"", computed_lexeme: None, line: 69, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 69, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 70, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 70, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 70, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 70, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 70, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 70, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 70, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 70, }, Token { kind: String, lexeme: "\"a={13}; local bbbb=1; a[bbbb](3)\"", computed_lexeme: None, line: 70, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 70, }, Token { kind: String, lexeme: "\"'bbbb'\"", computed_lexeme: None, line: 70, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 70, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 70, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 71, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 71, }, Token { kind: String, lexeme: "\"a={13}; local bbbb=1; a[bbbb](3)\"", computed_lexeme: None, line: 71, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 71, }, Token { kind: String, lexeme: "\"number\"", computed_lexeme: None, line: 71, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 71, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 72, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 72, }, Token { kind: String, lexeme: "\"a=(1)..{}\"", computed_lexeme: None, line: 72, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 72, }, Token { kind: String, lexeme: "\"a table value\"", computed_lexeme: None, line: 72, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "aaa", computed_lexeme: None, line: 74, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 74, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 74, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 75, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 75, }, Token { kind: String, lexeme: "\"aaa.bbb:ddd(9)\"", computed_lexeme: None, line: 75, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 75, }, Token { kind: String, lexeme: "\"global 'aaa'\"", computed_lexeme: None, line: 75, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 76, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 76, }, Token { kind: String, lexeme: "\"local aaa={bbb=1}; aaa.bbb:ddd(9)\"", computed_lexeme: None, line: 76, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 76, }, Token { kind: String, lexeme: "\"field 'bbb'\"", computed_lexeme: None, line: 76, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 76, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 77, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 77, }, Token { kind: String, lexeme: "\"local aaa={bbb={}}; aaa.bbb:ddd(9)\"", computed_lexeme: None, line: 77, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 77, }, Token { kind: String, lexeme: "\"method 'ddd'\"", computed_lexeme: None, line: 77, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 77, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 78, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 78, }, Token { kind: String, lexeme: "\"local a,b,c; (function () a = b+1 end)()\"", computed_lexeme: None, line: 78, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 78, }, Token { kind: String, lexeme: "\"upvalue 'b'\"", computed_lexeme: None, line: 78, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 78, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 79, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 79, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 79, }, Token { kind: String, lexeme: "\"local aaa={bbb={ddd=next}}; aaa.bbb:ddd(nil)\"", computed_lexeme: None, line: 79, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 81, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 81, }, Token { kind: String, lexeme: "\"local _ENV = {x={}}; a = a + 1\"", computed_lexeme: None, line: 81, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 81, }, Token { kind: String, lexeme: "\"global 'a'\"", computed_lexeme: None, line: 81, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 81, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 83, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 83, }, Token { kind: String, lexeme: "\"b=1; local aaa='a'; x=aaa+b\"", computed_lexeme: None, line: 83, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 83, }, Token { kind: String, lexeme: "\"local 'aaa'\"", computed_lexeme: None, line: 83, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 83, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 84, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 84, }, Token { kind: String, lexeme: "\"aaa={}; x=3/aaa\"", computed_lexeme: None, line: 84, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 84, }, Token { kind: String, lexeme: "\"global 'aaa'\"", computed_lexeme: None, line: 84, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 84, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 85, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 85, }, Token { kind: String, lexeme: "\"aaa='2'; b=nil;x=aaa*b\"", computed_lexeme: None, line: 85, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 85, }, Token { kind: String, lexeme: "\"global 'b'\"", computed_lexeme: None, line: 85, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 86, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 86, }, Token { kind: String, lexeme: "\"aaa={}; x=-aaa\"", computed_lexeme: None, line: 86, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 86, }, Token { kind: String, lexeme: "\"global 'aaa'\"", computed_lexeme: None, line: 86, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 87, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 87, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 87, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 87, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 87, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 87, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 87, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 87, }, Token { kind: String, lexeme: "\"aaa={}; x=(aaa or aaa)+(aaa and aaa)\"", computed_lexeme: None, line: 87, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 87, }, Token { kind: String, lexeme: "\"'aaa'\"", computed_lexeme: None, line: 87, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 87, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 87, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 88, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 88, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 88, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 88, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 88, }, Token { kind: String, lexeme: "\"aaa={}; (aaa or aaa)()\"", computed_lexeme: None, line: 88, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 88, }, Token { kind: String, lexeme: "\"'aaa'\"", computed_lexeme: None, line: 88, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 88, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 90, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 90, }, Token { kind: String, lexeme: "\"print(print < 10)\"", computed_lexeme: None, line: 90, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 90, }, Token { kind: String, lexeme: "\"function\"", computed_lexeme: None, line: 90, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 90, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 91, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 91, }, Token { kind: String, lexeme: "\"print(print < print)\"", computed_lexeme: None, line: 91, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 91, }, Token { kind: String, lexeme: "\"two function\"", computed_lexeme: None, line: 91, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 91, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 95, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "D", computed_lexeme: None, line: 95, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 96, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 96, }, Token { kind: MultilineString, lexeme: "[[\n -- create light udata\n local x = D.upvalueid(function () return debug end, 1)\n D.setuservalue(x, {})\n]]", computed_lexeme: None, line: 100, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 100, }, Token { kind: String, lexeme: "\"light userdata\"", computed_lexeme: None, line: 100, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 100, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 101, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 101, }, Token { kind: Identifier, lexeme: "D", computed_lexeme: None, line: 101, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 101, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 101, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 105, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 105, }, Token { kind: String, lexeme: "\"(io.write or print){}\"", computed_lexeme: None, line: 105, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 105, }, Token { kind: String, lexeme: "\"io.write\"", computed_lexeme: None, line: 105, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 105, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 106, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 106, }, Token { kind: String, lexeme: "\"(collectgarbage or print){}\"", computed_lexeme: None, line: 106, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 106, }, Token { kind: String, lexeme: "\"collectgarbage\"", computed_lexeme: None, line: 106, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 106, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 109, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 109, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 109, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 109, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 109, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 110, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 110, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 110, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 110, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 111, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 111, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 111, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 111, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 111, }, Token { kind: String, lexeme: "\"a = x\"", computed_lexeme: None, line: 111, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 111, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 111, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 112, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 113, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 113, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "concat", computed_lexeme: None, line: 113, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 113, }, Token { kind: String, lexeme: "\"; \"", computed_lexeme: None, line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 114, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 114, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 114, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 115, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 115, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 115, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 115, }, Token { kind: String, lexeme: "\"; a = bbb + 1\"", computed_lexeme: None, line: 115, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 115, }, Token { kind: String, lexeme: "\"global 'bbb'\"", computed_lexeme: None, line: 115, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 115, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 116, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 116, }, Token { kind: String, lexeme: "\"local _ENV=_ENV;\"", computed_lexeme: None, line: 116, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 116, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 116, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 116, }, Token { kind: String, lexeme: "\"; a = bbb + 1\"", computed_lexeme: None, line: 116, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 116, }, Token { kind: String, lexeme: "\"global 'bbb'\"", computed_lexeme: None, line: 116, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 116, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 117, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 117, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 117, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 117, }, Token { kind: String, lexeme: "\"; local t = {}; a = t.bbb + 1\"", computed_lexeme: None, line: 117, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 117, }, Token { kind: String, lexeme: "\"field 'bbb'\"", computed_lexeme: None, line: 117, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 117, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 118, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 118, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 118, }, Token { kind: String, lexeme: "\"; local t = {}; t:bbb()\"", computed_lexeme: None, line: 118, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 118, }, Token { kind: String, lexeme: "\"method 'bbb'\"", computed_lexeme: None, line: 118, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 120, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 120, }, Token { kind: MultilineString, lexeme: "[[aaa=9\nrepeat until 3==3\nlocal x=math.sin(math.cos(3))\nif math.sin(1) == x then return math.sin(1) end -- tail call\nlocal a,b = 1, {\n {x='a'..'b'..'c', y='b', z=x},\n {1,2,3,4,5} or 3+3<=3+3,\n 3+1>3+1,\n {d = x and aaa[x or y]}}\n]]", computed_lexeme: None, line: 129, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 129, }, Token { kind: String, lexeme: "\"global 'aaa'\"", computed_lexeme: None, line: 129, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 129, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 131, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 131, }, Token { kind: MultilineString, lexeme: "[[\nlocal x,y = {},1\nif math.sin(1) == 0 then return 3 end -- return\nx.a()]]", computed_lexeme: None, line: 134, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 134, }, Token { kind: String, lexeme: "\"field 'a'\"", computed_lexeme: None, line: 134, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 136, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 136, }, Token { kind: MultilineString, lexeme: "[[\nprefix = nil\ninsert = nil\nwhile 1 do\n local a\n if nil then break end\n insert(prefix, a)\nend]]", computed_lexeme: None, line: 143, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 143, }, Token { kind: String, lexeme: "\"global 'insert'\"", computed_lexeme: None, line: 143, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 143, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 145, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 145, }, Token { kind: MultilineString, lexeme: "[[ -- tail call\n return math.sin(\"a\")\n]]", computed_lexeme: None, line: 147, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 147, }, Token { kind: String, lexeme: "\"'sin'\"", computed_lexeme: None, line: 147, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 147, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 149, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 149, }, Token { kind: MultilineString, lexeme: "[[collectgarbage(\"nooption\")]]", computed_lexeme: None, line: 149, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 149, }, Token { kind: String, lexeme: "\"invalid option\"", computed_lexeme: None, line: 149, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 149, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 151, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 151, }, Token { kind: MultilineString, lexeme: "[[x = print .. \"a\"]]", computed_lexeme: None, line: 151, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 151, }, Token { kind: String, lexeme: "\"concatenate\"", computed_lexeme: None, line: 151, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 151, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 153, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 153, }, Token { kind: String, lexeme: "\"getmetatable(io.stdin).__gc()\"", computed_lexeme: None, line: 153, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 153, }, Token { kind: String, lexeme: "\"no value\"", computed_lexeme: None, line: 153, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 155, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 155, }, Token { kind: MultilineString, lexeme: "[[\nlocal Var\nlocal function main()\n NoSuchName (function() Var=0 end)\nend\nmain()\n]]", computed_lexeme: None, line: 161, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 161, }, Token { kind: String, lexeme: "\"global 'NoSuchName'\"", computed_lexeme: None, line: 161, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 162, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 162, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 164, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 164, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 164, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 164, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 164, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 164, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 164, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "__index", computed_lexeme: None, line: 164, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 164, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 164, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 165, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 165, }, Token { kind: String, lexeme: "\"a:sub()\"", computed_lexeme: None, line: 165, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 165, }, Token { kind: String, lexeme: "\"bad self\"", computed_lexeme: None, line: 165, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 165, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 166, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 166, }, Token { kind: String, lexeme: "\"string.sub('a', {})\"", computed_lexeme: None, line: 166, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 166, }, Token { kind: String, lexeme: "\"#2\"", computed_lexeme: None, line: 166, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 167, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 167, }, Token { kind: String, lexeme: "\"('a'):sub{}\"", computed_lexeme: None, line: 167, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 167, }, Token { kind: String, lexeme: "\"#1\"", computed_lexeme: None, line: 167, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 167, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 169, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 169, }, Token { kind: String, lexeme: "\"table.sort({1,2,3}, table.sort)\"", computed_lexeme: None, line: 169, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 169, }, Token { kind: String, lexeme: "\"'table.sort'\"", computed_lexeme: None, line: 169, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 171, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 171, }, Token { kind: String, lexeme: "\"string.gsub('s', 's', setmetatable)\"", computed_lexeme: None, line: 171, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 171, }, Token { kind: String, lexeme: "\"setmetatable'\"", computed_lexeme: None, line: 171, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 171, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 175, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 175, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 175, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 175, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 175, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 176, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 176, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 176, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 176, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 176, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 177, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 177, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 177, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 177, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 177, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 177, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 178, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 178, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 180, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 180, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 180, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 180, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 180, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 180, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 180, }, Token { kind: String, lexeme: "\"C stack overflow\"", computed_lexeme: None, line: 180, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 180, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "checkmessage", computed_lexeme: None, line: 182, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 182, }, Token { kind: String, lexeme: "\"coroutine.yield()\"", computed_lexeme: None, line: 182, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 182, }, Token { kind: String, lexeme: "\"outside a coroutine\"", computed_lexeme: None, line: 182, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 184, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 184, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 184, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 184, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 184, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 184, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 184, }, Token { kind: Identifier, lexeme: "sort", computed_lexeme: None, line: 184, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 184, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 184, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 184, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 184, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 184, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 184, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 184, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 184, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 184, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 184, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 184, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 184, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 184, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 184, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 185, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 185, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 185, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 185, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 185, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 185, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 185, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 185, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 185, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 185, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 185, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 186, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "select", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 186, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 186, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 186, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 186, }, Token { kind: String, lexeme: "\"yield across\"", computed_lexeme: None, line: 186, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 186, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "idsize", computed_lexeme: None, line: 191, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 191, }, Token { kind: Number, lexeme: "60", computed_lexeme: Some( "60", ), line: 191, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 191, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 191, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 192, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 192, }, Token { kind: Identifier, lexeme: "checksize", computed_lexeme: None, line: 192, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 192, }, Token { kind: Identifier, lexeme: "source", computed_lexeme: None, line: 192, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 192, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 194, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 194, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 194, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 194, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 194, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "source", computed_lexeme: None, line: 194, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 195, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 195, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "match", computed_lexeme: None, line: 195, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 195, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 195, }, Token { kind: String, lexeme: "\"^([^:]*):\"", computed_lexeme: None, line: 195, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 196, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 196, }, Token { kind: Colon, lexeme: ":", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "len", computed_lexeme: None, line: 196, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 196, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 196, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "idsize", computed_lexeme: None, line: 196, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 196, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 197, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 199, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 199, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 199, }, Token { kind: Number, lexeme: "60", computed_lexeme: Some( "60", ), line: 199, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 199, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 199, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 199, }, Token { kind: Number, lexeme: "60", computed_lexeme: Some( "60", ), line: 199, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 199, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 199, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 199, }, Token { kind: Identifier, lexeme: "checksize", computed_lexeme: None, line: 200, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 200, }, Token { kind: String, lexeme: "\"@\"", computed_lexeme: None, line: 200, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 200, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 200, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 200, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 200, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 200, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 200, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "checksize", computed_lexeme: None, line: 201, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 201, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 201, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 201, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 201, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 201, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 201, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 201, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 201, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "checksize", computed_lexeme: None, line: 202, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 202, }, Token { kind: String, lexeme: "\"=\"", computed_lexeme: None, line: 202, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 202, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 202, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 202, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 202, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 202, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 202, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 202, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 202, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 202, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 202, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 203, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 208, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 208, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 208, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "l", computed_lexeme: None, line: 208, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 208, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 209, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 209, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 209, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 209, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 209, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 209, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 209, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 210, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 210, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "match", computed_lexeme: None, line: 210, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 210, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 210, }, Token { kind: String, lexeme: "\":(%d+):\"", computed_lexeme: None, line: 210, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 211, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 211, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 211, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 211, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 211, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 211, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 211, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 211, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 211, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 211, }, Token { kind: Identifier, lexeme: "l", computed_lexeme: None, line: 211, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 211, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 214, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 214, }, Token { kind: String, lexeme: "\"local a\\n for i=1,'a' do \\n print(i) \\n end\"", computed_lexeme: None, line: 214, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 214, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 214, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 214, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 215, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 215, }, Token { kind: String, lexeme: "\"\\n local a \\n for k,v in 3 \\n do \\n print(k) \\n end\"", computed_lexeme: None, line: 215, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 215, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 215, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 215, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 216, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 216, }, Token { kind: String, lexeme: "\"\\n\\n for k,v in \\n 3 \\n do \\n print(k) \\n end\"", computed_lexeme: None, line: 216, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 216, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 216, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 217, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 217, }, Token { kind: String, lexeme: "\"function a.x.y ()\\na=a+1\\nend\"", computed_lexeme: None, line: 217, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 217, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 217, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 217, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 219, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 219, }, Token { kind: String, lexeme: "\"a = \\na\\n+\\n{}\"", computed_lexeme: None, line: 219, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 219, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 219, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 219, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 220, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 220, }, Token { kind: String, lexeme: "\"a = \\n3\\n+\\n(\\n4\\n/\\nprint)\"", computed_lexeme: None, line: 220, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 220, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 220, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 220, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 221, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 221, }, Token { kind: String, lexeme: "\"a = \\nprint\\n+\\n(\\n4\\n/\\n7)\"", computed_lexeme: None, line: 221, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 221, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 221, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 221, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 223, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 223, }, Token { kind: String, lexeme: "\"a\\n=\\n-\\n\\nprint\\n;\"", computed_lexeme: None, line: 223, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 223, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 223, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 223, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 225, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 225, }, Token { kind: MultilineString, lexeme: "[[\na\n(\n23)\n]]", computed_lexeme: None, line: 229, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 229, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 229, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 229, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 231, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 231, }, Token { kind: MultilineString, lexeme: "[[\nlocal a = {x = 13}\na\n.\nx\n(\n23\n)\n]]", computed_lexeme: None, line: 239, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 239, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 239, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 239, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 241, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 241, }, Token { kind: MultilineString, lexeme: "[[\nlocal a = {x = 13}\na\n.\nx\n(\n23 + a\n)\n]]", computed_lexeme: None, line: 249, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 249, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 249, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 249, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 251, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 251, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 251, }, Token { kind: MultilineString, lexeme: "[[\nfunction g() f() end\nfunction f(x) error('a', X) end\ng()\n]]", computed_lexeme: None, line: 255, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 256, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 256, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 256, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 256, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 256, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 256, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 256, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 256, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 256, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 257, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 257, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 257, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 257, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 257, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 257, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 257, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 257, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 257, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 258, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 258, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 258, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 258, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 258, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 258, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 258, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 259, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 259, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 259, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "lineerror", computed_lexeme: None, line: 259, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 259, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 259, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 259, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 259, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 259, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 259, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 262, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 262, }, Token { kind: Identifier, lexeme: "_soft", computed_lexeme: None, line: 262, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 262, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 264, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 264, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 264, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "l", computed_lexeme: None, line: 265, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 265, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 265, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 265, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 265, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 265, }, Token { kind: String, lexeme: "\"l\"", computed_lexeme: None, line: 265, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 265, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 265, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 265, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 265, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 265, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 265, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 265, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 265, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 265, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 265, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 265, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 265, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 265, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 267, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "checkstackmessage", computed_lexeme: None, line: 267, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 267, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 267, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 268, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 268, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 268, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 268, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 268, }, Token { kind: String, lexeme: "\"^.-:%d+: stack overflow\"", computed_lexeme: None, line: 268, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 268, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 268, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 271, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "checkstackmessage", computed_lexeme: None, line: 271, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 271, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 271, }, Token { kind: String, lexeme: "'y()'", computed_lexeme: None, line: 271, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 271, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 271, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 272, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 272, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 272, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 272, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 273, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 273, }, Token { kind: Identifier, lexeme: "checkstackmessage", computed_lexeme: None, line: 273, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 273, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 273, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 273, }, Token { kind: String, lexeme: "'y()'", computed_lexeme: None, line: 273, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 273, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 273, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 273, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 274, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 274, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 274, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 274, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 275, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 275, }, Token { kind: Identifier, lexeme: "checkstackmessage", computed_lexeme: None, line: 275, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 275, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 275, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 275, }, Token { kind: String, lexeme: "'y()'", computed_lexeme: None, line: 275, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 275, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 275, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 275, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 276, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 276, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 276, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 276, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 280, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 280, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 280, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "l1", computed_lexeme: None, line: 281, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 282, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 282, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 282, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 282, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 282, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 282, }, Token { kind: Identifier, lexeme: "l1", computed_lexeme: None, line: 283, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 283, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 283, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 283, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 283, }, Token { kind: String, lexeme: "\"l\"", computed_lexeme: None, line: 283, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 283, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 283, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 283, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 283, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 283, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 284, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 285, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "stackmsg", computed_lexeme: None, line: 285, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 285, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 285, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 285, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "traceback", computed_lexeme: None, line: 285, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 285, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 285, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 286, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 286, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 286, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 286, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 287, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 287, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 287, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 287, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 287, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 288, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 288, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "gmatch", computed_lexeme: None, line: 288, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "stackmsg", computed_lexeme: None, line: 288, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 288, }, Token { kind: String, lexeme: "\"[^\\n]*\"", computed_lexeme: None, line: 288, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 288, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 288, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "curr", computed_lexeme: None, line: 289, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 289, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "match", computed_lexeme: None, line: 289, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 289, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 289, }, Token { kind: String, lexeme: "\":(%d+):\"", computed_lexeme: None, line: 289, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 289, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "curr", computed_lexeme: None, line: 290, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 290, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "insert", computed_lexeme: None, line: 290, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 290, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "tonumber", computed_lexeme: None, line: 290, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 290, }, Token { kind: Identifier, lexeme: "curr", computed_lexeme: None, line: 290, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 290, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 290, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 290, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 291, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 292, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 292, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 292, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 292, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 293, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 293, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 293, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 293, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 293, }, Token { kind: NotEquals, lexeme: "~=", computed_lexeme: None, line: 293, }, Token { kind: Identifier, lexeme: "l1", computed_lexeme: None, line: 293, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 293, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 294, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 294, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 294, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 294, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "l", computed_lexeme: None, line: 294, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 295, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 295, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 295, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 295, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 296, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 297, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 297, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 297, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 297, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 297, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 297, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 301, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 301, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 301, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 301, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 301, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 302, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 302, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 302, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 302, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 302, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 302, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 302, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 302, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 303, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 303, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 303, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 303, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 305, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 305, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 305, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 305, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 305, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 305, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 306, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 306, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 306, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 306, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 306, }, Token { kind: String, lexeme: "'a\\n'", computed_lexeme: None, line: 306, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 306, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 307, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 308, }, Token { kind: Identifier, lexeme: "aux", computed_lexeme: None, line: 308, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 308, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 308, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 308, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 308, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 308, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 308, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 308, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 308, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 308, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 308, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 308, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 308, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 309, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 309, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 309, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "aux", computed_lexeme: None, line: 309, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "aux", computed_lexeme: None, line: 309, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 309, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 310, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 310, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 311, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 312, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 313, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 313, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 313, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 313, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 315, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "loop", computed_lexeme: None, line: 315, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 315, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 315, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 315, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 315, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 315, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 315, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "loop", computed_lexeme: None, line: 315, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 315, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 315, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 315, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 315, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 315, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 317, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 317, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 317, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "loop", computed_lexeme: None, line: 317, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 317, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 317, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 317, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 318, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 318, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 318, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 318, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 318, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 318, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 318, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 318, }, Token { kind: String, lexeme: "\"stack overflow\"", computed_lexeme: None, line: 318, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 318, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 318, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 319, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 319, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 319, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 319, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 319, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 319, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 319, }, Token { kind: Identifier, lexeme: "loop", computed_lexeme: None, line: 319, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 319, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 320, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 320, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 320, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 320, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 320, }, Token { kind: String, lexeme: "\"error handling\"", computed_lexeme: None, line: 320, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 320, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 321, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 321, }, Token { kind: Identifier, lexeme: "math", computed_lexeme: None, line: 321, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 321, }, Token { kind: Identifier, lexeme: "sin", computed_lexeme: None, line: 321, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 321, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 321, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 321, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 321, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 321, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 321, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 322, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 322, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 323, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 323, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 324, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 324, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 324, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 324, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 324, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 324, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 326, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 326, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 326, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 326, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 326, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 326, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 326, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 326, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 326, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 327, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 327, }, Token { kind: Number, lexeme: "999900", computed_lexeme: Some( "999900", ), line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: Number, lexeme: "1000000", computed_lexeme: Some( "1000000", ), line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 327, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 327, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 327, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 327, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 327, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 327, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 327, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 327, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 328, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 328, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 329, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 329, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 329, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 329, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 329, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 329, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 329, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 329, }, Token { kind: String, lexeme: "\"too many results\"", computed_lexeme: None, line: 329, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 329, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 329, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 331, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 335, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 335, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 335, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 335, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 335, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 335, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 335, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 335, }, Token { kind: String, lexeme: "'x'", computed_lexeme: None, line: 335, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 335, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 335, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 336, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 336, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 336, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 336, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 336, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 336, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 336, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 336, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 336, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 336, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 336, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 336, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 336, }, Token { kind: String, lexeme: "'y'", computed_lexeme: None, line: 336, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 336, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 336, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 337, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 337, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 337, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 337, }, Token { kind: String, lexeme: "'xy'", computed_lexeme: None, line: 337, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 340, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 340, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 340, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 340, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 340, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 340, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 340, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 340, }, Token { kind: String, lexeme: "\"alo\"", computed_lexeme: None, line: 340, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 340, }, Token { kind: String, lexeme: "\"al\"", computed_lexeme: None, line: 340, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 341, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 341, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 341, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 341, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 341, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 341, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 341, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 341, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 342, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 342, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 342, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 342, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 342, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 342, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 342, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 342, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 342, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 342, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 342, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 342, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 342, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 342, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 342, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 342, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 342, }, Token { kind: String, lexeme: "\"al\"", computed_lexeme: None, line: 342, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 343, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 343, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 343, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 343, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 343, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 343, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 343, }, Token { kind: String, lexeme: "\"table\"", computed_lexeme: None, line: 343, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 343, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 343, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 343, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 345, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 345, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 345, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 345, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 346, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 346, }, Token { kind: String, lexeme: "\"syntax error\"", computed_lexeme: None, line: 346, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 346, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 346, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 346, }, Token { kind: String, lexeme: "\"error\"", computed_lexeme: None, line: 346, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 346, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 346, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 346, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 347, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"1.000\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"1.000\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 347, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 347, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 348, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 348, }, Token { kind: String, lexeme: "\"[[a]]\"", computed_lexeme: None, line: 348, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 348, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 348, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 348, }, Token { kind: String, lexeme: "\"[[a]]\"", computed_lexeme: None, line: 348, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 348, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 348, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 348, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 349, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 349, }, Token { kind: String, lexeme: "\"'aa'\"", computed_lexeme: None, line: 349, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 349, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 349, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 349, }, Token { kind: String, lexeme: "\"'aa'\"", computed_lexeme: None, line: 349, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 349, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 349, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "checksyntax", computed_lexeme: None, line: 352, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 352, }, Token { kind: String, lexeme: "\"\\255a = 1\"", computed_lexeme: None, line: 352, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 352, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 352, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 352, }, Token { kind: String, lexeme: "\"char(255)\"", computed_lexeme: None, line: 352, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 352, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 352, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 352, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 354, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 354, }, Token { kind: String, lexeme: "'I = load(\"a=9+\"); a=3'", computed_lexeme: None, line: 354, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 354, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 355, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 355, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 355, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 355, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 355, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 355, }, Token { kind: Identifier, lexeme: "I", computed_lexeme: None, line: 355, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 355, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 355, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 355, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 356, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 356, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 356, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 358, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 358, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 358, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "_soft", computed_lexeme: None, line: 359, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 359, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 359, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 359, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 359, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 360, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 360, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 360, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 360, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 360, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 360, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 360, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 361, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 361, }, Token { kind: String, lexeme: "'a = '", computed_lexeme: None, line: 361, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 361, }, Token { kind: Identifier, lexeme: "doit", computed_lexeme: None, line: 362, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 362, }, Token { kind: String, lexeme: "'a = 4+nil'", computed_lexeme: None, line: 362, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 362, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 363, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 367, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 367, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "init", computed_lexeme: None, line: 367, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 367, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 367, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 368, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 368, }, Token { kind: String, lexeme: "\"local a; \"", computed_lexeme: None, line: 368, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "init", computed_lexeme: None, line: 368, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 368, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 368, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 368, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 368, }, Token { kind: Number, lexeme: "400", computed_lexeme: Some( "400", ), line: 368, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 368, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 369, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 369, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 369, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 369, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 370, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 370, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 370, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 370, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 370, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 370, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 370, }, Token { kind: String, lexeme: "\"levels\"", computed_lexeme: None, line: 370, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 370, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 370, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 372, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 372, }, Token { kind: String, lexeme: "\"a=\"", computed_lexeme: None, line: 372, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 372, }, Token { kind: String, lexeme: "\"{\"", computed_lexeme: None, line: 372, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 373, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 373, }, Token { kind: String, lexeme: "\"a=\"", computed_lexeme: None, line: 373, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 373, }, Token { kind: String, lexeme: "\"(\"", computed_lexeme: None, line: 373, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 374, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 374, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 374, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 374, }, Token { kind: String, lexeme: "\"a(\"", computed_lexeme: None, line: 374, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 375, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 375, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 375, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 375, }, Token { kind: String, lexeme: "\"do \"", computed_lexeme: None, line: 375, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 375, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 376, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 376, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 376, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 376, }, Token { kind: String, lexeme: "\"while a do \"", computed_lexeme: None, line: 376, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 376, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 377, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 377, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 377, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 377, }, Token { kind: String, lexeme: "\"if a then else \"", computed_lexeme: None, line: 377, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 377, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 378, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 378, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 378, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 378, }, Token { kind: String, lexeme: "\"function foo () \"", computed_lexeme: None, line: 378, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 379, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 379, }, Token { kind: String, lexeme: "\"a=\"", computed_lexeme: None, line: 379, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 379, }, Token { kind: String, lexeme: "\"a..\"", computed_lexeme: None, line: 379, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "testrep", computed_lexeme: None, line: 380, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 380, }, Token { kind: String, lexeme: "\"a=\"", computed_lexeme: None, line: 380, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 380, }, Token { kind: String, lexeme: "\"a^\"", computed_lexeme: None, line: 380, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 380, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 382, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 382, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 382, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 382, }, Token { kind: String, lexeme: "\"a,\"", computed_lexeme: None, line: 382, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 382, }, Token { kind: Colon, lexeme: ":", computed_lexeme: None, line: 382, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 382, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 382, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 382, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 382, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 382, }, Token { kind: String, lexeme: "\"a=nil\"", computed_lexeme: None, line: 382, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 383, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 383, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 383, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 383, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 384, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 384, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 384, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 384, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 384, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 384, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 384, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 384, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 384, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 384, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 384, }, Token { kind: String, lexeme: "\"levels\"", computed_lexeme: None, line: 384, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 384, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 384, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 389, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 389, }, Token { kind: Number, lexeme: "127", computed_lexeme: Some( "127", ), line: 389, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 390, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 390, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 390, }, Token { kind: String, lexeme: "\"local function fooA ()\\n local \"", computed_lexeme: None, line: 390, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 391, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 391, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 391, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 391, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 391, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 391, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 391, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 392, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 392, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 392, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 392, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 392, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 392, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 392, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 392, }, Token { kind: String, lexeme: "\", \"", computed_lexeme: None, line: 392, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 393, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 394, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 394, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 394, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 394, }, Token { kind: String, lexeme: "\"b,c\\n\"", computed_lexeme: None, line: 394, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 395, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 395, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 395, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 395, }, Token { kind: String, lexeme: "\"local function fooB ()\\n local \"", computed_lexeme: None, line: 395, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 396, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 396, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 396, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 396, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 397, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 397, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 397, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 397, }, Token { kind: String, lexeme: "\"b\"", computed_lexeme: None, line: 397, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 397, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 397, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 397, }, Token { kind: String, lexeme: "\", \"", computed_lexeme: None, line: 397, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 398, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 399, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 399, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 399, }, Token { kind: String, lexeme: "\"b\\n\"", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 400, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 400, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 400, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 400, }, Token { kind: String, lexeme: "\"function fooC () return b+c\"", computed_lexeme: None, line: 400, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 401, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 401, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 401, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 401, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 401, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 402, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 402, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 402, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 402, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 402, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 402, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 402, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 403, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 403, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 403, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 403, }, Token { kind: String, lexeme: "\"+a\"", computed_lexeme: None, line: 403, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 403, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 403, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 403, }, Token { kind: String, lexeme: "\"+b\"", computed_lexeme: None, line: 403, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 403, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 403, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 404, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 404, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 404, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 404, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 404, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 405, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 406, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 406, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 406, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 406, }, Token { kind: String, lexeme: "\"\\nend end end\"", computed_lexeme: None, line: 406, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 407, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 407, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 407, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 407, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 408, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 408, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 408, }, Token { kind: Number, lexeme: "255", computed_lexeme: Some( "255", ), line: 408, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 408, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 408, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 408, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 408, }, Token { kind: String, lexeme: "\"too many upvalues\"", computed_lexeme: None, line: 408, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 408, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 409, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 409, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 409, }, Token { kind: String, lexeme: "\"line 5\"", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 412, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 412, }, Token { kind: String, lexeme: "\"\\nfunction foo ()\\n local \"", computed_lexeme: None, line: 412, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 413, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 413, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 413, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 413, }, Token { kind: Number, lexeme: "300", computed_lexeme: Some( "300", ), line: 413, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 414, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 414, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 414, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 414, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 414, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 414, }, Token { kind: String, lexeme: "\", \"", computed_lexeme: None, line: 414, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 415, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 416, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 416, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 416, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 416, }, Token { kind: String, lexeme: "\"b\\n\"", computed_lexeme: None, line: 416, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 417, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 417, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 417, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 417, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 417, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 417, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 417, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 417, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 417, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 418, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 418, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 418, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 418, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 418, }, Token { kind: String, lexeme: "\"line 2\"", computed_lexeme: None, line: 418, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 418, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 420, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "__index", computed_lexeme: None, line: 420, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "oldmm", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 422, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 422, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 422, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 422, }, ]