layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 400x400
  RenderSVGRoot {svg} at (10,-3) size 103x371
    RenderSVGContainer {g} at (10,-3) size 103x23
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,14.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,27) size 103x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,30.00)}]
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,44.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,57) size 103x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,60.00)}]
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,74.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,87) size 103x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,90.00)}]
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,104.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,117) size 103x28 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,120.00)}]
      RenderSVGText {text} at (10,15) size 103x28 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-13) size 41x23
          chunk 1 text run 1 at (10.00,20.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-13) size 34x23
          chunk 1 text run 3 at (79.00,20.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,134.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,147) size 103x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,164.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,177) size 103x37 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,180.00)}]
      RenderSVGText {text} at (10,15) size 103x37 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-4) size 41x23
          chunk 1 text run 1 at (10.00,29.40) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-4) size 34x23
          chunk 1 text run 3 at (79.00,29.40) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,194.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,207) size 103x32 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,210.00)}]
      RenderSVGText {text} at (10,15) size 103x32 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-9) size 41x23
          chunk 1 text run 1 at (10.00,24.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-9) size 34x23
          chunk 1 text run 3 at (79.00,24.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,224.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,237) size 103x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,240.00)}]
      RenderSVGText {text} at (10,15) size 103x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-18) size 41x23
          chunk 1 text run 1 at (10.00,15.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-18) size 34x23
          chunk 1 text run 3 at (79.00,15.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,254.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,267) size 103x28 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,270.00)}]
      RenderSVGText {text} at (10,15) size 103x28 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-14) size 41x24
          chunk 1 text run 1 at (10.00,19.79) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-14) size 34x24
          chunk 1 text run 3 at (79.00,19.79) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,284.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,297) size 103x28 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,300.00)}]
      RenderSVGText {text} at (10,15) size 103x28 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,-13) size 41x23
          chunk 1 text run 1 at (10.00,20.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,-13) size 34x23
          chunk 1 text run 3 at (79.00,20.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,314.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
    RenderSVGContainer {g} at (10,327) size 103x41 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,330.00)}]
      RenderSVGText {text} at (10,15) size 103x41 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 41x23
          chunk 1 text run 1 at (10.00,33.00) startOffset 0 endOffset 5 width 41.00: "This "
        RenderSVGTSpan {tspan} at (0,0) size 28x23
          RenderSVGInlineText {#text} at (41,-18) size 28x23
            chunk 1 text run 2 at (51.00,15.00) startOffset 0 endOffset 4 width 28.00: "is a"
        RenderSVGInlineText {#text} at (69,0) size 34x23
          chunk 1 text run 3 at (79.00,33.00) startOffset 0 endOffset 5 width 34.00: " test"
      RenderPath {line} at (10,344.50) size 100x1 [stroke={[type=SOLID] [color=#FF0000]}] [fill={[type=SOLID] [color=#000000]}] [data="M10.00,15.00L110.00,15.00"]
