FILE@[0; 200) STRUCT_ITEM@[0; 13) STRUCT_KW@[0; 6) NAME@[6; 8) WHITESPACE@[6; 7) IDENT@[7; 8) "A" TYPE_PARAM_LIST@[8; 11) L_ANGLE@[8; 9) TYPE_PARAM@[9; 10) IDENT@[9; 10) "T" R_ANGLE@[10; 11) SEMI@[11; 12) WHITESPACE@[12; 13) STRUCT_ITEM@[13; 27) STRUCT_KW@[13; 19) NAME@[19; 21) WHITESPACE@[19; 20) IDENT@[20; 21) "B" TYPE_PARAM_LIST@[21; 25) L_ANGLE@[21; 22) TYPE_PARAM@[22; 24) IDENT@[22; 23) "T" COLON@[23; 24) R_ANGLE@[24; 25) SEMI@[25; 26) WHITESPACE@[26; 27) STRUCT_ITEM@[27; 44) STRUCT_KW@[27; 33) NAME@[33; 35) WHITESPACE@[33; 34) IDENT@[34; 35) "C" TYPE_PARAM_LIST@[35; 42) L_ANGLE@[35; 36) TYPE_PARAM@[36; 41) IDENT@[36; 37) "T" COLON@[37; 38) WHITESPACE@[38; 39) LIFETIME@[39; 41) "'a" R_ANGLE@[41; 42) SEMI@[42; 43) WHITESPACE@[43; 44) STRUCT_ITEM@[44; 64) STRUCT_KW@[44; 50) NAME@[50; 52) WHITESPACE@[50; 51) IDENT@[51; 52) "D" TYPE_PARAM_LIST@[52; 62) L_ANGLE@[52; 53) TYPE_PARAM@[53; 61) IDENT@[53; 54) "T" COLON@[54; 55) WHITESPACE@[55; 56) LIFETIME@[56; 58) "'a" WHITESPACE@[58; 59) PLUS@[59; 60) WHITESPACE@[60; 61) R_ANGLE@[61; 62) SEMI@[62; 63) WHITESPACE@[63; 64) STRUCT_ITEM@[64; 87) STRUCT_KW@[64; 70) NAME@[70; 72) WHITESPACE@[70; 71) IDENT@[71; 72) "E" TYPE_PARAM_LIST@[72; 85) L_ANGLE@[72; 73) TYPE_PARAM@[73; 84) IDENT@[73; 74) "T" COLON@[74; 75) WHITESPACE@[75; 76) LIFETIME@[76; 78) "'a" WHITESPACE@[78; 79) PLUS@[79; 80) WHITESPACE@[80; 81) LIFETIME@[81; 83) "'d" WHITESPACE@[83; 84) R_ANGLE@[84; 85) SEMI@[85; 86) WHITESPACE@[86; 87) STRUCT_ITEM@[87; 117) STRUCT_KW@[87; 93) NAME@[93; 95) WHITESPACE@[93; 94) IDENT@[94; 95) "F" TYPE_PARAM_LIST@[95; 115) L_ANGLE@[95; 96) TYPE_PARAM@[96; 114) IDENT@[96; 97) "T" COLON@[97; 98) WHITESPACE@[98; 99) LIFETIME@[99; 101) "'a" WHITESPACE@[101; 102) PLUS@[102; 103) WHITESPACE@[103; 104) LIFETIME@[104; 106) "'d" WHITESPACE@[106; 107) PLUS@[107; 108) PATH@[108; 114) PATH_SEGMENT@[108; 114) NAME_REF@[108; 114) WHITESPACE@[108; 109) IDENT@[109; 114) "Clone" R_ANGLE@[114; 115) SEMI@[115; 116) WHITESPACE@[116; 117) STRUCT_ITEM@[117; 144) STRUCT_KW@[117; 123) NAME@[123; 125) WHITESPACE@[123; 124) IDENT@[124; 125) "G" TYPE_PARAM_LIST@[125; 142) L_ANGLE@[125; 126) TYPE_PARAM@[126; 141) IDENT@[126; 127) "T" COLON@[127; 128) PATH@[128; 135) PATH_SEGMENT@[128; 135) NAME_REF@[128; 135) WHITESPACE@[128; 129) IDENT@[129; 134) "Clone" WHITESPACE@[134; 135) PLUS@[135; 136) PATH@[136; 141) PATH_SEGMENT@[136; 141) NAME_REF@[136; 141) WHITESPACE@[136; 137) IDENT@[137; 141) "Copy" R_ANGLE@[141; 142) SEMI@[142; 143) WHITESPACE@[143; 144) STRUCT_ITEM@[144; 181) STRUCT_KW@[144; 150) NAME@[150; 152) WHITESPACE@[150; 151) IDENT@[151; 152) "H" TYPE_PARAM_LIST@[152; 179) L_ANGLE@[152; 153) TYPE_PARAM@[153; 178) IDENT@[153; 154) "T" COLON@[154; 155) PATH@[155; 162) PATH_SEGMENT@[155; 162) WHITESPACE@[155; 156) COLONCOLON@[156; 158) NAME_REF@[158; 162) IDENT@[158; 161) "Foo" WHITESPACE@[161; 162) PLUS@[162; 163) PATH@[163; 174) PATH@[163; 168) PATH_SEGMENT@[163; 168) WHITESPACE@[163; 164) SELF_KW@[164; 168) COLONCOLON@[168; 170) PATH_SEGMENT@[170; 174) NAME_REF@[170; 174) IDENT@[170; 173) "Bar" WHITESPACE@[173; 174) PLUS@[174; 175) WHITESPACE@[175; 176) LIFETIME@[176; 178) "'a" R_ANGLE@[178; 179) SEMI@[179; 180) WHITESPACE@[180; 181) STRUCT_ITEM@[181; 200) STRUCT_KW@[181; 187) NAME@[187; 189) WHITESPACE@[187; 188) IDENT@[188; 189) "I" TYPE_PARAM_LIST@[189; 198) L_ANGLE@[189; 190) TYPE_PARAM@[190; 192) IDENT@[190; 191) "T" COLON@[191; 192) COMMA@[192; 193) TYPE_PARAM@[193; 196) WHITESPACE@[193; 194) IDENT@[194; 195) "U" COLON@[195; 196) COMMA@[196; 197) R_ANGLE@[197; 198) SEMI@[198; 199) WHITESPACE@[199; 200)