layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 450x500
  RenderSVGRoot {svg} at (29,26) size 392x455
    RenderSVGText {text} at (101,26) size 248x17 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 247x17
        chunk 1 (middle anchor) text run 1 at (101.50,40.00) startOffset 0 endOffset 38 width 247.00: "Text on Path with for text with an 'x'"
    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
      RenderSVGPath {path} at (0,0) size 0x0 [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 0 C 100 -125 240 -125 240 0"]
    RenderSVGContainer {g} at (29,49) size 392x142 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,185.00)}]
      RenderSVGRect {rect} at (29,49) size 392x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=-10.00] [y=-135.00] [width=390.00] [height=20.00]
      RenderSVGRect {rect} at (29,69) size 392x122 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=-10.00] [y=-115.00] [width=390.00] [height=120.00]
      RenderSVGText {text} at (-10,-132) size 230x15 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 230x15
          chunk 1 text run 1 at (-10.00,-120.00) startOffset 0 endOffset 39 width 230.00: "Text with one textPath child and x=\"10\""
      RenderSVGContainer {use} at (139,90) size 142x95
        RenderSVGPath {path} at (139,90) size 142x95 [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 0 C 100 -125 240 -125 240 0"]
      RenderSVGText {text} at (95,-108) size 156x80 contains 1 chunk(s)
        RenderSVGTextPath {textPath} at (0,0) size 155x80
          RenderSVGInlineText {#text} at (0,0) size 155x80
            chunk 1 (middle anchor) text run 1 at (110.76,-52.91) startOffset 0 endOffset 1 width 10.00: "T"
            chunk 1 (middle anchor) text run 2 at (114.79,-60.38) startOffset 1 endOffset 2 width 7.00: "e"
            chunk 1 (middle anchor) text run 3 at (118.96,-66.62) startOffset 2 endOffset 3 width 8.00: "x"
            chunk 1 (middle anchor) text run 4 at (122.71,-71.29) startOffset 3 endOffset 4 width 4.00: "t"
            chunk 1 (middle anchor) text run 5 at (125.42,-74.24) startOffset 4 endOffset 5 width 4.00: " "
            chunk 1 (middle anchor) text run 6 at (129.78,-78.36) startOffset 5 endOffset 6 width 8.00: "o"
            chunk 1 (middle anchor) text run 7 at (136.13,-83.22) startOffset 6 endOffset 7 width 8.00: "n"
            chunk 1 (middle anchor) text run 8 at (141.25,-86.34) startOffset 7 endOffset 8 width 4.00: " "
            chunk 1 (middle anchor) text run 9 at (146.19,-88.75) startOffset 8 endOffset 9 width 7.00: "a"
            chunk 1 (middle anchor) text run 10 at (151.33,-90.72) startOffset 9 endOffset 10 width 4.00: " "
            chunk 1 (middle anchor) text run 11 at (157.11,-92.32) startOffset 10 endOffset 11 width 8.00: "p"
            chunk 1 (middle anchor) text run 12 at (164.51,-93.49) startOffset 11 endOffset 12 width 7.00: "a"
            chunk 1 (middle anchor) text run 13 at (170.00,-93.75) startOffset 12 endOffset 13 width 4.00: "t"
            chunk 1 (middle anchor) text run 14 at (175.99,-93.44) startOffset 13 endOffset 14 width 8.00: "h"
            chunk 1 (middle anchor) text run 15 at (181.92,-92.53) startOffset 14 endOffset 15 width 4.00: " "
            chunk 1 (middle anchor) text run 16 at (186.29,-91.46) startOffset 15 endOffset 16 width 5.00: "f"
            chunk 1 (middle anchor) text run 17 at (192.43,-89.34) startOffset 16 endOffset 17 width 8.00: "o"
            chunk 1 (middle anchor) text run 18 at (198.31,-86.57) startOffset 17 endOffset 18 width 5.00: "r"
            chunk 1 (middle anchor) text run 19 at (202.20,-84.31) startOffset 18 endOffset 19 width 4.00: " "
            chunk 1 (middle anchor) text run 20 at (205.51,-82.08) startOffset 19 endOffset 20 width 4.00: "t"
            chunk 1 (middle anchor) text run 21 at (209.84,-78.68) startOffset 20 endOffset 21 width 7.00: "e"
            chunk 1 (middle anchor) text run 22 at (215.27,-73.52) startOffset 21 endOffset 22 width 8.00: "x"
            chunk 1 (middle anchor) text run 23 at (219.21,-68.99) startOffset 22 endOffset 23 width 4.00: "t"
            chunk 1 (middle anchor) text run 24 at (221.63,-65.81) startOffset 23 endOffset 24 width 4.00: " "
            chunk 1 (middle anchor) text run 25 at (225.97,-59.09) startOffset 24 endOffset 25 width 12.00: "w"
            chunk 1 (middle anchor) text run 26 at (229.67,-52.00) startOffset 25 endOffset 26 width 4.00: "/"
            chunk 1 (middle anchor) text run 27 at (231.28,-48.34) startOffset 26 endOffset 27 width 4.00: " "
            chunk 1 (middle anchor) text run 28 at (232.56,-45.08) startOffset 27 endOffset 28 width 3.00: "'"
            chunk 1 (middle anchor) text run 29 at (234.35,-39.88) startOffset 28 endOffset 29 width 8.00: "x"
            chunk 1 (middle anchor) text run 30 at (235.86,-34.60) startOffset 29 endOffset 30 width 3.00: "'"
            chunk 1 (middle anchor) text run 31 at (236.69,-31.20) startOffset 30 endOffset 31 width 4.00: "."
    RenderSVGContainer {g} at (29,194) size 392x142 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,330.00)}]
      RenderSVGRect {rect} at (29,194) size 392x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=-10.00] [y=-135.00] [width=390.00] [height=20.00]
      RenderSVGRect {rect} at (29,214) size 392x122 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=-10.00] [y=-115.00] [width=390.00] [height=120.00]
      RenderSVGText {text} at (-10,-132) size 237x15 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 237x15
          chunk 1 text run 1 at (-10.00,-120.00) startOffset 0 endOffset 40 width 237.00: "Text with one textPath child and x=\"100\""
      RenderSVGContainer {use} at (139,235) size 142x95
        RenderSVGPath {path} at (139,235) size 142x95 [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 0 C 100 -125 240 -125 240 0"]
      RenderSVGText {text} at (178,-107) size 77x107 contains 1 chunk(s)
        RenderSVGTextPath {textPath} at (0,0) size 76x107
          RenderSVGInlineText {#text} at (0,0) size 76x107
            chunk 1 (middle anchor) text run 1 at (183.87,-92.10) startOffset 0 endOffset 1 width 10.00: "T"
            chunk 1 (middle anchor) text run 2 at (191.96,-89.52) startOffset 1 endOffset 2 width 7.00: "e"
            chunk 1 (middle anchor) text run 3 at (198.75,-86.34) startOffset 2 endOffset 3 width 8.00: "x"
            chunk 1 (middle anchor) text run 4 at (203.87,-83.22) startOffset 3 endOffset 4 width 4.00: "t"
            chunk 1 (middle anchor) text run 5 at (207.12,-80.88) startOffset 4 endOffset 5 width 4.00: " "
            chunk 1 (middle anchor) text run 6 at (211.71,-77.03) startOffset 5 endOffset 6 width 8.00: "o"
            chunk 1 (middle anchor) text run 7 at (217.29,-71.29) startOffset 6 endOffset 7 width 8.00: "n"
            chunk 1 (middle anchor) text run 8 at (221.04,-66.62) startOffset 7 endOffset 8 width 4.00: " "
            chunk 1 (middle anchor) text run 9 at (224.15,-62.08) startOffset 8 endOffset 9 width 7.00: "a"
            chunk 1 (middle anchor) text run 10 at (226.96,-57.35) startOffset 9 endOffset 10 width 4.00: " "
            chunk 1 (middle anchor) text run 11 at (229.67,-52.00) startOffset 10 endOffset 11 width 8.00: "p"
            chunk 1 (middle anchor) text run 12 at (232.56,-45.08) startOffset 11 endOffset 12 width 7.00: "a"
            chunk 1 (middle anchor) text run 13 at (234.35,-39.88) startOffset 12 endOffset 13 width 4.00: "t"
            chunk 1 (middle anchor) text run 14 at (235.99,-34.11) startOffset 13 endOffset 14 width 8.00: "h"
            chunk 1 (middle anchor) text run 15 at (237.32,-28.26) startOffset 14 endOffset 15 width 4.00: " "
            chunk 1 (middle anchor) text run 16 at (238.13,-23.84) startOffset 15 endOffset 16 width 5.00: "f"
            chunk 1 (middle anchor) text run 17 at (239.03,-17.40) startOffset 16 endOffset 17 width 8.00: "o"
            chunk 1 (middle anchor) text run 18 at (239.63,-10.93) startOffset 17 endOffset 18 width 5.00: "r"
            chunk 1 (middle anchor) text run 19 at (239.87,-6.44) startOffset 18 endOffset 19 width 4.00: " "
            chunk 1 (middle anchor) text run 20 at (239.98,-2.44) startOffset 19 endOffset 20 width 4.00: "t"
    RenderSVGContainer {g} at (29,339) size 392x142 [transform={m=((1.00,0.00)(0.00,1.00)) t=(40.00,475.00)}]
      RenderSVGRect {rect} at (29,339) size 392x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#000000]}] [x=-10.00] [y=-135.00] [width=390.00] [height=20.00]
      RenderSVGRect {rect} at (29,359) size 392x122 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FFFFFF]}] [x=-10.00] [y=-115.00] [width=390.00] [height=120.00]
      RenderSVGText {text} at (-10,-132) size 287x15 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 287x15
          chunk 1 text run 1 at (-10.00,-120.00) startOffset 0 endOffset 48 width 287.00: "Text with one textPath child and x=\"-100\" y=\"10\""
      RenderSVGContainer {use} at (139,380) size 142x95
        RenderSVGPath {path} at (139,380) size 142x95 [stroke={[type=SOLID] [color=#0000FF]}] [data="M 100 0 C 100 -125 240 -125 240 0"]
      RenderSVGText {text} at (85,-108) size 158x109 contains 1 chunk(s)
        RenderSVGTextPath {textPath} at (0,0) size 157x109
          RenderSVGInlineText {#text} at (0,104) size 18x5
            chunk 1 (middle anchor) text run 1 at (100.01,-1.44) startOffset 9 endOffset 10 width 4.00: " "
          RenderSVGTSpan {tspan} at (0,0) size 120x58
            RenderSVGInlineText {#text} at (37,0) size 119x58
              chunk 1 (middle anchor) text run 1 at (135.30,-82.65) startOffset 0 endOffset 1 width 8.00: "p"
              chunk 1 (middle anchor) text run 2 at (141.69,-86.57) startOffset 1 endOffset 2 width 7.00: "a"
              chunk 1 (middle anchor) text run 3 at (146.65,-88.95) startOffset 2 endOffset 3 width 4.00: "t"
              chunk 1 (middle anchor) text run 4 at (152.28,-91.03) startOffset 3 endOffset 4 width 8.00: "h"
              chunk 1 (middle anchor) text run 5 at (158.08,-92.53) startOffset 4 endOffset 5 width 4.00: " "
              chunk 1 (middle anchor) text run 6 at (162.52,-93.27) startOffset 5 endOffset 6 width 5.00: "f"
              chunk 1 (middle anchor) text run 7 at (169.00,-93.74) startOffset 6 endOffset 7 width 8.00: "o"
              chunk 1 (middle anchor) text run 8 at (175.49,-93.49) startOffset 7 endOffset 8 width 5.00: "r"
              chunk 1 (middle anchor) text run 9 at (179.95,-92.90) startOffset 8 endOffset 9 width 4.00: " "
              chunk 1 (middle anchor) text run 10 at (183.87,-92.10) startOffset 9 endOffset 10 width 4.00: "t"
              chunk 1 (middle anchor) text run 11 at (189.15,-90.56) startOffset 10 endOffset 11 width 7.00: "e"
              chunk 1 (middle anchor) text run 12 at (196.08,-87.71) startOffset 11 endOffset 12 width 8.00: "x"
              chunk 1 (middle anchor) text run 13 at (201.35,-84.84) startOffset 12 endOffset 13 width 4.00: "t"
              chunk 1 (middle anchor) text run 14 at (204.70,-82.65) startOffset 13 endOffset 14 width 4.00: " "
              chunk 1 (middle anchor) text run 15 at (210.97,-77.70) startOffset 14 endOffset 15 width 12.00: "w"
              chunk 1 (middle anchor) text run 16 at (216.62,-72.04) startOffset 15 endOffset 16 width 4.00: "/"
              chunk 1 (middle anchor) text run 17 at (219.21,-68.99) startOffset 16 endOffset 17 width 4.00: " "
              chunk 1 (middle anchor) text run 18 at (221.33,-66.21) startOffset 17 endOffset 18 width 3.00: "'"
              chunk 1 (middle anchor) text run 19 at (224.42,-61.66) startOffset 18 endOffset 19 width 8.00: "x"
              chunk 1 (middle anchor) text run 20 at (227.20,-56.91) startOffset 19 endOffset 20 width 3.00: "'"
              chunk 1 (middle anchor) text run 21 at (228.80,-53.81) startOffset 20 endOffset 21 width 4.00: "."
