layer at (0,0) size 800x1009
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x1009
  RenderBlock {HTML} at (0,0) size 800x1009
    RenderBody {BODY} at (8,8) size 784x993 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 784x20
        RenderText {#text} at (0,0) size 363x19
          text run at (0,0) width 363: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,36) size 784x140
        RenderText {#text} at (0,0) size 710x140
          text run at (0,0) width 609: "<LINK rel=\"stylesheet\" type=\"text/css\" href=\"linktest.css\" title=\"Default SS\">"
          text run at (608,0) width 1: " "
          text run at (0,14) width 710: "<LINK rel=\"alternate stylesheet\" type=\"text/css\" href=\"linktest2.css\" title=\"Alternate SS\">"
          text run at (709,14) width 1: " "
          text run at (0,28) width 203: "@import url(imptest1.css);"
          text run at (202,28) width 1: " "
          text run at (0,42) width 188: "@import \"imptest1a.css\";"
          text run at (187,42) width 1: " "
          text run at (0,56) width 125: "UL {color: red;}"
          text run at (124,56) width 1: " "
          text run at (0,70) width 172: ".four {color: purple;}"
          text run at (171,70) width 1: " "
          text run at (0,84) width 203: "@import url(imptest2.css);"
          text run at (202,84) width 1: " "
          text run at (0,98) width 32: "<!--"
          text run at (31,98) width 1: " "
          text run at (0,112) width 164: "P.six {color: green;}"
          text run at (163,112) width 1: " "
          text run at (0,126) width 24: "-->"
          text run at (23,126) width 1: " "
      RenderBlock {HR} at (0,189) size 784x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,207) size 784x20
        RenderText {#text} at (0,0) size 412x19
          text run at (0,0) width 412: "This sentence should be underlined due to the linked style sheet "
        RenderInline {CODE} at (0,0) size 95x14
          RenderText {#text} at (411,5) size 95x14
            text run at (411,5) width 95: "linktest.css"
        RenderText {#text} at (505,0) size 258x19
          text run at (505,0) width 258: ", the reference to which is shown above."
      RenderBlock {P} at (0,243) size 784x40
        RenderText {#text} at (0,0) size 449x19
          text run at (0,0) width 449: "This sentence should NOT be underlined due to the linked style sheet "
        RenderInline {CODE} at (0,0) size 102x14
          RenderText {#text} at (448,5) size 102x14
            text run at (448,5) width 102: "linktest2.css"
        RenderText {#text} at (549,0) size 9x19
          text run at (549,0) width 9: ", "
        RenderInline {STRONG} at (0,0) size 43x19
          RenderText {#text} at (557,0) size 43x19
            text run at (557,0) width 43: "unless"
        RenderText {#text} at (599,0) size 750x39
          text run at (599,0) width 151: " the external style sheet"
          text run at (0,20) width 330: "\"Alternate SS\" has been selected via the user agent."
      RenderBlock {UL} at (0,299) size 784x60 [color=#FF0000]
        RenderListItem {LI} at (40,0) size 744x20 [color=#008000]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 398x19
            text run at (0,0) width 398: "This sentence should be green due to an imported style sheet ["
          RenderInline {CODE} at (0,0) size 204x14
            RenderText {#text} at (397,5) size 204x14
              text run at (397,5) width 204: "@import url(imptest1.css);"
          RenderText {#text} at (600,0) size 10x19
            text run at (600,0) width 10: "]."
        RenderListItem {LI} at (40,20) size 744x20 [color=#800080]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 404x19
            text run at (0,0) width 404: "This sentence should be purple due to an imported style sheet ["
          RenderInline {CODE} at (0,0) size 180x14
            RenderText {#text} at (403,5) size 180x14
              text run at (403,5) width 180: "@import \"imptest1a.css\""
          RenderText {#text} at (582,0) size 10x19
            text run at (582,0) width 10: "]."
        RenderListItem {LI} at (40,40) size 744x20 [color=#008000]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 400x19
            text run at (0,0) width 400: "This sentence should be green thanks to the STYLE attribute ["
          RenderInline {CODE} at (0,0) size 164x14
            RenderText {#text} at (399,5) size 164x14
              text run at (399,5) width 164: "STYLE=\"color: green;\""
          RenderText {#text} at (562,0) size 11x19
            text run at (562,0) width 11: "]."
      RenderBlock {P} at (0,375) size 784x20 [color=#800080]
        RenderText {#text} at (0,0) size 510x19
          text run at (0,0) width 510: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
      RenderBlock {OL} at (0,411) size 784x60
        RenderListItem {LI} at (40,0) size 744x20
          RenderListMarker at (-21,0) size 16x19: "1"
          RenderText {#text} at (0,0) size 204x19
            text run at (0,0) width 204: "This list should NOT be purple."
        RenderListItem {LI} at (40,20) size 744x20
          RenderListMarker at (-21,0) size 16x19: "2"
          RenderText {#text} at (0,0) size 176x19
            text run at (0,0) width 176: "It should, instead, be black."
        RenderListItem {LI} at (40,40) size 744x20
          RenderListMarker at (-21,0) size 16x19: "3"
          RenderText {#text} at (0,0) size 512x19
            text run at (0,0) width 512: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
      RenderBlock {P} at (0,487) size 784x40
        RenderText {#text} at (0,0) size 715x19
          text run at (0,0) width 200: "This sentence should be black. "
          text run at (199,0) width 516: "If it is red, then the browser has inappropriately imported the styles from the file"
        RenderInline {TT} at (0,0) size 94x14
          RenderText {#text} at (0,25) size 94x14
            text run at (0,25) width 94: "imptest2.css"
        RenderText {#text} at (93,20) size 35x19
          text run at (93,20) width 35: " (see "
        RenderInline {A} at (0,0) size 70x19 [color=#0000FF]
          RenderText {#text} at (127,20) size 70x19
            text run at (127,20) width 70: "section 3.0"
        RenderText {#text} at (196,20) size 283x19
          text run at (196,20) width 283: " of the CSS1 specification for more details)."
      RenderBlock {P} at (0,543) size 784x20 [color=#008000]
        RenderText {#text} at (0,0) size 206x19
          text run at (0,0) width 206: "This paragraph should be green."
      RenderTable {TABLE} at (0,579) size 784x414 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x412
          RenderTableRow {TR} at (0,0) size 782x28
            RenderTableCell {TD} at (0,0) size 782x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x19
                RenderText {#text} at (4,4) size 161x19
                  text run at (4,4) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,28) size 782x384
            RenderTableCell {TD} at (0,206) 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 770x384 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 762x40
                RenderText {#text} at (0,0) size 412x19
                  text run at (0,0) width 412: "This sentence should be underlined due to the linked style sheet "
                RenderInline {CODE} at (0,0) size 95x14
                  RenderText {#text} at (411,5) size 95x14
                    text run at (411,5) width 95: "linktest.css"
                RenderText {#text} at (505,0) size 717x39
                  text run at (505,0) width 212: ", the reference to which is shown"
                  text run at (0,20) width 43: "above."
              RenderBlock {P} at (4,60) size 762x40
                RenderText {#text} at (0,0) size 449x19
                  text run at (0,0) width 449: "This sentence should NOT be underlined due to the linked style sheet "
                RenderInline {CODE} at (0,0) size 102x14
                  RenderText {#text} at (448,5) size 102x14
                    text run at (448,5) width 102: "linktest2.css"
                RenderText {#text} at (549,0) size 9x19
                  text run at (549,0) width 9: ", "
                RenderInline {STRONG} at (0,0) size 43x19
                  RenderText {#text} at (557,0) size 43x19
                    text run at (557,0) width 43: "unless"
                RenderText {#text} at (599,0) size 750x39
                  text run at (599,0) width 151: " the external style sheet"
                  text run at (0,20) width 330: "\"Alternate SS\" has been selected via the user agent."
              RenderBlock {UL} at (4,116) size 762x60 [color=#FF0000]
                RenderListItem {LI} at (40,0) size 722x20 [color=#008000]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 398x19
                    text run at (0,0) width 398: "This sentence should be green due to an imported style sheet ["
                  RenderInline {CODE} at (0,0) size 204x14
                    RenderText {#text} at (397,5) size 204x14
                      text run at (397,5) width 204: "@import url(imptest1.css);"
                  RenderText {#text} at (600,0) size 10x19
                    text run at (600,0) width 10: "]."
                RenderListItem {LI} at (40,20) size 722x20 [color=#800080]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 404x19
                    text run at (0,0) width 404: "This sentence should be purple due to an imported style sheet ["
                  RenderInline {CODE} at (0,0) size 180x14
                    RenderText {#text} at (403,5) size 180x14
                      text run at (403,5) width 180: "@import \"imptest1a.css\""
                  RenderText {#text} at (582,0) size 10x19
                    text run at (582,0) width 10: "]."
                RenderListItem {LI} at (40,40) size 722x20 [color=#008000]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 400x19
                    text run at (0,0) width 400: "This sentence should be green thanks to the STYLE attribute ["
                  RenderInline {CODE} at (0,0) size 164x14
                    RenderText {#text} at (399,5) size 164x14
                      text run at (399,5) width 164: "STYLE=\"color: green;\""
                  RenderText {#text} at (562,0) size 11x19
                    text run at (562,0) width 11: "]."
              RenderBlock {P} at (4,192) size 762x20 [color=#800080]
                RenderText {#text} at (0,0) size 510x19
                  text run at (0,0) width 510: "This sentence should be purple, and it doesn't have a terminating paragraph tag."
              RenderBlock {OL} at (4,228) size 762x60
                RenderListItem {LI} at (40,0) size 722x20
                  RenderListMarker at (-21,0) size 16x19: "1"
                  RenderText {#text} at (0,0) size 204x19
                    text run at (0,0) width 204: "This list should NOT be purple."
                RenderListItem {LI} at (40,20) size 722x20
                  RenderListMarker at (-21,0) size 16x19: "2"
                  RenderText {#text} at (0,0) size 176x19
                    text run at (0,0) width 176: "It should, instead, be black."
                RenderListItem {LI} at (40,40) size 722x20
                  RenderListMarker at (-21,0) size 16x19: "3"
                  RenderText {#text} at (0,0) size 512x19
                    text run at (0,0) width 512: "If it IS purple, then the browser hasn't correctly parsed the preceding paragraph."
              RenderBlock {P} at (4,304) size 762x40
                RenderText {#text} at (0,0) size 715x19
                  text run at (0,0) width 200: "This sentence should be black. "
                  text run at (199,0) width 516: "If it is red, then the browser has inappropriately imported the styles from the file"
                RenderInline {TT} at (0,0) size 94x14
                  RenderText {#text} at (0,25) size 94x14
                    text run at (0,25) width 94: "imptest2.css"
                RenderText {#text} at (93,20) size 35x19
                  text run at (93,20) width 35: " (see "
                RenderInline {A} at (0,0) size 70x19 [color=#0000FF]
                  RenderText {#text} at (127,20) size 70x19
                    text run at (127,20) width 70: "section 3.0"
                RenderText {#text} at (196,20) size 283x19
                  text run at (196,20) width 283: " of the CSS1 specification for more details)."
              RenderBlock {P} at (4,360) size 762x20 [color=#008000]
                RenderText {#text} at (0,0) size 206x19
                  text run at (0,0) width 206: "This paragraph should be green."
