layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x446
  RenderBlock {HTML} at (0,0) size 800x446
    RenderBody {BODY} at (8,16) size 784x18
      RenderBlock {P} at (0,0) size 784x18
        RenderText {#text} at (0,0) size 513x17
          text run at (0,0) width 498: "The following two blocks should be identical, including overflow. (Force bidi: "
          text run at (498,0) width 10 RTL: "\x{5D0}"
          text run at (508,0) width 5: ")"
      RenderBlock {DIV} at (0,34) size 784x0
        RenderBlock (floating) {P} at (16,16) size 177x166 [bgcolor=#FFFFCC] [border: (3px solid #000000)]
          RenderInline {SPAN} at (0,0) size 150x37 [color=#000080] [border: (3px solid #000080) none (3px solid #000080)]
            RenderText {#text} at (30,26) size 131x17
              text run at (30,26) width 131: "aaa bbb ccc  ddd eee"
          RenderBR {BR} at (161,26) size 0x17
          RenderInline {SPAN} at (0,0) size 38x37 [color=#000080] [border: (3px solid #000080) none]
            RenderText {#text} at (11,74) size 19x17
              text run at (11,74) width 19: "fff "
          RenderText {#text} at (49,74) size 72x17
            text run at (49,74) width 72: "ggg hhh iii "
          RenderInline {SPAN} at (0,0) size 31x37 [color=#FFA500] [border: (3px solid #FFA500) none (3px solid #FFA500)]
            RenderText {#text} at (140,74) size 12x17
              text run at (140,74) width 12: "jjj"
          RenderBR {BR} at (152,74) size 0x17
          RenderInline {SPAN} at (0,0) size 155x37 [color=#FFA500] [border: (3px solid #FFA500) none]
            RenderText {#text} at (11,122) size 136x17
              text run at (11,122) width 136: "kkk lll mmm nnn ooo"
          RenderText {#text} at (0,0) size 0x0
        RenderBlock (floating) {P} at (16,214) size 181x166 [bgcolor=#FFFFCC] [border: (3px solid #000000)]
          RenderInline {SPAN} at (0,0) size 154x85 [color=#000080] [border: (3px solid #000080)]
            RenderText {#text} at (30,26) size 135x17
              text run at (30,26) width 25: "aaa "
              text run at (55,26) width 28: "bbb "
              text run at (83,26) width 25: "ccc "
              text run at (108,26) width 24 RTL: "ddd"
              text run at (132,26) width 29 RTL: "\x{202E} eee "
              text run at (161,26) width 4: " "
            RenderBR {BR} at (165,26) size 0x17
            RenderText {#text} at (11,74) size 19x17
              text run at (11,74) width 19: "fff "
          RenderText {#text} at (49,74) size 72x17
            text run at (49,74) width 28: "ggg "
            text run at (77,74) width 28: "hhh "
            text run at (105,74) width 16: "iii "
          RenderInline {SPAN} at (0,0) size 159x85 [color=#FFA500] [border: (3px solid #FFA500)]
            RenderText {#text} at (140,74) size 16x17
              text run at (140,74) width 16: "jjj "
            RenderBR {BR} at (156,74) size 0x17
            RenderText {#text} at (11,122) size 140x17
              text run at (11,122) width 28: "kkk "
              text run at (39,122) width 60: "lll \x{202C} mmm "
              text run at (99,122) width 28: "nnn "
              text run at (127,122) width 24: "ooo"
          RenderText {#text} at (0,0) size 0x0
