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 (109,20) size 486x444
      RenderSVGText {text} at (221,12) size 38x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 38x23
          chunk 1 (middle anchor) text run 1 at (221.40,30.00) startOffset 0 endOffset 3 width 37.20: "max"
      RenderSVGText {text} at (193,172) size 94x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 93x23
          chunk 1 (middle anchor) text run 1 at (193.80,190.00) startOffset 0 endOffset 9 width 92.40: "min & max"
      RenderSVGContainer {g} at (109,70) size 486x394 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,30.00)}]
        RenderSVGContainer {g} at (109,104) size 258x360 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,45.00)}]
          RenderSVGText {text} at (-95,-13) size 95x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 95x16
              chunk 1 (end anchor) text run 1 at (-94.20,0.00) startOffset 0 endOffset 14 width 94.20: "no max / media"
          RenderSVGText {text} at (-114,12) size 114x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 114x16
              chunk 1 (end anchor) text run 1 at (-114.00,25.00) startOffset 0 endOffset 18 width 114.00: "invalid max values"
          RenderSVGText {text} at (-102,37) size 102x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 102x16
              chunk 1 (end anchor) text run 1 at (-102.00,50.00) startOffset 0 endOffset 16 width 102.00: "max < active dur"
          RenderSVGText {text} at (-102,62) size 102x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 102x16
              chunk 1 (end anchor) text run 1 at (-102.00,75.00) startOffset 0 endOffset 16 width 102.00: "max > active dur"
          RenderSVGText {text} at (-64,137) size 64x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 64x16
              chunk 1 (end anchor) text run 1 at (-63.60,150.00) startOffset 0 endOffset 9 width 63.60: "min < max"
          RenderSVGText {text} at (-64,162) size 64x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 64x16
              chunk 1 (end anchor) text run 1 at (-63.60,175.00) startOffset 0 endOffset 9 width 63.60: "min = max"
          RenderSVGText {text} at (-155,187) size 155x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 155x16
              chunk 1 (end anchor) text run 1 at (-154.20,200.00) startOffset 0 endOffset 24 width 154.20: "min > max (both ignored)"
        RenderSVGContainer {g} at (394,70) size 186x27 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,25.00)}]
          RenderSVGText {text} at (-14,-13) size 28x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 27x16
              chunk 1 (middle anchor) text run 1 at (-13.20,0.00) startOffset 0 endOffset 4 width 26.40: "> 5s"
          RenderSVGText {text} at (62,-13) size 36x16 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 35x16
              chunk 1 (middle anchor) text run 1 at (62.60,0.00) startOffset 0 endOffset 5 width 34.80: "0s-5s"
        RenderSVGContainer {g} at (405,105) size 190x356 [transform={m=((1.00,0.00)(0.00,1.00)) t=(150.00,40.00)}]
          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
            RenderSVGRect {rect} at (405,105) 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 (405,105) size 190x23
            RenderSVGContainer {use} at (405,105) size 23x23
              RenderSVGRect {rect} at (405,105) 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 (539,105) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,105) 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 (539,105) 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 (439,105) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,0.00)}]
              RenderSVGContainer {use} at (439,105) size 22x23
                RenderSVGRect {rect} at (439,105) size 22x23 [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 (572,105) size 23x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
                RenderSVGRect {rect} at (572,105) size 23x23 [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 (572,105) size 23x23 [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 (405,147) size 190x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,25.00)}]
            RenderSVGContainer {use} at (405,147) size 23x23
              RenderSVGRect {rect} at (405,147) 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 (539,147) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,147) 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 (539,147) 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 (439,147) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,0.00)}]
              RenderSVGContainer {use} at (439,147) size 22x23
                RenderSVGRect {rect} at (439,147) size 22x23 [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 (572,147) size 23x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
                RenderSVGRect {rect} at (572,147) size 23x23 [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 (572,147) size 23x23 [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 (405,189) size 156x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,50.00)}]
            RenderSVGContainer {use} at (405,189) size 23x22
              RenderSVGRect {rect} at (405,189) 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 (539,189) size 22x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,189) 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 (539,189) 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 (405,230) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,75.00)}]
            RenderSVGContainer {use} at (405,230) size 23x23
              RenderSVGRect {rect} at (405,230) 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 (539,230) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,230) 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 (539,230) 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 (405,355) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
            RenderSVGContainer {use} at (405,355) size 23x23
              RenderSVGRect {rect} at (405,355) 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 (539,355) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,355) 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 (539,355) 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 (405,397) size 156x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,175.00)}]
            RenderSVGContainer {use} at (405,397) size 23x23
              RenderSVGRect {rect} at (405,397) 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 (539,397) size 22x23 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,397) 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 (539,397) 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 (405,439) size 156x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,200.00)}]
            RenderSVGContainer {use} at (405,439) size 23x22
              RenderSVGRect {rect} at (405,439) 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 (539,439) size 22x22 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,0.00)}]
              RenderSVGRect {rect} at (539,439) 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 (539,439) 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,518) size 380x60
      RenderSVGText {text} at (10,311) size 228x36 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 228x36
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 227.40: "$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]
