layer at (0,0) size 785x1009
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1009
  RenderBlock {HTML} at (0,0) size 785x1009
    RenderBody {BODY} at (8,8) size 769x993 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x20
        RenderText {#text} at (0,0) size 337x19
          text run at (0,0) width 337: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,36) size 769x160
        RenderText {#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 (0,16) width 728: "<LINK rel=\"alternate stylesheet\" type=\"text/css\" href=\"linktest2.css\" title=\"Alternate SS\">"
          text run at (0,32) width 208: "@import url(imptest1.css);"
          text run at (0,48) width 192: "@import \"imptest1a.css\";"
          text run at (0,64) width 128: "UL {color: red;}"
          text run at (0,80) width 176: ".four {color: purple;}"
          text run at (0,96) width 208: "@import url(imptest2.css);"
          text run at (0,112) width 32: "<!--"
          text run at (0,128) width 168: "P.six {color: green;}"
          text run at (0,144) width 24: "-->"
      RenderBlock {HR} at (0,209) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,227) size 769x20
        RenderText {#text} at (0,0) size 383x19
          text run at (0,0) width 383: "This sentence should be underlined due to the linked style sheet "
        RenderInline {CODE} at (0,0) size 96x16
          RenderText {#text} at (383,3) size 96x16
            text run at (383,3) width 96: "linktest.css"
        RenderText {#text} at (479,0) size 242x19
          text run at (479,0) width 242: ", the reference to which is shown above."
      RenderBlock {P} at (0,263) size 769x40
        RenderText {#text} at (0,0) size 420x19
          text run at (0,0) width 420: "This sentence should NOT be underlined due to the linked style sheet "
        RenderInline {CODE} at (0,0) size 104x16
          RenderText {#text} at (420,3) size 104x16
            text run at (420,3) width 104: "linktest2.css"
        RenderText {#text} at (524,0) size 8x19
          text run at (524,0) width 8: ", "
        RenderInline {STRONG} at (0,0) size 42x19
          RenderText {#text} at (532,0) size 42x19
            text run at (532,0) width 42: "unless"
        RenderText {#text} at (574,0) size 713x39
          text run at (574,0) width 139: " the external style sheet"
          text run at (0,20) width 309: "\"Alternate SS\" has been selected via the user agent."
      RenderBlock {UL} at (0,319) size 769x60 [color=#FF0000]
        RenderListItem {LI} at (40,0) size 729x20 [color=#008000]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 373x19
            text run at (0,0) width 373: "This sentence should be green due to an imported style sheet ["
          RenderInline {CODE} at (0,0) size 208x16
            RenderText {#text} at (373,3) size 208x16
              text run at (373,3) width 208: "@import url(imptest1.css);"
          RenderText {#text} at (581,0) size 9x19
            text run at (581,0) width 9: "]."
        RenderListItem {LI} at (40,20) size 729x20 [color=#800080]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 378x19
            text run at (0,0) width 378: "This sentence should be purple due to an imported style sheet ["
          RenderInline {CODE} at (0,0) size 184x16
            RenderText {#text} at (378,3) size 184x16
              text run at (378,3) width 184: "@import \"imptest1a.css\""
          RenderText {#text} at (562,0) size 9x19
            text run at (562,0) width 9: "]."
        RenderListItem {LI} at (40,40) size 729x20 [color=#008000]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 374x19
            text run at (0,0) width 374: "This sentence should be green thanks to the STYLE attribute ["
          RenderInline {CODE} at (0,0) size 168x16
            RenderText {#text} at (374,3) size 168x16
              text run at (374,3) width 168: "STYLE=\"color: green;\""
          RenderText {#text} at (542,0) size 9x19
            text run at (542,0) width 9: "]."
      RenderBlock {P} at (0,395) size 769x20 [color=#800080]
        RenderText {#text} at (0,0) size 476x19
          text run at (0,0) width 476: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
      RenderBlock {OL} at (0,431) size 769x60
        RenderListItem {LI} at (40,0) size 729x20
          RenderListMarker at (-21,0) size 16x19: "1"
          RenderText {#text} at (0,0) size 190x19
            text run at (0,0) width 190: "This list should NOT be purple."
        RenderListItem {LI} at (40,20) size 729x20
          RenderListMarker at (-21,0) size 16x19: "2"
          RenderText {#text} at (0,0) size 166x19
            text run at (0,0) width 166: "It should, instead, be black."
        RenderListItem {LI} at (40,40) size 729x20
          RenderListMarker at (-21,0) size 16x19: "3"
          RenderText {#text} at (0,0) size 483x19
            text run at (0,0) width 483: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
      RenderBlock {P} at (0,507) size 769x40
        RenderText {#text} at (0,0) size 668x19
          text run at (0,0) width 188: "This sentence should be black. "
          text run at (188,0) width 480: "If it is red, then the browser has inappropriately imported the styles from the file "
        RenderInline {TT} at (0,0) size 96x16
          RenderText {#text} at (668,3) size 96x16
            text run at (668,3) width 96: "imptest2.css"
        RenderText {#text} at (0,20) size 29x19
          text run at (0,20) width 29: "(see "
        RenderInline {A} at (0,0) size 66x19 [color=#0000FF]
          RenderText {#text} at (29,20) size 66x19
            text run at (29,20) width 66: "section 3.0"
        RenderText {#text} at (95,20) size 264x19
          text run at (95,20) width 264: " of the CSS1 specification for more details)."
      RenderBlock {P} at (0,563) size 769x20 [color=#008000]
        RenderText {#text} at (0,0) size 193x19
          text run at (0,0) width 193: "This paragraph should be green."
      RenderTable {TABLE} at (0,599) size 769x394 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x392
          RenderTableRow {TR} at (0,0) size 767x28
            RenderTableCell {TD} at (0,0) size 767x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 159x19
                RenderText {#text} at (4,4) size 159x19
                  text run at (4,4) width 159: "TABLE Testing Section"
          RenderTableRow {TR} at (0,28) size 767x364
            RenderTableCell {TD} at (0,196) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x19
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,28) size 755x364 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x20
                RenderText {#text} at (0,0) size 383x19
                  text run at (0,0) width 383: "This sentence should be underlined due to the linked style sheet "
                RenderInline {CODE} at (0,0) size 96x16
                  RenderText {#text} at (383,3) size 96x16
                    text run at (383,3) width 96: "linktest.css"
                RenderText {#text} at (479,0) size 242x19
                  text run at (479,0) width 242: ", the reference to which is shown above."
              RenderBlock {P} at (4,40) size 747x40
                RenderText {#text} at (0,0) size 420x19
                  text run at (0,0) width 420: "This sentence should NOT be underlined due to the linked style sheet "
                RenderInline {CODE} at (0,0) size 104x16
                  RenderText {#text} at (420,3) size 104x16
                    text run at (420,3) width 104: "linktest2.css"
                RenderText {#text} at (524,0) size 8x19
                  text run at (524,0) width 8: ", "
                RenderInline {STRONG} at (0,0) size 42x19
                  RenderText {#text} at (532,0) size 42x19
                    text run at (532,0) width 42: "unless"
                RenderText {#text} at (574,0) size 713x39
                  text run at (574,0) width 139: " the external style sheet"
                  text run at (0,20) width 309: "\"Alternate SS\" has been selected via the user agent."
              RenderBlock {UL} at (4,96) size 747x60 [color=#FF0000]
                RenderListItem {LI} at (40,0) size 707x20 [color=#008000]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 373x19
                    text run at (0,0) width 373: "This sentence should be green due to an imported style sheet ["
                  RenderInline {CODE} at (0,0) size 208x16
                    RenderText {#text} at (373,3) size 208x16
                      text run at (373,3) width 208: "@import url(imptest1.css);"
                  RenderText {#text} at (581,0) size 9x19
                    text run at (581,0) width 9: "]."
                RenderListItem {LI} at (40,20) size 707x20 [color=#800080]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 378x19
                    text run at (0,0) width 378: "This sentence should be purple due to an imported style sheet ["
                  RenderInline {CODE} at (0,0) size 184x16
                    RenderText {#text} at (378,3) size 184x16
                      text run at (378,3) width 184: "@import \"imptest1a.css\""
                  RenderText {#text} at (562,0) size 9x19
                    text run at (562,0) width 9: "]."
                RenderListItem {LI} at (40,40) size 707x20 [color=#008000]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 374x19
                    text run at (0,0) width 374: "This sentence should be green thanks to the STYLE attribute ["
                  RenderInline {CODE} at (0,0) size 168x16
                    RenderText {#text} at (374,3) size 168x16
                      text run at (374,3) width 168: "STYLE=\"color: green;\""
                  RenderText {#text} at (542,0) size 9x19
                    text run at (542,0) width 9: "]."
              RenderBlock {P} at (4,172) size 747x20 [color=#800080]
                RenderText {#text} at (0,0) size 476x19
                  text run at (0,0) width 476: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
              RenderBlock {OL} at (4,208) size 747x60
                RenderListItem {LI} at (40,0) size 707x20
                  RenderListMarker at (-21,0) size 16x19: "1"
                  RenderText {#text} at (0,0) size 190x19
                    text run at (0,0) width 190: "This list should NOT be purple."
                RenderListItem {LI} at (40,20) size 707x20
                  RenderListMarker at (-21,0) size 16x19: "2"
                  RenderText {#text} at (0,0) size 166x19
                    text run at (0,0) width 166: "It should, instead, be black."
                RenderListItem {LI} at (40,40) size 707x20
                  RenderListMarker at (-21,0) size 16x19: "3"
                  RenderText {#text} at (0,0) size 483x19
                    text run at (0,0) width 483: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
              RenderBlock {P} at (4,284) size 747x40
                RenderText {#text} at (0,0) size 664x19
                  text run at (0,0) width 188: "This sentence should be black. "
                  text run at (188,0) width 476: "If it is red, then the browser has inappropriately imported the styles from the file"
                RenderInline {TT} at (0,0) size 96x16
                  RenderText {#text} at (0,23) size 96x16
                    text run at (0,23) width 96: "imptest2.css"
                RenderText {#text} at (96,20) size 33x19
                  text run at (96,20) width 33: " (see "
                RenderInline {A} at (0,0) size 66x19 [color=#0000FF]
                  RenderText {#text} at (129,20) size 66x19
                    text run at (129,20) width 66: "section 3.0"
                RenderText {#text} at (195,20) size 264x19
                  text run at (195,20) width 264: " of the CSS1 specification for more details)."
              RenderBlock {P} at (4,340) size 747x20 [color=#008000]
                RenderText {#text} at (0,0) size 193x19
                  text run at (0,0) width 193: "This paragraph should be green."
