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,12) size 582x384
        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,12) size 582x384 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,0.00)}]
          RenderSVGText {text} at (0,12) size 362x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 362x23
              chunk 1 text run 1 at (0.00,30.00) startOffset 0 endOffset 47 width 361.04: "Selected text should be filled with solid blue."
          RenderSVGText {text} at (0,42) size 378x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 378x23
              chunk 1 text run 1 at (0.00,60.00) startOffset 0 endOffset 48 width 377.71: "Selected text should be stroked with solid blue."
          RenderSVGText {text} at (0,72) size 349x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 349x23
              chunk 1 text run 1 at (0.00,90.00) startOffset 0 endOffset 45 width 348.24: "Selected text should be filled with gradient."
          RenderSVGText {text} at (0,102) size 365x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 365x23
              chunk 1 text run 1 at (0.00,120.00) startOffset 0 endOffset 46 width 364.91: "Selected text should be stroked with gradient."
          RenderSVGText {text} at (0,132) size 270x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 270x23
              chunk 1 text run 1 at (0.00,150.00) startOffset 0 endOffset 35 width 269.39: "Selected text should get invisible."
          RenderSVGText {text} at (0,162) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,180.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,222) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,240.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,252) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,270.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,282) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,300.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,312) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,330.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,342) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,360.00) startOffset 0 endOffset 73 width 579.31: "Selected text should have both gradient fill, solid stroke and background"
          RenderSVGText {text} at (0,372) size 580x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 580x23
              chunk 1 text run 1 at (0.00,390.00) startOffset 0 endOffset 73 width 579.31: "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
