--- source: src/main.rs expression: scanned input_file: test-data/lua5.4-tests/locals.lua --- [ Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 4, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 4, }, Token { kind: String, lexeme: "'testing local variables and environments'", computed_lexeme: None, line: 4, }, Token { kind: RightParen, lexeme: ")", 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: "tracegc", computed_lexeme: None, line: 8, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 8, }, Token { kind: Identifier, lexeme: "require", computed_lexeme: None, line: 8, }, Token { kind: String, lexeme: "\"tracegc\"", computed_lexeme: None, line: 8, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 13, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 13, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 13, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 13, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 14, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 14, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 14, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 14, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 14, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 14, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 15, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 16, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 16, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 16, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 16, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 16, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 16, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 16, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 16, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 16, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 18, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 18, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 18, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 18, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 18, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 19, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 19, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 19, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 19, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 20, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 21, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 21, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 21, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 21, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 21, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 21, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 21, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 21, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 21, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 23, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 23, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 23, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 23, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 24, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 24, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 24, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 24, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 24, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 24, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 24, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 24, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 24, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 25, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 26, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 26, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 26, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 26, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 26, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 26, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 26, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "select", computed_lexeme: None, line: 26, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 26, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 26, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 26, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 26, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 26, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 26, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 26, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 26, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 26, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 26, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 26, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 28, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 29, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 29, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 29, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 29, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 30, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 31, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 31, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 31, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 31, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 31, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 31, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 31, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 31, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 31, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 32, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 33, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 34, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 34, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 34, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 34, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 34, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 34, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 34, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 34, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 34, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 35, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 36, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 36, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 36, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 36, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 36, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 36, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 37, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 37, }, Token { kind: NotEquals, lexeme: "~=", computed_lexeme: None, line: 37, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 37, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 37, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 38, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 38, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 38, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 38, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 39, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 40, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 40, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 40, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), 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: "i", computed_lexeme: None, line: 41, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 41, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 41, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 41, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 42, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 43, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 47, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 47, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 47, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 49, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 50, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 50, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 50, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 52, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 52, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 52, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 53, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 53, }, Token { kind: String, lexeme: "'local a = {}'", computed_lexeme: None, line: 53, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 53, }, Token { kind: LeftParen, 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: "a", computed_lexeme: None, line: 54, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 54, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 54, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 54, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 56, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 56, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 56, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 56, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_1", computed_lexeme: None, line: 57, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_2", computed_lexeme: None, line: 57, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_3", computed_lexeme: None, line: 57, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_4", computed_lexeme: None, line: 57, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 57, }, Token { kind: Identifier, lexeme: "_5", computed_lexeme: None, line: 57, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "_6", computed_lexeme: None, line: 58, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "_7", computed_lexeme: None, line: 58, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "_8", computed_lexeme: None, line: 58, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "_9", computed_lexeme: None, line: 58, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 58, }, Token { kind: Identifier, lexeme: "_10", computed_lexeme: None, line: 58, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 59, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 59, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 59, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 59, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 60, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 60, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 60, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 61, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 61, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 61, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 61, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 61, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 62, }, Token { kind: LeftParen, lexeme: "(", 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: Identifier, lexeme: "b", computed_lexeme: None, line: 62, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 62, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 62, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 63, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 63, }, Token { kind: String, lexeme: "'q'", computed_lexeme: None, line: 63, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 64, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 64, }, Token { kind: Identifier, lexeme: "b", 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: "x", 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: RightParen, lexeme: ")", computed_lexeme: None, line: 65, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 66, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 67, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 67, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 67, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 67, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 68, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 69, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 69, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 69, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 69, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 69, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 69, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 70, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 70, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 70, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 70, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 71, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 73, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 73, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 73, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 73, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 74, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 74, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 74, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 74, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 75, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 75, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 75, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 75, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 75, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 75, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 75, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 75, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 75, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 75, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 75, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 75, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 75, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 75, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 75, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 76, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 76, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 76, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 76, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 76, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 76, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 79, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 79, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 79, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 79, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 79, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 81, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 81, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 81, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 81, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 82, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 82, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 82, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 82, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 82, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 82, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 82, }, Token { kind: String, lexeme: "'function'", computed_lexeme: None, line: 82, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 82, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 85, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "getenv", computed_lexeme: None, line: 85, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 85, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 85, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 85, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 86, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 86, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 86, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "getupvalue", computed_lexeme: None, line: 86, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 86, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 86, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 86, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 86, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 87, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 87, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 87, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 87, }, Token { kind: String, lexeme: "'_ENV'", computed_lexeme: None, line: 87, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 87, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 88, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 88, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 89, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 92, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 92, }, Token { kind: Identifier, lexeme: "getenv", computed_lexeme: None, line: 92, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 92, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 92, }, Token { kind: String, lexeme: "\"a=3\"", computed_lexeme: None, line: 92, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 92, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 92, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 92, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 92, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 93, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 93, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 93, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 93, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 93, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 93, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 93, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 93, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 93, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 93, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 93, }, Token { kind: String, lexeme: "\"a = 3\"", computed_lexeme: None, line: 93, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 93, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 93, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 93, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 93, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 93, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 93, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 93, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 94, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 94, }, Token { kind: Identifier, lexeme: "getenv", computed_lexeme: None, line: 94, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 94, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 94, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 94, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 94, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 94, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 94, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 95, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 95, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 95, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 95, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 95, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 95, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 96, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 96, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 96, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 97, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 97, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 97, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 97, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 97, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 97, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 97, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 97, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 100, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 101, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 101, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 101, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 101, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 102, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 102, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 102, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 102, }, Token { kind: Repeat, lexeme: "repeat", computed_lexeme: None, line: 103, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 104, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 104, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 104, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 104, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 104, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 104, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 104, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 104, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 105, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 105, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 105, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 105, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 105, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 105, }, Token { kind: Identifier, lexeme: "format", computed_lexeme: None, line: 105, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 105, }, Token { kind: MultilineString, lexeme: "[[local a=%s;\n a=a+%s;\n assert(a ==2^%s)]]", computed_lexeme: None, line: 107, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 107, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 107, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 107, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 107, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 107, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 107, }, Token { kind: String, lexeme: "''", computed_lexeme: None, line: 107, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 107, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 107, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 107, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 107, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 108, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 108, }, Token { kind: Identifier, lexeme: "format", computed_lexeme: None, line: 108, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 108, }, Token { kind: MultilineString, lexeme: "[[local a=%s;\n a=a-%s;\n assert(a==-2^%s)]]", computed_lexeme: None, line: 110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 110, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 110, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 110, }, Token { kind: String, lexeme: "''", computed_lexeme: None, line: 110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 110, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 110, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 111, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 111, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 111, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 111, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 111, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 111, }, Token { kind: Identifier, lexeme: "format", computed_lexeme: None, line: 111, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 111, }, Token { kind: MultilineString, lexeme: "[[local a,b=0,%s;\n a=b-%s;\n assert(a==-2^%s)]]", computed_lexeme: None, line: 113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 113, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 113, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 113, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 113, }, Token { kind: String, lexeme: "''", computed_lexeme: None, line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 113, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 113, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 114, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 115, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 115, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 115, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 115, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 115, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 115, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 115, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 115, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 115, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 115, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 115, }, Token { kind: Until, lexeme: "until", computed_lexeme: None, line: 116, }, Token { kind: Identifier, lexeme: "p", computed_lexeme: None, line: 116, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 116, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 116, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 117, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 119, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 119, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "rawget", computed_lexeme: None, line: 122, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 122, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 122, }, Token { kind: String, lexeme: "\"T\"", computed_lexeme: None, line: 122, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 122, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 122, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 124, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 124, }, Token { kind: String, lexeme: "\"stop\"", computed_lexeme: None, line: 124, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 124, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 125, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 125, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 125, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 125, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 126, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 126, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 126, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 126, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 126, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 126, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 126, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 127, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 127, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 127, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 127, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 127, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 127, }, Token { kind: Identifier, lexeme: "alo", computed_lexeme: None, line: 128, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 128, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 128, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 128, }, Token { kind: Identifier, lexeme: "a1234567890123456789012345678901234567890", computed_lexeme: None, line: 129, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 129, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 129, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 130, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 132, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 132, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 132, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 132, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 132, }, Token { kind: Identifier, lexeme: "querytab", computed_lexeme: None, line: 132, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 132, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 132, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 132, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 134, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 134, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "pairs", computed_lexeme: None, line: 134, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 134, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 134, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 134, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 134, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 134, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "undef", computed_lexeme: None, line: 134, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 134, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 135, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 135, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 135, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 136, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 136, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 136, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 136, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 136, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 136, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 136, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 136, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 136, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 137, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "querytab", computed_lexeme: None, line: 137, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 137, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 137, }, Token { kind: Identifier, lexeme: "i", 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: "k", 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: Or, lexeme: "or", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "type", computed_lexeme: None, line: 138, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 138, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 138, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 138, }, Token { kind: String, lexeme: "'number'", computed_lexeme: None, line: 138, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 138, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 138, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 138, }, Token { kind: String, lexeme: "'alo'", computed_lexeme: None, line: 138, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 138, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 139, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 142, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 142, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 142, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 142, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 142, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 143, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 143, }, Token { kind: Identifier, lexeme: "additems", computed_lexeme: None, line: 143, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 143, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 143, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 144, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 144, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 144, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 144, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 144, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 144, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 144, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 144, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 144, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 144, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 144, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 144, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 145, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 145, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 145, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 145, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 145, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 145, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 146, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 146, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 146, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 146, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 146, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 146, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 147, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 148, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 148, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 148, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "math", computed_lexeme: None, line: 148, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "huge", computed_lexeme: None, line: 148, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 148, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 149, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 149, }, Token { kind: Identifier, lexeme: "alloccount", computed_lexeme: None, line: 149, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 149, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 149, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 149, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 150, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 150, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 150, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 150, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 150, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 150, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 150, }, Token { kind: Identifier, lexeme: "additems", computed_lexeme: None, line: 150, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 150, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 151, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 151, }, Token { kind: Identifier, lexeme: "alloccount", 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: "count", computed_lexeme: None, line: 152, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 152, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 152, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 153, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 153, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "pairs", computed_lexeme: None, line: 153, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 153, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 153, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 153, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 154, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 154, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 154, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 154, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 154, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 154, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 154, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 154, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 154, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 155, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 155, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 155, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 155, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 155, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 156, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 157, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 157, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 157, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 158, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 158, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 158, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 158, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 158, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 158, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 158, }, Token { kind: Break, lexeme: "break", computed_lexeme: None, line: 158, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 159, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 160, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 161, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 166, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 166, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 166, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 166, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 166, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 168, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 169, }, Token { kind: Identifier, lexeme: "dummy", computed_lexeme: None, line: 169, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 170, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 170, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 170, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 170, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 170, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 170, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 170, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 170, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 170, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 170, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 170, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 170, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 170, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 170, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 170, }, Token { kind: Identifier, lexeme: "dummy", computed_lexeme: None, line: 170, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 170, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 172, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 173, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 173, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 173, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 173, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 173, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 173, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 173, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 173, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 173, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 173, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 173, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 173, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 173, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 174, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 175, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 175, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 175, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 175, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 175, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 175, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 175, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 176, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 176, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 177, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 177, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 177, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 178, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 179, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 179, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 179, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 180, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 180, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 180, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 181, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 181, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 181, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 182, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 183, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 183, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 183, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 183, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 183, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 183, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 184, }, Token { kind: Return, lexeme: "return", 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: Identifier, lexeme: "x", computed_lexeme: None, line: 185, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 185, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 185, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 185, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 185, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 185, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 186, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 187, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 188, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 188, }, Token { kind: Identifier, lexeme: "getenv", computed_lexeme: None, line: 188, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 188, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 188, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 188, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 188, }, Token { kind: Identifier, lexeme: "mt", 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: Identifier, lexeme: "foo", computed_lexeme: None, line: 189, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 189, }, Token { kind: String, lexeme: "'hi'", computed_lexeme: None, line: 189, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 189, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 189, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 189, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 189, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 189, }, Token { kind: String, lexeme: "'hi'", computed_lexeme: None, line: 189, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 189, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 189, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 189, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 189, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 190, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 190, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 190, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 190, }, Token { kind: String, lexeme: "'*'", computed_lexeme: None, line: 190, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 190, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 190, }, Token { kind: Identifier, lexeme: "mt", computed_lexeme: None, line: 190, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 190, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 190, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 190, }, Token { kind: String, lexeme: "'*'", computed_lexeme: None, line: 190, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 190, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 192, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 193, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 193, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 193, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 193, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 193, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 193, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 193, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 193, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 193, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 193, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 194, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "_ENV", computed_lexeme: None, line: 195, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 195, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 195, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 195, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 195, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 195, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 195, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 195, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 195, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 196, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 196, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 196, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 196, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 196, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 196, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 196, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 196, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 197, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 198, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 198, }, Token { kind: Identifier, lexeme: "A", computed_lexeme: None, line: 198, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 198, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 198, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 198, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 198, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 198, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 198, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 198, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 199, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 200, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 200, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 200, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 200, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 200, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 200, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 203, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 204, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 204, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 204, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 204, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 204, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 204, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 204, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 204, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 204, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 204, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 204, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 204, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 204, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 204, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 204, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 204, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 204, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 204, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 205, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 205, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 205, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 205, }, Token { kind: Identifier, lexeme: "b", 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: "a", computed_lexeme: None, line: 206, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 206, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 206, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 206, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 206, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 206, }, Token { kind: Number, lexeme: "60", computed_lexeme: Some( "60", ), line: 206, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 206, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 206, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 206, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 206, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 206, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 207, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 207, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 207, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 207, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 207, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 207, }, Token { kind: Identifier, lexeme: "code", computed_lexeme: None, line: 207, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 207, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 208, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 208, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "load", computed_lexeme: None, line: 208, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 208, }, Token { kind: Identifier, lexeme: "code", computed_lexeme: None, line: 208, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 208, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "gab", computed_lexeme: None, line: 209, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 209, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "format", computed_lexeme: None, line: 209, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 209, }, Token { kind: String, lexeme: "\"attempt to assign to const variable '%s'\"", computed_lexeme: None, line: 209, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 209, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 209, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 210, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 210, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 210, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 210, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 210, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 210, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 210, }, Token { kind: Identifier, lexeme: "gab", computed_lexeme: None, line: 210, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 210, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 210, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 211, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 212, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 212, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 212, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 212, }, Token { kind: String, lexeme: "\"local x, y , z = 10, 20, 30; x = 11; y = 12\"", computed_lexeme: None, line: 212, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 212, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 213, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 213, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 213, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 213, }, Token { kind: String, lexeme: "\"local x , y, z = 10, 20, 30; x = 11\"", computed_lexeme: None, line: 213, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 213, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 214, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 214, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 214, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 214, }, Token { kind: String, lexeme: "\"local x , y, z = 10, 20, 30; y = 10; z = 11\"", computed_lexeme: None, line: 214, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 214, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 215, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 215, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 215, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 215, }, Token { kind: String, lexeme: "\"local foo = 10; function foo() end\"", computed_lexeme: None, line: 215, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 215, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 216, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 216, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 216, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 216, }, Token { kind: String, lexeme: "\"local foo = {}; function foo() end\"", computed_lexeme: None, line: 216, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 216, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 218, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 218, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 218, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 218, }, Token { kind: MultilineString, lexeme: "[[\n local a, z , b = 10;\n function foo() a = 20; z = 32; end\n ]]", computed_lexeme: None, line: 221, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 221, }, Token { kind: Identifier, lexeme: "checkro", computed_lexeme: None, line: 223, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 223, }, Token { kind: String, lexeme: "\"var1\"", computed_lexeme: None, line: 223, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 223, }, Token { kind: MultilineString, lexeme: "[[\n local a, var1 = 10;\n function foo() a = 20; z = function () var1 = 12; end end\n ]]", computed_lexeme: None, line: 226, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 226, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 227, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 230, }, Token { kind: String, lexeme: "\"testing to-be-closed variables\"", computed_lexeme: None, line: 230, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 232, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 232, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 232, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 232, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 232, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 232, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 232, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 232, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 232, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 232, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 232, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 232, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 232, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 232, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 232, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 232, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 232, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 232, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 234, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 234, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 234, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 234, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 234, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 234, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 234, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 235, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 235, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 235, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 235, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 235, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 235, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 235, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 235, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 235, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 235, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 235, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 235, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 235, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 235, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 236, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 236, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 236, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 237, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 237, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 237, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 237, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 237, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 237, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 238, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 239, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 239, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 240, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 241, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 244, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 245, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 245, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 245, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 245, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 245, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 246, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 247, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 247, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 247, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 247, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 247, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 247, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 247, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 248, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 248, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 248, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 248, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 248, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 248, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 248, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 248, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 248, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 248, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 248, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 248, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 248, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 249, }, Token { kind: Equals, 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: "self", computed_lexeme: None, line: 249, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 249, }, Token { kind: Identifier, lexeme: "a", 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: "a", 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: "self", computed_lexeme: None, line: 250, }, Token { kind: LeftBracket, 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: End, lexeme: "end", computed_lexeme: None, line: 251, }, Token { kind: RightBrace, lexeme: "}", 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: "w", computed_lexeme: None, line: 253, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "y", 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: Comma, lexeme: ",", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "z", 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: "self", computed_lexeme: None, line: 253, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 253, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 253, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 254, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 254, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 254, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 254, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 254, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 254, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 254, }, Token { kind: Identifier, lexeme: "a", 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: "a", 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: String, lexeme: "\"y\"", computed_lexeme: None, line: 254, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 255, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 255, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 255, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 255, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 255, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 255, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 256, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 256, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 256, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 256, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 256, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 257, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 257, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 257, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 257, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 257, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 257, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 257, }, Token { kind: String, lexeme: "\"in\"", computed_lexeme: None, line: 257, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 258, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "w", computed_lexeme: None, line: 258, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 258, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 258, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 258, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 258, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 258, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 258, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 258, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 259, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 260, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 260, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 260, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 260, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 260, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 260, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 260, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 260, }, Token { kind: String, lexeme: "\"out\"", computed_lexeme: None, line: 260, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 261, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 261, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 261, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 261, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 261, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 261, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 261, }, Token { kind: String, lexeme: "\"in\"", computed_lexeme: None, line: 261, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 261, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 261, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 261, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 261, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 261, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 261, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 261, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 261, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 261, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 261, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 261, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 261, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 261, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 261, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 261, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 261, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 261, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 261, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 261, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 261, }, Token { kind: String, lexeme: "\"out\"", 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: Do, lexeme: "do", computed_lexeme: None, line: 264, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 265, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 265, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 265, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 265, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 267, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "closescope", computed_lexeme: None, line: 267, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 267, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 267, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 267, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 267, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 267, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 267, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 268, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 268, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 268, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 268, }, Token { kind: Semicolon, 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: "msg", computed_lexeme: None, line: 269, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 269, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 269, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 269, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 270, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 270, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 270, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 271, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 271, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 271, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 271, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 272, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 272, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 272, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 272, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 272, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 272, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 272, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 272, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 272, }, Token { kind: Number, lexeme: "101", computed_lexeme: Some( "101", ), line: 272, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 272, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 275, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 275, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 275, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 275, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 275, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 275, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 276, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 276, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 276, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 276, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 276, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 276, }, Token { kind: Identifier, lexeme: "closescope", computed_lexeme: None, line: 276, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 277, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 277, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 277, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 277, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 277, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 277, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 278, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 280, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 280, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 280, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 280, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 280, }, Token { kind: Number, lexeme: "1.5", computed_lexeme: Some( "1.5", ), line: 280, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 280, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 281, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 281, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 281, }, Token { kind: Number, lexeme: "1.5", computed_lexeme: Some( "1.5", ), line: 281, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 281, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 281, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 281, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 281, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 281, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 281, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 281, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 281, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 281, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 281, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 283, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 283, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 283, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 284, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 284, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 284, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 284, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 284, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 284, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 285, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 285, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 285, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 285, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 285, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 285, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 285, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 285, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 285, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 288, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 288, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 288, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 288, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 288, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 288, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 288, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 288, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 288, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 288, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 289, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 289, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 289, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 289, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 289, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 289, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 290, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 290, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 291, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 291, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 291, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 291, }, Token { kind: Identifier, lexeme: "closescope", computed_lexeme: None, line: 291, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 292, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 292, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 292, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 292, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 293, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 293, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 294, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 296, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 296, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 296, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 296, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 296, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 296, }, Token { kind: Number, lexeme: "15", computed_lexeme: Some( "15", ), line: 296, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 296, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 296, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 296, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 296, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 296, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 298, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 298, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 298, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 299, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 299, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 299, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 299, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 299, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 300, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 300, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 300, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 300, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 300, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 300, }, Token { kind: Identifier, lexeme: "closescope", computed_lexeme: None, line: 300, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 301, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 301, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 302, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 304, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 304, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 304, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 304, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 304, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 304, }, Token { kind: Identifier, lexeme: "closescope", computed_lexeme: None, line: 304, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 304, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 304, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 304, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 304, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 304, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 305, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 311, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 312, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 312, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 312, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 312, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 313, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 313, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 313, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 313, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 313, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 313, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 313, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 313, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 314, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 314, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 314, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 314, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, 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: Identifier, lexeme: "flag", computed_lexeme: None, line: 315, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 315, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 315, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 315, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 315, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 315, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 315, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 315, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 316, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 316, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 316, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 317, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 317, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 317, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 317, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 317, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 317, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 318, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 318, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 318, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 318, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 318, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 318, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 318, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 319, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 320, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 320, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 320, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 320, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 320, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 321, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 322, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 322, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 322, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 322, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 323, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 325, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 327, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 327, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 327, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 327, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 328, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 328, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 328, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 328, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 328, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 328, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 328, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 328, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 329, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 329, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 329, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 329, }, Token { kind: LeftParen, lexeme: "(", 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: "flag", computed_lexeme: None, line: 330, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 330, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 330, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 330, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 330, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 330, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 330, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 330, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 331, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 331, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 331, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 333, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 333, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 333, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 333, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 333, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 334, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 334, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 334, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 334, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 334, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 334, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 334, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 334, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 334, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 334, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 334, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 334, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 334, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 334, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 334, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 335, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "v", computed_lexeme: None, line: 336, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 336, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 336, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 336, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 336, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 336, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "w", computed_lexeme: None, line: 337, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 337, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 337, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 337, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 337, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 337, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 338, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 338, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 338, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 338, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 338, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 338, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 338, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 339, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 339, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 339, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 339, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 339, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 339, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 339, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 340, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 340, }, Token { kind: Identifier, lexeme: "const", computed_lexeme: None, line: 340, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 340, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 340, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 340, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 341, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 341, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 341, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 341, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 341, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 342, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 342, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 342, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 343, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 344, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 344, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 344, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 344, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 345, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 349, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 351, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 351, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 351, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 351, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 352, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 352, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 352, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 352, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 352, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 353, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 353, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 353, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 353, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 353, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 353, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 353, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 353, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 353, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 353, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 353, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 353, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 353, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 353, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 353, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 353, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 354, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 354, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 354, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 354, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 354, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 354, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 354, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 354, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 354, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 354, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 355, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 355, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 355, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 355, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 355, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 355, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 356, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 358, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 358, }, Token { kind: Identifier, lexeme: "bar", computed_lexeme: None, line: 358, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 358, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 358, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 359, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 359, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 359, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 359, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 359, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 359, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 359, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 359, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 359, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 359, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 359, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 359, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 360, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 360, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 360, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 361, }, Token { kind: Return, lexeme: "return", 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: 363, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 364, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 366, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 366, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 366, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 366, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "bar", computed_lexeme: None, line: 366, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 366, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 366, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 367, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 367, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 367, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 367, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "X", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 367, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "Y", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 367, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 367, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 367, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 367, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 367, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 367, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 368, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 371, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 376, }, Token { kind: Identifier, lexeme: "closed", computed_lexeme: None, line: 376, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 376, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 376, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 378, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 378, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 378, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 378, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 378, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 379, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 379, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 379, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 379, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 379, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 379, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 379, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 379, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 379, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 379, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 379, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 379, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 380, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 380, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 380, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 380, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 380, }, Token { kind: Identifier, lexeme: "closed", computed_lexeme: None, line: 380, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 380, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 380, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 380, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 380, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 381, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 383, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "tail", computed_lexeme: None, line: 383, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 383, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 383, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 383, }, Token { kind: Identifier, lexeme: "closed", computed_lexeme: None, line: 383, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 383, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 385, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 385, }, Token { kind: Identifier, lexeme: "foo1", computed_lexeme: None, line: 385, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 385, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 385, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 386, }, Token { kind: Identifier, lexeme: "k", computed_lexeme: None, line: 386, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 386, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 386, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 386, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 386, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 386, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 386, }, Token { kind: Identifier, lexeme: "tail", computed_lexeme: None, line: 386, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 386, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 386, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 386, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 387, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 389, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "foo1", 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: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 389, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 389, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 389, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 390, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 390, }, Token { kind: Identifier, lexeme: "closed", computed_lexeme: None, line: 390, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 390, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 390, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 390, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 391, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 394, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 395, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 395, }, Token { kind: String, lexeme: "\"testing errors in __close\"", computed_lexeme: None, line: 395, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 395, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 398, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 398, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 398, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 398, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 398, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 399, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 399, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 399, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 399, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 400, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 400, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 400, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 400, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 400, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 400, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 400, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 400, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 401, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 401, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 401, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 401, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 401, }, Token { kind: String, lexeme: "\"@y\"", computed_lexeme: None, line: 401, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 401, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 401, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 402, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 402, }, Token { kind: String, lexeme: "\"@x\"", 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: RightParen, lexeme: ")", computed_lexeme: None, line: 403, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 405, }, Token { kind: Identifier, lexeme: "x1", computed_lexeme: None, line: 405, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 405, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 405, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 405, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 405, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 406, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 406, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 406, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 406, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 406, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 406, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 406, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 406, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 407, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 407, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 407, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 407, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 407, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 407, }, Token { kind: String, lexeme: "\"@y\"", computed_lexeme: None, line: 407, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 407, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 407, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 408, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 408, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 410, }, Token { kind: Identifier, lexeme: "gc", computed_lexeme: None, line: 410, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 410, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 410, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 410, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 410, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 410, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 410, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 410, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 410, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 410, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 410, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 410, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 410, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 410, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 410, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 412, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 412, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 412, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 412, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 413, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 413, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 413, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 413, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 413, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 413, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 414, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 414, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 414, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 414, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 414, }, Token { kind: String, lexeme: "\"@z\"", computed_lexeme: None, line: 414, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 414, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 414, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 415, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 415, }, Token { kind: String, lexeme: "\"@y\"", computed_lexeme: None, line: 415, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 415, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 416, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 416, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 418, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 418, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 418, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 418, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 419, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 419, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 419, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 419, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 419, }, Token { kind: Identifier, lexeme: "msg", 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: "msg", computed_lexeme: None, line: 420, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 420, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 420, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 420, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 421, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 421, }, Token { kind: String, lexeme: "\"@z\"", computed_lexeme: None, line: 421, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 421, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 422, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 422, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 424, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), 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: "stat", computed_lexeme: None, line: 427, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 427, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 427, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 427, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 427, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 427, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 427, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 428, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 428, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 428, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 428, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 428, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 428, }, Token { kind: String, lexeme: "\"@x\"", computed_lexeme: None, line: 428, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 428, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 428, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 432, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 432, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 432, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 432, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 432, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 433, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 433, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 433, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 433, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 434, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 434, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 434, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 434, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 434, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 434, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 437, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 437, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 437, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 437, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 437, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 437, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 437, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 437, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 437, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 437, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 437, }, Token { kind: String, lexeme: "\"pcall\"", computed_lexeme: None, line: 437, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 437, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 438, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 438, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 438, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 438, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 438, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 438, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 438, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 438, }, Token { kind: String, lexeme: "\"@x1\"", computed_lexeme: None, line: 438, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 438, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 438, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 439, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 439, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "x1", computed_lexeme: None, line: 441, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 441, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 441, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 441, }, Token { kind: Identifier, lexeme: "func2close", 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: Identifier, lexeme: "self", computed_lexeme: None, line: 442, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 442, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 442, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 443, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 443, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 443, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 443, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 443, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 443, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 443, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 443, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 443, }, Token { kind: String, lexeme: "\"pcall\"", 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: "string", computed_lexeme: None, line: 444, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 444, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 444, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 444, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 444, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 444, }, Token { kind: String, lexeme: "\"@y\"", computed_lexeme: None, line: 444, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 444, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 444, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 445, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 445, }, Token { kind: String, lexeme: "\"@x1\"", computed_lexeme: None, line: 445, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 445, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 446, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 446, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 448, }, Token { kind: Identifier, lexeme: "gc", 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: "collectgarbage", 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: End, lexeme: "end", computed_lexeme: None, line: 448, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 448, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 450, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 450, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 450, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 450, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 450, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 450, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 451, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 451, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 451, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 451, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 451, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 451, }, Token { kind: Identifier, lexeme: "msg", 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: Identifier, lexeme: "debug", computed_lexeme: None, line: 452, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 452, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 452, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 452, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 452, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 452, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 452, }, Token { kind: String, lexeme: "\"pcall\"", computed_lexeme: None, line: 452, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 452, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 453, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 453, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 453, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 453, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 453, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 453, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 453, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 453, }, Token { kind: String, lexeme: "\"@z\"", computed_lexeme: None, line: 453, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 453, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 453, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 454, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 454, }, Token { kind: String, lexeme: "\"@y\"", computed_lexeme: None, line: 454, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 454, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 455, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 455, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 457, }, Token { kind: Identifier, lexeme: "first", computed_lexeme: None, line: 457, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 457, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 457, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 458, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 458, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 458, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 458, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 458, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 458, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 459, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 459, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 459, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 459, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 459, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 459, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 459, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 459, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 460, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 460, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 460, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 460, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 460, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 460, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 460, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 460, }, Token { kind: String, lexeme: "\"pcall\"", computed_lexeme: None, line: 460, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 460, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 462, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "first", computed_lexeme: None, line: 462, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 462, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 462, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 462, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 462, }, Token { kind: Identifier, lexeme: "first", computed_lexeme: None, line: 463, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 463, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 463, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 464, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 464, }, Token { kind: String, lexeme: "\"@z\"", computed_lexeme: None, line: 464, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 464, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 465, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 465, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 467, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 467, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 467, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 467, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 468, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 470, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 470, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 470, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 470, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 470, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 470, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 470, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 470, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 470, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 470, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 470, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 471, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 471, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 471, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 471, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 471, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 471, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 471, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 471, }, Token { kind: String, lexeme: "\"@x1\"", computed_lexeme: None, line: 471, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 471, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 471, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 474, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 474, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 474, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 474, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 474, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 474, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 475, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "x1", computed_lexeme: None, line: 476, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 476, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 476, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 476, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 477, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 477, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 477, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 477, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 477, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 477, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 478, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 478, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 478, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 478, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 478, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 478, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 478, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 478, }, Token { kind: String, lexeme: "\"@X\"", computed_lexeme: None, line: 478, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 478, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 478, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 479, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 479, }, Token { kind: String, lexeme: "\"@Y\"", computed_lexeme: None, line: 479, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 479, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 480, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 480, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "x123", computed_lexeme: None, line: 482, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 482, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 482, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 482, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 483, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 483, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 483, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 483, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 483, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 483, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 484, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 484, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 484, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 484, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 484, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 484, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 485, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 485, }, Token { kind: String, lexeme: "\"@X\"", computed_lexeme: None, line: 485, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 485, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 486, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 486, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 487, }, Token { kind: Identifier, lexeme: "os", computed_lexeme: None, line: 488, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 488, }, Token { kind: Identifier, lexeme: "exit", computed_lexeme: None, line: 488, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 488, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 488, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 488, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 489, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 491, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 491, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 491, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 491, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 491, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "traceback", computed_lexeme: None, line: 491, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 491, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 492, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 492, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "match", computed_lexeme: None, line: 492, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 492, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 492, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 492, }, Token { kind: String, lexeme: "\"^[^ ]* @Y\"", computed_lexeme: None, line: 492, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 492, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 492, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 495, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 495, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 495, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 495, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 495, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 495, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 496, }, Token { kind: Identifier, lexeme: "x123", computed_lexeme: None, line: 496, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 496, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 496, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 496, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 496, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 496, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 496, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 496, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 496, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 496, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 496, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 496, }, Token { kind: String, lexeme: "\"@x123\"", computed_lexeme: None, line: 496, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 496, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 496, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 496, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 497, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 499, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 499, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 499, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 499, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 499, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "traceback", computed_lexeme: None, line: 499, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 499, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 500, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 500, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "match", computed_lexeme: None, line: 500, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 500, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 500, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 500, }, Token { kind: String, lexeme: "\"^[^ ]* @x123\"", computed_lexeme: None, 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: "string", computed_lexeme: None, line: 501, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 501, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 501, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 501, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 501, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 501, }, Token { kind: String, lexeme: "\"in metamethod 'close'\"", computed_lexeme: None, line: 501, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 501, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 501, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 502, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 505, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 506, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 506, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 506, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 506, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 506, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 507, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 507, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 507, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 507, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 507, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 507, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 507, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 507, }, Token { kind: Identifier, lexeme: "os", computed_lexeme: None, line: 508, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 508, }, Token { kind: Identifier, lexeme: "exit", computed_lexeme: None, line: 508, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 508, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 508, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 508, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 509, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 510, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 510, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 510, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 510, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 510, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 510, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 510, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 510, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 510, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 511, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 511, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 511, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 511, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 511, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 512, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 512, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 512, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 512, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 512, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 512, }, Token { kind: String, lexeme: "\"variable 'x' got a non%-closable value\"", computed_lexeme: None, line: 512, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 512, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 512, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 514, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 514, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 514, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 514, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 514, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "xyz", computed_lexeme: None, line: 515, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 515, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 515, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 515, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 515, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 515, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 515, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 515, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 515, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 515, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 515, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 515, }, Token { kind: Identifier, lexeme: "getmetatable", computed_lexeme: None, line: 516, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "xyz", computed_lexeme: None, line: 516, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 516, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 516, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 516, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 516, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 516, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 517, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 518, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 518, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 518, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 518, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 518, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 518, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 518, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 518, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 518, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 519, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 519, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 519, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 519, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 519, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 519, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 519, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 519, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 519, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 519, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 519, }, Token { kind: String, lexeme: "\"metamethod 'close'\"", computed_lexeme: None, line: 519, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 519, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 519, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 521, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 521, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 521, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 521, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 521, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "a1", computed_lexeme: None, line: 522, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 522, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 522, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "func2close", 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: Identifier, lexeme: "_", computed_lexeme: None, line: 522, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 522, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 522, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 523, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 523, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 523, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 523, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 523, }, Token { kind: String, lexeme: "\"number value\"", computed_lexeme: None, line: 523, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 523, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 523, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 524, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 524, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), 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: 526, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 526, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 526, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 526, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 526, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 526, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 526, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 526, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 526, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 526, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 526, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 526, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 526, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 526, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 526, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 526, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 526, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "a3", computed_lexeme: None, line: 527, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 527, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 527, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "func2close", 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: Identifier, lexeme: "_", computed_lexeme: None, line: 527, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 527, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 527, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 528, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 528, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 528, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 528, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 528, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 528, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 529, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 529, }, Token { kind: Number, lexeme: "123", computed_lexeme: Some( "123", ), 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: Identifier, lexeme: "getmetatable", computed_lexeme: None, line: 531, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 531, }, Token { kind: Identifier, lexeme: "a2", computed_lexeme: None, line: 531, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 531, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 531, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 531, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 531, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 531, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 532, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 533, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 533, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 533, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 533, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 533, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 534, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 534, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "stat", computed_lexeme: None, line: 534, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 534, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 534, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 534, }, Token { kind: Number, lexeme: "12", computed_lexeme: Some( "12", ), line: 534, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 534, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 535, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 538, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 539, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 539, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 539, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 539, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 539, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 540, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 540, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 540, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 540, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 540, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 541, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 541, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 541, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 541, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 541, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 541, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 541, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 541, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 541, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 541, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 541, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "xx", computed_lexeme: None, line: 542, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 542, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 542, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 542, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 542, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 542, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 542, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 542, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 542, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 543, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 543, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 543, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 543, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 543, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 543, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 544, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 544, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 544, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 544, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 544, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 544, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 544, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 544, }, Token { kind: String, lexeme: "\"xx\"", computed_lexeme: None, line: 544, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 545, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 545, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 546, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 546, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 546, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 546, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 546, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 546, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 546, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 546, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 546, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 547, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 547, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 548, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 548, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 548, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 548, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 548, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 548, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 548, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 548, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 548, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 549, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 549, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 549, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 549, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 549, }, Token { kind: Number, lexeme: "40", computed_lexeme: Some( "40", ), line: 549, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 550, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 551, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 551, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 551, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 551, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 551, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 551, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 551, }, Token { kind: Identifier, lexeme: "assert", 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: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 552, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 552, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 552, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 552, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 552, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 552, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 552, }, Token { kind: Number, lexeme: "40", computed_lexeme: Some( "40", ), line: 552, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 552, }, Token { kind: Identifier, lexeme: "d", computed_lexeme: None, line: 552, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 552, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 552, }, Token { kind: RightParen, 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: Identifier, lexeme: "track", computed_lexeme: None, line: 553, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 553, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 553, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 553, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 553, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 553, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 553, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 553, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 553, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 553, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 553, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 553, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 553, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 553, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 553, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 553, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 553, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 553, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 553, }, Token { kind: String, lexeme: "\"xx\"", computed_lexeme: None, line: 553, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 553, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 556, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 556, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 556, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 556, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 556, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 557, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 557, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 557, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 557, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 557, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "x0", computed_lexeme: None, line: 558, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 558, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 558, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 558, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 558, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 558, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 558, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 558, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 558, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 559, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 559, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 559, }, Token { kind: Number, lexeme: "202", computed_lexeme: Some( "202", ), line: 559, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 559, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 560, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 560, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 560, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 560, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 560, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 560, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 560, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 560, }, Token { kind: String, lexeme: "\"x0\"", computed_lexeme: None, line: 560, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 561, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 561, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 562, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 562, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 562, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 562, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 562, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 562, }, Token { kind: Function, lexeme: "function", 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: Local, lexeme: "local", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "xx", computed_lexeme: None, line: 563, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 563, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 563, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 563, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 563, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 563, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 563, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 563, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 563, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 564, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 564, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 564, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 564, }, Token { kind: Number, lexeme: "101", computed_lexeme: Some( "101", ), line: 564, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 564, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 565, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 565, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 565, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 565, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 565, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 565, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 565, }, Token { kind: String, lexeme: "\"xx\"", computed_lexeme: None, line: 565, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 566, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 566, }, Token { kind: Number, lexeme: "202", computed_lexeme: Some( "202", ), line: 566, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 566, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 567, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 567, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 568, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 568, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 568, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 568, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 568, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 568, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 568, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 568, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 568, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 569, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 569, }, Token { kind: Number, lexeme: "101", computed_lexeme: Some( "101", ), line: 569, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 569, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 570, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 570, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 571, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 571, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 571, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 571, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 571, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 571, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 571, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 571, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 571, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 572, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 572, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 572, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 572, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 572, }, Token { kind: Number, lexeme: "40", computed_lexeme: Some( "40", ), line: 572, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 573, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 574, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 574, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 574, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 574, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 574, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 575, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 575, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 575, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 575, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 575, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 575, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 575, }, Token { kind: Number, lexeme: "202", computed_lexeme: Some( "202", ), line: 575, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 575, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 576, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 576, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 576, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 576, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 576, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 576, }, Token { kind: String, lexeme: "\"foo\"", computed_lexeme: None, line: 576, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 576, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 576, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 576, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 576, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 576, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 576, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 576, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 576, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 576, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 576, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 576, }, Token { kind: String, lexeme: "\"xx\"", computed_lexeme: None, line: 576, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 576, }, Token { kind: Identifier, lexeme: "track", computed_lexeme: None, line: 577, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 577, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 577, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 577, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 577, }, Token { kind: String, lexeme: "\"x0\"", computed_lexeme: None, line: 577, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 577, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 578, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 581, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 581, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 581, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 581, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 581, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 582, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 582, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 582, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 582, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 582, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 582, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 582, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 582, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 583, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 583, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 583, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 583, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 583, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 583, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 583, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 583, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 584, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "t1", computed_lexeme: None, line: 584, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 584, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 584, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "t2", computed_lexeme: None, line: 584, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 584, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 584, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 584, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 584, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 585, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 586, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 589, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 591, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 591, }, Token { kind: Identifier, lexeme: "overflow", computed_lexeme: None, line: 591, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 591, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 591, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 591, }, Token { kind: Identifier, lexeme: "overflow", computed_lexeme: None, line: 592, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 592, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 592, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 592, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 592, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 592, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 593, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 597, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "errorh", computed_lexeme: None, line: 597, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 597, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 597, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, 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: "string", computed_lexeme: None, line: 598, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 598, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 598, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 598, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 598, }, Token { kind: String, lexeme: "\"stack overflow\"", computed_lexeme: None, line: 598, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 598, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 598, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 599, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 599, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 599, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 599, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 599, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 599, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "o", computed_lexeme: None, line: 599, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 599, }, Token { kind: Identifier, lexeme: "o", computed_lexeme: None, line: 599, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 599, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 599, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 599, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 599, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 599, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 599, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 599, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 600, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 600, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 601, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 603, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 603, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 604, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 604, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 604, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 606, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 606, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 606, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 606, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 606, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 606, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 606, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 606, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 606, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 606, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 608, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 608, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 608, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 608, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 608, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 608, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 608, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 608, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 608, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 609, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 609, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 609, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 609, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 609, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 609, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 610, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 610, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 610, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 610, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 610, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 610, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 611, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 611, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 611, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 612, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 612, }, Token { kind: Identifier, lexeme: "tracegc", computed_lexeme: None, line: 613, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 613, }, Token { kind: Identifier, lexeme: "stop", computed_lexeme: None, line: 613, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 613, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 613, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 614, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 614, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "xpcall", computed_lexeme: None, line: 614, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "overflow", computed_lexeme: None, line: 614, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 614, }, Token { kind: Identifier, lexeme: "errorh", 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: "tracegc", computed_lexeme: None, line: 615, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 615, }, Token { kind: Identifier, lexeme: "start", computed_lexeme: None, line: 615, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 615, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 615, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 616, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 616, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 617, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 617, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 617, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 618, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 618, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 618, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 618, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 618, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 618, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 618, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 618, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 618, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 618, }, Token { kind: Identifier, lexeme: "flag", computed_lexeme: None, line: 618, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 618, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 618, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 618, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 618, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 618, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 618, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 619, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 622, }, Token { kind: Identifier, lexeme: "rawget", computed_lexeme: None, line: 622, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 622, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 622, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 622, }, Token { kind: String, lexeme: "\"T\"", computed_lexeme: None, line: 622, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 622, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 622, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 624, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 624, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 624, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 624, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 624, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 625, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 625, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 625, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 625, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 625, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 625, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 625, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 625, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 625, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 625, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 625, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 625, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 625, }, Token { kind: Identifier, lexeme: "alloccount", computed_lexeme: None, line: 625, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 625, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 625, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 625, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 625, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 626, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 626, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 626, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "setmetatable", computed_lexeme: None, line: 626, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 626, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 626, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 626, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 626, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 626, }, Token { kind: Identifier, lexeme: "__close", computed_lexeme: None, line: 627, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 627, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 627, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 627, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 627, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 628, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 628, }, Token { kind: Identifier, lexeme: "alloccount", computed_lexeme: None, line: 628, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 628, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 628, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 628, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 628, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 628, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 628, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 628, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 628, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 628, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 629, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 630, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 630, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 631, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 631, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), 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: "stack", computed_lexeme: None, line: 634, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 634, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 634, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 634, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 638, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 638, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 638, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 638, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 638, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 639, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 639, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 639, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 639, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 639, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 639, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 641, }, Token { kind: Identifier, lexeme: "closemsg", computed_lexeme: None, line: 641, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 642, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 642, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 642, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 642, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 642, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 642, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 642, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 642, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 642, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 642, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 642, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 643, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 643, }, Token { kind: Identifier, lexeme: "alloccount", computed_lexeme: None, line: 643, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 643, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 643, }, Token { kind: Identifier, lexeme: "closemsg", computed_lexeme: None, line: 644, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 644, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 644, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 645, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 645, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 648, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 648, }, Token { kind: Identifier, lexeme: "enter", computed_lexeme: None, line: 648, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 648, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 648, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 648, }, Token { kind: Identifier, lexeme: "stack", computed_lexeme: None, line: 649, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 649, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 649, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 649, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 650, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 650, }, Token { kind: Identifier, lexeme: "alloccount", computed_lexeme: None, line: 650, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 650, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 650, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 650, }, Token { kind: Identifier, lexeme: "closemsg", computed_lexeme: None, line: 651, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 651, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 651, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 652, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 652, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 653, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 655, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 655, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 655, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 655, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 655, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 656, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 656, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 656, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 656, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 656, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 656, }, Token { kind: Identifier, lexeme: "enter", computed_lexeme: None, line: 656, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 656, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 656, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 656, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 657, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 657, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 657, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 657, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 657, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 658, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 660, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 660, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 660, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 660, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 660, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 660, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 660, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 660, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 660, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 661, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 661, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 661, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 661, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 661, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 661, }, Token { kind: Identifier, lexeme: "closemsg", computed_lexeme: None, line: 661, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 661, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 661, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 661, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 665, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 665, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 665, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 665, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 665, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "xxx", computed_lexeme: None, line: 666, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 666, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 666, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 666, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 666, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 666, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 666, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 666, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 666, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 667, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 667, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 667, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 667, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 667, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 667, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 667, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 668, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 668, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), 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: "xx", computed_lexeme: None, line: 670, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 670, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 670, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 670, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 670, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 670, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 670, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 670, }, Token { kind: Identifier, lexeme: "msg", 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: "msg", computed_lexeme: None, line: 671, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 671, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 671, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 671, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 671, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 672, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 672, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 673, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 673, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 673, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 673, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 673, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 673, }, Token { kind: Identifier, lexeme: "enter", computed_lexeme: None, line: 673, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 673, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 673, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 673, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 674, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 674, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 674, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 674, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 674, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 675, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 677, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 677, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 677, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 677, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 677, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 677, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 677, }, Token { kind: Identifier, lexeme: "test", computed_lexeme: None, line: 677, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 677, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 678, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 678, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 678, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 678, }, Token { kind: Number, lexeme: "1000", computed_lexeme: Some( "1000", ), line: 678, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 678, }, Token { kind: Identifier, lexeme: "closemsg", computed_lexeme: None, line: 678, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 678, }, Token { kind: String, lexeme: "\"not enough memory\"", computed_lexeme: None, line: 678, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 678, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 680, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 681, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 681, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 681, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 682, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 682, }, Token { kind: Equals, lexeme: "=", 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: "rep", computed_lexeme: None, line: 682, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 682, }, Token { kind: String, lexeme: "'a'", computed_lexeme: None, line: 682, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 682, }, Token { kind: Number, lexeme: "10000", computed_lexeme: Some( "10000", ), line: 682, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 682, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 683, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 683, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 683, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 683, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 683, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 683, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 683, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 683, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 684, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 684, }, Token { kind: String, lexeme: "\"stop\"", computed_lexeme: None, line: 684, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 684, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 685, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 685, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 685, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 685, }, Token { kind: Identifier, lexeme: "upper", computed_lexeme: None, line: 685, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 685, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 685, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 685, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 687, }, Token { kind: LeftParen, 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: "totalmem", 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: Minus, lexeme: "-", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 687, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 687, }, Token { kind: Number, lexeme: "11000", computed_lexeme: Some( "11000", ), line: 687, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 687, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 688, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 688, }, Token { kind: String, lexeme: "\"restart\"", computed_lexeme: None, line: 688, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 688, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 689, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 691, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 692, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 692, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 692, }, Token { kind: Number, lexeme: "10000", computed_lexeme: Some( "10000", ), line: 692, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 693, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 693, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 693, }, Token { kind: Number, lexeme: "2000", computed_lexeme: Some( "2000", ), line: 693, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 695, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 695, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "rep", computed_lexeme: None, line: 695, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 695, }, Token { kind: String, lexeme: "\"a\"", computed_lexeme: None, line: 695, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 695, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 695, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 695, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 698, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 698, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 698, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 698, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 698, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 698, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 698, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 698, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 700, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 700, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 700, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 700, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 700, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 700, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 700, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 702, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 702, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 702, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 702, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 702, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 702, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 702, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 703, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 703, }, Token { kind: String, lexeme: "\"stop\"", computed_lexeme: None, line: 703, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 703, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 706, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 706, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 706, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 706, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 706, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 706, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 706, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 706, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 707, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 707, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 707, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 707, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 707, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 707, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 707, }, Token { kind: Identifier, lexeme: "concat", computed_lexeme: None, line: 707, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 707, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 707, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 707, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 707, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 709, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 709, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 709, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 709, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 709, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 709, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 709, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 709, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 709, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 709, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 709, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 709, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 712, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 712, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 712, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 712, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 712, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 712, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 712, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 712, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 712, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 712, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 713, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 713, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 713, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 713, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 713, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 713, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 713, }, Token { kind: Identifier, lexeme: "concat", computed_lexeme: None, line: 713, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 713, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 713, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 713, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 713, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 715, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 715, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 715, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 715, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 715, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 715, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 715, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 715, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 715, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 715, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 715, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 715, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 718, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 718, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 718, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 718, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 718, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 718, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 718, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 718, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 718, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 718, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 718, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 718, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 719, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 719, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 719, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 719, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 719, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 719, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 719, }, Token { kind: Identifier, lexeme: "concat", computed_lexeme: None, line: 719, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 719, }, Token { kind: Identifier, lexeme: "a", 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: 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: "totalmem", computed_lexeme: None, line: 721, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 721, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 721, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 721, }, Token { kind: LessThanOrEqual, lexeme: "<=", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 721, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 721, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 724, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 724, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 724, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 724, }, Token { kind: Identifier, lexeme: "m", computed_lexeme: None, line: 724, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 724, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 724, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 724, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 724, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 724, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 724, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 724, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 725, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 725, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 725, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "concat", computed_lexeme: None, line: 725, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 725, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 725, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 725, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 725, }, Token { kind: Star, lexeme: "*", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "lim", computed_lexeme: None, line: 725, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 725, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 727, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 727, }, Token { kind: Identifier, lexeme: "totalmem", computed_lexeme: None, line: 727, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 727, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 727, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 727, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 728, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 728, }, Token { kind: String, lexeme: "\"restart\"", computed_lexeme: None, line: 728, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 728, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 730, }, Token { kind: String, lexeme: "'+'", computed_lexeme: None, line: 730, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 731, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 734, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 736, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 736, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 736, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 736, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 736, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 738, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 738, }, Token { kind: Identifier, lexeme: "hook", computed_lexeme: None, line: 738, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 738, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 738, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 738, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 739, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 739, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 739, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 739, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 739, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 739, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 739, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 739, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 739, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 739, }, Token { kind: String, lexeme: "\" \"", computed_lexeme: None, line: 739, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 739, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 739, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 739, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 739, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 739, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 739, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 739, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 739, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 739, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 739, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 739, }, Token { kind: String, lexeme: "\"?\"", computed_lexeme: None, line: 739, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 739, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 740, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 743, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 743, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 743, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 743, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 743, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 743, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 743, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 743, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 743, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 743, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 743, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 744, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 744, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 744, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 744, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 744, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 744, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 744, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 744, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 744, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 745, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 745, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 747, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 747, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 747, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 747, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 747, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 747, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 747, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 748, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 748, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 748, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 748, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 748, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 748, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 748, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 748, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 748, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 749, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 749, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 751, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 751, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 751, }, Token { kind: Identifier, lexeme: "hook", computed_lexeme: None, line: 751, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 751, }, Token { kind: String, lexeme: "\"r\"", computed_lexeme: None, line: 751, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 751, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 752, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 752, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 752, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 752, }, Token { kind: Identifier, lexeme: "testC", computed_lexeme: None, line: 752, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 752, }, Token { kind: MultilineString, lexeme: "[[\n toclose 2 # x\n pushnum 10\n pushint 20\n toclose 3 # y\n return 2\n ]]", computed_lexeme: None, line: 758, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 758, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 758, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 758, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 758, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 758, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 758, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 759, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 759, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 759, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 759, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 759, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 762, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 762, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 762, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 762, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"return sethook\"", computed_lexeme: None, line: 763, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 763, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"return ?\"", computed_lexeme: None, line: 763, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 763, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"return ?\"", computed_lexeme: None, line: 763, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 763, }, Token { kind: String, lexeme: "\"return testC\"", computed_lexeme: None, line: 763, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 763, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 763, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 765, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 765, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 765, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 765, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 765, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 765, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 765, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 765, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 765, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 765, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 766, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 767, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 770, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 771, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 771, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 771, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 771, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 771, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 773, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "hook", computed_lexeme: None, line: 773, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 773, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 773, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 774, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 774, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 774, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 774, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 774, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 774, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "event", computed_lexeme: None, line: 774, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 774, }, Token { kind: String, lexeme: "\" \"", computed_lexeme: None, line: 774, }, Token { kind: DoubleDot, lexeme: "..", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 774, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "getinfo", computed_lexeme: None, line: 774, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 774, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 774, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 774, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 774, }, Token { kind: Identifier, lexeme: "name", computed_lexeme: None, line: 774, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 775, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 777, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 777, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 777, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 777, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 777, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 777, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 778, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 778, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 778, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 778, }, Token { kind: LeftParen, 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: "_", computed_lexeme: None, line: 778, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 778, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 778, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 779, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 779, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 779, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 779, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 779, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 779, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 779, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 779, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 779, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 780, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 780, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 782, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 782, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 782, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 782, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 782, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 782, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 782, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 782, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 782, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 783, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 783, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 783, }, Token { kind: Identifier, lexeme: "hook", computed_lexeme: None, line: 783, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 783, }, Token { kind: String, lexeme: "\"r\"", computed_lexeme: None, line: 783, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 783, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 784, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 784, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 786, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 786, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 787, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 789, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 789, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 789, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 789, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 789, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 789, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 789, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 789, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 789, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 789, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 789, }, Token { kind: Identifier, lexeme: "debug", computed_lexeme: None, line: 790, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "sethook", computed_lexeme: None, line: 790, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 790, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 790, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 791, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 791, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 791, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 791, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 791, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 791, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 791, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 791, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 791, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 791, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 791, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 791, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 792, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 792, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 792, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 792, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 793, }, Token { kind: String, lexeme: "\"return sethook\"", computed_lexeme: None, line: 793, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 793, }, Token { kind: String, lexeme: "\"return close\"", computed_lexeme: None, line: 793, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 793, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 793, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 793, }, Token { kind: String, lexeme: "\"return close\"", computed_lexeme: None, line: 793, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 793, }, Token { kind: String, lexeme: "\"return foo\"", computed_lexeme: None, line: 793, }, Token { kind: RightBrace, lexeme: "}", 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: Identifier, lexeme: "print", computed_lexeme: None, line: 797, }, Token { kind: String, lexeme: "\"to-be-closed variables in coroutines\"", computed_lexeme: None, line: 797, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 799, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 802, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 802, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 802, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 802, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 802, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 803, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 803, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 803, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 803, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 803, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 803, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 803, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 803, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 803, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 803, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 804, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 804, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 804, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 804, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 804, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 804, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 804, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 804, }, Token { kind: String, lexeme: "\"nowX\"", computed_lexeme: None, line: 804, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 807, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 807, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 807, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 807, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 807, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 807, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 807, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 807, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 807, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 808, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 808, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 808, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 808, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 808, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 808, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 809, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 809, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 809, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 809, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 809, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 809, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 809, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 809, }, Token { kind: String, lexeme: "\"x1\"", computed_lexeme: None, line: 809, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 810, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 810, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 810, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 810, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 810, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 811, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 811, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 811, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 811, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 811, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 811, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 811, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 811, }, Token { kind: String, lexeme: "\"x2\"", computed_lexeme: None, line: 811, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 812, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 812, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 814, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 814, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 814, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 814, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 814, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 814, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 815, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 816, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 816, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 816, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 816, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 816, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 816, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 816, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 816, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 816, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 817, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 817, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 817, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 817, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 817, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 817, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 818, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 818, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 818, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 818, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 818, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 818, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 818, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 818, }, Token { kind: String, lexeme: "\"z1\"", computed_lexeme: None, line: 818, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 819, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 819, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 819, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 819, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 819, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 819, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 820, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 820, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 820, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 820, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 820, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 820, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 820, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 820, }, Token { kind: String, lexeme: "\"z2\"", computed_lexeme: None, line: 820, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 821, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 821, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 822, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 824, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 824, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 824, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 824, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 824, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 824, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 824, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 824, }, Token { kind: String, lexeme: "\"nowY\"", computed_lexeme: None, line: 824, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 827, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 827, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 827, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 827, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 827, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 827, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 827, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 827, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 827, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 828, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 828, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 828, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 828, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 828, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 828, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 829, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 829, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 829, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 829, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 829, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 829, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 829, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 829, }, Token { kind: String, lexeme: "\"y1\"", computed_lexeme: None, line: 829, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 830, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 830, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 830, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 830, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 830, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 830, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 831, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 831, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 831, }, Token { kind: Identifier, lexeme: "trace", computed_lexeme: None, line: 831, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 831, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 831, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 831, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 831, }, Token { kind: String, lexeme: "\"y2\"", computed_lexeme: None, line: 831, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 832, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 832, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 834, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 834, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 834, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 834, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 834, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 834, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 835, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 835, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 836, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 836, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 838, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 838, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 838, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 838, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 838, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 838, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 838, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 838, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 839, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 839, }, Token { kind: Identifier, lexeme: "co", 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: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 839, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, 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: "co", 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: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 840, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 840, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 840, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 841, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 841, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 841, }, Token { kind: Identifier, lexeme: "co", 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: RightBrace, lexeme: "}", 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: True, lexeme: "true", computed_lexeme: None, line: 841, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 841, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 841, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 841, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 841, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 841, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 841, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 841, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 841, }, Token { kind: Identifier, lexeme: "checktable", computed_lexeme: None, line: 842, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 842, }, Token { kind: Identifier, lexeme: "trace", 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: "\"nowX\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"z1\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"z2\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"nowY\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"y1\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"y2\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"x1\"", computed_lexeme: None, line: 842, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 842, }, Token { kind: String, lexeme: "\"x2\"", 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: End, lexeme: "end", computed_lexeme: None, line: 843, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 846, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 850, }, Token { kind: Identifier, lexeme: "extrares", computed_lexeme: None, line: 850, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 852, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "check", computed_lexeme: None, line: 852, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "body", computed_lexeme: None, line: 852, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 852, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 852, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 852, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 852, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 852, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 853, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 853, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 853, }, Token { kind: Identifier, lexeme: "pack", computed_lexeme: None, line: 853, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 853, }, Token { kind: TripleDot, lexeme: "...", computed_lexeme: None, line: 853, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 853, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 854, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 854, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 854, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 854, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 854, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 854, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 854, }, Token { kind: Identifier, lexeme: "body", computed_lexeme: None, line: 854, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 854, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 855, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 855, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 855, }, Token { kind: Identifier, lexeme: "extrares", computed_lexeme: None, line: 856, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 856, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 856, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 856, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 856, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 857, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 858, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 858, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "pack", computed_lexeme: None, line: 858, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 858, }, Token { kind: Identifier, lexeme: "co", 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: 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: "res", computed_lexeme: None, line: 859, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 859, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 859, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 859, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 859, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 859, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 859, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 859, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 859, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 859, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 859, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 859, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 859, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "res2", computed_lexeme: None, line: 860, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 860, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "pack", computed_lexeme: None, line: 860, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 860, }, Token { kind: Identifier, lexeme: "co", 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: 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: "res2", computed_lexeme: None, line: 861, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 861, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 861, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 861, }, Token { kind: Identifier, lexeme: "n", computed_lexeme: None, line: 861, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 861, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 862, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 862, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 862, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 862, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 862, }, Token { kind: Hash, lexeme: "#", computed_lexeme: None, line: 862, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 862, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 862, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 863, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 863, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 863, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 863, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 863, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 863, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 864, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 864, }, Token { kind: Identifier, lexeme: "res2", computed_lexeme: None, line: 864, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 864, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 864, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 864, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 864, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 864, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 864, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 864, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 864, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 864, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 865, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 866, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 866, }, Token { kind: Identifier, lexeme: "res2", computed_lexeme: None, line: 866, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 866, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 866, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 866, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 866, }, Token { kind: Identifier, lexeme: "t", computed_lexeme: None, line: 866, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 866, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 866, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 866, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 866, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 867, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 868, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 869, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 871, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 871, }, Token { kind: Identifier, lexeme: "foo", 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: Local, lexeme: "local", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 872, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 872, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 872, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 872, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 872, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 872, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 872, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 872, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 873, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 873, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 873, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "func2close", 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: Identifier, lexeme: "self", computed_lexeme: None, line: 873, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 873, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 874, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 874, }, Token { kind: Identifier, lexeme: "self", computed_lexeme: None, line: 874, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 874, }, Token { kind: Identifier, lexeme: "extrares", computed_lexeme: None, line: 874, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 874, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 875, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 875, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 875, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 875, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 875, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 875, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 876, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 876, }, Token { kind: Identifier, lexeme: "extrares", computed_lexeme: None, line: 877, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 877, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 877, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 878, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 878, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 878, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 878, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 878, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 878, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 878, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 878, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 878, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 879, }, Token { kind: Identifier, lexeme: "check", computed_lexeme: None, line: 880, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 880, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 880, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 880, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 880, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 880, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 880, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 880, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 880, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 880, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), 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: "extrares", computed_lexeme: None, line: 881, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 881, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 881, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 881, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 883, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 883, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 883, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 883, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 883, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 884, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 884, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 884, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 884, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 884, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 884, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 884, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 884, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 884, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 884, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 884, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 884, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 885, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 886, }, Token { kind: Identifier, lexeme: "check", computed_lexeme: None, line: 887, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 887, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 887, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 887, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 887, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 887, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 889, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 889, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 889, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 889, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 889, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 890, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 890, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 890, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 890, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 890, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 890, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 890, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 890, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 891, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 891, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 891, }, Token { kind: Identifier, lexeme: "z", computed_lexeme: None, line: 891, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 891, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 891, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 891, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 891, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 892, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 892, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 893, }, Token { kind: Identifier, lexeme: "check", computed_lexeme: None, line: 894, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 894, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 894, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 894, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 894, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 894, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 894, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 894, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 896, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 896, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 896, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 896, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 896, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 897, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 897, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 897, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 897, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 897, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 897, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 897, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 897, }, 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: RightParen, lexeme: ")", computed_lexeme: None, line: 897, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "extra", computed_lexeme: None, line: 898, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 898, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 898, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 898, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 898, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 898, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 898, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 898, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 899, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 899, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 899, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 899, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 899, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 899, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 899, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 899, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 899, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 899, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 899, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 899, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 900, }, Token { kind: Identifier, lexeme: "check", computed_lexeme: None, line: 901, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 901, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 901, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 901, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 901, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 901, }, Token { kind: Identifier, lexeme: "table", computed_lexeme: None, line: 901, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 901, }, Token { kind: Identifier, lexeme: "unpack", computed_lexeme: None, line: 901, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 901, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 901, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 901, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 901, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 901, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 901, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 901, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 901, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 901, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 902, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 904, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 907, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 907, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 907, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 907, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 907, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 907, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 907, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 907, }, Token { kind: LeftParen, lexeme: "(", 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: Function, lexeme: "function", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 908, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 908, }, Token { kind: Identifier, lexeme: "err", 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: "z", computed_lexeme: None, line: 909, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 909, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 909, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 909, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 909, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 909, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 909, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 909, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 909, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 910, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 910, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 910, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 910, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 910, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 910, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 910, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 910, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 910, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 910, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 910, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 910, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 911, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 911, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 911, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 911, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 911, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 911, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 912, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 912, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 912, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 912, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 913, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 913, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 915, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 915, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 915, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 915, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 915, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 915, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 915, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 915, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 915, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 917, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 917, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 917, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 917, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 917, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 917, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 917, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 917, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 917, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 917, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 917, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 917, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 918, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 918, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 918, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 918, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 918, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 918, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 919, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 919, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 919, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 919, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 919, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 919, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 919, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 919, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 920, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 920, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 922, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 922, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 922, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 922, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 922, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 922, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 922, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 922, }, Token { kind: Identifier, lexeme: "msg", 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: Identifier, lexeme: "msg", computed_lexeme: None, line: 923, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 923, }, Token { kind: Or, lexeme: "or", computed_lexeme: None, line: 923, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 923, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 923, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 923, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 923, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 923, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 923, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 923, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 923, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 924, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 924, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 924, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 924, }, Token { kind: String, lexeme: "\"x\"", 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: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 925, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 925, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 925, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 926, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 926, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 928, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 928, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 928, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 928, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 928, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 928, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 928, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 928, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 928, }, Token { kind: Else, lexeme: "else", computed_lexeme: None, line: 928, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 928, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 928, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 928, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 928, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 928, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 929, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 931, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 931, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 931, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 931, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 931, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 931, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 931, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 931, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 931, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 931, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 931, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 932, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 932, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 932, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 932, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 932, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 932, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 932, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 932, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 932, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 932, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 932, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 933, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 933, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 933, }, Token { kind: Identifier, lexeme: "foo", computed_lexeme: None, line: 933, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 933, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 933, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 933, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 934, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 934, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 936, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 936, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 936, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 936, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 936, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 936, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 936, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 936, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 937, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 937, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 937, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 937, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 937, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 937, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 937, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 937, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 937, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 937, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 938, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 938, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 938, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 938, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 938, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 939, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 939, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 939, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 939, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 939, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 939, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 939, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 939, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 940, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 940, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 940, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 940, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 940, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 940, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 940, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 941, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 941, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 941, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 941, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 941, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 941, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 941, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 941, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 941, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 942, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 942, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 942, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 942, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 942, }, Token { kind: LeftParen, lexeme: "(", 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: "a", computed_lexeme: None, line: 943, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 943, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 943, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 943, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 943, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 943, }, Token { kind: Identifier, lexeme: "c", computed_lexeme: None, line: 943, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 943, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 943, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 943, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 945, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 945, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 945, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 945, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 945, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 945, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 945, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 945, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 946, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 946, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 946, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 946, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 946, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 946, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 946, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 946, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 946, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 946, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 947, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 947, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 947, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 947, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 947, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 947, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 947, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 948, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 948, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 948, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 948, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 948, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 948, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 948, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 948, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 948, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 948, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 949, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 949, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 949, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 949, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 949, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 949, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 949, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 950, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 950, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 950, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 950, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 950, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 950, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 950, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 950, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 950, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 950, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 951, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 951, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 951, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 951, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 951, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 952, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 952, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 952, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 952, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 952, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 952, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 952, }, Token { kind: Number, lexeme: "21", computed_lexeme: Some( "21", ), line: 952, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 952, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 954, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 954, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 954, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 954, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 954, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 954, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 954, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 954, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 955, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 955, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 955, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 955, }, Token { kind: String, lexeme: "\"x\"", computed_lexeme: None, line: 955, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 955, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 955, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 955, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 955, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 955, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 956, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 956, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 956, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 956, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 956, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 956, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 956, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 957, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 957, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 957, }, Token { kind: String, lexeme: "\"y\"", computed_lexeme: None, line: 957, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 957, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 957, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 957, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 957, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 958, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 958, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 958, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 958, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 958, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 958, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 958, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 959, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 959, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 959, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 959, }, Token { kind: String, lexeme: "\"z\"", computed_lexeme: None, line: 959, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 959, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 959, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 959, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 959, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 959, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 960, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 960, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 960, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 960, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 960, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 960, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 960, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 960, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 961, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 961, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 961, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 961, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 961, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 961, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 961, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 961, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 961, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 961, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 961, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 962, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 965, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 967, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 967, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 967, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 967, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 968, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 968, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 968, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 968, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 969, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 969, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 969, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 969, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 969, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 969, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 969, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 969, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 969, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 969, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 970, }, Token { kind: Identifier, lexeme: "xv", computed_lexeme: None, line: 970, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 970, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 970, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 970, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 970, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 970, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 970, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 970, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 970, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 970, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 970, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 970, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 970, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 970, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 970, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 971, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "yv", computed_lexeme: None, line: 972, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 972, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 972, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 972, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 972, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 972, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 972, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 972, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 972, }, Token { kind: True, lexeme: "true", computed_lexeme: None, line: 972, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 972, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 972, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 973, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 973, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 973, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 973, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 973, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 973, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 974, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 975, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 975, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 975, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 975, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 975, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 975, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 976, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 976, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 976, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 976, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 977, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 977, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 979, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 979, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 979, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 979, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 979, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 979, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 980, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 980, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 980, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 980, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 980, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 980, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 980, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 980, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 980, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 980, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 980, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 980, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 981, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 981, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 981, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 981, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 981, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 982, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 982, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 982, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 982, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 982, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 982, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 982, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 982, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 982, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 982, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 982, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 983, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 983, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 983, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 983, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 983, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 983, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 983, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 983, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 983, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 984, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 984, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 984, }, Token { kind: Identifier, lexeme: "a", computed_lexeme: None, line: 984, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 984, }, Token { kind: Identifier, lexeme: "b", computed_lexeme: None, line: 984, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 984, }, Token { kind: Number, lexeme: "23", computed_lexeme: Some( "23", ), line: 984, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 984, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 984, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 984, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 984, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 984, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 985, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 988, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 990, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 990, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 990, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 990, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 991, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 991, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 991, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 991, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 991, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 991, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 991, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 991, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 991, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 991, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "xx", computed_lexeme: None, line: 992, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 992, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 992, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 992, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 992, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 992, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 992, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 992, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 992, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 993, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 993, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 993, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 993, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 993, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 993, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 994, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 994, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 994, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 994, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 994, }, Token { kind: String, lexeme: "\"@XXX\"", computed_lexeme: None, line: 994, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 994, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 994, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 995, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 995, }, Token { kind: String, lexeme: "\"@YYY\"", computed_lexeme: None, line: 995, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 995, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 996, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 996, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 997, }, Token { kind: Identifier, lexeme: "xv", computed_lexeme: None, line: 997, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 997, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 997, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 997, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 997, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 997, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 997, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 997, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 997, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 997, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 998, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 998, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 998, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 998, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 998, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 998, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 998, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 998, }, Token { kind: String, lexeme: "\"@XXX\"", computed_lexeme: None, line: 998, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 998, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 999, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 999, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1000, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1000, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1000, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1000, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1000, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1000, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 1001, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1001, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 1001, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1001, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1002, }, Token { kind: RightParen, 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: Identifier, lexeme: "co", computed_lexeme: None, line: 1003, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1003, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1003, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1003, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1003, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1003, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1003, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1003, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1003, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1003, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1003, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1003, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1003, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1004, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1004, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1004, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1004, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1004, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1004, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1004, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1004, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1004, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1004, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1005, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1005, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1005, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 1005, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1005, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1005, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1005, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1005, }, Token { kind: String, lexeme: "\"@YYY\"", computed_lexeme: None, line: 1005, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1005, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1005, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1007, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1007, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1007, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1007, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1008, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1008, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1008, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1008, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1009, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1009, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1009, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1009, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1009, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1009, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1009, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1009, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1009, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "xx", computed_lexeme: None, line: 1010, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 1010, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 1010, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1010, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1010, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1010, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 1010, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 1010, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1010, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1011, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1011, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1011, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1011, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1011, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1011, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1012, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 1012, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1012, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "err", computed_lexeme: None, line: 1012, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1012, }, Token { kind: String, lexeme: "\"XXX\"", computed_lexeme: None, line: 1012, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1012, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1012, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 1013, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1013, }, Token { kind: String, lexeme: "\"YYY\"", computed_lexeme: None, line: 1013, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1013, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1014, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1014, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "xv", computed_lexeme: None, line: 1015, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 1015, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 1015, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1015, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1015, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1015, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1015, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1015, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1016, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1016, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1016, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1016, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1016, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1016, }, Token { kind: Identifier, lexeme: "error", computed_lexeme: None, line: 1016, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1016, }, Token { kind: String, lexeme: "\"XXX\"", computed_lexeme: None, line: 1016, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1016, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1017, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1017, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1018, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1018, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1018, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1018, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1018, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1018, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1019, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 1019, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1020, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1020, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1021, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1021, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1021, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1021, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1021, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1021, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1021, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1021, }, Token { kind: Semicolon, lexeme: ";", computed_lexeme: None, line: 1021, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1021, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1021, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1021, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1021, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1021, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1021, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1022, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1022, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1022, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1022, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1022, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1022, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1022, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1022, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1022, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1023, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1023, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1023, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1023, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1023, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1023, }, Token { kind: Identifier, lexeme: "y", computed_lexeme: None, line: 1023, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1023, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1023, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1023, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1025, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1025, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1025, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1025, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1025, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 1025, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1025, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1025, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1025, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1025, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1025, }, Token { kind: String, lexeme: "\"%w+%.%w+:%d+: YYY\"", computed_lexeme: None, line: 1025, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1025, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1025, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1026, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1030, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1030, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1031, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1031, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1031, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1031, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1031, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1031, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1031, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1031, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1031, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1033, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 1033, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 1033, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1033, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1033, }, Token { kind: Function, lexeme: "function", 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: Identifier, lexeme: "os", computed_lexeme: None, line: 1033, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "exit", computed_lexeme: None, line: 1033, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1033, }, Token { kind: False, lexeme: "false", computed_lexeme: None, line: 1033, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1033, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1033, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1033, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1034, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1034, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1034, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1035, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1035, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1035, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1035, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1035, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1036, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1036, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1037, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1037, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1037, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1038, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1038, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1038, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1038, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1038, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1038, }, Token { kind: Identifier, lexeme: "collectgarbage", computed_lexeme: None, line: 1039, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1039, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1039, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 1042, }, Token { kind: Identifier, lexeme: "rawget", computed_lexeme: None, line: 1042, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1042, }, Token { kind: Identifier, lexeme: "_G", computed_lexeme: None, line: 1042, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1042, }, Token { kind: String, lexeme: "\"T\"", computed_lexeme: None, line: 1042, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1042, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 1042, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 1043, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1043, }, Token { kind: String, lexeme: "\"to-be-closed variables x coroutines in C\"", computed_lexeme: None, line: 1043, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1043, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1044, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1045, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 1045, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1045, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1045, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1046, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1046, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1046, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1046, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1047, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1047, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1047, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1047, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1047, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1047, }, Token { kind: MultilineString, lexeme: "[[\n toclose 1\n toclose 2\n return .\n ]]", computed_lexeme: None, line: 1051, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1053, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1053, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1053, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1053, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1053, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1053, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1053, }, Token { kind: Identifier, lexeme: "_", computed_lexeme: None, line: 1053, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1053, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1053, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1053, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1054, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1054, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1054, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1054, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1054, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 1055, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1055, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1055, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1055, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1055, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1055, }, Token { kind: Identifier, lexeme: "count", computed_lexeme: None, line: 1055, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1055, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 1055, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1055, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1056, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1056, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1058, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1058, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1058, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1058, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1058, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1058, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1058, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1058, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1058, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "ct", computed_lexeme: None, line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1059, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1059, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1059, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1059, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1059, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1059, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1061, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1061, }, Token { kind: Identifier, lexeme: "ct", computed_lexeme: None, line: 1061, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1061, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1061, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1061, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1061, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1061, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1061, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1061, }, Token { kind: Identifier, lexeme: "ct", computed_lexeme: None, line: 1063, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1063, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1063, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1063, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1063, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1063, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1063, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1063, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1064, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1064, }, Token { kind: Identifier, lexeme: "ct", computed_lexeme: None, line: 1064, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1064, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1064, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1064, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1064, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1064, }, Token { kind: Number, lexeme: "100", computed_lexeme: Some( "100", ), line: 1064, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1064, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1065, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1065, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1065, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1065, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1065, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 1065, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1065, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1065, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1066, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1066, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1066, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1066, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1066, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1066, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1066, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1066, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "20", computed_lexeme: Some( "20", ), line: 1066, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1066, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1066, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1066, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1066, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1066, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1066, }, Token { kind: Number, lexeme: "4", computed_lexeme: Some( "4", ), line: 1066, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1066, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1066, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1066, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1066, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1067, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1067, }, Token { kind: Identifier, lexeme: "token", computed_lexeme: None, line: 1067, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1067, }, Token { kind: Number, lexeme: "200", computed_lexeme: Some( "200", ), line: 1067, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1067, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1068, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1070, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1071, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1071, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1071, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1071, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1071, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1071, }, Token { kind: MultilineString, lexeme: "[[\n toclose 1\n return .\n ]]", computed_lexeme: None, line: 1074, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1076, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1076, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1076, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1076, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1076, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1076, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1076, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1077, }, Token { kind: Identifier, lexeme: "temp", computed_lexeme: None, line: 1077, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1078, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1078, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1078, }, Token { kind: Identifier, lexeme: "close", computed_lexeme: None, line: 1078, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 1078, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1078, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1078, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1078, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1078, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1078, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1078, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1079, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1079, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1079, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1079, }, Token { kind: Identifier, lexeme: "temp", computed_lexeme: None, line: 1079, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1079, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1080, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1080, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1080, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1080, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1080, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1080, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1081, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1081, }, Token { kind: Identifier, lexeme: "temp", computed_lexeme: None, line: 1082, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1082, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1082, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1082, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1082, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1082, }, Token { kind: String, lexeme: "\"closing obj\"", computed_lexeme: None, line: 1082, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1082, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1083, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1083, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1083, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1083, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1083, }, Token { kind: Number, lexeme: "3", computed_lexeme: Some( "3", ), line: 1083, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1084, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1084, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1086, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1086, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1086, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1086, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1086, }, Token { kind: Identifier, lexeme: "wrap", computed_lexeme: None, line: 1086, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1086, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1086, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1086, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1087, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1087, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1087, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1087, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1087, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1087, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1087, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1087, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1087, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1087, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1087, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1087, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1087, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1088, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1088, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1088, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1088, }, Token { kind: String, lexeme: "\"closing obj\"", computed_lexeme: None, line: 1088, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1088, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1089, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1089, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1089, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1089, }, Token { kind: String, lexeme: "\"closing x\"", computed_lexeme: None, line: 1089, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1089, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1090, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1090, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1090, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1090, }, Token { kind: String, lexeme: "\"closing x\"", computed_lexeme: None, line: 1090, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1090, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1091, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1091, }, Token { kind: LeftBrace, lexeme: "{", computed_lexeme: None, line: 1091, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1091, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1091, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1091, }, Token { kind: RightBrace, lexeme: "}", computed_lexeme: None, line: 1091, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1092, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1092, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1092, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1092, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1092, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1092, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1092, }, Token { kind: Number, lexeme: "30", computed_lexeme: Some( "30", ), line: 1092, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1092, }, Token { kind: Identifier, lexeme: "res", computed_lexeme: None, line: 1092, }, Token { kind: LeftBracket, lexeme: "[", computed_lexeme: None, line: 1092, }, Token { kind: Number, lexeme: "2", computed_lexeme: Some( "2", ), line: 1092, }, Token { kind: RightBracket, lexeme: "]", computed_lexeme: None, line: 1092, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1092, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1092, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1092, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1093, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1095, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1097, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1097, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1097, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1097, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1097, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1097, }, Token { kind: MultilineString, lexeme: "[[\n toclose 1\n closeslot 1\n ]]", computed_lexeme: None, line: 1100, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1101, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1101, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1101, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1101, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1101, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1101, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1101, }, Token { kind: Identifier, lexeme: "yield", computed_lexeme: None, line: 1101, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1101, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1102, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1102, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1102, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1102, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1102, }, Token { kind: Identifier, lexeme: "create", computed_lexeme: None, line: 1102, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1102, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1102, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1102, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1103, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1103, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "coroutine", computed_lexeme: None, line: 1103, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "resume", computed_lexeme: None, line: 1103, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "co", computed_lexeme: None, line: 1103, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1103, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1103, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1104, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1104, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1104, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1104, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1104, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 1104, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1104, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1104, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1104, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1104, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1104, }, Token { kind: String, lexeme: "\"attempt to yield across\"", computed_lexeme: None, line: 1104, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1104, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1104, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1107, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1107, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1107, }, Token { kind: Identifier, lexeme: "T", computed_lexeme: None, line: 1107, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1107, }, Token { kind: Identifier, lexeme: "makeCfunc", computed_lexeme: None, line: 1107, }, Token { kind: MultilineString, lexeme: "[[\n toclose 1\n ]]", computed_lexeme: None, line: 1109, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1110, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "pcall", computed_lexeme: None, line: 1110, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1110, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "obj", computed_lexeme: None, line: 1110, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1110, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1111, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1111, }, Token { kind: Not, lexeme: "not", computed_lexeme: None, line: 1111, }, Token { kind: Identifier, lexeme: "st", computed_lexeme: None, line: 1111, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1111, }, Token { kind: Identifier, lexeme: "string", computed_lexeme: None, line: 1111, }, Token { kind: Dot, lexeme: ".", computed_lexeme: None, line: 1111, }, Token { kind: Identifier, lexeme: "find", computed_lexeme: None, line: 1111, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1111, }, Token { kind: Identifier, lexeme: "msg", computed_lexeme: None, line: 1111, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1111, }, Token { kind: String, lexeme: "\"attempt to yield from outside\"", computed_lexeme: None, line: 1111, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1111, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1111, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1112, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1113, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1118, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1119, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1119, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1119, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1119, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1120, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "open", computed_lexeme: None, line: 1120, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1120, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1120, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1121, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1121, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1121, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1121, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1121, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1122, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1123, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1123, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1123, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1124, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1124, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1124, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 1124, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1124, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 1125, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1125, }, Token { kind: GreaterThan, lexeme: ">", computed_lexeme: None, line: 1125, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1125, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 1125, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1125, }, Token { kind: Identifier, lexeme: "x", computed_lexeme: None, line: 1125, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1125, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1126, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1126, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1127, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1127, }, Token { kind: Nil, lexeme: "nil", computed_lexeme: None, line: 1128, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1128, }, Token { kind: Identifier, lexeme: "func2close", computed_lexeme: None, line: 1129, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1129, }, Token { kind: Function, lexeme: "function", computed_lexeme: None, line: 1129, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1129, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1129, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1129, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1129, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1129, }, Token { kind: Minus, lexeme: "-", computed_lexeme: None, line: 1129, }, Token { kind: Number, lexeme: "1", computed_lexeme: Some( "1", ), line: 1129, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1129, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1129, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1130, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1132, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1132, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1132, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1132, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 1133, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1133, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 1133, }, Token { kind: Identifier, lexeme: "open", computed_lexeme: None, line: 1133, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1133, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1133, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1133, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1133, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1134, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1134, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1134, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1134, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1134, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1135, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1136, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1136, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1136, }, Token { kind: Number, lexeme: "45", computed_lexeme: Some( "45", ), line: 1136, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1136, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1136, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1136, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1136, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1136, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1138, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1138, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1138, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1138, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 1139, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1139, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 1139, }, Token { kind: Identifier, lexeme: "open", computed_lexeme: None, line: 1139, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1139, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1139, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1139, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1139, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 1140, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1140, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1140, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1140, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 1140, }, Token { kind: Break, lexeme: "break", computed_lexeme: None, line: 1140, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1140, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1141, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1141, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1141, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1141, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1141, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1142, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1143, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1143, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1143, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1143, }, Token { kind: Number, lexeme: "35", computed_lexeme: Some( "35", ), line: 1143, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1143, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1143, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1143, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1143, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1143, }, Token { kind: Local, lexeme: "local", computed_lexeme: None, line: 1145, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1145, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1145, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1145, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 1146, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1146, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 1146, }, Token { kind: Identifier, lexeme: "open", computed_lexeme: None, line: 1146, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1146, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1146, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1146, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1146, }, Token { kind: For, lexeme: "for", computed_lexeme: None, line: 1147, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 1147, }, Token { kind: In, lexeme: "in", computed_lexeme: None, line: 1147, }, Token { kind: Identifier, lexeme: "open", computed_lexeme: None, line: 1147, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1147, }, Token { kind: Number, lexeme: "10", computed_lexeme: Some( "10", ), line: 1147, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1147, }, Token { kind: Do, lexeme: "do", computed_lexeme: None, line: 1147, }, Token { kind: If, lexeme: "if", computed_lexeme: None, line: 1148, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1148, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1148, }, Token { kind: Identifier, lexeme: "j", computed_lexeme: None, line: 1148, }, Token { kind: LessThan, lexeme: "<", computed_lexeme: None, line: 1148, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1148, }, Token { kind: Then, lexeme: "then", computed_lexeme: None, line: 1148, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1148, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1149, }, Token { kind: Equals, lexeme: "=", computed_lexeme: None, line: 1149, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1149, }, Token { kind: Plus, lexeme: "+", computed_lexeme: None, line: 1149, }, Token { kind: Identifier, lexeme: "i", computed_lexeme: None, line: 1149, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1150, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1151, }, Token { kind: Identifier, lexeme: "assert", computed_lexeme: None, line: 1153, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1153, }, Token { kind: Identifier, lexeme: "s", computed_lexeme: None, line: 1153, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1153, }, Token { kind: Number, lexeme: "375", computed_lexeme: Some( "375", ), line: 1153, }, Token { kind: And, lexeme: "and", computed_lexeme: None, line: 1153, }, Token { kind: Identifier, lexeme: "numopen", computed_lexeme: None, line: 1153, }, Token { kind: DoubleEquals, lexeme: "==", computed_lexeme: None, line: 1153, }, Token { kind: Number, lexeme: "0", computed_lexeme: Some( "0", ), line: 1153, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1153, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1154, }, Token { kind: Identifier, lexeme: "print", computed_lexeme: None, line: 1156, }, Token { kind: LeftParen, lexeme: "(", computed_lexeme: None, line: 1156, }, Token { kind: String, lexeme: "'OK'", computed_lexeme: None, line: 1156, }, Token { kind: RightParen, lexeme: ")", computed_lexeme: None, line: 1156, }, Token { kind: Return, lexeme: "return", computed_lexeme: None, line: 1158, }, Token { kind: Number, lexeme: "5", computed_lexeme: Some( "5", ), line: 1158, }, Token { kind: Comma, lexeme: ",", computed_lexeme: None, line: 1158, }, Token { kind: Identifier, lexeme: "f", computed_lexeme: None, line: 1158, }, Token { kind: End, lexeme: "end", computed_lexeme: None, line: 1159, }, ]