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 (16,25) size 737x467
      RenderSVGContainer {g} at (16,25) size 737x467 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,30.00)}]
        RenderSVGText {text} at (28,-15) size 424x19 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 423x19
            chunk 1 (middle anchor) text run 1 at (28.80,0.00) startOffset 0 endOffset 55 width 422.40: "Test options of preserveAspectRatio on an image element"
        RenderSVGText {text} at (21,21) size 38x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 38x11
            chunk 1 (middle anchor) text run 1 at (21.10,30.00) startOffset 0 endOffset 10 width 37.80: "SVG to fit"
        RenderSVGContainer {g} at (33,116) size 67x68 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,40.00)}]
          RenderSVGImage {image} at (33,116) size 67x68
        RenderSVGText {text} at (14,101) size 43x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 42x11
            chunk 1 (middle anchor) text run 1 at (14.80,110.00) startOffset 0 endOffset 10 width 41.40: "Viewport 1"
        RenderSVGContainer {g} at (16,250) size 84x50 [transform={m=((1.00,0.00)(0.00,1.00)) t=(10.00,120.00)}]
          RenderSVGRect {rect} at (16,250) size 84x50 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
        RenderSVGText {text} at (14,171) size 43x11 contains 1 chunk(s)
          RenderSVGInlineText {#text} at (0,0) size 42x11
            chunk 1 (middle anchor) text run 1 at (14.80,180.00) startOffset 0 endOffset 10 width 41.40: "Viewport 2"
        RenderSVGContainer {g} at (33,366) size 51x101 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,190.00)}]
          RenderSVGRect {rect} at (33,366) size 51x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
        RenderSVGContainer {g} at (200,86) size 200x181 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,50.00)}]
          RenderSVGText {text} at (0,-29) size 115x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 115x11
              chunk 1 text run 1 at (0.00,-20.00) startOffset 0 endOffset 36 width 114.60: "---------- meet --------------------"
          RenderSVGContainer {g} at (200,111) size 84x73
            RenderSVGText {text} at (0,-14) size 23x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 23x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 22.80: "xMin*"
            RenderSVGRect {rect} at (200,133) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (200,133) size 84x51
          RenderSVGContainer {g} at (316,111) size 84x73 [transform={m=((1.00,0.00)(0.00,1.00)) t=(70.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 23x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 23x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 22.80: "xMid*"
            RenderSVGRect {rect} at (316,133) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (316,133) size 84x51
          RenderSVGContainer {g} at (200,194) size 84x73 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,50.00)}]
            RenderSVGText {text} at (0,-14) size 26x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 26x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 25.80: "xMax*"
            RenderSVGRect {rect} at (200,216) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (200,216) size 84x51
        RenderSVGContainer {g} at (500,86) size 217x148 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,50.00)}]
          RenderSVGText {text} at (0,-29) size 127x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 127x11
              chunk 1 text run 1 at (0.00,-20.00) startOffset 0 endOffset 40 width 126.60: "---------- meet ------------------------"
          RenderSVGContainer {g} at (500,111) size 50x123
            RenderSVGText {text} at (0,-14) size 24x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 24x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 24.00: "*YMin"
            RenderSVGRect {rect} at (500,133) size 50x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (500,133) size 50x101
          RenderSVGContainer {g} at (583,111) size 51x123 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 24x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 24x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 24.00: "*YMid"
            RenderSVGRect {rect} at (583,133) size 51x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (583,133) size 51x101
          RenderSVGContainer {g} at (666,111) size 51x123 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 27x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 27x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 27.00: "*YMax"
            RenderSVGRect {rect} at (666,133) size 51x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (666,133) size 51x101
        RenderSVGContainer {g} at (200,311) size 217x148 [transform={m=((1.00,0.00)(0.00,1.00)) t=(120.00,185.00)}]
          RenderSVGText {text} at (0,-29) size 128x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 128x11
              chunk 1 text run 1 at (0.00,-20.00) startOffset 0 endOffset 42 width 127.80: "---------- slice -------------------------"
          RenderSVGContainer {g} at (200,336) size 50x123
            RenderSVGText {text} at (0,-14) size 23x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 23x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 22.80: "xMin*"
            RenderSVGRect {rect} at (200,358) size 50x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (200,358) size 50x101
          RenderSVGContainer {g} at (283,336) size 51x123 [transform={m=((1.00,0.00)(0.00,1.00)) t=(50.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 23x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 23x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 22.80: "xMid*"
            RenderSVGRect {rect} at (283,358) size 51x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (283,358) size 51x101
          RenderSVGContainer {g} at (366,336) size 51x123 [transform={m=((1.00,0.00)(0.00,1.00)) t=(100.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 26x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 26x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 25.80: "xMax*"
            RenderSVGRect {rect} at (366,358) size 51x101 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=29.00] [height=59.00]
            RenderSVGImage {image} at (366,358) size 51x101
        RenderSVGContainer {g} at (500,311) size 200x181 [transform={m=((1.00,0.00)(0.00,1.00)) t=(300.00,185.00)}]
          RenderSVGText {text} at (0,-29) size 116x11 contains 1 chunk(s)
            RenderSVGInlineText {#text} at (0,0) size 116x11
              chunk 1 text run 1 at (0.00,-20.00) startOffset 0 endOffset 38 width 115.80: "---------- slice ---------------------"
          RenderSVGContainer {g} at (500,336) size 84x73
            RenderSVGText {text} at (0,-14) size 24x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 24x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 24.00: "*YMin"
            RenderSVGRect {rect} at (500,358) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (500,358) size 84x51
          RenderSVGContainer {g} at (616,336) size 84x73 [transform={m=((1.00,0.00)(0.00,1.00)) t=(70.00,0.00)}]
            RenderSVGText {text} at (0,-14) size 24x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 24x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 24.00: "*YMid"
            RenderSVGRect {rect} at (616,358) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (616,358) size 84x51
          RenderSVGContainer {g} at (500,419) size 84x73 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,50.00)}]
            RenderSVGText {text} at (0,-14) size 27x11 contains 1 chunk(s)
              RenderSVGInlineText {#text} at (0,0) size 27x11
                chunk 1 text run 1 at (0.00,-5.00) startOffset 0 endOffset 5 width 27.00: "*YMax"
            RenderSVGRect {rect} at (500,441) size 84x51 [stroke={[type=SOLID] [color=#0000FF]}] [x=0.50] [y=0.50] [width=49.00] [height=29.00]
            RenderSVGImage {image} at (500,441) size 84x51
    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.2 $"
    RenderSVGRect {rect} at (0,0) size 800x600 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
    RenderSVGContainer {g} at (0,0) size 800x38
      RenderSVGRect {rect} at (0,0) size 800x36 [stroke={[type=SOLID] [color=#000000]}] [fill={[type=SOLID] [color=#FF0000]}] [x=1.00] [y=1.00] [width=478.00] [height=20.00]
      RenderSVGText {text} at (206,0) size 68x23 contains 1 chunk(s)
        RenderSVGInlineText {#text} at (0,0) size 68x23
          chunk 1 (middle anchor) text run 1 at (206.40,18.00) startOffset 0 endOffset 5 width 67.20: "DRAFT"
