layer at (0,0) size 480x360
  RenderView at (0,0) size 480x360
layer at (0,0) size 480x360
  RenderSVGRoot {svg} at (0,0) size 480x360
    RenderSVGText {text} at (10,304) size 264x45 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 264x45
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 264.00: "$Revision: 1.7 $"
    RenderSVGRect {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
    RenderSVGText {text} at (190,12) size 100x22 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,0) size 99x22
        chunk 1 (middle anchor) text run 1 at (190.50,30.00) startOffset 0 endOffset 11 width 99.00: "repeatCount"
    RenderSVGContainer {g} at (71,93) size 334x125 [transform={m=((1.00,0.00)(0.00,1.00)) t=(130.00,80.00)}]
      RenderSVGContainer {g} at (71,113) size 179x105 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,45.00)}]
        RenderSVGText {text} at (-179,-12) size 179x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 179x15
            chunk 1 (end anchor) text run 1 at (-179.00,0.00) startOffset 0 endOffset 30 width 179.00: "dur=5s repeatCount unspecified"
        RenderSVGText {text} at (-126,13) size 126x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 126x15
            chunk 1 (end anchor) text run 1 at (-126.00,25.00) startOffset 0 endOffset 20 width 126.00: "dur=1s repeatCount=5"
        RenderSVGText {text} at (-144,38) size 144x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 144x15
            chunk 1 (end anchor) text run 1 at (-144.00,50.00) startOffset 0 endOffset 23 width 144.00: "dur=10s repeatCount=0.5"
        RenderSVGText {text} at (-173,63) size 173x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 173x15
            chunk 1 (end anchor) text run 1 at (-173.00,75.00) startOffset 0 endOffset 29 width 173.00: "dur=1s repeatCount=indefinite"
        RenderSVGText {text} at (-40,78) size 40x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 40x15
            chunk 1 (end anchor) text run 1 at (-40.00,90.00) startOffset 0 endOffset 6 width 40.00: "end=5s"
      RenderSVGContainer {g} at (298,93) size 107x15 [transform={m=((1.00,0.00)(0.00,1.00)) t=(180.00,25.00)}]
        RenderSVGText {text} at (-12,-12) size 24x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 24x15
            chunk 1 (middle anchor) text run 1 at (-12.00,0.00) startOffset 0 endOffset 4 width 24.00: "> 5s"
        RenderSVGText {text} at (65,-12) size 30x15 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 29x15
            chunk 1 (middle anchor) text run 1 at (65.50,0.00) startOffset 0 endOffset 5 width 29.00: "0s-5s"
      RenderSVGContainer {g} at (303,113) size 94x89 [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 (303,113) size 14x14 [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 (303,113) size 94x14
          RenderSVGContainer {use} at (303,113) size 14x14
            RenderSVGRect {rect} at (303,113) size 14x14 [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 (383,113) size 14x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
            RenderSVGRect {rect} at (383,113) size 14x14 [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 (383,113) size 14x14 [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 (303,138) size 94x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,25.00)}]
          RenderSVGContainer {use} at (303,138) size 14x14
            RenderSVGRect {rect} at (303,138) size 14x14 [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 (383,138) size 14x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
            RenderSVGRect {rect} at (383,138) size 14x14 [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 (383,138) size 14x14 [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 (303,163) size 94x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,50.00)}]
          RenderSVGContainer {use} at (303,163) size 14x14
            RenderSVGRect {rect} at (303,163) size 14x14 [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 (383,163) size 14x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
            RenderSVGRect {rect} at (383,163) size 14x14 [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 (383,163) size 14x14 [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 (303,188) size 94x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,75.00)}]
          RenderSVGContainer {use} at (303,188) size 14x14
            RenderSVGRect {rect} at (303,188) size 14x14 [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 (383,188) size 14x14 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
            RenderSVGRect {rect} at (383,188) size 14x14 [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 (383,188) size 14x14 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#CC0066]}] [x=74.00] [y=-6.00] [width=12.00] [height=12.00]
