layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 450x500
  RenderSVGRoot {svg} at (74,15) size 302x476
    RenderSVGText {text} at (112,15) size 226x19 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 225x18
        chunk 1 (middle anchor) text run 1 at (112.93,30.00) startOffset 0 endOffset 31 width 224.15: "text-anchor on a single <tspan>"
    RenderSVGContainer {g} at (74,49) size 302x442
      RenderSVGContainer {g} at (74,49) size 302x142
        RenderSVGRect {rect} at (74,49) size 302x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=75.00] [y=50.00] [width=300.00] [height=20.00]
        RenderSVGRect {rect} at (74,69) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=70.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,109) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=75.00] [y=110.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,149) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=150.00] [width=300.00] [height=40.00]
        RenderSVGText {text} at (90,51) size 182x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 182x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 34 width 181.56: "x attributed tspan with extra text"
        RenderSVGContainer {g} at (149,70) size 162x120
          RenderSVGPath {line} at (149,70) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=150.00] [y1=70.00] [x2=150.00] [y2=190.00]
          RenderSVGPath {line} at (189,70) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=190.00] [y1=70.00] [x2=190.00] [y2=190.00]
          RenderSVGPath {line} at (229,70) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=230.00] [y1=70.00] [x2=230.00] [y2=190.00]
          RenderSVGPath {line} at (269,70) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=270.00] [y1=70.00] [x2=270.00] [y2=190.00]
          RenderSVGPath {line} at (309,70) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=310.00] [y1=70.00] [x2=310.00] [y2=190.00]
      RenderSVGContainer {g} at (74,199) size 302x142 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
        RenderSVGRect {rect} at (74,199) size 302x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=75.00] [y=50.00] [width=300.00] [height=20.00]
        RenderSVGRect {rect} at (74,219) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=70.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,259) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=75.00] [y=110.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,299) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=150.00] [width=300.00] [height=40.00]
        RenderSVGText {text} at (90,51) size 144x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 144x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 26 width 143.06: "x attribute for some chars"
        RenderSVGContainer {g} at (149,220) size 82x120
          RenderSVGPath {line} at (149,220) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=150.00] [y1=70.00] [x2=150.00] [y2=190.00]
          RenderSVGPath {line} at (189,220) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=190.00] [y1=70.00] [x2=190.00] [y2=190.00]
          RenderSVGPath {line} at (229,220) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=230.00] [y1=70.00] [x2=230.00] [y2=190.00]
      RenderSVGContainer {g} at (74,349) size 302x142 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,300.00)}]
        RenderSVGRect {rect} at (74,349) size 302x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=75.00] [y=50.00] [width=300.00] [height=20.00]
        RenderSVGRect {rect} at (74,369) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=70.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,409) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=75.00] [y=110.00] [width=300.00] [height=40.00]
        RenderSVGRect {rect} at (74,449) size 302x42 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#EEEEEE]}] [x=75.00] [y=150.00] [width=300.00] [height=40.00]
        RenderSVGText {text} at (90,51) size 182x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 182x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 33 width 181.56: "x & y attributes with inheritance"
        RenderSVGContainer {g} at (149,370) size 122x120
          RenderSVGPath {line} at (149,370) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=150.00] [y1=70.00] [x2=150.00] [y2=190.00]
          RenderSVGPath {line} at (189,370) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=190.00] [y1=70.00] [x2=190.00] [y2=190.00]
          RenderSVGPath {line} at (229,370) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=230.00] [y1=70.00] [x2=230.00] [y2=190.00]
          RenderSVGPath {line} at (269,370) size 2x120 [stroke={[type=SOLID] [color=#B0C4DE]}] [x1=270.00] [y1=70.00] [x2=270.00] [y2=190.00]
      RenderSVGText {text} at (0,-15) size 209x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 168x28
          RenderSVGInlineText {#text} at (0,0) size 168x28
            chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 text run 1 at (120.00,0.00) startOffset 0 endOffset 1 width 4.45: "i"
            chunk 1 text run 1 at (160.00,10.00) startOffset 0 endOffset 1 width 8.00: "k"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (168,10) size 41x18
            chunk 1 text run 1 at (168.00,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
      RenderSVGText {text} at (-6,-15) size 191x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 150x28
          RenderSVGInlineText {#text} at (0,0) size 150x28
            chunk 1 (middle anchor) text run 1 at (-5.34,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (middle anchor) text run 1 at (36.45,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (middle anchor) text run 1 at (77.78,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 (middle anchor) text run 1 at (117.78,0.00) startOffset 0 endOffset 1 width 4.45: "i"
            chunk 1 (middle anchor) text run 1 at (135.79,10.00) startOffset 0 endOffset 1 width 8.00: "k"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (149,10) size 41x18
            chunk 1 text run 1 at (143.79,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
      RenderSVGText {text} at (-11,-15) size 171x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 131x28
          RenderSVGInlineText {#text} at (0,0) size 131x28
            chunk 1 (end anchor) text run 1 at (-10.67,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (end anchor) text run 1 at (32.90,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (end anchor) text run 1 at (75.55,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 (end anchor) text run 1 at (115.55,0.00) startOffset 0 endOffset 1 width 4.45: "i"
            chunk 1 (end anchor) text run 1 at (111.57,10.00) startOffset 0 endOffset 1 width 8.00: "k"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (130,10) size 41x18
            chunk 1 text run 1 at (119.57,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
      RenderSVGText {text} at (0,-15) size 97x19 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 97x18
          RenderSVGInlineText {#text} at (0,0) size 97x18
            chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 3 width 16.89: "tik"
      RenderSVGText {text} at (-6,-15) size 95x19 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 94x18
          RenderSVGInlineText {#text} at (0,0) size 94x18
            chunk 1 (middle anchor) text run 1 at (-5.34,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (middle anchor) text run 1 at (36.45,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (middle anchor) text run 1 at (71.55,0.00) startOffset 0 endOffset 3 width 16.89: "tik"
      RenderSVGText {text} at (-11,-15) size 91x19 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 91x18
          RenderSVGInlineText {#text} at (0,0) size 91x18
            chunk 1 (end anchor) text run 1 at (-10.67,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (end anchor) text run 1 at (32.90,0.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (end anchor) text run 1 at (63.11,0.00) startOffset 0 endOffset 3 width 16.89: "tik"
      RenderSVGText {text} at (0,-15) size 173x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 133x28
          RenderSVGInlineText {#text} at (0,0) size 133x28
            chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 text run 1 at (40.00,10.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 text run 1 at (120.00,10.00) startOffset 0 endOffset 2 width 12.45: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (132,10) size 41x18
            chunk 1 text run 1 at (132.45,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
      RenderSVGText {text} at (-6,-15) size 153x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 112x28
          RenderSVGInlineText {#text} at (0,0) size 112x28
            chunk 1 (middle anchor) text run 1 at (-5.34,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (middle anchor) text run 1 at (36.45,10.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (middle anchor) text run 1 at (77.78,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 (middle anchor) text run 1 at (93.56,10.00) startOffset 0 endOffset 2 width 12.45: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (111,10) size 41x18
            chunk 1 text run 1 at (106.01,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
      RenderSVGText {text} at (-11,-15) size 131x29 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 91x28
          RenderSVGInlineText {#text} at (0,0) size 91x28
            chunk 1 (end anchor) text run 1 at (-10.67,0.00) startOffset 0 endOffset 1 width 10.67: "B"
            chunk 1 (end anchor) text run 1 at (32.90,10.00) startOffset 0 endOffset 1 width 7.10: "a"
            chunk 1 (end anchor) text run 1 at (75.55,0.00) startOffset 0 endOffset 1 width 4.45: "t"
            chunk 1 (end anchor) text run 1 at (67.13,10.00) startOffset 0 endOffset 2 width 12.45: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 41x18
          RenderSVGInlineText {#text} at (90,10) size 41x18
            chunk 1 text run 1 at (79.57,10.00) startOffset 0 endOffset 7 width 40.43: " rules!"
