layer at (0,0) size 785x2495
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x2495
  RenderBlock {HTML} at (0,0) size 785x2495
    RenderBody {BODY} at (8,8) size 769x2479
      RenderBlock (anonymous) at (0,0) size 769x36
        RenderText {#text} at (0,0) size 764x35
          text run at (0,0) width 537: "Test of objects that avoid floats to see what they do with percentage and auto widths. "
          text run at (536,0) width 228: "This test is designed to illustrate that"
          text run at (0,18) width 447: "we have removed the WinIE quirk and are behaving more like Firefox."
      RenderBlock {HR} at (0,44) size 769x2 [border: (1px inset #000000)]
      RenderBlock (anonymous) at (0,54) size 769x18
        RenderText {#text} at (0,0) size 507x17
          text run at (0,0) width 507: "The inline-level button should be below the select and fill the width of the block."
      RenderBlock {P} at (0,88) size 220x103 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderButton {INPUT} at (10,64) size 200x27 [color=#000000CC] [bgcolor=#C0C0C0] [border: (2px outset #C0C0C0)]
          RenderBlock (anonymous) at (8,4) size 184x18
            RenderText at (84,0) size 16x17
              text run at (84,0) width 16: "Hi"
        RenderText {#text} at (0,0) size 0x0
      RenderBlock (anonymous) at (0,207) size 769x18
        RenderText {#text} at (0,0) size 473x17
          text run at (0,0) width 473: "The floating button with a percentage width should be even with the select."
      RenderBlock {P} at (0,241) size 220x72 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderButton {INPUT} at (110,30) size 100x27 [color=#000000CC] [bgcolor=#C0C0C0] [border: (2px outset #C0C0C0)]
          RenderBlock (anonymous) at (8,4) size 84x18
            RenderText at (34,0) size 16x17
              text run at (34,0) width 16: "Hi"
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (210,28) size 0x17
      RenderBlock (anonymous) at (0,329) size 769x18
        RenderText {#text} at (0,0) size 462x17
          text run at (0,0) width 462: "The block-level button with an auto width should be even with the select."
      RenderBlock {P} at (0,363) size 220x87 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderButton {INPUT} at (110,30) size 32x27 [color=#000000CC] [bgcolor=#C0C0C0] [border: (2px outset #C0C0C0)]
          RenderBlock (anonymous) at (8,4) size 16x18
            RenderText at (0,0) size 16x17
              text run at (0,0) width 16: "Hi"
        RenderBlock (anonymous) at (10,59) size 200x18
          RenderBR {BR} at (100,0) size 0x17
      RenderBlock (anonymous) at (0,466) size 769x18
        RenderText {#text} at (0,0) size 495x17
          text run at (0,0) width 495: "The block-level button with a percentage width should be even with the select."
      RenderBlock {P} at (0,500) size 220x87 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderButton {INPUT} at (110,30) size 100x27 [color=#000000CC] [bgcolor=#C0C0C0] [border: (2px outset #C0C0C0)]
          RenderBlock (anonymous) at (8,4) size 84x18
            RenderText at (34,0) size 16x17
              text run at (34,0) width 16: "Hi"
        RenderBlock (anonymous) at (10,59) size 200x18
          RenderBR {BR} at (100,0) size 0x17
      RenderBlock (anonymous) at (0,603) size 769x18
        RenderText {#text} at (0,0) size 463x17
          text run at (0,0) width 463: "The floating table with a percentage width should be even with the select."
      RenderBlock {P} at (0,637) size 220x72 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderTable {TABLE} at (110,28) size 100x30 [border: (2px outset #808080)]
          RenderTableSection {TBODY} at (2,2) size 96x26
            RenderTableRow {TR} at (0,2) size 96x22
              RenderTableCell {TD} at (2,2) size 92x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                RenderText {#text} at (2,2) size 35x17
                  text run at (2,2) width 35: "Table"
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (210,28) size 0x17
      RenderBlock (anonymous) at (0,725) size 769x36
        RenderText {#text} at (0,0) size 755x35
          text run at (0,0) width 755: "The floating table with an auto width should be even with the select and shrinks to use the available line width. THIS IS"
          text run at (0,18) width 162: "CURRENTLY BUGGY."
      RenderBlock {P} at (0,777) size 220x138 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderTable {TABLE} at (10,62) size 200x66 [border: (2px outset #808080)]
          RenderTableSection {TBODY} at (2,2) size 196x62
            RenderTableRow {TR} at (0,2) size 196x58
              RenderTableCell {TD} at (2,2) size 192x58 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                RenderText {#text} at (2,2) size 161x53
                  text run at (2,2) width 159: "Floating table that should"
                  text run at (2,20) width 161: "shrink so it can be next to"
                  text run at (2,38) width 90: "previous float."
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (110,28) size 0x17
      RenderBlock (anonymous) at (0,931) size 769x18
        RenderText {#text} at (0,0) size 730x17
          text run at (0,0) width 578: "The block-level table below has a percentage width and should still be even with the select. "
          text run at (578,0) width 152: "It spills out of the block."
      RenderBlock {P} at (0,965) size 220x156 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderTable {TABLE} at (10,62) size 200x66 [border: (2px outset #808080)]
          RenderTableSection {TBODY} at (2,2) size 196x62
            RenderTableRow {TR} at (0,2) size 196x58
              RenderTableCell {TD} at (2,2) size 192x58 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                RenderText {#text} at (2,2) size 161x53
                  text run at (2,2) width 159: "Floating table that should"
                  text run at (2,20) width 161: "shrink so it can be next to"
                  text run at (2,38) width 90: "previous float."
        RenderBlock (anonymous) at (10,128) size 200x18
          RenderBR {BR} at (0,0) size 0x17
      RenderBlock (anonymous) at (0,1137) size 769x18
        RenderText {#text} at (0,0) size 743x17
          text run at (0,0) width 545: "The block-level table below has an auto width and should still be even with the select. "
          text run at (545,0) width 198: "It shrinks to fit inside the block."
      RenderBlock {P} at (0,1171) size 220x176 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderTable {TABLE} at (110,28) size 100x120 [border: (2px outset #808080)]
          RenderTableSection {TBODY} at (2,2) size 96x116
            RenderTableRow {TR} at (0,2) size 96x112
              RenderTableCell {TD} at (2,2) size 92x112 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
                RenderText {#text} at (2,2) size 88x107
                  text run at (2,2) width 86: "Floating table"
                  text run at (2,20) width 69: "that should"
                  text run at (2,38) width 69: "shrink so it"
                  text run at (2,56) width 88: "can be next to"
                  text run at (2,74) width 54: "previous"
                  text run at (2,92) width 32: "float."
        RenderBlock (anonymous) at (10,148) size 200x18
          RenderBR {BR} at (0,0) size 0x17
      RenderBlock (anonymous) at (0,1363) size 769x18
        RenderText {#text} at (0,0) size 538x17
          text run at (0,0) width 538: "The floating overflow section with a percentage width should be even with the select."
      RenderBlock {DIV} at (0,1381) size 220x146 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (210,28) size 0x17
      RenderBlock (anonymous) at (0,1527) size 769x36
        RenderText {#text} at (0,0) size 728x35
          text run at (0,0) width 728: "The floating overflow section with an auto width should be even with the select and shrinks to use the available line"
          text run at (0,18) width 264: "width. THIS IS CURRENTLY BUGGY."
      RenderBlock {DIV} at (0,1563) size 220x126 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (110,28) size 0x17
      RenderBlock (anonymous) at (0,1689) size 769x18
        RenderText {#text} at (0,0) size 649x17
          text run at (0,0) width 649: "The block-level overflow section below has a percentage width and should still be even with the select."
      RenderBlock {DIV} at (0,1707) size 220x164 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock (anonymous) at (10,136) size 200x18
          RenderBR {BR} at (0,0) size 0x17
      RenderBlock (anonymous) at (0,1871) size 769x36
        RenderText {#text} at (0,0) size 752x35
          text run at (0,0) width 620: "The block-level overflow section below has an auto width and should still be even with the select. "
          text run at (620,0) width 132: "It shrinks to fit inside"
          text run at (0,18) width 62: "the block."
      RenderBlock {DIV} at (0,1907) size 220x164 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock (anonymous) at (10,136) size 200x18
          RenderBR {BR} at (0,0) size 0x17
      RenderBlock (anonymous) at (0,2071) size 769x18
        RenderText {#text} at (0,0) size 446x17
          text run at (0,0) width 446: "The floating hr with a percentage width should be even with the select."
      RenderBlock {DIV} at (0,2089) size 220x72 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderBlock (floating) {HR} at (112,30) size 82x2 [border: (1px inset #000000)]
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (196,28) size 0x17
      RenderBlock (anonymous) at (0,2161) size 769x36
        RenderText {#text} at (0,0) size 750x35
          text run at (0,0) width 750: "The floating hr below should still be even with the select and shrinks to use its intrinsic width (which is basically like 1-"
          text run at (0,18) width 33: "2px)."
      RenderBlock {DIV} at (0,2197) size 220x72 [border: (10px solid #FF0000)]
        RenderText {#text} at (10,10) size 60x17
          text run at (10,10) width 60: "Line One"
        RenderBR {BR} at (70,10) size 0x17
        RenderMenuList {SELECT} at (10,30) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
          RenderBlock (anonymous) at (1,1) size 98x28
            RenderText at (5,5) size 30x17
              text run at (5,5) width 30: "One"
        RenderText {#text} at (0,0) size 0x0
        RenderBlock (floating) {HR} at (112,30) size 2x2 [border: (1px inset #000000)]
        RenderText {#text} at (0,0) size 0x0
        RenderBR {BR} at (116,28) size 0x17
      RenderBlock (anonymous) at (0,2269) size 769x18
        RenderText {#text} at (0,0) size 557x17
          text run at (0,0) width 557: "The block-level hr below has a percentage width and should still be even with the select."
      RenderBlock {DIV} at (0,2287) size 220x100 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {HR} at (10,62) size 202x2 [border: (1px inset #000000)]
        RenderBlock (anonymous) at (10,72) size 200x18
          RenderBR {BR} at (0,0) size 0x17
      RenderBlock (anonymous) at (0,2387) size 769x18
        RenderText {#text} at (0,0) size 623x17
          text run at (0,0) width 528: "The block-level hr below has an auto width and should still be even with the select. "
          text run at (528,0) width 95: "It shrinks to fit."
      RenderBlock {DIV} at (0,2405) size 220x74 [border: (10px solid #FF0000)]
        RenderBlock (anonymous) at (10,10) size 200x18
          RenderText {#text} at (0,0) size 60x17
            text run at (0,0) width 60: "Line One"
          RenderBR {BR} at (60,0) size 0x17
          RenderMenuList {SELECT} at (0,20) size 100x30 [bgcolor=#FFFFFF] [border: (1px solid #000000)]
            RenderBlock (anonymous) at (1,1) size 98x28
              RenderText at (5,5) size 30x17
                text run at (5,5) width 30: "One"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock {HR} at (110,36) size 100x2 [border: (1px inset #000000)]
        RenderBlock (anonymous) at (10,46) size 200x18
          RenderBR {BR} at (100,0) size 0x17
layer at (118,1417) size 100x108
  RenderBlock (floating) {DIV} at (110,28) size 100x108
    RenderText {#text} at (0,0) size 98x107
      text run at (0,0) width 61: "This is an"
      text run at (0,18) width 57: "overflow"
      text run at (0,36) width 76: "section with"
      text run at (0,54) width 90: "enough text to"
      text run at (0,72) width 98: "have to wrap to"
      text run at (0,90) width 88: "multiple lines."
layer at (18,1633) size 200x54
  RenderBlock (floating) {DIV} at (10,62) size 200x54
    RenderText {#text} at (0,0) size 172x53
      text run at (0,0) width 170: "This is an overflow section"
      text run at (0,18) width 172: "with enough text to have to"
      text run at (0,36) width 140: "wrap to multiple lines."
layer at (118,1743) size 100x108
  RenderBlock {DIV} at (110,28) size 100x108
    RenderText {#text} at (0,0) size 98x107
      text run at (0,0) width 61: "This is an"
      text run at (0,18) width 57: "overflow"
      text run at (0,36) width 76: "section with"
      text run at (0,54) width 90: "enough text to"
      text run at (0,72) width 98: "have to wrap to"
      text run at (0,90) width 88: "multiple lines."
layer at (118,1943) size 100x108
  RenderBlock {DIV} at (110,28) size 100x108
    RenderText {#text} at (0,0) size 98x107
      text run at (0,0) width 61: "This is an"
      text run at (0,18) width 57: "overflow"
      text run at (0,36) width 76: "section with"
      text run at (0,54) width 90: "enough text to"
      text run at (0,72) width 98: "have to wrap to"
      text run at (0,90) width 88: "multiple lines."
