FILE@[0; 97) FN_ITEM@[0; 97) FN_KW@[0; 2) NAME@[2; 6) WHITESPACE@[2; 3) IDENT@[3; 6) "foo" PARAM_LIST@[6; 9) L_PAREN@[6; 7) R_PAREN@[7; 8) WHITESPACE@[8; 9) BLOCK_EXPR@[9; 97) L_CURLY@[9; 10) LET_STMT@[10; 33) WHITESPACE@[10; 15) LET_KW@[15; 18) TUPLE_PAT@[18; 23) PATH@[18; 20) PATH_SEGMENT@[18; 20) NAME_REF@[18; 20) WHITESPACE@[18; 19) IDENT@[19; 20) "S" L_PAREN@[20; 21) R_PAREN@[21; 22) WHITESPACE@[22; 23) EQ@[23; 24) TUPLE_EXPR@[24; 27) WHITESPACE@[24; 25) L_PAREN@[25; 26) R_PAREN@[26; 27) SEMI@[27; 28) WHITESPACE@[28; 33) LET_STMT@[33; 52) LET_KW@[33; 36) TUPLE_PAT@[36; 42) PATH@[36; 38) PATH_SEGMENT@[36; 38) NAME_REF@[36; 38) WHITESPACE@[36; 37) IDENT@[37; 38) "S" L_PAREN@[38; 39) PLACEHOLDER_PAT@[39; 40) UNDERSCORE@[39; 40) R_PAREN@[40; 41) WHITESPACE@[41; 42) EQ@[42; 43) TUPLE_EXPR@[43; 46) WHITESPACE@[43; 44) L_PAREN@[44; 45) R_PAREN@[45; 46) SEMI@[46; 47) WHITESPACE@[47; 52) LET_STMT@[52; 72) LET_KW@[52; 55) TUPLE_PAT@[55; 62) PATH@[55; 57) PATH_SEGMENT@[55; 57) NAME_REF@[55; 57) WHITESPACE@[55; 56) IDENT@[56; 57) "S" L_PAREN@[57; 58) PLACEHOLDER_PAT@[58; 59) UNDERSCORE@[58; 59) COMMA@[59; 60) R_PAREN@[60; 61) WHITESPACE@[61; 62) EQ@[62; 63) TUPLE_EXPR@[63; 66) WHITESPACE@[63; 64) L_PAREN@[64; 65) R_PAREN@[65; 66) SEMI@[66; 67) WHITESPACE@[67; 72) LET_STMT@[72; 95) LET_KW@[72; 75) TUPLE_PAT@[75; 89) PATH@[75; 77) PATH_SEGMENT@[75; 77) NAME_REF@[75; 77) WHITESPACE@[75; 76) IDENT@[76; 77) "S" L_PAREN@[77; 78) PLACEHOLDER_PAT@[78; 79) UNDERSCORE@[78; 79) COMMA@[79; 80) WHITESPACE@[80; 81) DOTDOT@[81; 83) WHITESPACE@[83; 84) COMMA@[84; 85) BIND_PAT@[85; 87) NAME@[85; 87) WHITESPACE@[85; 86) IDENT@[86; 87) "x" R_PAREN@[87; 88) WHITESPACE@[88; 89) EQ@[89; 90) TUPLE_EXPR@[90; 93) WHITESPACE@[90; 91) L_PAREN@[91; 92) R_PAREN@[92; 93) SEMI@[93; 94) WHITESPACE@[94; 95) R_CURLY@[95; 96) WHITESPACE@[96; 97)