FILE@[0; 107) FUNCTION@[0; 106) FN_KW@[0; 2) WHITESPACE@[2; 3) NAME@[3; 6) IDENT@[3; 6) "foo" PARAM_LIST@[6; 8) L_PAREN@[6; 7) R_PAREN@[7; 8) WHITESPACE@[8; 9) BLOCK_EXPR@[9; 106) L_CURLY@[9; 10) WHITESPACE@[10; 15) EXPR_STMT@[15; 25) IF_EXPR@[15; 25) IF_KW@[15; 17) WHITESPACE@[17; 18) LITERAL@[18; 22) TRUE_KW@[18; 22) WHITESPACE@[22; 23) BLOCK_EXPR@[23; 25) L_CURLY@[23; 24) R_CURLY@[24; 25) WHITESPACE@[25; 30) EXPR_STMT@[30; 37) LOOP_EXPR@[30; 37) LOOP_KW@[30; 34) WHITESPACE@[34; 35) BLOCK_EXPR@[35; 37) L_CURLY@[35; 36) R_CURLY@[36; 37) WHITESPACE@[37; 42) EXPR_STMT@[42; 53) MATCH_EXPR@[42; 53) MATCH_KW@[42; 47) WHITESPACE@[47; 48) TUPLE_EXPR@[48; 50) L_PAREN@[48; 49) R_PAREN@[49; 50) WHITESPACE@[50; 51) L_CURLY@[51; 52) R_CURLY@[52; 53) WHITESPACE@[53; 58) EXPR_STMT@[58; 71) WHILE_EXPR@[58; 71) WHILE_KW@[58; 63) WHITESPACE@[63; 64) LITERAL@[64; 68) TRUE_KW@[64; 68) WHITESPACE@[68; 69) BLOCK_EXPR@[69; 71) L_CURLY@[69; 70) R_CURLY@[70; 71) WHITESPACE@[71; 76) EXPR_STMT@[76; 90) FOR_EXPR@[76; 90) FOR_KW@[76; 79) WHITESPACE@[79; 80) PLACEHOLDER_PAT@[80; 81) UNDERSCORE@[80; 81) WHITESPACE@[81; 82) IN_KW@[82; 84) WHITESPACE@[84; 85) TUPLE_EXPR@[85; 87) L_PAREN@[85; 86) R_PAREN@[86; 87) WHITESPACE@[87; 88) BLOCK_EXPR@[88; 90) L_CURLY@[88; 89) R_CURLY@[89; 90) WHITESPACE@[90; 95) EXPR_STMT@[95; 97) BLOCK_EXPR@[95; 97) L_CURLY@[95; 96) R_CURLY@[96; 97) WHITESPACE@[97; 102) BLOCK_EXPR@[102; 104) L_CURLY@[102; 103) R_CURLY@[103; 104) WHITESPACE@[104; 105) R_CURLY@[105; 106) WHITESPACE@[106; 107)