layer at (0,0) size 785x1063
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1063
  RenderBlock {HTML} at (0,0) size 785x1063
    RenderBody {BODY} at (8,8) size 769x1047 [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 769x64
        RenderText {#text} at (0,0) size 344x64
          text run at (0,0) width 328: ".one {border-bottom: purple double 10px;}"
          text run at (0,16) width 320: ".two {border-bottom: purple thin solid;}"
          text run at (0,32) width 344: ".three {border-bottom: black medium solid;}"
          text run at (0,48) width 288: "TD {border-bottom: green 2px solid;}"
      RenderBlock {HR} at (0,113) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,131) size 769x40
        RenderText {#text} at (0,0) size 745x39
          text run at (0,0) width 629: "Note that all table cells on this page should have a two-pixel solid green border along their bottom sides. "
          text run at (629,0) width 116: "This border applies"
          text run at (0,20) width 299: "only to the cells, not the rows which contain them."
      RenderBlock {P} at (0,187) size 769x30 [border: none (10px double #800080) none]
        RenderText {#text} at (0,0) size 421x19
          text run at (0,0) width 421: "This paragraph should have a purple, double, 10-pixel bottom border."
      RenderBlock {P} at (0,233) size 769x21 [border: none (1px solid #800080) none]
        RenderText {#text} at (0,0) size 339x19
          text run at (0,0) width 339: "This paragraph should have a thin purple bottom border."
      RenderTable {TABLE} at (0,270) size 769x118 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x116
          RenderTableRow {TR} at (0,5) size 767x45
            RenderTableCell {TD} at (5,5) size 758x45 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderText {#text} at (2,2) size 721x39
                text run at (2,2) width 431: "Every cell in this table should have a 2-pixel solid green bottom border. "
                text run at (433,2) width 290: "This is also true of the table-testing section in the"
                text run at (2,22) width 168: "second half of the test page."
          RenderTableRow {TR} at (0,55) size 767x56
            RenderTableCell {TD} at (5,70) size 191x26 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 50x20
                text run at (2,3) width 50: "Cell one"
            RenderTableCell {TD} at (200,55) size 563x56 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock (anonymous) at (2,2) size 558x20
                RenderText {#text} at (0,0) size 51x19
                  text run at (0,0) width 51: "Cell two"
              RenderTable {TABLE} at (2,22) size 155x31 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 153x29
                  RenderTableRow {TR} at (0,2) size 153x25
                    RenderTableCell {TD} at (2,2) size 149x25 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,2) size 145x19
                        text run at (2,2) width 145: "Nested single-cell table!"
      RenderBlock {UL} at (0,404) size 769x149
        RenderListItem {LI} at (40,0) size 729x83 [border: none (3px solid #000000) none]
          RenderBlock (anonymous) at (0,0) size 729x20
            RenderListMarker at (-18,0) size 7x19: bullet
            RenderText {#text} at (0,0) size 110x19
              text run at (0,0) width 110: "This is a list item..."
          RenderBlock {UL} at (0,20) size 729x60
            RenderListItem {LI} at (40,0) size 689x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 70x19
                text run at (0,0) width 70: "...and this..."
            RenderListItem {LI} at (40,20) size 689x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 111x19
                text run at (0,0) width 111: "...is a second list..."
            RenderListItem {LI} at (40,40) size 689x20
              RenderListMarker at (-18,0) size 7x19: white bullet
              RenderText {#text} at (0,0) size 165x19
                text run at (0,0) width 165: "...nested within the list item."
        RenderListItem {LI} at (40,83) size 729x23 [border: none (3px solid #000000) none]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 149x19
            text run at (0,0) width 149: "This is a second list item."
        RenderListItem {LI} at (40,106) size 729x43 [border: none (3px solid #000000) none]
          RenderListMarker at (-18,0) size 7x19: bullet
          RenderText {#text} at (0,0) size 694x39
            text run at (0,0) width 694: "Each list item in this list should have a medium-width black border at its bottom, which for the first item means that it"
            text run at (0,20) width 89: "should appear "
          RenderInline {EM} at (0,0) size 51x19
            RenderText {#text} at (89,20) size 51x19
              text run at (89,20) width 51: "beneath"
          RenderText {#text} at (140,20) size 365x19
            text run at (140,20) width 365: " the nested list (below the line \"...nested within the list item.\")."
      RenderTable {TABLE} at (0,569) size 769x478 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x476
          RenderTableRow {TR} at (0,0) size 767x29
            RenderTableCell {TD} at (0,0) size 767x29 [bgcolor=#C0C0C0] [border: (1px inset #808080) (2px solid #008000) (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,29) size 767x447
            RenderTableCell {TD} at (0,238) size 12x29 [bgcolor=#C0C0C0] [border: (1px inset #808080) (2px solid #008000) (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,29) size 755x447 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x40
                RenderText {#text} at (0,0) size 745x39
                  text run at (0,0) width 629: "Note that all table cells on this page should have a two-pixel solid green border along their bottom sides. "
                  text run at (629,0) width 116: "This border applies"
                  text run at (0,20) width 299: "only to the cells, not the rows which contain them."
              RenderBlock {P} at (4,60) size 747x30 [border: none (10px double #800080) none]
                RenderText {#text} at (0,0) size 421x19
                  text run at (0,0) width 421: "This paragraph should have a purple, double, 10-pixel bottom border."
              RenderBlock {P} at (4,106) size 747x21 [border: none (1px solid #800080) none]
                RenderText {#text} at (0,0) size 339x19
                  text run at (0,0) width 339: "This paragraph should have a thin purple bottom border."
              RenderTable {TABLE} at (4,143) size 747x118 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 745x116
                  RenderTableRow {TR} at (0,5) size 745x45
                    RenderTableCell {TD} at (5,5) size 736x45 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
                      RenderText {#text} at (2,2) size 721x39
                        text run at (2,2) width 431: "Every cell in this table should have a 2-pixel solid green bottom border. "
                        text run at (433,2) width 290: "This is also true of the table-testing section in the"
                        text run at (2,22) width 168: "second half of the test page."
                  RenderTableRow {TR} at (0,55) size 745x56
                    RenderTableCell {TD} at (5,70) size 186x26 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,2) size 50x20
                        text run at (2,3) width 50: "Cell one"
                    RenderTableCell {TD} at (195,55) size 546x56 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
                      RenderBlock (anonymous) at (2,2) size 541x20
                        RenderText {#text} at (0,0) size 51x19
                          text run at (0,0) width 51: "Cell two"
                      RenderTable {TABLE} at (2,22) size 155x31 [border: (1px outset #808080)]
                        RenderTableSection {TBODY} at (1,1) size 153x29
                          RenderTableRow {TR} at (0,2) size 153x25
                            RenderTableCell {TD} at (2,2) size 149x25 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                              RenderText {#text} at (2,2) size 145x19
                                text run at (2,2) width 145: "Nested single-cell table!"
              RenderBlock {UL} at (4,277) size 747x149
                RenderListItem {LI} at (40,0) size 707x83 [border: none (3px solid #000000) none]
                  RenderBlock (anonymous) at (0,0) size 707x20
                    RenderListMarker at (-18,0) size 7x19: bullet
                    RenderText {#text} at (0,0) size 110x19
                      text run at (0,0) width 110: "This is a list item..."
                  RenderBlock {UL} at (0,20) size 707x60
                    RenderListItem {LI} at (40,0) size 667x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 70x19
                        text run at (0,0) width 70: "...and this..."
                    RenderListItem {LI} at (40,20) size 667x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 111x19
                        text run at (0,0) width 111: "...is a second list..."
                    RenderListItem {LI} at (40,40) size 667x20
                      RenderListMarker at (-18,0) size 7x19: white bullet
                      RenderText {#text} at (0,0) size 165x19
                        text run at (0,0) width 165: "...nested within the list item."
                RenderListItem {LI} at (40,83) size 707x23 [border: none (3px solid #000000) none]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 149x19
                    text run at (0,0) width 149: "This is a second list item."
                RenderListItem {LI} at (40,106) size 707x43 [border: none (3px solid #000000) none]
                  RenderListMarker at (-18,0) size 7x19: bullet
                  RenderText {#text} at (0,0) size 694x39
                    text run at (0,0) width 694: "Each list item in this list should have a medium-width black border at its bottom, which for the first item means that it"
                    text run at (0,20) width 89: "should appear "
                  RenderInline {EM} at (0,0) size 51x19
                    RenderText {#text} at (89,20) size 51x19
                      text run at (89,20) width 51: "beneath"
                  RenderText {#text} at (140,20) size 365x19
                    text run at (140,20) width 365: " the nested list (below the line \"...nested within the list item.\")."
