layer at (0,0) size 800x600
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x432
  RenderBlock {HTML} at (0,0) size 800x432
    RenderBody {BODY} at (8,16) size 784x400
      RenderBlock {P} at (0,0) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 230x18
          text run at (0,0) width 230: "This sentence should be underlined."
      RenderBlock {P} at (0,34) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 222x18
          text run at (0,0) width 222: "This sentence should be overlined."
      RenderBlock {P} at (0,68) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 237x18
          text run at (0,0) width 237: "This sentence should be stricken out."
      RenderBlock {P} at (0,102) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 376x18
          text run at (0,0) width 376: "This sentence should be blinking (if the UA supports that)."
      RenderBlock {P} at (0,136) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 231x18
          text run at (0,0) width 231: "The sentence should be underlined. "
        RenderInline {B} at (0,0) size 241x18
          RenderText {#text} at (230,0) size 241x18
            text run at (230,0) width 241: "This sentence should be underlined"
        RenderText {#text} at (470,0) size 5x18
          text run at (470,0) width 5: "."
      RenderBlock {P} at (0,170) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 322x18
          text run at (0,0) width 322: "This sentence should be underlined and overlined."
      RenderBlock {P} at (0,204) size 784x18 [color=#000080]
        RenderText {#text} at (0,0) size 384x18
          text run at (0,0) width 384: "This sentence should be underlined, overlined, and stricken."
      RenderBlock {DIV} at (0,238) size 784x0 [color=#FF0000]
      RenderBlock {P} at (0,238) size 784x19 [color=#000080]
        RenderText {#text} at (0,1) size 291x18
          text run at (0,1) width 291: "There should be no red at the end of this line."
        RenderImage {IMG} at (290,0) size 16x15 [color=#FF0000]
        RenderText {#text} at (305,1) size 5x18
          text run at (305,1) width 5: " "
      RenderBlock {P} at (0,273) size 784x39 [color=#000080]
        RenderText {#text} at (0,3) size 204x18
          text run at (0,3) width 204: "The text of this sentence and all"
        RenderInline {SPAN} at (0,0) size 5x18
          RenderText {#text} at (203,3) size 5x18
            text run at (203,3) width 5: " "
        RenderText {#text} at (207,3) size 16x18
          text run at (207,3) width 16: "its"
        RenderInline {SPAN} at (0,0) size 5x18
          RenderText {#text} at (222,3) size 5x18
            text run at (222,3) width 5: " "
        RenderText {#text} at (226,3) size 315x18
          text run at (226,3) width 315: "spaces (including the space between the images) "
        RenderImage {IMG} at (540,0) size 18x17 [color=#FF0000]
        RenderText {#text} at (557,3) size 5x18
          text run at (557,3) width 5: " "
        RenderImage {IMG} at (561,0) size 18x17 [color=#FF0000]
        RenderText {#text} at (578,3) size 769x36
          text run at (578,3) width 5: " "
          text run at (582,3) width 187: "should be underlined, but the"
          text run at (0,21) width 172: "images themselves should "
        RenderInline {EM} at (0,0) size 21x18
          RenderText {#text} at (171,21) size 21x18
            text run at (171,21) width 21: "not"
        RenderText {#text} at (191,21) size 97x18
          text run at (191,21) width 97: " be underlined."
      RenderBlock {P} at (0,328) size 784x37 [color=#000080]
        RenderText {#text} at (0,0) size 577x18
          text run at (0,0) width 486: "This sentence should have a long blue underline including between the two "
          text run at (485,0) width 92: "arrows here\x{2192}"
        RenderInline {SPAN} at (0,0) size 156x18 [color=#FFFFFF]
          RenderText {#text} at (576,0) size 156x18
            text run at (576,0) width 156: " FAIL FAIL FAIL FAIL "
        RenderText {#text} at (731,0) size 771x37
          text run at (731,0) width 40: "\x{2190}and"
          text run at (0,19) width 32: "here."
      RenderBlock {P} at (0,381) size 784x19 [color=#000080]
        RenderText {#text} at (0,0) size 348x18
          text run at (0,0) width 348: "There should be a long blue underline between here\x{2192}"
        RenderInline {SPAN} at (0,0) size 89x18
          RenderText {#text} at (347,0) size 89x18
            text run at (347,0) width 89: "                      "
        RenderText {#text} at (435,0) size 75x18
          text run at (435,0) width 75: "\x{2190}and here."
