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 {P} at (0,0) size 784x54
        RenderText {#text} at (0,0) size 149x18
          text run at (0,0) width 149: "Testcase distilled from "
        RenderInline {A} at (0,0) size 170x18 [color=#0000EE]
          RenderText {#text} at (148,0) size 170x18
            text run at (148,0) width 170: "http://www.microsoft.com"
        RenderBR {BR} at (317,14) size 1x0
        RenderText {#text} at (0,18) size 595x18
          text run at (0,18) width 595: "The problem seems to be that the last cell in each row have an \"excessive\" COLSPAN value."
        RenderBR {BR} at (594,32) size 1x0
        RenderText {#text} at (0,36) size 399x18
          text run at (0,36) width 399: "I have added BORDER=1 to make the cell boundaries visible."
      RenderTable {TABLE} at (0,70) size 784x86 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x84
          RenderTableRow {TR} at (0,0) size 782x22
            RenderTableCell {TD} at (0,0) size 299x62 [border: (1px inset #808080)] [r=0 c=0 rs=2 cs=1]
              RenderImage {IMG} at (1,1) size 250x60
            RenderTableCell {TD} at (298,0) size 22x22 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
              RenderImage {IMG} at (2,1) size 18x20
            RenderTableCell {TD} at (319,1) size 464x20 [bgcolor=#000000] [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=2]
              RenderText {#text} at (73,1) size 389x18
                text run at (73,1) width 174: "  All Products  |  Support  | "
                text run at (246,1) width 216: "  Search  |  microsoft.com Home  "
          RenderTableRow {TR} at (0,22) size 782x42
            RenderTableCell {TD} at (298,22) size 22x42 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 19x40
            RenderTableCell {TD} at (319,22) size 464x42 [border: (1px inset #808080)] [r=1 c=2 rs=1 cs=2]
              RenderImage {IMG} at (149,1) size 201x40
              RenderImage {IMG} at (349,1) size 113x40
              RenderText {#text} at (0,0) size 0x0
          RenderTableRow {TR} at (0,64) size 782x20
            RenderTableCell {TD} at (0,64) size 783x20 [bgcolor=#6699CC] [border: (1px inset #808080)] [r=2 c=0 rs=1 cs=4]
              RenderText {#text} at (1,1) size 705x18
                text run at (1,1) width 63: "  Home  | "
                text run at (63,1) width 127: "  Events/Training  | "
                text run at (189,1) width 87: "  Subscribe  | "
                text run at (275,1) width 131: "  About Microsoft  | "
                text run at (405,1) width 120: "  US/Worldwide  | "
                text run at (524,1) width 97: "  Downloads  | "
                text run at (620,1) width 86: "  MSN.com  |"
      RenderBlock {P} at (0,172) size 784x36
        RenderText {#text} at (0,0) size 658x18
          text run at (0,0) width 658: "The following table is exactly as above, but I have removed COLSPAN for the last cell in row 1 and 2,"
        RenderBR {BR} at (657,14) size 1x0
        RenderText {#text} at (0,18) size 380x18
          text run at (0,18) width 380: "and changed COLSPAN=4 to COLSPAN=3 in the last row."
      RenderTable {TABLE} at (0,224) size 784x86 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x84
          RenderTableRow {TR} at (0,0) size 782x22
            RenderTableCell {TD} at (0,0) size 299x62 [border: (1px inset #808080)] [r=0 c=0 rs=2 cs=1]
              RenderImage {IMG} at (1,1) size 250x60
            RenderTableCell {TD} at (298,0) size 22x22 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
              RenderImage {IMG} at (2,1) size 18x20
            RenderTableCell {TD} at (319,1) size 464x20 [bgcolor=#000000] [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=1]
              RenderText {#text} at (73,1) size 389x18
                text run at (73,1) width 174: "  All Products  |  Support  | "
                text run at (246,1) width 216: "  Search  |  microsoft.com Home  "
          RenderTableRow {TR} at (0,22) size 782x42
            RenderTableCell {TD} at (298,22) size 22x42 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 19x40
            RenderTableCell {TD} at (319,22) size 464x42 [border: (1px inset #808080)] [r=1 c=2 rs=1 cs=1]
              RenderImage {IMG} at (149,1) size 201x40
              RenderImage {IMG} at (349,1) size 113x40
              RenderText {#text} at (0,0) size 0x0
          RenderTableRow {TR} at (0,64) size 782x20
            RenderTableCell {TD} at (0,64) size 783x20 [bgcolor=#6699CC] [border: (1px inset #808080)] [r=2 c=0 rs=1 cs=3]
              RenderText {#text} at (1,1) size 705x18
                text run at (1,1) width 63: "  Home  | "
                text run at (63,1) width 127: "  Events/Training  | "
                text run at (189,1) width 87: "  Subscribe  | "
                text run at (275,1) width 131: "  About Microsoft  | "
                text run at (405,1) width 120: "  US/Worldwide  | "
                text run at (524,1) width 97: "  Downloads  | "
                text run at (620,1) width 86: "  MSN.com  |"
