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 (0,0) size 800x584
      RenderBlock {P} at (0,0) size 800x54
        RenderText {#text} at (20,0) size 630x17
          text run at (20,0) width 429: "Here's the structure of the problem table (which usually begins with "
          text run at (449,0) width 65: "'N E W S "
          text run at (514,0) width 136: "H E A D L I N E S')."
        RenderBR {BR} at (650,0) size 0x17
        RenderText {#text} at (20,18) size 324x17
          text run at (20,18) width 324: "This table is width 100%; two rows; three columns;"
        RenderBR {BR} at (344,18) size 0x17
        RenderText {#text} at (20,36) size 469x17
          text run at (20,36) width 469: "The first row: widths 15, 125, 15 ... The second row: widths 15, 100%, 15"
      RenderTable {TABLE} at (0,70) size 800x39 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 798x37
          RenderTableRow {TR} at (0,0) size 798x17
            RenderTableCell {TD} at (0,7) size 17x3 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
            RenderTableCell {TD} at (17,0) size 764x17 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 110x15
            RenderTableCell {TD} at (781,7) size 17x3 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
          RenderTableRow {TR} at (0,17) size 798x20
            RenderTableCell {TD} at (0,25) size 17x4 [bgcolor=#666666] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
            RenderTableCell {TD} at (17,17) size 764x20 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderText {#text} at (1,1) size 23x17
                text run at (1,1) width 23: "that"
            RenderTableCell {TD} at (781,25) size 17x4 [bgcolor=#666666] [border: (1px inset #808080)] [r=1 c=2 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
      RenderBlock {P} at (0,125) size 800x36
        RenderText {#text} at (20,0) size 749x35
          text run at (20,0) width 259: "Here's the first row in a table on its own. "
          text run at (279,0) width 490: "This table is width 100%; one rows; three columns; This row: widths 15, 125,"
          text run at (20,18) width 16: "15"
      RenderTable {TABLE} at (0,177) size 800x19 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 798x17
          RenderTableRow {TR} at (0,0) size 798x17
            RenderTableCell {TD} at (0,7) size 85x3 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
            RenderTableCell {TD} at (84,0) size 630x17 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 110x15
            RenderTableCell {TD} at (713,7) size 86x3 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
      RenderBlock {P} at (0,212) size 800x36
        RenderText {#text} at (20,0) size 737x35
          text run at (20,0) width 279: "Here's the second row in a table on its own. "
          text run at (299,0) width 458: "This table is width 100%; one rows; three columns; This row: widths 15,"
          text run at (20,18) width 61: "100%, 15"
      RenderTable {TABLE} at (0,264) size 800x22 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 798x20
          RenderTableRow {TR} at (0,0) size 798x20
            RenderTableCell {TD} at (0,8) size 17x4 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
            RenderTableCell {TD} at (17,0) size 764x20 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
              RenderText {#text} at (1,1) size 23x17
                text run at (1,1) width 23: "that"
            RenderTableCell {TD} at (781,8) size 17x4 [bgcolor=#666666] [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=1]
              RenderImage {IMG} at (1,1) size 15x1
      RenderBlock {P} at (0,302) size 800x36
        RenderText {#text} at (20,0) size 727x35
          text run at (20,0) width 613: "Note that in Nav4.x, the middle column gets the width of the maximum width cell in the column; "
          text run at (633,0) width 114: "on 5.0, the middle"
          text run at (20,18) width 222: "column gets the opposite treatment."
