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 (40,17) size 728x457
      RenderSVGText {text} at (107,10) size 266x19 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 265x19
          chunk 1 (middle anchor) text run 1 at (107.87,25.00) startOffset 0 endOffset 33 width 264.25: "<animateTransform> shape elements"
      RenderSVGContainer {g} at (40,99) size 728x375
        RenderSVGContainer {g} at (49,99) size 102x159 [transform={m=((1.00,0.00)(0.00,1.00)) t=(60.00,90.00)}]
          RenderSVGPath {path} at (49,99) size 102x102 [stroke={[type=SOLID] [color=#FFB400]}] [fill={[type=SOLID] [color=#E6E6E6]}] [data="M 0 0 C 20 0 30 -10 30 -30 C 10 -30 0 -20 0 0 C 0 -20 -10 -30 -30 -30 C -30 -10 -20 0 0 0 C -20 0 -30 10 -30 30 C -10 30 0 20 0 0 C 0 20 10 30 30 30 C 30 10 20 0 0 0 Z"]
          RenderSVGText {text} at (-29,42) size 58x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 57x22
              chunk 1 (middle anchor) text run 1 at (-28.03,60.00) startOffset 0 endOffset 6 width 56.06: "<path>"
        RenderSVGContainer {g} at (249,115) size 102x143 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,90.00)}]
          RenderSVGRect {rect} at (249,115) size 102x70 [stroke={[type=SOLID] [color=#FFB400]}] [fill={[type=SOLID] [color=#E6E6E6]}] [x=-30.00] [y=-20.00] [width=60.00] [height=40.00]
          RenderSVGText {text} at (-26,42) size 52x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 52x22
              chunk 1 (middle anchor) text run 1 at (-25.51,60.00) startOffset 0 endOffset 6 width 51.03: "<rect>"
        RenderSVGContainer {g} at (447,99) size 106x159 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,90.00)}]
          RenderSVGEllipse {circle} at (449,99) size 102x102 [stroke={[type=SOLID] [color=#FFB400]}] [fill={[type=SOLID] [color=#E6E6E6]}] [cx=0.00] [cy=0.00] [r=30.00]
          RenderSVGText {text} at (-32,42) size 64x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 64x22
              chunk 1 (middle anchor) text run 1 at (-31.51,60.00) startOffset 0 endOffset 8 width 63.03: "<circle>"
        RenderSVGContainer {g} at (632,115) size 136x143 [transform={m=((1.00,0.00)(0.00,1.00)) t=(420.00,90.00)}]
          RenderSVGEllipse {ellipse} at (632,115) size 136x70 [stroke={[type=SOLID] [color=#FFB400]}] [fill={[type=SOLID] [color=#E6E6E6]}] [cx=0.00] [cy=0.00] [rx=40.00] [ry=20.00]
          RenderSVGText {text} at (-37,42) size 74x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 73x22
              chunk 1 (middle anchor) text run 1 at (-36.03,60.00) startOffset 0 endOffset 9 width 72.05: "<ellipse>"
        RenderSVGContainer {g} at (40,323) size 120x151 [transform={m=((1.00,0.00)(0.00,1.00)) t=(60.00,220.00)}]
          RenderSVGPath {line} at (40,323) size 120x87 [stroke={[type=SOLID] [color=#FFB400] [stroke width=10.00] [line cap=ROUND]}] [fill={[type=SOLID] [color=#000000]}] [x1=-30.00] [y1=-20.00] [x2=30.00] [y2=20.00]
          RenderSVGText {text} at (-25,42) size 50x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 50x22
              chunk 1 (middle anchor) text run 1 at (-24.52,60.00) startOffset 0 endOffset 6 width 49.04: "<line>"
        RenderSVGContainer {g} at (231,322) size 138x152 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,220.00)}]
          RenderSVGPath {polyline} at (241,322) size 118x89 [stroke={[type=SOLID] [color=#FFB400] [stroke width=10.00] [line cap=ROUND] [line join=ROUND]}] [points="-30 20 -30 -20 30 20 30 -20"]
          RenderSVGText {text} at (-42,42) size 84x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 83x22
              chunk 1 (middle anchor) text run 1 at (-41.03,60.00) startOffset 0 endOffset 10 width 82.06: "<polyline>"
        RenderSVGContainer {g} at (429,331) size 142x143 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,220.00)}]
          RenderSVGPath {polygon} at (449,331) size 102x71 [stroke={[type=SOLID] [color=#FFB400]}] [fill={[type=SOLID] [color=#E6E6E6]}] [points="-30 20 -30 -20 30 20 30 -20"]
          RenderSVGText {text} at (-43,42) size 86x23 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 85x22
              chunk 1 (middle anchor) text run 1 at (-42.04,60.00) startOffset 0 endOffset 9 width 84.08: "<polygon>"
    RenderSVGContainer {g} at (16,516) size 385x64
      RenderSVGText {text} at (10,310) size 231x38 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 231x38
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 230.19: "$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]
