layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderSVGRoot {svg} at (0,0) size 800x600
    RenderSVGContainer {g} at (0,6) size 800x594
      RenderSVGText {text} at (0,3) size 484x46 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 484x45
          chunk 1 text run 1 at (0.00,40.00) startOffset 0 endOffset 31 width 483.09: "Test 'baseline-shift' (vertic.)"
      RenderSVGContainer {g} at (136,101) size 491x499
        RenderSVGContainer {g} at (136,101) size 491x499 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}]
          RenderSVGText {text} at (-9,0) size 25x171 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 17x68
              chunk 1 (vertical) text run 1 at (-10.50,0.00) startOffset 0 endOffset 1 height 33.90: "t"
              chunk 1 (vertical) text run 2 at (-10.50,33.90) startOffset 1 endOffset 2 height 33.90: "e"
            RenderSVGTSpan {tspan} at (0,0) size 34x18
              RenderSVGInlineText {#text} at (7,67) size 17x34
                chunk 1 (vertical) text run 1 at (-3.50,67.80) startOffset 0 endOffset 1 height 33.90: "7"
            RenderSVGInlineText {#text} at (0,101) size 15x68
              chunk 1 (vertical) text run 1 at (-10.50,101.70) startOffset 0 endOffset 1 height 33.90: "x"
              chunk 1 (vertical) text run 2 at (-10.50,135.60) startOffset 1 endOffset 2 height 33.90: "t"
          RenderSVGText {text} at (45,0) size 44x272 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (25,0) size 17x68
              chunk 1 (vertical) text run 1 at (69.50,0.00) startOffset 0 endOffset 1 height 33.90: "t"
              chunk 1 (vertical) text run 2 at (69.50,33.90) startOffset 1 endOffset 2 height 33.90: "e"
            RenderSVGTSpan {tspan} at (0,0) size 136x28
              RenderSVGInlineText {#text} at (0,67) size 27x136
                chunk 1 (vertical) text run 1 at (48.50,67.80) startOffset 0 endOffset 1 height 33.90: "-"
                chunk 1 (vertical) text run 2 at (48.50,101.70) startOffset 1 endOffset 2 height 33.90: "7"
                chunk 1 (vertical) text run 3 at (48.50,135.60) startOffset 2 endOffset 3 height 33.90: "0"
                chunk 1 (vertical) text run 4 at (48.50,169.50) startOffset 3 endOffset 4 height 33.90: "%"
            RenderSVGInlineText {#text} at (26,203) size 15x68
              chunk 1 (vertical) text run 1 at (69.50,203.40) startOffset 0 endOffset 1 height 33.90: "x"
              chunk 1 (vertical) text run 2 at (69.50,237.30) startOffset 1 endOffset 2 height 33.90: "t"
          RenderSVGText {text} at (154,0) size 35x238 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (17,0) size 17x68
              chunk 1 (vertical) text run 1 at (169.50,0.00) startOffset 0 endOffset 1 height 33.90: "t"
              chunk 1 (vertical) text run 2 at (169.50,33.90) startOffset 1 endOffset 2 height 33.90: "e"
            RenderSVGTSpan {tspan} at (0,0) size 102x18
              RenderSVGInlineText {#text} at (0,67) size 17x102
                chunk 1 (vertical) text run 1 at (152.00,67.80) startOffset 0 endOffset 1 height 33.90: "s"
                chunk 1 (vertical) text run 2 at (152.00,101.70) startOffset 1 endOffset 2 height 33.90: "u"
                chunk 1 (vertical) text run 3 at (152.00,135.60) startOffset 2 endOffset 3 height 33.90: "b"
            RenderSVGTSpan {tspan} at (0,0) size 35x16
              RenderSVGInlineText {#text} at (18,169) size 15x34
                chunk 1 (vertical) text run 1 at (169.50,169.50) startOffset 0 endOffset 1 height 33.90: "x"
            RenderSVGInlineText {#text} at (21,203) size 9x34
              chunk 1 (vertical) text run 1 at (169.50,203.40) startOffset 0 endOffset 1 height 33.90: "t"
          RenderSVGText {text} at (251,0) size 35x306 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 17x68
              chunk 1 (vertical) text run 1 at (249.50,0.00) startOffset 0 endOffset 1 height 33.90: "t"
              chunk 1 (vertical) text run 2 at (249.50,33.90) startOffset 1 endOffset 2 height 33.90: "e"
            RenderSVGTSpan {tspan} at (0,0) size 170x18
              RenderSVGInlineText {#text} at (17,67) size 17x170
                chunk 1 (vertical) text run 1 at (267.00,67.80) startOffset 0 endOffset 1 height 33.90: "s"
                chunk 1 (vertical) text run 2 at (267.00,101.70) startOffset 1 endOffset 2 height 33.90: "u"
                chunk 1 (vertical) text run 3 at (267.00,135.60) startOffset 2 endOffset 3 height 33.90: "p"
                chunk 1 (vertical) text run 4 at (267.00,169.50) startOffset 3 endOffset 4 height 33.90: "e"
                chunk 1 (vertical) text run 5 at (267.00,203.40) startOffset 4 endOffset 5 height 33.90: "r"
            RenderSVGTSpan {tspan} at (0,0) size 35x16
              RenderSVGInlineText {#text} at (0,237) size 15x34
                chunk 1 (vertical) text run 1 at (249.50,237.30) startOffset 0 endOffset 1 height 33.90: "x"
            RenderSVGInlineText {#text} at (4,271) size 9x34
              chunk 1 (vertical) text run 1 at (249.50,271.20) startOffset 0 endOffset 1 height 33.90: "t"
    RenderSVGText {text} at (10,304) size 263x45 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 263x45
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 262.68: "$Revision: 1.5 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
selection start: position 0 of child 0 {#text} of child 1 {text} of child 13 {g} of child 27 {svg} of document
selection end:   position 16 of child 0 {#text} of child 15 {text} of child 27 {svg} of document
