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
    RenderSVGContainer {g} at (0,5) size 480x293
      RenderSVGViewportContainer {svg} at (0,5) size 480x293
        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
          RenderSVGResourceLinearGradient {linearGradient} [id="MyGradient"] [gradientUnits=userSpaceOnUse] [start=(20,0)] [end=(760,0)]
            RenderSVGGradientStop {stop} [offset=0.00] [color=#DD00DD]
            RenderSVGGradientStop {stop} [offset=0.33] [color=#22CC22]
            RenderSVGGradientStop {stop} [offset=0.67] [color=#400000]
            RenderSVGGradientStop {stop} [offset=1.00] [color=#A0A0FF]
          RenderSVGResourceFilter {filter} [id="Matrix"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
            [feColorMatrix type="MATRIX" values="0.33 0.33 0.33 0.00 0.00 0.33 0.33 0.33 0.00 0.00 0.33 0.33 0.33 0.00 0.00 0.33 0.33 0.33 0.00 0.00"]
              [SourceGraphic]
          RenderSVGResourceFilter {filter} [id="Saturate40"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
            [feColorMatrix type="SATURATE" values="0.25"]
              [SourceGraphic]
          RenderSVGResourceFilter {filter} [id="HueRotate90"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
            [feColorMatrix type="HUEROTATE" values="90.00"]
              [SourceGraphic]
          RenderSVGResourceFilter {filter} [id="LuminanceToAlpha"] [filterUnits=objectBoundingBox] [primitiveUnits=userSpaceOnUse]
            [feComposite operation="IN"]
              [SourceGraphic]
              [feColorMatrix type="LUMINANCETOALPHA"]
                [SourceGraphic]
        RenderSVGContainer {g} at (0,5) size 480x293
          RenderSVGRect {rect} at (8,5) size 464x290 [stroke={[type=SOLID] [color=#0000FF]}] [x=1.00] [y=1.00] [width=798.00] [height=498.00]
          RenderSVGRect {rect} at (19,16) size 442x24 [fill={[type=LINEAR-GRADIENT] [id="MyGradient"]}] [x=20.00] [y=20.00] [width=760.00] [height=40.00]
          RenderSVGText {text} at (20,54) size 195x50 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 195x50
              chunk 1 text run 1 at (20.00,95.00) startOffset 0 endOffset 10 width 194.33: "Unfiltered"
          RenderSVGRect {rect} at (19,74) size 442x24 [fill={[type=LINEAR-GRADIENT] [id="MyGradient"]}] [x=20.00] [y=120.00] [width=760.00] [height=40.00]
            [filter="Matrix"] RenderSVGResourceFilter {filter} at (20,120) size 760x40
          RenderSVGText {text} at (20,154) size 668x50 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 668x50
              chunk 1 text run 1 at (20.00,195.00) startOffset 0 endOffset 32 width 667.30: "type=\"matrix\" (grayscale matrix)"
          RenderSVGRect {rect} at (0,131) size 480x26 [fill={[type=LINEAR-GRADIENT] [id="MyGradient"]}] [x=20.00] [y=220.00] [width=760.00] [height=40.00]
            [filter="Saturate40"] RenderSVGResourceFilter {filter} at (-18,218) size 836x44
          RenderSVGText {text} at (20,254) size 572x50 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 572x50
              chunk 1 text run 1 at (20.00,295.00) startOffset 0 endOffset 27 width 571.44: "type=\"saturate\" values=\".4\""
          RenderSVGRect {rect} at (0,189) size 480x26 [fill={[type=LINEAR-GRADIENT] [id="MyGradient"]}] [x=20.00] [y=320.00] [width=760.00] [height=40.00]
            [filter="HueRotate90"] RenderSVGResourceFilter {filter} at (-18,318) size 836x44
          RenderSVGText {text} at (20,354) size 622x50 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 622x50
              chunk 1 text run 1 at (20.00,395.00) startOffset 0 endOffset 28 width 621.18: "type=\"hueRotate\" values=\"90\""
          RenderSVGRect {rect} at (0,247) size 480x26 [fill={[type=LINEAR-GRADIENT] [id="MyGradient"]}] [x=20.00] [y=420.00] [width=760.00] [height=40.00]
            [filter="LuminanceToAlpha"] RenderSVGResourceFilter {filter} at (-18,418) size 836x44
          RenderSVGText {text} at (20,454) size 521x50 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 521x50
              chunk 1 text run 1 at (20.00,495.00) startOffset 0 endOffset 23 width 520.11: "type=\"luminanceToAlpha\""
    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 263.34: "$Revision: 1.6 $"
    RenderSVGRect {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
