SOURCE_FILE@[0; 146) FN_DEF@[0; 145) FN_KW@[0; 2) "fn" WHITESPACE@[2; 3) " " NAME@[3; 7) IDENT@[3; 7) "main" PARAM_LIST@[7; 9) L_PAREN@[7; 8) "(" R_PAREN@[8; 9) ")" WHITESPACE@[9; 10) " " BLOCK_EXPR@[10; 145) BLOCK@[10; 145) L_CURLY@[10; 11) "{" WHITESPACE@[11; 16) "\n " LET_STMT@[16; 27) LET_KW@[16; 19) "let" WHITESPACE@[19; 20) " " BIND_PAT@[20; 21) NAME@[20; 21) IDENT@[20; 21) "a" WHITESPACE@[21; 22) " " EQ@[22; 23) "=" WHITESPACE@[23; 24) " " TUPLE_EXPR@[24; 26) L_PAREN@[24; 25) "(" R_PAREN@[25; 26) ")" SEMI@[26; 27) ";" WHITESPACE@[27; 32) "\n " LET_STMT@[32; 47) LET_KW@[32; 35) "let" WHITESPACE@[35; 36) " " BIND_PAT@[36; 41) MUT_KW@[36; 39) "mut" WHITESPACE@[39; 40) " " NAME@[40; 41) IDENT@[40; 41) "b" WHITESPACE@[41; 42) " " EQ@[42; 43) "=" WHITESPACE@[43; 44) " " TUPLE_EXPR@[44; 46) L_PAREN@[44; 45) "(" R_PAREN@[45; 46) ")" SEMI@[46; 47) ";" WHITESPACE@[47; 52) "\n " LET_STMT@[52; 67) LET_KW@[52; 55) "let" WHITESPACE@[55; 56) " " BIND_PAT@[56; 61) REF_KW@[56; 59) "ref" WHITESPACE@[59; 60) " " NAME@[60; 61) IDENT@[60; 61) "c" WHITESPACE@[61; 62) " " EQ@[62; 63) "=" WHITESPACE@[63; 64) " " TUPLE_EXPR@[64; 66) L_PAREN@[64; 65) "(" R_PAREN@[65; 66) ")" SEMI@[66; 67) ";" WHITESPACE@[67; 72) "\n " LET_STMT@[72; 91) LET_KW@[72; 75) "let" WHITESPACE@[75; 76) " " BIND_PAT@[76; 85) REF_KW@[76; 79) "ref" WHITESPACE@[79; 80) " " MUT_KW@[80; 83) "mut" WHITESPACE@[83; 84) " " NAME@[84; 85) IDENT@[84; 85) "d" WHITESPACE@[85; 86) " " EQ@[86; 87) "=" WHITESPACE@[87; 88) " " TUPLE_EXPR@[88; 90) L_PAREN@[88; 89) "(" R_PAREN@[89; 90) ")" SEMI@[90; 91) ";" WHITESPACE@[91; 96) "\n " LET_STMT@[96; 111) LET_KW@[96; 99) "let" WHITESPACE@[99; 100) " " BIND_PAT@[100; 105) NAME@[100; 101) IDENT@[100; 101) "e" WHITESPACE@[101; 102) " " AT@[102; 103) "@" WHITESPACE@[103; 104) " " PLACEHOLDER_PAT@[104; 105) UNDERSCORE@[104; 105) "_" WHITESPACE@[105; 106) " " EQ@[106; 107) "=" WHITESPACE@[107; 108) " " TUPLE_EXPR@[108; 110) L_PAREN@[108; 109) "(" R_PAREN@[109; 110) ")" SEMI@[110; 111) ";" WHITESPACE@[111; 116) "\n " LET_STMT@[116; 143) LET_KW@[116; 119) "let" WHITESPACE@[119; 120) " " BIND_PAT@[120; 137) REF_KW@[120; 123) "ref" WHITESPACE@[123; 124) " " MUT_KW@[124; 127) "mut" WHITESPACE@[127; 128) " " NAME@[128; 129) IDENT@[128; 129) "f" WHITESPACE@[129; 130) " " AT@[130; 131) "@" WHITESPACE@[131; 132) " " BIND_PAT@[132; 137) NAME@[132; 133) IDENT@[132; 133) "g" WHITESPACE@[133; 134) " " AT@[134; 135) "@" WHITESPACE@[135; 136) " " PLACEHOLDER_PAT@[136; 137) UNDERSCORE@[136; 137) "_" WHITESPACE@[137; 138) " " EQ@[138; 139) "=" WHITESPACE@[139; 140) " " TUPLE_EXPR@[140; 142) L_PAREN@[140; 141) "(" R_PAREN@[141; 142) ")" SEMI@[142; 143) ";" WHITESPACE@[143; 144) "\n" R_CURLY@[144; 145) "}" WHITESPACE@[145; 146) "\n"