layer at (0,0) size 785x1005
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1005
  RenderBlock {HTML} at (0,0) size 785x1005
    RenderBody {BODY} at (8,8) size 769x989 [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 769x64
        RenderText {#text} at (0,0) size 168x64
          text run at (0,0) width 152: ".one {clear: left;}"
          text run at (0,16) width 160: ".two {clear: right;}"
          text run at (0,32) width 168: ".three {clear: both;}"
          text run at (0,48) width 160: ".four {clear: none;}"
      RenderBlock {HR} at (0,113) size 769x2 [border: (1px inset #000000)]
      RenderImage {IMG} at (0,123) size 15x50
      RenderBlock {P} at (0,131) size 769x20
        RenderText {#text} at (18,0) size 563x19
          text run at (18,0) width 563: "This text should be flowing past a tall orange rectangle on the left side of the browser window."
      RenderBlock (anonymous) at (0,167) size 769x20
        RenderBR {BR} at (18,0) size 0x19
        RenderImage {IMG} at (0,20) size 15x50
      RenderBlock {P} at (0,237) size 769x20
        RenderText {#text} at (0,0) size 620x19
          text run at (0,0) width 620: "This paragraph should appear below the tall orange rectangle above and to the left, and not flow past it."
      RenderBlock (anonymous) at (0,273) size 769x20
        RenderBR {BR} at (0,0) size 0x19
        RenderImage {IMG} at (754,20) size 15x50
      RenderBlock {P} at (0,343) size 769x20
        RenderText {#text} at (0,0) size 628x19
          text run at (0,0) width 628: "This paragraph should appear below the tall orange rectangle above and to the right, and not flow past it."
      RenderBlock (anonymous) at (0,379) size 769x20
        RenderBR {BR} at (0,0) size 0x19
        RenderImage {IMG} at (0,20) size 15x50
        RenderImage {IMG} at (754,20) size 15x50
      RenderBlock {P} at (0,449) size 769x20
        RenderText {#text} at (0,0) size 574x19
          text run at (0,0) width 574: "This paragraph should appear below the two tall orange rectangles, and not flow between them."
      RenderImage {IMG} at (0,485) size 15x50
      RenderImage {IMG} at (754,485) size 15x50
      RenderBlock {P} at (0,485) size 769x20
        RenderText {#text} at (18,0) size 372x19
          text run at (18,0) width 372: "This paragraph should be between both tall orange rectangles."
      RenderBlock (anonymous) at (0,521) size 769x20
        RenderBR {BR} at (18,0) size 0x19
      RenderTable {TABLE} at (0,541) size 650x448 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 648x446
          RenderTableRow {TR} at (0,0) size 648x28
            RenderTableCell {TD} at (0,0) size 648x28 [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 648x418
            RenderTableCell {TD} at (0,223) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x19
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,28) size 636x418 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderImage {IMG} at (4,4) size 15x50
              RenderBlock {P} at (4,4) size 628x20
                RenderText {#text} at (18,0) size 563x19
                  text run at (18,0) width 563: "This text should be flowing past a tall orange rectangle on the left side of the browser window."
              RenderBlock (anonymous) at (4,40) size 628x20
                RenderBR {BR} at (18,0) size 0x19
                RenderImage {IMG} at (0,20) size 15x50
              RenderBlock {P} at (4,110) size 628x20
                RenderText {#text} at (0,0) size 620x19
                  text run at (0,0) width 620: "This paragraph should appear below the tall orange rectangle above and to the left, and not flow past it."
              RenderBlock (anonymous) at (4,146) size 628x20
                RenderBR {BR} at (0,0) size 0x19
                RenderImage {IMG} at (613,20) size 15x50
              RenderBlock {P} at (4,216) size 628x20
                RenderText {#text} at (0,0) size 628x19
                  text run at (0,0) width 628: "This paragraph should appear below the tall orange rectangle above and to the right, and not flow past it."
              RenderBlock (anonymous) at (4,252) size 628x20
                RenderBR {BR} at (0,0) size 0x19
                RenderImage {IMG} at (0,20) size 15x50
                RenderImage {IMG} at (613,20) size 15x50
              RenderBlock {P} at (4,322) size 628x20
                RenderText {#text} at (0,0) size 574x19
                  text run at (0,0) width 574: "This paragraph should appear below the two tall orange rectangles, and not flow between them."
              RenderImage {IMG} at (4,358) size 15x50
              RenderImage {IMG} at (617,358) size 15x50
              RenderBlock {P} at (4,358) size 628x20
                RenderText {#text} at (18,0) size 372x19
                  text run at (18,0) width 372: "This paragraph should be between both tall orange rectangles."
              RenderBlock (anonymous) at (4,394) size 628x20
                RenderBR {BR} at (18,0) size 0x19
