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
    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
    RenderSVGContainer {g} at (16,14) size 609x491
      RenderSVGContainer {g} at (16,14) size 609x491
        RenderSVGContainer {g} at (28,14) size 597x260 [transform={m=((1.00,0.00)(0.00,1.00)) t=(70.00,-60.00)}]
          RenderSVGText {text} at (30,131) size 344x24 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 344x23
              chunk 1 text run 1 at (30.00,150.00) startOffset 0 endOffset 37 width 344.00: "Rotated Text for testing SVGLocatable"
          RenderSVGText {text} at (100,112) size 296x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 296x23
              chunk 1 text run 1 at (100.00,130.00) startOffset 0 endOffset 35 width 295.71: "Some other text with id 'otherText'"
          RenderSVGViewportContainer {svg} at (458,75) size 167x167
            RenderSVGEllipse {circle} at (458,75) size 167x167 [fill={[type=SOLID] [color=#0000FF]}] [cx=0.00] [cy=0.00] [r=50.00]
        RenderSVGText {text} at (10,189) size 293x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 293x14
            chunk 1 text run 1 at (10.00,200.00) startOffset 0 endOffset 52 width 292.80: ".getScreenCTM(): 0.71,0.71,-0.71,0.71,116.67,-100.00"
        RenderSVGText {text} at (10,209) size 256x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 256x14
            chunk 1 text run 1 at (10.00,220.00) startOffset 0 endOffset 46 width 255.00: ".getCTM(): 0.71,0.71,-0.71,0.71,116.67,-100.00"
        RenderSVGText {text} at (10,229) size 312x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 312x14
            chunk 1 text run 1 at (10.00,240.00) startOffset 0 endOffset 56 width 311.40: ".getTransformToElement(): 0.42,0.42,-0.42,0.42,0.00,0.00"
        RenderSVGText {text} at (10,249) size 344x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 344x14
            chunk 1 text run 1 at (10.00,260.00) startOffset 0 endOffset 65 width 343.20: ".getBBox() for 'blueCircle': .x=-50,.y=-50,.width=100,.height=100"
        RenderSVGText {text} at (10,269) size 256x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 256x14
            chunk 1 text run 1 at (10.00,280.00) startOffset 0 endOffset 47 width 255.00: ".farthestViewportElement of blueCircle=svg-root"
        RenderSVGText {text} at (10,289) size 272x14 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 272x14
            chunk 1 text run 1 at (10.00,300.00) startOffset 0 endOffset 47 width 271.80: ".nearestViewportElement of blueCircle=nestedSVG"
    RenderSVGContainer {g} at (16,518) size 380x60
      RenderSVGText {text} at (10,311) size 228x36 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 228x36
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 227.40: "$Revision: 1.6 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
