layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderSVGRoot {svg} at (0,83) size 430x460
    RenderSVGContainer {g} at (0,83) size 430x460 [transform={m=((0.43,0.25)(-0.25,0.43)) t=(50.00,50.00)}]
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
      RenderSVGText {text} at (10,6) size 140x18 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 140x17
          chunk 1 text run 1 at (10.00,20.00) startOffset 0 endOffset 21 width 139.25: "Test for mask support"
      RenderSVGRect {rect} at (0,109) size 151x230 [fill={[type=SOLID] [color=#FF0000]}] [x=10.00] [y=30.00] [width=100.00] [height=260.00]
      RenderSVGResourceMasker {mask} [id="mask1"] [maskUnits=userSpaceOnUse] [maskContentUnits=userSpaceOnUse]
        RenderSVGHiddenContainer {defs} at (0,0) size 0x0
          RenderSVGResourceLinearGradient {linearGradient} [id="Grad1"] [gradientUnits=userSpaceOnUse] [start=(60,50)] [end=(60,120)]
            RenderSVGGradientStop {stop} [offset=0.00] [color=#FFFFFF]
            RenderSVGGradientStop {stop} [offset=1.00] [color=#FFFFFF80]
        RenderSVGRect {rect} at (80,144) size 98x86 [fill={[type=LINEAR-GRADIENT] [id="Grad1"]}] [x=60.00] [y=50.00] [width=100.00] [height=60.00]
      RenderSVGRect {rect} at (80,144) size 98x86 [fill={[type=SOLID] [color=#00FF00]}] [x=60.00] [y=50.00] [width=100.00] [height=60.00]
        [masker="mask1"] RenderSVGResourceMasker {mask} at (60,50) size 100x60
      RenderSVGText {text} at (200,54) size 161x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 161x14
          chunk 1 text run 1 at (200.00,65.00) startOffset 0 endOffset 30 width 160.06: "Mask with linear gradient from"
      RenderSVGText {text} at (200,69) size 134x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 134x14
          chunk 1 text run 1 at (200.00,80.00) startOffset 0 endOffset 25 width 133.42: "opacity=1 to opactity=0.5"
      RenderSVGResourceMasker {mask} [id="mask2"] [maskUnits=userSpaceOnUse] [maskContentUnits=userSpaceOnUse]
        RenderSVGRect {rect} at (64,194) size 85x65 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.50]}] [x=60.00] [y=120.00] [width=100.00] [height=30.00]
      RenderSVGRect {rect} at (64,194) size 85x65 [fill={[type=SOLID] [color=#00FF00]}] [x=60.00] [y=120.00] [width=100.00] [height=30.00]
        [masker="mask2"] RenderSVGResourceMasker {mask} at (60,120) size 100x30
      RenderSVGText {text} at (200,124) size 172x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 172x14
          chunk 1 text run 1 at (200.00,135.00) startOffset 0 endOffset 32 width 171.40: "Mask with uniform opacity of 0.5"
      RenderSVGRect {rect} at (47,223) size 86x65 [fill={[type=SOLID] [color=#00FF00] [opacity=0.50]}] [x=60.00] [y=160.00] [width=100.00] [height=30.00]
      RenderSVGText {text} at (200,164) size 197x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 197x14
          chunk 1 text run 1 at (200.00,175.00) startOffset 0 endOffset 37 width 196.77: "Rectangle with uniform opacity of 0.5"
      RenderSVGResourceMasker {mask} [id="mask3"] [maskUnits=userSpaceOnUse] [maskContentUnits=userSpaceOnUse]
        RenderSVGRect {rect} at (32,252) size 156x103 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.50]}] [x=60.00] [y=200.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (22,270) size 156x103 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.20]}] [x=60.00] [y=225.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (12,288) size 155x103 [fill={[type=SOLID] [color=#FFFFFF]}] [x=60.00] [y=250.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (1,306) size 156x103 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.70]}] [x=60.00] [y=275.00] [width=200.00] [height=25.00]
      RenderSVGText {text} at (60,202) size 122x112 contains 1 chunk(s)
        [masker="mask3"] RenderSVGResourceMasker {mask} at (60,200) size 200x100
        RenderSVGInlineText {#text} at (0,0) size 122x111
          [masker="mask3"] RenderSVGResourceMasker {mask} at (60,200) size 200x100
          chunk 1 text run 1 at (60.00,280.00) startOffset 0 endOffset 3 width 121.77: "SVG"
      RenderSVGText {text} at (200,214) size 197x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 197x14
          chunk 1 text run 1 at (200.00,225.00) startOffset 0 endOffset 36 width 196.76: "Text with mask containing rectangles"
      RenderSVGText {text} at (200,229) size 103x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 103x14
          chunk 1 text run 1 at (200.00,240.00) startOffset 0 endOffset 20 width 102.72: "of various opacities"
      RenderSVGText {text} at (10,304) size 261x46 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 261x46
          chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 260.71: "$Revision: 1.7 $"
      RenderSVGRect {rect} at (0,83) size 430x460 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
