Directive block - Gen<Directive:{custom;SingleLine;Unrestricted}> - 176 - (0:0,0)
    Transition span - Gen<None> - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Tokens:1
        CSharpTokenType.Transition;[@];
    MetaCode span - Gen<None> - [custom] - SpanEditHandler;Accepts:None - (1:0,1) - Tokens:1
        CSharpTokenType.Identifier;[custom];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (7:0,7) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [string?] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (8:0,8) - Tokens:2
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.QuestionMark;[?];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (15:0,15) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [string?[]] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (16:0,16) - Tokens:4
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.QuestionMark;[?];
        CSharpTokenType.LeftBracket;[[];
        CSharpTokenType.RightBracket;[]];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (25:0,25) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [global::System.Int32?] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (26:0,26) - Tokens:6
        CSharpTokenType.Identifier;[global];
        CSharpTokenType.DoubleColon;[::];
        CSharpTokenType.Identifier;[System];
        CSharpTokenType.Dot;[.];
        CSharpTokenType.Identifier;[Int32];
        CSharpTokenType.QuestionMark;[?];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (47:0,47) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [KeyValuePair<string, string>?] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (48:0,48) - Tokens:8
        CSharpTokenType.Identifier;[KeyValuePair];
        CSharpTokenType.LessThan;[<];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.Comma;[,];
        CSharpTokenType.WhiteSpace;[ ];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.GreaterThan;[>];
        CSharpTokenType.QuestionMark;[?];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (77:0,77) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [KeyValuePair<string, string>?[]] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (78:0,78) - Tokens:10
        CSharpTokenType.Identifier;[KeyValuePair];
        CSharpTokenType.LessThan;[<];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.Comma;[,];
        CSharpTokenType.WhiteSpace;[ ];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.GreaterThan;[>];
        CSharpTokenType.QuestionMark;[?];
        CSharpTokenType.LeftBracket;[[];
        CSharpTokenType.RightBracket;[]];
    Code span - Gen<None> - [ ] - SpanEditHandler;Accepts:WhiteSpace - (109:0,109) - Tokens:1
        CSharpTokenType.WhiteSpace;[ ];
    Code span - Gen<DirectiveToken {;Type;Opt:False}> - [global::System.Collections.Generic.KeyValuePair<string, string>?[]] - DirectiveTokenEditHandler;Accepts:NonWhiteSpace - (110:0,110) - Tokens:18
        CSharpTokenType.Identifier;[global];
        CSharpTokenType.DoubleColon;[::];
        CSharpTokenType.Identifier;[System];
        CSharpTokenType.Dot;[.];
        CSharpTokenType.Identifier;[Collections];
        CSharpTokenType.Dot;[.];
        CSharpTokenType.Identifier;[Generic];
        CSharpTokenType.Dot;[.];
        CSharpTokenType.Identifier;[KeyValuePair];
        CSharpTokenType.LessThan;[<];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.Comma;[,];
        CSharpTokenType.WhiteSpace;[ ];
        CSharpTokenType.Keyword;[string];
        CSharpTokenType.GreaterThan;[>];
        CSharpTokenType.QuestionMark;[?];
        CSharpTokenType.LeftBracket;[[];
        CSharpTokenType.RightBracket;[]];
