layer at (0,0) size 785x1902
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x1902
  RenderBlock {HTML} at (0,0) size 785x1902
    RenderBody {BODY} at (8,8) size 769x1886 [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 547x135
          text run at (0,0) width 336: "P.test {background: white; font-size: 20px;"
          text run at (0,15) width 547: "        margin-left: 30px; margin-right: 10px; padding: 0; border: 0;}"
          text run at (0,30) width 305: "IMG {padding: 0; border: 0; margin: 0;}"
          text run at (0,45) width 196: "P.test IMG {float: left;}"
          text run at (0,60) width 344: "#img2 {margin-top: 30px; margin-left: 30px;}"
          text run at (0,75) width 359: "#img3 {margin-top: -30px; margin-left: -30px;}"
          text run at (0,90) width 375: "#img4 {margin-right: 30px; margin-bottom: 30px;}"
          text run at (0,105) width 391: "#img5 {margin-right: -30px; margin-bottom: -30px;}"
          text run at (0,120) width 0: " "
      RenderBlock {HR} at (0,182) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (30,204) size 729x92 [bgcolor=#FFFFFF]
        RenderText {#text} at (0,0) size 724x92
          text run at (0,0) width 656: "This paragraph should have a white background which extends to the edges of the"
          text run at (0,23) width 120: "element's box. "
          text run at (119,23) width 437: "There is no padding set on this paragraph whatsoever. "
          text run at (555,23) width 164: "If the background of"
          text run at (0,46) width 724: "the entire box is not white, this may cause problems with the following tests; at any rate, it"
          text run at (0,69) width 220: "must be taken into account."
      RenderBlock {P} at (30,316) size 729x115 [bgcolor=#FFFFFF]
        RenderImage {IMG} at (0,0) size 60x60
        RenderText {#text} at (60,0) size 712x115
          text run at (60,0) width 626: "The image in the upper left corner of this paragraph should be floated left, and"
          text run at (60,23) width 118: "nothing more. "
          text run at (177,23) width 535: "The edges of the white background should line up with the top and"
          text run at (60,46) width 193: "left edges of the image. "
          text run at (252,46) width 448: "This paragraph should have a white background, first of"
          text run at (0,69) width 422: "all, which extends to the edges of the element's box. "
          text run at (421,69) width 246: "There is no padding set on this"
          text run at (0,92) width 180: "paragraph whatsoever."
      RenderBlock {P} at (30,451) size 729x115 [bgcolor=#FFFFFF]
        RenderImage {IMG} at (30,30) size 60x60
        RenderText {#text} at (90,0) size 723x115
          text run at (90,0) width 608: "The image in the upper left corner of this paragraph should be pushed down"
          text run at (90,23) width 601: "and to the right 30 pixels each from the upper left corner of the paragraph's"
          text run at (90,46) width 397: "box, and displace the paragraph text accordingly. "
          text run at (486,46) width 237: "This paragraph should have a"
          text run at (90,69) width 628: "white background, first of all, which extends to the edges of the element's box."
          text run at (0,92) width 431: "There is no padding set on this paragraph whatsoever."
      RenderBlock {P} at (30,586) size 729x115 [bgcolor=#FFFFFF]
        RenderImage {IMG} at (-30,-30) size 60x60
        RenderText {#text} at (30,0) size 729x115
          text run at (30,0) width 699: "The image in the upper left corner of this paragraph should be pushed up and to the left"
          text run at (30,23) width 698: "30 pixels each from the upper left corner of the paragraph's box, thus causing the edges"
          text run at (0,46) width 573: "of the white background to align with the thick gray lines in the image. "
          text run at (572,46) width 122: "This paragraph"
          text run at (0,69) width 703: "should have a white background, first of all, which extends to the edges of the element's"
          text run at (0,92) width 40: "box. "
          text run at (40,92) width 431: "There is no padding set on this paragraph whatsoever."
      RenderBlock {P} at (30,721) size 729x138 [bgcolor=#FFFFFF]
        RenderImage {IMG} at (0,0) size 60x60
        RenderText {#text} at (90,0) size 722x138
          text run at (90,0) width 626: "The image in the upper left corner of this paragraph should be floated left, and"
          text run at (90,23) width 632: "the edges of the white background should line up with the top and left edges of"
          text run at (90,46) width 89: "the image. "
          text run at (178,46) width 532: "However, there should be 30 pixels of space between the right and"
          text run at (90,69) width 483: "bottom edges of the image and the paragraph text around it. "
          text run at (572,69) width 121: "This paragraph"
          text run at (0,92) width 703: "should have a white background, first of all, which extends to the edges of the element's"
          text run at (0,115) width 40: "box. "
          text run at (40,115) width 431: "There is no padding set on this paragraph whatsoever."
      RenderBlock {P} at (30,879) size 729x138 [bgcolor=#FFFFFF]
        RenderImage {IMG} at (0,0) size 60x60
        RenderText {#text} at (30,0) size 722x138
          text run at (30,0) width 656: "The image in the upper left corner of this paragraph should be floated left, and the"
          text run at (30,23) width 691: "edges of the white background should line up with the top and left edges of the image."
          text run at (0,46) width 695: "However, the text should overlap the image's right and bottom sides, lining up with the"
          text run at (0,69) width 238: "thick gray lines in the image. "
          text run at (237,69) width 478: "This paragraph should have a white background, first of all,"
          text run at (0,92) width 392: "which extends to the edges of the element's box. "
          text run at (391,92) width 331: "There is no padding set on this paragraph"
          text run at (0,115) width 95: "whatsoever."
      RenderTable {TABLE} at (0,1037) size 769x849 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x847
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 768x26 [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 767x821
            RenderTableCell {TD} at (0,423) size 13x27 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x19
                text run at (4,5) width 4: " "
            RenderTableCell {TD} at (12,26) size 756x821 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (34,4) size 707x92 [bgcolor=#FFFFFF]
                RenderText {#text} at (0,0) size 698x92
                  text run at (0,0) width 656: "This paragraph should have a white background which extends to the edges of the"
                  text run at (0,23) width 120: "element's box. "
                  text run at (119,23) width 437: "There is no padding set on this paragraph whatsoever. "
                  text run at (555,23) width 143: "If the background"
                  text run at (0,46) width 690: "of the entire box is not white, this may cause problems with the following tests; at any"
                  text run at (0,69) width 276: "rate, it must be taken into account."
              RenderBlock {P} at (34,116) size 707x115 [bgcolor=#FFFFFF]
                RenderImage {IMG} at (0,0) size 60x60
                RenderText {#text} at (60,0) size 691x115
                  text run at (60,0) width 626: "The image in the upper left corner of this paragraph should be floated left, and"
                  text run at (60,23) width 118: "nothing more. "
                  text run at (177,23) width 501: "The edges of the white background should line up with the top"
                  text run at (60,46) width 227: "and left edges of the image. "
                  text run at (286,46) width 390: "This paragraph should have a white background,"
                  text run at (0,69) width 480: "first of all, which extends to the edges of the element's box. "
                  text run at (479,69) width 212: "There is no padding set on"
                  text run at (0,92) width 214: "this paragraph whatsoever."
              RenderBlock {P} at (34,251) size 707x115 [bgcolor=#FFFFFF]
                RenderImage {IMG} at (30,30) size 60x60
                RenderText {#text} at (90,0) size 698x115
                  text run at (90,0) width 608: "The image in the upper left corner of this paragraph should be pushed down"
                  text run at (90,23) width 601: "and to the right 30 pixels each from the upper left corner of the paragraph's"
                  text run at (90,46) width 397: "box, and displace the paragraph text accordingly. "
                  text run at (486,46) width 180: "This paragraph should"
                  text run at (90,69) width 565: "have a white background, first of all, which extends to the edges of the"
                  text run at (0,92) width 120: "element's box. "
                  text run at (119,92) width 432: "There is no padding set on this paragraph whatsoever."
              RenderBlock {P} at (34,386) size 707x115 [bgcolor=#FFFFFF]
                RenderImage {IMG} at (-30,-30) size 60x60
                RenderText {#text} at (30,0) size 697x115
                  text run at (30,0) width 667: "The image in the upper left corner of this paragraph should be pushed up and to the"
                  text run at (30,23) width 650: "left 30 pixels each from the upper left corner of the paragraph's box, thus causing"
                  text run at (0,46) width 653: "the edges of the white background to align with the thick gray lines in the image. "
                  text run at (652,46) width 37: "This"
                  text run at (0,69) width 679: "paragraph should have a white background, first of all, which extends to the edges of"
                  text run at (0,92) width 150: "the element's box. "
                  text run at (149,92) width 431: "There is no padding set on this paragraph whatsoever."
              RenderBlock {P} at (34,521) size 707x138 [bgcolor=#FFFFFF]
                RenderImage {IMG} at (0,0) size 60x60
                RenderText {#text} at (90,0) size 706x138
                  text run at (90,0) width 593: "The image in the upper left corner of this paragraph should be floated left,"
                  text run at (90,23) width 594: "and the edges of the white background should line up with the top and left"
                  text run at (90,46) width 161: "edges of the image. "
                  text run at (250,46) width 456: "However, there should be 30 pixels of space between the"
                  text run at (90,69) width 559: "right and bottom edges of the image and the paragraph text around it. "
                  text run at (648,69) width 37: "This"
                  text run at (0,92) width 679: "paragraph should have a white background, first of all, which extends to the edges of"
                  text run at (0,115) width 150: "the element's box. "
                  text run at (149,115) width 431: "There is no padding set on this paragraph whatsoever."
              RenderBlock {P} at (34,679) size 707x138 [bgcolor=#FFFFFF]
                RenderImage {IMG} at (0,0) size 60x60
                RenderText {#text} at (30,0) size 697x138
                  text run at (30,0) width 656: "The image in the upper left corner of this paragraph should be floated left, and the"
                  text run at (30,23) width 632: "edges of the white background should line up with the top and left edges of the"
                  text run at (0,46) width 59: "image. "
                  text run at (58,46) width 626: "However, the text should overlap the image's right and bottom sides, lining up"
                  text run at (0,69) width 308: "with the thick gray lines in the image. "
                  text run at (307,69) width 390: "This paragraph should have a white background,"
                  text run at (0,92) width 480: "first of all, which extends to the edges of the element's box. "
                  text run at (479,92) width 212: "There is no padding set on"
                  text run at (0,115) width 214: "this paragraph whatsoever."
