layer at (0,0) size 800x600 clip at (0,0) size 785x600 scrollHeight 2345
  LayoutView at (0,0) size 800x600
layer at (0,0) size 785x2345 backgroundClip at (0,0) size 785x600 clip at (0,0) size 785x600
  LayoutNGBlockFlow {HTML} at (0,0) size 785x2345
    LayoutNGBlockFlow {BODY} at (8,8) size 769x2329 [bgcolor=#CCCCCC]
      LayoutNGBlockFlow {P} at (0,0) size 769x20
        LayoutText {#text} at (0,0) size 355x19
          text run at (0,0) width 355: "The style declarations which apply to the text below are:"
      LayoutNGBlockFlow {PRE} at (0,36) size 769x288
        LayoutText {#text} at (0,0) size 536x272
          text run at (0,0) width 344: "P.one {font-size: 14px; line-height: 20px;}"
          text run at (344,0) width 0: " "
          text run at (0,16) width 304: "IMG.onea {vertical-align: text-bottom;"
          text run at (304,16) width 0: " "
          text run at (0,32) width 272: "     width: 200px; height: 200px;}"
          text run at (272,32) width 0: " "
          text run at (0,48) width 520: "IMG.oneb {vertical-align: text-top; width: 200px; height: 200px;}"
          text run at (520,48) width 0: " "
          text run at (0,64) width 0: " "
          text run at (0,80) width 344: "P.two {font-size: 14px; line-height: 20px;}"
          text run at (344,80) width 0: " "
          text run at (0,96) width 536: "IMG.twoa {vertical-align: text-bottom; width: 100px; height: 100px;"
          text run at (536,96) width 0: " "
          text run at (0,112) width 312: "     padding: 5px; border-style: solid;"
          text run at (312,112) width 0: " "
          text run at (0,128) width 312: "     border-width: 10px; margin: 15px;}"
          text run at (312,128) width 0: " "
          text run at (0,144) width 280: "IMG.twob {vertical-align: text-top;"
          text run at (280,144) width 0: " "
          text run at (0,160) width 304: "          width: 100px; height: 100px;"
          text run at (304,160) width 0: " "
          text run at (0,176) width 312: "     padding: 5px; border-style: solid;"
          text run at (312,176) width 0: " "
          text run at (0,192) width 312: "     border-width: 10px; margin: 15px;}"
          text run at (312,192) width 0: " "
          text run at (0,208) width 0: " "
          text run at (0,224) width 480: "IMG.twoc {vertical-align: middle; width: 50px; height: 50px;"
          text run at (480,224) width 0: " "
          text run at (0,240) width 312: "     padding: 5px; border-style: solid;"
          text run at (312,240) width 0: " "
          text run at (0,256) width 320: "     border-width: 10px; margin: -10px;}"
          text run at (320,256) width 0: " "
          text run at (0,272) width 0: " "
      LayoutNGBlockFlow {P} at (0,353) size 769x464
        LayoutText {#text} at (0,2) size 767x238
          text run at (0,2) width 767: "This paragraph should have a font size of 14px and a line height of 20px. This means that the lines of text within it should be separated"
          text run at (0,22) width 749: "by six pixels, three of which are part of the line-box of each line. Any images within the paragraph should increase the height of the"
          text run at (0,224) width 296: "line-box so that they fit within the line box, such as "
        LayoutImage {IMG} at (296,40) size 200x200
        LayoutText {#text} at (496,224) size 28x16
          text run at (496,224) width 28: " and "
        LayoutImage {IMG} at (524,224) size 200x200
        LayoutText {#text} at (724,224) size 757x238
          text run at (724,224) width 33: ". This"
          text run at (0,426) width 744: "is additional text to make sure that there is enough room left below the image so that this line does not hit the image that is text-top"
          text run at (0,446) width 45: "aligned."
      LayoutNGBlockFlow {P} at (0,831) size 769x484
        LayoutText {#text} at (0,2) size 767x198
          text run at (0,2) width 767: "This paragraph should have a font size of 14px and a line height of 20px. This means that the lines of text within it should be separated"
          text run at (0,22) width 731: "by six pixels. Any images within the paragraph should increase the height of the line-box so that they fit, including their padding"
          text run at (0,184) width 396: "(5px), border (10px) and margins (15px) within the line box, such as "
        LayoutImage {IMG} at (410.75,55) size 130x130 [border: (10px solid #000000)]
        LayoutText {#text} at (555,184) size 29x16
          text run at (555,184) width 29: " and "
        LayoutImage {IMG} at (598.75,199) size 130x130 [border: (10px solid #000000)]
        LayoutText {#text} at (743,184) size 759x257
          text run at (743,184) width 5: "."
          text run at (0,346) width 755: "This is additional text to make sure that there is enough room left below the image so that this line does not hit the image that is text-"
          text run at (0,366) width 754: "top aligned. It is the outer edge of the margin that should be text-bottom and text-top aligned in this paragraph, so for the first image"
          text run at (0,386) width 759: "the bottom border of the image should begin 15px above the bottom of the text, and for the second image the top border should begin"
          text run at (0,424) width 175: "15px below the top of the text "
        LayoutImage {IMG} at (165,394) size 80x80 [border: (10px solid #000000)]
        LayoutText {#text} at (235,424) size 755x58
          text run at (235,424) width 520: ". The last image in this paragraph has -10px margins set on it, so that should pull the text in"
          text run at (0,466) width 443: "toward the image in the vertical direction, and also in the horizontal direction."
      LayoutTable {TABLE} at (0,1329) size 769x1000 [border: (1px outset #808080)]
        LayoutTableSection {TBODY} at (1,1) size 767x998
          LayoutTableRow {TR} at (0,0) size 767x28
            LayoutNGTableCell {TD} at (0,0) size 767x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              LayoutInline {STRONG} at (0,0) size 161x19
                LayoutText {#text} at (4,4) size 161x19
                  text run at (4,4) width 161: "TABLE Testing Section"
          LayoutTableRow {TR} at (0,28) size 767x970
            LayoutNGTableCell {TD} at (0,499) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              LayoutText {#text} at (4,475) size 4x19
                text run at (4,475) width 4: " "
            LayoutNGTableCell {TD} at (12,28) size 755x970 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              LayoutNGBlockFlow {P} at (4,4) size 747x464
                LayoutText {#text} at (0,2) size 729x238
                  text run at (0,2) width 711: "This paragraph should have a font size of 14px and a line height of 20px. This means that the lines of text within it should be"
                  text run at (0,22) width 729: "separated by six pixels, three of which are part of the line-box of each line. Any images within the paragraph should increase the"
                  text run at (0,224) width 372: "height of the line-box so that they fit within the line box, such as "
                LayoutImage {IMG} at (372,40) size 200x200
                LayoutText {#text} at (572,224) size 24x16
                  text run at (572,224) width 24: " and"
                LayoutImage {IMG} at (0,244) size 200x200
                LayoutText {#text} at (200,244) size 741x218
                  text run at (200,244) width 541: ". This is additional text to make sure that there is enough room left below the image so that this"
                  text run at (0,446) width 285: "line does not hit the image that is text-top aligned."
              LayoutNGBlockFlow {P} at (4,482) size 747x484
                LayoutText {#text} at (0,2) size 738x198
                  text run at (0,2) width 711: "This paragraph should have a font size of 14px and a line height of 20px. This means that the lines of text within it should be"
                  text run at (0,22) width 738: "separated by six pixels. Any images within the paragraph should increase the height of the line-box so that they fit, including their"
                  text run at (0,184) width 445: "padding (5px), border (10px) and margins (15px) within the line box, such as "
                LayoutImage {IMG} at (459.75,55) size 130x130 [border: (10px solid #000000)]
                LayoutText {#text} at (604,184) size 25x16
                  text run at (604,184) width 25: " and"
                LayoutImage {IMG} at (15,219) size 130x130 [border: (10px solid #000000)]
                LayoutText {#text} at (160,204) size 736x237
                  text run at (160,204) width 566: ". This is additional text to make sure that there is enough room left below the image so that this line"
                  text run at (0,366) width 736: "does not hit the image that is text-top aligned. It is the outer edge of the margin that should be text-bottom and text-top aligned in"
                  text run at (0,386) width 730: "this paragraph, so for the first image the bottom border of the image should begin 15px above the bottom of the text, and for the"
                  text run at (0,424) width 415: "second image the top border should begin 15px below the top of the text "
                LayoutImage {IMG} at (405,394) size 80x80 [border: (10px solid #000000)]
                LayoutText {#text} at (475,424) size 724x58
                  text run at (475,424) width 249: ". The last image in this paragraph has -10px"
                  text run at (0,466) width 714: "margins set on it, so that should pull the text in toward the image in the vertical direction, and also in the horizontal direction."
layer at (8,345) size 769x2 clip at (0,0) size 0x0
  LayoutNGBlockFlow {HR} at (0,337) size 769x2 [border: (1px inset #EEEEEE)]
