layer at (0,0) size 866x1856
  RenderView at (0,0) size 785x585
layer at (0,0) size 785x1856
  RenderBlock {HTML} at (0,0) size 785x1856
    RenderBody {BODY} at (8,8) size 769x1840 [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 769x225
        RenderText {#text} at (0,0) size 859x225
          text run at (0,0) width 656: ".one {background-image: url(../resources/oransqr.gif); background-repeat: repeat-y;}"
          text run at (0,15) width 656: ".two {background-image: url(../resources/oransqr.gif); background-repeat: repeat-x;}"
          text run at (0,30) width 679: ".three {background-image: url(../resources/oransqr.gif); background-repeat: no-repeat;}"
          text run at (0,45) width 859: ".four {background-image: url(../resources/bg.gif); background-position: 50% 50%; background-repeat: repeat-y;}"
          text run at (0,60) width 687: ".five {background-image: url(../resources/crosshair2.gif); background-position: 50% 50%;"
          text run at (0,75) width 235: "       background-color: red;}"
          text run at (0,90) width 703: ".six {background-image: url(../resources/crosshair2.gif); background-position: center top;"
          text run at (0,105) width 227: "      background-color: red;}"
          text run at (0,120) width 703: ".seven {background-image: url(../resources/crosshair2.gif); background-position: top left;"
          text run at (0,135) width 242: "        background-color: red;}"
          text run at (0,150) width 734: ".eight {background-image: url(../resources/crosshair2.gif); background-position: bottom right;"
          text run at (0,165) width 242: "        background-color: red;}"
          text run at (0,180) width 687: ".nine {background-image: url(../resources/crosshair2.gif); background-position: 50% 50%;"
          text run at (0,195) width 235: "       background-color: red;}"
          text run at (0,210) width 0: " "
      RenderBlock {HR} at (0,272) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,290) size 769x54
        RenderText {#text} at (0,0) size 731x36
          text run at (0,0) width 731: "This sentence should have an orange stripe repeated in the \"y\" direction, starting at the upper left corner (since the"
          text run at (0,18) width 72: "default for "
        RenderInline {CODE} at (0,0) size 149x15
          RenderText {#text} at (71,20) size 149x15
            text run at (71,20) width 149: "background-position"
        RenderText {#text} at (219,18) size 759x36
          text run at (219,18) width 327: " is '0% 0%' and that property is not declared here). "
          text run at (545,18) width 214: "This is extra text included for the"
          text run at (0,36) width 294: "sole purpose of making the paragraph longer. "
          text run at (293,36) width 224: "Thank you for your understanding."
      RenderBlock {P} at (0,360) size 769x54
        RenderText {#text} at (0,0) size 731x36
          text run at (0,0) width 731: "This sentence should have an orange stripe repeated in the \"x\" direction, starting at the upper left corner (since the"
          text run at (0,18) width 72: "default for "
        RenderInline {CODE} at (0,0) size 149x15
          RenderText {#text} at (71,20) size 149x15
            text run at (71,20) width 149: "background-position"
        RenderText {#text} at (219,18) size 759x36
          text run at (219,18) width 327: " is '0% 0%' and that property is not declared here). "
          text run at (545,18) width 214: "This is extra text included for the"
          text run at (0,36) width 294: "sole purpose of making the paragraph longer. "
          text run at (293,36) width 224: "Thank you for your understanding."
      RenderBlock {P} at (0,430) size 769x54
        RenderText {#text} at (0,0) size 712x18
          text run at (0,0) width 712: "This sentence should have a single orange square behind it, placed at the upper left corner (since the default for"
        RenderInline {CODE} at (0,0) size 149x15
          RenderText {#text} at (0,20) size 149x15
            text run at (0,20) width 149: "background-position"
        RenderText {#text} at (148,18) size 717x36
          text run at (148,18) width 327: " is '0% 0%' and that property is not declared here). "
          text run at (474,18) width 243: "This is extra text included for the sole"
          text run at (0,36) width 264: "purpose of making the paragraph longer. "
          text run at (263,36) width 224: "Thank you for your understanding."
      RenderBlock {P} at (0,500) size 769x72
        RenderText {#text} at (0,0) size 734x36
          text run at (0,0) width 734: "This sentence should have a green-hatch stripe running vertically down the center of the paragraph, with the origin"
          text run at (0,18) width 264: "image exactly centered in the paragraph. "
          text run at (263,18) width 103: "This is because "
        RenderInline {CODE} at (0,0) size 63x15
          RenderText {#text} at (365,20) size 63x15
            text run at (365,20) width 63: "repeat-y"
        RenderText {#text} at (427,18) size 118x18
          text run at (427,18) width 118: " specifies tiling in "
        RenderInline {EM} at (0,0) size 30x18
          RenderText {#text} at (544,18) size 30x18
            text run at (544,18) width 30: "both"
        RenderText {#text} at (573,18) size 767x36
          text run at (573,18) width 163: " directions on the y-axis. "
          text run at (735,18) width 32: "Note"
          text run at (0,36) width 330: "that this test is only valid if the user agent supports "
        RenderInline {CODE} at (0,0) size 149x15
          RenderText {#text} at (329,38) size 149x15
            text run at (329,38) width 149: "background-position"
        RenderText {#text} at (477,36) size 35x18
          text run at (477,36) width 35: " (see "
        RenderInline {A} at (0,0) size 59x18 [color=#0000FF]
          RenderText {#text} at (511,36) size 59x18
            text run at (511,36) width 59: "test 5.3.6"
        RenderText {#text} at (569,36) size 746x36
          text run at (569,36) width 14: "). "
          text run at (582,36) width 164: "I'll fill the paragraph with"
          text run at (0,54) width 430: "extra text to make the conformance (or lack thereof) more obvious."
      RenderBlock {P} at (0,588) size 769x90 [bgcolor=#FF0000]
        RenderText {#text} at (0,0) size 768x18
          text run at (0,0) width 670: "This paragraph should have a tiled background, with the origin image exactly centered in the paragraph. "
          text run at (669,0) width 99: "This is because"
        RenderInline {CODE} at (0,0) size 133x15
          RenderText {#text} at (0,20) size 133x15
            text run at (0,20) width 133: "background-repeat"
        RenderText {#text} at (132,18) size 118x18
          text run at (132,18) width 118: " specifies tiling in "
        RenderInline {EM} at (0,0) size 18x18
          RenderText {#text} at (249,18) size 18x18
            text run at (249,18) width 18: "all"
        RenderText {#text} at (266,18) size 765x36
          text run at (266,18) width 372: " directions, regardless of the position of the origin image. "
          text run at (637,18) width 128: "Note that this test is"
          text run at (0,36) width 234: "only valid if the user agent supports "
        RenderInline {CODE} at (0,0) size 149x15
          RenderText {#text} at (233,38) size 149x15
            text run at (233,38) width 149: "background-position"
        RenderText {#text} at (381,36) size 35x18
          text run at (381,36) width 35: " (see "
        RenderInline {A} at (0,0) size 59x18 [color=#0000FF]
          RenderText {#text} at (415,36) size 59x18
            text run at (415,36) width 59: "test 5.3.6"
        RenderText {#text} at (473,36) size 769x54
          text run at (473,36) width 14: "). "
          text run at (486,36) width 283: "I'll fill the paragraph with extra text to make"
          text run at (0,54) width 315: "the conformance (or lack thereof) more obvious. "
          text run at (314,54) width 443: "A background color is present, although if it is visible then the image"
          text run at (0,72) width 170: "has not bee correctly tiled."
      RenderBlock {P} at (0,694) size 769x54 [bgcolor=#FF0000]
        RenderText {#text} at (0,0) size 761x54
          text run at (0,0) width 761: "This sentence should have a fully tiled background which starts at its center top; that is, the background's origin should"
          text run at (0,18) width 302: "be the exact center of the top of the paragraph. "
          text run at (301,18) width 460: "I'll fill it with extra text to make the conformance (or lack thereof) more"
          text run at (0,36) width 59: "obvious. "
          text run at (58,36) width 668: "A background color is present, although if it is visible, then the image may not have been tiled correctly."
      RenderBlock {P} at (0,764) size 769x54 [bgcolor=#FF0000]
        RenderText {#text} at (0,0) size 769x54
          text run at (0,0) width 499: "This sentence should have a fully tiled background which starts at its top left. "
          text run at (498,0) width 228: "I'll fill it with extra text to make the"
          text run at (0,18) width 291: "conformance (or lack thereof) more obvious. "
          text run at (290,18) width 479: "A background color is present, although if it is visible, then the image may"
          text run at (0,36) width 186: "not have been tiled correctly."
      RenderBlock {P} at (0,834) size 769x72 [bgcolor=#FF0000]
        RenderText {#text} at (0,0) size 762x72
          text run at (0,0) width 760: "This sentence should have a fully tiled background which starts at its bottom right; in other words, a complete instance"
          text run at (0,18) width 719: "of the image should be anchored in the bottom right corner, with the tiled background extending out from there. "
          text run at (718,18) width 40: "I'll fill"
          text run at (0,36) width 479: "it with extra text to make the conformance (or lack thereof) more obvious. "
          text run at (478,36) width 284: "A background color is present, although if it"
          text run at (0,54) width 381: "is visible, then the image may not have been tiled correctly."
      RenderBlock {P} at (0,922) size 769x108 [bgcolor=#FF0000]
        RenderText {#text} at (0,0) size 761x108
          text run at (0,0) width 737: "This sentence should have a fully tiled background which starts at its center and is tiled in all directions; that is, the"
          text run at (0,18) width 414: "background's origin should be the exact center of the paragraph. "
          text run at (413,18) width 338: "I'll fill it with extra text to make the conformance (or"
          text run at (0,36) width 181: "lack thereof) more obvious. "
          text run at (180,36) width 455: "In fact, a lot of extra text will be necessary to make this at all obvious. "
          text run at (634,36) width 127: "This is true because"
          text run at (0,54) width 746: "I am not able to increase the text size without resorting to either headings or other CSS properties, neither of which I"
          text run at (0,72) width 213: "want to use in this circumstance. "
          text run at (212,72) width 245: "This ought to be enough text, though. "
          text run at (456,72) width 299: "A background color is present, although if it is"
          text run at (0,90) width 366: "visible, then the image may not have been tiled correctly."
      RenderTable {TABLE} at (0,1046) size 769x794 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x792
          RenderTableRow {TR} at (0,0) size 767x26
            RenderTableCell {TD} at (0,0) size 767x26 [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 767x766
            RenderTableCell {TD} at (0,396) size 12x26 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              RenderText {#text} at (4,4) size 4x18
                text run at (4,4) width 4: " "
            RenderTableCell {TD} at (12,26) size 755x766 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x54
                RenderText {#text} at (0,0) size 731x36
                  text run at (0,0) width 731: "This sentence should have an orange stripe repeated in the \"y\" direction, starting at the upper left corner (since the"
                  text run at (0,18) width 72: "default for "
                RenderInline {CODE} at (0,0) size 149x15
                  RenderText {#text} at (71,20) size 149x15
                    text run at (71,20) width 149: "background-position"
                RenderText {#text} at (219,18) size 735x36
                  text run at (219,18) width 327: " is '0% 0%' and that property is not declared here). "
                  text run at (545,18) width 190: "This is extra text included for"
                  text run at (0,36) width 317: "the sole purpose of making the paragraph longer. "
                  text run at (316,36) width 225: "Thank you for your understanding."
              RenderBlock {P} at (4,74) size 747x54
                RenderText {#text} at (0,0) size 731x36
                  text run at (0,0) width 731: "This sentence should have an orange stripe repeated in the \"x\" direction, starting at the upper left corner (since the"
                  text run at (0,18) width 72: "default for "
                RenderInline {CODE} at (0,0) size 149x15
                  RenderText {#text} at (71,20) size 149x15
                    text run at (71,20) width 149: "background-position"
                RenderText {#text} at (219,18) size 735x36
                  text run at (219,18) width 327: " is '0% 0%' and that property is not declared here). "
                  text run at (545,18) width 190: "This is extra text included for"
                  text run at (0,36) width 317: "the sole purpose of making the paragraph longer. "
                  text run at (316,36) width 225: "Thank you for your understanding."
              RenderBlock {P} at (4,144) size 747x54
                RenderText {#text} at (0,0) size 712x18
                  text run at (0,0) width 712: "This sentence should have a single orange square behind it, placed at the upper left corner (since the default for"
                RenderInline {CODE} at (0,0) size 149x15
                  RenderText {#text} at (0,20) size 149x15
                    text run at (0,20) width 149: "background-position"
                RenderText {#text} at (148,18) size 717x36
                  text run at (148,18) width 327: " is '0% 0%' and that property is not declared here). "
                  text run at (474,18) width 243: "This is extra text included for the sole"
                  text run at (0,36) width 264: "purpose of making the paragraph longer. "
                  text run at (263,36) width 224: "Thank you for your understanding."
              RenderBlock {P} at (4,214) size 747x72
                RenderText {#text} at (0,0) size 734x36
                  text run at (0,0) width 734: "This sentence should have a green-hatch stripe running vertically down the center of the paragraph, with the origin"
                  text run at (0,18) width 264: "image exactly centered in the paragraph. "
                  text run at (263,18) width 103: "This is because "
                RenderInline {CODE} at (0,0) size 63x15
                  RenderText {#text} at (365,20) size 63x15
                    text run at (365,20) width 63: "repeat-y"
                RenderText {#text} at (427,18) size 118x18
                  text run at (427,18) width 118: " specifies tiling in "
                RenderInline {EM} at (0,0) size 30x18
                  RenderText {#text} at (544,18) size 30x18
                    text run at (544,18) width 30: "both"
                RenderText {#text} at (573,18) size 732x36
                  text run at (573,18) width 159: " directions on the y-axis."
                  text run at (0,36) width 365: "Note that this test is only valid if the user agent supports "
                RenderInline {CODE} at (0,0) size 149x15
                  RenderText {#text} at (364,38) size 149x15
                    text run at (364,38) width 149: "background-position"
                RenderText {#text} at (512,36) size 35x18
                  text run at (512,36) width 35: " (see "
                RenderInline {A} at (0,0) size 59x18 [color=#0000FF]
                  RenderText {#text} at (546,36) size 59x18
                    text run at (546,36) width 59: "test 5.3.6"
                RenderText {#text} at (604,36) size 681x36
                  text run at (604,36) width 14: "). "
                  text run at (617,36) width 64: "I'll fill the"
                  text run at (0,54) width 531: "paragraph with extra text to make the conformance (or lack thereof) more obvious."
              RenderBlock {P} at (4,302) size 747x90 [bgcolor=#FF0000]
                RenderText {#text} at (0,0) size 714x36
                  text run at (0,0) width 670: "This paragraph should have a tiled background, with the origin image exactly centered in the paragraph. "
                  text run at (669,0) width 45: "This is"
                  text run at (0,18) width 55: "because "
                RenderInline {CODE} at (0,0) size 134x15
                  RenderText {#text} at (54,20) size 134x15
                    text run at (54,20) width 134: "background-repeat"
                RenderText {#text} at (187,18) size 118x18
                  text run at (187,18) width 118: " specifies tiling in "
                RenderInline {EM} at (0,0) size 18x18
                  RenderText {#text} at (304,18) size 18x18
                    text run at (304,18) width 18: "all"
                RenderText {#text} at (321,18) size 724x36
                  text run at (321,18) width 372: " directions, regardless of the position of the origin image. "
                  text run at (692,18) width 32: "Note"
                  text run at (0,36) width 330: "that this test is only valid if the user agent supports "
                RenderInline {CODE} at (0,0) size 149x15
                  RenderText {#text} at (329,38) size 149x15
                    text run at (329,38) width 149: "background-position"
                RenderText {#text} at (477,36) size 35x18
                  text run at (477,36) width 35: " (see "
                RenderInline {A} at (0,0) size 59x18 [color=#0000FF]
                  RenderText {#text} at (511,36) size 59x18
                    text run at (511,36) width 59: "test 5.3.6"
                RenderText {#text} at (569,36) size 746x54
                  text run at (569,36) width 14: "). "
                  text run at (582,36) width 164: "I'll fill the paragraph with"
                  text run at (0,54) width 434: "extra text to make the conformance (or lack thereof) more obvious. "
                  text run at (433,54) width 298: "A background color is present, although if it is"
                  text run at (0,72) width 315: "visible then the image has not bee correctly tiled."
              RenderBlock {P} at (4,408) size 747x72 [bgcolor=#FF0000]
                RenderText {#text} at (0,0) size 721x72
                  text run at (0,0) width 715: "This sentence should have a fully tiled background which starts at its center top; that is, the background's origin"
                  text run at (0,18) width 349: "should be the exact center of the top of the paragraph. "
                  text run at (348,18) width 368: "I'll fill it with extra text to make the conformance (or lack"
                  text run at (0,36) width 151: "thereof) more obvious. "
                  text run at (150,36) width 571: "A background color is present, although if it is visible, then the image may not have been"
                  text run at (0,54) width 93: "tiled correctly."
              RenderBlock {P} at (4,496) size 747x54 [bgcolor=#FF0000]
                RenderText {#text} at (0,0) size 738x54
                  text run at (0,0) width 499: "This sentence should have a fully tiled background which starts at its top left. "
                  text run at (498,0) width 228: "I'll fill it with extra text to make the"
                  text run at (0,18) width 291: "conformance (or lack thereof) more obvious. "
                  text run at (290,18) width 448: "A background color is present, although if it is visible, then the image"
                  text run at (0,36) width 217: "may not have been tiled correctly."
              RenderBlock {P} at (4,566) size 747x72 [bgcolor=#FF0000]
                RenderText {#text} at (0,0) size 732x72
                  text run at (0,0) width 704: "This sentence should have a fully tiled background which starts at its bottom right; in other words, a complete"
                  text run at (0,18) width 732: "instance of the image should be anchored in the bottom right corner, with the tiled background extending out from"
                  text run at (0,36) width 40: "there. "
                  text run at (39,36) width 523: "I'll fill it with extra text to make the conformance (or lack thereof) more obvious. "
                  text run at (561,36) width 143: "A background color is"
                  text run at (0,54) width 522: "present, although if it is visible, then the image may not have been tiled correctly."
              RenderBlock {P} at (4,654) size 747x108 [bgcolor=#FF0000]
                RenderText {#text} at (0,0) size 737x108
                  text run at (0,0) width 737: "This sentence should have a fully tiled background which starts at its center and is tiled in all directions; that is, the"
                  text run at (0,18) width 414: "background's origin should be the exact center of the paragraph. "
                  text run at (413,18) width 316: "I'll fill it with extra text to make the conformance"
                  text run at (0,36) width 204: "(or lack thereof) more obvious. "
                  text run at (203,36) width 454: "In fact, a lot of extra text will be necessary to make this at all obvious. "
                  text run at (656,36) width 73: "This is true"
                  text run at (0,54) width 731: "because I am not able to increase the text size without resorting to either headings or other CSS properties, neither"
                  text run at (0,72) width 283: "of which I want to use in this circumstance. "
                  text run at (282,72) width 245: "This ought to be enough text, though. "
                  text run at (526,72) width 197: "A background color is present,"
                  text run at (0,90) width 467: "although if it is visible, then the image may not have been tiled correctly."
