layer at (0,0) size 480x360
  RenderView at (0,0) size 480x360
layer at (0,0) size 480x360
  RenderSVGRoot {svg} at (0.50,0.50) size 479x359
    RenderSVGContainer {g} at (20,26) size 432x233
      RenderSVGContainer {g} at (20,26) size 432x233
        RenderSVGContainer {g} at (20,26) size 202x233 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,50.00)}]
          RenderSVGText {text} at (0,203) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,203.00) startOffset 0 endOffset 9 width 113.00: "at 0 sec."
          RenderSVGText {text} at (0,170) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,170.00) startOffset 0 endOffset 9 width 113.00: "at 3 sec."
          RenderSVGText {text} at (0,114) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,114.00) startOffset 0 endOffset 9 width 113.00: "at 6 sec."
          RenderSVGText {text} at (3,3) size 98x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 98x33
              chunk 1 text run 1 at (3.00,3.00) startOffset 0 endOffset 7 width 98.00: "9+ sec."
          RenderSVGContainer {g} at (140,48) size 50x204
            RenderPath {line} at (140,248) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,200.00L170.00,200.00"]
            RenderPath {line} at (140,215) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,167.00L170.00,167.00"]
            RenderPath {line} at (140,159) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,111.00L170.00,111.00"]
            RenderPath {line} at (140,48) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,0.00L170.00,0.00"]
          RenderPath {rect} at (158,38) size 64x214 [stroke={[type=SOLID] [color=#FF00FF] [stroke width=4.00]}] [fill={[type=SOLID] [color=#FFAA44]}] [data="M140.00,-10.00L200.00,-10.00L200.00,200.00L140.00,200.00"]
        RenderSVGContainer {g} at (250,26) size 202x233 [transform={m=((1.00,0.00)(0.00,1.00)) t=(250.00,50.00)}]
          RenderSVGText {text} at (0,203) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,203.00) startOffset 0 endOffset 9 width 113.00: "at 0 sec."
          RenderSVGText {text} at (0,170) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,170.00) startOffset 0 endOffset 9 width 113.00: "at 3 sec."
          RenderSVGText {text} at (0,114) size 113x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 113x33
              chunk 1 text run 1 at (0.00,114.00) startOffset 0 endOffset 9 width 113.00: "at 6 sec."
          RenderSVGText {text} at (3,3) size 98x33 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,-27) size 98x33
              chunk 1 text run 1 at (3.00,3.00) startOffset 0 endOffset 7 width 98.00: "9+ sec."
          RenderSVGContainer {g} at (370,48) size 50x204
            RenderPath {line} at (370,248) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,200.00L170.00,200.00"]
            RenderPath {line} at (370,215) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,167.00L170.00,167.00"]
            RenderPath {line} at (370,159) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,111.00L170.00,111.00"]
            RenderPath {line} at (370,48) size 50x4 [stroke={[type=SOLID] [color=#880000] [stroke width=4.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M120.00,0.00L170.00,0.00"]
          RenderPath {rect} at (388,38) size 64x14 [stroke={[type=SOLID] [color=#FF00FF] [stroke width=4.00]}] [fill={[type=SOLID] [color=#FFAA44]}] [data="M140.00,-10.00L200.00,-10.00L200.00,0.00L140.00,0.00"]
    RenderSVGText {text} at (10,340) size 264x46 contains 1 chunk(s)
      RenderSVGInlineText {#text} at (0,-36) size 264x46
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 264.00: "$Revision: 1.8 $"
    RenderPath {rect} at (0.50,0.50) size 479x359 [stroke={[type=SOLID] [color=#000000]}] [data="M1.00,1.00L479.00,1.00L479.00,359.00L1.00,359.00"]
