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 (335,0) width 1: " "
          text run at (0,15) width 547: "        margin-left: 30px; margin-right: 10px; padding: 0; border: 0;}"
          text run at (546,15) width 1: " "
          text run at (0,30) width 305: "IMG {padding: 0; border: 0; margin: 0;}"
          text run at (304,30) width 1: " "
          text run at (0,45) width 196: "P.test IMG {float: left;}"
          text run at (195,45) width 1: " "
          text run at (0,60) width 344: "#img2 {margin-top: 30px; margin-left: 30px;}"
          text run at (343,60) width 1: " "
          text run at (0,75) width 359: "#img3 {margin-top: -30px; margin-left: -30px;}"
          text run at (358,75) width 1: " "
          text run at (0,90) width 375: "#img4 {margin-right: 30px; margin-bottom: 30px;}"
          text run at (374,90) width 1: " "
          text run at (0,105) width 391: "#img5 {margin-right: -30px; margin-bottom: -30px;}"
          text run at (390,105) width 1: " "
          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,3) size 4x20
                text run at (4,4) 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."
