layer at (0,0) size 800x600 clip at (0,0) size 785x600 scrollHeight 659
  LayoutView at (0,0) size 800x600
layer at (0,0) size 785x659 backgroundClip at (0,0) size 785x600 clip at (0,0) size 785x600
  LayoutNGBlockFlow {HTML} at (0,0) size 785x659
    LayoutNGBlockFlow {BODY} at (8,8) size 769x643 [bgcolor=#CCCCCC]
      LayoutNGBlockFlow {P} at (0,0) size 769x20
        LayoutText {#text} at (0,0) size 355x19
          text run at (0,0) width 355: "The style declarations which apply to the text below are:"
      LayoutNGBlockFlow {PRE} at (0,36) size 769x128
        LayoutText {#text} at (0,0) size 272x128
          text run at (0,0) width 160: "#one {color: green;}"
          text run at (160,0) width 0: " "
          text run at (0,16) width 152: "#a1 {color: green;}"
          text run at (152,16) width 0: " "
          text run at (0,32) width 224: "P#two, P#two2 {color: blue;}"
          text run at (224,32) width 0: " "
          text run at (0,48) width 272: "P#three, P#three2 {color: purple;}"
          text run at (272,48) width 0: " "
          text run at (0,64) width 168: "#four {color: green;}"
          text run at (168,64) width 0: " "
          text run at (0,80) width 152: "#a2 {color: green;}"
          text run at (152,80) width 0: " "
          text run at (0,96) width 240: "P#five, P#five2 {color: blue;}"
          text run at (240,96) width 0: " "
          text run at (0,112) width 240: "P#six, P#six2 {color: purple;}"
      LayoutNGBlockFlow {P} at (0,195) size 769x20 [color=#008000]
        LayoutText {#text} at (0,0) size 194x19
          text run at (0,0) width 194: "This sentence should be green."
      LayoutNGBlockFlow {P} at (0,231) size 769x20 [color=#008000]
        LayoutText {#text} at (0,0) size 194x19
          text run at (0,0) width 194: "This sentence should be green."
      LayoutNGBlockFlow {P} at (0,267) size 769x20 [color=#0000FF]
        LayoutText {#text} at (0,0) size 200x19
          text run at (0,0) width 200: "This paragraph should be blue ["
        LayoutInline {TT} at (0,0) size 0x0
          LayoutText {#text} at (200,3) size 64x16
            text run at (200,3) width 64: "ID=\"two\""
        LayoutText {#text} at (264,0) size 9x19
          text run at (264,0) width 9: "]."
      LayoutNGBlockFlow {PRE} at (0,303) size 769x16
        LayoutText {#text} at (0,0) size 392x16
          text run at (0,0) width 392: "This sentence should NOT be blue [PRE ID=\"two2\"]."
          text run at (392,0) width 0: " "
      LayoutNGBlockFlow {PRE} at (0,332) size 769x16
        LayoutText {#text} at (0,0) size 472x16
          text run at (0,0) width 472: "This sentence should be black, not purple [PRE ID=\"three\"]."
          text run at (472,0) width 0: " "
      LayoutNGBlockFlow {UL} at (0,364) size 769x20
        LayoutNGListItem {LI} at (40,0) size 729x20
          LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
            LayoutText (anonymous) at (0,0) size 10x19
              text run at (0,0) width 10: "\x{2022} "
          LayoutText {#text} at (0,0) size 237x19
            text run at (0,0) width 237: "This sentence should NOT be purple."
      LayoutTable {TABLE} at (0,400) size 422x243 [border: (1px outset #808080)]
        LayoutTableSection {TBODY} at (1,1) size 420x241
          LayoutTableRow {TR} at (0,0) size 420x28
            LayoutNGTableCell {TD} at (0,0) size 420x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
              LayoutInline {STRONG} at (0,0) size 0x0
                LayoutText {#text} at (4,4) size 161x19
                  text run at (4,4) width 161: "TABLE Testing Section"
          LayoutTableRow {TR} at (0,28) size 420x213
            LayoutNGTableCell {TD} at (0,120) size 12x28 [bgcolor=#C0C0C0] [border: (1px inset #808080)] [r=1 c=0 rs=1 cs=1]
              LayoutText {#text} at (4,96) size 4x19
                text run at (4,96) width 4: " "
            LayoutNGTableCell {TD} at (12,28) size 408x213 [border: (1px inset #808080)] [r=1 c=1 rs=1 cs=1]
              LayoutNGBlockFlow {P} at (4,4) size 400x20 [color=#008000]
                LayoutText {#text} at (0,0) size 194x19
                  text run at (0,0) width 194: "This sentence should be green."
              LayoutNGBlockFlow {P} at (4,40) size 400x20 [color=#008000]
                LayoutText {#text} at (0,0) size 194x19
                  text run at (0,0) width 194: "This sentence should be green."
              LayoutNGBlockFlow {P} at (4,76) size 400x20 [color=#0000FF]
                LayoutText {#text} at (0,0) size 200x19
                  text run at (0,0) width 200: "This paragraph should be blue ["
                LayoutInline {TT} at (0,0) size 0x0
                  LayoutText {#text} at (200,3) size 72x16
                    text run at (200,3) width 72: "ID=\"five\""
                LayoutText {#text} at (272,0) size 9x19
                  text run at (272,0) width 9: "]."
              LayoutNGBlockFlow {PRE} at (4,112) size 400x16
                LayoutText {#text} at (0,0) size 400x16
                  text run at (0,0) width 400: "This sentence should NOT be blue [PRE ID=\"five2\"]."
                  text run at (400,0) width 0: " "
              LayoutNGBlockFlow {PRE} at (4,141) size 400x16
                LayoutText {#text} at (0,0) size 360x16
                  text run at (0,0) width 360: "This sentence should be black [PRE ID=\"six\"]."
                  text run at (360,0) width 0: " "
              LayoutNGBlockFlow {UL} at (4,173) size 400x20
                LayoutNGListItem {LI} at (40,0) size 360x20
                  LayoutNGBlockFlow (anonymous) at (-18,0) size 10x20
                    LayoutText (anonymous) at (0,0) size 10x19
                      text run at (0,0) width 10: "\x{2022} "
                  LayoutText {#text} at (0,0) size 237x19
                    text run at (0,0) width 237: "This sentence should NOT be purple."
layer at (8,185) size 769x2 clip at (0,0) size 0x0
  LayoutNGBlockFlow {HR} at (0,177) size 769x2 [border: (1px inset #EEEEEE)]
