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
        RenderText {#text} at (0,0) size 363x18
          text run at (0,0) width 363: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,34) size 784x45
        RenderText {#text} at (0,0) size 430x45
          text run at (0,0) width 430: ".one {list-style-image: url(../resources/oransqr.gif);}"
          text run at (429,0) width 1: " "
          text run at (0,15) width 235: ".two {list-style-image: none;}"
          text run at (234,15) width 1: " "
          text run at (0,30) width 0: " "
      RenderBlock {HR} at (0,92) size 784x2 [border: (1px inset #000000)]
      RenderBlock {UL} at (0,110) size 784x57
        RenderListItem {LI} at (40,0) size 744x19
          RenderListMarker at (-22,0) size 15x15
          RenderText {#text} at (0,1) size 65x18
            text run at (0,1) width 65: "This list..."
        RenderListItem {LI} at (40,19) size 744x19
          RenderListMarker at (-22,0) size 15x15
          RenderText {#text} at (0,1) size 116x18
            text run at (0,1) width 116: "...should feature..."
        RenderListItem {LI} at (40,38) size 744x19
          RenderListMarker at (-22,0) size 15x15
          RenderText {#text} at (0,1) size 150x18
            text run at (0,1) width 150: "...images for each item."
      RenderBlock {UL} at (0,183) size 784x54
        RenderListItem {LI} at (40,0) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 65x18
            text run at (0,0) width 65: "This list..."
        RenderListItem {LI} at (40,18) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 116x18
            text run at (0,0) width 116: "...should feature..."
        RenderListItem {LI} at (40,36) size 744x18
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 238x18
            text run at (0,0) width 238: "...standard list markers for each item."
      RenderTable {TABLE} at (0,253) size 300x179 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 298x177
          RenderTableRow {TR} at (0,0) size 298x26
            RenderTableCell {TD} at (0,0) size 298x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x18
                RenderText {#text} at (4,4) size 161x18
                  text run at (4,4) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 298x151
            RenderTableCell {TD} at (0,88) size 12x27 [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,5) width 4: " "
            RenderTableCell {TD} at (12,26) size 286x151 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {UL} at (4,4) size 278x57
                RenderListItem {LI} at (40,0) size 238x19
                  RenderListMarker at (-22,0) size 15x15
                  RenderText {#text} at (0,1) size 65x18
                    text run at (0,1) width 65: "This list..."
                RenderListItem {LI} at (40,19) size 238x19
                  RenderListMarker at (-22,0) size 15x15
                  RenderText {#text} at (0,1) size 116x18
                    text run at (0,1) width 116: "...should feature..."
                RenderListItem {LI} at (40,38) size 238x19
                  RenderListMarker at (-22,0) size 15x15
                  RenderText {#text} at (0,1) size 150x18
                    text run at (0,1) width 150: "...images for each item."
              RenderBlock {UL} at (4,77) size 278x54
                RenderListItem {LI} at (40,0) size 238x18
                  RenderListMarker at (-17,0) size 7x18: bullet
                  RenderText {#text} at (0,0) size 65x18
                    text run at (0,0) width 65: "This list..."
                RenderListItem {LI} at (40,18) size 238x18
                  RenderListMarker at (-17,0) size 7x18: bullet
                  RenderText {#text} at (0,0) size 116x18
                    text run at (0,0) width 116: "...should feature..."
                RenderListItem {LI} at (40,36) size 238x18
                  RenderListMarker at (-17,0) size 7x18: bullet
                  RenderText {#text} at (0,0) size 238x18
                    text run at (0,0) width 238: "...standard list markers for each item."
