layer at (0,0) size 785x859
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x859
  RenderBlock {HTML} at (0,0) size 785x859
    RenderBody {BODY} at (8,8) size 769x843 [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 769x90
        RenderText {#text} at (0,0) size 445x90
          text run at (0,0) width 437: ".zero {background-color: silver; border-right-width: 0;}"
          text run at (0,15) width 414: ".one {border-right-width: 25px; border-style: solid;}"
          text run at (0,30) width 422: ".two {border-right-width: thick; border-style: solid;}"
          text run at (0,45) width 445: ".three {border-right-width: medium; border-style: solid;}"
          text run at (0,60) width 422: ".four {border-right-width: thin; border-style: solid;}"
          text run at (0,75) width 266: ".five {border-right-width: 100px;}"
      RenderBlock {HR} at (0,137) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,155) size 769x18
        RenderText {#text} at (0,0) size 160x18
          text run at (0,0) width 160: "(These will only work if "
        RenderInline {CODE} at (0,0) size 95x15
          RenderText {#text} at (159,2) size 95x15
            text run at (159,2) width 95: "border-style"
        RenderText {#text} at (253,0) size 92x18
          text run at (253,0) width 92: " is supported.)"
      RenderBlock {P} at (0,189) size 769x18 [bgcolor=#C0C0C0]
        RenderText {#text} at (0,0) size 208x18
          text run at (0,0) width 208: "This element has a class of zero."
      RenderBlock {P} at (0,223) size 769x42 [border: (3px solid #000000) (25px solid #000000) (3px solid #000000)]
        RenderText {#text} at (3,3) size 737x36
          text run at (3,3) width 737: "This element should have a right border width of 25 pixels, which will be more obvious if the element is more than"
          text run at (3,21) width 88: "one line long."
      RenderBlock {P} at (0,281) size 769x42 [border: (3px solid #000000) (5px solid #000000) (3px solid #000000)]
        RenderText {#text} at (3,3) size 749x36
          text run at (3,3) width 749: "This element should have a thick right border width, which will be more obvious if the element is more than one line"
          text run at (3,21) width 33: "long."
      RenderBlock {P} at (0,339) size 769x42 [border: (3px solid #000000)]
        RenderText {#text} at (3,3) size 741x36
          text run at (3,3) width 741: "This element should have a medium right border width, which will be more obvious if the element is more than one"
          text run at (3,21) width 61: "line long."
      RenderBlock {P} at (0,397) size 769x42 [border: (3px solid #000000) (1px solid #000000) (3px solid #000000)]
        RenderText {#text} at (3,3) size 742x36
          text run at (3,3) width 742: "This element should have a thin right border width, which will be more obvious if the element is more than one line"
          text run at (3,21) width 33: "long."
      RenderBlock {P} at (0,455) size 769x18
        RenderText {#text} at (0,0) size 530x18
          text run at (0,0) width 530: "This element should have no border and no extra \"padding\" on its right side, as no "
        RenderInline {CODE} at (0,0) size 95x15
          RenderText {#text} at (529,2) size 95x15
            text run at (529,2) width 95: "border-style"
        RenderText {#text} at (623,0) size 56x18
          text run at (623,0) width 56: " was set."
      RenderTable {TABLE} at (0,489) size 769x354 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x352
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 767x26 [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 767x326
            RenderTableCell {TD} at (0,176) size 12x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x18
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x326 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x18
                RenderText {#text} at (0,0) size 160x18
                  text run at (0,0) width 160: "(These will only work if "
                RenderInline {CODE} at (0,0) size 95x15
                  RenderText {#text} at (159,2) size 95x15
                    text run at (159,2) width 95: "border-style"
                RenderText {#text} at (253,0) size 92x18
                  text run at (253,0) width 92: " is supported.)"
              RenderBlock {P} at (4,38) size 747x18 [bgcolor=#C0C0C0]
                RenderText {#text} at (0,0) size 208x18
                  text run at (0,0) width 208: "This element has a class of zero."
              RenderBlock {P} at (4,72) size 747x42 [border: (3px solid #000000) (25px solid #000000) (3px solid #000000)]
                RenderText {#text} at (3,3) size 706x36
                  text run at (3,3) width 706: "This element should have a right border width of 25 pixels, which will be more obvious if the element is more"
                  text run at (3,21) width 120: "than one line long."
              RenderBlock {P} at (4,130) size 747x42 [border: (3px solid #000000) (5px solid #000000) (3px solid #000000)]
                RenderText {#text} at (3,3) size 721x36
                  text run at (3,3) width 721: "This element should have a thick right border width, which will be more obvious if the element is more than one"
                  text run at (3,21) width 61: "line long."
              RenderBlock {P} at (4,188) size 747x42 [border: (3px solid #000000)]
                RenderText {#text} at (3,3) size 741x36
                  text run at (3,3) width 741: "This element should have a medium right border width, which will be more obvious if the element is more than one"
                  text run at (3,21) width 61: "line long."
              RenderBlock {P} at (4,246) size 747x42 [border: (3px solid #000000) (1px solid #000000) (3px solid #000000)]
                RenderText {#text} at (3,3) size 742x36
                  text run at (3,3) width 742: "This element should have a thin right border width, which will be more obvious if the element is more than one line"
                  text run at (3,21) width 33: "long."
              RenderBlock {P} at (4,304) size 747x18
                RenderText {#text} at (0,0) size 530x18
                  text run at (0,0) width 530: "This element should have no border and no extra \"padding\" on its right side, as no "
                RenderInline {CODE} at (0,0) size 95x15
                  RenderText {#text} at (529,2) size 95x15
                    text run at (529,2) width 95: "border-style"
                RenderText {#text} at (623,0) size 56x18
                  text run at (623,0) width 56: " was set."
