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
      RenderBlock {P} at (0,0) size 784x60
        RenderText {#text} at (0,0) size 758x59
          text run at (0,0) width 758: "Colgroups are used to identify column groups. The table below has two distinct column groups; 'Airport Location' and"
          text run at (0,20) width 741: "'Car Rental Information'. The first column group contains two columns and the second column group contains three"
          text run at (0,40) width 59: "columns."
      RenderBlock {P} at (0,76) size 784x20
        RenderText {#text} at (0,0) size 250x19
          text run at (0,0) width 250: "Text in the cells should be left-aligned."
      RenderTable {TABLE} at (0,112) size 739x186 [border: (1px outset #808080)]
        RenderTableCol {COLGROUP} at (0,0) size 0x0
        RenderTableCol {COLGROUP} at (0,0) size 0x0
        RenderTableSection {TBODY} at (1,1) size 737x184
          RenderTableRow {TR} at (0,2) size 737x24
            RenderTableCell {TH} at (2,2) size 402x24 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderText {#text} at (142,2) size 118x19
                text run at (142,2) width 118: "Airport Location"
            RenderTableCell {TH} at (406,2) size 329x24 [border: (1px inset #808080)] [r=0 c=2 rs=1 cs=3]
              RenderText {#text} at (83,2) size 162x19
                text run at (83,2) width 162: "Car Rental information"
          RenderTableRow {TR} at (0,28) size 737x24
            RenderTableCell {TH} at (2,28) size 100x24 [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (21,2) size 58x19
                text run at (21,2) width 58: "Country"
            RenderTableCell {TH} at (104,28) size 300x24 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderText {#text} at (135,2) size 30x19
                text run at (135,2) width 30: "City"
            RenderTableCell {TH} at (406,28) size 109x24 [border: (1px inset #808080)] [r=1 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 105x19
                text run at (2,2) width 105: "ABC Company"
            RenderTableCell {TH} at (516,28) size 109x24 [border: (1px inset #808080)] [r=1 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 104x19
                text run at (2,2) width 104: "EFG Company"
            RenderTableCell {TH} at (626,28) size 109x24 [border: (1px inset #808080)] [r=1 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 105x19
                text run at (2,2) width 105: "XYZ Company"
          RenderTableRow {TR} at (0,54) size 737x24
            RenderTableCell {TD} at (2,54) size 100x24 [border: (1px inset #808080)] [r=2 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 44x19
                text run at (2,2) width 44: "France"
            RenderTableCell {TD} at (104,54) size 300x24 [border: (1px inset #808080)] [r=2 c=1 rs=1 cs=1]
              RenderText {#text} at (2,2) size 32x19
                text run at (2,2) width 32: "Paris"
            RenderTableCell {TD} at (406,54) size 109x24 [border: (1px inset #808080)] [r=2 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (516,54) size 109x24 [border: (1px inset #808080)] [r=2 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (626,54) size 109x24 [border: (1px inset #808080)] [r=2 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
          RenderTableRow {TR} at (0,80) size 737x24
            RenderTableCell {TD} at (2,80) size 100x24 [border: (1px inset #808080)] [r=3 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 60x19
                text run at (2,2) width 60: "Germany"
            RenderTableCell {TD} at (104,80) size 300x24 [border: (1px inset #808080)] [r=3 c=1 rs=1 cs=1]
              RenderText {#text} at (2,2) size 61x19
                text run at (2,2) width 61: "Frankfurt"
            RenderTableCell {TD} at (406,80) size 109x24 [border: (1px inset #808080)] [r=3 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (516,80) size 109x24 [border: (1px inset #808080)] [r=3 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (626,80) size 109x24 [border: (1px inset #808080)] [r=3 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
          RenderTableRow {TR} at (0,106) size 737x24
            RenderTableCell {TD} at (2,106) size 100x24 [border: (1px inset #808080)] [r=4 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 54x19
                text run at (2,2) width 54: "England"
            RenderTableCell {TD} at (104,106) size 300x24 [border: (1px inset #808080)] [r=4 c=1 rs=1 cs=1]
              RenderText {#text} at (2,2) size 50x19
                text run at (2,2) width 50: "London"
            RenderTableCell {TD} at (406,106) size 109x24 [border: (1px inset #808080)] [r=4 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (516,106) size 109x24 [border: (1px inset #808080)] [r=4 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (626,106) size 109x24 [border: (1px inset #808080)] [r=4 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
          RenderTableRow {TR} at (0,132) size 737x24
            RenderTableCell {TD} at (2,132) size 100x24 [border: (1px inset #808080)] [r=5 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 78x19
                text run at (2,2) width 78: "Netherlands"
            RenderTableCell {TD} at (104,132) size 300x24 [border: (1px inset #808080)] [r=5 c=1 rs=1 cs=1]
              RenderText {#text} at (2,2) size 75x19
                text run at (2,2) width 75: "Amsterdam"
            RenderTableCell {TD} at (406,132) size 109x24 [border: (1px inset #808080)] [r=5 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (516,132) size 109x24 [border: (1px inset #808080)] [r=5 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (626,132) size 109x24 [border: (1px inset #808080)] [r=5 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
          RenderTableRow {TR} at (0,158) size 737x24
            RenderTableCell {TD} at (2,158) size 100x24 [border: (1px inset #808080)] [r=6 c=0 rs=1 cs=1]
              RenderText {#text} at (2,2) size 33x19
                text run at (2,2) width 33: "USA"
            RenderTableCell {TD} at (104,158) size 300x24 [border: (1px inset #808080)] [r=6 c=1 rs=1 cs=1]
              RenderText {#text} at (2,2) size 66x19
                text run at (2,2) width 66: "New York"
            RenderTableCell {TD} at (406,158) size 109x24 [border: (1px inset #808080)] [r=6 c=2 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (516,158) size 109x24 [border: (1px inset #808080)] [r=6 c=3 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
            RenderTableCell {TD} at (626,158) size 109x24 [border: (1px inset #808080)] [r=6 c=4 rs=1 cs=1]
              RenderText {#text} at (2,2) size 22x19
                text run at (2,2) width 22: "yes"
