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,5) size 800x595
      RenderSVGText {text} at (0,3) size 489x46 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 489x45
          chunk 1 text run 1 at (0.00,40.00) startOffset 0 endOffset 31 width 488.40: "Test 'baseline-shift' (vertic.)"
      RenderSVGContainer {g} at (135,100) size 490x500
        RenderSVGContainer {g} at (135,100) size 490x500 [transform={m=((1.00,0.00)(0.00,1.00)) t=(90.00,60.00)}]
          RenderSVGText {text} at (-9,0) size 25x169 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.60: "t"
              chunk 1 (vertical) text run 2 at (-10.50,33.60) startOffset 1 endOffset 2 height 33.60: "e"
            RenderSVGTSpan {tspan} at (0,0) size 17x34
              RenderSVGInlineText {#text} at (7,67) size 17x34
                chunk 1 (vertical) text run 1 at (-3.50,67.20) startOffset 0 endOffset 1 height 33.60: "7"
            RenderSVGInlineText {#text} at (0,100) size 15x68
              chunk 1 (vertical) text run 1 at (-10.50,100.80) startOffset 0 endOffset 1 height 33.60: "x"
              chunk 1 (vertical) text run 2 at (-10.50,134.40) startOffset 1 endOffset 2 height 33.60: "t"
          RenderSVGText {text} at (45,0) size 44x269 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.60: "t"
              chunk 1 (vertical) text run 2 at (69.50,33.60) startOffset 1 endOffset 2 height 33.60: "e"
            RenderSVGTSpan {tspan} at (0,0) size 27x135
              RenderSVGInlineText {#text} at (0,67) size 27x135
                chunk 1 (vertical) text run 1 at (48.50,67.20) startOffset 0 endOffset 1 height 33.60: "-"
                chunk 1 (vertical) text run 2 at (48.50,100.80) startOffset 1 endOffset 2 height 33.60: "7"
                chunk 1 (vertical) text run 3 at (48.50,134.40) startOffset 2 endOffset 3 height 33.60: "0"
                chunk 1 (vertical) text run 4 at (48.50,168.00) startOffset 3 endOffset 4 height 33.60: "%"
            RenderSVGInlineText {#text} at (26,201) size 15x68
              chunk 1 (vertical) text run 1 at (69.50,201.60) startOffset 0 endOffset 1 height 33.60: "x"
              chunk 1 (vertical) text run 2 at (69.50,235.20) startOffset 1 endOffset 2 height 33.60: "t"
          RenderSVGText {text} at (155,0) size 34x236 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (16,0) size 17x68
              chunk 1 (vertical) text run 1 at (169.50,0.00) startOffset 0 endOffset 1 height 33.60: "t"
              chunk 1 (vertical) text run 2 at (169.50,33.60) startOffset 1 endOffset 2 height 33.60: "e"
            RenderSVGTSpan {tspan} at (0,0) size 17x102
              RenderSVGInlineText {#text} at (0,67) size 17x101
                chunk 1 (vertical) text run 1 at (153.00,67.20) startOffset 0 endOffset 1 height 33.60: "s"
                chunk 1 (vertical) text run 2 at (153.00,100.80) startOffset 1 endOffset 2 height 33.60: "u"
                chunk 1 (vertical) text run 3 at (153.00,134.40) startOffset 2 endOffset 3 height 33.60: "b"
            RenderSVGTSpan {tspan} at (0,0) size 16x34
              RenderSVGInlineText {#text} at (17,168) size 15x34
                chunk 1 (vertical) text run 1 at (169.50,168.00) startOffset 0 endOffset 1 height 33.60: "x"
            RenderSVGInlineText {#text} at (20,201) size 9x34
              chunk 1 (vertical) text run 1 at (169.50,201.60) startOffset 0 endOffset 1 height 33.60: "t"
          RenderSVGText {text} at (251,0) size 34x303 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.60: "t"
              chunk 1 (vertical) text run 2 at (249.50,33.60) startOffset 1 endOffset 2 height 33.60: "e"
            RenderSVGTSpan {tspan} at (0,0) size 18x169
              RenderSVGInlineText {#text} at (16,67) size 17x169
                chunk 1 (vertical) text run 1 at (266.00,67.20) startOffset 0 endOffset 1 height 33.60: "s"
                chunk 1 (vertical) text run 2 at (266.00,100.80) startOffset 1 endOffset 2 height 33.60: "u"
                chunk 1 (vertical) text run 3 at (266.00,134.40) startOffset 2 endOffset 3 height 33.60: "p"
                chunk 1 (vertical) text run 4 at (266.00,168.00) startOffset 3 endOffset 4 height 33.60: "e"
                chunk 1 (vertical) text run 5 at (266.00,201.60) startOffset 4 endOffset 5 height 33.60: "r"
            RenderSVGTSpan {tspan} at (0,0) size 16x34
              RenderSVGInlineText {#text} at (0,235) size 15x34
                chunk 1 (vertical) text run 1 at (249.50,235.20) startOffset 0 endOffset 1 height 33.60: "x"
            RenderSVGInlineText {#text} at (4,268) size 9x34
              chunk 1 (vertical) text run 1 at (249.50,268.80) startOffset 0 endOffset 1 height 33.60: "t"
    RenderSVGText {text} at (10,304) size 269x45 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 269x45
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 268.20: "$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
