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 (170,18) size 414x432
      RenderSVGText {text} at (215,11) size 50x24 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 50x24
          chunk 1 (middle anchor) text run 1 at (215.41,30.00) startOffset 0 endOffset 5 width 49.18: "begin"
      RenderSVGContainer {g} at (170,95) size 414x355 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,80.00)}]
        RenderSVGContainer {g} at (170,119) size 130x320 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,5.00)}]
          RenderSVGText {text} at (-72,-14) size 72x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 72x17
              chunk 1 (end anchor) text run 1 at (-71.33,0.00) startOffset 0 endOffset 11 width 71.33: "unspecified"
          RenderSVGText {text} at (-35,11) size 35x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 35x17
              chunk 1 (end anchor) text run 1 at (-34.49,25.00) startOffset 0 endOffset 6 width 34.49: "offset"
          RenderSVGText {text} at (-69,36) size 69x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 69x17
              chunk 1 (end anchor) text run 1 at (-68.99,50.00) startOffset 0 endOffset 10 width 68.99: "event base"
          RenderSVGText {text} at (-64,61) size 64x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 64x17
              chunk 1 (end anchor) text run 1 at (-63.48,75.00) startOffset 0 endOffset 9 width 63.48: "sync base"
          RenderSVGText {text} at (-57,86) size 57x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 57x17
              chunk 1 (end anchor) text run 1 at (-56.44,100.00) startOffset 0 endOffset 10 width 56.44: "indefinite"
          RenderSVGText {text} at (-50,111) size 50x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 50x17
              chunk 1 (end anchor) text run 1 at (-49.37,125.00) startOffset 0 endOffset 8 width 49.37: "repeat()"
          RenderSVGText {text} at (-78,136) size 78x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 78x17
              chunk 1 (end anchor) text run 1 at (-77.57,150.00) startOffset 0 endOffset 11 width 77.57: "accessKey()"
          RenderSVGText {text} at (-66,161) size 66x18 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 66x17
              chunk 1 (end anchor) text run 1 at (-65.80,175.00) startOffset 0 endOffset 11 width 65.80: "wallclock()"
        RenderSVGContainer {g} at (326,95) size 255x17 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,-15.00)}]
          RenderSVGText {text} at (-5,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (-4.28,0.00) startOffset 0 endOffset 2 width 8.55: "0s"
          RenderSVGText {text} at (7,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (7.72,0.00) startOffset 0 endOffset 2 width 8.55: "1s"
          RenderSVGText {text} at (19,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (19.72,0.00) startOffset 0 endOffset 2 width 8.55: "2s"
          RenderSVGText {text} at (31,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (31.72,0.00) startOffset 0 endOffset 2 width 8.55: "3s"
          RenderSVGText {text} at (43,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (43.72,0.00) startOffset 0 endOffset 2 width 8.55: "4s"
          RenderSVGText {text} at (55,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (55.72,0.00) startOffset 0 endOffset 2 width 8.55: "5s"
          RenderSVGText {text} at (67,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (67.72,0.00) startOffset 0 endOffset 2 width 8.55: "6s"
          RenderSVGText {text} at (79,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (79.72,0.00) startOffset 0 endOffset 2 width 8.55: "7s"
          RenderSVGText {text} at (91,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (91.72,0.00) startOffset 0 endOffset 2 width 8.55: "8s"
          RenderSVGText {text} at (115,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (115.72,0.00) startOffset 0 endOffset 2 width 8.55: "0s"
          RenderSVGText {text} at (127,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (127.72,0.00) startOffset 0 endOffset 2 width 8.55: "1s"
          RenderSVGText {text} at (139,-8) size 10x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 9x10
              chunk 1 (middle anchor) text run 1 at (139.72,0.00) startOffset 0 endOffset 2 width 8.55: "2s"
        RenderSVGContainer {g} at (323,116) size 261x334 [transform={m=((1.00,0.00)(0.00,8.00)) t=(94.00,-10.00)}]
          RenderSVGRect {rect} at (323,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=0.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (343,116) size 21x334 [fill={[type=SOLID] [color=#DDDDDD]}] [x=12.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (363,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=24.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (383,116) size 21x334 [fill={[type=SOLID] [color=#DDDDDD]}] [x=36.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (403,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=48.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (423,116) size 21x334 [fill={[type=SOLID] [color=#DDDDDD]}] [x=60.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (443,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=72.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (463,116) size 21x334 [fill={[type=SOLID] [color=#DDDDDD]}] [x=84.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (483,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=96.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (523,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=120.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (543,116) size 21x334 [fill={[type=SOLID] [color=#DDDDDD]}] [x=132.00] [y=0.00] [width=12.00] [height=25.00]
          RenderSVGRect {rect} at (563,116) size 21x334 [fill={[type=SOLID] [color=#EEEEEE]}] [x=144.00] [y=0.00] [width=12.00] [height=25.00]
        RenderSVGContainer {g} at (323,123) size 261x312 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
          RenderSVGContainer {g} at (323,123) size 21x21
            RenderSVGRect {rect} at (323,123) size 21x21 [fill={[type=SOLID] [color=#33FF33]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (363,165) size 21x20 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,25.00)}]
            RenderSVGRect {rect} at (363,165) size 21x20 [transform={m=((1.00,0.00)(0.00,1.00)) t=(24.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (523,206) size 61x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,50.00)}]
            RenderSVGRect {rect} at (523,206) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (563,206) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(144.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (363,248) size 141x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,75.00)}]
            RenderSVGRect {rect} at (363,248) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(24.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (403,248) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(48.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (443,248) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(72.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (483,248) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(96.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (323,290) size 21x20 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,100.00)}]
            RenderSVGRect {rect} at (323,290) size 21x20 [fill={[type=SOLID] [color=#33FF33]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (383,331) size 61x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,125.00)}]
            RenderSVGRect {rect} at (383,331) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(36.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (423,331) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(60.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (523,373) size 61x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
            RenderSVGRect {rect} at (523,373) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
            RenderSVGRect {rect} at (563,373) size 21x21 [transform={m=((1.00,0.00)(0.00,1.00)) t=(144.00,0.00)}] [fill={[type=SOLID] [color=#FF3333]}] [x=-6.00] [y=-6.00] [width=12.00] [height=12.00]
          RenderSVGContainer {g} at (323,415) size 21x20 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,175.00)}]
            RenderSVGRect {rect} at (323,415) size 21x20 [fill={[type=SOLID] [color=#33FF33]}] [x=-6.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.7 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
