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 (10,7) size 390x293
      RenderSVGHiddenContainer {defs} at (0,0) size 0x0
      RenderSVGText {text} at (10,7) size 139x16 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 139x16
          chunk 1 text run 1 at (10.00,20.00) startOffset 0 endOffset 21 width 139.00: "Test for mask support"
      RenderSVGRect {rect} at (10,30) size 100x260 [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 (60,50) size 100x60 [fill={[type=LINEAR-GRADIENT] [id="Grad1"]}] [x=60.00] [y=50.00] [width=100.00] [height=60.00]
      RenderSVGRect {rect} at (60,50) size 100x60 [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 163x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 163x14
          chunk 1 text run 1 at (200.00,65.00) startOffset 0 endOffset 30 width 163.00: "Mask with linear gradient from"
      RenderSVGText {text} at (200,69) size 135x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 135x14
          chunk 1 text run 1 at (200.00,80.00) startOffset 0 endOffset 25 width 135.00: "opacity=1 to opactity=0.5"
      RenderSVGResourceMasker {mask} [id="mask2"] [maskUnits=userSpaceOnUse] [maskContentUnits=userSpaceOnUse]
        RenderSVGRect {rect} at (60,120) size 100x30 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.50]}] [x=60.00] [y=120.00] [width=100.00] [height=30.00]
      RenderSVGRect {rect} at (60,120) size 100x30 [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 173x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 173x14
          chunk 1 text run 1 at (200.00,135.00) startOffset 0 endOffset 32 width 173.00: "Mask with uniform opacity of 0.5"
      RenderSVGRect {rect} at (60,160) size 100x30 [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 200x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 200x14
          chunk 1 text run 1 at (200.00,175.00) startOffset 0 endOffset 37 width 200.00: "Rectangle with uniform opacity of 0.5"
      RenderSVGResourceMasker {mask} [id="mask3"] [maskUnits=userSpaceOnUse] [maskContentUnits=userSpaceOnUse]
        RenderSVGRect {rect} at (60,200) size 200x25 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.50]}] [x=60.00] [y=200.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (60,225) size 200x25 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.20]}] [x=60.00] [y=225.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (60,250) size 200x25 [fill={[type=SOLID] [color=#FFFFFF]}] [x=60.00] [y=250.00] [width=200.00] [height=25.00]
        RenderSVGRect {rect} at (60,275) size 200x25 [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 126x111 contains 1 chunk(s)
        [masker="mask3"] RenderSVGResourceMasker {mask} at (60,200) size 200x100
        RenderSVGInlineText {#text} at (0,0) size 126x111
          [masker="mask3"] RenderSVGResourceMasker {mask} at (60,200) size 200x100
          chunk 1 text run 1 at (60.00,280.00) startOffset 0 endOffset 2 width 80.96: "SV"
          chunk 1 text run 2 at (145.36,280.00) startOffset 2 endOffset 3 width 40.37: "G"
      RenderSVGText {text} at (200,214) size 200x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 200x14
          chunk 1 text run 1 at (200.00,225.00) startOffset 0 endOffset 36 width 200.00: "Text with mask containing rectangles"
      RenderSVGText {text} at (200,229) size 105x14 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 105x14
          chunk 1 text run 1 at (200.00,240.00) startOffset 0 endOffset 20 width 105.00: "of various opacities"
    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]
