layer at (0,0) size 800x600 clip at (0,0) size 785x600 scrollHeight 1029
  LayoutView at (0,0) size 800x600
layer at (0,0) size 785x1029 backgroundClip at (0,0) size 785x600 clip at (0,0) size 785x600
  LayoutNGBlockFlow {HTML} at (0,0) size 785x1029
    LayoutNGBlockFlow {BODY} at (8,8) size 769x1013 [bgcolor=#CCCCCC]
      LayoutNGBlockFlow {P} at (0,0) size 769x20
        LayoutText {#text} at (0,0) size 355x19
          text run at (0,0) width 355: "The style declarations which apply to the text below are:"
      LayoutNGBlockFlow {PRE} at (0,36) size 769x160
        LayoutText {#text} at (0,0) size 728x160
          text run at (0,0) width 624: "<LINK rel=\"stylesheet\" type=\"text/css\" href=\"linktest.css\" title=\"Default SS\">"
          text run at (624,0) width 0: " "
          text run at (0,16) width 728: "<LINK rel=\"alternate stylesheet\" type=\"text/css\" href=\"linktest2.css\" title=\"Alternate SS\">"
          text run at (728,16) width 0: " "
          text run at (0,32) width 208: "@import url(imptest1.css);"
          text run at (208,32) width 0: " "
          text run at (0,48) width 192: "@import \"imptest1a.css\";"
          text run at (192,48) width 0: " "
          text run at (0,64) width 128: "UL {color: red;}"
          text run at (128,64) width 0: " "
          text run at (0,80) width 176: ".four {color: purple;}"
          text run at (176,80) width 0: " "
          text run at (0,96) width 208: "@import url(imptest2.css);"
          text run at (208,96) width 0: " "
          text run at (0,112) width 32: "<!--"
          text run at (32,112) width 0: " "
          text run at (0,128) width 168: "P.six {color: green;}"
          text run at (168,128) width 0: " "
          text run at (0,144) width 24: "-->"
          text run at (24,144) width 0: " "
      LayoutNGBlockFlow {P} at (0,227) size 769x20
        LayoutText {#text} at (0,0) size 404x19
          text run at (0,0) width 404: "This sentence should be underlined due to the linked style sheet "
        LayoutInline {CODE} at (0,0) size 0x0
          LayoutText {#text} at (404,3) size 96x16
            text run at (404,3) width 96: "linktest.css"
        LayoutText {#text} at (500,0) size 254x19
          text run at (500,0) width 254: ", the reference to which is shown above."
      LayoutNGBlockFlow {P} at (0,263) size 769x40
        LayoutText {#text} at (0,0) size 442x19
          text run at (0,0) width 442: "This sentence should NOT be underlined due to the linked style sheet "
        LayoutInline {CODE} at (0,0) size 0x0
          LayoutText {#text} at (441,3) size 105x16
            text run at (441,3) width 105: "linktest2.css"
        LayoutText {#text} at (545,0) size 9x19
          text run at (545,0) width 9: ", "
        LayoutInline {STRONG} at (0,0) size 0x0
          LayoutText {#text} at (553,0) size 42x19
            text run at (553,0) width 42: "unless"
        LayoutText {#text} at (594,0) size 741x39
          text run at (594,0) width 147: " the external style sheet"
          text run at (0,20) width 325: "\"Alternate SS\" has been selected via the user agent."
      LayoutNGBlockFlow {UL} at (0,319) size 769x60 [color=#FF0000]
        LayoutNGListItem {LI} at (40,0) size 729x20 [color=#008000]
          LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
            LayoutText (anonymous) at (0,0) size 10x19
              text run at (0,0) width 10: "\x{2022} "
          LayoutText {#text} at (0,0) size 390x19
            text run at (0,0) width 390: "This sentence should be green due to an imported style sheet ["
          LayoutInline {CODE} at (0,0) size 0x0
            LayoutText {#text} at (390,3) size 208x16
              text run at (390,3) width 208: "@import url(imptest1.css);"
          LayoutText {#text} at (598,0) size 9x19
            text run at (598,0) width 9: "]."
        LayoutNGListItem {LI} at (40,20) size 729x20 [color=#800080]
          LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
            LayoutText (anonymous) at (0,0) size 10x19
              text run at (0,0) width 10: "\x{2022} "
          LayoutText {#text} at (0,0) size 395x19
            text run at (0,0) width 395: "This sentence should be purple due to an imported style sheet ["
          LayoutInline {CODE} at (0,0) size 0x0
            LayoutText {#text} at (395,3) size 184x16
              text run at (395,3) width 184: "@import \"imptest1a.css\""
          LayoutText {#text} at (579,0) size 9x19
            text run at (579,0) width 9: "]."
        LayoutNGListItem {LI} at (40,40) size 729x20 [color=#008000]
          LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
            LayoutText (anonymous) at (0,0) size 10x19
              text run at (0,0) width 10: "\x{2022} "
          LayoutText {#text} at (0,0) size 393x19
            text run at (0,0) width 393: "This sentence should be green thanks to the STYLE attribute ["
          LayoutInline {CODE} at (0,0) size 0x0
            LayoutText {#text} at (393,3) size 168x16
              text run at (393,3) width 168: "STYLE=\"color: green;\""
          LayoutText {#text} at (561,0) size 9x19
            text run at (561,0) width 9: "]."
      LayoutNGBlockFlow {P} at (0,395) size 769x20 [color=#800080]
        LayoutText {#text} at (0,0) size 500x19
          text run at (0,0) width 500: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
      LayoutNGBlockFlow {OL} at (0,431) size 769x60
        LayoutNGListItem {LI} at (40,0) size 729x20
          LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
            LayoutText (anonymous) at (0,0) size 16x19
              text run at (0,0) width 16: "1. "
          LayoutText {#text} at (0,0) size 201x19
            text run at (0,0) width 201: "This list should NOT be purple."
        LayoutNGListItem {LI} at (40,20) size 729x20
          LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
            LayoutText (anonymous) at (0,0) size 16x19
              text run at (0,0) width 16: "2. "
          LayoutText {#text} at (0,0) size 172x19
            text run at (0,0) width 172: "It should, instead, be black."
        LayoutNGListItem {LI} at (40,40) size 729x20
          LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
            LayoutText (anonymous) at (0,0) size 16x19
              text run at (0,0) width 16: "3. "
          LayoutText {#text} at (0,0) size 501x19
            text run at (0,0) width 501: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
      LayoutNGBlockFlow {P} at (0,507) size 769x40
        LayoutText {#text} at (0,0) size 697x19
          text run at (0,0) width 697: "This sentence should be black. If it is red, then the browser has inappropriately imported the styles from the file"
        LayoutInline {TT} at (0,0) size 0x0
          LayoutText {#text} at (0,23) size 96x16
            text run at (0,23) width 96: "imptest2.css"
        LayoutText {#text} at (96,20) size 33x19
          text run at (96,20) width 33: " (see "
        LayoutInline {A} at (0,0) size 0x0 [color=#0000FF]
          LayoutText {#text} at (129,20) size 68x19
            text run at (129,20) width 68: "section 3.0"
        LayoutText {#text} at (197,20) size 275x19
          text run at (197,20) width 275: " of the CSS1 specification for more details)."
      LayoutNGBlockFlow {P} at (0,563) size 769x20 [color=#008000]
        LayoutText {#text} at (0,0) size 203x19
          text run at (0,0) width 203: "This paragraph should be green."
      LayoutTable {TABLE} at (0,599) size 769x414 [border: (1px outset #808080)]
        LayoutTableSection {TBODY} at (1,1) size 767x412
          LayoutTableRow {TR} at (0,0) size 767x28
            LayoutNGTableCell {TD} at (0,0) size 767x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              LayoutInline {STRONG} at (0,0) size 0x0
                LayoutText {#text} at (4,4) size 161x19
                  text run at (4,4) width 161: "TABLE Testing Section"
          LayoutTableRow {TR} at (0,28) size 767x384
            LayoutNGTableCell {TD} at (0,206) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              LayoutText {#text} at (4,182) size 4x19
                text run at (4,182) width 4: " "
            LayoutNGTableCell {TD} at (12,28) size 755x384 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              LayoutNGBlockFlow {P} at (4,4) size 747x40
                LayoutText {#text} at (0,0) size 404x19
                  text run at (0,0) width 404: "This sentence should be underlined due to the linked style sheet "
                LayoutInline {CODE} at (0,0) size 0x0
                  LayoutText {#text} at (404,3) size 96x16
                    text run at (404,3) width 96: "linktest.css"
                LayoutText {#text} at (500,0) size 708x39
                  text run at (500,0) width 208: ", the reference to which is shown"
                  text run at (0,20) width 42: "above."
              LayoutNGBlockFlow {P} at (4,60) size 747x40
                LayoutText {#text} at (0,0) size 442x19
                  text run at (0,0) width 442: "This sentence should NOT be underlined due to the linked style sheet "
                LayoutInline {CODE} at (0,0) size 0x0
                  LayoutText {#text} at (441,3) size 105x16
                    text run at (441,3) width 105: "linktest2.css"
                LayoutText {#text} at (545,0) size 9x19
                  text run at (545,0) width 9: ", "
                LayoutInline {STRONG} at (0,0) size 0x0
                  LayoutText {#text} at (553,0) size 42x19
                    text run at (553,0) width 42: "unless"
                LayoutText {#text} at (594,0) size 741x39
                  text run at (594,0) width 147: " the external style sheet"
                  text run at (0,20) width 325: "\"Alternate SS\" has been selected via the user agent."
              LayoutNGBlockFlow {UL} at (4,116) size 747x60 [color=#FF0000]
                LayoutNGListItem {LI} at (40,0) size 707x20 [color=#008000]
                  LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
                    LayoutText (anonymous) at (0,0) size 10x19
                      text run at (0,0) width 10: "\x{2022} "
                  LayoutText {#text} at (0,0) size 390x19
                    text run at (0,0) width 390: "This sentence should be green due to an imported style sheet ["
                  LayoutInline {CODE} at (0,0) size 0x0
                    LayoutText {#text} at (390,3) size 208x16
                      text run at (390,3) width 208: "@import url(imptest1.css);"
                  LayoutText {#text} at (598,0) size 9x19
                    text run at (598,0) width 9: "]."
                LayoutNGListItem {LI} at (40,20) size 707x20 [color=#800080]
                  LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
                    LayoutText (anonymous) at (0,0) size 10x19
                      text run at (0,0) width 10: "\x{2022} "
                  LayoutText {#text} at (0,0) size 395x19
                    text run at (0,0) width 395: "This sentence should be purple due to an imported style sheet ["
                  LayoutInline {CODE} at (0,0) size 0x0
                    LayoutText {#text} at (395,3) size 184x16
                      text run at (395,3) width 184: "@import \"imptest1a.css\""
                  LayoutText {#text} at (579,0) size 9x19
                    text run at (579,0) width 9: "]."
                LayoutNGListItem {LI} at (40,40) size 707x20 [color=#008000]
                  LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
                    LayoutText (anonymous) at (0,0) size 10x19
                      text run at (0,0) width 10: "\x{2022} "
                  LayoutText {#text} at (0,0) size 393x19
                    text run at (0,0) width 393: "This sentence should be green thanks to the STYLE attribute ["
                  LayoutInline {CODE} at (0,0) size 0x0
                    LayoutText {#text} at (393,3) size 168x16
                      text run at (393,3) width 168: "STYLE=\"color: green;\""
                  LayoutText {#text} at (561,0) size 9x19
                    text run at (561,0) width 9: "]."
              LayoutNGBlockFlow {P} at (4,192) size 747x20 [color=#800080]
                LayoutText {#text} at (0,0) size 500x19
                  text run at (0,0) width 500: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
              LayoutNGBlockFlow {OL} at (4,228) size 747x60
                LayoutNGListItem {LI} at (40,0) size 707x20
                  LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
                    LayoutText (anonymous) at (0,0) size 16x19
                      text run at (0,0) width 16: "1. "
                  LayoutText {#text} at (0,0) size 201x19
                    text run at (0,0) width 201: "This list should NOT be purple."
                LayoutNGListItem {LI} at (40,20) size 707x20
                  LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
                    LayoutText (anonymous) at (0,0) size 16x19
                      text run at (0,0) width 16: "2. "
                  LayoutText {#text} at (0,0) size 172x19
                    text run at (0,0) width 172: "It should, instead, be black."
                LayoutNGListItem {LI} at (40,40) size 707x20
                  LayoutNGBlockFlow (anonymous) at (-16,0) size 16x20
                    LayoutText (anonymous) at (0,0) size 16x19
                      text run at (0,0) width 16: "3. "
                  LayoutText {#text} at (0,0) size 501x19
                    text run at (0,0) width 501: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
              LayoutNGBlockFlow {P} at (4,304) size 747x40
                LayoutText {#text} at (0,0) size 697x19
                  text run at (0,0) width 697: "This sentence should be black. If it is red, then the browser has inappropriately imported the styles from the file"
                LayoutInline {TT} at (0,0) size 0x0
                  LayoutText {#text} at (0,23) size 96x16
                    text run at (0,23) width 96: "imptest2.css"
                LayoutText {#text} at (96,20) size 33x19
                  text run at (96,20) width 33: " (see "
                LayoutInline {A} at (0,0) size 0x0 [color=#0000FF]
                  LayoutText {#text} at (129,20) size 68x19
                    text run at (129,20) width 68: "section 3.0"
                LayoutText {#text} at (197,20) size 275x19
                  text run at (197,20) width 275: " of the CSS1 specification for more details)."
              LayoutNGBlockFlow {P} at (4,360) size 747x20 [color=#008000]
                LayoutText {#text} at (0,0) size 203x19
                  text run at (0,0) width 203: "This paragraph should be green."
layer at (8,217) size 769x2 clip at (0,0) size 0x0
  LayoutNGBlockFlow {HR} at (0,209) size 769x2 [border: (1px inset #EEEEEE)]
