[ [ ( KeywordTok , "with" ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Characters" ) , ( OperatorTok , "." ) , ( NormalTok , "Handling;" ) ] , [ ( KeywordTok , "use" ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Characters" ) , ( OperatorTok , "." ) , ( NormalTok , "Handling;" ) ] , [] , [] , [ ( KeywordTok , "package" ) , ( NormalTok , " Abc " ) , ( KeywordTok , "is" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "type" ) , ( NormalTok , " Block_Faces " ) , ( KeywordTok , "is" ) , ( NormalTok , " " ) , ( KeywordTok , "array" ) , ( OperatorTok , "(" ) , ( DecValTok , "1" ) , ( OperatorTok , ".." ) , ( DecValTok , "2" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( KeywordTok , "of" ) , ( NormalTok , " " ) , ( DataTypeTok , "Character" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "type" ) , ( NormalTok , " Block_List " ) , ( KeywordTok , "is" ) , ( NormalTok , " " ) , ( KeywordTok , "array" ) , ( OperatorTok , "(" ) , ( NormalTok , "positive " ) , ( KeywordTok , "range" ) , ( NormalTok , " " ) , ( OperatorTok , "<>)" ) , ( NormalTok , " " ) , ( KeywordTok , "of" ) , ( NormalTok , " Block_Faces;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "function" ) , ( NormalTok , " Can_Make_Word" ) , ( OperatorTok , "(" ) , ( NormalTok , "W" ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( DataTypeTok , "String" ) , ( NormalTok , "; Blocks" ) , ( OperatorTok , ":" ) , ( NormalTok , " Block_List" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " " ) , ( DataTypeTok , "Boolean" ) , ( NormalTok , ";" ) ] , [ ( KeywordTok , "end" ) , ( NormalTok , " Abc;" ) ] , [] , [] , [ ( KeywordTok , "package" ) , ( NormalTok , " " ) , ( KeywordTok , "body" ) , ( NormalTok , " Abc " ) , ( KeywordTok , "is" ) ] , [] , [ ( KeywordTok , "function" ) , ( NormalTok , " Can_Make_Word" ) , ( OperatorTok , "(" ) , ( NormalTok , "W" ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( DataTypeTok , "String" ) , ( NormalTok , "; Blocks" ) , ( OperatorTok , ":" ) , ( NormalTok , " Block_List" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " " ) , ( DataTypeTok , "Boolean" ) , ( NormalTok , " " ) , ( KeywordTok , "is" ) ] , [ ( NormalTok , " Used " ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( KeywordTok , "array" ) , ( OperatorTok , "(" ) , ( NormalTok , "Blocks'Range" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( KeywordTok , "of" ) , ( NormalTok , " " ) , ( DataTypeTok , "Boolean" ) , ( NormalTok , " " ) , ( OperatorTok , ":=" ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( KeywordTok , "Others" ) , ( NormalTok , " " ) , ( OperatorTok , "=>" ) , ( NormalTok , " False" ) , ( OperatorTok , ")" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "subtype" ) , ( NormalTok , " wIndex " ) , ( KeywordTok , "is" ) , ( NormalTok , " " ) , ( DataTypeTok , "Integer" ) , ( NormalTok , " " ) , ( KeywordTok , "range" ) , ( NormalTok , " W'First" ) , ( OperatorTok , ".." ) , ( NormalTok , "W'Last;" ) ] , [ ( NormalTok , " wPos " ) , ( OperatorTok , ":" ) , ( NormalTok , " wIndex;" ) ] , [ ( KeywordTok , "begin" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "if" ) , ( NormalTok , " W'Length " ) , ( OperatorTok , "=" ) , ( NormalTok , " " ) , ( DecValTok , "0" ) , ( NormalTok , " " ) , ( KeywordTok , "then" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " True;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end if" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " wPos " ) , ( OperatorTok , ":=" ) , ( NormalTok , " W'First;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "while" ) , ( NormalTok , " True " ) , ( KeywordTok , "loop" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "declare" ) ] , [ ( NormalTok , " C " ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( DataTypeTok , "Character" ) , ( NormalTok , " " ) , ( OperatorTok , ":=" ) , ( NormalTok , " To_Upper" ) , ( OperatorTok , "(" ) , ( NormalTok , "W" ) , ( OperatorTok , "(" ) , ( NormalTok , "wPos" ) , ( OperatorTok , "))" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " X " ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( KeywordTok , "constant" ) , ( NormalTok , " wIndex " ) , ( OperatorTok , ":=" ) , ( NormalTok , " wPos;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "begin" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "for" ) , ( NormalTok , " I " ) , ( KeywordTok , "in" ) , ( NormalTok , " Blocks'Range " ) , ( KeywordTok , "loop" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "if" ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( KeywordTok , "not" ) , ( NormalTok , " Used" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , "))" ) , ( NormalTok , " " ) , ( KeywordTok , "then" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "if" ) , ( NormalTok , " C " ) , ( OperatorTok , "=" ) , ( NormalTok , " To_Upper" ) , ( OperatorTok , "(" ) , ( NormalTok , "Blocks" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , ")(" ) , ( DecValTok , "1" ) , ( OperatorTok , "))" ) , ( NormalTok , " " ) , ( KeywordTok , "or" ) , ( NormalTok , " C " ) , ( OperatorTok , "=" ) , ( NormalTok , " To_Upper" ) , ( OperatorTok , "(" ) , ( NormalTok , "Blocks" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , ")(" ) , ( DecValTok , "2" ) , ( OperatorTok , "))" ) , ( NormalTok , " " ) , ( KeywordTok , "then" ) ] , [ ( NormalTok , " Used" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( OperatorTok , ":=" ) , ( NormalTok , " True;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "if" ) , ( NormalTok , " wPos " ) , ( OperatorTok , "=" ) , ( NormalTok , " W'Last " ) , ( KeywordTok , "then" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " True;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end if" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " wPos " ) , ( OperatorTok , ":=" ) , ( NormalTok , " wIndex'Succ" ) , ( OperatorTok , "(" ) , ( NormalTok , "wPos" ) , ( OperatorTok , ")" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "exit" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end if" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end if" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end loop" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "if" ) , ( NormalTok , " X " ) , ( OperatorTok , "=" ) , ( NormalTok , " wPos " ) , ( KeywordTok , "then" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " False;" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end if" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end loop" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " False;" ) ] , [ ( KeywordTok , "end" ) , ( NormalTok , " Can_Make_Word;" ) ] , [] , [ ( KeywordTok , "end" ) , ( NormalTok , " Abc;" ) ] , [] , [ ( KeywordTok , "with" ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Text_IO" ) , ( OperatorTok , "," ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Strings" ) , ( OperatorTok , "." ) , ( NormalTok , "Unbounded" ) , ( OperatorTok , "," ) , ( NormalTok , " Abc;" ) ] , [ ( KeywordTok , "use" ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Text_IO" ) , ( OperatorTok , "," ) , ( NormalTok , " Ada" ) , ( OperatorTok , "." ) , ( NormalTok , "Strings" ) , ( OperatorTok , "." ) , ( NormalTok , "Unbounded" ) , ( OperatorTok , "," ) , ( NormalTok , " Abc;" ) ] , [] , [ ( KeywordTok , "procedure" ) , ( NormalTok , " Abc_Problem " ) , ( KeywordTok , "is" ) ] , [ ( NormalTok , " Blocks " ) , ( OperatorTok , ":" ) , ( NormalTok , " Block_List " ) , ( OperatorTok , ":=" ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'B'" ) , ( OperatorTok , "," ) , ( CharTok , "'O'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'X'" ) , ( OperatorTok , "," ) , ( CharTok , "'K'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'D'" ) , ( OperatorTok , "," ) , ( CharTok , "'Q'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'C'" ) , ( OperatorTok , "," ) , ( CharTok , "'P'" ) , ( OperatorTok , ")" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'N'" ) , ( OperatorTok , "," ) , ( CharTok , "'A'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'G'" ) , ( OperatorTok , "," ) , ( CharTok , "'T'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'R'" ) , ( OperatorTok , "," ) , ( CharTok , "'E'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'T'" ) , ( OperatorTok , "," ) , ( CharTok , "'G'" ) , ( OperatorTok , ")" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'Q'" ) , ( OperatorTok , "," ) , ( CharTok , "'D'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'F'" ) , ( OperatorTok , "," ) , ( CharTok , "'S'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'J'" ) , ( OperatorTok , "," ) , ( CharTok , "'W'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'H'" ) , ( OperatorTok , "," ) , ( CharTok , "'U'" ) , ( OperatorTok , ")" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'V'" ) , ( OperatorTok , "," ) , ( CharTok , "'I'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'A'" ) , ( OperatorTok , "," ) , ( CharTok , "'N'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'O'" ) , ( OperatorTok , "," ) , ( CharTok , "'B'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'E'" ) , ( OperatorTok , "," ) , ( CharTok , "'R'" ) , ( OperatorTok , ")" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'F'" ) , ( OperatorTok , "," ) , ( CharTok , "'S'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'L'" ) , ( OperatorTok , "," ) , ( CharTok , "'Y'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'P'" ) , ( OperatorTok , "," ) , ( CharTok , "'C'" ) , ( OperatorTok , ")," ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( CharTok , "'Z'" ) , ( OperatorTok , "," ) , ( CharTok , "'M'" ) , ( OperatorTok , ")" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , ")" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "function" ) , ( NormalTok , " " ) , ( StringTok , "\"+\"" ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) , ( NormalTok , "S " ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( DataTypeTok , "String" ) , ( OperatorTok , ")" ) , ( NormalTok , " " ) , ( KeywordTok , "return" ) , ( NormalTok , " Unbounded_String " ) , ( KeywordTok , "renames" ) , ( NormalTok , " To_Unbounded_String;" ) ] , [ ( NormalTok , " words " ) , ( OperatorTok , ":" ) , ( NormalTok , " " ) , ( KeywordTok , "array" ) , ( OperatorTok , "(" ) , ( NormalTok , "positive " ) , ( KeywordTok , "range" ) , ( NormalTok , " " ) , ( OperatorTok , "<>)" ) , ( NormalTok , " " ) , ( KeywordTok , "of" ) , ( NormalTok , " Unbounded_String " ) , ( OperatorTok , ":=" ) , ( NormalTok , " " ) , ( OperatorTok , "(" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"A\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"BARK\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"BOOK\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"TREAT\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"COMMON\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"SQUAD\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , "," ) , ( NormalTok , " " ) , ( OperatorTok , "+" ) , ( StringTok , "\"CONFUSE\"" ) ] , [ ( NormalTok , " " ) , ( CommentTok , "-- Border cases:" ) ] , [ ( NormalTok , " " ) , ( CommentTok , "-- , +\"CONFUSE2\"" ) ] , [ ( NormalTok , " " ) , ( CommentTok , "-- , +\"\"" ) ] , [ ( NormalTok , " " ) , ( OperatorTok , ")" ) , ( NormalTok , ";" ) ] , [ ( KeywordTok , "begin" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "for" ) , ( NormalTok , " I " ) , ( KeywordTok , "in" ) , ( NormalTok , " words'Range " ) , ( KeywordTok , "loop" ) ] , [ ( NormalTok , " Put_Line " ) , ( OperatorTok , "(" ) , ( NormalTok , " To_String" ) , ( OperatorTok , "(" ) , ( NormalTok , "words" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , "))" ) , ( NormalTok , " " ) , ( OperatorTok , "&" ) , ( NormalTok , " " ) , ( StringTok , "\": \"" ) , ( NormalTok , " " ) , ( OperatorTok , "&" ) , ( NormalTok , " Boolean'Image" ) , ( OperatorTok , "(" ) , ( NormalTok , "Can_Make_Word" ) , ( OperatorTok , "(" ) , ( NormalTok , "To_String" ) , ( OperatorTok , "(" ) , ( NormalTok , "words" ) , ( OperatorTok , "(" ) , ( NormalTok , "I" ) , ( OperatorTok , "))," ) , ( NormalTok , "Blocks" ) , ( OperatorTok , "))" ) , ( NormalTok , " " ) , ( OperatorTok , ")" ) , ( NormalTok , ";" ) ] , [ ( NormalTok , " " ) , ( KeywordTok , "end loop" ) , ( NormalTok , ";" ) ] , [ ( KeywordTok , "end" ) , ( NormalTok , " Abc_Problem;" ) ] , [] ]