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 (0,16) width 144: ".two {width: 50%;}"
          text run at (0,32) width 152: "TABLE {width: 50%;}"
      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."
