SOURCE_FILE@[0; 91) FN_DEF@[0; 90) FN_KW@[0; 2) "fn" 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; 90) BLOCK@[9; 90) L_CURLY@[9; 10) "{" WHITESPACE@[10; 15) "\n " LET_STMT@[15; 25) LET_KW@[15; 18) "let" WHITESPACE@[18; 19) " " PLACEHOLDER_PAT@[19; 20) UNDERSCORE@[19; 20) "_" WHITESPACE@[20; 21) " " EQ@[21; 22) "=" WHITESPACE@[22; 23) " " PATH_EXPR@[23; 24) PATH@[23; 24) PATH_SEGMENT@[23; 24) NAME_REF@[23; 24) IDENT@[23; 24) "a" SEMI@[24; 25) ";" WHITESPACE@[25; 30) "\n " LET_STMT@[30; 43) LET_KW@[30; 33) "let" WHITESPACE@[33; 34) " " PLACEHOLDER_PAT@[34; 35) UNDERSCORE@[34; 35) "_" WHITESPACE@[35; 36) " " EQ@[36; 37) "=" WHITESPACE@[37; 38) " " PATH_EXPR@[38; 42) PATH@[38; 42) PATH@[38; 39) PATH_SEGMENT@[38; 39) NAME_REF@[38; 39) IDENT@[38; 39) "a" COLONCOLON@[39; 41) "::" PATH_SEGMENT@[41; 42) NAME_REF@[41; 42) IDENT@[41; 42) "b" SEMI@[42; 43) ";" WHITESPACE@[43; 48) "\n " LET_STMT@[48; 65) LET_KW@[48; 51) "let" WHITESPACE@[51; 52) " " PLACEHOLDER_PAT@[52; 53) UNDERSCORE@[52; 53) "_" WHITESPACE@[53; 54) " " EQ@[54; 55) "=" WHITESPACE@[55; 56) " " PATH_EXPR@[56; 64) PATH@[56; 64) PATH_SEGMENT@[56; 64) COLONCOLON@[56; 58) "::" NAME_REF@[58; 59) IDENT@[58; 59) "a" TYPE_ARG_LIST@[59; 64) COLONCOLON@[59; 61) "::" L_ANGLE@[61; 62) "<" TYPE_ARG@[62; 63) PATH_TYPE@[62; 63) PATH@[62; 63) PATH_SEGMENT@[62; 63) NAME_REF@[62; 63) IDENT@[62; 63) "b" R_ANGLE@[63; 64) ">" SEMI@[64; 65) ";" WHITESPACE@[65; 70) "\n " LET_STMT@[70; 88) LET_KW@[70; 73) "let" WHITESPACE@[73; 74) " " PLACEHOLDER_PAT@[74; 75) UNDERSCORE@[74; 75) "_" WHITESPACE@[75; 76) " " EQ@[76; 77) "=" WHITESPACE@[77; 78) " " MACRO_CALL@[78; 87) PATH@[78; 84) PATH_SEGMENT@[78; 84) NAME_REF@[78; 84) IDENT@[78; 84) "format" EXCL@[84; 85) "!" TOKEN_TREE@[85; 87) L_PAREN@[85; 86) "(" R_PAREN@[86; 87) ")" SEMI@[87; 88) ";" WHITESPACE@[88; 89) "\n" R_CURLY@[89; 90) "}" WHITESPACE@[90; 91) "\n"