layer at (0,0) size 785x1432
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1432
  RenderBlock {HTML} at (0,0) size 785x1432
    RenderBody {BODY} at (8,8) size 769x1416 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x18
        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 769x135
        RenderText {#text} at (0,0) size 266x135
          text run at (0,0) width 266: ".one {border: medium black solid;}"
          text run at (0,15) width 258: ".two {border: thin maroon ridge;}"
          text run at (0,30) width 266: ".three {border: 10px teal outset;}"
          text run at (0,45) width 258: ".four {border: 10px olive inset;}"
          text run at (0,60) width 219: ".five {border: 10px maroon;}"
          text run at (0,75) width 227: ".six {border: maroon double;}"
          text run at (0,90) width 250: ".seven {border: left red solid;}"
          text run at (0,105) width 164: ".eight {border: 0px;}"
          text run at (0,120) width 227: "TD {border: 2px solid green;}"
      RenderBlock {HR} at (0,182) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,200) size 769x36
        RenderText {#text} at (0,0) size 765x36
          text run at (0,0) width 641: "Note that all table cells on this page should have a two-pixel solid green border along all four sides. "
          text run at (640,0) width 125: "This border applies"
          text run at (0,18) width 324: "only to the cells, not the rows which contain them."
      RenderBlock {P} at (0,252) size 769x24 [border: (3px solid #000000)]
        RenderText {#text} at (3,3) size 491x18
          text run at (3,3) width 491: "This paragraph should have a medium black solid border all the way around."
      RenderBlock {P} at (0,292) size 769x20 [border: (1px ridge #800000)]
        RenderText {#text} at (1,1) size 488x18
          text run at (1,1) width 488: "This paragraph should have a thin maroon ridged border all the way around."
      RenderBlock {P} at (0,328) size 769x38 [border: (10px outset #008080)]
        RenderText {#text} at (10,10) size 528x18
          text run at (10,10) width 528: "This paragraph should have a ten-pixel-wide teal outset border all the way around."
      RenderBlock {P} at (0,382) size 769x38 [border: (10px inset #808000)]
        RenderText {#text} at (10,10) size 529x18
          text run at (10,10) width 529: "This paragraph should have a ten-pixel-wide olive inset border all the way around."
      RenderBlock {P} at (0,436) size 769x36
        RenderText {#text} at (0,0) size 354x18
          text run at (0,0) width 354: "This paragraph should have no border around it, as the "
        RenderInline {TT} at (0,0) size 94x15
          RenderText {#text} at (353,2) size 94x15
            text run at (353,2) width 94: "border-style"
        RenderText {#text} at (446,0) size 740x36
          text run at (446,0) width 294: " was not set, and it should not be offset in any"
          text run at (0,18) width 30: "way."
      RenderBlock {P} at (0,488) size 769x42 [border: (3px double #800000)]
        RenderText {#text} at (3,3) size 543x18
          text run at (3,3) width 543: "This paragraph should have a medium maroon double border around it, even though "
        RenderInline {CODE} at (0,0) size 95x15
          RenderText {#text} at (545,5) size 95x15
            text run at (545,5) width 95: "border-width"
        RenderText {#text} at (639,3) size 755x36
          text run at (639,3) width 119: " was not explicitly"
          text run at (3,21) width 22: "set."
      RenderBlock {P} at (0,546) size 769x18
        RenderText {#text} at (0,0) size 633x18
          text run at (0,0) width 633: "This paragraph should have no border around it, as its declaration is invalid and should be ignored."
      RenderBlock {P} at (0,580) size 769x37
        RenderInline {A} at (0,0) size 25x18
          RenderText {#text} at (0,1) size 25x18
            text run at (0,1) width 25: "The"
        RenderText {#text} at (24,1) size 730x18
          text run at (24,1) width 730: " following image is also an anchor which points to a target on this page, but it should not have a border around it: "
        RenderInline {A} at (0,0) size 16x18 [color=#0000FF]
          RenderImage {IMG} at (753,0) size 16x15
        RenderText {#text} at (0,19) size 4x18
          text run at (0,19) width 4: "."
      RenderTable {TABLE} at (0,633) size 769x113 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x111
          RenderTableRow {TR} at (0,5) size 767x42
            RenderTableCell {TD} at (5,5) size 758x42 [border: (2px solid #008000)] [r=0 c=0 rs=1 cs=2]
              RenderText {#text} at (3,3) size 728x36
                text run at (3,3) width 413: "Every cell in this table should have a 2-pixel solid green border. "
                text run at (415,3) width 316: "This is also true of the table-testing section in the"
                text run at (3,21) width 179: "second half of the test page."
          RenderTableRow {TR} at (0,52) size 767x54
            RenderTableCell {TD} at (5,67) size 193x24 [border: (2px solid #008000)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (3,3) size 54x18
                text run at (3,3) width 54: "Cell one"
            RenderTableCell {TD} at (202,52) size 561x54 [border: (2px solid #008000)] [r=1 c=1 rs=1 cs=1]
              RenderBlock (anonymous) at (3,3) size 554x18
                RenderText {#text} at (0,0) size 55x18
                  text run at (0,0) width 55: "Cell two"
              RenderTable {TABLE} at (3,21) size 168x30 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 166x28
                  RenderTableRow {TR} at (0,2) size 166x24
                    RenderTableCell {TD} at (2,2) size 162x24 [border: (2px solid #008000)] [r=0 c=0 rs=1 cs=1]
                      RenderText {#text} at (3,3) size 156x18
                        text run at (3,3) width 156: "Nested single-cell table!"
      RenderBlock {P} at (0,762) size 769x18
        RenderText {#text} at (0,0) size 180x18
          text run at (0,0) width 180: "This is an unstyled element."
      RenderTable {TABLE} at (0,796) size 769x620 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x618
          RenderTableRow {TR} at (0,0) size 767x28
            RenderTableCell {TD} at (0,0) size 767x28 [bgcolor=#C0C0C0] [border: (2px solid #008000)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x18
                RenderText {#text} at (5,5) size 161x18
                  text run at (5,5) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,28) size 767x590
            RenderTableCell {TD} at (0,309) size 14x28 [bgcolor=#C0C0C0] [border: (2px solid #008000)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (5,5) size 4x18
                text run at (5,5) width 4: " "
            RenderTableCell {TD} at (14,28) size 753x590 [border: (2px solid #008000)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (5,5) size 743x36
                RenderText {#text} at (0,0) size 715x36
                  text run at (0,0) width 641: "Note that all table cells on this page should have a two-pixel solid green border along all four sides. "
                  text run at (640,0) width 75: "This border"
                  text run at (0,18) width 373: "applies only to the cells, not the rows which contain them."
              RenderBlock {P} at (5,57) size 743x24 [border: (3px solid #000000)]
                RenderText {#text} at (3,3) size 491x18
                  text run at (3,3) width 491: "This paragraph should have a medium black solid border all the way around."
              RenderBlock {P} at (5,97) size 743x20 [border: (1px ridge #800000)]
                RenderText {#text} at (1,1) size 488x18
                  text run at (1,1) width 488: "This paragraph should have a thin maroon ridged border all the way around."
              RenderBlock {P} at (5,133) size 743x38 [border: (10px outset #008080)]
                RenderText {#text} at (10,10) size 528x18
                  text run at (10,10) width 528: "This paragraph should have a ten-pixel-wide teal outset border all the way around."
              RenderBlock {P} at (5,187) size 743x38 [border: (10px inset #808000)]
                RenderText {#text} at (10,10) size 529x18
                  text run at (10,10) width 529: "This paragraph should have a ten-pixel-wide olive inset border all the way around."
              RenderBlock {P} at (5,241) size 743x36
                RenderText {#text} at (0,0) size 354x18
                  text run at (0,0) width 354: "This paragraph should have no border around it, as the "
                RenderInline {TT} at (0,0) size 94x15
                  RenderText {#text} at (353,2) size 94x15
                    text run at (353,2) width 94: "border-style"
                RenderText {#text} at (446,0) size 740x36
                  text run at (446,0) width 294: " was not set, and it should not be offset in any"
                  text run at (0,18) width 30: "way."
              RenderBlock {P} at (5,293) size 743x42 [border: (3px double #800000)]
                RenderText {#text} at (3,3) size 543x18
                  text run at (3,3) width 543: "This paragraph should have a medium maroon double border around it, even though "
                RenderInline {CODE} at (0,0) size 95x15
                  RenderText {#text} at (545,5) size 95x15
                    text run at (545,5) width 95: "border-width"
                RenderText {#text} at (639,3) size 690x36
                  text run at (639,3) width 54: " was not"
                  text run at (3,21) width 87: "explicitly set."
              RenderBlock {P} at (5,351) size 743x18
                RenderText {#text} at (0,0) size 633x18
                  text run at (0,0) width 633: "This paragraph should have no border around it, as its declaration is invalid and should be ignored."
              RenderBlock {P} at (5,385) size 743x37
                RenderInline {A} at (0,0) size 25x18
                  RenderText {#text} at (0,0) size 25x18
                    text run at (0,0) width 25: "The"
                RenderText {#text} at (24,0) size 733x37
                  text run at (24,0) width 709: " following image is also an anchor which points to a target on this page, but it should not have a border around"
                  text run at (0,19) width 18: "it: "
                RenderInline {A} at (0,0) size 16x18 [color=#0000FF]
                  RenderImage {IMG} at (17,18) size 16x15
                RenderText {#text} at (32,19) size 5x18
                  text run at (32,19) width 5: "."
              RenderTable {TABLE} at (5,438) size 743x113 [border: (1px outset #808080)]
                RenderTableSection {TBODY} at (1,1) size 741x111
                  RenderTableRow {TR} at (0,5) size 741x42
                    RenderTableCell {TD} at (5,5) size 732x42 [border: (2px solid #008000)] [r=0 c=0 rs=1 cs=2]
                      RenderText {#text} at (3,3) size 705x36
                        text run at (3,3) width 413: "Every cell in this table should have a 2-pixel solid green border. "
                        text run at (415,3) width 293: "This is also true of the table-testing section in"
                        text run at (3,21) width 203: "the second half of the test page."
                  RenderTableRow {TR} at (0,52) size 741x54
                    RenderTableCell {TD} at (5,67) size 187x24 [border: (2px solid #008000)] [r=1 c=0 rs=1 cs=1]
                      RenderText {#text} at (3,3) size 54x18
                        text run at (3,3) width 54: "Cell one"
                    RenderTableCell {TD} at (196,52) size 541x54 [border: (2px solid #008000)] [r=1 c=1 rs=1 cs=1]
                      RenderBlock (anonymous) at (3,3) size 534x18
                        RenderText {#text} at (0,0) size 55x18
                          text run at (0,0) width 55: "Cell two"
                      RenderTable {TABLE} at (3,21) size 168x30 [border: (1px outset #808080)]
                        RenderTableSection {TBODY} at (1,1) size 166x28
                          RenderTableRow {TR} at (0,2) size 166x24
                            RenderTableCell {TD} at (2,2) size 162x24 [border: (2px solid #008000)] [r=0 c=0 rs=1 cs=1]
                              RenderText {#text} at (3,3) size 156x18
                                text run at (3,3) width 156: "Nested single-cell table!"
              RenderBlock {P} at (5,567) size 743x18
                RenderText {#text} at (0,0) size 180x18
                  text run at (0,0) width 180: "This is an unstyled element."
