layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x356
  RenderBlock {HTML} at (0,0) size 800x356
    RenderBody {BODY} at (8,16) size 784x324
      RenderBlock {P} at (0,0) size 784x18
        RenderText {#text} at (0,0) size 504x17
          text run at (0,0) width 504: "The following two columns should be pixel perfect identical with no red visible."
      RenderTable {TABLE} at (0,34) size 106x256 [bgcolor=#FF0000] [border: (3px solid #000000)]
        RenderTableSection {TBODY} at (3,3) size 100x250
          RenderTableRow {TR} at (0,0) size 100x250
            RenderTableCell {TD} at (0,0) size 50x250 [r=0 c=0 rs=1 cs=1]
              RenderBlock {DIV} at (0,0) size 50x200 [bgcolor=#FFA500]
                RenderBlock (anonymous) at (0,0) size 50x0
                  RenderInline {SPAN} at (0,0) size 0x0
                RenderBlock (anonymous) at (0,0) size 50x50
                  RenderBlock {DIV} at (0,0) size 50x50 [bgcolor=#FFFF00]
                RenderBlock (anonymous) at (0,100) size 50x0
                  RenderInline {SPAN} at (0,0) size 0x0
                  RenderText {#text} at (0,0) size 0x0
                  RenderInline {SPAN} at (0,0) size 0x0
                RenderBlock (anonymous) at (0,100) size 50x0
                  RenderBlock {DIV} at (0,0) size 50x0 [bgcolor=#FF0000]
                    RenderInline {SPAN} at (0,0) size 0x0
                    RenderText {#text} at (0,0) size 0x0
                RenderBlock (anonymous) at (0,100) size 50x0
                  RenderInline {SPAN} at (0,0) size 0x0
                  RenderText {#text} at (0,0) size 0x0
                  RenderInline {SPAN} at (0,0) size 0x0
                RenderBlock (anonymous) at (0,150) size 50x50
                  RenderBlock {DIV} at (0,0) size 50x50 [bgcolor=#00FFFF]
                RenderBlock (anonymous) at (0,250) size 50x0
                  RenderInline {SPAN} at (0,0) size 0x0
                  RenderText {#text} at (0,0) size 0x0
            RenderTableCell {TD} at (50,0) size 50x250 [r=0 c=1 rs=1 cs=1]
              RenderBlock {DIV} at (0,0) size 50x50 [border: (50px solid #FFFF00) none]
              RenderBlock {DIV} at (0,50) size 50x100 [border: (100px solid #FFA500) none]
              RenderBlock {DIV} at (0,150) size 50x50 [border: (50px solid #00FFFF) none]
              RenderBlock {DIV} at (0,200) size 50x50 [border: (50px solid #00FF00) none]
      RenderBlock {P} at (0,306) size 784x18
        RenderText {#text} at (0,0) size 259x17
          text run at (0,0) width 259: "This test is meaningless if you don't pass "
        RenderInline {A} at (0,0) size 49x17 [color=#0000EE]
          RenderText {#text} at (259,0) size 49x17
            text run at (259,0) width 49: "test 006"
        RenderText {#text} at (308,0) size 4x17
          text run at (308,0) width 4: "."
layer at (11,253) size 50x50
  RenderBlock (positioned) {DIV} at (11,253) size 50x50 [bgcolor=#00FF00]
