layer at (0,0) size 800x1015
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x1015
  RenderBlock {HTML} at (0,0) size 800x1015
    RenderBody {BODY} at (8,8) size 784x999 [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 784x56
        RenderText {#text} at (0,0) size 313x56
          text run at (0,0) width 297: ".one {border-top: purple double 10px;}"
          text run at (0,14) width 289: ".two {border-top: purple thin solid;}"
          text run at (0,28) width 313: ".three {border-top: black medium solid;}"
          text run at (0,42) width 258: "TD {border-top: green 2px solid;}"
      RenderBlock {HR} at (0,105) size 784x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,123) size 784x40
        RenderText {#text} at (0,0) size 772x39
          text run at (0,0) width 648: "Note that all table cells on this page should have a two-pixel solid green border along their top sides. "
          text run at (647,0) width 125: "This border applies"
          text run at (0,20) width 324: "only to the cells, not the rows which contain them."
      RenderBlock {P} at (0,179) size 784x30 [border: (10px double #800080) none]
        RenderText {#text} at (0,10) size 420x19
          text run at (0,10) width 420: "This paragraph should have a purple, double, 10-pixel top border."
      RenderBlock {P} at (0,225) size 784x21 [border: (1px solid #800080) none]
        RenderText {#text} at (0,1) size 336x19
          text run at (0,1) width 336: "This paragraph should have a thin purple top border."
      RenderTable {TABLE} at (0,262) size 784x118 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x116
          RenderTableRow {TR} at (0,5) size 782x45
            RenderTableCell {TD} at (5,5) size 773x45 [border: (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderText {#text} at (2,3) size 753x39
                text run at (2,3) width 438: "Every cell in this table should have a 2-pixel solid green top border. "
                text run at (439,3) width 316: "This is also true of the table-testing section in the"
                text run at (2,23) width 179: "second half of the test page."
          RenderTableRow {TR} at (0,55) size 782x56
            RenderTableCell {TD} at (5,70) size 195x26 [border: (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (2,3) size 54x20
                text run at (2,4) width 54: "Cell one"
            RenderTableCell {TD} at (204,55) size 574x56 [border: (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock (anonymous) at (2,3) size 569x20
                RenderText {#text} at (0,0) size 55x19
                  text run at (0,0) width 55: "Cell two"
              RenderTable {TABLE} at (2,23) size 166x31 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 164x29
                  RenderTableRow {TR} at (0,2) size 164x25
                    RenderTableCell {TD} at (2,2) size 160x25 [border: (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,3) size 156x19
                        text run at (2,3) width 156: "Nested single-cell table!"
      RenderBlock {UL} at (0,396) size 784x129
        RenderListItem {LI} at (40,0) size 744x83 [border: (3px solid #000000) none]
          RenderBlock (anonymous) at (0,3) size 744x20
            RenderListMarker at (-18,0) size 7x19: bullet
            RenderText {#text} at (0,0) size 123x19
              text run at (0,0) width 123: "This is a list item..."
          RenderBlock {UL} at (0,23) size 744x60
            RenderListItem {LI} at (40,0) size 704x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 75x19
                text run at (0,0) width 75: "...and this..."
            RenderListItem {LI} at (40,20) size 704x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 118x19
                text run at (0,0) width 118: "...is a second list..."
            RenderListItem {LI} at (40,40) size 704x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 182x19
                text run at (0,0) width 182: "...nested within the list item."
        RenderListItem {LI} at (40,83) size 744x23 [border: (3px solid #000000) none]
          RenderListMarker at (-18,3) size 7x19: bullet
          RenderText {#text} at (0,3) size 163x19
            text run at (0,3) width 163: "This is a second list item."
        RenderListItem {LI} at (40,106) size 744x23 [border: (3px solid #000000) none]
          RenderListMarker at (-18,3) size 7x19: bullet
          RenderText {#text} at (0,3) size 493x19
            text run at (0,3) width 493: "Each list item in this list should have a medium-width black border at its top."
      RenderTable {TABLE} at (0,541) size 784x458 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x456
          RenderTableRow {TR} at (0,0) size 782x29
            RenderTableCell {TD} at (0,0) size 782x29 [bgcolor=#C0C0C0] [border: (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x19
                RenderText {#text} at (4,5) size 161x19
                  text run at (4,5) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,29) size 782x427
            RenderTableCell {TD} at (0,228) size 12x29 [bgcolor=#C0C0C0] [border: (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,5) size 4x19
                text run at (4,5) width 4: " "
            RenderTableCell {TD} at (12,29) size 770x427 [border: (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,5) size 762x40
                RenderText {#text} at (0,0) size 723x39
                  text run at (0,0) width 648: "Note that all table cells on this page should have a two-pixel solid green border along their top sides. "
                  text run at (647,0) width 76: "This border"
                  text run at (0,20) width 373: "applies only to the cells, not the rows which contain them."
              RenderBlock {P} at (4,61) size 762x30 [border: (10px double #800080) none]
                RenderText {#text} at (0,10) size 420x19
                  text run at (0,10) width 420: "This paragraph should have a purple, double, 10-pixel top border."
              RenderBlock {P} at (4,107) size 762x21 [border: (1px solid #800080) none]
                RenderText {#text} at (0,1) size 336x19
                  text run at (0,1) width 336: "This paragraph should have a thin purple top border."
              RenderTable {TABLE} at (4,144) size 762x118 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 760x116
                  RenderTableRow {TR} at (0,5) size 760x45
                    RenderTableCell {TD} at (5,5) size 751x45 [border: (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
                      RenderText {#text} at (2,3) size 729x39
                        text run at (2,3) width 438: "Every cell in this table should have a 2-pixel solid green top border. "
                        text run at (439,3) width 292: "This is also true of the table-testing section in"
                        text run at (2,23) width 203: "the second half of the test page."
                  RenderTableRow {TR} at (0,55) size 760x56
                    RenderTableCell {TD} at (5,70) size 190x26 [border: (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,3) size 54x20
                        text run at (2,4) width 54: "Cell one"
                    RenderTableCell {TD} at (199,55) size 557x56 [border: (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
                      RenderBlock (anonymous) at (2,3) size 552x20
                        RenderText {#text} at (0,0) size 55x19
                          text run at (0,0) width 55: "Cell two"
                      RenderTable {TABLE} at (2,23) size 166x31 [border: (1px outset #808080)]
                        RenderTableSection {TBODY} at (1,1) size 164x29
                          RenderTableRow {TR} at (0,2) size 164x25
                            RenderTableCell {TD} at (2,2) size 160x25 [border: (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                              RenderText {#text} at (2,3) size 156x19
                                text run at (2,3) width 156: "Nested single-cell table!"
              RenderBlock {UL} at (4,278) size 762x129
                RenderListItem {LI} at (40,0) size 722x83 [border: (3px solid #000000) none]
                  RenderBlock (anonymous) at (0,3) size 722x20
                    RenderListMarker at (-18,0) size 7x19: bullet
                    RenderText {#text} at (0,0) size 123x19
                      text run at (0,0) width 123: "This is a list item..."
                  RenderBlock {UL} at (0,23) size 722x60
                    RenderListItem {LI} at (40,0) size 682x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 75x19
                        text run at (0,0) width 75: "...and this..."
                    RenderListItem {LI} at (40,20) size 682x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 118x19
                        text run at (0,0) width 118: "...is a second list..."
                    RenderListItem {LI} at (40,40) size 682x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 182x19
                        text run at (0,0) width 182: "...nested within the list item."
                RenderListItem {LI} at (40,83) size 722x23 [border: (3px solid #000000) none]
                  RenderListMarker at (-18,3) size 7x19: bullet
                  RenderText {#text} at (0,3) size 163x19
                    text run at (0,3) width 163: "This is a second list item."
                RenderListItem {LI} at (40,106) size 722x23 [border: (3px solid #000000) none]
                  RenderListMarker at (-18,3) size 7x19: bullet
                  RenderText {#text} at (0,3) size 493x19
                    text run at (0,3) width 493: "Each list item in this list should have a medium-width black border at its top."
