layer at (0,0) size 785x732
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x732
  RenderBlock {HTML} at (0,0) size 785x732
    RenderBody {BODY} at (8,8) size 769x716 [bgcolor=#CCCCCC]
      RenderBlock {P} at (0,0) size 769x18
        RenderText {#text} at (0,0) size 355x18
          text run at (0,0) width 355: "The style declarations which apply to the text below are:"
      RenderBlock {PRE} at (0,34) size 769x75
        RenderText {#text} at (0,0) size 272x75
          text run at (0,0) width 224: ".ttn {text-transform: none;}"
          text run at (224,0) width 0: " "
          text run at (0,15) width 272: ".cap {text-transform: capitalize;}"
          text run at (272,15) width 0: " "
          text run at (0,30) width 264: ".upp {text-transform: uppercase;}"
          text run at (264,30) width 0: " "
          text run at (0,45) width 264: ".low {text-transform: lowercase;}"
          text run at (264,45) width 0: " "
          text run at (0,60) width 0: " "
      RenderBlock {HR} at (0,122) size 769x2 [border: (1px inset #000000)]
      RenderBlock {P} at (0,140) size 769x36
        RenderText {#text} at (0,0) size 718x36
          text run at (0,0) width 718: "This page tests the 'text-transform' property of CSS1. This paragraph has no text transformation and should appear"
          text run at (0,18) width 48: "normal."
      RenderBlock {P} at (0,192) size 769x54
        RenderText {#text} at (0,0) size 750x54
          text run at (0,0) width 750: "This Paragraph Is Capitalized And The First Letter In Each Word Should Therefore Appear In Uppercase. Words That"
          text run at (0,18) width 722: "Are In Uppercase In The Source (E.G. USA) Should Remain So. There Should Be A Capital Letter After A Non-"
          text run at (0,36) width 538: "Breaking Space (&Nbsp;). Both Those Characters Appear In The Previous Sentence."
      RenderBlock {P} at (0,262) size 769x36
        RenderText {#text} at (0,0) size 753x36
          text run at (0,0) width 753: "Words with inline elements inside them should only capitalize the first letter of the word. Therefore, the last word in this"
          text run at (0,18) width 304: "sentence should have one, and only one, capital "
        RenderInline {SPAN} at (0,0) size 37x18
          RenderText {#text} at (304,18) size 17x18
            text run at (304,18) width 17: "Le"
          RenderInline {SPAN} at (0,0) size 8x18
            RenderText {#text} at (321,18) size 8x18
              text run at (321,18) width 8: "tt"
          RenderText {#text} at (329,18) size 12x18
            text run at (329,18) width 12: "er"
        RenderText {#text} at (341,18) size 4x18
          text run at (341,18) width 4: "."
      RenderBlock {P} at (0,314) size 769x54
        RenderText {#text} at (0,0) size 721x36
          text run at (0,0) width 721: "THIS PARAGRAPH IS UPPERCASED AND SMALL CHARACTERS IN THE SOURCE (E.G. A AND \x{C5})"
          text run at (0,18) width 359: "SHOULD THEREFORE APPEAR IN UPPERCASE. "
          text run at (359,18) width 284: "IN THE LAST SENTENCE, HOWEVER, "
        RenderInline {SPAN} at (0,0) size 765x36
          RenderText {#text} at (643,18) size 765x36
            text run at (643,18) width 122: "the last eight words"
            text run at (0,36) width 152: "should not be uppercase"
        RenderText {#text} at (152,36) size 4x18
          text run at (152,36) width 4: "."
      RenderBlock {P} at (0,384) size 769x18
        RenderText {#text} at (0,0) size 726x18
          text run at (0,0) width 726: "this paragraph is lowercased and capital characters in the source (e.g. a and \x{E5}) should therefore appear in lowercase."
      RenderTable {TABLE} at (0,418) size 769x298 [border: (1px outset #808080)]
        RenderTableSection {TBODY} at (1,1) size 767x296
          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 163x18
                RenderText {#text} at (4,4) size 163x18
                  text run at (4,4) width 163: "TABLE Testing Section"
          RenderTableRow {TR} at (0,26) size 767x270
            RenderTableCell {TD} at (0,148) 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 755x270 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              RenderBlock {P} at (4,4) size 747x36
                RenderText {#text} at (0,0) size 718x36
                  text run at (0,0) width 718: "This page tests the 'text-transform' property of CSS1. This paragraph has no text transformation and should appear"
                  text run at (0,18) width 48: "normal."
              RenderBlock {P} at (4,56) size 747x54
                RenderText {#text} at (0,0) size 718x54
                  text run at (0,0) width 717: "This Paragraph Is Capitalized And The First Letter In Each Word Should Therefore Appear In Uppercase. Words"
                  text run at (0,18) width 718: "That Are In Uppercase In The Source (E.G. USA) Should Remain So. There Should Be A Capital Letter After A"
                  text run at (0,36) width 571: "Non-Breaking Space (&Nbsp;). Both Those Characters Appear In The Previous Sentence."
              RenderBlock {P} at (4,126) size 747x36
                RenderText {#text} at (0,0) size 727x36
                  text run at (0,0) width 727: "Words with inline elements inside them should only capitalize the first letter of the word. Therefore, the last word in"
                  text run at (0,18) width 330: "this sentence should have one, and only one, capital "
                RenderInline {SPAN} at (0,0) size 37x18
                  RenderText {#text} at (330,18) size 17x18
                    text run at (330,18) width 17: "Le"
                  RenderInline {SPAN} at (0,0) size 8x18
                    RenderText {#text} at (347,18) size 8x18
                      text run at (347,18) width 8: "tt"
                  RenderText {#text} at (355,18) size 12x18
                    text run at (355,18) width 12: "er"
                RenderText {#text} at (367,18) size 4x18
                  text run at (367,18) width 4: "."
              RenderBlock {P} at (4,178) size 747x54
                RenderText {#text} at (0,0) size 721x36
                  text run at (0,0) width 721: "THIS PARAGRAPH IS UPPERCASED AND SMALL CHARACTERS IN THE SOURCE (E.G. A AND \x{C5})"
                  text run at (0,18) width 359: "SHOULD THEREFORE APPEAR IN UPPERCASE. "
                  text run at (359,18) width 284: "IN THE LAST SENTENCE, HOWEVER, "
                RenderInline {SPAN} at (0,0) size 722x36
                  RenderText {#text} at (643,18) size 722x36
                    text run at (643,18) width 79: "the last eight"
                    text run at (0,36) width 195: "words should not be uppercase"
                RenderText {#text} at (195,36) size 4x18
                  text run at (195,36) width 4: "."
              RenderBlock {P} at (4,248) size 747x18
                RenderText {#text} at (0,0) size 726x18
                  text run at (0,0) width 726: "this paragraph is lowercased and capital characters in the source (e.g. a and \x{E5}) should therefore appear in lowercase."
