layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 450x500
  RenderSVGRoot {svg} at (0,0) size 448x498
    RenderSVGContainer {g} at (9,25) size 439x458
      RenderSVGText {text} at (132,25) size 186x19 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 185x18
          chunk 1 (middle anchor) text run 1 at (132.50,40.00) startOffset 0 endOffset 28 width 184.99: "Vertical text on a path test"
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
        RenderSVGPath {path} at (14,7) size 121x31 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGPath {path} at (29,0) size 92x50 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 100 C 100 0 400 0 400 100"]
      RenderSVGContainer {g} at (9,60) size 127x93 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,70.00)}]
        RenderSVGContainer {use} at (14,76) size 121x33
          RenderSVGPath {path} at (14,76) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (9,-10) size 81x53 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 53x81
            RenderSVGInlineText {#text} at (0,12) size 34x34
              chunk 1 (vertical) text run 1 at (18.25,26.77) startOffset 0 endOffset 1 height 17.00: "T"
              chunk 1 (vertical) text run 2 at (23.95,21.29) startOffset 1 endOffset 2 height 17.00: "e"
              chunk 1 (vertical) text run 3 at (29.30,16.66) startOffset 2 endOffset 3 height 17.00: "x"
              chunk 1 (vertical) text run 4 at (34.03,13.24) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (vertical) text run 5 at (37.46,11.27) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 20x24
              RenderSVGInlineText {#text} at (25,0) size 24x19
                chunk 1 (vertical) text run 1 at (42.71,9.29) startOffset 0 endOffset 1 height 17.00: "o"
                chunk 1 (vertical) text run 2 at (50.15,9.15) startOffset 1 endOffset 2 height 17.00: "n"
            RenderSVGTSpan {tspan} at (0,0) size 41x41
              RenderSVGInlineText {#text} at (40,12) size 41x40
                chunk 1 (vertical) text run 1 at (55.33,11.27) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (vertical) text run 2 at (59.43,14.45) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (vertical) text run 3 at (63.13,18.11) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (vertical) text run 4 at (67.46,22.33) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (vertical) text run 5 at (73.06,27.32) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (vertical) text run 6 at (77.34,30.62) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (vertical) text run 7 at (82.32,33.66) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 70x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 70x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 16 width 69.34: "startOffset=\"0%\""
        RenderSVGText {text} at (35,61) size 77x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 77x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 19 width 76.55: "text-anchor=\"start\""
        RenderSVGText {text} at (35,71) size 101x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 101x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 100.45: "glyph-orientation=\"auto\""
      RenderSVGContainer {g} at (163,75) size 125x78 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,70.00)}]
        RenderSVGContainer {use} at (164,76) size 121x33
          RenderSVGPath {path} at (164,76) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (13,5) size 103x34 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 33x102
            RenderSVGInlineText {#text} at (-13,-5) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 1x1
              RenderSVGInlineText {#text} at (-13,-5) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 33x102
              RenderSVGInlineText {#text} at (0,0) size 102x33
                chunk 1 (middle anchor, vertical) text run 1 at (21.05,24.03) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 2 at (34.11,13.19) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (middle anchor, vertical) text run 3 at (50.16,9.15) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 4 at (63.82,18.80) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (middle anchor, vertical) text run 5 at (76.55,30.05) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (middle anchor, vertical) text run 6 at (92.08,36.21) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (middle anchor, vertical) text run 7 at (106.64,28.41) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 70x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 70x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 16 width 69.34: "startOffset=\"0%\""
        RenderSVGText {text} at (35,61) size 88x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 88x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 20 width 87.11: "text-anchor=\"middle\""
        RenderSVGText {text} at (35,71) size 103x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 103x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 102.67: "glyph-orientation=\"0deg\""
      RenderSVGContainer {g} at (311,73) size 137x80 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,70.00)}]
        RenderSVGContainer {use} at (314,76) size 121x33
          RenderSVGPath {path} at (314,76) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (11,3) size 62x31 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 30x61
            RenderSVGInlineText {#text} at (-11,-3) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 1x1
              RenderSVGInlineText {#text} at (-11,-3) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 30x61
              RenderSVGInlineText {#text} at (0,0) size 61x30
                chunk 1 (end anchor, vertical) text run 1 at (23.40,21.80) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (end anchor, vertical) text run 2 at (36.90,11.56) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (end anchor, vertical) text run 3 at (53.23,10.16) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (end anchor, vertical) text run 4 at (66.14,21.06) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 75x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 75x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 17 width 74.34: "startOffset=\"50%\""
        RenderSVGText {text} at (35,61) size 74x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 74x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 17 width 73.77: "text-anchor=\"end\""
        RenderSVGText {text} at (35,71) size 113x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 113x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.67: "glyph-orientation=\"180deg\""
      RenderSVGContainer {g} at (14,176) size 134x77 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,170.00)}]
        RenderSVGContainer {use} at (14,176) size 121x33
          RenderSVGPath {path} at (14,176) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (67,6) size 68x39 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 39x68
            RenderSVGInlineText {#text} at (0,13) size 38x25
              chunk 1 (vertical) text run 1 at (76.00,29.65) startOffset 0 endOffset 1 height 17.00: "T"
              chunk 1 (vertical) text run 2 at (82.69,33.84) startOffset 1 endOffset 2 height 17.00: "e"
              chunk 1 (vertical) text run 3 at (89.39,36.03) startOffset 2 endOffset 3 height 17.00: "x"
              chunk 1 (vertical) text run 4 at (95.19,35.84) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (vertical) text run 5 at (98.91,34.52) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 24x24
              RenderSVGInlineText {#text} at (21,2) size 23x24
                chunk 1 (vertical) text run 1 at (103.55,31.36) startOffset 0 endOffset 1 height 17.00: "o"
                chunk 1 (vertical) text run 2 at (109.06,26.28) startOffset 1 endOffset 2 height 17.00: "n"
            RenderSVGTSpan {tspan} at (0,0) size 26x28
              RenderSVGInlineText {#text} at (39,0) size 28x25
                chunk 1 (vertical) text run 1 at (113.55,22.90) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (vertical) text run 2 at (118.00,20.20) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (vertical) text run 3 at (122.70,17.97) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (vertical) text run 4 at (128.43,16.05) startOffset 3 endOffset 4 height 17.00: "P"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 75x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 75x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 17 width 74.34: "startOffset=\"50%\""
        RenderSVGText {text} at (35,61) size 77x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 77x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 19 width 76.55: "text-anchor=\"start\""
        RenderSVGText {text} at (35,71) size 113x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 113x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.67: "glyph-orientation=\"270deg\""
      RenderSVGContainer {g} at (164,164) size 124x89 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,170.00)}]
        RenderSVGContainer {use} at (164,176) size 121x33
          RenderSVGPath {path} at (164,176) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (16,-6) size 118x47 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 47x118
            RenderSVGInlineText {#text} at (0,11) size 30x24
              chunk 1 (middle anchor, vertical) text run 1 at (23.40,21.80) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (middle anchor, vertical) text run 2 at (36.90,11.56) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 29x34
              RenderSVGInlineText {#text} at (32,0) size 34x29
                chunk 1 (middle anchor, vertical) text run 1 at (53.23,10.16) startOffset 0 endOffset 1 height 17.00: "o"
                chunk 1 (middle anchor, vertical) text run 2 at (66.14,21.06) startOffset 1 endOffset 2 height 17.00: "n"
            RenderSVGTSpan {tspan} at (0,0) size 31x63
              RenderSVGInlineText {#text} at (55,16) size 63x31
                chunk 1 (middle anchor, vertical) text run 1 at (79.22,31.88) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 2 at (95.28,35.82) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (middle anchor, vertical) text run 3 at (109.07,26.28) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 4 at (123.61,17.60) startOffset 3 endOffset 4 height 17.00: "P"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 75x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 75x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 17 width 74.34: "startOffset=\"50%\""
        RenderSVGText {text} at (35,61) size 88x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 88x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 20 width 87.11: "text-anchor=\"middle\""
        RenderSVGText {text} at (35,71) size 103x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 103x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 24 width 102.67: "glyph-orientation=\"0deg\""
      RenderSVGContainer {g} at (314,173) size 129x80 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,170.00)}]
        RenderSVGContainer {use} at (314,176) size 121x33
          RenderSVGPath {path} at (314,176) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (48,3) size 82x42 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 42x81
            RenderSVGInlineText {#text} at (0,0) size 34x35
              chunk 1 (end anchor, vertical) text run 1 at (57.29,12.61) startOffset 0 endOffset 1 height 17.00: "T"
              chunk 1 (end anchor, vertical) text run 2 at (63.04,18.03) startOffset 1 endOffset 2 height 17.00: "e"
              chunk 1 (end anchor, vertical) text run 3 at (68.13,22.95) startOffset 2 endOffset 3 height 17.00: "x"
              chunk 1 (end anchor, vertical) text run 4 at (72.48,26.84) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (end anchor, vertical) text run 5 at (75.56,29.32) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 21x19
              RenderSVGInlineText {#text} at (29,11) size 18x21
                chunk 1 (end anchor, vertical) text run 1 at (80.21,32.49) startOffset 0 endOffset 1 height 17.00: "o"
                chunk 1 (end anchor, vertical) text run 2 at (87.04,35.53) startOffset 1 endOffset 2 height 17.00: "n"
            RenderSVGTSpan {tspan} at (0,0) size 37x40
              RenderSVGInlineText {#text} at (41,5) size 39x36
                chunk 1 (end anchor, vertical) text run 1 at (92.60,36.19) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (end anchor, vertical) text run 2 at (97.66,35.08) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (end anchor, vertical) text run 3 at (102.16,32.49) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (end anchor, vertical) text run 4 at (106.63,28.43) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (end anchor, vertical) text run 5 at (112.43,23.68) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (end anchor, vertical) text run 6 at (116.98,20.76) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (end anchor, vertical) text run 7 at (122.20,18.17) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 80x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 80x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 18 width 79.34: "startOffset=\"100%\""
        RenderSVGText {text} at (35,61) size 74x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 74x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 17 width 73.77: "text-anchor=\"end\""
        RenderSVGText {text} at (35,71) size 108x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 108x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 25 width 107.67: "glyph-orientation=\"90deg\""
      RenderSVGContainer {g} at (14,271) size 134x82 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,270.00)}]
        RenderSVGContainer {use} at (14,276) size 121x33
          RenderSVGPath {path} at (14,276) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (38,1) size 86x39 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 38x86
            RenderSVGInlineText {#text} at (0,0) size 75x38
              chunk 1 (vertical) text run 1 at (51.13,9.40) startOffset 0 endOffset 1 height 17.00: "T"
              chunk 1 (vertical) text run 2 at (64.54,19.50) startOffset 1 endOffset 2 height 17.00: "e"
              chunk 1 (vertical) text run 3 at (77.36,30.64) startOffset 2 endOffset 3 height 17.00: "x"
              chunk 1 (vertical) text run 4 at (93.08,36.16) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (vertical) text run 5 at (107.38,27.74) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 15x19
              RenderSVGInlineText {#text} at (66,2) size 19x14
                chunk 1 (vertical) text run 1 at (121.54,18.46) startOffset 0 endOffset 1 height 17.00: "o"
            RenderSVGTSpan {tspan} at (0,0) size 1x1
              RenderSVGInlineText {#text} at (-38,-1) size 0x0
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 67x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 67x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 16 width 66.01: "startOffset=\"35\""
        RenderSVGText {text} at (35,61) size 77x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 77x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 19 width 76.55: "text-anchor=\"start\""
        RenderSVGText {text} at (35,71) size 113x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 113x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 26 width 112.67: "glyph-orientation=\"180deg\""
      RenderSVGContainer {g} at (160,263) size 125x80 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,270.00)}]
        RenderSVGContainer {use} at (164,276) size 121x33
          RenderSVGPath {path} at (164,276) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (10,-7) size 70x42 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 42x70
            RenderSVGInlineText {#text} at (0,18) size 23x24
              chunk 1 (middle anchor, vertical) text run 1 at (19.46,25.57) startOffset 2 endOffset 3 height 17.00: "x"
              chunk 1 (middle anchor, vertical) text run 2 at (23.68,21.54) startOffset 3 endOffset 4 height 17.00: "t"
              chunk 1 (middle anchor, vertical) text run 3 at (26.62,18.89) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 24x24
              RenderSVGInlineText {#text} at (6,0) size 24x24
                chunk 1 (middle anchor, vertical) text run 1 at (30.99,15.35) startOffset 0 endOffset 1 height 17.00: "o"
                chunk 1 (middle anchor, vertical) text run 2 at (37.32,11.34) startOffset 1 endOffset 2 height 17.00: "n"
            RenderSVGTSpan {tspan} at (0,0) size 36x43
              RenderSVGInlineText {#text} at (27,6) size 42x35
                chunk 1 (middle anchor, vertical) text run 1 at (42.56,9.33) startOffset 0 endOffset 1 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 2 at (47.72,8.81) startOffset 1 endOffset 2 height 17.00: "a"
                chunk 1 (middle anchor, vertical) text run 3 at (52.77,9.97) startOffset 2 endOffset 3 height 17.00: " "
                chunk 1 (middle anchor, vertical) text run 4 at (57.91,13.10) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (middle anchor, vertical) text run 5 at (63.31,18.30) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (middle anchor, vertical) text run 6 at (67.20,22.07) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (middle anchor, vertical) text run 7 at (71.51,26.00) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 67x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 67x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 16 width 66.01: "startOffset=\"35\""
        RenderSVGText {text} at (35,61) size 88x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 88x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 20 width 87.11: "text-anchor=\"middle\""
      RenderSVGContainer {g} at (308,276) size 135x77 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,270.00)}]
        RenderSVGContainer {use} at (314,276) size 121x33
          RenderSVGPath {path} at (314,276) size 121x33 [transform={m=((0.15,0.00)(0.00,0.15)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 200 C 200 100 300 0 400 100 C 500 200 600 300 700 200 C 800 100 900 100 900 100"]
        RenderSVGText {text} at (8,6) size 32x31 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 31x31
            RenderSVGInlineText {#text} at (-8,-6) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 1x1
              RenderSVGInlineText {#text} at (-8,-6) size 0x0
            RenderSVGTSpan {tspan} at (0,0) size 31x31
              RenderSVGInlineText {#text} at (0,0) size 31x31
                chunk 1 (end anchor, vertical) text run 1 at (17.13,27.88) startOffset 3 endOffset 4 height 17.00: "P"
                chunk 1 (end anchor, vertical) text run 2 at (22.50,22.64) startOffset 4 endOffset 5 height 17.00: "a"
                chunk 1 (end anchor, vertical) text run 3 at (26.50,19.00) startOffset 5 endOffset 6 height 17.00: "t"
                chunk 1 (end anchor, vertical) text run 4 at (31.03,15.33) startOffset 6 endOffset 7 height 17.00: "h"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (35,51) size 67x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 67x12
            chunk 1 text run 1 at (35.00,60.00) startOffset 0 endOffset 16 width 66.01: "startOffset=\"35\""
        RenderSVGText {text} at (35,61) size 74x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 74x12
            chunk 1 text run 1 at (35.00,70.00) startOffset 0 endOffset 17 width 73.77: "text-anchor=\"end\""
        RenderSVGText {text} at (35,71) size 108x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 108x12
            chunk 1 text run 1 at (35.00,80.00) startOffset 0 endOffset 25 width 107.67: "glyph-orientation=\"90deg\""
      RenderSVGContainer {g} at (22,369) size 115x89 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,370.00)}]
        RenderSVGContainer {use} at (39,369) size 92x51
          RenderSVGPath {path} at (39,369) size 92x51 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 100 C 100 0 400 0 400 100"]
        RenderSVGText {text} at (12,4) size 115x46 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 46x115
            RenderSVGTSpan {tspan} at (0,0) size 42x32
              RenderSVGInlineText {#text} at (0,4) size 32x42
                chunk 1 (vertical) text run 1 at (30.10,47.08) startOffset 0 endOffset 1 height 17.00: "s"
                chunk 1 (vertical) text run 2 at (31.19,40.51) startOffset 1 endOffset 2 height 17.00: "u"
                chunk 1 (vertical) text run 3 at (33.90,33.54) startOffset 2 endOffset 3 height 17.00: "p"
                chunk 1 (vertical) text run 4 at (37.85,27.68) startOffset 3 endOffset 4 height 17.00: "e"
                chunk 1 (vertical) text run 5 at (41.95,23.55) startOffset 4 endOffset 5 height 17.00: "r"
            RenderSVGInlineText {#text} at (26,0) size 33x25
              chunk 1 (vertical) text run 1 at (45.43,20.91) startOffset 0 endOffset 1 height 17.00: " "
              chunk 1 (vertical) text run 2 at (49.91,18.26) startOffset 1 endOffset 2 height 17.00: "a"
              chunk 1 (vertical) text run 3 at (56.42,15.50) startOffset 2 endOffset 3 height 17.00: "n"
              chunk 1 (vertical) text run 4 at (63.66,13.58) startOffset 3 endOffset 4 height 17.00: "d"
              chunk 1 (vertical) text run 5 at (69.23,12.78) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 20x22
              RenderSVGInlineText {#text} at (58,8) size 21x19
                chunk 1 (vertical) text run 1 at (74.01,12.51) startOffset 0 endOffset 1 height 17.00: "s"
                chunk 1 (vertical) text run 2 at (80.67,12.77) startOffset 1 endOffset 2 height 17.00: "u"
                chunk 1 (vertical) text run 3 at (88.07,13.94) startOffset 2 endOffset 3 height 17.00: "b"
            RenderSVGInlineText {#text} at (76,2) size 39x37
              chunk 1 (vertical) text run 1 at (94.47,15.81) startOffset 0 endOffset 1 height 17.00: "s"
              chunk 1 (vertical) text run 2 at (100.19,18.31) startOffset 1 endOffset 2 height 17.00: "c"
              chunk 1 (vertical) text run 3 at (105.17,21.32) startOffset 2 endOffset 3 height 17.00: "r"
              chunk 1 (vertical) text run 4 at (108.75,24.18) startOffset 3 endOffset 4 height 17.00: "i"
              chunk 1 (vertical) text run 5 at (112.75,28.42) startOffset 4 endOffset 5 height 17.00: "p"
              chunk 1 (vertical) text run 6 at (115.96,33.28) startOffset 5 endOffset 6 height 17.00: "t"
              chunk 1 (vertical) text run 7 at (117.99,37.84) startOffset 6 endOffset 7 height 17.00: "s"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (20,56) size 90x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 90x12
            chunk 1 text run 1 at (20.00,65.00) startOffset 0 endOffset 22 width 89.34: "baseline-shift=\"super\""
        RenderSVGText {text} at (20,66) size 99x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 99x12
            chunk 1 text run 1 at (20.00,75.00) startOffset 0 endOffset 24 width 98.51: "and baseline-shift=\"sub\""
        RenderSVGText {text} at (20,76) size 101x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 101x12
            chunk 1 text run 1 at (20.00,85.00) startOffset 0 endOffset 24 width 100.45: "glyph-orientation=\"auto\""
      RenderSVGContainer {g} at (318,369) size 108x79 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,370.00)}]
        RenderSVGContainer {use} at (329,369) size 92x51
          RenderSVGPath {path} at (329,369) size 92x51 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 100 C 100 0 400 0 400 100"]
        RenderSVGText {text} at (18,3) size 108x48 contains 1 chunk(s)
          RenderSVGTextPath {textPath} at (0,0) size 47x108
            RenderSVGTSpan {tspan} at (0,0) size 47x42
              RenderSVGInlineText {#text} at (0,0) size 41x47
                chunk 1 (vertical) text run 1 at (30.17,46.26) startOffset 0 endOffset 1 height 17.00: "p"
                chunk 1 (vertical) text run 2 at (31.65,38.92) startOffset 1 endOffset 2 height 17.00: "o"
                chunk 1 (vertical) text run 3 at (34.29,32.81) startOffset 2 endOffset 3 height 17.00: "s"
                chunk 1 (vertical) text run 4 at (37.06,28.65) startOffset 3 endOffset 4 height 17.00: "i"
                chunk 1 (vertical) text run 5 at (39.82,25.53) startOffset 4 endOffset 5 height 17.00: "t"
                chunk 1 (vertical) text run 6 at (42.93,22.75) startOffset 5 endOffset 6 height 17.00: "i"
                chunk 1 (vertical) text run 7 at (47.73,19.45) startOffset 6 endOffset 7 height 17.00: "v"
                chunk 1 (vertical) text run 8 at (54.09,16.36) startOffset 7 endOffset 8 height 17.00: "e"
            RenderSVGInlineText {#text} at (36,0) size 33x20
              chunk 1 (vertical) text run 1 at (59.02,14.69) startOffset 0 endOffset 1 height 17.00: " "
              chunk 1 (vertical) text run 2 at (64.08,13.50) startOffset 1 endOffset 2 height 17.00: "a"
              chunk 1 (vertical) text run 3 at (71.10,12.63) startOffset 2 endOffset 3 height 17.00: "n"
              chunk 1 (vertical) text run 4 at (78.60,12.61) startOffset 3 endOffset 4 height 17.00: "d"
              chunk 1 (vertical) text run 5 at (84.19,13.20) startOffset 4 endOffset 5 height 17.00: " "
            RenderSVGTSpan {tspan} at (0,0) size 42x43
              RenderSVGInlineText {#text} at (64,4) size 43x41
                chunk 1 (vertical) text run 1 at (89.70,14.34) startOffset 0 endOffset 1 height 17.00: "n"
                chunk 1 (vertical) text run 2 at (96.41,16.56) startOffset 1 endOffset 2 height 17.00: "e"
                chunk 1 (vertical) text run 3 at (102.73,19.73) startOffset 2 endOffset 3 height 17.00: "g"
                chunk 1 (vertical) text run 4 at (108.44,23.90) startOffset 3 endOffset 4 height 17.00: "a"
                chunk 1 (vertical) text run 5 at (112.22,27.77) startOffset 4 endOffset 5 height 17.00: "t"
                chunk 1 (vertical) text run 6 at (114.69,31.12) startOffset 5 endOffset 6 height 17.00: "i"
                chunk 1 (vertical) text run 7 at (117.39,36.28) startOffset 6 endOffset 7 height 17.00: "v"
                chunk 1 (vertical) text run 8 at (119.38,43.06) startOffset 7 endOffset 8 height 17.00: "e"
          RenderSVGInlineText {#text} at (0,0) size 0x0
        RenderSVGText {text} at (20,56) size 98x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 98x12
            chunk 1 text run 1 at (20.00,65.00) startOffset 0 endOffset 23 width 97.75: "baseline-shift=\"+/-20%\""
        RenderSVGText {text} at (20,66) size 101x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 101x12
            chunk 1 text run 1 at (20.00,75.00) startOffset 0 endOffset 24 width 100.45: "glyph-orientation=\"auto\""
      RenderSVGContainer {g} at (179,355) size 102x128 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,370.00)}]
        RenderSVGContainer {g} at (179,355) size 92x89 [transform={m=((0.75,0.00)(0.00,0.75)) t=(0.00,0.00)}]
          RenderSVGContainer {use} at (202,369) size 69x39
            RenderSVGPath {path} at (202,369) size 69x39 [transform={m=((0.30,0.00)(0.00,0.50)) t=(0.00,0.00)}] [stroke={[type=SOLID] [color=#0000FF] [stroke width=2.00]}] [data="M 100 100 C 100 0 400 0 400 100"]
          RenderSVGText {text} at (-2,-20) size 91x119 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 23x96
              chunk 1 (vertical) text run 1 at (3.50,-20.00) startOffset 0 endOffset 1 height 22.67: "b"
              chunk 1 (vertical) text run 2 at (3.50,-10.00) startOffset 1 endOffset 2 height 22.67: "e"
              chunk 1 (vertical) text run 3 at (3.50,-1.12) startOffset 2 endOffset 3 height 22.67: "f"
              chunk 1 (vertical) text run 4 at (3.50,5.54) startOffset 3 endOffset 4 height 22.67: "o"
              chunk 1 (vertical) text run 5 at (3.50,15.54) startOffset 4 endOffset 5 height 22.67: "r"
              chunk 1 (vertical) text run 6 at (3.50,22.20) startOffset 5 endOffset 6 height 22.67: "e"
              chunk 1 (vertical) text run 7 at (3.50,31.07) startOffset 6 endOffset 7 height 22.67: " "
              chunk 1 (vertical) text run 8 at (3.50,36.07) startOffset 7 endOffset 8 height 22.67: "p"
              chunk 1 (vertical) text run 9 at (3.50,46.07) startOffset 8 endOffset 9 height 22.67: "a"
              chunk 1 (vertical) text run 10 at (3.50,54.95) startOffset 9 endOffset 10 height 22.67: "t"
              chunk 1 (vertical) text run 11 at (3.50,60.51) startOffset 10 endOffset 11 height 22.67: "h"
              chunk 1 (vertical) text run 12 at (3.50,70.51) startOffset 11 endOffset 12 height 22.67: " "
            RenderSVGTextPath {textPath} at (0,0) size 42x62
              RenderSVGInlineText {#text} at (23,20) size 61x42
                chunk 1 (vertical) text run 1 at (34.39,32.64) startOffset 0 endOffset 1 height 22.67: "o"
                chunk 1 (vertical) text run 2 at (40.56,24.81) startOffset 1 endOffset 2 height 22.67: "n"
                chunk 1 (vertical) text run 3 at (46.47,20.22) startOffset 2 endOffset 3 height 22.67: " "
                chunk 1 (vertical) text run 4 at (53.11,16.76) startOffset 3 endOffset 4 height 22.67: "p"
                chunk 1 (vertical) text run 5 at (62.10,13.91) startOffset 4 endOffset 5 height 22.67: "a"
                chunk 1 (vertical) text run 6 at (69.22,12.78) startOffset 5 endOffset 6 height 22.67: "t"
                chunk 1 (vertical) text run 7 at (76.99,12.53) startOffset 6 endOffset 7 height 22.67: "h"
            RenderSVGInlineText {#text} at (66,42) size 23x77
              chunk 1 (vertical) text run 1 at (70.49,22.53) startOffset 0 endOffset 1 height 22.67: "a"
              chunk 1 (vertical) text run 2 at (70.49,31.41) startOffset 1 endOffset 2 height 22.67: "f"
              chunk 1 (vertical) text run 3 at (70.49,38.07) startOffset 2 endOffset 3 height 22.67: "t"
              chunk 1 (vertical) text run 4 at (70.49,43.63) startOffset 3 endOffset 4 height 22.67: "e"
              chunk 1 (vertical) text run 5 at (70.49,52.50) startOffset 4 endOffset 5 height 22.67: "r"
              chunk 1 (vertical) text run 6 at (70.49,59.16) startOffset 5 endOffset 6 height 22.67: " "
              chunk 1 (vertical) text run 7 at (70.49,64.16) startOffset 6 endOffset 7 height 22.67: "p"
              chunk 1 (vertical) text run 8 at (70.49,74.16) startOffset 7 endOffset 8 height 22.67: "a"
              chunk 1 (vertical) text run 9 at (70.49,83.04) startOffset 8 endOffset 9 height 22.67: "t"
              chunk 1 (vertical) text run 10 at (70.49,88.60) startOffset 9 endOffset 10 height 22.67: "h"
        RenderSVGText {text} at (0,91) size 100x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 100x12
            chunk 1 text run 1 at (0.00,100.00) startOffset 0 endOffset 26 width 99.40: "text before/after textPath"
        RenderSVGText {text} at (0,101) size 101x12 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 101x12
            chunk 1 text run 1 at (0.00,110.00) startOffset 0 endOffset 24 width 100.45: "glyph-orientation=\"auto\""
    RenderSVGContainer {use} at (0,0) size 448x498
      RenderSVGContainer {g} at (0,0) size 448x498
        RenderSVGRect {rect} at (0,0) size 448x498 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=446.00] [height=496.00]
        RenderSVGContainer {g} at (418,466) size 27x29 [transform={m=((1.00,0.00)(0.00,1.00)) t=(418.00,467.00)}]
          RenderSVGViewportContainer {svg} at (418,466) size 27x29
            RenderSVGPath {path} at (418,469) size 13x18 [fill={[type=SOLID] [color=#6666FF]}] [data="M 172 44 C 137 60 31 135 11 199 C 3 226 33 247 55 232 C 14 306 -1 332 0 356 C 0 370 13 398 44 383 C 52 379 79 358 96 342 C 110 341 120 331 138 314 C 155 328 174 324 190 307 C 212 309 272 229 234 199 C 231 175 204 162 181 181 C 175 179 168 180 163 182 C 185 147 206 100 212 77 C 219 47 188 36 172 44 Z"]
            RenderSVGPath {path} at (432,466) size 13x16 [fill={[type=SOLID] [color=#FF0000]}] [data="M 400 0 C 382 3 351 31 351 31 C 322 54 308 89 323 126 C 310 140 294 170 294 193 C 294 221 314 245 344 222 C 351 230 365 238 381 227 C 376 256 384 275 407 276 C 408 286 420 307 443 293 C 459 283 501 254 522 237 C 547 214 547 143 504 148 C 537 89 501 52 477 64 C 467 68 431 89 425 94 C 424 87 420 82 414 80 C 436 45 436 -5 401 0 Z"]
            RenderSVGPath {path} at (426,484) size 15x11 [fill={[type=SOLID] [color=#33CC33]}] [data="M 275 353 C 229 365 187 396 161 444 C 152 460 167 481 186 477 C 172 501 146 544 171 558 C 199 574 223 550 231 543 C 249 564 281 553 312 526 C 353 540 380 524 415 473 C 423 461 445 430 445 408 C 445 392 430 378 410 387 C 409 375 401 349 357 368 C 347 362 326 363 303 385 C 308 375 300 347 275 353 Z"]
