layer at (0,0) size 480x360
  LayoutView at (0,0) size 480x360
layer at (0,0) size 480x360
  LayoutSVGRoot {svg} at (0,0) size 480x360
    LayoutSVGContainer {g} at (40,2) size 350x278
      LayoutSVGHiddenContainer {defs} at (0,0) size 0x0
        LayoutSVGHiddenContainer {defs} at (0,0) size 0x0
      LayoutSVGText {text} at (40,2) size 190x15 contains 1 chunk(s)
        LayoutSVGInlineText {#text} at (0,0) size 190x15
          chunk 1 text run 1 at (40.00,14.00) startOffset 0 endOffset 33 width 190.00: "Rectangle should be red not green"
      LayoutSVGText {text} at (40,24) size 339x15 contains 1 chunk(s)
        LayoutSVGInlineText {#text} at (0,0) size 339x15
          chunk 1 text run 1 at (40.00,36.00) startOffset 0 endOffset 11 width 57.00: "This tests "
          chunk 1 text run 1 at (97.00,36.00) startOffset 0 endOffset 54 width 282.00: "element (GI) selectors: <rect /> and the selector rect"
      LayoutSVGContainer {g} at (130,70) size 260x60
        LayoutSVGEllipse {circle} at (130,70) size 60x60 [fill={[type=SOLID] [color=#008000]}] [cx=160.00] [cy=100.00] [r=30.00]
        LayoutSVGRect {rect} at (220,80) size 60x40 [fill={[type=SOLID] [color=#FF0000]}] [x=220.00] [y=80.00] [width=60.00] [height=40.00]
        LayoutSVGPath {polygon} at (300,70) size 90x50 [fill={[type=SOLID] [color=#008000]}] [points="300 100 320 120 340 110 360 120 390 90 340 70"]
      LayoutSVGContainer {g} at (40,152) size 350x128 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
        LayoutSVGText {text} at (40,2) size 266x15 contains 1 chunk(s)
          LayoutSVGInlineText {#text} at (0,0) size 266x15
            chunk 1 text run 1 at (40.00,14.00) startOffset 0 endOffset 51 width 266.00: "Circle should be red not green; rectangle still red"
        LayoutSVGText {text} at (40,24) size 288x15 contains 1 chunk(s)
          LayoutSVGInlineText {#text} at (0,0) size 288x15
            chunk 1 text run 1 at (40.00,36.00) startOffset 0 endOffset 11 width 57.00: "This tests "
            chunk 1 text run 1 at (97.00,36.00) startOffset 0 endOffset 43 width 231.00: "class selectors: <circle class=\"warning\" />"
        LayoutSVGText {text} at (40,46) size 138x15 contains 1 chunk(s)
          LayoutSVGInlineText {#text} at (0,0) size 138x15
            chunk 1 text run 1 at (40.00,58.00) startOffset 0 endOffset 25 width 138.00: "and the selector .warning"
        LayoutSVGContainer {g} at (130,220) size 260x60
          LayoutSVGEllipse {circle} at (130,220) size 60x60 [fill={[type=SOLID] [color=#FF0000]}] [cx=160.00] [cy=100.00] [r=30.00]
          LayoutSVGRect {rect} at (220,230) size 60x40 [fill={[type=SOLID] [color=#FF0000]}] [x=220.00] [y=80.00] [width=60.00] [height=40.00]
          LayoutSVGPath {polygon} at (300,220) size 90x50 [fill={[type=SOLID] [color=#008000]}] [points="300 100 320 120 340 110 360 120 390 90 340 70"]
    LayoutSVGText {text} at (10,304) size 261x46 contains 1 chunk(s)
      LayoutSVGInlineText {#text} at (0,0) size 261x46
        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 261.00: "$Revision: 1.3 $"
    LayoutSVGRect {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [x=1.00] [y=1.00] [width=478.00] [height=358.00]
