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 (114,15) size 222x19 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 222x18
        chunk 1 (middle anchor) text run 1 at (114.00,30.00) startOffset 0 endOffset 31 width 222.00: "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 184x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 184x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 34 width 184.00: "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 145x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 145x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 26 width 145.00: "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 184x17 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 184x16
            chunk 1 text run 1 at (90.00,64.00) startOffset 0 endOffset 33 width 184.00: "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,-14) size 207x28 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 11.00: "B"
            chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 text run 1 at (120.00,0.00) startOffset 0 endOffset 1 width 4.00: "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 39x18
          RenderSVGInlineText {#text} at (168,10) size 39x18
            chunk 1 text run 1 at (168.00,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
      RenderSVGText {text} at (-6,-14) size 190x28 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.50,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (middle anchor) text run 1 at (36.50,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (middle anchor) text run 1 at (78.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 (middle anchor) text run 1 at (118.00,0.00) startOffset 0 endOffset 1 width 4.00: "i"
            chunk 1 (middle anchor) text run 1 at (136.50,10.00) startOffset 0 endOffset 1 width 8.00: "k"
        RenderSVGTSpan {tspan} at (0,0) size 39x18
          RenderSVGInlineText {#text} at (150,10) size 39x18
            chunk 1 text run 1 at (144.50,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
      RenderSVGText {text} at (-11,-14) size 171x28 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 132x28
          RenderSVGInlineText {#text} at (0,0) size 132x28
            chunk 1 (end anchor) text run 1 at (-11.00,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (end anchor) text run 1 at (33.00,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (end anchor) text run 1 at (76.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 (end anchor) text run 1 at (116.00,0.00) startOffset 0 endOffset 1 width 4.00: "i"
            chunk 1 (end anchor) text run 1 at (113.00,10.00) startOffset 0 endOffset 1 width 8.00: "k"
        RenderSVGTSpan {tspan} at (0,0) size 39x18
          RenderSVGInlineText {#text} at (132,10) size 39x18
            chunk 1 text run 1 at (121.00,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
      RenderSVGText {text} at (0,-14) size 96x18 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 96x18
          RenderSVGInlineText {#text} at (0,0) size 96x18
            chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 text run 1 at (40.00,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 3 width 16.00: "tik"
      RenderSVGText {text} at (-6,-14) size 94x18 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.50,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (middle anchor) text run 1 at (36.50,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (middle anchor) text run 1 at (72.00,0.00) startOffset 0 endOffset 3 width 16.00: "tik"
      RenderSVGText {text} at (-11,-14) size 91x18 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 (-11.00,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (end anchor) text run 1 at (33.00,0.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (end anchor) text run 1 at (64.00,0.00) startOffset 0 endOffset 3 width 16.00: "tik"
      RenderSVGText {text} at (0,-14) size 171x28 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 132x28
          RenderSVGInlineText {#text} at (0,0) size 132x28
            chunk 1 text run 1 at (0.00,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 text run 1 at (40.00,10.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 text run 1 at (80.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 text run 1 at (120.00,10.00) startOffset 0 endOffset 2 width 12.00: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 39x18
          RenderSVGInlineText {#text} at (132,10) size 39x18
            chunk 1 text run 1 at (132.00,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
      RenderSVGText {text} at (-6,-14) size 152x28 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.50,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (middle anchor) text run 1 at (36.50,10.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (middle anchor) text run 1 at (78.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 (middle anchor) text run 1 at (94.50,10.00) startOffset 0 endOffset 2 width 12.00: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 39x18
          RenderSVGInlineText {#text} at (112,10) size 39x18
            chunk 1 text run 1 at (106.50,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
      RenderSVGText {text} at (-11,-14) size 131x28 contains 1 chunk(s)
        RenderSVGTSpan {tspan} at (0,0) size 92x28
          RenderSVGInlineText {#text} at (0,0) size 92x28
            chunk 1 (end anchor) text run 1 at (-11.00,0.00) startOffset 0 endOffset 1 width 11.00: "B"
            chunk 1 (end anchor) text run 1 at (33.00,10.00) startOffset 0 endOffset 1 width 7.00: "a"
            chunk 1 (end anchor) text run 1 at (76.00,0.00) startOffset 0 endOffset 1 width 4.00: "t"
            chunk 1 (end anchor) text run 1 at (69.00,10.00) startOffset 0 endOffset 2 width 12.00: "ik"
        RenderSVGTSpan {tspan} at (0,0) size 39x18
          RenderSVGInlineText {#text} at (92,10) size 39x18
            chunk 1 text run 1 at (81.00,10.00) startOffset 0 endOffset 7 width 39.00: " rules!"
