layer at (0,0) size 785x718
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x718
  RenderBlock {HTML} at (0,0) size 785x718
    RenderBody {BODY} at (8,21) size 769x681
      RenderBlock {H1} at (0,0) size 769x37
        RenderText {#text} at (0,0) size 314x36
          text run at (0,0) width 314: "Generic Table Tests - 1"
      RenderBlock {P} at (0,58) size 769x21
        RenderText {#text} at (0,0) size 368x19
          text run at (0,0) width 368: "If you have any comments to make regarding this test, e-mail "
        RenderInline {A} at (0,0) size 174x19 [color=#0000EE]
          RenderText {#text} at (368,0) size 174x19
            text run at (368,0) width 174: "py8ieh=eviltests@bath.ac.uk"
        RenderText {#text} at (542,0) size 4x19
          text run at (542,0) width 4: "."
      RenderBlock {DL} at (0,94) size 769x41
        RenderBlock {DT} at (0,0) size 769x20
          RenderText {#text} at (0,0) size 77x19
            text run at (0,0) width 77: "Prerequisites"
        RenderBlock {DD} at (40,20) size 729x20
          RenderText {#text} at (0,0) size 661x19
            text run at (0,0) width 661: "Browsers that are subjected to this test should support CSS1 and the CSS2 table model, and multiple classes."
      RenderBlock {P} at (0,150) size 769x107 [border: (5px double #FF0000)]
        RenderBlock (anonymous) at (13,13) size 743x20
          RenderText {#text} at (0,0) size 222x19
            text run at (0,0) width 222: "If this paragraph breaks the line here:"
        RenderTable {SPAN} at (13,33) size 55x20
          RenderTableSection (anonymous) at (0,0) size 55x20
            RenderTableRow (anonymous) at (0,0) size 55x20
              RenderTableCell (anonymous) at (0,0) size 55x20 [r=0 c=0 rs=1 cs=1]
                RenderText {#text} at (0,0) size 55x19
                  text run at (0,0) width 55: "and here:"
        RenderBlock (anonymous) at (13,53) size 743x40
          RenderText {#text} at (0,0) size 114x19
            text run at (0,0) width 114: "then your browser "
          RenderInline {EM} at (0,0) size 82x19
            RenderText {#text} at (114,0) size 82x19
              text run at (114,0) width 82: "does support"
          RenderText {#text} at (196,0) size 153x19
            text run at (196,0) width 153: " table values on 'display'. "
          RenderInline {STRONG} at (0,0) size 716x39
            RenderText {#text} at (349,0) size 716x39
              text run at (349,0) width 367: "If this paragraphs flows without any undue breaks, then"
              text run at (0,20) width 408: "you should mark your browser as not supporting table values!"
      RenderBlock {H2} at (0,276) size 769x28
        RenderText {#text} at (0,0) size 222x26
          text run at (0,0) width 222: "1. Table -> Table Cell"
      RenderBlock {P} at (0,323) size 769x41
        RenderText {#text} at (0,0) size 748x39
          text run at (0,0) width 748: "Below there should be a gray bar, spanning the width of the BODY, with the text \"Left\" to the left and the text \"Right\", on the"
          text run at (0,20) width 162: "same line, flush to the right."
      RenderTable {DIV} at (0,379) size 769x21 [bgcolor=#C0C0C0]
        RenderTableSection (anonymous) at (0,0) size 769x20
          RenderTableRow (anonymous) at (0,0) size 769x20
            RenderTableCell {DIV} at (0,0) size 336x20 [r=0 c=0 rs=1 cs=1]
              RenderText {#text} at (0,0) size 24x19
                text run at (0,0) width 24: "Left"
            RenderTableCell {DIV} at (335,0) size 435x20 [r=0 c=1 rs=1 cs=1]
              RenderText {#text} at (402,0) size 32x19
                text run at (402,0) width 32: "Right"
      RenderBlock {H2} at (0,419) size 769x28
        RenderText {#text} at (0,0) size 153x26
          text run at (0,0) width 153: "Submit Results"
      RenderBlock {FORM} at (0,466) size 769x53
        RenderBlock {P} at (0,0) size 769x52
          RenderText {#text} at (0,3) size 254x19
            text run at (0,3) width 254: "How does your browser fare on this test? "
          RenderMenuList {SELECT} at (256,3) size 263x20 [bgcolor=#FFFFFF]
            RenderBlock (anonymous) at (4,2) size 238x16
              RenderText at (0,0) size 154x16
                text run at (0,0) width 154: "The test renders correctly."
          RenderText {#text} at (521,3) size 4x19
            text run at (521,3) width 4: " "
          RenderInline {LABEL} at (0,0) size 220x19
            RenderText {#text} at (525,3) size 66x19
              text run at (525,3) width 66: "Comment: "
            RenderTextControl {INPUT} at (593,2) size 150x22 [bgcolor=#FFFFFF] [border: (2px inset #000000)]
          RenderText {#text} at (0,0) size 0x0
          RenderButton {INPUT} at (2,28) size 57x22 [bgcolor=#F0F0F0] [border: (2px outset #F0F0F0)]
            RenderBlock (anonymous) at (8,3) size 41x16
              RenderText at (0,0) size 41x16
                text run at (0,0) width 41: "Submit"
          RenderText {#text} at (0,0) size 0x0
      RenderBlock {HR} at (0,534) size 769x3 [border: (1px inset #000000)]
      RenderBlock {P} at (0,552) size 769x21
        RenderText {#text} at (0,0) size 61x19
          text run at (0,0) width 61: "Up to the "
        RenderInline {A} at (0,0) size 70x19 [color=#0000EE]
          RenderText {#text} at (61,0) size 70x19
            text run at (61,0) width 70: "Table Tests"
        RenderText {#text} at (131,0) size 4x19
          text run at (131,0) width 4: "."
      RenderBlock {P} at (0,588) size 769x21
        RenderText {#text} at (0,0) size 61x19
          text run at (0,0) width 61: "Up to the "
        RenderInline {A} at (0,0) size 92x19 [color=#0000EE]
          RenderText {#text} at (61,0) size 92x19
            text run at (61,0) width 92: "Evil Tests Page"
        RenderText {#text} at (153,0) size 4x19
          text run at (153,0) width 4: "."
      RenderBlock {P} at (0,624) size 769x21
        RenderText {#text} at (0,0) size 162x19
          text run at (0,0) width 162: "This page is maintained by "
        RenderInline {A} at (0,0) size 73x19 [color=#0000EE]
          RenderText {#text} at (162,0) size 73x19
            text run at (162,0) width 73: "Ian Hickson"
        RenderText {#text} at (235,0) size 9x19
          text run at (235,0) width 9: " ("
        RenderInline {A} at (0,0) size 118x19 [color=#0000EE]
          RenderText {#text} at (244,0) size 118x19
            text run at (244,0) width 118: "py8ieh@bath.ac.uk"
        RenderText {#text} at (362,0) size 9x19
          text run at (362,0) width 9: ")."
      RenderBlock {P} at (0,660) size 769x21
        RenderText {#text} at (0,0) size 177x19
          text run at (0,0) width 177: "Last updated in March 1999."
layer at (603,493) size 146x16
  RenderBlock {DIV} at (2,3) size 146x16
