layer at (0,0) size 800x745
  RenderView at (0,0) size 800x600
layer at (0,0) size 800x745
  RenderBlock {HTML} at (0,0) size 800x745
    RenderBody {BODY} at (8,8) size 784x729 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 784x20
        RenderInline (generated) at (0,0) size 10x19 [color=#800000]
          RenderText at (0,0) size 10x19
            text run at (0,0) width 10: "T"
        RenderText {#text} at (9,0) size 354x19
          text run at (9,0) width 354: "he style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,36) size 784x56
        RenderText {#text} at (0,0) size 305x56
          text run at (0,0) width 242: "P:first-letter {color: maroon;}"
          text run at (0,14) width 281: ".two:first-letter {font-size: 200%;}"
          text run at (0,28) width 305: "P.three:first-letter {font-size: 350%;}"
          text run at (0,42) width 0: " "
      RenderBlock {HR} at (0,105) size 784x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,123) size 784x60
        RenderInline (generated) at (0,0) size 10x19 [color=#800000]
          RenderText at (0,0) size 10x19
            text run at (0,0) width 10: "T"
        RenderText {#text} at (9,0) size 781x59
          text run at (9,0) width 445: "he first letter of this paragraph, and only that one, should be maroon. "
          text run at (453,0) width 328: "If this precise combination does not occur, then the"
          text run at (0,20) width 193: "user agent has failed this test. "
          text run at (192,20) width 587: "Remember that in order to ensure a complete test, the paragraph must be displayed on more"
          text run at (0,40) width 87: "than one line."
      RenderBlock {P} at (0,199) size 784x78
        RenderInline (generated) at (0,0) size 20x36 [color=#800000]
          RenderText at (0,1) size 20x36
            text run at (0,1) width 20: "T"
        RenderText {#text} at (19,15) size 775x62
          text run at (19,15) width 625: "he first letter of this paragraph, and only that one, should be a larger font size, as well as maroon. "
          text run at (643,15) width 89: "If this precise"
          text run at (0,38) width 433: "combination does not occur, then the user agent has failed this test. "
          text run at (432,38) width 343: "Remember that in order to ensure a complete test, the"
          text run at (0,58) width 332: "paragraph must be displayed on more than one line."
      RenderBlock {P} at (0,293) size 784x106
        RenderInline (generated) at (0,0) size 76x63 [color=#800000]
          RenderText at (0,1) size 76x63
            text run at (0,1) width 76: "\"W"
        RenderText {#text} at (75,36) size 774x69
          text run at (75,36) width 325: "e should check for quotation support,\" it was said. "
          text run at (399,36) width 375: "The first two characters in this paragraph-- a double-quote"
          text run at (0,66) width 589: "mark and a capital 'W'-- should be 350% bigger than the rest of the paragraph, and maroon. "
          text run at (588,66) width 183: "Note that this is not required"
          text run at (0,86) width 232: "under CSS1, but it is recommended."
      RenderTable {TABLE} at (0,415) size 784x314 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 782x312
          RenderTableRow {TR} at (0,0) size 782x28
            RenderTableCell {TD} at (0,0) size 783x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              RenderInline {STRONG} at (0,0) size 161x19
                RenderText {#text} at (4,4) size 161x19
                  text run at (4,4) width 161: "TABLE Testing Section"
          RenderTableRow {TR} at (0,28) size 782x284
            RenderTableCell {TD} at (0,156) size 13x28 [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,4) width 4: " "
            RenderTableCell {TD} at (12,28) size 771x284 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 762x60
                RenderInline (generated) at (0,0) size 10x19 [color=#800000]
                  RenderText at (0,0) size 10x19
                    text run at (0,0) width 10: "T"
                RenderText {#text} at (9,0) size 757x59
                  text run at (9,0) width 445: "he first letter of this paragraph, and only that one, should be maroon. "
                  text run at (453,0) width 304: "If this precise combination does not occur, then"
                  text run at (0,20) width 216: "the user agent has failed this test. "
                  text run at (215,20) width 531: "Remember that in order to ensure a complete test, the paragraph must be displayed"
                  text run at (0,40) width 144: "on more than one line."
              RenderBlock {P} at (4,80) size 762x78
                RenderInline (generated) at (0,0) size 20x36 [color=#800000]
                  RenderText at (0,1) size 20x36
                    text run at (0,1) width 20: "T"
                RenderText {#text} at (19,15) size 751x62
                  text run at (19,15) width 625: "he first letter of this paragraph, and only that one, should be a larger font size, as well as maroon. "
                  text run at (643,15) width 89: "If this precise"
                  text run at (0,38) width 433: "combination does not occur, then the user agent has failed this test. "
                  text run at (432,38) width 319: "Remember that in order to ensure a complete test,"
                  text run at (0,58) width 355: "the paragraph must be displayed on more than one line."
              RenderBlock {P} at (4,174) size 762x106
                RenderInline (generated) at (0,0) size 76x63 [color=#800000]
                  RenderText at (0,1) size 76x63
                    text run at (0,1) width 76: "\"W"
                RenderText {#text} at (75,36) size 754x69
                  text run at (75,36) width 325: "e should check for quotation support,\" it was said. "
                  text run at (399,36) width 339: "The first two characters in this paragraph-- a double-"
                  text run at (0,66) width 628: "quote mark and a capital 'W'-- should be 350% bigger than the rest of the paragraph, and maroon. "
                  text run at (627,66) width 127: "Note that this is not"
                  text run at (0,86) width 289: "required under CSS1, but it is recommended."
