layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x505
  RenderBlock {html} at (0,0) size 800x505
    RenderBody {body} at (0,0) size 800x505
      RenderSVGRoot {svg} at (9,13) size 571x383
        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
          RenderSVGResourceLinearGradient {linearGradient} [id="grad1"] [gradientUnits=objectBoundingBox] [gradientTransform={m=((0.71,0.71)(-0.71,0.71)) t=(0.00,0.00)}] [start=(0,0)] [end=(1,0)]
            RenderSVGGradientStop {stop} [offset=0.00] [color=#000000]
            RenderSVGGradientStop {stop} [offset=1.00] [color=#FFFFFF]
          RenderSVGResourceLinearGradient {linearGradient} [id="grad2"] [gradientUnits=objectBoundingBox] [gradientTransform={m=((0.71,0.71)(-0.71,0.71)) t=(0.00,0.00)}] [start=(0,0)] [end=(1,0)]
            RenderSVGGradientStop {stop} [offset=0.00] [color=#FF0000]
            RenderSVGGradientStop {stop} [offset=1.00] [color=#008000]
        RenderSVGContainer {g} at (9,13) size 571x383 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,0.00)}]
          RenderSVGText {text} at (0,13) size 359x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 359x22
              chunk 1 text run 1 at (0.00,30.00) startOffset 0 endOffset 47 width 359.00: "Selected text should be filled with solid blue."
          RenderSVGText {text} at (0,43) size 374x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 374x22
              chunk 1 text run 1 at (0.00,60.00) startOffset 0 endOffset 48 width 374.00: "Selected text should be stroked with solid blue."
          RenderSVGText {text} at (0,73) size 344x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 344x22
              chunk 1 text run 1 at (0.00,90.00) startOffset 0 endOffset 45 width 344.00: "Selected text should be filled with gradient."
          RenderSVGText {text} at (0,103) size 359x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 359x22
              chunk 1 text run 1 at (0.00,120.00) startOffset 0 endOffset 46 width 359.00: "Selected text should be stroked with gradient."
          RenderSVGText {text} at (0,133) size 266x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 266x22
              chunk 1 text run 1 at (0.00,150.00) startOffset 0 endOffset 35 width 266.00: "Selected text should get invisible."
          RenderSVGText {text} at (0,163) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,180.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,223) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,240.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,253) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,270.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,283) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,300.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,313) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,330.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,343) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,360.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,373) size 569x22 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 569x22
              chunk 1 text run 1 at (0.00,390.00) startOffset 0 endOffset 73 width 569.00: "Selected text should have both gradient fill, solid stroke and background"
      RenderText {#text} at (0,0) size 0x0
selection start: position 0 of child 0 {#text} of child 3 {text} of child 3 {g} of child 1 {svg} of body
selection end:   position 73 of child 0 {#text} of child 27 {text} of child 3 {g} of child 1 {svg} of body
