[
{"begin":-1,"ender":-1,"lexer":"script","lines":0,"stack":"global","token":"var","types":"word"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"a","types":"reference"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"=","types":"operator"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"1","types":"number"},
{"begin":-1,"ender":-1,"lexer":"script","lines":0,"stack":"global","token":";","types":"separator"},
{"begin":-1,"ender":-1,"lexer":"script","lines":2,"stack":"global","token":"function","types":"word"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"combinor","types":"reference"},
{"begin":-1,"ender":-1,"lexer":"script","lines":0,"stack":"global","token":"<T>","types":"generic"},
{"begin":-1,"ender":15,"lexer":"script","lines":0,"stack":"global","token":"(","types":"start"},
{"begin":8,"ender":15,"lexer":"script","lines":0,"stack":"arguments","token":"...","types":"operator"},
{"begin":8,"ender":15,"lexer":"script","lines":0,"stack":"arguments","token":"rest","types":"word"},
{"begin":8,"ender":15,"lexer":"script","lines":0,"stack":"arguments","token":":","types":"operator"},
{"begin":8,"ender":15,"lexer":"script","lines":1,"stack":"arguments","token":"T","types":"type"},
{"begin":8,"ender":14,"lexer":"script","lines":0,"stack":"arguments","token":"[","types":"type_start"},
{"begin":13,"ender":14,"lexer":"script","lines":0,"stack":"data_type","token":"]","types":"type_end"},
{"begin":8,"ender":15,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":-1,"ender":-1,"lexer":"script","lines":0,"stack":"global","token":":","types":"operator"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"T","types":"type"},
{"begin":-1,"ender":74,"lexer":"script","lines":1,"stack":"global","token":"{","types":"start"},
{"begin":18,"ender":74,"lexer":"script","lines":2,"stack":"function","token":"return","types":"word"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"rest","types":"word"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":".","types":"separator"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":"reduce","types":"word"},
{"begin":18,"ender":50,"lexer":"script","lines":0,"stack":"function","token":"(","types":"start"},
{"begin":23,"ender":32,"lexer":"script","lines":0,"stack":"method","token":"(","types":"start"},
{"begin":24,"ender":32,"lexer":"script","lines":0,"stack":"method","token":"previous","types":"word"},
{"begin":24,"ender":32,"lexer":"script","lines":0,"stack":"method","token":":","types":"operator"},
{"begin":24,"ender":32,"lexer":"script","lines":1,"stack":"method","token":"T","types":"word"},
{"begin":24,"ender":32,"lexer":"script","lines":0,"stack":"method","token":",","types":"separator"},
{"begin":24,"ender":32,"lexer":"script","lines":1,"stack":"method","token":"current","types":"word"},
{"begin":24,"ender":32,"lexer":"script","lines":0,"stack":"method","token":":","types":"operator"},
{"begin":24,"ender":32,"lexer":"script","lines":1,"stack":"method","token":"T","types":"word"},
{"begin":24,"ender":32,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":23,"ender":50,"lexer":"script","lines":1,"stack":"method","token":"=>","types":"operator"},
{"begin":23,"ender":42,"lexer":"script","lines":1,"stack":"method","token":"{","types":"start"},
{"begin":34,"ender":42,"lexer":"script","lines":2,"stack":"function","token":"return","types":"word"},
{"begin":34,"ender":42,"lexer":"script","lines":1,"stack":"function","token":"<any>","types":"generic"},
{"begin":34,"ender":42,"lexer":"script","lines":1,"stack":"function","token":"previous","types":"word"},
{"begin":34,"ender":42,"lexer":"script","lines":1,"stack":"function","token":"+","types":"operator"},
{"begin":34,"ender":42,"lexer":"script","lines":1,"stack":"function","token":"<any>","types":"generic"},
{"begin":34,"ender":42,"lexer":"script","lines":1,"stack":"function","token":"current","types":"word"},
{"begin":34,"ender":42,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":34,"ender":42,"lexer":"script","lines":2,"stack":"function","token":"}","types":"end"},
{"begin":23,"ender":50,"lexer":"script","lines":0,"stack":"method","token":",","types":"separator"},
{"begin":23,"ender":50,"lexer":"script","lines":1,"stack":"method","token":"rest","types":"word"},
{"begin":23,"ender":47,"lexer":"script","lines":0,"stack":"method","token":"[","types":"start"},
{"begin":45,"ender":47,"lexer":"script","lines":0,"stack":"array","token":"0","types":"number"},
{"begin":45,"ender":47,"lexer":"script","lines":0,"stack":"array","token":"]","types":"end"},
{"begin":23,"ender":50,"lexer":"script","lines":1,"stack":"method","token":"||","types":"operator"},
{"begin":23,"ender":50,"lexer":"script","lines":1,"stack":"method","token":"null","types":"word"},
{"begin":23,"ender":50,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":18,"ender":74,"lexer":"script","lines":2,"stack":"function","token":"const","types":"word"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"strs","types":"reference"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"=","types":"operator"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"combinor","types":"reference"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":"<string>","types":"generic"},
{"begin":18,"ender":61,"lexer":"script","lines":0,"stack":"function","token":"(","types":"start"},
{"begin":57,"ender":61,"lexer":"script","lines":0,"stack":"method","token":"'one'","types":"string"},
{"begin":57,"ender":61,"lexer":"script","lines":0,"stack":"method","token":",","types":"separator"},
{"begin":57,"ender":61,"lexer":"script","lines":1,"stack":"method","token":"'two'","types":"string"},
{"begin":57,"ender":61,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":18,"ender":74,"lexer":"script","lines":3,"stack":"function","token":"const","types":"word"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"nums","types":"reference"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"=","types":"operator"},
{"begin":18,"ender":74,"lexer":"script","lines":1,"stack":"function","token":"combinor","types":"reference"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":"<number>","types":"generic"},
{"begin":18,"ender":72,"lexer":"script","lines":0,"stack":"function","token":"(","types":"start"},
{"begin":68,"ender":72,"lexer":"script","lines":0,"stack":"method","token":"1","types":"number"},
{"begin":68,"ender":72,"lexer":"script","lines":0,"stack":"method","token":",","types":"separator"},
{"begin":68,"ender":72,"lexer":"script","lines":1,"stack":"method","token":"2","types":"number"},
{"begin":68,"ender":72,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":18,"ender":74,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":18,"ender":74,"lexer":"script","lines":2,"stack":"function","token":"}","types":"end"},
{"begin":-1,"ender":-1,"lexer":"script","lines":3,"stack":"global","token":"function","types":"word"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"asdf","types":"reference"},
{"begin":-1,"ender":78,"lexer":"script","lines":0,"stack":"global","token":"(","types":"start"},
{"begin":77,"ender":78,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":-1,"ender":144,"lexer":"script","lines":1,"stack":"global","token":"{","types":"start"},
{"begin":79,"ender":144,"lexer":"script","lines":2,"stack":"function","token":"export","types":"word"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"interface","types":"word"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"Drawable","types":"word"},
{"begin":79,"ender":103,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":83,"ender":103,"lexer":"script","lines":2,"stack":"map","token":"id","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":":","types":"operator"},
{"begin":83,"ender":103,"lexer":"script","lines":1,"stack":"map","token":"number","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":";","types":"separator"},
{"begin":83,"ender":103,"lexer":"script","lines":2,"stack":"map","token":"name","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":"?","types":"operator"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":":","types":"operator"},
{"begin":83,"ender":103,"lexer":"script","lines":1,"stack":"map","token":"string","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":";","types":"separator"},
{"begin":83,"ender":103,"lexer":"script","lines":2,"stack":"map","token":"draw","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":":","types":"operator"},
{"begin":83,"ender":99,"lexer":"script","lines":1,"stack":"map","token":"(","types":"start"},
{"begin":95,"ender":99,"lexer":"script","lines":0,"stack":"method","token":"target","types":"word"},
{"begin":95,"ender":99,"lexer":"script","lines":0,"stack":"method","token":":","types":"operator"},
{"begin":95,"ender":99,"lexer":"script","lines":1,"stack":"method","token":"Node","types":"word"},
{"begin":95,"ender":99,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":83,"ender":103,"lexer":"script","lines":1,"stack":"map","token":"=>","types":"operator"},
{"begin":83,"ender":103,"lexer":"script","lines":1,"stack":"map","token":"void","types":"word"},
{"begin":83,"ender":103,"lexer":"script","lines":0,"stack":"map","token":";","types":"separator"},
{"begin":83,"ender":103,"lexer":"script","lines":2,"stack":"map","token":"}","types":"end"},
{"begin":79,"ender":144,"lexer":"script","lines":3,"stack":"function","token":"class","types":"word"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"Rect","types":"reference"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"implements","types":"word"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"Drawable","types":"word"},
{"begin":79,"ender":121,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":108,"ender":121,"lexer":"script","lines":2,"stack":"class","token":"id","types":"property"},
{"begin":108,"ender":121,"lexer":"script","lines":0,"stack":"class","token":":","types":"operator"},
{"begin":108,"ender":121,"lexer":"script","lines":1,"stack":"class","token":"number","types":"word"},
{"begin":108,"ender":121,"lexer":"script","lines":0,"stack":"class","token":";","types":"separator"},
{"begin":108,"ender":121,"lexer":"script","lines":2,"stack":"class","token":"draw","types":"word"},
{"begin":108,"ender":118,"lexer":"script","lines":0,"stack":"class","token":"(","types":"start"},
{"begin":114,"ender":118,"lexer":"script","lines":0,"stack":"method","token":"target","types":"word"},
{"begin":114,"ender":118,"lexer":"script","lines":0,"stack":"method","token":":","types":"operator"},
{"begin":114,"ender":118,"lexer":"script","lines":1,"stack":"method","token":"Node","types":"word"},
{"begin":114,"ender":118,"lexer":"script","lines":0,"stack":"method","token":")","types":"end"},
{"begin":108,"ender":120,"lexer":"script","lines":1,"stack":"class","token":"{","types":"start"},
{"begin":119,"ender":120,"lexer":"script","lines":0,"stack":"function","token":"}","types":"end"},
{"begin":108,"ender":121,"lexer":"script","lines":2,"stack":"class","token":"}","types":"end"},
{"begin":79,"ender":144,"lexer":"script","lines":3,"stack":"function","token":"const","types":"word"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"thing","types":"reference"},
{"begin":79,"ender":144,"lexer":"script","lines":0,"stack":"function","token":":","types":"operator"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"Drawable","types":"type"},
{"begin":79,"ender":144,"lexer":"script","lines":1,"stack":"function","token":"=","types":"operator"},
{"begin":79,"ender":142,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":127,"ender":142,"lexer":"script","lines":2,"stack":"object","token":"id","types":"property"},
{"begin":127,"ender":142,"lexer":"script","lines":0,"stack":"object","token":":","types":"operator"},
{"begin":127,"ender":142,"lexer":"script","lines":1,"stack":"object","token":"0","types":"number"},
{"begin":127,"ender":142,"lexer":"script","lines":0,"stack":"object","token":",","types":"separator"},
{"begin":127,"ender":142,"lexer":"script","lines":2,"stack":"object","token":"draw","types":"property"},
{"begin":127,"ender":142,"lexer":"script","lines":0,"stack":"object","token":":","types":"operator"},
{"begin":127,"ender":142,"lexer":"script","lines":1,"stack":"object","token":"function","types":"word"},
{"begin":127,"ender":139,"lexer":"script","lines":1,"stack":"object","token":"(","types":"start"},
{"begin":135,"ender":139,"lexer":"script","lines":0,"stack":"arguments","token":"target","types":"reference"},
{"begin":135,"ender":139,"lexer":"script","lines":0,"stack":"arguments","token":":","types":"operator"},
{"begin":135,"ender":139,"lexer":"script","lines":1,"stack":"arguments","token":"Node","types":"type"},
{"begin":135,"ender":139,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":127,"ender":141,"lexer":"script","lines":1,"stack":"object","token":"{","types":"start"},
{"begin":140,"ender":141,"lexer":"script","lines":1,"stack":"function","token":"}","types":"end"},
{"begin":127,"ender":142,"lexer":"script","lines":2,"stack":"object","token":"}","types":"end"},
{"begin":79,"ender":144,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":79,"ender":144,"lexer":"script","lines":2,"stack":"function","token":"}","types":"end"},
{"begin":-1,"ender":-1,"lexer":"script","lines":3,"stack":"global","token":"function","types":"word"},
{"begin":-1,"ender":-1,"lexer":"script","lines":1,"stack":"global","token":"qwer","types":"reference"},
{"begin":-1,"ender":148,"lexer":"script","lines":0,"stack":"global","token":"(","types":"start"},
{"begin":147,"ender":148,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":-1,"ender":207,"lexer":"script","lines":1,"stack":"global","token":"{","types":"start"},
{"begin":149,"ender":207,"lexer":"script","lines":2,"stack":"function","token":"interface","types":"word"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"DrawMethod","types":"word"},
{"begin":149,"ender":174,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":152,"ender":157,"lexer":"script","lines":2,"stack":"map","token":"(","types":"start"},
{"begin":153,"ender":157,"lexer":"script","lines":0,"stack":"paren","token":"target","types":"word"},
{"begin":153,"ender":157,"lexer":"script","lines":0,"stack":"paren","token":":","types":"operator"},
{"begin":153,"ender":157,"lexer":"script","lines":1,"stack":"paren","token":"Node","types":"word"},
{"begin":153,"ender":157,"lexer":"script","lines":0,"stack":"paren","token":")","types":"end"},
{"begin":152,"ender":174,"lexer":"script","lines":0,"stack":"map","token":":","types":"operator"},
{"begin":152,"ender":174,"lexer":"script","lines":1,"stack":"map","token":"void","types":"word"},
{"begin":152,"ender":174,"lexer":"script","lines":0,"stack":"map","token":";","types":"separator"},
{"begin":152,"ender":170,"lexer":"script","lines":2,"stack":"map","token":"(","types":"start"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":"target","types":"word"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":":","types":"operator"},
{"begin":161,"ender":170,"lexer":"script","lines":1,"stack":"paren","token":"number","types":"word"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":",","types":"separator"},
{"begin":161,"ender":170,"lexer":"script","lines":1,"stack":"paren","token":"options","types":"word"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":"?","types":"operator"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":":","types":"operator"},
{"begin":161,"ender":170,"lexer":"script","lines":1,"stack":"paren","token":"Object","types":"word"},
{"begin":161,"ender":170,"lexer":"script","lines":0,"stack":"paren","token":")","types":"end"},
{"begin":152,"ender":174,"lexer":"script","lines":0,"stack":"map","token":":","types":"operator"},
{"begin":152,"ender":174,"lexer":"script","lines":1,"stack":"map","token":"void","types":"word"},
{"begin":152,"ender":174,"lexer":"script","lines":0,"stack":"map","token":";","types":"separator"},
{"begin":152,"ender":174,"lexer":"script","lines":2,"stack":"map","token":"}","types":"end"},
{"begin":149,"ender":207,"lexer":"script","lines":3,"stack":"function","token":"let","types":"word"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"method","types":"reference"},
{"begin":149,"ender":207,"lexer":"script","lines":0,"stack":"function","token":":","types":"operator"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"DrawMethod","types":"type"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"=","types":"operator"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"function","types":"word"},
{"begin":149,"ender":185,"lexer":"script","lines":0,"stack":"function","token":"(","types":"start"},
{"begin":181,"ender":185,"lexer":"script","lines":0,"stack":"arguments","token":"target","types":"reference"},
{"begin":181,"ender":185,"lexer":"script","lines":0,"stack":"arguments","token":":","types":"operator"},
{"begin":181,"ender":185,"lexer":"script","lines":1,"stack":"arguments","token":"any","types":"type"},
{"begin":181,"ender":185,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":149,"ender":187,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":186,"ender":187,"lexer":"script","lines":1,"stack":"function","token":"}","types":"end"},
{"begin":149,"ender":207,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":149,"ender":207,"lexer":"script","lines":3,"stack":"function","token":"let","types":"word"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"anotherMethod","types":"reference"},
{"begin":149,"ender":207,"lexer":"script","lines":0,"stack":"function","token":":","types":"operator"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"DrawMethod","types":"type"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"=","types":"operator"},
{"begin":149,"ender":207,"lexer":"script","lines":1,"stack":"function","token":"function","types":"word"},
{"begin":149,"ender":203,"lexer":"script","lines":0,"stack":"function","token":"(","types":"start"},
{"begin":195,"ender":203,"lexer":"script","lines":0,"stack":"arguments","token":"target","types":"reference"},
{"begin":195,"ender":203,"lexer":"script","lines":0,"stack":"arguments","token":":","types":"operator"},
{"begin":195,"ender":203,"lexer":"script","lines":1,"stack":"arguments","token":"any","types":"type"},
{"begin":195,"ender":203,"lexer":"script","lines":0,"stack":"arguments","token":",","types":"separator"},
{"begin":195,"ender":203,"lexer":"script","lines":1,"stack":"arguments","token":"options","types":"reference"},
{"begin":195,"ender":203,"lexer":"script","lines":0,"stack":"arguments","token":"?:","types":"operator"},
{"begin":195,"ender":203,"lexer":"script","lines":1,"stack":"arguments","token":"Object","types":"type"},
{"begin":195,"ender":203,"lexer":"script","lines":0,"stack":"arguments","token":")","types":"end"},
{"begin":149,"ender":205,"lexer":"script","lines":1,"stack":"function","token":"{","types":"start"},
{"begin":204,"ender":205,"lexer":"script","lines":1,"stack":"function","token":"}","types":"end"},
{"begin":149,"ender":207,"lexer":"script","lines":0,"stack":"function","token":";","types":"separator"},
{"begin":149,"ender":207,"lexer":"script","lines":2,"stack":"function","token":"}","types":"end"}
]