layer at (0,0) size 785x1391
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1391
  RenderBlock {HTML} at (0,0) size 785x1391
    RenderBody {BODY} at (8,8) size 769x1375 [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 769x48
        RenderText {#text} at (0,0) size 152x48
          text run at (0,0) width 152: ".one {width: 50px;}"
          text run at (152,0) width 0: " "
          text run at (0,16) width 144: ".two {width: 50%;}"
          text run at (144,16) width 0: " "
          text run at (0,32) width 152: "TABLE {width: 50%;}"
          text run at (152,32) width 0: " "
      RenderBlock {HR} at (0,97) size 769x2 [border: (1px inset #000000)]
      RenderBlock (anonymous) at (0,107) size 769x50
        RenderImage {IMG} at (0,0) size 50x50
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {P} at (0,173) size 769x20
        RenderText {#text} at (0,0) size 271x19
          text run at (0,0) width 271: "The square above should be fifty pixels wide."
      RenderBlock (anonymous) at (0,209) size 769x385
        RenderImage {IMG} at (0,0) size 385x385
        RenderText {#text} at (0,0) size 0x0
      RenderBlock {P} at (0,610) size 769x20
        RenderText {#text} at (0,0) size 641x19
          text run at (0,0) width 641: "The square above should be half as wide as the image's parent element (either the BODY or the table cell)."
      RenderBlock {P} at (0,646) size 385x100
        RenderText {#text} at (0,0) size 361x79
          text run at (0,0) width 361: "This paragraph should be half the width of its parent element"
          text run at (0,20) width 358: "(either the BODY or the table, which should itself be half as"
          text run at (0,40) width 179: "wide as the BODY element). "
          text run at (179,40) width 168: "This is extra text included to"
          text run at (0,60) width 233: "ensure that this will be a fair test of the "
        RenderInline {CODE} at (0,0) size 40x16
          RenderText {#text} at (233,63) size 40x16
            text run at (233,63) width 40: "width"
        RenderText {#text} at (273,60) size 377x39
          text run at (273,60) width 104: " property without"
          text run at (0,80) width 304: "the need for the user to resize the viewing window."
      RenderTable {TABLE} at (0,762) size 385x613 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 383x611
          RenderTableRow {TR} at (0,0) size 383x28
            RenderTableCell {TD} at (0,0) size 383x28 [bgcolor=#C0C0C0] [border: (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,28) size 383x583
            RenderTableCell {TD} at (0,305) size 12x29 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x20
                text run at (4,5) width 4: " "
            RenderTableCell {TD} at (12,28) size 371x583 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock (anonymous) at (4,4) size 363x50
                RenderImage {IMG} at (0,0) size 50x50
                RenderText {#text} at (0,0) size 0x0
              RenderBlock {P} at (4,70) size 363x20
                RenderText {#text} at (0,0) size 271x19
                  text run at (0,0) width 271: "The square above should be fifty pixels wide."
              RenderBlock (anonymous) at (4,106) size 363x181
                RenderImage {IMG} at (0,0) size 182x181
                RenderText {#text} at (0,0) size 0x0
              RenderBlock {P} at (4,303) size 363x40
                RenderText {#text} at (0,0) size 332x39
                  text run at (0,0) width 332: "The square above should be half as wide as the image's"
                  text run at (0,20) width 305: "parent element (either the BODY or the table cell)."
              RenderBlock {P} at (4,359) size 182x220
                RenderText {#text} at (0,0) size 180x159
                  text run at (0,0) width 177: "This paragraph should be half"
                  text run at (0,20) width 180: "the width of its parent element"
                  text run at (0,40) width 147: "(either the BODY or the"
                  text run at (0,60) width 165: "table, which should itself be"
                  text run at (0,80) width 158: "half as wide as the BODY"
                  text run at (0,100) width 59: "element). "
                  text run at (59,100) width 98: "This is extra text"
                  text run at (0,120) width 159: "included to ensure that this"
                  text run at (0,140) width 140: "will be a fair test of the "
                RenderInline {CODE} at (0,0) size 40x16
                  RenderText {#text} at (140,143) size 40x16
                    text run at (140,143) width 40: "width"
                RenderText {#text} at (0,160) size 176x59
                  text run at (0,160) width 176: "property without the need for"
                  text run at (0,180) width 172: "the user to resize the viewing"
                  text run at (0,200) width 52: "window."
