layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
  RenderBlock {HTML} at (0,0) size 800x600
    RenderBody {BODY} at (8,8) size 784x584 [bgcolor=#FFFFFF]
      RenderBlock {H4} at (0,0) size 784x18
        RenderText {#text} at (0,0) size 156x18
          text run at (0,0) width 156: "Testcase distilled from "
        RenderInline {A} at (0,0) size 167x18 [color=#0000EE]
          RenderText {#text} at (156,0) size 167x18
            text run at (156,0) width 167: "http://www.weather.com"
      RenderTable {TABLE} at (0,39) size 450x197
        RenderTableSection {TBODY} at (0,0) size 450x196
          RenderTableRow {TR} at (0,0) size 450x17
            RenderTableCell {TD} at (0,0) size 325x17 [r=0 c=0 rs=1 cs=3]
              RenderImage {IMG} at (0,0) size 318x17
            RenderTableCell {TD} at (325,0) size 125x196 [r=0 c=3 rs=2 cs=1]
              RenderTable {TABLE} at (0,0) size 125x196 [bgcolor=#E0EBF5]
                RenderTableSection {TBODY} at (0,0) size 125x196
                  RenderTableRow {TR} at (0,0) size 125x196
                    RenderTableCell {TD} at (0,0) size 125x196 [r=0 c=0 rs=1 cs=1]
                      RenderImage {IMG} at (0,0) size 125x34
                      RenderBR {BR} at (125,34) size 0x0
                      RenderText {#text} at (0,34) size 122x36
                        text run at (0,34) width 122: "Jose moving out to"
                        text run at (0,52) width 21: "sea"
                      RenderBR {BR} at (20,66) size 1x0
                      RenderBR {BR} at (0,70) size 0x18
                      RenderBR {BR} at (0,88) size 0x18
                      RenderBR {BR} at (0,106) size 0x18
                      RenderBR {BR} at (0,124) size 0x18
                      RenderBR {BR} at (0,142) size 0x18
                      RenderBR {BR} at (0,160) size 0x18
                      RenderBR {BR} at (0,178) size 0x18
          RenderTableRow {TR} at (0,17) size 450x179
            RenderTableCell {TD} at (0,17) size 167x105 [r=1 c=0 rs=1 cs=1]
              RenderImage {IMG} at (0,0) size 167x105
              RenderText {#text} at (0,0) size 0x0
            RenderTableCell {TD} at (167,97) size 4x19 [r=1 c=1 rs=1 cs=1]
              RenderText {#text} at (0,0) size 4x19
                text run at (0,1) width 4: " "
            RenderTableCell {TD} at (171,17) size 154x75 [r=1 c=2 rs=1 cs=1]
              RenderInline {FONT} at (0,0) size 144x75
                RenderInline {B} at (0,0) size 66x15
                  RenderText {#text} at (0,0) size 66x15
                    text run at (0,0) width 66: "Chilly time"
                RenderBR {BR} at (65,12) size 1x0
                RenderText {#text} at (0,15) size 144x60
                  text run at (0,15) width 120: "Though the calendar"
                  text run at (0,30) width 121: "disagrees, the feel of"
                  text run at (0,45) width 144: "winter is in the air across"
                  text run at (0,60) width 102: "much of the East."
              RenderText {#text} at (0,0) size 0x0
