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 (168,18) size 518x371
      RenderSVGText {text} at (230,11) size 20x24 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 19x24
          chunk 1 (middle anchor) text run 1 at (230.51,30.00) startOffset 0 endOffset 4 width 18.98: "fill"
      RenderSVGContainer {g} at (168,152) size 518x237 [transform={m=((1.00,0.00)(0.00,1.00)) t=(130.00,60.00)}]
        RenderSVGContainer {g} at (168,152) size 249x237 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,45.00)}]
          RenderSVGText {text} at (-149,-14) size 149x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 149x17
              chunk 1 (end anchor) text run 1 at (-148.89,0.00) startOffset 0 endOffset 25 width 148.89: "fill unspecified (remove)"
          RenderSVGText {text} at (-69,11) size 69x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 69x17
              chunk 1 (end anchor) text run 1 at (-68.57,25.00) startOffset 0 endOffset 11 width 68.57: "fill=remove"
          RenderSVGText {text} at (-143,86) size 143x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 143x17
              chunk 1 (end anchor) text run 1 at (-143.00,100.00) startOffset 0 endOffset 26 width 143.00: "fill=freeze (with restart)"
          RenderSVGText {text} at (-134,111) size 134x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 134x17
              chunk 1 (end anchor) text run 1 at (-133.61,125.00) startOffset 0 endOffset 24 width 133.61: "fill=freeze (no restart)"
        RenderSVGContainer {g} at (487,260) size 199x54 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,125.00)}]
          RenderSVGText {text} at (-18,-29) size 36x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 36x17
              chunk 1 (middle anchor) text run 1 at (-17.64,-15.00) startOffset 0 endOffset 5 width 35.27: "never"
          RenderSVGText {text} at (-15,-14) size 30x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 29x17
              chunk 1 (middle anchor) text run 1 at (-14.11,0.00) startOffset 0 endOffset 4 width 28.22: "here"
          RenderSVGText {text} at (58,-29) size 44x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 44x17
              chunk 1 (middle anchor) text run 1 at (58.45,-15.00) startOffset 0 endOffset 6 width 43.10: "always"
          RenderSVGText {text} at (65,-14) size 30x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 29x17
              chunk 1 (middle anchor) text run 1 at (65.89,0.00) startOffset 0 endOffset 4 width 28.22: "here"
        RenderSVGContainer {g} at (505,155) size 156x231 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,40.00)}]
          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
            RenderSVGRect {rect} at (505,155) size 23x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (505,155) size 156x23
            RenderSVGContainer {use} at (505,155) size 23x23
              RenderSVGRect {rect} at (505,155) size 23x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGContainer {use} at (639,155) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (639,155) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (639,155) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CC0066]}] [x=74.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (505,197) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,25.00)}]
            RenderSVGContainer {use} at (505,197) size 23x23
              RenderSVGRect {rect} at (505,197) size 23x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGContainer {use} at (639,197) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (639,197) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (639,197) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CC0066]}] [x=74.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (505,322) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,100.00)}]
            RenderSVGContainer {use} at (505,322) size 23x23
              RenderSVGRect {rect} at (505,322) size 23x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGContainer {use} at (639,322) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (639,322) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (639,322) size 22x23 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CC0066]}] [x=74.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (505,364) size 156x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,125.00)}]
            RenderSVGContainer {use} at (505,364) size 23x22
              RenderSVGRect {rect} at (505,364) size 23x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGContainer {use} at (639,364) size 22x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (639,364) size 22x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CCCCCC]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (639,364) size 22x22 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CC0066]}] [x=74.00] [y=-6.00] [width=12.00] [height=12.00]
    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]
