--- source: src/main.rs expression: scanned input_file: test-data/lua5.4-tests/coroutine.lua --- [ Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 4, }, Token { kind: String, lexeme: "\"testing coroutines\"", computed_lexeme: None, line: 4, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 6, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 6, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 6, }, Token { kind: Identifier, lexeme: "require", computed_lexeme: None, line: 6, }, Token { kind: String, lexeme: "'debug'", computed_lexeme: None, line: 6, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 8, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 8, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 10, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "ismain", computed_lexeme: None, line: 10, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 10, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 10, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 10, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 10, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 11, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 11, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 11, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 11, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 11, }, Token { kind: String, lexeme: "\"thread\"", computed_lexeme: None, line: 11, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "ismain", computed_lexeme: None, line: 11, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 11, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 12, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 12, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 12, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 12, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 12, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 12, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 12, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 13, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 13, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 13, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 13, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 13, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 13, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 13, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 13, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 13, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 13, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 13, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "assert", 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: "pcall", computed_lexeme: None, line: 14, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 14, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 14, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 14, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 18, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 18, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 18, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 18, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 18, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 18, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 18, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 18, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 19, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 19, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 19, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 19, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 19, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 19, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 19, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 19, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 19, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 24, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "eqtab", computed_lexeme: None, line: 24, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 24, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 24, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 25, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 25, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 25, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 25, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 25, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 25, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 26, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 26, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 26, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 26, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 26, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 26, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 27, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 27, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 27, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 27, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 28, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 28, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 28, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 28, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 28, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 28, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 28, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 29, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 30, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 32, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 32, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 32, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 32, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 32, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 33, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 33, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 33, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 33, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 33, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 33, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 33, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 34, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 34, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 34, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 34, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 34, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 35, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 35, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 35, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 35, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 35, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 35, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 35, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 35, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 35, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 35, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 38, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 38, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 38, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 38, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 38, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 38, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 38, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 38, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 38, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 38, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 38, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 39, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 39, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 39, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 39, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 39, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 39, }, Token { kind: Identifier, lexeme: "f", 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: String, lexeme: "\"running\"", computed_lexeme: None, line: 39, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 39, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 40, }, Token { kind: Identifier, lexeme: "arg", computed_lexeme: None, line: 40, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 40, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 40, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 40, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 40, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 41, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 41, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 41, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 41, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 41, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 41, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 41, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 41, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 41, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 42, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 42, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 42, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 42, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 42, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 42, }, Token { kind: Identifier, lexeme: "arg", computed_lexeme: None, line: 42, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 42, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 43, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 43, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 43, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 43, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 43, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 43, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 43, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "arg", computed_lexeme: None, line: 43, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 43, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 43, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 43, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 43, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 43, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 44, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 45, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 45, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 45, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 45, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 45, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 45, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 45, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 46, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 48, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 48, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 48, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 48, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 48, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 48, }, Token { kind: Identifier, lexeme: "foo", 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: "coroutine", computed_lexeme: None, line: 49, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 49, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 49, }, Token { kind: RightParen, lexeme: ")", 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: "type", computed_lexeme: None, line: 50, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 50, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 50, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 50, }, Token { kind: String, lexeme: "\"thread\"", computed_lexeme: None, line: 50, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 50, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 50, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 50, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 50, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 50, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 50, }, Token { kind: String, lexeme: "\"suspended\"", 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: "string", computed_lexeme: None, line: 51, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 51, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 51, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 51, }, Token { kind: Identifier, lexeme: "tostring", computed_lexeme: None, line: 51, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 51, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 51, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 51, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 51, }, Token { kind: String, lexeme: "\"thread\"", computed_lexeme: None, line: 51, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 51, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 51, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 52, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 52, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 52, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 52, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 53, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 53, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 53, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 53, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 53, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 53, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 53, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 53, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 53, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 53, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: String, lexeme: "'b'", computed_lexeme: None, line: 53, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 53, }, Token { kind: String, lexeme: "'c'", computed_lexeme: None, line: 53, }, Token { kind: RightBrace, 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: "coroutine", computed_lexeme: None, line: 54, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 54, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 54, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 54, }, Token { kind: Identifier, lexeme: "f", 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: "s", computed_lexeme: None, line: 55, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 55, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 55, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 55, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 55, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 55, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 55, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 55, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 55, }, Token { kind: String, lexeme: "\"suspended\"", computed_lexeme: None, line: 55, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 55, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 56, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 56, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 56, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 56, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 56, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 56, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 56, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 56, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "eqtab", computed_lexeme: None, line: 57, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 57, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 57, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 57, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 57, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 57, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 58, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 58, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 58, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 58, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 58, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 58, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 58, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 58, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 59, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 59, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 59, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 59, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 59, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 59, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 59, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 59, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 59, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 60, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 60, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 60, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 60, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 60, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), 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: "eqtab", computed_lexeme: None, line: 61, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 61, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 61, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 61, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 61, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 61, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 61, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 61, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 61, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 61, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 61, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 62, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 62, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 62, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 62, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 62, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 62, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 62, }, Token { kind: String, lexeme: "'b'", computed_lexeme: None, line: 62, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 62, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 62, }, Token { kind: String, lexeme: "'c'", computed_lexeme: None, line: 62, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 62, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 62, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 62, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 62, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 63, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 63, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 63, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 63, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 63, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 63, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 63, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 63, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 63, }, Token { kind: String, lexeme: "\"xuxu\"", computed_lexeme: None, line: 63, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "eqtab", computed_lexeme: None, line: 64, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 64, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 64, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 64, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 64, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 64, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 64, }, Token { kind: String, lexeme: "\"xuxu\"", computed_lexeme: None, line: 64, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 64, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 64, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 65, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 65, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 65, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 65, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 65, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 65, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 65, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 65, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 65, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 65, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 65, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 65, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 65, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 65, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 65, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 66, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 66, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 66, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 66, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 66, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 66, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 66, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 66, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 66, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 66, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 66, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 67, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 67, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 67, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 67, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 67, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 67, }, Token { kind: String, lexeme: "\"xuxu\"", computed_lexeme: None, line: 67, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 67, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 68, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 68, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 68, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 68, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 68, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 68, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 68, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 68, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 68, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 68, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 68, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 68, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 68, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 68, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 68, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 68, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 72, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 72, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 72, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 72, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 72, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 72, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 72, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 72, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 72, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 73, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 73, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 73, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 73, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 73, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 73, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 73, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 73, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 73, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 74, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 74, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 74, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 74, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 74, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 74, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 74, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 75, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 75, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 75, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 75, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 75, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 75, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 75, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 76, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 77, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 77, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 78, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 78, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 79, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 79, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 79, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 79, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 79, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 79, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 79, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 79, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 79, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 79, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 79, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 79, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 79, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 79, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 80, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 80, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 80, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 80, }, Token { kind: String, lexeme: "'xuxu'", computed_lexeme: None, line: 80, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 80, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 80, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 80, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 80, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 80, }, Token { kind: String, lexeme: "'xuxu'", computed_lexeme: None, line: 80, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 80, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 80, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 80, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 80, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 83, }, Token { kind: Identifier, lexeme: "pf", computed_lexeme: None, line: 83, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 83, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 83, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 83, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 83, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 83, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 84, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 84, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 84, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 84, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 84, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 84, }, Token { kind: Identifier, lexeme: "pf", computed_lexeme: None, line: 85, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 85, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 85, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 85, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 85, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 85, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 85, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 88, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 88, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 88, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "pf", computed_lexeme: None, line: 88, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 88, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 89, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 89, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 89, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 89, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 90, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 90, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 90, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 90, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 90, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 90, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 90, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 91, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 91, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 91, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 91, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 91, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 91, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 91, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 91, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 91, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 91, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 91, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 92, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 92, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 92, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 92, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 92, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 93, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 96, }, Token { kind: Identifier, lexeme: "gen", computed_lexeme: None, line: 96, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 96, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 96, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 96, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 97, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 97, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 97, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 97, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 97, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 97, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 97, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 97, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 98, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 98, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 98, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 98, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 98, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 98, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 98, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 98, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 98, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 98, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 98, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 98, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 98, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 98, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 99, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 99, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 100, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 103, }, Token { kind: Identifier, lexeme: "filter", computed_lexeme: None, line: 103, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 103, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 103, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 103, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 103, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 103, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 104, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 104, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 104, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 104, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 104, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 104, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 104, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 104, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 105, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 105, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 105, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 106, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 106, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 106, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 106, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 106, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 106, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 107, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 107, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 107, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 107, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 107, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 107, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "math", computed_lexeme: None, line: 108, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "fmod", computed_lexeme: None, line: 108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 108, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 108, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 108, }, Token { kind: NotEquals, lexeme: "~=", computed_lexeme: None, line: 108, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 108, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 108, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 108, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 108, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 108, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 109, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 110, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 111, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 113, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "gen", computed_lexeme: None, line: 113, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 113, }, Token { kind: Number, lexeme: "80", computed_lexeme: Some( "80", ), line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 114, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 114, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 114, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 114, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 114, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 115, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 115, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 115, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 116, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 116, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 116, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 116, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 116, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 116, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 117, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 117, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 117, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 117, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 117, }, Token { kind: Break, lexeme: "break", computed_lexeme: None, line: 117, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 117, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 118, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "insert", computed_lexeme: None, line: 118, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 118, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 118, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 118, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 119, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 119, }, Token { kind: Identifier, lexeme: "filter", computed_lexeme: None, line: 119, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 119, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 119, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 119, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 119, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 119, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 120, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 122, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 122, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 122, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 122, }, Token { kind: Number, lexeme: "22", computed_lexeme: Some( "22", ), line: 122, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 122, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 122, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 122, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 122, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 122, }, Token { kind: Number, lexeme: "79", computed_lexeme: Some( "79", ), line: 122, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 123, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 123, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 123, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 123, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 123, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 126, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 126, }, Token { kind: String, lexeme: "\"to-be-closed variables in coroutines\"", computed_lexeme: None, line: 126, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 126, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 128, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 128, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 128, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 128, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 128, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 128, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 129, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 129, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 129, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 129, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 129, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 129, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 129, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 129, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 129, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 129, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 129, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 129, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 130, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 132, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 134, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 134, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 134, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 134, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 135, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 135, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 135, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 135, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 135, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 135, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 135, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 135, }, Token { kind: String, lexeme: "\"testing 'coroutine.close'\"", computed_lexeme: None, line: 135, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 135, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 135, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 136, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 136, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 136, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 136, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 136, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 136, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 136, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 136, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 136, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 136, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 136, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 137, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 137, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 137, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 137, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 137, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 138, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 138, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 138, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 138, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 138, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 140, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 140, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 140, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 140, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 140, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 140, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 140, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 140, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 140, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 140, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 141, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 141, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 141, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 141, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 141, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 141, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 141, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 141, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 145, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 145, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 145, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 145, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 145, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 145, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 145, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 145, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 145, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 146, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 146, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 146, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 146, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 146, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 146, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 146, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 146, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 146, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 146, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 146, }, Token { kind: String, lexeme: "\"running\"", computed_lexeme: None, line: 146, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 146, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 146, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 148, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 148, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 148, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 148, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 148, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 151, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 151, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 151, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 151, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 151, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 151, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 151, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 151, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 151, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 152, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 152, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 152, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 152, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 152, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 152, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 152, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 153, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 153, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 153, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 153, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 153, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 153, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 153, }, Token { kind: String, lexeme: "\"normal\"", computed_lexeme: None, line: 153, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 153, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 153, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 154, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 154, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 154, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 154, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 154, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 157, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 158, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 158, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 159, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 159, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 159, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 159, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 159, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 159, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 160, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 160, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 160, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 161, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 161, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 161, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 161, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 161, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 161, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 161, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 162, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 162, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 162, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 162, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 162, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 162, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 163, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 163, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 164, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 164, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 164, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 164, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 164, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 164, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 165, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 165, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 166, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 166, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 166, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 166, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 166, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 167, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 167, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 167, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 167, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 167, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 167, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 167, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 167, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 168, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 168, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 168, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 168, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 168, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 168, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 168, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 168, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 168, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 168, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 169, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 169, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 169, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 169, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 169, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 169, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 169, }, Token { kind: String, lexeme: "\"running coroutine\"", computed_lexeme: None, line: 169, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 169, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 169, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 170, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 173, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 173, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "co", 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: "error", 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: "st", computed_lexeme: None, line: 177, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "msg", 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: "co", computed_lexeme: None, line: 177, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 177, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 177, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 177, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 178, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 178, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 178, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 178, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 178, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 178, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 178, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 178, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 178, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 179, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 179, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 179, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 179, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 179, }, Token { kind: RightParen, lexeme: ")", 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: Not, lexeme: "not", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 180, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 180, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 180, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 180, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 182, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 182, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 182, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 182, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 182, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 182, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 183, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 183, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 183, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 183, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 183, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "co", 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: "create", 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: Local, lexeme: "local", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 186, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 186, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 186, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 186, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 186, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 186, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 186, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 187, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 187, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 187, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 187, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 187, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 187, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 187, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 187, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 187, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 187, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 188, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 188, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 189, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 189, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 190, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 190, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 190, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 190, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 190, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 191, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 191, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 192, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 192, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 192, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 192, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 192, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 192, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 193, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 193, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 194, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 194, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 194, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 194, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 194, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 194, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 195, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 195, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 195, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 195, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 195, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 195, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 195, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 195, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 195, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 195, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 198, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 198, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 198, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 198, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 199, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 199, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 199, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 199, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 199, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 199, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 199, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 199, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 199, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 200, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 200, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 200, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 200, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 200, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 200, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 200, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 200, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 201, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 201, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 201, }, Token { kind: Number, lexeme: "111", computed_lexeme: Some( "111", ), line: 201, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 201, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 202, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 202, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 202, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 203, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 203, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 203, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 203, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 204, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 204, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 205, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 205, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 205, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 205, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 205, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 205, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 205, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 205, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 206, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 206, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 206, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 206, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 206, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 206, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 206, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 206, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 206, }, Token { kind: Number, lexeme: "111", computed_lexeme: Some( "111", ), line: 206, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 206, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 207, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 207, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 208, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 208, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 208, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 208, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 209, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 210, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 210, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "co", 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: Identifier, lexeme: "x", computed_lexeme: None, line: 211, }, Token { kind: DoubleEquals, 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: Local, lexeme: "local", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 212, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 212, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 212, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 212, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 212, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 213, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 213, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 213, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 213, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 213, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 213, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 213, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 213, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 213, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 213, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 213, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 213, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 213, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 214, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 214, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 214, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 214, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 214, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 214, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 216, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 216, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 216, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 216, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 216, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 217, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 217, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 217, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 217, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 217, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 217, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 217, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 217, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 218, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 220, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 222, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 222, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 222, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 222, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 223, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 223, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 223, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 223, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 224, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 224, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 224, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 224, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 225, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 225, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 225, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 225, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 225, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 225, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 225, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 225, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 225, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 226, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 226, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 226, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 226, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 226, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 226, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 226, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 226, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 227, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 227, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 227, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 228, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 228, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 229, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 229, }, Token { kind: Number, lexeme: "43", computed_lexeme: Some( "43", ), line: 229, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 229, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 230, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 231, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 231, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 231, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 231, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 231, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 231, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 231, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 231, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 231, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 231, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 231, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 231, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 231, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 231, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 231, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 231, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "st1", computed_lexeme: None, line: 232, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "st2", computed_lexeme: None, line: 232, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 232, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 232, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 232, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 232, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 233, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 233, }, Token { kind: Identifier, lexeme: "st1", computed_lexeme: None, line: 233, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 233, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 233, }, Token { kind: Identifier, lexeme: "st2", computed_lexeme: None, line: 233, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 233, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 233, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 233, }, Token { kind: Number, lexeme: "43", computed_lexeme: Some( "43", ), line: 233, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 233, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 234, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 234, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 234, }, Token { kind: Number, lexeme: "43", computed_lexeme: Some( "43", ), line: 234, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 234, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "what", computed_lexeme: None, line: 234, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 234, }, Token { kind: String, lexeme: "\"C\"", computed_lexeme: None, line: 234, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 234, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 237, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 237, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 237, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 237, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 237, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 239, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 239, }, Token { kind: Identifier, lexeme: "h", computed_lexeme: None, line: 239, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 239, }, Token { kind: Identifier, lexeme: "o", computed_lexeme: None, line: 239, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 239, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 240, }, Token { kind: Identifier, lexeme: "hv", computed_lexeme: None, line: 240, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 240, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 240, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 240, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 240, }, Token { kind: Identifier, lexeme: "o", computed_lexeme: None, line: 240, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 241, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 241, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 242, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 244, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 244, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 244, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 244, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 244, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 245, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 245, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 245, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 245, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 245, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 245, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 245, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 245, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 246, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 246, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 246, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 246, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 246, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 246, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 246, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 246, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 246, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 246, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 246, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 247, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 247, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 247, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 247, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 248, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 248, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 249, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 249, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 249, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 249, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 249, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 249, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 249, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 249, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 250, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 250, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 250, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 250, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 250, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 250, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 250, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 250, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 250, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 250, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 250, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 251, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 251, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 252, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 252, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 253, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 253, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 253, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 253, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 253, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 253, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 253, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 253, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 254, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 254, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 254, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 254, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 254, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 254, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 254, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 254, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 254, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 254, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 254, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 255, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 255, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 255, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 255, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 256, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 257, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 257, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 257, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 257, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "h", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 258, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 258, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 259, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 259, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 259, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 259, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 259, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 259, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 259, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 259, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 260, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 260, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 260, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 260, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 261, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 261, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 261, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 262, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 264, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 264, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 264, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 264, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 264, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 264, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 264, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 264, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 264, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 266, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 266, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 266, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 266, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 266, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 266, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 266, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 267, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 267, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 267, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 267, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 267, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 267, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 268, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "res1", computed_lexeme: None, line: 268, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "res2", computed_lexeme: None, line: 268, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 268, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 268, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 268, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 268, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 269, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 269, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 269, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 269, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 269, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 269, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 269, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 270, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 270, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 270, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 270, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 270, }, Token { kind: Identifier, lexeme: "res1", computed_lexeme: None, line: 270, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 270, }, Token { kind: Identifier, lexeme: "res2", computed_lexeme: None, line: 270, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 270, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 270, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 270, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 271, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 271, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 271, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 271, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 271, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 271, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 271, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 271, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 271, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 271, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 271, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 271, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 271, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 271, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 272, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 272, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 272, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 272, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 272, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 272, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 272, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 273, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 278, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 278, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 278, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 278, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 278, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 278, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 278, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 278, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 278, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 279, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 279, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 279, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 279, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "sort", computed_lexeme: None, line: 279, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 279, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 279, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 279, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 279, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 279, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 279, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 279, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 279, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 279, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 279, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 279, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 279, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 280, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 280, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 280, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 280, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 280, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 281, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 281, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 281, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 281, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 281, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 282, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 282, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 283, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 285, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 285, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 285, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 285, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 285, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 285, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 286, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 286, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 286, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 286, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 286, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 286, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 286, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 286, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 289, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 289, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 289, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 289, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 289, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 289, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 289, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 289, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 289, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 289, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 289, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 291, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 291, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 291, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 291, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 291, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 291, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 291, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 292, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 292, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 292, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 292, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 292, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 292, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 292, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 292, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 292, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 292, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 292, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 292, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 292, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 293, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 293, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 293, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 294, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 294, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 294, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 295, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 295, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 295, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 295, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 295, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 295, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 295, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 295, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 295, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 295, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 295, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 295, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 295, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 295, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 295, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 295, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 296, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 296, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 296, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 296, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 296, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 296, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 297, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 297, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 298, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 298, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 300, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 300, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 300, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 301, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 301, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 301, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 301, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 301, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 301, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 301, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 301, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 301, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 301, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 301, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 301, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "r1", computed_lexeme: None, line: 302, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "r2", computed_lexeme: None, line: 302, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 302, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "f1", computed_lexeme: None, line: 302, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 302, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 302, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 303, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 303, }, Token { kind: Identifier, lexeme: "r1", computed_lexeme: None, line: 303, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 303, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 303, }, Token { kind: Identifier, lexeme: "r2", computed_lexeme: None, line: 303, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 303, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 303, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 303, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 303, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 303, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 303, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 303, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 303, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 303, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 303, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 303, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 303, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 303, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 303, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 303, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 303, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 306, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 306, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 306, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 306, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 306, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 306, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 306, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 306, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 306, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 306, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 306, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 306, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 306, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 306, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 307, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 307, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 307, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 307, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 307, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 307, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 307, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 307, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 307, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 307, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 307, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 307, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 307, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 309, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 309, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 309, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 309, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 309, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 309, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 309, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 310, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 310, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 310, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 310, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 310, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 310, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 310, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 310, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 310, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 310, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 310, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 310, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 311, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 311, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 313, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 313, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 313, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 313, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 313, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 313, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 313, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 313, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 314, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 314, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 314, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 314, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 314, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 314, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 314, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 314, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 315, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 315, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 315, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 315, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 315, }, Token { kind: Number, lexeme: "240", computed_lexeme: Some( "240", ), line: 315, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 315, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 319, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 320, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 320, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "c", 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: Not, lexeme: "not", computed_lexeme: None, line: 321, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 321, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 321, }, Token { kind: Identifier, lexeme: "isyieldable", computed_lexeme: None, line: 321, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 321, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 321, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 321, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 322, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 322, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 322, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 322, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 323, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 325, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 325, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 325, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 325, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 325, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 325, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 325, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 325, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 325, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 325, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 325, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 326, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 326, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 326, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 326, }, Token { kind: Identifier, lexeme: "isyieldable", 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: RightParen, lexeme: ")", computed_lexeme: None, line: 326, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 327, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 327, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "gsub", computed_lexeme: None, line: 327, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 327, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: String, lexeme: "\".\"", computed_lexeme: None, line: 327, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 327, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 327, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 328, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 328, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 329, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 329, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 330, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 330, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 330, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 330, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 330, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 330, }, Token { kind: String, lexeme: "\"aa\"", computed_lexeme: None, line: 330, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 330, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 331, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 335, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 336, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 337, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 337, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 337, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 337, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 337, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 337, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 338, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 338, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 338, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 338, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 338, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 338, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 339, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 339, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 339, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 340, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 340, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 341, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 341, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 341, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 341, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 342, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "dotrace", computed_lexeme: None, line: 342, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 342, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 343, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 343, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 343, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 343, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 343, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 343, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 343, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 344, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 345, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 345, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 345, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 345, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 345, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 345, }, Token { kind: Identifier, lexeme: "dotrace", computed_lexeme: None, line: 345, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 345, }, Token { kind: String, lexeme: "\"clr\"", computed_lexeme: None, line: 345, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 345, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 346, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 346, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 346, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 346, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 346, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 346, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 346, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 346, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 346, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 347, }, Token { kind: Identifier, lexeme: "correcttrace", computed_lexeme: None, line: 347, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 347, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"call\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"line\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"call\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"return\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"line\"", computed_lexeme: None, line: 347, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 347, }, Token { kind: String, lexeme: "\"return\"", computed_lexeme: None, line: 347, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 347, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 348, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 348, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 348, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 348, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 348, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 348, }, Token { kind: Identifier, lexeme: "correcttrace", computed_lexeme: None, line: 348, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 348, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 349, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 349, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "pairs", computed_lexeme: None, line: 349, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 349, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 349, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 349, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 350, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 350, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 350, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 350, }, Token { kind: Identifier, lexeme: "correcttrace", computed_lexeme: None, line: 350, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 350, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 350, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 350, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 350, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 351, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 352, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 355, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 355, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 355, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 355, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 356, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 356, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 356, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 356, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 356, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 356, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 356, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 356, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 356, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 356, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 356, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "linedefined", computed_lexeme: None, line: 356, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 356, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 356, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 356, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 357, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 357, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 357, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 357, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 357, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 357, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 357, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 357, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 357, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "goo", computed_lexeme: None, line: 357, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 357, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "linedefined", computed_lexeme: None, line: 357, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 357, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 358, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 358, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 358, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 358, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 358, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 358, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 359, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 359, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 359, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 360, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 362, }, Token { kind: Identifier, lexeme: "goo", computed_lexeme: None, line: 362, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 362, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 362, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 362, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 362, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 362, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 362, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 363, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 363, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 363, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 363, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 363, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 363, }, Token { kind: Identifier, lexeme: "goo", computed_lexeme: None, line: 363, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 363, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 364, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 364, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 364, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 364, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 364, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 364, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 364, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 364, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 365, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 365, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 365, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 365, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 365, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 365, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 365, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 365, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 365, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 366, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 366, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 366, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 366, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 366, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 368, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 368, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 368, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 368, }, Token { kind: Identifier, lexeme: "goo", computed_lexeme: None, line: 368, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 368, }, 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: "coroutine", computed_lexeme: None, line: 369, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 369, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 369, }, Token { kind: Identifier, lexeme: "x", 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: Identifier, lexeme: "a", computed_lexeme: None, line: 370, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 370, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 370, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 370, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 370, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 371, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 371, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 371, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 371, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 371, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 371, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 372, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 372, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 372, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 372, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 372, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 372, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 372, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 372, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 372, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 372, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 372, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 372, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 373, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 373, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 373, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 373, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 373, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 373, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 374, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 374, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 374, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 374, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 374, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 374, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 374, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 374, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 374, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 374, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 374, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 374, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 374, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 374, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 374, }, Token { kind: String, lexeme: "\"dead\"", computed_lexeme: None, line: 374, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 374, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "all", computed_lexeme: None, line: 378, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 378, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 378, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 378, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 378, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 379, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 379, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 379, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 379, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 379, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 379, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 379, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 380, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 381, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 381, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 381, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 381, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 381, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 381, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 381, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 382, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 382, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 382, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 382, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 382, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 382, }, Token { kind: Identifier, lexeme: "all", computed_lexeme: None, line: 383, }, Token { kind: LeftParen, lexeme: "(", 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: "n", computed_lexeme: None, line: 383, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 383, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 383, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 383, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 383, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 384, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 385, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 386, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 388, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 388, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 388, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 388, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 389, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 389, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 389, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 389, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 389, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 389, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "all", computed_lexeme: None, line: 389, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 389, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 389, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 389, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 389, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 389, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 389, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 389, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 389, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 389, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 389, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 390, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 390, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 390, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 390, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 390, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 391, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 392, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 392, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 392, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 392, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 392, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 392, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 392, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 392, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 396, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 396, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 396, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 396, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 396, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 396, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 396, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 396, }, Token { kind: Identifier, lexeme: "__mode", computed_lexeme: None, line: 396, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 396, }, Token { kind: String, lexeme: "\"kv\"", computed_lexeme: None, line: 396, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 396, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 396, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 397, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 397, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 397, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 397, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 397, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 397, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 397, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 397, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 397, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 397, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 398, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 398, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 398, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 398, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 399, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 399, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 399, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 399, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 399, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 399, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 399, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 399, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 399, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 399, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 400, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 400, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 400, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 401, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 401, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 401, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 401, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 402, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 402, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 402, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 402, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 402, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 402, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 403, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 404, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 404, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 406, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 406, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 406, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 406, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 406, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 406, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 406, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 408, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 408, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 408, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 408, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 409, }, Token { kind: Number, lexeme: "21", computed_lexeme: Some( "21", ), line: 409, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 409, }, Token { kind: Number, lexeme: "32", computed_lexeme: Some( "32", ), line: 409, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 409, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 409, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 409, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 410, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 410, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 410, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 411, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 411, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 411, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 412, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 412, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 412, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 412, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 412, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 412, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 413, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 413, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 413, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 413, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 413, }, Token { kind: Number, lexeme: "43", computed_lexeme: Some( "43", ), line: 413, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 413, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 413, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 413, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 413, }, Token { kind: Number, lexeme: "53", computed_lexeme: Some( "53", ), line: 413, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 413, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "co_func", computed_lexeme: None, line: 418, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "current_co", computed_lexeme: None, line: 418, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 419, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 419, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 419, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 419, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 419, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "current_co", computed_lexeme: None, line: 419, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 420, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 420, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 420, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "current_co", computed_lexeme: None, line: 420, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 420, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 420, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 420, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 421, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 421, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 421, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 421, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 421, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 421, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 421, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 421, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 422, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 422, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 422, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 422, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 422, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 422, }, Token { kind: Identifier, lexeme: "current_co", computed_lexeme: None, line: 422, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 422, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 422, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 422, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 422, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 423, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 423, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 423, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 423, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 423, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 423, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 424, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 424, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 425, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 427, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 427, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 427, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "co_func", computed_lexeme: None, line: 427, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 427, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 428, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 428, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 428, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 428, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 428, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 428, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 428, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 429, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 429, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 429, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 429, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 429, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 429, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 429, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 429, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 429, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 429, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 429, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 429, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 429, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 429, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 430, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 430, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 430, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 430, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 430, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 430, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 430, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 431, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 431, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 431, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 431, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 431, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 431, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 431, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 431, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 431, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 431, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 432, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 432, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 432, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 432, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 432, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 432, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 433, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 433, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 433, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 433, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 433, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 433, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 433, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 434, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 434, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 434, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 434, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 434, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 434, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 434, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 434, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 435, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 435, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 435, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 435, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 435, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 435, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 435, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 435, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 435, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 435, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 435, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 435, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 435, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 440, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 441, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 441, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 441, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 441, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 441, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 442, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 442, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 442, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 442, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 442, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 442, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 442, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 442, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 442, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 442, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 442, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 442, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 442, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 443, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 443, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 443, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 443, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 443, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 444, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 444, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 444, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 444, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 444, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 444, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 444, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 444, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 444, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 444, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 446, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 446, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 446, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 446, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 447, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 447, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 447, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 447, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 447, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 447, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 447, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 447, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 447, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 448, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 448, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 448, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 448, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 448, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 448, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 448, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 448, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 448, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 448, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 448, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 448, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 448, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 448, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 448, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 448, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 449, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 449, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 449, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 449, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 449, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 449, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 449, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 450, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 450, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 451, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 451, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 451, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 451, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 451, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 451, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 451, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 452, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 452, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 452, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 452, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 452, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 452, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 452, }, Token { kind: String, lexeme: "\"non%-suspended\"", computed_lexeme: None, line: 452, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 452, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 452, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 452, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 452, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 452, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 453, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 457, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 461, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 461, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 461, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 461, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 461, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 461, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 461, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 461, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 461, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 462, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 462, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 462, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 462, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 462, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 462, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 462, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 462, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 462, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 462, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 462, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 462, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 463, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 463, }, Token { kind: Number, lexeme: "111", computed_lexeme: Some( "111", ), line: 463, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 463, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 464, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 464, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 465, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "errobj", computed_lexeme: None, line: 465, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 465, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 465, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 466, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 466, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 466, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 466, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 466, }, Token { kind: Identifier, lexeme: "errobj", computed_lexeme: None, line: 466, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 466, }, Token { kind: Number, lexeme: "111", computed_lexeme: Some( "111", ), line: 466, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 466, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 467, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 467, }, Token { kind: Identifier, lexeme: "errobj", computed_lexeme: None, line: 467, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 467, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 467, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 467, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 467, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 467, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 468, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 468, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 468, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 468, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 468, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 468, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 468, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 468, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 468, }, Token { kind: Identifier, lexeme: "errobj", computed_lexeme: None, line: 468, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 468, }, Token { kind: String, lexeme: "\"dead coroutine\"", computed_lexeme: None, line: 468, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 468, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 468, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 469, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 473, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 473, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 473, }, Token { kind: Identifier, lexeme: "co2", computed_lexeme: None, line: 473, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 474, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 474, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 474, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 474, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 474, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 474, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 474, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 474, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 474, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 474, }, Token { kind: Identifier, lexeme: "co2", computed_lexeme: None, line: 474, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 474, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 474, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 474, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 474, }, Token { kind: Identifier, lexeme: "co2", computed_lexeme: None, line: 475, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 475, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 475, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 475, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 475, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 475, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 475, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 475, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 475, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 476, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 476, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 476, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 476, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 476, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 476, }, Token { kind: String, lexeme: "'normal'", computed_lexeme: None, line: 476, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 477, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 477, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 477, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 477, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 477, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 477, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 478, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 478, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 478, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 478, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 478, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 478, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 479, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 479, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 481, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 481, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 481, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 481, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 481, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 481, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 481, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 481, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 481, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 481, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 482, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 482, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 482, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 482, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 482, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 483, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 483, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 483, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "co1", computed_lexeme: None, line: 483, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 483, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 483, }, Token { kind: String, lexeme: "'dead'", computed_lexeme: None, line: 483, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 486, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 486, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 486, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 486, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 486, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 486, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 486, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 486, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 486, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 486, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 486, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 487, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 487, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 487, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 487, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 487, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 487, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 487, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 487, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 487, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 487, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 488, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 488, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 488, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 492, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 492, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 492, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 492, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 492, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 492, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 492, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 493, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 493, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 493, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 493, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 494, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 494, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 494, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 494, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 494, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 494, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 494, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 494, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 494, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 494, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 494, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 494, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 494, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 494, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 494, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 494, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 495, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 495, }, Token { kind: String, lexeme: "'x'", computed_lexeme: None, line: 495, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 495, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 496, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 496, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 498, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 498, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 498, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 498, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 498, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 498, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 498, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 498, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 498, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 498, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 500, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 500, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 500, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 500, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 500, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 500, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 501, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 501, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 501, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 501, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 501, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 501, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 501, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 501, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 501, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 501, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 502, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 502, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 502, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 502, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 502, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 502, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 502, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 502, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 502, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 502, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 505, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 505, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 505, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 505, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 506, }, Token { kind: Identifier, lexeme: "Message", computed_lexeme: None, line: 506, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 506, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 506, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 506, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 507, }, Token { kind: String, lexeme: "'\\n >>> testC not active: skipping coroutine API tests <<<\\n'", computed_lexeme: None, line: 507, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 507, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 508, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 509, }, Token { kind: String, lexeme: "\"testing yields inside hooks\"", computed_lexeme: None, line: 509, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 511, }, Token { kind: Identifier, lexeme: "turn", computed_lexeme: None, line: 511, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 513, }, Token { kind: Identifier, lexeme: "fact", computed_lexeme: None, line: 513, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 513, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 513, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 513, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 513, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 513, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 514, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 514, }, Token { kind: Identifier, lexeme: "turn", computed_lexeme: None, line: 514, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 514, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 514, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 514, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 515, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 515, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 515, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 515, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 515, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 515, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 516, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 516, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "fact", computed_lexeme: None, line: 516, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 516, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 516, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 516, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 516, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 516, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 517, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 518, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 520, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 520, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 520, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 520, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 520, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 520, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 520, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 520, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 522, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 522, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 522, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 522, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 522, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 522, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 523, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 523, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 523, }, Token { kind: String, lexeme: "\"yield 0\"", computed_lexeme: None, line: 523, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 523, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 523, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 523, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 523, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 524, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 524, }, Token { kind: Identifier, lexeme: "fact", computed_lexeme: None, line: 524, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 524, }, Token { kind: String, lexeme: "\"A\"", computed_lexeme: None, line: 524, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 524, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 524, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 524, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 525, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 525, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 527, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 527, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 527, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 527, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 527, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 527, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 528, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 528, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 528, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 528, }, Token { kind: String, lexeme: "\"yield 0\"", computed_lexeme: None, line: 528, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 528, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 528, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 528, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 528, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 528, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 529, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 529, }, Token { kind: Identifier, lexeme: "fact", computed_lexeme: None, line: 529, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 529, }, Token { kind: String, lexeme: "\"B\"", computed_lexeme: None, line: 529, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 529, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 529, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 529, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 530, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 530, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 532, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 532, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 532, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 532, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 532, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 532, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 532, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 532, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 532, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 533, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 533, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 533, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "turn", computed_lexeme: None, line: 533, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 533, }, Token { kind: String, lexeme: "\"A\"", computed_lexeme: None, line: 533, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 533, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 533, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 533, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 533, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 533, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 533, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 533, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 534, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 534, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 534, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "turn", computed_lexeme: None, line: 534, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 534, }, Token { kind: String, lexeme: "\"B\"", computed_lexeme: None, line: 534, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 534, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 534, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 534, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 534, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 534, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 534, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 537, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 537, }, Token { kind: Identifier, lexeme: "traceback", computed_lexeme: None, line: 537, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 537, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 537, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 537, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 538, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 538, }, Token { kind: Identifier, lexeme: "traceback", computed_lexeme: None, line: 538, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 538, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 538, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 538, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 539, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 541, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 541, }, Token { kind: Identifier, lexeme: "B", computed_lexeme: None, line: 541, }, Token { kind: FloorDiv, lexeme: "//", computed_lexeme: None, line: 541, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 541, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 541, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 541, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 541, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 543, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 544, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 544, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 545, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 545, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 545, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 545, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 545, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 545, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 546, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 546, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 546, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 547, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 547, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 547, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 547, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 547, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 547, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 547, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 547, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 548, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 548, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 548, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 548, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 548, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 549, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 549, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 549, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 549, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 549, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 549, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 549, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 549, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 549, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 551, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 551, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 551, }, Token { kind: String, lexeme: "\"pushint 10; yield 0\"", computed_lexeme: None, line: 551, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 551, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 551, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 551, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 551, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 551, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 552, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 552, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 552, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 552, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 552, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 552, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 553, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 553, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 553, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 553, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 553, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 553, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 553, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 554, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 554, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 554, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 554, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 554, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 554, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 554, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 554, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 554, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 554, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 554, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 555, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 555, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 555, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 556, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 556, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 557, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 559, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 559, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 559, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 559, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 559, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 559, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 559, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 559, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 559, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 559, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 559, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 559, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 560, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 560, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 560, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 560, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 560, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 560, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 560, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 560, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 560, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 560, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 560, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 560, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 560, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 560, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 560, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 560, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 560, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 560, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 561, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 561, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 561, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 561, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 561, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 561, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 561, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 561, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 561, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 561, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 561, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 561, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 561, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 561, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 561, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 562, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 562, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 562, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 562, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 562, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 562, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 562, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "done", computed_lexeme: None, line: 562, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 562, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 562, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 562, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 562, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 563, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 565, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 565, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 565, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 565, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 565, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 565, }, Token { kind: String, lexeme: "\"l\"", computed_lexeme: None, line: 565, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 565, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 565, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 565, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 565, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 566, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 566, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 566, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 566, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 566, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 567, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 567, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 567, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 567, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 568, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 568, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 568, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 568, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 568, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 569, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 569, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 569, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 569, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 569, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 570, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 573, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 573, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 573, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 573, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 573, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 573, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 573, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 573, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 573, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 573, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 574, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 574, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 574, }, Token { kind: String, lexeme: "\"setglobal X; yield 0\"", computed_lexeme: None, line: 574, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 574, }, Token { kind: String, lexeme: "\"l\"", computed_lexeme: None, line: 574, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 574, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 574, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 574, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 574, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 574, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 574, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 574, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 574, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 574, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 574, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 576, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 576, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 576, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 576, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 577, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 577, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 577, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 577, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 577, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 577, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 577, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 577, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 577, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 577, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 577, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 577, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 578, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 578, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 578, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 578, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 578, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 578, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 578, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 578, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 578, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 578, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 578, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 578, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 578, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 578, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 579, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 579, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 579, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 579, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 579, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 579, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 579, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 579, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 579, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 579, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 579, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 579, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 579, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 579, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 579, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 579, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 579, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 579, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 580, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 580, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 580, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 580, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 580, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 580, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 580, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 580, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 580, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 580, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "line", computed_lexeme: None, line: 580, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 580, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 580, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 580, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 580, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 580, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 580, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 580, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 581, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 581, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 581, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 581, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 581, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 581, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 584, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 584, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 584, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 584, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 584, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 584, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 585, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 585, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 585, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 585, }, Token { kind: String, lexeme: "\"yield 0\"", computed_lexeme: None, line: 585, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 585, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 585, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 585, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 585, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 585, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 585, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 585, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 585, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 585, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 585, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 585, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 585, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 585, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 585, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 587, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 587, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 587, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 587, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 587, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 587, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 588, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 588, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 588, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 588, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 589, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 589, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 589, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 589, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 589, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 589, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 589, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 589, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 589, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 589, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 589, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 589, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 589, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 589, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 589, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 589, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 589, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 590, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 590, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 590, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 590, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 590, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 590, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 590, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 590, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 590, }, Token { kind: GreaterThanOrEqual, lexeme: ">=", computed_lexeme: None, line: 590, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 590, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 590, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 592, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 592, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 592, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 592, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 592, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 592, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 592, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 592, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 592, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 593, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 593, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 593, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 593, }, Token { kind: String, lexeme: "\"yield 0\"", computed_lexeme: None, line: 593, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 593, }, Token { kind: String, lexeme: "\"\"", computed_lexeme: None, line: 593, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 593, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 593, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 593, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 593, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 593, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 593, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 593, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 593, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 593, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 593, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 593, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 593, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 595, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 595, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 595, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 595, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 595, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 595, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 596, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 596, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 596, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 596, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 597, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 597, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 597, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 597, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 597, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 597, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 597, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 597, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 597, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 597, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 597, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 597, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 598, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 598, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 598, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 598, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 598, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 598, }, Token { kind: GreaterThanOrEqual, lexeme: ">=", computed_lexeme: None, line: 598, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 598, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 599, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 599, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 599, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 599, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 599, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "XX", computed_lexeme: None, line: 599, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 599, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 599, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 601, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 604, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 604, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 604, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 604, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 604, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 604, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 604, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 604, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 605, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 605, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 605, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 605, }, Token { kind: String, lexeme: "\"yield 0\"", computed_lexeme: None, line: 605, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 605, }, Token { kind: String, lexeme: "\"l\"", computed_lexeme: None, line: 605, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 605, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 606, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 606, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 606, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 606, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 606, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 606, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 607, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 607, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 608, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 610, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 610, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 610, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 610, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 610, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 610, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 610, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 610, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 610, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 610, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 610, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 610, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 610, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 610, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 610, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 611, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 611, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 611, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "getlocal", computed_lexeme: None, line: 611, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 611, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 611, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 611, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 611, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 611, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 612, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 612, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 612, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 612, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 612, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 612, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 612, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 612, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 612, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 612, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 613, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 613, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 613, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 613, }, Token { kind: Identifier, lexeme: "setlocal", computed_lexeme: None, line: 613, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 613, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 613, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 613, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 613, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 613, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 613, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 613, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 613, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 613, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 613, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 614, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 614, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 614, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 614, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 614, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 614, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 615, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 615, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "currentline", computed_lexeme: None, line: 615, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 615, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "linedefined", computed_lexeme: None, line: 615, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 615, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 615, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 616, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 616, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 616, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 616, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 616, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 616, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 616, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 616, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 616, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 616, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 616, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 616, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 617, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 617, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 617, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 617, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 617, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 617, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 617, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 617, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 617, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 618, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 618, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 618, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 618, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 618, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 618, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 619, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 619, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 619, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 619, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 619, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 619, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 619, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 619, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 619, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 619, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 619, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 619, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 619, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 619, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 619, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 619, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 619, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 619, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 619, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 619, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 620, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 620, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 620, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 620, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 620, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 620, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 620, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 620, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 620, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 620, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 621, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 623, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 626, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 626, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 626, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 626, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 626, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 626, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 626, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 626, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 626, }, Token { kind: String, lexeme: "\"yield 1\"", computed_lexeme: None, line: 626, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 626, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 626, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 626, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 626, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 626, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 626, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 626, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 627, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 627, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 627, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 627, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 627, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 628, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 628, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 628, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 628, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 628, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 628, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 628, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 628, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 629, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 629, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 629, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 629, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 629, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 629, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 629, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 629, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 629, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 629, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 629, }, Token { kind: Identifier, lexeme: "linedefined", computed_lexeme: None, line: 629, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 629, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 629, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 629, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 629, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 630, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 630, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 630, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "getlocal", computed_lexeme: None, line: 630, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 630, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 630, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 630, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 630, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 630, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 631, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 631, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 631, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 631, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 631, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 631, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 632, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 635, }, Token { kind: String, lexeme: "\"testing coroutine API\"", computed_lexeme: None, line: 635, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 638, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 638, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 638, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 638, }, Token { kind: MultilineString, lexeme: "[[\n newthread # create thread\n pushvalue 2 # push body\n pushstring 'a a a' # push argument\n xmove 0 3 2 # move values to new thread\n resume -1, 1 # call it first time\n pushstatus\n xmove 3 0 0 # move results back to stack\n setglobal X # result\n setglobal Y # status\n pushvalue 2 # push body (to call it again)\n pushstring 'b b b'\n xmove 0 3 2\n resume -1, 1 # call it again\n pushstatus\n xmove 3 0 0\n return 1 # return result\n ]]", computed_lexeme: None, line: 655, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 655, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 655, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 655, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 655, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 655, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 655, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 655, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 655, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 655, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 655, }, Token { kind: String, lexeme: "'b b b'", computed_lexeme: None, line: 655, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 655, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 657, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 657, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 657, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 657, }, Token { kind: String, lexeme: "'a a a'", computed_lexeme: None, line: 657, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 657, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 657, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 657, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 657, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 657, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 661, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 661, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 661, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 661, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 661, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 661, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 661, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 661, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 661, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 662, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 662, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 662, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 662, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 662, }, Token { kind: MultilineString, lexeme: "[[\n pushnum 10;\n pushnum 20;\n resume -3 2;\n pushstatus\n gettop;\n return 3]]", computed_lexeme: None, line: 668, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 668, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 668, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 668, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 669, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 669, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 670, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 670, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 670, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 670, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 670, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 670, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "C", computed_lexeme: None, line: 670, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 671, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 671, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 671, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 671, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 671, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 671, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 671, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 671, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 671, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 671, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 671, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 671, }, Token { kind: String, lexeme: "\"non%-suspended\"", computed_lexeme: None, line: 671, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 671, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 671, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 672, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 672, }, Token { kind: String, lexeme: "\"ERRRUN\"", computed_lexeme: None, line: 672, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 672, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 672, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 672, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 672, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 672, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 674, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 674, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 674, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 674, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 674, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 674, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 674, }, Token { kind: MultilineString, lexeme: "[[\n rawgeti R 1 # get main thread\n pushnum 10;\n pushnum 20;\n resume -3 2;\n pushstatus\n gettop;\n return 4]]", computed_lexeme: None, line: 681, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 681, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 682, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 682, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 682, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 682, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 682, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 682, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 682, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 682, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 682, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 682, }, Token { kind: String, lexeme: "\"non%-suspended\"", computed_lexeme: None, line: 682, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 682, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 683, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 683, }, Token { kind: String, lexeme: "\"ERRRUN\"", computed_lexeme: None, line: 683, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 683, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 683, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 683, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 683, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 683, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 687, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 687, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "newstate", computed_lexeme: None, line: 687, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 687, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 690, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 690, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 690, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 690, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 690, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 690, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 690, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 690, }, Token { kind: String, lexeme: "\"newthread; isyieldable -1; remove 1; return 1\"", computed_lexeme: None, line: 690, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 690, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 690, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 693, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 693, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 693, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 693, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 693, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 693, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 693, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 693, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 693, }, Token { kind: String, lexeme: "\"rawgeti R 1; isyieldable -1; remove 1; return 1\"", computed_lexeme: None, line: 693, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 693, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 693, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 695, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 695, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 695, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 695, }, Token { kind: String, lexeme: "\"settop 0\"", computed_lexeme: None, line: 695, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 697, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 697, }, Token { kind: Identifier, lexeme: "loadlib", computed_lexeme: None, line: 697, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 697, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 697, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 697, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 699, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 699, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 699, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 699, }, Token { kind: Identifier, lexeme: "doremote", computed_lexeme: None, line: 699, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 699, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 699, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 699, }, Token { kind: MultilineString, lexeme: "[[\n coroutine = require'coroutine';\n X = function (x) coroutine.yield(x, 'BB'); return 'CC' end;\n return 'ok']]", computed_lexeme: None, line: 702, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 702, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 702, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 704, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 704, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 704, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 704, }, Token { kind: Identifier, lexeme: "pack", computed_lexeme: None, line: 704, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 704, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 704, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 704, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 704, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 704, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 704, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 704, }, Token { kind: MultilineString, lexeme: "[[\n rawgeti R 1 # get main thread\n pushstring 'XX'\n getglobal X # get function for body\n pushstring AA # arg\n resume 1 1 # 'resume' shadows previous stack!\n gettop\n setglobal T # top\n setglobal B # second yielded value\n setglobal A # fist yielded value\n rawgeti R 1 # get main thread\n pushnum 5 # arg (noise)\n resume 1 1 # after coroutine ends, previous stack is back\n pushstatus\n return *\n ]]", computed_lexeme: None, line: 719, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 719, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 719, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 720, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 720, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 720, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 720, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 720, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 720, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 720, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 720, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 720, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 720, }, Token { kind: String, lexeme: "'XX'", computed_lexeme: None, line: 720, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 720, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 720, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 720, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 720, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 720, }, Token { kind: String, lexeme: "'CC'", computed_lexeme: None, line: 720, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 720, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 720, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 720, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 720, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 720, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 720, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 720, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 721, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 721, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "doremote", computed_lexeme: None, line: 721, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 721, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 721, }, Token { kind: String, lexeme: "\"return T\"", computed_lexeme: None, line: 721, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 721, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 721, }, Token { kind: String, lexeme: "'2'", computed_lexeme: None, line: 721, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 722, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 722, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 722, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 722, }, Token { kind: Identifier, lexeme: "doremote", computed_lexeme: None, line: 722, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 722, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 722, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 722, }, Token { kind: String, lexeme: "\"return A\"", computed_lexeme: None, line: 722, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 722, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 722, }, Token { kind: String, lexeme: "'AA'", computed_lexeme: None, line: 722, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 722, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 723, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 723, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 723, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 723, }, Token { kind: Identifier, lexeme: "doremote", computed_lexeme: None, line: 723, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 723, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 723, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 723, }, Token { kind: String, lexeme: "\"return B\"", computed_lexeme: None, line: 723, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 723, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 723, }, Token { kind: String, lexeme: "'BB'", computed_lexeme: None, line: 723, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 723, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 725, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "closestate", computed_lexeme: None, line: 725, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "state", computed_lexeme: None, line: 725, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 727, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 727, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 729, }, Token { kind: Identifier, lexeme: "_X", computed_lexeme: None, line: 733, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 733, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 733, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 733, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 733, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 733, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 733, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 733, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 733, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 734, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 734, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 734, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 734, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 735, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 735, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 735, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 735, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 735, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 735, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 735, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 735, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 735, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 735, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 735, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 735, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 736, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 736, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 736, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 736, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 736, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 737, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 737, }, Token { kind: Identifier, lexeme: "_X", computed_lexeme: None, line: 739, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 739, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 739, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 742, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 742, }, Token { kind: Identifier, lexeme: "_soft", computed_lexeme: None, line: 742, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 742, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 744, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 744, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 744, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 744, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 744, }, Token { kind: Number, lexeme: "9", computed_lexeme: Some( "9", ), line: 744, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 745, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 745, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 745, }, Token { kind: Number, lexeme: "1000000", computed_lexeme: Some( "1000000", ), line: 745, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 746, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 746, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 746, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 746, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 746, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 746, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 746, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 746, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 746, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 746, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 746, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 746, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 746, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 746, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 746, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 746, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 746, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 747, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 747, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 747, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 747, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 747, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 747, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 748, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 748, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 748, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 748, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 748, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 748, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 748, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 749, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 749, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 749, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 749, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 749, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 749, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 749, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 749, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 749, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 750, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 750, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 750, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 750, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 750, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 751, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 751, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 751, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 751, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 751, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 751, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 751, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 751, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 751, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 752, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 752, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 752, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 752, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 753, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 753, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 754, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 754, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 754, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 754, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 754, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 754, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 755, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 755, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 755, }, Token { kind: Identifier, lexeme: "r", computed_lexeme: None, line: 755, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 755, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 756, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 757, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 757, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 757, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 758, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 761, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 761, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 761, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 761, }, Token { kind: Identifier, lexeme: "running", computed_lexeme: None, line: 761, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 761, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 761, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 761, }, Token { kind: Identifier, lexeme: "main", computed_lexeme: None, line: 761, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 761, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"+\"", computed_lexeme: None, line: 763, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 766, }, Token { kind: String, lexeme: "\"testing yields inside metamethods\"", computed_lexeme: None, line: 766, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 768, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 768, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 768, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 768, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 768, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 768, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 769, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 769, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 769, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 769, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 769, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 769, }, Token { kind: String, lexeme: "\"table\"", computed_lexeme: None, line: 769, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 769, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 769, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 769, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 769, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 769, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 769, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 769, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 769, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 769, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 770, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 772, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 772, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 772, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 772, }, Token { kind: Identifier, lexeme: "__eq", computed_lexeme: None, line: 773, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 773, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 773, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 773, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 773, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 773, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 773, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 773, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 773, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 773, }, Token { kind: String, lexeme: "\"eq\"", computed_lexeme: None, line: 773, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 773, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 773, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 773, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 773, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 773, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 773, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 773, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 773, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 773, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "__lt", computed_lexeme: None, line: 774, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 774, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 774, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 774, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 774, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 774, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 774, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 774, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 774, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 774, }, Token { kind: String, lexeme: "\"lt\"", computed_lexeme: None, line: 774, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 774, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 774, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 774, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 774, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 774, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 774, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 774, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 774, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 774, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "__le", computed_lexeme: None, line: 775, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 775, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 775, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 775, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 775, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 775, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 775, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 775, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 775, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 775, }, Token { kind: String, lexeme: "\"le\"", computed_lexeme: None, line: 775, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 775, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 775, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 775, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 775, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 775, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 775, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 775, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 775, }, Token { kind: Identifier, lexeme: "__add", computed_lexeme: None, line: 776, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 776, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 776, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 776, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 776, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 776, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 776, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 776, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 776, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 776, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 776, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 776, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 776, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 776, }, Token { kind: String, lexeme: "\"add\"", computed_lexeme: None, line: 776, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 776, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 776, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 777, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 777, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 777, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 777, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 777, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 777, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 777, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "__sub", computed_lexeme: None, line: 778, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 778, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 778, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 778, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 778, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 778, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 778, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 778, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 778, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 778, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 778, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 778, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 778, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 778, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 778, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 778, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 778, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 778, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 778, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 778, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "__mul", computed_lexeme: None, line: 779, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 779, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 779, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 779, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 779, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 779, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 779, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 779, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 779, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 779, }, Token { kind: String, lexeme: "\"mul\"", computed_lexeme: None, line: 779, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 779, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 779, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 779, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 779, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 779, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 779, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 779, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 779, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 779, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "__div", computed_lexeme: None, line: 780, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 780, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 780, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 780, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 780, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 780, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 780, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 780, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 780, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 780, }, Token { kind: String, lexeme: "\"div\"", computed_lexeme: None, line: 780, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 780, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 780, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 780, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 780, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 780, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 780, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 780, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 780, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 780, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 780, }, Token { kind: Identifier, lexeme: "__idiv", computed_lexeme: None, line: 781, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 781, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 781, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 781, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 781, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 781, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 781, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 781, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 781, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 781, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 781, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 781, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 781, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 781, }, Token { kind: String, lexeme: "\"idiv\"", computed_lexeme: None, line: 781, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 781, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 781, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 782, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 782, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 782, }, Token { kind: FloorDiv, lexeme: "//", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 782, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 782, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 782, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 782, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "__pow", computed_lexeme: None, line: 783, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 783, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 783, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 783, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 783, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 783, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 783, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 783, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 783, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 783, }, Token { kind: String, lexeme: "\"pow\"", computed_lexeme: None, line: 783, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 783, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 783, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 783, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 783, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 783, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 783, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 783, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 783, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 783, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "__mod", computed_lexeme: None, line: 784, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 784, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 784, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 784, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 784, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 784, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 784, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 784, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 784, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 784, }, Token { kind: String, lexeme: "\"mod\"", computed_lexeme: None, line: 784, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 784, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 784, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 784, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 784, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 784, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 784, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 784, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 784, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 784, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 784, }, Token { kind: Identifier, lexeme: "__unm", computed_lexeme: None, line: 785, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 785, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 785, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 785, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 785, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 785, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 785, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 785, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 785, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 785, }, Token { kind: String, lexeme: "\"unm\"", computed_lexeme: None, line: 785, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 785, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 785, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 785, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 785, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 785, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 785, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 785, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 785, }, Token { kind: Identifier, lexeme: "__bnot", computed_lexeme: None, line: 786, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 786, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 786, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 786, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 786, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 786, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 786, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 786, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 786, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 786, }, Token { kind: String, lexeme: "\"bnot\"", computed_lexeme: None, line: 786, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 786, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 786, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 786, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 786, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 786, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 786, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 786, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 786, }, Token { kind: Identifier, lexeme: "__shl", computed_lexeme: None, line: 787, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 787, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 787, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 787, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 787, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 787, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 787, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 787, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 787, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 787, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 787, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 787, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 787, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 787, }, Token { kind: String, lexeme: "\"shl\"", computed_lexeme: None, line: 787, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 787, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 787, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 788, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 788, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 788, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 788, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 788, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 788, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 788, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 788, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 788, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 788, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 788, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 788, }, Token { kind: Identifier, lexeme: "__shr", computed_lexeme: None, line: 789, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 789, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 789, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 789, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 789, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 789, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 789, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 789, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 789, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 789, }, Token { kind: String, lexeme: "\"shr\"", computed_lexeme: None, line: 789, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 789, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 789, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 790, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 790, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 790, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 790, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 790, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 790, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 790, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "__band", computed_lexeme: None, line: 791, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 791, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 791, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 791, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 791, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 791, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 791, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 791, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 792, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 792, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 792, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 792, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 792, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 792, }, Token { kind: String, lexeme: "\"band\"", computed_lexeme: None, line: 792, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 792, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 793, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 793, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 793, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 793, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 793, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 793, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 793, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 793, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 793, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 793, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 794, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 794, }, Token { kind: Identifier, lexeme: "__bor", computed_lexeme: None, line: 795, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 795, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 795, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 795, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 795, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 795, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 795, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 795, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 795, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 795, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 795, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 795, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 795, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 795, }, Token { kind: String, lexeme: "\"bor\"", computed_lexeme: None, line: 795, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 795, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 795, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 796, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 796, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 796, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 796, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 796, }, Token { kind: BitOr, lexeme: "|", computed_lexeme: None, line: 796, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 796, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 796, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 796, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 796, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 796, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 796, }, Token { kind: Identifier, lexeme: "__bxor", computed_lexeme: None, line: 797, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 797, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 797, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 797, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 797, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 797, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 797, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 797, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 797, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 797, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 797, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 797, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 797, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 797, }, Token { kind: String, lexeme: "\"bxor\"", computed_lexeme: None, line: 797, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 797, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 797, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 798, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 798, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 798, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 798, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 798, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 798, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 798, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 798, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 798, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 798, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 798, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 798, }, Token { kind: Identifier, lexeme: "__concat", computed_lexeme: None, line: 800, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 800, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 800, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 800, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 800, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 800, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 800, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 800, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 801, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 801, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 801, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 801, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 801, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 801, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 801, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 801, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 801, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 802, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 802, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 802, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 802, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 802, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 802, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 802, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 802, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 802, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 802, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 803, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 803, }, Token { kind: Identifier, lexeme: "__index", computed_lexeme: None, line: 804, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 804, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 804, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 804, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 804, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 804, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 804, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 804, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 804, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 804, }, Token { kind: String, lexeme: "\"idx\"", computed_lexeme: None, line: 804, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 804, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 804, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 804, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 804, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 804, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 804, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 804, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "__newindex", computed_lexeme: None, line: 805, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 805, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 805, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 805, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 805, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 805, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 805, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 805, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 805, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 805, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 805, }, Token { kind: String, lexeme: "\"nidx\"", computed_lexeme: None, line: 805, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 805, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 805, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 805, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 805, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 805, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 805, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 805, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 805, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 805, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 806, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 809, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 809, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 809, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 809, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 809, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 809, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 810, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 810, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 810, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 810, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 810, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 810, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 810, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 810, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 810, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 810, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 810, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 811, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 814, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 814, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 814, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 814, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 814, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 814, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 814, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 815, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 815, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 815, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 815, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 815, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 815, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 815, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 816, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 816, }, Token { kind: String, lexeme: "\"hello\"", computed_lexeme: None, line: 816, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 818, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 818, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 818, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 818, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 818, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 818, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 818, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 818, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 819, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 819, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 819, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 819, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 820, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 820, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 820, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 820, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 820, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 820, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 820, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 820, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 820, }, Token { kind: While, lexeme: "while", computed_lexeme: None, line: 821, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 821, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 821, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 822, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 822, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 822, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 822, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 822, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 822, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 822, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 822, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 823, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 823, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 823, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 823, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 823, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 823, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 823, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 823, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 823, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 823, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 823, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 824, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 824, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 824, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 824, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 824, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 824, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 824, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 824, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 824, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 825, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 825, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 825, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 825, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 825, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 826, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 830, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 830, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 830, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 830, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 830, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 830, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 830, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 830, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 830, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 830, }, Token { kind: GreaterThanOrEqual, lexeme: ">=", computed_lexeme: None, line: 830, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 830, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 830, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 830, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 830, }, Token { kind: String, lexeme: "'>='", computed_lexeme: None, line: 830, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 830, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 830, }, Token { kind: String, lexeme: "'<'", computed_lexeme: None, line: 830, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 830, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 830, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 830, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 831, }, Token { kind: String, lexeme: "\"le\"", computed_lexeme: None, line: 831, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 831, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 831, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 831, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 831, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 831, }, Token { kind: String, lexeme: "\"<\"", computed_lexeme: None, line: 831, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 831, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 832, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 832, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 832, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 832, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 832, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 832, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 832, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 832, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 832, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 832, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 832, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 832, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 832, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 832, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 832, }, Token { kind: String, lexeme: "'<='", computed_lexeme: None, line: 832, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 832, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 832, }, Token { kind: String, lexeme: "'>'", computed_lexeme: None, line: 832, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 832, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 832, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 832, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 833, }, Token { kind: String, lexeme: "\"le\"", computed_lexeme: None, line: 833, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 833, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 833, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 833, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 833, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 833, }, Token { kind: String, lexeme: "\"<=\"", computed_lexeme: None, line: 833, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 833, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 834, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 834, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 834, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 834, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 834, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 834, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 834, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 834, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 834, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 834, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 834, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 834, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 834, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 834, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 834, }, Token { kind: String, lexeme: "'=='", computed_lexeme: None, line: 834, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 834, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 834, }, Token { kind: String, lexeme: "'~='", computed_lexeme: None, line: 834, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 834, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 834, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 834, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 835, }, Token { kind: String, lexeme: "\"eq\"", computed_lexeme: None, line: 835, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 835, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 835, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 835, }, Token { kind: String, lexeme: "\"~=\"", computed_lexeme: None, line: 835, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 835, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 837, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 837, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 837, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 837, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 837, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 837, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 837, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 837, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 837, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 837, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 837, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 837, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 837, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 837, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 837, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 837, }, Token { kind: String, lexeme: "\"add\"", computed_lexeme: None, line: 837, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 837, }, Token { kind: String, lexeme: "\"band\"", computed_lexeme: None, line: 837, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 837, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 837, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 837, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 837, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 837, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 839, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 839, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 839, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 839, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 839, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 839, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 839, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 839, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 839, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 839, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 839, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 839, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 839, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 839, }, Token { kind: String, lexeme: "\"add\"", computed_lexeme: None, line: 839, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 839, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 839, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 839, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 839, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 839, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 840, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 840, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 840, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 840, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 840, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 840, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 840, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 840, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 840, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 840, }, Token { kind: Number, lexeme: "25", computed_lexeme: Some( "25", ), line: 840, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 840, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 840, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 840, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 840, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 840, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 840, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 840, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 840, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 840, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 840, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 841, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 841, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 841, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 841, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 841, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 841, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 841, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 841, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 841, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 841, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 841, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 841, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 841, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 841, }, Token { kind: String, lexeme: "\"mul\"", computed_lexeme: None, line: 841, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 841, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 841, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 841, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 841, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 841, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 842, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 842, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 842, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 842, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 842, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 842, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 842, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 842, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 842, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 842, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 842, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"pow\"", computed_lexeme: None, line: 842, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 842, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 842, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 842, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 842, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 842, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 843, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 843, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 843, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 843, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 843, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 843, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 843, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 843, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 843, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 843, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 843, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 843, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 843, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 843, }, Token { kind: String, lexeme: "\"div\"", computed_lexeme: None, line: 843, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 843, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 843, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 843, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 843, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 843, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 844, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 844, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 844, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 844, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 844, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 844, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 844, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 844, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 844, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 844, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 844, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 844, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 844, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 844, }, Token { kind: String, lexeme: "\"mod\"", computed_lexeme: None, line: 844, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 844, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 844, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 844, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 844, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 844, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 845, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 845, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 845, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 845, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 845, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 845, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 845, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 845, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 845, }, Token { kind: FloorDiv, lexeme: "//", computed_lexeme: None, line: 845, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 845, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 845, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 845, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 845, }, Token { kind: String, lexeme: "\"idiv\"", computed_lexeme: None, line: 845, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 845, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 845, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 845, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 845, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 845, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 847, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 847, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 847, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 847, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 847, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 847, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 847, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 847, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 847, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 847, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 847, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 847, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 847, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 847, }, Token { kind: String, lexeme: "\"add\"", computed_lexeme: None, line: 847, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 847, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 847, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 847, }, Token { kind: Number, lexeme: "22", computed_lexeme: Some( "22", ), line: 847, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 847, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 848, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 848, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 848, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 848, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 848, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 848, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 848, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 848, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 848, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 848, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 848, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 848, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 848, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 848, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 848, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 848, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 848, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 848, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 848, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 848, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 848, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 849, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 849, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 849, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 849, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 849, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 849, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 849, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 849, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 849, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 849, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 849, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 849, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 849, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 849, }, Token { kind: String, lexeme: "\"mul\"", computed_lexeme: None, line: 849, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 849, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 849, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 849, }, Token { kind: Number, lexeme: "120", computed_lexeme: Some( "120", ), line: 849, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 849, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 850, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 850, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 850, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 850, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 850, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 850, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 850, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 850, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 850, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 850, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 850, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 850, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 850, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 850, }, Token { kind: String, lexeme: "\"pow\"", computed_lexeme: None, line: 850, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 850, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 850, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 850, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 850, }, Token { kind: Caret, lexeme: "^", computed_lexeme: None, line: 850, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 850, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 850, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 851, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 851, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 851, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 851, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 851, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 851, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 851, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 851, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 851, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 851, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 851, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 851, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 851, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 851, }, Token { kind: String, lexeme: "\"div\"", computed_lexeme: None, line: 851, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 851, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 851, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 851, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 851, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 851, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 851, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 851, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 852, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 852, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 852, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 852, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 852, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 852, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 852, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 852, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 852, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 852, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 852, }, Token { kind: String, lexeme: "\"mod\"", computed_lexeme: None, line: 852, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 852, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 852, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 852, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 852, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 853, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 853, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 853, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 853, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 853, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 853, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 853, }, Token { kind: FloorDiv, lexeme: "//", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 853, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 853, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 853, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 853, }, Token { kind: String, lexeme: "\"idiv\"", computed_lexeme: None, line: 853, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 853, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 853, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 853, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 853, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 853, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 856, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 856, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 856, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 856, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 856, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 856, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 856, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 858, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 858, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 858, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 858, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 858, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 858, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 858, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 858, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 858, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 858, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 858, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 858, }, Token { kind: String, lexeme: "\"add\"", computed_lexeme: None, line: 858, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 858, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 858, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 858, }, Token { kind: Number, lexeme: "2000", computed_lexeme: Some( "2000", ), line: 858, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 859, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 859, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 859, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 859, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 859, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 859, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 859, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 859, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 859, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 859, }, Token { kind: Number, lexeme: "25000", computed_lexeme: Some( "25000", ), line: 859, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 859, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 859, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 859, }, Token { kind: String, lexeme: "\"sub\"", computed_lexeme: None, line: 859, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 859, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 859, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 859, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 859, }, Token { kind: Number, lexeme: "24000", computed_lexeme: Some( "24000", ), line: 859, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 859, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 860, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 860, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 860, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 860, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 860, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 860, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 860, }, Token { kind: Number, lexeme: "2000", computed_lexeme: Some( "2000", ), line: 860, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 860, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 860, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 860, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 860, }, Token { kind: String, lexeme: "\"mul\"", computed_lexeme: None, line: 860, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 860, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 860, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 860, }, Token { kind: Number, lexeme: "20000", computed_lexeme: Some( "20000", ), line: 860, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 861, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 861, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 861, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 861, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 861, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 861, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 861, }, Token { kind: Slash, lexeme: "/", computed_lexeme: None, line: 861, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 861, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 861, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 861, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 861, }, Token { kind: String, lexeme: "\"div\"", computed_lexeme: None, line: 861, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 861, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 861, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 861, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 861, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 862, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 862, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 862, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 862, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 862, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 862, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 862, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 862, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 862, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 862, }, Token { kind: Number, lexeme: "600", computed_lexeme: Some( "600", ), line: 862, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 862, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 862, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 862, }, Token { kind: String, lexeme: "\"mod\"", computed_lexeme: None, line: 862, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 862, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 862, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 862, }, Token { kind: Number, lexeme: "400", computed_lexeme: Some( "400", ), line: 862, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 862, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 863, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 863, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 863, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 863, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 863, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 863, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "a1000", computed_lexeme: None, line: 863, }, Token { kind: FloorDiv, lexeme: "//", computed_lexeme: None, line: 863, }, Token { kind: Number, lexeme: "500", computed_lexeme: Some( "500", ), line: 863, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 863, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 863, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 863, }, Token { kind: String, lexeme: "\"idiv\"", computed_lexeme: None, line: 863, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 863, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 863, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 863, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 863, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 867, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 867, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 867, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 867, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 867, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 867, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 867, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 867, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 867, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 867, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 867, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 867, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 867, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 867, }, Token { kind: String, lexeme: "\"mod\"", computed_lexeme: None, line: 867, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 867, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 867, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 867, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 867, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 867, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 869, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 869, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 869, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 869, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 869, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 869, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 869, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 869, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 869, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 869, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 869, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 869, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 869, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 869, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 869, }, Token { kind: String, lexeme: "\"bnot\"", computed_lexeme: None, line: 869, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 869, }, Token { kind: String, lexeme: "\"band\"", computed_lexeme: None, line: 869, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 869, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 869, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 869, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 869, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 869, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 869, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 869, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 869, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 870, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 870, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 870, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 870, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 870, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 870, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 870, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 870, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 870, }, Token { kind: BitOr, lexeme: "|", computed_lexeme: None, line: 870, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 870, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 870, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 870, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 870, }, Token { kind: String, lexeme: "\"bor\"", computed_lexeme: None, line: 870, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 870, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 870, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 870, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 870, }, Token { kind: BitOr, lexeme: "|", computed_lexeme: None, line: 870, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 870, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 870, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 871, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 871, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 871, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 871, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 871, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 871, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 871, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 871, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 871, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 871, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 871, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 871, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 871, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 871, }, Token { kind: String, lexeme: "\"bxor\"", computed_lexeme: None, line: 871, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 871, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 871, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 871, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 871, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 871, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 871, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 871, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 872, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 872, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 872, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 872, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 872, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 872, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 872, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 872, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 872, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 872, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 872, }, Token { kind: String, lexeme: "\"shl\"", computed_lexeme: None, line: 872, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 872, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 872, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 872, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 872, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 872, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 872, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 873, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 873, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 873, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 873, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 873, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 873, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 873, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 873, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 873, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 873, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 873, }, Token { kind: String, lexeme: "\"shr\"", computed_lexeme: None, line: 873, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 873, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 873, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 873, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 873, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 873, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 873, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 875, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 875, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 875, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 875, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 875, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 875, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 875, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 875, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 875, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 875, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 875, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 875, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 875, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 875, }, Token { kind: String, lexeme: "\"band\"", computed_lexeme: None, line: 875, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 875, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 875, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 875, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 875, }, Token { kind: BitAnd, lexeme: "&", computed_lexeme: None, line: 875, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 875, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 875, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 876, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 876, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 876, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 876, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 876, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 876, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 876, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 876, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 876, }, Token { kind: BitOr, lexeme: "|", computed_lexeme: None, line: 876, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 876, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 876, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 876, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 876, }, Token { kind: String, lexeme: "\"bor\"", computed_lexeme: None, line: 876, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 876, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 876, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 876, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 876, }, Token { kind: BitOr, lexeme: "|", computed_lexeme: None, line: 876, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 876, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 876, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 877, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 877, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 877, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 877, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 877, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 877, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 877, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 877, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 877, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 877, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 877, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 877, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 877, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 877, }, Token { kind: String, lexeme: "\"bxor\"", computed_lexeme: None, line: 877, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 877, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 877, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 877, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 877, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 877, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 877, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 877, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 878, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 878, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 878, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 878, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 878, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 878, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 878, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 878, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 878, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 878, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 878, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 878, }, Token { kind: String, lexeme: "\"shr\"", computed_lexeme: None, line: 878, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 878, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 878, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 878, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 878, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 878, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 878, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 879, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 879, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 879, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 879, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 879, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 879, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 879, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 879, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 879, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 879, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 879, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 879, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 879, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 879, }, Token { kind: String, lexeme: "\"shr\"", computed_lexeme: None, line: 879, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 879, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 879, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 879, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 879, }, Token { kind: BitShiftRight, lexeme: ">>", computed_lexeme: None, line: 879, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 879, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 879, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 880, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 880, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 880, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 880, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 880, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 880, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 880, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 880, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 880, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 880, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 880, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 880, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 880, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 880, }, Token { kind: String, lexeme: "\"shl\"", computed_lexeme: None, line: 880, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 880, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 880, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 880, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 880, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 880, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 880, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 880, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 881, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 881, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 881, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 881, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 881, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 881, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 881, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 881, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 881, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 881, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 881, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 881, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 881, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 881, }, Token { kind: String, lexeme: "\"shl\"", computed_lexeme: None, line: 881, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 881, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 881, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 881, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 881, }, Token { kind: BitShiftLeft, lexeme: "<<", computed_lexeme: None, line: 881, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 881, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 881, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 882, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 882, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 882, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 882, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 882, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 882, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 882, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 882, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 882, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 882, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 882, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 882, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 882, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 882, }, Token { kind: String, lexeme: "\"bxor\"", computed_lexeme: None, line: 882, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 882, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 882, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 882, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 882, }, Token { kind: Tilde, lexeme: "~", computed_lexeme: None, line: 882, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 882, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 882, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 885, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 885, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 885, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 885, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 885, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 885, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 885, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 885, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 885, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 885, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 885, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 885, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 885, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 885, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 885, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 885, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 885, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 885, }, Token { kind: String, lexeme: "\"1012\"", computed_lexeme: None, line: 885, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 885, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 887, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 887, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 887, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 887, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 887, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 887, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 887, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 887, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 887, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 887, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 887, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 887, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 888, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 888, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 888, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 888, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 888, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 888, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 888, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 888, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 888, }, Token { kind: String, lexeme: "\"1012hello10\"", computed_lexeme: None, line: 888, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 888, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 890, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 890, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 890, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 890, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 890, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 890, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 890, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: String, lexeme: "\"b\"", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: String, lexeme: "\"c\"", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 890, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 890, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 890, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 890, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 890, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 891, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 891, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 891, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 891, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 891, }, Token { kind: String, lexeme: "\"concat\"", computed_lexeme: None, line: 891, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 891, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 891, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 891, }, Token { kind: String, lexeme: "\"ab10chello12x\"", computed_lexeme: None, line: 891, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 891, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 894, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 895, }, Token { kind: Identifier, lexeme: "mt1", computed_lexeme: None, line: 895, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 895, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 895, }, Token { kind: Identifier, lexeme: "__le", computed_lexeme: None, line: 896, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 896, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 896, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 896, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 896, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 896, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 896, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 896, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 897, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 897, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 897, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 897, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 897, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 897, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 898, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 898, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 898, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 898, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 898, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 898, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 898, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 898, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 899, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 899, }, Token { kind: Identifier, lexeme: "__lt", computed_lexeme: None, line: 900, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 900, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 900, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 900, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 900, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 900, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 900, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 900, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 901, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 901, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 901, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 901, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 901, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 901, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 902, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 902, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 902, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 902, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 902, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 902, }, Token { kind: Identifier, lexeme: "val", computed_lexeme: None, line: 902, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 902, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 902, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 902, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 903, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 903, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 904, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "mt2", computed_lexeme: None, line: 905, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 905, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "__lt", computed_lexeme: None, line: 905, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "mt1", computed_lexeme: None, line: 905, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "__lt", computed_lexeme: None, line: 905, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "__le", computed_lexeme: None, line: 905, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "mt1", computed_lexeme: None, line: 905, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 905, }, Token { kind: Identifier, lexeme: "__le", computed_lexeme: None, line: 905, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 905, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 907, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 907, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 907, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 907, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 907, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 907, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 908, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 908, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 908, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 908, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 908, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 909, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 910, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 911, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 911, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 911, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 911, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 911, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 912, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 912, }, Token { kind: NotEquals, lexeme: "~=", computed_lexeme: None, line: 912, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 912, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 913, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 913, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 914, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 916, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 916, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 916, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 916, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 916, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 917, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 917, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 917, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 917, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 917, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 917, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 917, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "mt1", computed_lexeme: None, line: 917, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 917, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 918, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 918, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 918, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 918, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 918, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 918, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 918, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "mt2", computed_lexeme: None, line: 918, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 919, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 919, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 919, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 920, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 920, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 920, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 920, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 920, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 920, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 921, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 921, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 921, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 921, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 921, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 921, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 922, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 922, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 922, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 922, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 923, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 923, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 923, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 923, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 924, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 924, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 924, }, Token { kind: GreaterThanOrEqual, lexeme: ">=", computed_lexeme: None, line: 924, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 924, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 924, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 925, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 925, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 926, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 928, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 928, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 928, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 928, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 930, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 932, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 932, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 932, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 932, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 932, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 932, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 932, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 933, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 933, }, Token { kind: Identifier, lexeme: "BB", computed_lexeme: None, line: 933, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 933, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 933, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 934, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 934, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 934, }, Token { kind: Identifier, lexeme: "BB", computed_lexeme: None, line: 934, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 935, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 935, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 935, }, Token { kind: String, lexeme: "\"nidx\"", computed_lexeme: None, line: 935, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 935, }, Token { kind: String, lexeme: "\"idx\"", computed_lexeme: None, line: 935, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 935, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 935, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 935, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 935, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 935, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 938, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 938, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 939, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 939, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 939, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 939, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "AAA", computed_lexeme: None, line: 939, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "BBB", computed_lexeme: None, line: 939, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 939, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 939, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 939, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "AAA", computed_lexeme: None, line: 939, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 939, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 940, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 941, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "new", computed_lexeme: None, line: 941, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 941, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 941, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 941, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 941, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 941, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "BBB", computed_lexeme: None, line: 941, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 941, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 941, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 942, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "setupvalue", computed_lexeme: None, line: 942, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 942, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 942, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 942, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 942, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 943, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 943, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 943, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 943, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 943, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 943, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 943, }, Token { kind: String, lexeme: "\"idx\"", computed_lexeme: None, line: 943, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 943, }, Token { kind: String, lexeme: "\"nidx\"", computed_lexeme: None, line: 943, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 943, }, Token { kind: String, lexeme: "\"idx\"", computed_lexeme: None, line: 943, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 943, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 943, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 943, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 943, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 943, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 944, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 944, }, Token { kind: Identifier, lexeme: "g", computed_lexeme: None, line: 944, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 944, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 944, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 944, }, Token { kind: Identifier, lexeme: "AAA", computed_lexeme: None, line: 944, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 944, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 944, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 944, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 946, }, Token { kind: String, lexeme: "\"+\"", computed_lexeme: None, line: 946, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 948, }, Token { kind: String, lexeme: "\"testing yields inside 'for' iterators\"", computed_lexeme: None, line: 948, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 950, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 950, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 950, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 950, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 950, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 950, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 950, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 950, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 950, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 951, }, Token { kind: Percent, lexeme: "%", computed_lexeme: None, line: 951, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 951, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 951, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 951, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 951, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 951, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 951, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 951, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 951, }, Token { kind: String, lexeme: "\"for\"", computed_lexeme: None, line: 951, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 951, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 951, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 952, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 952, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 952, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 952, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 952, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 952, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 952, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 952, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 952, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 952, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 953, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 955, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 955, }, Token { kind: Identifier, lexeme: "run", computed_lexeme: None, line: 955, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 955, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 955, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 955, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 955, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 956, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 956, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 956, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 956, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 957, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 957, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 957, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 957, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 957, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 957, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 957, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 957, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 957, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 957, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 958, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 958, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 959, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 959, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 959, }, Token { kind: String, lexeme: "\"for\"", computed_lexeme: None, line: 959, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 959, }, Token { kind: String, lexeme: "\"for\"", computed_lexeme: None, line: 959, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 959, }, Token { kind: String, lexeme: "\"for\"", computed_lexeme: None, line: 959, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 959, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 959, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 959, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 959, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 959, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 964, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 964, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 964, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 964, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 964, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 965, }, Token { kind: Identifier, lexeme: "Message", computed_lexeme: None, line: 965, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 965, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 965, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 965, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 965, }, Token { kind: String, lexeme: "'\\n >>> testC not active: skipping coroutine API tests <<<\\n'", computed_lexeme: None, line: 965, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 965, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 966, }, Token { kind: String, lexeme: "\"OK\"", computed_lexeme: None, line: 966, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 966, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 966, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 967, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 969, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 969, }, Token { kind: String, lexeme: "'testing coroutine API'", computed_lexeme: None, line: 969, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 969, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 971, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 971, }, Token { kind: Identifier, lexeme: "apico", computed_lexeme: None, line: 971, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 971, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 971, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 971, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 972, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 972, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 972, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 972, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 972, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 973, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 973, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 973, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 973, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 973, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 973, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 973, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 973, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 974, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 974, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 974, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 974, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 974, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 974, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 974, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 975, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 975, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 976, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 978, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 978, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 978, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 978, }, Token { kind: Identifier, lexeme: "apico", computed_lexeme: None, line: 978, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 978, }, Token { kind: MultilineString, lexeme: "[[\n pushstring errorcode\n pcallk 1 0 2;\n invalid command (should not arrive here)\n]]", computed_lexeme: None, line: 983, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 983, }, Token { kind: MultilineString, lexeme: "[[return *]]", computed_lexeme: None, line: 984, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 984, }, Token { kind: String, lexeme: "\"stackmark\"", computed_lexeme: None, line: 985, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 985, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 986, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 987, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 987, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 987, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 987, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 988, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 988, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 988, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 988, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 988, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 988, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 988, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 989, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 989, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 989, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 989, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 989, }, Token { kind: String, lexeme: "\"stackmark\"", computed_lexeme: None, line: 989, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 989, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 990, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 990, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 990, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 990, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 990, }, Token { kind: String, lexeme: "\"errorcode\"", computed_lexeme: None, line: 990, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 990, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 991, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 991, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 991, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 991, }, Token { kind: String, lexeme: "\"ERRRUN\"", computed_lexeme: None, line: 991, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 991, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 992, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "ctx", computed_lexeme: None, line: 992, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 992, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 992, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 992, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 994, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "apico", computed_lexeme: None, line: 994, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 994, }, Token { kind: String, lexeme: "\"pushvalue 2; pushnum 10; pcallk 1 2 3; invalid command;\"", computed_lexeme: None, line: 995, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 995, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 996, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 996, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 996, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 996, }, Token { kind: String, lexeme: "\"getglobal status; getglobal ctx; pushvalue 2; pushstring a; pcallk 1 0 4; invalid command\"", computed_lexeme: None, line: 997, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 997, }, Token { kind: String, lexeme: "\"getglobal status; getglobal ctx; return *\"", computed_lexeme: None, line: 998, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 998, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1000, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1000, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1000, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1000, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1000, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1000, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1000, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1000, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1001, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1001, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1001, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1001, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 1001, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1001, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1001, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1001, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1001, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 1001, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1001, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1002, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1002, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1002, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1002, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1002, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1002, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1002, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1003, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1003, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 1003, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1003, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1003, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1003, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1003, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1004, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1004, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1004, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1004, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1004, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1004, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1005, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1005, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1005, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1005, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1005, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 1005, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1005, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1005, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 1005, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1005, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1005, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1005, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1006, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1006, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 1006, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1006, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1006, }, Token { kind: String, lexeme: "\"YIELD\"", computed_lexeme: None, line: 1006, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1006, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1006, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1006, }, Token { kind: Number, lexeme: "8", computed_lexeme: Some( "8", ), line: 1006, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1006, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1006, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1006, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1006, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1007, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1007, }, Token { kind: Number, lexeme: "9", computed_lexeme: Some( "9", ), line: 1007, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1007, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1007, }, Token { kind: String, lexeme: "\"YIELD\"", computed_lexeme: None, line: 1007, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1007, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1007, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1007, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1007, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1007, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1007, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1007, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1007, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1008, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1008, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1008, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1008, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1008, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1008, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1008, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1008, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1011, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1011, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1011, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1011, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1011, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1011, }, Token { kind: String, lexeme: "\"pushnum 3; pushnum 5; yield 1;\"", computed_lexeme: None, line: 1011, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1011, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1012, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1012, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1012, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1012, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1012, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1012, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1013, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1013, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1013, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1013, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1013, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1013, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1013, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1013, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1013, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1013, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1013, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1013, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1013, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1013, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1013, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1013, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1013, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1013, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1013, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1013, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1014, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1014, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1015, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1015, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1015, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1015, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1015, }, Token { kind: Number, lexeme: "16", computed_lexeme: Some( "16", ), line: 1015, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1015, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1015, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1015, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1016, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1016, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1016, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1016, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1016, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1016, }, Token { kind: Number, lexeme: "16", computed_lexeme: Some( "16", ), line: 1016, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1016, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1016, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1016, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1016, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1017, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1017, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1017, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1017, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1017, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1017, }, Token { kind: Number, lexeme: "16", computed_lexeme: Some( "16", ), line: 1017, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1017, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1017, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1017, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1017, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1021, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1021, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1021, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1021, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1021, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1021, }, Token { kind: MultilineString, lexeme: "[[\n pushnum 102\n\tyieldk\t1 U2\n\tcannot be here!\n]]", computed_lexeme: None, line: 1025, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1025, }, Token { kind: MultilineString, lexeme: "[[ # continuation\n\tpushvalue U3 # accessing upvalues inside a continuation\n pushvalue U4\n\treturn *\n]]", computed_lexeme: None, line: 1030, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1030, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1030, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1030, }, Token { kind: String, lexeme: "\"huu\"", computed_lexeme: None, line: 1030, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1030, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1032, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1032, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1032, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1032, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1032, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1032, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1032, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1032, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1033, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1033, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1033, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1033, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1033, }, Token { kind: Number, lexeme: "102", computed_lexeme: Some( "102", ), line: 1033, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "eqtab", computed_lexeme: None, line: 1034, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1034, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1034, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1034, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1034, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1034, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1034, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1034, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1034, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 1034, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1034, }, Token { kind: String, lexeme: "\"huu\"", computed_lexeme: None, line: 1034, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1034, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1034, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1037, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1037, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1037, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1037, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1037, }, Token { kind: MultilineString, lexeme: "[[pushstring 'a'; pushnum 102; yield 2; ]]", computed_lexeme: None, line: 1037, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1039, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1039, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 1039, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1039, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 1039, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1039, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 1039, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1039, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1039, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1039, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 1039, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1039, }, Token { kind: MultilineString, lexeme: "[[newthread; pushvalue 2; xmove 0 3 1; resume 3 0;\n pushstatus; xmove 3 0 0; resume 3 0; pushstatus;\n return 4; ]]", computed_lexeme: None, line: 1041, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1041, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1041, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1041, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1043, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1043, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1043, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1043, }, Token { kind: String, lexeme: "'YIELD'", computed_lexeme: None, line: 1043, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1043, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 1043, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1043, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 1043, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1043, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 1043, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1043, }, Token { kind: Number, lexeme: "102", computed_lexeme: Some( "102", ), line: 1043, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1043, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 1043, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1043, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 1043, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1043, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1048, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1048, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1048, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1048, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1050, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1050, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1050, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1050, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1050, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1050, }, Token { kind: MultilineString, lexeme: "[[\n remove 1; # remove argument\n pushvalue U3; # get selection function\n call 0 1; # call it (result is 'f' or 'yield')\n pushstring hello # single argument for selected function\n pushupvalueindex 2; # index of continuation program\n callk 1 -1 .;\t\t# call selected function\n errorerror\t\t# should never arrive here\n]]", computed_lexeme: None, line: 1058, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1058, }, Token { kind: MultilineString, lexeme: "[[\n # continuation program\n pushnum 34\t# return value\n return * # return all results\n]]", computed_lexeme: None, line: 1063, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1063, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1064, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1064, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1064, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1065, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1065, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1065, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 1065, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1065, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1066, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1066, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 1066, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1066, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1066, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 1067, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1067, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1067, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1068, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1069, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1070, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1072, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1072, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1072, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1072, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1072, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1072, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1072, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1072, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1072, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1072, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1072, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1072, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1072, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1072, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1072, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1072, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1073, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1073, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1073, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1073, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1073, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1073, }, Token { kind: String, lexeme: "\"hello\"", computed_lexeme: None, line: 1073, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1073, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1074, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1074, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1074, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1074, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1074, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1074, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1074, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1076, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1076, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1076, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1076, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1076, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1076, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1076, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1076, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1076, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1076, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1076, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1076, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1076, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1076, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1076, }, Token { kind: Number, lexeme: "34", computed_lexeme: Some( "34", ), line: 1076, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1081, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1081, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1081, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1081, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1081, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1081, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1081, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1081, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 1081, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1081, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1081, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1082, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1082, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 1082, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1082, }, Token { kind: MultilineString, lexeme: "[[ # initial function\n yieldk 1 2\n cannot be here!\n ]]", computed_lexeme: None, line: 1085, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1085, }, Token { kind: MultilineString, lexeme: "[[ # 1st continuation\n yieldk 0 3 \n cannot be here!\n ]]", computed_lexeme: None, line: 1089, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1089, }, Token { kind: MultilineString, lexeme: "[[ # 2nd continuation\n yieldk 0 4 \n cannot be here!\n ]]", computed_lexeme: None, line: 1093, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1093, }, Token { kind: MultilineString, lexeme: "[[ # 3th continuation\n pushvalue 6 # function which is last arg. to 'testC' here\n pushnum 10; pushnum 20;\n pcall 2 0 0 # call should throw an error and return to next line\n pop 1\t\t# remove error message\n pushvalue 6\n getglobal status; getglobal ctx\n pcallk 2 2 5 # call should throw an error and jump to continuation\n cannot be here!\n ]]", computed_lexeme: None, line: 1103, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1103, }, Token { kind: MultilineString, lexeme: "[[ # 4th (and last) continuation\n return *\n ]]", computed_lexeme: None, line: 1106, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1106, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1108, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 1108, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1108, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1108, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1108, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 1108, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1108, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 1108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1108, }, Token { kind: String, lexeme: "\"errmsg\"", computed_lexeme: None, line: 1108, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1108, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1108, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1108, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 1109, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1110, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1111, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1111, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1113, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1113, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1113, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1113, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1113, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1113, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1113, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1113, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 1113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1113, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1113, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1114, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1114, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1114, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1114, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1114, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1114, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1114, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 1114, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1114, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1114, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1114, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1114, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1114, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1114, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 1114, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1114, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1115, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1115, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1115, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1115, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1115, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1115, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1115, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1115, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1115, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1115, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1115, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 1115, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 1115, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 1115, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1115, }, Token { kind: String, lexeme: "\"YIELD\"", computed_lexeme: None, line: 1115, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 1115, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "ctx", computed_lexeme: None, line: 1115, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1115, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1115, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1115, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1116, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1116, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1116, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1116, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1116, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1116, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1116, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1116, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1116, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1116, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1116, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 1116, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 1116, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "status", computed_lexeme: None, line: 1116, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1116, }, Token { kind: String, lexeme: "\"YIELD\"", computed_lexeme: None, line: 1116, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 1116, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "ctx", computed_lexeme: None, line: 1116, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1116, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1116, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1116, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1117, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1117, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1117, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1117, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1117, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 1117, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1117, }, Token { kind: Number, lexeme: "8", computed_lexeme: Some( "8", ), line: 1117, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1117, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1117, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1117, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1119, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1119, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1119, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1119, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1119, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1119, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1119, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1119, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 1119, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1119, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1119, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1119, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1119, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1119, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1119, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1119, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 1119, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1120, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1120, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1120, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1120, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1120, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1120, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1120, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 1120, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1120, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1120, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1120, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1120, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1120, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1120, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1120, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 1120, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1121, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1121, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1121, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1121, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1121, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1121, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1121, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1121, }, Token { kind: String, lexeme: "'string'", computed_lexeme: None, line: 1121, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1121, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 1121, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1121, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1121, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1121, }, Token { kind: Number, lexeme: "6", computed_lexeme: Some( "6", ), line: 1121, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1121, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1121, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1121, }, Token { kind: String, lexeme: "'function'", computed_lexeme: None, line: 1121, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1121, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1123, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1123, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1123, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1123, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 1123, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1123, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1123, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1123, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1123, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1123, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1123, }, Token { kind: Number, lexeme: "8", computed_lexeme: Some( "8", ), line: 1123, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1123, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1123, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1123, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1123, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1125, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1125, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1125, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1125, }, Token { kind: Number, lexeme: "9", computed_lexeme: Some( "9", ), line: 1125, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1125, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1125, }, Token { kind: Number, lexeme: "7", computed_lexeme: Some( "7", ), line: 1125, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1125, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1125, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1125, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1125, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1125, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1125, }, Token { kind: Number, lexeme: "8", computed_lexeme: Some( "8", ), line: 1125, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1125, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1127, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1127, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1127, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1127, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 1127, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1127, }, Token { kind: Colon, lexeme: ":", computed_lexeme: None, line: 1127, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1127, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1127, }, Token { kind: String, lexeme: "\"errmsg\"", computed_lexeme: None, line: 1127, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1127, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1127, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 1127, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1127, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1127, }, Token { kind: Number, lexeme: "11", computed_lexeme: Some( "11", ), line: 1127, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1127, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1129, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1129, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1129, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1129, }, Token { kind: String, lexeme: "\"YIELD\"", computed_lexeme: None, line: 1129, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1129, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1129, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1129, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1129, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1129, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1131, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1131, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1131, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1131, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1131, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1131, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1131, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1131, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1135, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1135, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1135, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1135, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1135, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1135, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1135, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1135, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1135, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1135, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1136, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1136, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 1136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1136, }, Token { kind: String, lexeme: "\"hi\"", computed_lexeme: None, line: 1136, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1136, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1136, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1137, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1137, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1137, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1137, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1137, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 1137, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1137, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 1137, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1137, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1137, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1137, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1137, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1138, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1138, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1140, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1140, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1140, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1140, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1140, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1140, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1140, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1140, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1141, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1141, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 1141, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1141, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1141, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1141, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1141, }, Token { kind: String, lexeme: "\"hi\"", computed_lexeme: None, line: 1141, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1141, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 1143, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 1143, }, ]