Document - 
    NamespaceDeclaration -  - Test
        UsingDirective - (3:1,1 [14] ) - System
        UsingDirective - (18:2,1 [34] ) - System.Collections.Generic
        UsingDirective - (53:3,1 [19] ) - System.Linq
        UsingDirective - (73:4,1 [30] ) - System.Threading.Tasks
        UsingDirective - (104:5,1 [35] ) - Microsoft.AspNetCore.Blazor
        UsingDirective - (140:6,1 [46] ) - Microsoft.AspNetCore.Blazor.Components
        ClassDeclaration -  - public - TestComponent - Microsoft.AspNetCore.Blazor.Components.BlazorComponent - 
            MethodDeclaration -  - protected override - void - BuildRenderTree
                CSharpCode - 
                    IntermediateToken -  - CSharp - base.BuildRenderTree(builder);
                HtmlElement - (0:0,0 [79] x:\dir\subdir\Test\TestComponent.cshtml) - elem
                    HtmlContent - (67:0,67 [5] x:\dir\subdir\Test\TestComponent.cshtml)
                        IntermediateToken - (67:0,67 [5] x:\dir\subdir\Test\TestComponent.cshtml) - Html - Hello
                    HtmlAttribute -  - attributebefore=" - "
                        HtmlAttributeValue - (23:0,23 [6] x:\dir\subdir\Test\TestComponent.cshtml) - 
                            IntermediateToken - (23:0,23 [6] x:\dir\subdir\Test\TestComponent.cshtml) - Html - before
                    RefExtensionNode - (36:0,36 [6] x:\dir\subdir\Test\TestComponent.cshtml) - myElem - Element
                    HtmlAttribute -  - attributeafter=" - "
                        HtmlAttributeValue - (60:0,60 [5] x:\dir\subdir\Test\TestComponent.cshtml) - 
                            IntermediateToken - (60:0,60 [5] x:\dir\subdir\Test\TestComponent.cshtml) - Html - after
            CSharpCode - (95:2,12 [118] x:\dir\subdir\Test\TestComponent.cshtml)
                IntermediateToken - (95:2,12 [118] x:\dir\subdir\Test\TestComponent.cshtml) - CSharp - \n    private Microsoft.AspNetCore.Blazor.ElementRef myElem;\n    public void Foo() { System.GC.KeepAlive(myElem); }\n
