layer at (0,0) size 785x1082
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1082
  RenderBlock {HTML} at (0,0) size 785x1082
    RenderBody {BODY} at (8,8) size 769x1066 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 749x18
        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 769x105
        RenderText {#text} at (0,0) size 352x105
          text run at (0,0) width 184: "P {margin-right: 20px;}"
          text run at (0,15) width 320: ".one {border-right: purple double 10px;}"
          text run at (0,30) width 312: ".two {border-right: purple thin solid;}"
          text run at (0,45) width 344: ".threea {border-right: black medium solid;}"
          text run at (0,60) width 352: ".threeb {border-right: purple medium solid;}"
          text run at (0,75) width 336: ".threec {border-right: blue medium solid;}"
          text run at (0,90) width 280: "TD {border-right: green 2px solid;}"
      RenderBlock {HR} at (0,152) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,170) size 749x36
        RenderText {#text} at (0,0) size 716x36
          text run at (0,0) width 643: "Note that all table cells on this page should have a two-pixel solid green border along their right sides. "
          text run at (643,0) width 73: "This border"
          text run at (0,18) width 365: "applies only to the cells, not the rows which contain them."
      RenderBlock {P} at (0,222) size 749x18 [border: none (10px double #800080) none]
        RenderText {#text} at (0,0) size 423x18
          text run at (0,0) width 423: "This paragraph should have a purple, double, 10-pixel right border."
      RenderBlock {P} at (0,256) size 749x18 [border: none (1px solid #800080) none]
        RenderText {#text} at (0,0) size 340x18
          text run at (0,0) width 340: "This paragraph should have a thin purple right border."
      RenderTable {TABLE} at (0,290) size 769x107 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x105
          RenderTableRow {TR} at (0,5) size 767x40
            RenderTableCell {TD} at (5,5) size 758x40 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderText {#text} at (2,2) size 744x36
                text run at (2,2) width 438: "Every cell in this table should have a 2-pixel solid green right border. "
                text run at (440,2) width 306: "This is also true of the table-testing section in the"
                text run at (2,20) width 175: "second half of the test page."
          RenderTableRow {TR} at (0,50) size 767x50
            RenderTableCell {TD} at (5,64) size 194x22 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 53x18
                text run at (2,2) width 53: "Cell one"
            RenderTableCell {TD} at (203,50) size 560x50 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock (anonymous) at (2,2) size 554x18
                RenderText {#text} at (0,0) size 54x18
                  text run at (0,0) width 54: "Cell two"
              RenderTable {TABLE} at (2,20) size 162x28 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 160x26
                  RenderTableRow {TR} at (0,2) size 160x22
                    RenderTableCell {TD} at (2,2) size 156x22 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,2) size 151x18
                        text run at (2,2) width 151: "Nested single-cell table!"
      RenderBlock {UL} at (0,413) size 769x162
        RenderListItem {LI} at (40,0) size 729x72 [border: none (3px solid #000000) none]
          RenderBlock (anonymous) at (0,0) size 726x18
            RenderListMarker at (-17,0) size 7x18: bullet
            RenderText {#text} at (0,0) size 118x18
              text run at (0,0) width 118: "This is a list item..."
          RenderBlock {UL} at (0,18) size 726x54
            RenderListItem {LI} at (40,0) size 686x18
              RenderListMarker at (-17,0) size 7x18: white bullet
              RenderText {#text} at (0,0) size 73x18
                text run at (0,0) width 73: "...and this..."
            RenderListItem {LI} at (40,18) size 686x18
              RenderListMarker at (-17,0) size 7x18: white bullet
              RenderText {#text} at (0,0) size 115x18
                text run at (0,0) width 115: "...is a second list..."
            RenderListItem {LI} at (40,36) size 686x18
              RenderListMarker at (-17,0) size 7x18: white bullet
              RenderText {#text} at (0,0) size 176x18
                text run at (0,0) width 176: "...nested within the list item."
        RenderListItem {LI} at (40,72) size 729x18 [border: none (3px solid #800080) none]
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 158x18
            text run at (0,0) width 158: "This is a second list item."
        RenderListItem {LI} at (40,90) size 729x72 [border: none (3px solid #0000FF) none]
          RenderListMarker at (-17,0) size 7x18: bullet
          RenderText {#text} at (0,0) size 707x72
            text run at (0,0) width 700: "Each list item in this 'parent' list should have a medium-width border along its right side, in each of three colors."
            text run at (0,18) width 704: "The first item's border should travel the entire height the nested list (to end near the baseline of the line \"...nested"
            text run at (0,36) width 538: "within the list item.\"), even though the nested list does not have any border styles set. "
            text run at (538,36) width 169: "The borders should line up"
            text run at (0,54) width 621: "together at the right edge of the document's body, as each list element has a default width of 100%."
      RenderTable {TABLE} at (0,591) size 769x475 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x473
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 767x26 [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 163x18
                RenderText {#text} at (4,4) size 163x18
                  text run at (4,4) width 163: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 767x447
            RenderTableCell {TD} at (0,236) size 13x27 [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,5) width 4: " "
            RenderTableCell {TD} at (13,26) size 754x447 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 725x36
                RenderText {#text} at (0,0) size 716x36
                  text run at (0,0) width 643: "Note that all table cells on this page should have a two-pixel solid green border along their right sides. "
                  text run at (643,0) width 73: "This border"
                  text run at (0,18) width 365: "applies only to the cells, not the rows which contain them."
              RenderBlock {P} at (4,56) size 725x18 [border: none (10px double #800080) none]
                RenderText {#text} at (0,0) size 423x18
                  text run at (0,0) width 423: "This paragraph should have a purple, double, 10-pixel right border."
              RenderBlock {P} at (4,90) size 725x18 [border: none (1px solid #800080) none]
                RenderText {#text} at (0,0) size 340x18
                  text run at (0,0) width 340: "This paragraph should have a thin purple right border."
              RenderTable {TABLE} at (4,124) size 745x107 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 743x105
                  RenderTableRow {TR} at (0,5) size 743x40
                    RenderTableCell {TD} at (5,5) size 734x40 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
                      RenderText {#text} at (2,2) size 721x36
                        text run at (2,2) width 438: "Every cell in this table should have a 2-pixel solid green right border. "
                        text run at (440,2) width 283: "This is also true of the table-testing section in"
                        text run at (2,20) width 198: "the second half of the test page."
                  RenderTableRow {TR} at (0,50) size 743x50
                    RenderTableCell {TD} at (5,64) size 188x22 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
                      RenderText {#text} at (2,2) size 53x18
                        text run at (2,2) width 53: "Cell one"
                    RenderTableCell {TD} at (197,50) size 542x50 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
                      RenderBlock (anonymous) at (2,2) size 536x18
                        RenderText {#text} at (0,0) size 54x18
                          text run at (0,0) width 54: "Cell two"
                      RenderTable {TABLE} at (2,20) size 162x28 [border: (1px outset #808080)]
                        RenderTableSection {TBODY} at (1,1) size 160x26
                          RenderTableRow {TR} at (0,2) size 160x22
                            RenderTableCell {TD} at (2,2) size 156x22 [border: (1px inset #808080) (2px solid #008000) (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                              RenderText {#text} at (2,2) size 151x18
                                text run at (2,2) width 151: "Nested single-cell table!"
              RenderBlock {UL} at (4,247) size 745x180
                RenderListItem {LI} at (40,0) size 705x72 [border: none (3px solid #000000) none]
                  RenderBlock (anonymous) at (0,0) size 702x18
                    RenderListMarker at (-17,0) size 7x18: bullet
                    RenderText {#text} at (0,0) size 118x18
                      text run at (0,0) width 118: "This is a list item..."
                  RenderBlock {UL} at (0,18) size 702x54
                    RenderListItem {LI} at (40,0) size 662x18
                      RenderListMarker at (-17,0) size 7x18: white bullet
                      RenderText {#text} at (0,0) size 73x18
                        text run at (0,0) width 73: "...and this..."
                    RenderListItem {LI} at (40,18) size 662x18
                      RenderListMarker at (-17,0) size 7x18: white bullet
                      RenderText {#text} at (0,0) size 115x18
                        text run at (0,0) width 115: "...is a second list..."
                    RenderListItem {LI} at (40,36) size 662x18
                      RenderListMarker at (-17,0) size 7x18: white bullet
                      RenderText {#text} at (0,0) size 176x18
                        text run at (0,0) width 176: "...nested within the list item."
                RenderListItem {LI} at (40,72) size 705x18 [border: none (3px solid #800080) none]
                  RenderListMarker at (-17,0) size 7x18: bullet
                  RenderText {#text} at (0,0) size 158x18
                    text run at (0,0) width 158: "This is a second list item."
                RenderListItem {LI} at (40,90) size 705x90 [border: none (3px solid #0000FF) none]
                  RenderListMarker at (-17,0) size 7x18: bullet
                  RenderText {#text} at (0,0) size 700x90
                    text run at (0,0) width 700: "Each list item in this 'parent' list should have a medium-width border along its right side, in each of three colors."
                    text run at (0,18) width 641: "The first item's border should travel the entire height the nested list (to end near the baseline of the line"
                    text run at (0,36) width 601: "\"...nested within the list item.\"), even though the nested list does not have any border styles set. "
                    text run at (601,36) width 76: "The borders"
                    text run at (0,54) width 669: "should line up together at the right edge of the document's body, as each list element has a default width of"
                    text run at (0,72) width 41: "100%."
