layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 355x18
          text run at (0,0) width 355: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,34) size 784x60
        RenderText {#text} at (0,0) size 472x60
          text run at (0,0) width 288: "P {color: navy; font-family: serif;}"
          text run at (0,15) width 472: "HTML BODY TABLE P {color: purple; font-family: sans-serif;}"
          text run at (0,30) width 224: "EM, UL LI LI {color: green;}"
          text run at (0,45) width 0: " "
      RenderBlock {HR} at (0,107) size 784x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,125) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 625x18
          text run at (0,0) width 625: "This sentence should be navy serif in the first half of the page, but purple and sans-serif in the table."
      RenderBlock {P} at (0,159) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 559x18
          text run at (0,0) width 559: "This sentence should be normal for its section, except for the last word, which should be "
        RenderInline {EM} at (0,0) size 36x18 [color=#008000]
          RenderText {#text} at (559,0) size 36x18
            text run at (559,0) width 36: "green"
        RenderText {#text} at (595,0) size 4x18
          text run at (595,0) width 4: "."
      RenderBlock {UL} at (0,193) size 784x36
        RenderListItem {LI} at (40,0) size 744x36
          RenderBlock (anonymous) at (0,0) size 744x18
            RenderListMarker at (-17,0) size 7x18: bullet
            RenderInline {EM} at (0,0) size 39x18 [color=#008000]
              RenderText {#text} at (0,0) size 39x18
                text run at (0,0) width 39: "Hello."
            RenderText {#text} at (39,0) size 399x18
              text run at (39,0) width 4: " "
              text run at (43,0) width 395: "The first \"hello\" should be green, but this part should be black."
          RenderBlock {UL} at (0,18) size 744x18
            RenderListItem {LI} at (40,0) size 704x18 [color=#008000]
              RenderListMarker at (-17,0) size 7x18: white bullet
              RenderText {#text} at (0,0) size 136x18
                text run at (0,0) width 136: "This should be green."
      RenderTable {TABLE} at (0,245) size 722x156 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 720x154
          RenderTableRow {TR} at (0,0) size 720x26
            RenderTableCell {TD} at (0,0) size 720x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 163x18
                RenderText {#text} at (4,4) size 163x18
                  text run at (4,4) width 163: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 720x128
            RenderTableCell {TD} at (0,77) size 12x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x18
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 708x128 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 700x18 [color=#800080]
                RenderText {#text} at (0,0) size 700x18
                  text run at (0,0) width 700: "This sentence should be navy serif in the first half of the page, but purple and sans-serif in the table."
              RenderBlock {P} at (4,38) size 700x18 [color=#800080]
                RenderText {#text} at (0,0) size 623x18
                  text run at (0,0) width 623: "This sentence should be normal for its section, except for the last word, which should be "
                RenderInline {EM} at (0,0) size 41x18 [color=#008000]
                  RenderText {#text} at (623,0) size 41x18
                    text run at (623,0) width 41: "green"
                RenderText {#text} at (664,0) size 4x18
                  text run at (664,0) width 4: "."
              RenderBlock {UL} at (4,72) size 700x36
                RenderListItem {LI} at (40,0) size 660x36
                  RenderBlock (anonymous) at (0,0) size 660x18
                    RenderListMarker at (-17,0) size 7x18: bullet
                    RenderInline {EM} at (0,0) size 39x18 [color=#008000]
                      RenderText {#text} at (0,0) size 39x18
                        text run at (0,0) width 39: "Hello."
                    RenderText {#text} at (39,0) size 399x18
                      text run at (39,0) width 4: " "
                      text run at (43,0) width 395: "The first \"hello\" should be green, but this part should be black."
                  RenderBlock {UL} at (0,18) size 660x18
                    RenderListItem {LI} at (40,0) size 620x18 [color=#008000]
                      RenderListMarker at (-17,0) size 7x18: white bullet
                      RenderText {#text} at (0,0) size 136x18
                        text run at (0,0) width 136: "This should be green."
