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 (8,38) size 776x561
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
        RenderSVGRect {rect} at (0,0) size 100x67 [fill={[type=SOLID] [color=#000000]}] [x=0.00] [y=0.00] [width=60.00] [height=40.00]
      RenderSVGContainer {g} at (155,38) size 629x561
        RenderSVGContainer {g} at (400,100) size 384x334 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,100.00)}]
          RenderSVGContainer {g} at (400,100) size 384x334 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,20.00)}]
            RenderSVGRect {rect} at (550,233) size 167x167 [transform={m=((2.00,0.00)(0.00,2.00)) t=(0.00,0.00)}] [fill={[type=SOLID] [color=#FFFF00]}] [x=10.00] [y=10.00] [width=50.00] [height=50.00]
            RenderSVGRect {rect} at (533,216) size 167x168 [fill={[type=SOLID] [color=#FFFF00]}] [x=10.00] [y=10.00] [width=100.00] [height=100.00]
            RenderSVGContainer {g} at (400,100) size 384x334 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,20.00)}]
              RenderSVGRect {rect} at (533,250) size 251x84 [fill={[type=SOLID] [color=#FFFF00]}] [x=0.00] [y=10.00] [width=150.00] [height=50.00]
              RenderSVGEllipse {circle} at (400,100) size 334x334 [fill={[type=SOLID] [color=#FFFF00]}] [cx=20.00] [cy=20.00] [r=100.00]
          RenderSVGRect {rect} at (0,0) size 0x0 [fill={[type=SOLID] [color=#000000]}] [x=10.00] [y=10.00] [width=400.00] [height=0.00]
          RenderSVGContainer {use} at (450,133) size 100x67 [transform={m=((1.00,0.00)(0.00,1.00)) t=(-30.00,-20.00)}]
            RenderSVGRect {rect} at (450,133) size 100x67 [fill={[type=SOLID] [color=#FFFF00]}] [x=0.00] [y=0.00] [width=60.00] [height=40.00]
          RenderSVGContainer {g} at (0,0) size 0x0
          RenderSVGPath {line} at (500,158) size 167x17 [stroke={[type=SOLID] [color=#FFFF00] [stroke width=10.00]}] [fill={[type=SOLID] [color=#000000]}] [x1=0.00] [y1=0.00] [x2=100.00] [y2=0.00]
        RenderSVGText {text} at (93,23) size 294x22 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 294x21
            chunk 1 (middle anchor) text run 1 at (93.43,40.00) startOffset 0 endOffset 35 width 293.14: "SVGLocatable.getBBox() - basic test"
        RenderSVGRect {rect} at (549,524) size 219x69 [stroke={[type=SOLID] [color=#0000FF]}] [x=330.00] [y=315.00] [width=130.00] [height=40.00]
        RenderSVGContainer {g} at (555,521) size 161x78
          RenderSVGText {text} at (333,313) size 97x47 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 97x47
              chunk 1 text run 1 at (333.00,350.00) startOffset 0 endOffset 6 width 96.10: "failed"
      RenderSVGText {text} at (5,70) size 46x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 46x12
          chunk 1 text run 1 at (5.00,80.00) startOffset 0 endOffset 9 width 45.35: "getBBox()"
      RenderSVGText {text} at (5,82) size 113x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 113x12
          chunk 1 text run 1 at (5.00,92.00) startOffset 0 endOffset 24 width 112.28: "[group1] -70 -60 230 200"
      RenderSVGText {text} at (5,94) size 86x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 86x12
          chunk 1 text run 1 at (5.00,104.00) startOffset 0 endOffset 19 width 85.06: "[rect1] 10 10 50 50"
      RenderSVGText {text} at (5,106) size 97x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 97x12
          chunk 1 text run 1 at (5.00,116.00) startOffset 0 endOffset 21 width 96.41: "[rect2] 10 10 100 100"
      RenderSVGText {text} at (5,118) size 113x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 113x12
          chunk 1 text run 1 at (5.00,128.00) startOffset 0 endOffset 24 width 112.28: "[group2] -80 -80 230 200"
      RenderSVGText {text} at (5,130) size 86x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 86x12
          chunk 1 text run 1 at (5.00,140.00) startOffset 0 endOffset 19 width 85.06: "[rect3] 0 10 150 50"
      RenderSVGText {text} at (5,142) size 110x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 110x12
          chunk 1 text run 1 at (5.00,152.00) startOffset 0 endOffset 25 width 110.00: "[circle1] -80 -80 200 200"
      RenderSVGText {text} at (5,154) size 251x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 251x12
          chunk 1 text run 1 at (5.00,164.00) startOffset 0 endOffset 55 width 250.04: "Results do not match expected values ( 10, 10, 400, 0 )"
      RenderSVGText {text} at (5,166) size 63x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 63x12
          chunk 1 text run 1 at (5.00,176.00) startOffset 0 endOffset 15 width 62.37: "[rect4] 0 0 0 0"
      RenderSVGText {text} at (5,178) size 257x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 257x12
          chunk 1 text run 1 at (5.00,188.00) startOffset 0 endOffset 57 width 256.84: "Results do not match expected values ( -30, -20, 60, 40 )"
      RenderSVGText {text} at (5,190) size 83x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 83x12
          chunk 1 text run 1 at (5.00,200.00) startOffset 0 endOffset 17 width 82.78: "[myUse] 0 0 60 40"
      RenderSVGText {text} at (5,202) size 92x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 92x12
          chunk 1 text run 1 at (5.00,212.00) startOffset 0 endOffset 21 width 91.30: "[thickLine] 0 0 100 0"
      RenderSVGText {text} at (5,214) size 252x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 252x12
          chunk 1 text run 1 at (5.00,224.00) startOffset 0 endOffset 54 width 251.19: "node removed from tree, should still have bounding box"
      RenderSVGText {text} at (5,226) size 269x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 269x12
          chunk 1 text run 1 at (5.00,236.00) startOffset 0 endOffset 59 width 268.18: "Results do not match expected values ( -80, -80, 200, 200 )"
      RenderSVGText {text} at (5,238) size 73x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 73x12
          chunk 1 text run 1 at (5.00,248.00) startOffset 0 endOffset 18 width 72.00: "[circle2]: 0 0 0 0"
      RenderSVGText {text} at (5,250) size 198x13 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 198x12
          chunk 1 text run 1 at (5.00,260.00) startOffset 0 endOffset 43 width 197.87: "Results do not match expected values (null)"
    RenderSVGContainer {g} at (16,517) size 381x62
      RenderSVGText {text} at (10,310) size 229x38 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 229x37
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 228.03: "$Revision: 1.1 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
    RenderSVGContainer {g} at (0,0) size 800x39
      RenderSVGRect {rect} at (0,0) size 800x36 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FF0000]}] [x=1.00] [y=1.00] [width=478.00] [height=20.00]
      RenderSVGText {text} at (206,-1) size 68x24 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 68x23
          chunk 1 (middle anchor) text run 1 at (206.46,18.00) startOffset 0 endOffset 5 width 67.09: "DRAFT"
