layer at (0,0) size 785x6353
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x6353
  RenderBlock {HTML} at (0,0) size 785x6353
    RenderBody {BODY} at (8,8) size 769x6337 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x18
        RenderText {#text} at (0,0) size 363x18
          text run at (0,0) width 363: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,34) size 769x135
        RenderText {#text} at (0,0) size 469x135
          text run at (0,0) width 266: "HR.minor {clear: both; width: 5%;}"
          text run at (265,0) width 1: " "
          text run at (0,15) width 391: "HR.major {clear: both; width: 75%; margin: 1.5em;}"
          text run at (390,15) width 1: " "
          text run at (0,30) width 469: "DIV {border: 5px solid purple; padding: 0; margin: 0.125em;}"
          text run at (468,30) width 1: " "
          text run at (0,45) width 422: "P.left, P.right {width: 10em; padding: 1em; margin: 0;"
          text run at (421,45) width 1: " "
          text run at (0,60) width 414: "   border: 1px solid lime; background-color: silver;}"
          text run at (413,60) width 1: " "
          text run at (0,75) width 445: "IMG.left, IMG.right {margin: 0; border: 3px solid black;}"
          text run at (444,75) width 1: " "
          text run at (0,90) width 157: ".left {float: left;}"
          text run at (156,90) width 1: " "
          text run at (0,105) width 172: ".right {float: right;}"
          text run at (171,105) width 1: " "
          text run at (0,120) width 0: " "
      RenderBlock {HR} at (0,182) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,200) size 769x54
        RenderText {#text} at (0,0) size 762x54
          text run at (0,0) width 694: "On this test page, each test is performed once with floating paragraphs, and then again with floating images. "
          text run at (693,0) width 69: "Other than"
          text run at (0,18) width 728: "the substitution of images for pargraphs, the structure of the test is exactly the same, including the direction of the"
          text run at (0,36) width 39: "floats."
      RenderBlock {HR} at (24,278) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,304) size 765x100 [border: (5px solid #800080)]
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderBlock (floating) {P} at (566,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (199,5) size 362x90
          text run at (199,5) width 178: "This is text within the DIV. "
          text run at (376,5) width 185: "The floating elements within"
          text run at (199,23) width 336: "this DIV should not go beyond the left or right inner"
          text run at (199,41) width 342: "edge of this DIV, which means that the borders of the"
          text run at (199,59) width 328: "floating elements should not overlap the top or side"
          text run at (199,77) width 124: "borders of the DIV."
      RenderBlock {HR} at (364,412) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,422) size 765x64 [border: (5px solid #800080)]
        RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
        RenderImage {IMG} at (745,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (20,5) size 738x54
          text run at (20,5) width 178: "This is text within the DIV. "
          text run at (197,5) width 546: "The floating images within this DIV should not go beyond the left or right inner edge"
          text run at (20,23) width 721: "of this DIV, which means that the borders of the floating images should not overlap the top or side borders of the"
          text run at (5,41) width 31: "DIV."
      RenderBlock {HR} at (24,510) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,536) size 442x226 [border: (5px solid #800080)]
        RenderBlock (floating) {P} at (5,5) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 127x36
            text run at (17,17) width 127: "This is the first left-"
            text run at (17,35) width 121: "floating paragraph."
        RenderBlock (floating) {P} at (199,5) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 146x36
            text run at (17,17) width 146: "This is the second left-"
            text run at (17,35) width 121: "floating paragraph."
        RenderBlock (floating) {P} at (5,75) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 132x36
            text run at (17,17) width 132: "This is the third left-"
            text run at (17,35) width 121: "floating paragraph."
        RenderText {#text} at (393,5) size 432x216
          text run at (393,5) width 44: "This is"
          text run at (393,23) width 24: "text"
          text run at (393,41) width 41: "within"
          text run at (393,59) width 20: "the"
          text run at (199,77) width 35: "DIV. "
          text run at (233,77) width 184: "The floating elements within"
          text run at (199,95) width 222: "this DIV should not go beyond the"
          text run at (199,113) width 223: "left or right inner edge of this DIV,"
          text run at (199,131) width 229: "which means that the borders of the"
          text run at (5,149) width 421: "floating elements should not overlap the top or side borders of the"
          text run at (5,167) width 110: "DIV in any way. "
          text run at (114,167) width 303: "In addition, they should not overlap each other."
          text run at (5,185) width 432: "The first two should be side by side, whereas the third should be on"
          text run at (5,203) width 97: "the next \"line.\""
      RenderBlock {HR} at (364,770) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,780) size 360x208 [border: (5px solid #800080)]
        RenderImage {IMG} at (5,5) size 156x36 [border: (3px solid #000000)]
        RenderImage {IMG} at (161,5) size 156x36 [border: (3px solid #000000)]
        RenderImage {IMG} at (5,41) size 156x36 [border: (3px solid #000000)]
        RenderText {#text} at (317,5) size 344x198
          text run at (317,5) width 29: "This"
          text run at (317,23) width 11: "is"
          text run at (161,41) width 131: "text within the DIV. "
          text run at (291,41) width 26: "The"
          text run at (161,59) width 171: "floating images within this"
          text run at (5,77) width 342: "DIV should not go beyond the left or right inner edge"
          text run at (5,95) width 308: "of this DIV, which means that the borders of the"
          text run at (5,113) width 317: "floating images should not overlap the top or side"
          text run at (5,131) width 203: "borders of the DIV in any way. "
          text run at (207,131) width 106: "In addition, they"
          text run at (5,149) width 197: "should not overlap each other. "
          text run at (201,149) width 148: "The first two should be"
          text run at (5,167) width 335: "side by side, whereas the third should be on the next"
          text run at (5,185) width 42: "\"line.\""
      RenderBlock {HR} at (24,1012) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,1038) size 314x350 [border: (5px solid #800080)]
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderBlock (floating) {P} at (115,93) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (199,5) size 301x340
          text run at (199,5) width 72: "This is text"
          text run at (199,23) width 99: "within the DIV."
          text run at (199,41) width 78: "The floating"
          text run at (199,59) width 102: "elements within"
          text run at (5,93) width 103: "this DIV should"
          text run at (5,111) width 92: "not go beyond"
          text run at (5,129) width 97: "the left or right"
          text run at (5,147) width 85: "inner edge of"
          text run at (5,165) width 101: "this DIV, which"
          text run at (5,183) width 300: "means that the borders of the floating elements"
          text run at (5,201) width 284: "should not overlap the top or side borders of"
          text run at (5,219) width 133: "the DIV in any way. "
          text run at (137,219) width 153: "In addition, they should"
          text run at (5,237) width 292: "not overlap each other in any way, nor should"
          text run at (5,255) width 301: "the floated elements be overwritten by the DIV"
          text run at (5,273) width 32: "text. "
          text run at (36,273) width 254: "In addition, the floated elements should"
          text run at (5,291) width 299: "not be side-by-side, but instead the first should"
          text run at (5,309) width 279: "be floated left, and the second floated to the"
          text run at (5,327) width 130: "right below the first."
      RenderBlock {HR} at (364,1396) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,1406) size 410x226 [border: (5px solid #800080)]
        RenderImage {IMG} at (5,5) size 256x36 [border: (3px solid #000000)]
        RenderImage {IMG} at (149,41) size 256x36 [border: (3px solid #000000)]
        RenderText {#text} at (261,5) size 396x216
          text run at (261,5) width 140: "This is text within the"
          text run at (261,23) width 35: "DIV. "
          text run at (295,23) width 79: "The floating"
          text run at (5,41) width 118: "images within this"
          text run at (5,59) width 120: "DIV should not go"
          text run at (5,77) width 386: "beyond the left or right inner edge of this DIV, which means"
          text run at (5,95) width 390: "that the borders of the floating images should not overlap the"
          text run at (5,113) width 274: "top or side borders of the DIV in any way. "
          text run at (278,113) width 107: "In addition, they"
          text run at (5,131) width 362: "should not overlap each other in any way, nor should the"
          text run at (5,149) width 313: "floated elements be overwritten by the DIV text. "
          text run at (317,149) width 75: "In addition,"
          text run at (5,167) width 391: "the floated images should not be side-by-side, but instead the"
          text run at (5,185) width 389: "first should be floated left, and the second floated to the right"
          text run at (5,203) width 96: "below the first."
      RenderBlock {HR} at (24,1656) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,1682) size 765x118 [border: (5px solid #800080)]
        RenderBlock (floating) {P} at (566,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 135x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (199,5) size 556x108
          text run at (199,5) width 178: "This is text within the DIV. "
          text run at (376,5) width 185: "The floating elements within"
          text run at (199,23) width 355: "this DIV should not go beyond the top side of this DIV,"
          text run at (199,41) width 343: "which means that the borders of the floating elements"
          text run at (199,59) width 356: "should not overlap the top or side borders of the DIV in"
          text run at (199,77) width 61: "any way. "
          text run at (259,77) width 271: "In addition, the top of the left-floating box"
          text run at (5,95) width 372: "should not be higher than the top of the right-floating box."
      RenderBlock {HR} at (364,1808) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,1818) size 765x64 [border: (5px solid #800080)]
        RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
        RenderImage {IMG} at (745,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (20,5) size 733x54
          text run at (20,5) width 178: "This is text within the DIV. "
          text run at (197,5) width 531: "The floating images within this DIV should not go beyond the top side of this DIV,"
          text run at (20,23) width 718: "which means that the borders of the floating images should not overlap the top or side borders of the DIV in any"
          text run at (5,41) width 34: "way. "
          text run at (38,41) width 677: "In addition, the top of the left-floating image should not be higher than the top of the right-floating image."
      RenderBlock {HR} at (24,1906) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,1932) size 765x136 [border: (5px solid #800080)]
        RenderText {#text} at (199,5) size 186x18
          text run at (199,5) width 178: "This is text within the DIV. "
          text run at (376,5) width 9: "*"
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (384,5) size 551x36
          text run at (384,5) width 366: " The floating elements within this DIV should not go any"
          text run at (199,23) width 487: "higher than the line-box containing the inline content which precedes them. "
          text run at (685,23) width 13: "* "
        RenderBlock (floating) {P} at (566,41) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (697,23) size 722x108
          text run at (697,23) width 30: "This"
          text run at (199,41) width 352: "means that the top side of each float can be, at most, as"
          text run at (199,59) width 360: "high as the top edge of the inline element containing the"
          text run at (199,77) width 336: "content just before the floating elements occur in the"
          text run at (5,95) width 50: "source. "
          text run at (54,95) width 494: "In order to mark these points clearly, an asterisk has been inserted just before"
          text run at (5,113) width 136: "each floated element."
      RenderBlock {HR} at (364,2076) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,2086) size 765x82 [border: (5px solid #800080)]
        RenderText {#text} at (20,5) size 186x18
          text run at (20,5) width 178: "This is text within the DIV. "
          text run at (197,5) width 9: "*"
        RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (205,5) size 697x36
          text run at (205,5) width 512: " The floating images within this DIV should not go any higher than the line-box"
          text run at (20,23) width 330: "containing the inline content which precedes them. "
          text run at (349,23) width 13: "* "
        RenderImage {IMG} at (745,23) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (361,23) size 723x54
          text run at (361,23) width 367: "This means that the top side of each float can be, at most,"
          text run at (5,41) width 705: "as high as the top edge of the inline element containing the content just before the floating images occur in the"
          text run at (5,59) width 50: "source. "
          text run at (54,59) width 622: "In order to mark these points clearly, an asterisk has been inserted just before each floated image."
      RenderBlock {HR} at (24,2192) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,2218) size 765x262 [border: (5px solid #800080)]
        RenderText {#text} at (199,5) size 186x18
          text run at (199,5) width 178: "This is text within the DIV. "
          text run at (376,5) width 9: "*"
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (384,5) size 551x36
          text run at (384,5) width 366: " The floating elements within this DIV should not go any"
          text run at (199,23) width 487: "higher than the line-box containing the inline content which precedes them. "
          text run at (685,23) width 13: "* "
        RenderBlock (floating) {P} at (566,41) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (697,23) size 528x36
          text run at (697,23) width 30: "This"
          text run at (199,41) width 288: "means that the top side of each float can be,*"
        RenderBlock (floating) {P} at (199,59) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 120: "paragraph (third in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (486,41) size 276x108
          text run at (486,41) width 73: " at most, as"
          text run at (393,59) width 169: "high as the top edge of the"
          text run at (393,77) width 163: "inline element containing"
          text run at (393,95) width 167: "the content just before the"
          text run at (393,113) width 166: "floating elements occur in"
          text run at (587,131) width 74: "the source. "
          text run at (660,131) width 9: "*"
        RenderBlock (floating) {P} at (393,131) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 129: "paragraph (fourth in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (668,131) size 746x126
          text run at (668,131) width 72: " In order to"
          text run at (587,149) width 164: "mark these points clearly,"
          text run at (587,167) width 128: "an asterisk has been"
          text run at (587,185) width 156: "inserted just before each"
          text run at (587,203) width 107: "floated element. "
          text run at (693,203) width 50: "If a line"
          text run at (5,221) width 739: "has room for a floated element, then the element should float so that its top is aligned with the top of the line-box in"
          text run at (5,239) width 177: "which the asterisk appears. "
          text run at (181,239) width 411: "Otherwise, its top should align with the top of the next line-box."
      RenderBlock {HR} at (364,2488) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,2498) size 765x118 [border: (5px solid #800080)]
        RenderText {#text} at (20,5) size 186x18
          text run at (20,5) width 178: "This is text within the DIV. "
          text run at (197,5) width 9: "*"
        RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (205,5) size 682x36
          text run at (205,5) width 512: " The floating images within this DIV should not go any higher than the line-box"
          text run at (35,23) width 330: "containing the inline content which precedes them. "
          text run at (364,23) width 13: "* "
        RenderImage {IMG} at (745,23) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (376,23) size 325x18
          text run at (376,23) width 317: "This means that the top side of each float can be, "
          text run at (692,23) width 9: "*"
        RenderImage {IMG} at (20,23) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (700,23) size 719x54
          text run at (700,23) width 16: " at"
          text run at (35,41) width 704: "most, as high as the top edge of the inline element containing the content just before the floating images occur"
          text run at (20,59) width 90: "in the source. "
          text run at (109,59) width 9: "*"
        RenderImage {IMG} at (5,59) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (117,59) size 754x54
          text run at (117,59) width 630: " In order to mark these points clearly, an asterisk has been inserted just before each floated image. "
          text run at (746,59) width 12: "If"
          text run at (20,77) width 739: "a line has room for a floated image, then the image should float so that its top is aligned with the top of the line-box"
          text run at (5,95) width 193: "in which the asterisk appears. "
          text run at (197,95) width 411: "Otherwise, its top should align with the top of the next line-box."
      RenderBlock {HR} at (24,2640) size 579x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,2666) size 490x298 [border: (5px solid #800080)]
        RenderText {#text} at (199,5) size 56x18
          text run at (199,5) width 56: "This is *"
        RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 134x54
            text run at (17,17) width 134: "This is a left-floating"
            text run at (17,35) width 115: "paragraph (first in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (254,5) size 13x18
          text run at (254,5) width 13: " *"
        RenderBlock (floating) {P} at (291,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
          RenderText {#text} at (17,17) size 143x54
            text run at (17,17) width 143: "This is a right-floating"
            text run at (17,35) width 135: "paragraph (second in"
            text run at (17,53) width 52: "source)."
        RenderText {#text} at (199,23) size 479x270
          text run at (199,23) width 69: "text within"
          text run at (199,41) width 54: "the DIV."
          text run at (199,59) width 85: "Under CSS1,"
          text run at (199,77) width 45: "the left"
          text run at (5,95) width 469: "floating element should be placed in the upper left corner of the DIV, and"
          text run at (5,113) width 465: "the purple border of the DIV should abut the green border of the floating"
          text run at (5,131) width 59: "element. "
          text run at (63,131) width 421: "Similarly, the right floating element should be placed in the upper"
          text run at (5,149) width 467: "right corner of the DIV, and the purple border of the DIV should abut the"
          text run at (5,167) width 465: "green border of the floating element. The text of the DIV element should"
          text run at (5,185) width 433: "flow between and under the two floating elements. The two asterisk"
          text run at (5,203) width 477: "characters mark the insertion points of the floating elements. It is expected"
          text run at (5,221) width 477: "that, under future specifications, it may be acceptable for the top of floated"
          text run at (5,239) width 475: "elements to align with the top of the line-box following the insertion point"
          text run at (5,257) width 449: "of the floated element to avoid floating elements appearing before text"
          text run at (5,275) width 269: "which precedes it in the source document."
      RenderBlock {HR} at (364,2972) size 41x2 [border: (1px inset #000000)]
      RenderBlock {DIV} at (2,2982) size 490x226 [border: (5px solid #800080)]
        RenderText {#text} at (20,5) size 56x18
          text run at (20,5) width 56: "This is *"
        RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (75,5) size 13x18
          text run at (75,5) width 13: " *"
        RenderImage {IMG} at (470,5) size 15x36 [border: (3px solid #000000)]
        RenderText {#text} at (87,5) size 472x216
          text run at (87,5) width 135: " text within the DIV. "
          text run at (221,5) width 231: "Under CSS1, the left floating image"
          text run at (20,23) width 429: "should be placed in the upper left corner of the DIV, and the purple"
          text run at (5,41) width 443: "border of the DIV should abut the green border of the floating image."
          text run at (5,59) width 443: "Similarly, the right floating image should be placed in the upper right"
          text run at (5,77) width 472: "corner of the DIV, and the purple border of the DIV should abut the green"
          text run at (5,95) width 447: "border of the floating image. The text of the DIV element should flow"
          text run at (5,113) width 451: "between and under the two floating image. The two asterisk characters"
          text run at (5,131) width 305: "mark the insertion points of the floating image. "
          text run at (309,131) width 159: "It is expected that, under"
          text run at (5,149) width 465: "future specifications, it may be acceptable for the top of floated elements"
          text run at (5,167) width 455: "to align with the top of the line-box following the insertion point of the"
          text run at (5,185) width 451: "floated element to avoid floating elements appearing before text which"
          text run at (5,203) width 226: "precedes it in the source document."
      RenderBlock {HR} at (24,3232) size 579x2 [border: (1px inset #000000)]
      RenderTable {TABLE} at (0,3258) size 769x3079 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x3077
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 767x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x18
                RenderText {#text} at (4,4) size 161x18
                  text run at (4,4) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 767x3051
            RenderTableCell {TD} at (0,1538) size 12x27 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,3) size 4x20
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x3051 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x54
                RenderText {#text} at (0,0) size 736x54
                  text run at (0,0) width 694: "On this test page, each test is performed once with floating paragraphs, and then again with floating images. "
                  text run at (693,0) width 38: "Other"
                  text run at (0,18) width 736: "than the substitution of images for pargraphs, the structure of the test is exactly the same, including the direction of"
                  text run at (0,36) width 63: "the floats."
              RenderBlock {HR} at (28,82) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,108) size 743x100 [border: (5px solid #800080)]
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderBlock (floating) {P} at (544,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,5) size 344x90
                  text run at (199,5) width 178: "This is text within the DIV. "
                  text run at (376,5) width 140: "The floating elements"
                  text run at (199,23) width 344: "within this DIV should not go beyond the left or right"
                  text run at (199,41) width 338: "inner edge of this DIV, which means that the borders"
                  text run at (199,59) width 340: "of the floating elements should not overlap the top or"
                  text run at (199,77) width 154: "side borders of the DIV."
              RenderBlock {HR} at (357,216) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,226) size 743x64 [border: (5px solid #800080)]
                RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
                RenderImage {IMG} at (723,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (20,5) size 704x54
                  text run at (20,5) width 178: "This is text within the DIV. "
                  text run at (197,5) width 512: "The floating images within this DIV should not go beyond the left or right inner"
                  text run at (20,23) width 662: "edge of this DIV, which means that the borders of the floating images should not overlap the top or side"
                  text run at (5,41) width 124: "borders of the DIV."
              RenderBlock {HR} at (28,314) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,340) size 442x226 [border: (5px solid #800080)]
                RenderBlock (floating) {P} at (5,5) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 127x36
                    text run at (17,17) width 127: "This is the first left-"
                    text run at (17,35) width 121: "floating paragraph."
                RenderBlock (floating) {P} at (199,5) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 146x36
                    text run at (17,17) width 146: "This is the second left-"
                    text run at (17,35) width 121: "floating paragraph."
                RenderBlock (floating) {P} at (5,75) size 194x70 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 132x36
                    text run at (17,17) width 132: "This is the third left-"
                    text run at (17,35) width 121: "floating paragraph."
                RenderText {#text} at (393,5) size 432x216
                  text run at (393,5) width 44: "This is"
                  text run at (393,23) width 24: "text"
                  text run at (393,41) width 41: "within"
                  text run at (393,59) width 20: "the"
                  text run at (199,77) width 35: "DIV. "
                  text run at (233,77) width 184: "The floating elements within"
                  text run at (199,95) width 222: "this DIV should not go beyond the"
                  text run at (199,113) width 223: "left or right inner edge of this DIV,"
                  text run at (199,131) width 229: "which means that the borders of the"
                  text run at (5,149) width 421: "floating elements should not overlap the top or side borders of the"
                  text run at (5,167) width 110: "DIV in any way. "
                  text run at (114,167) width 303: "In addition, they should not overlap each other."
                  text run at (5,185) width 432: "The first two should be side by side, whereas the third should be on"
                  text run at (5,203) width 97: "the next \"line.\""
              RenderBlock {HR} at (357,574) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,584) size 360x208 [border: (5px solid #800080)]
                RenderImage {IMG} at (5,5) size 156x36 [border: (3px solid #000000)]
                RenderImage {IMG} at (161,5) size 156x36 [border: (3px solid #000000)]
                RenderImage {IMG} at (5,41) size 156x36 [border: (3px solid #000000)]
                RenderText {#text} at (317,5) size 344x198
                  text run at (317,5) width 29: "This"
                  text run at (317,23) width 11: "is"
                  text run at (161,41) width 131: "text within the DIV. "
                  text run at (291,41) width 26: "The"
                  text run at (161,59) width 171: "floating images within this"
                  text run at (5,77) width 342: "DIV should not go beyond the left or right inner edge"
                  text run at (5,95) width 308: "of this DIV, which means that the borders of the"
                  text run at (5,113) width 317: "floating images should not overlap the top or side"
                  text run at (5,131) width 203: "borders of the DIV in any way. "
                  text run at (207,131) width 106: "In addition, they"
                  text run at (5,149) width 197: "should not overlap each other. "
                  text run at (201,149) width 148: "The first two should be"
                  text run at (5,167) width 335: "side by side, whereas the third should be on the next"
                  text run at (5,185) width 42: "\"line.\""
              RenderBlock {HR} at (28,816) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,842) size 314x350 [border: (5px solid #800080)]
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderBlock (floating) {P} at (115,93) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,5) size 301x340
                  text run at (199,5) width 72: "This is text"
                  text run at (199,23) width 99: "within the DIV."
                  text run at (199,41) width 78: "The floating"
                  text run at (199,59) width 102: "elements within"
                  text run at (5,93) width 103: "this DIV should"
                  text run at (5,111) width 92: "not go beyond"
                  text run at (5,129) width 97: "the left or right"
                  text run at (5,147) width 85: "inner edge of"
                  text run at (5,165) width 101: "this DIV, which"
                  text run at (5,183) width 300: "means that the borders of the floating elements"
                  text run at (5,201) width 284: "should not overlap the top or side borders of"
                  text run at (5,219) width 133: "the DIV in any way. "
                  text run at (137,219) width 153: "In addition, they should"
                  text run at (5,237) width 292: "not overlap each other in any way, nor should"
                  text run at (5,255) width 301: "the floated elements be overwritten by the DIV"
                  text run at (5,273) width 32: "text. "
                  text run at (36,273) width 254: "In addition, the floated elements should"
                  text run at (5,291) width 299: "not be side-by-side, but instead the first should"
                  text run at (5,309) width 279: "be floated left, and the second floated to the"
                  text run at (5,327) width 130: "right below the first."
              RenderBlock {HR} at (357,1200) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,1210) size 410x226 [border: (5px solid #800080)]
                RenderImage {IMG} at (5,5) size 256x36 [border: (3px solid #000000)]
                RenderImage {IMG} at (149,41) size 256x36 [border: (3px solid #000000)]
                RenderText {#text} at (261,5) size 396x216
                  text run at (261,5) width 140: "This is text within the"
                  text run at (261,23) width 35: "DIV. "
                  text run at (295,23) width 79: "The floating"
                  text run at (5,41) width 118: "images within this"
                  text run at (5,59) width 120: "DIV should not go"
                  text run at (5,77) width 386: "beyond the left or right inner edge of this DIV, which means"
                  text run at (5,95) width 390: "that the borders of the floating images should not overlap the"
                  text run at (5,113) width 274: "top or side borders of the DIV in any way. "
                  text run at (278,113) width 107: "In addition, they"
                  text run at (5,131) width 362: "should not overlap each other in any way, nor should the"
                  text run at (5,149) width 313: "floated elements be overwritten by the DIV text. "
                  text run at (317,149) width 75: "In addition,"
                  text run at (5,167) width 391: "the floated images should not be side-by-side, but instead the"
                  text run at (5,185) width 389: "first should be floated left, and the second floated to the right"
                  text run at (5,203) width 96: "below the first."
              RenderBlock {HR} at (28,1460) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,1486) size 743x118 [border: (5px solid #800080)]
                RenderBlock (floating) {P} at (544,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 135x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,5) size 539x108
                  text run at (199,5) width 178: "This is text within the DIV. "
                  text run at (376,5) width 140: "The floating elements"
                  text run at (199,23) width 338: "within this DIV should not go beyond the top side of"
                  text run at (199,41) width 343: "this DIV, which means that the borders of the floating"
                  text run at (199,59) width 345: "elements should not overlap the top or side borders of"
                  text run at (199,77) width 133: "the DIV in any way. "
                  text run at (331,77) width 195: "In addition, the top of the left-"
                  text run at (5,95) width 453: "floating box should not be higher than the top of the right-floating box."
              RenderBlock {HR} at (357,1612) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,1622) size 743x82 [border: (5px solid #800080)]
                RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
                RenderImage {IMG} at (723,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (20,5) size 692x72
                  text run at (20,5) width 178: "This is text within the DIV. "
                  text run at (197,5) width 497: "The floating images within this DIV should not go beyond the top side of this"
                  text run at (20,23) width 677: "DIV, which means that the borders of the floating images should not overlap the top or side borders of the"
                  text run at (5,41) width 110: "DIV in any way. "
                  text run at (114,41) width 581: "In addition, the top of the left-floating image should not be higher than the top of the right-"
                  text run at (5,59) width 96: "floating image."
              RenderBlock {HR} at (28,1728) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,1754) size 743x136 [border: (5px solid #800080)]
                RenderText {#text} at (199,5) size 186x18
                  text run at (199,5) width 178: "This is text within the DIV. "
                  text run at (376,5) width 9: "*"
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (384,5) size 524x36
                  text run at (384,5) width 339: " The floating elements within this DIV should not go"
                  text run at (199,23) width 515: "any higher than the line-box containing the inline content which precedes them. "
                  text run at (713,23) width 9: "*"
                RenderBlock (floating) {P} at (544,41) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,41) size 523x90
                  text run at (199,41) width 328: "This means that the top side of each float can be, at"
                  text run at (199,59) width 321: "most, as high as the top edge of the inline element"
                  text run at (199,77) width 291: "containing the content just before the floating"
                  text run at (5,95) width 191: "elements occur in the source. "
                  text run at (195,95) width 333: "In order to mark these points clearly, an asterisk has"
                  text run at (5,113) width 297: "been inserted just before each floated element."
              RenderBlock {HR} at (357,1898) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,1908) size 743x82 [border: (5px solid #800080)]
                RenderText {#text} at (20,5) size 186x18
                  text run at (20,5) width 178: "This is text within the DIV. "
                  text run at (197,5) width 9: "*"
                RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (205,5) size 697x36
                  text run at (205,5) width 512: " The floating images within this DIV should not go any higher than the line-box"
                  text run at (20,23) width 330: "containing the inline content which precedes them. "
                  text run at (349,23) width 13: "* "
                RenderImage {IMG} at (723,23) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (361,23) size 711x54
                  text run at (361,23) width 328: "This means that the top side of each float can be, at"
                  text run at (5,41) width 704: "most, as high as the top edge of the inline element containing the content just before the floating images occur"
                  text run at (5,59) width 90: "in the source. "
                  text run at (94,59) width 622: "In order to mark these points clearly, an asterisk has been inserted just before each floated image."
              RenderBlock {HR} at (28,2014) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,2040) size 743x226 [border: (5px solid #800080)]
                RenderText {#text} at (199,5) size 186x18
                  text run at (199,5) width 178: "This is text within the DIV. "
                  text run at (376,5) width 9: "*"
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (384,5) size 524x36
                  text run at (384,5) width 339: " The floating elements within this DIV should not go"
                  text run at (199,23) width 515: "any higher than the line-box containing the inline content which precedes them. "
                  text run at (713,23) width 9: "*"
                RenderBlock (floating) {P} at (544,41) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,41) size 320x18
                  text run at (199,41) width 320: "This means that the top side of each float can be,*"
                RenderBlock (floating) {P} at (199,59) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 120: "paragraph (third in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (518,41) size 252x108
                  text run at (518,41) width 17: " at"
                  text run at (393,59) width 151: "most, as high as the top"
                  text run at (393,77) width 112: "edge of the inline"
                  text run at (393,95) width 146: "element containing the"
                  text run at (393,113) width 143: "content just before the"
                  text run at (393,131) width 244: "floating elements occur in the source. "
                  text run at (636,131) width 9: "*"
                RenderBlock (floating) {P} at (5,149) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 129: "paragraph (fourth in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (644,131) size 519x90
                  text run at (644,131) width 72: " In order to"
                  text run at (199,149) width 503: "mark these points clearly, an asterisk has been inserted just before each floated"
                  text run at (199,167) width 59: "element. "
                  text run at (257,167) width 461: "If a line has room for a floated element, then the element should float so"
                  text run at (199,185) width 505: "that its top is aligned with the top of the line-box in which the asterisk appears."
                  text run at (199,203) width 411: "Otherwise, its top should align with the top of the next line-box."
              RenderBlock {HR} at (357,2277) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,2287) size 743x118 [border: (5px solid #800080)]
                RenderText {#text} at (20,5) size 186x18
                  text run at (20,5) width 178: "This is text within the DIV. "
                  text run at (197,5) width 9: "*"
                RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (205,5) size 682x36
                  text run at (205,5) width 512: " The floating images within this DIV should not go any higher than the line-box"
                  text run at (35,23) width 330: "containing the inline content which precedes them. "
                  text run at (364,23) width 13: "* "
                RenderImage {IMG} at (723,23) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (376,23) size 325x18
                  text run at (376,23) width 317: "This means that the top side of each float can be, "
                  text run at (692,23) width 9: "*"
                RenderImage {IMG} at (20,23) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (700,23) size 696x54
                  text run at (700,23) width 16: " at"
                  text run at (35,41) width 665: "most, as high as the top edge of the inline element containing the content just before the floating images"
                  text run at (20,59) width 130: "occur in the source. "
                  text run at (149,59) width 9: "*"
                RenderImage {IMG} at (5,59) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (157,59) size 731x54
                  text run at (157,59) width 579: " In order to mark these points clearly, an asterisk has been inserted just before each floated"
                  text run at (20,77) width 48: "image. "
                  text run at (67,77) width 655: "If a line has room for a floated image, then the image should float so that its top is aligned with the top"
                  text run at (5,95) width 292: "of the line-box in which the asterisk appears. "
                  text run at (296,95) width 411: "Otherwise, its top should align with the top of the next line-box."
              RenderBlock {HR} at (28,2429) size 563x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,2455) size 490x298 [border: (5px solid #800080)]
                RenderText {#text} at (199,5) size 56x18
                  text run at (199,5) width 56: "This is *"
                RenderBlock (floating) {P} at (5,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 134x54
                    text run at (17,17) width 134: "This is a left-floating"
                    text run at (17,35) width 115: "paragraph (first in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (254,5) size 13x18
                  text run at (254,5) width 13: " *"
                RenderBlock (floating) {P} at (291,5) size 194x88 [bgcolor=#C0C0C0] [border: (1px solid #00FF00)]
                  RenderText {#text} at (17,17) size 143x54
                    text run at (17,17) width 143: "This is a right-floating"
                    text run at (17,35) width 135: "paragraph (second in"
                    text run at (17,53) width 52: "source)."
                RenderText {#text} at (199,23) size 479x270
                  text run at (199,23) width 69: "text within"
                  text run at (199,41) width 54: "the DIV."
                  text run at (199,59) width 85: "Under CSS1,"
                  text run at (199,77) width 45: "the left"
                  text run at (5,95) width 469: "floating element should be placed in the upper left corner of the DIV, and"
                  text run at (5,113) width 465: "the purple border of the DIV should abut the green border of the floating"
                  text run at (5,131) width 59: "element. "
                  text run at (63,131) width 421: "Similarly, the right floating element should be placed in the upper"
                  text run at (5,149) width 467: "right corner of the DIV, and the purple border of the DIV should abut the"
                  text run at (5,167) width 465: "green border of the floating element. The text of the DIV element should"
                  text run at (5,185) width 433: "flow between and under the two floating elements. The two asterisk"
                  text run at (5,203) width 477: "characters mark the insertion points of the floating elements. It is expected"
                  text run at (5,221) width 477: "that, under future specifications, it may be acceptable for the top of floated"
                  text run at (5,239) width 475: "elements to align with the top of the line-box following the insertion point"
                  text run at (5,257) width 449: "of the floated element to avoid floating elements appearing before text"
                  text run at (5,275) width 269: "which precedes it in the source document."
              RenderBlock {HR} at (357,2761) size 41x2 [border: (1px inset #000000)]
              RenderBlock {DIV} at (6,2771) size 490x226 [border: (5px solid #800080)]
                RenderText {#text} at (20,5) size 56x18
                  text run at (20,5) width 56: "This is *"
                RenderImage {IMG} at (5,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (75,5) size 13x18
                  text run at (75,5) width 13: " *"
                RenderImage {IMG} at (470,5) size 15x36 [border: (3px solid #000000)]
                RenderText {#text} at (87,5) size 472x216
                  text run at (87,5) width 135: " text within the DIV. "
                  text run at (221,5) width 231: "Under CSS1, the left floating image"
                  text run at (20,23) width 429: "should be placed in the upper left corner of the DIV, and the purple"
                  text run at (5,41) width 443: "border of the DIV should abut the green border of the floating image."
                  text run at (5,59) width 443: "Similarly, the right floating image should be placed in the upper right"
                  text run at (5,77) width 472: "corner of the DIV, and the purple border of the DIV should abut the green"
                  text run at (5,95) width 447: "border of the floating image. The text of the DIV element should flow"
                  text run at (5,113) width 451: "between and under the two floating image. The two asterisk characters"
                  text run at (5,131) width 305: "mark the insertion points of the floating image. "
                  text run at (309,131) width 159: "It is expected that, under"
                  text run at (5,149) width 465: "future specifications, it may be acceptable for the top of floated elements"
                  text run at (5,167) width 455: "to align with the top of the line-box following the insertion point of the"
                  text run at (5,185) width 451: "floated element to avoid floating elements appearing before text which"
                  text run at (5,203) width 226: "precedes it in the source document."
              RenderBlock {HR} at (28,3021) size 563x2 [border: (1px inset #000000)]
