Document - 
    NamespaceDeclaration -  - Test
        UsingDirective - (3:1,1 [22] ) - global::System
        UsingDirective - (26:2,1 [42] ) - global::System.Collections.Generic
        UsingDirective - (69:3,1 [27] ) - global::System.Linq
        UsingDirective - (97:4,1 [38] ) - global::System.Threading.Tasks
        UsingDirective - (1:0,1 [40] x:\dir\subdir\Test\TestComponent.cshtml) - Microsoft.AspNetCore.Components
        ClassDeclaration -  - public partial - TestComponent - global::Microsoft.AspNetCore.Components.ComponentBase -  - TItem1, TItem2
            MethodDeclaration -  - protected override - void - BuildRenderTree
                MarkupBlock -  - <h1>Item1</h1>
                CSharpCode - (100:5,1 [34] x:\dir\subdir\Test\TestComponent.cshtml)
                    LazyIntermediateToken - (100:5,1 [34] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - foreach (var item2 in Items2)\n{\n
                MarkupElement - (138:7,4 [40] x:\dir\subdir\Test\TestComponent.cshtml) - p
                    CSharpExpression - (148:8,5 [19] x:\dir\subdir\Test\TestComponent.cshtml)
                        LazyIntermediateToken - (148:8,5 [19] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - ChildContent(item2)
                    HtmlContent - (167:8,24 [7] x:\dir\subdir\Test\TestComponent.cshtml)
                        LazyIntermediateToken - (167:8,24 [7] x:\dir\subdir\Test\TestComponent.cshtml) - Html - ;\n    
                CSharpCode - (180:10,0 [3] x:\dir\subdir\Test\TestComponent.cshtml)
                    LazyIntermediateToken - (180:10,0 [3] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - }\n
            CSharpCode - (190:11,7 [185] x:\dir\subdir\Test\TestComponent.cshtml)
                LazyIntermediateToken - (190:11,7 [185] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n    [Parameter] public TItem1 Item1 { get; set; }\n    [Parameter] public List<TItem2> Items2 { get; set; }\n    [Parameter] public RenderFragment<TItem2> ChildContent { get; set; }\n
